@charset "UTF-8";:root{--color-primary: #1e3a5f;--color-primary-light: #2d5a8a;--color-primary-dark: #0f2744;--color-accent: #e67e22;--color-accent-hover: #d35400;--color-bg: #ffffff;--color-bg-alt: #f4f6f9;--color-text: #2c3e50;--color-text-muted: #6c757d;--color-border: #e2e8f0;--color-white: #ffffff;--color-black: #000000;--color-overlay-on-dark: rgba(255, 255, 255, .9);--color-overlay-on-dark-strong: rgba(255, 255, 255, .8);--color-overlay-on-dark-muted: rgba(255, 255, 255, .85);--color-overlay-on-dark-subtle: rgba(255, 255, 255, .5);--color-overlay-on-dark-border: rgba(255, 255, 255, .3);--color-overlay-on-dark-bg: rgba(255, 255, 255, .1);--color-overlay-on-dark-bg-hover: rgba(255, 255, 255, .15);--color-overlay-on-dark-divider: rgba(255, 255, 255, .15);--color-accent-subtle: rgba(230, 126, 34, .1);--color-overlay-dark: rgba(0, 0, 0, .4);--color-overlay-dark-hover: rgba(0, 0, 0, .5);--color-overlay-dark-strong: rgba(0, 0, 0, .7);--color-code-bg: #1e293b;--color-code-text: #e2e8f0;--color-code-muted: #64748b;--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--font-display: "Outfit", var(--font-sans);--font-mono: "Monaco", "Menlo", "Ubuntu Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: .9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.375rem;--font-size-4xl: 1.5rem;--font-size-5xl: 1.75rem;--font-size-6xl: 2rem;--font-size-hero: 2.5rem;--font-size-hero-sm: 1.75rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.25rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 3rem;--spacing-4xl: 4rem;--spacing-page-y: 2rem;--spacing-page-bottom: 4rem;--spacing-section: 4rem;--spacing-section-sm: 3rem;--spacing-gap-xs: .25rem;--spacing-gap-sm: .35rem;--spacing-gap: .5rem;--spacing-gap-md: .75rem;--spacing-gap-lg: 1rem;--spacing-gap-xl: 1.5rem;--spacing-gap-2xl: 2rem;--spacing-gap-3xl: 3rem;--header-height: 72px;--max-width-container: 1200px;--max-width-narrow: 720px;--max-width-login: 440px;--max-width-hero-content: 480px;--max-width-section-subtitle: 560px;--search-width: 200px;--search-width-expanded: 240px;--search-width-mobile: 140px;--icon-btn-size: 40px;--filter-sidebar-width: 240px;--cart-sidebar-width: 320px;--product-card-min: 260px;--product-card-min-sm: 280px;--blog-card-min: 320px;--learn-card-min: 300px;--newsletter-input-min: 180px;--radius: 8px;--radius-sm: 1px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .12);--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--z-header: 100}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.25;margin-top:0}h1{font-size:2.25rem}h2{font-size:var(--font-size-5xl)}h3{font-size:var(--font-size-3xl)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base) ease}a:hover{color:var(--color-accent)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}button:focus:not(:focus-visible){outline:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:var(--font-size-base)}.container{width:100%;max-width:var(--max-width-container);margin-left:auto;margin-right:auto;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.empty-state-hint{text-align:center;color:var(--color-text-muted);max-width:36rem;margin:.5rem auto 0;font-size:var(--font-size-md);line-height:1.5}.empty-state-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;align-items:center;margin-top:var(--spacing-lg)}.load-error{color:#b91c1c;margin:0 0 var(--spacing-md);font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-gap);padding:var(--spacing-gap-md) var(--spacing-xl);font-weight:600;font-size:var(--font-size-md);border:none;border-radius:var(--radius);transition:background-color var(--transition-base),transform var(--transition-fast)}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--color-accent);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-accent-hover)}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white)}.btn-ghost{background:transparent;color:var(--color-text)}.btn-ghost:hover{background-color:var(--color-bg-alt)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pdp-stock-alert{width:100%;margin:var(--spacing-gap-md) 0 var(--spacing-lg);padding:var(--spacing-gap-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-alt)}.pdp-stock-alert__toggle{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.pdp-stock-alert__bell{flex-shrink:0}.mobile-sticky-cart--oos .mobile-sticky-cart__btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.mobile-sticky-cart__reminder-saved{font-size:var(--font-size-sm);font-weight:700;color:var(--color-success, #16a34a);text-align:center;line-height:1.25;max-width:48%}.pdp-stock-alert__form{margin-top:var(--spacing-gap-md);display:grid;gap:var(--spacing-gap-sm)}.pdp-stock-alert__hint{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.pdp-stock-alert__input{width:100%;min-height:44px;padding:.55rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-md);background:var(--color-bg);color:var(--color-text)}.pdp-stock-alert__submit{justify-self:start}.pdp-stock-alert__msg{margin:var(--spacing-gap-sm) 0 0}.pdp-stock-alert__err{margin:var(--spacing-gap-sm) 0 0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-danger, #dc2626)}
