@font-face{font-family:Glancyr;src:url('assets/fonts/Glancyr/Glancyr-ExtraLight.otf') format('opentype');font-weight:200;font-display:swap}
@font-face{font-family:Glancyr;src:url('assets/fonts/Glancyr/Glancyr-Light.otf') format('opentype');font-weight:300;font-display:swap}
@font-face{font-family:Glancyr;src:url('assets/fonts/Glancyr/Glancyr-Regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:Glancyr;src:url('assets/fonts/Glancyr/Glancyr-SemiBold.otf') format('opentype');font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat/Montserrat-Light.ttf') format('truetype');font-weight:300;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat/Montserrat-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat/Montserrat-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat/Montserrat-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');font-weight:700;font-display:swap}

:root{--ink:#242424;--ink-deep:#1b1b1b;--graphite:#292d31;--gold:#d89514;--gold-light:#f0b934;--gold-muted:#a3834b;--paper:#f1f0ed;--off-white:#f7f7f4;--copy-muted:#aaa9a8;--dark-copy:#2a2d31;--shell:min(82vw,1480px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--ink);color:var(--off-white);font-family:Montserrat,Arial,sans-serif;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
button,input,select{font:inherit}
button,a{touch-action:manipulation}
button{color:inherit}
a{color:inherit}
::selection{background:var(--gold);color:var(--ink-deep)}
:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}
.skip-link{position:fixed;z-index:1000;left:1rem;top:1rem;transform:translateY(-200%);background:var(--off-white);color:var(--ink);padding:.8rem 1rem}.skip-link:focus{transform:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section-shell{width:var(--shell);margin-inline:auto;position:relative}
.eyebrow,.kicker,.section-index{text-transform:uppercase;letter-spacing:.34em;font-weight:500}
.eyebrow{font-size:.75rem}.kicker{color:var(--gold);font-size:.72rem}.section-index{margin:0;color:#777;font-size:.64rem}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.8rem;text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font-size:.67rem;font-weight:600;border:1px solid;cursor:pointer;transition:transform .3s var(--ease),background-color .3s,color .3s}
.button:hover{transform:translateY(-2px)}
.button--outline{border-color:var(--gold);border-radius:999px}.button--outline:hover{background:var(--gold);color:var(--ink-deep)}
.button--gold{border:0;background:var(--gold);color:#161616;width:100%}.button--gold:hover{background:var(--gold-light)}

.hero{min-height:620px;height:clamp(620px,100svh,1120px);background:#25282b;display:grid;place-items:center;position:relative;isolation:isolate;overflow:hidden;contain:paint}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 24%,transparent 76%,rgba(0,0,0,.16))}
.hero__aura{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 48% 40% at 50% 40%,rgba(229,225,216,.08),transparent 72%)}
.hero__geometry{position:absolute;inset:-1%;z-index:0;display:grid;place-items:center;pointer-events:none;transform:translate3d(var(--hero-x,0),var(--hero-y,0),0) scale(1.012);transition:transform .8s var(--ease)}
.hero__geometry svg{width:100%;height:100%;display:block}
.hero__linework-halo{fill:none;stroke:#e5e1d8;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;opacity:.08}
.hero__linework{fill:none;stroke:#e5e1d8;stroke-width:.95;stroke-linecap:round;stroke-linejoin:round;opacity:.2}
.hero__linework-spark{fill:none;stroke:#f4f1ea;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.hero__shadowwork{filter:drop-shadow(0 18px 30px rgba(0,0,0,.12))}
.hero__inner{position:relative;z-index:2;text-align:center;width:min(90vw,820px);height:100%;padding:0 0 clamp(2.5rem,8vh,5.5rem);display:flex;flex-direction:column;align-items:center;justify-content:center}
.hero__mark{width:clamp(480px,52vw,640px);filter:drop-shadow(0 22px 38px rgba(0,0,0,.22))}
.hero .eyebrow{margin:.9rem 0 2.45rem;color:#bebfbe;font:300 clamp(.62rem,.86vw,.76rem)/1.4 Montserrat;letter-spacing:.53em}
.hero__dots{display:flex;align-items:center;justify-content:center;gap:9px;height:8px;margin-bottom:2.45rem}
.hero__dots i{display:block;width:6px;height:6px;border-radius:50%;background:rgba(190,191,190,.42);flex:none}
.hero h1{font-family:Glancyr,sans-serif;font-weight:200;text-transform:uppercase;font-size:clamp(1.25rem,1.85vw,1.55rem);line-height:1.28;letter-spacing:.17em;margin:0;color:#bfc0bf}.hero h1 strong{font-family:Montserrat,sans-serif;color:#fff;font-weight:700;letter-spacing:.11em}
.hero__cta{position:absolute;left:50%;bottom:clamp(3.2rem,8vh,5rem);width:64px;height:88px;display:grid;place-items:center;transform:translateX(-50%);text-decoration:none;color:var(--gold-light)}.hero__cta svg{width:24px;fill:none;stroke:currentColor;stroke-width:1.25;transition:transform .3s}.hero__cta:hover svg{transform:translateY(4px)}
.js .hero__cta svg{visibility:hidden}
@media (prefers-reduced-motion:reduce){
  .js .hero__cta{opacity:1;animation:none}
  .js .hero__cta svg{visibility:visible;animation:none}
  .js .hero__linework path,.js .hero__linework-halo path,.js .hero__linework-spark path,.js .hero__aura,.js .hero__mark,.js .hero__dots i{animation:none!important}
  .js .hero__linework path,.js .hero__linework-halo path{stroke-dashoffset:0}
  .js .hero__linework-spark{opacity:0}
  .js .hero__aura{opacity:.7}
  .js .hero__dots i:first-child{width:16px;border-radius:999px;background:var(--gold)}
}

.origins{position:relative;isolation:isolate;overflow:hidden;min-height:450px;padding:7rem 0 1rem;background:linear-gradient(180deg,#242424 0%,#1d1d1d 48%,#090909 88%,#030303 100%)}
.origins::after{content:"";position:absolute;z-index:2;inset:46% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(2,2,2,.7) 58%,#020202 88%)}
.origins .section-shell{height:322px}.origins .section-index{display:none}
.origins__route{list-style:none;margin:0;padding:0;height:296px;position:relative}
.origins__route::before{content:"";position:absolute;left:50%;top:1px;bottom:0;width:6px;transform:translateX(-50%);border-radius:5px;background:linear-gradient(90deg,#754a04 0%,var(--gold) 50%,#754a04 100%);box-shadow:0 0 10px rgba(216,149,20,.18)}
.origin{position:absolute;width:clamp(270px,29vw,310px)}.origin--left{right:calc(50% + 72px);top:0}.origin--right{left:calc(50% + 100px);top:76px}
.origin::before{content:"";position:absolute;top:75px;border-top:1px dotted rgba(205,205,205,.48)}.origin--left::before{left:100%;width:72px}.origin--right::before{right:100%;width:100px}
.origin::after{content:"";position:absolute;z-index:1;top:64px;width:14px;height:14px;border:4px solid #555;background:#858585;border-radius:50%;box-shadow:0 0 0 3px #202020}.origin--left::after{right:-72px;transform:translateX(50%)}.origin--right::after{left:-100px;transform:translateX(-50%)}
.origin article{width:100%}.origin time{position:absolute;z-index:2;top:45px;font:700 1.2rem/1 Montserrat;color:#d6d6d6;margin:0}.origin--left time{left:calc(100% + 82px)}.origin--right time{right:calc(100% + 40px)}
.origin figure{margin:0;background:#ddd;border:3px solid #dfddd7}.origin img{width:100%;aspect-ratio:1.91;object-fit:cover}.origin h3{font:500 1rem/1.2 Glancyr;color:var(--gold);text-align:center;margin:.7rem 0 .42rem}.origin p{font:300 .59rem/1.55 Montserrat;color:#b8b8b5;text-align:center;margin:0}
.origins .button{position:absolute;z-index:4;left:50%;bottom:0;transform:translateX(-50%);display:flex;width:max-content;min-height:32px;margin:0;padding:.5rem 1.25rem;border-color:rgba(216,149,20,.82);border-radius:999px;background:rgba(3,3,3,.88);box-shadow:0 7px 24px rgba(0,0,0,.42);font-size:.64rem;letter-spacing:.2em}.origins .button:hover{transform:translate(-50%,-2px);background:var(--gold);color:#111}

.gallery,.people,.contact{content-visibility:auto;contain-intrinsic-size:auto 900px}
.gallery{background:var(--paper);color:var(--dark-copy)}
.gallery__header{min-height:280px;padding-block:6.5rem;display:grid;grid-template-columns:1fr 2.2fr;gap:8rem;align-items:start}.gallery__header .kicker{margin:.4rem 0}.gallery__header h2{font:300 clamp(1.8rem,2.7vw,3rem)/1.15 Glancyr;margin:0;max-width:850px}.gallery__header h2 span{display:block;color:#737373}
.gallery__mosaic{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:clamp(155px,16.5vw,330px)}
.gallery__tile,.gallery__more{min-width:0;overflow:hidden}.gallery__button,.gallery__more button{width:100%;height:100%;border:0;padding:0;background:none;cursor:pointer}.gallery picture,.gallery img{width:100%;height:100%}.gallery img{object-fit:cover;transition:transform .8s var(--ease),filter .4s}.gallery__button:hover img{transform:scale(1.035);filter:contrast(1.05)}
.gallery__tile--2 img,.gallery__tile--4 img{object-position:50% 30%}.gallery__tile:nth-child(8) img,.gallery__tile:nth-child(9) img{object-position:50% 24%}
.gallery__more{background:var(--gold);min-height:130px}.gallery__more button{display:flex;align-items:center;justify-content:center;gap:1rem;font:400 clamp(1.2rem,2vw,2rem) Glancyr;color:white}.gallery__more span{font-size:.8em}

.cinematic{position:relative;isolation:isolate;overflow:hidden}.cinematic>picture,.cinematic>picture img,.cinematic__video{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.cinematic>picture img,.cinematic__video{object-fit:cover}.cinematic::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.cinematic--driver{min-height:min(88vh,950px);display:grid;place-items:center}.cinematic--driver .cinematic__video{object-position:50% 42%}.cinematic--driver::after{background:linear-gradient(rgba(18,10,2,.22),rgba(18,10,2,.46))}
.cinematic__content{text-align:center}.cinematic--driver.is-playing .play{opacity:0;transition:opacity .35s var(--ease)}.cinematic--driver.is-playing:hover .play,.cinematic--driver.is-playing:focus-within .play{opacity:1}@media (hover:none){.cinematic--driver.is-playing .play{opacity:.55}}
.cinematic__sound{position:absolute;right:1.25rem;bottom:1.25rem;z-index:2;width:48px;height:48px;border:0;padding:0;background:rgba(12,8,4,.42);color:#f8ecd1;border-radius:50%;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(6px)}.cinematic__sound svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cinematic__sound-on{display:none}.cinematic--driver.is-unmuted .cinematic__sound-off{display:none}.cinematic--driver.is-unmuted .cinematic__sound-on{display:block}.cinematic__sound:hover{transform:scale(1.06);background:rgba(12,8,4,.58)}
.play{width:clamp(90px,8vw,128px);height:clamp(90px,8vw,128px);border:0;background:transparent;display:grid;place-items:center;margin:auto;cursor:pointer}.play__play,.play-shape{display:block;width:0;height:0;border-top:clamp(24px,3vw,40px) solid transparent;border-bottom:clamp(24px,3vw,40px) solid transparent;border-left:clamp(38px,4vw,64px) solid #f8ecd1;filter:drop-shadow(0 10px 20px rgba(0,0,0,.24));transition:transform .3s var(--ease)}.play:hover .play__play,.play:hover .play__pause,.video-card:hover .play-shape{transform:scale(1.08)}.play__pause{display:none;width:clamp(26px,2.4vw,34px);height:clamp(32px,3vw,42px);background:linear-gradient(#f8ecd1,#f8ecd1) 0 0/9px 100% no-repeat,linear-gradient(#f8ecd1,#f8ecd1) 100% 0/9px 100% no-repeat;filter:drop-shadow(0 10px 20px rgba(0,0,0,.24));transition:transform .3s var(--ease)}.cinematic--driver.is-playing .play__play{display:none}.cinematic--driver.is-playing .play__pause{display:block}.cinematic--driver.is-paused .play__pause{display:none}

.testimonials{background:var(--ink-deep);padding:8rem 0 10rem;position:relative;min-height:1100px;border-top:14px solid var(--gold-muted);overflow:hidden}.testimonials__arc{position:absolute;right:-14vw;top:-26vw;width:65vw;aspect-ratio:1;border:1px solid rgba(216,149,20,.12);border-radius:50%;box-shadow:0 0 0 5vw rgba(216,149,20,.025),0 0 0 11vw rgba(216,149,20,.02)}
.testimonials .section-index{position:absolute;left:0;top:0}.testimonials>.section-shell>.eyebrow{text-align:center;margin:0 0 4rem}
.video-card{position:relative;overflow:hidden;isolation:isolate;border:0;border-radius:6px;background:var(--gold-muted);aspect-ratio:16/9;box-shadow:0 22px 55px rgba(0,0,0,.35);cursor:pointer;display:grid;place-items:center;padding:0;color:inherit}
.video-card__poster,.video-card__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-card__media{z-index:1;opacity:0;background:#111}
.video-card.is-playing .video-card__media{opacity:1}
.video-card.is-playing .video-card__poster,.video-card.is-playing .video-card__play{opacity:0;pointer-events:none}
.video-card__play{position:absolute;inset:0;z-index:2;border:0;background:transparent;cursor:pointer;display:grid;place-items:center}
.video-card__play::before,.video-card[data-video-pick]::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,24,8,.16),rgba(18,10,4,.46));pointer-events:none}
.video-card .play-shape{position:relative;z-index:1;border-top-width:18px;border-bottom-width:18px;border-left-width:28px}
.video-card__name{position:absolute;left:0;right:0;bottom:0;z-index:3;margin:0;padding:.7rem .85rem .65rem;font:600 .62rem/1.25 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#f8ecd1;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.72));pointer-events:none}
.video-card--featured{width:min(72vw,930px);margin:auto;cursor:default}
.video-card--featured .play-shape{border-top-width:36px;border-bottom-width:36px;border-left-width:58px}
.video-card--featured .video-card__name{font-size:.72rem;padding:.9rem 1.1rem}
.video-card[data-video-pick].is-active{box-shadow:0 0 0 2px var(--gold),0 22px 55px rgba(0,0,0,.35)}
.testimonials__secondary{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);align-items:center;gap:4rem 5rem;width:min(82vw,1080px);margin:7rem auto 0}
.testimonials__secondary h3{font:300 clamp(2rem,3vw,3rem) Glancyr;margin:0;text-align:center;white-space:nowrap}.testimonials__secondary h3 span{display:block;width:1px;height:55px;background:var(--gold);margin:1.3rem auto}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.video-grid .video-card{width:100%}
.video-grid-slider{position:relative;min-width:0;padding:0 3.2rem}
.video-grid-slider__arrows{position:absolute;inset:0;pointer-events:none}
.video-grid-slider__arrow{position:absolute;top:50%;z-index:3;width:44px;height:44px;border:0;background:transparent;color:var(--gold);font:300 2.8rem/1 Glancyr;cursor:pointer;pointer-events:auto;transform:translateY(-50%)}
.video-grid-slider__arrow:disabled{opacity:.22;cursor:default}
.video-grid-slider__arrow.splide__arrow--prev{left:0}
.video-grid-slider__arrow.splide__arrow--next{right:0}
.video-grid-slider .splide__pagination{display:flex;justify-content:center;gap:.45rem;margin:.9rem 0 0;padding:0;list-style:none}
.video-grid-slider .splide__pagination__page{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#5c574e;cursor:pointer}
.video-grid-slider .splide__pagination__page.is-active{background:var(--gold);width:18px;border-radius:999px}
.video-dialog__media{display:block;width:100%;max-height:calc(92vh - 65px);background:#000}

.people{background:var(--paper);color:var(--dark-copy);padding:7.5rem 0 6rem;position:relative;overflow:hidden}.people__linework{position:absolute;inset:-12rem -2rem auto auto;font:200 min(46vw,700px)/1 Glancyr;color:transparent;-webkit-text-stroke:1px rgba(216,149,20,.09);pointer-events:none}
.people__intro{display:grid;grid-template-columns:.95fr 1.6fr;gap:7rem;align-items:start}.people__label{font:700 clamp(2rem,3.4vw,4rem)/1 Montserrat;color:var(--gold);letter-spacing:-.07em;margin:1rem 0}.people__intro h2{font:300 clamp(2.2rem,3.6vw,4.4rem)/1.1 Glancyr;margin:0}.people__intro h2 strong{font-weight:600}.people__intro>div>p{font:300 .95rem/1.8 Montserrat;max-width:640px;margin:2rem 0 0}
.person-card{background:#fff;border-radius:14px;padding:1.35rem 1.4rem 2.05rem;min-height:0;box-shadow:0 8px 22px rgba(37,37,37,.07);position:relative}.person-card header{margin:0 0 .2rem}.person-card h3{font:600 1rem/1.3 Montserrat;color:var(--gold);margin:0 0 .25rem}.person-card header p{font-size:.68rem;margin:0;letter-spacing:.04em;text-transform:uppercase;color:#7a776f}.person-card__quote{font:300 .95rem/1.65 Montserrat;color:#595959;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;margin:.85rem 0 1.55rem}.person-card__more{border:0;background:none;color:var(--gold);font-size:.78rem;position:absolute;right:1.4rem;bottom:1.05rem;cursor:pointer}

.cinematic--quote{height:min(92vh,980px);min-height:720px;display:grid;place-items:center}.cinematic--quote picture img{object-position:50% 12%}.cinematic--quote::after{background:rgba(13,13,13,.72)}.cinematic--quote blockquote{font:300 clamp(1.8rem,3.2vw,3.7rem)/1.25 Glancyr;text-align:center;letter-spacing:.06em;margin:0;padding:2rem;width:min(92vw,1300px)}.cinematic--quote blockquote span{display:block;width:80px;height:1px;background:var(--gold);margin:2.2rem auto}

.legacy{background:var(--ink-deep)}.legacy__masthead{background:var(--graphite);padding:5rem 0}.legacy__masthead .section-shell{display:grid;grid-template-columns:260px 1px 1fr;gap:3.5rem;align-items:center}.legacy__masthead img{width:250px}.legacy__masthead .section-shell>span{height:120px;background:var(--gold)}.legacy__masthead h2{font:300 clamp(1.8rem,3vw,3.2rem) Glancyr;text-transform:uppercase;letter-spacing:.17em;margin:.9rem 0 0}
.legacy__body{position:relative;padding:9rem 0 28rem;isolation:isolate}.legacy__watermark{position:absolute;top:3rem;right:-2vw;font:200 80vw/1 Glancyr;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.025);z-index:-1}.legacy__road{position:absolute;top:8rem;bottom:4rem;left:50%;width:12px;transform:translateX(-50%);background:var(--gold);border-radius:20px;z-index:-1;-webkit-mask-image:linear-gradient(#000 0%,#000 calc(100% - 9rem),transparent);mask-image:linear-gradient(#000 0%,#000 calc(100% - 9rem),transparent)}.legacy__road::after{content:"";position:absolute;left:5px;top:0;bottom:0;border-left:2px dashed #f6ca69}.legacy__road span{position:absolute;inset:0;background:var(--gold-light);transform-origin:top;transform:scaleY(var(--route-progress,0));opacity:.35}
.timeline{margin:0 auto;padding:0;list-style:none}.milestone{min-height:390px;position:relative;width:50%;padding-bottom:5rem}.milestone--left{margin-right:50%;padding-right:7rem}.milestone--right{margin-left:50%;padding-left:7rem}.milestone article{position:relative}.milestone time{position:absolute;top:2rem;font-size:clamp(2.4rem,4vw,4.2rem);font-weight:700;color:#eee}.milestone--left time{right:-12.7rem}.milestone--right time{left:-12.7rem}.milestone__node{position:absolute;top:3.2rem;width:22px;height:22px;background:#fff;border:5px solid #777;border-radius:50%;box-shadow:0 0 0 8px var(--ink-deep);z-index:2}.milestone--left .milestone__node{right:-7.7rem}.milestone--right .milestone__node{left:-7.7rem}.milestone__node::after{content:"";position:absolute;top:6px;width:5rem;border-top:1px dashed rgba(255,255,255,.42)}.milestone--left .milestone__node::after{right:18px}.milestone--right .milestone__node::after{left:18px}.milestone__content{max-width:520px}.milestone--left .milestone__content{margin-left:auto;margin-right:2.1rem}.milestone figure{margin:0;border:5px solid #e8e3da;background:#ddd;overflow:hidden}.milestone figure img{width:100%;aspect-ratio:var(--ratio,2);object-fit:cover}.milestone h3{font:500 clamp(1rem,1.4vw,1.35rem)/1.25 Glancyr;color:var(--gold);text-align:center;margin:1.1rem 0 .65rem}.milestone p{font:300 .9rem/1.7 Montserrat;color:#c1c1be;text-align:center;margin:0}

.contact{background:var(--paper);color:var(--dark-copy);padding:9rem 0 0}.contact__layout{display:grid;grid-template-columns:1fr minmax(360px,.82fr);gap:10rem;align-items:start}.contact h2{font:300 clamp(2.7rem,5vw,5.5rem)/.95 Glancyr;margin:1.5rem 0}.contact__layout>div>p:not(.kicker){font:300 1rem/1.8 Montserrat;max-width:560px}.contact ul{list-style:none;margin:3rem 0;padding:0;display:flex;gap:2rem;flex-wrap:wrap}.contact li{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border-left:2px solid var(--gold);padding-left:1rem;max-width:210px}.lead-form{background:#fff;padding:2.5rem;box-shadow:0 24px 70px rgba(32,32,32,.12)}.form-field{margin-bottom:1.3rem}.form-field label{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;font-weight:600;margin-bottom:.5rem}.form-field input,.form-field select,.form-field textarea{width:100%;border:0;border-bottom:1px solid #b8b5ae;background:#fafafa;padding:.5rem .75rem;color:#222;border-radius:0;font:inherit}.form-field input,.form-field select{height:50px}.form-field textarea{min-height:8.5rem;resize:vertical;line-height:1.55}.consent{display:flex;gap:.75rem;align-items:flex-start;font-size:.68rem;line-height:1.5;margin:1.5rem 0}.consent input{accent-color:var(--gold);margin-top:.15rem}.form-status{font-size:.75rem;min-height:1.4em;margin:1rem 0 0}.hp{position:absolute!important;left:-9999px!important}.contact footer{margin-top:9rem;background:var(--ink-deep);color:var(--off-white);min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column}.contact footer img{width:150px}.contact footer p{text-transform:uppercase;letter-spacing:.3em;font-size:.55rem;margin:0}
.contact-float{position:fixed;right:1.2rem;bottom:1.2rem;z-index:20;min-height:48px;background:var(--gold);color:#181818;text-decoration:none;display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;font-weight:600;box-shadow:0 12px 35px rgba(0,0,0,.3)}.contact-float svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.5}

dialog{color:inherit}.media-dialog{width:min(94vw,1100px);max-height:92vh;border:0;padding:0;background:#171717;box-shadow:0 40px 110px #000;color:var(--off-white);overflow:hidden}.media-dialog::backdrop{background:rgba(0,0,0,.87);backdrop-filter:blur(5px)}.dialog__bar{height:65px;display:flex;align-items:center;justify-content:space-between;padding:0 1.4rem;border-bottom:1px solid #333}.dialog__bar h2{text-transform:uppercase;letter-spacing:.25em;font-size:.7rem}.dialog__bar button{border:0;background:none;font-size:2rem;cursor:pointer}.media-dialog figure{margin:0;display:grid;place-items:center;min-height:300px}.media-dialog figure img{max-height:calc(92vh - 65px);width:auto}.media-dialog figcaption{position:absolute;bottom:1rem;background:rgba(0,0,0,.65);padding:.45rem .7rem;font-size:.68rem}.dialog__nav{position:absolute;z-index:2;top:50%;width:50px;height:64px;border:0;background:rgba(0,0,0,.6);font-size:2.4rem;cursor:pointer}.dialog__nav--prev{left:0}.dialog__nav--next{right:0}.video-dialog{max-width:800px}.video-placeholder{aspect-ratio:16/9;display:grid;place-items:center;align-content:center;gap:3rem;background:var(--gold-muted)}.video-placeholder .play-shape{border-top-width:32px;border-bottom-width:32px;border-left-width:50px}.video-placeholder p{text-transform:uppercase;letter-spacing:.18em;font-size:.68rem}.person-dialog{max-width:720px}.person-dialog__body{display:block;padding:2.4rem 2.6rem 3rem;overflow:auto;max-height:calc(92vh - 65px)}.person-dialog__body .kicker{margin:0 0 1.3rem}.person-dialog__quote p{font:300 .95rem/1.8 Montserrat;color:#ccc;margin:0 0 1rem}.person-dialog__quote p:last-child{margin-bottom:0}

.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.js .reveal--hero{opacity:1;transform:none;transition:none}.js .reveal.is-visible{opacity:1;transform:none}.milestone.is-active .milestone__node{background:var(--gold-light);border-color:#fff;box-shadow:0 0 0 8px var(--ink-deep),0 0 22px rgba(240,185,52,.55)}

/* Hero motion is sequenced to clarify hierarchy: environment, mark, context, title, direction. */
.js .hero__aura{opacity:0;animation:hero-aura-in 1.8s .35s var(--ease) forwards,hero-aura-breathe 5.8s 2.1s ease-in-out infinite}
.js .hero__linework-halo path,.js .hero__linework path{stroke-dasharray:1450;stroke-dashoffset:1450;animation:hero-line-draw 2.4s .15s var(--ease) forwards}
.js .hero__linework-halo path:nth-child(n+4),.js .hero__linework path:nth-child(n+4){animation-delay:.4s}
.js .hero__linework-spark{animation:hero-spark-in .5s 2.35s var(--ease) forwards}
.js .hero__linework-spark path{stroke-dasharray:90 1360;stroke-dashoffset:0;animation:hero-spark 5.8s 2.35s linear infinite}
.js .hero__linework-spark path:nth-child(2){animation-delay:2.7s}
.js .hero__linework-spark path:nth-child(3){animation-delay:3.05s}
.js .hero__linework-spark path:nth-child(4){animation-delay:2.5s}
.js .hero__linework-spark path:nth-child(5){animation-delay:3.2s}
.js .hero:not(.is-hot) .hero__aura,
.js .hero:not(.is-hot) .hero__linework-spark,
.js .hero:not(.is-hot) .hero__linework-spark path,
.js .hero:not(.is-hot) .hero__dots i{animation-play-state:paused}
.js .hero__shadowwork{opacity:0;transform:translateY(12px);animation:hero-shadow-in 1.5s .2s var(--ease) forwards}
.js .hero__mark,.js .hero .eyebrow,.js .hero__dots,.js .hero h1,.js .hero__cta{opacity:0}
.js .hero__inner.is-visible .hero__mark{animation:hero-item-in 1.05s .12s var(--ease) forwards}
.js .hero__inner.is-visible .eyebrow{animation:hero-item-in .9s .45s var(--ease) forwards}
.js .hero__inner.is-visible .hero__dots{animation:hero-item-in .8s .68s var(--ease) forwards}
.js .hero__inner.is-visible .hero__dots i{animation:hero-dot-cycle 5s .9s cubic-bezier(.45,0,.2,1) infinite}
.js .hero__inner.is-visible .hero__dots i:nth-child(1){animation-delay:.9s}
.js .hero__inner.is-visible .hero__dots i:nth-child(2){animation-delay:1.9s}
.js .hero__inner.is-visible .hero__dots i:nth-child(3){animation-delay:2.9s}
.js .hero__inner.is-visible .hero__dots i:nth-child(4){animation-delay:3.9s}
.js .hero__inner.is-visible .hero__dots i:nth-child(5){animation-delay:4.9s}
.js .hero__inner.is-visible h1{animation:hero-item-in 1s .88s var(--ease) forwards}
.js .hero__inner.is-visible .hero__cta{animation:hero-arrow-in .8s 1.2s var(--ease) forwards}
.js .hero__inner.is-visible .hero__cta svg{animation:hero-arrow-breathe 2.8s 2.1s cubic-bezier(.45,0,.2,1) infinite}
@keyframes hero-line-draw{to{stroke-dashoffset:0}}
@keyframes hero-spark{to{stroke-dashoffset:-1450}}
@keyframes hero-spark-in{to{opacity:.5}}
@keyframes hero-aura-in{to{opacity:1}}
@keyframes hero-aura-breathe{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes hero-shadow-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes hero-item-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes hero-dot-cycle{
  0%,18%{width:16px;border-radius:999px;background:var(--gold);box-shadow:0 0 10px rgba(216,149,20,.35)}
  28%,100%{width:6px;border-radius:50%;background:rgba(190,191,190,.42);box-shadow:none}
}
@keyframes hero-arrow-in{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes hero-arrow-breathe{0%,18%,100%{transform:translateY(0)}42%{transform:translateY(11px)}62%{transform:translateY(3px)}78%{transform:translateY(7px)}}

@media (max-width:1000px){
  :root{--shell:min(88vw,860px)}
  .gallery__header{gap:3rem}.gallery__mosaic{grid-template-columns:repeat(3,1fr);grid-auto-rows:26vw}
  .people__intro{grid-template-columns:1fr;gap:2rem}.people__carousel{margin-top:7rem;padding-inline:2rem}.people__track{grid-template-columns:repeat(2,1fr)}
  .contact__layout{gap:4rem}.legacy__masthead .section-shell{grid-template-columns:200px 1px 1fr;gap:2rem}.legacy__masthead img{width:190px}
  .milestone{min-height:340px}.milestone--left{padding-right:4.5rem}.milestone--right{padding-left:4.5rem}.milestone--left .milestone__node{right:-5.2rem}.milestone--right .milestone__node{left:-5.2rem}.milestone--left time{right:-10.3rem}.milestone--right time{left:-10.3rem}.milestone--left .milestone__content{margin-right:1.35rem}.milestone figure{border-width:4px}
}

@media (max-width:760px){
  :root{--shell:calc(100vw - 40px)}
  .hero{min-height:700px;height:max(700px,100svh)}.hero__inner{padding:0 0 9vh}.hero__mark{width:min(470px,94vw)}.hero .eyebrow{margin:.85rem 0 2.1rem;font-size:.61rem;letter-spacing:.42em}.hero__dots{margin-bottom:2.1rem}.hero h1{font-size:clamp(1.35rem,6.3vw,1.72rem);line-height:1.25;letter-spacing:.1em}.hero h1 strong{letter-spacing:.06em}.hero__cta{bottom:2.2rem}.contact-float span{display:none}.contact-float{width:52px;height:52px;padding:0;justify-content:center;border-radius:50%}
  .origins{min-height:0;padding:4.5rem 0 1.25rem}.origins::after{inset:auto 0 0;height:38%}.origins .section-shell{height:auto}.origins__route{height:auto;max-height:clamp(560px,125vw,730px);padding-left:54px;display:flex;flex-direction:column;gap:3.25rem;overflow:hidden}.origins__route::before{left:10px;transform:none;width:5px}.origin,.origin--left,.origin--right{position:relative;inset:auto;width:100%;padding:0;flex:0 0 auto}.origin article,.origin--left article{width:100%;margin:0}.origin::before,.origin--left::before,.origin--right::before{left:-39px;right:auto;top:21px;width:39px}.origin::after,.origin--left::after,.origin--right::after{left:-41.5px;right:auto;top:12px;width:18px;height:18px;border-width:4px;transform:translateX(-50%)}.origin time,.origin--left time,.origin--right time{position:static;display:block;font-size:1.25rem;margin:0 0 .8rem}.origin figure{border-width:3px}.origin h3{text-align:left;font-size:1rem}.origin p{text-align:left;font-size:.62rem}.origins .button{position:relative;left:50%;bottom:auto;margin-top:-.9rem}
  .gallery__header{min-height:0;padding-block:4.5rem;display:block}.gallery__header h2{font-size:2rem;margin-top:1.5rem}.gallery__mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:47vw}.gallery__more{min-height:47vw}
  .cinematic--driver{min-height:720px}.cinematic--driver .cinematic__video{object-position:50% 42%}
  .testimonials{padding:6rem 0 7rem;min-height:0}.testimonials .section-index{position:static;margin-bottom:2rem}.testimonials>.section-shell>.eyebrow{margin-bottom:3rem}.video-card--featured{width:100%}.testimonials__secondary{width:100%;grid-template-columns:1fr;gap:2rem;margin-top:5rem}.testimonials__secondary h3 span{display:inline-block;height:1px;width:44px;margin:.5rem 1rem}.video-grid{gap:.7rem}.video-grid-slider{padding:0 2.4rem}
  .people{padding:6rem 0}.people__label{font-size:2.2rem}.people__intro h2{font-size:2.35rem}
  .cinematic--quote{height:min(86vh,780px);min-height:560px}.cinematic--quote picture img{object-position:50% 10%}.cinematic--quote blockquote{font-size:1.75rem;line-height:1.35}
  .legacy__masthead{padding:4rem 0}.legacy__masthead .section-shell{grid-template-columns:110px 1px 1fr;gap:1.2rem}.legacy__masthead img{width:105px}.legacy__masthead .section-shell>span{height:85px}.legacy__masthead h2{font-size:1.15rem;line-height:1.35;letter-spacing:.1em}.legacy__masthead .section-index{font-size:.5rem}.legacy__body{padding:6rem 0 22rem}.legacy__road{left:28px;top:5rem;bottom:3.5rem;width:9px}.legacy__road::after{left:4px;border-left-width:1px}.timeline{width:100%;padding:0 20px 0 66px}.milestone,.milestone--left,.milestone--right{width:100%;margin:0;padding:0 0 5.5rem;min-height:0}.milestone article{display:flex;flex-direction:column}.milestone time,.milestone--left time,.milestone--right time{position:static;order:0;font-size:2.8rem;margin-bottom:1rem}.milestone__node,.milestone--left .milestone__node,.milestone--right .milestone__node{left:-46px;right:auto;top:1rem;width:18px;height:18px;border-width:4px}.milestone__node::after,.milestone--left .milestone__node::after,.milestone--right .milestone__node::after{left:15px;right:auto;top:5px;width:27px}.milestone__content{max-width:none}.milestone figure{border-width:4px}.milestone h3{text-align:left;font-size:1.15rem;margin-top:1.2rem}.milestone p{text-align:left;font-size:.74rem;line-height:1.7}.legacy__watermark{font-size:130vw;top:30vh}
  .contact{padding-top:6rem}.contact__layout{grid-template-columns:1fr;gap:4rem}.contact h2{font-size:3.4rem}.contact ul{display:block}.contact li+li{margin-top:1rem}.lead-form{padding:1.5rem;margin-inline:-4px}.contact footer{margin-top:6rem}
  .person-dialog__body{padding:2rem}
}

@media (max-width:360px){.hero h1{font-size:1.75rem}.gallery__mosaic{grid-auto-rows:50vw}.testimonials .video-grid{grid-template-columns:1fr 1fr}.people__label{font-size:1.85rem}.contact h2{font-size:2.8rem}.timeline{padding-right:14px}}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.gallery img{transform:none!important}.people__viewport{scroll-behavior:auto!important}}

@media (min-width:1001px){.milestone--left time{right:-20rem}.milestone--right time{left:-20rem}}

/* Testimonial carousel — Splide owns all movement, sizing and interaction state. */
.testimonial-slider{position:relative;margin-top:5rem;padding:0 4rem 2.8rem}
.testimonial-slider__viewport{overflow:hidden;padding:1.1rem 1.4rem 2.8rem;margin:-1.1rem 0 0}
.testimonial-slider__track{align-items:stretch}
.testimonial-slider__slide{display:flex;min-width:0}
.testimonial-slider__slide .person-card{width:100%;height:100%;min-height:0}
.testimonial-slider__arrows{position:absolute;inset:0;pointer-events:none}
.testimonial-slider__arrow{position:absolute;top:50%;z-index:3;width:52px;height:52px;border:0;background:transparent;color:var(--gold);font:300 3.5rem/1 Glancyr;cursor:pointer;pointer-events:auto;transform:translateY(-50%);transition:opacity .2s,transform .25s var(--ease)}
.testimonial-slider__arrow:hover:not(:disabled){transform:translateY(-50%) scale(1.08)}
.testimonial-slider__arrow:disabled{opacity:.24;cursor:default}
.testimonial-slider__arrow.splide__arrow--prev{left:0}
.testimonial-slider__arrow.splide__arrow--next{right:0}
.testimonial-slider .splide__pagination{position:absolute;left:50%;bottom:0;display:flex;gap:.65rem;transform:translateX(-50%);margin:0;padding:0;list-style:none}
.testimonial-slider .splide__pagination__page{display:block;width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cac8c2;cursor:pointer;transition:width .25s var(--ease),border-radius .25s,background-color .25s}
.testimonial-slider .splide__pagination__page.is-active{width:28px;border-radius:999px;background:var(--gold)}
.testimonial-slider .splide__slide[aria-hidden=true] .person-card{opacity:.55}
.testimonial-slider .splide__slide[aria-hidden=false] .person-card{opacity:1}
.testimonial-slider .person-card{transition:opacity .3s}

@media (max-width:1000px){
  .testimonial-slider{margin-top:4.5rem;padding-inline:3rem}
}

@media (max-width:760px){
  .testimonial-slider{margin-top:3.5rem;padding:0 0 3.2rem}
  .testimonial-slider__viewport{padding:1.1rem 1.1rem 2.6rem;margin:-1.1rem 0 0}
  .testimonial-slider__slide .person-card{min-height:0}
  .testimonial-slider__arrow{top:auto;bottom:.15rem;width:48px;height:48px;transform:none}
  .testimonial-slider__arrow:hover:not(:disabled){transform:scale(1.08)}
  .testimonial-slider__arrow.splide__arrow--prev{left:.15rem}
  .testimonial-slider__arrow.splide__arrow--next{right:.15rem}
  .testimonial-slider .splide__pagination{bottom:.55rem}
}

@media (prefers-reduced-motion:reduce){
  .testimonial-slider .person-card,.testimonial-slider .splide__pagination__page{transition:none}
}

/* Desktop legacy road: SVG geometry follows the rendered milestone positions. */
.legacy-road-svg{position:absolute;inset:0;width:100%;height:100%;z-index:0;overflow:visible;pointer-events:none;-webkit-mask-image:linear-gradient(#000 0%,#000 calc(100% - 16rem),transparent);mask-image:linear-gradient(#000 0%,#000 calc(100% - 16rem),transparent)}
.legacy-road-svg path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.legacy-road-svg__shadow{stroke:rgba(0,0,0,.36);stroke-width:28}
.legacy-road-svg__base{stroke:var(--gold);stroke-width:15}
.legacy-road-svg__center{stroke:#f6ca69;stroke-width:2.5;stroke-dasharray:13 15}
.legacy-road-svg__progress{stroke:rgba(255,224,151,.58);stroke-width:4;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--route-progress,0))}
.legacy__body>.legacy__road{display:none}
.timeline{z-index:1}
.legacy__beyond{--node-shift:var(--road-end-shift,0px);min-height:6.5rem;padding-bottom:2rem}
.legacy__watermark{z-index:0}

@media (min-width:761px){
  .milestone{--node-shift:0px}
  .legacy__beyond{--node-shift:var(--road-end-shift,-96px);--node-gutter:-7.7rem}
  .legacy__beyond .milestone__content{position:absolute;left:calc(var(--node-gutter) + var(--node-shift) + 22px + max(18px,calc(5rem - var(--node-shift))) + 12px);top:calc(3.2rem + 11px);transform:translateY(-50%);width:max-content;max-width:min(28rem,42vw);margin:0}
  .legacy__beyond .milestone__content h3{text-align:left;margin:0 0 .3rem}
  .legacy__beyond .milestone__content p{text-align:left}
  .milestone--left .milestone__node,.milestone--right .milestone__node{transform:translateX(var(--node-shift))}
  .milestone--left time,.milestone--right time{transform:translateX(var(--node-shift))}
  .milestone--left .milestone__node::after{width:max(18px,calc(5rem + var(--node-shift)))}
  .milestone--right .milestone__node::after{width:max(18px,calc(5rem - var(--node-shift)))}
}

@media (min-width:761px) and (max-width:1000px){
  .legacy__beyond{--node-gutter:-5.2rem}
}

@media (max-width:760px){
  .legacy-road-svg{display:none}
  .legacy__body>.legacy__road{display:block}
  .legacy__beyond{padding-bottom:2rem}
}

.journey-companion{position:fixed;inset:0;pointer-events:none;z-index:5;overflow:hidden}
.journey-companion.is-docked,.journey-companion.is-commuting,.journey-companion.is-hero,.journey-companion.is-hero-intro{z-index:21}
.journey-companion__cluster{position:absolute;left:0;top:0;transform:translate3d(var(--journey-x,-9999px),var(--journey-y,38vh),0) translate(-50%,-50%) scale(var(--journey-scale,1));opacity:var(--journey-opacity,0);will-change:transform,opacity;transform-origin:center center}
.journey-companion__year{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translateX(-50%);font:700 clamp(1rem,2vw,1.55rem)/1 Glancyr,Montserrat,sans-serif;color:var(--gold-light);font-variant-numeric:tabular-nums;letter-spacing:.08em;white-space:nowrap;text-shadow:0 2px 14px rgba(0,0,0,.7)}
.journey-companion.is-docked .journey-companion__year,.journey-companion.is-hero .journey-companion__year{opacity:0}
.journey-companion__sprite{position:relative;display:block;width:78px;height:78px;transform:rotate(var(--journey-angle,180deg));transform-origin:center center;transform-box:border-box;will-change:transform;filter:drop-shadow(0 0 14px rgba(240,185,52,.48))}
.journey-companion.is-docked:not(.is-commuting) .journey-companion__sprite{animation:journey-idle 2.8s var(--ease) infinite}
.journey-companion.is-hero:not(.is-hero-intro):not(.is-commuting):not(.is-morphing) .journey-companion__sprite{animation:journey-nudge 2.9s cubic-bezier(.45,0,.2,1) infinite}
.journey-companion.is-morphing .journey-companion__sprite{animation:none}
.journey-companion__car{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;filter:blur(5px);transform:scale(.86);transition:opacity .7s var(--ease),filter .7s var(--ease),transform .7s var(--ease);pointer-events:none}
.journey-companion__car.is-front{opacity:1;filter:blur(0);transform:scale(1)}
.journey-companion__sweep{position:absolute;inset:-12%;z-index:2;pointer-events:none;opacity:0;background:linear-gradient(108deg,transparent 28%,rgba(255,224,151,.15) 42%,rgba(240,185,52,.72) 50%,rgba(255,224,151,.15) 58%,transparent 72%);transform:translateX(-75%) rotate(16deg);mix-blend-mode:screen}
.journey-companion.is-morphing .journey-companion__sweep{animation:journey-sweep .68s var(--ease)}
@keyframes journey-idle{0%,100%{translate:0 0}50%{translate:0 -4px}}
@keyframes journey-nudge{0%,100%{translate:0 0}30%{translate:0 12px}48%{translate:0 3px}64%{translate:0 9px}82%{translate:0 1px}}
@keyframes journey-sweep{0%{opacity:0;transform:translateX(-75%) rotate(16deg)}28%{opacity:1}100%{opacity:0;transform:translateX(75%) rotate(16deg)}}

.journey-garage{position:fixed;right:1.2rem;bottom:calc(1.2rem + 4.15rem);z-index:19;pointer-events:none}
.journey-garage:not([hidden]){pointer-events:auto}
.journey-garage__chip{width:96px;margin:0;padding:10px 8px 12px;border:1px solid rgba(240,185,52,.38);background:rgba(18,18,18,.94);color:var(--gold-light);display:flex;flex-direction:column;align-items:center;gap:.35rem;cursor:pointer;appearance:none;-webkit-appearance:none;font:inherit;text-align:center}
.journey-garage__chip:hover{border-color:var(--gold-light);background:rgba(24,24,24,.96)}
.journey-garage__stage{position:relative;width:72px;height:72px;flex:none}
.journey-garage__arc{position:absolute;inset:0;width:100%;height:100%;color:var(--gold)}
.journey-garage__arc-value{stroke-dashoffset:calc(1 - var(--garage-progress,0))}
.journey-garage__bay{position:absolute;inset:14px}
.journey-garage__bay::after{content:"";position:absolute;left:50%;top:50%;width:0;height:26px;transform:translate(-50%,-50%);border-left:1px dashed rgba(246,202,105,.75);opacity:.9}
.journey-garage.is-occupied .journey-garage__bay::after{opacity:0}
.journey-garage__kicker{display:block;font:500 .52rem/1 Montserrat,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-muted)}
.journey-garage__year{display:block;min-height:1.1em;font:700 1.05rem/1 Glancyr,Montserrat,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--gold-light)}
.journey-garage.is-yearless .journey-garage__year{display:none}

@media (max-width:760px){
  .journey-companion__sprite{width:56px;height:56px}
  .journey-garage{right:1.2rem;bottom:calc(1.2rem + 62px)}
  .journey-garage__chip{width:80px;padding:8px 6px 10px}
  .journey-garage__stage{width:58px;height:58px}
  .journey-garage__year{font-size:.92rem}
}

@media (prefers-reduced-motion:reduce){
  .journey-companion,.journey-garage{display:none!important}
  .legacy__body{--route-progress:1}
  .journey-companion__car{transition:none}
}

@media (prefers-reduced-motion:reduce){
  .legacy-road-svg__progress{stroke-dashoffset:0}
}

/* Origins motion: the route establishes chronology before cards and controls settle in. */
.js .origins__route::before{transform:translateX(-50%) scaleY(0);transform-origin:center top;transition:transform 1.35s .08s var(--ease)}
.js .origins.is-entered .origins__route::before{transform:translateX(-50%) scaleY(1)}
.js .origin::before{transform:scaleX(0);transition:transform .75s .35s var(--ease)}
.js .origin--left::before{transform-origin:right center}.js .origin--right::before{transform-origin:left center}
.js .origin.is-visible::before{transform:scaleX(1)}
.js .origin--left::after{transform:translateX(50%) scale(0)}.js .origin--right::after{transform:translateX(-50%) scale(0)}
.js .origin.is-visible.origin--left::after{transform:translateX(50%) scale(1)}.js .origin.is-visible.origin--right::after{transform:translateX(-50%) scale(1)}
.js .origin::after{transition:transform .6s .25s var(--ease),background-color .35s,box-shadow .35s}
.js .origin figure{overflow:hidden}.js .origin img{transform:scale(1.035);filter:saturate(.78) contrast(.96);transition:transform 1.15s .15s var(--ease),filter 1s .15s}
.js .origin.is-visible img{transform:scale(1);filter:none}
.js .origins .button{opacity:0;transform:translate(-50%,10px);transition:opacity .7s .82s,transform .7s .82s var(--ease),background-color .3s,color .3s}
.js .origins.is-entered .button{opacity:1;transform:translate(-50%,0)}
.js .origins.is-entered .button:hover{transform:translate(-50%,-2px)}

@media (max-width:760px){
  .js .origins__route::before{transform:scaleY(0)}.js .origins.is-entered .origins__route::before{transform:scaleY(1)}
  .js .origin::before{transform-origin:left center}
  .js .origin--left::after,.js .origin--right::after{transform:translateX(-50%) scale(0)}
  .js .origin.is-visible.origin--left::after,.js .origin.is-visible.origin--right::after{transform:translateX(-50%) scale(1)}
}

@media (prefers-reduced-motion:reduce){
  .js .origins__route::before,.js .origins.is-entered .origins__route::before{transform:translateX(-50%) scaleY(1);transition:none}
  .js .origin::before,.js .origin.is-visible::before{transform:scaleX(1);transition:none}
  .js .origin--left::after,.js .origin.is-visible.origin--left::after{transform:translateX(50%) scale(1);transition:none}
  .js .origin--right::after,.js .origin.is-visible.origin--right::after{transform:translateX(-50%) scale(1);transition:none}
  .js .origin img,.js .origin.is-visible img{transform:none;filter:none;transition:none}
  .js .origins .button,.js .origins.is-entered .button{opacity:1;transform:translate(-50%,0);transition:none}
}
@media (max-width:760px) and (prefers-reduced-motion:reduce){
  .js .origins__route::before,.js .origins.is-entered .origins__route::before{transform:scaleY(1)}
  .js .origin--left::after,.js .origin--right::after,.js .origin.is-visible.origin--left::after,.js .origin.is-visible.origin--right::after{transform:translateX(-50%) scale(1)}
}
