:root{--blue:#00619f;--blue2:#2a8ec5;--ink:#17364a;--muted:#6e7f89;--pink:#fff1f7;--pink2:#f9d9e8;--cream:#fffaf7;--line:#ecdfe6;--white:#fff;--green:#397c68;--red:#b34055;--shadow:0 20px 60px rgba(24,75,105,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Poppins,system-ui,sans-serif}.hidden{display:none!important}button,input,textarea,select{font:inherit}button{cursor:pointer}.store-loading{min-height:100vh;display:grid;place-items:center;align-content:center;gap:18px;color:var(--blue)}.store-loading img{width:84px;height:84px;border-radius:50%;object-fit:contain;animation:pulse 1.4s infinite}@keyframes pulse{50%{transform:scale(.94);opacity:.65}}
.announcement{padding:8px 20px;background:var(--blue);color:#fff;text-align:center;font-size:12px;font-weight:600}.store-header{position:sticky;top:0;z-index:20;height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:10px clamp(18px,5vw,70px);background:rgba(255,250,247,.92);border-bottom:1px solid rgba(236,223,230,.9);backdrop-filter:blur(14px)}.store-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.store-brand img{width:48px;height:48px;border-radius:50%;object-fit:contain;background:#fff}.store-brand span{display:grid;line-height:1.12}.store-brand strong{color:var(--blue);font-size:14px;letter-spacing:.09em}.store-brand small{font-size:10px;color:var(--muted)}.store-header nav{display:flex;gap:7px;align-items:center}.store-header nav a,.store-header nav button{border:0;background:transparent;color:var(--ink);text-decoration:none;font-size:12px;font-weight:700;padding:10px 13px;border-radius:99px}.store-header nav a:hover,.store-header nav button:hover{background:var(--pink)}.cart-button{justify-self:end;display:flex;align-items:center;gap:8px;border:0;border-radius:99px;background:var(--ink);color:#fff;padding:10px 13px 10px 16px;font-size:12px;font-weight:700}.cart-button b{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:99px;background:var(--pink2);color:var(--ink)}
main{overflow:hidden}.banner-section{position:relative;max-width:1500px;margin:22px auto 0;padding:0 clamp(14px,3vw,38px)}.banner-track{position:relative;min-height:clamp(310px,42vw,570px);border-radius:30px;overflow:hidden;background:var(--pink);box-shadow:var(--shadow)}.banner-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .65s ease}.banner-slide.active{opacity:1;pointer-events:auto}.banner-slide img{width:100%;height:100%;object-fit:cover}.banner-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,42,59,.72),rgba(16,42,59,.13) 70%)}.banner-content{position:absolute;z-index:2;left:clamp(24px,6vw,85px);top:50%;transform:translateY(-50%);max-width:560px;color:#fff}.banner-content h1{font:400 clamp(38px,6vw,78px)/.98 'DM Serif Display',serif;margin:0 0 14px}.banner-content p{max-width:480px;margin:0 0 24px;font-size:clamp(13px,1.5vw,17px)}.banner-content a{display:inline-flex;padding:12px 18px;border-radius:99px;background:#fff;color:var(--blue);font-weight:800;text-decoration:none;font-size:12px}.banner-dots{position:absolute;z-index:3;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:6px}.banner-dots button{width:8px;height:8px;border:0;border-radius:99px;padding:0;background:rgba(255,255,255,.55);transition:.2s}.banner-dots button.active{width:25px;background:#fff}.banner-empty{min-height:390px;display:grid;place-items:center;padding:50px;border-radius:30px;background:radial-gradient(circle at 80% 10%,#d5eef9,transparent 30%),linear-gradient(135deg,var(--pink),#fff);text-align:center}.banner-empty h1{font:400 clamp(45px,7vw,85px)/1 'DM Serif Display',serif;margin:0;color:var(--blue)}.banner-empty p{color:var(--muted)}
.snackbox-callout{max-width:1380px;margin:60px auto;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:40px;padding:clamp(30px,5vw,70px);border-radius:32px;background:var(--pink);position:relative;overflow:hidden}.snackbox-callout:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#d7eef7;right:-100px;top:-110px}.eyebrow{display:block;margin-bottom:9px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.snackbox-copy h2,.section-heading h2,.about-section h2{font:400 clamp(34px,5vw,62px)/1.05 'DM Serif Display',serif;margin:0}.snackbox-copy p{max-width:660px;color:var(--muted);font-size:14px;line-height:1.8}.snackbox-notes{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 25px}.snackbox-notes span{padding:7px 10px;border-radius:99px;background:#fff;color:var(--ink);font-size:10px;font-weight:700}.primary-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:15px;padding:14px 18px;background:var(--blue);color:#fff;font-weight:800}.snackbox-copy .primary-button{width:auto;display:inline-flex;border-radius:99px}.snackbox-art{position:relative;z-index:1;justify-self:center;width:min(390px,80vw);aspect-ratio:1.3;background:#c59662;border-radius:12px;transform:rotate(4deg);box-shadow:0 28px 50px rgba(93,61,37,.25);padding:22px}.box-lid{position:absolute;inset:13px;border:2px solid rgba(255,255,255,.5);display:grid;place-items:center;color:#fff;font:400 27px 'DM Serif Display',serif;letter-spacing:.12em}.box-grid{position:absolute;inset:28px;display:grid;grid-template-columns:1fr 1fr;gap:10px;opacity:0;transition:.3s}.box-grid i{border-radius:50%;background:var(--pink2)}.snackbox-art:hover .box-lid{opacity:0}.snackbox-art:hover .box-grid{opacity:1}
.products-section{max-width:1380px;margin:0 auto;padding:20px clamp(16px,3vw,30px) 80px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px}.section-heading p{max-width:430px;text-align:right;color:var(--muted);font-size:13px}.category-filters{display:flex;gap:8px;overflow-x:auto;padding:24px 0 15px;scrollbar-width:none}.category-filters::-webkit-scrollbar{display:none}.category-filters button{flex:0 0 auto;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--ink);padding:9px 14px;font-size:11px;font-weight:700}.category-filters button.active{background:var(--ink);border-color:var(--ink);color:#fff}.promo-strip{padding:12px 16px;margin-bottom:16px;border-radius:14px;background:#e4f4fb;color:#235b78;font-size:12px;font-weight:600}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product-card{position:relative;border:1px solid var(--line);border-radius:22px;background:#fff;padding:10px;overflow:hidden;transition:.2s}.product-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(20,68,95,.1)}.product-image{aspect-ratio:1;border-radius:16px;background:#faf8fa;display:grid;place-items:center;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain}.product-placeholder{font:400 55px 'DM Serif Display',serif;color:var(--pink2)}.product-badge{position:absolute;top:20px;left:20px;z-index:2;padding:6px 9px;border-radius:99px;background:#fff;color:var(--blue);font-size:9px;font-weight:800;box-shadow:0 4px 15px rgba(0,0,0,.08)}.product-copy{padding:13px 5px 5px}.product-category{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}.product-copy h3{margin:4px 0 5px;font-size:14px;line-height:1.35}.product-copy p{height:34px;overflow:hidden;margin:0;color:var(--muted);font-size:10px}.product-buy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px}.product-buy strong{font-size:14px}.product-buy button{width:35px;height:35px;border:0;border-radius:50%;background:var(--pink);color:var(--blue);font-size:20px;font-weight:700}.product-buy button:hover{background:var(--blue);color:#fff}.product-buy button:disabled{opacity:.35;cursor:not-allowed}.stock-note{font-size:9px;color:var(--muted)}
.about-section{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:clamp(45px,7vw,95px);background:var(--ink);color:#fff}.about-section .eyebrow{color:#8fd2f2}.about-section p{max-width:570px;margin:0 0 15px;color:#c5d2d9;font-size:13px;line-height:1.8}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px clamp(20px,6vw,80px);background:#fff}footer p{font-size:10px;color:var(--muted)}
.overlay{position:fixed;inset:0;z-index:40;background:rgba(18,39,52,.42);backdrop-filter:blur(3px)}.cart-drawer{position:fixed;z-index:41;right:0;top:0;width:min(430px,100vw);height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:#fff;transform:translateX(105%);transition:.25s;box-shadow:-20px 0 50px rgba(0,0,0,.12)}.cart-drawer.open{transform:none}.drawer-head{display:flex;align-items:start;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line)}.drawer-head h2{font:400 36px 'DM Serif Display',serif;margin:0}.drawer-head button,.dialog-close{width:38px;height:38px;border:0;border-radius:50%;background:var(--pink);color:var(--ink);font-size:23px}.cart-items{overflow:auto;padding:15px 22px}.cart-empty{text-align:center;padding:70px 20px;color:var(--muted)}.cart-line{display:grid;grid-template-columns:65px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-line img,.cart-line .product-placeholder{width:65px;height:65px;border-radius:12px;object-fit:contain;background:#faf8fa;display:grid;place-items:center}.cart-line h3{font-size:12px;margin:0 0 4px}.cart-line strong{font-size:11px}.qty-control{display:flex;align-items:center;gap:7px;margin-top:7px}.qty-control button{width:25px;height:25px;border:0;border-radius:50%;background:var(--pink);color:var(--blue)}.qty-control span{font-size:11px;font-weight:700}.remove-line{border:0;background:transparent;color:var(--red);font-size:17px}.cart-summary{padding:20px 24px;border-top:1px solid var(--line);background:#fff}.cart-summary>div{display:flex;justify-content:space-between;margin-bottom:6px}.cart-summary small{display:block;color:var(--muted);font-size:9px;margin-bottom:14px}
#storeDialog{width:min(760px,calc(100vw - 24px));max-height:92dvh;padding:0;border:0;border-radius:25px;background:#fff;color:var(--ink);box-shadow:var(--shadow);overflow:auto}#storeDialog::backdrop{background:rgba(17,39,53,.5);backdrop-filter:blur(4px)}.dialog-close{position:sticky;z-index:5;float:right;top:15px;margin:15px 15px -53px 0}.dialog-content{padding:clamp(22px,5vw,45px)}.dialog-content>h2{font:400 clamp(32px,5vw,48px)/1 'DM Serif Display',serif;margin:4px 45px 10px 0}.dialog-content>p{color:var(--muted);font-size:12px}.step-indicator{display:flex;gap:6px;margin:22px 0}.step-indicator span{height:5px;flex:1;border-radius:99px;background:var(--line)}.step-indicator span.active{background:var(--blue)}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.choice-card{position:relative;border:1px solid var(--line);border-radius:16px;padding:12px;background:#fff;text-align:left;color:var(--ink)}.choice-card.selected{border:2px solid var(--blue);padding:11px;background:#f4fbfe}.choice-card img{width:100%;aspect-ratio:1.7;object-fit:contain;border-radius:11px;background:#faf8fa}.choice-card strong,.choice-card small{display:block}.choice-card strong{font-size:12px;margin-top:6px}.choice-card small{font-size:9px;color:var(--muted)}.snack-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:430px;overflow:auto}.snack-choice{border:1px solid var(--line);border-radius:13px;background:#fff;padding:8px;text-align:left}.snack-choice.selected{border-color:var(--blue);background:#f1f9fd}.snack-choice:disabled{opacity:.4}.snack-choice img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:9px;background:#fafafa}.snack-choice strong{display:block;font-size:10px;line-height:1.3;margin-top:5px}.snack-choice small{font-size:9px;color:var(--blue)}.wizard-actions{display:flex;justify-content:space-between;gap:9px;margin-top:22px}.secondary-button{border:1px solid var(--line);border-radius:14px;padding:12px 16px;background:#fff;color:var(--ink);font-weight:700}.wizard-actions .primary-button{width:auto}.field{margin:0 0 13px}.field label{display:block;margin-bottom:6px;font-size:10px;font-weight:800}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#fff;color:var(--ink);outline:none}.field textarea{min-height:80px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,97,159,.09)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.checkout-total{margin:17px 0;padding:14px;border-radius:14px;background:var(--pink)}.checkout-total div{display:flex;justify-content:space-between;gap:15px;margin:5px 0;font-size:11px}.checkout-total .grand{padding-top:8px;border-top:1px solid var(--line);font-size:14px}.store-toast{position:fixed;z-index:100;left:50%;bottom:25px;transform:translateX(-50%);max-width:min(500px,calc(100vw - 30px));padding:12px 17px;border-radius:99px;background:var(--ink);color:#fff;font-size:11px;box-shadow:var(--shadow)}.store-toast.error{background:var(--red)}.success-order{text-align:center;padding:20px 0}.success-order .success-icon{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 15px;border-radius:50%;background:#e1f5ee;color:var(--green);font-size:30px}.success-order h2{font:400 38px 'DM Serif Display',serif;margin:0}.success-order strong{display:block;color:var(--blue);margin:9px 0}.success-order a{margin-top:16px;text-decoration:none}
@media(max-width:980px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.snackbox-callout{margin-left:16px;margin-right:16px}.store-header{grid-template-columns:1fr auto}.store-header nav{display:none}}
@media(max-width:700px){.store-header{height:66px;padding:8px 13px}.store-brand img{width:42px;height:42px}.cart-button span{display:none}.banner-section{margin-top:10px}.banner-track{min-height:420px;border-radius:22px}.banner-slide img{object-position:center}.banner-slide:after{background:linear-gradient(0deg,rgba(16,42,59,.75),rgba(16,42,59,.06))}.banner-content{left:22px;right:22px;top:auto;bottom:48px;transform:none}.banner-content h1{font-size:44px}.snackbox-callout{grid-template-columns:1fr;margin-top:30px;padding:30px 23px}.snackbox-art{width:260px;grid-row:1}.section-heading{align-items:start;display:block}.section-heading p{text-align:left}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-card{border-radius:17px;padding:7px}.product-image{border-radius:12px}.product-copy{padding:10px 3px 3px}.product-copy p{display:none}.product-copy h3{font-size:11px;min-height:30px}.product-buy{align-items:end}.product-buy strong{font-size:11px}.stock-note{font-size:8px}.about-section{grid-template-columns:1fr;padding:55px 25px;gap:25px}footer{display:grid}.choice-grid{grid-template-columns:1fr 1fr}.snack-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}}
