:root{
  --teal:#2e7f74;
  --deep-teal:#15564f;
  --basalt:#2b2f31;
  --basalt-2:#202426;
  --coral:#e0645c;
  --coral-ink:#a93f3b;
  --bone:#e8e2d3;
  --foam:#f7f4ea;
  --ink:#25312f;
  --line:rgba(43,47,49,.22);
  --display:'Bricolage Grotesque',sans-serif;
  --body:'Epilogue',sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--foam);color:var(--ink);font-family:var(--body);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}
a{color:inherit}
button,input{font:inherit}
button{color:inherit}
::selection{background:var(--coral);color:var(--foam)}
.skip-link{position:absolute;left:12px;top:12px;z-index:99;padding:12px 16px;background:var(--coral);color:white;transform:translateY(-150%)}
.skip-link:focus-visible{transform:none}
:focus-visible{outline:3px solid var(--coral);outline-offset:4px}

.site-header{height:80px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(22px,4vw,68px);border-bottom:1px solid var(--line);position:relative;z-index:10;background:rgba(247,244,234,.93);backdrop-filter:blur(14px)}
.identity{display:flex;gap:12px;align-items:center;text-decoration:none;width:max-content}
.identity svg,.footer-mark svg{width:43px;fill:var(--coral);stroke:var(--foam);stroke-width:2.4}.identity .mark-core{fill:var(--basalt);stroke:none}
.identity span{display:flex;flex-direction:column}.identity b{font:700 15px/1 var(--display)}.identity small{font-size:9px;letter-spacing:.13em;text-transform:uppercase;margin-top:5px}
.site-header nav{display:flex;align-items:center;gap:36px}.site-header nav a{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;position:relative;padding:16px 0}.site-header nav a::after{content:"";position:absolute;left:0;bottom:10px;width:100%;height:2px;background:var(--coral);transform:scaleX(0);transform-origin:right;transition:transform .35s}.site-header nav a:hover::after{transform:scaleX(1);transform-origin:left}
.station-stamp{justify-self:end;display:flex;align-items:center;gap:10px;text-decoration:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.station-stamp span{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;width:42px;height:42px;font:700 10px var(--display);transform:rotate(7deg)}

.hero{min-height:calc(100vh - 80px);background:var(--teal);color:var(--foam);position:relative;padding:clamp(70px,8vw,124px) clamp(22px,4vw,68px) 78px;display:grid;grid-template-columns:minmax(300px,.75fr) minmax(520px,1.25fr);gap:5vw;overflow:hidden}
.hero::before{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(255,255,255,.13);border-radius:50%;left:-250px;top:70px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.025)}
.hero-copy{position:relative;z-index:2;align-self:start;padding-top:2vh}
.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin:0 0 26px}.eyebrow.dark{color:var(--deep-teal)}
.hero h1,.section-shell h2,.species-head h2,.ledger-intro h2,.visit h2{font-family:var(--display);font-weight:600;letter-spacing:-.075em;margin:0;line-height:.78}
.hero h1{font-size:clamp(70px,8.4vw,136px);text-indent:-.07em}.hero h1 em{color:var(--coral);font-style:normal;font-weight:300;padding-left:.48em}
.hero-intro{font-size:clamp(14px,1.2vw,17px);line-height:1.7;max-width:420px;margin:42px 0 30px;color:rgba(255,255,255,.84)}
.round-link{width:178px;height:58px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:17px;text-decoration:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;transform:rotate(-4deg);transition:background-color .3s,border-color .3s,transform .3s}.round-link b{font-size:19px}.round-link:hover{background:var(--coral);border-color:var(--coral);transform:rotate(0deg) scale(1.04)}
.hero-pool{position:relative;align-self:stretch;min-height:610px;border:1px solid rgba(255,255,255,.35);background:var(--basalt);box-shadow:0 32px 70px rgba(15,35,33,.38);transform:rotate(1.4deg);overflow:hidden;border-radius:2px 44px 4px 26px}
.pool-header{height:42px;position:absolute;top:0;left:0;right:0;z-index:2;padding:0 18px;display:flex;justify-content:space-between;align-items:center;background:rgba(31,39,39,.82);font-size:9px;letter-spacing:.16em;text-transform:uppercase}.live-dot{display:flex;align-items:center;gap:8px}.live-dot::before{content:"";width:7px;height:7px;background:#91d8c6;border-radius:50%;box-shadow:0 0 0 5px rgba(145,216,198,.14);animation:pulse 2s infinite}
#heroCanvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:crosshair}
.pool-callout{position:absolute;right:6%;top:16%;z-index:3;display:flex;gap:9px;align-items:flex-end;pointer-events:none}.pool-callout span{width:70px;height:48px;border-left:1px solid rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.6);transform:skew(-36deg)}.pool-callout p{font-size:9px;line-height:1.45;text-transform:uppercase;letter-spacing:.08em}.pool-callout b{color:#ff8f84}.pool-depth{position:absolute;right:13px;bottom:24px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:8px;letter-spacing:.1em}.pool-depth i{height:100px;width:5px;border-top:1px solid white;border-bottom:1px solid white;background:repeating-linear-gradient(to bottom,transparent 0 9px,rgba(255,255,255,.65) 9px 10px)}
.hero-note{position:absolute;z-index:4;bottom:42px;left:40%;background:var(--bone);color:var(--ink);padding:20px 25px 18px;width:min(310px,24vw);transform:rotate(-3deg);box-shadow:5px 8px 20px rgba(20,38,35,.22)}.hero-note::before{content:"";position:absolute;left:45%;top:-12px;width:80px;height:22px;background:rgba(242,221,173,.75);transform:rotate(4deg)}.note-number{font-size:8px;font-weight:800;letter-spacing:.15em;color:var(--coral)}.hero-note p{font:500 18px/1.25 var(--display);margin:13px 0}.hero-note small{font-size:9px}
.reveal{opacity:0;transform:translateY(22px)}.is-loaded .reveal{opacity:1;transform:translateY(0);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)}.is-loaded .reveal[data-delay="1"]{transition-delay:.14s}.is-loaded .reveal[data-delay="2"]{transition-delay:.34s}

.ticker{height:43px;background:var(--coral);color:var(--basalt);overflow:hidden;border-block:1px solid var(--basalt);display:flex;align-items:center}.ticker-track{display:flex;align-items:center;width:max-content;gap:30px;white-space:nowrap;animation:ticker 26s linear infinite;font-size:9px;font-weight:800;letter-spacing:.14em}.ticker i{font-style:normal;font-size:14px}
.section-shell{display:grid;grid-template-columns:150px minmax(0,1fr);padding-inline:clamp(22px,4vw,68px)}
.section-index{border-right:1px solid var(--line);padding-top:7px}.section-index span{font:600 34px var(--display);color:var(--coral)}.section-index p{font-size:8px;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;margin:15px 0 0 8px}.section-index.light{border-color:rgba(255,255,255,.18)}
.tide-lab{padding-top:120px;padding-bottom:130px;background:var(--bone)}.lab-main{padding-left:clamp(30px,6vw,90px);min-width:0}.lab-heading,.notes-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.lab-heading h2,.notes-heading h2{font-size:clamp(70px,8vw,124px);color:var(--basalt)}.lab-heading>p,.notes-heading>p{font-size:14px;line-height:1.8;max-width:440px;margin:0 0 6px;color:#43514e}
.clock-panel{margin-top:70px;background:var(--foam);border:1px solid var(--line);display:grid;grid-template-columns:380px 1fr;align-items:center;min-height:390px;box-shadow:10px 12px 0 rgba(43,47,49,.07)}
.tide-clock{height:390px;background:var(--teal);position:relative;display:grid;place-items:center}.tide-clock svg{width:290px;height:290px;overflow:visible}.clock-ring{fill:none;stroke:rgba(255,255,255,.6);stroke-width:1}.clock-dashes{fill:none;stroke:rgba(255,255,255,.75);stroke-width:5;stroke-dasharray:1 12}.tide-clock #waterArc{fill:rgba(138,216,205,.55);stroke:#b6ebe2;stroke-width:2}.tide-clock line{stroke:var(--coral);stroke-width:4;stroke-linecap:round;transform-origin:130px 130px}.tide-clock circle:last-of-type{fill:var(--coral)}.tide-clock>div{position:absolute;text-align:center;color:white;display:flex;flex-direction:column}.tide-clock strong{font:600 42px var(--display);letter-spacing:-.05em}.tide-clock span{font-size:8px;letter-spacing:.18em;margin-top:3px}
.tide-controls{padding:35px clamp(35px,5vw,80px)}.control-label{display:flex;justify-content:space-between;margin-bottom:27px}.control-label label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.control-label output{font:600 17px var(--display);color:var(--coral)}
input[type="range"]{width:100%;height:32px;background:transparent;appearance:none;cursor:grab}input[type="range"]::-webkit-slider-runnable-track{height:5px;background:linear-gradient(90deg,var(--coral) 0 var(--range,50%),#b8c1bc var(--range,50%))}input[type="range"]::-webkit-slider-thumb{appearance:none;width:26px;height:26px;border-radius:50%;background:var(--coral);border:6px solid var(--foam);box-shadow:0 0 0 1px var(--coral);margin-top:-11px}input[type="range"]::-moz-range-track{height:5px;background:#b8c1bc}input[type="range"]::-moz-range-progress{height:5px;background:var(--coral)}input[type="range"]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--coral);border:5px solid var(--foam);box-shadow:0 0 0 1px var(--coral)}
.range-ticks{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.12em;font-weight:700;margin-top:3px}.tide-controls>p{font-size:11px;line-height:1.6;color:#52625e;margin:30px 0}.gesture-icon{font-size:20px;color:var(--teal);margin-right:7px}.play-toggle{min-height:44px;border:1px solid var(--ink);background:none;padding:0 17px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;cursor:pointer;transition:background-color .2s,color .2s}.play-toggle:hover{background:var(--ink);color:var(--foam)}.play-toggle span{margin-right:10px;color:var(--coral)}
.zonation{margin-top:80px;border-top:1px solid var(--line);display:grid;grid-template-columns:240px 1fr}.zone-labels{height:330px;display:grid;grid-template-rows:repeat(4,1fr);padding-right:20px}.zone-labels>div{border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.zone-labels b{font:650 12px var(--display);letter-spacing:.06em}.zone-labels span{font-size:8px;color:#65726e;margin-top:4px}.zone-cliff{height:330px;position:relative;overflow:hidden}.zone-cliff svg{width:100%;height:100%}.cliff{fill:var(--basalt)}.barnacle-texture{fill:url(#barnacles);opacity:.48}.barnacle-texture~.kelp{}.kelp{fill:none;stroke:#d4d8a5;stroke-width:12;stroke-linecap:round}.barnacle-texture circle{fill:var(--bone)}.zone-water{fill:rgba(46,127,116,.72);transition:y .4s,height .4s}.zone-surface{fill:none;stroke:#8ccbc1;stroke-width:8;transition:transform .4s}.waterline-tag{position:absolute;right:12px;top:132px;background:var(--foam);padding:8px 10px;font-size:8px;font-weight:800;letter-spacing:.1em;transition:top .4s}

.species-section{background:var(--basalt);color:var(--foam);padding:120px 0 46px;overflow:hidden}.species-head{grid-template-columns:150px 1fr .55fr;align-items:end}.species-head>div:nth-child(2){padding-left:clamp(30px,6vw,90px)}.species-head h2,.ledger-intro h2{font-size:clamp(74px,9vw,132px)}.species-head>p,.ledger-intro>p{font-size:13px;line-height:1.8;color:rgba(255,255,255,.66);max-width:380px;margin:0 0 5px}
.species-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:75px max(22px,calc((100vw - 1320px)/2)) 25px;scrollbar-width:none;cursor:grab}.species-rail::-webkit-scrollbar{display:none}.species-card{flex:0 0 350px;min-height:580px;padding:22px;scroll-snap-align:start;color:var(--basalt);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .35s}.species-card:hover{transform:translateY(-12px) rotate(-.5deg)}.species-card::after{content:"";position:absolute;inset:10px;border:1px solid rgba(43,47,49,.18);pointer-events:none}.coral-card{background:var(--coral)}.bone-card{background:var(--bone)}.teal-card{background:#6fb0a6}.basalt-card{background:#3c4244;color:var(--foam)}
.card-top{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.12em;font-weight:800;position:relative;z-index:2}.zone-badge{background:var(--basalt);color:var(--foam);padding:7px 9px;border-radius:20px}.dark-badge{background:var(--teal)}
.species-card .organism{height:250px;position:relative;z-index:1}.species-card h3{font:650 32px/.95 var(--display);letter-spacing:-.04em;margin:4px 0 5px;position:relative;z-index:2}.species-card .latin{font-size:10px;font-style:italic;margin:0 0 18px;opacity:.68}.species-card>p:not(.latin){font-size:11px;line-height:1.6;margin:0;position:relative;z-index:2}.species-card dl{display:grid;grid-template-columns:1fr 1fr;margin:auto 0 0;padding-top:18px;border-top:1px solid currentColor;position:relative;z-index:2}.species-card dl div{display:flex;flex-direction:column}.species-card dt{font-size:7px;text-transform:uppercase;letter-spacing:.12em;opacity:.6}.species-card dd{font:600 13px var(--display);margin:5px 0 0}
.anemone-art{display:grid;place-items:center}.anemone-art b{width:85px;height:85px;background:#b4393e;border-radius:47% 53% 45% 55%;box-shadow:inset -10px -9px 0 rgba(89,20,25,.22)}.anemone-art i{position:absolute;left:50%;top:48%;width:120px;height:18px;background:#f7a093;border-radius:100%;transform-origin:0 50%}.anemone-art i:nth-child(1){transform:rotate(0deg) translateX(25px)}.anemone-art i:nth-child(2){transform:rotate(45deg) translateX(25px)}.anemone-art i:nth-child(3){transform:rotate(90deg) translateX(25px)}.anemone-art i:nth-child(4){transform:rotate(135deg) translateX(25px)}.anemone-art i:nth-child(5){transform:rotate(180deg) translateX(25px)}.anemone-art i:nth-child(6){transform:rotate(225deg) translateX(25px)}.anemone-art i:nth-child(7){transform:rotate(270deg) translateX(25px)}.anemone-art i:nth-child(8){transform:rotate(315deg) translateX(25px)}
.limpet-art{display:grid;place-items:center;transform:rotate(-8deg)}.limpet-art b{width:190px;height:120px;background:conic-gradient(from 200deg,#164c6a,#9ddff1,#356f8b,#e1d4ad,#153d5f);clip-path:polygon(50% 2%,93% 81%,85% 95%,15% 95%,5% 80%);border-radius:50%;filter:drop-shadow(9px 13px 0 rgba(45,51,50,.15))}.limpet-art span{position:absolute;width:3px;height:105px;background:rgba(255,255,255,.65);transform-origin:50% 95%;z-index:2}.limpet-art span:nth-child(1){transform:rotate(-48deg)}.limpet-art span:nth-child(2){transform:rotate(-20deg)}.limpet-art span:nth-child(3){transform:rotate(20deg)}.limpet-art span:nth-child(4){transform:rotate(48deg)}
.crab-art b{position:absolute;width:155px;height:124px;background:repeating-radial-gradient(circle at 30% 30%,#d6c797 0 8px,#76553c 9px 16px);border-radius:50%;left:88px;top:55px;box-shadow:10px 15px 0 rgba(21,78,70,.16)}.crab-art em{position:absolute;width:65px;height:47px;background:#d67857;border-radius:60% 40%;left:69px;top:145px}.crab-art i{position:absolute;left:83px;top:157px;width:96px;height:8px;background:#c86550;border-radius:10px;transform-origin:left}.crab-art i:nth-child(1){transform:rotate(18deg)}.crab-art i:nth-child(2){transform:rotate(43deg)}.crab-art i:nth-child(3){transform:rotate(142deg)}.crab-art i:nth-child(4){transform:rotate(166deg)}
.mussel-art i{position:absolute;width:72px;height:154px;background:linear-gradient(100deg,#121e21,#345f64 55%,#a2c0ba);border-radius:60% 25% 55% 35%;transform-origin:bottom;box-shadow:inset 8px 0 rgba(255,255,255,.05)}.mussel-art i:nth-child(1){left:30px;top:55px;transform:rotate(-30deg)}.mussel-art i:nth-child(2){left:70px;top:37px;transform:rotate(-13deg)}.mussel-art i:nth-child(3){left:120px;top:48px;transform:rotate(8deg)}.mussel-art i:nth-child(4){left:165px;top:35px;transform:rotate(25deg)}.mussel-art i:nth-child(5){left:211px;top:66px;transform:rotate(41deg)}.mussel-art i:nth-child(6){left:100px;top:82px;transform:rotate(-8deg)}.mussel-art i:nth-child(7){left:156px;top:82px;transform:rotate(18deg)}
.star-art{font:300 260px/1 var(--display);color:#de754f;display:grid;place-items:center;transform:rotate(9deg)}
.kelp-art i{position:absolute;bottom:20px;width:60px;height:190px;border:15px solid #3d6045;border-inline-color:transparent;border-radius:50%;transform-origin:bottom}.kelp-art i:nth-child(1){left:64px;transform:rotate(-27deg)}.kelp-art i:nth-child(2){left:124px;transform:rotate(5deg)}.kelp-art i:nth-child(3){left:186px;transform:rotate(28deg)}.kelp-art b{position:absolute;bottom:15px;left:89px;width:140px;height:45px;background:#6a4b38;border-radius:50%}
.rail-hint{text-align:right;padding:0 max(22px,calc((100vw - 1320px)/2));margin:0;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.58)}.rail-hint span{font-size:18px;color:var(--coral);margin-left:8px}

.field-notes{padding-top:130px;padding-bottom:140px;background:#dce6dd}.notes-main{padding-left:clamp(30px,6vw,90px);min-width:0}.notebook{display:grid;grid-template-columns:1.4fr .8fr;gap:25px;margin-top:75px}.notebook article{background:var(--foam);box-shadow:5px 9px 20px rgba(30,62,55,.12);position:relative}.large-note{min-height:600px;padding:60px clamp(35px,6vw,90px);transform:rotate(-.8deg);background-image:repeating-linear-gradient(transparent 0 31px,rgba(53,110,102,.11) 31px 32px)!important}.tape{position:absolute;top:-12px;left:42%;width:105px;height:31px;background:rgba(223,199,141,.62);transform:rotate(3deg)}.hand-date{font:500 17px var(--display);color:var(--coral);transform:rotate(-2deg)}.large-note h3{font:600 clamp(38px,4vw,58px)/.95 var(--display);letter-spacing:-.05em;max-width:540px;margin:25px 0}.large-note>p:not(.hand-date){font-size:13px;line-height:2;max-width:600px}.large-note footer{display:flex;align-items:center;gap:12px;margin-top:30px}.large-note footer>span{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:white;font:700 12px var(--display)}.large-note footer p{font:600 11px/1.2 var(--display)}.large-note footer small{font:400 8px var(--body)}.crab-sketch{position:absolute;right:25px;bottom:20px;width:220px;fill:none;stroke:var(--teal);stroke-width:2;opacity:.65;transform:rotate(4deg)}
.small-notes{display:grid;grid-template-rows:1fr 1fr .8fr;gap:20px}.small-notes article{padding:30px}.small-notes span{font-size:8px;letter-spacing:.13em;color:var(--coral);font-weight:800}.small-notes h3{font:600 25px var(--display);margin:18px 0 8px;letter-spacing:-.03em}.small-notes p{font-size:11px;line-height:1.7;margin:0}.small-notes .quote-note{background:var(--coral);color:var(--basalt);transform:rotate(2deg);display:flex;flex-direction:column;justify-content:center}.quote-note p{font:500 25px/1.15 var(--display)}.quote-note span{color:var(--basalt);margin-top:16px}

.ledger-section{background:var(--teal);color:var(--foam);padding:125px 0}.ledger-intro{grid-template-columns:150px 1fr .6fr;align-items:end}.ledger-intro>div:nth-child(2){padding-left:clamp(30px,6vw,90px)}
.ledger-book{margin-top:75px;grid-template-columns:150px 1.2fr 1fr}.ledger-map{grid-column:2;background:#1b6058;min-height:610px;padding:25px;position:relative;border:1px solid rgba(255,255,255,.15)}.ledger-map svg{width:100%;height:500px}.map-label,.sheet-label{font-size:8px;letter-spacing:.15em;font-weight:800}.coast{fill:#c6c4aa}.contour{fill:none;stroke:rgba(43,47,49,.4);stroke-width:2;stroke-dasharray:7 5}.pool-spot{cursor:pointer}.pool-spot circle{fill:var(--coral);stroke:var(--foam);stroke-width:2;transition:fill .25s,stroke .25s,stroke-width .25s,transform .25s}.pool-spot text{fill:var(--foam);text-anchor:middle;font:700 12px var(--display);pointer-events:none}.pool-spot.sponsored circle{fill:var(--basalt);stroke-dasharray:4 4}.pool-spot.available:hover circle,.pool-spot.is-selected circle{fill:var(--foam);stroke:var(--coral);stroke-width:5;transform:scale(1.12);transform-origin:center}.pool-spot.available:hover text,.pool-spot.is-selected text{fill:var(--basalt)}.north{fill:none;stroke:var(--foam);stroke-width:2}.ledger-map svg>text{fill:var(--foam);font:700 11px var(--display)}.map-key{position:absolute;bottom:25px;display:flex;gap:22px;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.map-key span{display:flex;align-items:center;gap:7px}.map-key i{width:10px;height:10px;border-radius:50%;background:var(--coral)}.map-key span+span i{background:var(--basalt)}
.ledger-sheet{background:var(--foam);color:var(--basalt);padding:55px clamp(28px,4vw,60px);box-shadow:15px 15px 0 rgba(27,74,68,.45);align-self:center;transform:translateX(-14px);position:relative}.ledger-sheet::before{content:"";position:absolute;left:20px;top:0;bottom:0;border-left:1px solid rgba(224,100,92,.35)}.sheet-label{color:var(--teal);margin:0}.ledger-sheet h3{font:600 clamp(40px,4vw,59px)/1 var(--display);letter-spacing:-.06em;margin:22px 0 31px}.pool-choice{border-top:1px solid var(--line)}.pool-choice button{width:100%;min-height:62px;border:0;border-bottom:1px solid var(--line);background:none;display:grid;grid-template-columns:70px 1fr auto;align-items:center;text-align:left;padding:0 3px;cursor:pointer}.pool-choice button b{font:700 17px var(--display)}.pool-choice button span{font-size:10px}.pool-choice button em{font-size:8px;font-style:normal;color:#71807d}.pool-choice button.active{color:var(--coral)}.pool-choice button.active b::before{content:"●";font-size:7px;margin-right:6px}
.selection-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.selection-summary>div{display:flex;flex-direction:column}.selection-summary span{font-size:7px;text-transform:uppercase;letter-spacing:.11em;color:#70807c}.selection-summary strong{font:600 20px var(--display);margin-top:6px}.adopt-button{min-height:66px;background:var(--coral);color:var(--foam);display:flex;justify-content:space-between;align-items:center;padding:0 20px;text-decoration:none;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;transition:background-color .25s,transform .25s}.adopt-button:hover{background:var(--basalt);transform:translateY(-3px)}.adopt-button b{font-size:22px}.fine-print{font-size:9px;line-height:1.65;color:#53615e;margin:18px 0 0}

.visit{background:var(--coral);min-height:650px;display:grid;grid-template-columns:1fr .8fr;color:var(--basalt);overflow:hidden}.visit-card{padding:110px clamp(22px,7vw,120px)}.visit h2{font-size:clamp(65px,7.5vw,112px)}.visit-meta{margin:60px 0 40px;border-top:1px solid rgba(43,47,49,.35);display:grid;grid-template-columns:repeat(3,1fr)}.visit-meta>div{display:flex;flex-direction:column;border-right:1px solid rgba(43,47,49,.35);padding:20px 15px 0 0;margin-right:15px}.visit-meta span{font-size:7px;letter-spacing:.11em;text-transform:uppercase}.visit-meta b{font:600 13px/1.3 var(--display);margin-top:7px}.visit-card>a{display:inline-flex;align-items:center;gap:45px;border-bottom:2px solid var(--basalt);padding:13px 2px;text-decoration:none;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.1em}.visit-card>a span{font-size:18px}.visit-graphic{display:flex;align-items:end}.visit-graphic svg{width:100%;height:100%}.visit-graphic .sun{fill:none;stroke:var(--basalt);stroke-width:3}.visit-graphic circle{fill:var(--bone);stroke:var(--basalt);stroke-width:2}.visit-graphic .rocks{fill:var(--basalt)}.visit-graphic .water{fill:var(--teal)}.visit-graphic .ripples{fill:none;stroke:#7ac3b8;stroke-width:4}

.site-footer{min-height:150px;background:var(--basalt-2);color:var(--foam);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:35px clamp(22px,4vw,68px);gap:30px}.footer-mark{display:flex;gap:13px;align-items:center}.footer-mark svg{width:40px}.footer-mark svg circle:last-child{fill:var(--basalt)}.footer-mark p{display:flex;flex-direction:column;margin:0}.footer-mark b{font:600 14px var(--display)}.footer-mark span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;margin-top:5px}.site-footer>p{font-size:9px;color:rgba(255,255,255,.58);white-space:nowrap}.site-footer nav{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:9px}.site-footer nav a{font-size:9px;text-transform:uppercase;letter-spacing:.11em;text-decoration:none;border-bottom:1px solid transparent}.site-footer nav a:hover{border-color:var(--coral)}

@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(145,216,198,0)}}
@keyframes ticker{to{transform:translateX(-50%)}}

@media(max-width:1000px){
  .site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:.75fr 1.25fr;gap:30px}.hero h1{font-size:clamp(65px,10vw,98px)}.hero-pool{min-height:560px}.hero-note{left:27%;width:240px}.section-shell{grid-template-columns:90px minmax(0,1fr)}.lab-main,.notes-main{padding-left:40px}.species-head,.ledger-intro{grid-template-columns:90px 1fr .65fr}.species-head>div:nth-child(2),.ledger-intro>div:nth-child(2){padding-left:40px}.clock-panel{grid-template-columns:310px 1fr}.tide-clock{height:350px}.zonation{grid-template-columns:190px 1fr}.ledger-book{grid-template-columns:90px 1.15fr 1fr}.ledger-map{grid-column:2}.ledger-sheet{padding:45px 30px}.visit{grid-template-columns:1.2fr .8fr}.visit-meta{grid-template-columns:1fr;gap:16px}.visit-meta>div{border-right:0}.site-footer{grid-template-columns:1fr 1fr}.site-footer>p{order:3;grid-column:1/-1}.notebook{grid-template-columns:1.25fr .75fr}.crab-sketch{width:160px}
}

@media(max-width:700px){
  html{scroll-padding-top:70px}.site-header{height:70px;padding-inline:16px}.identity svg{width:38px}.identity b{font-size:13px}.station-stamp{font-size:0}.station-stamp span{font-size:9px;width:40px;height:40px}
  .hero{min-height:auto;display:block;padding:61px 16px 85px}.hero::before{width:300px;height:300px;left:-210px}.hero h1{font-size:clamp(67px,22vw,88px);line-height:.81}.hero-intro{font-size:13px;margin:34px 0 28px}.round-link{width:164px}.hero-pool{height:520px;min-height:0;margin-top:68px;transform:rotate(.7deg);border-radius:2px 30px 2px 18px}.pool-callout{top:12%;right:8px}.pool-callout span{width:35px}.pool-callout p{font-size:7px}.hero-note{position:relative;bottom:auto;left:auto;width:83%;margin:-22px 0 0 auto;transform:rotate(-2deg)}
  .ticker{height:40px}.section-shell{display:block;padding-inline:16px}.section-index{border-right:0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 0 13px;margin-bottom:44px}.section-index span{font-size:25px}.section-index p{writing-mode:initial;margin:0;font-size:7px}
  .tide-lab{padding-block:86px}.lab-main,.notes-main{padding-left:0}.lab-heading,.notes-heading{display:block}.lab-heading h2,.notes-heading h2{font-size:65px}.lab-heading>p,.notes-heading>p{font-size:12px;margin-top:30px}.clock-panel{margin-top:50px;display:block}.tide-clock{height:320px}.tide-clock svg{width:260px}.tide-controls{padding:35px 24px}.zonation{margin-top:60px;grid-template-columns:104px 1fr}.zone-labels{height:290px;padding-right:8px}.zone-labels b{font-size:8px}.zone-labels span{font-size:6px;line-height:1.35}.zone-cliff{height:290px}.waterline-tag{font-size:6px;right:4px}
  .species-section{padding:85px 0 55px}.species-head,.ledger-intro{display:block}.species-head>div:nth-child(2),.ledger-intro>div:nth-child(2){padding-left:0}.species-head h2,.ledger-intro h2{font-size:71px}.species-head>p,.ledger-intro>p{font-size:11px;margin-top:30px}.species-rail{padding-top:50px}.species-card{flex-basis:310px;min-height:550px}.species-card .organism{height:230px}.rail-hint{text-align:left}
  .field-notes{padding-block:85px}.notebook{display:block;margin-top:55px}.large-note{min-height:670px;padding:48px 26px 180px}.large-note h3{font-size:39px}.large-note>p:not(.hand-date){font-size:11px}.crab-sketch{width:190px;right:10px}.small-notes{margin-top:20px}.small-notes article{min-height:190px}
  .ledger-section{padding-block:85px}.ledger-book{display:block;margin-top:55px}.ledger-map{min-height:470px;padding:16px}.ledger-map svg{height:400px}.map-key{bottom:15px}.ledger-sheet{transform:none;margin-top:18px;padding:40px 27px}.ledger-sheet h3{font-size:44px}.pool-choice button{grid-template-columns:60px 1fr auto}.adopt-button{font-size:8px}
  .visit{display:block;min-height:0}.visit-card{padding:85px 16px 65px}.visit h2{font-size:67px}.visit-meta{margin:45px 0 30px}.visit-graphic{height:380px}.site-footer{display:flex;flex-direction:column;align-items:flex-start;min-height:260px;padding:45px 20px}.site-footer>p{order:0}.site-footer nav{justify-self:auto;align-items:flex-start}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}
}

/* Pass 1 composition refinements */
.visit-graphic{position:relative}
.visit-graphic::before{content:"WEST LEDGE / ACCESS WINDOW  ·  12:34—15:06";position:absolute;top:27%;left:6%;font:700 8px/1.7 var(--body);letter-spacing:.14em}
.visit-graphic::after{content:"";position:absolute;top:31%;left:6%;width:42px;border-top:1px solid var(--basalt)}

@media(max-width:1000px) and (min-width:701px){
  .hero{min-height:900px}
  .hero-pool{align-self:start;height:800px;min-height:0}
  .hero-note{left:25%;width:220px;bottom:30px}
  .notebook{display:block}
  .small-notes{grid-template-columns:1fr 1fr 1fr;grid-template-rows:none;margin-top:22px}
  .small-notes article{min-height:220px}
  .crab-sketch{width:190px}
}

@media(max-width:700px){
  .pool-callout{top:55px;right:10px;background:rgba(32,36,38,.84);padding:8px 10px;border-left:2px solid var(--coral)}
  .pool-callout span{display:none}
  .pool-callout p{font-size:8px;line-height:1.45;margin:0}
  .small-notes{display:grid;grid-template-columns:1fr;grid-template-rows:1fr 1fr .8fr}
  .visit-graphic::before{top:7%;left:8%;max-width:190px;font-size:7px;line-height:1.6}
  .visit-graphic::after{top:14%;left:8%}
}

/* Pass 2 — living habitat, responsive hierarchy, and tactile state */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
button,a,input,[role="button"]{touch-action:manipulation;-webkit-tap-highlight-color:rgba(224,100,92,.22)}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
section[id],h2[id]{scroll-margin-top:96px}
.control-label output,.tide-clock strong,.range-ticks,.selection-summary strong{font-variant-numeric:tabular-nums}

.hero{background:
  radial-gradient(circle at 82% 14%,rgba(151,222,205,.18),transparent 25%),
  radial-gradient(circle at 7% 76%,rgba(10,75,68,.28),transparent 32%),
  linear-gradient(125deg,#24786e 0%,#2e8b7e 52%,#226a63 100%)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(112deg,transparent 0 74px,rgba(255,255,255,.022) 75px 76px);mix-blend-mode:screen}
.hero-copy,.hero-pool,.hero-note{isolation:isolate}
.hero-pool{background:#172122;box-shadow:0 34px 75px rgba(10,35,32,.42),inset 0 0 0 1px rgba(200,242,230,.12)}
#heroCanvas:focus-visible{outline:0;box-shadow:inset 0 0 0 4px var(--coral),inset 0 0 0 7px var(--foam)}
.pool-callout{transition:background-color .28s,transform .45s cubic-bezier(.2,.8,.2,1)}
.hero-pool.has-contact .pool-callout{background:rgba(224,100,92,.92);transform:translateY(-5px) rotate(-1deg)}
.hero-pool.has-contact .pool-callout b{color:var(--foam)}
.ticker i{display:block;width:10px;height:10px;border:1px solid var(--basalt);border-radius:50%;position:relative;flex:0 0 auto}
.ticker i::before,.ticker i::after{content:"";position:absolute;background:var(--basalt);left:50%;top:50%;transform:translate(-50%,-50%)}
.ticker i::before{width:8px;height:1px}.ticker i::after{width:1px;height:8px}

.tide-lab{background:
  radial-gradient(circle at 77% 18%,rgba(255,255,255,.58),transparent 27%),
  linear-gradient(112deg,#e3dece,#eee8d8 48%,#ddd8c9)}
.tide-signal{margin-top:28px;padding:16px 18px;border-left:4px solid var(--coral);background:rgba(46,127,116,.09);display:grid;grid-template-columns:1fr auto;gap:5px 18px;align-items:end}
.tide-signal>span{grid-column:1/-1;font-size:7px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--deep-teal)}
.tide-signal strong{font:650 22px/1 var(--display);letter-spacing:-.025em}
.tide-signal em{font-size:8px;font-style:normal;color:#52625e;text-align:right}
.zone-labels>div{position:relative;padding-left:13px;transition:background-color .4s,color .4s,padding-left .4s}
.zone-labels>div::before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;border-radius:50%;background:var(--coral);transform:translateY(-50%) scale(0);transition:transform .4s}
.zone-labels>div.is-active{padding-left:23px;background:rgba(46,127,116,.1);color:var(--deep-teal)}
.zone-labels>div.is-active::before{transform:translateY(-50%) scale(1)}
.zone-cliff{box-shadow:inset 0 0 38px rgba(7,28,27,.16)}
.waterline-tag{box-shadow:4px 4px 0 rgba(43,47,49,.13)}

.species-section{background:
  radial-gradient(circle at 12% 4%,rgba(84,109,107,.34),transparent 22%),
  linear-gradient(118deg,#262b2d,#303638 55%,#212628)}
.species-toolbar{grid-template-columns:150px minmax(0,1fr) auto;align-items:end;margin-top:36px}
.species-toolbar>p{grid-column:2;margin:0;padding-left:clamp(30px,6vw,90px);display:flex;flex-direction:column;gap:6px}
.species-toolbar>p span{font-size:7px;letter-spacing:.15em;text-transform:uppercase;color:#92cfc4;font-weight:800}
.species-toolbar>p strong{font:500 17px var(--display);color:var(--foam)}
.species-toolbar>div{grid-column:3;display:flex;gap:8px}
.species-toolbar button{width:46px;height:46px;border:1px solid rgba(255,255,255,.45);background:transparent;color:var(--foam);font-size:20px;cursor:pointer;transition:background-color .25s,color .25s,transform .25s}
.species-toolbar button:hover{background:var(--coral);color:var(--basalt);transform:translateY(-3px)}
.species-rail{padding-top:36px;align-items:flex-start;touch-action:pan-y;overscroll-behavior-x:contain;cursor:grab}
.species-rail.is-dragging{cursor:grabbing;user-select:none}
.species-card{transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .4s,filter .4s;box-shadow:0 20px 42px rgba(8,16,16,.2)}
.species-card:nth-child(2){flex-basis:382px;min-height:615px;transform:translateY(22px)}
.species-card:nth-child(3){flex-basis:336px;min-height:560px}
.species-card:nth-child(4){flex-basis:400px;min-height:630px;transform:translateY(13px)}
.species-card:nth-child(5){flex-basis:348px;min-height:575px}
.species-card:nth-child(6){flex-basis:374px;min-height:605px;transform:translateY(20px)}
.species-card.is-muted{opacity:.58;filter:saturate(.62)}
.species-card.is-current{transform:translateY(-8px) rotate(-.7deg);box-shadow:0 30px 55px rgba(8,16,16,.34)}
.species-card:hover,.species-card:focus-within{transform:translateY(-12px) rotate(-.5deg);opacity:1;filter:none}
.species-card::before{content:"CURRENT WATERLINE";position:absolute;right:-48px;bottom:82px;z-index:3;padding:7px 52px;background:var(--foam);color:var(--deep-teal);font-size:7px;font-weight:800;letter-spacing:.12em;transform:rotate(-45deg) translateY(45px);opacity:0;transition:opacity .35s,transform .35s}
.species-card.is-current::before{opacity:1;transform:rotate(-45deg) translateY(0)}

.field-notes{background:
  radial-gradient(circle at 83% 20%,rgba(255,255,255,.64),transparent 24%),
  linear-gradient(115deg,#d6e3da,#e5ece3 58%,#d1dfd6)}
.ledger-section{background:
  radial-gradient(circle at 73% 23%,rgba(136,206,189,.14),transparent 27%),
  linear-gradient(126deg,#236f66,#2f8a7d 48%,#246f67)}
.visit{background:
  radial-gradient(circle at 87% 17%,rgba(255,193,171,.22),transparent 20%),
  linear-gradient(118deg,#e66a61,#db5c58 65%,#e97768)}
.visit-graphic{background-image:radial-gradient(circle,rgba(43,47,49,.2) .7px,transparent .8px);background-size:8px 8px}
.visit-meta #ledgeAccess{color:#642a2a}

.js .detail-reveal{opacity:1;transform:translateY(0);filter:saturate(.84)}
.js .detail-reveal.is-visible{filter:saturate(1);transition:filter .72s ease}

@media(max-width:1000px) and (min-width:701px){
  .site-header{grid-template-columns:1fr auto 1fr}
  .site-header nav{display:flex;gap:18px}.site-header nav a{font-size:8px}
  .species-toolbar{grid-template-columns:90px minmax(0,1fr) auto}.species-toolbar>p{padding-left:40px}
}

@media(max-width:700px){
  .site-header{height:116px;grid-template-columns:1fr auto;grid-template-rows:70px 46px;padding-inline:16px}
  .site-header .identity{grid-row:1}.site-header .station-stamp{grid-row:1}
  .site-header nav{display:flex;grid-column:1/-1;grid-row:2;width:100%;gap:0;border-top:1px solid var(--line);justify-content:space-between}
  .site-header nav a{min-height:44px;display:flex;align-items:center;padding:0 4px;font-size:8px;letter-spacing:.06em}
  .site-header nav a::after{bottom:4px}
  .hero{display:grid;grid-template-columns:minmax(0,1fr);padding:34px 16px 72px;row-gap:0}
  .hero-copy{display:contents}
  .hero-copy>.eyebrow{grid-row:1;margin-bottom:18px}
  .hero-copy>h1{grid-row:2;font-size:clamp(61px,19vw,74px);line-height:.8}
  .hero-pool{grid-row:3;height:430px;margin-top:28px}
  .hero-copy>.hero-intro{grid-row:4;margin:38px 0 25px;font-size:14px;line-height:1.7}
  .hero-copy>.round-link{grid-row:5}
  .hero-note{grid-row:6;margin-top:-18px}
  .hero-copy.reveal{opacity:1;transform:none}
  .hero-copy.reveal>*{opacity:0;transform:translateY(18px)}
  .is-loaded .hero-copy.reveal>*{opacity:1;transform:translateY(0);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
  .is-loaded .hero-copy.reveal>h1{transition-delay:.08s}.is-loaded .hero-copy.reveal>.hero-intro{transition-delay:.26s}.is-loaded .hero-copy.reveal>.round-link{transition-delay:.34s}
  .pool-depth i{height:72px}
  .tide-signal{grid-template-columns:1fr;padding:14px}.tide-signal em{text-align:left}
  .species-toolbar{display:flex;padding-inline:16px;align-items:center;justify-content:space-between;margin-top:30px;gap:15px}
  .species-toolbar>p{padding-left:0;min-width:0}.species-toolbar>p strong{font-size:14px}
  .species-toolbar>div{flex:0 0 auto}.species-toolbar button{width:44px;height:44px}
  .species-rail{padding-top:24px}.species-card{flex-basis:min(82vw,320px);min-height:545px}
  .species-card:nth-child(n){flex-basis:min(82vw,320px);min-height:545px;transform:none}
  .species-card.is-current{transform:translateY(-4px) rotate(-.4deg)}
  .large-note>p:not(.hand-date){font-size:12px;line-height:1.9}
  .small-notes p{font-size:12px}.small-notes h3{font-size:28px}
  .visit-card{padding-top:78px}.visit h2{font-size:62px}
  .site-footer nav{width:100%;gap:0}.site-footer nav a{min-height:44px;display:flex;align-items:center}
}

@media(prefers-reduced-motion:reduce){
  .js .detail-reveal{opacity:1;transform:none}
}

/* Pass 3 — art-direction polish and the exploratory shore loupe */
html{font-optical-sizing:auto}
*{scrollbar-width:thin;scrollbar-color:var(--coral) var(--basalt)}
*::-webkit-scrollbar{width:11px;height:11px}
*::-webkit-scrollbar-track{background:var(--basalt)}
*::-webkit-scrollbar-thumb{background:var(--coral);border:3px solid var(--basalt);border-radius:20px}
*::-webkit-scrollbar-thumb:hover{background:#f18479}
.site-header nav a:hover::after,.site-header nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.identity svg,.station-stamp span{transition:transform .42s cubic-bezier(.16,1,.3,1)}
.identity:hover svg,.identity:focus-visible svg{transform:rotate(22.5deg)}
.station-stamp:hover span,.station-stamp:focus-visible span{transform:rotate(-8deg) scale(1.06)}
.round-link:hover,.round-link:focus-visible{background:var(--coral);border-color:var(--coral);transform:rotate(0deg) scale(1.04)}
.play-toggle:hover,.play-toggle:focus-visible{background:var(--ink);color:var(--foam)}
.species-toolbar button:hover,.species-toolbar button:focus-visible{background:var(--coral);color:var(--basalt);transform:translateY(-3px)}
.adopt-button:hover,.adopt-button:focus-visible{background:var(--basalt);color:var(--foam);transform:translateY(-3px)}
.visit-card>a,.site-footer nav a{text-decoration-thickness:1px;text-underline-offset:5px}
.visit-card>a{transition:gap .35s cubic-bezier(.16,1,.3,1),color .25s}
.visit-card>a:hover,.visit-card>a:focus-visible{gap:60px;color:#5e2929}
.site-footer nav a:hover,.site-footer nav a:focus-visible{border-color:var(--coral);color:#ffc1ba}
.pool-choice button{transition:color .25s,background-color .25s,padding .35s cubic-bezier(.16,1,.3,1)}
.pool-choice button:hover,.pool-choice button:focus-visible{color:var(--deep-teal);background:rgba(46,127,116,.08);padding-inline:10px}
.pool-spot.available:focus-visible circle{fill:var(--foam);stroke:var(--coral);stroke-width:5;transform:scale(1.12);transform-origin:center}
.pool-spot.available:focus-visible text{fill:var(--basalt)}
.control-label output,.tide-clock strong,.range-ticks,.selection-summary strong,.visit-meta b,.pool-depth{font-variant-numeric:tabular-nums lining-nums}
.hero-intro,.species-head>p,.ledger-intro>p{color:var(--foam)}
.ticker,.visit,.coral-card{color:#171b1c}
.adopt-button{color:#171b1c}
.visit-meta #ledgeAccess{color:#171b1c}
.note-number,.hand-date,.small-notes span,.control-label output{color:var(--coral-ink)}
.hero-pool.has-contact .pool-callout,.hero-pool.has-contact .pool-callout b{color:#171b1c}
.hero h1,.lab-heading h2,.notes-heading h2,.species-head h2,.ledger-intro h2,.visit h2{font-optical-sizing:auto}
.is-loaded .hero-pool.reveal{transition:opacity .9s ease,transform 1.05s cubic-bezier(.16,1,.3,1),clip-path 1.05s cubic-bezier(.77,0,.18,1);clip-path:inset(0 0 0 0 round 2px 44px 4px 26px)}
.hero-pool.reveal{clip-path:inset(0 0 100% 0 round 2px 44px 4px 26px)}

.zone-cliff{cursor:crosshair;isolation:isolate;touch-action:pan-y}
.zone-cliff:focus-visible{outline:0;box-shadow:inset 0 0 0 4px var(--coral),inset 0 0 0 7px var(--foam),inset 0 0 38px rgba(7,28,27,.16)}
.shore-loupe{--lens-ink:#f7f4ea;position:absolute;left:var(--loupe-x,64%);top:var(--loupe-y,38%);z-index:5;width:158px;height:158px;border:2px solid var(--foam);border-radius:50%;background:radial-gradient(circle at 45% 38%,rgba(74,112,107,.95),#182627 72%);box-shadow:0 15px 28px rgba(7,22,21,.4),inset 0 0 0 7px rgba(247,244,234,.12);color:var(--lens-ink);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 20px 23px;text-align:center;pointer-events:none;transition:left .5s cubic-bezier(.16,1,.3,1),top .5s cubic-bezier(.16,1,.3,1),background .35s,box-shadow .3s}
.zone-cliff.is-tracking .shore-loupe{transition:background .35s,box-shadow .3s;box-shadow:0 19px 35px rgba(7,22,21,.48),inset 0 0 0 7px rgba(247,244,234,.17)}
.shore-loupe::before{content:"FIELD LOUPE · ×4";position:absolute;top:17px;font-size:6px;font-weight:800;letter-spacing:.16em;opacity:.72}
.zone-cliff.is-pinned .shore-loupe::after{content:"PINNED";position:absolute;right:-16px;top:22px;background:var(--coral);padding:5px 8px;font-size:6px;font-weight:800;letter-spacing:.14em;transform:rotate(8deg)}
.shore-loupe b{font:650 14px/1 var(--display);letter-spacing:-.02em}.shore-loupe small{font-size:6px;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;margin-top:4px;max-width:116px;color:rgba(255,255,255,.78)}
.loupe-crosshair::before,.loupe-crosshair::after{content:"";position:absolute;background:rgba(247,244,234,.32)}
.loupe-crosshair::before{width:1px;height:100%;top:0;left:50%}.loupe-crosshair::after{height:1px;width:100%;left:0;top:50%}
.loupe-specimen{position:absolute;left:50%;top:51%;width:76px;height:52px;transform:translate(-50%,-50%)}
.loupe-specimen i{position:absolute;display:block;transition:all .35s cubic-bezier(.16,1,.3,1)}
.shore-loupe.is-spray{background:radial-gradient(circle at 45% 38%,#c8c6aa,#696e65 70%)}
.shore-loupe.is-spray .loupe-specimen i{width:12px;height:12px;border:2px solid #e9e1c9;border-radius:50%;background:#65775f;box-shadow:inset 0 0 0 2px #b9c786}
.shore-loupe.is-spray .loupe-specimen i:nth-child(1){left:3px;top:9px}.shore-loupe.is-spray .loupe-specimen i:nth-child(2){left:28px;top:2px}.shore-loupe.is-spray .loupe-specimen i:nth-child(3){left:52px;top:13px}.shore-loupe.is-spray .loupe-specimen i:nth-child(4){left:17px;top:31px}.shore-loupe.is-spray .loupe-specimen i:nth-child(5){left:47px;top:34px}
.shore-loupe.is-barnacle .loupe-specimen i{width:20px;height:20px;background:conic-gradient(from 0deg,#e8e2d3,#8d9388,#e8e2d3,#717d77,#e8e2d3);clip-path:polygon(50% 0,100% 44%,81% 100%,19% 100%,0 44%)}
.shore-loupe.is-barnacle .loupe-specimen i:nth-child(1){left:1px;top:18px}.shore-loupe.is-barnacle .loupe-specimen i:nth-child(2){left:21px;top:1px}.shore-loupe.is-barnacle .loupe-specimen i:nth-child(3){left:45px;top:15px}.shore-loupe.is-barnacle .loupe-specimen i:nth-child(4){left:24px;top:29px}.shore-loupe.is-barnacle .loupe-specimen i:nth-child(5){left:58px;top:34px;transform:scale(.7)}
.shore-loupe.is-mussel{background:radial-gradient(circle at 42% 35%,#4c7d7c,#182729 72%)}
.shore-loupe.is-mussel .loupe-specimen i{width:17px;height:40px;border-radius:65% 28% 60% 35%;background:linear-gradient(100deg,#132225,#467b80 55%,#a0c1bb);transform-origin:bottom}
.shore-loupe.is-mussel .loupe-specimen i:nth-child(1){left:2px;top:8px;transform:rotate(-32deg)}.shore-loupe.is-mussel .loupe-specimen i:nth-child(2){left:18px;top:2px;transform:rotate(-14deg)}.shore-loupe.is-mussel .loupe-specimen i:nth-child(3){left:34px;top:6px;transform:rotate(4deg)}.shore-loupe.is-mussel .loupe-specimen i:nth-child(4){left:50px;top:1px;transform:rotate(22deg)}.shore-loupe.is-mussel .loupe-specimen i:nth-child(5){left:61px;top:13px;transform:rotate(35deg)}
.shore-loupe.is-fringe{background:radial-gradient(circle at 45% 36%,#397f75,#142625 74%)}
.shore-loupe.is-fringe .loupe-specimen i{left:36px;top:24px;width:35px;height:5px;border-radius:100%;background:#f28a7e;transform-origin:0 50%}
.shore-loupe.is-fringe .loupe-specimen i:nth-child(1){transform:rotate(0deg)}.shore-loupe.is-fringe .loupe-specimen i:nth-child(2){transform:rotate(72deg)}.shore-loupe.is-fringe .loupe-specimen i:nth-child(3){transform:rotate(144deg)}.shore-loupe.is-fringe .loupe-specimen i:nth-child(4){transform:rotate(216deg)}.shore-loupe.is-fringe .loupe-specimen i:nth-child(5){transform:rotate(288deg)}
.loupe-help{position:absolute;left:12px;bottom:10px;z-index:6;margin:0;padding:6px 8px;background:rgba(247,244,234,.9);color:var(--basalt);font-size:6px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}.loupe-help span{color:var(--coral);font-size:10px;margin-right:4px}

@media(max-width:700px){
  .shore-loupe{width:112px;height:112px;padding:0 10px 14px}.shore-loupe::before{top:10px;font-size:5px}.shore-loupe b{font-size:10px}.shore-loupe small{font-size:5px;max-width:90px}.loupe-specimen{transform:translate(-50%,-50%) scale(.67)}.loupe-help{left:5px;bottom:5px;font-size:5px}.zone-cliff.is-pinned .shore-loupe::after{right:-10px;top:13px}
  .hero-pool.reveal{clip-path:inset(0 0 100% 0 round 2px 30px 2px 18px)}
  .is-loaded .hero-pool.reveal{clip-path:inset(0 0 0 0 round 2px 30px 2px 18px)}
}

@media(prefers-reduced-motion:reduce){
  .hero-pool.reveal{clip-path:none}.shore-loupe{transition:none}
}
