*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh;line-height:1.6}ul[role=list],ol[role=list]{list-style:none}body{min-height:100vh}h1,h2,h3,h4{text-wrap:balance}a:not([class]){-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;color:currentColor}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}:root{--color-primary:#2b6069;--color-primary-dark:#1e4a52;--color-primary-light:#3a7a84;--color-secondary:#a8cbd1;--color-secondary-light:#c5dde2;--color-secondary-pale:#e0eef1;--color-accent:#e9a68f;--color-accent-hover:#d4907a;--color-accent-light:#f3c9ba;--color-bg:#faf3e0;--color-bg-warm:#f5ecd3;--color-surface:#f7f7f7;--color-text:#1a2b2e;--color-text-secondary:#4a6670;--color-text-light:#7a9aa3;--color-white:#fff;--color-black:#0d1b1e;--color-border:#2b60691f;--color-overlay:#0d1b1e99;--font-display:"Caveat", cursive;--font-heading:"DM Serif Display", serif;--font-body:"Karla", sans-serif;--text-xs:clamp(.75rem, .7rem + .25vw, .875rem);--text-sm:clamp(.875rem, .8rem + .35vw, 1rem);--text-base:clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg:clamp(1.125rem, 1rem + .5vw, 1.25rem);--text-xl:clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--text-2xl:clamp(1.5rem, 1.2rem + 1.5vw, 2rem);--text-3xl:clamp(1.875rem, 1.5rem + 1.875vw, 2.5rem);--text-4xl:clamp(2.25rem, 1.75rem + 2.5vw, 3.5rem);--text-5xl:clamp(3rem, 2rem + 4vw, 5rem);--text-display:clamp(2.5rem, 1.5rem + 4vw, 4.5rem);--leading-tight:1.2;--leading-normal:1.6;--leading-relaxed:1.8;--weight-regular:400;--weight-medium:500;--weight-bold:700;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-5xl:8rem;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--radius-pill:9999px;--radius-organic:60% 40% 30% 70% / 40% 60% 70% 30%;--radius-organic-alt:40% 60% 70% 30% / 60% 40% 30% 70%;--shadow-xs:0 1px 3px #2b60690f;--shadow-sm:0 2px 8px #2b606914;--shadow-md:0 4px 16px #2b60691f;--shadow-lg:0 8px 32px #2b606929;--shadow-hover:0 12px 40px #2b606933;--shadow-inner:inset 0 2px 4px #2b60690f;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--transition-spring:.4s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-tooltip:600;--z-toast:700;--container-max:1280px;--container-narrow:800px;--container-wide:1440px;--navbar-height:72px;--navbar-height-mobile:60px}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-regular);line-height:var(--leading-tight);color:var(--color-text)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}.text-display{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--color-primary)}.text-display-sm{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.text-body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal)}.text-body-lg{font-family:var(--font-body);font-size:var(--text-lg);line-height:var(--leading-relaxed)}.text-body-sm{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-normal)}.text-secondary{color:var(--color-text-secondary)}.text-accent{color:var(--color-accent)}.text-primary{color:var(--color-primary)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-uppercase{text-transform:uppercase;letter-spacing:.08em}.section-title{font-family:var(--font-heading);font-size:var(--text-3xl);text-align:center;padding-bottom:var(--space-lg);margin-bottom:var(--space-2xl);position:relative}.section-title:after{content:"";background:var(--color-accent);border-radius:var(--radius-pill);width:60px;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.section-subtitle{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary);text-align:center;margin-bottom:var(--space-md)}p+p{margin-top:var(--space-md)}.link{color:var(--color-primary);text-decoration:underline;-webkit-text-decoration-color:var(--color-secondary);text-decoration-color:var(--color-secondary);text-underline-offset:3px;transition:color var(--transition-fast), text-decoration-color var(--transition-fast)}.link:hover{color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}blockquote{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-text-secondary);border-left:3px solid var(--color-accent);padding-left:var(--space-lg);font-style:normal}.price{font-family:var(--font-body);font-weight:var(--weight-bold);font-size:var(--text-xl);color:var(--color-primary-dark);font-variant-numeric:tabular-nums}.price-old{color:var(--color-text-light);font-weight:var(--weight-regular);font-size:var(--text-sm);margin-right:var(--space-xs);text-decoration:line-through}.container{width:100%;max-width:var(--container-max);padding-inline:var(--space-lg);margin-inline:auto}.container-narrow{max-width:var(--container-narrow);padding-inline:var(--space-lg);margin-inline:auto}.container-wide{max-width:var(--container-wide);padding-inline:var(--space-lg);margin-inline:auto}.section{padding-block:var(--space-4xl)}.section-sm{padding-block:var(--space-2xl)}.section-lg{padding-block:var(--space-5xl)}.grid{gap:var(--space-xl);display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-auto-sm{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.items-center{align-items:center}.items-start{align-items:flex-start}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.container,.container-narrow,.container-wide{padding-inline:var(--space-md)}.section{padding-block:var(--space-2xl)}.section-lg{padding-block:var(--space-3xl)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (width<=576px){.grid-auto{grid-template-columns:1fr}}.split{gap:var(--space-3xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.split-reverse{direction:rtl}.split-reverse>*{direction:ltr}@media (width<=768px){.split,.split-reverse{gap:var(--space-xl);direction:ltr;grid-template-columns:1fr}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden-mobile{display:block}.visible-mobile{display:none}@media (width<=768px){.hidden-mobile{display:none!important}.visible-mobile{display:block!important}}.btn{justify-content:center;align-items:center;gap:var(--space-sm);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.03em;border-radius:var(--radius-pill);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;border:2px solid #0000;padding:.75rem 1.75rem;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";border-radius:inherit;opacity:0;transition:opacity var(--transition-fast);background:radial-gradient(circle,#ffffff4d 0%,#0000 70%);position:absolute;inset:0}.btn:active:after{opacity:1}.btn-accent{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.btn-accent:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-accent:active{transform:translateY(0)}.btn-primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{color:var(--color-primary);border-color:var(--color-primary);background:0 0}.btn-outline:hover{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-ghost{color:var(--color-primary);padding-inline:var(--space-md);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--color-secondary-pale);color:var(--color-primary-dark)}.btn-white{background:var(--color-white);color:var(--color-primary);border-color:var(--color-white)}.btn-white:hover{background:var(--color-bg);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-sm{font-size:var(--text-xs);padding:.5rem 1.25rem}.btn-lg{font-size:var(--text-base);padding:1rem 2.25rem}.btn-icon{border-radius:50%;width:44px;height:44px;padding:0}.pill{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-pill);border:1.5px solid var(--color-border);background:var(--color-white);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;padding:.5rem 1.25rem;display:inline-flex}.pill:hover{border-color:var(--color-primary);color:var(--color-primary)}.pill.active{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.navbar{z-index:var(--z-fixed);padding-block:var(--space-md);padding-inline:var(--space-xl);align-items:center;transition:background-color .4s,padding-block .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s,box-shadow .4s;display:flex;position:fixed;top:0;left:0;right:0}.navbar--transparent{padding-block:var(--space-xl);background-color:#0000}.navbar--solid,.navbar.scrolled{-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);padding-block:var(--space-sm);background-color:#fffffff2}.navbar__inner{width:100%;max-width:var(--container-wide);justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.navbar__logo{align-items:center;gap:var(--space-sm);z-index:calc(var(--z-fixed) + 1);display:flex}.navbar__logo img{border-radius:var(--radius-sm);width:140px;height:auto;transition:transform .3s}@media (width<=768px){.navbar__logo img{width:110px}}.navbar__logo-text{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-primary);font-weight:var(--weight-regular)}.navbar--transparent .navbar__logo-text{color:var(--color-white)}.navbar.scrolled .navbar__logo-text{color:var(--color-primary)}.navbar__links{align-items:center;gap:var(--space-xl);list-style:none;display:flex}.navbar__link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);letter-spacing:.02em;transition:color var(--transition-fast);position:relative}.navbar--transparent .navbar__link{color:var(--color-white)}.navbar.scrolled .navbar__link{color:var(--color-text)}.navbar__link:after{content:"";background:var(--color-accent);border-radius:var(--radius-pill);width:0;height:2px;transition:width var(--transition-normal);position:absolute;bottom:-4px;left:0}.navbar__link:hover:after,.navbar__link.active:after{width:100%}.navbar__link:hover,.navbar.scrolled .navbar__link:hover{color:var(--color-accent)!important}.navbar__cart{cursor:pointer;width:44px;height:44px;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative}.navbar__cart svg{width:24px;height:24px;stroke:var(--color-text);transition:stroke var(--transition-fast)}.navbar--transparent .navbar__cart svg{stroke:var(--color-white)}.navbar.scrolled .navbar__cart svg{stroke:var(--color-text)}.navbar__cart-count{background:var(--color-accent);width:18px;height:18px;color:var(--color-white);font-size:.65rem;font-weight:var(--weight-bold);opacity:0;transition:all var(--transition-spring);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:4px;right:2px;transform:scale(0)}.navbar__cart-count.visible{opacity:1;transform:scale(1)}.navbar__toggle{cursor:pointer;width:44px;height:44px;z-index:calc(var(--z-fixed) + 1);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:none}.navbar__toggle span{background:var(--color-text);border-radius:var(--radius-pill);width:24px;height:2px;transition:all var(--transition-normal);display:block}.navbar--transparent .navbar__toggle span{background:var(--color-white)}.navbar.scrolled .navbar__toggle span{background:var(--color-text)}.navbar__toggle.open span:first-child{background:var(--color-text);transform:rotate(45deg)translate(5px,5px)}.navbar__toggle.open span:nth-child(2){opacity:0}.navbar__toggle.open span:nth-child(3){background:var(--color-text);transform:rotate(-45deg)translate(6px,-6px)}.navbar__mobile-menu{background:var(--color-white);z-index:var(--z-fixed);justify-content:center;align-items:center;gap:var(--space-xl);opacity:0;transition:opacity var(--transition-normal), transform var(--transition-normal);flex-direction:column;display:none;position:fixed;inset:0;transform:translateY(-20px)}.navbar__mobile-menu.open{opacity:1;display:flex;transform:translateY(0)}.navbar__mobile-menu .navbar__link{font-size:var(--text-2xl);color:var(--color-text);font-family:var(--font-heading)}@media (width<=768px){.navbar{height:var(--navbar-height-mobile);padding-inline:var(--space-md)}.navbar__links{display:none}.navbar__toggle{display:flex}}.navbar-spacer{height:var(--navbar-height)}@media (width<=768px){.navbar-spacer{height:var(--navbar-height-mobile)}}@supports (animation-timeline:scroll()){.navbar{transition:none!important}.navbar--transparent{animation:linear both morphNavbar;animation-timeline:scroll();animation-range:0 150px}.navbar--transparent .navbar__logo img{animation:linear both morphLogo;animation-timeline:scroll();animation-range:0 150px}.navbar--transparent .navbar__link,.navbar--transparent .navbar__logo-text{animation:linear both morphText;animation-timeline:scroll();animation-range:0 150px}.navbar--transparent .navbar__toggle span{animation:linear both morphBg;animation-timeline:scroll();animation-range:0 150px}.navbar--transparent .navbar__cart svg{animation:linear both morphStroke;animation-timeline:scroll();animation-range:0 150px}@keyframes morphNavbar{to{-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);padding-block:var(--space-sm);background-color:#fffffff2}}@keyframes morphLogo{to{width:110px}}@keyframes morphText{to{color:var(--color-text)}}@keyframes morphBg{to{background-color:var(--color-text)}}@keyframes morphStroke{to{stroke:var(--color-text)}}}.hero{background:var(--color-primary-dark);align-items:center;min-height:90vh;display:flex;position:relative;overflow:hidden}.hero--compact{min-height:50vh}.hero--page{min-height:40vh}.hero__bg{z-index:0;position:absolute;inset:0}.hero__bg img{object-fit:cover;opacity:.5;width:100%;height:100%}.hero__bg:after{content:"";background:linear-gradient(135deg,#1e4a52d9 0%,#2b6069b3 50%,#1e4a5299 100%);position:absolute;inset:0}.hero__content{z-index:1;max-width:650px;padding:var(--space-3xl) 0;position:relative}.hero__eyebrow{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-accent-light);margin-bottom:var(--space-sm)}.hero__title{font-family:var(--font-heading);font-size:var(--text-4xl);color:var(--color-white);margin-bottom:var(--space-lg);line-height:var(--leading-tight)}.hero__subtitle{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-secondary-light);margin-bottom:var(--space-2xl);line-height:var(--leading-relaxed);max-width:520px}.hero__actions{gap:var(--space-md);flex-wrap:wrap;display:flex}.hero__yarn-curve{z-index:1;color:var(--color-bg);position:absolute;bottom:-2px;left:0;right:0}.hero__yarn-curve svg{width:100%;height:auto;display:block}.hero__blob{z-index:0;opacity:.15;position:absolute}.hero__blob--1{background:var(--color-secondary);border-radius:var(--radius-organic);width:400px;height:400px;top:-100px;right:-100px}.hero__blob--2{background:var(--color-accent);border-radius:var(--radius-organic-alt);width:250px;height:250px;bottom:100px;right:15%}.hero--page .hero__title{font-size:var(--text-3xl);text-align:center}.hero--page .hero__content{text-align:center;max-width:800px;margin-inline:auto}@media (width<=768px){.hero{min-height:80vh}.hero--compact{min-height:40vh}.hero--page{min-height:30vh}.hero__content{padding:var(--space-xl) 0}.hero__actions{flex-direction:column;align-items:flex-start}.hero__blob--1,.hero__blob--2{display:none}}.product-card{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal);cursor:pointer;position:relative;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.product-card__image-wrap{aspect-ratio:1;background:var(--color-bg);position:relative;overflow:hidden}.product-card__image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.product-card:hover .product-card__image{transform:scale(1.05)}.product-card__badge{top:var(--space-md);left:var(--space-md);background:var(--color-accent);color:var(--color-white);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-pill);padding:.25rem .75rem;position:absolute}.product-card__overlay{background:var(--color-overlay);opacity:0;transition:opacity var(--transition-normal);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.product-card:hover .product-card__overlay{opacity:1}.product-card__body{padding:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex}.product-card__category{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.08em}.product-card__name{font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-text);line-height:var(--leading-tight)}.product-card__price-row{margin-top:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.product-card__price{font-family:var(--font-body);font-weight:var(--weight-bold);font-size:var(--text-lg);color:var(--color-primary-dark)}.product-card__btn{background:var(--color-accent);width:40px;height:40px;color:var(--color-white);cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.product-card__btn:hover{background:var(--color-accent-hover);transform:scale(1.1)}.product-card__btn svg{width:18px;height:18px}.category-card{border-radius:var(--radius-lg);aspect-ratio:4/3;cursor:pointer;position:relative;overflow:hidden}.category-card__image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.category-card:hover .category-card__image{transform:scale(1.08)}.category-card__overlay{padding:var(--space-xl);transition:background var(--transition-normal);background:linear-gradient(#0000 40%,#0d1b1eb3 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.category-card:hover .category-card__overlay{background:linear-gradient(#0d1b1e33 20%,#0d1b1ed9 100%)}.category-card__name{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-white)}.category-card__count{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-secondary-light);margin-top:var(--space-xs)}.gallery-masonry{columns:4;column-gap:var(--space-md)}.gallery-masonry__item{break-inside:avoid;margin-bottom:var(--space-md);border-radius:var(--radius-md);cursor:pointer;position:relative;overflow:hidden}.gallery-masonry__item img{width:100%;transition:transform var(--transition-slow);display:block}.gallery-masonry__item:hover img{transform:scale(1.05)}.gallery-masonry__caption{padding:var(--space-lg);color:var(--color-white);opacity:0;transition:opacity var(--transition-normal), transform var(--transition-normal);background:linear-gradient(#0000 0%,#0d1b1ecc 100%);position:absolute;bottom:0;left:0;right:0;transform:translateY(8px)}.gallery-masonry__item:hover .gallery-masonry__caption{opacity:1;transform:translateY(0)}.gallery-masonry__caption h4{font-family:var(--font-heading);font-size:var(--text-base);color:var(--color-white)}.gallery-masonry__caption p{font-size:var(--text-xs);color:var(--color-secondary-light);margin-top:var(--space-xs)}@media (width<=1024px){.gallery-masonry{columns:3}}@media (width<=768px){.gallery-masonry{columns:2}}@media (width<=480px){.gallery-masonry{columns:1}}.lightbox{z-index:var(--z-modal);opacity:0;visibility:hidden;transition:opacity var(--transition-normal), visibility var(--transition-normal);-webkit-backdrop-filter:blur(8px);background:#0d1b1eeb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox.open{opacity:1;visibility:visible}.lightbox__content{flex-direction:column;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox__image{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:75vh;box-shadow:var(--shadow-lg)}.lightbox__caption{margin-top:var(--space-lg);text-align:center;color:var(--color-white)}.lightbox__caption h3{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-white)}.lightbox__caption p{font-size:var(--text-sm);color:var(--color-secondary);margin-top:var(--space-xs)}.lightbox__close{width:44px;height:44px;color:var(--color-white);cursor:pointer;transition:background var(--transition-fast);background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:absolute;top:-50px;right:0}.lightbox__close:hover{background:var(--color-accent)}.lightbox__nav{width:50px;height:50px;color:var(--color-white);cursor:pointer;transition:background var(--transition-fast);background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav:hover{background:var(--color-accent)}.lightbox__nav--prev{left:-70px}.lightbox__nav--next{right:-70px}@media (width<=768px){.lightbox__nav--prev{left:var(--space-md)}.lightbox__nav--next{right:var(--space-md)}}.image-carousel{border-radius:var(--radius-lg);position:relative;overflow:hidden}.image-carousel__main{aspect-ratio:1;object-fit:cover;width:100%}.image-carousel__thumbs{gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.image-carousel__thumb{border-radius:var(--radius-sm);cursor:pointer;width:72px;height:72px;transition:border-color var(--transition-fast);opacity:.6;border:2px solid #0000;overflow:hidden}.image-carousel__thumb:hover,.image-carousel__thumb.active{border-color:var(--color-accent);opacity:1}.testimonials{background:var(--color-secondary-pale);position:relative;overflow:hidden}.testimonials__grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.testimonial-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-sm);gap:var(--space-md);transition:transform var(--transition-normal), box-shadow var(--transition-normal);flex-direction:column;display:flex}.testimonial-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.testimonial-card__stars{color:var(--color-accent);gap:2px;display:flex}.testimonial-card__stars svg{width:18px;height:18px;fill:var(--color-accent)}.testimonial-card__text{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed);flex-grow:1}.testimonial-card__author{align-items:center;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border);display:flex}.testimonial-card__avatar{background:var(--color-secondary);width:44px;height:44px;font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-primary);font-weight:var(--weight-bold);border-radius:50%;justify-content:center;align-items:center;display:flex}.testimonial-card__name{font-weight:var(--weight-bold);font-size:var(--text-sm);color:var(--color-text)}.testimonial-card__source{font-size:var(--text-xs);color:var(--color-text-light)}@media (width<=1024px){.testimonials__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=576px){.testimonials__grid{grid-template-columns:1fr}}.footer{background:var(--color-primary-dark);color:var(--color-secondary-light);padding-top:var(--space-4xl);position:relative;overflow:hidden}.footer__wave{color:var(--color-bg);line-height:0;position:absolute;top:-2px;left:0;right:0}.footer__wave svg{width:100%;height:auto;display:block}.footer__grid{gap:var(--space-3xl);padding-bottom:var(--space-3xl);border-bottom:1px solid #a8cbd126;grid-template-columns:2fr 1fr 1fr 1fr;display:grid}.footer__brand{gap:var(--space-md);flex-direction:column;display:flex}.footer__logo-text{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-white)}.footer__tagline{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-accent-light)}.footer__desc{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-secondary);max-width:320px}.footer__heading{font-family:var(--font-heading);font-size:var(--text-base);color:var(--color-white);margin-bottom:var(--space-lg)}.footer__link-list{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.footer__link{font-size:var(--text-sm);color:var(--color-secondary);transition:color var(--transition-fast)}.footer__link:hover{color:var(--color-accent)}.footer__social{gap:var(--space-md);margin-top:var(--space-md);display:flex}.footer__social-icon{width:40px;height:40px;transition:all var(--transition-fast);background:#a8cbd126;border-radius:50%;justify-content:center;align-items:center;display:flex}.footer__social-icon:hover{background:var(--color-accent);transform:translateY(-2px)}.footer__social-icon svg{width:18px;height:18px;fill:var(--color-secondary-light)}.footer__social-icon:hover svg{fill:var(--color-white)}.footer__bottom{padding-block:var(--space-lg);font-size:var(--text-xs);color:var(--color-text-light);justify-content:space-between;align-items:center;display:flex}.footer__bottom a{color:var(--color-secondary);transition:color var(--transition-fast)}.footer__bottom a:hover{color:var(--color-accent)}@media (width<=768px){.footer__grid{gap:var(--space-xl);grid-template-columns:1fr 1fr}.footer__brand{grid-column:span 2}.footer__bottom{gap:var(--space-sm);text-align:center;flex-direction:column}}@media (width<=576px){.footer__grid{grid-template-columns:1fr}.footer__brand{grid-column:span 1}}.newsletter{background:var(--color-primary);padding:var(--space-3xl) 0;text-align:center}.newsletter__title{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--color-white);margin-bottom:var(--space-sm)}.newsletter__subtitle{font-size:var(--text-base);color:var(--color-secondary-light);margin-bottom:var(--space-xl)}.newsletter__form{gap:var(--space-sm);max-width:480px;margin-inline:auto;display:flex}.newsletter__input{border-radius:var(--radius-pill);color:var(--color-white);font-size:var(--text-sm);transition:border-color var(--transition-fast);background:#ffffff1a;border:2px solid #a8cbd14d;outline:none;flex:1;padding:.875rem 1.25rem}.newsletter__input::placeholder{color:var(--color-secondary)}.newsletter__input:focus{border-color:var(--color-accent)}@media (width<=576px){.newsletter__form{flex-direction:column}}.cart-drawer{background:var(--color-white);width:440px;max-width:100%;z-index:var(--z-modal);transition:transform var(--transition-normal);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.cart-drawer.open{transform:translate(0)}.cart-overlay{background:var(--color-overlay);z-index:calc(var(--z-modal) - 1);opacity:0;visibility:hidden;transition:opacity var(--transition-normal), visibility var(--transition-normal);position:fixed;inset:0}.cart-overlay.open{opacity:1;visibility:visible}.cart-drawer__header{padding:var(--space-lg);border-bottom:1.5px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.cart-drawer__header h3{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text);margin:0}.cart-drawer__close{cursor:pointer;color:var(--color-text-secondary);transition:color var(--transition-fast);padding:var(--space-xs);background:0 0;border:none;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:flex}.cart-drawer__close:hover{color:var(--color-accent)}.cart-drawer__items{padding:var(--space-lg);gap:var(--space-lg);flex-direction:column;flex-grow:1;display:flex;overflow-y:auto}.cart-empty-state{text-align:center;height:100%;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.cart-empty-state__icon{margin-bottom:var(--space-md);font-size:3rem;animation:3s ease-in-out infinite float}.cart-empty-state p{margin-bottom:var(--space-lg)}.cart-item{gap:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border);align-items:center;display:flex}.cart-item__image{border-radius:var(--radius-md);object-fit:cover;background:var(--color-surface);width:80px;height:80px;box-shadow:var(--shadow-sm);flex-shrink:0}.cart-item__details{gap:var(--space-xs);flex-direction:column;flex-grow:1;display:flex}.cart-item__name{font-family:var(--font-heading);font-size:var(--text-md);color:var(--color-text);line-height:var(--leading-tight)}.cart-item__meta{font-size:var(--text-xs);color:var(--color-text-secondary);text-transform:capitalize}.cart-item__price{font-weight:var(--weight-bold);color:var(--color-primary-dark);font-size:var(--text-sm)}.cart-item__actions-row{margin-top:var(--space-xs);justify-content:space-between;align-items:center;display:flex}.cart-item__qty-controls{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-white);align-items:center;height:28px;display:flex;overflow:hidden}.cart-item__qty-btn{cursor:pointer;width:28px;height:100%;color:var(--color-text);transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.cart-item__qty-btn:hover{background:var(--color-surface)}.cart-item__qty-input{text-align:center;width:24px;font-size:.85rem;font-weight:var(--weight-bold);color:var(--color-text);background:0 0;border:none;padding:0}.cart-item__remove-btn{color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--weight-bold);cursor:pointer;transition:color var(--transition-fast);padding:var(--space-xs) 0;background:0 0;border:none}.cart-item__remove-btn:hover{color:var(--color-accent-hover)}.cart-drawer__footer{padding:var(--space-lg);border-top:1.5px solid var(--color-border);background:var(--color-surface)}.cart-drawer__subtotal{font-weight:var(--weight-bold);font-size:var(--text-lg);color:var(--color-text);margin-bottom:var(--space-xs);justify-content:space-between;display:flex}.cart-drawer__shipping-note{font-size:var(--text-xs);color:var(--color-text-secondary);margin-bottom:var(--space-md);line-height:var(--leading-tight)}.checkout-modal{z-index:calc(var(--z-toast) + 10);opacity:0;visibility:hidden;transition:opacity var(--transition-normal), visibility var(--transition-normal);background:#0d1b1ecc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.checkout-modal.open{opacity:1;visibility:visible}.checkout-modal__card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-3xl);text-align:center;width:90%;max-width:450px;box-shadow:var(--shadow-lg);align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.checkout-modal__spinner{border:4px solid var(--color-secondary-light);border-top-color:var(--color-accent);width:60px;height:60px;margin-bottom:var(--space-md);border-radius:50%;animation:1s linear infinite spin}.checkout-modal__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text)}.checkout-modal__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-normal)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=480px){.cart-drawer{width:100%}}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(24px)}.reveal-stagger.visible>:first-child{transition-delay:0s}.reveal-stagger.visible>:nth-child(2){transition-delay:.1s}.reveal-stagger.visible>:nth-child(3){transition-delay:.2s}.reveal-stagger.visible>:nth-child(4){transition-delay:.3s}.reveal-stagger.visible>:nth-child(5){transition-delay:.4s}.reveal-stagger.visible>:nth-child(6){transition-delay:.5s}.reveal-stagger.visible>:nth-child(7){transition-delay:.6s}.reveal-stagger.visible>:nth-child(8){transition-delay:.7s}.reveal-stagger.visible>*{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transition:opacity .6s,transform .6s;transform:translate(-40px)}.reveal-right{opacity:0;transition:opacity .6s,transform .6s;transform:translate(40px)}.reveal-left.visible,.reveal-right.visible{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transition:opacity .5s,transform .5s;transform:scale(.9)}.reveal-scale.visible{opacity:1;transform:scale(1)}.skeleton{background:linear-gradient(90deg, var(--color-secondary-light) 25%, var(--color-secondary-pale) 50%, var(--color-secondary-light) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.yarn-draw{stroke-dasharray:1000;stroke-dashoffset:1000px;animation:2s forwards yarn-draw-in}@keyframes yarn-draw-in{to{stroke-dashoffset:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.float{animation:4s ease-in-out infinite float}.float-slow{animation:6s ease-in-out infinite float}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.pulse{animation:.4s pulse}.spin{animation:1s linear infinite spin}.texture-grain:before{content:"";opacity:.03;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:absolute;inset:0}@supports (animation-timeline:scroll()){.scroll-animate{animation:linear both scrollFadeSlide;animation-timeline:view();animation-range:entry}@keyframes scrollFadeSlide{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.scroll-animate-left{animation:linear both scrollSlideLeft;animation-timeline:view();animation-range:entry entry 80%}@keyframes scrollSlideLeft{0%{opacity:0;transform:translate(-80px)}to{opacity:1;transform:translate(0)}}.scroll-animate-right{animation:linear both scrollSlideRight;animation-timeline:view();animation-range:entry entry 80%}@keyframes scrollSlideRight{0%{opacity:0;transform:translate(80px)}to{opacity:1;transform:translate(0)}}.scroll-animate-scale{animation:linear both scrollScaleUp;animation-timeline:view();animation-range:entry entry 90%}@keyframes scrollScaleUp{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.scroll-parallax-bg{animation:linear both scrollParallax;animation-timeline:scroll();animation-range:0% 50%}@keyframes scrollParallax{0%{transform:translateY(0)}to{transform:translateY(15%)}}}.sticky-split{gap:var(--space-3xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.sticky-split__pinned{top:calc(var(--navbar-height) + var(--space-xl));position:sticky}@media (width<=768px){.sticky-split{grid-template-columns:1fr}.sticky-split__pinned{position:static}}.featured-products{background:var(--color-white)}.story-teaser{background:var(--color-bg)}.story-teaser__image{border-radius:var(--radius-organic);box-shadow:var(--shadow-lg);overflow:hidden}.story-teaser__image img{object-fit:cover;aspect-ratio:4/5;width:100%;height:100%}.story-teaser__eyebrow{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-accent);margin-bottom:var(--space-sm)}.story-teaser__text{color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:var(--leading-relaxed)}.categories{background:var(--color-bg-warm)}.categories__grid{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.categories__grid .category-card:first-child{grid-row:span 2}@media (width<=768px){.categories__grid{grid-template-columns:1fr 1fr}.categories__grid .category-card:first-child{grid-area:span 1/span 2}}@media (width<=480px){.categories__grid{grid-template-columns:1fr}.categories__grid .category-card:first-child{grid-column:span 1}}.shop-layout{gap:var(--space-2xl);grid-template-columns:260px 1fr;align-items:start;display:grid}.shop-sidebar{top:calc(var(--navbar-height) + var(--space-xl));background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-xl);box-shadow:var(--shadow-sm);position:sticky}.shop-sidebar__heading{font-family:var(--font-heading);font-size:var(--text-lg);margin-bottom:var(--space-lg);color:var(--color-text)}.shop-filter-group{margin-bottom:var(--space-xl)}.shop-filter-group__title{font-weight:var(--weight-bold);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:var(--space-md)}.shop-filter-group__options{gap:var(--space-sm);flex-direction:column;display:flex}.shop-filter-group label{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text);cursor:pointer;display:flex}.shop-filter-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.shop-search{margin-bottom:var(--space-xl);position:relative}.shop-search__input{border:1.5px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-white);width:100%;font-size:var(--text-sm);color:var(--color-text);transition:border-color var(--transition-fast);outline:none;padding:.75rem 1rem .75rem 2.75rem}.shop-search__input:focus{border-color:var(--color-primary)}.shop-search__icon{width:18px;height:18px;color:var(--color-text-light);position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.shop-controls{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.shop-controls__count{font-size:var(--text-sm);color:var(--color-text-secondary)}.shop-controls__sort{align-items:center;gap:var(--space-sm);display:flex}.shop-controls__sort select{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);font-size:var(--text-sm);color:var(--color-text);cursor:pointer;outline:none;padding:.5rem 1rem}.shop-grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.shop-filter-toggle{display:none}.price-range{width:100%;margin-top:var(--space-sm)}.price-range input[type=range]{width:100%;accent-color:var(--color-accent)}.price-range__labels{font-size:var(--text-xs);color:var(--color-text-light);margin-top:var(--space-xs);justify-content:space-between;display:flex}.shop-empty{text-align:center;padding:var(--space-4xl) var(--space-xl);grid-column:1/-1}.shop-empty__icon{margin-bottom:var(--space-lg);font-size:3rem}.shop-empty__title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-primary);margin-bottom:var(--space-sm)}.shop-empty__text{color:var(--color-text-secondary)}@media (width<=1024px){.shop-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.shop-layout{grid-template-columns:1fr}.shop-sidebar{width:300px;z-index:var(--z-modal);transition:transform var(--transition-normal);padding-top:var(--space-3xl);border-radius:0;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.shop-sidebar.open{transform:translate(0)}.shop-filter-toggle{display:flex}.shop-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.shop-grid{grid-template-columns:1fr}}.shop-overlay{background:var(--color-overlay);z-index:calc(var(--z-modal) - 1);display:none;position:fixed;inset:0}.shop-overlay.open{display:block}.portfolio-filters{justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-2xl);flex-wrap:wrap;display:flex}.portfolio-process{background:var(--color-bg-warm)}.portfolio-process__grid{gap:var(--space-xl);grid-template-columns:repeat(4,1fr);display:grid}.process-step{text-align:center}.process-step__icon{width:80px;height:80px;margin-inline:auto;margin-bottom:var(--space-lg);background:var(--color-white);box-shadow:var(--shadow-sm);color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.process-step__icon svg{width:32px;height:32px}.process-step__number{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-accent);margin-bottom:var(--space-xs)}.process-step__title{font-family:var(--font-heading);font-size:var(--text-lg);margin-bottom:var(--space-sm)}.process-step__desc{font-size:var(--text-sm);color:var(--color-text-secondary)}@media (width<=768px){.portfolio-process__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.portfolio-process__grid{grid-template-columns:1fr}.portfolio-filters{padding-bottom:var(--space-sm);-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.portfolio-filters .pill{flex-shrink:0}}.about-story{background:var(--color-white)}.about-story__image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.about-story__image img{aspect-ratio:3/4;object-fit:cover;width:100%}.about-story__content{justify-content:center;gap:var(--space-lg);flex-direction:column;display:flex}.about-quote{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-primary);padding-left:var(--space-xl);position:relative}.about-quote:before{content:"\"";font-family:var(--font-heading);font-size:var(--text-5xl);color:var(--color-accent);opacity:.5;position:absolute;top:-.3em;left:-.1em}.values{background:var(--color-bg)}.values__grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.value-card{text-align:center;padding:var(--space-2xl) var(--space-xl);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal)}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.value-card__icon{width:64px;height:64px;margin-inline:auto;margin-bottom:var(--space-lg);background:var(--color-secondary-pale);color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.value-card__icon svg{width:28px;height:28px}.value-card__title{font-family:var(--font-heading);font-size:var(--text-xl);margin-bottom:var(--space-sm)}.value-card__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.faq{background:var(--color-white)}.faq__list{gap:var(--space-sm);flex-direction:column;max-width:700px;margin-inline:auto;display:flex}.faq__item{border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast);overflow:hidden}.faq__item.open{border-color:var(--color-primary)}.faq__question{width:100%;padding:var(--space-lg) var(--space-xl);font-family:var(--font-body);font-weight:var(--weight-bold);font-size:var(--text-base);color:var(--color-text);background:var(--color-white);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;display:flex}.faq__question:hover{color:var(--color-primary)}.faq__icon{width:24px;height:24px;transition:transform var(--transition-normal);color:var(--color-accent);flex-shrink:0}.faq__item.open .faq__icon{transform:rotate(180deg)}.faq__answer{max-height:0;transition:max-height var(--transition-normal);overflow:hidden}.faq__answer-inner{padding:0 var(--space-xl) var(--space-lg);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.contact-form{gap:var(--space-lg);flex-direction:column;max-width:600px;margin-inline:auto;display:flex}.form-group{gap:var(--space-xs);flex-direction:column;display:flex}.form-group label{font-weight:var(--weight-bold);font-size:var(--text-sm);color:var(--color-text)}.form-group input,.form-group textarea{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);font-size:var(--text-base);color:var(--color-text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:.875rem 1rem}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2b60691a}.form-row{gap:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}@media (width<=576px){.form-row,.values__grid{grid-template-columns:1fr}}.product-detail-layout{gap:var(--space-3xl);grid-template-columns:1.2fr 1fr;align-items:start;display:grid}.product-detail__gallery{top:calc(var(--navbar-height) + var(--space-xl));position:sticky}.image-carousel__main-wrapper{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);aspect-ratio:1;position:relative;overflow:hidden}.image-carousel__main{object-fit:cover;width:100%;height:100%;transition:opacity .3s}.image-carousel__thumbs{gap:var(--space-md);margin-top:var(--space-md);padding-bottom:var(--space-xs);display:flex;overflow-x:auto}.image-carousel__thumb{border-radius:var(--radius-md);cursor:pointer;background:var(--color-white);width:80px;height:80px;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);opacity:.7;border:2px solid #0000;flex-shrink:0;overflow:hidden}.image-carousel__thumb img{object-fit:cover;width:100%;height:100%}.image-carousel__thumb:hover,.image-carousel__thumb.active{border-color:var(--color-accent);opacity:1;box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-detail__info{gap:var(--space-md);flex-direction:column;display:flex}.product-detail__category{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);margin-bottom:calc(-1 * var(--space-xs))}.product-detail__title{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-text);line-height:var(--leading-tight)}.product-detail__price{font-family:var(--font-body);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-primary-dark)}.product-detail__description{font-family:var(--font-body);color:var(--color-text-secondary);line-height:var(--leading-relaxed);font-size:var(--text-md)}.product-detail__options-title{font-weight:var(--weight-bold);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);margin-bottom:var(--space-sm)}.color-swatch-list{gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.color-swatch{cursor:pointer;width:36px;height:36px;box-shadow:inset 0 0 0 2px var(--color-white);outline:1.5px solid var(--color-border);transition:all var(--transition-fast);border:2px solid #0000;border-radius:50%}.color-swatch:hover,.color-swatch.active{outline-color:var(--color-accent);outline-width:2.5px;transform:scale(1.1)}.product-detail__purchase-row{gap:var(--space-md);margin-block:var(--space-lg);flex-wrap:wrap;align-items:center;display:flex}.quantity-selector{border:1.5px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-white);align-items:center;height:48px;display:flex;overflow:hidden}.quantity-btn{cursor:pointer;width:44px;height:100%;color:var(--color-text);transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.quantity-btn:hover{background:var(--color-surface)}.quantity-input{text-align:center;width:44px;font-weight:var(--weight-bold);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text);background:0 0;border:none}.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-input[type=number]{-moz-appearance:textfield}.product-detail__actions{gap:var(--space-sm);flex-direction:column;flex-grow:1;min-width:200px;display:flex}.product-detail__actions .btn{justify-content:center;width:100%}.specs-list{gap:var(--space-md);border-top:1.5px solid var(--color-border);border-bottom:1.5px solid var(--color-border);padding-block:var(--space-lg);margin-block:var(--space-lg);grid-template-columns:repeat(2,1fr);list-style:none;display:grid}.specs-list li{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text);display:flex}.specs-list svg{width:18px;height:18px;color:var(--color-accent);flex-shrink:0}.details-accordion{margin-top:var(--space-md)}.details-accordion details{border-bottom:1.5px solid var(--color-border);padding-block:var(--space-md)}.details-accordion summary{font-family:var(--font-body);font-weight:var(--weight-bold);font-size:var(--text-sm);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;list-style:none;display:flex}.details-accordion summary::-webkit-details-marker{display:none}.details-accordion summary:after{content:"＋";font-size:var(--text-md);color:var(--color-primary);font-weight:var(--weight-bold);transition:transform var(--transition-fast)}.details-accordion details[open] summary:after{content:"－"}.details-accordion__content{padding-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.details-accordion__content ul{padding-left:var(--space-lg);margin-top:var(--space-xs);gap:var(--space-xs);flex-direction:column;display:flex}@media (width<=1024px){.product-detail-layout{gap:var(--space-2xl);grid-template-columns:1fr}.product-detail__gallery{position:static}.image-carousel__main-wrapper{max-width:600px;margin-inline:auto}.image-carousel__thumbs{justify-content:center}}@media (width<=480px){.product-detail__purchase-row{flex-direction:column;align-items:stretch}.quantity-selector{justify-content:space-between}.specs-list{grid-template-columns:1fr}}
