:root{--black:#000;--white:#fff;--gray:#b8b8b8;--gutter:clamp(24px,4vw,64px);--serif:"GFS Didot",Georgia,serif;--sans:"Inter",Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;background:var(--black);color:var(--white)}body{font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}a:focus-visible,button:focus-visible{outline:1px solid white;outline-offset:10px}
.navigation{position:fixed;z-index:20;inset:24px var(--gutter) auto;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.navigation>a,.navigation>button{pointer-events:auto;min-height:44px;display:flex;align-items:center}.navigation__brand{opacity:0;visibility:hidden}.navigation img{width:150px;height:auto;filter:invert(1)}
.navigation button,.menu button{font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:0;display:flex;gap:16px;align-items:center;min-height:44px;text-shadow:0 1px 12px #000}.navigation button span,.menu button span{font-size:20px;font-weight:300}
.experience{height:2730svh;position:relative}.stage{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate;background:#000}
#photograph{position:absolute;left:50%;top:50%;width:0;height:0;display:block;pointer-events:none;transform:translate(-50%,-50%);will-change:transform}
.opening{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.opening h1{margin:0;line-height:0;font-weight:400}.opening h1 img{display:block;width:clamp(270px,32vw,440px);height:auto;filter:invert(1)}
.opening__cue{position:absolute;bottom:38px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:#999}.opening__cue>span{margin-left:16px;color:#ddd;font-size:14px}
.photo-caption{position:absolute;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 12px #000;opacity:0;pointer-events:none}
.destination{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--gutter);visibility:hidden;opacity:0;pointer-events:none}
.destination.is-active{pointer-events:auto}.destination a{position:relative;display:flex;align-items:flex-start;gap:25px;padding:36px 18px;font:400 clamp(64px,9.5vw,160px)/1 var(--serif);letter-spacing:-.045em;white-space:nowrap;transition:transform .65s cubic-bezier(.22,.61,.36,1),letter-spacing .65s}
.destination a i{font:300 24px/1 var(--sans);font-style:normal;margin-top:12px;transition:transform .65s}
.destination a::before,.destination a::after{content:"";position:absolute;width:14px;height:14px;border-style:solid;border-color:#666;transition:transform .65s,border-color .65s;pointer-events:none}
.destination a::before{top:0;left:0;border-width:1px 0 0 1px}.destination a::after{bottom:0;right:0;border-width:0 1px 1px 0}
.destination a:hover,.destination a:focus-visible{transform:translateX(8px) scale(1.018);letter-spacing:-.035em}.destination a:hover::before{transform:translate(-8px,-5px);border-color:white}.destination a:hover::after{transform:translate(8px,5px);border-color:white}.destination a:hover i{transform:translate(5px,-5px)}
.destination--contact a{font-size:clamp(84px,15vw,220px)}
.menu{position:fixed;inset:0;z-index:50;background:#000;clip-path:inset(0 0 100%);pointer-events:none;display:flex;align-items:center;padding:80px 13vw;visibility:hidden}.menu.is-open{pointer-events:auto;visibility:visible}.menu__identity{position:absolute;top:43px;left:var(--gutter);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#999}.menu nav{display:flex;flex-direction:column}.menu nav a{display:block;font:400 clamp(64px,9vw,140px)/1.12 var(--serif);letter-spacing:-.035em;transition:color .3s,transform .5s;color:#aaa}.menu nav a:hover,.menu nav a:focus-visible{color:#fff;transform:translateX(12px)}.menu>button{position:absolute;right:var(--gutter);top:24px}html.menu-open{overflow:hidden}
.script-notice{padding:40px var(--gutter);line-height:1.7}.script-notice a{text-decoration:underline}
.destination-page{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:130px 9vw 90px;background:#000}.destination-page .back{position:absolute;top:40px;left:var(--gutter);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.destination-page h1{font:400 clamp(64px,10vw,140px)/1 var(--serif);letter-spacing:-.035em;margin:0 0 36px}.destination-page p{max-width:650px;font-size:18px;line-height:1.8;font-weight:300;color:#bbb}
@media(prefers-reduced-motion:reduce){.destination a,.destination a::before,.destination a::after,.destination a i,.menu nav a{transition:none}}

/* Original crop-mark construction, restored from the first Home. */
.home-scrub .experience{position:relative}.home-scrub .stage{position:sticky;top:0}
.home-scrub .opening h1{opacity:0}
html.intro-running{overflow:hidden}
.ink-definitions{position:absolute;pointer-events:none}
.destination.is-developing a{filter:url(#destination-ink)}
:root{--photo-radius:clamp(12px,1.4vw,20px)}
#photograph,.photograph-fallback{border-radius:var(--photo-radius);overflow:hidden}
@media(max-width:700px){.destination a{font-size:clamp(40px,10.5vw,72px);gap:10px;padding:28px 8px}.destination a i{font-size:16px}.destination--contact a{font-size:18vw}.menu nav a{font-size:17vw}}

.cm{
  position:absolute;
  width:var(--cm-size);
  height:var(--cm-size);
  pointer-events:none;
}
.cm::before,.cm::after{
  content:"";
  position:absolute;
  background:currentColor;
  opacity:.85;
}
.cm::before{width:100%;height:var(--cm-w);}
.cm::after{width:var(--cm-w);height:100%;}
.cm--tl{top:0;left:0;}
.cm--tl::before{top:0;left:0;} .cm--tl::after{top:0;left:0;}
.cm--tr{top:0;right:0;}
.cm--tr::before{top:0;right:0;} .cm--tr::after{top:0;right:0;}
.cm--bl{bottom:0;left:0;}
.cm--bl::before{bottom:0;left:0;} .cm--bl::after{bottom:0;left:0;}
.cm--br{bottom:0;right:0;}
.cm--br::before{bottom:0;right:0;} .cm--br::after{bottom:0;right:0;}
.intro{
  position:fixed;inset:0;z-index:900;
  background:var(--black);color:var(--white);
  display:grid;place-items:center;
}
.intro__frame{
  position:relative;
  width:min(46vw,520px);
  aspect-ratio:4/5;
  color:var(--white);
}
.intro__frame .cm{--cm-size:44px;}
.intro__markwrap{
  position:absolute;inset:0;
  display:grid;place-items:center;
}
.intro__mark{width:38%;height:auto;color:var(--white);overflow:visible;}
.intro__mark path{stroke-dasharray:1;stroke-dashoffset:1;}
.intro.is-done{pointer-events:none;}


.intro{--cm-w:1px}
