:root{--color-primary: #1B4332;--color-primary-dark:#0d2b1e;--color-accent: #D4A853;--color-accent-dark: #b8892a;--color-bg: #FAFAF7;--color-surface: #FFFFFF;--color-brown: #8B5E3C;--color-beige: #C8B89A;--color-beige-light: #E8E0D0;--color-sage: #5a7a5a;--color-text: #1A1A1A;--color-text-muted: #4A5568;--color-muted: var(--color-text-muted);--color-placeholder: #9b9b9b;--color-success: #2d7a2d;--color-error: #c0392b;--color-warning: #d4860b;--color-info: #2563eb;--font-display: "Playfair Display", Georgia, serif;--font-heading: var(--font-display);--font-body: "Inter", system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.6;--leading-relaxed: 1.75;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .05em;--tracking-wider: .1em;--tracking-widest: .18em;--border: var(--color-beige);--border-light: var(--color-beige-light);--border-dark: var(--color-beige);--radius-xs: 4px;--radius-sm: 8px;--radius: 12px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 50px;--shadow-sm: 0 1px 4px rgba(0,0,0,.06);--shadow: 0 4px 16px rgba(0,0,0,.08);--shadow-md: 0 6px 20px rgba(0,0,0,.1);--shadow-lg: 0 12px 36px rgba(0,0,0,.12);--shadow-hover: 0 8px 28px rgba(27,67,50,.15);--shadow-card: var(--shadow);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--transition-fast: all .15s ease;--transition-base: all .2s ease;--transition-slow: all .3s ease;--transition-slower: all .5s ease;--z-behind: -1;--z-base: 0;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 500;--z-modal: 1000;--z-toast: 2000;--border-radius-btn: var(--radius-sm);--text: var(--color-text);--muted: var(--color-text-muted);--cream: var(--color-bg);--beige: var(--color-beige);--green-dark: var(--color-primary);--bg-section-a: #ffffff;--bg-section-b: var(--color-bg)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);line-height:var(--leading-tight)}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer;border:none;background:transparent;transition:var(--transition-base)}img{max-width:100%;display:block}input,select,textarea{font-family:var(--font-body);font-size:var(--text-base)}ul,ol{list-style:none}.page-wrap{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.container{width:min(1200px,92vw);margin-inline:auto}.container-wide{width:min(1440px,96vw);margin-inline:auto}.grain{position:relative}.grain:after{content:"";pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E")}.fade-in-up{opacity:0;transform:translateY(28px);transition:opacity .75s ease-out,transform .75s ease-out}.fade-in-up.visible{opacity:1;transform:translateY(0)}.text-muted{color:var(--color-muted)}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.label-overline{font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;border-radius:var(--radius-sm);font-weight:700;font-size:var(--text-sm);letter-spacing:.04em;font-family:var(--font-body);cursor:pointer;transition:var(--transition-base);white-space:nowrap;border:none;text-decoration:none;min-height:44px}.btn:focus-visible{outline:2.5px solid var(--color-accent);outline-offset:3px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 6px 20px #1b433240;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-accent-hero{min-width:176px;font-size:.9rem;font-weight:700;letter-spacing:.07em;background:var(--color-accent);color:#1b4332;box-shadow:0 4px 20px #d4a85359}.btn-accent-hero:hover:not(:disabled){background:var(--color-accent-dark);box-shadow:0 6px 24px #d4a85380;color:#fff}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:#fff}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover:not(:disabled){background:var(--color-accent-dark)}.btn-outline-white{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.8)}.btn-outline-white:hover:not(:disabled){background:#ffffff26;border-color:#fff}.card-surface{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.card-bordered{background:#fff;border-radius:var(--radius);border:1px solid var(--border-light)}.section-pad{padding:5rem 0}@media (max-width: 900px){.section-pad{padding:3.5rem 0}}@media (max-width: 480px){.section-pad{padding:2.75rem 0}}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}@media (max-width: 900px){.product-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (max-width: 360px){.product-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}}.skip-to-content{position:absolute;top:-9999px;left:1rem;z-index:10001;padding:.6rem 1.25rem;background:var(--color-primary);color:#fff;font-weight:700;font-size:var(--text-sm);border-radius:0 0 var(--radius-sm) var(--radius-sm);text-decoration:none;transition:top .15s ease}.skip-to-content:focus{top:0;outline:2.5px solid var(--color-accent);outline-offset:2px}:focus-visible{outline:2.5px solid var(--color-accent);outline-offset:3px;border-radius:3px}:focus:not(:focus-visible){outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.nav-link-animated{position:relative;color:var(--color-text);font-weight:600;font-size:var(--text-sm);letter-spacing:var(--tracking-wide);padding-bottom:4px;transition:color .2s ease}.nav-link-animated:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--color-accent);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-link-animated:hover{color:var(--color-primary)}.nav-link-animated:hover:after,.nav-link-animated.active:after{transform:scaleX(1)}.nav-link-animated.active{color:var(--color-primary)}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-enter .3s ease forwards}.hero-title{font-family:var(--font-heading);font-size:clamp(36px,6vw,64px);font-weight:700;color:#fff;line-height:var(--leading-tight);margin:0 0 1rem}.form-input{width:100%;padding:.8rem 1rem;border:1.5px solid var(--border-light);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:#fff;transition:border-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-input::placeholder{color:var(--color-placeholder)}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #1b433214}.form-input.error{border-color:var(--color-error)}.form-label{display:block;font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-muted);margin-bottom:.4rem}.section-eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-accent);margin-bottom:.65rem;display:flex;align-items:center;gap:.6rem}.section-title{font-family:var(--font-display);font-size:clamp(1.85rem,4vw,2.75rem);font-weight:700;color:var(--color-primary);line-height:var(--leading-tight);margin:0 0 .75rem}.section-subtitle{color:var(--color-muted);font-size:1rem;line-height:var(--leading-relaxed);max-width:520px;margin:0 auto 3rem}.divider{height:1px;background:var(--border-light);border:none;margin:0}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700}.badge-green{background:#2d7a2d1f;color:var(--color-success)}.badge-gold{background:#d4a85326;color:var(--color-accent-dark)}.page-wrap{padding-bottom:env(safe-area-inset-bottom,0px)}button,[role=button],a{min-height:unset}.container,.container-wide,section{max-width:100%}@media (max-width: 360px){body{font-size:15px}}@media (max-width: 480px){.cart-layout{gap:1.5rem}}@media (max-width: 600px){.footer-col{align-items:center;text-align:center}.footer-col>div{justify-content:center!important}}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;border-radius:3px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--border-light)}::-webkit-scrollbar-thumb{background:var(--color-beige);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}::selection{background:#1b433226;color:var(--color-primary)}@media (max-width: 899px){.desktop-only{display:none!important}}@media (min-width: 900px){.mobile-only{display:none!important}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.4s infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}
