@import url('https://fonts.googleapis.com/css2?family=Alfa+Slab+One&family=Barlow+Condensed:wght@400;500;600;700&display=swap');
:root{--paper:oklch(.97 .02 85);--navy:oklch(.25 .08 260);--red:#d71920;--muted:oklch(.42 .05 260);--sand:#eee4cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;color:var(--navy);background:var(--paper);font:18px/1.5 'Barlow Condensed',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #e38b22;outline-offset:4px}.container,.nav-wrap{width:min(1120px,calc(100% - 112px));margin-inline:auto}.ticker{background:var(--red);color:var(--paper);font-size:14px;font-weight:700;letter-spacing:1.1px;overflow:hidden;height:36px;display:flex;align-items:center}.ticker>div{white-space:nowrap;animation:marquee 90s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}header{position:sticky;top:0;z-index:10;border-bottom:4px solid var(--navy);background:var(--paper)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand>img{width:46px;height:46px;object-fit:contain;border-radius:50%}.brand>span{font:26px/1 'Alfa Slab One',serif;letter-spacing:.4px}.brand small{display:block;font:700 12px/1.4 'Barlow Condensed',sans-serif;letter-spacing:3.5px;color:var(--red);margin-top:7px}nav{display:flex;gap:24px}nav a{font-size:20px;font-weight:600;text-transform:uppercase}nav a:hover,footer a:hover{color:var(--red)}.button{display:inline-flex;justify-content:center;align-items:center;padding:6px 17px;min-height:40px;border:1.5px solid var(--navy);box-shadow:4px 4px 0 var(--navy);background:var(--paper);color:var(--navy);text-transform:uppercase;font-size:18px;line-height:1.35;font-weight:600;cursor:pointer;border-radius:1px}.button:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--navy)}.red{color:white;background:var(--red)}.actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;min-height:620px;padding-block:72px}h1,h2,.slab{font-family:'Alfa Slab One',serif;text-transform:uppercase;font-weight:400;line-height:1;letter-spacing:-1px;margin:0}h1{font-size:72px;line-height:.95;max-width:480px}em{font-style:normal;color:var(--red)}.hero p{font-size:24px;color:var(--muted);max-width:460px;line-height:1.32;margin:30px 0 24px}.hero-logo{justify-self:end;width:440px;max-width:100%;aspect-ratio:1;background:white;border:4px solid var(--navy);border-radius:50%;padding:12px;box-shadow:7px 8px 0 var(--navy);transform:rotate(-6deg)}.hero-logo img{width:100%;height:100%;object-fit:contain;border-radius:50%;display:block}.section{padding-block:72px}h2{font-size:48px;margin-bottom:40px}h3{font-size:24px;text-transform:uppercase;line-height:1.2;margin:0 0 4px;font-weight:700}p{margin:0 0 16px}.card{background:white;border:1.5px solid var(--navy);box-shadow:6px 6px 0 var(--navy)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.product{overflow:hidden}.product>img{width:100%;aspect-ratio:1;object-fit:cover;display:block;height:auto;border-bottom:1px solid var(--navy)}.product>div{padding:18px 16px}.product p{font-size:18px;color:var(--muted);margin:0}.locations{background:var(--sand);border-block:4px solid var(--navy)}.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.store{padding:24px}.store h3{margin-bottom:20px}.store>a{display:block;font-size:18px;margin-bottom:9px;overflow-wrap:anywhere}.store>a:hover{text-decoration:underline}.store .actions{margin-top:24px}.coming{text-transform:uppercase;text-align:center;font-size:24px;font-weight:700;margin:36px 0 0}.franchise{background:#0b264d;color:var(--paper)}.franchise h2{font-size:60px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.benefit-grid article{border:1px solid #8a9ab2;padding:20px;min-height:165px}.benefit-icon{display:block;color:var(--red);font-family:Arial,sans-serif;font-size:29px;line-height:1.2;margin-bottom:10px}.benefit-grid h3{font-size:23px}.benefit-grid p{font-size:18px;margin-bottom:0}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:0;margin:50px 0 58px}.steps strong{font:48px 'Alfa Slab One',serif;color:var(--red)}.steps h3{margin:6px 0}.paper-form{background:#fff;color:var(--navy);padding:32px;max-width:672px;margin:0 auto;box-shadow:8px 8px 0 #071d3d44;border:1px solid var(--navy)}.paper-form .slab{font-size:24px;margin-bottom:28px;letter-spacing:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:14px;margin-bottom:16px}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;padding:9px 12px;color:var(--navy);background:white;border:1px solid #6b7586;border-radius:1px;font-size:16px;min-height:40px;margin-top:5px}textarea{resize:vertical}fieldset{border:0;padding:0;margin:0 0 16px}legend{font-size:14px;margin-bottom:7px}legend span{margin-left:8px;color:var(--muted)}.choices{display:flex;flex-wrap:wrap;gap:8px}.choices label{margin:0;position:relative}.choices input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.choices span{display:block;background:var(--sand);padding:7px 12px;font-size:14px}.choices input:checked+span{background:var(--red);color:white}.choices input:focus-visible+span{outline:3px solid #e38b22;outline-offset:3px}.form-note{font-size:14px;line-height:1.4;margin:18px 0}.full{width:100%;text-transform:none;box-shadow:none;border-color:var(--red);font-size:16px}.form-result{border-top:2px solid var(--navy);margin-top:25px;padding-top:20px}.form-result textarea{margin-bottom:20px}.form-result .button{font-size:16px}.copy-status{font-size:15px;margin-top:14px}.jobs{text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-weight:700;color:var(--red);margin-bottom:12px}.jobs h2{margin-bottom:18px}.lead{font-size:24px;color:var(--muted);margin-bottom:32px}.jobs form{text-align:left}.checkboxes{display:flex;flex-wrap:wrap;gap:16px}.checkboxes label{display:flex;align-items:center;gap:8px;margin:0}.checkboxes input{width:17px;height:17px;accent-color:var(--red)}.reviews{background:var(--sand);border-block:4px solid var(--navy)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}blockquote{margin:0;padding:24px}.stars{color:var(--red);letter-spacing:2px;margin-bottom:18px}blockquote p{font-size:20px}cite{font-style:normal;font-weight:700;text-transform:uppercase}.faq{max-width:850px}.faq details{border-bottom:2px solid var(--navy);padding:20px 0}.faq summary{text-transform:uppercase;font-weight:700;font-size:23px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary::after{content:'+';font-size:26px;color:var(--red)}.faq details[open] summary::after{content:'−'}.faq details p{margin:16px 0 0;color:var(--muted);font-size:20px}footer{background:#0b264d;color:var(--paper);padding:48px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.3fr;gap:48px}.footer-grid .brand{margin-bottom:20px}.footer-grid>div>a:not(.brand){display:block;margin:6px 0}.footer-grid h3{margin-bottom:18px}.legal{grid-column:1/-1;border-top:1px solid #637793;padding-top:24px;font-size:14px;margin:0}.footer-grid small{color:#ff6266}dialog{background:var(--paper);color:var(--navy);border:3px solid var(--navy);max-width:520px;width:calc(100% - 36px);padding:36px;box-shadow:8px 8px 0 var(--navy)}dialog::backdrop{background:#06162ee6;backdrop-filter:blur(5px)}.age-card>.brand{margin-bottom:28px}.age-card h2{font-size:32px;line-height:1.2;margin-bottom:18px}.age-card>p{font-size:20px}.age-card .actions{margin-top:24px}#age-message{margin-top:24px;color:var(--red)}[hidden]{display:none!important}@media(max-width:1050px){.container,.nav-wrap{width:calc(100% - 64px)}nav{gap:16px}nav a{font-size:18px}.nav-cta{display:none}.hero{gap:36px}h1{font-size:64px}.hero-logo{width:380px}.product-grid{gap:20px}.store{padding:18px}.store .actions{gap:12px}.store .button{font-size:16px;padding:6px 12px}.franchise h2{font-size:52px}}@media(max-width:700px){.container,.nav-wrap{width:calc(100% - 40px)}.nav-wrap{min-height:70px;flex-wrap:wrap;gap:0}.brand>span{font-size:24px}.menu-toggle{display:block;border:0;background:transparent;color:var(--navy);font-size:28px;padding:10px;cursor:pointer}nav{display:none;width:100%;padding:15px 0 20px;flex-wrap:wrap;gap:16px 24px}nav.open{display:flex}nav a{font-size:20px}.ticker{height:30px;font-size:12px}.hero{grid-template-columns:1fr;min-height:0;padding-block:48px;gap:42px}h1{font-size:clamp(48px,11vw,68px);line-height:1}.hero p{font-size:23px}.hero-logo{justify-self:center;width:min(350px,85%)}.section{padding-block:48px}h2,.franchise h2{font-size:36px;line-height:1.1;margin-bottom:28px}.product-grid{grid-template-columns:1fr 1fr;gap:22px 16px}.product>div{padding:14px}.product h3{font-size:20px}.product p{font-size:17px}.store-grid,.review-grid{grid-template-columns:1fr;gap:24px}.store{padding:24px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-grid article{padding:16px}.benefit-grid h3{font-size:21px}.benefit-grid p{font-size:17px}.steps{grid-template-columns:1fr 1fr;gap:24px;margin-block:36px}.steps strong{font-size:40px}.paper-form{padding:24px}.form-grid{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.faq summary{font-size:21px}}@media(max-width:380px){.product-grid,.benefit-grid{grid-template-columns:1fr}.button{font-size:16px}.paper-form{padding:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker>div{animation:none}.button:hover{transform:none}}

.hero{grid-template-columns:repeat(2,minmax(0,1fr))}.hero>div{min-width:0}.hero-logo{width:min(440px,100%)}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-logo{width:min(350px,85%);justify-self:center}.nav-wrap{flex-wrap:wrap}.menu-toggle{display:block;border:0;background:transparent;color:var(--navy);font-size:28px;padding:10px;cursor:pointer}nav{display:none;width:100%;padding:15px 0 20px;flex-wrap:wrap}nav.open{display:flex}}

.hero-logo{transform:none}
/* Keep the top menu visible across desktop, tablet, and phone layouts. */
header .menu-toggle{display:none}
header nav{display:flex}
@media(max-width:1050px){
  html{scroll-padding-top:148px}
  .nav-wrap{flex-wrap:wrap;padding-top:12px;gap:12px;justify-content:space-between}
  header .nav-cta{display:inline-flex;margin-left:auto}
  header nav{order:3;display:flex;width:100%;justify-content:space-between;gap:8px 18px;padding:10px 0 14px;border-top:1px solid #0b264d33}
  header nav a{font-size:19px;min-height:36px;display:flex;align-items:center;justify-content:center}
}
@media(max-width:500px){
  html{scroll-padding-top:204px}
  .nav-wrap{width:calc(100% - 32px)}
  header .brand{gap:8px}
  header .brand>span{font-size:21px}
  header .brand>img{width:40px;height:40px}
  header .brand small{font-size:10px;letter-spacing:3px}
  header .nav-cta{padding:6px 10px;font-size:16px;min-height:36px}
  header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;padding:8px 0}
  header nav a{font-size:18px;min-height:38px}
}
/* Larger brand emblem with a balanced two-line wordmark. */
.brand{gap:16px;align-items:center}
.brand>img{width:84px;height:84px;flex-shrink:0}
.brand>span{display:flex;flex-direction:column;gap:8px;font-size:30px;line-height:1.05;letter-spacing:.7px}
.brand small{margin:0;font-size:17px;font-weight:700;line-height:1.1;letter-spacing:4px}
.nav-wrap{min-height:108px}
html{scroll-padding-top:128px}
@media(max-width:1200px){
 .nav-wrap{flex-wrap:wrap;padding-top:12px;gap:12px;justify-content:space-between}
 header .nav-cta{display:inline-flex;margin-left:auto}
 header nav{order:3;display:flex;width:100%;justify-content:space-between;gap:8px 18px;padding:10px 0 14px;border-top:1px solid #0b264d33}
 header nav a{font-size:19px;min-height:36px;display:flex;align-items:center;justify-content:center}
 html{scroll-padding-top:192px}
}
@media(max-width:500px){
 header .brand{gap:12px}
 header .brand>img,.brand>img{width:72px;height:72px}
 header .brand>span,.brand>span{font-size:25px;letter-spacing:.3px;gap:7px}
 header .brand small,.brand small{font-size:14px;letter-spacing:3px}
 .nav-wrap{min-height:0;gap:12px}
 header .nav-cta{font-size:14px;padding:6px 8px;margin-left:0}
 header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;padding:8px 0}
 header nav a{font-size:18px;min-height:38px}
 html{scroll-padding-top:220px}
}
@media(max-width:380px){header .brand>span{font-size:22px}header .brand small{font-size:13px;letter-spacing:2.3px}header .brand{gap:8px}header .nav-cta{font-size:13px;padding:6px}}
/* Keep the full brand name on one line beside the logo. */
.brand>span{display:flex;flex-direction:row;align-items:baseline;gap:9px;white-space:nowrap;font-size:26px;letter-spacing:0}
.brand small{display:inline;font-family:'Barlow Condensed',sans-serif;font-size:22px;letter-spacing:1.2px;line-height:1;margin:0;white-space:nowrap}
header .brand>span{flex-direction:row}
@media(max-width:1200px){.brand>span{font-size:26px}.brand small{font-size:22px;letter-spacing:1.2px}}
@media(max-width:600px){
 header .brand,.brand{gap:10px}
 header .brand>img,.brand>img{width:64px;height:64px}
 header .brand>span,.brand>span{font-size:21px;gap:7px;letter-spacing:0}
 header .brand small,.brand small{font-size:18px;letter-spacing:.5px}
 header .nav-cta{display:none}
 .footer-grid>div:first-child{min-width:0}
 html{scroll-padding-top:202px}
}
@media(max-width:380px){header .brand>span,.brand>span{font-size:19px;gap:6px}header .brand small,.brand small{font-size:16px;letter-spacing:0}header .brand>img,.brand>img{width:60px;height:60px}}
/* Stacked wordmark: both lines share the same width. */
.brand>span,header .brand>span{display:grid;grid-template-columns:1fr;gap:7px;font-size:30px;line-height:1.05;letter-spacing:.5px;white-space:nowrap}
.brand small,header .brand small{display:block;width:100%;margin:0;font-size:19px;line-height:1.1;letter-spacing:2px;text-align:justify;text-align-last:justify;white-space:nowrap}
@media(max-width:600px){
 .brand>span,header .brand>span{font-size:27px;gap:6px;letter-spacing:.3px}
 .brand small,header .brand small{font-size:17px;letter-spacing:1.8px}
}
/* Natural spacing for the second line of the wordmark. */
.brand small,header .brand small{font-size:20px;letter-spacing:1.2px;text-align:center;text-align-last:auto;word-spacing:normal;white-space:nowrap;width:100%}
@media(max-width:600px){.brand small,header .brand small{font-size:18px;letter-spacing:1px}}

.form-honeypot{display:none!important}.jobs-email{margin:-12px 0 30px;font-size:20px}.jobs-email a,.jobs .form-note a{text-decoration:underline;text-underline-offset:3px}
/* Store map and nearby-location controls. */
.store-finder{margin-bottom:36px}.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px}.map-toolbar>div:first-child{max-width:590px}.map-intro{font-size:24px;font-weight:600;margin:0 0 5px}.location-privacy{font-size:16px;color:var(--muted);margin:0}.map-toolbar .actions{flex-shrink:0}.location-status{font-size:18px;min-height:27px;margin:20px 0 12px}#store-map{height:420px;width:100%;border:2px solid var(--navy);box-shadow:6px 6px 0 var(--navy);background:#d8e0d6;z-index:0}.map-caption{font-size:14px;color:var(--muted);margin:14px 0 0}.map-error{padding:12px 16px;background:white;border:1px solid var(--navy);margin:14px 0}.wizard-map-pin{background:var(--red);color:white;border:2px solid var(--navy);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:2px 2px 0 #0b264d55}.wizard-map-pin span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font:700 20px 'Barlow Condensed',sans-serif}.leaflet-marker-icon.wizard-map-pin{border-radius:50%;}.store-popup{font:18px/1.35 'Barlow Condensed',sans-serif;color:var(--navy)}.store-popup strong{font-size:22px}.store-popup p{margin:8px 0}.store-popup a{display:block;color:var(--navy);margin:8px 0;text-decoration:underline}.store-popup .popup-directions{color:var(--red);font-weight:700}.store-distance{color:var(--red);font-size:17px;font-weight:700;margin:0 0 14px}.selected-store{outline:3px solid var(--red);outline-offset:3px}.view-store-map{display:block;margin-top:22px;padding:0;background:none;border:0;color:var(--navy);text-decoration:underline;text-underline-offset:4px;cursor:pointer;font-size:18px;font-weight:600}.map-toolbar button:disabled{opacity:.6;cursor:wait}.leaflet-control-attribution{font-size:12px!important}.leaflet-control-zoom a{font-family:Arial,sans-serif!important}@media(max-width:950px){.map-toolbar{align-items:flex-start;flex-direction:column;gap:18px}.map-toolbar .actions{flex-shrink:1}}@media(max-width:600px){#store-map{height:340px}.map-toolbar .button{font-size:16px}.map-intro{font-size:22px}.store-finder{margin-bottom:30px}}

/* Categorized, accessible FAQ accordions. */
.faq{max-width:1000px}.faq h2{font-size:clamp(32px,5vw,56px)}.faq-intro{font-size:23px;color:var(--muted);max-width:640px;margin:0 0 26px}.faq-topics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:42px}.faq-topics a{padding:10px 16px;border:1px solid var(--navy);font-size:18px;font-weight:700;text-decoration:none}.faq-topics a:hover,.faq-topics a:focus-visible{background:var(--navy);color:white}.faq-group{margin-top:40px}.faq-group>h3{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:28px;margin:0;padding:16px 20px;background:var(--navy);color:white}.faq-group>h3 span{font-size:15px;font-weight:400;white-space:nowrap}.faq details{padding:20px 4px}.faq summary{font-size:22px;text-transform:none;line-height:1.3}.faq summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}.faq details p{max-width:790px;line-height:1.55}.faq details p a,.faq-help p a{text-decoration:underline;text-underline-offset:3px;font-weight:600}.faq-help{padding:28px;margin-top:40px;border:2px solid var(--navy);box-shadow:5px 5px 0 var(--navy)}.faq-help h3{font-size:28px;margin:0 0 10px}.faq-help p{font-size:20px;margin:0 0 22px}@media(max-width:600px){.faq-topics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.faq-topics a{text-align:center;padding:10px 8px;font-size:17px}.faq-group>h3{font-size:24px;padding:14px}.faq summary{font-size:20px}.faq details p{font-size:18px}.faq-help{padding:20px}.faq-group{margin-top:30px}}

/* Persistent customer-support contact. */
.whatsapp-chat{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:1000;display:flex;align-items:center;gap:10px;padding:12px 20px;background:#126b3b;color:#fff;border:2px solid #fff;border-radius:32px;box-shadow:0 4px 18px #0003;text-decoration:none;font-size:20px;font-weight:700;line-height:1.1}.whatsapp-chat small{display:block;font-size:13px;font-weight:400;margin-top:4px;letter-spacing:.4px}.whatsapp-chat:hover{background:#0c542d}.whatsapp-chat:focus-visible{outline:3px solid var(--navy);outline-offset:4px}footer{padding-bottom:105px}@media(max-width:600px){.whatsapp-chat{right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:10px 16px;font-size:18px}}

.goods-notice{border-left:4px solid var(--navy);background:#fff8;padding:16px 20px;margin:0 0 28px;color:var(--navy)}.goods-notice strong{font-size:20px}.goods-notice p{font-size:17px;line-height:1.5;margin:6px 0 0;max-width:850px}


/* Separate category pages and linked category cards. */
.category-card-link{display:block;height:100%}.category-card-link>img{width:100%;aspect-ratio:1;object-fit:cover;display:block;height:auto;border-bottom:1px solid var(--navy)}.category-card-link>div{padding:18px 16px}.category-card-link:hover h3{text-decoration:underline;text-underline-offset:4px}.category-card-link:focus-visible{outline-offset:-4px}.category-page h1{font-size:clamp(32px,5vw,60px);max-width:950px;line-height:1.1;margin:24px 0 36px}.category-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;padding:0;width:auto}.category-breadcrumb a{font-size:18px;text-transform:none;text-decoration:underline}.category-content{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}.category-content figure{margin:0;border:2px solid var(--navy);background:white;box-shadow:6px 6px 0 var(--navy)}.category-content img{width:100%;height:auto;display:block}.category-description>p{font-size:24px;margin-bottom:28px}.category-description .goods-notice{margin-bottom:28px}@media(max-width:700px){.category-content{grid-template-columns:1fr;gap:30px}.category-card-link>div{padding:14px}.category-page h1{overflow-wrap:anywhere}}

/* Top-level pages retain the original section typography. */
.section-page-title{font-size:48px;max-width:none;margin:0 0 40px;line-height:1}.franchise .section-page-title{font-size:60px}.jobs .section-page-title{margin-bottom:18px}.faq .section-page-title{font-size:clamp(32px,5vw,56px)}header nav a[aria-current="page"]{color:var(--red);text-decoration:underline;text-underline-offset:6px}@media(max-width:700px){.section-page-title,.franchise .section-page-title{font-size:36px;line-height:1.1;margin-bottom:28px}}
