.shop-page{background:#fffdf8}.shop-container{max-width:1200px;padding:0 24px;margin:auto}.shop-header{display:flex;justify-content:space-between;align-items:center;padding:16px max(24px,calc((100vw - 1152px)/2));background:white;border-bottom:1px solid #e2e8f0;gap:16px}.shop-brand{display:flex;align-items:center;gap:12px;color:#1e293b;font-family:Fredoka,sans-serif;font-size:1.3rem}.shop-brand img{width:54px;height:54px;object-fit:cover;border-radius:12px}.shop-brand small{display:block;font-family:Inter,sans-serif;font-size:.75rem;color:#64748b}.shop-header nav{display:flex;gap:20px;align-items:center}.shop-header nav a{color:#334155;font-weight:600}.shop-header nav a:last-child{background:#fffbeb;padding:10px 16px;border-radius:99px}#cart-count{background:#6366f1;color:white;padding:2px 7px;border-radius:99px;margin-left:4px}.shop-hero{background:linear-gradient(120deg,#fffbeb,#fef3c7 60%,#e0f2fe);padding:64px 0;position:relative;overflow:hidden}.shop-hero h1{font-size:clamp(2.8rem,6vw,4.7rem);margin:20px 0}.shop-hero em{font-style:normal;color:#9a4b08}.shop-hero p{font-size:1.1rem;max-width:650px}.shop-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#80560c;font-size:.75rem}.hero-dots{position:absolute;right:8%;top:24%;font-family:Fredoka,sans-serif;font-size:7rem;color:#6366f1;transform:rotate(-12deg);opacity:.22;pointer-events:none}.hero-dots span{color:#0f9870}.shop-button{display:inline-flex;align-items:center;justify-content:center;background:#4f46e5;color:white;border:2px solid transparent;border-radius:99px;padding:12px 22px;font-weight:600;font-size:1rem;min-height:48px;line-height:1.4}.shop-button:hover{background:#4338ca;color:white}.shop-button:disabled{background:#e2e8f0;color:#475569;cursor:not-allowed}.shop-page :focus-visible{outline:3px solid #0e7490;outline-offset:4px}.shop-content{padding-top:56px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:2.25rem;margin:8px 0 12px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:1px solid #e2e8f0;background:white;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 16px #1e293b08}.product-card>img{width:100%;height:285px;object-fit:cover}.product-card:first-child>img{object-position:center}.product-body{padding:24px;display:flex;flex-direction:column;flex:1}.product-label{color:#6d28d9;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.product-body h3{font-size:1.55rem;margin:10px 0}.product-body p{font-size:.95rem;flex:1}.product-price{font-size:1.6rem;font-weight:700;margin-bottom:12px}.product-body label{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.shop-page input,.shop-page select{background:white;font:inherit;min-width:0;border:1px solid #94a3b8;border-radius:10px;padding:10px;min-height:46px;color:#1e293b;width:100%}.product-body input{width:80px}.shop-note{font-size:.85rem;margin-top:16px;color:#64748b}.checkout-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;margin:64px 0;align-items:start}.cart-panel,.checkout-panel{background:white;border:1px solid #e2e8f0;border-radius:24px;padding:28px;scroll-margin-top:20px}.checkout-layout h2{font-size:1.7rem;margin-bottom:16px}.cart-line{padding:18px 0;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:1fr auto;gap:12px}.cart-line strong{display:block}.cart-line input{width:74px}.cart-line label{font-size:.85rem;display:flex;gap:10px;align-items:center}.text-button{color:#4338ca;text-decoration:underline;min-height:44px;font-size:.9rem}.cart-line button{justify-self:start}.cart-panel dl{margin-top:24px}.cart-panel dl>div{display:flex;justify-content:space-between;gap:16px;margin:8px 0}.cart-panel dd{font-weight:600}.cart-panel dl>div:last-child{border-top:1px solid #e2e8f0;padding-top:16px;font-size:1.15rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{font-size:.9rem;font-weight:500}.form-grid input,.form-grid select{display:block;margin-top:4px}.wide{grid-column:1/-1}.checkout-button{width:100%;margin-top:12px}#availability,#checkout-status{margin-top:18px;font-size:.9rem}#checkout-status:not(:empty){background:#eef2ff;padding:16px;border-radius:12px;overflow-wrap:anywhere}#payment-section h3{margin:20px 0 12px}#payment-summary{white-space:pre-line}.shop-help{text-align:center;background:#fef3c7;border-radius:24px;padding:32px;margin-bottom:56px}.shop-help h2{margin-bottom:12px}.shop-page a:not(.shop-button):not(.shop-brand){color:#4338ca}.shop-footer{padding:28px 24px;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;background:white;border-top:1px solid #e2e8f0;font-size:.85rem}.cart-feedback{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#1e293b;color:white;padding:12px 24px;border-radius:99px;z-index:20;max-width:90vw;text-align:center}.cart-feedback:empty{display:none}.skip-link{position:absolute;left:12px;top:-80px;background:white;padding:12px;z-index:30}.skip-link:focus{top:12px}[hidden]{display:none!important}@media(max-width:900px){.hero-dots{right:0;font-size:5rem;top:38%}.product-grid{gap:16px}.product-body{padding:18px}.product-card>img{height:230px}.checkout-layout{gap:20px}}@media(max-width:700px){.shop-header{padding:12px 16px;flex-wrap:wrap}.shop-header nav{width:100%;justify-content:space-between}.shop-container{padding-left:18px;padding-right:18px}.shop-hero{padding:40px 0}.hero-dots{display:none}.product-grid,.checkout-layout{grid-template-columns:1fr}.product-card>img{height:320px}.product-body{padding:24px}.checkout-layout{margin-top:40px}.cart-panel,.checkout-panel{padding:20px}.shop-help{padding:24px 16px}.shop-footer{gap:12px;text-align:center}.shop-footer span{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* A persistent cart entry point with a native accessible checkout dialog. */
.shop-header{position:sticky;top:0;z-index:100;background:#fffefbf5;backdrop-filter:blur(12px)}
.shop-header nav{flex-wrap:nowrap}.cart-toggle{display:inline-flex;align-items:center;gap:9px;background:#fffbeb;color:#4338ca;padding:10px 16px;border:1px solid #f1e5bd;border-radius:99px;font-size:1rem;font-weight:600;min-height:48px;white-space:nowrap}.cart-toggle:hover{background:#fef3c7}.cart-open{overflow:hidden}.cart-dialog{border:0;border-radius:24px;box-shadow:0 20px 80px #0f172a40;padding:0;width:min(560px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;background:#fffdf8;color:#1e293b;overscroll-behavior:contain}.cart-dialog.is-checkout{width:min(1000px,calc(100vw - 32px))}.cart-dialog::backdrop{background:#0f172a80;backdrop-filter:blur(3px)}.cart-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#fffdf8;position:sticky;top:0;z-index:5}.cart-dialog-header h2{font-size:1.55rem}.cart-close{font-size:2rem;line-height:1;min-width:44px;min-height:44px;color:#334155;border-radius:50%}.cart-close:hover{background:#fef3c7}.cart-dialog .checkout-layout{margin:0;padding:24px;gap:24px;grid-template-columns:1fr}.cart-dialog.is-checkout .checkout-layout{grid-template-columns:1fr 1.15fr}.cart-dialog .cart-panel,.cart-dialog .checkout-panel{padding:20px;min-width:0}.cart-dialog .cart-panel h2{font-size:1.35rem}.cart-dialog #continue-shopping{display:block;margin:12px auto 0}.cart-dialog #back-to-cart{margin-bottom:12px}.shop-help{margin-top:40px}#collection{scroll-margin-top:110px}.cart-feedback{z-index:110}
@media(max-width:700px){.shop-header{flex-wrap:nowrap;gap:8px;padding:12px}.shop-brand{font-size:1rem;gap:8px}.shop-brand img{width:40px;height:40px}.shop-brand small{font-size:.65rem}.shop-header nav{width:auto;gap:0}.shop-header nav>a{display:none}.cart-toggle{padding:8px 10px;gap:5px}.cart-toggle-label{display:none}#cart-count{margin-left:0}.cart-dialog,.cart-dialog.is-checkout{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:18px}.cart-dialog-header{padding:12px 16px}.cart-dialog-header h2{font-size:1.35rem}.cart-dialog .checkout-layout,.cart-dialog.is-checkout .checkout-layout{padding:14px;grid-template-columns:1fr;gap:16px}.cart-dialog .cart-panel,.cart-dialog .checkout-panel{padding:16px}.cart-dialog.is-checkout #cart{display:none}}

.shop-page .product-card>img{height:auto;aspect-ratio:1;object-fit:contain;background:#f4e9d9}.product-body .product-photo-note{flex:0;font-size:.75rem;margin:0 0 16px;color:#64748b}.product-photo-note a{text-decoration:underline}
