@font-face{font-family:"Cormorant Garamond";src:url("../fonts/cormorant-italic.woff2") format("woff2");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"Jost";src:url("../fonts/jost.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{--white:#fff;--ink:#30263c;--muted:#7b7284;--quiet:#a39aaa;--purple:#564080;--purple-dark:#423064;--purple-light:#f4f0f9;--red:#df252f;--orange:#f18b35;--line:#ebe6ef;--surface:#faf8fc;--display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--body:"Jost","Segoe UI",Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.35}
button,input,select,textarea{min-width:0}
a{color:inherit}
button,a,input,select,textarea{outline-offset:4px}
:focus-visible{outline:2px solid var(--purple)}
button{border-radius:0}
svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}
[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:10px 18px;background:#fff;border:2px solid var(--purple);border-radius:6px;transform:translateY(-150%);text-decoration:none}
.skip-link:focus{transform:none}
.brand-logo{position:relative;width:290px;max-width:100%;aspect-ratio:2.48;overflow:hidden;background:#fff}
.brand-logo img{position:absolute;width:140%;height:auto;max-width:none;left:-20%;top:-90%;display:block}
.button{min-height:44px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:7px;font:500 14px/1.3 var(--body);text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.primary{background:var(--purple);color:#fff}
.primary:hover{background:var(--purple-dark)}
.secondary{background:#fff;border-color:var(--line);color:var(--purple)}
.secondary:hover{background:var(--purple-light);border-color:#d4c8e5}
.icon-button{width:40px;height:40px;padding:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:7px;color:var(--purple)}
.icon-button:hover:not(:disabled){background:var(--purple-light);border-color:#d4c8e5}
.field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:500}
.field input,.field select,.field textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid #ddd5e6;border-radius:6px;background:#fff;font:400 14px/1.45 var(--body)}
.field textarea{resize:vertical;min-height:104px}
.field input::placeholder,.field textarea::placeholder{color:var(--quiet)}
.field small{color:var(--muted);font-size:12px;font-weight:400;line-height:1.5}
.search-field{height:44px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#fff;border:1px solid var(--line);border-radius:7px;color:var(--muted)}
.search-field:focus-within{outline:2px solid var(--purple);outline-offset:2px}
.search-field input{width:100%;height:100%;padding:0;border:0;outline:none;background:none;color:var(--ink);font:400 14px/1.4 var(--body)}
.search-field svg{width:18px;height:18px}
dialog{padding:0;border:1px solid var(--line);background:#fff;color:var(--ink);box-shadow:0 24px 100px #24113526}
dialog::backdrop{background:#21132e75;backdrop-filter:blur(6px)}
.dialog-close{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;background:#fffffff0}
.toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;z-index:100;max-width:calc(100% - 32px);width:max-content;padding:13px 22px;transform:translateX(-50%);background:var(--purple-dark);color:#fff;border-radius:9px;box-shadow:0 6px 24px #35204f26;font-size:13px}
.error-message{padding:12px 14px;border:1px solid #f0c5c8;border-radius:6px;background:#fff5f5;color:#9e2028;font-size:13px;line-height:1.5}
@media(max-width:720px){input,select,textarea,.field input,.field select,.field textarea,.search-field input{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@font-face{font-family:'Jost';src:url('../fonts/jost-medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Jost';src:url('../fonts/jost-semibold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

.veg-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid #4f9966;border-radius:6px;background:#ffffffed;color:#26743f;font:500 11px/1.1 var(--body);white-space:nowrap}
.veg-badge svg{width:14px;height:14px}
