/* Journeyfer — shared tokens and components for every destination. */
:root{--navy:#102846;--orange:#c64b16;--orange-hover:#a63b0c;--sand:#f3eee5;--paper:#fbfaf7;--white:#fff;--ink:#192e43;--muted:#59666d;--line:#dddeda;--sea:#1a6b68;--green:#246249;--blue:var(--sea);--gold:#8a5a29;--brand-deep:var(--navy);--brand-light:var(--sea);--sand-glow:var(--orange);--text-dark:var(--ink);--text-muted:var(--muted);--gray-light:var(--line);--gray-bg:var(--paper);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:24px;--shadow-sm:0 2px 8px #10284608;--shadow-md:0 12px 32px #1028460b;--shadow-lg:0 20px 60px #1028461a;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px;--space-7:80px;--max-width:1280px;--header-height:88px;--motion:180ms ease}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;-webkit-text-size-adjust:100%}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}h1,h2,h3,p,ul,ol{margin:0}h1,h2,h3,.h1,.h2,.h3{color:var(--navy);line-height:1.15;letter-spacing:-.035em}h1,.h1{font-size:clamp(2rem,4.4vw,4.6rem);font-weight:750}h2,.h2{font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:700}h3,.h3{font-size:1.125rem;line-height:1.35;letter-spacing:-.015em}p{max-width:72ch}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}img{display:block;max-width:100%;height:auto}button{border:0;background:none}ul,ol{padding-left:24px}svg.icon{width:21px;height:21px;flex:0 0 21px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}svg.icon-lg{width:28px;height:28px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--sea);outline-offset:4px}a:hover{text-decoration:none}[hidden]{display:none!important}.container{width:min(var(--max-width),calc(100% - 80px));margin-inline:auto;min-width:0}.text-muted{color:var(--muted)}.text-sm{font-size:.875rem}.text-xs{font-size:.8rem;line-height:1.5}.skip-link{position:fixed;top:-80px;left:16px;z-index:500;background:var(--navy);color:white;padding:12px 20px;border-radius:8px}.skip-link:focus{top:12px}.section-label,.eyebrow,.hero-badge{display:block;font-size:.72rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--orange);margin-bottom:16px}.section-heading{margin-bottom:24px}.section-heading p{color:var(--muted);margin-top:16px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.section-top p{color:var(--muted);margin-top:12px}.section-top .text-link{flex-shrink:0}.section{padding-block:56px}.text-link,.link{font-weight:700;color:var(--orange);display:inline-flex;align-items:center;gap:8px;min-height:44px}.text-link:hover,.link:hover{text-decoration:underline;text-underline-offset:5px}
/* Owner-supplied Egypt country banner: preserve the complete landscape composition. */
.egypt-image-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;min-height:560px;display:flex;align-items:center;background:var(--navy);margin-block:20px 32px}
.egypt-image-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.egypt-image-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,23,34,.83),rgba(8,23,34,.58) 48%,rgba(8,23,34,.05))}
.egypt-image-hero-copy{padding:64px;max-width:690px;color:#fff}
.egypt-image-hero-copy .egypt-hero-eyebrow{color:#fff;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;margin-bottom:20px}
.egypt-image-hero-copy h1{color:#fff;font-size:clamp(2.6rem,4.5vw,4.5rem);line-height:1.08;letter-spacing:-.045em;margin-bottom:24px}
.egypt-image-hero-copy>p:not(.egypt-hero-eyebrow){color:#fff;font-size:1.05rem;max-width:42ch;margin-bottom:28px}
@media(max-width:959px){.egypt-image-hero{min-height:500px}.egypt-image-hero-copy{padding:40px;max-width:620px}}
@media(max-width:639px){.egypt-image-hero{min-height:490px;border-radius:14px;margin-block:8px 24px;align-items:flex-end}.egypt-image-hero>img{object-position:58% center}.egypt-image-hero::after{background:linear-gradient(0deg,rgba(8,23,34,.94),rgba(8,23,34,.68) 65%,rgba(8,23,34,.18))}.egypt-image-hero-copy{padding:30px 24px;width:100%}.egypt-image-hero-copy .egypt-hero-eyebrow{font-size:.63rem;margin-bottom:16px}.egypt-image-hero-copy h1{font-size:clamp(2.2rem,9vw,2.8rem);margin-bottom:20px}.egypt-image-hero-copy>p:not(.egypt-hero-eyebrow){font-size:.95rem;margin-bottom:24px}}
/* Actions */
.btn-primary,.btn-secondary,.btn-whatsapp,.button,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:var(--radius-sm);font-weight:650;font-size:.9rem;line-height:1.4;transition:background var(--motion),box-shadow var(--motion),transform var(--motion);text-align:center}.btn-primary,.button{background:var(--orange);color:white}.btn-primary:hover,.button:hover{background:var(--orange-hover);box-shadow:var(--shadow-sm)}.btn-secondary{background:white;color:var(--navy);border-color:var(--line)}.btn-secondary:hover{background:var(--sand);border-color:#bdc4c5}.btn-ghost{color:var(--navy);background:transparent;border-color:var(--line)}.btn-ghost:hover{background:var(--sand)}.btn-whatsapp{background:var(--green);color:white}.btn-whatsapp:hover{background:#184e38}button:disabled,.is-disabled{opacity:.55;cursor:not-allowed;transform:none}.button-row,.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.fa-spinner{display:inline-block;width:20px;height:20px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
/* One global shell */
.site-header{position:sticky;top:0;z-index:80;height:var(--header-height);background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-logo{flex-shrink:0}.header-logo img{width:181px;height:auto}.header-nav{display:flex;align-items:center;gap:28px;font-size:.875rem;font-weight:650}.header-nav>a{display:flex;align-items:center;min-height:44px}.nav-disclosure{position:relative}.nav-disclosure summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;min-height:44px}.nav-disclosure summary::-webkit-details-marker{display:none}.nav-disclosure summary .icon{width:15px;height:15px;flex-basis:15px}.nav-popover{position:absolute;top:calc(100% + 10px);left:-20px;min-width:230px;background:white;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow-lg)}.nav-popover a{display:block;padding:12px;border-radius:6px}.nav-popover a:hover{background:var(--sand)}.nav-disclosure[open]>summary,.header-nav>a:hover{color:var(--orange)}.header-actions{display:flex;align-items:center;gap:16px}.support-link{font-size:.83rem;font-weight:650;display:flex;align-items:center;gap:7px;color:var(--green);min-height:44px}.header-hamburger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px}.mobile-menu{display:none}.breadcrumbs{padding-block:18px;color:var(--muted);font-size:.77rem}.breadcrumbs ol{display:flex;gap:9px;list-style:none;padding:0;flex-wrap:wrap}.breadcrumbs li{display:inline-flex;gap:9px;align-items:center;min-width:0}.breadcrumbs li:not(:last-child)::after{content:'/';color:#879097}.breadcrumbs a:hover{color:var(--orange);text-decoration:underline}.breadcrumbs [aria-current]{color:var(--ink)}.site-footer{background:var(--navy);color:#dbe2e6;padding:56px 0 24px;margin-top:64px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px}.footer-brand{background:white;border-radius:6px;padding:6px;display:inline-block;margin-bottom:20px}.footer-brand img{width:165px}.footer-grid h3{color:white;font-size:.9rem;letter-spacing:0;margin-bottom:16px}.footer-grid p{font-size:.875rem;max-width:33ch}.footer-grid a:not(.footer-brand){display:block;padding-block:5px;font-size:.85rem}.footer-grid a:hover{color:white;text-decoration:underline}.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:16px;font-size:.75rem;color:#c7d0d8}.mobile-action{display:none}
/* Destination and service heroes */
.home-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center;padding-block:48px}.home-hero h1{max-width:10ch;margin-bottom:24px;line-height:1.07}.home-hero h1 em{font-style:normal;color:var(--orange)}.home-hero .hero-copy>p{color:var(--muted);font-size:1.05rem;max-width:44ch;margin-bottom:28px}.hero-photo{position:relative;isolation:isolate;border-radius:var(--radius-lg);overflow:hidden;background:var(--sand);height:530px}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-caption{position:absolute;bottom:24px;left:24px;right:24px;background:#fff;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:8px;box-shadow:var(--shadow-sm)}.photo-caption span{display:block;font-size:.72rem;color:var(--muted)}.photo-caption strong{font-size:.9rem}.photo-caption .icon{color:var(--orange)}.hero-note{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted);margin-top:24px}.hero-note .icon{color:var(--sea)}.confidence-strip{border-block:1px solid var(--line);background:white}.confidence-inner{display:grid;grid-template-columns:repeat(3,1fr);padding-block:24px;gap:32px}.confidence-item{display:flex;align-items:center;gap:14px;font-size:.875rem}.confidence-item .icon{color:var(--sea);width:25px;height:25px;flex-basis:25px}.confidence-item small{display:block;font-size:.76rem;color:var(--muted)}.hub-destinations{display:grid;grid-template-columns:1fr 1fr;gap:24px}.destination-card{display:grid;grid-template-columns:1fr 1fr;min-width:0;background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:box-shadow var(--motion),transform var(--motion)}.destination-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.destination-card img{width:100%;height:100%;min-height:250px;object-fit:cover}.destination-copy{padding:28px;display:flex;flex-direction:column;align-items:start}.destination-copy p{font-size:.875rem;color:var(--muted);margin:12px 0 16px}.destination-copy .text-link{margin-top:auto}.micro-label{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--sea);font-weight:700;margin-bottom:10px}.service-switch{display:flex;gap:8px;margin-bottom:24px}.service-switch a{font-weight:650;font-size:.9rem;border-bottom:2px solid transparent;padding:10px 16px;min-height:44px}.service-switch a[aria-current],.service-switch a:hover{color:var(--orange);border-color:var(--orange)}.listing-hero{padding-block:20px 36px;gap:64px;grid-template-columns:1.05fr .95fr}.listing-hero .hero-photo{height:320px}.listing-hero h1{font-size:clamp(2.1rem,4vw,3.65rem);max-width:16ch}.listing-hero .hero-copy>p{font-size:1rem;max-width:54ch}.catalogue{padding-top:40px}.catalogue-toolbar{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:20px;background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.search-field{flex:1;min-width:200px}.search-field label,.sort-field label{display:block;font-size:.75rem;font-weight:650;margin-bottom:7px}.search-input{position:relative}.search-input .icon{position:absolute;left:14px;top:14px;color:var(--muted)}.search-input input{padding-left:44px!important}.sort-field{min-width:180px}.filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filter-chip{border:1px solid var(--line);border-radius:8px;min-height:44px;padding:9px 16px;font-size:.8rem;font-weight:600;background:white}.filter-chip:hover{border-color:var(--sea)}.filter-chip[aria-pressed=true]{color:white;background:var(--navy);border-color:var(--navy)}.result-line{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.8rem;margin-bottom:22px}.result-line button{color:var(--orange);text-decoration:underline;min-height:44px}.tour-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.tour-card{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform var(--motion),box-shadow var(--motion)}.tour-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.card-photo{aspect-ratio:1.6;overflow:hidden;position:relative;background:var(--sand)}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform var(--motion)}.tour-card:hover .card-photo img{transform:scale(1.025)}.card-location{position:absolute;left:16px;top:16px;background:#ffffffed;border-radius:5px;padding:5px 9px;font-size:.7rem;color:var(--navy);font-weight:650}.card-body{padding:22px;display:flex;flex-direction:column;flex:1}.card-body h3{margin-bottom:12px;font-size:1.14rem}.tour-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 12px;font-size:.74rem;color:var(--muted)}.tour-meta span{display:inline-flex;align-items:center;gap:5px}.tour-meta .icon{width:15px;height:15px;flex-basis:15px}.card-body>p{font-size:.84rem;color:var(--muted);margin-bottom:16px}.card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #eeece7;font-size:.8rem}.card-foot .price{font-weight:750;font-size:.9rem;color:var(--navy)}.card-foot .link{font-size:.8rem;min-height:32px}.empty-state{text-align:center;border:1px dashed var(--line);padding:48px 24px;border-radius:12px}.empty-state p{margin:8px auto 20px;color:var(--muted)}.planning{border-left:3px solid var(--orange);padding:24px 28px;background:var(--sand);border-radius:0 12px 12px 0;margin:40px 0}.planning h2{font-size:1.5rem;margin-bottom:12px}.planning p{font-size:.9rem;margin-bottom:12px;color:var(--muted)}.why{margin-top:56px;padding:32px;border:1px solid var(--line);border-radius:14px;background:white;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.why h2{grid-column:1/-1;font-size:1.65rem}.why>div{display:flex;gap:16px;align-items:start}.why .icon{color:var(--sea);margin-top:3px}.why h3{font-size:1rem;margin-bottom:8px}.why p{font-size:.85rem;color:var(--muted)}.transfer-banner{background:var(--navy);color:white;border-radius:16px;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.transfer-banner h2{color:white;margin-bottom:16px}.transfer-banner p{color:#d2dce4;font-size:.925rem}.transfer-banner .section-label{color:#ffb089}.route-links{display:grid;gap:12px}.route-link{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #ffffff40;padding:18px 20px;border-radius:8px;font-size:.9rem;background:#ffffff08}.route-link:hover{background:#ffffff16}.route-link small{display:block;color:#c7d0d8;font-size:.75rem}.seasonal{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.seasonal img{width:100%;height:340px;object-fit:cover;border-radius:14px}.seasonal h2{margin-bottom:20px}.seasonal p{color:var(--muted);margin-bottom:20px}.final-cta{text-align:center;padding:56px 24px;background:var(--sand);border-radius:16px;margin-top:56px}.final-cta p{margin:16px auto 24px;color:var(--muted)}
/* Transfers */
.transfer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:32px}.step-number{display:inline-flex;background:var(--sand);color:var(--orange);width:44px;height:44px;align-items:center;justify-content:center;border-radius:10px;font-weight:700;margin-bottom:20px}.transfer-steps h3{margin-bottom:10px}.transfer-steps p{font-size:.9rem;color:var(--muted)}.transfer-card .card-photo{aspect-ratio:2}.transfer-card .card-photo .icon{position:absolute;bottom:16px;left:16px;color:var(--navy);background:white;box-sizing:content-box;padding:12px;border-radius:8px}.transfer-facts{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px;color:var(--muted);font-size:.82rem}.transfer-facts span{display:flex;gap:8px;align-items:center}
/* Product templates */
.product-hero{display:grid;grid-template-columns:1.04fr .96fr;align-items:stretch;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:4px;margin-bottom:24px}.product-hero .hero-content{padding:36px;min-width:0}.product-hero h1{font-size:clamp(1.85rem,3.15vw,3rem);max-width:24ch;margin-bottom:20px}.hero-badge{margin-bottom:16px;display:flex;align-items:center;gap:7px;font-size:.67rem;letter-spacing:.08em}.hero-meta{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:.85rem;color:var(--muted);margin-bottom:16px}.hero-meta span{display:flex;align-items:center;gap:6px}.hero-meta .icon{width:17px;height:17px;flex-basis:17px;color:var(--sea)}.hero-price{font-size:1.6rem;font-weight:750;margin-bottom:18px;color:var(--navy)}.hero-price small{font-size:.8rem;color:var(--muted);font-weight:400}.hero-features{display:flex;flex-direction:column;gap:6px;font-size:.8rem;margin-bottom:22px}.hero-features span{display:flex;gap:8px;align-items:start}.hero-features .icon{color:var(--sea);width:17px;height:17px;flex-basis:17px;margin-top:3px}.product-image{position:relative;min-width:0;background:var(--sand)}.product-image>img{width:100%;height:100%;max-height:610px;object-fit:cover}.view-photos{position:absolute;bottom:20px;right:20px;box-shadow:var(--shadow-sm)}.policy-note{font-size:.74rem;display:flex;align-items:center;gap:8px;color:var(--muted);margin-top:16px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:48px;align-items:start}.detail-content{min-width:0}.detail-content>section{width:100%;padding:32px 0;border-bottom:1px solid var(--line);margin:0}.detail-content .h2{font-size:1.7rem}.detail-content .section-label{margin-bottom:10px}.detail-content .section-heading p{font-size:.95rem;line-height:1.75}.booking-aside{position:sticky;top:112px;background:white;border:1px solid var(--line);border-radius:14px;padding:28px;margin-top:32px;box-shadow:var(--shadow-md)}.booking-aside h2{font-size:1.2rem;letter-spacing:-.015em;margin-bottom:20px}.booking-aside .hero-price{padding-bottom:18px;border-bottom:1px solid var(--line)}.booking-aside .aside-facts{display:grid;gap:16px;font-size:.84rem;margin:20px 0}.aside-facts>span{display:flex;gap:10px}.aside-facts .icon{color:var(--sea)}.booking-aside .btn-primary,.booking-aside .btn-secondary{width:100%;margin-top:10px}.booking-aside p{font-size:.75rem;color:var(--muted);margin-top:16px}.glance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.glance-item{display:flex;gap:12px;align-items:start;padding:16px;background:white;border:1px solid var(--line);border-radius:8px;font-size:.85rem}.glance-item>.icon{color:var(--sea);margin-top:3px}.glance-text{font-weight:650}.glance-text small{display:block;color:var(--muted);font-weight:400;font-size:.75rem}.benefits-grid,.highlights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.benefit-card,.highlight-card{border:1px solid var(--line);border-radius:10px;padding:20px;background:white}.benefit-icon{margin-bottom:12px;color:var(--sea)}.benefit-body p,.highlight-card p{font-size:.86rem;color:var(--muted);margin-top:8px}.highlight-head{display:flex;gap:10px;align-items:center;font-weight:650}.highlight-head .icon{color:var(--sea)}.timeline{padding:0 0 0 24px;border-left:1px solid #c9d7d3;margin-left:12px}.timeline-item{position:relative;padding:0 0 28px 12px}.timeline-item:last-child{padding-bottom:0}.timeline-item::before{content:'';width:11px;height:11px;border:3px solid var(--paper);background:var(--orange);box-shadow:0 0 0 1px var(--orange);border-radius:50%;position:absolute;left:-30px;top:6px}.timeline .time{color:var(--sea);font-size:.7rem;font-weight:750;letter-spacing:.09em;margin-bottom:4px}.timeline .title{font-weight:700;font-size:1rem;margin-bottom:6px}.timeline .desc{font-size:.88rem;color:var(--muted)}.included-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.included-card{border:1px solid var(--line);border-radius:10px;background:white;padding:20px}.card-head{font-weight:700;display:flex;gap:8px;align-items:center;margin-bottom:16px}.include .card-head{color:var(--green)}.included-card ul{list-style:none;padding:0}.included-card li{display:flex;gap:9px;align-items:start;font-size:.84rem;margin:12px 0}.included-card li .icon{width:17px;height:17px;flex-basis:17px;margin-top:4px}.include li .icon{color:var(--green)}.exclude li .icon{color:var(--muted)}.know-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.know-chip{font-size:.82rem;display:flex;align-items:start;gap:9px;padding:12px;background:var(--sand);border-radius:8px}.know-chip .icon{width:18px;height:18px;flex-basis:18px;margin-top:3px;color:var(--sea)}.info-note{padding:20px;background:#edf2ee;color:var(--green);border-radius:8px;font-size:.84rem}.info-note>.icon{margin-right:6px}.related-links{padding:32px 0}.related-links h2{font-size:1.5rem;margin-bottom:16px}.link-grid{display:flex;gap:8px;flex-wrap:wrap}.link-grid a{padding:10px 16px;min-height:44px;background:white;border:1px solid var(--line);border-radius:6px;font-size:.82rem}.link-grid a:hover{border-color:var(--sea);color:var(--sea)}
/* Native photo gallery, no autoplay or third-party runtime */
.gallery-section{margin-bottom:12px}.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0}.gallery-heading h2{font-size:.9rem;letter-spacing:0}.gallery-controls{display:flex;gap:8px}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:white;border-radius:8px}.icon-button:hover{background:var(--sand)}.gallery-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#acb9b6 var(--sand);padding:3px 3px 12px}.gallery-photo{padding:0;flex:0 0 190px;scroll-snap-align:start;border-radius:8px;overflow:hidden;background:var(--sand)}.gallery-photo img{width:190px;height:130px;object-fit:cover}.photo-dialog{padding:20px;background:var(--navy);color:white;border:0;border-radius:12px;width:min(1100px,calc(100% - 24px));max-height:95dvh}.photo-dialog::backdrop{background:#061322db}.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.dialog-toolbar .icon-button{background:#ffffff15;color:white;border-color:#ffffff60}.dialog-image{width:100%;height:min(70dvh,760px);object-fit:contain}.dialog-caption{font-size:.8rem;text-align:center;margin-top:12px}
.dialog-stage{position:relative;min-height:0}.dialog-backdrop,.dialog-stage-control,.dialog-fit-button,.dialog-thumbs{display:none}
/* Existing booking fields and calculation IDs retained */
#bookingEngine{width:100%;padding-top:40px;margin-bottom:32px;scroll-margin-top:24px}.booking-card{border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:12px;background:white;padding:28px}.booking-card .card-header{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:24px}.booking-card .card-header .h2{font-size:1.45rem;margin-bottom:16px}.price-big{font-size:1.8rem;font-weight:750;color:var(--navy);line-height:1.3;margin-bottom:12px}.price-big small{font-size:.85rem;font-weight:400;color:var(--muted)}.trust-row{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.73rem;color:var(--green)}.trust-row span{display:flex;align-items:center;gap:5px}.trust-row .icon{width:15px;height:15px;flex-basis:15px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.8rem;font-weight:650;margin-bottom:8px}.form-group label .icon{width:16px;height:16px;vertical-align:-3px;flex-basis:16px}.required{color:#a93623}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;min-width:0;min-height:48px;border:1px solid #b9c3c5;border-radius:7px;padding:12px;background:white;color:var(--ink);font-size:16px;line-height:1.4}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#737e83;font-size:.875rem}input:focus,select:focus,textarea:focus{border-color:var(--sea)}.stepper-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.stepper-label{font-size:.875rem;font-weight:650}.stepper-label small{display:block;font-size:.75rem;font-weight:400;color:var(--muted)}.stepper-controls{display:flex;align-items:center;gap:12px}.stepper-controls input{display:none!important}.stepper-btn{border:1px solid var(--line);border-radius:8px;width:44px;height:44px;background:var(--paper);font-size:1.2rem}.stepper-btn:hover{background:var(--sand)}.stepper-value{min-width:20px;text-align:center;font-weight:650}.booking-summary{background:var(--sand);border-radius:8px;padding:18px;margin:24px 0}.summary-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:.82rem;margin:6px 0}.summary-row .label{min-width:68px}.summary-row .value,.summary-row .price{font-weight:650}.summary-row .separator{color:var(--muted)}.summary-row.total{border-top:1px solid #cdd0c8;padding-top:12px;margin-top:12px;font-size:1rem;font-weight:700}.booking-card .btn-whatsapp{width:100%}.booking-note{font-size:.75rem;color:var(--muted);line-height:1.5;margin-top:14px}.faq-list{display:grid;gap:10px}.faq-item{border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden}.faq-question{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;min-height:52px;font-weight:600;font-size:.875rem;text-align:left}.faq-question:hover{background:var(--sand)}.faq-question>.icon{flex-shrink:0}.faq-answer{display:none;padding:0 20px 20px;color:var(--muted);font-size:.88rem}.faq-item.open .faq-answer{display:block}.faq-item.open .faq-question>.icon{transform:rotate(180deg)}
/* Responsive layouts: 320px phones through wide desktop */
@media(min-width:1440px){.hero-photo{height:550px}}
@media(max-width:1199px){.container{width:calc(100% - 48px)}.header-nav{gap:18px}.header-logo img{width:154px}.header-actions .support-link{font-size:0;gap:0}.header-actions .support-link .icon{width:23px;height:23px}.header-inner{gap:20px}.home-hero{gap:32px}.detail-layout{grid-template-columns:minmax(0,1fr) 290px;gap:32px}.product-hero .hero-content{padding:28px}.booking-aside{padding:22px}.destination-card{grid-template-columns:.9fr 1.1fr}.destination-copy{padding:24px}.footer-grid{gap:28px}}
@media(max-width:959px){:root{--header-height:76px}.header-nav,.header-actions{display:none}.header-hamburger{display:inline-flex;align-items:center;justify-content:center}.header-logo img{width:162px}.mobile-menu:not([hidden]){display:block;position:absolute;top:75px;left:0;width:100%;max-height:calc(100dvh - 76px);overflow-y:auto;background:white;border-bottom:1px solid var(--line);padding:20px 24px;box-shadow:var(--shadow-md)}.mobile-menu .mobile-group{padding-block:12px;border-bottom:1px solid var(--line)}.mobile-menu strong{display:block;font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:8px 12px}.mobile-menu a{display:block;padding:12px;border-radius:6px;font-size:.9rem;min-height:44px}.mobile-menu a:hover{background:var(--sand)}.home-hero{gap:28px;padding-block:32px}.hero-photo{height:430px}.home-hero h1{font-size:3rem}.home-hero .hero-copy>p{font-size:.94rem}.home-hero .button-row{gap:8px}.home-hero .button-row>a{padding:12px 14px}.confidence-inner{gap:20px}.confidence-item{font-size:.78rem}.confidence-item small{font-size:.7rem}.hub-destinations{gap:20px}.destination-card{display:flex;flex-direction:column}.destination-card img{height:210px;min-height:0}.destination-copy{flex:1}.tour-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.transfer-banner{gap:32px;padding:32px}.seasonal{gap:32px}.listing-hero .hero-photo{height:330px}.listing-hero h1{font-size:2.6rem}.detail-layout{display:block}.booking-aside{display:none}.product-hero h1{font-size:2rem}.product-hero .hero-content{padding:24px}.product-hero .hero-actions{gap:8px}.product-hero .hero-actions a{padding:12px 14px;font-size:.8rem}.footer-grid{grid-template-columns:1.5fr 1fr;gap:32px}.why{padding:28px;gap:24px}.why>div{display:block}.why>div>.icon{margin-bottom:12px}.mobile-action{display:flex;position:fixed;bottom:0;left:0;width:100%;padding:10px 24px calc(10px + env(safe-area-inset-bottom));background:white;box-shadow:0 -2px 16px #10284610;border-top:1px solid var(--line);z-index:70;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.mobile-action .mobile-label{font-size:.8rem;font-weight:700;color:var(--navy)}.mobile-action .mobile-label small{font-size:.68rem;font-weight:400;display:block;color:var(--muted)}.mobile-action .btn-primary{min-height:44px;font-size:.8rem;padding:10px 16px}.site-footer{padding-bottom:100px}.mobile-action.is-suppressed{display:none}.transfer-steps{gap:24px}}
@media(max-width:639px){:root{--header-height:72px}.container{width:calc(100% - 32px)}.site-header{height:72px}.header-logo img{width:150px}.mobile-menu:not([hidden]){top:71px;max-height:calc(100dvh - 72px)}.home-hero{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-block:28px}.home-hero h1{font-size:2.7rem;max-width:11ch;margin-bottom:18px}.home-hero .hero-copy>p{font-size:.95rem;max-width:none;margin-bottom:20px}.home-hero .eyebrow{font-size:.64rem;margin-bottom:12px}.hero-photo{height:300px;border-radius:12px}.hero-note{margin-top:18px;font-size:.72rem}.photo-caption{bottom:16px;left:16px;right:16px;padding:12px 14px}.photo-caption strong{font-size:.8rem}.photo-caption span{font-size:.65rem}.confidence-inner{grid-template-columns:1fr;gap:18px;padding-block:24px}.confidence-item{font-size:.86rem;gap:14px}.confidence-item small{font-size:.74rem}.section{padding-block:32px}.section-top{display:block;margin-bottom:22px}.section-top .text-link{margin-top:12px;font-size:.85rem}.section-top p{font-size:.9rem}.hub-destinations{grid-template-columns:1fr;gap:20px}.destination-card{display:grid;grid-template-columns:.9fr 1.1fr}.destination-card img{height:100%;min-height:230px}.destination-copy{padding:20px}.destination-copy h3{font-size:1.35rem}.destination-copy p{font-size:.8rem}.destination-copy .text-link{font-size:.8rem}.micro-label{font-size:.62rem}.tour-grid{grid-template-columns:minmax(0,1fr);gap:20px}.card-body{padding:20px}.card-body h3{font-size:1.2rem}.card-photo{aspect-ratio:1.65}.card-body>p{font-size:.88rem}.tour-meta{font-size:.78rem}.card-foot{padding-top:14px}.card-foot .price{font-size:.95rem}.card-foot .link{font-size:.85rem}.transfer-banner{display:block;padding:28px 24px;border-radius:12px}.route-links{margin-top:24px}.route-link{padding:16px;font-size:.85rem}.seasonal{grid-template-columns:1fr;gap:24px}.seasonal img{height:250px}.seasonal p{font-size:.9rem}.why{grid-template-columns:1fr;padding:24px;gap:24px;margin-top:32px}.why>div{display:flex;gap:14px}.why>div>.icon{margin-top:3px}.why h2{font-size:1.5rem}.final-cta{padding:32px 20px;margin-top:32px}.final-cta p{font-size:.9rem}.site-footer{margin-top:40px;padding-top:36px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-intro{grid-column:1/-1}.footer-intro p{max-width:40ch}.footer-bottom{flex-direction:column;font-size:.7rem}.footer-grid a:not(.footer-brand){font-size:.79rem;min-height:36px}.footer-grid h3{font-size:.8rem}.footer-contact{grid-column:1/-1}.mobile-action{padding-inline:16px;gap:12px}.mobile-action .btn-primary{font-size:.77rem;padding-inline:14px}.breadcrumbs{padding-block:16px;font-size:.66rem}.breadcrumbs ol{gap:6px}.breadcrumbs li{gap:6px}.listing-hero{padding-top:8px;gap:20px}.listing-hero h1{font-size:2.3rem;max-width:18ch}.listing-hero .hero-photo{height:210px}.service-switch{margin-bottom:16px}.service-switch a{font-size:.82rem;padding:8px 12px}.catalogue{padding-top:16px}.catalogue-toolbar{padding:16px;gap:16px}.search-field,.sort-field{width:100%;min-width:0}.filter-chips{gap:7px}.filter-chip{padding:9px 12px;font-size:.75rem}.result-line{font-size:.75rem;align-items:center}.planning{padding:20px;margin-block:28px}.planning h2{font-size:1.35rem}.transfer-steps{grid-template-columns:1fr;gap:28px}.transfer-steps>div{padding-bottom:24px;border-bottom:1px solid var(--line)}.step-number{margin-bottom:12px}.transfer-facts{font-size:.78rem;gap:12px}.product-hero{display:flex;flex-direction:column;margin-top:0;border-radius:12px;margin-bottom:16px}.product-hero .hero-content{padding:24px 20px;order:1}.product-hero h1{font-size:1.85rem;line-height:1.13;margin-bottom:16px}.product-image{height:210px;order:0}.product-image>img{height:210px}.product-hero .hero-badge{font-size:.63rem;letter-spacing:.05em;margin-bottom:12px}.hero-meta{font-size:.76rem;gap:8px 14px;margin-bottom:14px}.hero-price{font-size:1.45rem;margin-bottom:14px}.hero-features{font-size:.75rem;gap:5px;margin-bottom:18px}.product-hero .hero-actions a{font-size:.8rem;padding:12px;flex:1}.view-photos{bottom:12px;right:12px;min-height:44px;font-size:.75rem;padding:10px 14px}.policy-note{font-size:.68rem;margin-top:14px}.detail-content>section{padding-block:28px}.detail-content .h2{font-size:1.5rem}.detail-content .section-heading p{font-size:.9rem}.glance-grid{gap:10px}.glance-item{display:block;padding:14px;font-size:.8rem}.glance-item>.icon{margin-bottom:8px}.glance-text small{font-size:.7rem}.benefits-grid,.highlights-grid,.included-grid{grid-template-columns:1fr;gap:14px}.benefit-card,.highlight-card,.included-card{padding:20px}.benefit-card{display:flex;gap:14px}.benefit-icon{margin-top:3px}.know-grid{gap:10px}.know-chip{font-size:.74rem;padding:12px;display:block}.know-chip .icon{display:block;margin-bottom:8px}.info-note{padding:16px;font-size:.8rem}.gallery-photo{flex-basis:150px}.gallery-photo img{width:150px;height:105px}.gallery-track{gap:10px}.gallery-heading h2{font-size:.8rem}.booking-card{padding:20px 16px}.booking-card .card-header .h2{font-size:1.35rem}.booking-summary{padding:14px}.summary-row{gap:4px;font-size:.77rem}.summary-row .label{min-width:62px}.summary-row.total{font-size:.95rem}.trust-row{display:grid;gap:8px}.form-group{margin-bottom:18px}.booking-card .btn-whatsapp{font-size:.82rem;padding:14px 10px}.stepper-controls{gap:8px}.faq-question{padding:16px;font-size:.84rem}.faq-answer{padding:0 16px 18px;font-size:.84rem}}
@media(max-width:359px){.home-hero h1{font-size:2.4rem}.destination-card{display:flex}.destination-card img{height:190px;min-height:0}.product-hero .hero-actions{flex-direction:column}.mobile-action .mobile-label{font-size:.73rem}.footer-grid{gap:24px 16px}.hero-photo{height:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.tour-card:hover,.destination-card:hover{transform:none}}
.spaced-note{margin-top:16px}.form-divider{margin:20px 0 12px;border-top:1px solid var(--line);padding-top:16px}.form-subheading{font-weight:650;font-size:.875rem;margin-bottom:8px}
/* Phase 2 editorial and request components, using the established design tokens. */
.footer-grid h2{color:white;font-size:.9rem;letter-spacing:0;margin-bottom:16px}.centered-actions{justify-content:center}.destination-hero h1{max-width:13ch}.destination-intro>p{font-size:1.03rem;line-height:1.8;max-width:83ch}.service-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-entry{display:flex;flex-direction:column;align-items:start;padding:30px;background:white;border:1px solid var(--line);border-radius:12px}.service-entry>.icon{color:var(--sea);margin-bottom:20px;width:28px;height:28px}.service-entry h3{font-size:1.35rem;margin-bottom:12px}.service-entry p{color:var(--muted);margin-bottom:16px}.service-entry .text-link{margin-top:auto}.service-entry:hover{border-color:var(--sea);box-shadow:var(--shadow-sm)}.editorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}.editorial-grid h3{margin-bottom:14px}.editorial-grid p{color:var(--muted);font-size:.95rem}.source-note{font-size:.78rem!important;line-height:1.6;margin-top:20px;color:var(--muted)}.source-note a,.editorial-faq a,.practical-copy a,.form-help a,.form-errors a{color:var(--sea);text-decoration:underline;text-underline-offset:3px}.heritage-note>p{max-width:85ch}.editorial-faq{border:1px solid var(--line);border-radius:9px;background:white}.editorial-faq summary{cursor:pointer;font-weight:650;font-size:.95rem;padding:18px 22px;min-height:56px}.editorial-faq>div{padding:0 22px 22px;color:var(--muted);font-size:.92rem;max-width:90ch}.editorial-faq[open] summary{color:var(--sea)}.product-lead{color:var(--muted);font-size:.95rem;margin-bottom:20px}.price-basis{font-size:.78rem;color:var(--muted);margin-top:-10px;margin-bottom:22px}.card-pickup{font-size:.76rem!important;line-height:1.5}.card-state{border-left:2px solid var(--sea);padding-left:10px}.card-foot{align-items:start;flex-wrap:wrap}.card-foot .price{max-width:24ch}.product-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}.product-facts>div{padding:18px;background:white;border:1px solid var(--line);border-radius:8px}.product-facts dt{font-size:.75rem;color:var(--sea);font-weight:700;margin-bottom:6px}.product-facts dd{font-size:.9rem;line-height:1.6;margin:0}.detail-content>section>p{font-size:.96rem;line-height:1.85;color:var(--muted)}.detail-content>section .section-heading h2{font-size:1.65rem}.editorial-list{margin:18px 0 0;padding-left:22px}.editorial-list li{padding:5px 0;font-size:.94rem}.itinerary-list{padding-left:25px}.itinerary-list li{padding:0 0 20px 12px;font-size:.96rem;color:var(--muted)}.itinerary-list li::marker{color:var(--orange);font-weight:750}.practical-copy{display:grid;gap:14px}.practical-copy h3{margin-top:12px;font-size:1.05rem}.practical-copy p{color:var(--muted);font-size:.92rem;line-height:1.8}.planning .editorial-list{margin-top:10px}.process-list{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;counter-reset:process;list-style:none;padding:0}.process-list li{counter-increment:process}.process-list li::before{content:'0' counter(process);display:inline-flex;padding:8px 14px;border-radius:8px;background:var(--sand);color:var(--orange);font-weight:750;margin-bottom:18px}.process-list h3{margin-bottom:12px}.process-list p{font-size:.92rem;color:var(--muted)}.transfer-steps>div>.icon{color:var(--sea);margin-bottom:16px}.transfer-steps p+p{margin-top:12px}.transfer-request-section{max-width:1000px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.form-intro{margin-bottom:24px;font-size:.85rem;color:var(--muted)}.form-help{font-size:.78rem;line-height:1.65;color:var(--muted);margin-top:8px}.pickup-help{margin:-8px 0 22px}.booking-product-title{font-weight:650;margin:0 0 16px}.request-form .stepper-controls input{display:block!important;width:64px!important;text-align:center;padding:8px;min-height:44px}.traveller-fields{padding:16px 0;margin:12px 0 22px;border:0;border-block:1px solid var(--line);min-width:0}.traveller-fields legend{font-size:.95rem;font-weight:700;padding-right:12px}.form-errors{padding:20px;border:1px solid #a93623;background:#fff6f2;color:#832d19;border-radius:8px;margin:20px 0}.form-errors ul{margin-top:8px;font-size:.88rem}.request-review{margin-top:28px;padding:24px;border:1px solid var(--sea);border-radius:10px;background:var(--paper);scroll-margin-top:110px}.request-review>p{margin:12px 0;font-size:.85rem}.request-review pre{font:400 .82rem/1.75 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:20px 0;padding:18px;background:white;border:1px solid var(--line);border-radius:8px}.request-review .button-row>a,.request-review .button-row>button{width:auto;flex:1}.summary-row .value{overflow-wrap:anywhere}.request-form .booking-summary .label{min-width:78px}.request-form [aria-invalid=true]{border-color:#a93623}.request-form .stepper-label{min-width:0}.request-form .stepper-label small{max-width:28ch}.page-product .product-image>img{max-height:none}.page-product .booking-aside h2{font-size:1.1rem}.page-product .booking-aside .hero-price{font-size:1.35rem}.page-product .booking-aside .hero-price+p{font-size:.78rem}.page-listing .listing-hero h1{max-width:18ch}
@media(max-width:959px){.process-list{gap:22px}.editorial-grid{gap:24px}.destination-hero .hero-photo{height:400px}.destination-hero h1{font-size:3rem}.service-entry{padding:24px}}
@media(max-width:639px){.service-entry-grid,.editorial-grid,.process-list,.form-grid{grid-template-columns:1fr}.destination-hero h1{font-size:2.7rem;max-width:13ch}.destination-hero .hero-photo{height:270px}.service-entry{padding:24px}.source-note{font-size:.75rem!important}.destination-intro>p{font-size:.95rem}.product-facts{grid-template-columns:1fr}.product-facts>div{padding:16px}.product-lead{font-size:.88rem}.price-basis{font-size:.74rem}.editorial-faq summary{font-size:.87rem;padding:16px}.editorial-faq>div{font-size:.87rem;padding:0 16px 18px}.detail-content>section .section-heading h2{font-size:1.45rem}.request-review{padding:16px}.request-review pre{padding:12px;font-size:.77rem}.request-review .button-row{flex-direction:column}.request-form .stepper-controls{gap:6px}.request-form .stepper-controls input{width:48px!important}.request-form .stepper-label{font-size:.82rem}.request-form .stepper-label small{font-size:.7rem;max-width:18ch}.footer-grid h2{font-size:.82rem}.footer-grid a:not(.footer-brand){min-height:44px}.transfer-steps>div:last-child{border-bottom:0}.page-product .product-image>img{height:210px}}
@media(max-width:359px){.request-form .stepper-btn{width:44px;min-width:44px}.request-form .stepper-controls input{width:40px!important}.request-form .stepper-row{align-items:flex-start;flex-wrap:wrap;gap:8px}.request-form .stepper-controls{margin-left:auto}}
@media(max-width:639px){
  .photo-dialog{inset:0;margin:0;padding:0;width:100%;height:100dvh;max-width:none;max-height:none;border-radius:0;overflow:hidden;background:#071522}
  .photo-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}
  .photo-dialog::backdrop{background:#071522}
  .dialog-toolbar{min-height:68px;margin:0;padding:max(12px,env(safe-area-inset-top)) 14px 10px;border-bottom:1px solid #ffffff2e;background:#071522f2;z-index:3}
  .dialog-toolbar .dialog-count{font-size:.86rem;font-weight:700}
  .dialog-toolbar>.gallery-controls [data-photo-direction]{display:none}
  .dialog-toolbar .icon-button{width:44px;height:44px;border-radius:999px;background:#ffffff10;border-color:#ffffff2e}
  .dialog-stage{display:grid;place-items:center;isolation:isolate;overflow:hidden;touch-action:pan-y;user-select:none}
  .dialog-stage::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#06111c44,transparent 25%,transparent 68%,#06111cbb);z-index:-1;pointer-events:none}
  .dialog-backdrop{display:block;position:absolute;inset:-30px;width:calc(100% + 60px);height:calc(100% + 60px);object-fit:cover;filter:blur(24px) brightness(.42) saturate(.8);transform:scale(1.08);z-index:-2}
  .dialog-image{position:relative;width:100%;height:100%;max-height:none;object-fit:contain;transition:opacity 140ms ease,transform 180ms ease}
  .photo-dialog.is-fill .dialog-image{object-fit:cover}
  .dialog-image.is-changing{opacity:.45;transform:scale(.985)}
  .dialog-stage-control{display:grid;place-items:center;position:absolute;top:50%;transform:translateY(-50%);width:48px;height:58px;border:1px solid #ffffff42;background:#071522b8;color:white;border-radius:12px;z-index:2}
  .dialog-stage-control:hover{background:#071522e8}
  .dialog-stage-control.previous{left:10px}.dialog-stage-control.next{right:10px}
  .dialog-fit-button{display:inline-flex;align-items:center;gap:7px;position:absolute;top:12px;right:12px;min-height:40px;padding:8px 13px;border:1px solid #ffffff42;background:#071522c7;color:white;border-radius:999px;font-size:.72rem;font-weight:700;z-index:2}
  .dialog-stage-control svg,.dialog-fit-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .dialog-fit-button svg{width:17px;height:17px;stroke-width:1.8}
  .dialog-caption{min-height:48px;margin:0;padding:12px 16px 10px;text-align:left;font-size:.82rem;line-height:1.45;background:#0b1d2e;color:#edf2f4}
  .dialog-thumbs{display:flex;width:100%;min-width:0;gap:9px;overflow-x:auto;padding:0 16px max(14px,env(safe-area-inset-bottom));background:#0b1d2e;scrollbar-width:none}
  .dialog-thumbs::-webkit-scrollbar{display:none}
  .dialog-thumb{flex:0 0 72px;width:72px;height:56px;padding:0;border:2px solid transparent;border-radius:9px;overflow:hidden;background:var(--navy);opacity:.58}
  .dialog-thumb[aria-current=true]{border-color:var(--orange);opacity:1;box-shadow:0 0 0 2px #071522,0 0 0 4px var(--orange)}
  .dialog-thumb img{display:block;width:100%;height:100%;object-fit:cover}
}
@media print{.site-header,.site-footer,.mobile-action,.booking-aside,.gallery-controls,.view-photos{display:none}.container{width:100%}.detail-layout{display:block}.faq-answer{display:block}.editorial-faq>div{display:block}.product-hero{break-inside:avoid}body{background:white}}
/* Tour editorial content: readable copy and activity-led itinerary. */
.product-facts dt{display:flex;align-items:center;gap:10px;font-size:.875rem;margin-bottom:10px}
.product-facts .fact-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:8px;background:#edf4f2;color:var(--sea)}
.product-facts .fact-icon .icon{width:19px;height:19px}
.experience-label{display:block;color:var(--sea);font-size:.875rem;font-weight:700;line-height:1.5;margin-bottom:8px}
.experience-story-copy{min-width:0;width:100%;max-width:none}
.experience-story-copy p{max-width:none;font-size:1rem;line-height:1.85;color:var(--muted);margin-top:18px}
.experience-story-copy .experience-story-lead{font-size:1.125rem;font-weight:600;line-height:1.75;color:var(--navy);margin-top:0;padding-left:20px;border-left:3px solid var(--sea)}
.experience-highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.experience-highlights>li{display:flex;align-items:flex-start;gap:14px;padding:22px;border:1px solid #d3e4e0;border-radius:14px;background:#f0f7f5;min-width:0}
.experience-highlights>li:nth-child(4n+2),.experience-highlights>li:nth-child(4n+3){background:#fff5ec;border-color:#efdfd0}
.experience-highlights p{font-size:1rem;line-height:1.7;color:var(--ink)}
.experience-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:white;color:var(--sea);box-shadow:0 2px 5px #10284608}
.experience-highlights>li:nth-child(4n+2) .experience-icon,.experience-highlights>li:nth-child(4n+3) .experience-icon{color:var(--orange)}
.experience-route-panel{border:1px solid var(--line);border-radius:16px;padding:32px;background:white;min-width:0}
.detail-content .experience-highlights{grid-template-columns:minmax(0,1fr);gap:0}
.detail-content .experience-highlights>li{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:18px 0;gap:18px;align-items:center}
.detail-content .experience-highlights>li:first-child{padding-top:0}
.detail-content .experience-highlights>li:last-child{border-bottom:0;padding-bottom:0}
.detail-content .experience-highlights .experience-icon{box-shadow:none;background:var(--theme-bg,#edf4f2);color:var(--theme-ink,var(--sea));border-radius:10px}
.detail-content [data-theme]{--theme-bg:#edf4f2;--theme-ink:#1a6b68}
.detail-content [data-theme=hotel],.detail-content [data-theme=bag],.detail-content [data-theme=food]{--theme-bg:#fbefe4;--theme-ink:#96501b}
.detail-content [data-theme=waves],.detail-content [data-theme=boat]{--theme-bg:#eaf3fb;--theme-ink:#23658a}
.detail-content [data-theme=sun]{--theme-bg:#fff2d8;--theme-ink:#8a5a13}
.detail-content [data-theme=star]{--theme-bg:#eff0fa;--theme-ink:#55529a}
.experience-route-meta{display:flex;flex-wrap:wrap;gap:12px 24px;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:28px}
.experience-route-meta>span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.875rem;font-weight:650}
.experience-timeline{list-style:none;margin:0;padding:0}
.experience-timeline>li{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:20px;padding:0 0 28px;font-size:1rem;isolation:isolate}
.experience-timeline>li:not(:last-child)::before{content:'';position:absolute;left:23px;top:48px;bottom:0;border-left:2px solid #d9e3e0;z-index:-1}
.experience-stop{display:grid;place-items:center;width:48px;height:48px;border:1px solid transparent;border-radius:50%;background:var(--theme-bg,#edf6f3);color:var(--theme-ink,var(--sea))}
.experience-timeline>li:first-child .experience-stop,.experience-timeline>li:last-child .experience-stop{background:var(--navy);border-color:var(--navy);color:white}
.experience-step-copy{min-width:0;padding-top:3px}
.experience-step-copy h3{font-size:1.0625rem;line-height:1.45;margin-bottom:6px;letter-spacing:0}
.experience-step-copy p{font-size:1rem;line-height:1.8;color:var(--muted)}
.experience-timeline>li:last-child{padding-bottom:0}
.detail-content>section .experience-route-note{display:flex;align-items:flex-start;gap:10px;padding:16px;margin-top:26px;background:var(--paper);border-radius:10px;font-size:.875rem;line-height:1.7;color:var(--muted)}
.experience-route-note .icon{margin-top:2px;color:var(--sea)}
.experience-highlights.is-compact{grid-template-columns:minmax(0,1fr);gap:12px}
.experience-highlights.is-compact>li{padding:14px;background:white;border-color:var(--line)}
.experience-highlights.is-compact .experience-icon{background:#edf6f3;box-shadow:none}
.experience-highlights.is-compact p{font-size:1rem}
@media(max-width:1100px) and (min-width:960px){.experience-highlights{grid-template-columns:minmax(0,1fr)}}
@media(max-width:639px){.experience-highlights{grid-template-columns:minmax(0,1fr)}.experience-highlights>li{padding:18px}.experience-route-panel{padding:24px 20px;border-radius:12px}.experience-timeline>li{grid-template-columns:38px minmax(0,1fr);gap:14px;padding-bottom:26px}.experience-stop{width:38px;height:38px}.experience-timeline>li:not(:last-child)::before{left:18px;top:38px}.experience-route-meta{gap:12px}.experience-step-copy{padding-top:0}.experience-story-copy .experience-story-lead{font-size:1.0625rem;padding-left:16px}.detail-content .experience-route-note{padding:14px;font-size:.875rem}}
@media print{.experience-route-panel,.experience-highlights>li{break-inside:avoid}}
/* Country navigation and Egypt destination pages. */
.nav-countries{display:grid;grid-template-columns:160px 230px;gap:12px;max-height:calc(100dvh - 120px);overflow-y:auto}.nav-countries a{padding:8px 12px;min-height:40px;font-size:.83rem}.nav-country-group .nav-country{font-weight:750;color:var(--orange);border-bottom:1px solid var(--line);margin-bottom:8px}.nav-country-group a[aria-current=page]{background:var(--sand)}.mobile-nav-section{border-bottom:1px solid var(--line);padding:8px 0}.mobile-nav-section>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:48px;font-weight:700;padding:8px 12px}.mobile-nav-section>summary::marker{content:''}.mobile-nav-section .nav-country-group{padding-bottom:12px}.destination-panel{background:var(--sand);border:1px solid #e1d7c6;border-radius:16px;padding:40px;min-height:420px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;isolation:isolate}.destination-panel:before{content:'';position:absolute;z-index:-1;width:340px;height:340px;border:55px solid #d7c39f66;border-radius:50%;right:-170px;top:70px}.destination-panel:after{content:'';position:absolute;z-index:-1;inset:auto 0 0;height:100px;background:#1a6b6814}.destination-panel-name{font-size:clamp(2.6rem,4.6vw,4.8rem);line-height:1.08;font-weight:750;letter-spacing:-.045em;max-width:10ch;overflow-wrap:normal}.destination-panel-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:1rem;font-weight:650;color:var(--sea);padding-top:30px}.destination-panel-bottom .icon{width:42px;height:42px}.page-transfer .hero-photo:has(.destination-panel){height:auto}.egypt-area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.egypt-area-card{background:white;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;overflow:hidden}.egypt-area-image{display:block;aspect-ratio:16/7;overflow:hidden;background:var(--sand)}.egypt-area-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--motion)}.egypt-area-card:hover .egypt-area-image img{transform:scale(1.025)}.egypt-area-card-copy{padding:28px;display:flex;flex-direction:column;flex:1}.egypt-area-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.egypt-area-top .micro-label{color:var(--sea)}.area-number{font-size:.85rem;color:var(--muted)}.egypt-area-card h3{font-size:1.7rem;margin-bottom:12px}.area-title:hover{text-decoration:underline}.egypt-area-card-copy>p{color:var(--muted);font-size:.92rem;margin-bottom:20px}.area-service-links{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:auto}.area-service-links>a:last-child{margin-left:auto}.service-entry>.icon{margin-bottom:16px}
@media(max-width:959px){.destination-panel{padding:28px;min-height:360px}.nav-countries{max-height:calc(100dvh - 100px)}}
@media(max-width:639px){.egypt-area-grid{grid-template-columns:minmax(0,1fr);gap:16px}.egypt-area-card-copy{padding:24px}.egypt-area-image{aspect-ratio:16/9}.destination-panel{padding:28px;min-height:270px}.destination-panel-name{font-size:2.7rem}.page-transfer .hero-photo:has(.destination-panel){height:auto}.destination-panel .eyebrow{margin-bottom:24px}.area-service-links{gap:12px 20px}}
