:root{--ui-font:Manrope;--display-font:Georgia;--body-size:15px;--desktop-heading:50px;--mobile-heading:28px}body{font-family:var(--ui-font),Arial,sans-serif;font-size:var(--body-size)}button,input,select,textarea{font-family:var(--ui-font),Arial,sans-serif}h1,h2,.story-points h3,.item-details h3,.footer-tagline{font-family:var(--display-font),Georgia,serif}.hero h1{font-size:var(--hero-desktop,74px)}.heading-line{display:block}.heading-em{font-style:italic;color:#6f866d}.hero-water{border:0!important;box-shadow:none!important;transform:none;background:radial-gradient(ellipse at 50% 55%,#dce5d3a3 0,#e8eddd88 40%,#f8f6ee00 72%);border-radius:46% 54% 60% 40% / 53% 45% 55% 47%;inset:45px -8px 15px}.hero-water:before,.hero-water:after{display:none!important}.origin{width:auto;height:auto;right:25px;top:14px;display:flex;flex-direction:row;gap:12px;padding:8px 0;border:0;border-radius:0;transform:none;text-align:left;font:400 13px/1.5 var(--ui-font),sans-serif}.origin svg{width:26px;height:31px;stroke:#6f8468;fill:none;stroke-width:1.3}.origin span{display:block;font-size:9px;letter-spacing:1.2px;font-weight:600;color:#71816b}.origin strong{display:block;font:600 16px/1.6 var(--ui-font),sans-serif;color:var(--ink)}.hero-actions .button{gap:18px}.hero-actions .button svg{flex-shrink:0}.hero-actions .button span{white-space:nowrap}.shop-heading{align-items:flex-start}.shop-heading>.eyebrow{padding-top:8px;margin-top:0}.shop-heading h2,.story-section h2,.faq h2{font-family:var(--display-font),Georgia,serif;font-size:var(--desktop-heading);line-height:1.12;letter-spacing:-1.7px}.story-kicker .eyebrow{margin-top:2px}.story-kicker .leaf{display:none}.story-section .story-kicker+div>.eyebrow{font-size:14px;line-height:1.55;letter-spacing:.2px;font-weight:500;color:#6a7963;text-transform:none;margin-bottom:17px}.story-points{border:0;gap:0;padding-top:0;margin-top:42px}.story-points article{padding:0 28px;border-left:1px solid #cad4be}.story-points article:first-child{border-left:0;padding-left:0}.story-points article:last-child{padding-right:0}.story-points h3{font-size:23px;line-height:1.3;margin-bottom:15px}.story-points p{font-size:14px;line-height:1.85}.price output,.contact-phone,.stat-card strong,.line-price,.summary-row strong,.scale-display output,.quantity output,.cart-link,.data-table,.confirmation-card,.report-heading span,.trend-chart,.period-controls input{font-family:var(--ui-font),Arial,sans-serif;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:'lnum' 1,'tnum' 1;letter-spacing:0}.price output{font-size:30px;font-weight:650}.contact-phone{font-size:27px;font-weight:600;letter-spacing:.3px}.stat-card strong{font-size:29px;line-height:1.25;font-weight:600}.scale-display output{font-size:30px}.cart-swimmer{position:fixed;left:0;top:0;z-index:100;pointer-events:none;transform-origin:center;will-change:transform}.cart-swimmer img{display:block;width:100%;height:100%;object-fit:contain}.cart-swimmer.is-fish img{animation:swim-stroke .24s ease-in-out infinite alternate}@keyframes swim-stroke{from{transform:scaleX(-1) rotate(-2.5deg)}to{transform:scaleX(-1) rotate(2.5deg)}}.not-found{padding-block:100px 110px;min-height:60vh;max-width:900px;text-align:center}.not-found h1{font-size:53px}.not-found .text-link{display:block;margin-top:25px}.admin-user{cursor:pointer}.admin-user:hover{background:#dce5cf}.admin-sidebar nav a{gap:11px}.admin-sidebar nav svg{stroke-linecap:round;stroke-linejoin:round}.period-controls{display:flex;align-items:end;gap:18px;padding:20px 23px;background:#e8eedf;border:1px solid #d4dec8;border-radius:7px;margin-bottom:26px}.period-controls label{display:block;font-size:11px;font-weight:600;flex:1}.period-controls select,.period-controls input{display:block;width:100%;padding:10px;border:1px solid #c7d3bc;border-radius:4px;background:#fffdf6;font:13px var(--ui-font);margin-top:6px;min-height:43px}.period-controls>span{font-size:10px;color:#687e5b;padding-bottom:4px;flex:1.1}.report-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.report-heading span{font-size:12px;color:#7a896f}.trend-chart{display:flex;align-items:end;gap:25px;min-height:175px;padding:15px 12px 28px;overflow-x:auto;border-bottom:1px solid #d7e0cc;margin-bottom:20px}.trend-column{flex:1;min-width:65px;display:flex;flex-direction:column;align-items:center;position:relative;gap:7px}.trend-column>div{background:#7f9c6a;border-radius:4px 4px 0 0;width:75%;max-width:120px}.trend-column>span:last-child{font-size:10px;position:absolute;top:100%;padding-top:7px;white-space:nowrap}.bar-value{font-size:11px;font-weight:600;white-space:nowrap}.logo-editor{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-bottom:30px}.logo-editor>img{width:155px;height:110px;object-fit:contain;background:var(--paper);padding:10px;border-radius:5px}.logo-editor small,.font-upload small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:7px}.font-upload{margin-top:17px}.form-field select{display:block;width:100%;border:1px solid #c7d2be;background:#fffdf6;padding:12px;border-radius:5px;margin-top:7px;min-height:46px;font:14px var(--ui-font)}.form-field input[type=file]{padding:9px;font-size:12px;max-width:100%;min-width:0}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.role-guide{display:grid;grid-template-columns:1fr 1fr;gap:24px}.role-guide h3{font-size:15px}.role-guide p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.permissions-list{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px}.permissions-list .check-label{font-size:12px;font-weight:400}.permissions-heading{font-size:15px;margin:25px 0 18px}.order-dialog .form-field textarea{font-size:13px}.admin-form-grid>div{min-width:0}.form-actions{flex-wrap:wrap}.admin-card{min-width:0}#extraContentForm{margin-top:30px}#memberForm input{width:100%}#memberForm input[type=checkbox]{width:17px;height:17px}.admin-page-heading h1{font-family:var(--display-font),Georgia,serif}.admin-card h2{font-family:var(--display-font),Georgia,serif}.order-dialog h2{font-family:var(--display-font),Georgia,serif}.admin-user strong{font-size:12px}.admin-user small{font-size:11px}
@media(min-width:701px){.footer-inner{padding-left:27%;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.footer-tagline{font-size:24px;line-height:1.4;transform:translateY(-7px);margin-bottom:7px}.footer-inner>div>p:nth-child(2){margin-top:0;font-size:13px}}
@media(max-width:1050px){.period-controls{flex-wrap:wrap;gap:12px}.period-controls>span{flex-basis:100%}.period-controls label:first-child{flex:1.5}.permissions-list{grid-template-columns:1fr}.stat-card strong{font-size:25px}}
@media(max-width:700px){.hero h1{font-size:var(--hero-mobile,48px)}.origin{right:7px;top:0;gap:9px;padding:0}.origin svg{width:20px;height:25px}.origin span{font-size:8px;letter-spacing:.7px}.origin strong{font-size:13px}.hero-water{inset:35px 0 25px}.hero-visual{height:290px}#heroTarget{top:46px;height:190px}.shop-heading>.eyebrow{padding:0}.shop-heading h2,.story-section h2,.faq h2{font-size:var(--fitted-mobile-heading,var(--mobile-heading));letter-spacing:-.5px;line-height:1.2}.heading-line{white-space:nowrap}.hero h1 .heading-line{white-space:normal}.story-kicker .eyebrow{font-size:11px;margin-bottom:14px;font-weight:700}.story-section .story-kicker+div>.eyebrow{font-size:12px;letter-spacing:0;color:#7a846f;line-height:1.65;font-weight:400;margin-bottom:17px;max-width:290px}.story-points{margin-top:30px;border:0;gap:0;padding:0}.story-points article,.story-points article:first-child,.story-points article:last-child{padding:23px 0;border:0;border-top:1px solid #cdd7c2}.story-points article:last-child{padding-bottom:0}.story-points h3{font-size:23px;margin-bottom:11px}.story-points p{font-size:14px}.price output{font-size:27px}.contact-phone{font-size:25px}.footer-tagline{font-family:var(--display-font),Georgia,serif}.not-found{padding-block:60px}.not-found h1{font-size:40px}.period-controls{padding:16px;display:grid;grid-template-columns:1fr 1fr}.period-controls label:first-child,.period-controls>span{grid-column:1/-1}.period-controls input,.period-controls select{font-size:12px;padding:8px}.stat-card strong{font-size:22px}.report-heading{display:block}.role-guide{grid-template-columns:1fr}.logo-editor{display:block}.logo-editor>img{margin-bottom:15px}.trend-chart{gap:20px}.admin-page-heading h1{font-size:30px}.admin-sidebar{overflow-y:auto}.admin-user{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.cart-swimmer img{animation:none!important}}
h1,h2{font-family:var(--display-font),Georgia,serif!important}
.not-found .text-link{display:table;margin:25px auto 0}
body,input[type=number]{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:'lnum' 1,'tnum' 1}
.cart-swimmer.is-fish img{object-fit:fill}

/* Revision 4: one focal stage, shared footer spacing and commerce controls. */
.hero-visual{overflow:visible}.hero-water{inset:62px 3% 66px;background:radial-gradient(ellipse at 50% 58%,#bed0aeaa 0%,#d6e0c8aa 35%,#e9eddd66 58%,#f8f6ee00 78%);border-radius:50%;filter:blur(2px)}.origin{top:45px;left:50%;right:auto;transform:translateX(-50%);white-space:nowrap;justify-content:center;gap:10px;padding:0}.origin span{font-size:9px;letter-spacing:1px}.origin strong{font-size:15px;line-height:1.45}.origin svg{width:23px;height:27px}.preparation-help{text-align:center;margin:12px auto 0;min-height:22px}.cart-swimmer.is-fish img{animation:none!important;transform:none!important}.product-handoff{position:fixed;z-index:25;pointer-events:none;object-fit:fill;transform:translate(-50%,-50%);will-change:left,top,width,height}.payment-instructions{max-width:550px;margin:18px auto 28px;padding:18px;background:#edf0e3;border-radius:6px;text-align:left;font-size:13px;line-height:1.7}.payment-instructions p:last-child{margin-bottom:0}.payment-qr{display:block;width:200px;height:200px;object-fit:contain;background:white;margin:15px 0;padding:8px}.payment-instructions h3{font-size:16px}.product-filter h2{font-size:25px;margin-bottom:15px}.product-filter-options,.weekday-options{display:flex;gap:16px 24px;flex-wrap:wrap;margin:15px 0 20px}.product-filter-options small{color:var(--muted);font-weight:400}.product-filter .admin-subtle{margin-bottom:0}.calendar-heading{display:flex;gap:15px;align-items:center;justify-content:space-between;margin:14px 0}.calendar-heading select{width:auto!important;max-width:145px}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;max-width:420px;margin:15px 0}.calendar-days>span{text-align:center;font-size:11px;color:#6a7963;padding:6px}.calendar-days button{min-width:0;min-height:39px;border:1px solid #c7d2be;border-radius:4px;background:#fffdf6;font-size:13px;color:var(--ink)}.calendar-days button:disabled{background:#eeeee6;color:#a9afa3;opacity:1;border-color:transparent}.calendar-days button[aria-pressed=true]{background:#214c3b;color:white}.admin-calendar button[aria-pressed=true]{background:#a94b3d;border-color:#a94b3d}.admin-calendar .weekly-closed:not([aria-pressed=true]){background:#e5e7de;color:#919a89}.admin-calendar{max-width:420px}#scheduleForm{margin-top:25px}#scheduleEditor{margin-top:30px}#scheduleForm small{display:block;font-weight:400;font-size:11px;margin-top:8px}.weekday-options input{width:17px;height:17px}
@media(min-width:701px){.footer-inner{padding-left:28%;grid-template-columns:minmax(240px,1.7fr) minmax(125px,.8fr) minmax(170px,1fr);gap:35px}.footer-tagline{transform:translateY(-7px)}.footer-inner>div{padding-right:34px}}
@media(min-width:701px) and (max-width:1050px){.footer-inner{padding-left:18%;grid-template-columns:1.5fr .8fr 1fr;gap:25px}.footer-inner>div{padding-right:10px}.footer-tagline{font-size:23px}}
@media(max-width:700px){.hero-water{inset:32px -1% 44px}.origin{top:0;left:50%;right:auto;transform:translateX(-50%);gap:8px}.origin strong{font-size:13px}.origin span{font-size:8px}.origin svg{width:20px;height:24px}#heroTarget{top:40px}.footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px}.footer-inner>div{grid-column:1/-1}.footer-inner nav:last-child{justify-self:stretch}.footer-inner nav{width:100%}.footer-inner a,.footer-inner button{font-size:12px}.calendar-days{gap:4px}.calendar-days button{min-height:37px}.payment-qr{width:180px;height:180px}}
@media(prefers-reduced-motion:reduce){.product-handoff{display:none}}
@media(max-width:700px){.footer-inner nav:last-child{align-items:flex-end;text-align:right}.footer-inner nav:last-child a{justify-content:flex-end}}
