:root{--primary-color: #000000;--secondary-color: #666666;--accent-color: #f5f5f5;--success-color: #22c55e;--warning-color: #f59e0b;--error-color: #ef4444;--border-color: #e5e7eb;--text-primary: #111827;--text-secondary: #6b7280;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--shadow: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--border-radius: 8px;--transition: all .2s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-secondary)}.hidden{display:none!important}.loading{text-align:center;padding:2rem;color:var(--text-secondary)}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f5f5,#e5e5e5)}.login-container{background:var(--bg-primary);padding:3rem;border-radius:var(--border-radius);box-shadow:var(--shadow-lg);width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem}.login-header p{color:var(--text-secondary)}.login-form .form-group{margin-bottom:1.5rem}.login-form label{display:block;margin-bottom:.5rem;font-weight:500}.login-form input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);transition:var(--transition)}.login-form input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0000001a}.login-btn{width:100%;padding:.75rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);font-weight:500;cursor:pointer;transition:var(--transition)}.login-btn:hover{background-color:#333}.error-message{color:var(--error-color);text-align:center;margin-top:1rem;font-size:.875rem}.dashboard{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--bg-primary);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.sidebar-header{padding:1.5rem;border-bottom:1px solid var(--border-color)}.sidebar-header h2{font-size:1.25rem;font-weight:600}.sidebar-nav{flex:1;padding:1rem 0}.nav-item{display:flex;align-items:center;padding:.75rem 1.5rem;color:var(--text-secondary);text-decoration:none;transition:var(--transition)}.nav-item:hover,.nav-item.active{background-color:var(--accent-color);color:var(--text-primary)}.nav-item span{margin-right:.75rem;font-size:1rem}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-color)}.logout-btn{width:100%;padding:.5rem;background:none;border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.logout-btn:hover{background-color:var(--accent-color)}.main-content{flex:1;display:flex;flex-direction:column}.content-header{background:var(--bg-primary);padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.content-header h1{font-size:1.5rem;font-weight:600}.user-info{color:var(--text-secondary);font-size:.875rem}.content-body{flex:1;padding:2rem;overflow-y:auto}.page{max-width:1200px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--bg-primary);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.stat-card h3{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500}.stat-value{font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-change{font-size:.75rem;color:var(--success-color)}.charts-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.chart-card{background:var(--bg-primary);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.chart-card h3{margin-bottom:1rem;font-size:1.125rem;font-weight:600}.table-container{background:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden}table{width:100%;border-collapse:collapse}th,td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}th{background-color:var(--accent-color);font-weight:600;font-size:.875rem;color:var(--text-secondary)}tbody tr:hover{background-color:var(--accent-color)}.btn{padding:.5rem 1rem;border-radius:var(--border-radius);border:none;cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--transition);display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#333}.btn-secondary{background-color:var(--accent-color);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--border-color)}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.status-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-pending{background-color:#fef3c7;color:#92400e}.status-processing{background-color:#dbeafe;color:#1e40af}.status-paid{background-color:#d1fae5;color:#065f46}.status-shipped{background-color:#e0e7ff;color:#3730a3}.status-delivered{background-color:#d1fae5;color:#065f46}.status-cancelled{background-color:#fee2e2;color:#991b1b}.status-active{background-color:#d1fae5;color:#065f46}.status-inactive{background-color:#f3f4f6;color:#4b5563}.filters{display:flex;gap:1rem}.filters select{padding:.5rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary)}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-primary);border-radius:var(--border-radius);max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary)}.modal-body{padding:1.5rem}.modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);transition:var(--transition)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0000001a}.image-upload{border:2px dashed var(--border-color);border-radius:var(--border-radius);padding:2rem;text-align:center;transition:var(--transition)}.image-upload:hover{border-color:var(--primary-color)}.image-preview{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem}.image-preview img{width:100%;height:100px;object-fit:cover;border-radius:var(--border-radius)}.analytics-content{display:grid;gap:2rem}.period-selector select{padding:.5rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary)}.admin-events-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.admin-header h1{font-size:2rem;font-weight:600;margin-top:.5rem}.admin-form-section{background:var(--bg-primary);padding:2rem;border-radius:var(--border-radius);margin-bottom:2rem;box-shadow:var(--shadow)}.admin-form-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.event-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group small{display:block;color:var(--text-secondary);font-size:.75rem;margin-top:.25rem}.image-preview{margin-top:1rem;max-width:300px}.image-preview img{width:100%;height:auto;border-radius:var(--border-radius);box-shadow:var(--shadow)}.form-actions{display:flex;gap:1rem;justify-content:flex-start;padding-top:1rem;border-top:1px solid var(--border-color)}.events-list-section{background:var(--bg-primary);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.events-list-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.events-list-section .empty,.events-list-section .error{text-align:center;padding:3rem;color:var(--text-secondary)}.events-list-section .error{color:var(--error-color)}.admin-events-table{overflow-x:auto}.event-title-cell{display:flex;align-items:center;gap:1rem}.event-thumb{width:60px;height:60px;object-fit:cover;border-radius:6px;flex-shrink:0}.event-description-preview{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.date-cell{font-size:.875rem}.date-cell small{display:block;color:var(--text-secondary);font-size:.75rem;margin-top:.25rem}.action-buttons{display:flex;gap:.5rem}.btn-icon{background:none;border:1px solid var(--border-color);width:32px;height:32px;border-radius:6px;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;font-size:1rem}.btn-icon:hover{background-color:var(--accent-color);border-color:var(--primary-color)}.btn-icon.btn-danger:hover{background-color:#fee2e2;border-color:var(--error-color)}.status-upcoming{background-color:#dbeafe;color:#1e40af}.status-ongoing{background-color:#d1fae5;color:#065f46}.status-completed{background-color:#f3f4f6;color:#4b5563}.back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;padding:.25rem 0;margin-bottom:.5rem;transition:var(--transition)}.back-btn:hover{color:var(--primary-color)}.admin-card{transition:all .2s ease}.admin-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}@media (max-width: 768px){.dashboard{flex-direction:column}.sidebar{width:100%;order:2}.main-content{order:1}.charts-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.content-body{padding:1rem}.page-header,.admin-header{flex-direction:column;gap:1rem;align-items:stretch}.form-row{grid-template-columns:1fr}.admin-events-table{font-size:.875rem}.event-title-cell{flex-direction:column;align-items:flex-start}.action-buttons{flex-wrap:wrap}}:root{--primary-black: #000000;--primary-white: #ffffff;--gray-100: #fafafa;--gray-200: #f5f5f5;--gray-300: #e6e6e6;--gray-400: #999999;--gray-500: #666666;--gray-600: #333333;--font-serif: "Newsreader", serif;--font-sans: "Red Hat Text", "Inter", sans-serif;--text-xs: clamp(.75rem, 1.5vw, .875rem);--text-sm: clamp(.875rem, 1.8vw, 1rem);--text-base: clamp(1rem, 2vw, 1.125rem);--text-lg: clamp(1.125rem, 2.4vw, 1.25rem);--text-xl: clamp(1.25rem, 3vw, 1.5rem);--text-2xl: clamp(1.5rem, 4vw, 2rem);--text-3xl: clamp(1.75rem, 4.8vw, 3rem);--text-4xl: clamp(3rem, 7.2vw, 4.5rem);--text-5xl: clamp(4.5rem, 12vw, 7.5rem);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2.5rem;--spacing-xl: 4rem;--spacing-2xl: 6rem;--spacing-3xl: 8rem;--max-width: 1440px;--content-width: 1200px;--transition-fast: all .2s ease;--transition-base: all .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .5s cubic-bezier(.4, 0, .2, 1);--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;margin:0;padding:0;height:100%}body{font-family:var(--font-sans);font-weight:300;font-size:var(--text-base);line-height:1.6;color:var(--primary-black);background-color:var(--primary-white);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;min-height:100vh}#root{margin:0;padding:0;min-height:100vh}.home-page{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400;line-height:1.2;letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--text-5xl);font-weight:300;letter-spacing:-.03em}h2{font-size:var(--text-4xl);font-weight:300}h3{font-size:var(--text-3xl)}p{margin-bottom:var(--spacing-sm)}.container{max-width:var(--content-width);margin:0 auto;padding:0 var(--spacing-md)}.container-wide{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-md)}.navbar{position:fixed;top:0;width:100%;background-color:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--gray-300)}.nav-container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.logo-link{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:var(--primary-black);transition:var(--transition-base)}.logo-link:hover{opacity:.7}.logo-image{height:40px;width:auto;max-width:200px}.logo-text{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;color:var(--primary-black);letter-spacing:var(--letter-spacing-tight)}.nav-menu{display:flex;list-style:none;gap:var(--spacing-lg)}.nav-menu a{text-decoration:none;color:var(--primary-black);font-weight:400;font-size:var(--text-sm);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;transition:var(--transition-base);position:relative}.nav-menu a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background-color:var(--primary-black);transition:width .3s ease}.nav-menu a:hover:after{width:100%}.cart-link{display:flex;align-items:center;justify-content:center}.cart-link svg{margin-top:2px}.cart-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.cart-count{position:absolute;top:-8px;right:-8px;background-color:var(--primary-black);color:var(--primary-white);border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;line-height:1}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:5px}.hamburger span{width:28px;height:1.5px;background-color:var(--primary-black);transition:var(--transition-base)}.hero{margin-top:60px;min-height:calc(100vh - 60px);position:relative;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-2xl) 0}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:1}.hero-background-gif{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.7}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000001a;z-index:2}.hero .container{position:relative;z-index:3}.hero-content{max-width:800px;margin:0 auto;color:var(--primary-white)}.hero-title{font-family:var(--font-serif);font-size:var(--text-5xl);font-weight:300;line-height:1.1;margin-bottom:var(--spacing-md);letter-spacing:-.03em;color:var(--primary-white);text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-subtitle{font-family:var(--font-sans);font-size:var(--text-xl);color:var(--primary-white);margin-bottom:var(--spacing-lg);font-weight:300;letter-spacing:var(--letter-spacing-wide);text-shadow:1px 1px 2px rgba(0,0,0,.3)}.hero-description{font-size:var(--text-base);color:var(--primary-white);line-height:1.7;text-shadow:1px 1px 2px rgba(0,0,0,.3);max-width:600px;margin-left:auto;margin-right:auto;margin-bottom:var(--spacing-xl)}.hero-media{display:flex;justify-content:center;align-items:center}.hero-video{width:100%;max-width:500px;border-radius:8px;box-shadow:0 10px 30px #0000001a}.hero-gif{width:100%;max-width:500px;height:auto;border-radius:8px;box-shadow:0 10px 30px #0000001a}.btn{display:inline-block;padding:12px 32px;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:400;letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;text-decoration:none;transition:var(--transition-base);cursor:pointer;border-radius:0;text-align:center;white-space:nowrap}.btn-primary{background-color:var(--primary-black);color:var(--primary-white);border:1px solid var(--primary-black)}.btn-primary:hover{background-color:transparent;color:var(--primary-black)}.btn-secondary{background-color:transparent;color:var(--primary-black);border:1px solid var(--primary-black)}.btn-secondary:hover{background-color:var(--primary-black);color:var(--primary-white)}.btn-primary-hero{background-color:var(--primary-white);color:var(--primary-black);border:2px solid var(--primary-white);padding:16px 32px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:400;letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;text-decoration:none;transition:var(--transition-base);cursor:pointer;border-radius:0;display:inline-block;box-shadow:0 4px 8px #0003}.btn-primary-hero:hover{background-color:transparent;color:var(--primary-white);border-color:var(--primary-white)}.cta-button{@extend .btn;@extend .btn-primary;}.featured-collections{padding:var(--spacing-3xl) 0;background-color:var(--gray-100)}.collections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-2xl)}.featured-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (min-width: 768px){.featured-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.featured-grid{grid-template-columns:repeat(4,1fr)}}.collections-cta{text-align:center;margin-top:var(--spacing-2xl)}.collection-card{background-color:var(--primary-white);border-radius:0;overflow:hidden;transition:var(--transition-base);box-shadow:0 2px 10px #0000000d}.collection-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.collection-image{aspect-ratio:4/3;overflow:hidden}.collection-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}.collection-card:hover .collection-image img{transform:scale(1.05)}.collection-info{padding:var(--spacing-lg)}.collection-name{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:300;margin-bottom:var(--spacing-sm);letter-spacing:var(--letter-spacing-tight)}.collection-description{color:var(--gray-600);margin-bottom:var(--spacing-sm);line-height:1.6}.collection-count{font-size:var(--text-sm);color:var(--gray-500);margin-bottom:var(--spacing-lg);font-weight:400}.collection-link{display:inline-block;text-decoration:none}.about{padding:var(--spacing-3xl) 0;background-color:var(--gray-100)}.section-header{text-align:center;margin-bottom:var(--spacing-2xl)}.section-title{font-family:var(--font-serif);font-size:var(--text-4xl);font-weight:300;margin-bottom:var(--spacing-md);letter-spacing:var(--letter-spacing-tight)}.section-subtitle{font-size:var(--text-lg);color:var(--gray-500);max-width:600px;margin:0 auto}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.about-text h2{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin-bottom:var(--spacing-lg);letter-spacing:var(--letter-spacing-tight)}.about-text p{margin-bottom:var(--spacing-md);color:var(--gray-600);font-size:var(--text-base);line-height:1.8}.about-image img{width:100%;height:auto;object-fit:cover}.hand-painting-showcase{margin:var(--spacing-lg) 0;text-align:center}.hand-painting-gif{width:100%;max-width:300px;height:auto;border-radius:8px;box-shadow:0 5px 15px #0000001a}.showcase-caption{margin-top:var(--spacing-sm);font-size:var(--text-sm);color:var(--gray-500);font-style:italic}.product{padding:var(--spacing-3xl) 0}.product-showcase{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl)}.product-images{position:sticky;top:100px;height:fit-content}.main-image{margin-bottom:var(--spacing-md);overflow:hidden}.main-image img{width:100%;height:auto;object-fit:cover;transition:var(--transition-slow)}.main-image:hover img{transform:scale(1.02)}.image-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}.gallery-thumb{width:100%;height:auto;cursor:pointer;transition:var(--transition-base);opacity:.6}.gallery-thumb:hover,.gallery-thumb.active{opacity:1}.product-info{padding-left:var(--spacing-lg)}.product-title{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin-bottom:var(--spacing-sm);letter-spacing:var(--letter-spacing-tight)}.product-price{font-family:var(--font-sans);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-lg);letter-spacing:var(--letter-spacing-normal)}.product-description{margin-bottom:var(--spacing-xl)}.product-description p{margin-bottom:var(--spacing-md);color:var(--gray-600);line-height:1.8;font-size:var(--text-base)}.product-description .note{font-size:var(--text-sm);padding:var(--spacing-md);background-color:var(--gray-100);border-left:2px solid var(--primary-black);margin-top:var(--spacing-lg);font-style:italic}.product-form{margin-top:var(--spacing-xl)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:400;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--letter-spacing-widest);color:var(--primary-black)}.radio-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.radio-option{display:flex;align-items:center;padding:var(--spacing-md);border:1px solid var(--gray-300);cursor:pointer;transition:var(--transition-base);background-color:var(--primary-white)}.radio-option:hover{border-color:var(--primary-black);background-color:var(--gray-100)}.radio-option.selected{border-color:var(--primary-black);background-color:var(--primary-black);color:var(--primary-white)}.radio-option input[type=radio]{margin-right:var(--spacing-md);accent-color:var(--primary-black)}.radio-label{font-size:var(--text-base);font-weight:300}input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{width:100%;padding:12px 16px;border:1px solid var(--gray-300);border-radius:0;font-family:var(--font-sans);font-size:var(--text-base);font-weight:300;transition:var(--transition-base);background-color:var(--primary-white)}input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=number]:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-black)}input[type=number]{width:100px}textarea{resize:vertical;min-height:120px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.form-divider{height:1px;background-color:var(--gray-300);margin:var(--spacing-xl) 0}.product-form h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-lg);letter-spacing:var(--letter-spacing-tight)}.international-shipping{padding:var(--spacing-md);background-color:var(--gray-100);margin:var(--spacing-lg) 0;font-size:var(--text-sm);border-left:2px solid var(--primary-black)}.international-shipping a{color:var(--primary-black);text-decoration:underline;font-weight:400}.submit-button{width:100%;padding:16px var(--spacing-lg);background-color:var(--primary-black);color:var(--primary-white);border:1px solid var(--primary-black);border-radius:0;font-size:var(--text-sm);font-weight:400;letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;cursor:pointer;transition:var(--transition-base)}.submit-button:hover{background-color:transparent;color:var(--primary-black)}.instagram-feed{padding:var(--spacing-3xl) 0;background-color:var(--gray-100)}.instagram-feed h2{text-align:center;font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin-bottom:var(--spacing-2xl);letter-spacing:var(--letter-spacing-tight)}.instagram-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin-bottom:var(--spacing-lg)}.instagram-placeholder{aspect-ratio:1;background-color:var(--gray-200);overflow:hidden;position:relative}.instagram-placeholder img,.instagram-placeholder video{width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}.instagram-placeholder:hover img,.instagram-placeholder:hover video{transform:scale(1.1)}.instagram-link{display:inline-block;text-align:center;width:100%;color:var(--primary-black);text-decoration:none;font-size:var(--text-base);margin-top:var(--spacing-lg);text-transform:uppercase;letter-spacing:var(--letter-spacing-widest);font-weight:400;transition:var(--transition-base)}.instagram-link:hover{text-decoration:underline}footer{background-color:var(--primary-black);color:var(--primary-white);padding:var(--spacing-2xl) 0 var(--spacing-lg)}.footer-content{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.footer-section h3{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:300;margin-bottom:var(--spacing-md);letter-spacing:var(--letter-spacing-tight)}.footer-section p,.footer-section li{font-size:var(--text-sm);line-height:1.8;color:#ffffffb3;font-weight:300}.footer-section ul{list-style:none}.footer-section li{margin-bottom:var(--spacing-xs)}.footer-section a{color:#ffffffb3;text-decoration:none;transition:var(--transition-base)}.footer-section a:hover{color:var(--primary-white);text-decoration:underline}.social-links{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.3);border-radius:0;transition:var(--transition-base)}.social-links a:hover{border-color:var(--primary-white);background-color:var(--primary-white);color:var(--primary-black)}.social-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid rgba(255,255,255,.3);border-radius:4px;transition:var(--transition-base);text-decoration:none;color:#ffffffb3}.social-link:hover{border-color:var(--primary-white);background-color:#ffffff1a;color:var(--primary-white)}.social-link svg{width:20px;height:20px}.footer-bottom{text-align:center;padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1)}.footer-bottom p{font-size:var(--text-xs);color:#ffffff80;letter-spacing:var(--letter-spacing-wide)}.loading{display:inline-block;width:20px;height:20px;border:2px solid var(--gray-300);border-top-color:var(--primary-black);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pt-xl{padding-top:var(--spacing-xl)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}@media (max-width: 1024px){:root{--spacing-3xl: 5rem;--spacing-2xl: 4rem}.product-showcase{gap:var(--spacing-xl)}.product-info{padding-left:0}}@media (max-width: 768px){:root{--spacing-3xl: 3rem;--spacing-2xl: 2.5rem;--spacing-xl: 2rem}.hamburger{display:flex}.nav-menu{position:fixed;left:-100%;top:60px;flex-direction:column;background-color:var(--primary-white);width:100%;padding:var(--spacing-lg);transition:var(--transition-base);border-bottom:1px solid var(--gray-300);box-shadow:0 4px 20px #0000001a}.nav-menu.active{left:0}.hero-content{padding:var(--spacing-lg)}.hero-title{font-size:var(--text-4xl)}.hero-subtitle{font-size:var(--text-lg)}.hero-description{font-size:var(--text-sm)}.about-grid,.product-showcase{grid-template-columns:1fr}.product-images{position:static}.form-row{grid-template-columns:1fr}.instagram-grid{grid-template-columns:repeat(3,1fr)}.footer-content{grid-template-columns:1fr;text-align:center;gap:var(--spacing-lg)}.social-links{justify-content:center}}@media (max-width: 480px){.instagram-grid{grid-template-columns:repeat(2,1fr)}.image-gallery{grid-template-columns:repeat(3,1fr)}}.product-card{background-color:var(--primary-white);border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000001a;transition:var(--transition-base);display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.product-card .product-image{aspect-ratio:1;overflow:hidden}.product-card .product-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}.product-card:hover .product-image img{transform:scale(1.05)}.product-card .product-info{padding:var(--spacing-md);flex-grow:1;display:flex;flex-direction:column}.product-card .product-name{font-family:var(--font-serif);font-size:var(--text-lg);font-weight:300;margin-bottom:var(--spacing-xs);color:var(--primary-black)}.product-card .product-description{font-size:var(--text-sm);color:var(--gray-600);margin-bottom:var(--spacing-xs);line-height:1.4}.product-card .product-dimensions{font-size:var(--text-xs);color:var(--gray-500);margin-bottom:var(--spacing-sm)}.product-variants{margin-bottom:var(--spacing-md)}.variant-group{margin-bottom:var(--spacing-sm)}.variant-group label{display:block;font-size:var(--text-xs);font-weight:400;margin-bottom:var(--spacing-xs);color:var(--gray-600);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.variant-select{width:100%;padding:8px 12px;border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-sm);background-color:var(--primary-white)}.product-pricing{margin-bottom:var(--spacing-md)}.price-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.unit-price{font-size:var(--text-base);font-weight:400;color:var(--primary-black)}.bulk-price{font-size:var(--text-xs);color:var(--gray-500)}.product-actions{margin-top:auto;display:flex;flex-direction:column;gap:var(--spacing-sm)}.quantity-selector{display:flex;align-items:center;gap:var(--spacing-sm)}.quantity-selector label{font-size:var(--text-xs);font-weight:400;color:var(--gray-600)}.quantity-input{width:80px;padding:6px 8px;border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-sm)}.current-price{font-size:var(--text-sm);font-weight:500;color:var(--primary-black);text-align:center}.add-to-cart-btn{padding:10px 16px;font-size:var(--text-xs)}.page-header{text-align:center;margin-bottom:var(--spacing-2xl)}.page-header h1{font-family:var(--font-serif);font-size:var(--text-4xl);font-weight:300;margin-bottom:var(--spacing-sm)}.page-header p{font-size:var(--text-lg);color:var(--gray-500)}.collections-filters{margin-bottom:var(--spacing-2xl)}.search-bar{margin-bottom:var(--spacing-lg)}.search-input{padding:12px 16px;border:1px solid var(--gray-300);border-radius:8px;font-size:var(--text-base);width:100%;max-width:400px}.category-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.category-btn{padding:8px 16px;border:1px solid var(--gray-300);border-radius:20px;background-color:var(--primary-white);color:var(--gray-600);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-base)}.category-btn:hover,.category-btn.active{background-color:var(--primary-black);color:var(--primary-white);border-color:var(--primary-black)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.no-products{text-align:center;padding:var(--spacing-2xl);color:var(--gray-500)}@media (max-width: 768px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.category-filters{justify-content:center}.search-input{max-width:100%}}.workshops-page{padding:var(--spacing-2xl) 0}.workshop-content{max-width:1000px;margin:0 auto}.workshop-description{text-align:center;margin-bottom:var(--spacing-3xl)}.workshop-description h2{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin-bottom:var(--spacing-lg)}.workshop-description p{font-size:var(--text-base);line-height:1.8;margin-bottom:var(--spacing-md);max-width:800px;margin-left:auto;margin-right:auto}.workshop-description .prominent-text{font-weight:700}.workshop-gallery{margin-bottom:var(--spacing-3xl);text-align:center}.workshop-gallery h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-md)}.workshop-gallery p{font-size:var(--text-base);color:var(--gray-500);margin-bottom:var(--spacing-lg);max-width:600px;margin-left:auto;margin-right:auto}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);max-width:1000px;margin:0 auto}.gallery-item{border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #0000001a;transition:var(--transition-base)}.gallery-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.gallery-item img{width:100%;height:250px;object-fit:cover;display:block}.gallery-carousel{max-width:800px;margin:0 auto}.carousel-container{position:relative;display:flex;align-items:center;margin-bottom:var(--spacing-lg)}.carousel-main-image{flex:1;margin:0 var(--spacing-md)}.carousel-main-image img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;box-shadow:0 8px 32px #00000026;transition:var(--transition-base)}.carousel-btn{background-color:var(--primary-white);border:2px solid var(--primary-black);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:700;cursor:pointer;transition:var(--transition-base);z-index:2;box-shadow:0 4px 12px #0000001a}.carousel-btn:hover{background-color:var(--primary-black);color:var(--primary-white);transform:scale(1.05)}.carousel-btn:active{transform:scale(.95)}.carousel-thumbnails{display:flex;justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap}.thumbnail-btn{border:3px solid transparent;border-radius:8px;padding:0;cursor:pointer;transition:var(--transition-base);overflow:hidden;background:none}.thumbnail-btn img{width:80px;height:80px;object-fit:cover;display:block;border-radius:4px}.thumbnail-btn:hover,.thumbnail-btn.active{border-color:var(--primary-black);transform:scale(1.05)}.thumbnail-btn.active{box-shadow:0 4px 12px #0003}.workshop-calendar-section{text-align:center;margin-bottom:var(--spacing-3xl)}.workshop-calendar-section h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-md)}.workshop-calendar-section p{font-size:var(--text-base);color:var(--gray-500);margin-bottom:var(--spacing-lg);max-width:600px;margin-left:auto;margin-right:auto}.calendar-widget{max-width:600px;margin:0 auto;background-color:var(--primary-white);border-radius:12px;padding:var(--spacing-xl);box-shadow:0 8px 32px #0000001a;border:1px solid var(--gray-200)}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--gray-200)}.calendar-month-year{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:300;margin:0}.calendar-nav-btn{background-color:transparent;border:1px solid var(--gray-300);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);cursor:pointer;transition:var(--transition-base)}.calendar-nav-btn:hover{background-color:var(--gray-100);border-color:var(--primary-black)}.calendar-day-names{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:var(--spacing-sm)}.day-name{padding:var(--spacing-sm);font-weight:600;font-size:var(--text-sm);color:var(--gray-600);text-align:center}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xs);border-radius:8px;transition:var(--transition-base);position:relative;min-height:60px}.calendar-day.empty{visibility:hidden}.calendar-day.past{color:var(--gray-400);background-color:var(--gray-50)}.calendar-day.workshop-day{background-color:var(--primary-black);color:var(--primary-white);cursor:pointer;transform:scale(1)}.calendar-day.workshop-day:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003}.day-number{font-weight:600;font-size:var(--text-sm)}.workshop-indicator{font-size:10px;font-weight:500;margin-top:2px;text-align:center;line-height:1}.calendar-legend{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--gray-200)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-sm)}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.workshop{background-color:var(--primary-black)}.legend-color.past{background-color:var(--gray-400)}.workshop-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-3xl)}.workshop-signup,.workshop-kit{background-color:var(--gray-100);padding:var(--spacing-xl);border-radius:8px}.workshop-signup h3,.workshop-kit h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-lg)}.workshop-form .form-group{margin-bottom:var(--spacing-lg)}.kit-card{display:flex;flex-direction:column;gap:var(--spacing-md)}.kit-image{border-radius:8px;overflow:hidden;margin-bottom:var(--spacing-md);box-shadow:0 4px 12px #0000001a}.kit-image img{width:100%;height:250px;object-fit:cover;display:block;transition:var(--transition-base)}.kit-image img:hover{transform:scale(1.05)}.kit-placeholder{background-color:var(--gray-200);padding:var(--spacing-2xl);text-align:center;border-radius:8px;color:var(--gray-600)}.kit-price{font-size:var(--text-xl);font-weight:500;color:var(--primary-black);margin:var(--spacing-md) 0}.kit-note{font-size:var(--text-xs);color:var(--gray-500);margin-top:var(--spacing-sm)}.workshop-kit-section{margin-bottom:var(--spacing-3xl)}.workshop-kit-section h2{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-lg);text-align:center}.kit-card-featured{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);background-color:var(--gray-100);padding:var(--spacing-xl);border-radius:8px;align-items:center}.kit-card-featured .kit-image{border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #0000001a}.kit-card-featured .kit-image img{width:100%;height:400px;object-fit:cover;display:block;transition:var(--transition-base)}.kit-card-featured .kit-image img:hover{transform:scale(1.05)}.kit-card-featured .kit-info h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-md)}.kit-card-featured .kit-info p{margin-bottom:var(--spacing-md);line-height:1.6}.kit-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.kit-actions .btn{flex:1}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:var(--spacing-lg)}.modal-content{background-color:var(--primary-white);border-radius:12px;padding:var(--spacing-2xl);max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d}.modal-content h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-lg);color:var(--primary-black)}.modal-content p{margin-bottom:var(--spacing-md);line-height:1.6;color:var(--gray-600)}.modal-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-xl)}.modal-actions .btn{width:100%;text-align:center}.workshop-cta{background-color:var(--gray-100);padding:var(--spacing-2xl);text-align:center;border-radius:8px}.workshop-cta h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin-bottom:var(--spacing-md)}.success-message{text-align:center;padding:var(--spacing-xl);background-color:var(--gray-200);border-radius:8px}.success-message h4,.success-message h3{color:var(--primary-black);margin-bottom:var(--spacing-sm)}.contact-page{padding:var(--spacing-2xl) 0}.contact-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-3xl);max-width:1000px;margin:0 auto}.contact-info h2,.contact-form-section h2{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin-bottom:var(--spacing-lg)}.contact-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.contact-item h4{font-size:var(--text-lg);font-weight:500;margin-bottom:var(--spacing-xs);color:var(--primary-black)}.contact-item p{color:var(--gray-600);line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}@media (max-width: 768px){.workshop-grid{grid-template-columns:1fr;gap:var(--spacing-xl)}.kit-card-featured{grid-template-columns:1fr;gap:var(--spacing-lg);padding:var(--spacing-lg)}.kit-card-featured .kit-image img{height:300px}.kit-actions{flex-direction:column}.kit-actions .btn{width:100%}.modal-content{padding:var(--spacing-lg)}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm)}.gallery-item img{height:200px}.carousel-main-image img{aspect-ratio:1}.carousel-btn{width:40px;height:40px;font-size:var(--text-lg)}.thumbnail-btn img{width:60px;height:60px}.calendar-widget{padding:var(--spacing-lg)}.calendar-day{min-height:50px}.calendar-nav-btn{width:35px;height:35px;font-size:var(--text-base)}.calendar-month-year{font-size:var(--text-lg)}.calendar-legend{flex-direction:column;gap:var(--spacing-sm);align-items:center}.contact-content{grid-template-columns:1fr;gap:var(--spacing-2xl)}.workshop-signup,.workshop-kit{padding:var(--spacing-lg)}}@media (max-width: 480px){.hero{margin-top:60px;padding:0;min-height:calc(100vh - 60px)}.hero-title{font-size:var(--text-3xl)}.hero-subtitle{font-size:var(--text-base)}.hero-description{font-size:var(--text-sm);padding:0 var(--spacing-sm)}.hero-content{padding:var(--spacing-sm)}.nav-menu{gap:var(--spacing-sm)}.hamburger{display:flex}.nav-menu{position:fixed;top:60px;left:-100%;width:100%;height:calc(100vh - 60px);background-color:var(--primary-white);flex-direction:column;justify-content:flex-start;align-items:center;padding-top:var(--spacing-xl);transition:left .3s ease;box-shadow:0 4px 20px #0000001a;gap:var(--spacing-lg)}.nav-menu.active{left:0}}@media (min-width: 769px) and (max-width: 1024px){.hero-background-gif{object-position:center center}.hero-title{font-size:var(--text-4xl)}.container{padding:0 var(--spacing-lg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.btn,.nav-menu a,.cart-link{transition:var(--transition-base)}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #00000026}.nav-menu a:hover{transform:translateY(-1px)}.cart-link:hover{transform:scale(1.05)}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.loading-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite}.product-detail-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3xl);margin:var(--spacing-xl) 0}.product-images .main-image img{width:100%;height:400px;object-fit:cover;border-radius:8px;margin-bottom:var(--spacing-md)}.image-thumbnails{display:flex;gap:var(--spacing-sm);overflow-x:auto}.image-thumbnails img{width:80px;height:80px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.7;transition:var(--transition-base)}.image-thumbnails img.active,.image-thumbnails img:hover{opacity:1;border:2px solid var(--primary-black)}.product-info h1{margin-bottom:var(--spacing-md)}.product-description{color:var(--gray-500);margin-bottom:var(--spacing-lg);line-height:1.6}.price-section{margin-bottom:var(--spacing-lg)}.price{font-size:var(--text-2xl);font-weight:600;color:var(--primary-black);margin-bottom:var(--spacing-xs)}.bulk-pricing{color:var(--gray-500);font-size:var(--text-sm)}.variant-selector,.quantity-selector{margin-bottom:var(--spacing-lg)}.variant-selector label,.quantity-selector label{display:block;font-weight:500;margin-bottom:var(--spacing-xs);color:var(--primary-black)}.variant-selector select{width:100%;padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-base);background-color:var(--primary-white)}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs)}.quantity-controls button{width:40px;height:40px;border:1px solid var(--gray-300);background-color:var(--primary-white);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--text-lg);transition:var(--transition-base)}.quantity-controls button:hover{background-color:var(--gray-100)}.quantity-controls input{width:80px;padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:4px;text-align:center;font-size:var(--text-base)}.add-to-cart-btn{background-color:var(--primary-black);color:var(--primary-white);border:none;padding:var(--spacing-md) var(--spacing-lg);border-radius:4px;font-size:var(--text-base);font-weight:500;cursor:pointer;transition:var(--transition-base);width:100%;margin-bottom:var(--spacing-lg)}.add-to-cart-btn:hover:not(:disabled){background-color:var(--gray-600);transform:translateY(-1px)}.add-to-cart-btn:disabled{background-color:var(--gray-300);cursor:not-allowed}.total-price{font-size:var(--text-xl);font-weight:600;color:var(--primary-black);text-align:right}.loading{text-align:center;padding:var(--spacing-xl);font-size:var(--text-lg)}@media (max-width: 768px){.product-detail-content{grid-template-columns:1fr;gap:var(--spacing-lg)}.product-images .main-image img{height:300px}.quantity-controls input{width:60px}}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--gray-300)}.empty-cart{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg)}.empty-cart p{font-size:var(--text-lg);color:var(--gray-500);margin-bottom:var(--spacing-lg)}.cart-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-xl)}.cart-items{display:flex;flex-direction:column;gap:var(--spacing-lg)}.cart-item{display:grid;grid-template-columns:100px 1fr auto auto;gap:var(--spacing-lg);padding:var(--spacing-lg);border:1px solid var(--gray-300);border-radius:8px;align-items:center}.item-image img{width:100px;height:100px;object-fit:cover;border-radius:4px}.item-details h3{font-size:var(--text-lg);margin-bottom:var(--spacing-xs);color:var(--primary-black)}.item-variant{font-size:var(--text-sm);color:var(--gray-500);margin-bottom:var(--spacing-xs)}.item-price{font-size:var(--text-sm);color:var(--gray-600);font-weight:500}.item-quantity{text-align:center}.item-quantity label{display:block;font-size:var(--text-sm);margin-bottom:var(--spacing-xs);font-weight:500}.item-total{text-align:right}.item-subtotal{font-size:var(--text-lg);font-weight:600;color:var(--primary-black);margin-bottom:var(--spacing-sm)}.remove-item{background:none;border:none;color:var(--gray-500);font-size:var(--text-sm);cursor:pointer;text-decoration:underline;transition:var(--transition-base)}.remove-item:hover{color:var(--primary-black)}.cart-summary{position:sticky;top:100px;height:fit-content}.summary-content{border:1px solid var(--gray-300);border-radius:8px;padding:var(--spacing-lg);background-color:var(--gray-100)}.summary-content h3{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--gray-300)}.summary-line{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--text-base)}.summary-line.total{font-size:var(--text-lg);font-weight:600;padding-top:var(--spacing-sm);border-top:1px solid var(--gray-300);margin-top:var(--spacing-lg)}.cart-actions{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkout-btn{background-color:var(--primary-black);color:var(--primary-white)}.checkout-btn:hover{background-color:var(--gray-600)}@media (max-width: 768px){.cart-header{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.cart-content{grid-template-columns:1fr}.cart-item{grid-template-columns:80px 1fr;grid-template-rows:auto auto auto;gap:var(--spacing-md)}.item-image{grid-row:1 / 3}.item-details{grid-column:2;grid-row:1}.item-quantity{grid-column:1 / 3;grid-row:2;display:flex;justify-content:space-between;align-items:center;text-align:left}.item-total{grid-column:1 / 3;grid-row:3;display:flex;justify-content:space-between;align-items:center;text-align:left}.cart-summary{position:static}}@media print{.navbar,.instagram-feed,footer,.submit-button{display:none}body{font-size:12pt}.hero{min-height:auto;margin-top:0}}.bulk-savings{color:var(--gray-500);font-size:var(--text-xs);display:block;margin-top:2px}.in-cart-indicator{background-color:#e7f5e7;color:#2e7d2e;padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;font-size:var(--text-xs);font-weight:500;margin-top:var(--spacing-sm);text-align:center;border:1px solid #c8e6c8}.bulk-indicator{background-color:#fff3cd;color:#856404;padding:var(--spacing-xs);border-radius:4px;font-size:var(--text-xs);font-weight:500;margin-top:var(--spacing-xs);display:inline-block;border:1px solid #ffeaa7}.current-price{margin-bottom:var(--spacing-md)}.total-price{font-size:var(--text-lg);font-weight:500;color:var(--primary-black);margin-bottom:var(--spacing-xs)}.savings{color:#2e7d2e;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.price-per-item{color:var(--gray-600);font-size:var(--text-xs)}.btn-success{background-color:var(--primary-white);color:var(--primary-black);border:1px solid var(--primary-black)}.btn-success:hover{background-color:var(--primary-black);border-color:var(--primary-black);color:var(--primary-white)}.add-to-cart-btn{transition:all .3s ease;position:relative}.add-to-cart-btn.btn-success:before{content:"✓";position:absolute;left:12px;top:50%;transform:translateY(-50%);font-weight:700}.events-section{margin:var(--spacing-3xl) 0;padding:var(--spacing-2xl) 0}.events-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--gray-300)}.events-header h2{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:300;margin:0}.view-toggle{display:flex;gap:var(--spacing-xs);background-color:var(--gray-100);padding:4px;border-radius:8px}.view-btn{background:transparent;border:none;padding:var(--spacing-sm);cursor:pointer;border-radius:6px;color:var(--gray-600);transition:var(--transition-base);display:flex;align-items:center;justify-content:center}.view-btn:hover{background-color:var(--gray-200);color:var(--primary-black)}.view-btn.active{background-color:var(--primary-white);color:var(--primary-black);box-shadow:0 2px 4px #0000001a}.events-container.card-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xl)}.event-card{background-color:var(--primary-white);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:all .3s ease;text-decoration:none;color:inherit;display:flex;flex-direction:column}.event-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.event-image{position:relative;width:100%;height:220px;overflow:hidden;background-color:var(--gray-200)}.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.event-card:hover .event-image img{transform:scale(1.05)}.event-date-badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md);background-color:var(--primary-white);padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;box-shadow:0 2px 8px #00000026;text-align:center;min-width:60px}.date-day{display:block;font-size:var(--text-2xl);font-weight:700;line-height:1;color:var(--primary-black)}.date-month{display:block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--gray-600);margin-top:2px;letter-spacing:.5px}.sold-out-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background-color:#dc3545;color:var(--primary-white);padding:var(--spacing-xs) var(--spacing-md);border-radius:20px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase}.event-content{padding:var(--spacing-lg);flex:1;display:flex;flex-direction:column}.event-content h3{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;margin:0 0 var(--spacing-sm) 0;color:var(--primary-black);line-height:1.3}.event-time{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-sm);color:var(--gray-600);margin-bottom:var(--spacing-md)}.event-time svg{flex-shrink:0}.event-description{font-size:var(--text-sm);color:var(--gray-700);line-height:1.6;margin-bottom:var(--spacing-md);flex:1}.event-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--gray-200)}.event-price{font-size:var(--text-lg);font-weight:600;color:var(--primary-black)}.event-status{font-size:var(--text-xs);font-weight:600;color:var(--gray-600);text-transform:uppercase;background-color:var(--gray-100);padding:4px 12px;border-radius:12px}.events-container.list-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.event-list-item{display:grid;grid-template-columns:80px 120px 1fr auto;gap:var(--spacing-lg);background-color:var(--primary-white);border-radius:12px;padding:var(--spacing-lg);box-shadow:0 2px 8px #00000014;transition:all .3s ease;text-decoration:none;color:inherit;align-items:center}.event-list-item:hover{box-shadow:0 4px 16px #0000001f;transform:translate(4px)}.event-list-date{text-align:center;padding:var(--spacing-sm);background-color:var(--gray-100);border-radius:8px}.event-list-image{width:120px;height:90px;border-radius:8px;overflow:hidden}.event-list-image img{width:100%;height:100%;object-fit:cover}.event-list-content{flex:1;min-width:0}.event-list-content h3{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;margin:0 0 var(--spacing-xs) 0;color:var(--primary-black)}.event-list-content .event-time{margin-bottom:var(--spacing-xs)}.event-list-content .event-description{margin:0}.event-list-price{text-align:right;display:flex;flex-direction:column;gap:var(--spacing-xs)}.event-list-price span:first-child{font-size:var(--text-xl);font-weight:600;color:var(--primary-black)}.event-list-price .sold-out{color:#dc3545}.event-list-price .price-label{font-size:var(--text-xs);color:var(--gray-600);text-transform:uppercase;font-weight:600}.events-loading,.events-error,.events-empty{text-align:center;padding:var(--spacing-3xl);color:var(--gray-600)}.events-error{color:#dc3545}.event-detail-page{min-height:100vh;background-color:var(--gray-50);padding-bottom:var(--spacing-3xl)}.back-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--primary-black);font-size:var(--text-base);cursor:pointer;padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-xl);transition:color .2s ease}.back-btn:hover{color:var(--gray-600)}.event-detail-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3xl);align-items:start}.event-detail-image{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #0000001f;background-color:var(--gray-200)}.event-detail-image img{width:100%;height:auto;display:block}.sold-out-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;color:var(--primary-white);font-size:var(--text-3xl);font-weight:700;text-transform:uppercase;letter-spacing:2px}.event-detail-info{background-color:var(--primary-white);border-radius:12px;padding:var(--spacing-2xl);box-shadow:0 2px 8px #00000014}.event-detail-info h1{font-family:var(--font-serif);font-size:var(--text-4xl);font-weight:300;margin:0 0 var(--spacing-xl) 0;line-height:1.2}.event-meta{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--gray-200)}.meta-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);color:var(--gray-700)}.meta-item svg{flex-shrink:0;margin-top:2px}.meta-item strong{font-weight:600;margin-right:4px}.event-description{margin-bottom:var(--spacing-2xl)}.event-description h2{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:300;margin:0 0 var(--spacing-lg) 0}.event-description p{line-height:1.7;color:var(--gray-700);margin-bottom:var(--spacing-md)}.ticket-purchase{background-color:var(--gray-50);padding:var(--spacing-xl);border-radius:8px;margin-bottom:var(--spacing-xl)}.ticket-purchase h3{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;margin:0 0 var(--spacing-lg) 0}.ticket-selector{margin-bottom:var(--spacing-lg)}.ticket-selector label{display:block;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--gray-700)}.quantity-input{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.quantity-input button{width:40px;height:40px;border-radius:6px;border:1px solid var(--gray-300);background-color:var(--primary-white);color:var(--primary-black);font-size:var(--text-xl);font-weight:600;cursor:pointer;transition:var(--transition-base)}.quantity-input button:hover:not(:disabled){background-color:var(--primary-black);color:var(--primary-white);border-color:var(--primary-black)}.quantity-input button:disabled{opacity:.4;cursor:not-allowed}.quantity-input input{width:80px;height:40px;text-align:center;border:1px solid var(--gray-300);border-radius:6px;font-size:var(--text-base);font-weight:600}.ticket-total{font-size:var(--text-lg);font-weight:600;color:var(--primary-black);margin:0}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-lg);width:100%}.sold-out-notice{background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:var(--spacing-xl);text-align:center}.sold-out-notice h3{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:400;margin:0 0 var(--spacing-md) 0;color:#856404}.sold-out-notice p{color:#856404;margin-bottom:var(--spacing-lg);line-height:1.6}@media (max-width: 1024px){.event-detail-content{grid-template-columns:1fr}.event-list-item{grid-template-columns:70px 100px 1fr auto;gap:var(--spacing-md)}.event-list-image{width:100px;height:75px}}@media (max-width: 768px){.events-header{flex-direction:column;gap:var(--spacing-lg);align-items:stretch}.view-toggle{justify-content:center}.events-container.card-view{grid-template-columns:1fr}.event-list-item{grid-template-columns:1fr;gap:var(--spacing-md)}.event-list-date{width:fit-content}.event-list-image{width:100%;height:200px}.event-list-price{text-align:left}.kit-card-featured{grid-template-columns:1fr}.kit-actions{flex-direction:column}}
