/* Coldstream Boat & Sea-Doo Rentals */
@font-face{font-family:"Young Serif";src:url(/fonts/young-serif-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:optional}
:root{--bg:#f7fbfc;--ink:#12232b;--muted:#4b5f68;--line:#d3e3e7;--acc:#0b5f6e;--acc-d:#074652;--sun:#ffd166;--tint:#e5f4f5;--kal:#1a9aa6;--okl:#1f5f99;
--serif:"Young Serif",Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--r:14px;--sh:0 1px 2px rgba(18,35,43,.06),0 8px 24px rgba(18,35,43,.08)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--ink);font:1.0625rem/1.6 var(--sans);overflow-x:hidden;padding-bottom:60px}
img,svg{max-width:100%;height:auto}
a{color:var(--acc);text-underline-offset:.15em}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2}
h1{font-size:clamp(2rem,5.5vw,3.2rem);margin:.2em 0 .3em}
h2{font-size:clamp(1.45rem,3vw,1.95rem);margin:1.8em 0 .6em}
h2.first{margin-top:0}
h3{font-size:1.2rem;margin:0 0 .2em}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:var(--acc);color:#fff;padding:.6em 1em;z-index:99}.skip:focus{left:8px}
.wrap{width:min(1140px,100% - 32px);margin-inline:auto}
.ico{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em}
.hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.hrow{display:flex;align-items:center;gap:1rem;padding:.55rem 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);margin-right:auto}
.brand b{display:block;font-family:var(--serif);font-weight:400;font-size:1.15rem;line-height:1.15}
.brand i{display:block;font-style:normal;font-size:.78rem;color:var(--muted)}
.pnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.1rem .9rem}
.pnav a{text-decoration:none;color:var(--ink);font-weight:600;font-size:.93rem;padding:.3em 0;display:inline-block;white-space:nowrap}
.pnav a[aria-current]{color:var(--acc);box-shadow:inset 0 -2px 0 var(--sun)}
@media(max-width:860px){.pnav{order:3;width:100%;overflow-x:auto}.pnav ul{flex-wrap:nowrap}.hdr .btn.sm{display:none}}
.btn{display:inline-flex;align-items:center;gap:.45em;background:var(--acc);color:#fff;border:2px solid var(--acc);padding:.7em 1.15em;border-radius:999px;font-weight:700;text-decoration:none;line-height:1.2;cursor:pointer;font-size:1rem}
.btn:hover{background:var(--acc-d);border-color:var(--acc-d);color:#fff}
.btn.alt{background:#fff;color:var(--acc)}.btn.alt:hover{background:var(--tint);color:var(--acc-d)}
.btn.sm{padding:.45em .9em;font-size:.92rem}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btns{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.1rem 0}
.hero{position:relative;min-height:min(80vh,640px);display:grid;align-items:end;color:#fff;overflow:hidden;background:#0b3a44}
.heroimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,30,36,.05) 25%,rgba(4,30,36,.8))}
.herotxt{position:relative;z-index:1;padding:3rem 0 2.4rem}
.hero h1{color:#fff;max-width:17ch}.hero .lede{max-width:52ch;font-size:1.15rem}
.hero .kicker{color:var(--sun)}
.hero .btn.alt{background:rgba(255,255,255,.94)}
.rating{font-weight:600;margin:.3rem 0 0}
.kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:700;color:var(--acc);margin:0}
.phero{background:var(--tint);padding:1.1rem 0 2rem;border-bottom:1px solid var(--line)}
.lede{font-size:1.12rem;max-width:62ch;margin:.3em 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:0 0 .8rem;font-size:.88rem}
.crumbs li+li::before{content:"›";margin-right:.4rem;color:var(--muted)}
.sec{padding:2.6rem 0}.tint{background:var(--tint)}
.cols{display:grid;gap:2rem}
@media(min-width:960px){.cols{grid-template-columns:minmax(0,1fr) 320px}}
.prose{max-width:76ch}.prose li{margin:.3em 0}
.src{font-size:.88rem;color:var(--muted)}
.draft{background:#fff3cd;border:1px solid #f0d27a;padding:.5rem .8rem;border-radius:8px;font-size:.9rem;font-weight:600}
.lakes{display:grid;gap:1rem}@media(min-width:760px){.lakes{grid-template-columns:1fr 1fr}}
.lake{display:block;border-radius:var(--r);padding:1.4rem;color:#fff;text-decoration:none;box-shadow:var(--sh)}
.lake.kal{background:linear-gradient(135deg,#0f8f9a,#1bb3b0)}.lake.okl{background:linear-gradient(135deg,#1f4f86,#2d73b3)}
.lake b{display:block;font-family:var(--serif);font-weight:400;font-size:1.6rem}.lake span{display:block;margin:.3rem 0}.lake em{font-style:normal;font-weight:700;opacity:.95}
.lake:hover{color:#fff;filter:brightness(1.05)}
.steps{list-style:none;counter-reset:s;padding:0;display:grid;gap:1rem}@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{counter-increment:s;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem;box-shadow:var(--sh)}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--sun);font-weight:800;margin-bottom:.4rem}
.steps b{display:block}.steps span{color:var(--muted)}
.bcards{list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:1rem 0}
.bcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.1rem;box-shadow:var(--sh);display:flex;flex-direction:column;gap:.4rem}
.bcard p{margin:.2rem 0}.bcard .meta{color:var(--muted);font-size:.92rem}
.bic{width:64px;height:32px;fill:none;stroke:var(--acc);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.prices{display:flex;gap:1rem;flex-wrap:wrap}.prices b{font-size:1.15rem;color:var(--acc-d)}
.split{display:grid;gap:2rem;align-items:center}@media(min-width:820px){.split{grid-template-columns:1fr 1fr}}
.rimg{border-radius:var(--r);display:block;width:100%;height:auto;object-fit:cover}
.aside .box{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1rem;box-shadow:var(--sh);position:sticky;top:90px}
.aside h2{font-size:1.3rem;margin:.8rem 0 .4rem}
.launches{list-style:none;padding:0}.launches li{display:grid;grid-template-columns:auto 1fr;gap:.1rem .5rem;margin:.6rem 0}
.launches .ico{grid-row:span 2;color:var(--acc);margin-top:.2rem}.launches span{color:var(--muted);font-size:.95rem}
.cards{list-style:none;padding:0;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.cards a{display:block;height:100%;background:#fff;border:1px solid var(--line);border-top:4px solid var(--sun);border-radius:var(--r);padding:1rem;text-decoration:none;color:var(--ink);box-shadow:var(--sh)}
.cards b{display:block;font-family:var(--serif);font-weight:400;font-size:1.15rem;color:var(--acc)}.cards span{color:var(--muted)}
.qa{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem;margin:.6rem 0}
.qa summary{font-weight:700;cursor:pointer}.qa p{margin:.6rem 0 0}
.ask{background:var(--acc-d);color:#fff;padding:2.8rem 0}.ask h2{color:#fff;margin-top:.2em}.ask .kicker{color:var(--sun)}
.askgrid{display:grid;gap:1.5rem}@media(min-width:860px){.askgrid{grid-template-columns:1.4fr 1fr;align-items:center}}
.askcard{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:var(--r);padding:1.2rem}
.askcard .lbl{margin:0;font-size:.85rem;opacity:.9}.askcard .big{margin:.1rem 0 .9rem;font-family:var(--serif);font-size:1.6rem}
.ask a:not(.btn){color:#fff}
.ftr{background:#0a1f26;color:#cfe0e4;padding:2.5rem 0 1rem;font-size:.95rem}
.ftr h2{color:#fff;font-size:1.1rem;margin:0 0 .5rem}.ftr a{color:#fff}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin:.25em 0}
.fgrid{display:grid;gap:1.5rem}@media(min-width:760px){.fgrid{grid-template-columns:repeat(3,1fr)}.legal{grid-column:1/-1}}
.legal{border-top:1px solid rgba(255,255,255,.15);padding-top:1rem;font-size:.84rem;color:#a9c0c6}
.dock{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(0,0,0,.06)}
.dock a{display:flex;flex-direction:column;align-items:center;padding:.5rem 0;text-decoration:none;font-size:.8rem;font-weight:700;color:var(--acc)}
@media(min-width:900px){.dock{display:none}body{padding-bottom:0}}
:focus-visible{outline:3px solid var(--sun);outline-offset:2px}
/* booking */
.bk{display:grid;gap:1.2rem;max-width:860px}
.bk fieldset{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:1rem 1.1rem;margin:0}
.bk legend{font-family:var(--serif);font-size:1.2rem;padding:0 .3rem}
.fld{display:grid;gap:.3rem;font-weight:600;font-size:.95rem;margin:.4rem 0}
.fld input,.fld textarea,.fld select{font:inherit;font-weight:400;padding:.6rem .7rem;border:1px solid #b9cfd4;border-radius:8px;background:#fff;width:100%}
.row{display:grid;gap:.8rem}@media(min-width:640px){.row{grid-template-columns:1fr 1fr}}
.opt{font-weight:400;color:var(--muted)}
.hint{color:var(--muted);font-size:.93rem;margin:.4rem 0}.err{color:#a4161a;font-weight:600}
.seg{display:flex;flex-wrap:wrap;gap:.5rem}.seg.col{flex-direction:column}
.seg label{cursor:pointer}.seg input,.slot input{position:absolute;opacity:0}
.seg span{display:block;border:2px solid var(--line);border-radius:10px;padding:.55rem .9rem;font-weight:600}
.seg input:checked+span{border-color:var(--acc);background:var(--tint)}
.seg input:focus-visible+span,.slot input:focus-visible+span{outline:3px solid var(--sun)}
.seg em{font-style:normal;color:var(--acc-d)}
.brow{border-top:1px solid var(--line);padding:.8rem 0;display:grid;gap:.5rem}@media(min-width:700px){.brow{grid-template-columns:240px 1fr;align-items:center}}
.brow:first-child{border-top:0}
.bname{display:flex;gap:.6rem;align-items:center}.bname b{display:block}.bname span{color:var(--muted);font-size:.9rem}
.slots{display:flex;flex-wrap:wrap;gap:.5rem}
.slot{cursor:pointer;position:relative}
.slot span{display:block;border:2px solid var(--line);border-radius:10px;padding:.45rem .75rem;font-size:.92rem;min-width:9.5rem}
.slot em{display:block;font-style:normal;font-weight:700;color:var(--acc-d)}
.slot input:checked+span{border-color:var(--acc);background:var(--tint)}
.slot.off{cursor:not-allowed;opacity:.5}.slot.off em{color:var(--muted)}
.summary{background:#fff;border:2px solid var(--acc);border-radius:var(--r);padding:1rem 1.1rem}
.summary table{width:100%;border-collapse:collapse}.summary td{padding:.35rem 0;border-bottom:1px solid var(--line)}.summary td:last-child{text-align:right;white-space:nowrap}
.summary .tot td{font-weight:700}.summary .pay td{background:var(--tint)}
.agree{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}.agree input{margin-top:.3rem;width:1.1rem;height:1.1rem}
.hp{position:absolute;left:-9999px}
.fmsg{font-weight:600;color:#a4161a}
.done{background:#fff;border:2px solid var(--acc);border-radius:var(--r);padding:1.4rem;max-width:760px}
/* dashboards */
.dash{padding:1.5rem 0}.login{max-width:360px}
.dbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:end;margin:1rem 0}
.totals{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:1rem 0}
.totals div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.7rem}.totals b{display:block;font-size:1.4rem}.totals span{color:var(--muted);font-size:.88rem}
.bk-item{background:#fff;border:1px solid var(--line);border-left:6px solid var(--line);border-radius:10px;padding:.7rem 1rem;margin:.6rem 0}
.bk-item p{margin:.25rem 0}.bk-item .ref{color:var(--muted);font-size:.85rem}
.st-requested{border-left-color:#f0a202}.st-confirmed{border-left-color:#2a9d8f}.st-declined,.st-cancelled{border-left-color:#999;opacity:.75}.st-completed{border-left-color:#1f5f99}
.pill{background:var(--tint);border-radius:999px;padding:.1rem .6rem;font-size:.8rem;font-weight:700;text-transform:uppercase}
.acts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}
.note{color:var(--muted);font-style:italic}.money{font-size:.95rem}
.blk{margin:1.5rem 0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.7rem 1rem}
.tier .big{font-size:1.2rem;margin:.2rem 0}.tier .big b{font-family:var(--serif);font-size:1.8rem;color:var(--acc-d)}.tier .save{color:#1a7f4b;font-weight:700}

.bkview .pill{display:inline-block}
.bkview .acts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}
