﻿:root {
        --ink: #07101d;
        --ink-2: #0c1726;
        --panel: #101d2e;
        --gold: #c9a66b;
        --gold-2: #ead6ae;
        --cream: #f7f3ea;
        --muted: #a9b0bb;
        --line: rgba(255,255,255,.13);
        --radius: 24px;
        --shadow: 0 24px 70px rgba(0,0,0,.35);
        --font-display: Georgia,"Times New Roman",serif;
    }

    * {
        box-sizing: border-box
    }

    html {
        scroll-behavior: smooth
    }

    body {
        margin: 0;
        background: #05090f;
        linear-gradient(145deg,#05090f 0%,#07101d 42%,#0a1625 100%);
        color: #fff;
        font-family: "IBM Plex Sans", sans-serif;
        overflow-x: hidden
    }

    img {
        max-width: 100%;
        display: block
    }

    a {
        text-decoration: none;
        color: inherit
    }

    .container-xl {
        max-width: 1320px
    }

    .eyebrow {
        font-size: .74rem;
        letter-spacing: .24em;
        text-transform: uppercase;
        color: var(--gold-2);
        font-weight: 700
    }

.display-title {
    font-family: var(--font-display);
    font-size: clamp(2.5rem,5vw,5.5rem);
    line-height: .97;
    letter-spacing: -.045em;
    color: #FAFCFF;
}

.section-title {
    font-family: var(--font-display);
    font-size: clamp(2.1rem,4vw,4.6rem);
    line-height: 1;
    letter-spacing: -.035em;
    color: #FAFCFF;
}

    .muted {
        color: var(--muted)
    }

    .section-pad {
        padding: 118px 0
    }

    .glass {
        background: rgba(13,24,39,.66);
        backdrop-filter: blur(18px);
        border: 1px solid var(--line)
    }

    .btn-luxury {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: .7rem;
        padding: 15px 22px;
        border-radius: 999px;
        background: linear-gradient(135deg,var(--gold-2),var(--gold));
        color: #101010;
        font-weight: 800;
        border: 0;
        transition: .3s;
        box-shadow: 0 12px 28px rgba(201,166,107,.22)
    }

        .btn-luxury:hover {
            transform: translateY(-3px);
            color: #000;
            box-shadow: 0 18px 36px rgba(201,166,107,.32)
        }

.btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    padding: 14px 21px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.24);
    color: #fff;
    transition: .3s;
    font-weight: 700;
}

        .btn-ghost:hover {
            background: #fff;
            color: #0b1420
        }

    .topbar {
        height: 37px;
        border-bottom: 1px solid rgba(255,255,255,.08);
        font-size: .76rem;
        letter-spacing: .08em;
        color: #cbd0d8;
        background: rgba(0,0,0,.2)
    }

    .site-header {
        position: fixed;
        left: 0;
        right: 0;
        top: 37px;
        z-index: 1000;
        transition: .35s
    }

        .site-header.scrolled {
            top: 0;
            background: rgba(5,10,17,.9);
            backdrop-filter: blur(18px);
            border-bottom: 1px solid var(--line)
        }

    .nav-wrap {
        height: 110px;
        display: flex;
        align-items: center;
        justify-content: space-between
    }

    .brand {
        display: flex;
        align-items: center;
        gap: 13px
    }

        .brand img {
            width: 110px;
            height: 110px;
            object-fit: contain;
            filter: drop-shadow(0 10px 22px rgba(0,0,0,.4))
        }

    .brand-text strong {
        font-family: var(--font-display);
        font-size: 1.8rem
    }

    .brand-text span {
        display: block;
        font-size: .79rem;
        letter-spacing: .2em;
        color: var(--gold-2);
        text-transform: uppercase
    }

    .desktop-nav {
        display: flex;
        align-items: center;
        gap: 15px
    }

        .desktop-nav .nav-dropdown {
            position: relative;
            padding-block: 22px
        }

        .desktop-nav a {
            font-size: 1rem;
            color: #e9edf2;
            position: relative;
            font-weight: 600;
        }

            .desktop-nav a i {
                font-size: .62rem;
                margin-left: 5px;
                transition: .25s
            }

            .desktop-nav a:hover,
            .dark-mode body .desktop-nav a:hover {
                color: var(--gold-2) !important
            }

            .desktop-nav a:after {
                content: "";
                position: absolute;
                left: 0;
                bottom: -10px;
                width: 0;
                height: 1px;
                background: var(--gold);
                transition: .3s
            }

            .desktop-nav a:hover:after {
                width: 100%
            }

        .desktop-nav .nav-dropdown:hover > a i,
        .desktop-nav .nav-dropdown:focus-within > a i {
            transform: rotate(180deg)
        }

        .desktop-nav .nav-submenu {
            position: absolute;
            top: 100%;
            left: 50%;
            min-width: 220px;
            display: grid;
            gap: 2px;
            padding: 12px;
            background: rgba(5,10,17,.96);
            border: 1px solid rgba(231,210,174,.18);
            box-shadow: 0 22px 48px rgba(0,0,0,.32);
            transform: translate(-50%, 12px);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s, transform .25s, visibility .25s
        }

        .desktop-nav .nav-dropdown:hover .nav-submenu,
        .desktop-nav .nav-dropdown:focus-within .nav-submenu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%, 0)
        }

        .desktop-nav .nav-submenu a {
            display: block;
            padding: 10px 12px;
            color: #e9edf2;
            font-size: .92rem;
            white-space: nowrap
        }

            .desktop-nav .nav-submenu a:after {
                display: none
            }

            .desktop-nav .nav-submenu a:hover {
                background: rgba(201,166,107,.12);
                color: var(--gold-2) !important
            }

    .header-actions {
        display: flex;
        gap: 10px;
        align-items: center
    }

    .menu-btn {
        display: none;
        width: 48px;
        height: 48px;
        border-radius: 50%;
        border: 1px solid var(--line);
        background: transparent;
        color: #fff
    }

    .hero {
        min-height: 100vh;
        position: relative;
        display: flex;
        align-items: flex-end;
        padding: 185px 0 70px;
        background: linear-gradient(90deg,rgba(3,7,13,.94) 0%,rgba(3,7,13,.72) 38%,rgba(3,7,13,.18) 76%),url('https://images.unsplash.com/photo-1539650116574-75c0c6d73f6e?auto=format&fit=crop&w=2400&q=88') center/cover no-repeat
    }

        .hero:after {
            content: "";
            position: absolute;
            inset: auto 0 0;
            height: 240px;
            background: linear-gradient(transparent,#07101d)
        }

    .hero-content {
        position: relative;
        z-index: 2;
        max-width: 760px
    }

    .hero-copy {
        font-size: 1.08rem;
        line-height: 1.85;
        color: #d0d5dc;
        max-width: 640px
    }

    .hero-actions {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 30px
    }

    .hero-aside {
        position: absolute;
        right: 5vw;
        bottom: 95px;
        z-index: 3;
        width: min(410px,31vw);
        padding: 22px;
        border-radius: 22px
    }

        .hero-aside .stat {
            display: flex;
            justify-content: space-between;
            padding: 14px 0;
            border-bottom: 1px solid var(--line)
        }

            .hero-aside .stat:last-child {
                border-bottom: 0
            }

        .hero-aside b {
            font-family: var(--font-display);
            font-size: 1.45rem;
            color: var(--gold-2)
        }

    .booking-bar {
        position: relative;
        z-index: 5;
        margin-top: -30px
    }

    .booking-card {
        border-radius: 24px;
        padding: 15px;
        display: grid;
        grid-template-columns: 1.2fr 1fr 1fr auto;
        gap: 12px;
        box-shadow: var(--shadow)
    }

    .field {
        padding: 12px 16px;
        border-right: 1px solid var(--line)
    }

        .field:last-of-type {
            border-right: 0
        }

        .field label {
            display: block;
            color: #8f9aaa;
            text-transform: uppercase;
            letter-spacing: .13em;
            font-size: .65rem;
            margin-bottom: 5px
        }

        .field strong {
            font-size: .95rem
        }

    .booking-card button {
        min-width: 190px
    }

    .trust-row {
        padding: 42px 0 0;
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 16px
    }

    .trust-item {
        padding: 22px;
        border-top: 1px solid var(--line)
    }

        .trust-item i {
            color: var(--gold);
            font-size: 1.25rem;
            margin-bottom: 12px
        }

        .trust-item h3 {
            font-family: var(--font-display);
            font-size: 1.2rem
        }

        .trust-item p {
            font-size: .85rem;
            color: var(--muted);
            margin: 0
        }

    .intro-grid {
        display: grid;
        grid-template-columns: 1.05fr .95fr;
        gap: 75px;
        align-items: center
    }

    .image-stack {
        position: relative;
        min-height: 610px
    }

    .image-main {
        width: 78%;
        height: 570px;
        object-fit: cover;
        border-radius: 150px 28px 28px 28px;
        box-shadow: var(--shadow)
    }

    .image-float {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 44%;
        height: 270px;
        object-fit: cover;
        border-radius: 28px;
        border: 8px solid #091321;
        box-shadow: var(--shadow)
    }

    .seal {
        position: absolute;
        right: 6%;
        top: 5%;
        width: 124px;
        height: 124px;
        border-radius: 50%;
        display: grid;
        place-items: center;
        text-align: center;
        background: linear-gradient(145deg,#dfc397,#a97d3f);
        color: #111;
        font-family: var(--font-display);
        font-weight: bold;
        transform: rotate(8deg);
        box-shadow: 0 18px 35px rgba(0,0,0,.35)
    }

    .copy p {
        font-size: 1.02rem;
        line-height: 1.9;
        color: #aeb6c1
    }

    .signature {
        font-family: var(--font-display);
        font-style: italic;
        color: var(--gold-2);
        font-size: 1.4rem
    }

    .cards-3 {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 22px
    }

    .journey-card {
        position: relative;
        min-height: 520px;
        border-radius: 28px;
        overflow: hidden;
        isolation: isolate;
        background: #07101d;
        /* Prevent the light 1px compositing halo around rounded corners. */
        clip-path: inset(0 round 28px);
        -webkit-mask-image: -webkit-radial-gradient(white, black);
        transform: translateZ(0)
    }

        .journey-card img {
            position: absolute;
            /* Extend the image beneath the clipped edge to remove sub-pixel gaps. */
            inset: -2px;
            width: calc(100% + 4px);
            height: calc(100% + 4px);
            object-fit: cover;
            border-radius: inherit;
            transition: transform .7s ease;
            backface-visibility: hidden;
            transform: translateZ(0) scale(1.002)
        }

        .journey-card:after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(transparent 20%,rgba(3,7,12,.9) 86%);
            z-index: -1
        }

        .journey-card img {
            z-index: -2
        }

        .journey-card:hover img {
            transform: translateZ(0) scale(1.07)
        }

    .journey-content {
        position: absolute;
        left: 28px;
        right: 28px;
        bottom: 26px
    }

        .journey-content h3 {
            font-family: var(--font-display);
            font-size: 1.5rem;
            color: #FAFCFF;
        }

    .journey-meta {
        display: flex;
        gap: 14px;
        color: #d7dce3;
        font-size: .8rem
    }

    .journey-link {
        margin-top: 16px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        color: var(--gold-2);
        font-weight: 700
    }

    .feature-band {
        border-block: 1px solid var(--line);
        background: radial-gradient(circle at 75% 30%,rgba(201,166,107,.12),transparent 32%)
    }

    .feature-grid {
        display: grid;
        grid-template-columns: .9fr 1.1fr;
        gap: 70px;
        align-items: center
    }

    .feature-photo {
        border-radius: 28px;
        overflow: hidden;
        min-height: 640px;
        position: relative
    }

        .feature-photo img {
            width: 100%;
            height: 640px;
            object-fit: cover
        }

    .feature-badge {
        position: absolute;
        left: 24px;
        bottom: 24px;
        padding: 18px 20px;
        border-radius: 18px
    }

    .feature-list {
        display: grid;
        gap: 15px;
        margin-top: 28px
    }

    .feature-row {
        display: grid;
        grid-template-columns: 50px 1fr;
        gap: 16px;
        padding: 17px 0;
        border-bottom: 1px solid var(--line)
    }

        .feature-row i {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            display: grid;
            place-items: center;
            background: rgba(201,166,107,.12);
            color: var(--gold)
        }

        .feature-row h4 {
            font-family: var(--font-display);
            font-size: 1.25rem;
            margin-bottom: 4px;
            color: #FAFCFF;
        }

        .feature-row p {
            color: var(--muted);
            margin: 0;
            font-size: .9rem
        }

    .mosaic {
        display: grid;
        grid-template-columns: 1.1fr .9fr .9fr;
        grid-template-rows: 280px 280px;
        gap: 18px
    }

    .mosaic-card {
        position: relative;
        border-radius: 24px;
        overflow: hidden
    }

        .mosaic-card:first-child {
            grid-row: 1/3
        }

        .mosaic-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: .6s
        }

        .mosaic-card:hover img {
            transform: scale(1.06)
        }

        .mosaic-card:after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(transparent,rgba(0,0,0,.72))
        }

    .mosaic-label {
        position: absolute;
        z-index: 2;
        left: 22px;
        bottom: 20px
    }

        .mosaic-label h3 {
            font-family: var(--font-display);
            font-size: 1.55rem;
            margin: 0;
            color: #FAFCFF;
        }

    .testimonial {
        max-width: 980px;
        margin: auto;
        text-align: center
    }

    .quote-mark {
        font-family: var(--font-display);
        font-size: 7rem;
        line-height: .6;
        color: var(--gold)
    }

    .quote {
        font-family: var(--font-display);
        font-size: clamp(1.7rem,3vw,3.2rem);
        line-height: 1.25
    }

    .avatar {
        width: 60px;
        height: 60px;
        border-radius: 50%;
        object-fit: cover;
        margin: 24px auto 10px
    }

    .stars {
        color: var(--gold);
        letter-spacing: .2em
    }

    .journal-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 22px
    }

    .journal-card {
        border-radius: 24px;
        overflow: hidden;
        border: 1px solid var(--line);
        background: rgba(255,255,255,.025);
        transition: .3s
    }

        .journal-card:hover {
            transform: translateY(-8px);
            border-color: rgba(201,166,107,.45)
        }

        .journal-card img {
            height: 250px;
            width: 100%;
            object-fit: cover
        }

    .journal-copy {
        padding: 24px
    }

        .journal-copy h3 {
            font-family: var(--font-display);
            font-size: 1.55rem;
            color: #FAFCFF;
        }

        .journal-copy p {
            color: var(--muted);
            font-size: .9rem
        }

    .cta {
        padding: 92px 0;
        background: linear-gradient(rgba(2,6,11,.66),rgba(2,6,11,.88)),url('https://images.unsplash.com/photo-1553913861-c0fddf2619ee?auto=format&fit=crop&w=2200&q=85') center/cover;
        border-radius: 34px
    }

    .cta-inner {
        max-width: 820px;
        margin: auto;
        text-align: center;
        padding: 0 25px
    }

    .cruise-section {
     /*   background: #07101d;*/
        color: #fff;
        padding: 112px 0;
        border-block: 1px solid var(--line)
    }

    .cruise-section .container {
        max-width: 1320px
    }

    .cruise-section .section-head {
        margin-bottom: 42px
    }

        .cruise-section .section-head h2 {
            font-family: var(--font-display);
            font-size: clamp(2.1rem,4vw,4.6rem);
            line-height: 1;
            letter-spacing: -.035em;
            margin: 0 0 14px;
            color: #FAFCFF;
        }

    .cruise-section .section-head p {
        color: #cbd6df;
        margin: auto;
        max-width: 640px
    }

    .cruise-feature {
        display: grid;
        grid-template-columns: 1.15fr .85fr;
        background: #fff;
        color: #07101d;
        border-radius: 26px;
        overflow: hidden;
        box-shadow: var(--shadow)
    }

    .cruise-feature > img {
        height: 100%;
        min-height: 520px;
        width: 100%;
        object-fit: cover
    }

    .cruise-copy {
        padding: 52px
    }

    .cruise-copy > span {
        color: var(--gold) !important;
        font-weight: 800;
        text-transform: uppercase;
        font-size: .74rem;
        letter-spacing: .16em
    }

    .cruise-copy h3 {
        font-family: var(--font-display);
        font-size: 2.15rem;
        margin: 12px 0;
        color: #07101d !important
    }

    .cruise-copy p,
    .cruise-copy > div span {
        color: #667085 !important
    }

    .cruise-copy ul {
        list-style: none;
        padding: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 13px;
        margin: 25px 0
    }

    .cruise-copy li i {
        color: var(--gold);
        margin-right: 8px
    }

    .cruise-copy > div {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 18px
    }

    .cruise-copy > div b {
        display: block;
        color: #07101d !important;
        font-size: 1.75rem
    }

    .cruise-section .btn-coral {
        background: linear-gradient(135deg,var(--gold-2),var(--gold));
        border: 0;
        border-radius: 999px;
        color: #101010;
        font-weight: 800;
        padding: 13px 20px
    }

    .cruise-section .btn-coral:hover {
        color: #000;
        transform: translateY(-2px);
        box-shadow: 0 14px 28px rgba(201,166,107,.24)
    }

    .cruise-types {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 12px;
        margin-top: 18px
    }

    .cruise-types a {
        border: 1px solid rgba(255,255,255,.18);
        border-radius: 15px;
        padding: 18px 20px;
        display: flex;
        justify-content: space-between;
        transition: .25s
    }

    .cruise-types a:hover {
        background: rgba(255,255,255,.08);
        color: var(--gold-2)
    }

    .cruise-types span {
        color: #aab9c5;
        font-size: .75rem
    }

    footer.luxury-footer {
        padding: 76px 0 28px;
        background: #04080d;
        margin-top: 110px;
        border-top: 1px solid var(--line)
    }

    .footer-grid {
        display: grid;
        grid-template-columns: 1.4fr repeat(3,1fr);
        gap: 42px
    }

    .footer-title {
        font-family: var(--font-display);
        font-size: 1.15rem;
        margin-bottom: 18px
    }

    .footer-links {
        display: grid;
        gap: 10px;
        color: #9fa8b3;
        font-size: .9rem
    }

    .socials {
        display: flex;
        gap: 10px;
        margin-top: 20px
    }

        .socials a {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            border: 1px solid var(--line);
            display: grid;
            place-items: center
        }

    footer.luxury-footer .footer-bottom {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        background: transparent;
        margin-top: 58px;
        padding-top: 24px;
        border-top: 1px solid var(--line);
        color: #7f8995;
        font-size: .8rem
    }

    .dark-mode footer.luxury-footer,
    .dark-mode body footer.luxury-footer {
        background: #04080d;
    }

    .dark-mode footer.luxury-footer .footer-bottom,
    .dark-mode body footer.luxury-footer .footer-bottom {
        background: transparent;
        color: #7f8995;
    }

    .mobile-panel {
        position: fixed;
        inset: 0 0 0 auto;
        width: min(390px,100%);
        background: #07101d;
        z-index: 1200;
        padding: 28px;
        transform: translateX(100%);
        transition: .35s
    }

        .mobile-panel.open {
            transform: translateX(0)
        }

    body.menu-open {
        overflow: hidden
    }

    .mobile-panel nav {
        display: grid;
        gap: 22px;
        margin-top: 55px;
        font-family: var(--font-display);
        font-size: 1.8rem
    }

    .close-menu {
        position: absolute;
        right: 24px;
        top: 22px;
        width: 45px;
        height: 45px;
        border-radius: 50%;
        border: 1px solid var(--line);
        background: none;
        color: #fff
    }

    .back-top {
        position: fixed;
        right: 22px;
        bottom: 22px;
        width: 48px;
        height: 48px;
        border: 0;
        border-radius: 50%;
        background: var(--gold);
        color: #111;
        opacity: 0;
        pointer-events: none;
        transition: .3s;
        z-index: 900
    }

        .back-top.show {
            opacity: 1;
            pointer-events: auto
        }

    .whatsapp-float {
        position: fixed;
        left: 20px;
        bottom: 25px;
        min-width: 264px;
        height: 45px;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 14px;
        padding: 0 26px;
        background: #25d366;
        color: #fff !important;
        font-size: 1.35rem;
        font-weight: 700;
        line-height: 1;
        letter-spacing: 0;
        box-shadow: 0 18px 44px rgba(0,0,0,.18);
        z-index: 900;
        transition: .25s
    }

        .whatsapp-float i {
            font-size: 1.75rem;
            line-height: 1;
        }

        .whatsapp-float span {
            color: #fff !important;
            white-space: nowrap;
        }

        .whatsapp-float:hover {
            background: #25d366;
            color: #fff !important;
            transform: translateY(-2px);
            box-shadow: 0 20px 48px rgba(0,0,0,.22);
        }

    @media (max-width: 480px) {
        .whatsapp-float {
            min-width: 0;
            height: 50px;
            padding: 0 18px;
            gap: 10px;
            font-size: 1.05rem;
        }

            .whatsapp-float i {
                font-size: 1.5rem;
            }
    }

    .reveal {
        opacity: 0;
        transform: translateY(28px);
        transition: .75s
    }

        .reveal.is-revealed {
            opacity: 1;
            transform: none
        }

    /* Keep the first content section visible below the fixed header when the hero is removed. */
    main > #journeys:first-child {
        padding-top: 165px !important;
    }
    /* Refined ultra-luxury hero */
    .header-actions .btn-ghost {
        display: none !important
    }

    .site-header {
        border-bottom: 1px solid rgba(255,255,255,.08)
    }

    .menu-btn {
        position: relative;
        place-items: center;
        gap: 6px
    }

        .menu-btn span {
            display: block;
            width: 18px;
            height: 1px;
            background: #fff;
            transition: .3s
        }

        .menu-btn:hover span:first-child {
            transform: translateX(3px)
        }

        .menu-btn:hover span:last-child {
            transform: translateX(-3px)
        }

    .hero {
        min-height: 100svh;
        display: block;
        padding: 0;
        background: none;
        overflow: hidden;
        isolation: isolate
    }

    .hero-media {
        position: absolute;
        inset: 0;
        background: none;
    }

    .hero-vignette {
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg,rgba(2,7,14,.94) 0%,rgba(3,9,17,.71) 38%,rgba(3,9,17,.22) 70%,rgba(3,9,17,.56) 100%),linear-gradient(180deg,rgba(1,5,10,.34),transparent 44%,rgba(2,7,13,.88) 100%)
    }

    .hero-frame {
        position: absolute;
        inset: 142px 34px 34px;
        border: 1px solid rgba(231,210,174,.23);
        z-index: 1;
        pointer-events: none
    }

    .hero:after {
        height: 210px;
        background: linear-gradient(transparent,#07101d);
        z-index: 1
    }

    .hero-layout {
        position: relative;
        z-index: 2;
        min-height: 100svh;
        display: flex;
        align-items: center;
        padding-top: 150px;
        padding-bottom: 112px
    }

    .hero-content {
        max-width: 850px;
        margin-left: 4vw
    }

    .hero-kicker {
        display: flex;
        align-items: center;
        gap: 15px;
        color: var(--gold-2);
        font-size: .69rem;
        letter-spacing: .24em;
        text-transform: uppercase
    }

        .hero-kicker span {
            width: 58px;
            height: 1px;
            background: var(--gold)
        }

    .hero .display-title {
        font-size: clamp(4.4rem,8vw,8.8rem);
        line-height: .82;
        font-weight: 400;
        letter-spacing: -.06em;
        text-shadow: 0 18px 50px rgba(0,0,0,.42)
    }

        .hero .display-title em {
            font-weight: 400;
            color: #f4ead8
        }

    .hero-copy {
        max-width: 590px;
        font-size: 1.08rem;
        line-height: 1.9;
        color: #d8dce2;
        margin-left: 7px
    }

    .hero-text-link {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        padding: 15px 6px;
        color: #fff;
        border-bottom: 1px solid rgba(255,255,255,.45);
        font-weight: 700
    }

        .hero-text-link span {
            color: var(--gold);
            font-size: 1.25rem
        }

        .hero-text-link:hover {
            color: var(--gold-2);
            border-color: var(--gold)
        }

    .hero-note {
        position: absolute;
        right: 6vw;
        bottom: 145px;
        display: flex;
        align-items: flex-start;
        gap: 16px;
        padding: 22px 25px;
        border-left: 1px solid var(--gold);
        background: rgba(4,10,18,.25);
        backdrop-filter: blur(7px)
    }

    .hero-note-number {
        font-family: var(--font-display);
        font-size: 2.6rem;
        color: var(--gold-2);
        line-height: 1
    }

    .hero-note small {
        color: var(--gold);
        letter-spacing: .18em;
        font-size: .62rem
    }

    .hero-note p {
        margin: 7px 0 0;
        line-height: 1.55;
        color: #e9edf2;
        font-family: var(--font-display);
        font-size: 1.08rem
    }

    .hero-bottom {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 48px;
        z-index: 3
    }

        .hero-bottom .container-xl {
            display: flex;
            justify-content: space-between;
            align-items: end
        }

    .hero-scroll {
        display: flex;
        align-items: center;
        gap: 12px;
        text-transform: uppercase;
        letter-spacing: .17em;
        font-size: .61rem;
        color: #c7cdd5
    }

        .hero-scroll i {
            display: block;
            width: 48px;
            height: 1px;
            background: rgba(255,255,255,.48)
        }

    .hero-locations {
        display: flex;
        gap: 13px;
        color: #d3d8df;
        font-size: .72rem;
        letter-spacing: .12em;
        text-transform: uppercase
    }

        .hero-locations b {
            color: var(--gold)
        }

    @keyframes heroDrift {
        from {
            transform: scale(1.08)
        }

        to {
            transform: scale(1.025)
        }
    }

    .mobile-panel {
        width: min(440px,100%);
        padding: 0 28px 28px;
        background: linear-gradient(155deg,#07101d,#0d1b2d);
        box-shadow: -30px 0 90px rgba(0,0,0,.5);
        display: flex;
        flex-direction: column
    }

    .mobile-panel-head {
        height: 92px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid var(--line)
    }

    .mobile-brand {
        display: flex;
        align-items: center;
        gap: 12px
    }

        .mobile-brand img {
            width: 58px;
            height: 58px;
            object-fit: contain
        }

        .mobile-brand strong {
            display: block;
            font-family: var(--font-display);
            font-size: 1.05rem
        }

        .mobile-brand small {
            display: block;
            color: var(--gold-2);
            font-size: .55rem;
            letter-spacing: .16em;
            text-transform: uppercase;
            margin-top: 3px
        }

    .mobile-panel nav {
        margin-top: 38px;
        gap: 0
    }

        .mobile-panel nav a {
            display: flex;
            align-items: center;
            gap: 18px;
            padding: 16px 2px;
            border-bottom: 1px solid rgba(255,255,255,.08);
            font-size: 1.6rem
        }

            .mobile-panel nav a span {
                font-family: Arial,sans-serif;
                color: var(--gold);
                font-size: .57rem;
                letter-spacing: .12em
            }

    .mobile-panel-foot {
        margin-top: auto;
        padding-top: 26px
    }

        .mobile-panel-foot .btn-luxury {
            width: 100%
        }

        .mobile-panel-foot p {
            text-align: center;
            color: #7f8996;
            font-size: .66rem;
            letter-spacing: .1em;
            text-transform: uppercase;
            margin: 18px 0 0
        }

    .close-menu {
        position: static;
        flex: 0 0 auto
    }

    @media(max-width:1100px) {
        .desktop-nav, .header-actions .btn-luxury {
            display: none
        }

        .hero-note {
            display: none
        }

        .menu-btn {
            display: block
        }

        .hero-aside {
            display: none
        }

        .booking-card {
            grid-template-columns: 1fr 1fr
        }

            .booking-card button {
                grid-column: 1/-1
            }

        .intro-grid, .feature-grid {
            grid-template-columns: 1fr
        }

        .cards-3, .journal-grid {
            grid-template-columns: repeat(2,1fr)
        }

        .mosaic {
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 360px 260px
        }

        .mosaic-card:first-child {
            grid-column: 1/-1;
            grid-row: auto
        }

        .footer-grid {
            grid-template-columns: 1fr 1fr
        }
    }

    @media(max-width:720px) {
        /*  .topbar {
        display: none
    }*/

        .site-header {
            top: 0;
            background: linear-gradient(180deg,rgba(3,8,14,.78),transparent);
            border-bottom: 0
        }

            .site-header.scrolled {
                background: rgba(5,10,17,.94);
                border-bottom: 1px solid var(--line)
            }

        .nav-wrap {
            height: 82px;
            padding-inline: 16px
        }

        .brand img {
            width: 70px;
            height: 70px
        }

        .brand-text {
            display: none
        }

        .menu-btn {
            display: grid;
            width: 48px;
            height: 48px;
            background: rgba(5,12,20,.32);
            backdrop-filter: blur(8px)
        }

        .hero {
            min-height: 100svh
        }

        .hero-media {
            background-position: 61% center
        }

        .hero-frame {
            inset: 96px 14px 18px
        }

        .hero-layout {
            min-height: 100svh;
            padding: 130px 25px 128px;
            align-items: flex-end
        }

        .hero-content {
            padding-bottom: 0;
            margin: 0;
            max-width: 100%
        }

        .hero-kicker {
            font-size: .58rem;
            letter-spacing: .17em;
            gap: 10px
        }

            .hero-kicker span {
                width: 32px
            }

        .hero .display-title {
            font-size: clamp(3.65rem,18vw,5.4rem);
            line-height: .86;
            letter-spacing: -.055em
        }

        .hero-copy {
            font-size: .94rem;
            line-height: 1.75;
            max-width: 95%;
            margin-left: 0
        }

        .hero-actions {
            gap: 14px
        }

            .hero-actions .btn-luxury {
                width: 100%
            }

        .hero-text-link {
            padding: 10px 2px
        }

        .hero-bottom {
            bottom: 38px
        }

            .hero-bottom .container-xl {
                padding-inline: 26px
            }

        .hero-locations {
            display: none
        }

        .hero-scroll {
            font-size: .55rem
        }

        .display-title {
            font-size: 3.45rem
        }

        .booking-card {
            grid-template-columns: 1fr
        }

        .field {
            border-right: 0;
            border-bottom: 1px solid var(--line)
        }

        .trust-row {
            grid-template-columns: 1fr 1fr
        }

        .section-pad {
            padding: 82px 0
        }

        .intro-grid {
            gap: 42px
        }

        .image-stack {
            min-height: 470px
        }

        .image-main {
            height: 430px;
            width: 88%
        }

        .image-float {
            height: 190px
        }

        .seal {
            width: 92px;
            height: 92px;
            font-size: .76rem
        }

        .cards-3, .journal-grid {
            grid-template-columns: 1fr
        }

        .journey-card {
            min-height: 460px
        }

        .feature-photo, .feature-photo img {
            min-height: 480px;
            height: 480px
        }

        .mosaic {
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: none
        }

        .mosaic-card, .mosaic-card:first-child {
            height: 310px;
            grid-column: auto
        }

        .footer-grid {
            grid-template-columns: 1fr
        }

        footer.luxury-footer .footer-bottom {
            flex-direction: column
        }

        .section-title {
            font-size: 2.7rem
        }

        .hero-actions a {
            width: 100%
        }

        .trust-item {
            padding: 18px 8px
        }

        .brand-text span {
            font-size: .55rem
        }
    }

    /* First-version header — preserved exactly */
    .header-actions .btn-ghost {
        display: inline-flex !important
    }

    .menu-btn {
        position: static;
        place-items: initial;
        gap: 0
    }

        .menu-btn span {
            display: none
        }

    .mobile-panel {
        position: fixed;
        inset: 0 0 0 auto;
        width: min(390px,100%);
        background: #07101d;
        z-index: 1200;
        padding: 28px;
        transform: translateX(100%);
        transition: .35s;
        display: block;
        box-shadow: none
    }

        .mobile-panel.open {
            transform: translateX(0)
        }

        .mobile-panel nav {
            display: grid;
            gap: 22px;
            margin-top: 55px;
            font-family: var(--font-display);
            font-size: 1.8rem
        }

            .mobile-panel nav a:hover,
            .dark-mode body .mobile-panel nav a:hover {
                color: var(--gold-2) !important
            }

            .mobile-panel nav a {
                display: block;
                padding: 0;
                border: 0;
                font-size: inherit
            }

        .mobile-nav-group,
        .mobile-submenu {
            display: grid;
            gap: 10px
        }

        .mobile-submenu-toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            width: 100%;
            padding: 0;
            border: 0;
            background: transparent;
            color: #fff;
            font-family: var(--font-display);
            font-size: inherit;
            line-height: 1.2;
            text-align: left
        }

            .mobile-submenu-toggle i {
                color: var(--gold-2);
                font-size: 1rem;
                transition: transform .25s
            }

        .mobile-nav-group.open .mobile-submenu-toggle i {
            transform: rotate(180deg)
        }

        .mobile-submenu {
            display: none;
            padding-left: 16px;
            margin-top: -4px;
            border-left: 1px solid rgba(231,210,174,.18)
        }

        .mobile-nav-group.open .mobile-submenu {
            display: grid
        }

            .mobile-submenu a {
                color: #cfd8e3;
                font-family: var(--font-body);
                font-size: 1rem !important;
                line-height: 2.4
            }

    .close-menu {
        position: absolute;
        right: 24px;
        top: 22px;
        width: 45px;
        height: 45px;
        border-radius: 50%;
        border: 1px solid var(--line);
        background: none;
        color: #fff
    }

    /* V4 — new premium travel hero slider; all following sections remain unchanged */
    .hero {
        min-height: clamp(720px,100vh,980px);
        padding: 0;
        display: block;
        background: #050a11;
        overflow: hidden;
        isolation: isolate
    }

        .hero:after {
            height: 280px;
            z-index: 2;
            background: linear-gradient(transparent,#07101d)
        }

    .hero-media {
        position: absolute;
        inset: 0;
        overflow: hidden;
        z-index: 0
    }

    .hero-slide {
        position: absolute;
        inset: -3%;
        background-position: center 54%;
        background-size: cover;
        background-repeat: no-repeat;
        opacity: 0;
        transform: scale(1.12);
        transition: opacity 1.35s ease,transform 9s cubic-bezier(.2,.7,.2,1);
        will-change: opacity,transform
    }

        .hero-slide.active {
            opacity: 1;
            transform: scale(1.025)
        }

.hero-slide-1 {
    background-image: url('../img/slide-1.jpeg')
}

.hero-slide-2 {
    background-image: url('../img/slide-2.jpeg')
}

.hero-slide-3 {
    background-image: url('../img/slide-3.jpeg')
}

    .hero-vignette {
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(90deg,rgba(3,7,13,.84) 0%,rgba(3,7,13,.53) 43%,rgba(3,7,13,.12) 72%),linear-gradient(180deg,rgba(3,7,13,.12) 0%,rgba(3,7,13,.08) 52%,rgba(3,7,13,.72) 100%)
    }

    .hero-frame {
        position: absolute;
        inset: 148px 28px 34px;
        border: 1px solid rgba(234,214,174,.18);
        z-index: 2;
        pointer-events: none
    }

    .hero-layout {
        position: relative;
        z-index: 3;
        min-height: clamp(720px,100vh,980px);
        display: grid;
        grid-template-columns: minmax(0,1fr) 230px;
        align-items: center;
        padding-top: 150px;
        padding-bottom: 110px
    }

    .hero-content {
        max-width: 820px;
        padding-left: clamp(0px,3vw,44px)
    }

    .hero-kicker {
        display: flex;
        align-items: center;
        gap: 16px;
        color: var(--gold-2);
        font-size: .67rem;
        letter-spacing: .24em;
        text-transform: uppercase
    }

        .hero-kicker span {
            width: 58px;
            height: 1px;
            background: var(--gold)
        }

    .hero .display-title {
        font-size: clamp(4rem,7.2vw,7.3rem);
        line-height: .87;
        max-width: 880px;
        margin-bottom: 0;
        text-wrap: balance
    }

        .hero .display-title em {
            font-weight: 400;
            color: #f4ead7
        }

    .hero-copy {
        font-size: 1.06rem;
        line-height: 1.8;
        color: #e0e3e7;
        max-width: 610px
    }

    .hero-actions {
        margin-top: 32px;
        align-items: center
    }

    .hero-text-link {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 12px 2px;
        margin-left: 10px;
        border-bottom: 1px solid rgba(255,255,255,.45);
        font-weight: 700
    }

        .hero-text-link span {
            color: var(--gold);
            font-size: 1.25rem
        }

    .hero-rail {
        justify-self: end;
        align-self: center;
        display: grid;
        gap: 18px;
        padding-right: 12px
    }

    .hero-index {
        display: flex;
        flex-direction: column;
        gap: 10px;
        border-right: 1px solid rgba(255,255,255,.22);
        padding-right: 18px
    }

        .hero-index button {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 12px;
            color: rgba(255,255,255,.58);
            background: none;
            border: 0;
            padding: 4px 0;
            font-family: var(--font-display);
            font-size: 1.05rem;
            transition: .3s
        }

            .hero-index button:after {
                content: "";
                width: 0;
                height: 1px;
                background: var(--gold);
                transition: .35s
            }

            .hero-index button.active {
                color: var(--gold-2)
            }

                .hero-index button.active:after {
                    width: 28px
                }

    .hero-arrows {
        display: flex;
        justify-content: flex-end;
        margin-top: 18px
    }

    .hero-arrow {
        width: 52px;
        height: 52px;
        border: 1px solid rgba(234,214,174,.5);
        background: rgba(3,8,15,.36);
        color: var(--gold-2);
        transition: .3s
    }

        .hero-arrow + .hero-arrow {
            border-left: 0
        }

        .hero-arrow:hover {
            background: var(--gold);
            color: #080b0f
        }

    .hero-caption {
        font-size: .62rem;
        letter-spacing: .18em;
        text-transform: uppercase;
        color: #d2d7de;
        text-align: right
    }

    .hero-bottom {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 52px;
        z-index: 4
    }

        .hero-bottom .container-xl {
            display: flex;
            justify-content: space-between;
            align-items: end
        }

    .hero-scroll {
        display: flex;
        align-items: center;
        gap: 12px;
        text-transform: uppercase;
        letter-spacing: .17em;
        font-size: .61rem;
        color: #c7cdd5
    }

        .hero-scroll i {
            display: block;
            width: 48px;
            height: 1px;
            background: rgba(255,255,255,.48)
        }

    .hero-locations {
        display: flex;
        gap: 13px;
        color: #d3d8df;
        font-size: .72rem;
        letter-spacing: .12em;
        text-transform: uppercase
    }

        .hero-locations b {
            color: var(--gold)
        }

    .hero-progress {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 2px;
        background: rgba(255,255,255,.1);
        z-index: 5
    }

        .hero-progress span {
            display: block;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg,var(--gold),var(--gold-2));
            transform-origin: left;
            animation: slideTimer 7s linear infinite
        }

    @keyframes slideTimer {
        from {
            transform: scaleX(0)
        }

        to {
            transform: scaleX(1)
        }
    }

    @media(max-width:1100px) {
        .desktop-nav, .header-actions .btn-ghost, .header-actions .btn-luxury {
            display: none !important
        }

        .menu-btn {
            display: block
        }

        .hero-layout {
            grid-template-columns: 1fr
        }

        .hero-rail {
            position: absolute;
            right: 34px;
            bottom: 110px
        }

        .hero-caption {
            display: none
        }
    }

    @media(max-width:720px) {
        /* .topbar {
        display: none
    }*/

        .site-header {
            top: 0
        }

        .nav-wrap {
            height: 76px
        }

        .brand img {
            width: 70px;
            height: 70px
        }

        .brand-text strong {
            font-size: 1.6rem
        }

        .brand-text {
            display: block
        }

            .brand-text span {
                font-size: .68rem
            }

        .menu-btn {
            width: 48px;
            height: 48px;
            background: transparent;
            backdrop-filter: none
        }

        .hero {
            min-height: 100svh
        }

        .hero-frame {
            inset: 94px 14px 18px
        }

        .hero-layout {
            min-height: 100svh;
            padding: 132px 24px 145px;
            display: flex;
            align-items: flex-end
        }

        .hero-content {
            padding-left: 0
        }

        .hero-kicker {
            font-size: .56rem;
            letter-spacing: .16em;
            gap: 10px
        }

            .hero-kicker span {
                width: 30px
            }

        .hero .display-title {
            font-size: clamp(3.5rem,17vw,5rem);
            line-height: .87
        }

        .hero-copy {
            font-size: .92rem;
            line-height: 1.68;
            max-width: 96%
        }

        .hero-actions {
            gap: 10px;
            margin-top: 24px
        }

            .hero-actions .btn-luxury {
                width: 100%
            }

        .hero-text-link {
            margin-left: 0
        }

        .hero-rail {
            right: 22px;
            bottom: 75px
        }

        .hero-index {
            display: none
        }

        .hero-arrows {
            margin: 0
        }

        .hero-arrow {
            width: 46px;
            height: 46px
        }

        .hero-bottom {
            bottom: 36px
        }

            .hero-bottom .container-xl {
                padding-inline: 25px
            }

        .hero-locations {
            display: none
        }

        .hero-scroll {
            font-size: .53rem
        }

    }

    @media(prefers-reduced-motion:reduce) {
        .hero-slide {
            transition: opacity .35s ease;
            transform: none
        }

            .hero-slide.active {
                transform: none
            }

        .hero-progress span {
            animation: none
        }
    }

    .tour-price {
        display: flex;
        flex-direction: column;
        line-height: 1.1;
    }

    .price-label {
        font-size: .72rem;
        text-transform: uppercase;
        letter-spacing: .12em;
        color: #9ea3b5;
    }

    .price-value {
        font-size: 1.45rem;
        font-weight: 700;
        color: #fff;
    }

    .price-unit {
        font-size: .8rem;
        font-weight: 500;
        color: #9ea3b5;
    }


    /* Traveler reviews */
    .traveler-reviews {
        position: relative;
        padding: 112px 0 128px;
        /*background: #f3eee9;*/
        color: #fff;
        overflow: hidden;
    }

        .traveler-reviews .review-kicker {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 1.02rem;
            font-style: italic;
            color: #c9a66b;
        }

            .traveler-reviews .review-kicker:before,
            .traveler-reviews .review-kicker:after {
                content: "";
                width: 22px;
                height: 1px;
                background: currentColor;
                opacity: .8;
            }

        .traveler-reviews .reviews-heading {
            margin: 14px 0 48px;
            font-size: clamp(2.35rem, 4vw, 4rem);
            line-height: 1.08;
            font-weight: 800;
            letter-spacing: -.035em;
            color: #FAFCFF;
        }

    .review-platforms {
        display: flex;
        align-items: stretch;
        gap: 26px;
        max-width: 1190px;
        margin: 0 auto 42px;
        padding: 0 18px;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 8px 28px rgba(33, 24, 18, .04);
        overflow-x: auto;
        scrollbar-width: none;
    }

        .review-platforms::-webkit-scrollbar {
            display: none;
        }

    .review-platform {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 48px;
        padding: 0 2px;
        border: 0;
        background: transparent;
        color: #111;
        font-size: .9rem;
        white-space: nowrap;
        cursor: pointer;
    }

        .review-platform i,
        .platform-icon {
            display: grid;
            place-items: center;
            width: 20px;
            height: 20px;
            flex: 0 0 20px;
            border-radius: 50%;
            background: #8d8d8d;
            color: #fff;
            font-size: .67rem;
        }

            .platform-icon svg {
                width: 14px;
                height: 14px;
                display: block;
                fill: currentColor;
            }

        .review-platform.active {
            color: #60ad37;
        }

            .review-platform.active:after {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                height: 2px;
                background: #60ad37;
            }

    .reviews-stage {
        position: relative;
        max-width: 1320px;
        margin: 0 auto;
        padding: 0 70px;
    }

    .reviews-viewport {
        overflow: hidden;
    }

    .reviews-track {
        display: flex;
        gap: 24px;
        transition: transform .55s cubic-bezier(.22,.61,.36,1);
        will-change: transform;
    }

    .review-item {
        flex: 0 0 calc((100% - 48px) / 3);
        min-width: 0;
    }

        .review-item[hidden] {
            display: none !important;
        }

    .review-card {
        position: relative;
        min-height: 264px;
        padding: 36px 34px 28px;
        border: 1px solid #e5e1dd;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 12px 35px rgba(47, 37, 29, .025);
    }

        .review-card:after {
            content: "";
            position: absolute;
            left: 48%;
            bottom: -24px;
            width: 0;
            height: 0;
            border-left: 18px solid transparent;
            border-right: 0 solid transparent;
            border-top: 25px solid #fff;
            filter: drop-shadow(0 1px 0 #e5e1dd);
        }

    .review-text {
        min-height: 116px;
        margin: 0;
        color: #66615e !important;
        font-size: 1rem;
        line-height: 1.95;
        text-align: center;
    }

    .review-meta-row {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 18px;
        margin-top: 22px;
    }

    .review-score {
        color: #06aa72;
    }

    .review-dots {
        display: flex;
        gap: 5px;
        margin-bottom: 5px;
    }

        .review-dots span {
            width: 11px;
            height: 11px;
            border-radius: 50%;
            background: #06aa72 !important;
            color: #06aa72 !important;
        }

        .dark-mode .review-dots span,
        .dark-mode body .review-dots span {
            background: #06aa72 !important;
            color: #06aa72 !important;
        }

    .review-source {
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: .67rem;
        font-weight: 800;
        color: #161616;
    }

        .review-source i {
            color: #06aa72;
            font-size: .77rem;
        }

        .review-source .platform-icon {
            width: 14px;
            height: 14px;
            flex-basis: 14px;
            background: #06aa72;
            color: #fff;
        }

            .review-source .platform-icon svg {
                width: 10px;
                height: 10px;
            }

        .review-source.facebook-source i {
            color: #1877f2;
        }

        .review-source.google-source i {
            color: #4285f4;
        }

    .review-date {
        text-align: right;
        font-size: .77rem;
        color: #333;
        line-height: 1.5;
    }

        .review-date small {
            display: block;
            color: #999;
            font-size: .65rem;
        }

    .review-quote-mark {
        position: absolute;
        left: 48%;
        bottom: 9px;
        color: #f3f3f3;
        font-family: Georgia, serif;
        font-size: 5.1rem;
        line-height: 1;
        pointer-events: none;
    }

    .review-author {
        display: flex;
        align-items: center;
        gap: 14px;
        width: max-content;
        max-width: 100%;
        margin: 38px auto 0;
    }

        .review-author img {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            object-fit: cover;
        }

        .review-author strong {
            display: block;
            font-size: 1.08rem;
            color: #fff;
        }

        .review-author span {
            display: block;
            margin-top: 3px;
            font-size: .77rem;
            color: #999;
        }

    .review-nav {
        position: absolute;
        top: 42%;
        z-index: 3;
        width: 36px;
        height: 36px;
        display: grid;
        place-items: center;
        border: 1px solid #c9a66b;
        border-radius: 50%;
        background: transparent;
        color: #c9a66b;
        cursor: pointer;
        transition: .25s;
    }

        .review-nav:hover {
            background: #c9a66b;
            color: #fff;
        }

        .review-nav:disabled {
            opacity: .35;
            cursor: default;
        }

            .review-nav:disabled:hover {
                background: transparent;
                color: #c9a66b;
            }

    .review-prev {
        left: 12px;
    }

    .review-next {
        right: 12px;
    }

    @media (max-width: 991.98px) {
        .review-item {
            flex-basis: calc((100% - 24px) / 2);
        }

        .reviews-stage {
            padding: 0 58px;
        }
    }

    @media (max-width: 767.98px) {
        .traveler-reviews {
            padding: 82px 0 92px;
        }

            .traveler-reviews .reviews-heading {
                margin-bottom: 34px;
            }

        .review-platforms {
            margin-inline: 18px;
            padding-inline: 14px;
            gap: 22px;
        }

        .reviews-stage {
            padding: 0 42px;
        }

        .reviews-track {
            gap: 16px;
        }

        .review-item {
            flex-basis: 100%;
        }

        .review-card {
            min-height: 282px;
            padding: 32px 24px 26px;
        }

        .review-text {
            min-height: 135px;
            font-size: .94rem;
        }

        .review-prev {
            left: 2px;
        }

        .review-next {
            right: 2px;
        }

        .topbar {
            display: none !important;
        }
    }

    @media (max-width: 991.98px) {
        .topbar {
            display: none !important;
        }
    }

    @media(max-width:1100px) {
        .cruise-feature {
            grid-template-columns: 1fr
        }

        .cruise-feature > img {
            height: 420px;
            min-height: 0
        }
    }

    @media(max-width:767.98px) {
        .cruise-section {
            padding: 82px 0
        }

        .cruise-copy {
            padding: 30px 22px
        }

        .cruise-copy ul {
            grid-template-columns: 1fr
        }

        .cruise-copy > div {
            align-items: flex-start;
            flex-direction: column;
            gap: 16px
        }

        .cruise-types {
            grid-template-columns: 1fr 1fr
        }
    }

    @media(max-width:480px) {
        .cruise-types {
            grid-template-columns: 1fr
        }
    }
