@font-face{font-family:Albert Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/albert-sans-147d02b2-Bo6Z2wYA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Albert Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/albert-sans-ebfcbb01-BJ0ssN8N.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/lilita-one-fdf205b1-87r-Z-Re.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sand: #f6efe2;--sand-2: #ece1cc;--paper: #fffaf0;--foam: #d8ebe8;--ink: #0d3341;--ink-2: #43616b;--ink-soft: #9bb8bf;--sea: #0b6b77;--wax: #f5c34a;--wax-deep: #e6ac25;--coral: #e2582f;--error: #a63a1c;--line: rgb(13 51 65 / .16);--line-strong: rgb(13 51 65 / .38);--display: "Lilita One", "Albert Sans", system-ui, sans-serif;--body: "Albert Sans", system-ui, sans-serif;--fs-hero: clamp(2.9rem, 1.4rem + 4.6vw, 5.75rem);--fs-h1: clamp(2.6rem, 1.6rem + 3.4vw, 4.75rem);--fs-h2: clamp(2rem, 1.4rem + 2.1vw, 3.25rem);--fs-h3: clamp(1.3rem, 1.15rem + .55vw, 1.65rem);--fs-lede: clamp(1.1rem, 1rem + .4vw, 1.3rem);--r: 14px;--r-lg: 18px;--wrap: 1240px;--pad: clamp(1.25rem, 4vw, 3rem);--section: clamp(4rem, 3rem + 5vw, 7.5rem);--ease: cubic-bezier(.16, 1, .3, 1);color-scheme:light;font-family:var(--body);font-size:100%;line-height:1.6;color:var(--ink);background:var(--sand);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;accent-color:var(--sea);scrollbar-color:var(--ink-2) var(--sand-2)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:clip}img,svg{display:block;max-width:100%}img{height:auto}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:-.005em;margin:0 0 .5em;text-wrap:balance}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);line-height:1.12}p{margin:0 0 1em;text-wrap:pretty}ul,ol{margin:0;padding:0}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.22em}a:hover{text-decoration-color:var(--wax-deep)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}fieldset{border:0;margin:0;padding:0;min-width:0}::selection{background:var(--wax);color:var(--ink)}input,textarea{caret-color:var(--sea)}:focus-visible{outline:3px solid var(--sea);outline-offset:3px;border-radius:6px}.num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{width:min(100% - 2 * var(--pad),var(--wrap));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:50;background:var(--ink);color:var(--sand);padding:.75rem 1.1rem;border-radius:10px;font-weight:600}.skip-link:focus{top:1rem}main{display:block;outline:none}.page-enter{animation:rise .6s var(--ease)}@keyframes rise{0%{opacity:.25;transform:translateY(14px)}}.lede{font-size:var(--fs-lede);line-height:1.5;max-width:58ch;color:var(--ink-2)}.quiet{font-size:.88rem;color:var(--ink-2);margin:.75rem 0 0}.section{padding-block:var(--section)}.section-head{max-width:62ch;margin-bottom:clamp(2rem,1.5rem + 2vw,3.25rem)}.section-head p{color:var(--ink-2);font-size:1.08rem;margin:0}.section-head.row{max-width:none;display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem 2rem}.section-head.row h2{margin:0}.text-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:650;min-height:40px}.text-link svg{transition:transform .3s var(--ease)}.text-link:hover svg{transform:translate(4px)}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.back{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;min-height:40px;text-decoration:none;margin-bottom:1rem}.back:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:50px;padding:0 1.45rem;border-radius:999px;border:2px solid transparent;font-weight:650;font-size:1rem;line-height:1.15;text-decoration:none;text-align:center;transition:background-color .2s,color .2s,border-color .2s,transform .2s var(--ease)}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:progress;opacity:.65}.btn-ink{background:var(--ink);color:var(--sand)}.btn-ink:hover{background:var(--sea)}.btn-wax{background:var(--wax);color:var(--ink)}.btn-wax:hover{background:var(--wax-deep)}.btn-line{border-color:var(--ink);color:var(--ink)}.btn-line:hover{background:var(--ink);color:var(--sand)}.btn-line-light{border-color:var(--sand);color:var(--sand)}.btn-line-light:hover{background:var(--sand);color:var(--ink)}.btn-sm{min-height:42px;padding:0 1.1rem}.btn-lg{min-height:56px;padding:0 1.8rem;font-size:1.05rem}.pills{display:flex;flex-wrap:wrap;gap:.5rem}.pills legend,.filter-selects label>span,.fc-range>span{display:block;width:100%;font-size:.85rem;font-weight:650;color:var(--ink-2);margin-bottom:.5rem}.pills label{position:relative}.pills input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.pills label>span{display:inline-flex;align-items:center;gap:.3rem;min-height:42px;padding:0 1rem;border-radius:999px;border:1.5px solid var(--line-strong);font-weight:600;font-size:.95rem;transition:background-color .2s,color .2s,border-color .2s}.pills label:hover>span{border-color:var(--ink)}.pills input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--sand)}.pills input:focus-visible+span{outline:3px solid var(--sea);outline-offset:3px}.pills small{font-size:.8rem;color:inherit;opacity:.85}select,input:not([type=checkbox],[type=radio],[type=range]),textarea{width:100%;min-height:50px;padding:.7rem .95rem;border:1.5px solid var(--line-strong);border-radius:10px;background:var(--paper);transition:border-color .2s}textarea{resize:vertical}select{appearance:none;padding-right:2.6rem;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d3341' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 1rem center}select:hover,input:hover,textarea:hover{border-color:var(--ink-2)}select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--sea);outline-offset:1px;border-color:var(--sea)}::placeholder{color:var(--ink-2);opacity:.85}.tag{display:inline-block;padding:.15rem .6rem;border-radius:999px;background:var(--wax);color:var(--ink);font-weight:650;font-size:.82rem}.tags{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .75rem;font-size:.9rem;color:var(--ink-2);margin-bottom:.75rem}.ticks{list-style:none;display:grid;gap:.55rem;margin-bottom:1.25rem}.ticks li{position:relative;padding-left:1.7rem}.ticks li:before{content:"";position:absolute;left:0;top:.62em;width:1rem;height:.42rem;border-radius:99px;background:var(--wax);box-shadow:inset 0 0 0 1.5px var(--wax-deep)}.ticks.big{font-size:1.15rem;gap:.9rem}.field{display:grid;gap:.35rem;align-content:start}.field label,.check label{font-weight:650;font-size:.95rem}.field-hint{font-size:.85rem;color:var(--ink-2);margin:0}.field-error{font-size:.88rem;font-weight:600;color:var(--error);margin:.1rem 0 0}.field[data-invalid] input,.field[data-invalid] select,.field[data-invalid] textarea{border-color:var(--error);box-shadow:0 0 0 1px var(--error)}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.1rem}.check{display:grid;grid-template-columns:26px 1fr;gap:.25rem .8rem;align-items:start;padding:1rem 1.1rem;border-radius:var(--r);background:var(--paper);border:1.5px solid var(--line)}.check[data-invalid]{border-color:var(--error)}.check input{width:24px;height:24px;margin:.1rem 0 0}.check .field-error{grid-column:2}.form-success{font-weight:600;padding:1rem 1.1rem;border-radius:var(--r);background:#f5c34a2e;border:1.5px solid var(--wax)}.site-header{position:sticky;top:0;z-index:20;background:#f6efe2f7;border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;gap:1.5rem;min-height:74px}.logo{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--display);font-size:1.9rem;line-height:1;min-height:44px}.logo-mark{width:40px;height:40px;transition:transform .5s var(--ease)}.logo:hover .logo-mark{transform:rotate(-8deg)}.site-nav{margin-left:auto}.site-nav ul{list-style:none;display:flex;gap:.25rem}.site-nav a:not(.btn){display:inline-flex;align-items:center;min-height:44px;padding:0 .8rem;font-weight:600;text-decoration:none;border-radius:999px}.site-nav a:not(.btn):hover{background:var(--sand-2)}.site-nav a[data-active]{text-decoration:underline;text-decoration-color:var(--wax-deep);text-decoration-thickness:3px;text-underline-offset:.45em}.nav-cta{display:none}.header-actions{display:flex;align-items:center;gap:.6rem}.header-cta{min-height:46px}.nav-toggle{display:none;width:46px;height:46px;border-radius:12px;border:1.5px solid var(--line-strong);background:transparent;align-items:center;justify-content:center}@media(max-width:960px){.nav-toggle{display:inline-flex}.header-actions{margin-left:auto}.site-nav{position:absolute;top:100%;left:0;right:0;margin:0;background:var(--sand);border-bottom:1px solid var(--line);box-shadow:0 24px 40px -24px #0d334159;padding:.75rem var(--pad) 1.5rem;display:none}.site-nav[data-open]{display:block;animation:drop .35s var(--ease)}.site-nav ul{flex-direction:column;gap:0}.site-nav a:not(.btn){width:100%;min-height:54px;font-family:var(--display);font-size:1.6rem;font-weight:400;padding:0;border-radius:0;border-bottom:1px solid var(--line)}.site-nav a:not(.btn):hover{background:none;color:var(--sea)}.nav-cta{display:flex;margin-top:1.25rem;width:100%}}@media(max-width:520px){.header-cta{display:none}}@keyframes drop{0%{opacity:0;transform:translateY(-8px)}}.hero{position:relative;padding-top:clamp(2rem,1rem + 3vw,4rem);padding-bottom:clamp(5rem,4rem + 4vw,8rem);overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(2rem,1rem + 3vw,4.5rem);align-items:center}.hero h1{font-size:var(--fs-hero);line-height:.95;margin-bottom:.35em}.hero-prices{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin-top:2.25rem;border-top:1.5px solid var(--ink)}.hero-prices li+li{border-left:1px solid var(--line)}.hero-prices a{display:grid;gap:.1rem;padding:.85rem .9rem .25rem;text-decoration:none;min-height:44px}.hero-prices li:first-child a{padding-left:0}.hero-prices strong{font-family:var(--display);font-weight:400;font-size:1.2rem;line-height:1.15}.hero-prices a:hover strong{color:var(--sea)}.hero-prices span{font-size:.9rem;color:var(--ink-2)}.hero-figure{position:relative;margin:0}.hero-figure img{width:100%;aspect-ratio:5 / 4;object-fit:cover;border-radius:var(--r-lg)}.today{position:absolute;left:clamp(-3rem,-2vw,-1rem);bottom:-2.25rem;display:grid;gap:.15rem;width:min(300px,80%);padding:1.1rem 1.25rem 1rem;border-radius:var(--r);background:var(--ink);color:var(--sand);text-decoration:none;box-shadow:0 18px 40px -18px #0d33418c;transition:transform .3s var(--ease)}.today:hover{transform:translateY(-3px)}.today-label{font-size:.88rem;color:var(--ink-soft)}.today-wave{font-family:var(--display);font-size:2.6rem;line-height:1;color:var(--wax)}.today-detail{font-size:.92rem}.today-rating{justify-self:start;margin-top:.5rem;padding:.2rem .6rem;border-radius:999px;font-size:.82rem;font-weight:700;background:var(--sand);color:var(--ink)}.today-rating[data-r=good]{background:var(--wax)}.today-more{display:inline-flex;align-items:center;gap:.35rem;margin-top:.6rem;font-weight:650;font-size:.9rem}.contours{position:absolute;left:-60px;right:-60px;bottom:0;width:calc(100% + 120px);max-width:none;height:clamp(70px,9vw,120px);fill:none;stroke:var(--sea);stroke-width:1.5;opacity:.45;pointer-events:none}.contours path{animation:swell 9s ease-in-out infinite alternate}.contours path:nth-child(2){animation-duration:11s;animation-delay:-3s}.contours path:nth-child(3){animation-duration:13s;animation-delay:-6s}@keyframes swell{to{transform:translate(-48px)}}.lessons-rack{padding-top:clamp(3rem,2rem + 3vw,5rem)}.rack{list-style:none;border-top:1.5px solid var(--ink)}.rack-row{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1.5fr) auto auto;gap:1.5rem 2rem;align-items:center;padding-block:1.4rem;border-bottom:1px solid var(--line)}.rack-row img{width:150px;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px}.rack-name h3{margin:0 0 .2rem;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}.rack-name p,.rack-summary{margin:0;color:var(--ink-2)}.rack-summary{font-size:.97rem;max-width:52ch}.rack-price{display:grid;margin:0;text-align:right}.rack-price .num{font-family:var(--display);font-size:2rem;line-height:1}.rack-price small{font-size:.82rem;color:var(--ink-2);white-space:nowrap}.more-line{margin-top:1.5rem;color:var(--ink-2)}.forecast-band{background:var(--foam)}.fc{background:var(--paper);border-radius:var(--r-lg);padding:clamp(1rem,.5rem + 2vw,2rem);box-shadow:0 30px 60px -40px #0d334173}.fc-page .fc{box-shadow:none;border:1px solid var(--line)}.fc-controls{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem;margin-bottom:1.5rem}.fc-days{display:grid;grid-template-columns:repeat(7,minmax(92px,1fr));gap:.5rem;overflow-x:auto;padding:4px;margin:-4px -4px 1.5rem;scrollbar-width:thin}.fc-day{position:relative;display:grid;gap:.1rem;justify-items:start;padding:.7rem .75rem .65rem;border-radius:12px;border:1.5px solid var(--line);background:var(--sand);text-align:left;transition:background-color .2s,color .2s,border-color .2s}.fc-day:hover{border-color:var(--ink-2)}.fc-day[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--sand)}.fc-day-name{font-weight:700}.fc-day-date{font-size:.82rem;opacity:.85}.fc-day-wave{font-family:var(--display);font-size:1.25rem;margin-top:.15rem}.fc-strip{display:flex;gap:2px;width:100%;margin-top:.35rem}.fc-strip i{flex:1;height:6px;border-radius:2px}[data-r=good]{--r-color: var(--sea)}[data-r=fair]{--r-color: var(--wax)}[data-r=poor]{--r-color: rgb(13 51 65 / .18)}.fc-strip i{background:var(--r-color)}.fc-day[aria-pressed=true] [data-r=poor]{--r-color: rgb(246 239 226 / .25)}.fc-day[aria-pressed=true] [data-r=good]{--r-color: #4fb3bd}.fc-body{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:clamp(1rem,.5rem + 2vw,2rem);align-items:start}.fc-scroll{overflow-x:auto;scrollbar-width:thin}.fc-scroll svg{min-width:600px;width:100%;touch-action:pan-y;cursor:pointer;-webkit-user-select:none;user-select:none}.fc-cursor{fill:#f5c34a52;transition:transform .35s var(--ease)}.fc-grid line{stroke:var(--line);stroke-dasharray:2 4}.fc-grid text,.fc-lane{font-size:11px;fill:var(--ink-2)}.fc-lane{text-anchor:end}.fc-bar{fill:var(--r-color);transform-box:fill-box;transform-origin:50% 100%;transition:transform .55s var(--ease),fill .3s}.fc-val{font-size:12px;font-weight:700;fill:var(--ink);text-anchor:middle;transition:y .55s var(--ease)}.fc-tide{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:5 4;stroke-linecap:round}.fc-wind path{fill:var(--ink-2)}.fc-wind[data-off] path{fill:var(--sea)}.fc-mph,.fc-hour{font-size:12px;fill:var(--ink-2);text-anchor:middle}.fc-hour{font-weight:700;fill:var(--ink)}.fc-range{display:block;margin-top:.75rem}.fc-range input{width:100%;height:32px;accent-color:var(--ink);cursor:pointer}.fc-legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin:.5rem 0 0;font-size:.85rem;color:var(--ink-2)}.fc-legend [data-r]:before,.fc-legend-tide:before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:.35rem;vertical-align:-1px;background:var(--r-color)}.fc-legend-tide:before{height:0;border-top:2px dashed var(--ink);border-radius:0;vertical-align:3px}.fc-readout{background:var(--ink);color:var(--sand);border-radius:var(--r);padding:1.4rem 1.4rem 1.5rem}.fc-when{font-size:.9rem;color:var(--ink-soft);margin:0}.fc-big{font-family:var(--display);font-size:clamp(3.5rem,3rem + 2vw,4.75rem);line-height:1;color:var(--wax);margin:.4rem 0 0}.fc-big small{font-size:.4em;margin-left:.2rem}.fc-size{font-weight:650;margin:0 0 1rem}.fc-facts{display:grid;gap:.35rem;margin:0 0 1.1rem;padding:.9rem 0;border-block:1px solid rgb(246 239 226 / .2)}.fc-facts div{display:flex;justify-content:space-between;gap:1rem}.fc-facts dt{color:var(--ink-soft)}.fc-facts dd{margin:0;display:inline-flex;align-items:center;gap:.3rem;text-align:right}.fc-facts svg{color:var(--wax);transition:transform .4s var(--ease)}.fc-verdict{font-size:.97rem}.fc-verdict strong{display:inline-block;margin-right:.3rem;padding:.05rem .55rem;border-radius:999px;font-size:.82rem;background:var(--sand);color:var(--ink)}.fc-verdict[data-r=good] strong{background:#4fb3bd}.fc-verdict[data-r=fair] strong{background:var(--wax)}.fc-readout .btn{width:100%;margin-top:.25rem}.fc-note{margin-top:1.25rem}.method-grid .section-head{margin-bottom:2.5rem}.stages{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.stage-n{display:block;font-family:var(--display);font-size:clamp(3.5rem,2.5rem + 3vw,5.5rem);line-height:.9;color:var(--sea);margin-bottom:.75rem}.stages li[data-stage="1"] .stage-n{color:var(--ink-2)}.stages li[data-stage="2"] .stage-n{color:var(--ink)}.stages p{color:var(--ink-2);max-width:36ch}.stages-profile{width:100%;height:90px;margin-top:1.5rem}.stages-profile .sand{fill:var(--sand-2)}.stages-profile .foam{fill:var(--foam)}.stages-profile .green{fill:var(--sea)}.camps-feature{background:var(--sand-2)}.feature-camp{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(1.5rem,1rem + 3vw,4rem);align-items:center;margin-bottom:clamp(2.5rem,2rem + 2vw,4rem)}.feature-camp img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--r-lg)}.feature-camp h3{font-size:clamp(1.9rem,1.5rem + 1.4vw,2.75rem)}.feature-price{font-weight:650}.feature-price .num{font-family:var(--display);font-size:1.6rem;font-weight:400}.camp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.5rem}.camp-card{position:relative;display:flex;flex-direction:column;background:var(--paper);border-radius:var(--r);overflow:hidden;box-shadow:0 1px 2px #0d334114;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.camp-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -24px #0d334173}.camp-card img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.camp-card-body{display:flex;flex-direction:column;flex:1;padding:1.2rem 1.25rem 1.3rem}.camp-card h3{margin-bottom:.4rem}.camp-card h3 a{text-decoration:none}.camp-card h3 a:after{content:"";position:absolute;inset:0}.camp-card h3 a:focus-visible{outline:none}.camp-card:has(a:focus-visible){outline:3px solid var(--sea);outline-offset:3px}.camp-card-body>p:not(.tags){color:var(--ink-2);font-size:.96rem}.camp-card-meta{display:flex;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:.75rem;border-top:1px solid var(--line);font-weight:650;color:var(--ink)!important}.camp-card-next{font-size:.85rem!important;margin:0}.quote-band{padding-block:clamp(4rem,3rem + 4vw,7rem)}.quote-band figure{margin-inline:auto;max-width:900px}.quote-band blockquote{margin:0}.quote-band blockquote p{font-size:clamp(1.45rem,1.1rem + 1.4vw,2.3rem);line-height:1.32;font-weight:500;letter-spacing:-.01em;text-indent:-.42em}.quote-band figcaption{font-weight:650;color:var(--sea)}.day-band{background:var(--ink);color:var(--sand)}.day-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:start}.day-grid>div>p{color:var(--ink-soft);font-size:1.08rem}.day-grid img{margin-top:2rem;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--r-lg)}.timeline{list-style:none;position:relative}.timeline:before{content:"";position:absolute;left:3.1rem;top:.8rem;bottom:.8rem;width:1px;background:#f6efe240}.timeline li{display:grid;grid-template-columns:4.75rem 1fr;gap:1.25rem;padding-block:.9rem;border-bottom:1px solid rgb(246 239 226 / .12)}.timeline time{position:relative;font-family:var(--display);font-size:1.35rem;color:var(--wax);background:var(--ink);line-height:1.3}.timeline p{margin:0;font-size:1.05rem}.coach-strip{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.25rem}.coach-strip a{display:grid;gap:.15rem;text-decoration:none}.coach-strip img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r);margin-bottom:.6rem;transition:transform .4s var(--ease)}.coach-strip a:hover img{transform:translateY(-4px)}.coach-strip strong{font-family:var(--display);font-weight:400;font-size:1.3rem}.coach-strip span{font-size:.9rem;color:var(--ink-2)}.practical{background:var(--foam)}.practical-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}.practical-grid p{color:var(--ink-2);font-size:1.08rem;max-width:48ch}.close{position:relative;isolation:isolate;color:var(--sand);padding-block:clamp(6rem,4rem + 8vw,11rem);overflow:hidden}.close img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.close:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0d3341e0,#0d33418c 55%,#0d334133)}.close h2{font-size:var(--fs-h1);max-width:14ch}.close p{max-width:46ch;font-size:var(--fs-lede)}.page-head{padding-top:clamp(2.5rem,1.5rem + 4vw,5rem);padding-bottom:clamp(2rem,1.5rem + 2vw,3.5rem)}.page-head-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end}.page-head-photo{position:relative;isolation:isolate;color:var(--sand);padding-top:clamp(5rem,3rem + 8vw,10rem);overflow:hidden}.page-head-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.page-head-photo:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0d3341e6,#0d334173 70%,#0d334140)}.page-head-photo .lede{color:var(--sand)}.lesson-list{display:grid;gap:0;padding-bottom:var(--section)}.lesson{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) 300px;gap:clamp(1.25rem,1rem + 2vw,2.75rem);padding-block:clamp(2rem,1.5rem + 2vw,3rem);border-top:1.5px solid var(--ink);align-items:start}.lesson img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--r)}.lesson-body h2{margin-bottom:.15em}.lesson-who{font-weight:650;color:var(--sea);margin-bottom:.9rem}.lesson-body>p:not(.lesson-who){color:var(--ink-2)}.lesson-body h3{font-family:var(--body);font-weight:700;font-size:1rem;margin:1.25rem 0 .75rem}.lesson-price{background:var(--paper);border-radius:var(--r);padding:1.25rem;display:grid;gap:1rem}.lesson-price dl{margin:0;display:grid;gap:.4rem}.lesson-price dl div{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem}.lesson-price dt{color:var(--ink-2)}.lesson-price dd{margin:0;font-weight:600;text-align:right}.price{display:grid;margin:0}.price .num{font-family:var(--display);font-size:2.6rem;line-height:1}.price small{font-size:.85rem;color:var(--ink-2)}.times-band{background:var(--foam)}.times-grid,.care-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}.times-grid img,.care-grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--r-lg)}.times-grid p,.care-grid p{color:var(--ink-2);font-size:1.06rem;max-width:60ch}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.data-table th,.data-table td{text-align:left;padding:.95rem 1rem .95rem 0;border-bottom:1px solid var(--line);vertical-align:top}.data-table thead th{font-size:.85rem;color:var(--ink-2);border-bottom:1.5px solid var(--ink)}.data-table tbody th{font-weight:600}.camps-page{padding-top:2rem;padding-bottom:var(--section)}.filters{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.25rem 2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.filter-selects{display:flex;flex-wrap:wrap;gap:.75rem}.filter-selects label{min-width:170px;flex:1}.result-count{margin:1.25rem 0 1.5rem;font-weight:650}.empty{padding:3rem;border-radius:var(--r-lg);background:var(--paper);text-align:center}.empty p{color:var(--ink-2)}.camp-hero{position:relative;isolation:isolate;color:var(--sand);min-height:clamp(380px,62vh,620px);display:flex;align-items:end;padding-block:3rem clamp(2rem,1.5rem + 2vw,3.5rem);overflow:hidden}.camp-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.camp-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0d3341eb,#0d334180 45%,#0d33410d 80%)}.camp-hero h1{font-size:var(--fs-hero);margin-bottom:.25em}.camp-hero .lede{color:var(--sand)}.camp-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(2rem,1rem + 4vw,5rem);padding-block:clamp(2rem,1.5rem + 2vw,3.5rem) var(--section);align-items:start}.camp-main{display:grid;gap:clamp(2.5rem,2rem + 2vw,4rem);min-width:0}.camp-main section>p{color:var(--ink-2);max-width:65ch;font-size:1.05rem}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.25rem;margin:0;padding:1.25rem 0;border-block:1.5px solid var(--ink)}.facts dt{font-size:.85rem;color:var(--ink-2);font-weight:600}.facts dd{margin:.15rem 0 0;font-weight:650}.itinerary{list-style:none;position:relative}.itinerary:before{content:"";position:absolute;left:21px;top:1.5rem;bottom:1.5rem;width:2px;background:var(--foam)}.itinerary li{position:relative;display:grid;grid-template-columns:44px 1fr;gap:1.1rem;padding-block:.8rem}.it-day{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--foam);color:var(--ink);font-family:var(--display);font-size:1.25rem}.itinerary h3{margin:.45rem 0 .3rem;font-size:1.3rem}.itinerary p{margin:0;color:var(--ink-2)}.inc-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.inc-grid h2,.camp-main h2{font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem)}.inc{list-style:none;display:grid;gap:.6rem}.inc li{display:flex;gap:.6rem;align-items:start}.inc svg{margin-top:.2rem;color:var(--sea)}.inc-no svg{color:var(--ink-2)}.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem;margin-top:1.5rem}.gallery img{width:100%;height:100%;object-fit:cover;border-radius:12px;aspect-ratio:4 / 3}.gallery img:first-child{grid-row:span 2;aspect-ratio:auto}.leaders{list-style:none;display:grid;gap:1.25rem}.leaders li{display:grid;grid-template-columns:110px 1fr;gap:1.25rem;align-items:center}.leaders img{width:110px;aspect-ratio:1;object-fit:cover;border-radius:50%}.leaders h3{margin-bottom:.25rem}.leaders p{margin:0;color:var(--ink-2)}.reserve{position:sticky;top:96px;background:var(--paper);border-radius:var(--r-lg);padding:1.5rem;box-shadow:0 24px 48px -32px #0d334180}.reserve h2{font-size:1.8rem;margin-bottom:.2rem}.reserve-price{color:var(--ink-2)}.reserve-price .num{font-family:var(--display);font-size:2.4rem;color:var(--ink);margin-right:.2rem}.dates{display:grid;gap:.5rem;margin-bottom:1.25rem}.dates label{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:52px;padding:.5rem .9rem .5rem 2.6rem;border:1.5px solid var(--line-strong);border-radius:12px;cursor:pointer;font-weight:600}.dates input{position:absolute;left:.9rem;width:18px;height:18px;margin:0}.dates label:has(input:checked){border-color:var(--ink);background:#f5c34a38}.dates small{font-weight:500;color:var(--ink-2)}.dates label[data-full]{cursor:not-allowed;color:var(--ink-2);border-style:dashed}.dates label[data-full] .num{text-decoration:line-through}.reserve .btn{width:100%}.related{background:var(--sand-2)}.fc-page{padding-bottom:clamp(3rem,2rem + 3vw,5rem)}.spots{list-style:none;display:grid;gap:clamp(2rem,1.5rem + 2vw,3rem)}.spots li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(1.5rem,1rem + 3vw,4rem);align-items:center}.spots li:nth-child(2n) img{order:2}.spots img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:var(--r-lg)}.spot-kind{font-weight:650;color:var(--sea)}.spots li p:not(.spot-kind){color:var(--ink-2);max-width:58ch}.spot-facts{display:flex;flex-wrap:wrap;gap:1.5rem;margin:0}.spot-facts dt{font-size:.85rem;color:var(--ink-2)}.spot-facts dd{margin:0;font-weight:650}.glossary-band{background:var(--ink);color:var(--sand)}.glossary-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,1rem + 4vw,5rem)}.glossary-grid p{color:var(--ink-soft);font-size:1.06rem}.glossary{margin:0;display:grid;gap:1.5rem}.glossary div{padding-bottom:1.5rem;border-bottom:1px solid rgb(246 239 226 / .15)}.glossary dt{font-family:var(--display);font-size:1.5rem;color:var(--wax);margin-bottom:.3rem}.glossary dd{margin:0;max-width:62ch}.coach-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:clamp(2rem,1.5rem + 2vw,3rem) clamp(1.5rem,1rem + 2vw,3rem);padding-bottom:var(--section)}.coach-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:1.5rem;align-items:start;padding-top:1.5rem;border-top:1.5px solid var(--ink)}.coach-card img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r)}.coach-card h2{font-size:clamp(1.7rem,1.4rem + 1vw,2.3rem);margin-bottom:.25rem}.coach-card h2 a{text-decoration:none}.coach-card h2 a:hover{text-decoration:underline}.coach-role{font-weight:650;color:var(--sea)}.coach-card p:not(.coach-role){color:var(--ink-2)}.coach-meta{font-size:.9rem}.coach-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:center;padding-block:clamp(2rem,1.5rem + 3vw,4rem)}.coach-hero>img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r-lg)}.coach-hero h1{margin-bottom:.15em}.coach-quote{margin:1.5rem 0}.coach-quote p{font-size:clamp(1.25rem,1.05rem + .8vw,1.7rem);line-height:1.35;font-weight:500;max-width:34ch}.coach-body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(2rem,1rem + 4vw,5rem);align-items:start;padding-bottom:2rem}.coach-body>div>p{font-size:1.06rem;max-width:65ch;color:var(--ink-2)}.coach-body h2{font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);margin-top:1.5rem}.coach-teaches{background:var(--paper);border-radius:var(--r-lg);padding:1.5rem}.coach-teaches h2{margin-top:0;font-size:1.6rem}.coach-teaches ul{list-style:none;margin-bottom:1.25rem}.coach-teaches li{display:grid;padding-block:.6rem;border-bottom:1px solid var(--line)}.coach-teaches li a{font-weight:650}.coach-teaches li span{font-size:.88rem;color:var(--ink-2)}.coach-teaches .btn{width:100%}.book-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(2rem,1rem + 4vw,5rem);align-items:start;padding-bottom:var(--section)}.book-form{display:grid;gap:2rem}.form-group{display:grid;gap:1.1rem;padding-top:1.5rem;border-top:1.5px solid var(--ink)}.form-group>legend{float:left;width:100%;font-family:var(--display);font-size:1.6rem;margin-bottom:.25rem}.big-pills label>span{min-height:52px;padding:0 1.4rem;font-size:1.05rem}.book-form>.btn{justify-self:start}.book-summary{position:sticky;top:96px;background:var(--ink);color:var(--sand);border-radius:var(--r-lg);padding:1.5rem}.book-summary h2{font-size:1.7rem}.book-summary .quiet{color:var(--ink-soft)}.summary-list{margin:0;display:grid}.summary-list div{display:flex;justify-content:space-between;gap:1rem;padding-block:.7rem;border-bottom:1px solid var(--line)}.book-summary .summary-list div{border-color:#f6efe226}.summary-list dt{color:var(--ink-2)}.book-summary dt{color:var(--ink-soft)}.summary-list dd{margin:0;text-align:right;font-weight:600}.summary-total dd{font-family:var(--display);font-size:2rem;font-weight:400;color:var(--wax);line-height:1}.summary-total dt{align-self:center}.book-done{max-width:760px;padding-block:clamp(3rem,2rem + 4vw,6rem) var(--section)}.book-done h1{outline:none}.done-mark{width:64px;height:64px;padding:12px;border-radius:50%;background:var(--wax);color:var(--ink);margin-bottom:1.5rem;animation:pop .6s var(--ease)}@keyframes pop{0%{transform:scale(.4) rotate(-30deg)}}.book-done .summary-list{margin-block:1.5rem;border-top:1.5px solid var(--ink)}.about-head h1{max-width:16ch}.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:start;padding-bottom:var(--section)}.story figure{margin:0;position:sticky;top:100px}.story img{width:100%;border-radius:var(--r-lg);aspect-ratio:4 / 3;object-fit:cover}.story figcaption{font-size:.9rem;color:var(--ink-2);margin-top:.6rem}.prose p{font-size:1.12rem;max-width:62ch}.prose p:first-child:first-line{font-weight:650}.safety-band{background:var(--foam)}.safety{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem clamp(2rem,1rem + 4vw,5rem)}.safety div{padding-top:1.25rem;border-top:1.5px solid var(--ink)}.safety dt{font-family:var(--display);font-size:1.55rem;margin-bottom:.4rem}.safety dd{margin:0;color:var(--ink-2);max-width:52ch}.faq-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(2rem,1rem + 4vw,5rem);align-items:start;padding-bottom:var(--section)}.faq-groups{display:grid;gap:3rem}.faq-groups h2{font-size:clamp(1.7rem,1.4rem + 1vw,2.3rem);margin-bottom:.5rem}.faq{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:60px;padding-block:.9rem;font-weight:650;font-size:1.08rem;cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--sea)}.faq summary svg{transition:transform .3s var(--ease)}.faq[open] summary svg{transform:rotate(180deg)}.faq p{color:var(--ink-2);max-width:65ch;padding-bottom:.5rem}.faq-aside{position:sticky;top:100px;background:var(--paper);border-radius:var(--r-lg);padding:1.5rem}.faq-aside h2{font-size:1.7rem}.faq-aside p{color:var(--ink-2)}.not-found{padding-block:clamp(4rem,3rem + 6vw,9rem);max-width:760px}.not-found svg{width:100%;height:40px;stroke:var(--sea);stroke-width:2;margin-bottom:2rem}.not-found h1{font-size:var(--fs-hero)}.site-footer{position:relative;background:var(--ink);color:var(--sand);padding-top:clamp(3rem,2rem + 3vw,5rem)}.footer-swell{position:absolute;bottom:100%;left:0;width:100%;height:60px;fill:var(--ink)}.footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1.2fr);gap:clamp(2rem,1rem + 3vw,4rem);padding-bottom:3rem}.footer-brand .logo-mark rect{fill:var(--sea)}.footer-brand address{display:grid;gap:.1rem;font-style:normal;margin-top:1.25rem}.footer-brand address a{display:inline-flex;align-items:center;min-height:40px;justify-self:start}.footer-hours{font-size:.9rem;color:var(--ink-soft);margin-top:.75rem}.footer-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.footer-nav h2,.footer-alerts h2{font-family:var(--body);font-weight:700;font-size:1rem;margin-bottom:.75rem;color:var(--wax)}.footer-nav ul{list-style:none}.footer-nav a{display:inline-flex;align-items:center;min-height:40px;text-decoration:none}.footer-nav a:hover{text-decoration:underline}.footer-alerts p{color:var(--ink-soft);font-size:.95rem}.footer-alerts .form-success{color:var(--sand);background:#f5c34a1f}.footer-alerts .quiet{color:var(--ink-soft)}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:end}.inline-form .field label{color:var(--sand)}.inline-form input{background:#f6efe214!important;border-color:#f6efe259!important;color:var(--sand)}.inline-form ::placeholder{color:var(--ink-soft)}.inline-form .field-error{color:#ffb39a}.inline-form .btn{align-self:start;margin-top:1.75rem}.footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.5rem 2rem;border-top:1px solid rgb(246 239 226 / .15);font-size:.88rem;color:var(--ink-soft)}.footer-base p{margin:0}.site-footer :focus-visible{outline-color:var(--wax)}@media(max-width:1100px){.rack-row{grid-template-columns:120px minmax(0,1fr) auto auto}.rack-row img{width:120px}.rack-summary{display:none}.lesson{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.lesson-price{grid-column:2}.footer-grid{grid-template-columns:1fr 1fr}.footer-nav{grid-column:1 / -1;grid-row:2}}@media(max-width:900px){.hero-grid,.feature-camp,.day-grid,.practical-grid,.times-grid,.care-grid,.glossary-grid,.spots li,.story,.coach-hero,.coach-body,.camp-layout,.book-layout,.faq-layout,.page-head-grid{grid-template-columns:minmax(0,1fr)}.spots li:nth-child(2n) img{order:0}.hero-figure{margin-bottom:2.5rem}.today{position:relative;left:auto;bottom:auto;width:auto;margin:-2.5rem 1rem 0}.fc-body{grid-template-columns:minmax(0,1fr)}.fc-readout{order:-1}.stages{grid-template-columns:minmax(0,1fr);gap:1.5rem}.stages li{display:grid;grid-template-columns:4rem 1fr;column-gap:1rem}.stages li .stage-n{grid-row:span 2}.stages-profile{display:none}.reserve,.book-summary,.faq-aside,.story figure{position:static}.book-summary{order:-1}.coach-hero>img{max-width:440px}.safety{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.hero-prices{grid-template-columns:minmax(0,1fr)}.hero-prices li+li{border-left:0;border-top:1px solid var(--line)}.hero-prices a{grid-template-columns:1fr auto;align-items:baseline;padding:.7rem 0}.rack-row{grid-template-columns:88px minmax(0,1fr);gap:.75rem 1rem}.rack-row img{width:88px;grid-row:span 2}.rack-price{text-align:left;grid-template-columns:auto 1fr;align-items:baseline;gap:.5rem}.rack-row .btn{grid-column:1 / -1}.rack-price .num{font-size:1.6rem}.lesson{grid-template-columns:minmax(0,1fr)}.lesson-price{grid-column:auto}.coach-card{grid-template-columns:120px minmax(0,1fr);gap:1rem}.inc-grid{grid-template-columns:minmax(0,1fr)}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto}.gallery img:first-child{grid-column:1 / -1;grid-row:auto;aspect-ratio:4 / 3}.leaders li{grid-template-columns:76px 1fr;gap:1rem}.leaders img{width:76px}.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-nav{grid-row:auto;grid-template-columns:1fr 1fr}.inline-form{grid-template-columns:minmax(0,1fr)}.inline-form .btn{margin-top:0}.timeline:before{left:2.6rem}.timeline li{grid-template-columns:4rem 1fr;gap:1rem}.empty{padding:2rem 1.25rem}.filter-selects label{min-width:140px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.contours path{animation:none!important}}
