/* One signature: the original Loutca mark and its pointed, layered sea. */
.page-curtain{position:fixed;inset:0;z-index:1000;isolation:isolate;overflow:hidden;color:var(--brand);display:grid;place-items:center;touch-action:none}
.page-curtain[hidden]{display:none!important}
.curtain-sheet{position:absolute;inset:-22% 0;background:#000;will-change:transform;transform:translateY(115%)}
.curtain-sheet:before,.curtain-sheet:after{content:"";position:absolute;left:-1%;width:102%;height:auto;aspect-ratio:2341/621;background:inherit;mask:url('/assets/brand-waves-v1.png') center/contain no-repeat;pointer-events:none}
.curtain-sheet:before{bottom:calc(100% - 2px)}.curtain-sheet:after{top:calc(100% - 2px);transform:rotate(180deg)}
.curtain-sheet--back{background:#2eb0c6}.curtain-sheet--middle{background:#0a424c}.curtain-sheet--front{background:#020708}
.curtain-sheet--front:before,.curtain-sheet--front:after{filter:none}
.page-curtain[data-phase="boot"] .curtain-sheet{transform:translateY(0)}
.curtain-center{position:relative;z-index:2;width:min(280px,62vw);display:flex;align-items:center;flex-direction:column;opacity:0}
.page-curtain[data-phase="boot"] .curtain-center{opacity:1}
.curtain-center:before{content:"";position:absolute;inset:-50% -85%;z-index:-1;background:radial-gradient(ellipse,#2eb0c60d,transparent 66%);pointer-events:none}
.tide-brand{width:170px;max-width:68%;aspect-ratio:559/426;position:relative;margin-bottom:32px}
.tide-brand>img{width:100%;height:100%;object-fit:contain}
.curtain-wordmark{width:205px;height:auto;max-width:92%}
.curtain-caption{font:400 11px/2 Pinar,sans-serif;color:#95b6bf;margin-top:24px;text-align:center;letter-spacing:0}
.curtain-tide{width:155px;max-width:70%;margin-top:23px;opacity:.65}
.curtain-tide img{display:block;width:100%;height:auto;animation:brand-tide-drift 3.6s ease-in-out infinite}
body.page-travelling{overflow:hidden}
.page-travelling #main,.page-travelling .site-header,.page-travelling .site-footer{pointer-events:none}
.curtain-fallback{position:absolute;z-index:4;bottom:30px;left:20px;right:20px;text-align:center;font-size:12px;color:var(--muted)}
.curtain-fallback a{color:var(--brand);text-decoration:underline;text-underline-offset:6px}
@keyframes brand-tide-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
/* A quiet typographic seascape, with the boat as the zero in 404. */
.lost-sea{position:relative;isolation:isolate;max-width:1440px;margin:auto;min-height:min(900px,100svh);padding:clamp(125px,15vh,175px) 6.5% 65px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:7%;overflow:hidden}
.lost-sea:before{content:"";position:absolute;inset:12% -15% -15%;z-index:-1;background:radial-gradient(ellipse at 28% 54%,#2eb0c60f,transparent 55%);pointer-events:none}
.lost-copy{max-width:510px}.lost-kicker{font-size:11px;color:var(--brand);display:flex;align-items:center;gap:14px;margin-bottom:24px}.lost-kicker:before{content:"";height:1px;width:38px;background:currentColor}
.lost-copy h1{font-size:clamp(35px,4.2vw,67px);font-weight:700;line-height:1.65}.lost-copy>p:not(.lost-kicker){color:var(--muted);font-size:13px;line-height:2.3;margin-top:22px;max-width:345px}
.lost-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:32px}.lost-actions .button{border-radius:8px}.lost-actions .text-link{font-size:12px}
.lost-art{direction:ltr;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch}
.lost-code{direction:ltr;width:100%;display:flex;align-items:center;justify-content:center;gap:4%;position:relative;line-height:1;font:500 clamp(95px,13vw,205px)/1 Pinar,sans-serif;letter-spacing:-.04em;color:#2eb0c6}
.lost-code>span{opacity:.43;font-weight:300}.lost-code>img{width:37%;max-height:190px;object-fit:contain;filter:drop-shadow(0 15px 25px #2eb0c614);animation:lost-boat 6s ease-in-out infinite}
.lost-water{width:90%;margin-top:10px;opacity:.6}
.lost-water img{display:block;width:100%;height:auto;animation:brand-tide-drift 6s ease-in-out infinite}
.lost-coordinate{font-size:10px;color:#81a2ab;margin-top:25px;letter-spacing:0;text-align:center}
@keyframes lost-boat{0%,100%{transform:translateY(-3px) rotate(-2deg)}50%{transform:translateY(4px) rotate(1deg)}}
@media(max-width:800px){.lost-sea{padding:125px 7% 65px;gap:25px;grid-template-columns:1fr;min-height:0}.lost-art{grid-row:1;max-width:420px;width:100%;justify-self:center;min-height:220px}.lost-code{font-size:clamp(100px,24vw,165px)}.lost-copy{text-align:center;max-width:560px;justify-self:center}.lost-kicker,.lost-actions{justify-content:center}.lost-copy h1{font-size:clamp(34px,6.2vw,48px)}.lost-copy>p:not(.lost-kicker){margin-inline:auto}.lost-kicker{margin-bottom:18px}.lost-coordinate{margin-top:10px}.lost-copy>p:not(.lost-kicker){margin-top:16px}.lost-actions{margin-top:25px}}
@media(max-width:420px){.tide-brand{width:135px;margin-bottom:27px}.curtain-wordmark{width:175px}.lost-sea{padding-top:110px}.lost-art{min-height:195px}.lost-copy h1{font-size:34px}.lost-actions{gap:13px 22px}.lost-copy>p:not(.lost-kicker){font-size:12px}}
@media(prefers-reduced-motion:reduce){.curtain-tide img,.lost-code>img,.lost-water img{animation:none!important}.curtain-sheet{will-change:auto}}
