:root { --c9-ease:cubic-bezier(.22,1,.36,1); }
html { scroll-padding-top:92px; }
.c9-skip-link { position:fixed; top:12px; left:12px; z-index:10000; padding:12px 16px; background:#fff; color:#07366d; border:2px solid #07366d; transform:translateY(-160%); }
.c9-skip-link:focus { transform:none; }
:is(button,a,input,textarea,select,summary,[tabindex]):focus-visible { outline:3px solid #07366d!important; outline-offset:3px; box-shadow:0 0 0 6px #fff; }
:is(button,a,input,textarea,select,summary,[id]) { scroll-margin-block:100px; }
:is(main,[role="main"]) :is(p,li,label,blockquote) { overflow-wrap:break-word; }
textarea,select { max-width:100%; min-width:0; }
textarea { resize:vertical; }
.site-nav { flex-wrap:wrap; }
.site-nav>div { flex-wrap:wrap; }
.shop-note a { display:inline-flex; align-items:center; min-height:44px; }
.c9-visit-address { display:grid; gap:6px; min-width:0; line-height:1.4; }
.c9-visit-address>span:last-child { font-size:16px; white-space:nowrap; }
.c9-purpose-page h1 { font-size:44px!important; line-height:1.2!important; max-width:24ch!important; text-wrap:balance; }
.c9-purpose-page p { max-width:58ch!important; line-height:1.75!important; overflow-wrap:break-word; }
.c9-purpose-page [style*="font-size: 14px"] { font-size:16px!important; line-height:1.7!important; overflow-wrap:break-word; }
.c9-purpose-page [style*="color: #c9e7f9"] { color:#42637f!important; }
.c9-purpose-page #manifesto-scroll { scroll-padding-inline:4px; }
img { max-width:100%; }
button,a { touch-action:manipulation; }
input,textarea,select { font-size:16px; }
button:disabled { cursor:wait; opacity:.65; }
[role="region"][aria-labelledby^="faq-"] { overflow-wrap:anywhere; }
.c9-header { isolation:isolate; }
.c9-header img { flex-shrink:0; }
.c9-footer-links { display:grid; gap:0; }
.c9-footer-link-row { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.c9-footer-links :is(a,button) { color:#C7D2E1!important; min-height:44px; margin:0!important; line-height:1.5; }
.c9-footer>div:last-child { align-items:flex-start!important; gap:16px!important; }
.c9-footer>div:last-child>div:first-child { color:#A9BBD1!important; line-height:1.7!important; }
.c9-product-tabs { overscroll-behavior-x:contain; scroll-padding-inline:4px; }
.c9-product-tabs button { min-height:44px; }
.c9-review-card { scroll-snap-stop:normal; }
.c9-reveal { transition:opacity .5s var(--c9-ease),transform .5s var(--c9-ease); }
.c9-reveal-pending { opacity:0; transform:translateY(12px); }
.c9-reveal-pending:focus-within { opacity:1; transform:none; }
.c9-product-card,.c9-dock-item,.primary { transition:background-color .18s ease,color .18s ease,transform .18s var(--c9-ease); }
@media(hover:hover) and (pointer:fine) { .c9-product-card:hover { background:#edf8ff; } .primary:hover { transform:translateY(-1px); } }
@media(max-width:860px) {
  .c9-purpose-page h1 { font-size:32px!important; margin-bottom:20px!important; }
  .c9-purpose-page>div { padding:40px 20px!important; }
  .c9-purpose-page p { font-size:16px!important; }
  button,summary,input:not([type="checkbox"]):not([type="radio"]),select { min-height:44px; }
  input,textarea,select { font-size:16px!important; }
  .c9-footer { padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))!important; }
  .c9-footer a,.c9-footer button { min-width:44px; min-height:44px; }
  [role="dialog"][aria-label="Navigation"] { overflow-y:auto; overscroll-behavior:contain; }
  .c9-header { backdrop-filter:none!important; background:#fff!important; }
  .c9-hero { min-height:480px!important; height:calc(100svh - 300px); max-height:590px; }
  .c9-hero-content { padding:24px 20px 28px!important; }
  .c9-hero-content > div:last-child { display:grid!important; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:12px!important; }
  .c9-hero-content > div:last-child > * { min-height:50px; padding:14px 10px!important; text-align:center; display:flex; align-items:center; justify-content:center; font-size:15px!important; }
  .c9-trust-band { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:12px 16px; overflow:visible; }
  .c9-trust-divider { display:none; }
  .c9-trust-item { min-width:0; min-height:44px; font-size:11px; white-space:normal; }
  .c9-trust-item span:last-child { font-size:11px; line-height:1.35; }
  .c9-mobile-dock { box-shadow:0 -2px 14px rgba(0,80,140,.06); backdrop-filter:none; padding-inline:12px; }
  .c9-dock-item { border-radius:6px; min-height:56px; gap:5px; }
  .c9-dock-item small { font-size:11px; }
  .c9-dock-item.is-active { background:#edf8ff; }
  .c9-dock-item:active,.c9-product-card:active { transform:scale(.985); }
  .c9-product-browser { scroll-margin-top:88px; }
  .c9-product-browser-head { align-items:stretch; flex-direction:column; }
  .c9-product-browser input { width:100%; box-sizing:border-box; min-height:50px; font-size:16px; }
  .c9-product-card-body small { font-size:11px; line-height:1.5; }
  .c9-product-card-body em { font-size:12px; }
  .c9-product-card-body strong { font-size:16px; line-height:1.4; }
  .c9-home-reviews { gap:12px; scroll-padding-inline:4px; }
  .c9-review-card { flex-basis:calc(100% - 24px); min-height:220px; padding:22px; box-sizing:border-box; }
  .c9-review-card blockquote { font-size:16px; line-height:1.65; }
  .c9-social-pulse { padding:48px 20px; }
  .c9-social-grid { gap:8px; }
  .c9-deals-help { align-items:flex-start; flex-direction:column; gap:8px; }
  .c9-shop-intro h1 { font-size:36px!important; line-height:1.12!important; }
  .c9-shop-intro p { font-size:16px!important; line-height:1.65!important; }
}
@media(max-width:360px) { .c9-hero { min-height:420px!important; height:calc(100svh - 285px); } .c9-hero-content { padding-inline:16px!important; } .c9-trust-band { padding-inline:12px; gap:8px; } .c9-shop-intro h1 { font-size:32px!important; } }
@media(max-height:550px) and (orientation:landscape) { .c9-hero { min-height:360px!important; height:auto; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } .c9-reveal,.c9-reveal-pending { opacity:1!important; transform:none!important; transition:none!important; } *,*::before,*::after { animation:none!important; transition:none!important; } }
@media(forced-colors:active) {
  :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible { outline-color:Highlight!important; box-shadow:none; }
  .c9-skip-link { color:CanvasText; background:Canvas; border-color:CanvasText; }
}
