/* Colour chapters: every section is one flat colour, edge to edge. Loaded after styles.css.
   One grid for the whole site: 12 columns, so halves, thirds and quarters share the same lines. */
[data-tone=cream]{--bg:var(--cream);--ink:var(--navy);--accent:var(--gold-deep);--btn-bg:var(--navy);--btn-ink:var(--cream)}
[data-tone=paper]{--bg:var(--paper);--ink:var(--navy);--accent:var(--gold-deep);--btn-bg:var(--navy);--btn-ink:var(--cream)}
[data-tone=gold]{--bg:var(--gold);--ink:var(--navy);--accent:var(--navy);--btn-bg:var(--navy);--btn-ink:var(--cream)}
[data-tone=gold-light]{--bg:var(--gold-light);--ink:var(--navy);--accent:var(--navy);--btn-bg:var(--navy);--btn-ink:var(--cream)}
[data-tone=navy]{--bg:var(--navy);--ink:var(--cream);--accent:var(--gold-light);--btn-bg:var(--gold);--btn-ink:var(--navy)}
[data-tone=navy-3]{--bg:var(--navy-3);--ink:var(--cream);--accent:var(--gold-light);--btn-bg:var(--gold);--btn-ink:var(--navy)}

:root{
  --cream:#FFFFFF;--paper:#FFF9E8;
  --head:'Fraunces',Georgia,serif;
  --side:max(clamp(20px,3.4vw,48px),calc((100vw - 1344px)/2));
  --content:calc(100vw - 2*var(--side));
  --g:clamp(32px,4vw,64px);
  --gap:clamp(56px,7.5vw,112px);
  --after-head:clamp(40px,4.5vw,64px);
  --s-display:clamp(2.55rem,6.1vw,5.75rem);
  --s-heading:clamp(2.1rem,4.6vw,4.25rem);
  --s-title:clamp(1.5rem,2.3vw,2.125rem);
  --s-lead:clamp(1.125rem,1.5vw,1.3125rem);
  --s-small:.9375rem;
  --ease-out:cubic-bezier(.16,1,.3,1);
}
::selection{background:var(--navy);color:var(--gold-light)}
html{scroll-padding-top:86px}
body{font-size:1.125rem;line-height:1.6}
.wrap{width:auto;max-width:none;margin-inline:var(--side)}
section{padding:0}
.chapter,.route,.after-routes{background:var(--bg);color:var(--ink)}
.chapter{padding:var(--gap) 0}
h1,h2,h3{color:inherit;text-wrap:balance}
h1{font-size:var(--s-display);font-weight:800;line-height:1.06;letter-spacing:-.025em}
h2{font-size:var(--s-heading);font-weight:800;line-height:1.04;letter-spacing:-.022em}
h3{font-size:var(--s-title);font-weight:700;line-height:1.12;letter-spacing:-.015em}
main p{max-width:36em}
.lead-in,.problem h2,.proof h2,.pull{font:600 var(--s-title)/1.15 var(--head);letter-spacing:-.012em;color:var(--accent)}
.lead-in{margin-bottom:.5em}
main .statement{font:800 var(--s-display)/1.06 var(--head);letter-spacing:-.025em;text-wrap:balance;max-width:none}
.section-lead,.lead,.next-foot p{font-size:var(--s-lead);color:inherit}
.section-lead{margin-top:24px}
.tag{font-weight:600;margin-bottom:14px}
.note{margin-top:16px;font-size:1rem;font-weight:500;color:inherit}
.cta-row{margin-top:28px}
:focus-visible{outline-color:var(--accent)}

/* one button shape across the site, inked from its chapter */
.btn{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-ink);min-height:52px;transition:background-color .15s ease-out,color .15s ease-out,border-color .15s ease-out,transform .15s ease-out}
.btn:active{transform:scale(.98)}
.btn.line{background:transparent;color:var(--ink);border-color:var(--ink)}
@media(hover:hover){
  .btn:hover{background:var(--ink);border-color:var(--ink);color:var(--bg);transform:translateX(3px)}
  .btn.line:hover{background:var(--ink);color:var(--bg);transform:none}
}
.link{position:relative;border-bottom-color:currentColor;white-space:nowrap;transition:border-color .15s ease-out}
.link:hover{color:inherit;border-bottom-color:transparent}
.link::after,.logo::after{content:"";position:absolute;inset:-10px -4px}

/* the header takes the colour of the chapter beneath it */
header{background:var(--bg);color:var(--ink);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:0;transition:background-color .3s ease-out,color .3s ease-out}
.nav ul{font-size:1rem}
.nav ul a[aria-current=page]{color:inherit;font-weight:600}
.nav ul a:hover,.nav ul a[aria-current=page]{border-color:currentColor}
.logo{position:relative;display:block;padding-block:5px}
.logo-dark{position:absolute;left:0;top:5px;visibility:hidden}
header[data-tone^=navy] .logo-light{visibility:hidden}
header[data-tone^=navy] .logo-dark{visibility:visible}
.menu-btn{min-height:44px;background:none;border-color:currentColor;color:inherit;cursor:pointer}
.nav .btn{white-space:nowrap}
@media(max-width:1080px){
  .menu-btn{display:block;order:2}
  .nav ul{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);color:var(--ink);border-bottom:0;padding:8px var(--side) 20px;box-shadow:0 14px 24px -14px rgba(6,36,60,.35)}
  .nav ul.open{display:flex}
  .nav ul a{display:block;padding:14px 0;border-bottom:0;font-size:1.1rem}
  .nav .btn{display:inline-flex;order:1;min-height:44px;margin-left:auto;padding:8px 26px 8px 14px;font-size:.875rem}
}
@media(max-width:379px){.nav .btn{display:none}}

/* every page opens the same way */
.opener{min-height:calc(100svh - 74px);display:flex;align-items:center;padding:clamp(32px,3vw,44px) 0;isolation:isolate}
.opener .wrap{width:100%}
.opener .mark{color:inherit}
.opener-foot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:center;margin-top:clamp(28px,3vw,44px)}
.hero-art{justify-self:end;width:100%}
.hero-art img{width:100%;max-width:min(640px,calc(56svh*1.19));margin-inline:auto 0;filter:none}

/* halves: heading on the left, reading on the right, on the same line everywhere */
.half{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:start}
.problem h2,.proof h2{margin-bottom:.9em}
.problem .statement span{display:block}
.pull{margin:22px 0 0;padding:0;border:0}
.story-link{margin-top:22px}
.next-foot{margin-top:var(--after-head);align-items:center}
.next-foot .cta-row{margin-top:0}

/* lists that read across the same two halves */
.pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:var(--after-head)}
.pairs q{display:block;font:700 var(--s-title)/1.14 var(--head);letter-spacing:-.015em;quotes:"“" "”"}
.proof h2 q{quotes:"“" "”"}
.pairs p{margin-top:18px}
.rows{display:grid;gap:clamp(32px,4vw,56px);margin-top:var(--after-head)}
.row-item{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px var(--g);align-items:start}
.row-item .tag{color:var(--accent)}
.row-item>p{padding-top:.25em}

.steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,4.5vw,64px) var(--g);margin-top:var(--after-head)}
.num{display:block;font:800 var(--s-heading)/1 var(--head);letter-spacing:-.025em;margin-bottom:14px}
.steps h3{margin-bottom:10px}

/* fields: full-bleed colour blocks whose text stays on the page grid */
.routes-head{padding-bottom:var(--after-head)}
.routes-head h2{max-width:17em}
.routes{--n:3;--w:calc((var(--content) - (var(--n) - 1)*var(--g))/var(--n));display:grid;grid-template-columns:calc(var(--side) + var(--w) + var(--g)/2) calc(var(--w) + var(--g)) 1fr}
.routes.four{--n:4;grid-template-columns:calc(var(--side) + var(--w) + var(--g)/2) calc(var(--w) + var(--g)) calc(var(--w) + var(--g)) 1fr}
.routes.two{--n:2;grid-template-columns:calc(var(--side) + var(--w) + var(--g)/2) 1fr}
.route{display:flex;flex-direction:column;padding:clamp(32px,3.4vw,48px) calc(var(--g)/2);min-height:clamp(420px,58svh,560px)}
.route:first-child{padding-left:var(--side)}
.route:last-child{padding-right:var(--side)}
.route h3{margin-bottom:18px}
.route-links{margin-top:20px}
.price{margin-top:auto;padding-top:40px;font:800 clamp(1.75rem,2.9vw,2.75rem)/1 var(--head);letter-spacing:-.025em}
.price small{display:block;margin-top:12px;font:500 1.125rem/1.4 var(--body);letter-spacing:0}
.routes.days .route{min-height:clamp(320px,42svh,420px)}
.route.text{min-height:0;padding-block:var(--gap)}
.route.text h2{margin-bottom:24px}
.route.text>p+p{margin-top:14px}
.after-routes{padding:clamp(32px,4vw,56px) 0}
.after-routes .cta-row{margin-top:0}

/* questions */
.ask details,.ask details:first-of-type{border:0;padding:0}
.ask details+details{margin-top:6px}
.ask summary{min-height:48px;align-items:center;padding-block:10px;font:700 var(--s-title)/1.14 var(--head);letter-spacing:-.015em;color:inherit}
.ask summary::after{color:var(--accent)}
.ask details p{color:inherit;margin:4px 0 16px;font-size:1.125rem}

/* reading blocks */
.bullets{list-style:square;padding-left:1.1em;margin-top:22px;max-width:36em}
.bullets li+li{margin-top:12px}
.bullets li::marker{color:var(--accent)}
.glance h3{margin-bottom:12px}
.glance-side>div+div{margin-top:36px}
.prose{margin-top:28px}
.routes.study .route:last-child h3{color:var(--accent);margin-bottom:10px}
.routes.study .route:last-child>div+div{margin-top:36px}

/* contact */
.steps-mini{gap:26px;margin:0 0 36px}
.steps-mini li{padding-left:56px}
.steps-mini li::before{transform:none;width:auto;height:auto;display:block;background:none;color:var(--accent);font:800 var(--s-title)/1 var(--head)}
.steps-mini li b{font:700 var(--s-title)/1.14 var(--head);color:inherit;margin-bottom:4px}
.steps-mini li span{color:inherit;font-size:1.125rem}
.form{background:none;box-shadow:none;border:0;padding:0}
.form label{font-size:1rem;font-weight:600}
.form input,.form select,.form textarea{min-height:52px;background:var(--white);border:2px solid var(--navy);font-size:1rem}
.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid var(--gold-deep);outline-offset:2px}
.form ::placeholder{color:var(--muted);opacity:1}
.form .hint{color:inherit;font-size:1rem}
.form .btn{border-radius:0;cursor:pointer}

/* footer sits on the same quarters */
footer{font-size:1rem}
.foot{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--g)}
.foot h3{font:600 1.125rem/1.2 var(--head);letter-spacing:0;color:var(--gold-light);margin-bottom:6px}
.foot img{width:166px;height:34px}
.foot ul{gap:0}
.foot li a{display:inline-flex;align-items:center;min-height:44px}
.legal{border-top:0;font-size:var(--s-small);padding-top:0}

/* gentle arrival, from content that is visible if the script never runs */
.reveal{opacity:1;transform:none;transition:none}
.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}
.js .reveal.in{opacity:1;transform:none}
.js .reveal:nth-child(2){transition-delay:70ms}
.js .reveal:nth-child(3){transition-delay:140ms}
@media(prefers-reduced-motion:reduce){
  .js .reveal{opacity:1;transform:none;transition:none}
  header,.btn,.link{transition:none}
  .btn:hover,.btn:active{transform:none}
}

@media(max-width:1200px){
  .routes.four{--n:2;grid-template-columns:calc(var(--side) + var(--w) + var(--g)/2) 1fr}
  .routes.four .route:nth-child(odd){padding-left:var(--side)}
  .routes.four .route:nth-child(even){padding-right:var(--side)}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .opener{min-height:0}
  .opener-foot,.half,.pairs,.row-item{grid-template-columns:minmax(0,1fr)}
  .hero-art img{max-width:440px;margin-inline:auto}
  .routes,.routes.two,.routes.four{grid-template-columns:minmax(0,1fr)}
  .route,.route:first-child,.route:last-child,.routes.four .route:nth-child(odd),.routes.four .route:nth-child(even){min-height:0;padding-inline:var(--side)}
  .route.text{padding-block:clamp(48px,8vw,72px)}
  .routes.days .route{min-height:0}
  .price{margin-top:0}
  .foot{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  :root{--s-display:8.9vw}
  .nav{gap:10px}
  .nav .logo img{width:116px;height:auto}
  .cta-row .btn{width:100%;justify-content:flex-start}
  .steps{grid-template-columns:minmax(0,1fr)}
  .steps-mini li{padding-left:42px}
  .foot>div:first-child,.foot>div:last-child{grid-column:1/-1}
}

/* openings that show one part of the artwork each: the lion's face (experience), the girl (curiosity) */
.opener-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:center;width:100%}
.opener-copy .lead{margin-top:28px}
.art img{display:block;height:auto}
.art-face{align-self:stretch;display:flex;align-items:center;margin-left:calc(-1*var(--side))}
.art-face img{height:min(76svh,660px);width:auto;max-width:none;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 38%);mask-image:linear-gradient(to right,transparent 0,#000 38%);filter:brightness(.94)}
.art-girl{justify-self:center}
.art-girl img{height:min(72svh,620px);width:auto;max-width:100%}
.art-walk img{width:100%;max-width:min(560px,calc(52svh*1.19));margin-inline:auto 0;transform:scaleX(-1)}
@keyframes art-in{from{opacity:0;transform:translateX(var(--art-from,24px))}to{opacity:1;transform:none}}
.js .art{animation:art-in .9s var(--ease-out) .15s both}
.art-face{--art-from:-40px}
.art-girl{--art-from:0;animation-name:art-up!important}
@keyframes art-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

/* language switch, top right */
.lang{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 6px;font:700 1rem var(--body);text-decoration:none;color:inherit;border:2px solid currentColor;order:4}
.lang:hover{background:var(--ink);color:var(--bg)}

/* contact channels */
.channels{list-style:none;display:grid;gap:4px}
.channels a,.channels .needed-item{display:flex;flex-direction:column;gap:2px;padding:12px 0;text-decoration:none;color:inherit;min-height:44px}
.channels .name{font:700 var(--s-title)/1.14 var(--head);letter-spacing:-.015em}
.channels a .name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.18em;text-decoration-color:var(--accent)}
.channels a:hover .name{text-decoration-color:currentColor}
.channels .detail{font-size:1.125rem}
.needed{display:inline-block;font:600 .9375rem var(--body);color:var(--accent);margin-top:2px}
.after-routes .half{align-items:center}
.after-routes .half p{font-size:var(--s-lead)}

@media(max-width:900px){
  .opener-split{grid-template-columns:minmax(0,1fr)}
  .art-left .art-face{order:2;margin-left:calc(-1*var(--side));justify-content:flex-start}
  .art-face img{height:auto;width:min(92vw,480px)}
  .art-girl img{height:min(56svh,420px)}
  .art-walk img{max-width:400px;margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){.js .art{animation:none}}
.opener-split h1{font-size:var(--s-heading)}
.art-girl img{-webkit-mask-image:linear-gradient(to bottom,#000 62%,transparent 98%);mask-image:linear-gradient(to bottom,#000 62%,transparent 98%)}
.art-face img{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to bottom,#000 80%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to bottom,#000 80%,transparent);mask-composite:intersect}
@media(min-width:1081px){.nav{justify-content:flex-start}.nav ul{margin-inline:auto}.lang{margin-left:12px}}
.foot .needed-item{display:inline-flex;align-items:center;gap:6px;min-height:44px}
.art-girl img{height:min(78svh,680px);-webkit-mask-image:none;mask-image:none}
.art-left .art-girl{justify-self:start}
@media(max-width:900px){.art-girl img{height:min(60svh,460px)}.art-left .art-girl{order:2;justify-self:center}}
.art-face img{filter:none}

/* who we are */
.story-intro{margin-top:var(--after-head);align-items:start}
.story-intro .pull,.story-intro .section-lead{margin-top:0}
.people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:var(--after-head);align-items:start}
.person img{display:block;width:100%;max-width:520px;height:auto;aspect-ratio:1}
.person h3{margin:24px 0 12px}
.person p+p{margin-top:12px}
.story .closing{margin-top:var(--after-head)}
@media(max-width:900px){.people{grid-template-columns:minmax(0,1fr)}.person img{max-width:420px}}

/* calmer version: light chapters, gold only as an accent */
.idea{padding:clamp(48px,6vw,80px) 0}
.idea-line{font:700 var(--s-title)/1.3 var(--head);letter-spacing:-.012em;max-width:none}
.idea-line span:last-child{color:var(--gold-deep)}
.routes .route{min-height:0;padding-block:clamp(28px,3vw,40px) clamp(40px,4vw,56px)}
.price{font-size:clamp(1.5rem,2.2vw,2.125rem);padding-top:28px}
.route[data-tone=paper] .tag,.route[data-tone=cream] .tag{color:var(--gold-deep)}
.num{font-size:var(--s-title);color:var(--gold-deep);margin-bottom:8px}
.steps{gap:clamp(28px,3.5vw,48px) var(--g)}
.chapter{padding:clamp(48px,6.5vw,96px) 0}
.next h2{font-size:var(--s-title)}
.next .lead-in{font-size:1.125rem}
footer{background:var(--navy);color:var(--muted-dark);border-top:0}
.foot h3{color:var(--gold-light)}
.foot a,.foot p,.legal{color:var(--muted-dark)}
.foot a:hover{color:var(--gold-light)}
.foot .needed{color:var(--gold-light)}
/* round portraits */
.person img{width:min(100%,280px);max-width:280px;border-radius:50%;object-fit:cover}
@media(max-width:900px){.person img{width:220px}}
.routes.study .route h2{font-size:clamp(1.75rem,3vw,2.75rem)}
/* the wordmark sits under the lion and the girl, like the stacked logo */
.art-stack{width:100%;max-width:min(600px,calc(50svh*1.19));margin-left:auto;display:flex;flex-direction:column;align-items:center}
.hero-art .art-stack img{max-width:100%}
.hero-art .art-stack .art-wordmark{width:min(300px,50%);height:auto;margin:8px 0 0}
@media(max-width:900px){.art-stack{margin-inline:auto;max-width:420px}}
.hero-art .art-stack .art-wordmark{width:85%;align-self:flex-start;margin:10px 0 0 10%}
/* five ways to buy */
@media(min-width:1201px){.routes.five{--n:5;grid-template-columns:calc(var(--side) + var(--w) + var(--g)/2) calc(var(--w) + var(--g)) calc(var(--w) + var(--g)) calc(var(--w) + var(--g)) 1fr}}
.founding-big{font:800 clamp(2.4rem,5vw,3.75rem)/1 var(--head);color:var(--navy);margin-bottom:14px;max-width:none}
.founding-ch .cta-row{margin-top:24px}
.founding-ch p+p{margin-top:12px}
.built-result{max-width:40em;margin-top:var(--after-head)}

.art-sit img{transform:none;max-width:min(600px,calc(56svh*1.25))}
@media (max-width:900px){.art-sit img{max-width:420px}}

.person .tag{color:var(--gold-deep);margin:20px 0 2px}
.person .tag + h3{margin-top:0}

/* Founder cards: paragraphs line up across both cards; shared quote spans both */
@media(min-width:901px){
  .people{grid-template-rows:repeat(6,auto);row-gap:0}
  .person{display:grid;grid-row:span 6;grid-template-rows:subgrid;align-content:start}
}
.story-quote{margin:var(--after-head) 0 0;background:var(--navy);color:var(--paper);padding:clamp(32px,5vw,72px)}
.story-quote blockquote{margin:0;max-width:36em}
.story-quote blockquote p{font:500 clamp(1.125rem,1.6vw,1.5rem)/1.5 var(--head);color:var(--paper)}
.story-quote blockquote p.quote-end{margin-top:18px;font-weight:700;font-size:var(--s-title);line-height:1.2;color:var(--gold-light)}
.story-quote figcaption{margin-top:24px;font-weight:600;color:var(--paper);opacity:.85}
@media(min-width:901px){
  .story-quote{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;column-gap:calc(var(--g) * 2)}
  .story-quote blockquote{display:contents}
  .story-quote blockquote p:first-child{grid-column:1;grid-row:1/3}
  .story-quote .quote-end{grid-column:2;grid-row:1;align-self:end;margin-top:0}
  .story-quote figcaption{grid-column:2;grid-row:2;align-self:start}
}
.story-quote blockquote p.quote-wish{margin-top:14px;font:400 1.0625rem/1.55 var(--body,inherit);font-family:inherit;color:var(--paper);opacity:.9}
@media(min-width:901px){
  .story-quote{grid-template-rows:auto auto auto}
  .story-quote blockquote p:first-child{grid-row:1/4}
  .story-quote .quote-wish{grid-column:2;grid-row:2}
  .story-quote figcaption{grid-row:3}
}

/* Contact ways: round navy icon beside each one */
.channels a,.channels .needed-item{flex-direction:row;align-items:center;gap:18px}
.channels .txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.channels .ico{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--navy);transition:background-color .2s ease}
.channels .ico svg{width:24px;height:24px;fill:var(--paper)}
.channels .ico svg.stroke{fill:none;stroke:var(--paper);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (hover:hover) and (pointer:fine){.channels a:hover .ico{background:var(--gold-deep)}}
@media(max-width:600px){.channels .ico{width:44px;height:44px}.channels .ico svg{width:20px;height:20px}}
.price-note{margin:0 0 12px;font-size:.9375rem;color:var(--muted,inherit);opacity:.85}
.route-links{display:flex;flex-wrap:wrap;gap:8px 22px}
.price-note strong{color:var(--ink);font-weight:700}.price-note{opacity:1}
.price-band{background:var(--bg);color:var(--ink);padding:clamp(22px,2.6vw,34px) 0;border-top:4px solid var(--gold,#C89143)}
.price-band p{margin:0;font-size:clamp(1.0625rem,1.3vw,1.25rem);line-height:1.5}
.price-band strong{color:var(--ink);font-weight:700}
.price-band p{max-width:none!important;font-size:clamp(1.125rem,1.5vw,1.375rem)}
.langs{display:inline-flex;order:4;border:2px solid currentColor}
.langs .lang{border:0;min-width:48px;padding:0 8px;font-size:.875rem;letter-spacing:.04em}
.langs .lang.on{background:var(--ink);color:var(--bg);cursor:default}
.langs .lang.on:hover{background:var(--ink);color:var(--bg)}
@media(min-width:1081px){.langs{margin-left:12px}.langs .lang{margin-left:0}}
@media(max-width:480px){.langs .lang{min-width:34px;padding:0 3px;font-size:.75rem;letter-spacing:0}}
@media(max-width:439px){.nav .btn{display:none}.nav .menu-btn{margin-left:auto}}
.route-links .link{white-space:normal;overflow-wrap:break-word;max-width:100%}
.route .timing{display:block;margin-top:12px}
.promise{margin-top:clamp(28px,3vw,44px);padding:clamp(22px,2.6vw,36px);background:var(--navy,#06243C);color:var(--cream,#FFF9E8)}
.promise .lead-in{margin:0 0 6px}
.promise-line{margin:0;font-family:var(--head);font-weight:700;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.3;color:var(--ink)}
.promise .lead-in{color:var(--gold-light,#E9BD70)}
.promise .promise-line{color:var(--cream,#FFF9E8)}
