:root {
    --thexp-navy:#0b132b;
    --thexp-text:#111827;
    --thexp-muted:#667085;
    --thexp-border:#e7e3dc;
    --thexp-soft:#faf9f7;
}

.thexp-page {
    font-family:Poppins,Arial,sans-serif;
    color:var(--thexp-text);
    background:#fff;
}

.thexp-page h1,
.thexp-page h2,
.thexp-page h3,
.thexp-price,
.thexp-total-box strong,
.thexp-submit,
.thexp-mobile-bar a {
    font-family:Montserrat,Poppins,Arial,sans-serif;
}

.thexp-container {
    width:min(1180px, calc(100% - 48px));
    margin:0 auto;
}

.thexp-hero-frame {
    width:100%;
    height:500px;
    overflow:hidden;
    background:#f5f5f3;
}

.thexp-hero-frame img,
.thexp-hero-img {
    width:100% !important;
    height:100% !important;
    display:block;
    object-fit:cover !important;
    object-position:center center;
}

.thexp-main {
    padding:56px 0 82px;
}

.thexp-layout {
    display:grid;
    grid-template-columns:minmax(0, 1fr) 390px;
    gap:56px;
    align-items:start;
}

.thexp-sidebar {
    align-self:start;
    position:sticky !important;
    position:-webkit-sticky !important;
    top:96px !important;
    height:fit-content;
    z-index:4;
}

.thexp-title-block {
    margin-bottom:32px;
}

.thexp-kicker {
    display:inline-flex;
    margin-bottom:14px;
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#6b7280;
}

.thexp-title-block h1 {
    color:var(--thexp-navy);
    font-size:42px;
    font-weight:500;
    line-height:1.12;
    letter-spacing:-.03em;
    margin:0 0 14px;
}

.thexp-title-block p {
    color:#475467;
    font-size:16px;
    line-height:1.7;
    max-width:720px;
    margin:0;
}

.thexp-quick-facts {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    border:1px solid var(--thexp-border);
    margin-bottom:42px;
}

.thexp-fact {
    padding:17px 18px;
    border-right:1px solid var(--thexp-border);
}

.thexp-fact:last-child { border-right:0; }

.thexp-fact span {
    display:block;
    color:#667085;
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:5px;
}

.thexp-fact strong {
    display:block;
    color:var(--thexp-navy);
    font-size:13px;
    font-weight:500;
}

.thexp-section {
    margin-bottom:56px;
}

.thexp-section h2 {
    font-size:28px;
    font-weight:500;
    letter-spacing:-.02em;
    line-height:1.18;
    color:var(--thexp-navy);
    margin:0 0 18px;
}

.thexp-overview,
.thexp-rich-content {
    font-size:15px;
    line-height:1.9;
    color:#3f4a5f;
    max-width:780px;
}

.thexp-highlights {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px 24px;
}

.thexp-highlight {
    display:flex;
    align-items:center;
    gap:10px;
    padding:5px 0;
}

.thexp-highlight-icon {
    width:16px;
    height:16px;
    min-width:16px;
    border:1px solid #b9b2a8;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--thexp-navy);
    font-size:10px;
}

.thexp-highlight strong {
    font-size:13px;
    font-weight:400;
    letter-spacing:.01em;
    color:#344054;
}

.thexp-stops {
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
}

.thexp-stop {
    display:grid;
    grid-template-columns:260px minmax(0, 1fr);
    border:1px solid var(--thexp-border);
    background:#fff;
    min-height:190px;
}

.thexp-stop img {
    width:100%;
    height:100%;
    min-height:190px;
    object-fit:cover;
    display:block;
}

.thexp-stop-body {
    padding:26px 28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.thexp-stop h3 {
    margin:0 0 11px;
    color:var(--thexp-navy);
    font-size:18px;
    font-weight:500;
    letter-spacing:-.01em;
    text-transform:none;
}

.thexp-stop p {
    margin:0;
    color:#475467;
    line-height:1.75;
    font-size:14px;
}

.thexp-gallery {
    display:grid;
    grid-template-columns:1.35fr 1fr 1fr;
    gap:14px;
}

.thexp-gallery img {
    width:100%;
    height:210px;
    object-fit:cover;
    display:block;
}

.thexp-gallery img:first-child {
    grid-row:span 2;
    height:434px;
}

.thexp-inc-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
}

.thexp-list-box {
    border:1px solid var(--thexp-border);
    padding:26px;
}

.thexp-list-box h3 {
    margin:0 0 18px;
    color:var(--thexp-navy);
    font-size:18px;
    font-weight:500;
}

.thexp-list-box ul {
    list-style:none;
    padding:0;
    margin:0;
}

.thexp-list-box li {
    padding:8px 0;
    color:#344054;
    font-size:14px;
}

.thexp-map iframe {
    width:100%;
    min-height:360px;
    border:0;
    display:block;
}

.thexp-booking-card {
    position:sticky !important;
    position:-webkit-sticky !important;
    top:96px !important;
    border:1px solid var(--thexp-border);
    background:#fff;
    padding:28px;
    height:fit-content;
    z-index:5;
}

.thexp-price {
    color:var(--thexp-navy);
    font-size:27px;
    font-weight:500;
    letter-spacing:-.02em;
    margin-bottom:8px;
}

.thexp-price-breakdown {
    color:#667085;
    font-size:13px;
    line-height:1.65;
    font-weight:400;
    margin:0 0 8px;
}

.thexp-price-note {
    color:#667085;
    margin-bottom:20px;
    font-size:13px;
    line-height:1.65;
    font-weight:400;
}

.thexp-booking-form {
    display:grid;
    gap:13px;
}

.thexp-form-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.thexp-field label {
    display:block;
    font-size:12px;
    font-weight:500;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:#475467;
    margin-bottom:7px;
}

.thexp-field input,
.thexp-field select,
.thexp-field textarea {
    width:100%;
    border:1px solid var(--thexp-border);
    background:#fff;
    padding:11px 12px;
    font-size:14px;
    border-radius:0;
    color:#111827;
    font-family:Poppins,Arial,sans-serif;
}

.thexp-field textarea {
    min-height:82px;
    resize:vertical;
}

.thexp-total-box {
    border-top:1px solid var(--thexp-border);
    border-bottom:1px solid var(--thexp-border);
    padding:15px 0;
    margin:5px 0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
}

.thexp-total-box span {
    font-size:13px;
    color:#667085;
}

.thexp-total-box strong {
    color:var(--thexp-navy);
    font-size:24px;
    font-weight:500;
}

.thexp-submit {
    width:100%;
    border:0;
    background:var(--thexp-navy);
    color:#fff;
    padding:13px 20px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
}

.thexp-faq {
    border-top:1px solid var(--thexp-border);
}

.thexp-faq-item {
    border-bottom:1px solid var(--thexp-border);
}

.thexp-faq-question {
    width:100%;
    background:transparent;
    border:0;
    text-align:left;
    padding:18px 0;
    font-size:15px;
    font-weight:500;
    color:var(--thexp-navy);
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    gap:20px;
}

.thexp-faq-answer {
    display:none;
    padding:0 0 20px;
    color:#475467;
    font-size:14px;
    line-height:1.8;
}

.thexp-faq-item.is-open .thexp-faq-answer {
    display:block;
}

.thexp-mobile-bar {
    display:none;
}

@media(max-width:900px){
    .thexp-sidebar { position:relative !important; top:auto !important; }
    .thexp-booking-card { position:relative !important; top:auto !important; }
    .thexp-container { width:calc(100% - 40px); }
    .thexp-hero-frame { height:280px; }
    .thexp-main { padding:38px 0 78px; }
    .thexp-layout { grid-template-columns:1fr; gap:26px; }
    .thexp-title-block { margin-bottom:28px; }
    .thexp-kicker { font-size:11px; margin-bottom:10px; }
    .thexp-title-block h1 { font-size:29px; line-height:1.16; margin-bottom:10px; }
    .thexp-title-block p { font-size:14px; line-height:1.65; }
    .thexp-quick-facts { grid-template-columns:1fr 1fr; margin-bottom:32px; }
    .thexp-fact { border-right:0; border-bottom:1px solid var(--thexp-border); }
    .thexp-fact:nth-last-child(-n+2) { border-bottom:0; }
    .thexp-section { margin-bottom:40px; }
    .thexp-section h2 { font-size:24px; margin-bottom:14px; }
    .thexp-overview, .thexp-rich-content { font-size:14px; line-height:1.75; }
    .thexp-highlights { grid-template-columns:1fr; gap:6px; }
    .thexp-highlight { padding:5px 0; }
    .thexp-stops {
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
}
    .thexp-stop img {
    width:100%;
    height:100%;
    min-height:190px;
    object-fit:cover;
    display:block;
}
    .thexp-stop-body {
    padding:26px 28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
    .thexp-gallery { grid-template-columns:1fr 1fr; gap:10px; }
    .thexp-gallery img, .thexp-gallery img:first-child { height:auto; grid-row:auto; }
    .thexp-inc-grid { grid-template-columns:1fr; gap:18px; }
    .thexp-booking-card {
    position:sticky !important;
    position:-webkit-sticky !important;
    top:96px !important;
    border:1px solid var(--thexp-border);
    background:#fff;
    padding:28px;
    height:fit-content;
    z-index:5;
}
    .thexp-price { font-size:24px; }
    .thexp-form-row { grid-template-columns:1fr 1fr; }
    .thexp-mobile-bar {
        display:flex;
        position:fixed;
        z-index:9999;
        left:0; right:0; bottom:0;
        background:#fff;
        border-top:1px solid var(--thexp-border);
        box-shadow:0 -8px 24px rgba(16,24,40,.08);
        padding:10px 14px;
        align-items:center;
        justify-content:space-between;
        gap:12px;
    }
    .thexp-mobile-bar strong {
        color:var(--thexp-navy);
        font-size:14px;
        font-weight:600;
        white-space:nowrap;
    }
    .thexp-mobile-bar a {
        background:var(--thexp-navy);
        color:#fff !important;
        text-decoration:none;
        padding:10px 15px;
        font-size:12px;
        font-weight:600;
        letter-spacing:.06em;
        text-transform:uppercase;
        white-space:nowrap;
    }
    body { padding-bottom:64px; }
}


.thexp-stop-number {
    display:block;
    color:#8a8f98;
    font-size:11px;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:9px;
}


body.admin-bar .thexp-sidebar,
body.admin-bar .thexp-booking-card {
    top:128px !important;
}


/* v5.0.1 Mobile Typography Upgrade */
@media(max-width:900px){
    .thexp-page {
        -webkit-font-smoothing: antialiased;
        text-rendering: optimizeLegibility;
    }

    .thexp-main {
        padding:42px 0 86px;
    }

    .thexp-title-block h1 {
        font-size:34px !important;
        line-height:1.18 !important;
        letter-spacing:-.035em;
    }

    .thexp-title-block p {
        font-size:17px !important;
        line-height:1.65 !important;
        color:#475467;
    }

    .thexp-section {
        margin-bottom:48px !important;
    }

    .thexp-section h2 {
        font-size:32px !important;
        line-height:1.18 !important;
        margin-bottom:22px !important;
        letter-spacing:-.03em;
    }

    .thexp-overview,
    .thexp-rich-content,
    .thexp-overview p,
    .thexp-rich-content p,
    .thexp-stop p,
    .thexp-faq-answer,
    .thexp-list-box li {
        font-size:16px !important;
        line-height:1.82 !important;
        color:#3f4a5f;
    }

    .thexp-kicker {
        font-size:12px !important;
        letter-spacing:.12em;
    }

    .thexp-fact {
        padding:22px 20px !important;
    }

    .thexp-fact span {
        font-size:12px !important;
        letter-spacing:.1em;
        margin-bottom:8px;
    }

    .thexp-fact strong {
        font-size:17px !important;
        line-height:1.35;
    }

    .thexp-highlight {
        gap:14px;
        padding:9px 0 !important;
    }

    .thexp-highlight-icon {
        width:22px !important;
        height:22px !important;
        min-width:22px !important;
        font-size:13px !important;
    }

    .thexp-highlight strong {
        font-size:17px !important;
        line-height:1.45;
    }

    .thexp-stop-number {
        font-size:12px !important;
        margin-bottom:10px;
    }

    .thexp-stop h3 {
        font-size:24px !important;
        line-height:1.25 !important;
        letter-spacing:-.02em !important;
    }

    .thexp-stop-body {
        padding:24px !important;
    }

    .thexp-list-box {
        padding:26px !important;
    }

    .thexp-list-box h3 {
        font-size:24px !important;
        line-height:1.25 !important;
        margin-bottom:20px;
    }

    .thexp-price {
        font-size:34px !important;
        line-height:1.2;
    }

    .thexp-price-breakdown,
    .thexp-price-note {
        font-size:16px !important;
        line-height:1.65 !important;
    }

    .thexp-field label {
        font-size:14px !important;
        letter-spacing:.06em;
    }

    .thexp-field input,
    .thexp-field select,
    .thexp-field textarea {
        font-size:16px !important;
        padding:14px 14px !important;
    }

    .thexp-total-box span {
        font-size:15px !important;
    }

    .thexp-total-box strong {
        font-size:26px !important;
    }

    .thexp-submit {
        font-size:14px !important;
        padding:16px 20px !important;
    }
}

@media(max-width:480px){
    .thexp-container {
        width:calc(100% - 34px);
    }

    .thexp-title-block h1 {
        font-size:32px !important;
    }

    .thexp-section h2 {
        font-size:30px !important;
    }

    .thexp-overview,
    .thexp-rich-content,
    .thexp-overview p,
    .thexp-rich-content p {
        font-size:16px !important;
        line-height:1.84 !important;
    }

    .thexp-quick-facts {
        grid-template-columns:1fr 1fr !important;
    }
}


/* v5.9 Conversion Fix */
.thexp-gallery img{
    border-radius:10px;
    overflow:hidden;
}

.thexp-booking-trust{
    margin:0 0 16px;
    padding:12px 0;
    border-top:1px solid var(--thexp-border);
    border-bottom:1px solid var(--thexp-border);
    font-size:14px;
    color:#475467;
    line-height:1.8;
}

.thexp-response-time{
    margin-top:12px;
    text-align:center;
    color:#667085;
    font-size:13px;
}

@media(max-width:900px){
    .thexp-section{margin-bottom:56px !important;}
    .thexp-stop{
        grid-template-columns:1fr !important;
    }
    .thexp-stop img{
        width:100%;
        height:auto !important;
        min-height:0 !important;
    }
    .thexp-stop-body{
        padding:22px !important;
    }
}


/* v5.9.1 Mobile Polish */
.thexp-booking-trust{
    font-size:14px;
    line-height:1.75;
}

.thexp-response-time{
    font-size:13px;
    line-height:1.6;
}

@media(max-width:900px){
    /* Date and time stacked on mobile to avoid overlapping native controls */
    .thexp-booking-form .thexp-form-row{
        grid-template-columns:1fr !important;
        gap:13px !important;
    }

    /* Compact mobile CTA bar after removing app badges */
    .thexp-mobile-bar{
        justify-content:center !important;
        gap:18px !important;
        padding:10px 16px calc(10px + env(safe-area-inset-bottom)) !important;
    }

    .thexp-mobile-bar strong{
        font-size:16px !important;
        line-height:1.2 !important;
        font-weight:600 !important;
        color:var(--thexp-navy) !important;
    }

    .thexp-mobile-bar a{
        min-width:140px !important;
        text-align:center !important;
        padding:13px 18px !important;
        font-size:13px !important;
        line-height:1 !important;
    }

    .thexp-price-note{
        display:none !important;
    }
}

@media(max-width:420px){
    .thexp-mobile-bar{
        gap:14px !important;
    }
    .thexp-mobile-bar a{
        min-width:132px !important;
        padding-left:14px !important;
        padding-right:14px !important;
    }
}


/* v6.0 Luxury Booking Experience */
.thexp-why-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 18px;
}

.thexp-why-item {
    border:1px solid var(--thexp-border);
    padding:18px 20px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    background:#fff;
}

.thexp-why-item span {
    color:var(--thexp-navy);
    font-size:15px;
    line-height:1.4;
}

.thexp-why-item strong {
    font-size:14px;
    line-height:1.55;
    font-weight:500;
    color:#344054;
}

.thexp-booking-trust {
    border-top:1px solid var(--thexp-border);
    border-bottom:1px solid var(--thexp-border);
    padding:14px 0;
    margin:14px 0 18px;
    color:#344054;
    font-size:13px;
    line-height:1.85;
}

.thexp-booking-trust span {
    display:inline-block;
    color:var(--thexp-navy);
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:12px;
    letter-spacing:.04em;
    text-transform:uppercase;
    margin-bottom:4px;
}

.thexp-whatsapp-box {
    border:1px solid var(--thexp-border);
    padding:14px;
    margin:0 0 18px;
    background:#fbfaf8;
}

.thexp-whatsapp-box strong {
    display:block;
    color:var(--thexp-navy);
    font-size:13px;
    margin-bottom:10px;
}

.thexp-whatsapp-box a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    text-decoration:none;
    background:#25D366;
    color:#fff !important;
    padding:11px 14px;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:12px;
    font-weight:600;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.thexp-related-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.thexp-related-card {
    border:1px solid var(--thexp-border);
    text-decoration:none;
    color:inherit;
    background:#fff;
    display:block;
    overflow:hidden;
}

.thexp-related-card img {
    width:100%;
    height:150px;
    object-fit:cover;
    display:block;
}

.thexp-related-card div {
    padding:18px;
}

.thexp-related-card span {
    display:block;
    color:#8a8f98;
    font-size:11px;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:7px;
}

.thexp-related-card h3 {
    font-size:16px;
    line-height:1.35;
    margin:0 0 10px;
    color:var(--thexp-navy);
    text-transform:none;
    letter-spacing:-.01em;
}

.thexp-related-card strong {
    color:#344054;
    font-size:13px;
    font-weight:500;
}

.thexp-mobile-bar-v6 {
    justify-content:center !important;
    gap:12px !important;
}

.thexp-mobile-bar-v6 strong {
    font-size:16px !important;
    min-width:auto !important;
}

.thexp-mobile-bar-v6 a {
    padding:10px 14px !important;
    min-width:auto !important;
}

.thexp-mobile-bar-v6 .thexp-mobile-whatsapp {
    background:#25D366 !important;
}

@media(max-width:900px){
    .thexp-why-grid {
        grid-template-columns:1fr;
        gap:10px;
    }

    .thexp-why-item {
        padding:17px;
    }

    .thexp-why-item strong {
        font-size:16px;
        line-height:1.55;
    }

    .thexp-booking-trust {
        font-size:16px !important;
        line-height:1.75;
    }

    .thexp-booking-trust span {
        font-size:13px !important;
        line-height:1.5;
    }

    .thexp-whatsapp-box {
        padding:18px;
    }

    .thexp-whatsapp-box strong {
        font-size:16px;
    }

    .thexp-whatsapp-box a {
        font-size:13px;
        padding:14px;
    }

    .thexp-related-grid {
        grid-template-columns:1fr;
        gap:16px;
    }

    .thexp-related-card {
        border-radius:12px;
    }

    .thexp-related-card img {
        height:auto;
        border-radius:12px 12px 0 0;
    }

    .thexp-related-card h3 {
        font-size:22px;
    }

    .thexp-mobile-bar-v6 {
        padding:10px 14px !important;
    }
}

@media(max-width:480px){
    .thexp-mobile-bar-v6 {
        gap:8px !important;
    }
    .thexp-mobile-bar-v6 .thexp-mobile-whatsapp {
        display:none;
    }
}


/* v6.1 Premium Visual Upgrade */
.thexp-booking-badge {
    display:inline-flex;
    align-items:center;
    margin-bottom:10px;
    padding:6px 9px;
    border:1px solid var(--thexp-border);
    color:#667085;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:10px;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
    background:#fbfaf8;
}

.thexp-why-item,
.thexp-highlight,
.thexp-list-box,
.thexp-stop,
.thexp-related-card {
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

@media(hover:hover){
    .thexp-why-item:hover,
    .thexp-stop:hover,
    .thexp-related-card:hover {
        transform:translateY(-2px);
        box-shadow:0 14px 34px rgba(16,24,40,.08);
        border-color:#d8d2c8;
    }
}

/* Premium chips for tour highlights */
.thexp-highlights {
    gap:12px !important;
}

.thexp-highlight {
    border:1px solid var(--thexp-border);
    padding:12px 14px !important;
    background:#fff;
}

.thexp-highlight-icon {
    border-color:#d8d2c8 !important;
    background:#fbfaf8;
}

/* Why choose section visual refinement */
.thexp-why-item {
    background:#fff;
    min-height:62px;
}

.thexp-why-item span {
    width:22px;
    height:22px;
    min-width:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d8d2c8;
    background:#fbfaf8;
    font-size:12px;
}

/* Gallery lightbox-ready styling */
.thexp-gallery a,
.thexp-gallery-link {
    display:block;
    overflow:hidden;
    border-radius:10px;
    text-decoration:none;
}

.thexp-gallery img {
    border-radius:10px;
    transition:transform .35s ease, filter .35s ease;
}

@media(hover:hover){
    .thexp-gallery a:hover img {
        transform:scale(1.035);
        filter:saturate(1.04);
    }
}

/* Related tours premium cards */
.thexp-related-section {
    padding-top:10px;
}

.thexp-related-card {
    border-radius:12px;
}

.thexp-related-card img {
    height:190px;
    border-radius:12px 12px 0 0;
}

.thexp-related-card div {
    padding:20px;
}

.thexp-related-card h3 {
    font-size:18px;
}

/* Lightbox */
.thexp-lightbox {
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(5,10,24,.94);
    display:none;
    align-items:center;
    justify-content:center;
    padding:28px;
}

.thexp-lightbox.is-open {
    display:flex;
}

.thexp-lightbox img {
    max-width:min(1100px, 92vw);
    max-height:82vh;
    object-fit:contain;
    border-radius:10px;
    box-shadow:0 24px 70px rgba(0,0,0,.35);
}

.thexp-lightbox-close,
.thexp-lightbox-prev,
.thexp-lightbox-next {
    position:absolute;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.08);
    color:#fff;
    cursor:pointer;
    font-family:Montserrat,Poppins,Arial,sans-serif;
}

.thexp-lightbox-close {
    top:22px;
    right:22px;
    width:44px;
    height:44px;
    border-radius:50%;
    font-size:28px;
    line-height:38px;
}

.thexp-lightbox-prev,
.thexp-lightbox-next {
    top:50%;
    transform:translateY(-50%);
    width:48px;
    height:62px;
    font-size:34px;
}

.thexp-lightbox-prev { left:22px; }
.thexp-lightbox-next { right:22px; }

.thexp-mobile-bar-v6 {
    box-shadow:0 -8px 28px rgba(16,24,40,.10) !important;
}

@media(max-width:900px){
    .thexp-highlight {
        border:0;
        border-bottom:1px solid var(--thexp-border);
        padding:12px 0 !important;
    }

    .thexp-highlight:last-child {
        border-bottom:0;
    }

    .thexp-gallery {
        gap:14px !important;
    }

    .thexp-related-card img {
        height:auto;
    }

    .thexp-lightbox {
        padding:18px;
    }

    .thexp-lightbox img {
        max-width:94vw;
        max-height:78vh;
        border-radius:8px;
    }

    .thexp-lightbox-close {
        top:14px;
        right:14px;
        width:42px;
        height:42px;
    }

    .thexp-lightbox-prev,
    .thexp-lightbox-next {
        width:42px;
        height:56px;
        font-size:30px;
    }

    .thexp-lightbox-prev { left:10px; }
    .thexp-lightbox-next { right:10px; }
}


/* v6.1.1 Desktop Gallery Size Polish */
@media(min-width:901px){
    .thexp-gallery {
        max-width:660px;
        grid-template-columns:repeat(3, 1fr) !important;
        gap:12px !important;
    }

    .thexp-gallery a,
    .thexp-gallery-link {
        border-radius:8px;
    }

    .thexp-gallery img,
    .thexp-gallery img:first-child {
        height:190px !important;
        width:100%;
        object-fit:cover;
        border-radius:8px;
        grid-row:auto !important;
    }
}


/* v6.2 Revenue & Trust Optimization */
.thexp-booking-badge {
    border-color:#d8d2c8;
    background:#fbfaf8;
    color:#475467;
}

.thexp-price {
    margin-bottom:10px;
}

.thexp-booking-trust {
    background:#fbfaf8;
    border:1px solid var(--thexp-border);
    padding:14px 16px;
    margin:16px 0 18px;
}

.thexp-booking-trust span {
    display:block;
    color:var(--thexp-navy);
    margin-bottom:8px;
}

.thexp-response-time,
.thexp-booking-card .thexp-response-time {
    color:#667085;
    font-size:12px;
    line-height:1.6;
    text-align:center;
    margin-top:14px;
}

.thexp-mobile-bar-v6 {
    justify-content:center !important;
    gap:16px !important;
}

.thexp-mobile-bar-v6 strong {
    font-size:18px !important;
    font-weight:700 !important;
}

.thexp-mobile-bar-v6 a:not(.thexp-mobile-whatsapp) {
    min-width:138px !important;
    text-align:center;
}

@media(max-width:900px){
    .thexp-booking-trust {
        padding:18px;
    }

    .thexp-response-time,
    .thexp-booking-card .thexp-response-time {
        font-size:15px !important;
        margin-top:18px;
    }

    .thexp-mobile-bar-v6 {
        gap:18px !important;
    }
}

@media(max-width:480px){
    .thexp-mobile-bar-v6 {
        gap:14px !important;
        justify-content:center !important;
    }

    .thexp-mobile-bar-v6 strong {
        font-size:17px !important;
    }

    .thexp-mobile-bar-v6 a:not(.thexp-mobile-whatsapp) {
        min-width:132px !important;
    }
}


/* v6.3 Related Tours Engine polish */
.thexp-related-section {
    margin-top:8px;
}

.thexp-related-section h2 {
    margin-bottom:24px;
}

.thexp-related-card {
    position:relative;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
}

.thexp-related-card img {
    height:170px;
}

.thexp-related-card strong {
    display:inline-flex;
    margin-top:2px;
}

@media(max-width:900px){
    .thexp-related-section {
        margin-bottom:64px !important;
    }

    .thexp-related-card div {
        padding:22px;
    }

    .thexp-related-card span {
        font-size:12px;
    }

    .thexp-related-card h3 {
        font-size:24px;
        line-height:1.25;
    }

    .thexp-related-card strong {
        font-size:16px;
    }
}


/* v6.3.1 Booking select/dropdown fix */
.thexp-booking-card,
.thexp-sidebar {
    overflow:visible !important;
}

.thexp-field select,
.thexp-field input[type="date"],
.thexp-field input[type="time"] {
    min-height:44px !important;
    line-height:1.35 !important;
    padding-top:11px !important;
    padding-bottom:11px !important;
    box-sizing:border-box !important;
    overflow:visible !important;
}

.thexp-field select {
    appearance:auto !important;
    -webkit-appearance:menulist !important;
    white-space:normal !important;
    text-overflow:ellipsis;
}

.thexp-field option {
    font-size:14px;
    line-height:1.5;
}

@media(max-width:900px){
    .thexp-field select,
    .thexp-field input[type="date"],
    .thexp-field input[type="time"] {
        min-height:54px !important;
        padding-top:14px !important;
        padding-bottom:14px !important;
    }
}


/* v6.3.2 Booking UX + Mobile Select Fix */
.thexp-price span {
    display:block;
    margin-top:4px;
    color:#667085;
    font-family:Poppins,Arial,sans-serif;
    font-size:13px;
    font-weight:400;
    letter-spacing:0;
}

/* Disable desktop sticky booking card for natural form scrolling */
@media(min-width:901px){
    .thexp-sidebar,
    .thexp-booking-card {
        position:relative !important;
        top:auto !important;
        align-self:start !important;
    }
}

/* Strong mobile form/select fixes */
@media(max-width:900px){
    .thexp-booking-card,
    .thexp-sidebar,
    .thexp-booking-form,
    .thexp-field,
    .thexp-form-row {
        overflow:visible !important;
    }

    .thexp-form-row {
        display:block !important;
        grid-template-columns:1fr !important;
    }

    .thexp-form-row .thexp-field {
        width:100% !important;
        margin-bottom:16px !important;
    }

    .thexp-field select,
    .thexp-field input[type="date"],
    .thexp-field input[type="time"],
    .thexp-field input[type="number"],
    .thexp-field input[type="text"],
    .thexp-field input[type="tel"],
    .thexp-field input[type="email"] {
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        min-height:56px !important;
        height:56px !important;
        line-height:24px !important;
        padding:14px 14px !important;
        box-sizing:border-box !important;
        position:relative !important;
        z-index:2 !important;
        background-color:#fff !important;
    }

    .thexp-field textarea {
        width:100% !important;
        max-width:100% !important;
        min-height:110px !important;
        box-sizing:border-box !important;
    }

    .thexp-field select {
        -webkit-appearance:menulist !important;
        appearance:auto !important;
        overflow:visible !important;
        white-space:normal !important;
        text-overflow:ellipsis !important;
    }

    .thexp-field option {
        font-size:16px !important;
        line-height:1.6 !important;
        padding:10px !important;
    }

    .thexp-price span {
        font-size:16px !important;
        line-height:1.5;
    }
}

/* Compact mobile sticky bar after removing app buttons */
.thexp-mobile-bar,
.thexp-mobile-bar-v6 {
    justify-content:center !important;
    gap:18px !important;
}

.thexp-mobile-bar strong,
.thexp-mobile-bar-v6 strong {
    margin:0 !important;
}

.thexp-mobile-bar a,
.thexp-mobile-bar-v6 a:not(.thexp-mobile-whatsapp) {
    min-width:132px !important;
    text-align:center !important;
}


/* v6.4 Testimonials + Sticky Booking Internal Scroll */
@media(min-width:901px){
    .thexp-sidebar {
        position:sticky !important;
        top:96px !important;
        align-self:start !important;
        max-height:calc(100vh - 116px);
        overflow:visible !important;
    }

    body.admin-bar .thexp-sidebar {
        top:128px !important;
        max-height:calc(100vh - 148px);
    }

    .thexp-booking-card {
        position:relative !important;
        top:auto !important;
        max-height:calc(100vh - 116px);
        overflow-y:auto !important;
        overscroll-behavior:contain;
        scrollbar-width:thin;
        scrollbar-color:#d8d2c8 #fbfaf8;
    }

    body.admin-bar .thexp-booking-card {
        max-height:calc(100vh - 148px);
    }

    .thexp-booking-card::-webkit-scrollbar {
        width:6px;
    }

    .thexp-booking-card::-webkit-scrollbar-track {
        background:#fbfaf8;
    }

    .thexp-booking-card::-webkit-scrollbar-thumb {
        background:#d8d2c8;
        border-radius:999px;
    }
}

.thexp-testimonials-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.thexp-testimonial-card {
    border:1px solid var(--thexp-border);
    background:#fff;
    padding:24px;
    border-radius:12px;
}

.thexp-testimonial-stars {
    color:#0b132b;
    letter-spacing:.08em;
    font-size:13px;
    margin-bottom:12px;
}

.thexp-testimonial-card p {
    margin:0 0 18px;
    color:#3f4a5f;
    font-size:15px;
    line-height:1.75;
}

.thexp-testimonial-card footer {
    display:flex;
    flex-direction:column;
    gap:3px;
}

.thexp-testimonial-card strong {
    color:var(--thexp-navy);
    font-size:14px;
    font-weight:600;
}

.thexp-testimonial-card span {
    color:#667085;
    font-size:13px;
}

@media(max-width:900px){
    .thexp-testimonials-grid {
        grid-template-columns:1fr;
        gap:14px;
    }

    .thexp-testimonial-card {
        padding:22px;
    }

    .thexp-testimonial-card p {
        font-size:16px !important;
        line-height:1.75 !important;
    }
}


/* v6.4.1 Full Booking Card + Desktop Floating CTA */
/* Keep the booking card complete and natural on desktop */
@media(min-width:901px){
    .thexp-sidebar,
    body.admin-bar .thexp-sidebar,
    .thexp-booking-card,
    body.admin-bar .thexp-booking-card {
        position:relative !important;
        top:auto !important;
        max-height:none !important;
        overflow:visible !important;
        align-self:start !important;
    }

    .thexp-booking-card {
        scrollbar-width:auto !important;
    }

    .thexp-desktop-float {
        position:fixed;
        right:28px;
        bottom:28px;
        z-index:99999;
        display:flex;
        align-items:center;
        gap:14px;
        background:#fff;
        border:1px solid var(--thexp-border);
        box-shadow:0 18px 48px rgba(16,24,40,.16);
        padding:12px 12px 12px 18px;
        border-radius:999px;
    }

    .thexp-desktop-float strong {
        color:var(--thexp-navy);
        font-family:Montserrat,Poppins,Arial,sans-serif;
        font-size:15px;
        font-weight:600;
        white-space:nowrap;
    }

    .thexp-desktop-float a {
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-width:118px;
        padding:12px 18px;
        border-radius:999px;
        background:var(--thexp-navy);
        color:#fff !important;
        text-decoration:none;
        font-family:Montserrat,Poppins,Arial,sans-serif;
        font-size:12px;
        font-weight:700;
        letter-spacing:.08em;
        text-transform:uppercase;
    }
}

@media(max-width:900px){
    .thexp-desktop-float {
        display:none !important;
    }
}


/* v6.4.2 Luxury Desktop CTA Tab */
.thexp-desktop-float {
    display:none !important;
}

@media(min-width:901px){
    .thexp-desktop-book-tab {
        position:fixed;
        right:0;
        top:50%;
        transform:translateY(-50%) rotate(-90deg);
        transform-origin:right bottom;
        z-index:99999;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-width:92px;
        padding:10px 18px;
        background:#0b132b;
        color:#fff !important;
        text-decoration:none;
        font-family:Montserrat,Poppins,Arial,sans-serif;
        font-size:11px;
        font-weight:600;
        letter-spacing:.14em;
        text-transform:uppercase;
        border:1px solid rgba(255,255,255,.18);
        box-shadow:0 12px 30px rgba(16,24,40,.14);
        opacity:.88;
        transition:opacity .18s ease, transform .18s ease;
    }

    .thexp-desktop-book-tab:hover {
        opacity:1;
        transform:translateY(-50%) rotate(-90deg) translateY(-2px);
    }
}

@media(max-width:900px){
    .thexp-desktop-book-tab {
        display:none !important;
    }
}


/* v6.5.1 Safe Compact Luxury Layout */
.thexp-compact-accordion {
    border-top:1px solid var(--thexp-border);
    border-bottom:1px solid var(--thexp-border);
    margin-bottom:18px !important;
}

.thexp-compact-accordion > h2 {
    position:relative;
    margin:0 !important;
    padding:22px 42px 22px 0;
    cursor:pointer;
    font-size:25px !important;
}

.thexp-compact-accordion > h2:after {
    content:"+";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    color:var(--thexp-navy);
    font-size:24px;
    font-weight:300;
}

.thexp-compact-accordion.is-open > h2:after {
    content:"–";
}

.thexp-compact-content {
    display:none;
    padding:0 0 28px;
}

.thexp-compact-accordion.is-open .thexp-compact-content {
    display:block;
}

.thexp-section.thexp-compact-accordion + .thexp-section.thexp-compact-accordion {
    margin-top:-18px;
}

.thexp-overview-wrap {
    position:relative;
}

.thexp-overview.is-collapsed,
.thexp-rich-content.is-collapsed {
    max-height:185px;
    overflow:hidden;
}

.thexp-overview-wrap.has-fade:after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:34px;
    height:70px;
    background:linear-gradient(to bottom,rgba(255,255,255,0),#fff);
    pointer-events:none;
}

.thexp-read-more {
    display:inline-flex;
    margin-top:14px;
    padding:0;
    border:0;
    background:transparent;
    color:var(--thexp-navy);
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
}

@media(min-width:901px){
    .thexp-section { margin-bottom:44px; }
    .thexp-gallery { max-width:660px; }
}

@media(max-width:900px){
    .thexp-section { margin-bottom:32px !important; }
    .thexp-compact-accordion > h2 {
        font-size:28px !important;
        padding:21px 42px 21px 0;
    }
    .thexp-compact-content { padding-bottom:26px; }
    .thexp-overview.is-collapsed,
    .thexp-rich-content.is-collapsed { max-height:230px; }
}


/* v6.5.2 Compact Typography Polish */
.thexp-compact-accordion > h2 {
    font-size:18px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
    padding:18px 34px 18px 0 !important;
}

.thexp-compact-accordion > h2:after {
    font-size:19px !important;
}

@media(max-width:900px){
    .thexp-compact-accordion > h2 {
        font-size:23px !important;
        line-height:1.25 !important;
        font-weight:500 !important;
        padding:20px 38px 20px 0 !important;
    }

    .thexp-compact-accordion > h2:after {
        font-size:23px !important;
    }

    .thexp-mobile-bar strong {
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        line-height:1.1 !important;
        gap:3px !important;
    }

    .thexp-mobile-bar strong .thexp-mobile-price-note {
        display:block;
        font-family:Poppins,Arial,sans-serif;
        font-size:10px !important;
        line-height:1.1 !important;
        font-weight:400 !important;
        letter-spacing:0 !important;
        color:#667085 !important;
        text-transform:none !important;
        white-space:nowrap;
    }
}

@media(max-width:480px){
    .thexp-compact-accordion > h2 {
        font-size:22px !important;
    }

    .thexp-mobile-bar strong .thexp-mobile-price-note {
        font-size:9px !important;
    }
}


/* v6.5.3 Sticky price readability + itinerary open */
@media(max-width:900px){
    .thexp-mobile-bar strong .thexp-mobile-price-note {
        font-size:12px !important;
        line-height:1.25 !important;
        font-weight:500 !important;
        color:#475467 !important;
        margin-top:3px !important;
    }
}

@media(max-width:480px){
    .thexp-mobile-bar strong .thexp-mobile-price-note {
        font-size:11px !important;
    }
}


/* v6.7 Luxury Tours Catalog */
.thexp-catalog-page {
    background:#fff;
    color:#0b132b;
    font-family:Poppins,Arial,sans-serif;
}

.thexp-catalog-container {
    width:min(1180px, calc(100% - 48px));
    margin:0 auto;
}

.thexp-catalog-hero {
    padding:78px 0 28px;
}

.thexp-catalog-hero .thexp-eyebrow {
    margin:0 0 10px;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:12px;
    line-height:1;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#667085;
}

.thexp-catalog-hero h1 {
    margin:0;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:42px;
    line-height:1.12;
    font-weight:500;
    letter-spacing:-.03em;
    color:#0b132b;
}

.thexp-catalog-intro {
    max-width:640px;
    margin:16px 0 0;
    color:#475467;
    font-size:16px;
    line-height:1.75;
}

.thexp-catalog-section {
    padding:26px 0 94px;
}

.thexp-catalog-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
}

.thexp-tour-card {
    border:1px solid var(--thexp-border, #e7e1d8);
    background:#fff;
    display:flex;
    flex-direction:column;
    min-height:100%;
    transition:box-shadow .22s ease, transform .22s ease, border-color .22s ease;
}

.thexp-tour-card:hover {
    transform:translateY(-2px);
    box-shadow:0 22px 60px rgba(16,24,40,.10);
    border-color:#d9d1c6;
}

.thexp-tour-card-image {
    display:block;
    aspect-ratio:16/10;
    overflow:hidden;
    background:#f6f4f0;
}

.thexp-tour-card-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease;
}

.thexp-tour-card:hover .thexp-tour-card-image img {
    transform:scale(1.035);
}

.thexp-tour-card-placeholder {
    width:100%;
    height:100%;
    background:linear-gradient(135deg,#f6f4f0,#ebe6de);
}

.thexp-tour-card-body {
    padding:28px;
    display:flex;
    flex-direction:column;
    gap:22px;
    flex:1;
}

.thexp-tour-card-kicker {
    margin:0 0 10px;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:10px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#667085;
}

.thexp-tour-card h2 {
    margin:0;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:24px;
    line-height:1.25;
    font-weight:500;
    letter-spacing:-.02em;
    color:#0b132b;
}

.thexp-tour-card h2 a {
    color:inherit;
    text-decoration:none;
}

.thexp-tour-card-subtitle {
    margin:10px 0 0;
    color:#475467;
    font-size:14px;
    line-height:1.65;
}

.thexp-tour-card-facts {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    border:1px solid var(--thexp-border, #e7e1d8);
}

.thexp-tour-card-facts span {
    padding:14px 16px;
    border-right:1px solid var(--thexp-border, #e7e1d8);
    border-bottom:1px solid var(--thexp-border, #e7e1d8);
    color:#0b132b;
    font-size:13px;
    line-height:1.35;
    font-weight:500;
}

.thexp-tour-card-facts span:nth-child(2n) {
    border-right:0;
}

.thexp-tour-card-facts span:nth-last-child(-n+2) {
    border-bottom:0;
}

.thexp-tour-card-facts small {
    display:block;
    margin-bottom:6px;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    color:#667085;
    font-size:9px;
    letter-spacing:.16em;
    text-transform:uppercase;
    font-weight:600;
}

.thexp-tour-card-footer {
    margin-top:auto;
    padding-top:4px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
}

.thexp-tour-card-price strong {
    display:block;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:22px;
    line-height:1.15;
    font-weight:500;
    color:#0b132b;
}

.thexp-tour-card-price small {
    display:block;
    margin-top:4px;
    color:#667085;
    font-size:12px;
    line-height:1.35;
}

.thexp-tour-card-cta {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:132px;
    min-height:46px;
    padding:13px 18px;
    background:#0b132b;
    color:#fff !important;
    text-decoration:none;
    font-family:Montserrat,Poppins,Arial,sans-serif;
    font-size:11px;
    line-height:1;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.thexp-catalog-pagination {
    margin-top:42px;
}

.thexp-catalog-empty {
    border:1px solid var(--thexp-border, #e7e1d8);
    padding:44px;
}

@media(max-width:900px){
    .thexp-catalog-container {
        width:min(100% - 36px, 680px);
    }

    .thexp-catalog-hero {
        padding:48px 0 18px;
    }

    .thexp-catalog-hero h1 {
        font-size:34px;
    }

    .thexp-catalog-intro {
        font-size:16px;
    }

    .thexp-catalog-grid {
        grid-template-columns:1fr;
        gap:24px;
    }

    .thexp-tour-card-body {
        padding:24px;
    }

    .thexp-tour-card h2 {
        font-size:23px;
    }

    .thexp-tour-card-footer {
        align-items:stretch;
        flex-direction:column;
    }

    .thexp-tour-card-cta {
        width:100%;
    }
}

@media(max-width:520px){
    .thexp-catalog-container {
        width:calc(100% - 28px);
    }

    .thexp-catalog-hero h1 {
        font-size:30px;
    }

    .thexp-tour-card-facts {
        grid-template-columns:1fr 1fr;
    }

    .thexp-tour-card-price strong {
        font-size:20px;
    }
}


/* v7.0 Request System */
.thexp-submit:disabled {
    opacity:.72;
    cursor:wait;
}

.thexp-request-message {
    display:none;
    margin-top:14px;
    padding:13px 14px;
    border:1px solid var(--thexp-border, #e7e1d8);
    font-size:13px;
    line-height:1.6;
    text-align:center;
}

.thexp-request-message.is-visible {
    display:block;
}

.thexp-request-message.is-success {
    background:#f4faf5;
    border-color:#cfe8d5;
    color:#0b132b;
}

.thexp-request-message.is-error {
    background:#fff6f3;
    border-color:#f3c6bd;
    color:#7a271a;
}

.thexp-mobile-bar a {
    letter-spacing:.10em;
}

@media(max-width:900px){
    .thexp-request-message {
        font-size:15px;
    }
}


/* v7.1.3 Shortcode Luxury Cards - independent namespace */
.thx-shortcode-luxury {
    width:100%;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:28px !important;
    margin:42px auto !important;
    text-align:left !important;
    font-family:Poppins,Arial,sans-serif !important;
    color:#0b132b !important;
}

.thx-shortcode-luxury.thx-cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.thx-lux-card {
    display:flex !important;
    flex-direction:column !important;
    background:#fff !important;
    border:1px solid #e7e1d8 !important;
    box-shadow:none !important;
    overflow:hidden !important;
    min-height:100% !important;
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.thx-lux-card:hover {
    transform:translateY(-2px) !important;
    box-shadow:0 22px 60px rgba(16,24,40,.10) !important;
    border-color:#d9d1c6 !important;
}

.thx-lux-image {
    display:block !important;
    width:100% !important;
    aspect-ratio:16/10 !important;
    overflow:hidden !important;
    background:#f6f4f0 !important;
    text-decoration:none !important;
}

.thx-lux-image img,
.thx-lux-image span {
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

.thx-lux-card:hover .thx-lux-image img {
    transform:scale(1.035) !important;
}

.thx-lux-body {
    padding:28px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:22px !important;
    flex:1 !important;
}

.thx-lux-kicker {
    margin:0 0 10px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    color:#667085 !important;
    font-weight:600 !important;
}

.thx-lux-card h3 {
    margin:0 !important;
    padding:0 !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:24px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
    letter-spacing:-.02em !important;
    color:#0b132b !important;
}

.thx-lux-card h3 a {
    color:#0b132b !important;
    text-decoration:none !important;
}

.thx-lux-subtitle {
    margin:10px 0 0 !important;
    color:#475467 !important;
    font-size:14px !important;
    line-height:1.65 !important;
}

.thx-lux-facts {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    border:1px solid #e7e1d8 !important;
}

.thx-lux-facts span {
    display:block !important;
    padding:14px 16px !important;
    border-right:1px solid #e7e1d8 !important;
    border-bottom:1px solid #e7e1d8 !important;
    color:#0b132b !important;
    font-size:13px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
}

.thx-lux-facts span:nth-child(2n) {
    border-right:0 !important;
}

.thx-lux-facts span:nth-last-child(-n+2) {
    border-bottom:0 !important;
}

.thx-lux-facts small {
    display:block !important;
    margin-bottom:6px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    color:#667085 !important;
    font-size:9px !important;
    line-height:1.2 !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
    font-weight:600 !important;
}

.thx-lux-footer {
    margin-top:auto !important;
    padding-top:4px !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:18px !important;
}

.thx-lux-price strong {
    display:block !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:22px !important;
    line-height:1.15 !important;
    font-weight:500 !important;
    color:#0b132b !important;
}

.thx-lux-price small {
    display:block !important;
    margin-top:4px !important;
    color:#667085 !important;
    font-size:12px !important;
    line-height:1.35 !important;
}

.thx-lux-cta {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:132px !important;
    min-height:46px !important;
    padding:13px 18px !important;
    background:#0b132b !important;
    color:#fff !important;
    text-decoration:none !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
}

.thx-lux-empty {
    border:1px solid #e7e1d8 !important;
    padding:28px !important;
    color:#475467 !important;
}

/* Destination filter on /tours/ */
.thexp-destination-filter {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    margin:30px 0 36px !important;
}

.thexp-destination-filter a {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:38px !important;
    padding:10px 16px !important;
    border:1px solid #e7e1d8 !important;
    color:#0b132b !important;
    text-decoration:none !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    background:#fff !important;
}

.thexp-destination-filter a.is-active,
.thexp-destination-filter a:hover {
    background:#0b132b !important;
    border-color:#0b132b !important;
    color:#fff !important;
}

@media(max-width:1100px){
    .thx-shortcode-luxury.thx-cols-3 {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:900px){
    .thx-shortcode-luxury,
    .thx-shortcode-luxury.thx-cols-3 {
        grid-template-columns:1fr !important;
        gap:24px !important;
    }

    .thx-lux-body {
        padding:24px !important;
    }

    .thx-lux-card h3 {
        font-size:23px !important;
    }

    .thx-lux-footer {
        flex-direction:column !important;
        align-items:stretch !important;
    }

    .thx-lux-cta {
        width:100% !important;
    }
}


/* v7.1.4 Shortcode Luxury Cards Safe Fix */
.thx-luxury-shortcode-wrap {
    width:100%;
    max-width:1180px;
    margin:42px auto;
    font-family:Poppins,Arial,sans-serif;
    color:#0b132b;
}

.thx-luxury-shortcode-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:28px !important;
    width:100% !important;
    margin:0 !important;
    align-items:stretch !important;
}

.thx-luxury-shortcode-grid.thx-cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card {
    display:flex !important;
    flex-direction:column !important;
    border:1px solid #e7e1d8 !important;
    background:#fff !important;
    text-align:left !important;
    min-height:100% !important;
    overflow:hidden !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-image {
    display:block !important;
    aspect-ratio:16/10 !important;
    width:100% !important;
    overflow:hidden !important;
    background:#f6f4f0 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-image img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-body {
    padding:28px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:22px !important;
    flex:1 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-kicker {
    margin:0 0 10px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:10px !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    color:#667085 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card h2 {
    margin:0 !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:24px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
    color:#0b132b !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card h2 a {
    color:#0b132b !important;
    text-decoration:none !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-subtitle {
    margin:10px 0 0 !important;
    color:#475467 !important;
    font-size:14px !important;
    line-height:1.65 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-facts {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    border:1px solid #e7e1d8 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-facts span {
    padding:14px 16px !important;
    border-right:1px solid #e7e1d8 !important;
    border-bottom:1px solid #e7e1d8 !important;
    color:#0b132b !important;
    font-size:13px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-facts span:nth-child(2n) {
    border-right:0 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-facts span:nth-last-child(-n+2) {
    border-bottom:0 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-facts small {
    display:block !important;
    margin-bottom:6px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    color:#667085 !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
    font-weight:600 !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-footer {
    margin-top:auto !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:18px !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-price strong {
    display:block !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:22px !important;
    line-height:1.15 !important;
    font-weight:500 !important;
    color:#0b132b !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-price small {
    display:block !important;
    margin-top:4px !important;
    color:#667085 !important;
    font-size:12px !important;
}

.thx-luxury-shortcode-grid .thexp-tour-card-cta {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:132px !important;
    min-height:46px !important;
    padding:13px 18px !important;
    background:#0b132b !important;
    color:#fff !important;
    text-decoration:none !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
}

@media(max-width:1100px){
    .thx-luxury-shortcode-grid.thx-cols-3 {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:900px){
    .thx-luxury-shortcode-grid,
    .thx-luxury-shortcode-grid.thx-cols-3 {
        grid-template-columns:1fr !important;
    }

    .thx-luxury-shortcode-grid .thexp-tour-card-body {
        padding:24px !important;
    }

    .thx-luxury-shortcode-grid .thexp-tour-card-footer {
        flex-direction:column !important;
        align-items:stretch !important;
    }

    .thx-luxury-shortcode-grid .thexp-tour-card-cta {
        width:100% !important;
    }
}


/* v7.1.5 Shortcode CSS Fix */
.thx-luxury-shortcode-wrap {
    width:100%;
    max-width:1180px;
    margin:42px auto;
    font-family:Poppins,Arial,sans-serif;
    color:#0b132b;
}
.thx-luxury-shortcode-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:28px !important;
    width:100% !important;
    margin:0 !important;
    align-items:stretch !important;
}
.thx-luxury-shortcode-grid.thx-cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card {
    display:flex !important;
    flex-direction:column !important;
    border:1px solid #e7e1d8 !important;
    background:#fff !important;
    text-align:left !important;
    min-height:100% !important;
    overflow:hidden !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-image {
    display:block !important;
    aspect-ratio:16/10 !important;
    width:100% !important;
    overflow:hidden !important;
    background:#f6f4f0 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-image img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-body {
    padding:28px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:22px !important;
    flex:1 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-kicker {
    margin:0 0 10px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:10px !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
    color:#667085 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card h2 {
    margin:0 !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:24px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
    color:#0b132b !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card h2 a {
    color:#0b132b !important;
    text-decoration:none !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-subtitle {
    margin:10px 0 0 !important;
    color:#475467 !important;
    font-size:14px !important;
    line-height:1.65 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-facts {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    border:1px solid #e7e1d8 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-facts span {
    padding:14px 16px !important;
    border-right:1px solid #e7e1d8 !important;
    border-bottom:1px solid #e7e1d8 !important;
    color:#0b132b !important;
    font-size:13px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-facts span:nth-child(2n) { border-right:0 !important; }
.thx-luxury-shortcode-grid .thexp-tour-card-facts span:nth-last-child(-n+2) { border-bottom:0 !important; }
.thx-luxury-shortcode-grid .thexp-tour-card-facts small {
    display:block !important;
    margin-bottom:6px !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    color:#667085 !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
    font-weight:600 !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-footer {
    margin-top:auto !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:18px !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-price strong {
    display:block !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:22px !important;
    line-height:1.15 !important;
    font-weight:500 !important;
    color:#0b132b !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-price small {
    display:block !important;
    margin-top:4px !important;
    color:#667085 !important;
    font-size:12px !important;
}
.thx-luxury-shortcode-grid .thexp-tour-card-cta {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:132px !important;
    min-height:46px !important;
    padding:13px 18px !important;
    background:#0b132b !important;
    color:#fff !important;
    text-decoration:none !important;
    font-family:Montserrat,Poppins,Arial,sans-serif !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
}
@media(max-width:900px){
    .thx-luxury-shortcode-grid,
    .thx-luxury-shortcode-grid.thx-cols-3 { grid-template-columns:1fr !important; }
    .thx-luxury-shortcode-grid .thexp-tour-card-body { padding:24px !important; }
    .thx-luxury-shortcode-grid .thexp-tour-card-footer { flex-direction:column !important; align-items:stretch !important; }
    .thx-luxury-shortcode-grid .thexp-tour-card-cta { width:100% !important; }
}


/* v7.1.8 Guests + Smart Vehicle Filtering */
.thexp-vehicle-warning {
    display:none;
    margin-top:8px;
    color:#7a271a;
    font-size:12px;
    line-height:1.45;
}
.thexp-vehicle-warning.is-visible {
    display:block;
}
