:root {
    --brand-1: #E3A008;
    --brand-2: #D9467A;
    --ink: #171514;
    --shadow: 0 22px 60px rgba(0, 0, 0, .22);
    --muted: rgba(255, 255, 255, .78);
    --card: rgba(10, 14, 22, .52);
    --stroke: rgba(255, 255, 255, .14);
    --muted-1: #6a6a6a;
    --line: rgba(23, 21, 20, .10);
}

/* block user */
body{
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
}
input, textarea{
  user-select:text; /* forms still work */
}
* {
    box-sizing: border-box
}

body {
    margin: 0;
    font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: var(--ink);
}

.nxh {
    position: sticky;
    top: 0;
    z-index: 5000
}

.nxh-wrap {
    width: min(1220px, 92%);
    margin: auto
}

/* ================= TOPBAR ================= */
.nxh-top {
    background: linear-gradient(90deg,
            rgba(227, 160, 8, .96),
            rgba(217, 70, 122, .96));
    color: #fff;
    font-size: 12.5px;
    letter-spacing: .2px;
}

.nxh-top .nxh-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 7px 0;
    gap: 14px;
}

.nxh-social {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.nxh-social a {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    transition: .22s;
}

.nxh-social a:hover {
    background: #fff;
    color: var(--brand-2);
    transform: translateY(-1px);
}

.nxh-top__right {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.nxh-top__link {
    color: #fff;
    text-decoration: none;
    opacity: .95;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.nxh-top__link:hover {
    opacity: 1
}

/* ================= MAIN ================= */
.nxh-main {
    background:
        linear-gradient(90deg,
            rgba(217, 70, 122, .92),
            rgba(227, 160, 8, .92)),
        radial-gradient(900px 160px at 25% 0%,
            rgba(255, 230, 150, .35),
            transparent 60%);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, .14);


}

.nxh-main__in {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    gap: 16px;
}

/* Logo */
.nxh-brand {
    display: flex;
    align-items: center;
    text-decoration: none;
    min-width: 180px;
}

.nxh-brand__logo {
    height: 70px;
    width: auto;
    filter: drop-shadow(0 10px 18px rgba(0, 0, 0, .18));
}

/* Nav capsule */
.nxh-nav {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    position: relative;
    /* IMPORTANT (for centered panel) */
}

.nxh-link {
    color: #fff;
    text-decoration: none;
    font-weight: 650;
    padding: 10px 14px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    position: relative;
    transition: .22s;
    white-space: nowrap;
}

.nxh-link:hover {
    background: rgba(255, 255, 255, .12)
}

.nxh-link.is-active {
    background: rgba(255, 255, 255, .18)
}

.nxh-link.is-active::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 6px;
    height: 2px;
    border-radius: 2px;
    background: rgba(255, 255, 255, .85);
}

/* ================= DROPDOWN (final working version) ================= */
.nxh-dd {
    position: relative
}

.nxh-dd__btn {
    border: 0;
    background: transparent;
    cursor: pointer;
    font: inherit;
}

/* This is the ONLY panel definition kept (your latest one) */
.nxh-dd__panel {
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    width: 1000px;
    max-width: calc(100vw - 60px);

    background: #fff;
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .18);

    display: none;
    z-index: 99999;
}

.nxh-dd.is-open .nxh-dd__panel {
    display: block
}

/* ================= MEGA (screenshot style) ================= */
.nxh-megaShot {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 14px;
}

.nxh-megaShot__media {
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    background: #fff;
}

.nxh-megaShot__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 4/3;
}

.nxh-megaShot__body {
    border-radius: 16px;
    padding: 12px;
    background: rgba(255, 255, 255, .80);
    border: 1px solid rgba(0, 0, 0, .06);
}

.nxh-megaShot__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 10px 10px;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    margin-bottom: 10px;
}

.nxh-megaShot__title {
    font-size: 13px;
    font-weight: 800;
    color: #3b2a24;
    letter-spacing: .3px;
    text-transform: uppercase;
}

.nxh-megaShot__cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.nxh-megaShot__col {
    padding: 6px 12px
}

.nxh-megaShot__col+.nxh-megaShot__col {
    border-left: 1px solid rgba(0, 0, 0, .08);
}

.nxh-megaShot__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.nxh-megaShot__list li+li {
    border-top: 1px solid rgba(0, 0, 0, .07);
}

.nxh-megaShot__list a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 4px;
    text-decoration: none;
    color: #1b1b1b;
    font-weight: 600;
    font-size: 13.5px;
    transition: .18s ease;
}

.nxh-megaShot__list a::before {
    content: "›";
    width: 18px;
    display: inline-grid;
    place-items: center;
    font-size: 18px;
    line-height: 1;
    color: var(--brand-2);
    opacity: .95;
}

.nxh-megaShot__list a:hover {
    background: rgba(181, 65, 39, .08);
    border-radius: 12px;
    padding-left: 10px;
}

/* ================= ACTION BUTTONS ================= */
.nxh-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nxh-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 13px;
    text-decoration: none;
    transition: .22s;
    border: 1px solid transparent;
    white-space: nowrap;
}

.nxh-btn--ghost {
    color: #fff;
    background: rgba(255, 255, 255, .10);
    border-color: rgba(255, 255, 255, .18);
}

.nxh-btn--ghost:hover {
    background: rgba(255, 255, 255, .16)
}

.nxh-btn--solid {
    background: #fff;
    color: var(--brand-2);
    box-shadow: 0 16px 30px rgba(0, 0, 0, .16);
}

.nxh-btn--solid:hover {
    transform: translateY(-1px)
}

/* Burger */
.nxh-burger {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .10);
    display: none;
    place-items: center;
    cursor: pointer;
}

.nxh-burger span {
    display: block;
    width: 18px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    margin: 2px 0;
}


/* Remove social icons in mobile */
@media (max-width: 768px) {
    .nxh-social {
        display: none !important;
    }

    .nxh-top .nxh-wrap {
        justify-content: center !important;
    }

    .nxh-top__right {
        width: 100%;
        gap: 16px;
    }
}


/* ================= MOBILE (single source of truth) ================= */
@media (max-width:1060px) {

    /* ✅ iOS/Chrome fix: parent backdrop-filter breaks fixed sheet */
    .nxh-main {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* Burger visible */
    .nxh-burger {
        display: grid !important;
    }

    /* Hide desktop action buttons */
    .nxh-actions .nxh-btn {
        display: none !important;
    }

    /* Backdrop */
    .nxh-backdrop {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .45);
        opacity: 0;
        pointer-events: none;
        transition: .25s ease;
    }

    .nxh-backdrop.is-open {
        opacity: 1;
        pointer-events: auto;
    }

    /* ✅ Keep burger in header (NOT floating) */
    #nxBurger.nxh-burger {
        position: static !important;
        right: auto !important;
        bottom: auto !important;
        width: 44px;
        height: 44px;
        border-radius: 14px;
        z-index: auto;
        box-shadow: none !important;
    }

    /* NAV = bottom sheet (hidden by default) */
    #nxNav.nxh-nav {
        position: fixed !important;
        left: 0;
        right: 0;
        bottom: 0;
        top: auto !important;

        width: 100%;
        max-height: 72vh;
        overflow: auto;
        -webkit-overflow-scrolling: touch;

        border-radius: 20px 20px 0 0 !important;
        padding: 12px 14px 18px !important;
        gap: 8px !important;

        flex-direction: column;
        align-items: stretch;

        background:
            radial-gradient(900px 220px at 25% 0%, rgba(255, 215, 201, .22), transparent 60%),
            linear-gradient(180deg, rgba(181, 65, 39, .98), rgba(170, 53, 17, .98));
        border: none !important;

        z-index: 9500;

        /* hide state */
        transform: translateY(110%) !important;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: transform .28s ease, opacity .2s ease;
    }

    /* OPEN */
    #nxNav.nxh-nav.is-open {
        transform: translateY(0) !important;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    /* Handle */
    #nxNav.nxh-nav::before {
        content: "";
        display: block;
        width: 46px;
        height: 4px;
        border-radius: 99px;
        margin: 2px auto 10px;
        background: rgba(255, 255, 255, .5);
    }

    /* Links */
    #nxNav .nxh-link {
        padding: 12px 12px !important;
        border-radius: 16px !important;
        justify-content: space-between;
    }

    /* Dropdown panel inside sheet */
    #nxNav .nxh-dd__panel {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        transform: none !important;

        margin-top: 8px !important;
        box-shadow: none !important;
        padding: 12px !important;
        border-radius: 16px !important;

        display: none;
        background: #fff;
    }

    #nxNav .nxh-dd.is-open .nxh-dd__panel {
        display: block !important;
    }

    /* Mega layout compact */
    #nxNav .nxh-megaShot {
        grid-template-columns: 1fr !important;
    }

    #nxNav .nxh-megaShot__cols {
        grid-template-columns: 1fr !important;
    }

    #nxNav .nxh-megaShot__col+.nxh-megaShot__col {
        border-left: none !important;
        border-top: 1px solid rgba(0, 0, 0, .08) !important;
    }
}


/* ✅ FIX: mobile par "fixed bottom sheet" ko parent filter se break hone se bachao */
@media (max-width:1060px) {
    .nxh-main {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
}

/* hero */
.hero {
    position: relative;
    padding: 0;

    overflow: hidden;
}

.hero__wrap {
    position: relative;
    min-height: clamp(520px, 83vh, 820px);
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.hero__track {
    position: absolute;
    inset: 0;
}

.hero__slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.02);
    transition: opacity .7s ease, transform .9s ease;
    pointer-events: none;
}

.hero__slide.is-active {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
}

.hero__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.05) contrast(1.05);
}

.hero__overlay {
    position: absolute;
    inset: 0;

}

.hero__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(22px, 4vw, 64px);
    max-width: 1180px;
    margin: 0 auto;
    gap: 14px;
}

/* 1) Strong readable title on bright images */
.hero__title {
    color: #fff;
    line-height: 1.03;
    letter-spacing: -.6px;
    font-size: clamp(30px, 4.2vw, 58px);
    max-width: 20ch;
    margin: 0;

    /* IMPORTANT */
    text-shadow:
        0 2px 10px rgba(0, 0, 0, .55),
        0 14px 40px rgba(0, 0, 0, .45);
}

.hero__cta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 18px;
    border-radius: 14px;
    font-weight: 700;
    text-decoration: none;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
    will-change: transform;
    user-select: none;
}

.btn:active {
    transform: translateY(1px);
}

.btn--primary {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 40px rgba(0, 0, 0, .35);
}

.btn--primary:hover {
    box-shadow: 0 22px 55px rgba(0, 0, 0, .42);
    transform: translateY(-1px);
    color: azure;
}

.btn--ghost {
    color: #fff;
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .16);
    backdrop-filter: blur(10px);
}

.btn--ghost:hover {
    background: rgba(255, 255, 255, .12);
    transform: translateY(-1px);
    color: azure;
}

.hero__meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.hero__pill {
    color: rgba(255, 255, 255, .9);
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    padding: 9px 12px;
    font-size: 13px;
    font-weight: 600;
    backdrop-filter: blur(10px);
}

.hero__controls {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0 18px;
    pointer-events: none;
}

.hero__nav {
    pointer-events: auto;
    width: 46px;
    height: 46px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(10, 14, 22, .48);
    backdrop-filter: blur(10px);
    color: #fff;
    font-size: 26px;
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.hero__nav:hover {
    transform: translateY(-1px);
    background: rgba(10, 14, 22, .62);
    border-color: rgba(255, 255, 255, .22);
}

.hero__dots {
    pointer-events: auto;
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(10, 14, 22, .42);
    backdrop-filter: blur(10px);
}

.hero__dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .35);
    border: 0;
    cursor: pointer;
    transition: width .18s ease, background .18s ease, transform .18s ease;
}

.hero__dot[aria-selected="true"] {
    width: 28px;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
}

.hero__dot:hover {
    transform: scale(1.05);
}

.hero__progress {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: rgba(255, 255, 255, .08);
}

.hero__bar {
    display: block;
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
}

/* Mobile tuning: center content */
@media (max-width: 900px) {
    .hero__content {
        justify-content: flex-end;
        padding-bottom: 92px;
        text-align: left;
    }

    .hero__title {
        max-width: 22ch;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero__slide {
        transition: none;
    }

    .btn,
    .hero__nav,
    .hero__dot {
        transition: none;
    }
}

/* About Us */
/* Section background matches hero vibe (not plain gray) */
.abtTheme {
    position: relative;
    padding: clamp(60px, 6vw, 96px) 0;
    background:
        radial-gradient(950px 520px at 18% 10%, rgba(181, 65, 39, .18), transparent 62%),
        radial-gradient(900px 520px at 82% 12%, rgba(170, 53, 17, .16), transparent 60%),
        linear-gradient(180deg, #070b12, #070b12);
    border-top: 1px solid rgba(255, 255, 255, .06);
}

/* Layout */
.abtTheme__grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: clamp(18px, 4vw, 48px);
    align-items: start;
}

/* Left */
.abtTheme__kicker {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.abtTheme__tag {
    display: inline-flex;
    padding: 9px 12px;
    border-radius: 999px;
    color: rgba(255, 255, 255, .92);
    font-weight: 700;
    font-size: 13px;
    background: linear-gradient(135deg, rgba(181, 65, 39, .26), rgba(170, 53, 17, .20));
    border: 1px solid rgba(255, 255, 255, .14);
    backdrop-filter: blur(10px);
}

.abtTheme__rule {
    height: 1px;
    flex: 1;
    background: linear-gradient(90deg, rgba(255, 255, 255, .22), transparent);
}

.abtTheme__title {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(28px, 3.2vw, 46px);
    line-height: 1.12;
    letter-spacing: -.35px;
    max-width: 22ch;
}

.abtTheme__title span {
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.abtTheme__lead {
    margin: 0 0 18px;
    color: rgba(255, 255, 255, .82);
    line-height: 1.75;
    max-width: 64ch;
}

/* Rows (glass + subtle) */
.abtTheme__rows {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.abtTheme__row {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 14px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .10);
    backdrop-filter: blur(10px);
}

.abtTheme__ico {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, .22);
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    flex: 0 0 auto;
}

.abtTheme__ico svg {
    width: 20px;
    height: 20px;
}

.abtTheme__h {
    color: #fff;
    font-weight: 750;
    font-size: 15px;
    margin-top: 2px;
}

.abtTheme__p {
    color: rgba(255, 255, 255, .72);
    font-size: 14px;
    margin-top: 4px;
    line-height: 1.55;
}

.abtTheme__cta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
}

/* Right Card (glass, premium) */
.abtTheme__card {
    border-radius: 24px;
    padding: 18px 18px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
    backdrop-filter: blur(14px);
    box-shadow: 0 28px 70px rgba(0, 0, 0, .32);
}

.abtTheme__cardTop {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.abtTheme__mark {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, rgba(181, 65, 39, .22), rgba(170, 53, 17, .16));
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    flex: 0 0 auto;
}

.abtTheme__mark svg {
    width: 20px;
    height: 20px;
}

.abtTheme__cardTitle {
    margin: 2px 0 6px;
    color: #fff;
    font-size: 16px;
    letter-spacing: -.2px;
}

.abtTheme__cardText {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
    line-height: 1.6;
}

.abtTheme__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.abtTheme__chip {
    padding: 8px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .22);
    border: 1px solid rgba(255, 255, 255, .14);
    color: rgba(255, 255, 255, .90);
    font-size: 12px;
    font-weight: 600;
}

.abtTheme__mini {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.abtTheme__miniRow {
    display: flex;
    gap: 10px;
    align-items: center;
    color: rgba(255, 255, 255, .86);
    font-size: 14px;
}

.abtTheme__miniIco {
    width: 30px;
    height: 30px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, .22);
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    flex: 0 0 auto;
}

.abtTheme__miniIco svg {
    width: 16px;
    height: 16px;
}

.abtTheme__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, .10);
}

.abtTheme__stat {
    padding: 12px 12px;
    border-radius: 16px;
    background: rgba(0, 0, 0, .18);
    border: 1px solid rgba(255, 255, 255, .10);
}

.abtTheme__n {
    color: #fff;
    font-weight: 850;
    font-size: 18px;
}

.abtTheme__l {
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    margin-top: 2px;
}

/* Responsive */
@media (max-width: 980px) {
    .abtTheme__grid {
        grid-template-columns: 1fr;
    }

    .abtTheme__title {
        max-width: none;
    }

    .abtTheme__stats {
        grid-template-columns: 1fr;
    }
}

/* mini tour slider */


/* grid */
.pkg-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(4, minmax(0, 1fr))
}

@media (max-width:1100px) {
    .pkg-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width:640px) {
    .pkg-grid {
        grid-template-columns: 1fr
    }
}

/* card */
.pkg {
    background: #fff;
    border: 1px solid var(--stroke);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .08);
}

/* ✅ MEDIA (NO PADDING — reference like) */
.pkg__media {
    position: relative
}

.pkg__imgBox {
    position: relative;
    height: 235px;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
    /* same as card top */
    background: #111;
}

.pkg__img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

/* light overlay */
.pkg__imgBox::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, .25), transparent 60%);
    pointer-events: none;
}

/* ✅ top-left pill (same spacing + subtle shadow) */
.pkg__pill {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .95);
    border: 1px solid rgba(0, 0, 0, .06);
    box-shadow: 0 10px 18px rgba(0, 0, 0, .10);
    font-weight: 600;
    font-size: 12px;
    color: #222;
}

.pkg__pill svg {
    width: 14px;
    height: 14px;
    color: var(--brand-1)
}

/* title */
.pkg__body {
    padding: 14px 14px 0
}

.pkg__title {
    margin: 0;
    font-size: 16px;
    line-height: 1.28;
    font-weight: 700;
    color: #1a1a1a;
}

.pkg__body {
    padding: 14px 14px 0
}

/* Top meta row */
.pkg__metaTop {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 2px 0 10px;
}

/* Duration as chip */
.pkg__duration {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(181, 65, 39, .08);
    border: 1px solid rgba(181, 65, 39, .18);
    font-size: 13px;
    font-weight: 800;
    color: #2a2a2a;
    letter-spacing: .2px;
}

.pkg__duration svg {
    width: 16px;
    height: 16px;
    color: var(--brand-1);
}

/* Rating pill (not just plain stars) */
.pkg__ratingPill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .10);
    box-shadow: 0 10px 18px rgba(0, 0, 0, .08);
}

.pkg__stars {
    display: inline-flex;
    gap: 2px;
    color: #ffb400;
    line-height: 1;
    font-size: 14px;
    letter-spacing: 0;
}

.pkg__rateTxt {
    font-size: 12px;
    font-weight: 800;
    color: #333;
    opacity: .9;
}

/* Title with accent underline */
.pkg__title {
    margin: 0 0 10px;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
    color: #131313;
    letter-spacing: -.2px;
}

.pkg__title::after {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    margin-top: 8px;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    opacity: .9;
}

/* Destination row as soft strip */
.pkg__destination {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border-radius: 12px;
    background: rgba(0, 0, 0, .03);
    border: 1px solid rgba(0, 0, 0, .06);
    font-size: 13px;
    font-weight: 700;
    color: #4b4b4b;
    margin-bottom: 14px;
}

.pkg__destination svg {
    width: 16px;
    height: 16px;
    color: var(--brand-1);
    flex: 0 0 auto;
}

/* Optional: add a tiny “spark” badge (can remove if you don’t want) */
.pkg__badgeMini {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(181, 65, 39, .14), rgba(170, 53, 17, .10));
    border: 1px solid rgba(181, 65, 39, .16);
    font-size: 12px;
    font-weight: 900;
    color: #2a2a2a;
    margin-top: -2px;
}

/* Make media relative */
.pkg__media {
    position: relative;
}

/* FLOATING META CONTAINER */
.pkg__metaFloat {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    z-index: 3;
}

/* Glass effect chips */
.pkg__duration,
.pkg__ratingPill {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 999px;

    background: rgba(255, 255, 255, .85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);

    border: 1px solid rgba(255, 255, 255, .5);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .25);

    font-size: 13px;
    font-weight: 800;
    color: #222;
}

/* Icons */
.pkg__duration svg {
    width: 15px;
    height: 15px;
    color: var(--brand-1);
}

/* Stars */
.pkg__stars {
    color: #ffb400;
    font-size: 14px;
    letter-spacing: 1px;
}

.pkg__rateTxt {
    font-size: 13px;
    font-weight: 900;
    color: #111;
}

/* ===== CTA EXACT (center OR absolute, real cut look) ===== */
.pkg__cta {
    padding: 0px 14px
}

.pkgbar--pro {
    position: relative;
    height: 56px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-radius: 14px;
    overflow: hidden;

    border: 1px solid rgba(0, 0, 0, .12);
    background: #fff;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .08);
}

/* buttons */
.pkgbar--pro .pkgbtn {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: .2px;
    transition: .2s ease;
}

/* left = light panel (like yellow panel, but your theme) */
.pkgbar--pro .pkgbtn--view {
    color: #2b2b2b;
}

/* right = solid panel (like green panel, your brand) */
.pkgbar--pro .pkgbtn--book {
    color: #fff;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
}

/* OR bubble centered */
.pkgbar--pro .pkgor {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border-radius: 999px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff;
    border: 1px solid rgba(0, 0, 0, .14);
    box-shadow: 0 10px 18px rgba(0, 0, 0, .14);
    font-weight: 900;
    font-size: 13px;
    color: #111;
    z-index: 5;
}


/* left bite */
.pkgbar--pro::before {
    left: calc(50% - 22px);
    background: rgba(181, 65, 39, .10);
}

/* right bite */
.pkgbar--pro::after {
    right: calc(50% - 22px);
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
}

/* hover polish */
.pkgbar--pro .pkgbtn--view:hover {
    filter: brightness(1.03);
    background: rgba(181, 65, 39, .10);
}

.pkgbar--pro .pkgbtn--book:hover {
    filter: brightness(1.06);
    background: #E3A008;
}

.mini {
    margin: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
    font-size: 12.5px;
    color: #6a6a6a;
}

.mini a {
    color: var(--brand-2);
    font-weight: 800;
    text-decoration: none;
}

.mini a:hover {
    text-decoration: underline;
}

/* mobile */
@media (max-width:420px) {
    .pkgbar--pro {
        height: 54px
    }

    .pkgbar--pro .pkgor {
        width: 40px;
        height: 40px
    }
}




/* section */
.mvIntro3 {
    padding: 45px 0 44px;
    background: #fff;
}

/* small top label (simple) */
.mvIntro3__tag {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(23, 21, 20, .55);
}

.mvIntro3__tag::before {
    content: "";
    width: 34px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
}

/* Title with brand “tab” behind a part (unique look) */
.mvIntro3__title {
    margin: 14px 0 14px;
    font-size: 44px;
    line-height: 1.06;
    font-weight: 950;
    letter-spacing: -.9px;
    color: #0f0f0f;
}

.mvIntro3__tab {
    position: relative;
    display: inline-block;
    padding: 0 .18em;
    z-index: 0;
}

.mvIntro3__tab::before {
    content: "";
    position: absolute;
    left: -6px;
    right: -6px;
    bottom: .10em;
    height: .55em;
    border-radius: 10px;
    background: linear-gradient(90deg, rgba(181, 65, 39, .22), rgba(170, 53, 17, .14));
    z-index: -1;
}

/* subline as clean thin gradient underline */
.mvIntro3__underline {
    width: 96px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    margin: 10px 0 18px;
}

.mvIntro3__p {
    margin: 0 0 14px;
    font-size: 16px;
    line-height: 1.95;
    color: rgba(23, 21, 20, .72);
}

/* premium “note” line without box */
.mvIntro3__note {
    margin-top: 18px;
    padding-left: 14px;
    border-left: 3px solid rgba(181, 65, 39, .35);
    color: rgba(23, 21, 20, .70);
    font-size: 14.5px;
    line-height: 1.8;
}

.mvIntro3__note b {
    color: #111
}

@media(max-width:900px) {
    .mvIntro3 {
        padding: 50px 0 36px;
    }

    .mvIntro3__title {
        font-size: 34px;
        max-width: unset;
    }

    .mvIntro3__p {
        font-size: 15px;
    }
}

@media(max-width:520px) {
    .mvIntro3__title {
        font-size: 28px;
    }
}

/* car Rental */
.crp {
    padding: 58px 0;
    background:
        radial-gradient(1000px 380px at 20% -12%, rgba(181, 65, 39, .13), transparent 60%),
        radial-gradient(900px 340px at 85% -10%, rgba(170, 53, 17, .11), transparent 60%),
        #fff;
}

.crp__wrap {
    width: min(1220px, 92%);
    margin: auto;
}

.crp__head {
    text-align: center;
    margin: 0 auto 20px;
    max-width: 900px;
}

.crp__pill {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2);
    font-weight: 900;
    font-size: 12px;
}

.crp__title {
    margin: 10px 0 6px;
    font-size: clamp(24px, 2.5vw, 40px);
    line-height: 1.1;
    letter-spacing: -.6px;
    color: var(--ink);
}

.crp__sub {
    margin: 0 auto;
    color: var(--muted-1);
    font-size: 15px;
    line-height: 1.55;
    max-width: 72ch;
}

.crp__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 18px;
}

/* Card */
.crp__card {
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(181, 65, 39, .18);
    background: #fff;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .06);
    transition: transform .25s ease, box-shadow .25s ease;
}

.crp__card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow);
}

/* Media (compact height) */
.crp__media {
    position: relative;
    display: block;
    height: 190px;
    /* compact */
    background: #f2f2f2;
}

.crp__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform .35s ease;
}

.crp__card:hover .crp__media img {
    transform: scale(1.08);
}

.crp__chip {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(0, 0, 0, .08);
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    color: #2a2a2a;
    backdrop-filter: blur(8px);
}

.crp__rate {
    position: absolute;
    top: 12px;
    right: 12px;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    color: #fff;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 950;
    box-shadow: 0 10px 18px rgba(181, 65, 39, .20);
}

/* Body (tight) */
.crp__body {
    padding: 12px 14px 12px;
}

.crp__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.crp__name {
    margin: 0;
    font-size: 17px;
    letter-spacing: -.2px;
    color: var(--ink);
}

.crp__seat {
    font-size: 12px;
    font-weight: 950;
    color: var(--brand-2);
    background: rgba(181, 65, 39, .07);
    border: 1px solid rgba(181, 65, 39, .16);
    padding: 6px 10px;
    border-radius: 999px;
    white-space: nowrap;
}

.crp__meta {
    margin: 6px 0 10px;
    color: var(--muted-1);
    font-size: 13.4px;
    line-height: 1.45;
}

/* Compact features (2 columns) */
.crp__feat {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.crp__feat span {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    padding: 9px 12px;

    background: #fff;
    border: 1px solid rgba(181, 65, 39, .22);
    border-radius: 14px;

    font-size: 13px;
    font-weight: 700;
    color: #1c1a19;

    box-shadow: 0 8px 18px rgba(0, 0, 0, .04);
}

/* Icon bubble = visible */
.crp__ico {
    width: 28px;
    height: 28px;
    min-width: 28px;
    border-radius: 10px;
    /* modern (not circle) */
    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    color: #fff;

    box-shadow: 0 10px 18px rgba(181, 65, 39, .20);
}

.crp__ico svg {
    width: 16px;
    height: 16px;
    display: block;
}

/* Optional: subtle hover */
.crp__feat span:hover {
    border-color: rgba(181, 65, 39, .35);
    transform: translateY(-1px);
    transition: .2s ease;
}

/* Split CTA (premium + saves height) */
.crp__cta {
    position: relative;
    display: flex;
    border-radius: 999px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .10);
    height: 44px;
}

.crp__ctaL,
.crp__ctaR {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 950;
    font-size: 14px;
}

.crp__ctaL {
    background: #fff;
    color: var(--ink);
}

.crp__ctaL:hover {
    background: rgba(181, 65, 39, 0.247);
}

.crp__ctaR {
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    color: #fff;
}

.crp__or {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .10);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 12px;
    color: #6b6b6b;
    box-shadow: 0 10px 18px rgba(0, 0, 0, .08);
}

/* Mini links (small, no extra height) */
.crp__mini {
    margin-top: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
    font-size: 12.5px;
    color: #6a6a6a;
}

.crp__mini a {
    color: var(--brand-2);
    font-weight: 800;
    text-decoration: none;
}

.crp__mini a:hover {
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 980px) {
    .crp__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .crp {
        padding: 46px 0;
    }

    .crp__grid {
        grid-template-columns: 1fr;
    }

    .crp__media {
        height: 200px;
    }
}


/* slider tour */
.xslider {
    padding-top: 40px;
    background:
        radial-gradient(1000px 420px at 18% -12%, rgba(181, 65, 39, .12), transparent 60%),
        radial-gradient(900px 360px at 86% -10%, rgba(170, 53, 17, .10), transparent 60%),
        #fff;
}

.xslider__wrap {
    width: min(1220px, 92%);
    margin: auto;
}

.xslider__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 20px;
}

.xslider__pill {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .3);
    color: var(--brand-2);
    font-weight: 700;
    font-size: 12px;
}

.xslider__title {
    font-size: 40px;
    margin: 10px 0 6px;
    letter-spacing: -.6px;
}

.xslider__sub {
    color: #666;
}

.xslider__ctrl {
    display: flex;
    gap: 10px;
}

.xslider__nav {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    border: 1px solid #ddd;
    background: #fff;
    font-size: 22px;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .06);
}

.ptc__viewport {
    overflow: hidden;
}

.ptc__track {
    display: flex;
    gap: 22px;
    overflow: auto;
    padding: 10px 4px 16px;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

.ptc__track::-webkit-scrollbar {
    display: none;
}

.ptcCard {
    flex: 0 0 auto;
    width: min(380px, 86vw);
    scroll-snap-align: start;
}

/* Card */
.ptcCard__link {
    position: relative;
    display: block;
    height: 420px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: var(--shadow);
    background: #000;
    transform: translateZ(0);
}

.ptcCard__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform .5s ease;
}

.ptcCard__link:hover .ptcCard__img {
    transform: scale(1.08);
}

/* Overlay gradient */
.ptcCard__link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(0, 0, 0, .05) 0%, rgba(0, 0, 0, .70) 100%);
    pointer-events: none;
}

/* Badge */
.ptcCard__badge {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 6;
    padding: 8px 12px;
    border-radius: 10px;
    font-weight: 950;
    font-size: 13px;
    color: #fff;
    background: #D9467A;
}

/* ✅ Single panel (fixes all hover mess) */
.ptcCard__panel {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 5;

    border-radius: 16px;
    padding: 14px 14px 12px;

    background: linear-gradient(180deg, rgba(10, 10, 10, .18), rgba(10, 10, 10, .84));
    border: 1px solid rgba(255, 255, 255, .14);

    max-height: 86px;
    /* collapsed */
    overflow: hidden;
    transition: max-height .32s ease, background .32s ease;
}

/* Title always stable */
.ptcCard__title {
    margin: 0;
    color: #fff;
    font-weight: 950;
    font-size: 22px;
    line-height: 1.15;
    letter-spacing: -.3px;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    /* prevent layout jump */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Grid reveal */
.ptcCard__hoverGrid {
    margin-top: 12px;

    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    gap: 10px 14px;

    opacity: 0;
    transform: translateY(8px);
    transition: opacity .22s ease, transform .22s ease;
    pointer-events: none;
}

/* Hover expand + reveal */
.ptcCard__link:hover .ptcCard__panel {
    max-height: 210px;
    background: linear-gradient(180deg, rgba(10, 10, 10, .14), rgba(10, 10, 10, .88));
}

.ptcCard__link:hover .ptcCard__hoverGrid {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Left top */
.ptcCard__leftTop {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ptcCard__meta {
    font-weight: 850;
    font-size: 13.5px;
    color: rgba(255, 255, 255, .92);
}

.ptcCard__rating {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
}

.ptcCard__stars {
    color: #fbbf24;
    letter-spacing: 1px;
}

.ptcCard__rev {
    color: rgba(255, 255, 255, .72);
}

/* Right top prices */
.ptcCard__rightTop {
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 4px;
}

.ptcCard__old {
    text-decoration: line-through;
    color: rgba(255, 255, 255, .70);
    font-weight: 850;
    font-size: 13px;
}

.ptcCard__new {
    font-weight: 950;
    font-size: 22px;
    color: #fff;
}

/* Bottom row */
.ptcCard__leftBot {
    align-self: end;
    font-weight: 850;
    font-size: 13px;
    color: rgba(255, 255, 255, .86);
}

.ptcCard__rightBot {
    align-self: end;
    justify-self: end;
}

.ptcCard__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 12px;
    font-weight: 950;
    font-size: 13px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 14px 26px rgba(181, 65, 39, .22);
}

/* See more */
.ptc__more {
    text-align: center;
    margin-top: 10px;
}

.ptc__moreLink {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    font-weight: 950;
    color: #1a1a1a;
    text-decoration: none;
    padding: 10px 14px;
    border-bottom: 2px solid rgba(0, 0, 0, .18);
}

.ptc__moreLink span {
    color: var(--brand-2);
}

/* Responsive */
@media (max-width:560px) {
    .ptcCard__link {
        height: 440px;
    }

    .ptcCard__title {
        font-size: 21px;
    }
}

/* =========================
   MOBILE FIXES (ADD AT END)
========================= */
@media (max-width: 720px) {

    /* 1) Header: remove useless right space */
    .xslider__wrap {
        width: min(1220px, 96%);
        /* a bit wider on mobile */
    }

    .xslider__head {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .xslider__ctrl {
        display: none;
    }

    .xslider__title {
        font-size: 34px;
        /* better wrap */
        line-height: 1.05;
        max-width: 100%;
    }

    .xslider__sub {
        max-width: 46ch;
    }

    /* 2) Cards: show details WITHOUT hover */
    .ptcCard {
        width: 88vw;
        /* bigger card on mobile */
        scroll-snap-align: center;
    }

    .ptc__track {
        padding: 10px 10px 18px;
        /* more breathing */
        scroll-snap-type: x mandatory;
    }

    .ptcCard__link {
        height: 470px;
        /* little taller for details */
    }

    /* panel always expanded on mobile */
    .ptcCard__panel {
        max-height: 260px !important;
        background: linear-gradient(180deg, rgba(10, 10, 10, .12), rgba(10, 10, 10, .90)) !important;
    }

    /* reveal always visible on mobile */
    .ptcCard__hoverGrid {
        opacity: 1 !important;
        transform: none !important;
        pointer-events: auto !important;
    }

    /* disable hover animation on mobile */
    .ptcCard__link:hover .ptcCard__img {
        transform: scale(1.02);
    }

    .ptcCard__link:hover .ptcCard__panel {
        max-height: 260px;
    }

    /* slightly smaller text so it fits clean */
    .ptcCard__title {
        font-size: 20px;
    }

    .ptcCard__new {
        font-size: 20px;
    }
}

/* hotels */
.hxl {
    padding: 64px 0;
    background:
        radial-gradient(1000px 420px at 18% -10%, rgba(181, 65, 39, .12), transparent 60%),
        radial-gradient(900px 360px at 86% -10%, rgba(170, 53, 17, .10), transparent 60%),
        #fff;
}

.hxl__wrap {
    width: min(1220px, 92%);
    margin: auto;
}

.hxl__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.hxl__pill {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .25);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2);
    font-weight: 950;
    font-size: 12px;
}

.hxl__title {
    margin: 10px 0 6px;
    font-size: clamp(26px, 2.6vw, 44px);
    letter-spacing: -.8px;
    line-height: 1.05;
}

.hxl__sub {
    margin: 0;
    color: #6a6a6a;
    font-size: 15px;
    max-width: 60ch;
}

.hxl__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

/* Card */
.hxlCard {
    border-radius: 22px;
    overflow: hidden;
    background: #fff;
    box-shadow: var(--shadow);
    border: 1px solid rgba(0, 0, 0, .06);
    transition: transform .22s ease, box-shadow .22s ease;
}

.hxlCard:hover {
    transform: translateY(-3px);
    box-shadow: 0 34px 90px rgba(0, 0, 0, .18);
}

.hxlCard__media {
    position: relative;
    height: 240px;
}

.hxlCard__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: .5s ease;
}

.hxlCard:hover .hxlCard__img {
    transform: scale(1.08);
}


/* Flag */
.hxlCard__flag {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 8px 12px;
    border-radius: 999px;
    font-weight: 950;
    font-size: 12px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    z-index: 3;
    box-shadow: 0 16px 28px rgba(181, 65, 39, .22);
}

.hxlCard__flag--alt {
    background: linear-gradient(135deg, #1f6feb, #3b82f6);
}

/* Glass strip */
.hxlCard__glass {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    padding: 12px 12px 10px;
    border-radius: 16px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 3;
}

.hxlCard__glassTop {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.hxlCard__name {
    margin: 0;
    font-size: 18px;
    color: #fff;
    font-weight: 950;
    letter-spacing: -.2px;
}

.hxlCard__rate {
    display: flex;
    gap: 6px;
    align-items: center;
    color: #fff;
    font-weight: 900;
    font-size: 13px;
    white-space: nowrap;
}

.hxlStar {
    color: #fbbf24;
}

.hxlCard__rate span:last-child {
    color: rgba(255, 255, 255, .78);
    font-weight: 800;
}

.hxlCard__loc {
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .86);
    font-size: 13px;
    line-height: 1.35;
}

.hxlIco {
    width: 14px;
    height: 14px;
    color: #fff;
    display: inline-flex;
}

.hxlIco svg {
    width: 14px;
    height: 14px;
}

.hxlCard__body {
    padding: 14px 14px 1px;
}

/* Compact amenities (no big pills) */
.hxlCard__amen {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    padding: 4px 2px 14px;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    margin-bottom: 10px;
}

.hxlAmen {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 850;
    color: #222;
}

.hxlAmen svg {
    width: 16px;
    height: 16px;
    color: var(--brand-2);
}


/* Responsive */
@media (max-width: 980px) {
    .hxl__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 620px) {
    .hxl__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .hxl__grid {
        grid-template-columns: 1fr;
    }

    .hxlCard__media {
        height: 260px;
    }
}

/* =========================
   HOTEL CARDS – MOBILE FIX
   (paste at end of CSS)
========================= */
@media (max-width: 620px) {

    /* section padding */
    .hxl {
        padding: 46px 0;
    }

    .hxl__wrap {
        width: min(1220px, 94%);
    }

    /* header stack */
    .hxl__head {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    /* single column */
    .hxl__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    /* card + media */
    .hxlCard {
        border-radius: 20px;
    }

    .hxlCard__media {
        height: 250px;
    }

    /* glass strip: make it tighter and readable */
    .hxlCard__glass {
        left: 12px;
        right: 12px;
        bottom: 12px;
        padding: 10px 10px 9px;
        border-radius: 14px;
    }

    .hxlCard__glassTop {
        gap: 10px;
        align-items: center;
    }

    /* title + rating never overflow */
    .hxlCard__name {
        font-size: 16px;
        line-height: 1.15;

        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .hxlCard__rate {
        font-size: 12px;
        gap: 5px;
        flex: 0 0 auto;
    }

    .hxlCard__loc {
        font-size: 12.5px;
        gap: 7px;
        margin-top: 6px;
    }

    /* body spacing */
    .hxlCard__body {
        padding: 12px 12px 14px;
    }

    /* amenities: allow wrap nicely */
    .hxlCard__amen {
        gap: 8px 12px;
        padding: 4px 0 12px;
    }

    .hxlAmen {
        font-size: 12.5px;
        gap: 7px;
    }

}

/* package slider */
/* =========================
   PKG GRID → SLIDER
   (no class rename)
========================= */

.pkg-grid.pkg-grid--slider {
    display: flex !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.pkg-grid.pkg-grid--slider::-webkit-scrollbar {
    display: none;
}

/* each card snap */
.pkg-grid.pkg-grid--slider>.pkg {
    flex: 0 0 auto;
    scroll-snap-align: start;
}

/* desktop widths (adjust if needed) */
@media (min-width: 991px) {
    .pkg-grid.pkg-grid--slider>.pkg {
        width: 380px;
    }
}

@media (max-width: 990px) {
    .pkg-grid.pkg-grid--slider>.pkg {
        width: min(360px, 86vw);
    }
}

/* why choose us */
.wbu {
    padding: 78px 0;
    background:
        radial-gradient(900px 420px at 18% -10%, rgba(181, 65, 39, .16), transparent 62%),
        radial-gradient(900px 420px at 86% -10%, rgba(170, 53, 17, .12), transparent 60%),
        #fff;
    position: relative;
    overflow: hidden;
}

.wbu__wrap {
    width: min(1220px, 92%);
    margin: auto;
}

/* ✅ PERFECT GRID */
.wbu__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: 28px;
    align-items: start;
}

/* LEFT */
.wbu__left {
    min-width: 0;
}

.wbu__pill {
    display: inline-flex;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2, #aa3511);
    font-weight: 950;
    font-size: 12px;
}

.wbu__title {
    margin: 14px 0 10px;
    font-size: clamp(30px, 3.2vw, 52px);
    line-height: 1.05;
    letter-spacing: -1.1px;
    color: #141212;
}

.wbu__title span {
    background: linear-gradient(135deg, var(--brand-1, #b54127), var(--brand-2, #aa3511));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.wbu__lead {
    margin: 0 0 16px;
    color: #5f5f5f;
    font-size: 16px;
    line-height: 1.75;
    max-width: 64ch;
}

/* ✅ LIST (no overflow, no misalign) */
.wbu__list {
    display: grid;
    gap: 12px;
    position: relative;
    padding-left: 12px;
    max-width: 100%;
}

.wbu__list::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    bottom: 8px;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(181, 65, 39, .0), rgba(181, 65, 39, .55), rgba(170, 53, 17, .0));
}

.wbuItem {
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 12px;
    padding: 14px 14px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .74));
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08), inset 0 1px 0 rgba(255, 255, 255, .55);
    min-width: 0;
}

.wbuItem__ic {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    color: var(--brand-2, #aa3511);
    background:
        radial-gradient(18px 18px at 30% 30%, rgba(255, 255, 255, .95), rgba(255, 255, 255, .72)),
        rgba(181, 65, 39, .08);
    border: 1px solid rgba(181, 65, 39, .18);
    box-shadow: 0 14px 26px rgba(0, 0, 0, .08);
}

.wbuItem__ic svg {
    width: 22px;
    height: 22px;
}

.wbuItem__tx {
    min-width: 0;
}

.wbuItem__tx strong {
    display: block;
    font-size: 15.5px;
    font-weight: 950;
    color: #141212;
    letter-spacing: -.2px;
}

.wbuItem__tx p {
    margin: 6px 0 0;
    color: #606060;
    font-size: 13.9px;
    line-height: 1.6;
}

/* CTA */
.wbu__cta {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.wbuBtn {
    height: 48px;
    padding: 0 18px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 950;
    font-size: 13px;
    letter-spacing: .2px;
    white-space: nowrap;
}

.wbuBtn--ghost {
    background: rgba(255, 255, 255, .92);
    color: #151312;
    border: 1px solid rgba(0, 0, 0, .12);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
}

.wbuBtn--solid {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1, #b54127), var(--brand-2, #aa3511));
    border: 1px solid rgba(255, 255, 255, .10);
    box-shadow: 0 18px 34px rgba(181, 65, 39, .22);
}

.wbu__mini {
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #6a6a6a;
    font-size: 13px;
    flex-wrap: wrap;
}

.wbu__miniDot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--brand-1, #b54127), var(--brand-2, #aa3511));
    box-shadow: 0 10px 18px rgba(181, 65, 39, .22);
}

/* RIGHT */
.wbu__right {
    position: relative;
    min-width: 0;
}

/* ✅ fixed aspect + stable */
.wbu__photo {
    border-radius: 26px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .10);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .18);
    background: #0b0b0b;
    height: 700px;
    /* keeps alignment consistent */
    position: relative;
}

.wbu__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ✅ Responsive */
@media (max-width: 980px) {
    .wbu__grid {
        grid-template-columns: 1fr;
    }

    .wbu__photo {
        height: 420px;
    }
}

@media (max-width: 620px) {
    .wbu {
        padding: 56px 0;
    }

    .wbu__wrap {
        width: min(1220px, 94%);
    }

    .wbu__cta {
        flex-direction: column;
    }

    .wbuBtn {
        width: 100%;
    }


    .wbuItem {
        grid-template-columns: 44px 1fr;
        padding: 12px;
    }
}

/* routes */
/* Section */
.rtIdea {
    padding: 72px 0;
    background: #fff;
}

.rtIdea__wrap {
    width: min(1220px, 92%);
    margin: auto;
}

.rtIdea__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 18px;
}

.rtIdea__left {
    max-width: 72ch;
}

.rtIdea__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    font-weight: 950;
    letter-spacing: .22em;
    font-size: 11px;
    color: #8b2d17;
}

.rtIdea__dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
}

.rtIdea__title {
    margin: 12px 0 8px;
    font-size: clamp(28px, 3.2vw, 46px);
    line-height: 1.06;
    letter-spacing: -1px;
    color: #121110;
}

.rtIdea__title span {
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.rtIdea__sub {
    margin: 0;
    color: #5f5f5f;
    font-size: 15.5px;
    line-height: 1.75;
}

/* Actions */
.rtIdea__actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding-top: 6px;
}

.rtIdeaBtn {
    height: 46px;
    padding: 0 14px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-weight: 950;
    font-size: 13px;
    letter-spacing: .2px;
    white-space: nowrap;
}

.rtIdeaBtn__ic {
    width: 30px;
    height: 30px;
    border-radius: 14px;
    display: grid;
    place-items: center;
}

.rtIdeaBtn__ic svg {
    width: 18px;
    height: 18px;
}

.rtIdeaBtn--solid {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    border: 1px solid rgba(255, 255, 255, .12);
    box-shadow: 0 18px 34px rgba(181, 65, 39, .22);
}

.rtIdeaBtn--solid .rtIdeaBtn__ic {
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .14);
}

.rtIdeaBtn--ghost {
    color: #141212;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .12);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .06);
}

.rtIdeaBtn--ghost .rtIdeaBtn__ic {
    background: rgba(181, 65, 39, .08);
    color: var(--brand-2);
    border: 1px solid rgba(181, 65, 39, .16);
}

/* ✅ Chip grid (like screenshot) */
.rtIdea__grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
}

.rtChip {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 999px;
    text-decoration: none;
    color: #171514;
    font-weight: 850;
    font-size: 13.5px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .12);
    box-shadow: 0 14px 26px rgba(0, 0, 0, .06);
    transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

.rtChip__ar {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-weight: 950;
    color: var(--brand-2);
    background: rgba(181, 65, 39, .08);
    border: 1px solid rgba(181, 65, 39, .14);
}

.rtChip:hover {
    transform: translateY(-2px);
    border-color: rgba(181, 65, 39, .22);
    box-shadow: 0 18px 30px rgba(0, 0, 0, .10);
}

/* Footnote */
.rtIdea__foot {
    margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #6a6a6a;
    font-size: 13px;
}

.rtIdea__info {
    width: 20px;
    height: 20px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-style: normal;
    font-weight: 950;
    color: #151312;
    background: rgba(0, 0, 0, .06);
    border: 1px solid rgba(0, 0, 0, .10);
}

/* Responsive */
@media (max-width: 1100px) {
    .rtIdea__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .rtIdea__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .rtIdea__actions {
        justify-content: flex-start;
        width: 100%;
    }

    .rtIdea__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .rtIdea {
        padding: 56px 0;
    }

    .rtIdea__wrap {
        width: min(1220px, 94%);
    }

    .rtIdeaBtn {
        width: 100%;
        justify-content: center;
    }

    .rtIdea__grid {
        grid-template-columns: 1fr;
    }
}

/* reviews */
/* ================= PREMIUM REVIEWS ================= */
.rev {
    padding: 35px 0;
    position: relative;
    overflow: hidden;
}

.rev-wrap {
    width: min(1220px, 92%);
    margin: auto;
    position: relative;
}

/* subtle premium background accents (VERY light) */
.rev::before,
.rev::after {
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    filter: blur(60px);
    opacity: .12;
    pointer-events: none;
}

.rev::before {
    left: -160px;
    top: -160px;
    background: radial-gradient(circle at 30% 30%, var(--brand-1), transparent 60%);
}

.rev::after {
    right: -180px;
    bottom: -220px;
    background: radial-gradient(circle at 70% 70%, var(--brand-2), transparent 60%);
}

/* Header */
.rev-head {
    text-align: center;
    max-width: 820px;
    margin: 0 auto 56px;
}

.rev-kicker {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .25);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2);
    font-weight: 950;
    font-size: 12px;
}

.rev-title {
    margin: 14px 0 10px;
    font-size: clamp(28px, 3.6vw, 48px);
    line-height: 1.08;
    color: var(--ink);
    letter-spacing: -.8px;
}

.rev-title::after {
    content: "";
    display: block;
    width: 120px;
    height: 4px;
    margin: 16px auto 0;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    opacity: .95;
}

.rev-sub {
    margin: 14px auto 0;
    max-width: 62ch;
    color: #5a5a5a;
    line-height: 1.75;
    font-size: 15px;
}

/* Metrics pills */
.rev-metrics {
    margin-top: 18px;
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.rev-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, .08);
    background: rgba(255, 255, 255, .75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
    color: var(--ink);
    font-size: 13px;
}

.rev-pill__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 0 0 6px rgba(181, 65, 39, .10);
}

.rev-stars {
    letter-spacing: 2px;
    color: var(--brand-1);
    font-size: 13px;
    transform: translateY(-.5px);
}

.rev-pill__muted {
    color: #6a6a6a;
}

.rev-pill--link {
    text-decoration: none;
    border-color: rgba(181, 65, 39, .25);
}

.rev-pill--link:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .10);
}

.rev-arrow {
    margin-left: 2px;
}

.rvx-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

/* Card */
.rvx-card {
    position: relative;
    background: #fff;
    border-radius: 18px;
    padding: 22px 22px 18px;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .10);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    overflow: hidden;
}

/* Top gradient edge (premium) */
.rvx-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
}

/* subtle corner highlight */
.rvx-card::after {
    content: "";
    position: absolute;
    right: -80px;
    top: -80px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, rgba(181, 65, 39, .18), transparent 65%);
    filter: blur(6px);
    opacity: .9;
}

/* hover */
.rvx-card:hover {
    transform: translateY(-8px);
    border-color: rgba(181, 65, 39, .25);
    box-shadow: 0 26px 70px rgba(0, 0, 0, .14);
}

/* featured center card */
.rvx-card.is-featured {
    border-color: rgba(181, 65, 39, .22);
    box-shadow: 0 28px 80px rgba(0, 0, 0, .16);
}

/* Top row */
.rvx-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    position: relative;
    z-index: 1;
    margin-bottom: 14px;
}

.rvx-src {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .03);
    border: 1px solid rgba(0, 0, 0, .06);
    font-size: 12px;
    color: #3d3d3d;
}

.rvx-g {
    width: 22px;
    height: 22px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
}

.rvx-stars {
    color: var(--brand-1);
    letter-spacing: 2px;
    font-size: 13px;
    transform: translateY(-1px);
}

/* Quote */
.rvx-quote {
    position: relative;
    z-index: 1;
    margin: 10px 0 18px;
    color: #3e3e3e;
    line-height: 1.75;
    font-size: 15px;
    padding-left: 21px;
    border-left: 3px solid rgba(181, 65, 39, .30);
}

.rvx-quote::before {
    content: "“";
    position: absolute;
    left: -0.5px;
    top: -28px;
    font-size: 54px;
    font-family: Georgia, serif;
    color: rgba(181, 65, 39, .16);
}

/* Footer */
.rvx-foot {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 12px;
    border-top: 1px dashed rgba(0, 0, 0, .12);
}

.rvx-av {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 14px 30px rgba(181, 65, 39, .20);
}

.rvx-name {
    font-weight: 800;
    color: var(--ink);
    font-size: 14px;
}

.rvx-loc {
    margin-top: 2px;
    font-size: 12.5px;
    color: #6b6b6b;
}

/* Responsive */
@media (max-width: 980px) {
    .rvx-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 620px) {
    .rvx {
        padding: 70px 0;
    }

    .rvx-grid {
        grid-template-columns: 1fr;
    }
}

/* gallery */
/* ================= LUXURY GALLERY ================= */

.galpro {
    padding: 40px 0;
    background: #fff;
}

.galpro-wrap {
    width: min(1220px, 92%);
    margin: auto;
}

/* Header */
.galpro-head {
    text-align: center;
    max-width: 820px;
    margin: 0 auto 70px;
}

.galpro-k {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .25);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2);
    font-weight: 950;
    font-size: 12px;
}

.galpro-h {
    margin: 12px 0;
    font-size: clamp(30px, 3.8vw, 52px);
    line-height: 1.08;
    letter-spacing: -1px;
    color: var(--ink);
}

.galpro-p {
    color: #5b5b5b;
    line-height: 1.75;
}

/* Grid */
.galpro-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: 260px 260px;
    gap: 22px;
}

/* Big image */
.galpro-big {
    grid-row: span 2;
}

/* Item */
.galpro-item {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .14);
    cursor: pointer;
    transition: transform .35s ease, box-shadow .35s ease;
}

.galpro-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
}

.galpro-item:hover img {
    transform: scale(1.08);
}

.galpro-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 40px 100px rgba(0, 0, 0, .18);
}

/* Overlay */
.galpro-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 24px;
    background: linear-gradient(180deg,
            rgba(0, 0, 0, 0) 40%,
            rgba(0, 0, 0, .7) 100%);
    color: #fff;
    font-weight: 600;
    font-size: 16px;
}

/* Responsive */
@media (max-width: 980px) {
    .galpro-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 260px 260px 260px;
    }

    .galpro-big {
        grid-column: span 2;
        grid-row: span 1;
    }
}

@media (max-width: 600px) {
    .galpro-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .galpro-big {
        grid-column: auto;
    }
}

/* footer */
/* ========= Footer CTA strip ========= */
.ftPro__cta {
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    color: #fff;
}

.ftPro__wrap {
    width: min(1200px, 92%);
    margin: auto;
}

.ftPro__ctaIn {
    padding: 26px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
}

.ftPro__ctaKicker {
    margin: 0 0 6px;
    font-weight: 700;
    letter-spacing: .2px;
    opacity: .92;
}

.ftPro__ctaTitle {
    margin: 0;
    font-size: clamp(18px, 2.2vw, 26px);
    font-weight: 900;
    letter-spacing: -.2px;
    line-height: 1.15;
}

.ftPro__ctaBtns {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.ftBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    font-weight: 900;
    text-decoration: none;
    transition: transform .25s ease, filter .25s ease;
    border: 1px solid rgba(255, 255, 255, .22);
}

.ftBtn:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.ftBtn--pri {
    background: #fff;
    color: #1a1a1a;
}

.ftBtn--wa {
    background: rgba(0, 0, 0, .18);
    color: #fff;
}

/* ========= Main footer ========= */
.ftPro__main {
    background:
        radial-gradient(800px 320px at 20% 0%, rgba(181, 65, 39, .18), transparent 65%),
        radial-gradient(800px 320px at 85% 30%, rgba(170, 53, 17, .16), transparent 60%),
        #0f0d0c;
    color: rgba(255, 255, 255, .86);
}

.ftPro__grid {
    padding: 70px 0 44px;
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr 1.05fr;
    gap: 30px;
}

/* Brand */
.ftBrand__logo {
    display: inline-block;
    margin-bottom: 18px;
}

.ftBrand__img {
    height: 75px;
    /* adjust if needed */
    width: auto;
    display: block;
    object-fit: contain;
    filter: brightness(1.05);
    /* makes logo pop on dark bg */
    transition: transform .25s ease;
}

.ftBrand__logo:hover .ftBrand__img {
    transform: scale(1.04);
}


.ftBrand__text {
    margin: 0 0 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, .74);
    max-width: 44ch;
}

.ftTrust {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.ftChip {
    padding: 8px 10px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12px;
    color: rgba(255, 255, 255, .86);
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .10);
}

/* Columns */
.ftCol__title {
    margin: 0 0 14px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, .80);
    font-weight: 900;
}

.ftLink {
    display: block;
    text-decoration: none;
    color: rgba(255, 255, 255, .72);
    padding: 10px 0;
    border-bottom: 1px dashed rgba(255, 255, 255, .10);
    transition: color .2s ease, transform .2s ease;
}

.ftLink:hover {
    color: #fff;
    transform: translateX(3px);
}

/* Contact */
.ftInfo {
    margin: 0 0 12px;
}

.ftInfo__label {
    display: block;
    font-size: 12px;
    letter-spacing: 1px;
    color: rgba(255, 255, 255, .55);
    margin-bottom: 6px;
}

.ftInfo__value {
    color: #fff;
    text-decoration: none;
    font-weight: 800;
}

.ftSocial {
    display: flex;
    gap: 10px;
    margin-top: 14px;
}

.ftSoc {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    text-decoration: none;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .10);
    transition: transform .25s ease, background .25s ease;
}

.ftSoc:hover {
    transform: translateY(-2px);
    background: rgba(181, 65, 39, .20);
}

/* Bottom bar */
.ftPro__bottom {
    border-top: 1px solid rgba(255, 255, 255, .10);
    padding: 18px 0;
}

.ftPro__bottomIn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.ftCopy {
    margin: 0;
    color: rgba(255, 255, 255, .62);
}

.ftMini {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ftMini__link {
    color: rgba(255, 255, 255, .70);
    text-decoration: none;
    font-weight: 800;
}

.ftMini__link:hover {
    color: #fff;
}

.ftMini__dot {
    color: rgba(255, 255, 255, .35);
}

/* Responsive */
@media (max-width: 980px) {
    .ftPro__grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 560px) {
    .ftPro__ctaIn {
        padding: 22px 0;
    }

    .ftPro__grid {
        grid-template-columns: 1fr;
        padding: 55px 0 34px;
    }
}

/* About us Page */
.wrap {
    width: min(1120px, 92%);
    margin: auto;
}

/* ================= HERO ================= */
.ab2Hero {
    position: relative;
    padding: 96px 0 56px;
    overflow: hidden;
    background: #0f0d0c;
    color: #fff;
}

.ab2Hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: .95;
}

.ab2Hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: contrast(1.03) saturate(1.02);
    transform: scale(1.03);
}

.ab2Hero__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(15, 13, 12, .92) 0%, rgba(15, 13, 12, .72) 45%, rgba(15, 13, 12, .35) 70%, rgba(15, 13, 12, .78) 100%),
        radial-gradient(650px 380px at 18% 30%, rgba(181, 65, 39, .22), transparent 60%),
        radial-gradient(650px 380px at 72% 60%, rgba(170, 53, 17, .16), transparent 60%);
}

.ab2Hero__in {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 28px;
    align-items: end;
}

.ab2Kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .86);
}

.ab2Kicker::before {
    content: "";
    width: 34px;
    height: 2px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    border-radius: 999px;
}

.ab2Title {
    margin: 14px 0 12px;
    font-size: clamp(34px, 4.6vw, 64px);
    line-height: 1.02;
    letter-spacing: -1px;
    font-weight: 1000;
    max-width: 20ch;
}

.ab2Text {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    line-height: 1.85;
    font-size: 16px;
    max-width: 62ch;
}

.ab2Actions {
    margin-top: 18px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 14px;
    font-weight: 900;
    border: 1px solid transparent;
    transition: transform .2s ease, filter .2s ease;
}

.btn:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.btn--pri {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 45px rgba(181, 65, 39, .22);
}

.btn--ghost {
    color: #fff;
    background: rgba(255, 255, 255, .10);
    border-color: rgba(255, 255, 255, .18);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* Responsive */
@media (max-width: 980px) {
    .ab2Hero__in {
        grid-template-columns: 1fr;
    }

    .split {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .ab2Hero {
        padding: 78px 0 44px;
    }

    .sec {
        padding: 62px 0;
    }

    .ab2Title {
        letter-spacing: -.7px;
    }
}

.abPage {
    padding-top: 40px;
    background:
        radial-gradient(900px 360px at 12% 10%, rgba(181, 65, 39, .10), transparent 65%),
        radial-gradient(900px 360px at 88% 85%, rgba(170, 53, 17, .08), transparent 65%),
        #fff;
}

.abPage__top {
    text-align: left;
    margin: 0 auto 34px;
}

.abPage__kicker {
    display: inline-flex;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2, #aa3511);
    font-weight: 950;
    font-size: 12px;
}

.abPage__title {
    margin: 12px 0 10px;
    font-size: clamp(32px, 4vw, 56px);
    line-height: 1.06;
    font-weight: 1000;
    letter-spacing: -.8px;
    color: var(--ink);
}

.abPage__lead {
    margin: 0;
    color: var(--muted-1);
    font-size: 16px;
    line-height: 1.8;
}

/* Story layout (proper about page feel) */
.abPage__story {
    display: grid;
    grid-template-columns: 1.12fr .88fr;
    gap: 18px;
    align-items: stretch;
}

.abPage__card {
    border: 1px solid var(--line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    padding: 22px;
}

.abPage__h2 {
    margin: 0 0 10px;
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

.abPage__p {
    margin: 0 0 10px;
    color: rgba(23, 21, 20, .72);
    line-height: 1.85;
    font-size: 15.5px;
}

.abPage__bullets {
    margin-top: 14px;
    display: grid;
    gap: 10px;
}

.abPoint {
    padding: 14px 14px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(181, 65, 39, .05), rgba(170, 53, 17, .02));
}

.abPoint strong {
    display: block;
    font-size: 14px;
    font-weight: 1000;
    margin-bottom: 6px;
    color: rgba(23, 21, 20, .88);
}

.abPoint span {
    display: block;
    font-size: 13.5px;
    line-height: 1.7;
    color: rgba(23, 21, 20, .64);
}

/* Media panel */
.abPage__media {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid var(--line);
    box-shadow: 0 18px 55px rgba(0, 0, 0, .10);
    background: #f2f0ee;
}

.abPage__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.02);
}

.abPage__mediaCap {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    color: #fff;
}

.abCap__chip {
    display: inline-flex;
    padding: 8px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    background: rgba(181, 65, 39, .22);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    margin-bottom: 8px;
}

.abPage__mediaCap strong {
    display: block;
    font-size: 16px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

/* Stats */
.abPage__stats {
    margin-top: 16px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.abStat {
    padding: 14px 14px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 16px 45px rgba(0, 0, 0, .06);
    text-align: left;
}

.abStat strong {
    display: block;
    font-size: 20px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

.abStat span {
    display: block;
    margin-top: 5px;
    font-size: 12.5px;
    color: rgba(23, 21, 20, .60);
    font-weight: 800;
}

/* CTA */
.abPage__cta {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    padding: 18px 18px;
    border-radius: 22px;
    border: 1px solid rgba(181, 65, 39, .18);
    background: linear-gradient(135deg, rgba(181, 65, 39, .06), rgba(170, 53, 17, .04));
}

.abPage__cta h3 {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

.abPage__cta p {
    margin: 0;
    color: rgba(23, 21, 20, .64);
    line-height: 1.7;
    font-size: 14px;
}

.abPage__ctaBtns {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.abBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    font-weight: 1000;
    border: 1px solid transparent;
    transition: transform .2s ease, filter .2s ease;
    text-decoration: none;
}

.abBtn:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.abBtn--pri {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 45px rgba(181, 65, 39, .20);
}

.abBtn--ghost {
    color: rgba(23, 21, 20, .86);
    background: #fff;
    border-color: var(--line);
}

/* Responsive */
@media (max-width: 980px) {
    .abPage__story {
        grid-template-columns: 1fr;
    }

    .abPage__stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .abPage__media {
        min-height: 260px;
    }
}

@media (max-width: 520px) {
    .abPage__stats {
        grid-template-columns: 1fr;
    }
}

.jChap {
    padding: 90px 0;
}

.jChap__head {
    text-align: center;
    margin: 0 auto 34px;
}

.jChap__kicker {
    display: inline-flex;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2, #aa3511);
    font-weight: 950;
    font-size: 12px;
}

.jChap__title {
    margin: 12px 0 10px;
    font-size: clamp(28px, 3.6vw, 46px);
    line-height: 1.08;
    letter-spacing: -.6px;
    font-weight: 1000;
    color: var(--ink-1);
}

.jChap__sub {
    margin: 0;
    color: var(--muted);
    font-size: 16px;
    line-height: 1.8;
}

/* Chapters grid (modern magazine feel) */
.jChap__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.jC {
    border-radius: 22px;
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    padding: 18px 18px 16px;
    position: relative;
    overflow: hidden;
}

.jC::before {
    content: "";
    position: absolute;
    inset: -1px;
    background:
        radial-gradient(340px 170px at 18% 12%, rgba(181, 65, 39, .10), transparent 60%),
        radial-gradient(340px 170px at 86% 92%, rgba(170, 53, 17, .08), transparent 60%);
    pointer-events: none;
}

/* wide last card */
.jC--wide {
    grid-column: 1 / -1;
    padding: 20px;
}

.jC__top {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}

.jC__no {
    width: 40px;
    height: 40px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    font-weight: 1000;
    letter-spacing: -.2px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 16px 40px rgba(181, 65, 39, .18);
}

.jC__cap strong {
    display: block;
    font-size: 13px;
    font-weight: 1000;
    letter-spacing: -.1px;
    color: rgba(23, 21, 20, .88);
}

.jC__cap span {
    display: block;
    font-size: 12px;
    color: rgba(23, 21, 20, .55);
    font-weight: 800;
    margin-top: 2px;
}

.jC__title {
    position: relative;
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 1000;
    letter-spacing: -.2px;
    color: rgba(23, 21, 20, .92);
}

.jC__text {
    position: relative;
    margin: 0;
    color: rgba(23, 21, 20, .68);
    line-height: 1.85;
    font-size: 14px;
}

.jC__tags {
    position: relative;
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.jTag {
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-weight: 900;
    font-size: 12px;
    color: rgba(23, 21, 20, .72);
}

/* CTA inside wide card */
.jC__cta {
    position: relative;
    margin-top: 14px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.jBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    font-weight: 1000;
    text-decoration: none;
    border: 1px solid transparent;
    transition: transform .2s ease, filter .2s ease;
}

.jBtn:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.jBtn--pri {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 45px rgba(181, 65, 39, .20);
}

.jBtn--ghost {
    color: rgba(23, 21, 20, .86);
    background: #fff;
    border-color: var(--line);
}

/* Bottom line */
.jChap__line {
    margin-top: 14px;
    border: 1px solid rgba(181, 65, 39, .18);
    background: linear-gradient(135deg, rgba(181, 65, 39, .06), rgba(170, 53, 17, .04));
    border-radius: 18px;
    padding: 14px 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.jChap__line strong {
    font-weight: 1000;
}

.jChap__line span {
    color: rgba(23, 21, 20, .64);
    font-weight: 800;
}

/* Responsive */
@media (max-width: 980px) {
    .jChap__grid {
        grid-template-columns: 1fr;
    }

    .jC--wide {
        grid-column: auto;
    }
}

/* faq */
/* section */
.faqEd {
    padding: 30px 0;
}

.faqEd__wrap {
    width: min(1120px, 92%);
    margin: auto;
}

/* header */
.faqEd__top {
    text-align: center;
    max-width: 860px;
    margin: 0 auto 30px;
}

.faqEd__kicker {
    display: inline-flex;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(181, 65, 39, .22);
    background: rgba(181, 65, 39, .06);
    color: var(--brand-2, #aa3511);
    font-weight: 950;
    font-size: 12px;
}

.faqEd__title {
    margin: 12px 0 10px;
    font-size: clamp(28px, 3.6vw, 46px);
    line-height: 1.08;
    letter-spacing: -.6px;
    font-weight: 1000;
    color: var(--ink);
}

.faqEd__sub {
    margin: 0;
    color: var(--muted);
    font-size: 16px;
    line-height: 1.8;
}

/* layout */
.faqEd__layout {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 14px;
    align-items: start;
}

/* left panel */
.faqEd__panel {
    border-radius: 22px;
    border: 1px solid rgba(181, 65, 39, .18);
    background: linear-gradient(135deg, rgba(181, 65, 39, .08), rgba(170, 53, 17, .04));
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    overflow: hidden;
}

.faqEd__panelIn {
    padding: 18px;
}

.faqEd__panelTitle {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

.faqEd__panelText {
    margin: 0;
    color: rgba(23, 21, 20, .70);
    line-height: 1.85;
    font-size: 14.5px;
}

.faqEd__chips {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.faqChip {
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid rgba(23, 21, 20, .10);
    background: rgba(255, 255, 255, .78);
    font-weight: 900;
    font-size: 12px;
    color: rgba(23, 21, 20, .74);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.faqEd__panelBtns {
    margin-top: 14px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.faqB {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    font-weight: 1000;
    text-decoration: none;
    border: 1px solid transparent;
    transition: transform .2s ease, filter .2s ease;
}

.faqB:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.faqB--pri {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 45px rgba(181, 65, 39, .20);
}

.faqB--ghost {
    color: rgba(23, 21, 20, .86);
    background: #fff;
    border-color: rgba(23, 21, 20, .12);
}

.faqEd__mini {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid rgba(23, 21, 20, .10);
    display: flex;
    gap: 8px;
    align-items: baseline;
}

.faqEd__mini strong {
    font-weight: 1000;
}

.faqEd__mini span {
    color: rgba(23, 21, 20, .64);
    font-weight: 800;
    font-size: 13px;
    line-height: 1.6;
}

/* accordion (clean, premium) */
.faqEd__acc {
    border-radius: 22px;
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    overflow: hidden;
}

.faqA {
    border-top: 1px solid var(--line);
    padding: 0;
}

.faqA:first-child {
    border-top: 0;
}

.faqA__q {
    list-style: none;
    cursor: pointer;
    padding: 16px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-weight: 1000;
    color: rgba(23, 21, 20, .90);
}

.faqA__q::-webkit-details-marker {
    display: none;
}

.faqA__plus {
    width: 42px;
    height: 42px;
    border-radius: 16px;
    border: 1px solid rgba(23, 21, 20, .10);
    background: rgba(181, 65, 39, .06);
    position: relative;
    flex: 0 0 auto;
}

.faqA__plus::before,
.faqA__plus::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 16px;
    height: 2px;
    background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
    transform: translate(-50%, -50%);
    border-radius: 999px;
}

.faqA__plus::after {
    width: 2px;
    height: 16px;
}

details[open] .faqA__plus::after {
    height: 0;
    /* turns into minus */
}

.faqA__a {
    padding: 0 16px 16px;
    color: rgba(23, 21, 20, .70);
    line-height: 1.85;
    font-size: 14.5px;
}

/* responsive */
@media (max-width: 980px) {
    .faqEd__layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .faqEd {
        padding: 70px 0;
    }
}

/* contact us page */
/* ====== HERO ====== */
.cHero {
    padding: 50px 0 26px;
}

.cHero__top {
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
}

.cHero__kicker {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 3px;
    font-weight: 900;
    text-transform: uppercase;
    color: var(--brand-1);
}

.cHero__title {
    margin: 12px 0 10px;
    font-size: clamp(32px, 4.2vw, 60px);
    line-height: 1.06;
    letter-spacing: -.8px;
    font-weight: 1000;
}

.cHero__sub {
    margin: 0;
    color: var(--muted-1);
    line-height: 1.85;
    font-size: 16px;
}

/* ====== QUICK STRIP ====== */
.cStrip {
    margin-top: 18px;
    border-radius: 22px;
    border: 1px solid rgba(181, 65, 39, .18);
    background: linear-gradient(135deg, rgba(181, 65, 39, .07), rgba(170, 53, 17, .04));
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    padding: 12px;
}

.cStrip__row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.cPill {
    border-radius: 18px;
    border: 1px solid rgba(23, 21, 20, .10);
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 12px 12px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.cDot {
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 0 0 7px rgba(181, 65, 39, .10);
    margin-top: 6px;
    flex: 0 0 auto;
}

.cPill strong {
    display: block;
    font-weight: 1000;
    font-size: 13px;
    margin-bottom: 2px;
}

.cPill span {
    display: block;
    color: rgba(23, 21, 20, .66);
    font-weight: 700;
    font-size: 12.8px;
    line-height: 1.6;
}

/* ====== MAIN LAYOUT ====== */
.cMain {
    padding: 22px 0 90px;
}

.cGrid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 14px;
    align-items: start;
}

.card {
    border-radius: 22px;
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .08);
    overflow: hidden;
    position: relative;
}

.card::before {
    content: "";
    position: absolute;
    inset: -1px;
    background:
        radial-gradient(420px 190px at 12% 18%, rgba(181, 65, 39, .10), transparent 60%),
        radial-gradient(420px 190px at 90% 90%, rgba(170, 53, 17, .08), transparent 60%);
    pointer-events: none;
}

.card__in {
    position: relative;
    padding: 18px;
}

.card__h {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 1000;
    letter-spacing: -.2px;
}

.card__p {
    margin: 0 0 14px;
    color: rgba(23, 21, 20, .68);
    line-height: 1.8;
    font-size: 14.5px;
}

/* ====== FORM ====== */
.form {
    display: grid;
    gap: 10px;
}

.row2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

label {
    display: block;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .2px;
    color: rgba(23, 21, 20, .72);
    margin: 0 0 6px;
}

input,
select,
textarea {
    width: 100%;
    border-radius: 16px;
    border: 1px solid rgba(23, 21, 20, .12);
    padding: 12px 12px;
    font: inherit;
    outline: none;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

textarea {
    min-height: 120px;
    resize: vertical;
}

input:focus,
select:focus,
textarea:focus {
    border-color: rgba(181, 65, 39, .40);
    box-shadow: 0 0 0 6px rgba(181, 65, 39, .10);
}

.form__bar {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-top: 2px;
}

.note {
    color: rgba(23, 21, 20, .60);
    font-size: 12.6px;
    font-weight: 700;
    line-height: 1.6;
}

.btns {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    font-weight: 1000;
    border: 1px solid transparent;
    cursor: pointer;
    transition: transform .2s ease, filter .2s ease;
    text-decoration: none;
    user-select: none;
}

.btn:hover {
    transform: translateY(-2px);
    filter: saturate(1.06);
}

.btn--pri {
    color: #fff;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 18px 45px rgba(181, 65, 39, .20);
}

.btn--ghost {
    color: rgba(23, 21, 20, .86);
    background: #fff;
    border-color: rgba(23, 21, 20, .12);
}

/* ====== CONTACT BOX ====== */
.cInfo {
    display: grid;
    gap: 10px;
}

.infoRow {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 12px;
    border-radius: 18px;
    border: 1px solid rgba(23, 21, 20, .10);
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.infoRow strong {
    display: block;
    font-weight: 1000;
    font-size: 13px;
    margin-bottom: 2px;
}

.infoRow span,
.infoRow a {
    display: block;
    color: rgba(23, 21, 20, .70);
    font-weight: 700;
    font-size: 13px;
    line-height: 1.6;
}

.map {
    height: 310px;
    border-top: 1px solid rgba(23, 21, 20, .10);
    position: relative;
    background: #f2f0ee;
}

.map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
    filter: saturate(1.05) contrast(1.02);
}

/* ====== SUCCESS TOAST ====== */
.toast {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%) translateY(18px);
    opacity: 0;
    pointer-events: none;
    transition: .25s ease;
    z-index: 9999;
    width: min(520px, 92%);
}

.toast.is-on {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.toast__in {
    border-radius: 18px;
    border: 1px solid rgba(23, 21, 20, .12);
    background: #fff;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .18);
    padding: 12px 14px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.toast__dot {
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    box-shadow: 0 0 0 7px rgba(181, 65, 39, .10);
    margin-top: 6px;
    flex: 0 0 auto;
}

.toast__in strong {
    display: block;
    font-weight: 1000;
}

.toast__in span {
    display: block;
    color: rgba(23, 21, 20, .66);
    font-weight: 700;
    font-size: 13px;
    line-height: 1.6;
}

/* responsive */
@media (max-width: 980px) {
    .cStrip__row {
        grid-template-columns: 1fr;
    }

    .cGrid {
        grid-template-columns: 1fr;
    }

    .row2 {
        grid-template-columns: 1fr;
    }

    .map {
        height: 280px;
    }

    .cMain {
        padding-bottom: 70px;
    }
}

/* pop up form */
/* Overlay */
.pop {
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 18px;
    background: rgba(0, 0, 0, .55);
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease;
    z-index: 9999;
}

.pop.is-open {
    opacity: 1;
    pointer-events: auto;
}

/* Modal */
.pop__modal {
    width: min(920px, 100%);
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid var(--stroke);
    box-shadow: var(--shadow);
    transform: translateY(10px) scale(.98);
    transition: transform .22s ease;
    background: #fff;
}

.pop.is-open .pop__modal {
    transform: translateY(0) scale(1);
}

/* Left visual panel */
.pop__side {
    position: relative;
    padding: 26px 26px 22px;
    color: #fff;
    background:
        radial-gradient(900px 340px at 10% 15%, rgba(227, 160, 8, .35), transparent 55%),
        radial-gradient(700px 380px at 80% 35%, rgba(217, 70, 122, .35), transparent 55%),
        linear-gradient(135deg, rgba(10, 14, 22, .96), rgba(10, 14, 22, .86));
}

.pop__side::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(227, 160, 8, .18), rgba(217, 70, 122, .16));
    pointer-events: none;
}

.pop__side>* {
    position: relative;
    z-index: 1;
}

.pop__badge {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .45rem .7rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .08);
    color: var(--muted);
    font: 600 12px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    letter-spacing: .2px;
}

.pop__badge i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
}

.pop__title {
    margin: 14px 0 8px;
    font: 800 clamp(22px, 2.2vw, 30px)/1.1 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    letter-spacing: -.4px;
}

.pop__text {
    margin: 0;
    color: var(--muted);
    font: 500 14px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    max-width: 46ch;
}

.pop__points {
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}

.pop__points li {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: rgba(255, 255, 255, .86);
    font: 600 13px/1.45 system-ui, -apple-system, Segoe UI, Roboto, Arial;
}

.pop__points .tick {
    width: 22px;
    height: 22px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .14);
    flex: 0 0 auto;
}

.pop__points svg {
    width: 14px;
    height: 14px;
}

/* Right form panel */
.pop__formWrap {
    padding: 22px 22px 18px;
    background:
        radial-gradient(600px 260px at 20% 0%, rgba(227, 160, 8, .10), transparent 55%),
        radial-gradient(520px 320px at 90% 15%, rgba(217, 70, 122, .10), transparent 55%),
        #fff;
}

.pop__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.pop__h {
    margin: 0;
    font: 800 16px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: var(--ink);
    letter-spacing: -.2px;
}

.pop__sub {
    margin: 6px 0 0;
    font: 500 13px/1.45 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: var(--muted-1);
}

.pop__close {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: #fff;
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: .2s ease;
}

.pop__close:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .10);
}

.pop__close svg {
    width: 18px;
    height: 18px;
}

.pop__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.pop__field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.pop__field--full {
    grid-column: 1 / -1;
}

.pop__label {
    font: 700 12px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: rgba(23, 21, 20, .85);
    letter-spacing: .2px;
}

.pop__input,
.pop__select,
.pop__textarea {
    width: 100%;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: #fff;
    padding: 12px 12px;
    font: 600 14px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: var(--ink);
    outline: none;
    transition: .18s ease;
}

.pop__textarea {
    min-height: 96px;
    resize: vertical;
    padding-top: 12px;
    line-height: 1.45;
}

.pop__input:focus,
.pop__select:focus,
.pop__textarea:focus {
    border-color: rgba(217, 70, 122, .55);
    box-shadow: 0 0 0 5px rgba(217, 70, 122, .12);
}

.pop__actions {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    margin-top: 12px;
}

.pop__note {
    font: 600 12px/1.35 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: var(--muted-1);
}

.pop__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, .14);
    color: #141314;
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    font: 800 14px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    cursor: pointer;
    box-shadow: 0 16px 34px rgba(217, 70, 122, .20);
    transition: .2s ease;
    min-width: 170px;
}

.pop__submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 22px 50px rgba(217, 70, 122, .26);
}

.pop__submit:active {
    transform: translateY(0);
}

.pop__submit svg {
    width: 18px;
    height: 18px;
}

/* Responsive */
@media (max-width: 860px) {
    .pop__modal {
        grid-template-columns: 1fr;
    }

    .pop__side {
        padding: 22px 18px 18px;
    }

    .pop__formWrap {
        padding: 18px;
    }

    .pop__grid {
        grid-template-columns: 1fr;
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {

    .pop,
    .pop__modal,
    .pop-btn {
        transition: none !important;
    }
}

/* ✅ MOBILE FIX: form always scrollable + submit visible */
@media (max-width: 860px) {

    /* Make modal take full available height */
    .pop__modal {
        display: flex;
        flex-direction: column;
        height: calc(100dvh - 28px);
        /* popup padding included */
        max-height: calc(100dvh - 28px);
        overflow: hidden;
        /* keep rounded corners clean */
    }

    /* Compact top info strip (side panel) */
    .pop__side {
        flex: 0 0 auto;
        max-height: 34vh;
        /* ✅ limit so form gets space */
        overflow: auto;
        /* if content more, scroll here */
        -webkit-overflow-scrolling: touch;
        padding: 16px 16px 14px;
    }

    /* ✅ Form area must fill remaining height and scroll */
    .pop__formWrap {
        flex: 1 1 auto;
        min-height: 0;
        /* ✅ REQUIRED for flex scroll */
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        padding: 16px;
    }

    /* Sticky header inside form */
    .pop__top {
        position: sticky;
        top: 0;
        z-index: 10;
        background: inherit;
        padding-top: 6px;
        padding-bottom: 10px;
    }
}

/* Extra small: make submit full width */
@media (max-width: 420px) {
    .pop__actions {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .pop__submit {
        width: 100%;
        min-width: 0;
    }
}

/* float button */
.fxDock {
    position: fixed;
    bottom: 18px;
    left: 18px;
    right: 18px;
    z-index: 999999 !important;
    pointer-events: none;
}

.fxDock__left {
    position: fixed;
    left: 18px;
    bottom: 18px;
    pointer-events: none;
}

.fxDock__right {
    position: fixed;
    right: 18px;
    bottom: 18px;
    pointer-events: none;
}

.fxDock__left,
.fxDock__right {
    position: fixed !important;
    bottom: 20px;
    z-index: 999999 !important;
    /* 🔥 force top layer */
}

.fxFab {
    pointer-events: auto;
    width: 56px;
    height: 56px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    text-decoration: none;
    border: 1px solid rgba(255, 255, 255, .16);
    box-shadow: var(--shadow);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: .18s ease;
    position: relative;
    overflow: hidden;
}

.fxFab:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow2);
}

.fxFab:active {
    transform: translateY(0);
}

.fxFab::after {
    content: "";
    position: absolute;
    inset: -2px;
    background: radial-gradient(120px 80px at 25% 25%, rgba(255, 255, 255, .28), transparent 60%);
    pointer-events: none;
}

.fxFab svg {
    width: 22px;
    height: 22px;
    display: block;
    position: relative;
    z-index: 1;
}

/* CALL (left) */
.fxFab--call {
    background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
    color: #ffffff;
}

.fxFab--call .fxRing {
    position: absolute;
    inset: -12px;
    background: radial-gradient(circle, rgba(227, 160, 8, .28), transparent 60%);
    pointer-events: none;
}

/* WHATSAPP (right) */
.fxFab--wa {
    background:
        linear-gradient(135deg, rgba(10, 14, 22, .92), rgba(10, 14, 22, .72)),
        linear-gradient(135deg, var(--brand-1), var(--brand-2));
    color: #fff;
}

.fxFab--wa .fxRing {
    position: absolute;
    inset: -12px;
    background: radial-gradient(circle, rgba(217, 70, 122, .25), transparent 60%);
    pointer-events: none;
}

/* Tiny label (desktop hover) */
.fxTip {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(10, 14, 22, .86);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 12px;
    padding: 8px 10px;
    font: 800 12px/1.1 system-ui, -apple-system, Segoe UI, Roboto, Arial;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: .18s ease;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .22);
}

.fxDock__left .fxTip {
    left: 66px;
}

.fxDock__right .fxTip {
    right: 66px;
}

.fxFab:hover .fxTip {
    opacity: 1;
}

@media (max-width:480px) {
    .fxDock__left {
        left: 12px;
        bottom: 12px;
    }

    .fxDock__right {
        right: 12px;
        bottom: 12px;
    }

    .fxFab {
        width: 52px;
        height: 52px;
    }

    .fxTip {
        display: none;
    }
}