*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:#faf7ef;color:#242c31;font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--accent)}a:hover{text-decoration-thickness:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{border:1px solid #d9ddd8;border-radius:12px;padding:10px 14px;color:inherit;background:#fff;font-weight:700}button:hover:not(:disabled){border-color:var(--accent)}[hidden]{display:none!important}.skip-link{position:absolute;top:-100px;left:12px;background:#fff;z-index:20;padding:12px}.skip-link:focus{top:10px}.store-header{position:sticky;top:0;z-index:5;max-width:1440px;min-height:86px;margin:auto;padding:15px 4%;display:flex;align-items:center;gap:28px;background:#faf7eff5;border-bottom:1px solid #e6e4dc;backdrop-filter:blur(8px)}.store-logo{flex-shrink:0;display:flex;align-items:center;text-decoration:none;color:var(--accent)}.store-logo img{width:150px;height:52px;object-fit:contain}.store-logo.with-wordmark img{width:46px}.store-logo b{font-size:22px}.store-logo b span{font-weight:600}.store-header nav{display:flex;align-items:center;gap:25px;margin-left:auto}.store-header nav a,.store-header nav button{text-decoration:none;color:#343c3f;font-size:12px;font-weight:700;border:0;background:none;padding:8px 0}.header-cart{text-decoration:none;white-space:nowrap;border:1px solid #cccfc7;padding:10px 14px;border-radius:30px;font-size:12px;font-weight:700;color:#242c31}.header-cart span{display:inline-grid;place-items:center;background:var(--accent);color:#fff;width:23px;height:23px;border-radius:50%;margin-left:8px}main{max-width:1440px;margin:auto;padding:0 4%}.store-hero{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:60px;align-items:center;padding:65px 0 58px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-weight:800;font-size:10px;color:var(--accent);margin:0 0 10px}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(34px,4.7vw,65px);letter-spacing:-.05em;line-height:1.08;margin:0 0 22px;font-weight:900}h2{font-size:29px;letter-spacing:-.04em;line-height:1.2;margin:0 0 14px}h3{line-height:1.25;letter-spacing:-.025em}.hero-description{max-width:660px;font-size:15px;line-height:1.8;color:#5b6262;margin:0 0 25px}.hero-tags{display:flex;gap:10px;flex-wrap:wrap}.hero-tags span{font-size:10px;font-weight:700;border:1px solid #deded2;padding:7px 11px;border-radius:30px;background:#fff8}.hero-note{background:var(--soft);border:1px solid var(--accent);border-radius:20px 7px 25px 8px;padding:24px;transform:rotate(3deg);box-shadow:5px 7px 0 #242c310b}.note-number{font-family:'Cabin Sketch',cursive;font-size:50px;font-weight:700;color:var(--accent);line-height:1}.hero-note p{font-size:20px;line-height:1.35;letter-spacing:-.03em}.hero-note small{font-size:10px;display:block;color:#5b6262}.store-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:36px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}.section-heading h2{margin:0}.cycle-switch{display:flex;background:#eaeae2;border-radius:12px;padding:4px;gap:3px}.cycle-switch button{border:0;background:transparent;font-size:11px;padding:9px 12px;border-radius:9px}.cycle-switch button[aria-pressed=true]{background:#fff;box-shadow:0 2px 4px #24301e12}.cycle-switch small{display:block;color:var(--accent);font-size:8px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.product-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dedfd7;border-radius:18px;background:#fff;padding:25px;transition:border-color .15s}.product-card:hover{border-color:var(--accent)}.product-card h3{font-size:22px;margin:9px 0}.product-card .product-image{height:130px;width:100%;object-fit:contain;margin-bottom:12px}.product-kind{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}.product-description{font-size:11px;color:#626967;line-height:1.75;flex:1;margin:0 0 18px;min-height:38px}.product-price{margin:0 0 4px;font-size:30px;font-weight:800;letter-spacing:-.05em}.product-price small{font-size:10px;letter-spacing:0;font-weight:500;color:#5d6564}.price-details{font-size:10px;color:#5c6462;margin:0 0 14px;min-height:35px}.product-card button,.product-card .quote-link{width:100%;display:block;text-align:center;font-size:11px;background:var(--soft);color:var(--accent);border:1px solid transparent;border-radius:10px;padding:12px;text-decoration:none;font-weight:800}.product-card .quote-link{background:#f5f5f0;color:#38423c}.cart-panel{position:sticky;top:108px;border:1px solid #dedfd7;background:#fff;border-radius:20px;padding:26px;box-shadow:0 8px 35px #253b2310}.cart-heading{border-bottom:1px solid #eceee7;padding-bottom:10px}.cart-heading h2{font-size:26px}.empty-cart{font-size:12px;color:#7b827c;padding:30px 0;line-height:1.8}.cart-line{padding:16px 0;border-bottom:1px solid #eceee7;display:grid;grid-template-columns:1fr auto;gap:8px}.cart-line strong{font-size:12px;display:block}.cart-line small{display:block;font-size:10px;color:#657069;margin-top:3px}.line-remove{font-size:17px;padding:0 4px;background:none;border:0;align-self:start;line-height:1}.line-controls{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:8px}.quantity-control{display:flex;align-items:center;border:1px solid #e1e4de;border-radius:8px}.quantity-control button{padding:2px 10px;border:0;background:none;border-radius:7px;font-size:17px}.quantity-control span{font-size:11px;min-width:20px;text-align:center}.line-controls select{font-size:10px;max-width:165px;border:1px solid #e1e4de;border-radius:8px;padding:5px;background:#fff}.promo-form{font-size:10px;margin-top:18px}.promo-form>div{display:flex;gap:5px}.promo-form input{min-width:0;width:100%;padding:8px}.promo-form button{font-size:9px;padding:7px}.totals{margin:20px 0;font-size:11px}.totals>div{display:flex;justify-content:space-between;gap:10px;margin:7px 0}.totals .grand-total{font-size:17px;font-weight:800;border-top:1px solid #e1e4de;padding-top:12px;margin-top:12px}.pricing-note{font-size:10px;color:#626b62;line-height:1.7}.primary-button{display:block;width:100%;background:var(--accent);color:white;border-color:var(--accent);font-weight:800;padding:14px 18px;border-radius:11px;font-size:12px}.primary-button:hover:not(:disabled){filter:brightness(.92)}.cart-footnote{font-size:9px;color:#6f7873;text-align:center;margin:13px 0 0;line-height:1.8}.cart-save{font-size:9px;color:#6f7873;border-top:1px solid #eceee7;margin-top:18px;padding-top:13px}.store-explainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:40px 0;padding:25px 0;border-top:1px solid #dedfd7;border-bottom:1px solid #dedfd7}.store-explainer b{color:var(--accent);font-size:11px}.store-explainer h3{font-size:13px;margin:9px 0}.store-explainer p{font-size:10px;color:#657069;margin:0}.store-questions{margin:40px 0 65px}.store-questions h2{font-size:23px}.store-questions details{border-bottom:1px solid #dedfd7;padding:16px 0;font-size:11px}.store-questions summary{cursor:pointer;font-weight:700}.store-questions details p{color:#5d6761;line-height:1.85}.store-footer{max-width:1440px;margin:auto;padding:35px 4%;border-top:1px solid #dedfd7;display:grid;grid-template-columns:1fr 2fr;gap:15px}.store-footer>a{font-size:22px;font-weight:900;text-decoration:none}.store-footer p{font-size:10px;color:#647068;align-self:center;justify-self:end;margin:0}.store-footer>div{display:flex;gap:18px;flex-wrap:wrap;grid-column:1/-1}.store-footer>div a{font-size:10px;color:#4c5b51;text-decoration:none}.store-notice{border:1px solid var(--accent);background:var(--soft);border-radius:12px;padding:16px 20px;font-size:12px;margin:0 0 25px}.store-notice.error,.form-message.error{color:#9b2b22;background:#fff0eb}.store-notice a{font-weight:700}dialog{border:1px solid #d9ded6;border-radius:22px;max-width:min(94vw,520px);width:520px;padding:34px;color:#263029;background:#fffef9;max-height:90dvh;overflow:auto;box-shadow:0 25px 70px #131c1a30}dialog::backdrop{background:#17271d70;backdrop-filter:blur(4px)}dialog.wide-dialog{width:750px;max-width:min(94vw,750px)}dialog h2{font-size:27px;padding-right:22px}dialog p{font-size:12px;color:#626b66}dialog .dialog-close{position:absolute;right:15px;top:14px;border:0;background:#f0f0e8;border-radius:50%;padding:1px 11px;font-size:23px}label{display:block;font-size:11px;font-weight:600;margin:15px 0 0}label input,label textarea,label select{display:block;margin-top:6px;width:100%;border:1px solid #d6ded4;border-radius:9px;padding:11px;background:#fff;color:#263029;font-size:12px}input[type=checkbox]{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .full{grid-column:1/-1}.form-tabs{display:flex;gap:8px;margin-bottom:20px}.form-tabs button{flex:1;font-size:11px}.form-tabs button[aria-pressed=true],.account-tabs button[aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}.auth-form .primary-button{margin-top:23px}.text-button{background:none;border:0;padding:8px 0;text-decoration:underline;font-size:11px;color:var(--accent)}.auth-form>.text-button{display:block;margin:12px auto 0}.form-message{padding:10px 0;font-size:11px;line-height:1.7}.form-message:empty{padding:0}.consent-label{display:flex;gap:10px;align-items:flex-start;font-size:10px;font-weight:400;line-height:1.7}.consent-label span{min-width:0}.checkout-summary{border:1px solid #d6ded4;border-radius:12px;padding:15px 18px;background:var(--soft);margin:20px 0}.checkout-summary h3{margin:0 0 8px;font-size:16px}.checkout-summary .totals{margin-bottom:0}.allocation{border:1px solid #dde2d9;border-radius:12px;padding:14px;margin:15px 0}.allocation legend{font-size:11px;font-weight:800;padding:0 5px}.allocation label{display:flex;gap:9px;margin:8px 0;font-weight:500}.allocation label span{min-width:0}.allocation select{width:100%;padding:9px;border:1px solid #d6ded4;border-radius:9px}.account-section{padding:30px;margin-bottom:55px;background:#fff;border:1px solid #dedfd7;border-radius:20px}.account-help{font-size:12px;color:#657069;max-width:780px}.account-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.account-tabs button{font-size:11px}.account-list{display:grid;gap:12px}.account-item{border:1px solid #e1e4de;border-radius:12px;padding:17px;display:flex;gap:15px;align-items:center;justify-content:space-between}.account-item strong{font-size:13px;display:block}.account-item small{display:block;font-size:10px;color:#626b66;margin-top:5px}.account-item .status-chip{display:inline-block;background:var(--soft);color:var(--accent);font-size:9px;font-weight:700;padding:4px 8px;border-radius:20px;margin-top:7px}.account-item button,.account-item a{font-size:10px}.account-item-actions{display:flex;flex-wrap:wrap;gap:8px}.establishment-forms{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:24px}.establishment-forms form{border:1px solid #e1e4de;border-radius:12px;padding:20px}.establishment-forms h3{font-size:15px;margin:0 0 8px}.establishment-forms p{font-size:11px;color:#657069}.establishment-forms button{margin-top:18px;font-size:11px}.profile-form{max-width:750px}.profile-form button{margin-top:20px;max-width:230px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:25px}.dialog-actions button{font-size:11px}.danger-button{background:#a83e2f;color:#fff;border-color:#a83e2f}.order-detail{margin-top:15px;background:#f5f6f0;padding:15px;border-radius:10px;font-size:11px}.order-detail ul{padding-left:20px}.loading{font-size:12px;color:#69746b}.product-card.focused{outline:3px solid var(--accent);outline-offset:3px}
@media(min-width:1400px){.store-layout{grid-template-columns:minmax(0,1fr) 360px;gap:45px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.store-header{gap:15px}.store-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px}.product-card{padding:20px}.store-hero{grid-template-columns:1fr 205px;gap:35px}.hero-note{padding:20px}.cart-panel{padding:21px}.section-heading{align-items:flex-start;flex-direction:column;gap:15px}.store-explainer{gap:15px}.account-section .section-heading{flex-direction:row}}
@media(max-width:760px){html{scroll-padding-top:93px}.store-header{padding:12px 5%;min-height:76px;flex-wrap:wrap;gap:8px}.store-logo img{width:113px;height:39px}.store-logo.with-wordmark img{width:32px}.store-logo b{font-size:18px}.store-header nav{gap:13px}.store-header nav a{display:none}.store-header nav button{font-size:10px}.header-cart{padding:7px 9px;font-size:10px}.header-cart span{width:20px;height:20px;margin-left:4px}main{padding:0 5%}.store-hero{display:block;padding:39px 0 35px}.hero-note{display:none}h1{font-size:clamp(32px,8.7vw,55px)}.hero-description{font-size:12px;max-width:550px;line-height:1.85;margin-bottom:20px}.eyebrow{font-size:9px}.hero-tags{gap:6px}.hero-tags span{font-size:8px;padding:6px 9px}.store-layout{display:flex;flex-direction:column;gap:0}.store-layout>section{width:100%}.section-heading{flex-direction:row;align-items:center;gap:10px;margin-bottom:18px}.section-heading h2{font-size:24px}.section-heading .eyebrow{font-size:7px}.cycle-switch button{padding:7px 8px;font-size:9px}.cycle-switch small{font-size:7px}.product-grid{gap:12px}.product-card{padding:19px 16px}.product-card h3{font-size:19px}.product-description{font-size:10px}.product-price{font-size:27px}.product-price small{font-size:9px}.price-details{font-size:9px}.product-card button,.product-card .quote-link{font-size:10px;padding:11px 7px}.product-card .product-image{height:100px}.store-explainer{gap:16px;margin:29px 0}.store-explainer h3{font-size:11px}.store-explainer p{font-size:9px}.store-questions{margin-bottom:25px}.store-questions h2{font-size:22px}.cart-panel{position:static;width:100%;margin:5px 0 36px;padding:24px}.cart-heading h2{font-size:25px}.cart-line strong{font-size:13px}.cart-line small,.cart-save,.cart-footnote{font-size:10px}.primary-button{font-size:12px}.cart-save{text-align:center}.store-footer{padding:27px 5%;display:block}.store-footer p{margin:10px 0 20px}.store-footer>div{gap:13px 18px}.account-section{padding:22px 18px;margin-bottom:36px}.account-section .section-heading{align-items:flex-start}.account-tabs{gap:5px}.account-tabs button{font-size:10px;padding:8px 9px}.account-item{flex-direction:column;align-items:flex-start}.establishment-forms{grid-template-columns:1fr;gap:16px}.store-notice{font-size:11px;padding:15px}dialog{padding:29px 22px;border-radius:17px}dialog h2{font-size:24px}.form-grid{grid-template-columns:1fr;gap:0}.form-grid .full{grid-column:auto}.dialog-actions{flex-direction:column}.dialog-actions button{width:100%}}
@media(max-width:410px){.product-grid{grid-template-columns:1fr}.product-card{padding:23px}.product-description{min-height:0;font-size:11px}.price-details{min-height:0;font-size:10px}.product-card button,.product-card .quote-link{font-size:11px}.store-explainer{grid-template-columns:1fr;gap:18px}.store-explainer>div{display:grid;grid-template-columns:22px 1fr;gap:0 10px}.store-explainer h3{margin:0;font-size:12px}.store-explainer p{grid-column:2;font-size:10px;margin-top:5px}.store-header nav{gap:5px}.store-questions{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

@media (max-width: 760px) {
  body[data-store-brand] input,
  body[data-store-brand] select,
  body[data-store-brand] textarea { font-size: 16px; }
}
