:root{color-scheme:light;--ink:#152c3e;--blue:#006b86;--line:#dbe5ec;--pale:#eff7fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:#fff;font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--blue);text-underline-offset:3px}header{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#fff;position:sticky;top:0;z-index:5}.brand{color:var(--ink);text-decoration:none;font-size:20px;font-weight:750;display:flex;gap:12px;align-items:center}.mark{background:var(--blue);color:white;width:38px;height:38px;display:grid;place-items:center;border-radius:10px}.muted{font-weight:450;color:#657887}.label{font-size:14px;color:#657887}.layout{max-width:1220px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:64px;margin:auto;padding:48px 32px}aside{position:sticky;top:112px;align-self:start}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.12em;color:var(--blue);margin:0 0 10px}nav{display:grid;gap:8px}nav a{display:flex;gap:12px;padding:12px 10px;text-decoration:none;color:#3f5668;font-size:15px;border-radius:8px}nav a:hover,nav a:focus-visible{background:var(--pale)}nav span{color:var(--blue);font-weight:700;font-variant-numeric:tabular-nums}.aside-note{font-size:14px;color:#6b7d8b;border-top:1px solid var(--line);padding-top:24px;margin-top:30px}h1{font-size:clamp(36px,5vw,56px);line-height:1.13;letter-spacing:-.04em;margin:12px 0 20px;font-weight:750}h2{font-size:28px;line-height:1.25;letter-spacing:-.025em;margin:0}p{margin:12px 0 18px}.lead{font-size:20px;color:#51697b;max-width:630px}.prepare{background:var(--pale);border-left:4px solid var(--blue);padding:20px 24px;margin-top:28px}.prepare p{margin:8px 0 0}.intro{padding-bottom:42px}section{border-top:1px solid var(--line);padding:42px 0;scroll-margin-top:12px}.section-title{display:flex;gap:18px;align-items:center;margin-bottom:25px}.number{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:50%;background:var(--blue);color:white;font-size:20px;font-weight:750}.section-title .eyebrow{margin-bottom:5px}ol{padding-left:27px}li{padding-left:7px;margin-bottom:13px}li::marker{color:var(--blue);font-weight:750}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0;align-items:start}figure{margin:0;background:#f4f7fa;border:1px solid var(--line);border-radius:16px;padding:16px}.shot{position:relative;width:100%;max-width:290px;margin:auto;overflow:hidden;border-radius:10px;box-shadow:0 4px 16px #152c3e12}.shot img{width:100%;height:auto;display:block}.shot svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}figcaption{font-size:14px;line-height:1.5;margin-top:14px;color:#526b7e}details{border-bottom:1px solid var(--line);padding:18px 0}summary{font-weight:650;cursor:pointer;line-height:1.5}details p{color:#4e6578;margin-bottom:4px}.help{border:1px solid var(--line);padding:18px 20px;border-radius:10px}.rules-box{background:#102e43;color:white;padding:24px;border-radius:14px;margin:24px 0}.rules-box p{color:#c2d7e4;margin:5px 0 16px}.rules-box details{border-color:#365164}.rules-box summary{font-size:14px}button{background:#8ae2f1;color:#103c4c;border:0;border-radius:8px;padding:14px 18px;font:700 16px system-ui;cursor:pointer}button:hover{background:#b3f0fa}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #eb6245;outline-offset:4px}#copy-status{font-size:14px}#copy-status:empty{display:none}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 ui-monospace,monospace;color:#deedf5}.plain-box{border:1px solid var(--line);padding:22px;border-radius:10px}.plain-box p{margin-bottom:0}.plain-box ul{padding-left:20px}.note{background:#fff5e9;border-left:4px solid #ce852e;padding:20px}.small,footer{font-size:14px;color:#607789}footer{border-top:1px solid var(--line);padding:26px 0 10px}@media(max-width:950px){.layout{gap:28px;grid-template-columns:195px minmax(0,1fr);padding:35px 24px}.gallery{gap:12px}figure{padding:10px}nav a{font-size:14px;padding:10px 0}}@media(max-width:700px){header{height:64px;padding:0 20px}.brand{font-size:18px}.label{display:none}.layout{display:block;padding:25px 20px}aside{position:static;margin-bottom:32px}aside>.eyebrow,.aside-note{display:none}nav{display:flex;overflow:auto;gap:6px;margin:0 -20px;padding:0 20px 8px}nav a{white-space:nowrap;padding:9px 12px;background:var(--pale);font-size:14px}h1{font-size:39px}.lead{font-size:18px}.prepare{padding:18px}h2{font-size:25px}.number{width:43px;height:43px}.section-title{gap:13px}section{padding:30px 0}.gallery{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}figure{padding:8px;border-radius:10px}figcaption{font-size:14px}body{font-size:16px}}@media(max-width:420px){.gallery{grid-template-columns:1fr}.shot{max-width:260px}figure{padding:14px}h1{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,aside,button{display:none}.layout{display:block;padding:0}section,figure{break-inside:avoid}.shot{max-width:200px}details{display:block}details>p{display:block}}

.ping-figure{max-width:460px;margin:24px auto}.ping-figure .shot{max-width:370px}.ping-figure figcaption{color:#526b7e}

.menu-toggle{display:none}nav a[aria-current="location"]{background:#deeff5;color:#00556c;font-weight:700}
@media(max-width:700px){
 header{padding:0 16px;gap:12px}.brand{gap:8px;font-size:17px}.brand .muted{font-size:14px}.mark{width:34px;height:34px}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;flex-shrink:0;background:#edf5f8;color:#00556c;font-size:14px;border:1px solid #d3e3eb}
 .menu-toggle[aria-expanded="true"]{background:#006b86;color:white}
 aside{margin-bottom:24px}nav{display:grid;overflow:visible;margin:0;padding:0;gap:6px}nav a{white-space:normal;min-height:48px;padding:12px 16px;font-size:16px;line-height:1.5}
 .mobile-nav-ready aside{display:none}
 .mobile-nav-ready.menu-open aside{display:block;position:fixed;top:64px;left:0;right:0;z-index:6;background:white;padding:16px;max-height:calc(100dvh - 80px);overflow-y:auto;box-shadow:0 12px 24px #152c3e26;border-bottom:1px solid var(--line);margin:0}
 .mobile-nav-ready .layout{padding-top:28px}html{scroll-padding-top:80px}
}
@media print{.menu-toggle{display:none}}
