:root{--ink:#0b120f;--emerald:#13261d;--malachite:#4e7a5f;--gold:#c9a96b;--gold-soft:rgba(201,169,107,0.55);--ivory:#f3eee4;--bar:clamp(44px,8.5vh,86px);--brand:"Cinzel","Trajan Pro",serif;--sans:"Jost","Gill Sans","Helvetica Neue",sans-serif;--serif:"Cormorant Garamond","Times New Roman",serif}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;overflow:hidden;background:var(--ink);color:var(--ivory)}body{font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased}button{font:inherit;background:none;border:0;cursor:pointer}a,button{color:inherit}a{text-decoration:none}.webgl{position:fixed!important;inset:0;z-index:0}.scroller{position:fixed;inset:0;z-index:1;overflow-y:scroll;overflow-x:hidden;scrollbar-width:none;background:transparent}.scroller::-webkit-scrollbar{display:none}.film-ui{position:fixed;inset:0;z-index:2;pointer-events:none}.film-ui a,.film-ui button{pointer-events:auto}.cut,.cuts{position:absolute;inset:0;overflow:hidden}.cut{will-change:opacity;background:var(--ink)}.cut-img{position:absolute;inset:-2%;background:50%/cover no-repeat;will-change:transform;transform-origin:55% 50%}.cut--card .cut-img{inset:0;transform:none!important}.grade{position:absolute;inset:0;pointer-events:none;transition:opacity 1s}.grade--left,.grade--services{background:linear-gradient(90deg,rgba(7,12,10,.74),rgba(7,12,10,.38) 38%,rgba(7,12,10,0) 62%),linear-gradient(0deg,rgba(7,12,10,.5),rgba(7,12,10,0) 34%)}.grade--services{background:linear-gradient(90deg,rgba(7,12,10,.78),rgba(7,12,10,.5) 50%,rgba(7,12,10,.78))}.grade--hero{background:radial-gradient(ellipse at 50% 46%,rgba(7,12,10,.52),rgba(7,12,10,.06) 68%)}.grade--end{background:radial-gradient(ellipse at 50% 62%,rgba(7,12,10,.6),rgba(7,12,10,.12) 72%)}.fbar{position:absolute;left:0;right:0;height:var(--bar);background:var(--ink);display:flex;align-items:center;z-index:3}.fbar--top{top:0;border-bottom:1px solid rgba(201,169,107,.14)}.fbar--bottom{bottom:0;border-top:1px solid rgba(201,169,107,.14)}.fbar-in{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:20px;gap:20px;padding:0 clamp(16px,3.4vw,48px)}.fbar-in>*{opacity:0}.fbar-in>:last-child{justify-self:end}.fbrand{display:flex;flex-direction:column;align-items:flex-start;gap:4px;justify-self:start}.fbrand-mark{font-family:var(--brand);font-size:22px;letter-spacing:.42em;line-height:1;color:var(--ivory)}.fbrand-sub{font-size:8px;letter-spacing:.36em;color:var(--gold)}.fchap{font-size:10px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);white-space:nowrap}.ftc{display:flex;align-items:center;gap:10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;letter-spacing:.08em;opacity:.75;justify-self:start}.rec{width:6px;height:6px;border-radius:50%;background:#d64a3f;box-shadow:0 0 8px #d64a3f;animation:rec 1.6s steps(2,start) infinite}@keyframes rec{to{opacity:.15}}.fparts{display:flex;gap:2px}.fparts button{display:flex;align-items:baseline;gap:8px;padding:8px 12px;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:rgba(243,238,228,.42);border-bottom:1px solid rgba(243,238,228,.12);transition:color .4s,border-color .4s;white-space:nowrap}.fparts em{font-family:var(--serif);font-style:normal;font-size:13px;letter-spacing:0}.fparts button.is-past{color:rgba(243,238,228,.7);border-color:rgba(201,169,107,.4)}.fparts button.is-on{color:var(--ivory);border-color:var(--gold)}.fparts button.is-on em{color:var(--gold)}.fparts button:hover{color:var(--ivory)}.fprog{width:min(200px,18vw);height:1px;background:rgba(243,238,228,.14);overflow:hidden}.fprog i{display:block;height:100%;background:var(--gold);transform-origin:left}.fbtn{display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;font-size:10px;font-weight:400;letter-spacing:.3em;text-transform:uppercase;border:1px solid rgba(243,238,228,.4);color:var(--ivory);transition:background .35s,color .35s,border-color .35s}.fbtn:hover{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}.fbtn--solid{background:var(--gold);color:var(--ink);border-color:var(--gold)}.fbtn--solid:hover{background:var(--ivory);border-color:var(--ivory)}.fbtn--ghost{border-color:transparent;letter-spacing:.24em}.fbtn--sm{padding:11px 18px;font-size:9px;border-color:var(--gold-soft)}.slate{position:absolute;z-index:2;will-change:opacity,transform;text-shadow:0 1px 24px rgba(0,0,0,.28)}.slate--left,.slate--services{left:clamp(18px,5vw,84px);bottom:calc(var(--bar) + clamp(24px, 5.5vh, 60px));width:min(560px,calc(100vw - 36px))}.slate--services{bottom:auto;top:50%;translate:0 -50%;width:min(440px,40vw)}.slate--hero{top:50%;translate:-50% -54%;width:min(1000px,calc(100vw - 36px))}.slate--end,.slate--hero{left:50%;text-align:center}.slate--end{bottom:calc(var(--bar) + clamp(28px, 6vh, 64px));translate:-50% 0;width:min(820px,calc(100vw - 36px))}.slate-no{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-size:10px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold)}.slate-no:after{content:"";width:56px;height:1px;background:currentColor;opacity:.6}.slate--end .slate-no,.slate--hero .slate-no{justify-content:center}.slate-kicker{font-size:11px;font-weight:400;letter-spacing:.36em;text-transform:uppercase;opacity:.9}.slate-title{font-family:var(--sans);font-weight:300;font-size:clamp(32px,4.1vw,66px);line-height:1.08;letter-spacing:.06em;text-transform:uppercase;margin:14px 0 20px}.slate--hero .slate-title{font-size:clamp(36px,5.2vw,84px);letter-spacing:.08em;margin:18px 0}.slate--hero .slate-text{font-family:var(--serif);font-style:italic;font-size:clamp(19px,1.9vw,28px);line-height:1.45;max-width:36ch;opacity:.92}.slate--hero .slate-kicker{font-size:10px;letter-spacing:.5em;color:var(--gold)}.slate--end .slate-title{font-size:clamp(34px,4.6vw,72px)}.slate-text{font-size:15px;line-height:1.75;max-width:48ch;opacity:.9}.slate-text--2{margin-top:12px;opacity:.72}.slate--end .slate-text,.slate--hero .slate-text{margin-left:auto;margin-right:auto}.slate-stats{display:flex;gap:clamp(22px,3vw,46px);margin-top:28px;padding-top:22px;border-top:1px solid rgba(201,169,107,.3)}.slate-stats dt{font-family:var(--serif);font-weight:300;font-size:clamp(32px,3vw,48px);line-height:1;color:var(--ivory)}.slate-stats dd{margin-top:8px;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);max-width:18ch;line-height:1.5}.slate-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}.replay{margin-top:18px;font-size:9px;letter-spacing:.32em;text-transform:uppercase;opacity:.6}.replay:hover{opacity:1}.svc{position:absolute;z-index:2;right:clamp(18px,5vw,84px);top:50%;translate:0 -50%;width:min(620px,46vw);display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(20px,3vw,48px);gap:clamp(20px,3vw,48px);transition:opacity .4s}.svc h3{font-weight:400;font-size:10px;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);padding-bottom:14px;border-bottom:1px solid rgba(201,169,107,.35)}.svc ul{list-style:none;margin-top:6px}.svc li{padding:13px 0;font-size:14px;line-height:1.45;border-bottom:1px solid rgba(243,238,228,.1);opacity:0;transform:translateY(10px);transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}.svc li.is-in{opacity:1;transform:none}.grain{position:absolute;inset:-50%;z-index:4;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain .9s steps(6) infinite}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.cue{position:absolute;left:50%;bottom:calc(var(--bar) + 22px);translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:10px;letter-spacing:.4em;text-transform:uppercase;transition:opacity .6s;z-index:2}.cue i{width:1px;height:44px;background:linear-gradient(var(--gold),transparent);animation:cue 2s ease-in-out infinite;transform-origin:top}@keyframes cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{transform:scaleY(1);opacity:0}}.fl{position:fixed;inset:0;z-index:10;background:var(--ink);display:grid;place-items:center;-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);overflow:hidden}.fl-silk{position:absolute;inset:-20%;background:radial-gradient(ellipse 60% 35% at 30% 40%,rgba(78,122,95,.45),transparent 70%),radial-gradient(ellipse 50% 30% at 70% 62%,rgba(201,169,107,.16),transparent 70%),radial-gradient(ellipse 80% 50% at 50% 50%,#13261d,#0b120f 75%);animation:silk 14s ease-in-out infinite alternate}@keyframes silk{to{transform:translate(3%,-2%) rotate(3deg) scale(1.05)}}.fl-inner{position:relative;text-align:center;width:min(520px,84vw)}.fl-mark{font-size:clamp(54px,9vw,104px);letter-spacing:.42em;margin-right:-.42em;line-height:1}.fl-mark,.fl-sub{font-family:var(--brand)}.fl-sub{font-size:clamp(14px,1.8vw,20px);letter-spacing:.62em;margin-right:-.62em;margin-top:16px}.fl-place{font-size:10px;letter-spacing:.5em;margin-right:-.5em;margin-top:12px;color:var(--gold)}.fl-track{height:1px;width:180px;margin:46px auto 0;background:rgba(243,238,228,.14);overflow:hidden}.fl-bar{height:100%;background:var(--gold);transform-origin:left;transform:scaleX(0)}.fl-dev{margin-top:22px;font-size:9px;letter-spacing:.4em;text-transform:uppercase;opacity:.55}@media (max-width:900px){:root{--bar:46px}.fchap,.fprog{display:none}.fbar-in{grid-template-columns:auto 1fr auto}.fparts{justify-content:center;overflow-x:auto}.fparts span{display:none}.fparts button{padding:6px 8px}.slate-text{font-size:13px}.slate--services{top:calc(var(--bar) + 20px)}.slate--services,.svc{translate:none;width:auto;right:18px}.svc{left:18px;top:auto;bottom:calc(var(--bar) + 12px);grid-template-columns:1fr;gap:10px}.svc li{padding:7px 0;font-size:12px}.fbrand-sub{display:none}}.grade--card{background:radial-gradient(ellipse at 50% 50%,rgba(11,18,15,.72),rgba(11,18,15,.35) 70%)}.ccard{position:absolute;z-index:2;left:50%;top:50%;translate:-50% -50%;text-align:center;width:min(900px,calc(100vw - 36px))}.ccard-brand{font-size:clamp(56px,9vw,140px);letter-spacing:.22em;line-height:1;margin-right:-.22em}.ccard-brand,.ccard-sub{font-family:var(--brand)}.ccard-sub{margin-top:14px;font-size:clamp(12px,1.3vw,18px);letter-spacing:.5em;opacity:.85}.ccard-rule{display:block;width:72px;height:1px;margin:26px auto;background:var(--gold)}.ccard-kicker{font-size:11px;letter-spacing:.46em;text-transform:uppercase;color:var(--gold)}.ccard-title{font-family:var(--brand);font-size:clamp(40px,6.4vw,104px);letter-spacing:.16em;line-height:1.05}.ccard-foot{margin-top:18px;font-family:var(--serif);font-style:italic;font-size:clamp(18px,1.8vw,26px);opacity:.9}.grade--caption{background:linear-gradient(0deg,rgba(11,18,15,.6),rgba(11,18,15,0) 40%)}.slate--caption{position:absolute;left:clamp(18px,5vw,84px);bottom:calc(var(--bar) + clamp(22px, 5vh, 52px));width:min(520px,calc(100vw - 36px))}.slate--caption .slate-title{font-size:clamp(30px,3.4vw,50px);margin:10px 0 8px}.slate--caption .slate-text{font-size:14px}.walk-cta{position:fixed;z-index:5;right:clamp(18px,5vw,84px);bottom:calc(var(--bar) + clamp(22px, 5vh, 52px));display:flex;align-items:center;gap:14px;padding:12px 18px 12px 14px;border:1px solid rgba(242,238,231,.35);background:rgba(11,12,15,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ivory);cursor:pointer;font-stretch:125%;font-size:10px;letter-spacing:.26em;text-transform:uppercase;transition:opacity .6s,background .3s,border-color .3s}.walk-cta:hover{background:rgba(199,167,127,.22);border-color:var(--gold)}.walk-keys{display:grid;grid-template-columns:repeat(3,15px);grid-template-rows:15px 15px;grid-gap:2px;gap:2px}.walk-keys i{display:grid;place-items:center;font-style:normal;font-size:7px;letter-spacing:0;border:1px solid rgba(242,238,231,.5)}.walk-keys i:first-child{grid-column:2}.walk-hud{position:fixed;inset:0;z-index:5;pointer-events:none;color:var(--ivory);cursor:-webkit-grab;cursor:grab}.walk-hud button{pointer-events:auto}.walk-top{position:absolute;left:clamp(18px,5vw,84px);right:clamp(18px,5vw,84px);top:calc(var(--bar) + 20px);display:flex;justify-content:space-between;align-items:flex-start}.walk-title{font-family:var(--serif);font-weight:300;font-size:clamp(26px,2.6vw,40px);line-height:1;text-shadow:0 1px 20px rgba(0,0,0,.35)}.walk-title em{display:block;margin-bottom:10px;font-family:inherit;font-style:normal;font-stretch:125%;font-size:10px;letter-spacing:.34em;text-transform:uppercase;opacity:.8}.walk-map{position:absolute;right:clamp(18px,5vw,84px);bottom:calc(var(--bar) + 22px);width:109.2px;height:165.2px;opacity:.9}.walk-map img{width:100%;height:100%;opacity:.22;filter:sepia(1) saturate(.6);image-rendering:pixelated}.walk-dot{position:absolute;left:-6px;top:-6px;width:12px;height:12px;transform-origin:6px 6px}.walk-dot:before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold)}.walk-dot:after{content:"";position:absolute;left:9px;top:3px;border-left:9px solid var(--gold);border-top:3px solid transparent;border-bottom:3px solid transparent}.walk-map-n{position:absolute;left:0;top:-18px;font-size:9px;letter-spacing:.24em;opacity:.6}.walk-help{position:absolute;left:clamp(18px,5vw,84px);bottom:calc(var(--bar) + 22px);display:flex;flex-wrap:wrap;gap:8px 22px;max-width:46vw;font-size:11px;letter-spacing:.06em;opacity:.95;text-shadow:0 1px 12px rgba(0,0,0,.7)}.walk-help b{font-weight:500;color:var(--gold)}.walk-pad{display:none;position:absolute;left:50%;bottom:calc(var(--bar) + 20px);translate:-50% 0;flex-direction:column;align-items:center;gap:6px}.walk-pad div{display:flex;gap:6px}.walk-pad button{width:52px;height:52px;border:1px solid rgba(242,238,231,.4);background:rgba(11,12,15,.4);color:var(--ivory);font-size:14px;touch-action:none}@media (pointer:coarse){.walk-pad{display:flex}.walk-help{display:none}.walk-map{transform:scale(.7);transform-origin:right bottom}}@media (max-width:1000px){.walk-map{display:none}}