

:root {
    --rt-navy: #102B4E;
    --rt-navy-dark: #091D36;
    --rt-gold: #D4A63A;
    --rt-gold-light: #E7C36B;
    --rt-white: #FFFFFF;
    --rt-light: #F5F7FB;
    --rt-text: #344054;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Segoe UI", Arial, sans-serif;
    color: var(--rt-text);
    background: var(--rt-white);
}

a {
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-topbar {
    background: var(--rt-navy-dark);
    color: #E5EBF4;
    font-size: 15px;
    padding: 10px 0;
}

.rt-topbar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.rt-topbar-left,
.rt-topbar-right {
    display: flex;
    align-items: center;
    gap: 20px;
}

.rt-topbar a {
    color: #E5EBF4;
}

.rt-topbar a:hover {
    color: var(--rt-gold);
}

.rt-topbar i {
    color: var(--rt-gold);
    margin-right: 6px;
}

.rt-topbar-divider {
    height: 14px;
    width: 1px;
    background: rgba(255,255,255,0.25);
}

.rt-topbar-right a {
    font-size: 15px;
}

.rt-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: var(--rt-white);
    box-shadow: 0 4px 22px rgba(16,43,78,0.07);
}

.rt-navbar {
    padding: 0;
}


.rt-brand {
    display: inline-flex;
    align-items: center;
    margin-right: 20px;
    padding: 0;
    flex-shrink: 0;
}

.rt-logo {
    display: block;
    width: 240px;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.rt-brand:hover .rt-logo {
    transform: scale(1.02);
}


.rt-brand-text strong {
    color: var(--rt-navy);
    font-size: 23px;
    font-weight: 800;
    letter-spacing: 1px;
}

.rt-brand-text small {
    color: var(--rt-gold);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 5px;
    margin-top: 5px;
}
.rt-nav-links {
    gap: 8px;
}

.rt-nav-links .nav-link {
    color: var(--rt-navy);
    font-size: 14px;
    font-weight: 600;
    padding: 10px 13px !important;
    position: relative;
}

.rt-nav-links .nav-link:hover,
.rt-nav-links .nav-link.active {
    color: var(--rt-gold);
}

.rt-nav-links .nav-link::after {
    content: "";
    position: absolute;
    bottom: 4px;
    left: 13px;
    width: 0;
    height: 2px;
    background: var(--rt-gold);
    transition: width 0.3s ease;
}

.rt-nav-links .nav-link:hover::after,
.rt-nav-links .nav-link.active::after {
    width: calc(100% - 26px);
}


.rt-nav-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background: var(--rt-gold);
    color: var(--rt-navy-dark);
    padding: 13px 19px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 5px 15px rgba(212,166,58,0.18);
}

.rt-nav-cta:hover {
    background: var(--rt-navy);
    color: var(--rt-white);
    transform: translateY(-2px);
}

.rt-nav-cta .bi-whatsapp {
    font-size: 17px;
}


.rt-navbar-toggler {
    border: 1px solid #DDE4ED;
    border-radius: 8px;
    padding: 8px 11px;
}

.rt-navbar-toggler:focus {
    box-shadow: 0 0 0 3px rgba(212,166,58,0.25);
}

.rt-navbar-toggler .navbar-toggler-icon {
    width: 22px;
    height: 22px;
}

/*______Hero Section_______________________*/


.rt-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.rt-hero-slide {
    position: relative;
    min-height: 650px;
    height: min(76vh, 780px);

    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* SLIDE 1 BACKGROUND */
.rt-hero-bg-1 {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 19, 38, 1.00) 0%,
            rgba(8, 29, 55, 0.85) 38%,
            rgba(8, 29, 55, 0.15) 75%,
            rgba(8, 29, 55, 0.05) 100%
        ),
        url("../images/banners/hero-1.jpg");
}


.rt-hero-bg-2 {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 19, 38, 1.00) 0%,
            rgba(8, 29, 55, 0.85) 38%,
            rgba(8, 29, 55, 0.15) 75%,
            rgba(8, 29, 55, 0.05) 100%
        ),
        url("../images/banners/hero-2.jpg");
}

.rt-hero-bg-3 {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 19, 38, 1.00) 0%,
            rgba(8, 29, 55, 0.85) 38%,
            rgba(8, 29, 55, 0.15) 75%,
            rgba(8, 29, 55, 0.05) 100%
        ),
        url("../images/banners/hero-3.jpg");
}


.rt-hero-bg-4 {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 19, 38, 1.00) 0%,
            rgba(8, 29, 55, 0.85) 38%,
            rgba(8, 29, 55, 0.15) 75%,
            rgba(8, 29, 55, 0.05) 100%
        ),
        url("../images/banners/hero-4.jpg");
}


.rt-hero-bg-5 {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 19, 38, 1.00) 0%,
            rgba(8, 29, 55, 0.65) 38%,
            rgba(8, 29, 55, 0.15) 75%,
            rgba(8, 29, 55, 0.05) 100%
        ),
        url("../images/banners/hero-5.jpg");
}

/* Subtle decorative bottom glow */
.rt-hero-slide::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background: linear-gradient(
        to top,
        rgba(6, 20, 39, 0.35),
        transparent
    );
    pointer-events: none;
}

.rt-hero-container {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    height: 100%;
    min-height: inherit;
}

.rt-hero-content {
    width: 100%;
    max-width: 740px;
    padding: 75px 0 105px;
    color: #FFFFFF;
}

/* Hero Tag */
.rt-hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 17px;
    border: 1px solid rgba(212,166,58,0.5);
    background: rgba(212,166,58,0.12);
    border-radius: 30px;
    color: #E7C36B;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 25px;
}

.rt-hero-tag i {
    font-size: 13px;
}

/* Headings */
.rt-hero-content h1,
.rt-hero-content h2 {
    font-size: clamp(38px, 4.5vw, 70px);
    line-height: 1.14;
    font-weight: 800;
    letter-spacing: -1.5px;
    color: #FFFFFF;
    margin-bottom: 24px;
}

.rt-hero-content h1 span,
.rt-hero-content h2 span {
    display: block;
    color: #E7C36B;
}

/* Description */
.rt-hero-content p {
    max-width: 580px;
    color: rgba(255,255,255,0.86);
    font-size: 16px;
    line-height: 1.9;
    margin-bottom: 35px;
}

/* Hero Buttons */
.rt-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.rt-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 51px;
    padding: 14px 23px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.3s ease;
}

.rt-btn-gold {
    background: #D4A63A;
    color: #091D36;
    border: 1px solid #D4A63A;
}

.rt-btn-gold:hover {
    background: #E7C36B;
    color: #091D36;
    border-color: #E7C36B;
    transform: translateY(-3px);
}

.rt-btn-outline {
    color: #FFFFFF;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.65);
}

.rt-btn-outline:hover {
    background: #FFFFFF;
    color: #102B4E;
    transform: translateY(-3px);
}

/* Carousel Indicators */
.rt-hero-indicators {
    z-index: 5;
    bottom: 25px;
    gap: 9px;
    margin-bottom: 0;
}

.rt-hero-indicators [data-bs-target] {
    width: 9px;
    height: 9px;
    margin: 0;
    border: none;
    border-radius: 50%;
    background-color: #FFFFFF;
    opacity: 0.6;
    transition: all 0.3s ease;
}

.rt-hero-indicators .active {
    width: 32px;
    border-radius: 10px;
    background-color: #D4A63A;
    opacity: 1;
}

/* Carousel Navigation Arrows */
.rt-hero-control {
    width: 65px;
    opacity: 1;
    z-index: 4;
}

.rt-control-icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.4);
    border-radius: 50%;
    background: rgba(255,255,255,0.10);
    color: #FFFFFF;
    font-size: 17px;
    backdrop-filter: blur(8px);
    transition: all 0.3s ease;
}

.rt-hero-control:hover .rt-control-icon {
    background: #D4A63A;
    border-color: #D4A63A;
    color: #102B4E;
}

/* Content Entrance Animation */
.carousel-item.active .rt-hero-tag {
    animation: rtFadeUp 0.7s ease both;
}

.carousel-item.active .rt-hero-content h1,
.carousel-item.active .rt-hero-content h2 {
    animation: rtFadeUp 0.8s ease 0.12s both;
}

.carousel-item.active .rt-hero-content p {
    animation: rtFadeUp 0.8s ease 0.24s both;
}

.carousel-item.active .rt-hero-actions {
    animation: rtFadeUp 0.8s ease 0.36s both;
}

@keyframes rtFadeUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}



/* ============================================
   RAINBOW TRAVELS - ELEGANT FADE CAROUSEL
============================================ */

#rainbowHeroSlider.rt-elegant-fade {
    position: relative;
    overflow: hidden;
}

/* Smooth crossfade */
#rainbowHeroSlider.rt-elegant-fade
.carousel-item {
    transition: opacity 1.5s ease-in-out;
}

/* Preserve background image layout */
#rainbowHeroSlider.rt-elegant-fade
.rt-hero-slide {
    position: relative;
    transform: none;
    background-size: cover;
    background-repeat: no-repeat;
}

/* ============================================
   STAGGERED TEXT ANIMATION
============================================ */

/* Initially hide animated elements */
#rainbowHeroSlider .rt-hero-tag,
#rainbowHeroSlider .rt-hero-content h1,
#rainbowHeroSlider .rt-hero-content h2,
#rainbowHeroSlider .rt-hero-content p,
#rainbowHeroSlider .rt-hero-actions {
    opacity: 0;
    transform: translateY(25px);
}

/* Welcome tag */
#rainbowHeroSlider
.rt-text-animate .rt-hero-tag {
    animation: rtElegantReveal 0.6s ease-out
               0.1s both;
}

/* Heading */
#rainbowHeroSlider
.rt-text-animate .rt-hero-content h1,
#rainbowHeroSlider
.rt-text-animate .rt-hero-content h2 {
    animation: rtElegantReveal 0.7s ease-out
               0.25s both;
}

/* Description */
#rainbowHeroSlider
.rt-text-animate .rt-hero-content p {
    animation: rtElegantReveal 0.7s ease-out
               0.45s both;
}

/* Buttons */
#rainbowHeroSlider
.rt-text-animate .rt-hero-actions {
    animation: rtElegantReveal 0.7s ease-out
               0.65s both;
}

/* Keyframes */
@keyframes rtElegantReveal {
    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================================
   ACCESSIBILITY
============================================ */

@media (prefers-reduced-motion: reduce) {

    #rainbowHeroSlider .carousel-item {
        transition: none !important;
    }

    #rainbowHeroSlider .rt-hero-tag,
    #rainbowHeroSlider .rt-hero-content h1,
    #rainbowHeroSlider .rt-hero-content h2,
    #rainbowHeroSlider .rt-hero-content p,
    #rainbowHeroSlider .rt-hero-actions {
        opacity: 1;
        transform: none;
        animation: none !important;
    }
}

/* Hidden on desktop and tablet */
.rt-hero-mobile-image {
    display: none;
}

/* Keep existing elegant fade */
#rainbowHeroSlider.rt-elegant-fade
.carousel-item {
    transition: opacity 1.5s ease-in-out;
}


/*---------------------- About Section ----------------------*/


/* ==========================================
   RAINBOW TRAVELS - ABOUT SECTION
========================================== */

.rt-about-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Image */
.rt-about-image-wrap {
    position: relative;
    padding: 0 22px 22px 0;
}

.rt-about-image-wrap::before {
    content: "";
    position: absolute;
    inset: 22px 0 0 22px;
    background: #EAF3F2;
    border-radius: 22px;
}

.rt-about-image {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 490px;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 55px rgba(9,29,54,0.12);
}

/* Image badge */
.rt-about-image-badge {
    position: absolute;
    z-index: 2;
    bottom: 45px;
    right: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 20px;
    background: #102B4E;
    color: #FFFFFF;
    border-left: 4px solid #D4A63A;
    border-radius: 10px;
    box-shadow: 0 12px 35px rgba(0,0,0,0.18);
    font-size: 13px;
    font-weight: 700;
}

.rt-about-image-badge i {
    color: #D4A63A;
    font-size: 23px;
}

/* Content */
.rt-about-content {
    padding-left: 25px;
}

.rt-section-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.rt-section-tag i {
    font-size: 16px;
}

.rt-about-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 50px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-about-title span {
    display: block;
    color: #B48724;
}

.rt-about-lead {
    color: #104654;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 18px;
}

.rt-about-description {
    color: #64748B;
    font-size: 15px;
    line-height: 1.9;
    margin-bottom: 16px;
}

/* Features */
.rt-about-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 17px 20px;
    margin: 28px 0 34px;
}

.rt-about-feature {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #344054;
    font-size: 13px;
    font-weight: 600;
}

.rt-about-feature i {
    color: #16806D;
    font-size: 17px;
    flex-shrink: 0;
}

/* Button */
.rt-about-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 15px 23px;
    background: #102B4E;
    color: #FFFFFF;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.3s ease;
}

.rt-about-btn:hover {
    background: #D4A63A;
    color: #091D36;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(212,166,58,0.2);
}

.rt-about-btn i {
    transition: transform 0.3s ease;
}

.rt-about-btn:hover i {
    transform: translateX(4px);
}



/* ==========================================
   RAINBOW TRAVELS - OUR FLEET
========================================== */

.rt-fleet-section {
    padding: 105px 0;
    background: #F5F8FA;
    overflow: hidden;
}

.rt-fleet-heading {
    max-width: 740px;
    margin: 0 auto 52px;
}

.rt-fleet-heading .rt-section-tag {
    justify-content: center;
}

.rt-fleet-title {
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    color: #102B4E;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-fleet-title span {
    color: #B48724;
}

.rt-fleet-subtitle {
    font-size: 15px;
    line-height: 1.85;
    color: #64748B;
    margin: 0 auto;
}

/* Fleet Card */
.rt-fleet-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #FFFFFF;
    border: 1px solid #E6EDF2;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(9,29,54,0.05);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.rt-fleet-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 48px rgba(9,29,54,0.12);
}

/* Image */
.rt-fleet-image {
    position: relative;
    overflow: hidden;
    background: #E7EEF1;
}

.rt-fleet-image img {
    display: block;
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.rt-fleet-card:hover .rt-fleet-image img {
    transform: scale(1.06);
}

.rt-fleet-badge {
    position: absolute;
    left: 18px;
    bottom: 18px;
    padding: 9px 13px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
}

/* Card Content */
.rt-fleet-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 26px;
}

.rt-fleet-body h3 {
    font-size: 23px;
    font-weight: 800;
    color: #102B4E;
    margin-bottom: 13px;
}

.rt-fleet-body p {
    font-size: 14px;
    line-height: 1.8;
    color: #64748B;
    margin-bottom: 22px;
}

.rt-fleet-features {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 17px 0;
    margin-top: auto;
    border-top: 1px solid #E8EDF2;
}

.rt-fleet-features span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 600;
    color: #344054;
}

.rt-fleet-features i {
    color: #16806D;
    font-size: 16px;
}

/* Enquiry Button */
.rt-fleet-btn {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    margin-top: 10px;
    padding: 14px 18px;
    background: #102B4E;
    color: #FFFFFF;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.3s ease, color 0.3s ease;
}

.rt-fleet-btn:hover {
    background: #D4A63A;
    color: #091D36;
}

.rt-fleet-btn i {
    transition: transform 0.3s ease;
}

.rt-fleet-btn:hover i {
    transform: translateX(4px);
}




/* ==========================================
   WHY CHOOSE RAINBOW TRAVELS
========================================== */

.rt-why-section {
    position: relative;
    padding: 50px 0;
    background: white;
    overflow: hidden;
}

.rt-why-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-why-heading .rt-section-tag {
    justify-content: center;
}

.rt-why-title {
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    color: #102B4E;
    margin-bottom: 18px;
}

.rt-why-title span {
    color: #B48724;
}

.rt-why-subtitle {
    max-width: 680px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.85;
    color: #64748B;
}

/* FEATURE CARDS */

.rt-why-card {
    position: relative;
    height: 100%;
    padding: 34px 29px;
    background: #FFFFFF;
    border: 1px solid #E4EEEB;
    border-radius: 18px;
    box-shadow: 0 8px 30px rgba(9,29,54,0.04);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.rt-why-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 29px;
    width: 50px;
    height: 3px;
    background: #D4A63A;
    border-radius: 0 0 5px 5px;
}

.rt-why-card:hover {
    transform: translateY(-8px);
    border-color: #C5DDD7;
    box-shadow: 0 20px 45px rgba(9,29,54,0.10);
}

/* ICON */

.rt-why-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 25px;
    background: #E6F3F0;
    color: #126D63;
    border-radius: 17px;
    font-size: 29px;
    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease;
}

.rt-why-card:hover .rt-why-icon {
    background: #102B4E;
    color: #D4A63A;
    transform: rotate(-5deg);
}

/* TEXT */

.rt-why-card h3 {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.4;
    color: #102B4E;
    margin-bottom: 13px;
}

.rt-why-card p {
    font-size: 14px;
    line-height: 1.85;
    color: #64748B;
    margin: 0;
}

/* CTA */

.rt-why-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 55px;
    padding: 34px 42px;
    background: linear-gradient(
        120deg,
        #082B35 0%,
        #104654 100%
    );
    border-radius: 18px;
    box-shadow: 0 18px 40px rgba(8,43,53,0.15);
}

.rt-why-cta h3 {
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 9px;
}

.rt-why-cta p {
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

.rt-why-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    padding: 16px 25px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.rt-why-cta-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}




/* ==========================================
   RAINBOW TRAVELS - OUR SERVICES
========================================== */

.rt-services-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Heading */

.rt-services-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-services-heading .rt-section-tag {
    justify-content: center;
}

.rt-services-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-services-title span {
    color: #B48724;
}

.rt-services-subtitle {
    color: #64748B;
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Cards */

.rt-service-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #FFFFFF;
    border: 1px solid #E6EDF2;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(9,29,54,0.06);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.rt-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(9,29,54,0.13);
}

/* Images */

.rt-service-image {
    position: relative;
    overflow: hidden;
    background: #EAF1F3;
}

.rt-service-image img {
    display: block;
    width: 100%;
    height: 235px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.rt-service-card:hover .rt-service-image img {
    transform: scale(1.07);
}

/* Floating icon */

.rt-service-icon {
    position: absolute;
    right: 20px;
    bottom: -1px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    background: #D4A63A;
    color: #091D36;
    border: 4px solid #FFFFFF;
    border-radius: 14px 14px 0 0;
    font-size: 22px;
}

/* Card body */

.rt-service-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 27px;
}

.rt-service-body h3 {
    color: #102B4E;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 13px;
}

.rt-service-body p {
    color: #64748B;
    font-size: 14px;
    line-height: 1.85;
    margin-bottom: 24px;
}

.rt-service-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    color: #126D63;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: color 0.3s ease;
}

.rt-service-link:hover {
    color: #B48724;
}

.rt-service-link i {
    transition: transform 0.3s ease;
}

.rt-service-link:hover i {
    transform: translate(3px, -3px);
}

/* Coverage note */

.rt-services-note {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-top: 50px;
    padding: 23px 27px;
    background: #EFF7F5;
    border-left: 4px solid #D4A63A;
    border-radius: 12px;
}

.rt-services-note > i {
    color: #126D63;
    font-size: 22px;
    flex-shrink: 0;
}

.rt-services-note p {
    color: #435466;
    font-size: 13px;
    line-height: 1.8;
    margin: 0;
}

.rt-services-note strong {
    color: #102B4E;
}



/* ==========================================
   RAINBOW TRAVELS - BOOKING PROCESS
========================================== */

.rt-booking-section {
    position: relative;
    padding: 105px 0;
    background: linear-gradient(
        145deg,
        #082B35 0%,
        #104654 60%,
        #0B3540 100%
    );
    overflow: hidden;
}

/* Decorative glow */

.rt-booking-section::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    top: -260px;
    right: -170px;
    border-radius: 50%;
    background: rgba(212,166,58,0.08);
    filter: blur(30px);
    pointer-events: none;
}

.rt-booking-section .container {
    position: relative;
    z-index: 1;
}

/* Heading */

.rt-booking-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-booking-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.rt-booking-title {
    color: #FFFFFF;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-booking-title span {
    color: #E7BE60;
}

.rt-booking-subtitle {
    color: rgba(255,255,255,0.75);
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Step cards */

.rt-booking-card {
    position: relative;
    height: 100%;
    min-height: 290px;
    padding: 32px 26px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 18px;
    backdrop-filter: blur(8px);
    transition:
        background 0.35s ease,
        transform 0.35s ease,
        border-color 0.35s ease;
}

.rt-booking-card:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(212,166,58,0.55);
    transform: translateY(-8px);
}

/* Step number */

.rt-booking-number {
    position: absolute;
    top: 25px;
    right: 25px;
    color: rgba(255,255,255,0.15);
    font-size: 43px;
    font-weight: 900;
    line-height: 1;
}

/* Icon */

.rt-booking-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
    margin-bottom: 26px;
    background: rgba(212,166,58,0.14);
    color: #E7BE60;
    border: 1px solid rgba(212,166,58,0.25);
    border-radius: 17px;
    font-size: 28px;
}

/* Card text */

.rt-booking-card h3 {
    color: #FFFFFF;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 15px;
}

.rt-booking-card p {
    color: rgba(255,255,255,0.72);
    font-size: 13px;
    line-height: 1.85;
    margin: 0;
}

/* Bottom CTA */

.rt-booking-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 55px;
    padding: 30px 36px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 18px;
}

.rt-booking-bottom-text {
    display: flex;
    align-items: center;
    gap: 20px;
}

.rt-booking-bottom-text > i {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    background: rgba(212,166,58,0.14);
    color: #E7BE60;
    border-radius: 15px;
    font-size: 27px;
}

.rt-booking-bottom h3 {
    color: #FFFFFF;
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 9px;
}

.rt-booking-bottom p {
    color: rgba(255,255,255,0.72);
    font-size: 13px;
    line-height: 1.75;
    margin: 0;
}

/* CTA Button */

.rt-booking-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    padding: 16px 25px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.rt-booking-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}



/* ==========================================
   RAINBOW TRAVELS - TESTIMONIALS
========================================== */

.rt-testimonials-section {
    padding: 105px 0;
    background: linear-gradient(
        160deg,
        #FFFFFF 0%,
        #F3F8F7 100%
    );
    overflow: hidden;
}

/* Section Heading */

.rt-testimonials-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-testimonials-heading .rt-section-tag {
    justify-content: center;
}

.rt-testimonials-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-testimonials-title span {
    color: #B48724;
}

.rt-testimonials-subtitle {
    color: #64748B;
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Testimonial Cards */

.rt-testimonial-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 32px;
    background: #FFFFFF;
    border: 1px solid #E5ECEF;
    border-radius: 18px;
    box-shadow: 0 8px 30px rgba(9,29,54,0.05);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.rt-testimonial-card:hover {
    transform: translateY(-8px);
    border-color: #D4A63A;
    box-shadow: 0 20px 45px rgba(9,29,54,0.11);
}

/* Rating and Quote */

.rt-testimonial-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}

.rt-testimonial-stars {
    display: flex;
    gap: 4px;
    color: #D4A63A;
    font-size: 15px;
}

.rt-testimonial-quote {
    color: #DCEBE7;
    font-size: 43px;
    line-height: 1;
}

/* Text */

.rt-testimonial-card h3 {
    color: #102B4E;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 15px;
}

.rt-testimonial-text {
    color: #64748B;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 28px;
}

/* Customer Details */

.rt-testimonial-footer {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: auto;
    padding-top: 22px;
    border-top: 1px solid #E8EEF1;
}

.rt-testimonial-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 47px;
    height: 47px;
    flex-shrink: 0;
    background: #E7F2EF;
    color: #126D63;
    border-radius: 50%;
    font-size: 21px;
}

.rt-testimonial-customer {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.rt-testimonial-customer strong {
    color: #102B4E;
    font-size: 13px;
    font-weight: 800;
}

.rt-testimonial-customer span {
    color: #7B8A9B;
    font-size: 12px;
}

/* Temporary Sample Notice */

.rt-testimonials-disclaimer {
    color: #8793A1;
    font-size: 12px;
    line-height: 1.7;
    margin: 28px 0 0;
}



/* ==========================================
   RAINBOW TRAVELS - FAQ SECTION
========================================== */

.rt-faq-section {
    padding: 105px 0;
    background: #F5F9F8;
    overflow: hidden;
}

/* Introduction */

.rt-faq-intro {
    padding-right: 25px;
}

.rt-faq-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 22px;
}

.rt-faq-title span {
    display: block;
    color: #B48724;
}

.rt-faq-description {
    color: #64748B;
    font-size: 15px;
    line-height: 1.9;
    margin-bottom: 32px;
}

/* Help Card */

.rt-faq-help {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 27px;
    background: #FFFFFF;
    border: 1px solid #E2ECE9;
    border-radius: 16px;
    box-shadow: 0 8px 25px rgba(9,29,54,0.04);
}

.rt-faq-help-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 55px;
    height: 55px;
    background: #E5F3EF;
    color: #126D63;
    border-radius: 14px;
    font-size: 25px;
}

.rt-faq-help h3 {
    color: #102B4E;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 9px;
}

.rt-faq-help p {
    color: #64748B;
    font-size: 13px;
    line-height: 1.75;
    margin-bottom: 13px;
}

.rt-faq-help a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #126D63;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.rt-faq-help a:hover {
    color: #B48724;
}

/* Accordion */

.rt-faq-accordion {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.rt-faq-accordion .accordion-item {
    overflow: hidden;
    border: 1px solid #E1EAE8;
    border-radius: 13px;
    background: #FFFFFF;
    box-shadow: 0 5px 18px rgba(9,29,54,0.035);
}

.rt-faq-accordion .accordion-button {
    padding: 21px 24px;
    background: #FFFFFF;
    color: #102B4E;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.6;
    box-shadow: none;
}

.rt-faq-accordion .accordion-button:not(.collapsed) {
    background: #EAF5F1;
    color: #126D63;
    box-shadow: none;
}

.rt-faq-accordion .accordion-button:focus-visible {
    outline: 2px solid #D4A63A;
    outline-offset: -3px;
}

.rt-faq-accordion .accordion-button::after {
    flex-shrink: 0;
    margin-left: 15px;
}

.rt-faq-accordion .accordion-body {
    padding: 5px 24px 23px;
    color: #64748B;
    font-size: 13px;
    line-height: 1.9;
    background: #FFFFFF;
}



/* ==========================================
   RAINBOW TRAVELS - CONTACT SECTION
========================================== */

.rt-contact-section {
    padding: 105px 0;
    background: #F4F8F7;
    overflow: hidden;
}

/* Heading */

.rt-contact-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-contact-heading .rt-section-tag {
    justify-content: center;
}

.rt-contact-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-contact-title span {
    color: #B48724;
}

.rt-contact-subtitle {
    color: #64748B;
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Left Contact Panel */

.rt-contact-info {
    height: 100%;
    padding: 36px 30px;
    background: linear-gradient(
        145deg,
        #082B35,
        #104654
    );
    border-radius: 18px;
    color: #FFFFFF;
}

.rt-contact-info-tag {
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.rt-contact-info h3 {
    color: #FFFFFF;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.3;
    margin: 18px 0;
}

.rt-contact-info-intro {
    color: rgba(255,255,255,0.78);
    font-size: 13px;
    line-height: 1.9;
    margin-bottom: 35px;
}

/* Contact Details */

.rt-contact-detail {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 27px;
}

.rt-contact-detail-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 45px;
    height: 45px;
    background: rgba(255,255,255,0.10);
    color: #E7BE60;
    border-radius: 12px;
    font-size: 19px;
}

.rt-contact-detail h4 {
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 800;
    margin-bottom: 7px;
}

.rt-contact-detail p,
.rt-contact-detail a {
    color: rgba(255,255,255,0.78);
    font-size: 13px;
    line-height: 1.75;
    text-decoration: none;
    margin: 0;
}

.rt-contact-detail a:hover {
    color: #E7BE60;
}

/* Coverage Note */

.rt-contact-coverage {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 32px;
    padding: 20px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 12px;
}

.rt-contact-coverage > i {
    color: #E7BE60;
    font-size: 23px;
}

.rt-contact-coverage strong {
    display: block;
    color: #FFFFFF;
    font-size: 13px;
    margin-bottom: 8px;
}

.rt-contact-coverage p {
    color: rgba(255,255,255,0.73);
    font-size: 12px;
    line-height: 1.8;
    margin: 0;
}

/* Form Panel */

.rt-contact-form-wrap {
    height: 100%;
    padding: 38px;
    background: #FFFFFF;
    border: 1px solid #E3ECE9;
    border-radius: 18px;
    box-shadow: 0 12px 40px rgba(9,29,54,0.06);
}

.rt-contact-form-heading {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-bottom: 32px;
    padding-bottom: 25px;
    border-bottom: 1px solid #E8EFED;
}

.rt-contact-form-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 55px;
    height: 55px;
    background: #E5F3EF;
    color: #126D63;
    border-radius: 14px;
    font-size: 25px;
}

.rt-contact-form-heading h3 {
    color: #102B4E;
    font-size: 23px;
    font-weight: 800;
    margin-bottom: 8px;
}

.rt-contact-form-heading p {
    color: #64748B;
    font-size: 13px;
    line-height: 1.7;
    margin: 0;
}

/* Inputs */

.rt-form-label {
    display: block;
    color: #344054;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 9px;
}

.rt-form-control {
    min-height: 49px;
    padding: 12px 15px;
    background-color: #F9FBFC;
    border: 1px solid #DCE6E8;
    border-radius: 9px;
    color: #102B4E;
    font-size: 13px;
}

.rt-form-control:focus {
    background-color: #FFFFFF;
    border-color: #16816F;
    box-shadow: 0 0 0 3px rgba(22,129,111,0.10);
}

textarea.rt-form-control {
    min-height: 110px;
    resize: vertical;
}

/* Submit Button */

.rt-contact-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    min-height: 52px;
    padding: 14px 20px;
    background: #16816F;
    border: none;
    border-radius: 9px;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.rt-contact-submit:hover {
    background: #106755;
    transform: translateY(-2px);
}

.rt-contact-form-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #84929F;
    font-size: 11px;
    line-height: 1.6;
    text-align: center;
    margin: 14px 0 0;
}


/* ==========================================
   RAINBOW TRAVELS - PREMIUM FOOTER
========================================== */

.rt-footer {
    position: relative;
    background: #071C27;
    color: rgba(255,255,255,0.75);
    overflow: hidden;
}

.rt-footer-main {
    position: relative;
    padding: 85px 0 35px;
    background: linear-gradient(
        145deg,
        #071C27 0%,
        #082B35 60%,
        #104654 100%
    );
}

/* Decorative glow */

.rt-footer-main::before {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    top: -170px;
    right: -120px;
    background: rgba(212,166,58,0.07);
    border-radius: 50%;
    filter: blur(25px);
    pointer-events: none;
}

.rt-footer-main .container {
    position: relative;
    z-index: 1;
}

/* Logo */

.rt-footer-logo {
    display: inline-block;
    margin-bottom: 23px;
}

.rt-footer-logo img {
    display: block;
    width: auto;
    max-width: 230px;
    max-height: 75px;
    object-fit: contain;
}

/* Description */

.rt-footer-description {
    max-width: 360px;
    color: rgba(255,255,255,0.72);
    font-size: 13px;
    line-height: 1.95;
    margin-bottom: 26px;
}

/* Social Icons */

.rt-footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
}

.rt-footer-social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 10px;
    color: #FFFFFF;
    font-size: 17px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-footer-social a:hover {
    background: #D4A63A;
    color: #091D36;
    transform: translateY(-4px);
}

/* Column Titles */

.rt-footer-column h3 {
    position: relative;
    color: #FFFFFF;
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 30px;
    padding-bottom: 15px;
}

.rt-footer-column h3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 38px;
    height: 3px;
    background: #D4A63A;
    border-radius: 4px;
}

/* Quick Links */

.rt-footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rt-footer-links li {
    margin-bottom: 15px;
}

.rt-footer-links a {
    display: inline-flex;
    align-items: center;
    color: rgba(255,255,255,0.72);
    font-size: 13px;
    line-height: 1.6;
    text-decoration: none;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.rt-footer-links a:hover {
    color: #E7BE60;
    transform: translateX(5px);
}

/* Contact Details */

.rt-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 23px;
}

.rt-footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 13px;
}

.rt-footer-contact-item > i {
    flex-shrink: 0;
    color: #E7BE60;
    font-size: 19px;
    margin-top: 2px;
}

.rt-footer-contact-item strong {
    display: block;
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 7px;
}

.rt-footer-contact-item p,
.rt-footer-contact-item a {
    color: rgba(255,255,255,0.72);
    font-size: 12px;
    line-height: 1.8;
    margin: 0;
    text-decoration: none;
}

.rt-footer-contact-item a:hover {
    color: #E7BE60;
}

/* Highlight Bar */

.rt-footer-highlight {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 60px;
    padding: 25px 28px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
}

.rt-footer-highlight-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 57px;
    height: 57px;
    background: rgba(212,166,58,0.13);
    color: #E7BE60;
    border-radius: 13px;
    font-size: 25px;
}

.rt-footer-highlight > div:nth-child(2) {
    flex: 1;
}

.rt-footer-highlight strong {
    display: block;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 8px;
}

.rt-footer-highlight p {
    color: rgba(255,255,255,0.72);
    font-size: 12px;
    line-height: 1.7;
    margin: 0;
}

.rt-footer-highlight-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-shrink: 0;
    padding: 14px 20px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-footer-highlight-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}

/* Copyright Bar */

.rt-footer-bottom {
    background: #061822;
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 23px 0;
}

.rt-footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.rt-footer-bottom p {
    color: rgba(255,255,255,0.65);
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}

.rt-footer-bottom-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
}

.rt-footer-bottom-links a {
    color: rgba(255,255,255,0.65);
    font-size: 12px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.rt-footer-bottom-links a:hover {
    color: #E7BE60;
}


/*----------------------------- About Us Page --------------------*/



/* ==========================================
   RAINBOW TRAVELS - INNER PAGE BANNER
========================================== */

.rt-inner-banner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 340px;
    padding: 85px 0;
    overflow: hidden;
    isolation: isolate;

    background: linear-gradient(
        115deg,
        #071D2C 0%,
        #0A3440 55%,
        #12606A 100%
    );
}

/* Decorative Glows */

.rt-inner-banner-glow {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.rt-inner-banner-glow-one {
    width: 380px;
    height: 380px;
    top: -220px;
    right: 10%;
    background: rgba(212,166,58,0.10);
    filter: blur(35px);
}

.rt-inner-banner-glow-two {
    width: 310px;
    height: 310px;
    bottom: -200px;
    left: 6%;
    background: rgba(67,196,194,0.14);
    filter: blur(35px);
}

/* Content */

.rt-inner-banner-content {
    position: relative;
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

/* Eyebrow Tag */

.rt-inner-banner-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 22px;
}

/* Heading */

.rt-inner-banner h1 {
    color: #FFFFFF;
    font-size: clamp(34px, 4.5vw, 58px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1.2px;
    margin-bottom: 19px;
}

.rt-inner-banner h1 span {
    color: #E7BE60;
}

/* Subtitle */

.rt-inner-banner-content > p {
    color: rgba(255,255,255,0.80);
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 27px;
}

/* Breadcrumb */

.rt-inner-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 13px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.rt-inner-breadcrumb li {
    color: #E7BE60;
    font-size: 13px;
    font-weight: 600;
}

.rt-inner-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255,255,255,0.82);
    text-decoration: none;
    transition: color 0.3s ease;
}

.rt-inner-breadcrumb a:hover {
    color: #E7BE60;
}

.rt-inner-breadcrumb li[aria-hidden="true"] {
    color: rgba(255,255,255,0.45);
    font-size: 10px;
}



/* ==========================================
   ABOUT PAGE - WHO WE ARE
========================================== */

.rt-about-intro-section {
    padding: 110px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Image Area */

.rt-about-intro-visual {
    position: relative;
    padding: 0 28px 30px 0;
}

.rt-about-intro-image {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 22px;
    box-shadow: 0 25px 55px rgba(9,29,54,0.13);
}

.rt-about-intro-image img {
    display: block;
    width: 100%;
    height: 520px;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.rt-about-intro-image:hover img {
    transform: scale(1.04);
}

/* Decorative Shape */

.rt-about-intro-decoration {
    position: absolute;
    z-index: 1;
    width: 68%;
    height: 65%;
    right: 0;
    bottom: 0;
    background: #E7F3EF;
    border-radius: 25px;
}

/* Floating Badge */

.rt-about-intro-badge {
    position: absolute;
    z-index: 3;
    left: -22px;
    bottom: 70px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px 22px;
    background: #FFFFFF;
    border: 1px solid #E7EEEB;
    border-radius: 14px;
    box-shadow: 0 12px 35px rgba(9,29,54,0.13);
}

.rt-about-intro-badge-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 49px;
    height: 49px;
    background: #E5F3EF;
    color: #126D63;
    border-radius: 12px;
    font-size: 23px;
}

.rt-about-intro-badge strong {
    display: block;
    color: #102B4E;
    font-size: 14px;
    font-weight: 800;
    margin-bottom: 4px;
}

.rt-about-intro-badge span {
    color: #64748B;
    font-size: 12px;
}

/* Content */

.rt-about-intro-content {
    padding-left: 20px;
}

.rt-about-intro-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-about-intro-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 24px;
}

.rt-about-intro-title span {
    display: block;
    color: #B48724;
}

.rt-about-intro-lead {
    color: #344054;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.9;
    margin-bottom: 18px;
}

.rt-about-intro-description {
    color: #64748B;
    font-size: 14px;
    line-height: 1.95;
    margin-bottom: 17px;
}

/* Feature Grid */

.rt-about-intro-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 30px;
}

.rt-about-intro-feature {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    background: #F5F9F8;
    border: 1px solid #E6EEEB;
    border-radius: 12px;
}

.rt-about-intro-feature > span {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    background: #E1F0EB;
    color: #126D63;
    border-radius: 10px;
    font-size: 17px;
}

.rt-about-intro-feature h3 {
    color: #102B4E;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.5;
    margin-bottom: 5px;
}

.rt-about-intro-feature p {
    color: #64748B;
    font-size: 11px;
    line-height: 1.6;
    margin: 0;
}

/* Buttons */

.rt-about-intro-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 33px;
}

.rt-about-intro-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    padding: 15px 24px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-about-intro-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}

.rt-about-intro-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #126D63;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.rt-about-intro-text-link:hover {
    color: #B48724;
}



/* ==========================================
   ABOUT INTRO - RESPONSIVE
========================================== */

@media (max-width: 1199.98px) {

    .rt-about-intro-content {
        padding-left: 0;
    }

    .rt-about-intro-image img {
        height: 470px;
    }

    .rt-about-intro-badge {
        left: 0;
    }
}

@media (max-width: 991.98px) {

    .rt-about-intro-section {
        padding: 80px 0;
    }

    .rt-about-intro-image img {
        height: 450px;
    }

    .rt-about-intro-content {
        padding-left: 0;
    }
}

@media (max-width: 575.98px) {

    .rt-about-intro-section {
        padding: 60px 0;
    }

    .rt-about-intro-visual {
        padding: 0 15px 20px 0;
    }

    .rt-about-intro-image {
        border-radius: 16px;
    }

    .rt-about-intro-image img {
        height: 320px;
    }

    .rt-about-intro-badge {
        left: 8px;
        bottom: 35px;
        padding: 11px 13px;
        gap: 9px;
    }

    .rt-about-intro-badge-icon {
        width: 39px;
        height: 39px;
        font-size: 18px;
    }

    .rt-about-intro-badge strong {
        font-size: 12px;
    }

    .rt-about-intro-badge span {
        font-size: 10px;
    }

    .rt-about-intro-title {
        font-size: 32px;
        letter-spacing: -0.6px;
    }

    .rt-about-intro-lead {
        font-size: 14px;
    }

    .rt-about-intro-description {
        font-size: 13px;
    }

    .rt-about-intro-features {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .rt-about-intro-actions {
        align-items: stretch;
        flex-direction: column;
        gap: 18px;
    }

    .rt-about-intro-btn {
        width: 100%;
    }

    .rt-about-intro-text-link {
        justify-content: center;
    }
}



/* ==========================================
   ABOUT PAGE - MISSION & VISION
========================================== */

.rt-mv-section {
    position: relative;
    padding: 105px 0;
    background: linear-gradient(
        145deg,
        #082B35 0%,
        #104654 58%,
        #0B3540 100%
    );
    overflow: hidden;
}

/* Decorative Background */

.rt-mv-section::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    top: -230px;
    right: -100px;
    border-radius: 50%;
    background: rgba(212,166,58,0.08);
    filter: blur(25px);
    pointer-events: none;
}

.rt-mv-section .container {
    position: relative;
    z-index: 1;
}

/* Heading */

.rt-mv-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-mv-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.rt-mv-title {
    color: #FFFFFF;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.rt-mv-title span {
    color: #E7BE60;
}

.rt-mv-subtitle {
    color: rgba(255,255,255,0.76);
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Cards */

.rt-mv-card {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 42px 38px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 20px;
    backdrop-filter: blur(8px);
    transition:
        transform 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease;
}

.rt-mv-card:hover {
    transform: translateY(-7px);
    background: rgba(255,255,255,0.11);
    border-color: rgba(212,166,58,0.55);
}

/* Icon & Number */

.rt-mv-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 28px;
}

.rt-mv-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    background: rgba(212,166,58,0.14);
    color: #E7BE60;
    border: 1px solid rgba(212,166,58,0.25);
    border-radius: 18px;
    font-size: 32px;
}

.rt-mv-card-number {
    color: rgba(255,255,255,0.14);
    font-size: 55px;
    font-weight: 900;
    line-height: 1;
}

/* Card Content */

.rt-mv-card h3 {
    color: #FFFFFF;
    font-size: 25px;
    font-weight: 800;
    margin-bottom: 21px;
}

.rt-mv-card p {
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    line-height: 1.95;
    margin-bottom: 17px;
}

/* Card Footer */

.rt-mv-card-footer {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 24px;
    color: #E7BE60;
    font-size: 13px;
    font-weight: 700;
}

.rt-mv-card-footer i {
    font-size: 17px;
}

/* Bottom Message */

.rt-mv-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 48px;
}

.rt-mv-bottom-icon {
    color: #E7BE60;
    font-size: 20px;
}

.rt-mv-bottom p {
    color: rgba(255,255,255,0.82);
    font-size: 15px;
    margin: 0;
}

.rt-mv-bottom strong {
    color: #FFFFFF;
}



/* ==========================================
   ABOUT PAGE - FLEET & COVERAGE
========================================== */

.rt-about-fleet-section {
    padding: 105px 0;
    background: #F5F9F8;
    overflow: hidden;
}

/* Heading */

.rt-about-fleet-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-about-fleet-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-about-fleet-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 19px;
}

.rt-about-fleet-title span {
    color: #B48724;
}

.rt-about-fleet-subtitle {
    color: #64748B;
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Fleet Card */

.rt-about-fleet-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #E3ECE9;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(9,29,54,0.05);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.rt-about-fleet-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(9,29,54,0.12);
}

/* Card Image */

.rt-about-fleet-image {
    position: relative;
    height: 230px;
    overflow: hidden;
}

.rt-about-fleet-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.rt-about-fleet-card:hover .rt-about-fleet-image img {
    transform: scale(1.06);
}

.rt-about-fleet-image-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 13px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
}

/* Card Body */

.rt-about-fleet-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 27px;
}

.rt-about-fleet-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 47px;
    height: 47px;
    background: #E7F3EF;
    color: #126D63;
    border-radius: 12px;
    font-size: 22px;
    margin-bottom: 20px;
}

.rt-about-fleet-body h3 {
    color: #102B4E;
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 14px;
}

.rt-about-fleet-body > p {
    color: #64748B;
    font-size: 13px;
    line-height: 1.85;
    margin-bottom: 22px;
}

/* Coverage Label */

.rt-about-fleet-coverage {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #126D63;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 12px;
}

.rt-about-fleet-coverage i {
    flex-shrink: 0;
    margin-top: 2px;
}

/* Driver Included */

.rt-about-fleet-driver {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #526274;
    font-size: 12px;
    margin-bottom: 23px;
}

.rt-about-fleet-driver i {
    color: #B48724;
    font-size: 16px;
}

/* Enquiry Link */

.rt-about-fleet-link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 19px;
    border-top: 1px solid #E9EFED;
    color: #126D63;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.rt-about-fleet-link:hover {
    color: #B48724;
}

/* Coverage Bar */

.rt-about-coverage-bar {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 55px;
    padding: 28px 30px;
    background: linear-gradient(
        120deg,
        #082B35,
        #104654
    );
    border-radius: 16px;
}

.rt-about-coverage-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 62px;
    height: 62px;
    background: rgba(255,255,255,0.10);
    color: #E7BE60;
    border-radius: 13px;
    font-size: 27px;
}

.rt-about-coverage-text {
    flex: 1;
}

.rt-about-coverage-text h3 {
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 8px;
}

.rt-about-coverage-text p {
    color: rgba(255,255,255,0.78);
    font-size: 12px;
    line-height: 1.85;
    margin: 0;
}

.rt-about-coverage-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex-shrink: 0;
    padding: 14px 20px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-about-coverage-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}



/* ==========================================
   ABOUT PAGE - WHY CHOOSE US
========================================== */

.rt-about-why-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Heading */

.rt-about-why-heading {
    max-width: 760px;
    margin: 0 auto 55px;
}

.rt-about-why-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-about-why-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 19px;
}

.rt-about-why-title span {
    color: #B48724;
}

.rt-about-why-subtitle {
    color: #64748B;
    font-size: 15px;
    line-height: 1.85;
    margin: 0 auto;
}

/* Feature Cards */

.rt-about-why-card {
    position: relative;
    height: 100%;
    padding: 35px 30px;
    background: #F8FAFA;
    border: 1px solid #E5EEEB;
    border-radius: 17px;
    overflow: hidden;
    transition:
        transform 0.35s ease,
        background 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.rt-about-why-card:hover {
    transform: translateY(-7px);
    background: #FFFFFF;
    border-color: rgba(212,166,58,0.45);
    box-shadow: 0 18px 40px rgba(9,29,54,0.09);
}

/* Icon */

.rt-about-why-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 27px;
    background: #E5F3EF;
    color: #126D63;
    border-radius: 16px;
    font-size: 28px;
    transition: all 0.3s ease;
}

.rt-about-why-card:hover .rt-about-why-icon {
    background: #126D63;
    color: #FFFFFF;
    transform: rotate(-5deg);
}

/* Card Text */

.rt-about-why-card h3 {
    position: relative;
    z-index: 1;
    color: #102B4E;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.45;
    margin-bottom: 15px;
}

.rt-about-why-card p {
    position: relative;
    z-index: 1;
    color: #64748B;
    font-size: 13px;
    line-height: 1.9;
    margin: 0;
}

/* Decorative Number */

.rt-about-why-number {
    position: absolute;
    right: 22px;
    bottom: 7px;
    color: rgba(16,43,78,0.055);
    font-size: 72px;
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}

/* Bottom CTA */

.rt-about-why-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-top: 55px;
    padding: 29px 32px;
    background: #F2F8F6;
    border: 1px solid #DFEBE7;
    border-radius: 16px;
}

.rt-about-why-bottom-content {
    display: flex;
    align-items: center;
    gap: 17px;
}

.rt-about-why-bottom-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 59px;
    height: 59px;
    background: #DDEFE9;
    color: #126D63;
    border-radius: 13px;
    font-size: 26px;
}

.rt-about-why-bottom h3 {
    color: #102B4E;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 7px;
}

.rt-about-why-bottom p {
    color: #64748B;
    font-size: 12px;
    line-height: 1.7;
    margin: 0;
}

.rt-about-why-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-shrink: 0;
    padding: 15px 23px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-about-why-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}



/* ==========================================
   VEHICLES PAGE - INTRODUCTION
========================================== */

.rt-vehicles-intro-section {
    padding: 105px 0 90px;
    background: #FFFFFF;
    overflow: hidden;
}

.rt-vehicles-intro-heading {
    max-width: 790px;
    margin: 0 auto 52px;
}

.rt-vehicles-intro-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
    margin-bottom: 20px;
}

.rt-vehicles-intro-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-vehicles-intro-title span {
    color: #B48724;
}

.rt-vehicles-intro-description {
    color: #64748B;
    font-size: 15px;
    line-height: 1.95;
    margin: 0 auto;
}

/* Category Cards */

.rt-vehicles-intro-card {
    display: flex;
    align-items: center;
    gap: 17px;
    height: 100%;
    min-height: 116px;
    padding: 23px;
    background: #F6FAF8;
    border: 1px solid #E1EBE7;
    border-radius: 15px;
    text-decoration: none;
    transition: all 0.35s ease;
}

.rt-vehicles-intro-card:hover {
    background: #FFFFFF;
    border-color: #D4A63A;
    box-shadow: 0 15px 35px rgba(9,29,54,0.10);
    transform: translateY(-5px);
}

.rt-vehicles-intro-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 57px;
    height: 57px;
    background: #E2F0EA;
    color: #126D63;
    border-radius: 13px;
    font-size: 25px;
}

.rt-vehicles-intro-card-content {
    flex: 1;
    min-width: 0;
}

.rt-vehicles-intro-card-content h3 {
    color: #102B4E;
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 7px;
}

.rt-vehicles-intro-card-content p {
    color: #64748B;
    font-size: 12px;
    margin: 0;
}

.rt-vehicles-intro-arrow {
    align-self: flex-start;
    color: #B48724;
    font-size: 17px;
    transition: transform 0.3s ease;
}

.rt-vehicles-intro-card:hover
.rt-vehicles-intro-arrow {
    transform: translate(3px, -3px);
}

/* Information Note */

.rt-vehicles-intro-note {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 12px;
    max-width: 800px;
    margin: 42px auto 0;
    padding: 18px 24px;
    background: #F2F8F6;
    border: 1px solid #E1EBE7;
    border-radius: 12px;
}

.rt-vehicles-intro-note i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 19px;
}

.rt-vehicles-intro-note p {
    color: #526274;
    font-size: 13px;
    line-height: 1.8;
    margin: 0;
}

/* Anchor positioning for sticky navigation */

#tempo-traveller,
#mini-bus,
#tourist-bus {
    scroll-margin-top: 110px;
}


/* ==========================================
   VEHICLES PAGE - VEHICLE DETAIL
========================================== */

.rt-vehicle-detail-section {
    padding: 105px 0;
    background: #F5F9F8;
    overflow: hidden;
}

/* Image Area */

.rt-vehicle-detail-visual {
    position: relative;
    padding: 0 25px 28px 0;
}

.rt-vehicle-detail-image {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 20px;
    box-shadow: 0 22px 50px rgba(9,29,54,0.12);
}

.rt-vehicle-detail-image img {
    display: block;
    width: 100%;
    height: 450px;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.rt-vehicle-detail-image:hover img {
    transform: scale(1.04);
}

/* Decorative Shape */

.rt-vehicle-detail-shape {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;
    width: 68%;
    height: 60%;
    background: #E1F0EA;
    border-radius: 22px;
}

/* Coverage Badge */

.rt-vehicle-detail-badge {
    position: absolute;
    z-index: 3;
    left: -15px;
    bottom: 58px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 15px 20px;
    background: #FFFFFF;
    border: 1px solid #E5EEEB;
    border-radius: 13px;
    box-shadow: 0 12px 35px rgba(9,29,54,0.13);
}

.rt-vehicle-detail-badge-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    background: #E4F1EB;
    color: #126D63;
    border-radius: 11px;
    font-size: 20px;
}

.rt-vehicle-detail-badge strong {
    display: block;
    color: #102B4E;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 4px;
}

.rt-vehicle-detail-badge small {
    display: block;
    color: #64748B;
    font-size: 11px;
}

/* Content */

.rt-vehicle-detail-content {
    padding-left: 18px;
}

.rt-vehicle-detail-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-vehicle-detail-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-vehicle-detail-title span {
    display: block;
    color: #B48724;
}

.rt-vehicle-detail-lead {
    color: #344054;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.9;
    margin-bottom: 18px;
}

.rt-vehicle-detail-description {
    color: #64748B;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 17px;
}

/* Features Grid */

.rt-vehicle-detail-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px 18px;
    margin-top: 27px;
}

.rt-vehicle-detail-feature {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #344054;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.6;
}

.rt-vehicle-detail-feature i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 16px;
}

/* Buttons */

.rt-vehicle-detail-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 35px;
}

.rt-vehicle-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 15px 22px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-vehicle-detail-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}

.rt-vehicle-detail-secondary {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #126D63;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.rt-vehicle-detail-secondary:hover {
    color: #B48724;
}


/* ==========================================
   VEHICLES PAGE - MINI BUS
========================================== */

/* Alternate Section Background */

.rt-vehicle-detail-alt {
    background: #FFFFFF;
}

/* Image Decoration - Right Layout */

.rt-vehicle-detail-visual-right {
    padding: 0 0 28px 25px;
}

.rt-vehicle-detail-visual-right
.rt-vehicle-detail-shape {
    left: 0;
    right: auto;
    background: #EAF3F0;
}

/* Image Badge - Right Layout */

.rt-vehicle-detail-badge-right {
    left: auto;
    right: -15px;
}

/* Service Area Notice */

.rt-vehicle-detail-service-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 28px;
    padding: 17px 19px;
    background: #F2F8F6;
    border: 1px solid #DCEBE4;
    border-left: 3px solid #126D63;
    border-radius: 10px;
}

.rt-vehicle-detail-service-note > i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 18px;
    line-height: 1.5;
}

.rt-vehicle-detail-service-note p {
    margin: 0;
    color: #526274;
    font-size: 12px;
    line-height: 1.8;
}

.rt-vehicle-detail-service-note strong {
    color: #102B4E;
    font-weight: 800;
}


/* ==========================================
   MINI BUS - RESPONSIVE
========================================== */

@media (max-width: 991.98px) {

    .rt-vehicle-detail-visual-right {
        padding: 0 20px 25px 20px;
    }

    .rt-vehicle-detail-badge-right {
        right: 0;
    }
}

@media (max-width: 575.98px) {

    .rt-vehicle-detail-visual-right {
        padding: 0 15px 20px 15px;
    }

    .rt-vehicle-detail-badge-right {
        right: 8px;
    }

    .rt-vehicle-detail-service-note {
        padding: 15px;
        gap: 10px;
    }

    .rt-vehicle-detail-service-note p {
        font-size: 11px;
    }
}

.rt-vehicle-detail-section
.rt-vehicle-detail-visual
.rt-vehicle-detail-image
.rt-vehicle-detail-badge
.rt-vehicle-detail-content
.rt-vehicle-detail-title
.rt-vehicle-detail-features
.rt-vehicle-detail-actions
.rt-vehicle-detail-service-note


/* ==========================================
   VEHICLES PAGE - TOURIST BUS
========================================== */

.rt-tourist-bus-section {
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(18, 109, 99, 0.05),
            transparent 32%
        ),
        #F5F9F8;
}

.rt-tourist-bus-section
.rt-vehicle-detail-shape {
    background: #DDECE8;
}

.rt-tourist-bus-section
.rt-vehicle-detail-image img {
    object-position: center;
}

.rt-tourist-bus-section
.rt-vehicle-detail-service-note {
    background: #FFFFFF;
}

.rt-tourist-bus-section
.rt-vehicle-detail-badge {
    border-bottom: 3px solid #D4A63A;
}


/* ==========================================
   VEHICLES PAGE - TRAVEL COVERAGE
========================================== */

.rt-travel-coverage-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background: linear-gradient(
        135deg,
        #082B35 0%,
        #104654 55%,
        #176878 100%
    );
}

.rt-travel-coverage-section .container {
    position: relative;
    z-index: 2;
}

/* Decorative Background */

.rt-travel-coverage-glow {
    position: absolute;
    z-index: 1;
    border-radius: 50%;
    pointer-events: none;
}

.rt-travel-coverage-glow-one {
    width: 380px;
    height: 380px;
    top: -190px;
    right: -120px;
    background: rgba(212,166,58,0.08);
    filter: blur(35px);
}

.rt-travel-coverage-glow-two {
    width: 320px;
    height: 320px;
    bottom: -170px;
    left: -100px;
    background: rgba(255,255,255,0.06);
    filter: blur(40px);
}

/* Section Heading */

.rt-travel-coverage-heading {
    max-width: 790px;
    margin: 0 auto 55px;
}

.rt-travel-coverage-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-travel-coverage-heading h2 {
    color: #FFFFFF;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 22px;
}

.rt-travel-coverage-heading h2 span {
    color: #E7BE60;
}

.rt-travel-coverage-heading p {
    color: #D5E5E8;
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
}

/* Coverage Cards */

.rt-travel-coverage-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 34px 30px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.17);
    border-radius: 18px;
    backdrop-filter: blur(10px);
    transition: all 0.35s ease;
}

.rt-travel-coverage-card:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(231,190,96,0.6);
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0,0,0,0.13);
}

.rt-travel-coverage-card-featured {
    border-color: rgba(231,190,96,0.45);
}

/* Card Header */

.rt-travel-coverage-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 28px;
}

.rt-travel-coverage-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    color: #E7BE60;
    background: rgba(212,166,58,0.13);
    border: 1px solid rgba(231,190,96,0.2);
    border-radius: 15px;
    font-size: 28px;
}

.rt-travel-coverage-type {
    color: #E7BE60;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-align: right;
}

/* Card Content */

.rt-travel-coverage-card h3 {
    color: #FFFFFF;
    font-size: 23px;
    font-weight: 800;
    margin-bottom: 17px;
}

.rt-travel-coverage-card > p {
    color: #D5E5E8;
    font-size: 13px;
    line-height: 1.9;
    min-height: 75px;
    margin-bottom: 20px;
}

.rt-travel-coverage-divider {
    width: 100%;
    height: 1px;
    background: rgba(255,255,255,0.16);
    margin-bottom: 22px;
}

/* Service Area */

.rt-travel-coverage-area {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-height: 52px;
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.7;
}

.rt-travel-coverage-area i {
    flex-shrink: 0;
    color: #E7BE60;
    font-size: 16px;
}

/* Card Link */

.rt-travel-coverage-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    padding-top: 18px;
    color: #E7BE60;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: gap 0.3s ease;
}

.rt-travel-coverage-link:hover {
    color: #FFFFFF;
    gap: 15px;
}

/* Bottom Enquiry */

.rt-travel-coverage-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 45px;
    padding: 25px 30px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 15px;
}

.rt-travel-coverage-bottom-text {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 600px;
}

.rt-travel-coverage-bottom-text i {
    flex-shrink: 0;
    color: #E7BE60;
    font-size: 20px;
}

.rt-travel-coverage-bottom-text p {
    color: #E4EEF0;
    font-size: 13px;
    line-height: 1.8;
    margin: 0;
}

.rt-travel-coverage-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    padding: 15px 23px;
    color: #091D36;
    background: #D4A63A;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-travel-coverage-btn:hover {
    color: #091D36;
    background: #F0C96A;
    transform: translateY(-3px);
}


/* ==========================================
   VEHICLES PAGE - BOOKING ENQUIRY CTA
========================================== */

.rt-vehicles-cta-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

.rt-vehicles-cta-wrapper {
    position: relative;
    overflow: hidden;
    padding: 75px 65px;
    background:
        radial-gradient(
            circle at 5% 10%,
            rgba(18,109,99,0.07),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #F2F8F6 0%,
            #EAF4F0 100%
        );
    border: 1px solid #DFECE6;
    border-radius: 25px;
}

.rt-vehicles-cta-wrapper > *:not(.rt-vehicles-cta-circle) {
    position: relative;
    z-index: 2;
}

/* Decorative Circles */

.rt-vehicles-cta-circle {
    position: absolute;
    z-index: 1;
    border-radius: 50%;
    pointer-events: none;
}

.rt-vehicles-cta-circle-one {
    width: 280px;
    height: 280px;
    top: -160px;
    right: -100px;
    border: 55px solid rgba(18,109,99,0.055);
}

.rt-vehicles-cta-circle-two {
    width: 230px;
    height: 230px;
    bottom: -130px;
    left: -90px;
    border: 45px solid rgba(212,166,58,0.07);
}

/* Heading */

.rt-vehicles-cta-heading {
    max-width: 780px;
    margin: 0 auto 45px;
}

.rt-vehicles-cta-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
    margin-bottom: 20px;
}

.rt-vehicles-cta-heading h2 {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 22px;
}

.rt-vehicles-cta-heading h2 span {
    color: #B48724;
}

.rt-vehicles-cta-heading p {
    color: #64748B;
    font-size: 14px;
    line-height: 1.9;
    margin: 0;
}

/* Booking Steps */

.rt-vehicles-cta-steps {
    max-width: 980px;
    margin: 0 auto;
}

.rt-vehicles-cta-step {
    display: flex;
    align-items: center;
    gap: 15px;
    height: 100%;
    min-height: 105px;
    padding: 22px;
    background: #FFFFFF;
    border: 1px solid #DFEAE5;
    border-radius: 14px;
    box-shadow: 0 8px 25px rgba(9,29,54,0.035);
    transition: all 0.3s ease;
}

.rt-vehicles-cta-step:hover {
    transform: translateY(-4px);
    border-color: #D4A63A;
    box-shadow: 0 12px 28px rgba(9,29,54,0.09);
}

.rt-vehicles-cta-step-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 53px;
    height: 53px;
    color: #126D63;
    background: #E5F2EC;
    border-radius: 12px;
    font-size: 24px;
}

.rt-vehicles-cta-step-number {
    display: block;
    color: #B48724;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.rt-vehicles-cta-step h3 {
    color: #102B4E;
    font-size: 14px;
    font-weight: 800;
    margin: 0;
    line-height: 1.5;
}

/* Action Buttons */

.rt-vehicles-cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 42px;
}

.rt-vehicles-cta-primary,
.rt-vehicles-cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 52px;
    padding: 15px 24px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-vehicles-cta-primary {
    color: #091D36;
    background: #D4A63A;
}

.rt-vehicles-cta-primary:hover {
    color: #091D36;
    background: #F0C96A;
    transform: translateY(-3px);
}

.rt-vehicles-cta-secondary {
    color: #102B4E;
    background: #FFFFFF;
    border: 1px solid #CADDD5;
}

.rt-vehicles-cta-secondary:hover {
    color: #126D63;
    border-color: #126D63;
    transform: translateY(-3px);
}

/* Bottom Note */

.rt-vehicles-cta-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 27px;
    color: #64748B;
    font-size: 12px;
    line-height: 1.7;
    text-align: center;
}

.rt-vehicles-cta-note i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 17px;
}



/* ==========================================
   SERVICES PAGE - INTRODUCTION
========================================== */

.rt-services-intro-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Heading */

.rt-services-intro-heading {
    max-width: 800px;
    margin: 0 auto 55px;
}

.rt-services-intro-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-services-intro-heading h2 {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 48px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-services-intro-heading h2 span {
    color: #B48724;
}

.rt-services-intro-heading p {
    color: #64748B;
    font-size: 15px;
    line-height: 1.95;
    margin: 0;
}

/* Service Cards */

.rt-services-intro-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
    padding: 32px 29px;
    background: #F7FAF9;
    border: 1px solid #E1EBE7;
    border-radius: 17px;
    text-decoration: none;
    transition: all 0.35s ease;
}

.rt-services-intro-card:hover {
    background: #FFFFFF;
    border-color: #D4A63A;
    box-shadow: 0 18px 40px rgba(9,29,54,0.10);
    transform: translateY(-6px);
}

.rt-services-intro-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
    margin-bottom: 25px;
    color: #126D63;
    background: #E6F2EC;
    border-radius: 15px;
    font-size: 28px;
    transition: all 0.3s ease;
}

.rt-services-intro-card:hover
.rt-services-intro-icon {
    color: #FFFFFF;
    background: #126D63;
}

.rt-services-intro-card h3 {
    color: #102B4E;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 15px;
}

.rt-services-intro-card p {
    color: #64748B;
    font-size: 13px;
    line-height: 1.9;
    margin-bottom: 25px;
}

/* Card Link */

.rt-services-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    color: #B48724;
    font-size: 12px;
    font-weight: 800;
    transition: gap 0.3s ease;
}

.rt-services-intro-card:hover
.rt-services-intro-link {
    gap: 15px;
}

/* Information Note */

.rt-services-intro-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 920px;
    margin: 45px auto 0;
    padding: 19px 24px;
    background: #F2F8F6;
    border: 1px solid #DFEBE5;
    border-radius: 12px;
}

.rt-services-intro-note i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 20px;
}

.rt-services-intro-note p {
    color: #526274;
    font-size: 13px;
    line-height: 1.8;
    margin: 0;
}

/* Sticky Header Anchor Offset */

#family-tours,
#pilgrimage-tours,
#corporate-travel,
#educational-tours,
#wedding-travel,
#group-outings {
    scroll-margin-top: 110px;
}


/* ==========================================
   SERVICES PAGE - SERVICE DETAIL SECTIONS
========================================== */

.rt-service-detail-section {
    padding: 105px 0;
    background: #F5F9F8;
    overflow: hidden;
}

/* Image Area */

.rt-service-detail-visual {
    position: relative;
    padding: 0 25px 28px 0;
}

.rt-service-detail-image {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 20px;
    box-shadow: 0 22px 50px rgba(9,29,54,0.12);
}

.rt-service-detail-image img {
    display: block;
    width: 100%;
    height: 450px;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.rt-service-detail-image:hover img {
    transform: scale(1.04);
}

/* Decorative Shape */

.rt-service-detail-shape {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;
    width: 68%;
    height: 60%;
    background: #DDECE7;
    border-radius: 22px;
}

/* Image Badge */

.rt-service-detail-badge {
    position: absolute;
    z-index: 3;
    left: -15px;
    bottom: 58px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 15px 20px;
    background: #FFFFFF;
    border: 1px solid #E5EEEB;
    border-radius: 13px;
    box-shadow: 0 12px 35px rgba(9,29,54,0.13);
}

.rt-service-detail-badge-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    background: #E4F1EB;
    color: #126D63;
    border-radius: 11px;
    font-size: 20px;
}

.rt-service-detail-badge strong {
    display: block;
    color: #102B4E;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 4px;
}

.rt-service-detail-badge small {
    display: block;
    color: #64748B;
    font-size: 11px;
}

/* Content */

.rt-service-detail-content {
    padding-left: 18px;
}

.rt-service-detail-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-service-detail-title {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-service-detail-title span {
    display: block;
    color: #B48724;
}

.rt-service-detail-lead {
    color: #344054;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.9;
    margin-bottom: 18px;
}

.rt-service-detail-description {
    color: #64748B;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 17px;
}

/* Feature Grid */

.rt-service-detail-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px 18px;
    margin-top: 27px;
}

.rt-service-detail-feature {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #344054;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.6;
}

.rt-service-detail-feature i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 16px;
}

/* Coverage Information */

.rt-service-detail-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 28px;
    padding: 17px 19px;
    background: #FFFFFF;
    border: 1px solid #DCEBE4;
    border-left: 3px solid #126D63;
    border-radius: 10px;
}

.rt-service-detail-note > i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 18px;
    line-height: 1.5;
}

.rt-service-detail-note p {
    margin: 0;
    color: #526274;
    font-size: 12px;
    line-height: 1.8;
}

/* Action Buttons */

.rt-service-detail-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 35px;
}

.rt-service-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 15px 22px;
    background: #D4A63A;
    color: #091D36;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-service-detail-btn:hover {
    background: #F0C96A;
    color: #091D36;
    transform: translateY(-3px);
}

.rt-service-detail-secondary {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #126D63;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.rt-service-detail-secondary:hover {
    color: #B48724;
}



/* ==========================================
   PILGRIMAGE TOURS - ALTERNATE LAYOUT
========================================== */

.rt-service-detail-alt {
    background: #FFFFFF;
}

/* Content on Left */

.rt-service-detail-content-left {
    padding-left: 0;
    padding-right: 18px;
}

/* Image on Right */

.rt-service-detail-visual-right {
    padding: 0 0 28px 25px;
}

.rt-service-detail-visual-right
.rt-service-detail-shape {
    left: 0;
    right: auto;
}

/* Floating Badge on Right */

.rt-service-detail-badge-right {
    left: auto;
    right: -15px;
}

/* Alternate Coverage Note */

.rt-service-detail-alt
.rt-service-detail-note {
    background: #F5F9F8;
}

/* Desktop Refinements */

@media (min-width: 992px) {

    .rt-service-detail-alt
    .rt-service-detail-content {
        padding-left: 0;
    }

}


.rt-corporate-travel-section {
    background: #F5F9F8;
}

/* Corporate-specific accent */

.rt-corporate-travel-section
.rt-service-detail-badge-icon {
    background: #E6F0F4;
    color: #104654;
}

.rt-corporate-travel-section
.rt-service-detail-shape {
    background: #DFECEA;
}


.rt-educational-tour-section {
    background: #FFFFFF;
}

/* Educational Tour Accent */

.rt-educational-tour-section
.rt-service-detail-badge-icon {
    background: #E8F3EE;
    color: #126D63;
}

.rt-educational-tour-section
.rt-service-detail-shape {
    background: #E2EEE8;
}

/* Subtle Feature Highlight */

.rt-educational-tour-section
.rt-service-detail-feature i {
    color: #126D63;
}



/* ==========================================
   WEDDING TRANSPORTATION SECTION
========================================== */

.rt-wedding-travel-section {
    background: #F5F9F8;
}

/* Wedding-specific accents */

.rt-wedding-travel-section
.rt-service-detail-badge-icon {
    background: #F9EAEF;
    color: #A84D68;
}

.rt-wedding-travel-section
.rt-service-detail-shape {
    background: #E8E9DF;
}

.rt-wedding-travel-section
.rt-service-detail-tag i {
    color: #B48724;
}

/* Wedding Badge Refinement */

.rt-wedding-travel-section
.rt-service-detail-badge {
    border-color: #F0DFE3;
}



/* ==========================================
   GROUP OUTINGS SECTION
========================================== */

.rt-group-outings-section {
    background: #FFFFFF;
}

/* Group Outing Image Accent */

.rt-group-outings-section
.rt-service-detail-shape {
    background: #DDECE7;
}

/* Floating Badge Accent */

.rt-group-outings-section
.rt-service-detail-badge-icon {
    background: #E6F2EC;
    color: #126D63;
}

/* Coverage Note */

.rt-group-outings-section
.rt-service-detail-note {
    background: #F5F9F8;
}



/* ==========================================
   SERVICES PAGE - BOOKING ENQUIRY CTA
========================================== */

.rt-services-cta-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background: linear-gradient(
        135deg,
        #082B35 0%,
        #104654 55%,
        #176878 100%
    );
    isolation: isolate;
}

/* Background Glow */

.rt-services-cta-glow {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.rt-services-cta-glow-one {
    width: 420px;
    height: 420px;
    top: -210px;
    right: -100px;
    background: radial-gradient(
        circle,
        rgba(212,166,58,0.14),
        transparent 70%
    );
}

.rt-services-cta-glow-two {
    width: 400px;
    height: 400px;
    bottom: -220px;
    left: -130px;
    background: radial-gradient(
        circle,
        rgba(255,255,255,0.08),
        transparent 70%
    );
}

/* Content */

.rt-services-cta-content {
    position: relative;
    z-index: 2;
    max-width: 1000px;
    margin: 0 auto;
}

.rt-services-cta-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 22px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.rt-services-cta-content h2 {
    color: #FFFFFF;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 25px;
}

.rt-services-cta-content h2 span {
    color: #E7BE60;
}

.rt-services-cta-description {
    max-width: 740px;
    margin: 0 auto;
    color: #D5E5E8;
    font-size: 15px;
    line-height: 1.95;
}

/* Highlights */

.rt-services-cta-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 820px;
    margin: 45px auto 0;
}

.rt-services-cta-highlight {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 80px;
    padding: 17px 15px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 13px;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}

.rt-services-cta-highlight:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(231,190,96,0.45);
    transform: translateY(-4px);
}

.rt-services-cta-highlight span {
    color: #E7BE60;
    font-size: 25px;
    line-height: 1;
}

.rt-services-cta-highlight strong {
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}

/* CTA Buttons */

.rt-services-cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 43px;
}

.rt-services-cta-primary,
.rt-services-cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 54px;
    padding: 16px 26px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-services-cta-primary {
    color: #091D36;
    background: #D4A63A;
    border: 1px solid #D4A63A;
}

.rt-services-cta-primary:hover {
    color: #091D36;
    background: #F0C96A;
    border-color: #F0C96A;
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(212,166,58,0.2);
}

.rt-services-cta-secondary {
    color: #FFFFFF;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.35);
}

.rt-services-cta-secondary:hover {
    color: #FFFFFF;
    background: rgba(255,255,255,0.15);
    border-color: #FFFFFF;
    transform: translateY(-3px);
}

/* Coverage Note */

.rt-services-cta-coverage {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 11px;
    max-width: 760px;
    margin: 36px auto 0;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,0.15);
}

.rt-services-cta-coverage i {
    flex-shrink: 0;
    color: #E7BE60;
    font-size: 18px;
    line-height: 1.6;
}

.rt-services-cta-coverage p {
    margin: 0;
    color: #D5E5E8;
    font-size: 12px;
    line-height: 1.85;
    text-align: left;
}



/* ==========================================
   CONTACT PAGE - INFORMATION CARDS
========================================== */

.rt-contact-info-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Section Heading */

.rt-contact-info-heading {
    max-width: 800px;
    margin: 0 auto 55px;
}

.rt-contact-info-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 20px;
}

.rt-contact-info-heading h2 {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 23px;
}

.rt-contact-info-heading h2 span {
    color: #B48724;
}

.rt-contact-info-heading p {
    color: #64748B;
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
}

/* Contact Cards */

.rt-contact-info-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
    min-height: 330px;
    padding: 30px 24px;
    background: #F7FAF9;
    border: 1px solid #E1EBE7;
    border-radius: 17px;
    transition: all 0.35s ease;
}

.rt-contact-info-card:hover {
    background: #FFFFFF;
    border-color: #D4A63A;
    box-shadow: 0 18px 40px rgba(9,29,54,0.10);
    transform: translateY(-6px);
}

/* Card Icons */

.rt-contact-info-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 63px;
    height: 63px;
    margin-bottom: 25px;
    color: #126D63;
    background: #E6F2EC;
    border-radius: 15px;
    font-size: 27px;
    transition: all 0.3s ease;
}

.rt-contact-info-card:hover
.rt-contact-info-icon {
    color: #FFFFFF;
    background: #126D63;
}

/* Card Text */

.rt-contact-info-card h3 {
    color: #102B4E;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 15px;
}

.rt-contact-info-card p {
    color: #64748B;
    font-size: 13px;
    line-height: 1.85;
    margin-bottom: 20px;
}

.rt-contact-info-value {
    color: #102B4E;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.6;
    overflow-wrap: anywhere;
    margin-bottom: 18px;
}

/* Card Action Links */

.rt-contact-info-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    color: #B48724;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: gap 0.3s ease;
}

.rt-contact-info-link:hover {
    color: #126D63;
    gap: 15px;
}

/* Bottom Coverage Note */

.rt-contact-info-bottom {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 950px;
    margin: 45px auto 0;
    padding: 20px 25px;
    background: #F2F8F6;
    border: 1px solid #DFEBE5;
    border-radius: 12px;
}

.rt-contact-info-bottom i {
    flex-shrink: 0;
    color: #126D63;
    font-size: 20px;
}

.rt-contact-info-bottom p {
    color: #526274;
    font-size: 13px;
    line-height: 1.85;
    margin: 0;
}

/* Anchor Offset for Sticky Navbar */

#travel-enquiry,
#business-location {
    scroll-margin-top: 110px;
}



/* ==========================================
   CONTACT PAGE - TRAVEL ENQUIRY
========================================== */

.rt-contact-enquiry-section {
    padding: 105px 0;
    background: #F5F9F8;
    overflow: hidden;
}

/* Form Container */

.rt-contact-enquiry-form-wrap {
    height: 100%;
    padding: 42px;
    background: #FFFFFF;
    border: 1px solid #E1EBE7;
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(9,29,54,0.05);
}

.rt-contact-enquiry-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 17px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
}

.rt-contact-enquiry-form-wrap h2 {
    color: #102B4E;
    font-size: clamp(30px, 3vw, 42px);
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 1.2;
    margin-bottom: 20px;
}

.rt-contact-enquiry-form-wrap h2 span {
    color: #B48724;
}

.rt-contact-enquiry-description {
    color: #64748B;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 30px;
}

/* Labels */

.rt-enquiry-label {
    display: block;
    margin-bottom: 9px;
    color: #102B4E;
    font-size: 12px;
    font-weight: 800;
}

/* Form Inputs */

.rt-enquiry-input {
    min-height: 52px;
    padding: 13px 15px;
    color: #102B4E;
    background: #FAFCFB;
    border: 1px solid #DDE8E4;
    border-radius: 9px;
    font-size: 13px;
    transition: all 0.3s ease;
}

.rt-enquiry-input::placeholder {
    color: #98A6B1;
}

.rt-enquiry-input:focus {
    color: #102B4E;
    background: #FFFFFF;
    border-color: #126D63;
    box-shadow: 0 0 0 3px rgba(18,109,99,0.10);
}

.rt-enquiry-textarea {
    min-height: 120px;
    resize: vertical;
}

/* Submit Button */

.rt-enquiry-submit-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    min-height: 55px;
    padding: 15px 20px;
    margin-top: 10px;
    color: #FFFFFF;
    background: #126D63;
    border: none;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.3s ease;
}

.rt-enquiry-submit-btn:hover {
    background: #0C544D;
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(18,109,99,0.18);
}

.rt-enquiry-submit-btn:focus-visible {
    outline: 3px solid #D4A63A;
    outline-offset: 3px;
}

.rt-enquiry-privacy-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 13px 0 0;
    color: #7A8794;
    font-size: 11px;
    line-height: 1.7;
}

.rt-enquiry-privacy-note i {
    flex-shrink: 0;
    margin-top: 2px;
}

/* Right Information Panel */

.rt-contact-enquiry-panel {
    position: relative;
    height: 100%;
    min-height: 650px;
    padding: 43px 35px;
    color: #FFFFFF;
    background: linear-gradient(
        145deg,
        #082B35 0%,
        #104654 55%,
        #176878 100%
    );
    border-radius: 20px;
    overflow: hidden;
}

.rt-contact-enquiry-panel::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    top: -150px;
    right: -130px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(212,166,58,0.16),
        transparent 70%
    );
    pointer-events: none;
}

.rt-contact-enquiry-panel-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    margin-bottom: 28px;
    color: #E7BE60;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 17px;
    font-size: 32px;
}

.rt-contact-enquiry-panel-tag {
    display: block;
    margin-bottom: 18px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
}

.rt-contact-enquiry-panel h3 {
    color: #FFFFFF;
    font-size: clamp(30px, 3vw, 40px);
    font-weight: 800;
    line-height: 1.25;
    margin-bottom: 22px;
}

.rt-contact-enquiry-panel h3 span {
    display: block;
    color: #E7BE60;
}

.rt-contact-enquiry-panel > p {
    color: #D5E5E8;
    font-size: 14px;
    line-height: 1.95;
}

.rt-contact-enquiry-panel-divider {
    height: 1px;
    margin: 30px 0;
    background: rgba(255,255,255,0.17);
}

.rt-contact-enquiry-panel-feature {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 19px;
}

.rt-contact-enquiry-panel-feature i {
    color: #E7BE60;
    font-size: 17px;
}

.rt-contact-enquiry-panel-feature span {
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.7;
}

/* Panel Coverage Note */

.rt-contact-enquiry-panel-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 32px;
    padding: 20px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 12px;
}

.rt-contact-enquiry-panel-note i {
    flex-shrink: 0;
    color: #E7BE60;
    font-size: 18px;
}

.rt-contact-enquiry-panel-note p {
    margin: 0;
    color: #D5E5E8;
    font-size: 12px;
    line-height: 1.8;
}

.rt-contact-enquiry-panel-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    color: #E7BE60;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.rt-contact-enquiry-panel-link:hover {
    color: #FFFFFF;
}



/* ==========================================
   CONTACT PAGE - BUSINESS LOCATION
========================================== */

.rt-contact-location-section {
    padding: 105px 0;
    background: #FFFFFF;
    overflow: hidden;
}

/* Section Heading */

.rt-contact-location-heading {
    max-width: 780px;
    margin: 0 auto 55px;
}

.rt-contact-location-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 20px;
    color: #B48724;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
}

.rt-contact-location-heading h2 {
    color: #102B4E;
    font-size: clamp(32px, 3.5vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 22px;
}

.rt-contact-location-heading h2 span {
    color: #B48724;
}

.rt-contact-location-heading p {
    color: #64748B;
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
}

/* Location Information Card */

.rt-contact-location-card {
    height: 100%;
    padding: 35px 30px;
    background: #F5F9F8;
    border: 1px solid #DFEBE5;
    border-radius: 18px;
}

.rt-contact-location-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
    margin-bottom: 23px;
    color: #126D63;
    background: #E0EEE8;
    border-radius: 15px;
    font-size: 28px;
}

.rt-contact-location-card h3 {
    color: #102B4E;
    font-size: 26px;
    font-weight: 800;
    margin-bottom: 15px;
}

.rt-contact-location-intro {
    color: #64748B;
    font-size: 13px;
    line-height: 1.9;
    margin-bottom: 28px;
}

/* Location Detail Rows */

.rt-contact-location-detail {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 19px 0;
    border-top: 1px solid #DDE9E4;
}

.rt-contact-location-detail-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    color: #126D63;
    background: #E5F1EB;
    border-radius: 10px;
    font-size: 19px;
}

.rt-contact-location-detail h4 {
    color: #102B4E;
    font-size: 14px;
    font-weight: 800;
    margin: 2px 0 8px;
}

.rt-contact-location-detail p {
    color: #64748B;
    font-size: 12px;
    line-height: 1.8;
    margin: 0 0 5px;
}

/* Directions Button */

.rt-contact-location-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    width: 100%;
    min-height: 54px;
    margin-top: 25px;
    padding: 15px 18px;
    color: #091D36;
    background: #D4A63A;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-contact-location-btn:hover {
    color: #091D36;
    background: #F0C96A;
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(212,166,58,0.20);
}

.rt-contact-location-disclaimer {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 14px 0 0;
    color: #7A8794;
    font-size: 11px;
    line-height: 1.7;
}

.rt-contact-location-disclaimer i {
    flex-shrink: 0;
}

/* Google Map */

.rt-contact-map-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 560px;
    overflow: hidden;
    background: #E7F0EB;
    border: 1px solid #DFEBE5;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(9,29,54,0.07);
}

.rt-contact-map-wrap iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 560px;
    border: 0;
}



/* ==========================================
   CONTACT PAGE - FINAL BOOKING CTA
========================================== */

.rt-contact-final-cta-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 105px 0;
    background: linear-gradient(
        135deg,
        #082B35 0%,
        #104654 55%,
        #176878 100%
    );
}

/* Decorative Glows */

.rt-contact-final-cta-glow {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.rt-contact-final-cta-glow-one {
    width: 440px;
    height: 440px;
    top: -220px;
    right: -110px;
    background: radial-gradient(
        circle,
        rgba(212,166,58,0.16),
        transparent 70%
    );
}

.rt-contact-final-cta-glow-two {
    width: 420px;
    height: 420px;
    bottom: -220px;
    left: -140px;
    background: radial-gradient(
        circle,
        rgba(255,255,255,0.09),
        transparent 70%
    );
}

/* Content */

.rt-contact-final-cta-content {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto;
}

.rt-contact-final-cta-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 22px;
    color: #E7BE60;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;
}

.rt-contact-final-cta-content h2 {
    color: #FFFFFF;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 25px;
}

.rt-contact-final-cta-content h2 span {
    color: #E7BE60;
}

.rt-contact-final-cta-description {
    max-width: 740px;
    margin: 0 auto;
    color: #D5E5E8;
    font-size: 15px;
    line-height: 1.95;
}

/* Highlight Cards */

.rt-contact-final-cta-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 800px;
    margin: 43px auto 0;
}

.rt-contact-final-cta-highlight {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 76px;
    padding: 17px 15px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 13px;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}

.rt-contact-final-cta-highlight:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(231,190,96,0.5);
    transform: translateY(-4px);
}

.rt-contact-final-cta-highlight i {
    color: #E7BE60;
    font-size: 24px;
}

.rt-contact-final-cta-highlight span {
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}

/* Buttons */

.rt-contact-final-cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 43px;
}

.rt-contact-final-cta-primary,
.rt-contact-final-cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 54px;
    padding: 16px 26px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
}

.rt-contact-final-cta-primary {
    color: #091D36;
    background: #D4A63A;
    border: 1px solid #D4A63A;
}

.rt-contact-final-cta-primary:hover {
    color: #091D36;
    background: #F0C96A;
    border-color: #F0C96A;
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(212,166,58,0.20);
}

.rt-contact-final-cta-secondary {
    color: #FFFFFF;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.35);
}

.rt-contact-final-cta-secondary:hover {
    color: #FFFFFF;
    background: rgba(255,255,255,0.15);
    border-color: #FFFFFF;
    transform: translateY(-3px);
}

.rt-contact-final-cta-primary:focus-visible,
.rt-contact-final-cta-secondary:focus-visible {
    outline: 3px solid #F0C96A;
    outline-offset: 4px;
}

/* Bottom Location */

.rt-contact-final-cta-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 34px;
    color: #D5E5E8;
    font-size: 12px;
}

.rt-contact-final-cta-bottom i {
    color: #E7BE60;
    font-size: 16px;
}


html {
    scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

img {
    -webkit-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
}
