@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap";:root{--color-bg-primary:#faf9f6;--color-bg-secondary:#fff;--color-bg-tertiary:#f0ebe1;--color-text-primary:#1a1a1a;--color-text-secondary:#5c5c5c;--color-text-light:#999;--color-accent:#c2a878;--color-accent-hover:#a88d5d;--color-brand-blue:#2a435d;--font-primary:"Inter", sans-serif;--font-heading:"Playfair Display", serif;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:2rem;--spacing-xl:4rem;--spacing-xxl:8rem;--border-radius-sm:4px;--border-radius-md:8px;--border-radius-lg:16px;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 12px 32px #0000001f;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.4s cubic-bezier(.4, 0, .2, 1);--transition-slow:.8s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);background-color:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);margin-bottom:var(--spacing-md);color:var(--color-text-primary);font-weight:400;line-height:1.2}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-accent)}.container{width:100%;max-width:1400px;padding:0 var(--spacing-lg);margin:0 auto}.section-padding{padding:var(--spacing-xxl) 0}.btn{font-family:var(--font-primary);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;border-radius:30px;padding:12px 28px;font-size:.9rem;font-weight:500;display:inline-block}.btn-primary{background-color:var(--color-text-primary);color:#fff}.btn-primary:hover{background-color:var(--color-accent);color:#fff;transform:translateY(-2px)}.btn-outline{color:var(--color-text-primary);border-color:var(--color-text-primary);background-color:#0000}.btn-outline:hover{background-color:var(--color-text-primary);color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-slow) forwards}.glass{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d}.navbar{width:100%;padding:var(--spacing-md) 0;z-index:1000;transition:all var(--transition-normal);background:0 0;position:fixed;top:0}.navbar.scrolled{background:var(--color-bg-secondary);box-shadow:var(--shadow-sm);padding:var(--spacing-sm) 0}.nav-container{justify-content:space-between;align-items:center;display:flex}.logo a{font-family:var(--font-heading);letter-spacing:2px;font-size:1.5rem;font-weight:600}.nav-links{gap:var(--spacing-lg);list-style:none;display:flex}.nav-links a{text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.btn-sm{padding:8px 20px;font-size:.8rem}.hero{background:linear-gradient(to right, var(--color-bg-tertiary), var(--color-bg-primary));align-items:center;height:100vh;display:flex;position:relative;overflow:hidden}.hero:after{content:"";background:var(--color-accent);filter:blur(150px);opacity:.2;border-radius:50%;width:500px;height:500px;position:absolute;top:20%;right:-10%}.hero-content{max-width:600px;padding:0 var(--spacing-xl);z-index:1}.hero h1{margin-bottom:var(--spacing-md);color:var(--color-brand-blue);font-size:4.5rem}.hero p{margin-bottom:var(--spacing-lg);font-size:1.2rem}.hero-buttons{gap:var(--spacing-md);display:flex}.story-grid{gap:var(--spacing-xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.image-placeholder{background:var(--color-bg-tertiary);border-radius:var(--border-radius-lg);width:100%;height:600px;position:relative;overflow:hidden}.image-placeholder:before{content:"Skin Aesthetic";color:var(--color-text-light);font-family:var(--font-heading);font-size:1.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.story-features{margin-top:var(--spacing-lg);list-style:none}.story-features li{margin-bottom:var(--spacing-sm);align-items:center;gap:var(--spacing-sm);font-size:1.1rem;display:flex}.story-features span{color:var(--color-accent)}.section-header{text-align:center;margin-bottom:var(--spacing-xl)}.section-header h2{color:var(--color-brand-blue);font-size:3rem}.products-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.product-card{background:var(--color-bg-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal);flex-direction:column;display:flex}.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-10px)}.product-image{background:var(--color-bg-primary);border-radius:var(--border-radius-sm);height:250px;margin-bottom:var(--spacing-md);justify-content:center;align-items:center;display:flex}.placeholder-bottle{background:var(--color-bg-tertiary);width:80px;height:160px;color:var(--color-text-secondary);text-transform:uppercase;writing-mode:vertical-rl;letter-spacing:2px;border-radius:40px 40px 10px 10px;justify-content:center;align-items:center;font-size:.8rem;display:flex}.product-category{text-transform:uppercase;color:var(--color-accent);letter-spacing:1px;margin-bottom:var(--spacing-xs);font-size:.8rem;display:block}.product-info h3{margin-bottom:var(--spacing-sm);font-size:1.5rem}.product-desc{flex-grow:1;font-size:.95rem}.key-ingredients{background:var(--color-bg-primary);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md);font-size:.85rem}.btn-full{width:100%;margin-top:auto}.mega-footer{background:var(--color-brand-blue);color:var(--color-bg-primary)}.mega-footer h2,.mega-footer h4{color:#fff}.mega-footer h4{font-family:var(--font-primary);margin-bottom:var(--spacing-md);text-transform:uppercase;font-size:1.1rem;font-weight:600}.footer-brand-row{justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);flex-wrap:wrap;display:flex}.footer-brand h2{letter-spacing:2px;margin-bottom:5px;font-size:2.5rem}.social-links{gap:var(--spacing-md);display:flex}.social-links a{color:var(--color-bg-primary);opacity:.8;transition:all var(--transition-fast);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.social-links a:hover{opacity:1;background:#ffffff1a;transform:translateY(-2px)}.newsletter-form{gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.newsletter-form input{font-family:var(--font-primary);border:none;border-radius:30px;outline:none;flex-grow:1;padding:12px}.footer-divider{margin:var(--spacing-xl) 0;border:none;border-top:1px solid #ffffff1a}.mega-footer-grid{gap:var(--spacing-xl);grid-template-columns:repeat(3,1fr);display:grid}.mt-footer-row{margin-top:var(--spacing-xl)}.footer-column ul{margin:0;padding:0;list-style:none}.footer-column li{margin-bottom:var(--spacing-sm)}.footer-column a{color:#ffffffbf;transition:color var(--transition-fast);font-size:.95rem}.footer-column a:hover{color:#fff;text-decoration:underline}.footer-bottom{text-align:center;padding-top:var(--spacing-md);color:#fff9;border-top:1px solid #ffffff1a;font-size:.9rem}@media (width<=768px){.hero h1{font-size:3rem}.story-grid,.footer-grid{grid-template-columns:1fr}.nav-links{display:none}.pdp-grid,.story-grid{grid-template-columns:1fr}}.page-transition{animation:fadeIn var(--transition-normal) forwards}.story-page .story-hero{background:var(--color-brand-blue);color:#fff;text-align:center;margin-top:60px}.story-page .story-hero h2{color:#fff}.clinical-placeholder:before{content:"Scientific Laboratory"}.product-detail-page,.shop-page{margin-top:80px}.pdp-grid{gap:var(--spacing-xxl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.pdp-image-section{position:sticky;top:100px}.pdp-main-image{background:var(--color-bg-tertiary);border-radius:var(--border-radius-lg);justify-content:center;align-items:center;height:600px;display:flex;position:relative;overflow:hidden}.placeholder-bottle.large{border-radius:80px 80px 20px 20px;width:150px;height:300px;font-size:1.2rem}.clinical-badges{top:var(--spacing-md);right:var(--spacing-md);gap:var(--spacing-sm);flex-direction:column;display:flex;position:absolute}.badge{background:var(--color-bg-secondary);color:var(--color-brand-blue);text-transform:uppercase;letter-spacing:1px;box-shadow:var(--shadow-sm);border-radius:20px;padding:4px 12px;font-size:.7rem;font-weight:600}.pdp-info-section h1{color:var(--color-brand-blue);margin-bottom:var(--spacing-sm);font-size:3rem}.pdp-desc{margin-bottom:var(--spacing-lg);font-size:1.1rem}.pdp-actions{margin-bottom:var(--spacing-xl)}.pdp-tabs{padding-top:var(--spacing-md);border-top:1px solid #0000001a}.tab-headers{gap:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex}.tab-btn{font-family:var(--font-primary);color:var(--color-text-secondary);cursor:pointer;padding-bottom:var(--spacing-xs);transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;font-size:1rem;font-weight:600}.tab-btn.active{color:var(--color-brand-blue);border-bottom-color:var(--color-brand-blue)}.clinical-note{color:var(--color-text-light);margin-bottom:var(--spacing-md);font-size:.85rem;font-style:italic}.ingredients-list ul,.specs-list ul{padding:0;list-style:none}.ingredients-list li,.specs-list li{padding:var(--spacing-sm) 0;border-bottom:1px solid #0000000d;justify-content:space-between;font-size:.95rem;display:flex}.ing-name,.spec-name{color:var(--color-text-primary);font-weight:600}.ing-perc,.spec-value{color:var(--color-brand-blue);text-align:right;max-width:50%;font-weight:500}.mt-4{margin-top:var(--spacing-xl)}.text-center{text-align:center}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:2000;background:#00000080;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--color-bg-primary);border-radius:8px;width:90%;max-width:400px;padding:40px;position:relative;box-shadow:0 20px 40px #0000001a}.modal-close{cursor:pointer;background:0 0;border:none;font-size:1.5rem;position:absolute;top:20px;right:20px}.modal-header h2{margin-bottom:10px;font-size:1.8rem}.modal-header p{color:var(--color-text-secondary);margin-bottom:30px;font-size:.95rem}.auth-form .form-group{text-align:left;margin-bottom:20px}.auth-form label{text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.auth-form input{background:var(--color-bg-secondary);border:1px solid #0000001a;border-radius:4px;width:100%;padding:12px}.modal-footer{text-align:center;margin-top:25px;font-size:.9rem}.text-link{color:var(--color-brand-blue);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.drawer-overlay{z-index:1500;background:#0006;width:100vw;height:100vh;position:fixed;top:0;left:0}.drawer{background:var(--color-bg-primary);z-index:1600;flex-direction:column;width:400px;max-width:90vw;height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-5px 0 30px #0000000d}.drawer-header{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:25px;display:flex}.drawer-header h2{text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:1.2rem}.drawer-close{cursor:pointer;background:0 0;border:none;font-size:1.8rem}.drawer-content{flex:1;padding:25px;overflow-y:auto}.empty-cart{text-align:center;color:var(--color-text-secondary);padding:40px 0}.cart-list{margin:0;padding:0;list-style:none}.cart-item{gap:15px;margin-bottom:25px;display:flex}.cart-item-img .placeholder-bottle.small{width:60px;height:80px;font-size:.5rem}.cart-item-details h4{margin-bottom:5px;font-size:.95rem}.cart-item-price{color:var(--color-brand-blue);margin-bottom:5px;font-weight:600}.remove-btn{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:underline}.drawer-footer{background:var(--color-bg-secondary);border-top:1px solid #0000000d;padding:25px}.subtotal{justify-content:space-between;margin-bottom:10px;font-size:1.1rem;font-weight:600;display:flex}.shipping-note{color:var(--color-text-secondary);text-align:center;margin-bottom:20px;font-size:.8rem}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.animate-slide-in{animation:.4s cubic-bezier(.16,1,.3,1) forwards slideInRight}.favorite-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:36px;height:36px;box-shadow:var(--shadow-sm);cursor:pointer;z-index:10;color:var(--color-text-secondary);transition:transform var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);background:#ffffffd9;border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:15px;right:15px}.favorite-btn:hover{color:var(--color-brand-blue);box-shadow:var(--shadow-md);background:#fff;transform:scale(1.1)}.favorite-btn:active{transform:scale(.9)}.favorite-btn .heart-icon{transition:fill var(--transition-fast), stroke var(--transition-fast), transform var(--transition-fast)}.favorite-btn.active{color:#e27367}.favorite-btn.active .heart-icon{fill:#e27367;stroke:#e27367;animation:.3s ease-out heartBeat}@keyframes heartBeat{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1)}}.favorites-nav-link:hover{color:var(--color-accent)!important}.empty-favorites-state .heart-icon-wrapper{animation:2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
