:root{--cream:#fcf5e9;--plum:#3d1735;--purple:#773f88;--lavender:#eee2f0;--muted:#685961;--line:#d6c6d4}*{box-sizing:border-box}body{margin:0;color:var(--plum);background:var(--cream);font:16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:12px;z-index:30}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.04em}h1{font-size:clamp(3.3rem,7vw,6.2rem);font-weight:750;margin:20px 0 26px}h1 span{color:var(--purple)}h2{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:20px}h3{font-size:1.55rem}a{text-decoration:none}.shop-header{max-width:1280px;margin:auto;padding:24px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-size:1.25rem;font-weight:750;letter-spacing:-.03em}.brand-sun{color:var(--purple)}nav{display:flex;gap:24px;font-size:.85rem;font-weight:600}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--purple);background:var(--purple);color:#fff;border-radius:40px;padding:13px 23px;font-weight:650;font-size:.9rem;line-height:1.4;text-decoration:none}.button:hover{background:var(--plum);border-color:var(--plum)}.button.secondary{background:transparent;color:var(--plum)}.eyebrow{font-size:.7rem;font-weight:750;letter-spacing:.18em;color:var(--purple)}.menu-hero{text-align:center;padding:64px 24px 50px;max-width:900px;margin:auto}.menu-hero>p:not(.eyebrow){color:var(--muted);font-size:1.08rem}.journey{display:flex;justify-content:center;gap:25px;margin-top:40px;flex-wrap:wrap;font-size:.78rem}.journey b{color:var(--purple);margin-right:5px}.catalog-section{background:#fff;padding:65px max(24px,calc((100vw - 1160px)/2)) 80px;min-height:400px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-heading>p{font-size:.88rem;color:var(--muted)}.catalog-tools{display:flex;align-items:end;gap:25px;flex-wrap:wrap;margin:25px 0 30px}.search-label{width:230px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{padding:9px 15px;border:1px solid var(--line);border-radius:30px;background:white;color:var(--plum);font-size:.8rem}.filters button[aria-pressed=true]{background:var(--plum);color:white;border-color:var(--plum)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-card{display:flex;flex-direction:column;border:1px solid #b88ebe;border-radius:20px;background:var(--lavender);padding:27px;min-height:330px;overflow:hidden}.product-card:nth-child(3n+2){background:#fbf3e8;border-color:#d7baa4}.product-card:nth-child(3n+3){background:#f5eef8}.product-card .category{font-size:.65rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;display:flex;justify-content:space-between;gap:10px}.product-card h3{margin:30px 0 12px}.product-card .description{font-size:.86rem;color:var(--muted);flex:1}.price-row{display:flex;justify-content:space-between;align-items:center;margin:14px 0 18px;gap:12px}.price-row strong{font-size:1.25rem}.price-row span{font-size:.78rem}.product-card .small{margin-top:12px;margin-bottom:0}.small{font-size:.76rem;color:var(--muted)}.empty-menu{background:var(--cream);border:1px solid var(--line);border-radius:22px;max-width:760px;margin:30px auto 0;padding:48px;text-align:center}.empty-menu>span{font-size:3rem;color:var(--purple)}.empty-menu p{max-width:550px;margin:20px auto 28px;color:var(--muted)}.empty-menu .text-link{display:block;margin:20px auto 0;font-size:.86rem}.care-note{padding:70px max(24px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1fr 1fr;gap:70px}.care-note>div:last-child{color:var(--muted);font-size:.92rem}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:35px max(24px,calc((100vw - 1160px)/2));background:var(--plum);color:white;font-size:.85rem}footer p{margin:0}dialog{width:min(640px,calc(100% - 24px));max-height:90dvh;border:1px solid var(--line);border-radius:24px;padding:38px;color:var(--plum);background:#fffdf9;box-shadow:0 30px 100px #24102640}dialog::backdrop{background:#24102699;backdrop-filter:blur(3px)}dialog h2{font-size:2rem;padding-right:20px}.close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:2rem;color:var(--plum);width:42px;height:42px}.cart-dialog{margin-right:16px;width:min(510px,calc(100% - 24px))}label{display:block;font-size:.8rem;font-weight:650}input,select,textarea{display:block;width:100%;border:1px solid #baa8b7;border-radius:9px;background:white;padding:12px;color:var(--plum);margin:7px 0 0;font-size:1rem}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #a273b0;outline-offset:3px}form{display:grid;gap:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}fieldset{border:1px solid var(--line);border-radius:13px;padding:18px;margin:0 0 18px}legend{font-weight:700;font-size:.9rem;padding:0 6px}.choice-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:12px 0}.choice-row input{width:80px;margin:0}.choice-row small{display:block;color:var(--muted);font-weight:400;font-size:.7rem;max-width:340px}.wide{width:100%}.check{display:flex;align-items:start;gap:10px;font-size:.75rem;font-weight:400}.check input{width:19px;height:19px;flex-shrink:0;margin:0}.cart-line{border-bottom:1px solid var(--line);padding:20px 0}.cart-line h3{font-size:1.1rem;margin:0 0 8px}.cart-line p{font-size:.8rem;margin:4px 0}.line-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.line-actions input{width:70px;margin:0;padding:7px}.text-button{border:0;background:transparent;color:var(--purple);font-size:.8rem;text-decoration:underline;padding:8px}.preview-banner{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;background:#f1d7ab;padding:15px 25px;font-size:.8rem}.preview-banner span{max-width:650px}[role=alert]{color:#a13245;font-size:.85rem}.status-shell{max-width:760px;margin:60px auto 90px;padding:0 24px}.status-card{background:#fff;border:1px solid var(--line);padding:35px;border-radius:20px}.status-stage{font-size:1.7rem;font-weight:700}.status-link{overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-header{padding:20px 24px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;gap:20px}.care-note{gap:30px}}@media(max-width:560px){.shop-header{gap:16px;padding:18px}.shop-header .button{padding:10px 14px}.logo{font-size:1.1rem}nav{font-size:.75rem;gap:15px;justify-content:space-between}.menu-hero{padding-top:40px}.journey{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:300px;margin:30px auto 0}.catalog-section{padding-top:40px}.section-heading{display:block}.product-grid{grid-template-columns:1fr}.product-card{min-height:300px;padding:24px}.product-card h3{margin-top:25px}.catalog-tools{display:block}.search-label{width:100%;margin-bottom:20px}.care-note{grid-template-columns:1fr;gap:10px;padding-top:45px;padding-bottom:45px}.empty-menu{padding:30px 22px}.fields{grid-template-columns:1fr}dialog{padding:30px 22px}.cart-dialog{margin:auto}.choice-row{gap:12px}.choice-row input{width:65px}.status-shell{margin-top:35px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
