/* Appearance and motion share the same surfaces and accent colors. */
:root {
  color-scheme: light;
  --page-bg:#fff;
  --surface:#fff;
  --heading:#213365;
  --muted:#62747e;
  --quiet:#6a7d88;
  --button-bg:#213365;
  --button-text:#fff;
  --button-hover:#324880;
  --focus:#147087;
  --control-bg:#edf3f5;
  --control-active:#fff;
  --water-rgb:53,142,162;
  --fish-opacity:.075;
  --bubble-opacity:.26;
}
html[data-theme=dark] {
  color-scheme:dark;
  --navy:#e5f1f7;
  --deep:#0b1723;
  --aqua:#86d0de;
  --sky:#142b37;
  --pale:#13232f;
  --text:#b9cbd5;
  --line:#2a404f;
  --page-bg:#0d1a27;
  --surface:#162836;
  --heading:#e5f1f7;
  --muted:#a6bdca;
  --quiet:#9cb1bf;
  --button-bg:#92d7e1;
  --button-text:#102a37;
  --button-hover:#b4e7ed;
  --focus:#9be0e8;
  --control-bg:#10202e;
  --control-active:#2a4252;
  --water-rgb:100,202,217;
  --fish-opacity:.095;
  --bubble-opacity:.29;
}
body{background:var(--page-bg)}
.brand-logo{display:block;width:132px;height:88px;object-fit:contain;background:#fff;border-radius:7px;padding:5px;flex-shrink:0}
.footer-brand .brand-logo{width:156px;height:104px;padding:7px}
.header-inner .brand{min-width:132px}
.brand-grid>.brand-item{padding:26px 12px}
.brand-grid .brand-logo-frame{display:flex;align-items:center;justify-content:center;width:100%;max-width:154px;height:88px;margin:0 auto 15px;padding:12px;background:#fff;border:1px solid #e0e8eb;border-radius:6px}
.partner-logo{display:block;width:100%;height:64px;object-fit:contain;filter:none}
.brand-grid>.brand-item>strong{font-size:15px;letter-spacing:-.2px}
.brand-grid>.brand-item>span{font-size:10px}
.brand-grid .brand-logo-frame[data-failed=true]{background:var(--control-bg);border-color:var(--line);border-style:dashed}
.brand-grid .brand-logo-frame .brand-logo-fallback{font-size:17px;font-weight:800;color:var(--heading);margin:0}
html[data-theme=dark] .brand-grid .brand-logo-frame{border-color:#3e5361}
.legal-main li>a{text-decoration:underline;text-underline-offset:3px}
.location-card{display:grid;grid-template-columns:24px minmax(0,1fr);gap:13px;margin:22px 0 18px;padding:20px;background:var(--pale);border:1px solid var(--line);border-radius:6px}
.location-card>svg{width:23px;height:25px;margin-top:3px;color:var(--aqua)}
.location-kicker{margin:0 0 9px;font-size:9px;letter-spacing:1.4px;line-height:1.7;font-weight:800;text-transform:uppercase;color:var(--aqua)}
.location-address{font-style:normal;font-size:13px;line-height:1.8;margin:0}
.location-address>*{display:block}
.location-address>strong{color:var(--heading);font-weight:700;margin-bottom:4px}
.location-phone{display:inline-block;color:var(--heading);font-size:13px;font-weight:700;margin-top:10px;text-underline-offset:4px}
.location-phone:hover{text-decoration:underline}
.location-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:9px;margin-top:16px}
.location-button.button{min-height:44px;padding:11px 13px;gap:12px;font-size:11px;line-height:1.6}
.location-button.button>span{font-size:17px}
.location-button-outline.button{background:transparent;border-color:var(--line);color:var(--heading)}
.location-button-outline.button:hover{background:var(--control-bg);border-color:var(--aqua)}
.visit-section .location-card{background:#ffffff09;border-color:#ffffff25;color:#d1e0e9;max-width:470px}
.visit-section .location-address>strong,.visit-section .location-phone{color:#f1f8fd}
.visit-section .location-kicker{color:#a9d7e2}
.visit-section .location-button-outline.button{border-color:#8295a8;color:#f1f8fd}
.visit-section .location-button-outline.button:hover{background:#ffffff10;border-color:#b0dce7}
.visit-section .location-actions{max-width:500px;margin-top:18px}
.location-actions .button-white{margin-top:0}
.footer-main .footer-contact{gap:12px}
.location-card-footer{margin:0;padding:0;background:transparent;border:0;gap:10px}
.location-card-footer .location-kicker{display:none}
.location-card-footer .location-address,.location-card-footer .location-phone{font-size:11px}
.footer-contact .location-actions{margin-top:3px;gap:8px}
.footer-contact .location-button.button{font-size:10px;gap:8px;padding:10px 11px}
.footer-bottom>p{font-size:10px;line-height:1.8;max-width:600px}
.footer-bottom>p>strong{font-weight:700;color:var(--heading)}
.legal-address{font-style:normal;font-size:13px;line-height:1.8;margin:0 0 16px}
#inquiry-form{scroll-margin-top:120px}
:focus-visible{outline-color:var(--focus)}
.button,.skip-link{background:var(--button-bg);color:var(--button-text);border-color:var(--button-bg)}
.button:hover:not(:disabled){background:var(--button-hover)}
.appearance-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;background:var(--control-bg);border:1px solid var(--line);border-radius:30px;flex-shrink:0}
.appearance-switch button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:52px;min-height:32px;padding:6px 9px;background:transparent;color:var(--muted);border:0;border-radius:24px;font-size:10px;line-height:1.3;font-weight:700;white-space:nowrap}
.appearance-switch button svg{width:14px;height:14px;flex-shrink:0;stroke-width:1.6}
.appearance-switch button[aria-pressed=true]{background:var(--control-active);color:var(--heading);box-shadow:0 1px 4px #142b3f0c}
.appearance-switch button:hover{color:var(--heading)}
.appearance-switch button:focus-visible{outline-offset:2px}
.motion-control{margin:12px 0 0}
.motion-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-bottom:1px solid transparent;padding:3px 0;color:var(--muted);font-size:10px;line-height:1.6}
.motion-toggle:hover:not(:disabled){color:var(--aqua);border-bottom-color:currentColor}
.motion-toggle svg{width:12px;height:12px;flex-shrink:0}
.motion-toggle .motion-play{display:none}
html[data-motion=paused] .motion-toggle .motion-pause{display:none}
html[data-motion=paused] .motion-toggle .motion-play{display:block}
.motion-toggle:disabled{cursor:default;opacity:.8}

/* The decorative layers sit above each section's background and below its
   content. They cannot receive focus, clicks, or touch input. */
.hero,.topics-section,.plants-section,.food-section,.contact-section{position:relative;isolation:isolate}
.topics-section,.plants-section,.food-section,.contact-section{overflow:hidden}
.water-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;user-select:none;contain:paint}
.water-scene::before,.water-scene::after{content:'';position:absolute;width:700px;height:700px;border-radius:50%;pointer-events:none}
.water-scene::before{left:-480px;top:10%;border:1px solid rgba(var(--water-rgb),.13);box-shadow:0 0 0 34px rgba(var(--water-rgb),.04),0 0 0 89px rgba(var(--water-rgb),.025);animation:water-light 28s ease-in-out infinite alternate}
.water-scene::after{right:-280px;top:-220px;background:radial-gradient(ellipse,rgba(var(--water-rgb),.09),transparent 65%);animation:water-glow 32s ease-in-out infinite alternate}
.water-bubble{position:absolute;left:var(--left,6%);bottom:-40px;width:var(--size,14px);height:var(--size,14px);border:1px solid rgba(var(--water-rgb),.6);border-radius:50%;opacity:0;background:radial-gradient(circle at 30% 25%,rgba(var(--water-rgb),.10),transparent 65%);animation:bubble-rise var(--duration,24s) linear infinite;animation-delay:var(--delay,0s)}
.water-fish{position:absolute;left:-150px;top:var(--depth,37%);width:var(--fish-size,105px);height:auto;color:rgb(var(--water-rgb));opacity:var(--fish-opacity);animation:fish-drift var(--duration,86s) linear infinite;animation-delay:var(--delay,-20s)}
.water-fish svg{width:100%;height:auto;fill:currentColor;stroke:none;display:block}
.water-fish.reverse{left:auto;right:-140px;animation-name:fish-return}
.water-fish.reverse svg{transform:scaleX(-1)}
.water-scene.quiet::before,.water-scene.quiet::after{display:none}
@keyframes bubble-rise{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:var(--bubble-opacity)}75%{opacity:var(--bubble-opacity)}100%{transform:translate3d(var(--drift,28px),-1050px,0);opacity:0}}
@keyframes fish-drift{0%{transform:translate3d(0,0,0) rotate(-3deg)}50%{transform:translate3d(calc(50vw + 150px),-19px,0) rotate(2deg)}100%{transform:translate3d(calc(100vw + 300px),7px,0) rotate(-2deg)}}
@keyframes fish-return{0%{transform:translate3d(0,0,0) rotate(2deg)}50%{transform:translate3d(calc(-50vw - 150px),17px,0) rotate(-2deg)}100%{transform:translate3d(calc(-100vw - 300px),-8px,0) rotate(1deg)}}
@keyframes water-light{from{transform:translate3d(0,0,0) scale(.96);opacity:.55}to{transform:translate3d(15px,25px,0) scale(1.06);opacity:.9}}
@keyframes water-glow{from{transform:translate3d(0,0,0);opacity:.65}to{transform:translate3d(-50px,35px,0);opacity:1}}
html[data-motion=paused] .water-scene *,html[data-motion=paused] .water-scene::before,html[data-motion=paused] .water-scene::after,
html[data-page-hidden=true] .water-scene *,html[data-page-hidden=true] .water-scene::before,html[data-page-hidden=true] .water-scene::after{animation-play-state:paused}

/* Dark water: deep blue surfaces, softened images, pale aqua highlights. */
html[data-theme=dark] .appointment-bar{color:#b6d2de;background:#142b37}
html[data-theme=dark] .site-header{background:rgba(13,26,39,.96);border-bottom-color:var(--line)}
html[data-theme=dark] .brand-type small{color:#9cbaca}
html[data-theme=dark] .mobile-nav{background:var(--page-bg)}
html[data-theme=dark] .mobile-nav .button{color:var(--button-text)}
html[data-theme=dark] .hero{background:linear-gradient(115deg,#0d1a27,#112734)}
html[data-theme=dark] .water-scene::before{border-color:rgba(var(--water-rgb),.10);box-shadow:0 0 0 34px rgba(var(--water-rgb),.018),0 0 0 89px rgba(var(--water-rgb),.012)}
html[data-theme=dark] .water-scene::after{background:radial-gradient(ellipse,rgba(69,155,179,.17),transparent 65%)}
html[data-theme=dark] .photo{filter:brightness(.9) saturate(.94);background-color:#183f45}
html[data-theme=dark] .hero-photo{box-shadow:0 20px 50px #0002}
html[data-theme=dark] .pond-inset{background:var(--surface);border-color:var(--surface);box-shadow:0 10px 40px #0003}
html[data-theme=dark] .visual-orbit{border-color:#274c5b}
html[data-theme=dark] .text-link{border-bottom-color:#466273}
html[data-theme=dark] .hero-footnote,html[data-theme=dark] .promise-strip div>span:last-child,html[data-theme=dark] .imagery-note,
html[data-theme=dark] .topic-tabs button,html[data-theme=dark] .food-card h3 span,html[data-theme=dark] .brand-grid span,
html[data-theme=dark] .contact-placeholder span,html[data-theme=dark] .field-hint,html[data-theme=dark] .optional,
html[data-theme=dark] .required-hint,html[data-theme=dark] .privacy-hint{color:var(--muted)}
html[data-theme=dark] .topic-tabs button[aria-selected=true]{color:var(--heading)}
html[data-theme=dark] .topic-tabs button>span,html[data-theme=dark] .food-card-top>span:last-child{color:#8cabbc}
html[data-theme=dark] .topic-tabs button[aria-selected=true]>span{color:var(--aqua)}
html[data-theme=dark] .origin-tag{background:var(--surface);box-shadow:0 5px 20px #0002}
html[data-theme=dark] .food-section{background:#10232f}
html[data-theme=dark] .food-card{background:#172c39;border-top-color:#42798a}
html[data-theme=dark] .wholesalers strong span{color:#9cbaca}
html[data-theme=dark] .visit-section{background:#0b1723;color:#b9cbd5}
html[data-theme=dark] .button-white{background:#d9f0f3;color:#102a37;border-color:#d9f0f3}
html[data-theme=dark] .button-white:hover{background:#f0fcff}
html[data-theme=dark] .draft-notice{background:#142735;border-color:#4b6577}
html[data-theme=dark] .checkbox-label:has(input:checked){background:#1d3d4a;border-color:#67acbd}
html[data-theme=dark] .checkbox-label input{accent-color:#86d0de}
html[data-theme=dark] .checkbox-label:focus-within{box-shadow:0 0 0 2px #3e7285}
html[data-theme=dark] .field input,html[data-theme=dark] .field textarea{background:#102230;border-color:#3b5668}
html[data-theme=dark] .field input::placeholder,html[data-theme=dark] .field textarea::placeholder{color:#9ab1c1}
html[data-theme=dark] .button:disabled{background:#203441;border-color:#364d5c;color:#9cb2c0}
html[data-theme=dark] .draft-save{border-bottom-color:#466273}
html[data-theme=dark] .site-footer{background:#101f2b;color:#a6bdca}
html[data-theme=dark] .footer-bottom{border-top-color:var(--line)}
html[data-theme=dark] .draft-label{color:#b1c6d2;border-color:#395161}
html[data-theme=dark] .legal-main{background:var(--surface)}
html[data-theme=dark] .legal-placeholder{background:#102230}
html[data-theme=dark] ::selection{background:#345f71;color:#f2fcff}

@media(max-width:1250px){.desktop-nav{display:none}.menu-toggle{display:block}.header-cta{margin-left:auto}.appearance-switch{margin-left:0}}
@media(max-width:760px){.header-cta{display:none}.appearance-switch{margin-left:auto}.header-inner{gap:12px}.brand-logo{width:102px;height:68px;padding:4px}.header-inner .brand{min-width:102px}.appearance-switch button{font-size:9px;min-width:49px;padding:6px 7px}.water-fish{width:min(var(--fish-size,78px),88px)}.hero .water-fish.reverse{display:none}.water-scene::before{width:480px;height:480px;left:-365px}.water-scene::after{width:480px;height:480px;right:-340px}.water-bubble:nth-of-type(n+6){display:none}.motion-control{margin-top:9px}}
@media(max-width:400px){.appearance-switch button{min-width:29px;padding:7px}.appearance-switch button span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.appearance-switch{gap:1px;padding:3px}.header-inner{gap:9px}.appearance-switch button svg{width:14px;height:14px}.brand-type strong{font-size:17px}}
@media(max-width:600px){.legal-page .header-inner>.text-link{display:none}}
@media(max-width:760px){.location-card{padding:18px}.location-address,.location-phone{font-size:13px}.location-card-footer{padding:0}.footer-contact .location-button.button{font-size:11px}.footer-bottom>p{font-size:10px}}
@media(max-width:400px){.location-button.button{padding:11px 12px;font-size:11px;gap:9px}.location-actions{gap:8px}}
@media(max-width:760px){.brand-grid>.brand-item{padding:22px 15px}.brand-grid .brand-logo-frame{max-width:170px;height:90px}.brand-grid>.brand-item>strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.water-scene *,.water-scene::before,.water-scene::after{animation:none!important}.water-bubble{display:none}.water-fish{opacity:calc(var(--fish-opacity) * .7)}}
@media print{html[data-theme] {--navy:#213365;--text:#4c5c69;--aqua:#24778d;--pale:#f6f9f8;--line:#dce5e9;--page-bg:#fff;--surface:#fff;--heading:#213365;--muted:#62747e}.water-scene,.appearance-switch,.motion-control{display:none!important}html[data-theme] body,html[data-theme] .hero,html[data-theme] .food-section,html[data-theme] .food-card,html[data-theme] .legal-main{background:#fff;color:#4c5c69}html[data-theme] .visit-section{background:#fff;color:#4c5c69}html[data-theme] .visit-copy h2{color:#213365}}
