@font-face{font-family:DreamvilleDisplay;src:url(/fonts/DMSerifDisplay-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:DreamvilleSans;src:url(/fonts/DMSans.ttf) format("truetype");font-style:normal;font-weight:100 900;font-display:swap}:root{color-scheme:dark;--background: #111613;--surface: #18201c;--surface-elevated: #1f2823;--active-surface: #26342b;--border: #2b372f;--gold: #C5A880;--gold-bright: #eec059;--gold-pale: #302d1f;--gold-glow: rgb(212 175 55 / 22%);--spice: #de6b35;--spice-hover: #e28743;--spice-surface: #38271f;--text-primary: #f5f7f4;--text-secondary: #a2b0a7;--icon-muted: #6b7c72;--sage: #8db79e;--success: #92cba6;--warning: #e8b66d;--info: #8cbed5;--error: #ff9b8d;--glass: #1a221eeb;--font-display: "DreamvilleDisplay", Georgia, serif;--font-body: "DreamvilleSans", system-ui, sans-serif;--shadow-sm: 0 4px 16px #00000040;--shadow-md: 0 6px 16px #00000040;--shadow-lg: 0 12px 32px #00000040;--shadow-xl: 0 20px 48px #00000040;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 28px;--scrollbar-track: transparent;--scrollbar-thumb: rgba(197, 168, 128, .28);--scrollbar-thumb-hover: var(--gold)}:root[data-theme=light]{--scrollbar-track: transparent;--scrollbar-thumb: rgba(122, 87, 27, .22);--scrollbar-thumb-hover: var(--gold-bright)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@supports selector(::-webkit-scrollbar){*{scrollbar-width:auto;scrollbar-color:auto}}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:9999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-button{display:none;width:0;height:0}:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.22, 1, .36, 1);font-family:DreamvilleSans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary);background:var(--background);font-synthesis:none;text-rendering:optimizeLegibility;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0;background-color:var(--background);color:var(--text-primary);min-height:100vh;overflow-x:hidden}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:none;background:transparent}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1,h2{font-family:DreamvilleDisplay,Georgia,serif;font-weight:400;letter-spacing:-.02em}h3{font-weight:600;letter-spacing:-.01em}svg{flex-shrink:0}small{font-size:12px;line-height:1.5}input,select,textarea{width:100%;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:12px 16px;color:var(--text-primary);font-size:14px;transition:border-color .25s var(--ease-out),box-shadow .25s var(--ease-out),background-color .25s}input:focus,select:focus,textarea:focus{border-color:var(--gold-text, var(--gold));box-shadow:0 0 0 3.5px var(--gold-glow);outline:none;background:var(--surface)}textarea{min-height:85px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--text-secondary)}.form-stack label,.location-form label{display:flex;flex-direction:column;gap:8px;color:var(--text-secondary);font-size:13px;font-weight:600;min-width:0}.form-stack label .muted{font-size:11px;font-weight:400}.form-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.customer-fields label{position:relative}.required-tag{position:absolute;top:0;right:0;color:var(--error);background:var(--spice-surface);padding:2px 7px;border-radius:8px;font-size:10px;font-weight:600}.customer-address{padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--background)}.customer-address .required-tag{top:14px;right:14px}.muted{color:var(--text-secondary)}.eyebrow{font-size:10.5px;letter-spacing:2.5px;font-weight:700;color:var(--gold-text, var(--gold));text-transform:uppercase;display:inline-flex;align-items:center;gap:10px}.skip-link{position:absolute;top:-60px;left:20px;background:var(--gold);color:var(--on-accent, #111613);padding:10px 18px;border-radius:8px;z-index:9999;font-weight:600;transition:top .2s ease}.skip-link:focus{top:15px}@keyframes fadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-12px) rotate(-10deg)}}@keyframes floatCaption{0%,to{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes badgePop{0%{transform:scale(.6)}65%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes orb{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.12) translateY(-18px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #cfa14b66}50%{box-shadow:0 0 0 8px #cfa14b00}}.announcement{text-align:center;background:linear-gradient(90deg,var(--surface) 0%,var(--surface) 35%,var(--surface) 70%,var(--surface) 100%);background-size:250% 100%;animation:none;color:var(--gold-bright);padding:10px 20px;font-size:11.5px;font-weight:600;letter-spacing:.9px;text-transform:uppercase;border-bottom:1px solid rgba(207,161,75,.2)}.header{background:var(--background);max-width:1280px;padding:22px 48px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;animation:slideDown .6s var(--ease-out) both;position:sticky;top:0;z-index:100}.brand{display:flex;align-items:center;gap:12px;font-family:DreamvilleDisplay,Georgia,serif;font-size:26px;font-weight:400;color:var(--text-primary);transition:transform .25s var(--ease-spring),opacity .2s}.brand:hover{transform:scale(1.02)}.dreamville-logo{display:inline-block;position:relative;width:160px;height:70px;flex-shrink:0;overflow:hidden;border-radius:10px;background:transparent;vertical-align:middle}.dreamville-logo img{position:absolute;width:130%;max-width:none;height:auto;left:50%;top:50%;transform:translate(-50%,-50%);mix-blend-mode:lighten}.dreamville-logo.compact{width:96px;height:42px}.brand small{display:block;font-family:DreamvilleSans,sans-serif;font-size:8px;letter-spacing:2px;margin-top:3px;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.brand-mark{position:relative;font-size:32px;line-height:1;background:linear-gradient(145deg,var(--active-surface),var(--active-surface));color:var(--gold-bright);width:44px;height:48px;border-radius:14px 14px 14px 4px;display:grid;place-items:center;box-shadow:0 6px 18px #00000040,inset 0 1px #a2b0a726;transition:transform .35s var(--ease-spring),box-shadow .3s}.brand:hover .brand-mark{transform:scale(1.08) rotate(-4deg);box-shadow:0 10px 28px #00000059,0 0 20px var(--gold-glow)}.brand-mark span{position:absolute;color:var(--gold-bright);font-size:15px;right:-5px;top:-5px;animation:badgePop .6s var(--ease-spring) .5s both}.header nav{display:flex;align-items:center;gap:6px;background:var(--glass);padding:4px;border-radius:30px;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header nav button{border:0;background:transparent;padding:9px 20px;color:var(--text-secondary);font-size:13.5px;font-weight:500;border-radius:25px;position:relative;transition:all .25s var(--ease-out)}.header nav button:hover{color:var(--gold-text, var(--gold));background:var(--active-surface)}.header nav .active{color:var(--gold-text, var(--gold));font-weight:600;background:var(--active-surface);box-shadow:none;transform:none}.header nav .active:hover{color:var(--gold-text, var(--gold));background:var(--active-surface);box-shadow:none;transform:none}.header-actions{display:flex;gap:10px;align-items:center}.header-contact{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.header-phone{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1.5px solid var(--border);border-radius:25px;background:var(--surface);color:var(--gold-text, var(--gold));font-size:12.5px;font-weight:600;white-space:nowrap}.header-phone:hover{border-color:var(--sage);background:var(--active-surface)}.account-button{display:flex;align-items:center;gap:7px;background:var(--glass);border:1.5px solid var(--border);font-size:12.5px;color:var(--text-secondary);padding:9px 15px;border-radius:25px;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .25s var(--ease-spring)}.account-button:hover{color:var(--gold-text, var(--gold));border-color:var(--sage);background:var(--surface);transform:translateY(-1.5px);box-shadow:var(--shadow-sm)}.account-button.location-header{background:linear-gradient(135deg,var(--active-surface),var(--surface-elevated));border-color:var(--border);color:var(--gold-text, var(--gold));font-weight:600}.account-button.location-header:hover{background:linear-gradient(135deg,var(--surface-elevated),var(--surface-elevated));border-color:var(--sage)}.cart-toggle{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--active-surface),var(--surface));color:var(--text-primary);border:1.5px solid rgba(162,176,167,.15);border-radius:30px;padding:10px 18px;box-shadow:0 6px 20px #00000038;transition:all .25s var(--ease-spring);position:relative;overflow:hidden}.cart-toggle:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(162,176,167,.2),transparent);transition:left .6s ease;display:none}.cart-toggle:hover:before{left:100%}.cart-toggle:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 28px #00000052}.cart-toggle:active{transform:scale(.97)}.cart-toggle span{font-size:12px;font-weight:700;background:var(--gold);color:var(--on-accent, #111613);border-radius:50%;width:22px;height:22px;display:grid;place-items:center;line-height:1;box-shadow:0 2px 6px #0000002e}.page{max-width:1280px;margin:auto;padding:0 48px 70px}.hero{display:grid;grid-template-columns:1.15fr 1fr;min-height:380px;background:linear-gradient(135deg,var(--active-surface),var(--surface-elevated),var(--background));border-radius:24px;overflow:hidden;position:relative;padding:56px 56px 44px;margin-bottom:50px;animation:fadeIn .7s var(--ease-out) both;box-shadow:var(--shadow-md);border:1px solid var(--border)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 50%,rgba(45,122,96,.12) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(207,161,75,.18) 0%,transparent 55%);pointer-events:none}.hero:after{content:"";position:absolute;right:12%;top:-30%;width:320px;height:320px;background:radial-gradient(circle,rgba(207,161,75,.22) 0%,transparent 70%);border-radius:50%;animation:none;pointer-events:none}.hero-copy{position:relative;z-index:2;animation:fadeUp .7s var(--ease-out) .1s both}.little-rule{width:28px;height:2.5px;background:linear-gradient(90deg,var(--gold),var(--gold-bright));border-radius:2px}.hero h1{font-size:54px;line-height:1.1;margin:20px 0 16px;color:var(--text-primary);letter-spacing:-1.8px;font-style:normal}.hero p{font-size:15px;line-height:1.8;color:var(--text-secondary);max-width:380px}.hero-link{display:inline-flex;align-items:center;gap:10px;margin-top:28px;font-size:13px;font-weight:700;color:var(--gold-text, var(--gold));background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);padding:12px 24px;border-radius:30px;transition:all .3s var(--ease-out);box-shadow:0 4px 16px #00000014}.hero-link:hover{background:var(--surface);transform:translateY(-2.5px);box-shadow:0 8px 26px #00000024;gap:14px;color:var(--sage)}.hero-details{display:flex;gap:12px;margin-top:28px;color:var(--text-secondary);font-size:11px;font-weight:600}.hero-details span{display:flex;gap:6px;align-items:center;background:var(--glass);padding:6px 14px;border-radius:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--glass)}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;animation:fadeIn .8s var(--ease-out) .3s both}.hero-art:before{content:"";position:absolute;width:330px;height:330px;background:radial-gradient(circle,var(--gold-glow),transparent 70%);border-radius:50%}.hero-plate{width:100%;max-width:440px;position:absolute;animation:none;filter:drop-shadow(0 22px 40px rgba(0,0,0,.2));right:-10px}.hero-caption{position:absolute;bottom:12px;right:40px;display:flex;align-items:center;gap:8px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:10px 20px;border-radius:30px;box-shadow:var(--shadow-md);border:1px solid var(--glass);animation:none;font-size:11.5px;color:var(--text-secondary);font-weight:600}.hero-caption svg{color:var(--sage)}.menu-section{min-width:0}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start;animation:fadeUp .6s var(--ease-out) .2s both}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.section-heading h2{font-size:34px;margin-top:6px;letter-spacing:-.8px;background:none;-webkit-background-clip:text;-webkit-text-fill-color:var(--text-primary);background-clip:text;color:var(--text-primary)}.menu-count{font-size:12px;color:var(--gold-text, var(--gold));background:var(--active-surface);padding:6px 16px;border-radius:20px;font-weight:600;border:1px solid var(--border)}.search{display:flex;align-items:center;gap:12px;background:var(--surface);border:1.5px solid var(--border);padding:0 18px;border-radius:18px;color:var(--text-secondary);transition:all .25s var(--ease-out);box-shadow:var(--shadow-sm);margin-bottom:16px}.search:focus-within{border-color:var(--gold-text, var(--gold));box-shadow:0 0 0 3.5px var(--gold-glow),var(--shadow-sm);color:var(--text-secondary)}.search input{flex:1;min-width:0;border:0;background:transparent;outline:none;box-shadow:none;font-size:14px;padding:16px 0;color:var(--text-primary)}.search input:focus{border:0;box-shadow:none}.categories{display:flex;gap:10px;padding:10px 0 26px;overflow-x:auto}.categories button{border:1.5px solid var(--border);background:transparent;border-radius:30px;padding:10px 20px;white-space:nowrap;font-size:12.5px;font-weight:600;color:var(--text-secondary);transition:all .25s var(--ease-spring);box-shadow:none;min-height:46px}.categories button:hover{border-color:var(--sage);color:var(--gold-text, var(--gold));transform:translateY(-2px);box-shadow:var(--shadow-md)}.categories .selected{background:var(--active-surface);color:var(--gold-text, var(--gold));border-color:var(--gold-text, var(--gold));transform:none;box-shadow:none}.categories .selected:hover{color:var(--gold-text, var(--gold));background:var(--active-surface);box-shadow:none;transform:none}.product-grid,.menu-skeleton{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-card{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface);transition:all .35s var(--ease-out);box-shadow:var(--shadow-sm);position:relative;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--border)}.product-image-button{position:relative;display:block;width:calc(100% - 24px);border:1px solid var(--border);padding:0;background:var(--surface-elevated);text-align:left;overflow:hidden;aspect-ratio:16 / 10;border-radius:12px;margin:12px 12px 0}.food-photo,.food-placeholder{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s var(--ease-out);background:var(--active-surface);color:var(--gold-text, var(--gold))}.product-card:hover .food-photo,.product-card:hover .food-placeholder{transform:scale(1.07)}.food-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--surface-elevated) 0%,var(--surface-elevated) 100%);color:var(--text-secondary);gap:10px}.food-placeholder svg{width:38px;height:38px;stroke-width:1.3;opacity:.6}.food-placeholder span{font-family:DreamvilleDisplay,serif;font-size:14px;color:var(--text-secondary);opacity:.85;font-style:italic}.category-tag{position:absolute;left:14px;top:14px;font-size:10px;border-radius:10px;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:5px 12px;color:var(--gold-text, var(--gold));font-weight:700;border:1px solid var(--border);box-shadow:0 4px 12px #0000001a;text-transform:uppercase;letter-spacing:.5px}.product-info{padding:20px 22px;display:flex;flex-direction:column;flex-grow:1}.product-info h3{font-size:22px;line-height:1.15;color:var(--text-primary);font-weight:400;font-family:var(--font-display)}.product-info p{font-size:12.5px;color:var(--text-secondary);margin-top:6px;line-height:1.6;flex-grow:1;min-height:38px}.product-price{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.product-price b{font-size:17px;color:var(--gold-text, var(--gold));font-weight:700}.product-price small{display:block;font-size:10px;color:var(--text-secondary);margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.add-button{display:grid;place-items:center;background:var(--active-surface);border:1.5px solid var(--border);border-radius:14px;width:44px;height:44px;color:var(--gold-text, var(--gold));transition:all .3s var(--ease-spring);box-shadow:0 2px 8px #0000000f}.add-button:hover{background:var(--active-surface);color:var(--gold-text, var(--gold));border-color:var(--gold-text, var(--gold));transform:scale(1.04);box-shadow:0 8px 24px #0000004d}.add-button:active{transform:scale(.94)}.basket{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px 24px;box-shadow:var(--shadow-md);position:relative}.desktop-basket{position:sticky;top:24px}.basket-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border)}.basket-heading h2{font-size:22px;color:var(--text-primary)}.basket-heading h2 span{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 7px;margin-left:8px;border-radius:50%;background:var(--active-surface);font-family:DreamvilleSans,sans-serif;font-size:12px;vertical-align:middle}.modal-basket{border:none;box-shadow:none;padding:0;background:transparent;border-radius:0}.menu-skeleton>div{min-height:280px;border-radius:22px;background:linear-gradient(110deg,var(--surface-elevated),var(--surface),var(--surface-elevated));background-size:200% 100%;animation:gradientShift 2s ease infinite}.empty-basket{text-align:center;padding:40px 10px;color:var(--text-secondary)}.empty-basket svg{margin:0 auto 16px;color:var(--gold-text, var(--gold));opacity:.85}.empty-basket p{font-size:13.5px;line-height:1.6}.basket-lines{display:flex;flex-direction:column;gap:16px;max-height:380px;overflow-y:auto;padding-right:4px}.basket-line{padding-bottom:14px;border-bottom:1px dashed var(--border);animation:fadeIn .3s ease}.basket-line:last-child{border-bottom:none}.line-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.line-title{text-align:left;font-weight:600;font-size:14px;color:var(--text-primary);transition:color .2s}.line-title:hover:not(:disabled){color:var(--sage);text-decoration:underline}.line-note{display:block;color:var(--gold-text, var(--gold));font-style:italic;font-size:11px;margin-top:2px}.line-controls{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.quantity{display:inline-flex;align-items:center;background:var(--background);border:1px solid var(--border);border-radius:20px;padding:3px 6px;gap:8px}.quantity button{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text-secondary);transition:all .2s var(--ease-spring);box-shadow:none}.quantity button:hover:not(:disabled){background:var(--active-surface);color:var(--gold-text, var(--gold));transform:scale(1.1)}.quantity span{font-size:13px;font-weight:700;min-width:16px;text-align:center}.totals{margin-top:20px;padding-top:16px;border-top:1.5px solid var(--border);display:flex;flex-direction:column;gap:8px;font-size:13.5px}.totals span{display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary)}.totals .grand-total{font-size:17px;font-weight:700;color:var(--gold-text, var(--gold));padding-top:10px;margin-top:4px;border-top:1px solid var(--border)}.totals .grand-total b{color:var(--gold-text, var(--gold));font-size:20px}.basket-footnote{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;font-size:11.5px;color:var(--text-secondary)}.basket-footnote svg{color:var(--sage)}.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:var(--spice);color:var(--on-accent, #111613);font-weight:700;font-size:15px;border-radius:30px;border:1px solid transparent;box-shadow:var(--shadow-sm);transition:all .3s var(--ease-spring);position:relative;overflow:hidden;min-height:54px}.primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(162,176,167,.22),transparent);transition:left .7s ease;display:none}.primary:hover:not(:disabled):before{left:100%}.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--spice-hover)}.primary:active:not(:disabled){transform:scale(.98)}.primary.checkout-button{margin-top:18px;font-size:15.5px}.primary.checkout-button svg{transition:transform .25s var(--ease-out)}.primary.checkout-button:hover:not(:disabled) svg{transform:translate(4px)}.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:var(--surface);border:1.5px solid var(--border);color:var(--text-secondary);font-weight:600;font-size:13.5px;border-radius:25px;transition:all .25s var(--ease-out)}.secondary:hover:not(:disabled){border-color:var(--gold-text, var(--gold));color:var(--gold-text, var(--gold));background:var(--active-surface);transform:translateY(-1.5px)}.icon-button{display:grid;place-items:center;border-radius:50%;width:44px;height:44px;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);transition:all .2s var(--ease-spring)}.icon-button:hover:not(:disabled){background:var(--active-surface);color:var(--gold-text, var(--gold));transform:scale(1.08);border-color:var(--sage)}.icon-button.small{width:44px;height:44px;border:none;background:transparent;color:var(--text-secondary)}.icon-button.small:hover:not(:disabled){background:var(--spice-surface);color:var(--spice)}.mobile-basket-bar{position:fixed;bottom:24px;left:20px;right:20px;max-width:500px;margin:0 auto;z-index:99;background:linear-gradient(135deg,var(--active-surface),var(--surface));color:var(--text-primary);padding:14px 24px;border-radius:35px;display:none;align-items:center;justify-content:space-between;box-shadow:0 12px 36px #00000061,0 0 0 1px #a2b0a726;animation:slideDown .4s var(--ease-spring) both;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .25s var(--ease-spring),box-shadow .25s}.mobile-basket-bar:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 16px 44px #00000073}.mobile-basket-bar:active{transform:scale(.98)}.mobile-basket-bar span{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600}.mobile-basket-bar b{font-size:14.5px;color:var(--gold-bright)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:1000;display:grid;place-items:center;padding:24px;overflow-y:auto;animation:fadeIn .25s ease both}.modal{background:var(--glass);border-radius:24px;padding:32px;width:100%;max-width:560px;position:relative;box-shadow:var(--shadow-xl);border:1px solid var(--border);animation:fadeUp .3s var(--ease-out) both;max-height:90vh;overflow-y:auto;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.modal.checkout-page{max-width:none;max-height:none;overflow:visible;padding:32px;margin:24px 0 0;animation:none;box-shadow:var(--shadow-sm);background:var(--background);-webkit-backdrop-filter:none;backdrop-filter:none}.modal.basket-dialog{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate}.checkout-page h1{font-size:30px;color:var(--text-primary);line-height:1.2}.signup-dialog .modal{max-width:680px}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border);gap:16px}.modal-brand-title{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap}.modal-brand-title h2{font-size:24px;color:var(--text-primary);overflow-wrap:anywhere}.editor-image{border-radius:20px;overflow:hidden;margin-bottom:20px;height:180px;flex-shrink:0;background:var(--surface-elevated)}.editor-image img{width:100%;height:100%;object-fit:cover}.form-stack{display:flex;flex-direction:column;gap:20px}.form-stack fieldset{border:1.5px solid var(--border);border-radius:20px;padding:16px 20px 20px;display:flex;flex-direction:column;gap:10px}.form-stack legend{font-size:13px;font-weight:700;color:var(--gold-text, var(--gold));padding:0 10px;text-transform:uppercase;letter-spacing:.8px}.form-stack .option-choice{display:flex;flex-direction:row;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface-elevated);cursor:pointer;transition:all .2s var(--ease-out)}.option-choice:hover{border-color:var(--sage);background:var(--active-surface)}.option-choice input[type=radio]{width:18px;height:18px;accent-color:var(--gold-text, var(--gold))}.option-choice span{flex-grow:1;font-size:14px;font-weight:500}.option-choice small{font-weight:700;color:var(--gold-text, var(--gold));font-size:12.5px}.editor-bottom{display:flex;align-items:center;gap:16px;margin-top:10px}.editor-bottom .primary{flex-grow:1}.location-dialog .modal{max-width:520px}.location-brand{margin-bottom:18px;color:var(--gold-text, var(--gold));font-size:13px;letter-spacing:.5px}.location-form{display:flex;flex-direction:column;gap:16px}.location-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);padding:4px;border-radius:25px;gap:0;position:relative;isolation:isolate;border:1px solid var(--border)}.location-tabs button{padding:12px;border-radius:22px;font-weight:600;font-size:14px;color:var(--text-secondary);transition:all .25s var(--ease-out);position:relative;z-index:1;min-height:44px}.location-tabs button[aria-pressed=true]{background:transparent;color:var(--gold-text, var(--gold));box-shadow:none}.location-hint{font-size:13px;color:var(--text-secondary)}.locate-button{display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,var(--active-surface),var(--surface-elevated));border:1.5px solid var(--border);border-radius:18px;padding:14px;color:var(--gold-text, var(--gold));font-weight:700;font-size:14px;transition:all .25s var(--ease-spring)}.locate-button:hover:not(:disabled){background:var(--active-surface);color:var(--gold-text, var(--gold));transform:translateY(-2px);box-shadow:var(--shadow-sm)}.location-success{color:var(--sage);font-size:13px;font-weight:600}.location-success a{color:var(--gold-text, var(--gold));text-decoration:underline}.location-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);margin-top:4px}.location-city{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--background);border:1.5px solid var(--border);border-radius:18px;color:var(--gold-text, var(--gold))}.location-city strong{font-size:16px}.location-branch{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--background);border:1.5px solid var(--border);border-radius:18px;margin-top:6px}.location-branch-tag{margin-left:auto;font-size:11px;background:var(--active-surface);color:var(--gold-text, var(--gold));padding:4px 10px;border-radius:12px;font-weight:600}.location-select{background:var(--spice);color:var(--on-accent, #111613);padding:14px;border-radius:25px;font-weight:700;font-size:15px;box-shadow:var(--shadow-sm);transition:all .25s var(--ease-spring);border:1px solid transparent;min-height:54px}.location-select:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--spice-hover)}.location-browse{color:var(--text-secondary);font-size:13px;font-weight:600;padding:6px;transition:color .2s}.location-browse:hover{color:var(--gold-text, var(--gold))}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:start}.checkout-details,.checkout-summary{min-width:0}.checkout-details .customer-fields{margin-top:8px}.checkout-details fieldset>small{color:var(--text-secondary)}.checkout-order-banner{margin-bottom:24px}.checkout-order-banner strong{display:inline-block;background:var(--gold);color:var(--on-accent, #111613);border-radius:7px;padding:3px 8px;margin-left:4px}.checkout-order-banner small{display:block;margin-top:5px;font-weight:400}.checkout-details fieldset{border:none;padding:0;display:flex;flex-direction:column;gap:16px}.checkout-order-banner{display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--active-surface);border:1px solid var(--border);border-radius:18px;color:var(--gold-text, var(--gold));font-weight:600;font-size:13.5px}.fulfilment{display:grid;grid-template-columns:repeat(3,1fr);background:var(--background);padding:4px;border-radius:24px;gap:6px;border:1px solid var(--border)}.form-stack .fulfilment label{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;padding:10px 6px;border-radius:20px;font-size:13px;font-weight:600;color:var(--text-secondary);transition:all .2s var(--ease-out);cursor:pointer;min-height:44px}.form-stack .fulfilment label.selected{background:var(--gold);color:var(--on-accent, #111613);box-shadow:0 4px 12px #0003}.fulfilment input[type=radio]{width:15px;height:15px;margin:0;padding:0;accent-color:var(--sage);flex-shrink:0}.fulfilment .selected input{accent-color:var(--gold-bright)}.fulfilment label:has(input:disabled){opacity:.5;cursor:not-allowed}.customer-fields{display:flex;flex-direction:column;gap:14px}.customer-name-row{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px}.checkout-payment{background:var(--background);border:1.5px solid var(--border);border-radius:20px;padding:18px 20px;margin-top:16px}.checkout-payment h3{font-size:15px;color:var(--gold-text, var(--gold));margin-bottom:6px}.checkout-payment p{font-size:14px;font-weight:600;color:var(--text-primary)}.checkout-summary{background:var(--surface-elevated);border:1.5px solid var(--border);border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:20px;position:sticky;top:24px}.checkout-summary .primary{width:100%}.checkout-summary .totals{margin:0}.checkout-items{display:flex;flex-direction:column;gap:14px;max-height:280px;overflow-y:auto;margin-bottom:16px}.checkout-item{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px dashed var(--border)}.checkout-item img,.checkout-item-placeholder{width:52px;height:52px;border-radius:12px;object-fit:cover;flex-shrink:0}.checkout-item-placeholder{display:grid;place-items:center;background:var(--surface-elevated);color:var(--text-secondary)}.checkout-item div{flex-grow:1;min-width:0;overflow-wrap:anywhere}.checkout-item strong{display:block;font-size:13.5px}.checkout-item small{display:block;color:var(--text-secondary)}.checkout-item b{font-size:13px;color:var(--gold-text, var(--gold))}.checkout-continue{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;color:var(--text-secondary);font-size:13px;font-weight:600;transition:color .2s}.modal-heading>.checkout-continue{margin:0;white-space:nowrap}.checkout-continue:hover{color:var(--gold-text, var(--gold))}.orders-section{max-width:860px;margin:0 auto}.orders-section h1{font-size:40px;color:var(--gold-text, var(--gold));margin:8px 0 6px}.empty-state{text-align:center;padding:60px 20px;background:var(--surface);border-radius:28px;border:1.5px solid var(--border);margin-top:30px}.empty-state svg{width:54px;height:54px;color:var(--gold-text, var(--gold));margin-bottom:18px}.empty-state h3{font-size:20px;color:var(--gold-text, var(--gold));margin-bottom:8px}.empty-state p{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.empty-state .primary{max-width:220px;margin:0 auto}.order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:32px}.order-card{text-align:left;background:var(--surface);border:1.5px solid var(--border);border-radius:22px;padding:22px;transition:all .3s var(--ease-spring);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px}.order-card:hover{transform:translateY(-4px);border-color:var(--sage);box-shadow:var(--shadow-md)}.order-card>div:first-child{display:flex;align-items:center;justify-content:space-between}.order-card h3{font-size:18px;color:var(--gold-text, var(--gold))}.order-card p{font-size:12.5px;color:var(--text-secondary)}.order-card>div:last-child{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}.order-card b{font-size:16px;color:var(--gold-text, var(--gold))}.status-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:5px 12px;border-radius:20px;background:var(--active-surface);color:var(--gold-text, var(--gold))}.status-badge.confirmed,.status-badge.paid{background:var(--active-surface);color:var(--success)}.status-badge.preparing{background:var(--gold-pale);color:var(--warning)}.status-badge.dispatched,.status-badge.ready{background:var(--active-surface);color:var(--info)}.status-badge.cancelled,.status-badge.voided{background:var(--spice-surface);color:var(--spice)}.order-progress{display:flex;justify-content:space-between;list-style:none;padding:0;margin:28px 0;position:relative}.order-progress:before{content:"";position:absolute;top:15px;left:20px;right:20px;height:2.5px;background:var(--border);z-index:1}.order-progress li{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:var(--text-secondary);text-align:center;max-width:80px}.order-progress li span{width:32px;height:32px;border-radius:50%;background:var(--surface);border:2.5px solid var(--border);display:grid;place-items:center;color:var(--text-secondary);font-weight:700;transition:all .3s var(--ease-spring)}.order-progress li.done{color:var(--gold-text, var(--gold))}.order-progress li.done span{background:var(--gold);border-color:var(--gold-text, var(--gold));color:var(--on-accent, #111613);box-shadow:0 4px 12px #00000040}.order-items{display:flex;flex-direction:column;gap:12px;margin:20px 0;padding:16px;background:var(--background);border-radius:18px}.order-items>div{display:flex;justify-content:space-between;align-items:flex-start;font-size:13.5px}.order-items small{display:block;color:var(--text-secondary)}.payment-note{font-size:12px;color:var(--text-secondary);text-align:center;margin-top:16px}.notice{background:linear-gradient(135deg,var(--surface-elevated) 0%,var(--surface-elevated) 100%);border:1.5px solid var(--border);border-radius:18px;padding:14px 20px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;color:var(--gold-text, var(--gold));font-weight:600;font-size:13.5px;box-shadow:var(--shadow-sm);animation:slideDown .3s ease}.error{color:var(--error);font-size:12.5px}.error.banner{background:var(--spice-surface);border:1.5px solid var(--border);border-radius:18px;padding:14px 20px;margin-bottom:24px;color:var(--error);font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:12px}.error.banner button{background:var(--error);color:var(--on-accent, #111613);padding:6px 14px;border-radius:12px;font-size:12px;font-weight:600}.auth-links{display:flex;justify-content:space-between;margin-top:16px}.auth-links button{font-size:12.5px;color:var(--sage);font-weight:600;text-decoration:underline}.site-footer{background:linear-gradient(180deg,var(--surface) 0%,var(--surface) 100%);color:var(--text-primary);padding:70px 48px 30px;margin-top:80px;border-top:1px solid rgba(207,161,75,.25)}.footer-content{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.footer-about p{margin-top:16px;color:var(--text-secondary);font-size:13.5px;line-height:1.8;max-width:360px}.footer-contact h2,.footer-social h2{font-size:18px;color:var(--gold-bright);font-family:DreamvilleDisplay,Georgia,serif;margin-bottom:18px}.footer-contact address{font-style:normal;display:flex;gap:10px;color:var(--text-secondary);font-size:13px;line-height:1.7;margin-bottom:14px}.footer-map,.footer-contact a,.footer-social a{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:13px;transition:all .2s ease;margin-bottom:10px;width:fit-content}.footer-map:hover,.footer-contact a:hover,.footer-social a:hover{color:var(--gold-bright);transform:translate(3px)}.footer-payment{color:var(--gold-text, var(--gold));font-size:12px;margin-top:14px;letter-spacing:.5px;font-weight:500}.footer-bottom{max-width:1280px;margin:50px auto 0;padding-top:24px;border-top:1px solid rgba(162,176,167,.08);display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary)}@media(max-width:1024px){.header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:20px 28px}.header>.brand{grid-column:1;grid-row:1;justify-self:start}.header-actions{display:contents}.header-actions>.cart-toggle{grid-column:3;grid-row:1}.header-actions>.header-contact{grid-column:1 / -1;grid-row:2;justify-content:center}.header nav{grid-column:1 / -1;grid-row:3;display:flex}.header nav button{flex:1}.mobile-basket-bar{display:flex}.hero{grid-template-columns:1fr;padding:40px 36px;gap:30px}.hero-art{display:none}.shop-layout{grid-template-columns:1fr}.desktop-basket{display:none}.footer-content{grid-template-columns:1fr 1fr;gap:36px}}@media(max-width:768px){.header{padding:16px 20px}.header nav{display:flex}.page{padding:0 20px 80px}.hero{padding:30px 24px;border-radius:24px}.hero h1{font-size:38px}.product-grid{grid-template-columns:1fr;gap:16px}.footer-content{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px;text-align:center}.modal,.modal.checkout-page{padding:24px 20px}.checkout-layout{grid-template-columns:1fr;gap:24px}.checkout-summary{position:static;padding:20px}.modal{max-height:calc(100dvh - 32px)}.modal-backdrop{padding:16px}.site-footer{padding:40px 24px 100px;margin-top:36px}}@media(max-width:480px){.header{padding:14px 16px;gap:8px}.header .dreamville-logo{width:112px;height:49px}.header .account-button{font-size:12px;padding:10px 12px}.header-contact .location-header,.header-phone{font-size:12px;padding:8px 10px}.header .cart-toggle{padding:10px 12px;gap:6px}.page{padding:0 16px 32px}.form-pair{grid-template-columns:1fr;gap:14px}.form-stack fieldset{padding:14px;margin:0;min-width:0}.checkout-details fieldset{padding:0}.modal.checkout-page{padding:20px 16px;border-radius:20px}.checkout-page .modal-heading{flex-wrap:wrap}.checkout-page h1{font-size:26px}.modal-brand-title h2{font-size:20px}.customer-name-row{grid-template-columns:110px minmax(0,1fr)}.required-tag{font-size:9px}.checkout-item{gap:10px}.checkout-order-banner{padding:14px}.checkout-continue{white-space:normal}.mobile-basket-bar{left:12px;right:12px;bottom:12px;padding:14px 16px;gap:10px}.mobile-basket-bar b,.mobile-basket-bar span{font-size:12px}.auth-links{gap:14px;flex-wrap:wrap}.location-branch{padding:14px;flex-wrap:wrap;gap:8px}.location-branch-tag{margin-left:27px}}:is(.primary,.secondary,.account-button,.cart-toggle,.add-button,.icon-button,.location-select,.locate-button,.location-browse,.checkout-continue,.categories button,.location-tabs button,.header nav button,.quantity button,.auth-links button,.error.banner button,.product-image-button,.order-card,.mobile-basket-bar,.header-phone){transition:transform .18s var(--ease-out),box-shadow .22s var(--ease-out),background-color .18s ease,border-color .18s ease,color .18s ease;transform-origin:center;touch-action:manipulation}.add-button svg,.cart-toggle>svg,.location-select svg,.locate-button svg,.primary>svg,.header-phone>svg{transition:transform .18s var(--ease-out)}@media(hover:hover)and (pointer:fine){:is(.primary,.secondary,.account-button,.cart-toggle,.add-button,.icon-button,.location-select,.locate-button,.categories button,.location-tabs button,.header nav button,.quantity button,.order-card,.mobile-basket-bar):hover:not(:disabled){transform:translateY(-2px)}:is(.primary,.cart-toggle,.location-select):hover:not(:disabled){box-shadow:0 8px 22px #0000003d}.add-button:hover:not(:disabled) svg{transform:scale(1.12)}.header-phone:hover{transform:translateY(-1px)}}@media(hover:none){:is(.primary,.secondary,.account-button,.cart-toggle,.add-button,.icon-button,.location-select,.locate-button,.categories button,.location-tabs button,.header nav button,.quantity button,.order-card,.mobile-basket-bar):hover:not(:disabled){transform:none}.primary:hover:before,.cart-toggle:hover:before{left:-100%}}:is(.primary,.secondary,.account-button,.cart-toggle,.add-button,.icon-button,.location-select,.locate-button,.location-browse,.checkout-continue,.categories button,.location-tabs button,.header nav button,.quantity button,.auth-links button,.error.banner button,.order-card,.mobile-basket-bar):active:not(:disabled){transform:translateY(0) scale(.97);transition-duration:80ms}.product-image-button:active:not(:disabled){transform:scale(.99)}.header-phone:active{transform:scale(.97);transition-duration:80ms}button:disabled{transform:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button,.header-phone{transform:none!important}}.featured-deal{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);margin:30px 0 44px;background:var(--surface-elevated);border-radius:16px;overflow:hidden;color:var(--text-primary);border:1px solid var(--border)}.featured-deal-image{min-height:320px;position:relative;background:var(--active-surface)}.featured-deal-image>img,.featured-deal-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.featured-deal-placeholder{display:grid;place-items:center;color:var(--text-secondary)}.featured-deal-copy{padding:clamp(26px,4vw,55px);align-self:center;overflow-wrap:anywhere}.featured-deal-copy .eyebrow{color:var(--gold-text, var(--gold));letter-spacing:.18em}.featured-deal-copy h1{font-family:var(--font-display);font-size:clamp(32px,3.7vw,54px);font-weight:400;line-height:1.08;letter-spacing:-.03em;margin:16px 0;color:var(--text-primary)}.featured-deal-copy p{line-height:1.6;color:var(--text-secondary)}.featured-deal-copy>button{display:flex;align-items:center;justify-content:space-between;gap:22px;width:100%;background:transparent;color:var(--text-primary);border:0;border-top:1px solid var(--border);padding:18px 0 0;margin-top:28px;text-align:left;font:inherit;cursor:pointer}.featured-deal-copy>button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}@media(max-width:650px){.featured-deal{grid-template-columns:minmax(0,1fr);margin-top:18px}.featured-deal-image{min-height:0;aspect-ratio:2.05}}.category-track{position:relative;isolation:isolate;display:flex;width:max-content;gap:6px}.category-indicator{position:absolute;z-index:-1;inset-block:0;left:0;opacity:0;background:var(--active-surface);border:1px solid var(--gold);border-radius:24px;pointer-events:none;transition:transform .3s var(--ease-out),width .3s var(--ease-out)}.category-track button,.category-track button.selected,.category-track button.selected:hover{background:transparent;border-color:transparent;box-shadow:none;transform:none}.category-track button:hover:not(:disabled){transform:none}.location-tabs:before{content:"";position:absolute;z-index:0;inset-block:4px;left:4px;width:calc(50% - 4px);background:var(--active-surface);border:1px solid var(--border);border-radius:24px;transition:transform .32s var(--ease-out)}.location-tabs:has(button:last-child[aria-pressed=true]):before{transform:translate(100%)}.header nav button,.account-button,.header-phone,.cart-toggle,.location-browse,.auth-links button,.checkout-continue{min-height:44px}.totals b,.checkout-item b{color:var(--gold-text, var(--gold))}.status-badge.cancelled,.status-badge.voided{color:var(--error)}.editor-image{border:1px solid var(--border);border-radius:12px}@media(max-width:650px){.modal-backdrop{align-items:end;padding:24px 0 0}.modal-backdrop .modal{max-height:calc(100dvh - 24px);border-radius:24px 24px 0 0;padding-bottom:max(24px,env(safe-area-inset-bottom))}.editor-bottom{align-items:start;flex-direction:column;gap:16px}.editor-bottom .primary{width:100%}}.bank-transfer-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;margin-top:16px;display:grid;gap:12px}.bank-detail{display:flex;gap:12px;align-items:center;justify-content:space-between}.bank-detail div{min-width:0}.bank-detail strong{display:block;color:var(--gold-text, var(--gold));overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.bank-detail small{color:var(--text-secondary)}.checkout-payment label{display:grid;gap:8px;margin-top:12px}.oauth-section{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.btn-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 20px;background:var(--surface-elevated, #1c221e);color:var(--text-primary, #f4f7f4);border:1.5px solid var(--border, rgba(255, 255, 255, .12));border-radius:14px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .12s ease}.btn-google:hover:not(:disabled){background:var(--surface-hover, #232b26);border-color:var(--border-hover, rgba(255, 255, 255, .24));transform:translateY(-1px)}.btn-google:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-google:disabled{opacity:.6;cursor:not-allowed}.google-icon{flex-shrink:0}.auth-divider{display:flex;align-items:center;text-align:center;color:var(--text-secondary, #9ba39e);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.6px}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.auth-divider span{padding:0 12px}:root{--gold: #C5A880}:root[data-theme=light]{color-scheme:light;--bg: #FAF7F2;--background: #FAF7F2;--surface: #FFFFFF;--surface-elevated: #F4EFEB;--active-surface: #EDE5DC;--text-primary: #181512;--text-secondary: #4A443D;--icon-muted: #5C554D;--border: #DFD7CC;--gold: #C5A880;--gold-bright: #7A571B;--gold-glow: rgba(122,87,27,.15);--gold-pale: #F5EBDC;--spice-surface: #FAE8DF;--glass: #ffffffed;--success: #286B43;--warning: #79521E;--error: #AF3025;--info: #28637F}.checkout-payment select,.form-stack select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23C5A880' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px;padding-right:44px}.mobile-basket-bar{background:linear-gradient(135deg,#2a2118,#1a140f);border:1.5px solid rgba(229,178,93,.45);box-shadow:0 10px 30px #0009,0 0 15px #e5b25d26;color:#f8f5f0}.mobile-basket-bar b{color:#e5b25d}.theme-toggle{display:inline-flex;align-items:center;gap:8px}.theme-toggle span,.mobile-nav-toggle{display:none}.mobile-navigation{position:relative;width:min(360px,100%);padding:20px;display:grid;gap:16px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:0 14px 40px #0004}.modal-backdrop:has(.mobile-navigation){z-index:2100;align-items:start;justify-items:end}.mobile-navigation .modal-scroll-area>button{min-height:44px;text-align:left}.mobile-navigation .theme-toggle span{display:inline}@media(max-width:760px){.mobile-nav-toggle{display:inline-flex}}:root{--on-accent:#111613;--gold-text:#C5A880}:root[data-theme=light]{--gold-text:#7A571B;--shadow-sm:0 2px 8px rgba(24,21,18,.06);--shadow-md:0 6px 18px rgba(24,21,18,.08);--shadow-lg:0 12px 32px rgba(24,21,18,.12)}:root[data-theme=light] .dreamville-logo img{mix-blend-mode:normal}@media(max-width:1024px){.header{grid-template-columns:minmax(0,1fr) repeat(4,auto);gap:8px}.header-actions>.theme-toggle{grid-column:2;grid-row:1}.header-actions>.mobile-nav-toggle{grid-column:3;grid-row:1}.header-actions>.account-button:not(.theme-toggle):not(.mobile-nav-toggle){grid-column:4;grid-row:1}.header-actions>.cart-toggle{grid-column:5;grid-row:1}}@media(max-width:760px){.header nav{display:none}}@media(max-width:480px){.header{grid-template-columns:minmax(0,1fr) repeat(3,auto)}.header-actions>.account-button:not(.theme-toggle):not(.mobile-nav-toggle){display:none}.header-actions>.cart-toggle{grid-column:4}.header .theme-toggle,.header .mobile-nav-toggle{padding:10px;min-width:38px}.header .cart-toggle{padding:10px 8px}.mobile-navigation{max-width:calc(100vw - 24px)}}.custom-select-container{position:relative;min-width:0;width:100%}.custom-select-container .custom-select-validation{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;clip-path:inset(50%);overflow:hidden;white-space:nowrap;pointer-events:none}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:50px;padding:14px 20px 14px 18px;border:1.5px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text-primary);font-size:14px;font-weight:500;box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;transition:border-color .25s var(--ease-out),background .25s var(--ease-out),box-shadow .25s var(--ease-out)}.custom-select-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-placeholder{color:var(--text-secondary)}.custom-select-chevron{color:var(--gold-text,var(--gold));margin-left:12px;flex-shrink:0;transition:transform .25s var(--ease-out)}.custom-select-chevron.rotated{transform:rotate(180deg)}.custom-select-trigger:hover:not(:disabled){border-color:var(--gold-text,var(--gold));background:var(--active-surface)}.custom-select-trigger:focus-visible,.custom-select-container.is-open .custom-select-trigger{border-color:var(--gold-text,var(--gold));outline:none;box-shadow:0 0 0 3.5px var(--gold-glow);border-radius:16px}.custom-select-trigger:disabled{opacity:.6;cursor:not-allowed}.custom-select-menu{z-index:2000;overflow-y:auto;overscroll-behavior:contain;padding:8px;border:1.5px solid var(--gold-glow);border-radius:16px;background:var(--surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-lg),0 0 20px var(--gold-glow);font-size:14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.custom-select-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;min-height:44px;border-radius:10px;cursor:pointer;font-weight:500;transition:background .15s ease,color .15s ease}.custom-select-item:hover,.custom-select-item.is-active{background:var(--active-surface);outline:1px solid var(--gold-text,var(--gold));outline-offset:-1px}.custom-select-item.selected{background:var(--active-surface);color:var(--gold-text,var(--gold));font-weight:600}.custom-select-item>svg{color:var(--gold-text,var(--gold));flex-shrink:0}.customer-name-row .custom-select-trigger{padding:12px 14px 12px 12px;gap:6px}.customer-name-row .custom-select-chevron{margin-left:6px}:root[data-theme=light] small,:root[data-theme=light] .field-hint,:root[data-theme=light] .checkout-order-banner small{color:var(--text-secondary)}.modal-backdrop>.modal{display:flex;flex-direction:column;padding:10px;overflow:hidden;max-height:min(90vh,calc(100dvh - 48px))}.modal-scroll-area{min-height:0;overflow:auto;overscroll-behavior:contain;padding:22px;border-radius:14px;scrollbar-gutter:stable}.mobile-navigation .modal-scroll-area{display:grid;gap:16px}@media(max-width:650px){.modal-backdrop>.modal{max-height:calc(100dvh - 24px)}.modal-scroll-area{padding:14px}}
