@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap";:root{--champagne-50:#fdf8f0;--champagne-100:#f9eddb;--champagne-200:#f2d9b5;--champagne-300:#e8c28a;--champagne-400:#dba95f;--champagne-500:#c9923e;--champagne-600:#b07830;--red-50:#fdf2f4;--red-100:#fce7ea;--red-200:#f8c8d0;--red-300:#f29aaa;--red-400:#e8637a;--red-500:#c41e3a;--red-600:#8b1a2b;--red-700:#6b1220;--red-800:#4a0d17;--white:#fff;--off-white:#fafaf8;--cream:#f7f3ee;--parchment:#f2ece3;--charcoal:#1a1a1a;--ink:#2d2d2d;--stone:#6b6b6b;--mist:#9a9a9a;--smoke:#d4d4d0;--pearl:#ebebea;--bg-primary:var(--off-white);--bg-secondary:var(--cream);--bg-accent:var(--parchment);--text-primary:var(--charcoal);--text-secondary:var(--stone);--text-muted:var(--mist);--accent:var(--red-600);--accent-light:var(--red-500);--accent-hover:var(--red-700);--gold:var(--champagne-500);--gold-light:var(--champagne-300);--font-display:"Cormorant Garamond", Georgia, serif;--font-body:"Inter", system-ui, sans-serif;--nav-h:72px;--shadow-sm:0 1px 3px #1a1a1a0f, 0 1px 2px #1a1a1a0a;--shadow-md:0 4px 16px #1a1a1a14, 0 2px 6px #1a1a1a0a;--shadow-lg:0 12px 40px #1a1a1a1f, 0 4px 12px #1a1a1a0f;--shadow-xl:0 24px 64px #1a1a1a29;--shadow-red:0 8px 24px #8b1a2b3d;--ease-smooth:cubic-bezier(.25, .46, .45, .94);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur-base:.28s;--dur-slow:.5s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}ul{list-style:none}.display-xl{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(3rem,7vw,7rem);font-weight:300;line-height:1}.display-lg{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(2.2rem,5vw,5rem);font-weight:300;line-height:1.1}.display-md{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(1.6rem,3.5vw,3rem);font-weight:400;line-height:1.2}.display-sm{font-family:var(--font-display);font-size:clamp(1.2rem,2.5vw,2rem);font-weight:400;line-height:1.3}.label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);font-size:.7rem;font-weight:600}.container{max-width:1320px;margin:0 auto;padding:0 clamp(1.25rem,4vw,4rem)}.container-sm{max-width:860px;margin:0 auto;padding:0 clamp(1.25rem,4vw,4rem)}.section{padding:clamp(4rem,10vw,9rem) 0}.section-sm{padding:clamp(2rem,5vw,4rem) 0}.btn{letter-spacing:.1em;text-transform:uppercase;transition:all var(--dur-base) var(--ease-smooth);white-space:nowrap;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 2.25rem;font-size:.8rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transition:opacity var(--dur-fast);background:#ffffff1f;position:absolute;inset:0}.btn:hover:after{opacity:1}.btn-primary{background:var(--accent);color:var(--white);box-shadow:var(--shadow-red)}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 12px 32px #8b1a2b52}.btn-primary:active{transform:translateY(0)}.btn-outline{color:var(--text-primary);border:1px solid var(--smoke);background:0 0}.btn-outline:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:.85rem 1.25rem}.btn-ghost:hover{color:var(--text-primary)}.btn-gold{background:linear-gradient(135deg, var(--champagne-400), var(--champagne-600));color:var(--white);box-shadow:0 6px 20px #b078304d}.btn-gold:hover{transform:translateY(-1px);box-shadow:0 10px 28px #b0783066}.btn-sm{padding:.6rem 1.5rem;font-size:.72rem}.btn-lg{padding:1rem 2.75rem;font-size:.85rem}.btn-icon{width:44px;min-width:44px;height:44px;color:var(--accent);border-color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.card{background:var(--white);box-shadow:var(--shadow-sm);transition:all var(--dur-base) var(--ease-smooth);border-radius:4px}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.product-card{background:var(--white);transition:all var(--dur-slow) var(--ease-smooth);border-radius:3px;position:relative;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px)}.product-card__img-wrap{aspect-ratio:1/1.1;background:var(--cream);position:relative;overflow:hidden}.product-card__img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease-smooth)}.product-card:hover .product-card__img{transform:scale(1.06)}.product-card__overlay{transition:background var(--dur-base);background:#1a1a1a00;align-items:flex-end;gap:.5rem;padding:1.25rem;display:flex;position:absolute;inset:0}.product-card:hover .product-card__overlay{background:#1a1a1a2e}.product-card__actions{opacity:0;transition:all var(--dur-base) var(--ease-smooth);gap:.5rem;width:100%;display:flex;transform:translateY(8px)}.product-card:hover .product-card__actions{opacity:1;transform:translateY(0)}.product-card__body{background:var(--white);padding:1.25rem 1.25rem 1.5rem}.product-card__label{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:.35rem;font-size:.65rem;font-weight:600}.product-card__name{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.6rem;font-size:1.2rem;font-weight:500;line-height:1.3}.product-card__price{align-items:center;gap:.75rem;display:flex}.product-card__price-current{color:var(--text-primary);font-size:1.05rem;font-weight:600}.product-card__price-original{color:var(--text-muted);font-size:.88rem;text-decoration:line-through}.product-card__wishlist{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:36px;height:36px;box-shadow:var(--shadow-md);transition:all var(--dur-base) var(--ease-smooth);cursor:pointer;color:var(--text-secondary);background:#ffffffeb;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:1rem;right:1rem}.product-card__wishlist:hover,.product-card__wishlist.active{background:var(--accent);color:var(--white);transform:scale(1.1)}.product-card__badge{z-index:2;background:var(--accent);color:var(--white);letter-spacing:.12em;text-transform:uppercase;border-radius:2px;padding:.3rem .65rem;font-size:.6rem;font-weight:700;position:absolute;top:1rem;left:1rem}.navbar{z-index:1000;height:var(--nav-h);transition:all var(--dur-base) var(--ease-smooth);align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.navbar--scrolled{-webkit-backdrop-filter:blur(16px)saturate(180%);background:#fafaf8e0;border-bottom:1px solid #d4d4d080;box-shadow:0 2px 20px #1a1a1a0f}.navbar__inner{justify-content:space-between;align-items:center;width:100%;display:flex}.navbar__logo{font-family:var(--font-display);letter-spacing:.04em;color:var(--text-primary);font-size:1.25rem;font-weight:500;line-height:1}.navbar__logo-tagline{color:var(--accent)}.navbar__nav{align-items:center;gap:2.5rem;display:flex}.navbar__link{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);transition:color var(--dur-fast);font-size:.78rem;font-weight:500;position:relative}.navbar__link:after{content:"";background:var(--accent);width:0;height:1px;transition:width var(--dur-base) var(--ease-smooth);position:absolute;bottom:-3px;left:0}.navbar__link:hover,.navbar__link.active{color:var(--text-primary)}.navbar__link:hover:after,.navbar__link.active:after{width:100%}.navbar__actions{align-items:center;gap:.5rem;display:flex}.nav-icon-btn{width:40px;height:40px;color:var(--text-secondary);transition:all var(--dur-base);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.nav-icon-btn:hover{background:var(--cream);color:var(--text-primary)}.nav-badge{background:var(--accent);min-width:16px;height:16px;color:var(--white);pointer-events:none;border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:2px;right:2px}.hero{background:linear-gradient(135deg, var(--cream) 0%, var(--champagne-100) 40%, var(--parchment) 100%);align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero__bg-orb{filter:blur(80px);pointer-events:none;border-radius:50%;position:absolute}.hero__bg-orb--1{background:radial-gradient(circle,#c41e3a14 0%,#0000 70%);width:600px;height:600px;top:-100px;right:-100px}.hero__bg-orb--2{background:radial-gradient(circle,#c9923e1f 0%,#0000 70%);width:400px;height:400px;bottom:-50px;left:10%}.hero__content{z-index:1;max-width:1000px;position:relative}.hero__eyebrow{align-items:center;gap:.75rem;margin-bottom:1.75rem;display:inline-flex}.hero__eyebrow-line{background:var(--gold);width:40px;height:1px}.hero__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--charcoal);margin-bottom:1.75rem;font-size:clamp(3rem,7vw,6.5rem);font-weight:300;line-height:1.05}.hero__title em{color:var(--accent);font-style:italic}.hero__subtitle{color:var(--stone);max-width:580px;margin-bottom:2.75rem;font-size:1.05rem;font-weight:300;line-height:1.75}.hero__cta{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.hero__scroll-hint{color:var(--stone);letter-spacing:.15em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.5rem;font-size:.65rem;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.scroll-dot{background:linear-gradient(to bottom, var(--accent), transparent);width:1px;height:40px;animation:2s ease-in-out infinite scrollDot}@keyframes scrollDot{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.4;transform:scaleY(.7)}}.product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;display:grid}.product-grid--3{grid-template-columns:repeat(3,1fr)}.drawer-overlay{z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1a1a80;position:fixed;inset:0}.drawer{background:var(--white);z-index:1200;flex-direction:column;width:min(480px,100vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-20px 0 60px #1a1a1a26}.drawer__header{border-bottom:1px solid var(--pearl);flex-shrink:0;justify-content:space-between;align-items:center;padding:2rem 1.75rem 1.5rem;display:flex}.drawer__title{font-family:var(--font-display);font-size:1.6rem;font-weight:500}.drawer__body{-webkit-overflow-scrolling:touch;flex:1;padding:1.5rem 1.75rem;overflow-y:auto}.drawer__footer{border-top:1px solid var(--pearl);background:var(--off-white);flex-shrink:0;padding:1.5rem 1.75rem 2rem}.cart-item{border-bottom:1px solid var(--pearl);gap:1.25rem;padding:1.25rem 0;display:flex}.cart-item__img{object-fit:cover;background:var(--cream);border-radius:3px;flex-shrink:0;width:90px;height:100px}.cart-item__info{flex:1;min-width:0}.cart-item__name{font-family:var(--font-display);margin-bottom:.35rem;font-size:1.05rem;font-weight:500;line-height:1.3}.cart-item__price{color:var(--text-primary);margin-bottom:.75rem;font-size:.92rem;font-weight:600}.qty-control{border:1px solid var(--smoke);border-radius:2px;align-items:center;display:inline-flex;overflow:hidden}.qty-control button{width:32px;height:32px;color:var(--text-secondary);transition:all var(--dur-fast);background:var(--off-white);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.qty-control button:hover{background:var(--cream);color:var(--text-primary)}.qty-control span{text-align:center;width:36px;font-size:.9rem;font-weight:500}.cart-summary-row{justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.9rem;display:flex}.cart-summary-row--total{border-top:1px solid var(--smoke);margin-top:.5rem;padding-top:.85rem;font-size:1.05rem;font-weight:600}.form-group{margin-bottom:1.25rem}.form-label{letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-bottom:.45rem;font-size:.72rem;font-weight:600;display:block}.form-input{border:1px solid var(--smoke);width:100%;color:var(--text-primary);background:var(--white);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:2px;outline:none;padding:.85rem 1rem;font-size:.92rem}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #8b1a2b14}.form-input::placeholder{color:var(--mist)}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-error{color:var(--red-500);margin-top:.3rem;font-size:.75rem}.auth-page{background:linear-gradient(145deg, var(--cream) 0%, var(--champagne-100) 50%, var(--parchment) 100%);justify-content:center;align-items:center;min-height:100svh;padding:2rem;display:flex}.auth-card{background:var(--white);box-shadow:var(--shadow-xl);border-radius:6px;width:100%;max-width:440px;padding:clamp(2rem,5vw,3.5rem)}.auth-card__brand{text-align:center;margin-bottom:2.5rem}.auth-card__brand h1{font-family:var(--font-display);margin-bottom:.35rem;font-size:1.75rem;font-weight:500}.auth-card__brand p{color:var(--stone);font-size:.85rem}.auth-divider{color:var(--mist);align-items:center;gap:1rem;margin:1.5rem 0;font-size:.8rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--pearl);flex:1;height:1px}.checkout-layout{grid-template-columns:1fr 400px;align-items:start;gap:3rem;display:grid}.checkout-section{background:var(--white);box-shadow:var(--shadow-sm);border-radius:4px;margin-bottom:1.5rem;padding:2rem}.checkout-section h3{font-family:var(--font-display);border-bottom:1px solid var(--pearl);margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.3rem;font-weight:500}.order-summary-card{background:var(--white);box-shadow:var(--shadow-sm);top:calc(var(--nav-h) + 1.5rem);border-radius:4px;padding:1.75rem;position:sticky}.product-detail{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(3rem,6vw,7rem);display:grid}.product-gallery{top:calc(var(--nav-h) + 2rem);position:sticky}.product-gallery__main{aspect-ratio:1/1.1;background:var(--cream);border-radius:4px;margin-bottom:1rem;overflow:hidden}.product-gallery__main img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-smooth)}.product-gallery__main:hover img{transform:scale(1.04)}.product-gallery__thumbs{grid-template-columns:repeat(5,1fr);gap:.5rem;display:grid}.product-gallery__thumb{aspect-ratio:1;background:var(--cream);cursor:pointer;transition:border-color var(--dur-fast);border:2px solid #0000;border-radius:3px;overflow:hidden}.product-gallery__thumb.active{border-color:var(--accent)}.product-gallery__thumb img{object-fit:cover;width:100%;height:100%}.product-info__brand{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.75rem;font-size:.68rem;font-weight:700}.product-info__name{font-family:var(--font-display);letter-spacing:-.015em;color:var(--charcoal);margin-bottom:1rem;font-size:clamp(2rem,4vw,3.2rem);font-weight:400;line-height:1.1}.product-info__rating{align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.stars{color:var(--champagne-400);font-size:.9rem}.product-info__price{font-family:var(--font-display);color:var(--charcoal);margin-bottom:.5rem;font-size:2.2rem;font-weight:500}.product-info__compare{color:var(--mist);margin-bottom:2rem;font-size:1rem;text-decoration:line-through}.product-info__description{color:var(--stone);margin-bottom:2rem;font-size:.92rem;line-height:1.8}.product-specs{background:var(--cream);border-radius:3px;grid-template-columns:1fr 1fr;gap:.75rem 2rem;margin-bottom:2rem;padding:1.5rem;display:grid}.product-spec-label{letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin-bottom:.2rem;font-size:.65rem;font-weight:600}.product-spec-value{color:var(--text-primary);font-size:.88rem;font-weight:500}.product-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.product-action-buy{flex:1;min-width:0}.divider{background:linear-gradient(to right, var(--accent), transparent);width:60px;height:1px;margin:1.25rem 0}.divider--center{margin:1.25rem auto}.divider--gold{background:linear-gradient(to right, var(--gold), transparent)}.toast-container{font-family:var(--font-body)!important}.empty-state{text-align:center;padding:5rem 2rem}.empty-state__icon{background:var(--cream);width:80px;height:80px;color:var(--mist);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.empty-state h3{font-family:var(--font-display);margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.empty-state p{color:var(--stone);margin-bottom:1.75rem;font-size:.9rem}.breadcrumb{color:var(--mist);align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.75rem;display:flex}.breadcrumb a:hover{color:var(--accent)}.breadcrumb span{color:var(--smoke)}.page-header{padding:calc(var(--nav-h) + 4rem) 0 4rem;background:linear-gradient(145deg, var(--cream), var(--champagne-100));text-align:center}.page-header h1{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(2.5rem,6vw,5.5rem);font-weight:300}.page-header p{color:var(--stone);max-width:480px;margin:0 auto;font-size:1rem}.stripe-element{border:1px solid var(--smoke);background:var(--white);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:2px;padding:.85rem 1rem}.stripe-element--focus{border-color:var(--accent);box-shadow:0 0 0 3px #8b1a2b14}.order-success{text-align:center;max-width:560px;margin:0 auto;padding:5rem 2rem}.order-success__check{background:linear-gradient(135deg, var(--champagne-300), var(--champagne-500));width:80px;height:80px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 2rem;display:flex}.footer{background:var(--charcoal);color:#ffffffb3;padding:5rem 0 2.5rem}.footer__grid{grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:4rem;display:grid}.footer__brand{font-family:var(--font-display);color:var(--white);margin-bottom:1rem;font-size:1.6rem;font-weight:400}.footer__tagline{color:#ffffff80;max-width:280px;font-size:.85rem;line-height:1.7}.footer__heading{letter-spacing:.2em;text-transform:uppercase;color:var(--white);margin-bottom:1.25rem;font-size:.65rem;font-weight:700}.footer__links{flex-direction:column;gap:.65rem;display:flex}.footer__links a{color:#ffffff80;transition:color var(--dur-fast);font-size:.88rem}.footer__links a:hover{color:var(--champagne-300)}.footer__bottom{color:#ffffff59;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;padding-top:2rem;font-size:.78rem;display:flex}.footer__accent{color:var(--champagne-300)}@media (width<=1024px){.checkout-layout{grid-template-columns:1fr}.order-summary-card{position:static}.product-grid--3{grid-template-columns:repeat(2,1fr)}.footer__grid{grid-template-columns:1fr 1fr}}@media (width<=768px){.navbar__nav{display:none}.product-detail{grid-template-columns:1fr}.product-gallery{position:static}.product-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.product-grid--3{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.footer__grid{grid-template-columns:1fr;gap:2rem}.product-action-buy{flex:none;width:100%}}@media (width<=480px){.product-grid{grid-template-columns:1fr}.hero__title{font-size:3rem}.btn{padding:.8rem 1.75rem}.navbar__logo-tagline{display:none}}.text-center{text-align:center}.text-accent{color:var(--accent)}.text-gold{color:var(--gold)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.mt-auto{margin-top:auto}.fw-300{font-weight:300}.fw-400{font-weight:400}.fw-500{font-weight:500}.fw-600{font-weight:600}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.w-full{width:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--smoke);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--mist)}::selection{color:var(--charcoal);background:#c41e3a1f}.page-enter{opacity:0;transform:translateY(12px)}.page-enter-done{opacity:1;transition:all .4s var(--ease-smooth);transform:translateY(0)}
