@font-face{font-family:Boska-Logo;src:url(/fonts/boska-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Boska;src:url(/fonts/boska-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Boska;src:url(/fonts/boska-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Boska;src:url(/fonts/boska-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Boska-Fallback;src:local("Georgia");size-adjust:98%;ascent-override:96%;descent-override:24%}@font-face{font-family:Switzer-Fallback;src:local("Helvetica Neue"),local("Arial");size-adjust:100%}:root{--bg: oklch(1 0 0);--surface: oklch(.972 .004 350);--surface-deep: oklch(.945 .006 350);--ink: oklch(.2 .015 350);--ink-soft: oklch(.4 .018 350);--ink-faint: oklch(.5 .015 350);--brand: oklch(.42 .163 350);--brand-deep: oklch(.35 .145 350);--brand-tint: oklch(.962 .018 350);--on-brand: oklch(1 0 0);--accent-green: oklch(.42 .07 155);--mint: #ADD8C6;--mint-soft: oklch(.955 .024 165);--danger: oklch(.5 .19 27);--ai-warn: oklch(.6 .14 70);--line: oklch(.905 .006 350);--line-soft: oklch(.945 .004 350);--ink-bg: oklch(.215 .022 350);--on-ink: oklch(.97 .004 350);--on-ink-soft: oklch(.78 .012 350);--font-display: "Boska", "Boska-Fallback", Didot, "Bodoni MT", Georgia, serif;--font-body: "Switzer", "Switzer-Fallback", "Helvetica Neue", Arial, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.25rem;--text-xl: 1.5625rem;--text-2xl: clamp(1.7rem, 1.2rem + 1.6vw, 2.2rem);--text-3xl: clamp(2.1rem, 1.5rem + 2.4vw, 3rem);--text-display: clamp(2.6rem, 1.6rem + 4.2vw, 5rem);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--header-height: 76px;--container: 1240px;--container-narrow: 860px;--gutter: clamp(20px, 4vw, 40px);--radius-sm: 2px;--radius: 4px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px oklch(.2 .02 350 / .04);--shadow-sm: 0 2px 8px oklch(.2 .02 350 / .05);--shadow-md: 0 6px 24px oklch(.2 .02 350 / .08);--shadow-lg: 0 16px 48px oklch(.2 .02 350 / .12);--shadow-xl: 0 24px 64px oklch(.2 .02 350 / .16);--ease: cubic-bezier(.22, 1, .36, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--transition: .18s cubic-bezier(.22, 1, .36, 1);--transition-slow: .45s cubic-bezier(.16, 1, .3, 1);--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-drawer: 400;--z-modal: 500;--z-toast: 600;--gradient: linear-gradient(90deg, var(--brand), var(--brand));--gradient-vivid: linear-gradient(90deg, var(--brand), var(--brand));--gradient-btn: linear-gradient(135deg, var(--brand), var(--brand));--gradient-btn-hover: linear-gradient(135deg, var(--brand-deep), var(--brand-deep));--gradient-vertical: linear-gradient(180deg, var(--brand), var(--brand));--gradient-soft: linear-gradient(90deg, var(--surface), var(--surface));--bg-warm: var(--surface);--white: oklch(1 0 0);--text: var(--ink);--text-secondary: var(--ink-soft);--text-light: var(--ink-faint);--border: var(--line);--border-light: var(--line-soft);--blue-light: var(--surface);--pink: var(--brand);--pink-soft: var(--brand-tint);--blue-accent: var(--brand);--font-heading: var(--font-display);--ease-bounce: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:oklch(.75 .01 350) var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--ink-bg);background-image:linear-gradient(var(--bg),var(--bg));background-repeat:no-repeat;background-size:100% 200%;background-position:0 100%}html:not(:has(.site-footer)){background-color:var(--bg)}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--ink);background:var(--bg);overflow-x:hidden;font-kerning:normal}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{background:none;border:none;cursor:pointer;font-family:inherit;color:inherit}input,select,textarea{font-family:inherit;font-size:inherit}ul,ol{list-style:none}::selection{background:var(--brand);color:var(--on-brand)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#bdb5b8;border-radius:4px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:#978c90}.top-bar{position:fixed;top:0;left:0;right:0;height:2px;background:var(--brand);z-index:var(--z-sticky)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:500;line-height:1.12;letter-spacing:-.01em;color:var(--ink);text-wrap:balance}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{color:var(--ink-soft);line-height:1.65;max-width:70ch;text-wrap:pretty}.gradient-text{background:none;-webkit-text-fill-color:currentColor;color:var(--brand)}.text-link{color:var(--brand);font-weight:500;border-bottom:1px solid transparent;transition:border-color var(--transition)}.text-link:hover{border-bottom-color:var(--brand)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 30px;font-family:var(--font-body);font-size:.9375rem;font-weight:500;letter-spacing:.01em;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);white-space:nowrap;text-decoration:none;line-height:1.4}.btn-primary{background:var(--brand);color:var(--on-brand)}.btn-primary:hover{background:var(--brand-deep)}.btn-primary:active{background:var(--brand-deep);box-shadow:inset 0 1px 4px #0003}.btn-secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-secondary:hover{background:var(--ink);color:var(--bg)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:var(--bg)}.btn-inverse{background:var(--bg);color:var(--brand)}.btn-inverse:hover{background:var(--surface)}.btn-sm{padding:8px 20px;font-size:var(--text-sm)}.btn-lg{padding:16px 38px;font-size:var(--text-base)}.btn-block{width:100%}.btn-icon{width:40px;height:40px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--ink);margin-bottom:6px}.form-input,.form-select,.form-textarea{width:100%;padding:12px 14px;font-family:var(--font-body);font-size:var(--text-base);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--ink-faint)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.form-input::placeholder,.form-textarea::placeholder{color:var(--ink-faint)}.form-textarea{resize:vertical;min-height:120px}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;transition:border-color var(--transition),background-color var(--transition);position:relative;flex-shrink:0}input[type=checkbox]:hover{border-color:var(--brand)}input[type=checkbox]:checked{background:var(--brand);border-color:var(--brand)}input[type=checkbox]:checked:after{content:"";position:absolute;top:2px;left:5px;width:5px;height:9px;border:solid var(--on-brand);border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.form-error{font-size:.8rem;color:var(--danger);margin-top:4px}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--gutter)}.section{padding:clamp(64px,9vw,112px) 0}.section-sm{padding:var(--space-2xl) 0}.section-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-lg);margin-bottom:clamp(32px,5vw,56px)}.section-header h2{font-size:var(--text-2xl)}.section-header p{max-width:56ch}.section-link{font-size:var(--text-sm);font-weight:500;color:var(--brand);white-space:nowrap;border-bottom:1px solid transparent;transition:border-color var(--transition)}.section-link:hover{border-bottom-color:var(--brand)}.page-header{padding:clamp(40px,7vw,72px) 0 clamp(24px,4vw,40px);text-align:center}.page-header h1{font-family:var(--font-display);font-size:var(--text-3xl);margin-bottom:var(--space-sm)}.page-header p{max-width:52ch;margin:0 auto}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(40px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-up{animation:fadeUp .5s var(--ease) forwards}.animate-fade-in{animation:fadeIn .4s var(--ease) forwards}.animate-spin{animation:spin 1s linear infinite}.loading-spinner{width:32px;height:32px;border:2px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.loading-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-4xl) 0;color:var(--ink-soft)}.toast-container{position:fixed;top:calc(var(--header-height) + 20px);right:24px;z-index:var(--z-toast);pointer-events:none}.toast{pointer-events:all;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:14px 20px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;animation:fadeUp .3s var(--ease) forwards;font-size:var(--text-sm);max-width:360px}.toast.toast-exit{animation:fadeIn .2s var(--ease) reverse forwards}.toast-success{border-color:var(--accent-green)}.toast-error{border-color:var(--danger)}.toast-info{border-color:var(--brand)}.admin-guard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--space-md);color:var(--ink-soft)}.skeleton{background:linear-gradient(90deg,var(--line-soft) 25%,var(--bg) 50%,var(--line-soft) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 768px){:root{--header-height: 64px}}.lang-selector{position:relative}.lang-toggle{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:100px;border:1px solid var(--border);background:var(--white);cursor:pointer;transition:all var(--transition);color:var(--text-secondary);font-size:.78rem;font-weight:500;letter-spacing:.02em}.lang-toggle:hover{border-color:var(--pink);color:var(--text)}.lang-globe{color:var(--ink-soft);flex:none}.lang-toggle:hover .lang-globe{color:var(--brand)}.lang-code{line-height:1}.lang-chevron{transition:transform var(--transition);opacity:.5}.lang-chevron.open{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);min-width:160px;padding:4px;z-index:100;animation:langDropIn .15s var(--ease) forwards}@keyframes langDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:all var(--transition)}.lang-option:hover{background:var(--bg-warm);color:var(--text)}.lang-option.active{color:var(--text);font-weight:500}.lang-option-label{flex:1;text-align:left}.lang-option-code{font-size:.72rem;font-weight:600;letter-spacing:.05em;opacity:.4}.lang-option.active .lang-option-code{opacity:.7}.lang-inline{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:100px}.lang-inline-option{min-width:40px;height:34px;padding:0 10px;border:none;border-radius:100px;background:transparent;color:var(--ink-soft);font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:background-color var(--transition),color var(--transition)}.lang-inline-option:hover{color:var(--ink)}.lang-inline-option.active{background:var(--brand);color:var(--on-brand)}.site-header{position:fixed;top:2px;left:0;right:0;height:var(--header-height);z-index:var(--z-sticky);background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color var(--transition)}.site-header.scrolled{border-bottom-color:var(--line)}.header-inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);height:100%;display:flex;align-items:center;justify-content:space-between}.logo{text-decoration:none;display:flex;align-items:center;flex-shrink:0}.logo-mark{height:26px;width:auto;display:block}@media (max-width: 768px){.logo-mark{height:22px}}@media (max-width: 480px){.logo-mark{height:18px}}.main-nav{display:flex;align-items:center;gap:clamp(8px,2vw,24px)}.nav-link{position:relative;padding:8px 4px;font-size:.9375rem;font-weight:500;color:var(--ink-soft);text-decoration:none;transition:color var(--transition)}.nav-link:after{content:"";position:absolute;left:4px;right:4px;bottom:2px;height:1px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.nav-link:hover{color:var(--ink)}.nav-link:hover:after{transform:scaleX(1)}.nav-link.active{color:var(--ink)}.nav-link.active:after{transform:scaleX(1)}.nav-group{position:relative}.nav-link-parent{display:inline-flex;align-items:center;gap:4px}.nav-link-parent svg{transition:transform .25s var(--ease)}.nav-group:hover .nav-link-parent svg,.nav-group:focus-within .nav-link-parent svg{transform:rotate(180deg)}.nav-dropdown{position:absolute;top:100%;left:-10px;min-width:240px;padding:6px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .18s var(--ease),transform .22s var(--ease),visibility .22s}.nav-dropdown:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:none}.nav-dropdown-item{display:block;padding:10px 12px;border-radius:var(--radius);font-size:.9rem;font-weight:500;color:var(--ink-soft);text-decoration:none;white-space:nowrap;transition:background-color var(--transition),color var(--transition)}.nav-dropdown-item:hover,.nav-dropdown-item.active{background:var(--surface);color:var(--ink)}.nav-dropdown-item.active{color:var(--brand)}.nav-link.admin-link{font-size:.85rem;color:var(--ink-faint)}.header-actions{display:flex;align-items:center;gap:12px}.header-login{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:color var(--transition),background-color var(--transition)}.header-login:hover{background:var(--surface);color:var(--ink)}.header-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--brand);color:var(--on-brand);font-size:.82rem;font-weight:600;font-family:var(--font-body);text-decoration:none;transition:background-color var(--transition)}.header-avatar:hover{background:var(--brand-deep)}.cart-toggle{position:relative;width:44px;height:44px;margin:0 -11px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition);color:var(--ink)}.cart-toggle:hover{background:var(--surface)}.cart-count{position:absolute;top:0;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;box-shadow:0 0 0 2px var(--bg);background:var(--brand);color:var(--on-brand);font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(0);transition:opacity var(--transition),transform var(--transition)}.cart-count.show{opacity:1;transform:scale(1)}.mobile-menu-toggle{display:none;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:50%;transition:background-color var(--transition)}.mobile-menu-toggle span{width:20px;height:1.5px;background:var(--ink);transition:transform var(--transition),opacity var(--transition)}.mobile-menu-toggle.open span:nth-child(1){transform:rotate(45deg) translateY(5px)}.mobile-menu-toggle.open span:nth-child(2){opacity:0}.mobile-menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translateY(-5px)}.mobile-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d121761;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity .3s var(--ease)}.mobile-nav-overlay.show{opacity:1;pointer-events:auto}.mobile-nav{position:fixed;top:0;right:0;bottom:0;width:min(86vw,360px);height:100vh;height:100dvh;background:var(--bg);z-index:var(--z-drawer);display:flex;flex-direction:column;padding:clamp(12px,2.5dvh,22px) var(--gutter) calc(clamp(14px,3dvh,28px) + env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;border-left:1px solid var(--line);box-shadow:var(--shadow-xl);transform:translate(105%);visibility:hidden;transition:transform .4s var(--ease-out-expo),visibility .4s}.mobile-nav.show{transform:none;visibility:visible}.mobile-nav-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:clamp(8px,2.5dvh,28px);flex:none}.mobile-nav-close{flex:none;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;transition:border-color var(--transition),color var(--transition),background-color var(--transition)}.mobile-nav-close:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-tint)}.mobile-nav-links{display:flex;flex-direction:column}.mobile-nav-link{display:block;padding:clamp(6px,1.5dvh,13px) 0;font-family:var(--font-display);font-size:clamp(1.375rem,4.3dvh,2rem);line-height:1.15;font-weight:500;letter-spacing:-.01em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);background:none;text-align:left;width:100%;cursor:pointer;opacity:0;transform:translate(20px);transition:opacity .3s var(--ease),transform .35s var(--ease),color var(--transition)}.mobile-nav.show .mobile-nav-link{opacity:1;transform:none}.mobile-nav-group{display:flex;flex-direction:column}.mobile-nav-sublinks{display:flex;flex-direction:column;padding:2px 0 clamp(4px,1.4dvh,12px) 18px;border-bottom:1px solid var(--line)}.mobile-nav-sublink{display:block;padding:clamp(4px,.9dvh,8px) 0;font-size:clamp(.9rem,2.3dvh,1rem);font-weight:500;color:var(--ink-soft);text-decoration:none;opacity:0;transform:translate(20px);transition:opacity .3s var(--ease),transform .35s var(--ease),color var(--transition)}.mobile-nav.show .mobile-nav-sublink{opacity:1;transform:none}.mobile-nav-sublink.active,.mobile-nav-sublink:hover,.mobile-nav-link.active,.mobile-nav-signout{color:var(--brand)}.mobile-nav-footer{margin-top:auto;padding-top:clamp(12px,2.5dvh,24px);display:flex;flex-direction:column;gap:18px}.mobile-nav-social{display:flex;gap:10px}.mobile-nav-social a{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;transition:border-color var(--transition),color var(--transition),background-color var(--transition)}.mobile-nav-social a:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-tint)}@media (max-width: 1040px){.main-nav{display:none}.mobile-menu-toggle{display:flex}.header-lang{display:none}}.header-menu{position:relative}.header-avatar{border:none;cursor:pointer;padding:0}.header-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--white, #fff);border:1px solid var(--border, oklch(.905 .006 350));border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-lg, 0 16px 48px oklch(.2 .02 350 / .12));padding:6px;z-index:var(--z-dropdown, 100);animation:headerDropIn .15s var(--ease, cubic-bezier(.22, 1, .36, 1)) forwards}@keyframes headerDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.header-dropdown-head{display:flex;flex-direction:column;gap:2px;padding:8px 10px 10px;border-bottom:1px solid var(--line, oklch(.905 .006 350));margin-bottom:4px}.header-dropdown-name{font-family:var(--font-body, sans-serif);font-weight:600;font-size:.875rem;color:var(--ink, #1b1317)}.header-dropdown-email{font-size:.78rem;color:var(--ink-faint, oklch(.5 .015 350));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:none;background:none;border-radius:var(--radius, 4px);cursor:pointer;font-family:var(--font-body, sans-serif);font-size:.9rem;font-weight:500;color:var(--ink-soft, oklch(.4 .018 350));text-decoration:none;text-align:left;transition:background-color var(--transition, .18s ease),color var(--transition, .18s ease)}.header-dropdown-item:hover{background:var(--surface, oklch(.972 .004 350));color:var(--ink, #1b1317)}.header-dropdown-sep{height:1px;background:var(--line, oklch(.905 .006 350));margin:4px 0}.header-dropdown-signout:hover{color:var(--brand, oklch(.42 .163 350))}.mobile-nav-signout{border:none;background:none;cursor:pointer;text-align:left;font:inherit;color:var(--brand, oklch(.42 .163 350))}.site-footer{background:var(--ink-bg);color:var(--on-ink-soft);padding:clamp(56px,8vw,88px) 0 32px}.footer-inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:clamp(40px,6vw,64px)}.footer-logo{position:relative;display:block;width:158px;aspect-ratio:296 / 155;margin-bottom:16px}.footer-logo-bird{position:absolute;left:33.108%;top:-1.935%;width:33.784%;height:103.226%}.footer-logo-word{position:absolute;left:0;top:40.645%;width:100%;height:25.806%;filter:invert(1)}.footer-tagline{font-size:var(--text-sm);color:var(--on-ink-soft);line-height:1.7;max-width:30ch}.footer-column h4{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;margin-bottom:18px;color:var(--on-ink)}.footer-column ul{list-style:none;padding:0}.footer-column li{margin-bottom:10px}.footer-column a{font-size:var(--text-sm);color:var(--on-ink-soft);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:1px;transition:color var(--transition),border-color var(--transition)}.footer-column a:hover{color:var(--on-ink);border-bottom-color:var(--on-ink)}.footer-contact-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;font-size:var(--text-sm);color:var(--on-ink-soft);line-height:1.55}.footer-contact-item strong{color:var(--on-ink);font-weight:600}.footer-contact-item a{color:var(--on-ink-soft);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.footer-contact-item a:hover{color:var(--on-ink);border-bottom-color:var(--on-ink)}.footer-contact-icon{flex-shrink:0;color:#bb6690;margin-top:2px}.footer-bottom{padding-top:24px;border-top:1px solid oklch(.32 .02 350);display:flex;align-items:center;justify-content:space-between;font-size:.8rem;color:#8c8387}.footer-bottom-links{display:flex;gap:20px}.footer-credits-link{font-size:.8rem;color:#8c8387;text-decoration:none;border-bottom:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.footer-credits-link:hover{color:var(--on-ink);border-bottom-color:var(--on-ink)}@media (max-width: 768px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-bottom{flex-direction:column;gap:12px;text-align:center}}@media (max-width: 480px){.footer-grid{grid-template-columns:1fr;gap:28px}}.footer-social{display:flex;gap:10px;margin-top:18px}.footer-social a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--on-ink-soft);border:1px solid oklch(.36 .02 350);transition:color var(--transition),border-color var(--transition),background-color var(--transition)}.footer-social a:hover{color:var(--on-ink);border-color:var(--on-ink)}.site-footer a.footer-whatsapp{display:inline-flex;align-items:center;gap:9px;margin-top:14px;padding:10px 18px;border-radius:var(--radius-sm);border-bottom:none;background:#128c45;color:#fff;font-size:var(--text-sm);font-weight:600;transition:background-color var(--transition)}.site-footer a.footer-whatsapp:hover{background:#0e6f37;color:#fff;border-bottom:none}.cart-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b131759;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2000;opacity:0;pointer-events:none;transition:opacity var(--transition)}.cart-overlay.open{opacity:1;pointer-events:all}.cart-sidebar{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:100vw;background:var(--bg);z-index:2001;display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s var(--ease);box-shadow:var(--shadow-lg)}.cart-sidebar.open{transform:translate(0)}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line)}.cart-title{font-family:var(--font-display);font-size:1.25rem;font-weight:500}.cart-close-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition),color var(--transition);color:var(--ink-soft)}.cart-close-btn:hover{background:var(--surface);color:var(--ink)}.cart-items{flex:1;overflow-y:auto;padding:16px 24px}.cart-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line-soft)}.cart-item:last-child{border-bottom:none}.cart-item-image{width:64px;height:64px;border-radius:var(--radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ink-faint);flex-shrink:0}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-info{flex:1;min-width:0}.cart-item-head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.cart-item-name{font-weight:500;font-size:.9375rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cart-item-tag{flex-shrink:0;font-size:.6875rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px 6px;line-height:1.3;white-space:nowrap}.cart-item-tag.tag-cake{color:var(--brand);border-color:var(--brand)}.cart-item-tag.tag-shop{color:var(--accent-green);border-color:color-mix(in oklch,var(--accent-green) 40%,var(--line))}.cart-item-config{list-style:none;margin:0 0 6px;padding:0;font-size:var(--text-xs);line-height:1.5;color:var(--ink-faint)}.cart-item-config li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-config-more{font-style:italic}.cart-item-price{display:flex;align-items:baseline;gap:8px;font-size:.875rem;color:var(--ink-soft);margin-bottom:8px}.cart-item-min{font-size:var(--text-xs);color:var(--ink-faint)}.cart-item-controls{display:flex;align-items:center;gap:2px}.cart-qty-btn{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface);color:var(--ink);cursor:pointer;transition:background-color var(--transition),color var(--transition)}.cart-qty-btn:hover:not(:disabled){background:var(--brand);color:var(--on-brand)}.cart-qty-btn:disabled{opacity:.4;cursor:not-allowed}.cart-qty-btn:focus-visible,.cart-item-remove:focus-visible,.cart-close-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.cart-qty-value{width:32px;text-align:center;font-size:.9rem;font-weight:500;font-variant-numeric:tabular-nums}.cart-item-remove{margin-left:auto;color:var(--ink-faint);transition:color var(--transition);display:flex;align-items:flex-start}.cart-item-remove:hover{color:var(--danger)}.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;text-align:center;color:var(--ink-soft)}.cart-empty-icon{color:var(--line);margin-bottom:8px}.cart-empty h3{font-family:var(--font-display);font-size:1.25rem;font-weight:500;color:var(--ink)}.cart-empty p{font-size:.9rem}.cart-footer{padding:20px 24px;border-top:1px solid var(--line)}.cart-subtotal{display:flex;justify-content:space-between;margin-bottom:16px;font-size:1rem}.cart-subtotal-label{color:var(--ink-soft)}.cart-subtotal-value{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.cart-checkout-btn{width:100%;height:48px;background:var(--brand);color:var(--on-brand);border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color var(--transition);display:flex;align-items:center;justify-content:center;gap:8px}.cart-checkout-btn:hover{background:var(--brand-deep)}.cart-checkout-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (max-width: 480px){.cart-sidebar{width:100vw}}@media (prefers-reduced-motion: reduce){.cart-sidebar,.cart-overlay{transition:none}}.cookie-banner{position:fixed;bottom:24px;left:24px;right:24px;max-width:480px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;box-shadow:var(--shadow-lg);z-index:5000;animation:slideUp .4s var(--ease) forwards}.cookie-banner.dismissing{animation:slideDown .3s var(--ease) forwards}.cookie-text{font-size:.88rem;color:var(--text-secondary);line-height:1.6;margin-bottom:16px}.cookie-text a{color:var(--blue-accent);text-decoration:underline;text-underline-offset:2px}.cookie-text a:hover{color:var(--pink)}.cookie-actions{display:flex;gap:10px}.cookie-accept{padding:8px 20px;background:var(--gradient-btn);color:#fff;border:none;border-radius:100px;font-family:var(--font-body);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.cookie-accept:hover{background:var(--gradient-btn-hover)}.cookie-decline{padding:8px 20px;background:var(--white);color:var(--text-secondary);border:1px solid var(--border);border-radius:100px;font-family:var(--font-body);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.cookie-decline:hover{border-color:var(--pink);color:var(--text)}@media (max-width: 480px){.cookie-banner{left:12px;right:12px;bottom:12px;padding:16px 18px}}.availability{display:flex;flex-direction:column;gap:4px}.availability-badge{display:inline-flex;align-items:center;gap:7px;font-size:.8125rem;font-weight:500;line-height:1.3;color:var(--ink-soft)}.availability-dot{width:7px;height:7px;border-radius:50%;background:var(--ink-faint);flex-shrink:0}.availability-ready .availability-dot{background:var(--mint);box-shadow:0 0 0 3px var(--mint-soft)}.availability-ready .availability-badge{color:var(--ink)}.availability-from_date .availability-dot{background:var(--ink-faint)}.availability-sold_out .availability-badge,.availability-unavailable .availability-badge{color:var(--ink-faint)}.availability-sold_out .availability-dot,.availability-unavailable .availability-dot{background:transparent;border:1px solid var(--ink-faint)}.availability-detail{font-size:.78rem;line-height:1.5;color:var(--ink-faint);margin:0}.allergen-chips{display:flex;flex-wrap:wrap;gap:var(--space-xs);list-style:none;padding:0;margin:0}.allergen-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);font-size:.8125rem;font-weight:500;line-height:1.3;color:var(--ink-soft)}.allergen-chip svg{color:var(--ink-faint);flex-shrink:0}.allergen-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px;list-style:none;padding:0;margin:0}.allergen-dot{display:inline-flex;color:var(--ink-faint);cursor:help}.allergen-fallback{font-size:.8125rem;color:var(--ink-faint);margin:0}.product-card{position:relative}.product-card-link{text-decoration:none;color:inherit;display:block}.product-card-image{aspect-ratio:4 / 5;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);display:flex;align-items:center;justify-content:center;position:relative}.product-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out-expo)}.product-card:hover .product-card-image img{transform:scale(1.045)}.product-card.is-unavailable .product-card-image img{filter:grayscale(.55);opacity:.72}.product-card.is-unavailable:hover .product-card-image img{transform:none}.product-card-monogram{font-family:var(--font-display);font-style:italic;font-size:3.5rem;color:var(--ink-faint);-webkit-user-select:none;user-select:none}.product-card-body{padding:14px 48px 0 0;position:relative}.product-card-category{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:4px}.product-card-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;color:var(--ink);margin-bottom:6px;line-height:1.25;transition:color var(--transition)}.product-card:hover .product-card-name{color:var(--brand)}.product-card-footer{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.product-card-unit{font-size:.72rem;font-weight:500;color:var(--ink-faint);margin-left:5px}.product-card .availability{margin-bottom:8px}.product-card-allergens{margin-top:2px}.product-card-price{font-family:var(--font-body);font-size:var(--text-base);font-weight:600;font-variant-numeric:tabular-nums;color:var(--brand)}.product-card-price .currency{font-size:.75rem;font-weight:500;letter-spacing:.04em}.product-card-price.on-sale{color:var(--brand)}.product-card-price-old{font-size:.8rem;font-weight:500;color:var(--ink-faint);text-decoration:line-through;margin-right:6px}.product-badges{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.product-badge{font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:4px 10px;border-radius:999px;line-height:1;color:#fff;box-shadow:0 2px 6px #00000024}.product-badge-sale{background:var(--brand, #d6336c)}.product-badge-new{background:var(--ink, #2b2b2b)}.product-card-min{font-size:.72rem;font-weight:500;color:var(--ink-faint);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px 8px;white-space:nowrap}.product-card-add{position:absolute;right:0;bottom:0;width:40px;height:40px;border-radius:50%;background:var(--bg);border:1px solid var(--ink);color:var(--ink);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition),border-color var(--transition),color var(--transition);cursor:pointer;flex-shrink:0}.product-card-add:hover:not(:disabled){background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.product-card-add:disabled{border-color:var(--line);color:var(--ink-faint);cursor:not-allowed}@media (prefers-reduced-motion: reduce){.product-card-image img{transition:none}}.hero{padding:clamp(40px,7vw,88px) 0 clamp(56px,8vw,104px)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,6vw,88px);align-items:center}.hero-copy{max-width:560px}.hero-tag{display:inline-flex;align-items:center;gap:14px;font-size:var(--text-sm);font-weight:500;color:var(--ink-faint);margin-bottom:var(--space-lg)}.hero-tag:before{content:"";width:28px;height:1px;background:var(--brand)}.hero h1{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;line-height:1.04;letter-spacing:-.015em;margin-bottom:var(--space-lg);white-space:pre-line}.hero-accent{font-style:italic;font-weight:400;color:var(--brand);padding-right:.06em}.hero-subtitle{font-size:1.0625rem;color:var(--ink-soft);max-width:46ch;margin-bottom:var(--space-xl);line-height:1.7}.hero-actions{display:flex;align-items:center;gap:var(--space-xl);flex-wrap:wrap}.hero-story-link{position:relative;font-weight:500;font-size:var(--text-base);color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:2px;transition:border-color var(--transition),color var(--transition)}.hero-story-link:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.hero-story-link:hover{color:var(--brand);border-bottom-color:var(--brand)}.hero-figure{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.hero-figure img{width:100%;height:auto;aspect-ratio:3 / 4;object-fit:cover}.hero-reveal{opacity:0;animation:fadeUp .7s var(--ease-out-expo) forwards}.hero-reveal-2{animation-delay:.08s}.hero-reveal-3{animation-delay:.16s}.hero-reveal-4{animation-delay:.24s}.hero-figure{animation:heroSettle .9s var(--ease-out-expo) both}.hero-figure img{animation:heroZoomOut 1.4s var(--ease-out-expo) both}@keyframes heroSettle{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoomOut{0%{transform:scale(1.06)}to{transform:scale(1)}}.hero-marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:16px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.hero-marquee-track{display:flex;width:max-content;animation:marqueeScroll 42s linear infinite}.hero-marquee:hover .hero-marquee-track{animation-play-state:paused}.hero-marquee-group{display:flex;flex-shrink:0}.hero-marquee-item{display:inline-flex;align-items:center;gap:28px;padding:0 14px;font-family:var(--font-display);font-size:1.0625rem;color:var(--ink-soft);white-space:nowrap}.hero-marquee-dot{width:4px;height:4px;border-radius:50%;background:var(--brand)}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.categories-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(24px,3vw,40px) clamp(20px,2.4vw,32px)}.category-card{display:block;color:inherit;text-decoration:none}.category-figure{aspect-ratio:4 / 5;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);display:flex;align-items:center;justify-content:center}.category-figure img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out-expo)}.category-card:hover .category-figure img,.category-card:focus-visible .category-figure img{transform:scale(1.045)}.category-monogram{font-family:var(--font-display);font-size:4rem;font-style:italic;color:var(--ink-faint)}.category-caption{position:relative;padding:var(--space-md) 44px var(--space-2xs) 0}.category-caption h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--space-2xs);transition:color var(--transition)}.category-card:hover .category-caption h3{color:var(--brand)}.category-caption p{font-size:var(--text-sm);color:var(--ink-soft);max-width:34ch}.category-arrow{position:absolute;top:calc(var(--space-md) + 6px);right:4px;color:var(--brand);opacity:0;transform:translate(-6px);transition:opacity var(--transition),transform var(--transition)}.category-card:hover .category-arrow,.category-card:focus-visible .category-arrow{opacity:1;transform:translate(0)}.featured-section{padding-top:0}.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(24px,3vw,40px) clamp(20px,2.5vw,32px)}.atelier-section{background:var(--surface)}.atelier-grid{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}.atelier-figure{border-radius:var(--radius-lg);overflow:hidden}.atelier-figure img{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover}.atelier-copy h2{font-size:var(--text-3xl);margin-bottom:var(--space-lg);max-width:18ch}.atelier-copy p{max-width:58ch;line-height:1.75}.atelier-link{display:inline-flex;align-items:center;gap:8px;margin-top:var(--space-xl);font-weight:500;color:var(--brand);border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color var(--transition),gap var(--transition)}.atelier-link:hover{border-bottom-color:var(--brand)}.cta-band{background:var(--brand);padding:clamp(72px,10vw,128px) 0;text-align:center}.cta-inner h2{color:var(--on-brand);font-size:var(--text-3xl);margin-bottom:var(--space-md)}.cta-inner p{color:#f4e7ec;font-size:1.0625rem;max-width:44ch;margin:0 auto var(--space-xl)}@media (prefers-reduced-motion: reduce){.hero-reveal,.hero-figure,.hero-figure img{animation:none;opacity:1;transform:none}.hero-marquee-track{animation:none}.category-figure img{transition:none}}@media (max-width: 920px){.hero-grid{grid-template-columns:1fr;gap:var(--space-2xl)}.hero-copy{max-width:60ch}.hero-figure img{aspect-ratio:4 / 5}}@media (max-width: 768px){.categories-grid{grid-template-columns:1fr;gap:var(--space-xl)}.category-figure{aspect-ratio:4 / 3}.category-caption p{max-width:none}.atelier-grid{grid-template-columns:1fr;gap:var(--space-xl)}.atelier-copy h2{max-width:none}}@media (max-width: 1080px) and (min-width: 769px){.categories-grid{grid-template-columns:repeat(2,1fr)}}.about-page{padding-bottom:80px}.about-hero{text-align:center;padding:60px 0 48px;position:relative}.about-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gradient-soft);opacity:.5;z-index:-1}.about-hero h1{font-size:2.6rem;margin-bottom:16px}.about-hero p{max-width:560px;margin:0 auto;font-size:1.05rem}.about-meet{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.about-image{aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(135deg,var(--pink-soft),var(--blue-light));display:flex;align-items:center;justify-content:center;font-size:5rem}.about-image img{width:100%;height:100%;object-fit:cover}.about-text h2{font-size:2rem;margin-bottom:20px}.about-text p{margin-bottom:16px;font-size:.95rem;line-height:1.8}.about-philosophy{text-align:center;padding:48px;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.about-philosophy h2{margin-bottom:16px}.about-philosophy p{max-width:620px;margin:0 auto;font-size:1rem;line-height:1.8}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.about-value-card{text-align:center;padding:36px 24px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition)}.about-value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.about-value-icon{font-size:2.5rem;margin-bottom:16px}.about-value-card h3{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:8px}.about-value-card p{font-size:.9rem}.about-location{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.about-location-text h2{margin-bottom:16px}.about-location-text p{margin-bottom:12px;font-size:.95rem}.about-location-map{aspect-ratio:16/10;border-radius:var(--radius);overflow:hidden;background:var(--border-light);display:flex;align-items:center;justify-content:center;font-size:3rem}@media (max-width: 768px){.about-meet{grid-template-columns:1fr;gap:32px}.about-values{grid-template-columns:1fr}.about-location{grid-template-columns:1fr;gap:24px}.about-philosophy{padding:32px 20px}.about-hero h1{font-size:2rem}}.about-gallery{columns:3;column-gap:20px}.about-gallery-item{display:block;width:100%;margin-bottom:20px;break-inside:avoid;border:none;padding:0;border-radius:var(--radius-lg);overflow:hidden;cursor:zoom-in;background:var(--surface)}.about-gallery-item img{width:100%;height:auto;display:block;transition:transform .6s var(--ease-out-expo)}.about-gallery-item:hover img,.about-gallery-item:focus-visible img{transform:scale(1.03)}.about-gallery-item:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.about-lightbox{border:none;padding:0;background:transparent;max-width:min(92vw,980px);margin:auto}.about-lightbox::backdrop{background:#0b0407e0}.about-lightbox-inner img{width:100%;height:auto;max-height:80vh;object-fit:contain;border-radius:var(--radius-lg)}.about-lightbox-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:14px;color:#f7f4f5;font-size:.875rem;font-variant-numeric:tabular-nums}.about-lightbox-bar button{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#f7f4f5;background:#ffffff1a;transition:background-color var(--transition)}.about-lightbox-bar button:hover{background:#ffffff38}.about-lightbox-bar button:focus-visible{outline:2px solid oklch(.97 .004 350);outline-offset:2px}@media (prefers-reduced-motion: reduce){.about-gallery-item img{transition:none}}@media (max-width: 900px){.about-gallery{columns:2;column-gap:14px}.about-gallery-item{margin-bottom:14px}}@media (max-width: 520px){.about-gallery{columns:1}}.shop-page{padding-bottom:clamp(64px,9vw,112px)}.shop-filters{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin-bottom:var(--space-xl);flex-wrap:wrap}.shop-filter-tab{padding:9px 18px;font-family:var(--font-body);font-size:.9rem;font-weight:500;color:var(--ink-soft);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition),border-color var(--transition),background-color var(--transition);white-space:nowrap}.shop-filter-tab:hover{border-color:var(--ink);color:var(--ink)}.shop-filter-tab.active{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;margin:0 0 var(--space-2xl);padding-bottom:var(--space-md);border-bottom:1px solid var(--line)}.shop-chips{display:flex;gap:var(--space-xs);flex-wrap:wrap}.shop-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--ink-soft);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition),border-color var(--transition),background-color var(--transition)}.shop-chip:hover{border-color:var(--ink);color:var(--ink)}.shop-chip.active{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.shop-sort{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:.85rem;color:var(--ink-faint)}.shop-sort-select{font-family:var(--font-body);font-size:.85rem;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);cursor:pointer}.shop-sort-select:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(24px,3vw,44px) clamp(20px,2.4vw,32px)}.shop-empty{text-align:center;padding:clamp(56px,9vw,96px) var(--space-md);color:var(--ink-faint);max-width:44ch;margin:0 auto}.shop-empty h3{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);margin-bottom:var(--space-xs)}.shop-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(24px,3vw,44px) clamp(20px,2.4vw,32px)}.shop-skeleton-image{aspect-ratio:4 / 5;border-radius:var(--radius-lg);background:var(--surface)}.shop-skeleton-body{padding:14px 0 0}.shop-skeleton-line{height:12px;margin-bottom:10px;border-radius:var(--radius-sm)}.shop-skeleton-line.w60{width:60%}.shop-skeleton-line.w80{width:80%}.shop-skeleton-line.w40{width:40%}@media (max-width: 768px){.shop-grid,.shop-skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-xl) var(--space-md)}.shop-filters{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}.shop-filters::-webkit-scrollbar{display:none}.shop-filter-tab{padding:8px 14px;font-size:.85rem}}@media (max-width: 460px){.shop-grid,.shop-skeleton-grid{grid-template-columns:1fr 1fr}}.product-page{padding-bottom:clamp(64px,9vw,112px)}.product-breadcrumb{display:flex;align-items:center;gap:8px;padding:var(--space-lg) 0 var(--space-xl);font-size:.8125rem;color:var(--ink-faint);flex-wrap:wrap}.product-breadcrumb a{color:var(--ink-faint);text-decoration:none;transition:color var(--transition)}.product-breadcrumb a:hover{color:var(--brand)}.product-breadcrumb .separator{color:var(--line);display:inline-flex}.product-breadcrumb .current{color:var(--ink-soft);font-weight:500}.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:start}.product-gallery{position:sticky;top:calc(var(--header-height) + 24px)}.product-image-main{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4 / 5;background:var(--surface);display:flex;align-items:center;justify-content:center;margin:0 0 var(--space-sm);position:relative}.product-image-main img{width:100%;height:100%;object-fit:cover}.product-image-monogram{font-family:var(--font-display);font-style:italic;font-size:6rem;color:var(--ink-faint);-webkit-user-select:none;user-select:none}.product-thumbs{display:flex;gap:var(--space-xs);flex-wrap:wrap}.product-thumb{width:68px;height:68px;padding:0;border-radius:var(--radius);overflow:hidden;cursor:pointer;background:var(--surface);border:1px solid var(--line);transition:border-color var(--transition)}.product-thumb.active{border-color:var(--brand)}.product-thumb img{width:100%;height:100%;object-fit:cover;display:block}.product-details{padding-top:2px}.product-category-label{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:var(--space-xs)}.product-name{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.1;color:var(--ink);margin-bottom:var(--space-sm)}.product-price{font-family:var(--font-body);font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--brand);margin-bottom:var(--space-lg);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.product-price .currency{font-size:.875rem;font-weight:500;letter-spacing:.04em}.product-price-old{font-size:1rem;font-weight:500;color:var(--ink-faint);text-decoration:line-through}.product-price-unit{font-size:.8125rem;font-weight:500;color:var(--ink-faint)}.product-specs{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin:0 0 var(--space-lg);padding:var(--space-md) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product-spec dt{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:3px}.product-spec dd{margin:0;font-size:.9375rem;font-weight:500;color:var(--ink)}.product-details .availability{margin-bottom:var(--space-lg)}.product-description{font-size:1rem;line-height:1.75;color:var(--ink-soft);max-width:62ch;margin-bottom:var(--space-xl)}.product-quantity{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-md)}.product-quantity-label{font-size:.875rem;font-weight:500;color:var(--ink-soft)}.product-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.product-qty-btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--bg);border:none;color:var(--ink);cursor:pointer;font-size:1.1rem;transition:background-color var(--transition),color var(--transition)}.product-qty-btn:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.product-qty-btn:disabled{color:var(--ink-faint);opacity:.5;cursor:not-allowed}.product-qty-value{min-width:48px;text-align:center;font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;border-left:1px solid var(--line);border-right:1px solid var(--line);line-height:42px}.product-qty-cap{font-size:.78rem;color:var(--ink-faint)}.product-choices{margin-bottom:var(--space-md);padding:var(--space-md);border:1px solid var(--line);border-radius:var(--radius)}.product-choices-title{margin:0;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink)}.product-choices-req{color:var(--brand-deep)}.product-choices-help{margin:var(--space-2xs) 0 0;font-size:var(--text-xs);line-height:1.5;color:var(--ink-soft)}.product-choices-options{display:flex;flex-wrap:wrap;gap:var(--space-2xs);margin-top:var(--space-sm)}.product-choice{padding:.4rem .8rem;border:1px solid var(--line);border-radius:999px;background:transparent;font-family:var(--font-body);font-size:.8125rem;color:var(--ink-soft);cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition)}.product-choice:hover{border-color:var(--brand);color:var(--ink)}.product-choice.is-active{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.product-choice:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.product-choices-note{display:block;margin-top:var(--space-sm)}.product-choices-note span{display:block;margin-bottom:var(--space-2xs);font-size:var(--text-xs);color:var(--ink-soft)}.product-add-btn{width:100%;min-height:52px;background:var(--brand);color:var(--on-brand);border:1px solid var(--brand);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color var(--transition),border-color var(--transition);display:flex;align-items:center;justify-content:center;gap:var(--space-xs)}.product-add-btn:hover:not(:disabled){background:var(--brand-deep);border-color:var(--brand-deep)}.product-add-btn:disabled{background:var(--bg);border-color:var(--line);color:var(--ink-faint);cursor:not-allowed}.product-earliest{margin:var(--space-sm) 0 0;font-size:.8125rem;color:var(--ink-faint)}.product-meta{display:flex;flex-direction:column;gap:10px;margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--line)}.product-meta-item{display:flex;align-items:center;gap:10px;font-size:.875rem;color:var(--ink-soft)}.product-meta-icon{color:var(--brand);flex-shrink:0}.product-block{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--line)}.product-block-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--space-sm);color:var(--ink)}.product-ingredients{font-size:.9375rem;line-height:1.75;color:var(--ink-soft);max-width:64ch;margin:0}.product-notice{margin-top:var(--space-md);padding:var(--space-md);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.product-notice h3{font-family:var(--font-body);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0 0 6px}.product-notice p{font-size:.8125rem;line-height:1.65;color:var(--ink-soft);margin:0;max-width:68ch}.product-related{margin-top:clamp(64px,9vw,112px);padding-top:clamp(40px,6vw,64px);border-top:1px solid var(--line)}.product-related .section-header h2{font-family:var(--font-display);font-size:var(--text-2xl)}.product-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:clamp(24px,3vw,44px) clamp(20px,2.4vw,32px)}@media (max-width: 860px){.product-layout{grid-template-columns:1fr}.product-gallery{position:static}}@media (max-width: 460px){.product-related-grid{grid-template-columns:1fr 1fr}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;grid-template-columns:auto 1fr auto;align-items:center;background:#12080cf0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:lightboxIn .22s var(--ease) both;padding:0 clamp(8px,2vw,24px)}@keyframes lightboxIn{0%{opacity:0}to{opacity:1}}.lightbox-figure{grid-column:2;margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);animation:lightboxRise .35s var(--ease-out-expo) both}@keyframes lightboxRise{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.lightbox-figure img{display:block;max-width:min(92vw,1200px);max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius);box-shadow:var(--shadow-xl)}.lightbox-caption{display:flex;align-items:baseline;gap:var(--space-md);color:var(--on-ink-soft);font-size:var(--text-sm);max-width:92vw;text-align:center}.lightbox-caption-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lightbox-counter{font-family:var(--font-display);font-style:italic;color:var(--on-ink);flex:none}.lightbox-close,.lightbox-arrow{display:inline-flex;align-items:center;justify-content:center;border:1px solid oklch(1 0 0 / .18);background:#ffffff0f;color:var(--on-ink);border-radius:50%;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),transform var(--transition)}.lightbox-close:hover,.lightbox-arrow:hover{background:#ffffff24;border-color:#fff6}.lightbox-close{position:absolute;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px);width:46px;height:46px}.lightbox-arrow{width:54px;height:54px}.lightbox-prev{grid-column:1}.lightbox-next{grid-column:3}.lightbox-arrow:active{transform:scale(.94)}@media (max-width: 720px){.lightbox{grid-template-columns:1fr;padding:0 var(--space-md)}.lightbox-figure{grid-column:1}.lightbox-figure img{max-height:74vh}.lightbox-arrow{position:absolute;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:46px;height:46px}.lightbox-prev{left:18px}.lightbox-next{right:18px}}@media (prefers-reduced-motion: reduce){.lightbox,.lightbox-figure{animation:none}}.cake-gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-flow:dense;gap:clamp(8px,1.5vw,16px)}.cake-gallery-tile{position:relative;display:block;width:100%;aspect-ratio:4 / 5;margin:0;padding:0;border:none;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);cursor:zoom-in;isolation:isolate}.cake-gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-out-expo)}.cake-gallery-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1d121700;transition:background-color .3s var(--ease)}.cake-gallery-tile:hover img,.cake-gallery-tile:focus-visible img{transform:scale(1.04)}.cake-gallery-tile:hover:after,.cake-gallery-tile:focus-visible:after{background:#1d12172e}.cake-gallery-tile:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.cake-gallery-zoom{position:absolute;right:12px;bottom:12px;z-index:1;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg);color:var(--ink);box-shadow:var(--shadow-sm);opacity:0;transform:translateY(6px);transition:opacity .25s var(--ease),transform .3s var(--ease)}.cake-gallery-tile:hover .cake-gallery-zoom,.cake-gallery-tile:focus-visible .cake-gallery-zoom{opacity:1;transform:none}.cake-gallery-editorial .cake-gallery-tile:nth-child(6n+1){grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.cake-gallery-editorial .cake-gallery-tile:nth-child(12n+7){grid-column:2 / span 2}@media (min-width: 720px){.cake-gallery{grid-template-columns:repeat(3,1fr)}}@media (max-width: 719px){.cake-gallery-editorial .cake-gallery-tile:nth-child(12n+7){grid-column:span 2}}@media (prefers-reduced-motion: reduce){.cake-gallery-tile img,.cake-gallery-zoom{transition:none}}.torte-page{padding-bottom:var(--space-4xl)}.torte-hero{display:grid;gap:var(--space-xl);padding:clamp(32px,6vw,72px) var(--gutter) clamp(32px,5vw,56px);align-items:center}.torte-hero-figure{order:-1;margin:0;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4 / 5;background:var(--surface);box-shadow:var(--shadow-lg)}.torte-hero-figure img{width:100%;height:100%;object-fit:cover}.torte-placeholder{display:flex;align-items:center;justify-content:center;height:100%;font-family:var(--font-display);font-style:italic;font-size:4rem;color:var(--ink-faint)}.torte-hero-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;line-height:1.04;letter-spacing:-.015em;margin:0 0 var(--space-md)}.torte-hero-title em{font-style:italic;font-weight:400;color:var(--brand)}.torte-hero-lead{color:var(--ink-soft);max-width:46ch;margin:0 0 var(--space-lg)}.torte-price{display:flex;align-items:baseline;gap:var(--space-xs);margin:0 0 var(--space-lg)}.torte-price-label{font-size:var(--text-sm);color:var(--ink-faint)}.torte-price-value{font-size:var(--text-lg);font-weight:600;color:var(--brand)}.torte-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg)}.torte-hero-actions .btn{gap:var(--space-xs)}.torte-wedding-link{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:500;color:var(--ink-soft);border-bottom:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.torte-wedding-link:hover{color:var(--brand);border-bottom-color:var(--brand)}.torte-gallery{padding-bottom:clamp(40px,6vw,72px)}.torte-gallery-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin:0 0 var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--line)}.torte-manifesto{background:var(--surface);padding:clamp(48px,8vw,96px) 0}.torte-manifesto-title{font-family:var(--font-display);font-size:var(--text-2xl);margin:0 0 var(--space-md)}.torte-manifesto-body{color:var(--ink-soft);max-width:66ch;margin:0 0 var(--space-md)}.torte-manifesto-notice{margin:var(--space-lg) 0 0;padding-top:var(--space-md);border-top:1px solid var(--line);font-size:var(--text-sm);color:var(--ink);max-width:66ch}.torte-how{padding-top:clamp(48px,8vw,96px);padding-bottom:clamp(40px,6vw,72px)}.torte-how-title{font-family:var(--font-display);font-size:var(--text-2xl);margin:0 0 clamp(24px,4vw,48px)}.torte-how-list{display:grid;gap:var(--space-xl)}.torte-how-item{border-top:1px solid var(--line);padding-top:var(--space-md);display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon num" "title title" "body body";gap:var(--space-xs) var(--space-sm);align-items:center}.torte-how-icon{grid-area:icon;color:var(--brand);display:flex}.torte-how-num{grid-area:num;justify-self:end;font-family:var(--font-display);font-size:var(--text-sm);color:var(--ink-faint)}.torte-how-step{grid-area:title;font-family:var(--font-display);font-size:var(--text-xl);margin:var(--space-2xs) 0 0}.torte-how-body{grid-area:body;color:var(--ink-soft);font-size:var(--text-sm);margin:0}.torte-notice{display:flex;gap:var(--space-sm);align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-md);color:var(--ink-soft);font-size:var(--text-sm);max-width:78ch}.torte-notice svg{color:var(--brand);flex:none;margin-top:2px}.torte-notice strong{color:var(--ink)}.torte-wedding{padding-top:clamp(40px,6vw,72px)}.torte-wedding-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-lg);border-top:1px solid var(--line);padding-top:var(--space-lg)}.torte-wedding-title{font-family:var(--font-display);font-size:var(--text-xl);margin:0 0 var(--space-2xs)}.torte-wedding-body{color:var(--ink-soft);font-size:var(--text-sm);margin:0;max-width:54ch}.torte-cta{margin-top:clamp(48px,8vw,96px);background:var(--brand);color:var(--on-brand);padding:clamp(48px,8vw,88px) 0}.torte-cta-inner{text-align:center}.torte-cta-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--on-brand);margin:0 0 var(--space-sm)}.torte-cta-body{color:#fffffff0;max-width:54ch;margin:0 auto var(--space-lg)}@media (min-width: 720px){.torte-how-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.torte-hero{grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px)}.torte-hero-figure{order:0;aspect-ratio:3 / 4}.torte-how-list{grid-template-columns:repeat(4,1fr)}}.hub-page{padding-bottom:0}.hub-hero{display:grid;grid-template-columns:1fr;gap:4px;background:var(--bg)}.hub-panel{position:relative;display:block;min-height:clamp(360px,62vw,520px);overflow:hidden;background:var(--ink-bg);color:var(--on-ink);text-decoration:none;isolation:isolate}.hub-panel-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1.1s var(--ease-out-expo)}.hub-panel:hover .hub-panel-img,.hub-panel:focus-visible .hub-panel-img{transform:scale(1.07)}.hub-panel-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#12080c14,#12080c00 30%),linear-gradient(0deg,#12080cd1,#12080c73 38%,#12080c00 70%);transition:opacity .5s var(--ease)}.hub-panel-copy{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);padding:clamp(24px,4vw,48px);max-width:34rem}.hub-panel-eyebrow{font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-soft)}.hub-panel-title{font-family:var(--font-display);font-size:clamp(2rem,1.2rem + 2.8vw,3.4rem);font-weight:500;font-style:italic;line-height:1.02;letter-spacing:-.015em;color:var(--on-ink);text-wrap:balance}.hub-panel-body{color:#f7f4f5db;font-size:var(--text-base);line-height:1.5;max-width:40ch;margin-top:var(--space-2xs)}.hub-panel-cta{display:inline-flex;align-items:center;gap:8px;margin-top:var(--space-sm);padding:12px 22px;border-radius:var(--radius-sm);background:var(--bg);color:var(--brand);font-size:var(--text-sm);font-weight:600;transition:gap var(--transition),background-color var(--transition)}.hub-panel:hover .hub-panel-cta,.hub-panel:focus-visible .hub-panel-cta{gap:12px;background:var(--surface)}.hub-panel:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.hub-intro{padding:clamp(56px,8vw,104px) 0 clamp(24px,4vw,40px)}.hub-intro-inner{text-align:center}.hub-intro-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.08;letter-spacing:-.01em;margin:0 0 var(--space-md)}.hub-intro-body{color:var(--ink-soft);font-size:var(--text-lg);line-height:1.5;max-width:60ch;margin:0 auto}.hub-gallery{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(56px,8vw,104px)}.hub-gallery-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-xs) var(--space-xl);margin-bottom:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--line)}.hub-gallery-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;margin:0}.hub-gallery-lead{color:var(--ink-faint);font-size:var(--text-sm);margin:0}.hub-cta{background:var(--brand);color:var(--on-brand);padding:clamp(48px,7vw,80px) 0}.hub-cta-inner{display:grid;grid-template-columns:1fr;gap:clamp(32px,5vw,56px)}.hub-cta-col{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.hub-cta-col+.hub-cta-col{padding-top:clamp(32px,5vw,56px);border-top:1px solid oklch(1 0 0 / .22)}.hub-cta-eyebrow{font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ffffffb8}.hub-cta-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;color:var(--on-brand);margin:0 0 var(--space-xs);text-wrap:balance}@media (min-width: 860px){.hub-hero{grid-template-columns:1fr 1fr}.hub-panel{min-height:clamp(520px,calc(100vh - var(--header-height)),760px)}.hub-cta-inner{grid-template-columns:1fr 1fr}.hub-cta-col+.hub-cta-col{padding-top:0;padding-left:clamp(32px,5vw,56px);border-top:none;border-left:1px solid oklch(1 0 0 / .22)}}@media (prefers-reduced-motion: reduce){.hub-panel-img{transition:none}}.pickup-arrange{margin-top:var(--space-sm)}.pickup-arrange-check{display:flex;align-items:flex-start;gap:var(--space-xs);font-size:var(--text-sm);line-height:1.5;color:var(--ink-soft);cursor:pointer}.pickup-arrange-check input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--brand);cursor:pointer}.pickup-arrange-msg{margin:var(--space-sm) 0 0;padding:10px 14px;border-left:3px solid var(--brand);background:var(--brand-tint);font-size:var(--text-sm);line-height:1.5;color:var(--ink)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:6000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s var(--ease) forwards}.modal-card{background:var(--white);border-radius:var(--radius-lg);max-width:560px;width:100%;max-height:85vh;overflow-y:auto;animation:scaleIn .3s var(--ease) forwards;position:relative}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 0}.modal-title{font-family:var(--font-heading);font-size:1.3rem;font-weight:600}.modal-close{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition)}.modal-close:hover{background:var(--border-light);color:var(--text)}.modal-body{padding:24px 28px}.modal-footer{padding:0 28px 24px;display:flex;justify-content:flex-end;gap:10px}@media (max-width: 480px){.modal-card{max-height:90vh;border-radius:var(--radius)}.modal-header,.modal-body,.modal-footer{padding-left:20px;padding-right:20px}}.wz-page{padding:clamp(24px,4vw,48px) 0 180px}.wz-state{color:var(--ink-soft);padding:var(--space-3xl) 0}.wz-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wz-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.wz-title{font-family:var(--font-display);font-size:var(--text-3xl);margin:0}.wz-subtitle{color:var(--ink-faint);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.wz-restart{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--ink-faint);padding:6px 2px;border-bottom:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.wz-restart:hover{color:var(--brand);border-bottom-color:var(--brand)}.wz-chips{display:flex;gap:var(--space-xs);overflow-x:auto;padding-bottom:var(--space-xs);margin-bottom:var(--space-lg);scrollbar-width:none}.wz-chips::-webkit-scrollbar{display:none}.wz-chip{display:inline-flex;align-items:center;gap:8px;flex:none;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--ink-faint);background:var(--bg);transition:color var(--transition),border-color var(--transition)}.wz-chip-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid currentColor;font-size:var(--text-xs)}.wz-chip.is-done{color:var(--ink)}.wz-chip.is-active{color:var(--brand);border-color:var(--brand)}.wz-chip:disabled{opacity:.45;cursor:not-allowed}.wz-layout{display:grid;gap:var(--space-2xl);align-items:start}.wz-phases{display:grid;gap:var(--space-md);min-width:0}.wz-phase{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.wz-phase.is-current{border-color:var(--ink)}.wz-phase.is-locked{opacity:.62}.wz-phase-head{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md)}.wz-phase-head.is-done{padding:0}.wz-phase-open{display:flex;align-items:center;gap:var(--space-sm);flex:1;min-width:0;text-align:left;padding:var(--space-md)}.wz-phase-edit{display:inline-flex;align-items:center;gap:6px;flex:none;margin-right:var(--space-md);padding:7px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--brand);transition:background var(--transition),border-color var(--transition)}.wz-phase-edit:hover{border-color:var(--brand);background:var(--brand-tint)}.wz-phase-badge{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;border-radius:50%;border:1px solid var(--line);color:var(--ink-faint)}.wz-phase-badge-current{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.wz-phase-badge-done{border-color:var(--brand);color:var(--brand)}.wz-phase-text{display:grid;gap:2px;min-width:0}.wz-phase-step{font-size:var(--text-xs);letter-spacing:.04em;color:var(--ink-faint)}.wz-phase-title{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.2}.wz-phase-help,.wz-phase-summary{font-size:var(--text-sm);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wz-phase-body{padding:0 var(--space-md) var(--space-lg);display:grid;gap:var(--space-lg)}.wz-phase-error{color:var(--danger);font-size:var(--text-sm);margin:0}.wz-groups{display:grid;gap:var(--space-xl)}.wz-group{display:grid;gap:var(--space-sm)}.wz-group-head{display:grid;gap:2px}.wz-group-title{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-display);font-size:var(--text-lg);margin:0}.wz-optional{font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;color:var(--ink-faint)}.wz-group-help{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.wz-group-error{margin:0}.wz-counter{font-size:var(--text-xs);color:var(--ink-faint);margin:0}.wz-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-sm)}.wz-card-wrap{display:grid;gap:var(--space-xs)}.wz-card,.wz-toggle,.wz-upload{position:relative;display:flex;align-items:center;gap:var(--space-sm);width:100%;text-align:left;padding:var(--space-sm) var(--space-md);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);transition:border-color var(--transition),box-shadow var(--transition)}.wz-card:hover:not(:disabled),.wz-toggle:hover:not(:disabled),.wz-upload:hover:not(:disabled){border-color:var(--ink-faint)}.wz-card.is-selected,.wz-toggle.is-on{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.wz-card.is-disabled,.wz-card:disabled,.wz-toggle:disabled{opacity:.45;cursor:not-allowed}.wz-card-icon{display:inline-flex;flex:none;color:var(--brand)}.wz-card-media{flex:none;width:44px;height:44px;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.wz-card-media img{width:100%;height:100%;object-fit:cover}.wz-card-body{display:grid;gap:2px;min-width:0;flex:1}.wz-card-name{font-weight:500;color:var(--ink)}.wz-card-desc,.wz-card-hint{font-size:var(--text-sm);color:var(--ink-faint)}.wz-card-price{flex:none;font-size:var(--text-sm);font-weight:500;color:var(--brand);white-space:nowrap}.wz-card.is-selected .wz-card-mark{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--brand)}.wz-inline-text{display:grid;gap:4px;padding:0 var(--space-2xs)}.wz-inline-label{font-size:var(--text-sm);font-weight:500;color:var(--ink-soft)}.wz-swatch-block{display:grid;gap:var(--space-xs)}.wz-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:var(--space-sm)}.wz-swatch{display:grid;justify-items:center;gap:6px;padding:6px 2px;border-radius:var(--radius-sm)}.wz-swatch-dot{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);box-shadow:0 0 0 0 transparent;transition:box-shadow var(--transition)}.wz-swatch.is-selected .wz-swatch-dot{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--brand)}.wz-swatch-name{font-size:var(--text-xs);color:var(--ink-soft);text-align:center;line-height:1.25}.wz-swatch.is-selected .wz-swatch-name{color:var(--ink);font-weight:500}.wz-swatch.is-disabled,.wz-swatch:disabled{opacity:.4;cursor:not-allowed}.wz-textfield{display:grid;gap:6px;max-width:44rem}.wz-toggle-wrap{display:grid;gap:var(--space-xs)}.wz-switch{flex:none;width:38px;height:22px;border-radius:11px;border:1px solid var(--line);background:var(--surface);position:relative;transition:background var(--transition),border-color var(--transition)}.wz-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--ink-faint);transition:transform var(--transition),background var(--transition)}.wz-toggle.is-on .wz-switch{background:var(--brand);border-color:var(--brand)}.wz-toggle.is-on .wz-switch-knob{background:var(--on-brand);transform:translate(16px)}.wz-upload-block{display:grid;gap:var(--space-xs)}.wz-upload{padding:var(--space-lg) var(--space-md);border-style:dashed}.wz-upload.is-dragging{border-color:var(--brand);background:var(--brand-tint)}.wz-upload-icon{color:var(--brand);display:inline-flex;flex:none}.wz-upload-text{display:grid;gap:2px;flex:1}.wz-upload-done{display:flex;align-items:center;gap:var(--space-sm);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-sm)}.wz-upload-thumb{width:56px;height:56px;flex:none;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.wz-upload-thumb img{width:100%;height:100%;object-fit:cover}.wz-upload-thumb-fallback{display:flex;align-items:center;justify-content:center;height:100%;color:var(--ink-faint)}.wz-upload-meta{flex:1;min-width:0}.wz-upload-name{margin:0;font-weight:500}.wz-upload-price{margin:0;font-size:var(--text-sm);color:var(--brand)}.wz-upload-remove{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--ink-faint);padding:6px 8px}.wz-upload-remove:hover{color:var(--danger)}.wz-date{display:grid;gap:var(--space-lg)}.wz-lead-note{display:flex;align-items:flex-start;gap:var(--space-xs);margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.wz-lead-note svg{color:var(--brand);flex:none;margin-top:3px}.wz-cal{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-md);max-width:34rem}.wz-cal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-sm)}.wz-cal-title{font-family:var(--font-display);font-size:var(--text-lg);margin:0}.wz-cal-nav{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);transition:border-color var(--transition),color var(--transition)}.wz-cal-nav:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.wz-cal-nav:disabled{opacity:.35;cursor:not-allowed}.wz-cal-weekdays,.wz-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.wz-cal-weekdays{margin-bottom:4px}.wz-cal-weekdays span{text-align:center;font-size:var(--text-xs);color:var(--ink-faint)}.wz-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--ink);transition:border-color var(--transition),background var(--transition)}.wz-cal-day.is-free:hover{border-color:var(--brand)}.wz-cal-day.is-selected{background:var(--brand);border-color:var(--brand);color:var(--on-brand);font-weight:500}.wz-cal-day.is-blocked{color:var(--ink-faint);background:var(--surface);border-color:transparent;cursor:not-allowed}.wz-cal-day[data-reason=closed]{text-decoration:line-through}.wz-cal-day[data-reason=capacity]{border:1px dashed var(--line);background:var(--surface-deep)}.wz-cal-blank{aspect-ratio:1}.wz-cal-loading{margin:var(--space-sm) 0 0;font-size:var(--text-sm);color:var(--ink-faint)}.wz-legend{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--ink-faint)}.wz-legend li{display:inline-flex;align-items:center;gap:6px}.wz-legend-dot{width:12px;height:12px;border-radius:3px;border:1px solid var(--line);background:var(--surface)}.wz-legend-dot.is-free{background:var(--brand);border-color:var(--brand)}.wz-legend-dot.is-closed{background:var(--surface);position:relative;overflow:hidden}.wz-legend-dot.is-closed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 45%,var(--ink-faint) 45%,var(--ink-faint) 55%,transparent 55%)}.wz-legend-dot.is-lead{background:var(--surface)}.wz-legend-dot.is-full{background:var(--surface-deep);border-style:dashed}.wz-slots{display:grid;gap:var(--space-xs)}.wz-slots-day{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.wz-slot-row{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.wz-slot{padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--ink);transition:border-color var(--transition),background var(--transition)}.wz-slot:hover{border-color:var(--brand)}.wz-slot.is-selected{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.wz-summary{display:grid;gap:var(--space-sm)}.wz-summary-aside{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-lg)}.wz-summary-title{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.wz-summary-pickup{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--ink);padding-bottom:var(--space-sm);border-bottom:1px solid var(--line)}.wz-summary-pickup svg{color:var(--brand);flex:none}.wz-summary-empty{color:var(--ink-faint);font-size:var(--text-sm);margin:0}.wz-summary-list{display:grid;gap:8px;margin:0}.wz-summary-row{display:grid;grid-template-columns:40% 1fr;gap:var(--space-sm);font-size:var(--text-sm)}.wz-summary-row dt{color:var(--ink-faint)}.wz-summary-row dd{margin:0;display:flex;justify-content:space-between;gap:var(--space-xs);color:var(--ink)}.wz-summary-cents{color:var(--brand);white-space:nowrap}.wz-summary-price{display:grid;gap:6px;padding-top:var(--space-sm);border-top:1px solid var(--line);font-size:var(--text-sm)}.wz-summary-price-row{display:flex;justify-content:space-between;gap:var(--space-sm);color:var(--ink-soft)}.wz-summary-total{display:flex;justify-content:space-between;gap:var(--space-sm);padding-top:8px;border-top:1px solid var(--line);font-size:var(--text-base);font-weight:600;color:var(--ink)}.wz-recap{display:grid;gap:var(--space-lg)}.wz-recap-title{font-family:var(--font-display);font-size:var(--text-2xl);margin:0}.wz-recap-lead{color:var(--ink-soft);margin:0;max-width:60ch}.wz-notice,.wz-allergens{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-md);font-size:var(--text-sm);color:var(--ink-soft)}.wz-notice{display:flex;gap:var(--space-xs);align-items:flex-start;margin:0}.wz-notice svg{color:var(--brand);flex:none;margin-top:2px}.wz-allergens-title{font-family:var(--font-display);font-size:var(--text-lg);margin:0 0 var(--space-2xs);color:var(--ink)}.wz-allergens-list{margin:0}.wz-step-cross{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--line);border-top:1px solid var(--line);border-radius:var(--radius);font-size:var(--text-sm)}.wz-allergens-cross{margin:var(--space-xs) 0 0;padding-top:var(--space-xs);border-top:1px solid var(--line);font-size:var(--text-xs);line-height:1.5;color:var(--ink-soft)}.wz-qty{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.wz-qty-label{font-weight:500}.wz-qty-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm)}.wz-qty-stepper button{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.wz-qty-stepper button:disabled{opacity:.35;cursor:not-allowed}.wz-qty-stepper span{min-width:32px;text-align:center;font-weight:500}.wz-qty-hint{font-size:var(--text-xs);color:var(--ink-faint)}.wz-actions{display:none;gap:var(--space-sm);flex-wrap:wrap}.wz-actions .btn{gap:var(--space-xs)}.wz-pricebar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-sticky);background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:var(--space-sm) var(--gutter);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom,0px))}.wz-pricebar-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);max-width:var(--container);margin:0 auto}.wz-pricebar-price{display:grid;gap:0;min-width:0}.wz-pricebar-label{font-size:var(--text-xs);color:var(--ink-faint)}.wz-pricebar-total{font-size:var(--text-lg);color:var(--ink)}.wz-pricebar-note{font-size:var(--text-xs);color:var(--ink-faint)}.wz-pricebar-actions{display:flex;align-items:center;gap:var(--space-xs)}.wz-aside{display:none}@media (min-width: 1024px){.wz-page{padding-bottom:var(--space-4xl)}.wz-layout{grid-template-columns:minmax(0,1fr) 340px}.wz-aside{display:block;position:sticky;top:calc(var(--header-height) + 24px)}.wz-actions{display:flex}.wz-pricebar{display:none}}@media (max-width: 480px){.wz-pricebar-back{display:none}.wz-cards{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.wz-card,.wz-toggle,.wz-upload,.wz-switch,.wz-switch-knob,.wz-swatch-dot,.wz-cal-day,.wz-slot{transition:none}}.wz-ask{display:flex;flex-direction:column;gap:var(--space-md)}.wz-ask-row{display:flex;gap:var(--space-sm);align-items:flex-start}.wz-ask-row svg{flex:none;margin-top:3px;color:var(--brand)}.wz-ask-row p{margin:0}.wz-ask-intro{color:var(--ink)}.wz-ask-warning{border-left:2px solid var(--brand);background:var(--brand-tint);border-radius:0 var(--radius) var(--radius) 0;padding:var(--space-sm) var(--space-md);color:var(--ink)}.wz-ask-warning svg{color:var(--brand)}.wz-ask-meta{font-size:var(--text-sm);color:var(--ink-faint)}.wz-ask-meta svg{color:var(--ink-faint)}.wz-preview{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm);align-items:flex-start}.wz-preview-frame,.wz-preview-figure{align-self:center}.wz-preview-title{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin:0}.wz-preview-title svg{color:var(--brand);flex:none}.wz-preview-lead{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.wz-preview-cta{align-self:flex-start}.wz-preview-frame{position:relative;width:100%;max-width:460px;margin-inline:auto;aspect-ratio:3 / 4;border-radius:var(--radius);overflow:hidden;background:var(--surface);display:grid;place-items:center}.wz-preview-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,var(--surface) 30%,var(--surface-deep) 50%,var(--surface) 70%);background-size:300% 100%;animation:wz-preview-sweep 1.6s ease-in-out infinite}@keyframes wz-preview-sweep{0%{background-position:150% 0}to{background-position:-50% 0}}.wz-preview-working{position:relative;margin:0;padding:0 var(--space-md);text-align:center;font-size:var(--text-sm);color:var(--ink-soft)}.wz-preview-figure{margin:0 auto;width:100%;max-width:460px;display:flex;flex-direction:column;gap:var(--space-xs)}.wz-preview-img{width:100%;height:auto;display:block;border-radius:var(--radius);background:var(--surface)}.wz-preview-open{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--radius)}.wz-preview-open:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.wz-preview-zoom{position:absolute;right:var(--space-xs);bottom:var(--space-xs);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#0000008c;color:#fff;opacity:0;transition:opacity .15s ease}.wz-preview-open:hover .wz-preview-zoom,.wz-preview-open:focus-visible .wz-preview-zoom{opacity:1}@media (hover: none){.wz-preview-zoom{opacity:1}}.wz-preview-caption{display:flex;gap:var(--space-2xs);align-items:flex-start;font-size:var(--text-xs);line-height:1.45;color:var(--ink-faint)}.wz-preview-caption svg{flex:none;margin-top:2px}.wz-preview-message{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.wz-preview-warning{border-left:2px solid var(--brand);padding-left:var(--space-sm);color:var(--ink)}.wz-preview-note{font-size:var(--text-sm);color:var(--ink-faint)}@media (prefers-reduced-motion: reduce){.wz-preview-shimmer{animation:none}.wz-preview-zoom{transition:none}}.catering-lead{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin:0 auto var(--space-xl);padding:10px 18px;max-width:max-content;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--ink-soft);text-align:center}.catering-lead svg{color:var(--brand);flex-shrink:0}.catering-count{font-size:.85rem;color:var(--ink-faint);margin:0}.catering-cta{margin-top:clamp(56px,8vw,96px);padding:clamp(28px,4vw,44px);border:1px solid var(--line);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-xl);flex-wrap:wrap}.catering-cta-copy h2{font-family:var(--font-display);font-size:var(--text-2xl);margin-bottom:var(--space-xs)}.catering-cta-copy p{color:var(--ink-soft);max-width:52ch;margin:0}.catering-cta .btn{flex-shrink:0;gap:var(--space-xs)}@media (max-width: 700px){.catering-cta{flex-direction:column;align-items:flex-start}.catering-lead{max-width:none}}.pickup-calendar{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:var(--space-md)}.pcal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-md)}.pcal-month{font-family:var(--font-display);font-size:1.25rem;font-weight:500;color:var(--ink);text-align:center;flex:1}.pcal-nav{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);cursor:pointer;transition:border-color var(--transition),color var(--transition),background-color var(--transition)}.pcal-nav:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.pcal-nav:disabled{opacity:.35;cursor:not-allowed}.pcal-nav:focus-visible,.pcal-cell:focus-visible,.pcal-slot:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.pcal-weekdays,.pcal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pcal-weekdays{margin-bottom:6px}.pcal-weekdays span{text-align:center;font-size:var(--text-xs);font-weight:500;color:var(--ink-faint);padding-bottom:4px}.pcal-cell{aspect-ratio:1 / 1;min-height:40px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--bg);font-family:var(--font-body);font-size:.9375rem;font-weight:500;color:var(--ink);cursor:pointer;transition:background-color var(--transition),color var(--transition),border-color var(--transition)}.pcal-cell-empty{cursor:default}.pcal-cell.is-available{border-color:var(--line)}.pcal-cell.is-available:hover{border-color:var(--brand);color:var(--brand)}.pcal-cell.is-today{box-shadow:inset 0 -2px 0 var(--line)}.pcal-cell.is-selected,.pcal-cell.is-selected:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.pcal-cell.is-unavailable{color:var(--ink-faint);background:var(--surface);cursor:not-allowed;position:relative}.pcal-cell.is-unavailable:after{content:"";position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--ink-faint)}.pcal-cell.reason-closed:after{background:var(--ink-faint)}.pcal-cell.reason-lead_time:after{background:transparent;width:8px;height:1px;border-radius:0;border-top:1px solid var(--ink-faint)}.pcal-cell.reason-capacity:after{background:var(--brand);opacity:.55}.pcal-cell.reason-past:after{display:none}.pcal-legend{display:flex;flex-wrap:wrap;gap:var(--space-md);margin:var(--space-md) 0 0;padding:var(--space-sm) 0 0;border-top:1px solid var(--line-soft);list-style:none;font-size:var(--text-xs);color:var(--ink-faint)}.pcal-legend li{display:inline-flex;align-items:center;gap:6px}.pcal-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-faint);flex-shrink:0}.pcal-dot.reason-lead_time{width:10px;height:1px;border-radius:0;background:var(--ink-faint)}.pcal-dot.reason-capacity{background:var(--brand);opacity:.55}.pcal-slots{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--line-soft)}.pcal-slots-title{font-size:var(--text-sm);font-weight:500;color:var(--ink);margin-bottom:var(--space-sm)}.pcal-slots-note{font-size:var(--text-sm);color:var(--ink-faint);margin:0}.pcal-slot-list{display:flex;flex-wrap:wrap;gap:6px}.pcal-slot{padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;font-variant-numeric:tabular-nums;color:var(--ink);cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition)}.pcal-slot:hover{border-color:var(--brand);color:var(--brand)}.pcal-slot.is-selected,.pcal-slot.is-selected:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}@media (max-width: 420px){.pickup-calendar{padding:var(--space-sm)}.pcal-cell{min-height:36px;font-size:.875rem}}@media (prefers-reduced-motion: reduce){.pcal-cell,.pcal-slot,.pcal-nav{transition:none}}.wedding-page{padding-bottom:var(--space-4xl)}.wedding-hero{display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:center;padding-top:clamp(32px,6vw,72px)}.wedding-hero-figure{margin:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background:var(--surface)}.wedding-hero-figure img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover}.wedding-hero-text h1{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;line-height:1.04;letter-spacing:-.015em;color:var(--ink);margin-bottom:var(--space-lg)}.wedding-hero-text h1 em{font-style:italic;font-weight:400;color:var(--brand)}.wedding-hero-text p{font-size:var(--text-base);color:var(--ink-soft);max-width:54ch;margin-bottom:var(--space-xl)}@media (min-width: 900px){.wedding-hero{grid-template-columns:.95fr 1fr;gap:var(--space-3xl);padding-top:var(--space-3xl)}}.wedding-intro{display:grid;grid-template-columns:1fr;gap:var(--space-2xl);padding-top:clamp(56px,8vw,104px)}.wedding-intro-text h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.12;margin-bottom:var(--space-lg);max-width:20ch}.wedding-intro-text p{font-size:var(--text-base);color:var(--ink-soft);max-width:62ch;margin-bottom:var(--space-md)}.wedding-values{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-lg)}.wedding-values li{padding-top:var(--space-md);border-top:1px solid var(--line)}.wedding-values h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--ink);margin-bottom:6px}.wedding-values p{font-size:var(--text-sm);color:var(--ink-soft);margin:0;max-width:44ch}@media (min-width: 720px){.wedding-values{grid-template-columns:repeat(3,1fr)}}@media (min-width: 900px){.wedding-intro{grid-template-columns:1fr}}.wedding-form-section{padding-top:clamp(56px,8vw,104px);max-width:760px;scroll-margin-top:var(--header-height)}.wedding-form-head h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.12;margin-bottom:var(--space-xs)}.wedding-form-head p{font-size:var(--text-sm);color:var(--ink-faint);margin-bottom:var(--space-2xl)}.wedding-row{display:grid;grid-template-columns:1fr;gap:0 var(--space-lg)}@media (min-width: 640px){.wedding-row{grid-template-columns:1fr 1fr}}.wedding-kind{border:none;padding:0;margin:0 0 var(--space-lg)}.wedding-kind legend{padding:0;margin-bottom:6px}.wedding-kind-cards{display:grid;grid-template-columns:1fr;gap:var(--space-sm)}@media (min-width: 560px){.wedding-kind-cards{grid-template-columns:1fr 1fr}}.wedding-kind-card{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;padding:var(--space-md);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);font-family:var(--font-body);cursor:pointer;transition:border-color var(--transition)}.wedding-kind-card:hover{border-color:var(--brand)}.wedding-kind-card.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.wedding-kind-card:focus-visible,.wedding-file-btn:focus-within,.wedding-file-remove:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.wedding-kind-title{font-size:var(--text-base);font-weight:500;color:var(--ink)}.wedding-kind-desc{font-size:var(--text-sm);color:var(--ink-faint);line-height:1.45}.wedding-files-hint{font-size:var(--text-sm);color:var(--ink-faint);margin:0 0 var(--space-sm)}.wedding-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wedding-file-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--ink);cursor:pointer;transition:border-color var(--transition),color var(--transition)}.wedding-file-btn:hover{border-color:var(--brand);color:var(--brand)}.wedding-file-input:focus-visible+.wedding-file-btn{outline:2px solid var(--brand);outline-offset:2px}.wedding-file-list{list-style:none;margin:var(--space-md) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-xs)}.wedding-file-list li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs);border:1px solid var(--line-soft);border-radius:var(--radius)}.wedding-file-thumb{width:48px;height:48px;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface);display:flex;align-items:center;justify-content:center;color:var(--ink-faint)}.wedding-file-thumb img{width:100%;height:100%;object-fit:cover}.wedding-file-name{flex:1;min-width:0;font-size:var(--text-sm);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wedding-file-remove{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;color:var(--ink-faint);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition),background-color var(--transition)}.wedding-file-remove:hover{color:var(--danger);background:var(--surface)}.wedding-consent label{display:flex;align-items:flex-start;gap:10px;font-size:var(--text-sm);color:var(--ink-soft);line-height:1.55;cursor:pointer}.wedding-consent a{color:var(--brand);border-bottom:1px solid transparent;transition:border-color var(--transition)}.wedding-consent a:hover{border-bottom-color:var(--brand)}.wedding-form-error{margin-bottom:var(--space-md)}.wedding-submit{width:100%}@media (min-width: 560px){.wedding-submit{width:auto}}.wedding-sent{max-width:52ch;padding:var(--space-2xl) 0}.wedding-sent-icon{width:56px;height:56px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--accent-green);margin-bottom:var(--space-lg)}.wedding-sent h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.12;margin-bottom:var(--space-sm)}.wedding-sent p{font-size:var(--text-base);color:var(--ink-soft);margin-bottom:var(--space-xl)}@media (prefers-reduced-motion: reduce){.wedding-kind-card,.wedding-file-btn,.wedding-file-remove{transition:none}}.checkout-page{padding-bottom:var(--space-4xl)}.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-2xl);align-items:start}.checkout-banner{display:flex;gap:var(--space-sm);align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-lg)}.checkout-banner>svg{flex-shrink:0;margin-top:2px;color:var(--ink-soft)}.checkout-banner p{margin:0;font-size:var(--text-sm);color:var(--ink)}.checkout-banner strong{display:block;font-size:var(--text-sm);font-weight:600;color:var(--ink);margin-bottom:4px}.checkout-banner.is-error{border-color:var(--danger)}.checkout-banner.is-error>svg{color:var(--danger)}.checkout-banner.is-warning>svg{color:var(--brand)}.checkout-problem-list{list-style:none;margin:0;padding:0;font-size:var(--text-sm);color:var(--ink-soft);line-height:1.6}.checkout-banner-link{margin-top:6px;padding:0;border:none;background:none;font:inherit;font-size:var(--text-sm);font-weight:500;color:var(--brand);cursor:pointer;border-bottom:1px solid transparent;transition:border-color var(--transition)}.checkout-banner-link:hover{border-bottom-color:var(--brand)}.checkout-section{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-lg);margin-bottom:var(--space-lg)}@media (min-width: 640px){.checkout-section{padding:var(--space-xl)}}.checkout-section-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--ink);margin-bottom:var(--space-xs)}.checkout-section-intro{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 var(--space-lg)}.checkout-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.checkout-pickup-notes{margin-bottom:var(--space-md)}.checkout-earliest{font-size:var(--text-base);font-weight:500;color:var(--ink);margin:0 0 4px}.checkout-lead{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 4px;max-width:62ch}.checkout-avail-loading,.checkout-avail-empty{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--ink-faint);margin:0}.checkout-avail-empty{color:var(--ink-soft)}.checkout-section .form-error{margin-top:var(--space-sm)}.checkout-where{display:flex;gap:var(--space-sm);align-items:flex-start;margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--line-soft)}.checkout-where>svg{flex-shrink:0;margin-top:2px;color:var(--brand)}.checkout-where strong{display:block;font-size:var(--text-sm);font-weight:600;color:var(--ink);margin-bottom:4px}.checkout-where p{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.checkout-where a{color:var(--ink-soft)}.checkout-map-link{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:var(--text-sm);font-weight:500;color:var(--brand);border-bottom:1px solid transparent;transition:border-color var(--transition)}.checkout-map-link:hover{border-bottom-color:var(--brand)}.checkout-pickup-only{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--ink-faint);margin:0 0 var(--space-lg);padding:0 2px}.checkout-pickup-only>svg{flex-shrink:0;color:var(--ink-faint)}.checkout-delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.checkout-delivery-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-md);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);font-family:var(--font-body);color:var(--ink);cursor:pointer;text-align:center;transition:border-color var(--transition),color var(--transition)}.checkout-delivery-card:hover{border-color:var(--brand)}.checkout-delivery-card.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.checkout-delivery-card:focus-visible,.checkout-place-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.checkout-delivery-card .delivery-icon{color:var(--brand);line-height:1}.checkout-delivery-card .delivery-label{font-weight:500;font-size:var(--text-sm)}.checkout-delivery-card .delivery-price{font-size:var(--text-xs);color:var(--ink-faint)}.checkout-address{margin-top:var(--space-lg)}.checkout-summary{position:sticky;top:calc(var(--header-height) + var(--space-lg));background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-lg)}@media (min-width: 640px){.checkout-summary{padding:var(--space-xl)}}.checkout-summary-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--space-lg)}.checkout-summary-items{border-bottom:1px solid var(--line-soft);padding-bottom:var(--space-md);margin-bottom:var(--space-md)}.checkout-summary-item{display:grid;grid-template-columns:1fr auto;gap:2px var(--space-sm);padding:var(--space-xs) 0;font-size:var(--text-sm)}.checkout-summary-item-main{display:flex;align-items:baseline;gap:6px;min-width:0}.checkout-summary-item-name{color:var(--ink);overflow:hidden;text-overflow:ellipsis}.checkout-summary-item-qty{color:var(--ink-faint);font-size:var(--text-xs);white-space:nowrap}.checkout-summary-item-price{grid-column:2;grid-row:1;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.checkout-summary-config{grid-column:1 / -1;list-style:none;margin:2px 0 0;padding:0;font-size:var(--text-xs);line-height:1.5;color:var(--ink-faint)}.checkout-summary-pickup{display:flex;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm) 0;margin-bottom:var(--space-xs);border-bottom:1px solid var(--line-soft);font-size:var(--text-sm);color:var(--ink-soft)}.checkout-summary-pickup strong{color:var(--ink);font-weight:500;text-align:right}.checkout-summary-row{display:flex;justify-content:space-between;padding:5px 0;font-size:var(--text-sm);color:var(--ink-soft)}.checkout-summary-total{display:flex;justify-content:space-between;padding:var(--space-md) 0 0;margin-top:var(--space-xs);border-top:1px solid var(--line);font-size:1.125rem;font-weight:500;color:var(--ink)}.checkout-terms{display:flex;align-items:flex-start;gap:var(--space-xs);margin-top:var(--space-lg);font-size:var(--text-sm);line-height:1.5;color:var(--ink-soft);cursor:pointer}.checkout-terms input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--brand);cursor:pointer}.checkout-terms a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.checkout-terms:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:4px;border-radius:var(--radius-sm)}.checkout-place-btn{width:100%;min-height:52px;margin-top:var(--space-sm);background:var(--brand);color:var(--on-brand);border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color var(--transition);display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px}.checkout-place-btn:hover:not(:disabled){background:var(--brand-deep)}.checkout-place-btn:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 900px){.checkout-layout{grid-template-columns:1fr;gap:var(--space-lg)}.checkout-summary{position:static}.checkout-row{grid-template-columns:1fr}}.checkout-success{max-width:620px;margin:0 auto;padding:var(--space-3xl) var(--gutter) var(--space-4xl)}.checkout-success-loading{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--ink-faint);font-size:var(--text-sm)}.checkout-success-icon{width:56px;height:56px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-lg);color:var(--accent-green)}.checkout-success h1{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;line-height:1.12;margin-bottom:var(--space-sm)}.checkout-success-lead{font-size:var(--text-base);color:var(--ink-soft);margin:0 0 var(--space-xs);max-width:52ch}.checkout-success-number{font-size:var(--text-sm);font-weight:500;color:var(--brand);font-variant-numeric:tabular-nums;margin:0}.checkout-success-pending{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:var(--text-sm);color:var(--ink-soft)}.checkout-success-block{margin-top:var(--space-2xl);padding-top:var(--space-lg);border-top:1px solid var(--line-soft)}.checkout-success-block h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--space-sm)}.checkout-success-pickup,.checkout-success-where{display:flex;align-items:flex-start;gap:8px;font-size:var(--text-base);color:var(--ink);margin:0 0 4px}.checkout-success-pickup>svg,.checkout-success-where>svg{flex-shrink:0;margin-top:4px;color:var(--brand)}.checkout-success-where{font-size:var(--text-sm);color:var(--ink-soft)}.checkout-success-items{list-style:none;margin:0;padding:0}.checkout-success-items>li{padding:var(--space-sm) 0;border-bottom:1px solid var(--line-soft)}.checkout-success-item-head{display:flex;justify-content:space-between;gap:var(--space-sm);font-size:var(--text-sm);color:var(--ink)}.checkout-success-item-name{font-weight:500}.checkout-success-item-qty{margin-left:6px;font-weight:400;color:var(--ink-faint)}.checkout-success-item-price{font-variant-numeric:tabular-nums;white-space:nowrap}.checkout-success-config{list-style:none;margin:4px 0 0;padding:0;font-size:var(--text-xs);line-height:1.55;color:var(--ink-faint)}.checkout-success-allergens{margin:6px 0 0;font-size:var(--text-xs);line-height:1.55;color:var(--ink-soft)}.checkout-success-allergens span{font-weight:500;color:var(--ink)}.checkout-success-total{display:flex;justify-content:space-between;padding-top:var(--space-md);font-size:1.125rem;font-weight:500;color:var(--ink)}.checkout-success-email{margin-top:var(--space-lg);font-size:var(--text-sm);color:var(--ink-soft)}.checkout-success-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-2xl)}.checkout-account-notice{display:flex;gap:10px;margin-top:var(--space-md);padding:12px 14px;background:var(--surface);border-radius:var(--radius);font-size:.8rem;line-height:1.5;color:var(--ink-faint)}.checkout-account-notice>svg{flex-shrink:0;margin-top:2px;color:var(--brand)}.checkout-account-notice p{margin:0}.checkout-gdpr-link{margin-top:8px;border:none;background:none;padding:0;cursor:pointer;font:inherit;text-decoration:underline;color:var(--brand)}.checkout-gdpr-form{margin-top:10px;display:flex;flex-direction:column;gap:8px}.checkout-gdpr-actions{display:flex;gap:8px}.checkout-gdpr-send{border:none;cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);background:var(--brand);color:var(--on-brand);font:inherit;font-weight:500}.checkout-gdpr-send:disabled{opacity:.6;cursor:not-allowed}.checkout-gdpr-cancel{border:1px solid var(--line);background:none;cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);font:inherit;color:var(--ink-soft)}.checkout-gdpr-sent{margin-top:8px;color:var(--brand);font-weight:500}.contact-page{padding-bottom:80px}.contact-layout{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}.contact-form-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:32px}.contact-form-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;margin-bottom:24px}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-submit-btn{margin-top:8px}.contact-info-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:32px}.contact-info-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;margin-bottom:24px}.contact-info-item{display:flex;gap:14px;margin-bottom:20px}.contact-info-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--pink-soft);display:flex;align-items:center;justify-content:center;color:var(--pink)}.contact-info-label{font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:2px}.contact-info-value{font-size:.95rem;color:var(--text);line-height:1.5}.contact-info-value a{color:var(--blue-accent);transition:color var(--transition)}.contact-info-value a:hover{color:var(--pink)}@media (max-width: 768px){.contact-layout,.contact-row{grid-template-columns:1fr}}.contact-whatsapp{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;padding:14px 20px;border-radius:var(--radius-sm);background:#128c45;color:#fff;font-size:.9375rem;font-weight:600;transition:background-color var(--transition)}.contact-whatsapp:hover{background:#0e6f37}.contact-whatsapp:focus-visible{outline:2px solid #128c45;outline-offset:2px}.login-page{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:20px}.login-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:var(--bg)}.login-bg-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5}.login-bg-blob:nth-child(1){width:600px;height:600px;background:#d8f3ff99;top:-150px;left:-100px;animation:gradientDrift 15s ease-in-out infinite}.login-bg-blob:nth-child(2){width:500px;height:500px;background:#ff8fa74d;top:50%;right:-100px;animation:gradientDrift 18s ease-in-out infinite reverse}.login-bg-blob:nth-child(3){width:400px;height:400px;background:#6672f033;bottom:-100px;left:30%;animation:gradientDrift 20s ease-in-out infinite;animation-delay:-5s}.login-card{position:relative;z-index:1;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:3rem;width:100%;max-width:420px;box-shadow:0 8px 40px #0000000f,0 1px 3px #0000000a;border:1px solid rgba(255,255,255,.6);animation:loginCardEnter .6s var(--ease) forwards;opacity:0}@keyframes loginCardEnter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.login-card.shake{animation:shake .5s var(--ease)}.login-logo{text-align:center;margin-bottom:8px;animation:loginStagger .5s var(--ease) .1s forwards;opacity:0}.login-logo-img{display:block;width:180px;height:auto;margin:0 auto}.login-subtitle{text-align:center;font-family:var(--font-heading);font-weight:400;font-size:1.1rem;color:var(--text-secondary);margin-bottom:8px;animation:loginStagger .5s var(--ease) .15s forwards;opacity:0}.login-divider{display:flex;justify-content:center;margin-bottom:2rem;animation:loginStagger .5s var(--ease) .2s forwards;opacity:0}.login-divider-line{width:40px;height:2px;background:var(--gradient-vivid);border-radius:2px}@keyframes loginStagger{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-google-btn{margin-bottom:0;animation:loginStagger .5s var(--ease) .22s forwards;opacity:0;display:flex;justify-content:center}.login-or{display:flex;align-items:center;gap:12px;margin:1.25rem 0;animation:loginStagger .5s var(--ease) .24s forwards;opacity:0}.login-or-line{flex:1;height:1px;background:var(--border)}.login-or-text{font-size:.78rem;color:var(--text-light);text-transform:lowercase;letter-spacing:.05em}.login-field{position:relative;margin-bottom:1.25rem;animation:loginStagger .5s var(--ease) forwards;opacity:0}.login-field:nth-child(1){animation-delay:.25s}.login-field:nth-child(2){animation-delay:.3s}.login-field-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-light);pointer-events:none;display:flex;align-items:center}.login-input{width:100%;padding:14px 14px 14px 44px;font-family:var(--font-body);font-size:.95rem;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:all var(--transition)}.login-input:focus{border-color:var(--pink);box-shadow:0 0 0 3px #ff8fa726;background:#fffcfa}.login-input::placeholder{color:var(--text-light)}.login-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--text-light);transition:all var(--transition);cursor:pointer;background:none;border:none}.login-password-toggle:hover{color:var(--text-secondary);background:var(--border-light)}.login-submit{width:100%;height:48px;background:var(--gradient-btn);color:#fff;border:none;border-radius:100px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition);margin-top:.5rem;animation:loginStagger .5s var(--ease) .35s forwards;opacity:0;display:flex;align-items:center;justify-content:center}.login-submit:hover:not(:disabled){background:var(--gradient-btn-hover);transform:translateY(-1px);box-shadow:0 6px 24px #7b85f24d}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{opacity:.7;cursor:not-allowed}.login-submit.loading{animation:pulse 1.5s ease-in-out infinite}.login-error{color:#e53e3e;font-size:.85rem;text-align:center;padding:10px 14px;background:#fff5f5;border-radius:var(--radius-sm);margin-bottom:1rem;border:1px solid #fed7d7;animation:fadeUp .3s var(--ease) forwards}.login-register-link{text-align:center;font-size:.88rem;color:var(--text-secondary);margin-top:1.5rem;animation:loginStagger .5s var(--ease) .4s forwards;opacity:0}.login-register-link a{color:var(--blue-accent);font-weight:600;transition:color var(--transition)}.login-register-link a:hover{color:var(--pink)}.login-back{position:relative;z-index:1;margin-top:24px;text-align:center;animation:loginStagger .5s var(--ease) .4s forwards;opacity:0}.login-back a{font-size:.9rem;color:var(--text-secondary);transition:color var(--transition);display:inline-flex;align-items:center;gap:6px}.login-back a:hover{color:var(--blue-accent)}.login-success{position:absolute;top:0;right:0;bottom:0;left:0;background:#48bb7814;border-radius:var(--radius-lg);z-index:10;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s var(--ease) forwards}.login-success-icon{color:#48bb78}@media (max-width: 480px){.login-card{padding:2rem 1.5rem}.login-logo-img{width:150px}.login-subtitle{font-size:1rem}}.login-sent{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 0}.login-sent-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--brand-tint, oklch(.962 .018 350));color:var(--brand, oklch(.42 .163 350));margin-bottom:4px}.login-sent-title{font-family:var(--font-display, Georgia, serif);font-weight:500;font-size:1.5rem;color:var(--ink, #1b1317);margin:0}.login-text-link{background:none;border:none;cursor:pointer;color:var(--brand, oklch(.42 .163 350));font-family:var(--font-body, sans-serif);font-size:.9375rem;font-weight:500;text-decoration:none;padding:6px 0}.login-text-link:hover{text-decoration:underline}.account-page{padding:3rem 0 4rem}.account-layout{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.account-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:2rem;box-shadow:0 2px 12px #0000000a}.account-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.account-avatar{width:56px;height:56px;border-radius:50%;background:var(--gradient-vivid);display:flex;align-items:center;justify-content:center;color:#fff}.account-edit-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:.88rem;font-weight:500;color:var(--text-secondary);background:none;border:1px solid var(--border);border-radius:100px;padding:8px 16px;cursor:pointer;transition:all var(--transition)}.account-edit-btn:hover{border-color:var(--pink);color:var(--pink)}.account-error{color:#e53e3e;font-size:.85rem;text-align:center;padding:10px 14px;background:#fff5f5;border-radius:var(--radius-sm);margin-bottom:1rem;border:1px solid #fed7d7}.account-saved{display:inline-flex;align-items:center;gap:6px;color:#48bb78;font-size:.85rem;font-weight:500;margin-bottom:1rem}.account-info{display:flex;flex-direction:column;gap:1rem}.account-info-row{display:flex;align-items:flex-start;gap:12px}.account-info-icon{color:var(--text-light);margin-top:2px;flex-shrink:0}.account-info-label{display:block;font-size:.78rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.account-info-value{display:block;font-size:1rem;color:var(--text);font-weight:500}.account-form{display:flex;flex-direction:column;gap:1rem}.account-field{display:flex;flex-direction:column;gap:6px}.account-label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-secondary);font-weight:500}.account-input{width:100%;padding:12px 14px;font-family:var(--font-body);font-size:.95rem;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:all var(--transition)}.account-input:focus{border-color:var(--pink);box-shadow:0 0 0 3px #ff8fa726}.account-form-actions{display:flex;gap:.75rem;margin-top:.5rem}.account-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:0 24px;background:var(--gradient-btn);color:#fff;border:none;border-radius:100px;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.account-save-btn:hover:not(:disabled){background:var(--gradient-btn-hover);transform:translateY(-1px);box-shadow:0 4px 16px #7b85f24d}.account-save-btn:disabled{opacity:.7;cursor:not-allowed}.account-cancel-btn{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 20px;background:none;color:var(--text-secondary);border:1px solid var(--border);border-radius:100px;font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.account-cancel-btn:hover{border-color:var(--text-light);color:var(--text)}.account-links{display:flex;flex-direction:column;gap:.75rem}.account-link-card{display:flex;align-items:center;gap:14px;padding:1.25rem 1.5rem;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 2px 12px #0000000a;color:var(--text);font-size:1rem;font-weight:500;transition:all var(--transition)}.account-link-card:hover{border-color:var(--pink);transform:translateY(-1px);box-shadow:0 4px 20px #00000014}.account-logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;background:none;color:var(--text-secondary);border:1px solid var(--border);border-radius:100px;font-family:var(--font-body);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.account-logout-btn:hover{border-color:#e53e3e;color:#e53e3e;background:#e53e3e0a}@media (max-width: 640px){.account-page{padding:2rem 0 3rem}.account-card{padding:1.5rem}}.account-section-title{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-display, Georgia, serif);font-weight:500;font-size:1.25rem;color:var(--ink, #1b1317)}.account-addr-loading{display:flex;justify-content:center;padding:16px;color:var(--ink-faint)}.account-addr-empty{color:var(--ink-faint, oklch(.5 .015 350));font-size:.9rem;margin:8px 0 0}.account-addr-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.account-addr-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line, oklch(.905 .006 350));border-radius:var(--radius, 4px)}.account-addr-text{display:flex;flex-direction:column;gap:2px;font-size:.9rem}.account-addr-label{font-weight:600;color:var(--ink, #1b1317)}.account-addr-line{color:var(--ink-soft, oklch(.4 .018 350))}.account-addr-city{color:var(--ink-faint, oklch(.5 .015 350));font-size:.82rem}.account-addr-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.account-addr-default{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:500;color:var(--brand, oklch(.42 .163 350))}.account-addr-del{border:none;background:none;cursor:pointer;color:var(--ink-faint, oklch(.5 .015 350));padding:4px;border-radius:var(--radius-sm, 2px);transition:color .18s ease}.account-addr-del:hover{color:var(--brand, oklch(.42 .163 350))}.account-addr-form{margin-top:14px}.account-addr-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-addr-checkbox{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:.85rem;color:var(--ink-soft, oklch(.4 .018 350));cursor:pointer}.account-orders-page{padding:0 0 var(--space-4xl)}.account-orders-layout{max-width:720px;margin:0 auto}.account-orders-loading{display:flex;justify-content:center;padding:var(--space-3xl) 0}.account-orders-empty{text-align:center;padding:var(--space-3xl) var(--space-md);color:var(--ink-faint)}.account-orders-empty p{margin-top:var(--space-md);font-size:var(--text-base);color:var(--ink-soft)}.account-orders-list{display:flex;flex-direction:column;gap:var(--space-sm)}.account-order-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition)}.account-order-card:hover{border-color:var(--ink-faint)}.account-order-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;padding:var(--space-md) var(--space-lg);background:none;border:none;cursor:pointer;font-family:var(--font-body);color:var(--ink);transition:background-color var(--transition)}.account-order-header:hover{background:var(--surface)}.account-order-header:focus-visible,.account-order-invoice:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.account-order-left{display:flex;align-items:center;gap:10px;min-width:0}.account-order-number{font-weight:500;font-size:.9375rem;font-variant-numeric:tabular-nums}.account-order-status{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.account-order-status.tone-muted{color:var(--ink-faint)}.account-order-status.tone-brand{color:var(--brand)}.account-order-status.tone-green{color:var(--accent-green)}.account-order-status.tone-danger{color:var(--danger)}.account-order-right{display:flex;align-items:center;gap:var(--space-md);color:var(--ink-soft)}.account-order-date{font-size:var(--text-sm)}.account-order-total{font-weight:500;font-size:.9375rem;color:var(--ink);font-variant-numeric:tabular-nums}.account-order-pickup{display:flex;align-items:flex-start;gap:8px;margin:0;padding:0 var(--space-lg) var(--space-md);font-size:var(--text-sm);color:var(--ink-soft)}.account-order-pickup>svg{flex-shrink:0;margin-top:3px;color:var(--brand)}.account-order-pickup-label{font-weight:500;color:var(--ink)}.account-order-details{border-top:1px solid var(--line-soft);padding:var(--space-md) var(--space-lg);animation:fadeUp .2s var(--ease) forwards}.account-order-items{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)}.account-order-item-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm);font-size:var(--text-sm);color:var(--ink)}.account-order-item-name{font-weight:500}.account-order-item-qty{color:var(--ink-faint);font-size:var(--text-xs);font-weight:400}.account-order-item-price{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.account-order-item-config{list-style:none;margin:4px 0 0;padding:0;font-size:var(--text-xs);line-height:1.55;color:var(--ink-faint)}.account-order-item-allergens{margin:6px 0 0;font-size:var(--text-xs);line-height:1.55;color:var(--ink-soft)}.account-order-item-allergens span{font-weight:500;color:var(--ink)}.account-order-summary{border-top:1px solid var(--line-soft);padding-top:var(--space-sm);display:flex;flex-direction:column;gap:5px}.account-order-summary-row{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--ink-soft)}.account-order-summary-total{display:flex;justify-content:space-between;font-size:var(--text-base);font-weight:500;color:var(--ink);margin-top:4px;padding-top:var(--space-xs);border-top:1px solid var(--line-soft)}.account-order-invoice{display:inline-flex;align-items:center;gap:8px;margin-top:var(--space-md);padding:9px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--brand);transition:background-color var(--transition),border-color var(--transition)}.account-order-invoice:hover{background:var(--surface);border-color:var(--brand)}@media (max-width: 640px){.account-order-header{padding:var(--space-md);flex-wrap:wrap;gap:8px}.account-order-right{gap:10px;font-size:var(--text-sm)}.account-order-pickup{padding:0 var(--space-md) var(--space-md)}.account-order-details{padding:var(--space-md)}}@media (prefers-reduced-motion: reduce){.account-order-details{animation:none}}.mt-page{padding:var(--space-xl) 0 var(--space-2xl)}.mt-head{margin-bottom:var(--space-lg)}.mt-title{font-family:var(--font-display);font-size:var(--text-3xl);margin:0 0 var(--space-2xs)}.mt-lead,.mt-state{margin:0;color:var(--ink-soft);font-size:var(--text-sm);max-width:52ch}.mt-empty{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center;color:var(--ink-soft)}.mt-empty svg{color:var(--brand)}.mt-empty p{margin:0}.mt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:var(--space-md)}.mt-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;background:var(--bg)}.mt-thumb{display:block;width:100%;aspect-ratio:3 / 4;padding:0;border:0;background:var(--surface);cursor:zoom-in}.mt-thumb img{width:100%;height:100%;object-fit:cover;display:block}.mt-thumb.is-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2xs);cursor:default;color:var(--ink-faint);font-size:var(--text-xs);text-align:center;padding:var(--space-md)}.mt-thumb:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.mt-body{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs);flex:1}.mt-name{display:flex;align-items:center;gap:var(--space-2xs);font-family:var(--font-display);font-size:var(--text-lg);margin:0;color:var(--ink)}.mt-date{margin:0;font-size:var(--text-xs);color:var(--ink-faint)}.mt-summary{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;font-size:var(--text-sm);color:var(--ink-soft)}.mt-summary li{display:flex;gap:var(--space-xs);justify-content:space-between}.mt-summary-label{color:var(--ink-faint);flex:none}.mt-price{margin:auto 0 0;padding-top:var(--space-xs);font-weight:600;color:var(--brand)}.mt-actions{display:flex;align-items:center;gap:var(--space-xs)}.mt-actions .btn{flex:1 1 auto;min-width:0;justify-content:center;text-align:center}.mt-actions .btn span,.mt-actions .btn{overflow-wrap:anywhere}.mt-icon-btn{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid var(--line);border-radius:var(--radius);background:none;color:var(--ink-soft);cursor:pointer}.mt-icon-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.mt-icon-btn.is-danger:hover{color:var(--danger);border-color:var(--danger)}.mt-name .mt-icon-btn{width:24px;height:24px;border:0}.mt-rename{display:flex;gap:var(--space-2xs);align-items:center}.mt-rename input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius);font:inherit;font-size:var(--text-sm)}.mt-rename button{display:grid;place-items:center;width:28px;height:28px;flex:none;border:1px solid var(--line);border-radius:var(--radius);background:none;cursor:pointer;color:var(--ink-soft)}.mt-delete-name{margin:var(--space-xs) 0 0;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink)}.mt-delete-note{margin:var(--space-2xs) 0 0;font-size:var(--text-sm);color:var(--ink-faint)}.legal-page{padding-bottom:80px}.legal-content{max-width:720px;margin:0 auto;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:40px}.legal-content h2{font-family:var(--font-heading);font-size:1.4rem;margin-top:32px;margin-bottom:12px;color:var(--text)}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:1.1rem;margin-top:24px;margin-bottom:8px}.legal-content p{font-size:.95rem;line-height:1.75;margin-bottom:12px;color:var(--text-secondary)}.legal-content ul{padding-left:20px;margin-bottom:16px}.legal-content ul li{list-style:disc;font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin-bottom:4px}.legal-content a{color:var(--blue-accent);text-decoration:underline;text-underline-offset:2px}.legal-content a:hover{color:var(--pink)}.legal-last-updated{font-size:.85rem;color:var(--text-light);margin-bottom:24px}@media (max-width: 768px){.legal-content{padding:24px}}.credits-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:4rem var(--gutter)}.credits-container{max-width:640px;width:100%}.credits-title{text-align:center;margin-bottom:2rem;font-size:1.4rem;color:var(--text-light);font-weight:400;letter-spacing:.06em;text-transform:uppercase}.credits-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:3rem 2.5rem;text-align:center}.credits-intro{font-size:1rem;color:var(--text-secondary);margin-bottom:2rem}.credits-logo-link{display:inline-block;text-decoration:none;margin-bottom:2rem}.credits-logo-hover-zone{padding:20px;margin:-20px}.credits-algo-logo{width:280px;max-width:100%;margin:0 auto}.credits-algo-logo .algoritmo-logo-container.effect-depth svg#logo{filter:drop-shadow(0 4px 12px rgba(4,16,48,.3)) drop-shadow(0 10px 24px rgba(0,0,0,.15));transform:scale(1.03);transform-origin:50% 50%}.credits-description{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin-bottom:2.5rem}.credits-inline-link{color:var(--text);font-weight:600;text-decoration:none;transition:all var(--transition)}.credits-inline-link:hover{background:var(--gradient-vivid);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.credits-services{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem;text-align:left}.credits-service h3{font-family:var(--font-heading);font-size:.95rem;font-weight:600;margin-bottom:.4rem;color:var(--text)}.credits-service p{font-size:.82rem;line-height:1.55;color:var(--text-light)}.credits-cta{display:inline-flex;padding:12px 32px}.credits-back{text-align:center;margin-top:2rem}.credits-back a{font-size:.88rem;color:var(--text-light);text-decoration:none;transition:all var(--transition)}.credits-back a:hover{background:var(--gradient-vivid);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media (max-width: 640px){.credits-card{padding:2rem 1.5rem}.credits-services{grid-template-columns:1fr;gap:1rem}.credits-algo-logo{width:220px}}.admin-page{padding-bottom:80px}.admin-page .page-header{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-page .page-header h1{font-size:2rem}.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin-bottom:40px}.admin-stat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all var(--transition)}.admin-stat-card:hover{box-shadow:var(--shadow-sm)}.admin-stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:1.2rem}.admin-stat-icon.pink{background:var(--pink-soft);color:var(--pink)}.admin-stat-icon.blue{background:#4454e814;color:var(--blue-accent)}.admin-stat-icon.green{background:#48bb781a;color:#48bb78}.admin-stat-icon.orange{background:#ed89361a;color:#ed8936}.admin-stat-value{font-size:1.8rem;font-weight:700;color:var(--text);margin-bottom:4px}.admin-stat-label{font-size:.85rem;color:var(--text-secondary)}.admin-table-wrapper{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table th{padding:14px 20px;text-align:left;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:#fafaf8;border-bottom:1px solid var(--border)}.admin-table td{padding:14px 20px;font-size:.9rem;border-bottom:1px solid var(--border-light);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#fefdf9}.admin-table-img{width:44px;height:44px;border-radius:var(--radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.admin-table-product{display:flex;align-items:center;gap:12px}.admin-status{display:inline-flex;align-items:center;padding:4px 12px;border-radius:100px;font-size:.8rem;font-weight:500}.admin-status.active{background:#c6f6d5;color:#276749}.admin-status.inactive{background:#fed7d7;color:#9b2c2c}.admin-status.pending{background:#fefcbf;color:#975a16}.admin-status.confirmed{background:#bee3f8;color:#2a4365}.admin-status.preparing{background:#feebc8;color:#7b341e}.admin-status.ready{background:#c6f6d5;color:#276749}.admin-status.delivered{background:#e9d8fd;color:#553c9a}.admin-status.cancelled{background:#fed7d7;color:#9b2c2c}.admin-toggle{position:relative;width:44px;height:24px;background:var(--border);border-radius:12px;cursor:pointer;transition:background var(--transition);border:none}.admin-toggle.on{background:#48bb78}.admin-toggle:disabled{cursor:not-allowed;opacity:.4}.admin-promo-cell{background:none;border:none;padding:4px 6px;margin:-4px -6px;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--transition)}.admin-promo-cell:hover{background:var(--bg-soft, #f7f3f5)}.admin-promo-empty{color:var(--text-secondary)}.admin-promo-info{display:inline-flex;flex-direction:column;gap:2px;align-items:flex-start}.admin-promo-badge{font-size:.78rem;font-weight:700;padding:2px 8px;border-radius:999px;color:#fff;line-height:1.3}.admin-promo-badge.active{background:var(--pink-accent, #d6336c)}.admin-promo-badge.scheduled,.admin-promo-badge.expired{background:#adb5bd}.admin-promo-dates{font-size:.72rem;color:var(--text-secondary);white-space:nowrap}.admin-promo-state{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:#adb5bd}.admin-promo-preview{display:flex;align-items:center;gap:10px;margin-top:4px;font-size:1rem}.admin-promo-preview-old{color:var(--text-secondary);text-decoration:line-through}.admin-promo-preview strong{color:var(--pink-accent, #d6336c)}.admin-toggle:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--white);border-radius:50%;transition:transform var(--transition)}.admin-toggle.on:after{transform:translate(20px)}.admin-actions{display:flex;gap:8px}.admin-action-btn{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all var(--transition);color:var(--text-secondary)}.admin-action-btn:hover{background:var(--border-light);color:var(--text)}.admin-action-btn.danger:hover{background:#fff5f5;color:#e53e3e}.admin-nav{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap}.admin-nav-link{padding:6px 14px;border-radius:100px;font-size:.82rem;font-weight:500;color:var(--text-secondary);background:var(--white);border:1px solid var(--border);transition:all var(--transition);text-decoration:none}.admin-nav-link:hover{border-color:var(--pink);color:var(--text)}.admin-nav-link.active{background:var(--gradient-btn);color:#fff;border-color:transparent}.admin-sub-nav{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border-light);padding-bottom:0}.admin-sub-nav-link{padding:6px 12px 8px;font-size:.8rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border-bottom:2px solid transparent;transition:all var(--transition);margin-bottom:-1px}.admin-sub-nav-link:hover{color:var(--text)}.admin-sub-nav-link.active{color:var(--blue-accent);border-bottom-color:var(--blue-accent)}.admin-settings-form{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:32px;max-width:640px}.admin-settings-form .form-group{margin-bottom:1.5rem}.admin-status-select{padding:6px 12px;font-size:.85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);cursor:pointer}.admin-order-detail{padding:20px;background:#fafaf8;border-top:1px solid var(--border-light)}.admin-order-items{margin-bottom:16px}.admin-order-item{display:flex;justify-content:space-between;padding:6px 0;font-size:.9rem}.admin-modal-form .form-group{margin-bottom:1rem}.admin-modal-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-allergen-list{display:flex;flex-direction:column;gap:6px}.admin-allergen-row{padding:8px 10px;border:1px solid var(--border-light);border-radius:var(--radius-sm);transition:all var(--transition)}.admin-allergen-row.enabled{border-color:var(--border);background:#fafaf8}.admin-allergen-check{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem;font-weight:500}.admin-allergen-options{margin-top:6px;margin-left:22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-allergen-alt{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.8rem;color:var(--text-secondary)}.admin-allergen-price{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary)}.admin-allergen-price .form-input{padding:4px 8px;font-size:.8rem}.icon-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:4px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fafaf8;max-height:180px;overflow-y:auto}.icon-picker-item{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1.5px solid transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;background:none}.icon-picker-item:hover{background:var(--white);color:var(--text);border-color:var(--border)}.icon-picker-item.selected{background:var(--gradient-btn);color:#fff;border-color:transparent}@media (max-width: 768px){.admin-table-wrapper{overflow-x:auto}.admin-table{min-width:600px}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-page .page-header{flex-direction:column;align-items:flex-start}}.admin-testmode{margin-top:28px;padding:18px 20px;border:1px solid var(--line, #e6e6e6);border-radius:var(--radius-lg, 8px);background:var(--surface, #faf7f8)}.admin-testmode.on{border-color:#e0a020;background:#fff8ec}.admin-testmode-head{display:flex;align-items:flex-start;gap:14px}.admin-testmode-head>svg{flex-shrink:0;margin-top:2px;color:var(--ink-soft, #555)}.admin-testmode-head strong{font-size:.98rem}.admin-testmode-head p{margin:4px 0 0;font-size:.84rem;color:var(--ink-faint, #777);line-height:1.5;max-width:60ch}.admin-testmode-warn{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:.82rem;font-weight:500;color:#b4690e}.admin-testmode-warn svg{flex-shrink:0}.admin-switch{position:relative;flex-shrink:0;margin-left:auto;cursor:pointer}.admin-switch input{position:absolute;opacity:0;width:0;height:0}.admin-switch-track{display:block;width:46px;height:26px;border-radius:999px;background:var(--line, #ccc);transition:background-color .2s ease;position:relative}.admin-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.admin-switch input:checked+.admin-switch-track{background:#e0a020}.admin-switch input:checked+.admin-switch-track:after{transform:translate(20px)}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal, 500);background:#140c1273;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.admin-modal{background:var(--white, #fff);border-radius:var(--radius-lg, 8px);max-width:460px;width:100%;padding:28px;text-align:center;box-shadow:var(--shadow-lg, 0 16px 48px rgba(0,0,0,.2))}.admin-modal-icon{color:#e0a020;display:flex;justify-content:center;margin-bottom:10px}.admin-modal h2{margin:0 0 10px;font-size:1.25rem}.admin-modal p{margin:0 0 20px;font-size:.88rem;color:var(--ink-soft, #555);line-height:1.55}.admin-modal-actions{display:flex;gap:10px;justify-content:center}.admin-secrets{margin-top:24px;padding-top:20px;border-top:1px solid var(--line, #e6e6e6)}.admin-secrets-title{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:1.05rem}.admin-secrets-warn{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;border-radius:var(--radius, 4px);background:#fff8ec;color:#b4690e;font-size:.82rem}.admin-secrets-warn code{background:#0000000f;padding:1px 5px;border-radius:3px}.admin-secret-badge{margin-left:8px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--line, #eee);color:var(--ink-faint, #888)}.admin-secret-badge.ok{background:#42a05024;color:#2f8f43}.admin-secrets-hint{margin:4px 0 0;font-size:.78rem;color:var(--ink-faint, #888)}.admin-service-group{margin:18px 0;padding:16px;border:1px solid var(--line, #eee);border-radius:var(--radius, 4px);background:var(--bg, #fff)}.admin-service-title{margin:0 0 12px;font-size:.92rem;font-weight:600;color:var(--ink-soft, #555)}.admin-help{margin:4px 0 0;font-size:.78rem;line-height:1.5;color:var(--text-secondary)}.admin-help.block{margin-bottom:10px}.admin-infotip{position:relative;display:inline-flex;vertical-align:-2px;margin-left:2px;color:var(--text-secondary);cursor:help;outline:none}.admin-infotip:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);width:max-content;max-width:240px;padding:6px 10px;border-radius:6px;background:var(--text);color:var(--white);font-size:.78rem;font-weight:400;line-height:1.4;letter-spacing:normal;text-transform:none;white-space:normal;opacity:0;pointer-events:none;transition:opacity .12s;z-index:20}.admin-infotip:hover,.admin-infotip:focus-visible{color:var(--text)}.admin-infotip:hover:after,.admin-infotip:focus-visible:after{opacity:1}.admin-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:24px}.admin-card-title{margin:0;font-size:1.05rem;display:flex;align-items:center;gap:8px}.admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.admin-empty{padding:28px;text-align:center;color:var(--text-secondary);font-size:.88rem}.admin-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.admin-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;background:var(--pink-accent, #d6336c);color:#fff;font-size:.68rem;font-weight:700;line-height:1}.admin-nav-link.active .admin-nav-badge{background:#ffffff47}.admin-tabs{display:flex;gap:4px;margin-bottom:18px;flex-wrap:wrap}.admin-tab{padding:7px 16px;border-radius:999px;border:1px solid var(--border);background:var(--white);font-size:.84rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.admin-tab:hover{color:var(--text);border-color:var(--pink)}.admin-tab.active{background:var(--gradient-btn);border-color:transparent;color:#fff}.admin-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:18px}.admin-filter{display:flex;flex-direction:column;gap:4px;min-width:150px}.admin-filter>label{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.admin-filter .form-input,.admin-filter .form-select{padding:7px 10px;font-size:.85rem}.admin-filter.grow{flex:1 1 220px}.admin-chips{display:flex;gap:6px;flex-wrap:wrap}.admin-chip{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--white);font-size:.78rem;cursor:pointer;color:var(--text-secondary);transition:all var(--transition)}.admin-chip:hover{border-color:var(--pink);color:var(--text)}.admin-chip.active{background:var(--pink-soft);border-color:var(--pink);color:var(--text);font-weight:600}.admin-avail{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.admin-avail.ready{background:#c6f6d5;color:#276749}.admin-avail.from_date{background:#bee3f8;color:#2a4365}.admin-avail.sold_out{background:#fed7d7;color:#9b2c2c}.admin-avail.unavailable{background:#e2e8f0;color:#4a5568}.admin-pay{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.admin-pay.paid{background:#c6f6d5;color:#276749}.admin-pay.unpaid{background:#fefcbf;color:#975a16}.admin-pay.failed{background:#fed7d7;color:#9b2c2c}.admin-pay.refunded{background:#e9d8fd;color:#553c9a}.admin-stock-edit{display:inline-flex;align-items:center;gap:6px}.admin-stock-edit .form-input{width:68px;padding:5px 8px;font-size:.82rem}.admin-mini-btn{padding:5px 9px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--white);font-size:.76rem;cursor:pointer;color:var(--text-secondary);display:inline-flex;align-items:center;gap:5px;transition:all var(--transition)}.admin-mini-btn:hover{border-color:var(--pink);color:var(--text)}.admin-mini-btn:disabled{opacity:.45;cursor:not-allowed}.admin-mini-btn.danger:hover{border-color:#e53e3e;color:#e53e3e}.admin-mini-btn.primary{background:var(--gradient-btn);border-color:transparent;color:#fff}.admin-form-section{border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:16px;margin-bottom:18px}.admin-form-section>h3{margin:0;font-size:.95rem;font-weight:600}.admin-form-section>.admin-help:first-of-type{margin-bottom:12px}.admin-radio-list{display:flex;flex-direction:column;gap:8px}.admin-radio{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer}.admin-radio.on{border-color:var(--pink);background:var(--pink-soft)}.admin-radio input{margin-top:3px}.admin-radio strong{font-size:.88rem;font-weight:600}.admin-check{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.86rem}.admin-allergen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px}.admin-allergen-tile{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:.83rem;cursor:pointer;transition:all var(--transition)}.admin-allergen-tile:hover{border-color:var(--border)}.admin-allergen-tile.on{border-color:var(--pink);background:var(--pink-soft);font-weight:500}.admin-allergen-tile .legal-no{font-size:.7rem;color:var(--text-secondary);font-weight:600;min-width:16px}.admin-thumbs{display:flex;gap:10px;flex-wrap:wrap}.admin-thumb{position:relative;width:112px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:#fafaf8}.admin-thumb img{width:100%;height:80px;object-fit:cover;display:block}.admin-thumb-bar{display:flex;align-items:center;justify-content:center;gap:2px;padding:3px;border-top:1px solid var(--border-light)}.admin-thumb-bar button{width:26px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:5px;border:none;background:none;cursor:pointer;color:var(--text-secondary)}.admin-thumb-bar button:hover{background:var(--border-light);color:var(--text)}.admin-thumb-bar button.danger:hover{background:#fff5f5;color:#e53e3e}.admin-thumb-bar button:disabled{opacity:.3;cursor:not-allowed}.admin-thumb-cover{position:absolute;top:4px;left:4px;padding:1px 7px;border-radius:999px;background:var(--pink-accent, #d6336c);color:#fff;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.admin-pickup-list{display:flex;flex-direction:column}.admin-pickup-row{display:flex;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-light);font-size:.88rem}.admin-pickup-row:last-child{border-bottom:none}.admin-pickup-day{font-weight:600;min-width:190px;text-transform:capitalize}.admin-pickup-meta{color:var(--text-secondary);font-size:.82rem}.prod-day{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;margin-bottom:18px;break-inside:avoid}.prod-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--border-light);margin-bottom:12px}.prod-day-title{margin:0;font-size:1.05rem;text-transform:capitalize}.prod-counts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.prod-count{padding:3px 10px;border-radius:999px;background:#f1f0ec;font-size:.76rem;font-weight:600;color:var(--text-secondary);white-space:nowrap}.prod-count.full{background:#fed7d7;color:#9b2c2c}.prod-count.total{background:var(--pink-soft);color:var(--text)}.prod-order{padding:10px 0;border-bottom:1px dashed var(--border-light)}.prod-order:last-child{border-bottom:none}.prod-order-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:.9rem}.prod-time{font-weight:700;min-width:48px}.admin-arrange{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#fff6d8;border:1px solid #f0d98a;color:#7a5c00;font-size:.72rem;font-weight:600;white-space:nowrap;vertical-align:1px}.prod-time .admin-arrange{margin-left:0}.prod-cust{font-weight:600}.prod-phone{color:var(--text-secondary);font-size:.82rem}.prod-ordno{color:var(--text-secondary);font-size:.8rem}.prod-items{margin:6px 0 0;padding-left:58px}.prod-item{font-size:.86rem;padding:3px 0}.prod-item-qty{font-weight:700}.prod-config{margin:2px 0 0 14px;font-size:.78rem;color:var(--text-secondary)}.prod-allergens{margin-left:14px;font-size:.74rem;color:#9b2c2c}.prod-agg{margin-top:12px;padding:12px 14px;border-radius:var(--radius-sm);background:#fafaf8;border:1px solid var(--border-light)}.prod-agg h4{margin:0 0 6px;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.prod-agg ul{margin:0;padding-left:18px;font-size:.87rem}.prod-agg li{padding:2px 0}.prod-print-range{display:none}@media print{.admin-nav,.admin-sub-nav,.admin-toolbar,.admin-filters,.page-header button,header,footer{display:none!important}.admin-page{padding:0}.admin-page .admin-help.block{display:none}.admin-page .page-header{margin-bottom:4px}.prod-print-range{display:block;margin:0 0 14px;font-size:.9rem;text-transform:capitalize}.prod-day{break-inside:auto;border:none;border-bottom:2px solid #000;border-radius:0;padding:8px 0;margin:0 0 10px}.prod-day-head{break-after:avoid}.prod-order,.prod-agg{break-inside:avoid}.prod-day-title{font-size:1rem}body{background:#fff}.prod-count{border:1px solid #999;background:none!important;color:#000!important}}.cal-hours-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--border-light)}.cal-hours-row:last-of-type{border-bottom:none}.cal-weekday{min-width:110px;font-weight:600;font-size:.88rem;text-transform:capitalize}.cal-slot{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;color:var(--text-secondary)}.cal-slot .form-input{width:96px;padding:5px 8px;font-size:.82rem}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-head{text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);padding-bottom:4px}.cal-cell{min-height:74px;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:5px 6px;background:var(--white);text-align:left;cursor:pointer;font:inherit;transition:all var(--transition);display:flex;flex-direction:column;gap:3px}.cal-cell:hover{border-color:var(--pink)}.cal-cell.empty{border:none;background:none;cursor:default}.cal-cell.closed{background:#f3f1ee;color:#999}.cal-cell.today{border-color:var(--blue-accent);box-shadow:inset 0 0 0 1px var(--blue-accent)}.cal-cell.past{opacity:.5}.cal-num{font-size:.82rem;font-weight:600}.cal-usage{font-size:.68rem;color:var(--text-secondary);line-height:1.35}.cal-usage .full{color:#9b2c2c;font-weight:700}.cal-note{font-size:.66rem;color:#9b2c2c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-override-dot{font-size:.66rem;color:var(--blue-accent);font-weight:700}.cal-month-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.cal-month-title{margin:0;font-size:1rem;text-transform:capitalize}.quotes-layout{display:grid;grid-template-columns:320px 1fr;gap:18px;align-items:start}.quote-list{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;max-height:70vh;overflow-y:auto}.quote-item{display:block;width:100%;text-align:left;padding:12px 14px;border:none;border-bottom:1px solid var(--border-light);background:none;cursor:pointer;font:inherit}.quote-item:hover{background:#fefdf9}.quote-item.active{background:var(--pink-soft)}.quote-item-name{font-weight:600;font-size:.9rem}.quote-item-meta{font-size:.76rem;color:var(--text-secondary);margin-top:2px}.quote-status{display:inline-flex;padding:2px 9px;border-radius:999px;font-size:.7rem;font-weight:600}.quote-status.new{background:#fefcbf;color:#975a16}.quote-status.in_progress{background:#bee3f8;color:#2a4365}.quote-status.replied{background:#c6f6d5;color:#276749}.quote-status.closed{background:#e2e8f0;color:#4a5568}.quote-detail{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.quote-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px}.quote-field-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.quote-field-value{font-size:.9rem;margin-top:2px;word-break:break-word}.quote-files{display:flex;gap:10px;flex-wrap:wrap}.quote-file{width:108px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;display:block;text-decoration:none;color:inherit;background:#fafaf8}.quote-file img{width:100%;height:78px;object-fit:cover;display:block}.quote-file span{display:block;padding:4px 6px;font-size:.68rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-file-generic{height:78px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}@media (max-width: 900px){.quotes-layout{grid-template-columns:1fr}.quote-list{max-height:none}}.cake-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;align-items:start}.cake-steps{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.cake-step-strip{display:flex;flex-wrap:wrap;gap:8px}.cake-step-tab{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--white);text-align:left;font-size:.85rem}.cake-step-tab:hover{border-color:var(--border)}.cake-step-tab.active{border-color:var(--pink);background:var(--pink-soft)}.cake-step-num{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:600;background:var(--border-light);color:var(--text-secondary)}.cake-step-tab.active .cake-step-num{background:var(--pink);color:var(--white)}.cake-step-text strong{display:block;font-weight:600;white-space:nowrap}.cake-step-text small{display:block;color:var(--text-secondary);font-size:.7rem}.cake-step-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light)}.cake-step-tools>span{font-size:.8rem;font-weight:600;margin-right:auto}.cake-col{min-width:0;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.cake-col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.cake-col-head h2{margin:0;font-size:.95rem}.cake-list{display:flex;flex-direction:column;gap:4px}.cake-list-item{display:flex;align-items:center;gap:4px;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:6px 8px;background:var(--white)}.cake-list-item.active{border-color:var(--pink);background:var(--pink-soft)}.cake-list-item.off{opacity:.55}.cake-list-pick{flex:1;text-align:left;border:none;background:none;cursor:pointer;font:inherit;font-size:.85rem;padding:2px 0;min-width:0}.cake-list-pick strong{display:block;font-weight:600;overflow-wrap:anywhere}.cake-list-pick small{display:block;color:var(--text-secondary);font-size:.7rem}.cake-arrows{display:flex;flex-direction:column}.cake-arrows button,.cake-list-item>button:not(.cake-list-pick){width:22px;height:18px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--text-secondary);border-radius:4px}.cake-list-item>button:not(.cake-list-pick){flex:none;height:24px;width:26px}.cake-arrows button:hover,.cake-list-item>button:not(.cake-list-pick):hover{background:var(--border-light);color:var(--text)}.cake-list-item>button.danger:hover{background:#fff5f5;color:#e53e3e}.cake-arrows button:disabled{opacity:.25;cursor:not-allowed}.cake-opt-scroll{overflow-x:auto}.cake-opt-table{width:100%;border-collapse:collapse}.cake-opt-table th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);padding:6px 8px;border-bottom:1px solid var(--border)}.cake-opt-table td{padding:7px 8px;border-bottom:1px solid var(--border-light);font-size:.84rem;vertical-align:middle}.cake-opt-name strong{display:block}.cake-opt-name small{color:var(--text-secondary);font-size:.72rem}.cake-swatch{display:inline-block;width:18px;height:18px;border-radius:50%;border:1px solid var(--border);vertical-align:middle}.cake-rules-line{font-size:.72rem;color:var(--text-secondary)}.cake-type-help{margin-top:6px;padding:8px 10px;border-radius:var(--radius-sm);background:#fafaf8;border:1px solid var(--border-light);font-size:.78rem;color:var(--text-secondary)}.cake-size-prices{display:grid;grid-template-columns:1fr 110px;gap:6px 10px;align-items:center;font-size:.82rem}.cake-multiselect{max-height:170px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px}.cake-multiselect-group{margin-bottom:8px}.cake-multiselect-group>strong{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:3px}@media (max-width: 860px){.cake-layout{grid-template-columns:1fr}}.admin-settings-form .admin-form-section{max-width:none}a.admin-mini-btn,label.admin-mini-btn{text-decoration:none;cursor:pointer}.cake-opt-table tr.off td{opacity:.5}.ai-banner{display:flex;gap:var(--space-xs);align-items:center;border:1px solid var(--line);border-left:3px solid var(--ai-warn);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);margin:0 0 var(--space-md);font-size:var(--text-sm);color:var(--ink-soft)}.ai-banner svg{color:var(--ai-warn);flex:none}.ai-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-sm);margin-bottom:var(--space-lg)}.ai-tile{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-2xs)}.ai-tile-label{font-size:var(--text-xs);color:var(--ink-faint)}.ai-tile-value{font-family:var(--font-body);font-size:1.5rem;font-weight:600;color:var(--ink);line-height:1.1}.ai-meter-block{margin-bottom:var(--space-lg)}.ai-meter-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-xs)}.ai-meter-head h2{font-family:var(--font-display);font-size:var(--text-lg);margin:0}.ai-meter-figures{font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--ink-soft)}.ai-meter{height:10px;border-radius:5px;background:var(--brand-tint);overflow:hidden}.ai-meter-fill{height:100%;border-radius:5px;background:var(--brand);transition:width .3s ease}.ai-meter.is-near .ai-meter-fill{background:var(--ai-warn)}.ai-meter.is-spent .ai-meter-fill{background:var(--danger)}.ai-meter-state{display:flex;align-items:center;gap:var(--space-2xs);margin:var(--space-xs) 0 0;font-size:var(--text-sm);color:var(--ink-soft)}.ai-meter-state.is-ok svg{color:var(--brand)}.ai-meter-state.is-near svg{color:var(--ai-warn)}.ai-meter-state.is-spent svg{color:var(--danger)}.ai-meter-left{margin-left:auto;font-variant-numeric:tabular-nums}.ai-chart-block{margin-bottom:var(--space-lg)}.ai-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-sm)}.ai-chart-head h2{font-family:var(--font-display);font-size:var(--text-lg);margin:0}.ai-chart-readout{font-size:var(--text-xs);color:var(--ink-faint);font-variant-numeric:tabular-nums}.ai-chart{display:flex;align-items:flex-end;gap:2px;height:120px;border-bottom:1px solid var(--line);padding-bottom:1px}.ai-chart-slot{flex:1 1 0;max-width:24px;height:100%;display:flex;align-items:flex-end;justify-content:center;background:none;border:0;padding:0;cursor:pointer}.ai-chart-bar{display:block;width:100%;background:var(--brand);border-radius:4px 4px 0 0;transition:background .15s ease}.ai-chart-slot:hover .ai-chart-bar,.ai-chart-slot:focus-visible .ai-chart-bar{background:var(--brand-deep)}.ai-chart-slot:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.ai-table-block{margin-bottom:var(--space-lg)}.ai-table-block h2{font-family:var(--font-display);font-size:var(--text-lg);margin:0 0 var(--space-sm)}.ai-num{font-variant-numeric:tabular-nums;white-space:nowrap}.ai-thumb{width:40px;height:53px;object-fit:cover;border-radius:var(--radius-sm);display:block;background:var(--surface)}.ai-model{display:block;font-size:var(--text-sm)}.ai-meta{display:block;font-size:var(--text-xs);color:var(--ink-faint);max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-status{font-size:var(--text-sm)}.ai-status.is-ok{color:var(--ink-soft)}.ai-status.is-refused{color:var(--ai-warn)}.ai-status.is-error{color:var(--danger)}.ai-status.is-pending{color:var(--ink-faint)}.ai-settings{max-width:34rem}@media (prefers-reduced-motion: reduce){.ai-meter-fill,.ai-chart-bar{transition:none}}.ai-chart-peak{margin:0 0 var(--space-2xs);font-size:var(--text-xs);color:var(--ink-faint);font-variant-numeric:tabular-nums}.lang-tabs{display:flex;gap:2px;margin-bottom:12px;background:var(--border-light);border-radius:8px;padding:3px}.lang-tab{flex:1;padding:5px 8px;font-size:.75rem;font-weight:600;letter-spacing:.03em;color:var(--text-secondary);background:none;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;position:relative;display:flex;align-items:center;justify-content:center;gap:4px}.lang-tab:hover{color:var(--text)}.lang-tab.active{background:var(--white);color:var(--text);box-shadow:0 1px 3px #00000014}.lang-tab-dot{width:5px;height:5px;border-radius:50%;background:var(--gradient-btn);flex-shrink:0}
