/* Quiet geographic motion behind the travel content. */
body{isolation:isolate}
.travel-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.travel-globe{position:absolute;width:min(1100px,90vw);height:auto;right:-20%;top:10%;color:var(--accent);opacity:.2;transform:rotate(-18deg)}
.globe-meridians{stroke:currentColor;stroke-width:1;opacity:.35}
.travel-route{stroke:var(--gold);stroke-width:2;stroke-dasharray:4 14;animation:route-flow 24s linear infinite;animation-play-state:paused;opacity:.65}
.route-return{animation-direction:reverse;animation-duration:32s}
.travel-waypoints{fill:var(--gold);opacity:.8}
.travel-waypoints circle{transform-box:fill-box;transform-origin:center;animation:waypoint-breathe 6s ease-in-out infinite;animation-play-state:paused}
.travel-waypoints circle:nth-child(even){animation-delay:-3s}
.travel-light{position:absolute;width:36vw;height:36vw;border-radius:50%;opacity:.18}
.travel-light-blue{left:-16%;top:28%;background:radial-gradient(circle,rgba(49,145,211,.55),transparent 68%)}
.travel-light-gold{right:-16%;bottom:0;background:radial-gradient(circle,rgba(197,160,82,.4),transparent 68%)}
[data-scene-active='1'] .travel-route,[data-scene-active='1'] .travel-waypoints circle,[data-scene-active='1'] .compass-needle{animation-play-state:running}
/* Credentials retain the exact owner artwork; the IATA plate leads. */
.trust-heading{display:flex;align-items:center;justify-content:space-between;gap:32px}
.trust-heading h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.12;margin:0 0 16px}
.trust-heading p{margin:0;color:var(--muted);max-width:50ch}
.trust-compass{width:100px;height:100px;color:var(--gold);stroke:currentColor;stroke-width:1.2;flex-shrink:0;opacity:.7}
.compass-needle{transform-origin:50px 50px;animation:compass-settle 16s ease-in-out infinite;animation-play-state:paused}
.certifications .certification-list{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;margin:32px 0 16px}
.certifications .credential-plate{position:relative;flex-direction:row;align-items:center;justify-content:start;text-align:left;gap:16px;padding:20px;border-radius:16px;background:linear-gradient(145deg,var(--reflection),transparent 75%),var(--glass);box-shadow:0 12px 32px rgba(4,34,65,.1);overflow:hidden}
.credential-plate:before{content:'';position:absolute;right:-32px;top:-40px;width:130px;height:130px;border-radius:50%;background:var(--soft);pointer-events:none}
.certifications .credential-plate:first-child{grid-row:span 2;flex-direction:column;align-items:start;justify-content:center;padding:32px;gap:24px}
.credential-mark{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:112px;height:120px;border-radius:12px;background:#fff;overflow:hidden}
.credential-mark .certification-emblem{flex-shrink:0;width:176px;height:150px;border-radius:0;transform:scale(.72)}
.credential-plate:first-child .credential-mark{width:176px;height:150px}.credential-plate:first-child .certification-emblem{transform:none}
.credential-plate>div{position:relative;display:grid;gap:8px;min-width:0}
.certification-list .credential-plate strong{font-size:1.2rem;color:var(--gold)}
.credential-plate>div>span{font-size:.82rem;line-height:1.5;color:var(--muted)}
.credential-plate:first-child strong{font-size:1.75rem}
.credential-plate:first-child>div>span{font-size:1rem;max-width:24ch}
.sidebar-certifications .certification-list li>div{display:contents}
/* Attributed travel postcards, with steady review copy. */
.google-reviews{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr);gap:24px 48px;align-items:center}
.google-reviews .reviews-heading{display:block}
.google-reviews h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.12;margin:0 0 24px}
.review-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.review-rating>.review-stars{flex-basis:100%}.review-rating>span:last-child{font-size:.85rem;color:var(--muted)}
.review-stars{display:inline-flex;gap:4px;color:var(--gold)}
.review-stars svg{width:18px;height:18px;fill:currentColor}
.google-reviews .reviews-heading>.text-link{margin-top:16px}
.google-reviews .review-quotes{gap:20px;border:0;margin:0;padding:0;align-items:start}
.review-postcard{position:relative;padding:24px;border-radius:16px 16px 16px 4px;background:linear-gradient(145deg,var(--reflection),transparent 65%),var(--quiet-glass);box-shadow:0 18px 32px rgba(4,34,65,.12);min-width:0}
.review-postcard:nth-child(2){margin-top:32px}
.postcard-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:32px}.postcard-top>span:last-child{font-size:.82rem;font-weight:650;color:var(--muted)}
.review-quotes .review-postcard blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3vw,2.65rem);line-height:1.05;letter-spacing:-.02em;min-height:2.1em;margin-bottom:32px;font-weight:600}
.review-quotes .review-postcard figcaption{display:flex;flex-direction:row;align-items:center;gap:12px}
.review-postcard figcaption>div{display:grid;gap:4px;min-width:0}.review-postcard figcaption strong{font-size:.9rem}.review-postcard figcaption>div>span{font-size:.72rem;color:var(--muted)}
.review-quotes .review-initials{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;background:var(--soft);color:var(--gold);font-size:.85rem;font-weight:700;border-radius:50%}
.google-reviews .reviews-date{grid-column:2;margin:0;font-size:.75rem}
/* Expanded destination strip stays beneath the protected aircraft stage. */
@media(min-width:1000px){.flight-hero .flight-tickets{left:440px;right:40px;display:grid;grid-template-columns:repeat(3,minmax(0,180px));justify-content:end;gap:16px}.flight-tickets .flight-ticket{width:100%;min-width:0}.flight-ticket:nth-child(n+4){display:none}}
@media(min-width:1200px){.flight-hero .flight-tickets{grid-template-columns:repeat(4,minmax(0,180px))}.flight-ticket:nth-child(4){display:block}}
@media(min-width:1440px){.flight-hero .flight-tickets{grid-template-columns:repeat(6,minmax(0,180px))}.flight-ticket:nth-child(n+5){display:block}}
@media(max-width:999px){.flight-ticket:nth-child(n+3){display:none}.certifications .certification-list{grid-template-columns:1fr 1fr}.certifications .credential-plate:first-child{grid-row:auto;grid-column:1/-1;flex-direction:row;align-items:center;justify-content:start;gap:32px;padding:24px}.google-reviews{grid-template-columns:1fr;gap:24px}.google-reviews .reviews-heading{display:flex;align-items:end}.google-reviews .reviews-date{grid-column:auto}.travel-globe{width:110vw;right:-38%;opacity:.18}}
@media(max-width:600px){.trust-heading{gap:16px}.trust-heading h2{font-size:2rem}.trust-heading p{font-size:.9rem}.trust-compass{width:64px;height:64px}.certifications .certification-list{gap:12px;margin-top:24px}.certifications .credential-plate{flex-direction:column;align-items:start;padding:16px;gap:12px}.certifications .credential-plate:first-child{padding:20px;gap:16px}.credential-plate:first-child .credential-mark{width:112px;height:120px}.credential-plate:first-child .certification-emblem{transform:scale(.72)}.credential-plate:first-child strong{font-size:1.4rem}.credential-plate:first-child>div>span{font-size:.82rem}.certification-list .credential-plate strong{font-size:1.05rem}.credential-plate>div>span{font-size:.75rem}.google-reviews .reviews-heading{display:block}.google-reviews h2{font-size:2rem}.google-reviews .review-quotes{grid-template-columns:1fr;gap:16px}.review-postcard:nth-child(2){margin-top:0}.review-quotes .review-postcard blockquote{min-height:0;margin-bottom:24px;font-size:2.25rem}.postcard-top{margin-bottom:24px}.footer-wordmark{bottom:100px;font-size:20vw;opacity:.09}.site-footer:before{inset:64px -4% 0;border-radius:50% 50% 0 0 / 48px 48px 0 0}}
@keyframes route-flow{to{stroke-dashoffset:-144}}
@keyframes waypoint-breathe{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.3);opacity:1}}
@keyframes compass-settle{0%,100%{transform:rotate(-20deg)}50%{transform:rotate(18deg)}}
[data-motion=off] .travel-route,[data-motion=off] .travel-waypoints circle,[data-motion=off] .compass-needle{animation:none}
@media(prefers-reduced-motion:reduce){.travel-route,.travel-waypoints circle,.compass-needle{animation:none}}

@media(max-width:360px){.header-inner .brand{width:148px}.certifications .credential-plate{padding:12px}.credential-mark{width:104px}.trust-heading{gap:12px}.trust-compass{width:48px;height:48px}}

/* Recognizable WhatsApp mark: crisp SVG and an accessible touch area. */
a[href*="wa.me"]{min-height:44px}
a[href*="wa.me"] .whatsapp-icon{width:36px;height:36px;flex:0 0 36px;padding:7px;color:#fff;background:#128c4b;border-radius:50%;box-shadow:0 4px 12px rgb(18 140 75 / .18)}
a[href*="wa.me"]:hover .whatsapp-icon{background:#0c753e}
a[href*="wa.me"].button .whatsapp-icon{width:32px;height:32px;flex-basis:32px;padding:5px}
