:root{--ink:#031b32;--blue:#b8def1;--orange:#ff701c}*{box-sizing:border-box}html,body{margin:0}body{background:var(--blue);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}.page{position:relative;isolation:isolate;min-height:100svh;height:100svh;overflow:hidden}.brand{position:relative;z-index:2;padding:2.4vw 3.5vw 0;font-size:clamp(30px,3.1vw,52px);font-weight:800;letter-spacing:-.065em;line-height:1}.brand span,h1 span{color:var(--orange)}.intro{position:relative;z-index:2;margin:3.5vw 0 0 3.5vw;width:57vw}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(66px,8.75vw,160px);font-weight:700;line-height:.91;letter-spacing:-.065em;margin:0 0 2.7vw}p{font-size:clamp(17px,1.65vw,28px);line-height:1.3;letter-spacing:-.025em;margin:0;max-width:47vw}.status{font-weight:700;font-size:clamp(18px,2vw,32px);margin-top:2.4vw;letter-spacing:-.035em}.scene{position:absolute;inset:0;z-index:-1;pointer-events:none}.scene-inner{position:absolute;inset:0;width:100%;height:100%}.neighbourhood,.reviews{position:absolute;width:100%;height:100%;object-fit:cover;object-position:right bottom}.reviews{height:100%;top:0;left:0}.neighbourhood{object-fit:fill}footer{position:absolute;bottom:3vw;left:3.5vw;font-size:clamp(14px,1.3vw,21px);letter-spacing:-.02em}.route{stroke-dasharray:1;stroke-dashoffset:0;animation:travel 12s ease-in-out infinite}.route-two{animation-delay:.8s}.route-three{animation-delay:1.6s}.route-four{animation-delay:2.4s}.marker{animation:bob 6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.marker-two{animation-delay:-1.2s}.marker-three{animation-delay:-2.4s}.marker-four{animation-delay:-3.6s}.marker-five{animation-delay:-4.8s}@keyframes travel{0%,7%{stroke-dashoffset:1;opacity:0}12%{opacity:1}40%,80%{stroke-dashoffset:0;opacity:1}95%,100%{stroke-dashoffset:0;opacity:0}}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(min-aspect-ratio:17/10) and (min-width:901px){.page{min-height:0}}
@media(max-width:900px){.page{height:auto;min-height:100svh;padding-top:27px;display:flex;flex-direction:column}.brand{padding:0 25px;font-size:34px}.intro{margin:39px 25px 0;width:auto}h1{font-size:clamp(42px,10.1vw,77px);letter-spacing:-.065em;line-height:.98;margin-bottom:24px}p{font-size:18px;line-height:1.45;max-width:440px;letter-spacing:-.025em}.desktop-break{display:none}.status{font-size:20px;margin-top:24px}.scene{position:relative;inset:auto;height:auto;aspect-ratio:1.12;margin-top:6px;width:100%;z-index:-1;overflow:hidden}.scene-inner{width:150%;height:auto;aspect-ratio:1.5;left:auto;right:0;top:auto;bottom:0}.neighbourhood{height:100%;object-fit:fill}.reviews{height:100%}footer{position:relative;bottom:auto;left:auto;padding:8px 25px 25px;font-size:14px;margin-top:auto}}
@media(prefers-reduced-motion:reduce){.route,.marker{animation:none}}

@media(max-width:900px){.scene{mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 24px),transparent)}}

/* The desktop stage fits the viewport, including wide and short displays. */
.brand-smile{display:inline-block;width:.51em;height:.51em;margin-left:.07em;vertical-align:-.075em;letter-spacing:0}
footer{right:3.5vw;display:flex;align-items:center;justify-content:space-between;gap:20px}
footer a{color:var(--ink);font-size:14px;text-decoration:none;background:none;padding:10px 0;border:0;box-shadow:none;text-shadow:none}
footer a:hover{text-decoration:underline;text-underline-offset:4px}
footer a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}

@media(min-width:901px){
 .brand{padding-top:min(2.4vw,4vh);font-size:clamp(30px,min(3.1vw,6vh),52px)}
 .intro{margin-top:min(3.5vw,5vh)}
 h1{font-size:clamp(48px,min(8.2vw,13.6vh),150px);margin-bottom:min(2.7vw,4vh)}
 p{font-size:clamp(17px,min(1.65vw,3vh),28px)}
 .status{font-size:clamp(18px,min(2vw,3.5vh),32px);margin-top:min(2.4vw,3.5vh)}
 footer{bottom:22px}
 
}
@media(max-width:900px){
 footer{right:auto;align-items:flex-start;flex-direction:column;gap:12px;padding-right:70px}
 footer a{font-size:13px;padding:0;background:none;min-height:24px}
 
}
