/* Sea Pools - layout: white brand bar, light hero with the boat-and-pool mark, navy and CTA bands, pale sea-foam bands between; specs in mono */
:root{
  --deep:#0A1F44;      /* brand navy - header text, footer, hero bands */
  --teal:#12306A;      /* mid navy - CTA band */
  --buoy:#F7901E;      /* float orange - CTAs */
  --buoy-ink:#0A1F44;
  --foam:#12C4DD;      /* aqua - POOLS, water */
  --aqua:#12C4DD;
  --aqua-ink:#00718F;  /* aqua dark enough for text on light */
  --sand:#FFFFFF;      /* headings on navy */
  --paper:#FDFEF9;
  --pale:#E8F7FA;
  --ink:#0A1F44;
  --muted:#46597A;
  --line:#CFE0E8;
  --on-deep:#F2F8FC;
  --on-deep-muted:#A9BCD6;
  --card:#FFFFFF;
  --warn:#B3401C;
  --display:'Krona One', 'Arial Black', sans-serif;
  --body:'Lexend', 'Segoe UI', system-ui, sans-serif;
  --mono:'IBM Plex Mono', ui-monospace, Menlo, Consolas, monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#08162F; --pale:#0C1E3D; --ink:#EAF2FA; --muted:#A3B4CC; --line:#1F3560; --card:#0E2246;
    --deep:#061430; --teal:#12306A; --aqua-ink:#12C4DD; --warn:#F08A6A; color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#08162F; --pale:#0C1E3D; --ink:#EAF2FA; --muted:#A3B4CC; --line:#1F3560; --card:#0E2246;
  --deep:#061430; --teal:#12306A; --aqua-ink:#12C4DD; --warn:#F08A6A; color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6}
img,svg{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--buoy);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--buoy);color:var(--buoy-ink);padding:8px 12px;z-index:50}
.skip:focus{left:12px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:.01em;line-height:1.12;text-wrap:balance;margin:0;text-transform:uppercase}
h1{font-size:clamp(30px,4.6vw,54px)}
h2{font-size:clamp(23px,3vw,36px)}
h3,.h3{font-size:17px;letter-spacing:.02em}
p{margin:0}
.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--aqua-ink);margin-bottom:12px;font-weight:500}
.page-hero .eyebrow,.band-deep .eyebrow{color:var(--aqua)}
.lede{font-size:19px;color:var(--muted);max-width:62ch}
.muted{color:var(--muted)}
.mono{font-family:var(--mono)}
.mono-num{font-family:var(--mono);font-weight:500;letter-spacing:0}
.center{text-align:center;margin-top:32px}
.mt{margin-top:40px;margin-bottom:14px}
.link{color:var(--aqua-ink);font-weight:700}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font:700 16px var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;white-space:nowrap}
.btn-buoy{background:var(--buoy);color:var(--buoy-ink)}
.btn-buoy:hover{filter:brightness(1.07)}
.btn-line{border-color:var(--sand);color:var(--sand)}
.btn-line-dark{border-color:var(--ink);color:var(--ink)}

/* header - always the white brand bar */
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:#FFFFFF;color:#0A1F44;border-bottom:1px solid #DCE8EF}
.head-row{display:flex;align-items:center;gap:20px;min-height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{height:46px;width:auto;flex:none}
.brand-word{font-family:var(--display);font-size:20px;letter-spacing:.02em;white-space:nowrap;color:#0A1F44}
.brand-word b{color:#12C4DD;font-weight:400}
.brand-foot .brand-word{color:#FFFFFF;font-size:24px}
.tagline{color:var(--on-deep);font-weight:600}
.nav{margin-left:auto}
.nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;color:#46597A;font-weight:500}
.nav a:hover,.nav a[aria-current="page"]{color:#0A1F44}
.nav a[aria-current="page"]{box-shadow:inset 0 -3px 0 #12C4DD}
.menu{display:none;margin-left:auto;position:relative}
.menu summary{list-style:none;cursor:pointer;padding:10px 14px;border:1.5px solid #0A1F44;border-radius:8px;font-weight:600}
.menu summary::-webkit-details-marker{display:none}
.menu ul{position:absolute;right:0;top:52px;list-style:none;margin:0;padding:10px;background:#FFFFFF;border:1px solid #DCE8EF;box-shadow:0 12px 30px rgba(10,31,68,.15);border-radius:10px;min-width:210px;display:flex;flex-direction:column;gap:2px}
.menu ul a{display:block;padding:10px 12px;text-decoration:none;border-radius:6px;color:#0A1F44}
.menu ul a:hover{background:#E8F7FA}
@media (max-width:980px){.nav,.head-cta{display:none}.menu{display:block}}
@media (max-width:420px){.brand-word{font-size:15px}.brand-mark{height:36px}.brand{gap:8px}}

/* hero - light, the brand illustration on aqua-tinted paper */
.hero{background:linear-gradient(180deg,var(--pale),var(--paper));color:var(--ink);padding-block:56px 72px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:44px;align-items:center}
.hero h1{color:var(--ink)}
.hero .lede{color:var(--muted);margin-top:20px}
.hero .btn-line{border-color:var(--ink);color:var(--ink)}
.hero-art img{display:block;width:100%;height:auto}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .hero-art{background:#FDFEF9;border-radius:20px;padding:18px}}
:root[data-theme="dark"] .hero-art{background:#FDFEF9;border-radius:20px;padding:18px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.facts{display:flex;gap:30px;flex-wrap:wrap;margin:34px 0 0}
.facts div{display:flex;flex-direction:column-reverse}
.facts dt{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:0;font-family:var(--display);font-size:24px;color:var(--ink)}
@media (max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-art{max-width:520px}}

/* merch */
.merch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center}
.merch .lede{margin-top:16px}
.merch-img{width:100%;height:auto;border-radius:18px;display:block}
@media (max-width:860px){.merch{grid-template-columns:minmax(0,1fr)}}
.plan{width:100%;height:auto}

/* plan drawing classes (deep backgrounds and light backgrounds share these) */
.pl-ring{fill:#1FB8CC}
.pl-deck{fill:#19ACC0}
.pl-water{fill:#157A99}
.pl-inner{fill:none;stroke:var(--deep);stroke-width:1.5}
.pl-mesh{stroke:rgba(255,255,255,.4);stroke-width:1}
.pl-hole{fill:var(--deep)}
.pl-boat{fill:none;stroke:var(--on-deep-muted);stroke-width:1.5;stroke-dasharray:5 4}
.pl-boat-deck{fill:none;stroke:var(--on-deep-muted);stroke-width:1;stroke-dasharray:3 3}
.pl-line{stroke:var(--on-deep-muted);stroke-width:1.2;stroke-dasharray:4 3}
.pl-person{fill:var(--foam)}
.pl-swimmer{fill:var(--on-deep)}
.pl-label{font-family:var(--mono);font-size:12px;fill:var(--on-deep-muted)}
.hero .plan{background:linear-gradient(transparent,transparent)}

/* bands */
.band{padding-block:80px}
.band-pale{background:var(--pale)}
.band-deep{background:var(--teal);color:var(--on-deep)}
.head-block{display:flex;flex-direction:column;gap:14px;margin-bottom:40px;max-width:780px}
.page-hero{background:var(--deep);color:var(--on-deep);padding-block:56px}
.page-hero h1{color:var(--sand);margin-bottom:16px}
.page-hero .lede{color:var(--on-deep-muted)}

.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
@media (max-width:860px){.trio{grid-template-columns:minmax(0,1fr)}}
.point{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:3px solid var(--buoy)}
.point p{color:var(--muted)}

/* models */
.models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:960px){.models{grid-template-columns:minmax(0,1fr)}}
.model{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.model-feature{border:2px solid var(--buoy)}
.model-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.model-top h3{font-size:26px}
.chip{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--pale);color:var(--ink)}
.model-feature .chip{background:var(--buoy);color:var(--buoy-ink)}
.model-plan{background:var(--deep);border-radius:10px;padding:8px}
.model-plan svg{display:block;width:100%;height:auto}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:15px}
.kv dt{color:var(--muted)}
.kv dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.price{font-family:var(--mono);font-size:14px;color:var(--muted);padding-top:12px;border-top:1px dashed var(--line)}

/* maker */
.maker{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}
.maker p{color:var(--muted);margin-top:16px;max-width:62ch}
@media (max-width:860px){.maker{grid-template-columns:minmax(0,1fr)}}
.pull{display:flex;flex-direction:column;gap:10px;padding:30px;border-radius:14px;background:var(--deep);color:var(--on-deep)}
.pull .mono-num{font-size:56px;color:var(--buoy);line-height:1}
.pull span:last-child{font-family:var(--display);font-size:18px;letter-spacing:.01em;text-transform:uppercase;color:var(--sand);line-height:1.2}

.cta-band{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{color:var(--sand)}
.cta-band p{color:var(--on-deep-muted);margin-top:10px;max-width:56ch}

/* product */
.two-col{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:44px;align-items:start}
@media (max-width:900px){.two-col{grid-template-columns:minmax(0,1fr)}}
.detail-wrap{background:var(--deep);border-radius:14px;padding:14px;overflow-x:auto}
.detail{width:100%;min-width:520px;height:auto;display:block}
.dim line{stroke:var(--on-deep-muted);stroke-width:1}
.dim text{font-family:var(--mono);font-size:12px;fill:var(--on-deep)}
.callout circle{fill:var(--paper);stroke:var(--deep);stroke-width:2}
.callout text{font-family:var(--mono);font-size:12px;font-weight:500;fill:var(--ink)}
.parts{margin:18px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:14px}
.parts li{padding-left:6px;color:var(--muted)}
.parts b{color:var(--ink)}
.section-wrap{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;overflow-x:auto}
.section-svg{display:block;width:100%;min-width:560px;height:auto}
.sx-water{fill:rgba(18,196,221,.22)}
.sx-boat{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 4}
.sx-deck{fill:#19ACC0}
.sx-beam{fill:#1FB8CC;stroke:var(--deep)}
.sx-net{stroke:var(--teal);stroke-width:3}
.sx-open{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 5}
.sx-person{fill:var(--teal)}
.sx-limb{fill:none;stroke:var(--teal);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.sx-swim{fill:var(--teal)}
.sx-t{font-family:var(--mono);font-size:13px;fill:var(--ink)}
.sx-small{font-size:11px;fill:var(--muted)}
.table-wrap{overflow-x:auto;margin-top:36px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.specs{border-collapse:collapse;width:100%;min-width:620px;font-variant-numeric:tabular-nums}
.specs caption{text-align:left;padding:14px 16px;font-family:var(--mono);font-size:13px;color:var(--muted)}
.specs th,.specs td{padding:12px 16px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.specs thead th{background:var(--deep);color:var(--on-deep);font-family:var(--display);font-weight:400;font-size:14px;letter-spacing:.02em;text-transform:uppercase;border-top:0}
.specs tbody th{font-weight:600;color:var(--muted)}
.common{margin-top:36px}
.common h3{margin-bottom:14px}
.ticks,.crosses{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ticks li,.crosses li{position:relative;padding-left:28px}
.ticks li::before{content:"";position:absolute;left:0;top:.45em;width:14px;height:8px;border-left:3px solid var(--buoy);border-bottom:3px solid var(--buoy);transform:rotate(-45deg)}
.crosses li::before,.crosses li::after{content:"";position:absolute;left:4px;top:.75em;width:14px;height:3px;background:var(--warn);transform:rotate(45deg)}
.crosses li::after{transform:rotate(-45deg)}

/* steps */
.steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
@media (max-width:900px){.steps{grid-template-columns:minmax(0,1fr)}}
.steps li{counter-increment:s;display:flex;flex-direction:column;gap:10px}
.steps li::before{content:counter(s);font-family:var(--display);font-weight:400;font-size:64px;line-height:1;color:var(--buoy)}
.steps p{color:var(--muted)}

/* safety */
.safety-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
@media (max-width:820px){.safety-grid{grid-template-columns:minmax(0,1fr)}}
.card-s{padding:24px;border-radius:14px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:16px}
.card-warn{border-color:var(--warn)}
.safety-list{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:0;margin:0}
.safety-list dt,.safety-list dd{padding:14px 0;border-top:1px solid var(--line);margin:0}
.safety-list dt{font-weight:700;padding-right:16px}
.safety-list dd{color:var(--muted)}
@media (max-width:640px){.safety-list{grid-template-columns:minmax(0,1fr)}.safety-list dd{border-top:0;padding-top:0}}

.prose{max-width:760px;display:flex;flex-direction:column;gap:18px}
.prose p{color:var(--muted)}
.prose .lede{color:var(--ink)}

/* faq */
.faq{max-width:820px}
.faq details{border-top:1px solid var(--line);padding-block:18px}
.faq summary{cursor:pointer;font-weight:700;font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--buoy);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"\2013"}
.faq details p{margin-top:10px;color:var(--muted);max-width:66ch}

/* pre-order */
.pre-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:start}
@media (max-width:860px){.pre-grid{grid-template-columns:minmax(0,1fr)}}
.terms{list-style:none;counter-reset:t;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}
.terms li{counter-increment:t;display:grid;grid-template-columns:48px minmax(0,1fr);gap:4px 14px}
.terms li::before{content:counter(t);grid-row:span 2;font-family:var(--display);font-weight:400;font-size:40px;line-height:1;color:var(--buoy)}
.terms span{color:var(--muted)}
form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:28px;border-radius:14px;background:var(--deep);color:var(--on-deep)}
@media (max-width:520px){form{grid-template-columns:minmax(0,1fr);padding:20px}}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
label{font-size:14px;font-weight:700}
input,select,textarea{font:16px var(--body);padding:12px 14px;border-radius:8px;border:1px solid rgba(238,246,244,.28);background:rgba(0,0,0,.2);color:var(--on-deep);min-height:48px;width:100%}
textarea{min-height:96px;resize:vertical}
select option{color:#0A2E37;background:#fff}
.form-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.small{font-size:13px;color:var(--on-deep-muted);max-width:42ch}
.status{grid-column:1/-1;font-weight:700;padding:12px 14px;border-radius:8px;background:rgba(0,0,0,.25)}
.status.ok{color:#9FE3C4}
.status.bad{color:#FFB9A6}

/* footer */
.site-foot{background:var(--deep);color:var(--on-deep-muted);padding-block:48px 28px;font-size:15px}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:36px}
@media (max-width:760px){.foot-grid{grid-template-columns:minmax(0,1fr)}}
.foot-brand p{margin-top:14px;max-width:44ch}
.site-foot h3{font-size:15px;color:var(--sand);margin-bottom:12px}
.foot-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.foot-links a{text-decoration:none}
.foot-links a:hover{color:var(--on-deep)}
.copyrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.copyrow .mono{color:var(--on-deep);font-size:17px}
.copy{font:500 13px var(--mono);padding:6px 10px;border-radius:6px;border:1px solid var(--on-deep-muted);background:transparent;color:var(--on-deep);cursor:pointer;min-height:36px}
.small-print{margin-top:32px;padding-top:18px;border-top:1px solid rgba(169,201,198,.2);font-size:13px}
.site-foot .muted{color:var(--on-deep-muted)}
.price .rrp{font-family:var(--display);font-size:22px;color:var(--ink);letter-spacing:0}
.price .eb{color:var(--aqua-ink);font-weight:500}
.custom{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-top:20px;padding:24px 26px;border-radius:14px;border:2px dashed var(--buoy);background:var(--card)}
.custom > div{max-width:68ch;display:flex;flex-direction:column;gap:8px}
.custom .eyebrow{margin-bottom:0}
.custom p:not(.eyebrow){color:var(--muted)}
/* deterrent pods extra */
.extras{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;margin-top:20px;padding:26px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
@media (max-width:820px){.extras{grid-template-columns:minmax(0,1fr)}}
.extras-copy{display:flex;flex-direction:column;gap:10px}
.extras-copy .eyebrow{margin-bottom:0}
.extras-copy p:not(.eyebrow){color:var(--muted)}
.ex-svg{width:100%;height:auto;display:block}
.ex-water{fill:rgba(18,196,221,.14)}
.ex-surface{stroke:#12C4DD;stroke-width:2}
.ex-netbg{fill:rgba(18,196,221,.08)}
.ex-net{stroke:var(--aqua-ink);stroke-width:1;opacity:.45}
.ex-float{fill:#1FB8CC;stroke:#0A1F44;stroke-width:1.5}
.ex-lead{stroke:var(--ink);stroke-width:4;stroke-linecap:round}
.ex-drop{stroke:var(--muted);stroke-width:1.5}
.ex-pod{fill:var(--ink);stroke:#12C4DD;stroke-width:4}
.ex-t{font-family:var(--mono);font-size:11px;fill:var(--muted)}
.ex-t-net{fill:var(--ink);font-size:12px}
.ex-t-pod{fill:var(--ink)}
.field.check{flex-direction:row;align-items:center;gap:10px}
.field.check input{width:22px;min-height:22px;height:22px;flex:none;accent-color:#F7901E}
/* pump kit */
.pump-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:44px;align-items:center}
@media (max-width:900px){.pump-wrap{grid-template-columns:minmax(0,1fr)}}
.pump-copy{display:flex;flex-direction:column;gap:14px}
.pump-copy .eyebrow{margin-bottom:0}
.pump-copy > p:not(.eyebrow){color:var(--muted)}
.pump-svg{width:100%;height:auto;display:block;background:var(--pale);border-radius:14px;padding:10px}
.pk-boat{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 4}
.pk-batt{fill:var(--ink)}
.pk-pump{fill:#F7901E;stroke:var(--ink);stroke-width:1.2}
.pk-lead{fill:none;stroke:var(--ink);stroke-width:1.5}
.pk-float{fill:#1FB8CC;stroke:#0A1F44;stroke-width:1.2}
.pk-deck{fill:#19ACC0}
.pk-water{fill:#157A99}
.pk-hose{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round}
.pk-hose2{stroke:#0A1F44;stroke-width:2.5;stroke-linecap:round}
.pk-valve{fill:#FFFFFF;stroke:#0A1F44;stroke-width:2}
.pk-fill{fill:#0A1F44;stroke:#FFFFFF;stroke-width:1.5}
.pk-t{font-family:var(--mono);font-size:11px;fill:var(--ink);font-weight:500}
.pk-s{font-family:var(--mono);font-size:10px;fill:var(--muted)}
.pk-water ~ .pk-t,.pk-water ~ .pk-s{fill:#FFFFFF}
/* renders */
.hero-photo{margin:0;display:flex;flex-direction:column;gap:8px}
.hero-photo img{border-radius:18px;box-shadow:0 24px 60px rgba(10,31,68,.18);display:block;width:100%;height:auto}
.hero-photo figcaption,.gallery figcaption{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.04em}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gallery figure{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.gallery img{width:100%;height:auto;display:block;border-radius:14px}
.gallery .g-wide{grid-column:1/-1}
@media (max-width:700px){.gallery{grid-template-columns:minmax(0,1fr)}}
/* logo */
.brand .logo{height:52px;width:auto;display:block}
.brand .logo-d{display:none}
.brand-foot .logo{height:64px}
@media (max-width:420px){.brand .logo{height:38px}}
.merch-img{background:#FFFFFF}
/* colour picker */
.picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:44px;align-items:center}
@media (max-width:900px){.picker{grid-template-columns:minmax(0,1fr)}}
.picker-copy{display:flex;flex-direction:column;gap:14px}
.picker-copy .eyebrow{margin-bottom:0}
.swatches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:6px}
.swatch{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font:500 15px var(--body);cursor:pointer;text-align:left}
.swatch:hover{border-color:var(--muted)}
.swatch[aria-pressed="true"]{border-color:var(--ink);box-shadow:0 0 0 2px var(--ink) inset}
.swatch .dot{width:22px;height:22px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(10,31,68,.25);flex:none}
.small-note{font-size:14px}
.picker-view{margin:0;display:flex;flex-direction:column;gap:8px}
.picker-view img{width:100%;height:auto;display:block;border-radius:16px}
.picker-view figcaption{font-family:var(--mono);font-size:12px;color:var(--muted)}
.colour-teaser{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted)}
.mini-dots{display:inline-flex;gap:4px}
.mini-dots i{width:14px;height:14px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(10,31,68,.25)}
.copyrow a.mono{text-decoration:none}
/* accessories */
.accs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.accs-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.accs,.accs-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.accs,.accs-4{grid-template-columns:minmax(0,1fr)}}
.acc{display:flex;flex-direction:column;border-radius:14px;background:var(--card);border:1px solid var(--line);overflow:hidden}
.acc-vis{background:#E3F6FA;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.acc-vis img{width:100%;height:100%;object-fit:cover;background:#fff}
.acc-ico{width:62%;height:auto}
.a-fill{fill:#1FB8CC;stroke:#0A1F44;stroke-width:2}
.a-dark{fill:#0A1F44}
.a-ring{fill:none;stroke:#0A1F44;stroke-width:3}
.a-line{fill:none;stroke:#0A1F44;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.a-thick{stroke-width:5}
.a-net{fill:none;stroke:#0A1F44;stroke-width:1.2;opacity:.6}
.a-mesh{fill:#C9EEF4;stroke:#0A1F44;stroke-width:2.5}
.a-fine{fill:#C9EEF4;stroke:none}
.a-glow{fill:#FFD86B;stroke:#0A1F44;stroke-width:1.5}
.acc-body{display:flex;flex-direction:column;gap:10px;padding:18px 20px 20px;flex:1}
.acc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.acc-top h3{font-size:17px}
.acc-body > p:not(.price){color:var(--muted);font-size:15px}
.acc-body .price{margin-top:auto}
.small-ticks{gap:6px;font-size:14px;color:var(--muted)}
.chip.st-inc{background:#D9F5E6;color:#0D5E3A}
.chip.st-opt{background:#E3F6FA;color:#00556B}
.chip.st-dev{background:#FFF1E0;color:#8A4A00}
.chip.st-soon{background:#ECEFF5;color:#3A4A66}
.chip{white-space:nowrap}
.acc-pick{border:0;padding:0;margin:0}
.acc-pick legend{font-size:14px;font-weight:700;margin-bottom:8px;padding:0}
.acc-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
.acc-checks label{display:flex;align-items:center;gap:8px;font-weight:500;font-size:15px}
.acc-checks input{width:20px;min-height:20px;height:20px;flex:none;accent-color:#F7901E}
@media (max-width:520px){.acc-checks{grid-template-columns:minmax(0,1fr)}}
.acc-top{flex-direction:column-reverse;align-items:flex-start;gap:8px}
.acc-feature{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);margin-bottom:20px}
.acc-feature .acc-vis{aspect-ratio:1400/640;align-self:center;background:transparent}
.acc-feature .acc-top h3{font-size:22px}
@media (max-width:900px){.acc-feature{grid-template-columns:minmax(0,1fr)}}
/* about */
.about-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:center}
@media (max-width:900px){.about-grid{grid-template-columns:minmax(0,1fr)}}
.about-grid .prose .eyebrow{margin-bottom:0}
.about-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.about-facts div{display:flex;flex-direction:column-reverse;gap:4px;padding:20px;background:var(--card)}
.about-facts dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.about-facts dd{margin:0;font-family:var(--display);font-size:24px;color:var(--ink)}
.about-quote{border-left:4px solid #12C4DD;padding:8px 0 8px 22px}
.about-quote p{font-family:var(--display);font-size:22px;line-height:1.3;color:var(--ink)}
.about-ticks{max-width:820px;gap:16px}
.about-ticks li{color:var(--muted)}
.about-ticks b{color:var(--ink)}

/* legal pages + footer extras */
.legal{gap:14px}
.legal h2{margin-top:18px}
.legal ul.ticks{color:var(--muted)}
.legal a{color:var(--aqua-ink)}
.policy-links a,.social a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.small-print p{margin:0 0 6px}
.social{margin-top:8px}
.acc-feature-2{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.acc-duo{display:grid;grid-template-columns:1fr 1fr;gap:2px;aspect-ratio:auto;background:#fff}
.acc-duo img{aspect-ratio:1179/777;height:auto;object-fit:contain;background:#fff}
@media (max-width:900px){.acc-feature-2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.acc-duo{grid-template-columns:1fr}}
.spec-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.spec-pair .table-wrap{margin-top:0}
.specs.spec-detail{min-width:0}
.spec-detail th{width:32%}
.spec-detail caption{font-size:14px;font-weight:700;color:var(--ink,#0f2a44);text-transform:uppercase;letter-spacing:.06em}
@media (max-width:480px){.spec-detail th,.spec-detail td{display:block;width:auto}.spec-detail td{border-top:0;padding-top:0}}
@media (max-width:820px){.spec-pair{grid-template-columns:minmax(0,1fr)}}
.spec-pair + .small-note{margin-top:14px}

/* XL and custom builds */
.xl{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:center;margin-top:22px;padding:28px;border-radius:16px;border:2px dashed var(--buoy);background:var(--card)}
.xl-copy{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.xl-copy .eyebrow{margin-bottom:0}
.xl-copy > p:not(.eyebrow){color:var(--muted)}
.xl-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;color:var(--muted)}
.xl-list b{color:var(--ink)}
.xl-art{margin:0;display:flex;flex-direction:column;gap:8px}
.xl-svg{width:100%;height:auto;display:block;background:var(--pale);border-radius:12px}
.xl-ghost{fill:none;stroke:var(--buoy);stroke-width:1.6;stroke-dasharray:5 4}
.xl-ghost-t{font-family:var(--mono);font-size:9px;fill:var(--buoy)}
.xl-art figcaption{font-family:var(--mono);font-size:12px;color:var(--muted)}
@media (max-width:800px){.xl{grid-template-columns:minmax(0,1fr);padding:22px}}

/* social tiles */
.s-ico{width:22px;height:22px;flex:none}
.social-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.stile{display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:16px;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.stile:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(10,31,68,.14)}
.stile:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.stile-head{display:flex;align-items:center;gap:12px}
.stile-head > span:last-child{display:flex;flex-direction:column;line-height:1.25}
.stile-head .mono{font-family:var(--mono);font-size:13px;color:var(--muted)}
.stile-badge{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff}
.stile-ig .stile-badge{background:linear-gradient(135deg,#F7901E,#E0473F 45%,#8A3AB9)}
.stile-fb .stile-badge{background:#1877F2}
.stile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border-radius:10px;overflow:hidden}
.stile-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.stile-cover{display:block;border-radius:10px;overflow:hidden}
.stile-cover img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.stile-note{color:var(--muted)}
.stile-cta{margin-top:auto;font-weight:600;color:var(--aqua-ink)}
@media (max-width:700px){.social-tiles{grid-template-columns:minmax(0,1fr)}}
.social{display:flex;flex-wrap:wrap;gap:10px}
.social a.soc-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid currentColor;border-radius:999px;text-decoration:none;font-size:14px}
.social a.soc-btn .s-ico{width:18px;height:18px}
.form-btns{display:flex;gap:10px;flex-wrap:wrap}
.acc-vis{overflow:hidden}.accs .acc-vis img{aspect-ratio:16/10}
.accs .acc-vis img[src*="merch-"]{aspect-ratio:504/356}
.accs .acc-vis:has(img[src*="merch-"]){aspect-ratio:504/356}
.accs .acc-vis:has(img[src*="acc-drybags"]),.accs .acc-vis:has(img[src*="acc-poncho"]),.accs .acc-vis:has(img[src*="acc-duffel"]){aspect-ratio:1/1;background:#E6F8FD}
.accs .acc-vis img[src*="acc-drybags"],.accs .acc-vis img[src*="acc-poncho"],.accs .acc-vis img[src*="acc-duffel"]{aspect-ratio:auto;object-fit:contain;background:#E6F8FD}
.accs .acc-vis:has(img[src*="/app-"]){background:#E9F6FB}
.accs .acc-vis img[src*="/app-"]{object-fit:contain;background:#E9F6FB}
.signoff{margin-top:6px;color:var(--ink)}.signoff b{font-family:inherit}

.incl-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px 36px;margin-top:8px}
.incl-list li b{display:block}
.incl-list li span{display:block;color:var(--muted);font-size:.95em;margin-top:2px}
.incl-list + .small-note{margin-top:26px}
