@font-face{font-family:Inter;src:url('/3d-lab/sea-turtle/fonts/inter-tight-400-800-latin.woff2?v=cd078966b4b3') format('woff2');font-weight:400 800;font-display:swap;unicode-range:U+0000-024F}
@font-face{font-family:Inter;src:url('/3d-lab/sea-turtle/fonts/inter-tight-400-800-cyrillic.woff2?v=cd078966b4b3') format('woff2');font-weight:400 800;font-display:swap;unicode-range:U+0400-052F}
@font-face{font-family:Plex;src:url('/3d-lab/sea-turtle/fonts/ibm-plex-mono-400-latin.woff2?v=cd078966b4b3') format('woff2');font-weight:400;font-display:swap}
:root{font-family:Inter,Arial,sans-serif;color:#183f39;background:#e9eee5;font-synthesis:none;--ink:#183f39;--line:rgba(27,69,56,.19)}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:disabled{cursor:default;opacity:.42}button:focus-visible,a:focus-visible,#stage:focus-visible{outline:2px solid #9b5427;outline-offset:5px}button[hidden],[hidden]{display:none!important}
#experience{height:100svh;min-height:600px;position:relative;isolation:isolate;overflow:hidden}#stage,.poster,.wash{position:absolute;inset:0}.poster{z-index:-1;margin:0;transition:opacity .8s}.poster img{width:100%;height:100%;object-fit:cover}body.ready .poster{opacity:0}#stage{z-index:0;touch-action:none;outline-offset:-5px}#stage canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .9s}body.ready #stage canvas{opacity:1}.wash{z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(235,241,223,.44),transparent 42%),linear-gradient(0deg,rgba(224,233,207,.60),transparent 24%,transparent 88%,rgba(231,239,220,.3));transition:opacity .6s}
.interface{z-index:2;position:absolute}.topbar{left:42px;right:42px;top:30px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.topbar nav{display:flex;gap:26px;font-size:13px}.topbar nav a{border-bottom:1px solid transparent;padding:4px 0}.topbar nav a:hover{border-color:var(--ink)}.wordmark{font-size:15px;letter-spacing:.26em;display:flex;align-items:center;gap:12px;font-weight:600}.shell-mark{font-size:25px;color:#8c612e}.quiet-button{justify-self:end;padding:6px 0;font-size:13px;background:none}.quiet-button span{margin-left:10px}
.intro{top:16%;left:5%;pointer-events:none;max-width:410px;transition:opacity .4s,transform .5s}.eyebrow{font-size:9px;letter-spacing:.16em;font-weight:500;display:flex;align-items:center;gap:10px;margin:0 0 21px}.eyebrow span{display:block;width:5px;height:5px;border-radius:50%;background:#a66a2d}h1{font-weight:500;font-size:clamp(64px,6.7vw,112px);line-height:.98;letter-spacing:-.065em;margin:0}h1 em,h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.07em}.intro-copy{font-size:15px;line-height:1.7;margin:26px 0 0;letter-spacing:-.015em}.species{left:5%;bottom:184px;display:flex;flex-direction:column;gap:10px;pointer-events:none}.micro{font-family:Plex,monospace;font-size:9px;letter-spacing:.08em;opacity:.70}.species>span:last-child{font-size:14px}.species i{font-style:normal;font-size:12px;margin-left:9px;opacity:.68}
.bottom{bottom:max(27px,env(safe-area-inset-bottom));left:42px;right:42px;display:flex;flex-direction:column;gap:20px}.view-switch{display:flex;align-self:center;padding:5px;background:rgba(246,247,235,.75);border:1px solid rgba(255,255,246,.50);border-radius:40px;backdrop-filter:blur(18px);box-shadow:0 8px 35px rgba(33,77,60,.06)}.view-switch button{border-radius:32px;background:none;padding:13px 23px;font-size:13px;display:flex;align-items:center;gap:8px;transition:background .25s,color .25s}.view-switch button[aria-pressed=true]{background:#244e43;color:#f4f1dc}.view-dot{width:4px;height:4px;border-radius:50%;background:#dfb96e}.bottom-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.bottom-row p{font-size:11px;margin:0;color:#355c4e}.actions{display:flex;align-items:center;gap:9px}.actions button{background:rgba(242,245,225,.64);backdrop-filter:blur(12px);border:1px solid rgba(42,85,67,.13);height:42px;border-radius:30px;padding:0 18px;font-size:12px}.actions button:hover:not(:disabled){background:#f8f5e4}.actions #notice span{padding-left:12px}.actions button.icon-button{width:42px;padding:11px}.icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.loading{position:absolute;left:50%;top:64%;transform:translate(-50%,-50%);z-index:2;background:rgba(241,243,227,.85);padding:13px 20px;border-radius:40px;font-size:12px;white-space:nowrap}body.ready .loading{display:none}body.failed .loading{top:65%;max-width:300px;white-space:normal;text-align:center;line-height:1.6}body.failed #stage{display:none}body.failed .poster{opacity:1}
.detail-tools{top:112px;left:50%;transform:translateX(-50%);text-align:center}.detail-tools>span{font-size:12px;display:block;margin-bottom:15px;color:#777663}.detail-tools>div{display:flex;gap:7px}.detail-tools button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 18px;font-size:12px}.detail-tools button[aria-pressed=true]{background:#31584a;color:#f7f3e8;border-color:transparent}body.inspect .intro{opacity:0;transform:translateY(-10px);visibility:hidden}body.inspect .species{bottom:182px}body.inspect .wash{opacity:.13}body.inspect #notice{display:none}
#exit-immerse{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));right:32px;z-index:4;background:rgba(243,244,232,.80);border-radius:28px;padding:13px 20px;font-size:12px;backdrop-filter:blur(12px)}body.immersed .interface,body.immersed .wash{opacity:0;pointer-events:none;visibility:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{max-width:540px;width:calc(100% - 32px);max-height:calc(100svh - 40px);overflow:auto;border:1px solid #fff9e8;padding:45px;background:#f6f3e8;color:#24443b;border-radius:6px;box-shadow:0 22px 80px #10312c44}dialog::backdrop{background:#14382f66;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:14px;top:9px;background:none;font-size:30px;padding:5px 12px;font-weight:400}dialog h2{font-size:57px;line-height:1;letter-spacing:-.05em;font-weight:500;margin:20px 0 25px}dialog>p:not(.eyebrow){font-size:15px;line-height:1.65}dialog p.about-note{font-size:12px;color:#68756b;margin-top:24px}.download{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-top:25px;font-size:13px}.download span{font-size:11px;opacity:.65}.source-links{display:flex;justify-content:space-between;font-size:11px;margin-top:23px}
@media(min-width:1800px){.intro{left:7%;top:20%}.species{left:7%}}@media(max-width:1000px){.topbar{left:25px;right:25px}.topbar nav{gap:16px}.intro{top:16%;left:5%}.intro h1{font-size:76px}.intro-copy{font-size:13px}.bottom{left:25px;right:25px}.hint-desktop{display:none}.species{bottom:195px}}
@media(max-width:640px){#experience{min-height:650px}.topbar{left:20px;right:20px;top:22px;grid-template-columns:1fr auto}.topbar nav{gap:15px;font-size:11px}.wordmark{font-size:12px;letter-spacing:.19em;gap:7px}.shell-mark{font-size:20px}.quiet-button{position:absolute;right:0;top:42px;font-size:11px}.intro{left:25px;top:105px;max-width:270px}.eyebrow{font-size:7px;letter-spacing:.10em;margin-bottom:15px;gap:7px}.intro h1{font-size:64px;line-height:.94}.intro-copy{font-size:12px;line-height:1.5;margin-top:15px}.species{left:25px;bottom:181px;gap:7px}.micro{font-size:7px}.species>span:last-child{font-size:12px}.species i{font-size:10px}.bottom{left:18px;right:18px;bottom:max(18px,env(safe-area-inset-bottom));gap:15px}.view-switch{padding:4px;width:100%;justify-content:center}.view-switch button{padding:12px 13px;font-size:11px;gap:6px;white-space:nowrap}.bottom-row{gap:8px;align-items:center}.bottom-row p{font-size:9px;max-width:96px;line-height:1.45}.actions{gap:6px}.actions button{height:38px;padding:0 11px;font-size:10px}.actions button.icon-button{width:38px;padding:10px}.actions #notice span{padding-left:5px}.detail-tools{top:120px;width:100%;padding:0 20px}.detail-tools>div{justify-content:center;gap:5px}.detail-tools button{padding:9px 12px;font-size:10px}.detail-tools>span{font-size:11px}dialog{padding:31px 25px}dialog h2{font-size:48px}.wash{background:linear-gradient(180deg,rgba(237,241,222,.45),transparent 38%,transparent 63%,rgba(222,234,211,.56))}}
@media(max-width:360px){.intro h1{font-size:57px}.intro{left:20px;top:102px}.eyebrow{font-size:6.5px}.view-switch button{padding:12px 10px}.bottom-row p{font-size:8px;max-width:70px}.actions button{font-size:9px}.actions{gap:4px}.species{left:20px}.topbar nav{gap:10px}}@media(max-height:700px) and (min-width:641px){#experience{min-height:540px}.intro{top:95px}.intro h1{font-size:67px}.intro-copy{margin-top:16px}.species{bottom:155px}.bottom{gap:13px;bottom:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

.actions{margin-left:auto}@media(min-width:641px){#gesture-hint{transform:translateY(-35px)}}@media(max-width:640px){#gesture-hint{position:fixed;left:25px;bottom:132px;max-width:none;font-size:9px}}

@media(max-height:650px){#experience{height:100svh;min-height:360px}.intro{top:94px}.intro h1{font-size:51px}.intro-copy,.species{display:none}.eyebrow{font-size:7px;margin-bottom:12px}.topbar{top:20px}.bottom{bottom:12px;gap:10px}.detail-tools{top:85px}.detail-tools>span{display:none}.detail-tools button{padding:7px 12px}#gesture-hint{display:none}.view-switch button{padding:10px 17px}}

body{--scene-brand-surface:#e9eee5}
.topbar.scene-header--sea-turtle{grid-template-columns:auto minmax(0,1fr) auto auto}.scene-header--sea-turtle>.wordmark{justify-self:center}.scene-header--sea-turtle .quiet-button{white-space:nowrap}
@media(max-width:1100px){.scene-header--sea-turtle>.wordmark{display:none}.topbar.scene-header--sea-turtle{grid-template-columns:auto minmax(0,1fr) auto}}
@media(max-width:760px){.topbar.scene-header--sea-turtle{grid-template-columns:auto minmax(0,1fr)}.scene-header--sea-turtle .quiet-button{position:absolute;right:0;top:66px;font-size:11px}}
