:root{--ink:#d9f8ee;--sea:#071d2b;--lime:#c9f59a;--header:80px;--focus:#c9f59a;color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header) + 20px);scroll-behavior:smooth}body{margin:0;background:var(--sea);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:.3em}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a,button,input{scroll-margin-top:calc(var(--header) + 24px)}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.98;letter-spacing:-.06em;overflow-wrap:anywhere}h1{font-size:clamp(4rem,8.3vw,9rem);margin:22px 0}h2{font-size:clamp(2.7rem,5.6vw,6rem);margin:16px 0 28px}h3{font-weight:400;font-family:Georgia,serif;font-size:clamp(1.6rem,2.8vw,2.8rem);line-height:1.15}em{color:var(--lime);font-weight:400}p{max-width:54ch}.small{font-size:.82rem}.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:absolute;top:-120px;left:16px;z-index:30;background:var(--lime);color:var(--sea);padding:14px}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:20;background:#071d2b;display:flex;align-items:center;gap:28px;min-height:80px;padding:8px 4vw;border-bottom:1px solid #d9f8ee30}.brand{font-family:Georgia,serif;line-height:.92;font-size:1.35rem;letter-spacing:-.05em;text-decoration:none}.brand span{color:var(--lime)}nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-left:auto}nav a{font-size:.8rem;padding:10px 0;text-decoration:none;min-height:44px;display:flex;align-items:center}nav a:hover,.text-link:hover{text-decoration:underline}.button,.outline{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;border:1px solid transparent;background:var(--lime);color:var(--sea);text-decoration:none;font-size:.85rem;font-weight:700;line-height:1.4;text-align:center}.button:hover{background:#e0ffb9}.outline{background:transparent;color:inherit;border-color:currentColor}.outline:hover{background:#80968220}.text-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:.85rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.menu-toggle[hidden],button[hidden]{display:none}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:min(820px,calc(100svh - 80px))}.hero-copy{padding:28px 0 32px 5vw;z-index:1;align-self:center}.concept{font-size:.68rem;color:#aed0c5;margin-bottom:24px}.intro{font-size:1.3rem}.hero-copy>p:not(.eyebrow):not(.concept){max-width:39ch}.hero-art{position:relative;overflow:clip;min-width:0;min-height:500px;background:radial-gradient(ellipse at 60% 40%,#1b5154,transparent 70%)}.hero-art .habitat{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-art .habitat{width:180%;left:-45%}.glass-label{position:absolute;right:6vw;top:42px;text-transform:uppercase;letter-spacing:.25em;font-size:.65rem;line-height:1.8;color:#b4d6c6}.art-label{position:absolute;bottom:16px;left:24px;right:16px;font-size:.65rem;letter-spacing:.03em;color:#d9f8ee}.facts{display:flex;flex-wrap:wrap;gap:18px 30px;margin:24px 0 0;border-top:1px solid #d9f8ee40;padding-top:16px;font-size:.75rem}.facts dt{color:#a6c8bd}.facts dd{margin:2px 0}.facts a{display:inline-block;min-height:24px}.chapter{padding:100px 5vw}.section-head{display:grid;grid-template-columns:1fr 1.2fr;gap:0 7vw;align-items:center}.section-head>.eyebrow{grid-column:1/-1}.section-head>p:last-child{max-width:43ch}.offer{background:#d9f0e2;color:#12363b;--focus:#12363b}.offer em,.explore em,.visit em{color:#39664f}.offer-rows{margin-top:30px}.offer-row{display:grid;grid-template-columns:50px 1fr 40px;gap:20px;padding:28px 0;border-top:1px solid #496e5d60;text-decoration:none;align-items:center}.offer-row h3{margin:0 0 8px}.offer-row p{margin:0;font-size:.9rem}.offer-row>span:last-child{font-size:2rem}.offer-row:hover h3{text-decoration:underline;text-underline-offset:.2em}.story{position:relative}.scene{padding:50px 5vw 30px}.scene-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.scene-heading h2{font-size:clamp(2.5rem,4vw,4.5rem);margin:0}.scene-heading .eyebrow{max-width:12ch}.stage{position:relative;background:radial-gradient(ellipse at 50% 35%,#22595c,#0b303c 75%);border:1px solid #85bba94d;margin:24px 0;overflow:clip;aspect-ratio:2.65}.stage .habitat{width:100%;height:100%;display:block}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;list-style:none;margin:0}.steps li{border-top:2px solid #85bba960;padding-top:12px}.steps strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:1.35rem}.steps span{font-size:.8rem;color:#c3ddd2}.steps li.active{border-color:var(--lime)}.explore{background:#eef4e6;color:#12363b;--focus:#12363b}.explorer{display:grid;grid-template-columns:.75fr 1.25fr;gap:5vw;margin-top:30px}.controls{min-width:0}fieldset{border:0;padding:0;margin:0 0 30px}legend,.detail-label{display:block;font-weight:700;font-size:.85rem;margin-bottom:14px}.detail-label span{font-weight:400}.choices{display:grid;gap:8px}.choices label{position:relative}.choices input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.choices span{display:block;border:1px solid #6f8b73;padding:17px 20px}.choices input:checked+span{background:#12363b;color:#eef4e6}.choices input:checked+span:after{content:' ✓';float:right}.choices input:focus-visible+span{outline:3px solid #12363b;outline-offset:3px}#details{width:100%;min-height:48px;padding:12px;border:1px solid #6f8b73;background:transparent;color:#12363b;font-size:16px;border-radius:0}.controls .small{margin-top:12px}.question-panel{background:#0c303b;color:#d9f8ee;--focus:#c9f59a;min-width:0}.preview{position:relative;aspect-ratio:2.5;overflow:clip;background:radial-gradient(ellipse at 50% 35%,#2b605c,transparent)}.preview svg{width:100%;height:100%}.question-body{padding:26px 32px}.question-body h3{font-size:2rem}.question-body p{overflow-wrap:anywhere}.question-body .text-link{margin-left:12px}.tiny-life{display:none}[data-focus=shrimp] .tiny-life,.focus-ready [data-focus] .tiny-life{display:block}html:not(.focus-ready) [data-focus=shrimp] .livestock{display:none}html:not(.focus-ready) [data-focus=planted] .livestock{opacity:.15}[data-focus=planted] .vegetation{filter:brightness(1.35)}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#143d40}.about-number{border-top:1px solid #bfd7b6;padding-top:32px}.about-number>span{font:italic clamp(5rem,15vw,16rem)/1 Georgia,serif;letter-spacing:-.08em;color:var(--lime)}.about-number p{margin-top:25px;font-size:.85rem}.visit{background:#d9f0e2;color:#12363b;--focus:#12363b;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.hours{padding-top:40px}.hours h3{font-size:1.5rem}.hours dl>div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #12363b40;padding:12px 0;font-size:.85rem}.hours dd{margin:0;white-space:nowrap}.hours a{display:inline-block;min-height:24px}.close{position:relative;padding-top:0;overflow:clip}.closing-art{height:300px;position:relative;border-bottom:1px solid #a5c8b64a}.closing-art svg{width:100%;height:100%}.closing-copy{padding-top:70px;max-width:1000px}.closing-copy h2{font-size:clamp(2.8rem,6.8vw,7.4rem)}#close-summary{overflow-wrap:anywhere;max-width:65ch}.owner{background:#e3e6dc;color:#263d35;--focus:#263d35;padding:50px 5vw}.owner h2{font:400 1.7rem/1.25 Georgia,serif;max-width:42ch;letter-spacing:-.02em}.owner p{font-size:.85rem;max-width:90ch}.preview-url{overflow-wrap:anywhere;user-select:all}footer{padding:45px 5vw}footer p{margin-top:20px}footer a{display:inline-block;min-height:24px}footer .brand{min-height:44px}.habitat .vegetation,.habitat .shelter,.habitat .livestock{transform-box:fill-box;transform-origin:center}.scenes-ready .story{height:250svh}.scenes-ready .scene{position:sticky;top:var(--header);height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:center}.scenes-ready .stage{width:100%;max-height:48svh;flex:0 1 auto}.scenes-ready .steps{width:100%}html:not(.gsap-ready).scenes-ready .story .shelter{transform:translateY(calc((1 - var(--shelter,1))*100px));opacity:var(--shelter,1)}html:not(.gsap-ready).scenes-ready .story .vegetation{transform:translateY(calc((1 - var(--plant,1))*130px));opacity:var(--plant,1)}html:not(.gsap-ready).scenes-ready .story .livestock{transform:translateX(calc((1 - var(--fish,1))*-180px));opacity:var(--fish,1)}.scenes-ready .reveal{clip-path:inset(0 0 100%);transform:translateY(40px);transition:clip-path .8s ease,transform .8s ease}.scenes-ready .reveal.seen{clip-path:inset(0);transform:none}html:not(.gsap-ready) .hero-art.arrived .swimmer{animation:arrive 2s both}html:not(.gsap-ready) .hero-art.arrived .swimmer-1{animation-delay:.4s}html:not(.gsap-ready) .hero-art.arrived .swimmer-2{animation-delay:.8s}@keyframes arrive{from{opacity:0;translate:-130px 20px}to{opacity:1;translate:0 0}}
@media(min-width:1800px){body{font-size:18px}}@media(max-width:1000px){nav{gap:14px}.site-header{gap:18px}.hero-copy{padding-left:4vw}h1{font-size:clamp(3.8rem,9vw,7rem)}}@media(max-width:800px){.site-header{min-height:64px;padding:8px 4vw;gap:12px}.brand{font-size:1.1rem}.header-call{padding:10px 16px;margin-left:0}.menu-toggle{margin-left:auto;padding:10px 14px}.menu-ready nav{display:none;position:absolute;top:100%;left:0;right:0;padding:12px 5vw;background:#071d2b;border-bottom:1px solid #a6c8bd}.menu-ready nav.open{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px}.menu-ready nav a{min-height:44px}html:not(.menu-ready) .site-header{position:static;flex-wrap:wrap}html:not(.menu-ready) nav{order:3;width:100%;flex-wrap:wrap;gap:4px 18px;justify-content:start}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:22px 5vw 30px}.concept{margin-bottom:22px;font-size:.64rem}.hero h1{font-size:clamp(3.8rem,16vw,7rem)}.hero-copy .intro{font-size:1.12rem}.hero-copy>p{font-size:.9rem}.hero-art{min-height:320px}.hero-art .habitat{width:130%;left:-15%}.glass-label{right:7vw;top:20px}.chapter{padding:64px 5vw}.section-head,.explorer,.about,.visit{grid-template-columns:minmax(0,1fr);gap:16px}.section-head>p:last-child{max-width:50ch}.offer-row{grid-template-columns:26px minmax(0,1fr) 24px;gap:12px}.scene{padding:30px 5vw}.scene-heading{flex-wrap:wrap;gap:14px}.scene-heading .eyebrow{max-width:none;width:100%;margin:0}.scene-heading h2{font-size:2.7rem}.scene-heading .text-link{margin-left:auto}.stage{aspect-ratio:1.7}.stage .habitat{width:135%;margin-left:-17%}.steps{gap:10px}.steps strong{font-size:1.08rem}.steps span{font-size:.72rem}.question-body{padding:24px}.question-body .text-link{margin-left:0}.explorer{gap:24px}.about-number>span{font-size:7rem}.about-copy{padding-top:20px}.hours{padding-top:10px}.closing-art{height:200px}.close{padding-top:0}.closing-copy{padding-top:50px}.close h2{font-size:clamp(2.8rem,10vw,4.5rem)}.scenes-ready .scene{justify-content:center}.scenes-ready .stage{max-height:34svh}.scenes-ready .steps{grid-template-columns:1fr}.scenes-ready .steps li{padding-top:6px;display:grid;grid-template-columns:115px 1fr;align-items:center}.scenes-ready .steps span{font-size:.75rem}.scenes-ready .steps strong{font-size:1rem}}
@media(max-height:700px),(max-width:800px) and (max-height:760px){.scenes-ready .story{height:auto}.scenes-ready .scene{position:static;height:auto;display:block}.scenes-ready .stage{max-height:none}.scenes-ready .story .habitat>g{opacity:1;transform:none}.steps{grid-template-columns:1fr}.steps li{display:block}.steps span{font-size:.85rem}.scene-heading{align-items:start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scenes-ready .story{height:auto}.scenes-ready .scene{position:static;height:auto}.scenes-ready .reveal{clip-path:none;transform:none}.scenes-ready .story .habitat>g{opacity:1;transform:none}}
@media(forced-colors:active){.choices input:checked+span{border:4px double;text-decoration:underline}.button,.outline,.question-panel,.stage{border:1px solid}.habitat{forced-color-adjust:none}a:focus-visible,button:focus-visible{outline:3px solid Highlight}}@media print{.site-header,.scenes-ready .scene{position:static}.scenes-ready .story{height:auto}.scenes-ready .scene{height:auto;display:block}.scenes-ready .reveal{clip-path:none;transform:none}.scenes-ready .story .habitat>g{opacity:1;transform:none}a[href^="http"]:after{content:' (' attr(href) ')';font-size:10px;overflow-wrap:anywhere}.menu-toggle,.copy{display:none!important}.chapter{padding:25px}.scene{break-inside:avoid}}

.menu-toggle{display:none}.hero-art .habitat{width:150%;left:-20%}.plan-ready .plan-fallback{display:none}html:not(.plan-ready) .controls{display:none}html:not(.plan-ready) .explorer{display:block}.preview .vegetation,.preview .livestock{transition:opacity .3s ease,filter .3s ease}.question-panel{clip-path:none}.scene-heading>.eyebrow{min-width:150px;max-width:none}.scene-heading h2{margin-right:auto}
@media(max-width:800px){.menu-ready .menu-toggle{display:inline-flex}.hero-art .habitat{width:130%;left:-15%}.hero-copy{padding-top:18px;padding-bottom:22px}.hero .actions{gap:0 18px}.hero .facts{gap:10px 20px;margin-top:14px;padding-top:12px}.hero .concept{font-size:.64rem}.hero-copy>.eyebrow{font-size:.68rem}.hero-copy>p:not(.intro){margin-bottom:14px}.scene-heading>.eyebrow{min-width:0}}

a,button,input{scroll-margin-bottom:24px}.owner p a{display:inline-block;min-height:24px}.offer-row>span:last-child{font-size:1.5rem}.about-number>span{font-size:clamp(4rem,14vw,16rem)}
.offer-row>span:last-child{letter-spacing:normal;word-spacing:normal}
@media(max-width:800px){.offer-row{grid-template-columns:26px minmax(0,1fr) 32px}}

/* r6: guppy journey, range vignettes, fishroom wall */
.pre .hero-art .swimmer{visibility:hidden}
.offer-row{grid-template-columns:50px minmax(0,1fr) 160px 40px}
.row-art{width:160px;height:64px;display:block;overflow:visible}
.tank-wall{margin:0 0 28px}
.tank-wall svg{display:block;width:100%;max-width:520px;height:auto;aspect-ratio:600/280}
.tank-wall rect{fill:#3f8a76;stroke:#9fd8bd;stroke-width:1.5;transition:fill .25s ease,stroke .25s ease}
.tank-wall rect.off{fill:#0b2a30;stroke:#2f5f59}
.tank-wall figcaption{margin-top:10px;color:#c4ded2}
.about-number .count{font-variant-numeric:lining-nums tabular-nums;display:inline-block;min-width:3.4ch}
@media(max-width:800px){.offer-row{grid-template-columns:26px minmax(0,1fr) 32px;grid-template-areas:"num text arrow" "num art arrow"}
.offer-row>.eyebrow{grid-area:num}.offer-row>div{grid-area:text}.offer-row>span:last-child{grid-area:arrow}
.row-art{grid-area:art;width:min(160px,100%);height:auto;aspect-ratio:160/64}}
@media(prefers-reduced-motion:reduce){.tank-wall rect{transition:none}}
@media(forced-colors:active){.row-art,.tank-wall svg{forced-color-adjust:none}}
@media print{.tank-wall rect.off{fill:#3f8a76}}
/* Every habitat is a tank at the art's own aspect, so nothing can swim into a letterbox margin. */
.stage,.scenes-ready .stage{aspect-ratio:960/560;width:min(100%,calc(48svh * 960 / 560));max-height:none;margin-inline:auto}
.stage .habitat,.preview svg,.closing-art svg{width:100%;height:100%;margin:0;display:block}
.preview{aspect-ratio:960/560}
.closing-art{height:auto;aspect-ratio:960/560;width:min(100%,960px);margin:0 auto;border:1px solid #85bba94d;border-bottom-color:#a5c8b64a;background:radial-gradient(ellipse at 50% 35%,#22595c,#0b303c 75%);overflow:clip}
@media(max-width:800px){.stage,.scenes-ready .stage{width:min(100%,calc(34svh * 960 / 560))}.stage .habitat{width:100%;margin-left:0}.closing-art{height:auto}}
@media(max-height:700px),(max-width:800px) and (max-height:760px){.stage,.scenes-ready .stage{width:min(100%,640px)}}
.stage .art-label{top:10px;bottom:auto;left:14px}
nav a{min-width:24px;justify-content:center}
