@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";:root{--font-serif:"Playfair Display", Georgia, serif;--font-sans:"Outfit", system-ui, -apple-system, sans-serif;--bg-dark:#fbf9f6;--bg-card:#fffc;--bg-card-hover:#fffffff2;--border-glow:#e11d4826;--border-glow-hover:#e11d4859;--accent-red-start:#e11d48;--accent-red-end:#9f1239;--accent-rose:#fda4af;--accent-blush:#fff1f2;--text-primary:#2d2624;--text-secondary:#6e6462;--text-muted:#9e9391;--shadow-red:0 8px 32px 0 #e11d4814;--shadow-rose:0 8px 32px 0 #d4a39b1f;--transition-smooth:all .4s cubic-bezier(.16, 1, .3, 1);--hero-height:560px}*{box-sizing:border-box;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-primary);background-image:radial-gradient(at 0 0,#d4a39b1a 0,#0000 50%),radial-gradient(at 100% 100%,#e11d480f 0,#0000 50%),radial-gradient(#ffe4e614 0,#0000 60%);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:#e11d4840;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#e11d4880}.leaflet-container{box-shadow:var(--shadow-red);border:1px solid #e11d484d;border-radius:12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeIn}h1,h2,h3,h4,.serif-font{font-family:var(--font-serif);letter-spacing:.5px;font-weight:600}button,input,select,textarea{font-family:var(--font-sans)}.btn-red{background:linear-gradient(135deg, var(--accent-red-start) 0%, var(--accent-red-end) 100%);color:#fff;cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:30px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-weight:600;display:inline-flex;box-shadow:0 4px 15px #e11d4826}.btn-red:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 8px 25px #e11d484d}.btn-red:active{transform:translateY(0)}.btn-red:disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#d1cbd4;transform:none}.btn-outline{color:var(--accent-red-end);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1px solid #e11d4880;border-radius:30px;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-weight:500;display:inline-flex}.btn-outline:hover{border-color:var(--accent-red-end);background:#e11d480a;transform:translateY(-1px)}.btn-outline:active{transform:translateY(0)}.form-control{width:100%;color:var(--text-primary);transition:var(--transition-smooth);background:#00000005;border:1px solid #00000014;border-radius:8px;padding:12px 16px;font-size:1rem}.form-control:focus{background:#fff;border-color:#e11d4866;outline:none;box-shadow:0 0 0 3px #e11d481a}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glow);transition:var(--transition-smooth);border-radius:16px;box-shadow:0 8px 30px #00000005}.glass-panel-hover:hover{background:var(--bg-card-hover);border-color:var(--border-glow-hover);transform:translateY(-4px);box-shadow:0 12px 40px #e11d4814}.header-glass{z-index:1000;-webkit-backdrop-filter:blur(12px);background:#fbf9f6e6;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.brand-logo{font-family:var(--font-serif);background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-red-end) 100%);-webkit-text-fill-color:transparent;cursor:pointer;letter-spacing:1.5px;-webkit-background-clip:text;font-size:1.8rem;font-weight:700}.header-nav{align-items:center;gap:24px;display:flex}.nav-links{align-items:center;gap:16px;display:flex}.nav-link{color:var(--text-secondary);transition:var(--transition-smooth);border-radius:10px;padding:8px 12px;font-weight:600;text-decoration:none}.nav-link:hover{color:var(--text-primary);background:#e11d480a;transform:translateY(-2px)}.search-input{background:#fff9;border:1px solid #0000000f;border-radius:999px;align-items:center;width:220px;padding:8px 12px;display:inline-flex}.search-input input{background:0 0;border:none;outline:none;width:100%;padding:6px 8px;font-size:.95rem}.cart-button{border-radius:10px;justify-content:center;align-items:center;padding:6px;display:inline-flex;position:relative}.cart-badge{background:linear-gradient(135deg, var(--accent-red-start), var(--accent-red-end));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 4px 12px #e11d482e}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-red{color:var(--accent-red-end);background:#e11d4814;border:1px solid #e11d4833}.badge-purple{color:#92534a;background:#d4a39b1f;border:1px solid #d4a39b4d}.catalog-layout{grid-template-columns:280px 1fr;gap:30px;display:grid}.catalog-sidebar{flex-direction:column;gap:20px;display:flex}.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.product-card{cursor:pointer;flex-direction:column;height:100%;transition:transform .35s,box-shadow .35s;display:flex;overflow:hidden}.product-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #0000000f}.product-media{aspect-ratio:3/4;background:linear-gradient(#00000005,#0000000f);width:100%;position:relative;overflow:hidden}.product-media img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.product-media img:hover{transform:scale(1.06)}.product-details{flex-direction:column;flex:1;justify-content:space-between;padding:20px;display:flex}.product-title{color:var(--text-primary);font-size:1.3rem;font-family:var(--font-serif);margin-bottom:8px}.product-description{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:16px;font-size:.9rem;line-height:1.4;display:-webkit-box;overflow:hidden}.product-price{fontWeight:bold;color:var(--accent-red-start);font-size:1.25rem}.hero-slider{height:var(--hero-height);border-radius:16px;width:100%;position:relative;overflow:hidden}.hero-slide-caption{z-index:2;color:#fff;max-width:650px;animation:.8s cubic-bezier(.16,1,.3,1) forwards slideUpFade;position:absolute;bottom:80px;left:6%;right:6%}.hero-slide-title{font-family:var(--font-serif);color:#fff;text-shadow:0 2px 10px #00000073;margin-bottom:12px;font-size:3.2rem;font-weight:700;line-height:1.1}.hero-slide-subtitle{font-family:var(--font-sans);color:#ffffffe6;text-shadow:0 1px 5px #00000059;margin-bottom:24px;font-size:1.25rem;line-height:1.5}.hero-slide-btn{border-radius:30px;padding:12px 28px;font-size:.95rem}@keyframes slideUpFade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.mobile-search-filter-bar{gap:12px;width:100%;margin-bottom:24px;display:none}.mobile-search-input{background:var(--bg-card);border:1px solid var(--border-glow);box-shadow:var(--shadow-rose);border-radius:12px;flex:1;align-items:center;gap:10px;padding:10px 16px;display:flex}.mobile-search-input input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:.95rem}.mobile-search-input svg{color:var(--text-muted)}.mobile-filters-btn{background:linear-gradient(135deg, var(--accent-red-start), var(--accent-red-end));color:#fff;cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-weight:600;display:flex;box-shadow:0 4px 15px #e11d4826}.mobile-filters-btn:hover{transform:translateY(-1px)}.product-detail-layout{grid-template-columns:1fr 1fr;gap:48px;margin-bottom:40px;display:grid}.product-detail-main-media{border:1px solid var(--border-glow);background:#120f1a;border-radius:16px;justify-content:center;align-items:center;height:550px;display:flex;position:relative;overflow:hidden}.product-detail-main-media img,.product-detail-main-media video{object-fit:contain;width:100%;height:100%}.product-detail-thumbnails{gap:12px;margin-top:16px;padding-bottom:8px;display:flex;overflow-x:auto}.product-detail-info{flex-direction:column;justify-content:space-between;display:flex}.product-detail-title{font-size:2.5rem;line-height:1.2;font-family:var(--font-serif);margin-bottom:12px}.product-detail-price{color:var(--accent-red-start);margin-bottom:24px;font-size:2rem;font-weight:700}.filters-toggle{display:none}.filters-drawer{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2000;border-left:1px solid #0000000d;width:86%;max-width:380px;height:100%;padding:20px;transition:right .35s;position:fixed;top:0;right:-100%;box-shadow:-8px 0 40px #0000000f}.filters-drawer.open{right:0}.filters-backdrop{opacity:0;visibility:hidden;z-index:1900;background:#00000059;transition:opacity .25s;position:fixed;inset:0}.filters-backdrop.open{opacity:1;visibility:visible}@media (width<=900px){.catalog-layout{grid-template-columns:1fr}.catalog-sidebar,.search-input{display:none}.mobile-search-filter-bar{display:flex}.hero-slider{height:480px}.hero-slide-title{font-size:2.5rem}.hero-slide-subtitle{margin-bottom:20px;font-size:1.1rem}.hero-slide-caption{bottom:70px;left:5%;right:5%}.product-detail-layout{grid-template-columns:1fr;gap:32px}.product-detail-main-media{height:480px}}@media (width<=768px){.catalog-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media (width<=480px){.brand-logo{font-size:1.2rem}.nav-links,.hide-mobile{display:none}.header-glass{padding:12px 16px}.catalog-grid{gap:12px}.product-details{padding:12px}.product-title{margin-bottom:4px;font-size:1.05rem}.product-description{-webkit-line-clamp:2;margin-bottom:8px;font-size:.8rem}.product-price{font-size:1.05rem}.hero-slider{height:400px}.hero-slide-caption{bottom:50px;left:16px;right:16px}.hero-slide-title{margin-bottom:8px;font-size:1.8rem}.hero-slide-subtitle{margin-bottom:16px;font-size:.95rem}.hero-slide-btn{padding:10px 20px;font-size:.85rem}.product-detail-main-media{aspect-ratio:4/5;height:auto}.product-detail-title{font-size:1.8rem}.product-detail-price{margin-bottom:16px;font-size:1.5rem}}.spinner{border:3px solid #e11d481a;border-top-color:var(--accent-red-end);border-radius:50%;width:40px;height:40px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
