/*
Theme Name: Jbal Bladi Travel
Author: Jbal Bladi Travel
Description: Thème éditorial bilingue pour voyages organisés au Maroc.
Version: 2.0.0
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: jbal-bladi
*/
:root{
  --blue:#1737ff;--orange:#ff5b22;--yellow:#ffc900;--acid:#d9ff43;
  --ink:#111412;--ivory:#f3f0e7;--white:#fffdf6;--muted:#777a72;
  --line:rgba(17,20,18,.22);--wrap:min(100% - 5rem,1440px);
  --display:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --sans:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-family:var(--sans);color:var(--ink);background:var(--ivory);font-synthesis:none
}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--ivory);overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img,svg{display:block;max-width:100%}.grain{position:fixed;z-index:999;inset:0;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.skip-link{position:fixed;z-index:1001;inset-block-start:.7rem;inset-inline-start:.7rem;padding:.8rem 1rem;color:#fff;background:var(--ink);transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:absolute;z-index:100;inset-block-start:0;inset-inline:0;width:var(--wrap);height:96px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;color:#fff;border-block-end:1px solid rgba(255,255,255,.35)}.brand{display:flex;align-items:center;gap:.75rem}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid currentColor;border-radius:50%}.brand-mark svg{width:29px;fill:none;stroke:currentColor;stroke-width:1.4}.brand strong,.brand small{display:block}.brand strong{font-size:.96rem;font-weight:750;line-height:1}.brand small{margin-block-start:.28rem;font-size:.54rem;letter-spacing:.34em}.desktop-nav{display:flex;align-items:center;gap:2.8rem}.desktop-nav a{display:flex;align-items:baseline;gap:.5rem}.desktop-nav span{font-size:.58rem;opacity:.5}.desktop-nav i{font-size:.75rem;font-style:normal;font-weight:600}.header-actions{display:flex;align-items:center;gap:1rem}.lang-switch,.menu-toggle{min-width:48px;min-height:48px;color:inherit;border:0;background:transparent;cursor:pointer}.lang-switch{font-size:.68rem;letter-spacing:.08em}.lang-switch .active-lang{font-weight:800}.menu-toggle{display:none;place-content:center;gap:7px}.menu-toggle span{display:block;width:25px;height:1.5px;background:currentColor}.mobile-nav{position:fixed;z-index:99;inset:0;padding:8rem 1.2rem 2rem;color:var(--white);background:var(--blue)}.mobile-nav a{display:block;padding-block:1rem;font-family:var(--display);font-size:clamp(2.5rem,13vw,5rem);font-weight:900;letter-spacing:-.07em;text-transform:uppercase;border-block-end:1px solid rgba(255,255,255,.35)}
.home-hero{position:relative;min-height:100svh;color:#fff;background:var(--blue);isolation:isolate;overflow:hidden}.hero-media,.hero-media img,.hero-wash{position:absolute;inset:0;width:100%;height:100%}.hero-media{overflow:hidden}.hero-media img{object-fit:cover;object-position:center 50%;transform:scale(1.04)}.hero-wash{z-index:1;background:linear-gradient(90deg,rgba(9,16,21,.22),transparent 53%),linear-gradient(0deg,rgba(4,13,25,.5),transparent 48%);mix-blend-mode:multiply}.hero-index{position:absolute;z-index:2;inset-inline-end:max(2.5rem,calc((100vw - 1440px)/2));inset-block-start:9rem;margin:0;font-size:.62rem;font-weight:700;line-height:1.5;letter-spacing:.12em}.hero-title{position:absolute;z-index:3;inset-inline:0;inset-block-start:50%;width:var(--wrap);margin-inline:auto;transform:translateY(-44%)}.micro-label{margin:0;font-size:.63rem;font-weight:750;letter-spacing:.19em;text-transform:uppercase}.hero-title .micro-label{margin-block-end:1rem}.hero-title h1{margin:0;font-family:var(--display);font-size:clamp(5rem,12.5vw,11.5rem);font-weight:900;line-height:.66;letter-spacing:-.095em;text-transform:uppercase}.hero-title .line{display:block;will-change:transform}.hero-title .line-two{margin-inline-start:14vw;color:var(--yellow)}.sun-dot{display:inline-block;margin-inline-start:.02em;color:var(--orange);font-family:Arial;font-size:.45em;vertical-align:.2em}.hero-bottom{position:absolute;z-index:3;inset-inline:0;inset-block-end:2.3rem;width:var(--wrap);margin-inline:auto;display:flex;align-items:end;justify-content:space-between}.hero-bottom p{max-width:24ch;margin:0;font-size:1.05rem;font-weight:650;line-height:1.35}.round-link{display:grid;place-items:center;width:72px;height:72px;border:1px solid rgba(255,255,255,.7);border-radius:50%;transition:color .25s,background .25s,transform .25s}.round-link:hover{color:var(--ink);background:var(--yellow);transform:rotate(-10deg)}.round-link svg{width:25px;fill:none;stroke:currentColor;stroke-width:1.5}
.ticker{overflow:hidden;color:var(--ink);background:var(--yellow);transform:rotate(-1.2deg) scale(1.02);transform-origin:center}.ticker-track{display:flex;align-items:center;width:max-content;padding-block:1rem;animation:ticker 24s linear infinite}.ticker span{font-family:var(--display);font-size:clamp(2.3rem,5.3vw,5.3rem);font-weight:900;letter-spacing:-.07em}.ticker i{margin-inline:1.4rem;color:var(--orange);font-size:2rem;font-style:normal}@keyframes ticker{to{transform:translateX(-50%)}}
.manifesto-section{position:relative;min-height:110vh;padding:clamp(7rem,14vw,13rem) max(2.5rem,calc((100vw - 1440px)/2));color:#fff;background:var(--blue);display:grid;grid-template-columns:120px 1fr 280px;align-items:start;gap:2rem}.manifesto-number{font-family:var(--display);font-size:.85rem;font-weight:900}.manifesto-text .micro-label{margin-block-end:2.2rem;color:var(--acid)}.manifesto-text h2{margin:0;font-family:var(--display);font-size:clamp(3.2rem,6.8vw,6.8rem);font-weight:900;line-height:.83;letter-spacing:-.085em;text-transform:uppercase}.manifesto-text h2 em{color:var(--yellow);font-style:normal}.manifesto-aside{align-self:end;margin:0;padding-block-start:1rem;border-block-start:1px solid rgba(255,255,255,.4);font-size:.85rem;line-height:1.65}
.map-section{position:relative;padding:clamp(7rem,12vw,11rem) max(2.5rem,calc((100vw - 1440px)/2));background:var(--ivory)}.map-heading{display:grid;grid-template-columns:180px 1fr 280px;align-items:start;gap:2rem;margin-block-end:4rem}.map-heading>div{display:flex;align-items:start;gap:1.5rem}.map-heading>div>span{padding-block-start:.8rem;font-size:.65rem;font-weight:850}.map-heading h2{margin:0;font-family:var(--display);font-size:clamp(3.4rem,7vw,6.8rem);font-weight:900;line-height:.72;letter-spacing:-.09em;text-transform:uppercase}.map-heading>p:last-child{align-self:end;margin:0;padding-block-start:1rem;border-block-start:1px solid var(--line);font-size:.8rem;line-height:1.6}.map-experience{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);min-height:720px;background:var(--blue)}.map-shell{position:relative;min-width:0;overflow:hidden}.map-shell:after{content:"";position:absolute;z-index:401;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(17,20,18,.25)}#morocco-map{position:absolute;inset:0;background:#d8d5cb}.leaflet-tile-pane{filter:grayscale(1) contrast(1.12) brightness(.94)}.leaflet-control-zoom{margin:1rem!important;border:0!important;box-shadow:none!important}.leaflet-control-zoom a{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;color:#fff!important;background:var(--blue)!important;border:0!important;border-block-end:1px solid rgba(255,255,255,.25)!important;font-family:var(--sans)!important;font-size:1.2rem!important}.leaflet-control-attribution{padding:.3rem .5rem!important;color:#555!important;background:rgba(255,253,246,.85)!important;font-size:.55rem!important}.leaflet-control-attribution a{color:inherit!important}.city-marker{background:transparent!important;border:0!important}.city-pin{position:relative;display:flex;align-items:center;gap:.45rem;width:max-content;color:var(--ink);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;transform:translate(-9px,-9px)}.city-pin i{position:relative;display:block;width:18px;height:18px;background:var(--yellow);border:3px solid var(--ink);border-radius:50%;box-shadow:0 0 0 0 rgba(255,201,0,.5);transition:transform .2s,background .2s}.city-pin span{padding:.35rem .5rem;background:rgba(255,253,246,.9);white-space:nowrap;opacity:0;transform:translateX(-5px);transition:opacity .2s,transform .2s}.leaflet-marker-icon:hover .city-pin span,.leaflet-marker-icon:focus .city-pin span,.leaflet-marker-icon.is-active .city-pin span{opacity:1;transform:none}.leaflet-marker-icon:hover .city-pin i,.leaflet-marker-icon:focus .city-pin i,.leaflet-marker-icon.is-active .city-pin i{background:var(--orange);transform:scale(1.35);animation:mapPulse 1.5s infinite}.leaflet-marker-icon:focus{outline:3px solid var(--blue);outline-offset:5px}.map-route{stroke-linecap:round;stroke-linejoin:round}@keyframes mapPulse{70%{box-shadow:0 0 0 12px rgba(255,91,34,0)}100%{box-shadow:0 0 0 0 rgba(255,91,34,0)}}.map-instruction{position:absolute;z-index:402;inset-inline-end:1rem;inset-block-start:1rem;display:flex;align-items:center;gap:.7rem;padding:.65rem .8rem;color:#fff;background:var(--ink);font-size:.61rem;font-weight:700}.map-instruction span:first-child{color:var(--acid)}.map-results{padding:2rem;color:#fff;background:var(--blue);overflow:hidden}.map-results-label{margin:0 0 3rem;color:var(--acid);font-size:.61rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.selected-city{margin:0 0 2.4rem;font-family:var(--display);font-size:clamp(2.4rem,3vw,4rem);font-weight:900;line-height:.8;letter-spacing:-.07em;text-transform:uppercase}.result-count{margin:0 0 1.3rem;color:rgba(255,255,255,.68);font-size:.68rem}.map-program-card{position:relative;display:block;margin-block-end:.9rem;padding:1rem;color:var(--ink);background:var(--yellow);transition:transform .25s,background .25s}.map-program-card:hover,.map-program-card:focus-visible{background:var(--acid);transform:translateX(6px)}.map-program-card img{width:100%;aspect-ratio:1.75;object-fit:cover;margin-block-end:1rem}.map-program-card small{display:block;margin-block-end:.55rem;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.map-program-card strong{display:block;padding-inline-end:2rem;font-family:var(--display);font-size:1.35rem;font-weight:900;line-height:.92;text-transform:uppercase}.map-program-card b{position:absolute;inset-inline-end:1rem;inset-block-end:1rem;font-size:1.2rem}.city-shortcuts{display:flex;gap:.45rem;overflow-x:auto;padding-block-start:1rem;scrollbar-width:none}.city-shortcuts::-webkit-scrollbar{display:none}.city-shortcuts button{flex:0 0 auto;min-height:44px;padding-inline:1rem;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:999px;cursor:pointer;font-size:.68rem;font-weight:750}.city-shortcuts button:hover,.city-shortcuts button.is-active{color:#fff;background:var(--ink)}
.journeys-section{color:var(--ink);background:var(--orange);overflow:hidden}.journeys-intro{min-height:72vh;padding:clamp(7rem,12vw,11rem) max(2.5rem,calc((100vw - 1440px)/2));display:flex;justify-content:space-between;align-items:start}.journeys-intro>div{display:flex;align-items:start;gap:2rem}.journeys-intro>div>span{padding-block-start:.8rem;font-size:.68rem;font-weight:800}.journeys-intro h2{margin:0;font-family:var(--display);font-size:clamp(4.2rem,9.5vw,9.5rem);font-weight:900;line-height:.7;letter-spacing:-.1em;text-transform:uppercase}.journeys-viewport{position:relative;min-height:100vh}.journeys-track{display:flex;width:max-content;padding:0 4vw 6rem;gap:1.2rem}.journey-card{position:relative;flex:0 0 min(76vw,1050px);height:min(77vh,760px);overflow:hidden;background:var(--ink);border-radius:.15rem}.journey-card>a{display:block;width:100%;height:100%}.journey-card figure,.journey-card figure:after,.journey-card img{position:absolute;inset:0;width:100%;height:100%;margin:0}.journey-card figure{overflow:hidden}.journey-card figure:after{content:"";background:linear-gradient(0deg,rgba(6,9,8,.72),transparent 58%)}.journey-card img{object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.journey-card:hover img{transform:scale(1.045)}.card-top{position:absolute;z-index:2;inset-block-start:1.6rem;inset-inline:1.6rem;display:flex;justify-content:space-between;color:#fff;font-size:.66rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.card-copy{position:absolute;z-index:2;inset-inline:1.8rem;inset-block-end:1.6rem;color:#fff}.card-copy p{margin:0 0 .7rem;color:var(--acid);font-size:.63rem;font-weight:750;letter-spacing:.16em}.card-copy h3{margin:0;font-family:var(--display);font-size:clamp(2.8rem,5.8vw,5.8rem);font-weight:900;line-height:.78;letter-spacing:-.08em;text-transform:uppercase}.card-arrow{position:absolute;inset-inline-end:0;inset-block-end:.4rem;display:grid;place-items:center;width:66px;height:66px;color:var(--ink);background:var(--yellow);border-radius:50%;font-size:1.5rem}.card-more{color:var(--ink);background:var(--acid)}.card-more>a{padding:2rem;display:flex;flex-direction:column;justify-content:space-between}.card-more h3{margin:auto 0;font-family:var(--display);font-size:clamp(3.1rem,5.7vw,6rem);font-weight:900;line-height:.83;letter-spacing:-.075em;text-transform:uppercase}.more-orbit{position:absolute;inset-block-start:2rem;inset-inline-end:2rem;display:grid;place-items:center;width:100px;height:100px;border:1px solid;border-radius:50%;animation:spin 9s linear infinite}.more-orbit span{font-size:2.5rem;font-weight:300}.text-link{font-size:.8rem;font-weight:750;text-decoration:underline;text-underline-offset:6px}@keyframes spin{to{transform:rotate(360deg)}}
.promise-section{display:grid;grid-template-columns:44% 56%;min-height:115vh;color:#fff;background:var(--ink)}.promise-photo{position:relative;overflow:hidden}.promise-photo img{position:absolute;width:125%;height:125%;inset:-12%;object-fit:cover;object-position:70% center;filter:saturate(.7) contrast(1.08)}.promise-content{padding:clamp(5rem,9vw,9rem)}.promise-content .micro-label{color:var(--acid)}.promise-content h2{margin:3rem 0 5rem;font-family:var(--display);font-size:clamp(3.3rem,6vw,6.3rem);font-weight:900;line-height:.78;letter-spacing:-.085em;text-transform:uppercase}.promise-content h2 em{color:var(--orange);font-style:normal}.promise-content ol{list-style:none;margin:0;padding:0}.promise-content li{display:grid;grid-template-columns:50px 1fr 1fr;align-items:start;gap:1rem;padding-block:1.7rem;border-block-start:1px solid rgba(255,255,255,.25)}.promise-content li>span{font-size:.66rem;color:#9c9e99}.promise-content strong{font-size:1rem}.promise-content li p{margin:0;color:#9c9e99;font-size:.78rem;line-height:1.5}
.contact-section{position:relative;min-height:100svh;padding:8rem max(2.5rem,calc((100vw - 1440px)/2));background:var(--yellow);overflow:hidden}.contact-section h2{margin:5vh 0 0;font-family:var(--display);font-size:clamp(5.8rem,16vw,15rem);font-weight:900;line-height:.64;letter-spacing:-.11em;text-transform:uppercase}.contact-disc{position:absolute;inset-inline-end:10vw;inset-block-start:47%;display:flex;flex-direction:column;justify-content:space-between;width:clamp(180px,19vw,290px);aspect-ratio:1;padding:1.8rem;color:#fff;background:var(--blue);border-radius:50%;transform:rotate(7deg);transition:transform .35s cubic-bezier(.2,.8,.2,1),background .25s}.contact-disc:hover{background:var(--orange);transform:rotate(-7deg) scale(1.05)}.contact-disc span{margin:auto;font-family:var(--display);font-size:clamp(1rem,1.7vw,1.6rem);font-weight:900;line-height:.9;text-align:center;text-transform:uppercase}.contact-disc b{align-self:end;font-size:1.6rem}.contact-phone{position:absolute;inset-inline-start:max(2.5rem,calc((100vw - 1440px)/2));inset-block-end:2.5rem;margin:0;font-size:.8rem;font-weight:750}
footer{padding:2rem max(2.5rem,calc((100vw - 1440px)/2));display:grid;grid-template-columns:1fr auto auto auto;gap:2rem;align-items:end;color:#fff;background:var(--blue)}footer p{margin:0;font-size:.6rem;font-weight:700;letter-spacing:.11em}.footer-brand{color:#fff}
/* Detail pages */
.detail-page{background:var(--white)}.detail-page .site-header{position:relative;color:var(--ink);border-color:var(--line)}.detail-page .mobile-nav{color:#fff}.detail-main{padding-block:4rem 7rem}.detail-wrap{width:var(--wrap);margin-inline:auto}.detail-back{display:inline-flex;gap:.5rem;margin-block-end:3rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.detail-hero{position:relative;min-height:86vh;display:flex;align-items:end;padding:clamp(2rem,5vw,5rem);color:#fff;background:var(--blue);overflow:hidden}.detail-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,12,.75),rgba(7,11,12,.06) 70%),var(--detail-image) center/cover no-repeat;transform:scale(1.02)}.toubkal-page .detail-hero{--detail-image:url("assets/images/toubkal-v2.webp")}.ouad-page .detail-hero{--detail-image:url("assets/images/ouad-kannar-v2.webp")}.detail-hero>div{position:relative;z-index:2;max-width:900px}.detail-kicker{margin:0 0 1.4rem;color:var(--acid);font-size:.66rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.detail-hero h1{margin:0;font-family:var(--display);font-size:clamp(3.4rem,8vw,8rem);font-weight:900;line-height:.72;letter-spacing:-.09em;text-transform:uppercase}.detail-intro{max-width:650px;margin:2rem 0 0;font-size:1rem;font-weight:550;line-height:1.65}.booking-card{position:absolute;z-index:3;inset-inline-end:2rem;inset-block-start:2rem;width:min(300px,calc(100% - 4rem));padding:1.4rem;color:var(--ink);background:var(--yellow);transform:rotate(2deg)}.booking-card small{font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.booking-card strong{display:block;margin:.4rem 0 1rem;font-family:var(--display);font-size:2.4rem;font-weight:900}.booking-card .button{display:flex;justify-content:space-between;align-items:center;min-height:50px;padding-inline:1rem;color:#fff;background:var(--blue);font-size:.7rem;font-weight:800}.booking-note{margin:1rem 0 0;font-size:.65rem}.program-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(3rem,8vw,9rem);padding-block:8rem}.program-nav{position:sticky;inset-block-start:2rem;align-self:start}.program-nav p{font-size:.6rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.program-nav a{display:block;padding:1rem 0;border-block-end:1px solid var(--line);font-size:.72rem}.program-content{max-width:900px}.program-section{padding-block-end:5rem;margin-block-end:5rem;border-block-end:1px solid var(--line);scroll-margin-block-start:2rem}.program-section:last-child{border:0}.program-label{margin:0 0 1.2rem;color:var(--blue);font-size:.64rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.program-section h2{margin:0 0 3rem;font-family:var(--display);font-size:clamp(2.6rem,4.8vw,4.8rem);font-weight:900;line-height:.79;letter-spacing:-.075em;text-transform:uppercase}.day{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding-block:2.5rem;border-block-start:1px solid var(--line)}.day-number{margin:0;color:var(--orange);font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.day h3{margin:0 0 1.5rem;font-family:var(--display);font-size:1.7rem;font-weight:900;line-height:1;text-transform:uppercase}.timeline,.feature-list{list-style:none;margin:0;padding:0}.timeline li{position:relative;padding-block:0 1.1rem;padding-inline-start:1.4rem;color:#565a55;font-size:.85rem;line-height:1.5}.timeline li:before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.45rem;width:7px;height:7px;background:var(--blue);border-radius:50%}.timeline strong{color:var(--ink)}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.feature-list li{padding:1.3rem;background:var(--white);font-size:.8rem;font-weight:650}.feature-list li:before{content:"↗";margin-inline-end:.7rem;color:var(--orange)}.detail-cta{position:relative;min-height:75vh;padding:clamp(3rem,7vw,7rem);color:#fff;background:var(--blue);overflow:hidden}.detail-cta:after{content:"";position:absolute;width:38vw;aspect-ratio:1;inset-inline-end:-6vw;inset-block-end:-17vw;background:var(--yellow);border-radius:50%}.detail-cta .eyebrow{position:relative;z-index:2;margin:0 0 2rem;color:var(--acid);font-size:.65rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.detail-cta h2{position:relative;z-index:2;max-width:900px;margin:0;font-family:var(--display);font-size:clamp(3.4rem,8vw,8rem);font-weight:900;line-height:.7;letter-spacing:-.09em;text-transform:uppercase}.detail-cta p{position:relative;z-index:2;max-width:450px;line-height:1.6}.detail-cta .button{position:absolute;z-index:3;inset-inline-end:7vw;inset-block-end:7vw;display:grid;place-items:center;width:180px;aspect-ratio:1;padding:1rem;color:var(--ink);background:var(--acid);border-radius:50%;font-size:.75rem;font-weight:850;text-align:center}
[dir=rtl] .hero-title h1,[dir=rtl] .manifesto-text h2,[dir=rtl] .journeys-intro h2,[dir=rtl] .card-copy h3,[dir=rtl] .card-more h3,[dir=rtl] .promise-content h2,[dir=rtl] .contact-section h2,[dir=rtl] .detail-hero h1,[dir=rtl] .program-section h2,[dir=rtl] .day h3,[dir=rtl] .detail-cta h2{font-family:Tahoma,Arial,sans-serif;letter-spacing:-.045em}[dir=rtl] .hero-title .line-two{margin-inline-start:8vw}[dir=rtl] .detail-hero:before{background:linear-gradient(270deg,rgba(7,11,12,.75),rgba(7,11,12,.06) 70%),var(--detail-image) center/cover no-repeat}
a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--acid);outline-offset:4px}
@media(max-width:900px){
  :root{--wrap:min(100% - 2rem,1440px)}.site-header{height:78px}.desktop-nav{display:none}.menu-toggle{display:grid}.hero-title h1{font-size:clamp(4.8rem,18vw,7.5rem)}.hero-title .line-two{margin-inline-start:0}.hero-index{display:none}.manifesto-section{min-height:auto;grid-template-columns:1fr;padding-block:7rem}.manifesto-number{order:2}.manifesto-aside{max-width:50ch}.journeys-intro{min-height:auto;display:block;padding-block:7rem}.journeys-intro>div{margin-block-start:3rem}.journeys-track{display:grid;width:auto;padding:0 1rem 5rem}.journey-card{width:100%;height:75svh}.card-more{height:65svh}.promise-section{grid-template-columns:1fr}.promise-photo{min-height:60svh}.promise-content{padding:5rem 1rem}.contact-section h2{font-size:clamp(5rem,20vw,9rem)}footer{grid-template-columns:1fr 1fr}.program-layout{grid-template-columns:1fr}.program-nav{display:none}.detail-main{padding-block-start:1rem}.detail-wrap{width:calc(100% - 2rem)}.detail-hero{min-height:920px;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch}.booking-card{position:relative;inset:auto;width:100%;margin-block-start:2rem;transform:rotate(1deg)}.detail-hero>div{padding-block-end:0}.detail-hero h1{font-size:clamp(3.2rem,12vw,6rem)}.program-layout{padding-block:5rem}
}
@media(max-width:600px){
  .site-header{width:calc(100% - 1.25rem)}.brand-mark{width:39px;height:39px}.home-hero{min-height:760px}.hero-media img{object-position:62% center}.hero-title{width:calc(100% - 1.25rem);inset-block-start:46%;padding-inline:.5rem}.hero-title .micro-label{font-size:.55rem}.hero-title h1{font-size:17vw}.hero-bottom{width:calc(100% - 1.25rem)}.hero-bottom p{max-width:16ch;font-size:.9rem}.round-link{width:58px;height:58px}.ticker-track{padding-block:.65rem}.manifesto-section{padding-inline:.625rem}.manifesto-text h2{font-size:11.5vw}.manifesto-aside{margin-block-start:3rem}.journeys-intro{padding-inline:.625rem}.journeys-intro h2{font-size:18vw}.journeys-track{padding-inline:.625rem;gap:.65rem}.journey-card{height:68svh}.card-top{inset:1rem}.card-copy{inset-inline:1rem;inset-block-end:1rem}.card-copy h3{font-size:11vw}.card-arrow{width:50px;height:50px}.card-more{height:62svh}.promise-photo{min-height:52svh}.promise-content h2{font-size:12vw;margin-block:2rem 3rem}.promise-content li{grid-template-columns:35px 1fr}.promise-content li p{grid-column:2}.contact-section{padding-inline:.625rem;min-height:760px}.contact-section h2{font-size:22vw}.contact-disc{inset-inline-end:1rem;inset-block-start:50%;width:190px}.contact-phone{inset-inline-start:.625rem}.detail-wrap{width:calc(100% - 1.25rem)}.detail-back{margin-block:1.5rem}.detail-hero{padding:1rem}.detail-hero h1{font-size:8.5vw}.detail-intro{font-size:.9rem}.booking-card{inset-inline:1rem;width:calc(100% - 2rem)}.program-section h2{font-size:10vw}.day{grid-template-columns:1fr;gap:.6rem}.feature-list{grid-template-columns:1fr}.detail-cta{min-height:720px;padding:2rem 1rem}.detail-cta h2{font-size:12vw}.detail-cta .button{width:150px;inset-inline-end:1rem;inset-block-end:2rem}footer{padding-inline:1rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track,.more-orbit{animation:none!important}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:900px){.map-heading{grid-template-columns:1fr}.map-heading>div{margin-block:2rem}.map-heading>p:last-child{max-width:50ch}.map-experience{grid-template-columns:1fr}.map-shell{height:620px}.map-results{min-height:420px}.map-results-label{margin-block-end:1.5rem}#map-programs{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.selected-city,.result-count{grid-column:1/-1}.map-program-card{margin:0}.map-program-card:hover,.map-program-card:focus-visible{transform:translateY(-5px)}}
@media(max-width:600px){.map-section{padding-inline:.625rem}.map-heading{margin-block-end:2rem}.map-heading h2{font-size:16vw}.map-shell{height:520px}.map-instruction{display:none}.map-results{padding:1rem}#map-programs{display:block}.map-program-card{margin-block-end:.7rem}.selected-city{font-size:10vw}.city-shortcuts{margin-inline:-.625rem;padding-inline:.625rem}.city-pin span{font-size:.52rem}.leaflet-control-zoom a{width:40px!important;height:40px!important}}
[dir=rtl] .map-program-card:hover,[dir=rtl] .map-program-card:focus-visible{transform:translateX(-6px)}
