@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=DM+Mono:wght@400;500&display=swap";:root{--forest: #1B2E28;--forest-lt: #2a4a40;--copper: #C97330;--copper-lt: #d98a4e;--parchment: #D4CBBC;--parchment-lt: #E8E2D8;--parchment-dk: #BFB6A6;--red: #EE2F2E;--cream: #F5F0E8;--white: #FFFFFF;--ink: #1B2E28;--muted: #7a9a94;--muted-dk: #4a6058;--surface: #faf8f4;--surface-dk:#f0ebe0;font-family:Libre Baskerville,Georgia,serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--forest);background-color:var(--cream);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--cream)}a{color:var(--copper);text-decoration:none;font-weight:400}a:hover{color:var(--forest)}h1,h2,h3,h4,h5,h6{margin:0}button{border-radius:0;border:none;font-family:DM Mono,monospace;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:all .2s}.nav-bar{background:var(--forest);border-bottom:2px solid var(--copper);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;height:68px;position:sticky;top:0;z-index:100;gap:1rem}.nav-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;flex-shrink:0}.nav-brand__logo{height:40px;width:auto}.nav-brand__wordmark{font-family:Bebas Neue,sans-serif;font-size:1.3rem;letter-spacing:.12em;color:var(--parchment);line-height:1}.nav-links{display:flex;align-items:center;gap:0}.nav-link{font-family:DM Mono,monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#d4cbbc8c;text-decoration:none;padding:.55rem 1rem;transition:color .2s;position:relative;white-space:nowrap}.nav-link:hover{color:var(--parchment)}.nav-link.active{color:var(--copper)}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--copper)}.nav-link--cart{display:flex;align-items:center;gap:.4rem;background:#c973301f;border:1px solid rgba(201,115,48,.3);margin-left:.5rem;padding:.45rem .9rem;transition:background .2s,border-color .2s,color .2s}.nav-link--cart:hover{background:#c9733038;border-color:var(--copper);color:var(--copper)}.nav-link--cart.active{background:var(--copper);border-color:var(--copper);color:var(--forest)}.nav-link--cart.active:after{display:none}.cart-badge{background:var(--red);color:var(--white);font-size:.62rem;font-weight:700;padding:.1rem .38rem;border-radius:8px;min-width:17px;text-align:center;line-height:1.4}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-hamburger span{width:22px;height:2px;background:var(--parchment);display:block;transition:all .2s}@media(max-width:680px){.nav-hamburger{display:flex}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--forest);flex-direction:column;padding:.5rem 0 1rem;border-bottom:2px solid var(--copper);gap:0;align-items:stretch}.nav-links.open{display:flex}.nav-link{padding:.85rem 5vw}.nav-link.active:after{display:none}.nav-link--cart{margin:.5rem 5vw 0}.nav-brand__wordmark{display:none}}.footer{background:var(--forest);border-top:2px solid var(--copper);padding:3rem 5vw 2rem}.footer__inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:2rem 4rem;align-items:start}.footer__brand{display:flex;align-items:center;gap:1rem}.footer__logo{height:52px;width:auto}.footer__name{font-family:Bebas Neue,sans-serif;font-size:1.1rem;letter-spacing:.12em;color:var(--parchment);margin:0 0 .15rem}.footer__tagline{font-family:Libre Baskerville,serif;font-style:italic;font-size:.8rem;color:#d4cbbc73;margin:0}.footer__links{display:flex;flex-direction:column;gap:.35rem;align-items:flex-end}.footer__link{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#d4cbbc66;text-decoration:none;transition:color .2s}.footer__link:hover{color:var(--copper)}.footer__copy{grid-column:1 / -1;font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.1em;color:#d4cbbc33;margin:0;border-top:1px solid rgba(212,203,188,.08);padding-top:1.5rem}.muted{color:var(--muted);font-size:.85rem}@media(max-width:600px){.footer__inner{grid-template-columns:1fr}.footer__links{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:.5rem 1rem}}#root{max-width:100%;margin:0;padding:0;text-align:left}.app{min-height:100vh;display:flex;flex-direction:column;width:100%}.app-content{flex:1;width:100%}.home{color:var(--forest)}.home-hero{position:relative;min-height:90vh;background:var(--forest);display:flex;align-items:center;overflow:hidden;padding:0 5vw;gap:4rem}.home-hero:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");background-size:256px;pointer-events:none;z-index:1}.home-hero:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--copper)}.home-hero__content{flex:1;max-width:660px;z-index:2;animation:heroIn .8s cubic-bezier(.16,1,.3,1) both}@keyframes heroIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.home-hero__eyebrow{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--copper);margin:0 0 1.2rem;display:flex;align-items:center;gap:.75rem}.home-hero__eyebrow:before{content:"";display:inline-block;width:24px;height:1px;background:var(--copper)}.home-hero__headline{font-family:Bebas Neue,sans-serif;font-size:clamp(3.5rem,8vw,7rem);font-weight:400;line-height:.95;color:var(--parchment);margin:0 0 .5rem;letter-spacing:.04em}.home-hero__word{color:var(--copper);display:inline-block;transition:opacity .35s ease,transform .35s ease;min-width:5ch}.home-hero__word.fade-out{opacity:0;transform:translateY(10px)}.home-hero__word.fade-in{animation:wordIn .4s cubic-bezier(.16,1,.3,1)}@keyframes wordIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.home-hero__sub{font-family:Libre Baskerville,serif;font-style:italic;font-size:1rem;color:#d4cbbc99;line-height:1.7;margin:1.4rem 0 2.4rem;max-width:460px}.home-hero__actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.home-hero__art{flex:0 0 340px;height:340px;position:relative;display:flex;align-items:center;justify-content:center;z-index:2;animation:heroIn 1s .15s cubic-bezier(.16,1,.3,1) both}.hero-logo-img{width:260px;height:260px;object-fit:contain;filter:brightness(0) saturate(100%) invert(83%) sepia(10%) saturate(300%) hue-rotate(10deg) brightness(95%);opacity:.18;animation:logoFloat 7s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-rings{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.hero-ring{position:absolute;border-radius:50%;border:1px solid rgba(201,115,48,calc(.18 - var(--i) * .012));width:calc(120px + var(--i) * 28px);height:calc(120px + var(--i) * 28px)}.hero-icon-wrap{position:relative;z-index:3;display:flex;align-items:center;justify-content:center}.hero-icon{width:100px;height:100px;filter:brightness(0) invert(1);opacity:.9;animation:logoFloat 7s ease-in-out infinite}@media(max-width:768px){.home-hero{flex-direction:column;padding:4.5rem 5vw 3rem;min-height:auto}.home-hero__art{flex:none;height:180px}.hero-icon{width:70px;height:70px}.hero-ring{display:none}}.btn-primary{display:inline-block;padding:.85rem 2rem;background:var(--copper);color:var(--forest);font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;text-decoration:none;border:2px solid var(--copper);cursor:pointer;transition:background .2s,color .2s,transform .15s;white-space:nowrap}.btn-primary:hover{background:var(--forest);color:var(--copper);transform:translateY(-1px)}.btn-ghost{display:inline-block;padding:.85rem 2rem;background:transparent;color:#d4cbbcb3;font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid rgba(212,203,188,.25);cursor:pointer;transition:all .2s;white-space:nowrap}.btn-ghost:hover{border-color:var(--parchment);color:var(--parchment)}.btn-ghost-dark{display:inline-block;padding:.85rem 2rem;background:transparent;color:var(--forest);font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid var(--parchment-dk);cursor:pointer;transition:all .2s;white-space:nowrap}.btn-ghost-dark:hover{background:var(--forest);color:var(--parchment);border-color:var(--forest)}.home-process{background:var(--parchment);padding:5rem 5vw}.home-process__inner{max-width:1100px;margin:0 auto;display:flex;align-items:flex-start;gap:0;flex-wrap:wrap;justify-content:stretch}.process-step{flex:1;min-width:180px;padding:0 2rem 0 0;border-right:1px solid var(--parchment-dk);margin-right:2rem}.process-step:last-child{border-right:none;padding-right:0;margin-right:0}.process-num{font-family:Bebas Neue,sans-serif;font-size:3rem;line-height:1;color:var(--copper);opacity:.5;display:block;margin-bottom:.5rem}.process-step h3{font-family:Bebas Neue,sans-serif;font-size:1.3rem;letter-spacing:.06em;color:var(--forest);margin:0 0 .5rem}.process-step p{font-family:Libre Baskerville,serif;font-size:.85rem;color:var(--muted-dk);line-height:1.65;margin:0}.process-arrow{display:none}@media(max-width:720px){.home-process__inner{flex-direction:column;gap:2rem}.process-step{border-right:none;border-bottom:1px solid var(--parchment-dk);padding:0 0 2rem;margin:0}.process-step:last-child{border-bottom:none;padding-bottom:0}}.home-featured{background:var(--forest);padding:5rem 5vw}.home-section-title{font-family:Bebas Neue,sans-serif;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:.06em;color:var(--parchment);margin:0 0 2.5rem;display:flex;align-items:center;gap:1rem}.home-section-title:after{content:"";flex:1;height:1px;background:#d4cbbc26;max-width:200px}.home-featured__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:5px;max-width:1100px;margin:0 0 2.5rem}.home-featured__card{background:var(--card-bg, #1B2E28);color:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:.6rem;transition:background .3s;position:relative;overflow:hidden}.home-featured__card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--copper);transform:scaleX(0);transition:transform .25s;transform-origin:left}.home-featured__card:hover:before{transform:scaleX(1)}.home-featured__card-art{font-size:3rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.home-featured__card-name{font-family:Bebas Neue,sans-serif;font-size:1.25rem;letter-spacing:.06em;color:var(--card-fg, var(--parchment))}.home-featured__card-cta{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;opacity:.45;transition:opacity .2s}.home-featured__card:hover .home-featured__card-cta{opacity:.85;color:var(--copper)}.home-featured__more{margin-top:.5rem}.home-band{background:var(--copper);padding:3rem 5vw;text-align:center}.home-band__text{font-family:Bebas Neue,sans-serif;font-size:clamp(1.4rem,4vw,2.4rem);letter-spacing:.08em;color:var(--forest);max-width:780px;margin:0 auto;line-height:1.2}.home-invoice{background:var(--parchment);padding:3.5rem 5vw;border-top:1px solid var(--parchment-dk)}.home-invoice__inner{max-width:800px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.home-invoice__inner h3{font-family:Bebas Neue,sans-serif;font-size:1.5rem;letter-spacing:.06em;margin:0 0 .3rem;color:var(--forest)}.home-invoice__inner p{font-family:Libre Baskerville,serif;color:var(--muted);margin:0;font-size:.88rem;font-style:italic}.muted{color:var(--muted);font-size:.9rem;margin-top:1rem}.button{display:inline-block;padding:.75rem 1.5rem;background-color:var(--copper);color:var(--forest);text-decoration:none;font-weight:700;transition:opacity .2s}.button:hover{opacity:.85}.home-featured__card{text-decoration:none;display:block;position:relative;overflow:hidden;background:#fff;aspect-ratio:3/4;transition:transform .25s,box-shadow .25s}.home-featured__card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #00000040}.home-featured__card-img{width:100%;height:100%;object-fit:contain;padding:1rem;transition:transform .35s ease}.home-featured__card:hover .home-featured__card-img{transform:scale(1.04)}.home-featured__card-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#1b2e28eb,#1b2e2800);padding:2rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.25rem}.home-featured__card-series{font-family:DM Mono,monospace;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--copper)}.home-featured__card-name{font-family:Bebas Neue,sans-serif;font-size:1.4rem;letter-spacing:.06em;color:var(--parchment);line-height:1}.home-featured__card-cta{font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:#d4cbbc8c;transition:color .2s}.home-featured__card:hover .home-featured__card-cta{color:var(--copper)}.home-featured__more{margin-top:1rem}.catalog{background:var(--cream);min-height:100vh}.catalog-header{background:var(--forest);padding:3.5rem 5vw 2.5rem;border-bottom:2px solid var(--copper)}.catalog-title{font-family:Bebas Neue,sans-serif;font-size:clamp(2.8rem,6vw,5rem);letter-spacing:.06em;color:var(--parchment);margin:0 0 .5rem}.catalog-subtitle{font-family:Libre Baskerville,serif;font-style:italic;font-size:.92rem;color:#d4cbbc80;margin:0}.catalog-body{display:flex;align-items:flex-start;position:relative}.catalog-sidebar{width:240px;flex-shrink:0;background:var(--forest);min-height:calc(100vh - 68px);padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem;position:sticky;top:68px;max-height:calc(100vh - 68px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(201,115,48,.3) transparent}.catalog-sidebar::-webkit-scrollbar{width:3px}.catalog-sidebar::-webkit-scrollbar-thumb{background:#c973304d}.sidebar-close{display:none}.sidebar-section{display:flex;flex-direction:column;gap:.6rem}.sidebar-label{font-family:DM Mono,monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:#c97330b3}.catalog-search{width:100%;background:#d4cbbc12;border:1px solid rgba(212,203,188,.2);border-bottom:1px solid var(--copper);color:var(--parchment);font-family:DM Mono,monospace;font-size:.82rem;padding:.55rem .75rem;outline:none;transition:border-color .2s,background .2s}.catalog-search::placeholder{color:#d4cbbc4d}.catalog-search:focus{background:#d4cbbc1a;border-bottom-color:var(--copper)}.sidebar-chips{display:flex;flex-direction:column;gap:.3rem}.filter-chip{background:transparent;border:1px solid rgba(212,203,188,.15);color:#d4cbbc80;font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.06em;padding:.4rem .75rem;cursor:pointer;transition:all .15s;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-chip:hover{border-color:var(--copper);color:var(--copper)}.filter-chip.active{background:var(--copper);border-color:var(--copper);color:var(--forest)}.filter-clear{background:none;border:none;color:#ee2f2ea6;font-family:DM Mono,monospace;font-size:.68rem;cursor:pointer;padding:0;letter-spacing:.1em;text-transform:uppercase;transition:color .15s;text-align:left;margin-top:auto}.filter-clear:hover{color:var(--red)}.catalog-main{flex:1;min-width:0;padding-bottom:6rem}.catalog-toolbar{display:none;align-items:center;justify-content:space-between;padding:1rem 5vw;border-bottom:1px solid var(--parchment-dk);background:var(--cream);position:sticky;top:68px;z-index:9}.filter-toggle-btn{display:flex;align-items:center;gap:.6rem;background:var(--forest);color:var(--parchment);font-family:DM Mono,monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.55rem 1rem;border:none;cursor:pointer;transition:background .2s}.filter-toggle-btn:hover{background:var(--forest-lt)}.filter-toggle-btn.has-filters{border-bottom:2px solid var(--copper)}.filter-toggle-btn__icon{display:flex;flex-direction:column;gap:3px}.filter-toggle-btn__icon span{display:block;width:14px;height:1.5px;background:var(--parchment)}.filter-toggle-btn__badge{background:var(--copper);color:var(--forest);font-size:.6rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.catalog-result-count{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;padding:2.5rem}.catalog-card{background:var(--forest);text-decoration:none;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s;border:1px solid rgba(212,203,188,1);overflow:hidden}.catalog-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .25s}.catalog-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px #0000004d}.catalog-card:hover:after{transform:scaleX(1)}.catalog-card__img-wrap{position:relative;background:var(--cream);aspect-ratio:3/4;overflow:hidden;display:flex;align-items:center;justify-content:center}.catalog-card__img{width:100%;height:100%;object-fit:contain;transition:transform .35s ease;padding:2rem}.catalog-card:hover .catalog-card__img{transform:scale(1.03)}.catalog-card__series{position:absolute;top:.75rem;left:.75rem;background:var(--forest);color:var(--copper);font-family:DM Mono,monospace;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .6rem}.catalog-card__art{display:none}.catalog-card__body{padding:0 1.5rem 1.5rem;flex:1;display:flex;flex-direction:column;gap:.45rem}.catalog-card__name{font-family:Bebas Neue,sans-serif;font-size:1.5rem;letter-spacing:.05em;color:var(--parchment);margin:0}.catalog-card__tagline{font-family:Libre Baskerville,serif;font-style:italic;font-size:.82rem;color:var(--copper);margin:0}.catalog-card__swatches{display:flex;align-items:center;gap:.3rem}.catalog-swatch{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15);display:inline-block;flex-shrink:0}.catalog-swatch-more{font-family:DM Mono,monospace;font-size:.65rem;color:#d4cbbc66}.catalog-card__garments{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.2rem}.catalog-garment-tag{font-family:DM Mono,monospace;font-size:.63rem;letter-spacing:.04em;background:#d4cbbc14;border:1px solid rgba(212,203,188,.12);color:#d4cbbc99;padding:.18rem .45rem}.catalog-card__cta{font-family:DM Mono,monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.85rem 1.5rem;border-top:1px solid rgba(212,203,188,.08);color:#d4cbbc73;transition:color .2s;margin-top:auto}.catalog-card:hover .catalog-card__cta{color:var(--copper)}.catalog-empty{text-align:center;padding:6rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.catalog-empty p{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.06em;color:var(--muted)}@media(max-width:860px){.catalog-toolbar{display:flex}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:49;animation:fadeIn .2s ease}.design-viewer{position:relative!important;top:0!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.catalog-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-height:100vh;z-index:50;padding-top:1.5rem;transform:translate(-100%);transition:transform .28s cubic-bezier(.16,1,.3,1);box-shadow:none}.catalog-sidebar.open{transform:translate(0);box-shadow:8px 0 40px #00000059}.sidebar-close{display:flex;align-self:flex-end;background:none;border:none;color:#d4cbbc80;font-size:1rem;cursor:pointer;padding:0 0 .5rem;line-height:1;transition:color .15s;text-transform:none;letter-spacing:0}.sidebar-close:hover{color:var(--parchment)}.catalog-grid{padding:1.5rem 5vw;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media(max-width:480px){.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;padding:1rem 4vw}}.design-page{background:var(--cream);min-height:100vh;padding-bottom:6rem}.design-not-found{padding:6rem 5vw;text-align:center}.design-not-found h2{font-family:Bebas Neue,sans-serif;font-size:2rem;letter-spacing:.05em}.design-not-found a{font-family:DM Mono,monospace;color:var(--copper)}.design-breadcrumb{padding:1rem 5vw;font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#d4cbbc73;background:var(--forest);border-bottom:1px solid rgba(212,203,188,.08);display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.design-breadcrumb a{color:var(--copper);text-decoration:none}.design-breadcrumb a:hover{color:var(--parchment)}.design-breadcrumb span{opacity:.4}.design-layout{display:grid;grid-template-columns:1fr 1fr;min-height:80vh;align-items:start}@media(max-width:860px){.design-layout{grid-template-columns:1fr}}.design-viewer{background:#fff;border-right:1px solid var(--parchment-dk);display:flex;flex-direction:column;position:sticky;top:68px;max-height:calc(100vh - 68px)}.design-viewer__stage{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:1.5rem;min-height:400px;overflow:hidden}.design-viewer__img{max-width:100%;max-height:600px;object-fit:contain;animation:imgFadeIn .25s ease}@keyframes imgFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.design-viewer__placeholder{display:flex;align-items:center;justify-content:center;height:300px;color:var(--muted);font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.1em}.design-viewer__artwork{width:30%;display:flex;flex-direction:column;align-items:center;gap:1rem}.design-viewer__artwork img{max-width:100%;max-height:400px;object-fit:contain}.design-viewer__artwork-label{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.design-viewer__view-toggle{position:absolute;bottom:1rem;right:1rem;display:flex;gap:2px}.view-toggle-btn{background:#1b2e2814;color:var(--forest);font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;padding:.35rem .75rem;border:1px solid var(--parchment-dk);cursor:pointer;transition:all .15s}.view-toggle-btn.active{background:var(--forest);color:var(--parchment);border-color:var(--forest)}.view-toggle-btn:hover:not(.active){border-color:var(--copper);color:var(--copper)}.design-viewer__artwork-toggle{background:none;border:none;border-top:1px solid var(--parchment-dk);font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:.75rem 1.5rem;text-align:left;transition:color .15s}.design-viewer__artwork-toggle:hover{color:var(--copper)}.design-viewer__thumbs{display:flex;gap:4px;padding:.75rem;overflow-x:auto;border-top:1px solid var(--parchment-dk);border-bottom:1px solid var(--parchment-dk);background:#f0ece6}.design-viewer__thumbs::-webkit-scrollbar{height:3px}.design-viewer__thumbs::-webkit-scrollbar-thumb{background:var(--parchment-dk)}.design-thumb{width:56px;height:56px;flex-shrink:0;background:#fff;border:2px solid transparent;cursor:pointer;overflow:hidden;padding:2px;transition:border-color .15s}.design-thumb img{width:100%;height:100%;object-fit:contain}.design-thumb.active{border-color:var(--forest)}.design-thumb:hover:not(.active){border-color:var(--copper)}.design-config{padding:2.5rem 3rem 2rem;display:flex;flex-direction:column;gap:.2rem;background:var(--cream)}.design-series-label{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);margin:0 0 .25rem}.design-name{font-family:Bebas Neue,sans-serif;font-size:clamp(2.5rem,5vw,3.8rem);letter-spacing:.04em;color:var(--forest);margin:0 0 .2rem;line-height:1}.design-tagline{font-family:Libre Baskerville,serif;font-style:italic;font-size:.95rem;color:var(--copper);margin:0 0 .6rem}.design-desc{font-family:Libre Baskerville,serif;font-size:.9rem;color:var(--muted-dk);line-height:1.7;margin:0 0 1rem}.design-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.5rem}.design-tag{font-family:DM Mono,monospace;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:#1b2e280f;border:1px solid rgba(27,46,40,.1);padding:.2rem .55rem}.design-section{margin-bottom:1.6rem}.design-section-label{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 .85rem;display:flex;align-items:center;gap:.65rem}.design-section-note{font-size:.6rem;letter-spacing:.06em;opacity:.7}.selection-badge{background:var(--forest);color:var(--copper);font-size:.62rem;padding:.12rem .55rem;letter-spacing:.06em;text-transform:none;font-weight:400}.garment-grid{display:flex;flex-wrap:wrap;gap:.45rem}.garment-btn{display:flex;flex-direction:column;align-items:center;gap:.3rem;background:#fff;border:2px solid transparent;padding:.65rem .9rem;cursor:pointer;transition:border-color .15s,transform .12s;box-shadow:0 1px 3px #00000012;min-width:88px}.garment-btn:hover{border-color:var(--copper);transform:translateY(-1px)}.garment-btn.selected{border-color:var(--forest);background:var(--parchment-lt)}.garment-btn__icon{font-size:1.3rem}.garment-btn__label{font-family:DM Mono,monospace;font-size:.62rem;letter-spacing:.04em;color:var(--forest);text-align:center;line-height:1.3}.color-grid{display:flex;flex-wrap:wrap;gap:.45rem}.color-swatch{display:flex;align-items:center;gap:.45rem;background:#fff;border:2px solid transparent;padding:.35rem .65rem .35rem .45rem;cursor:pointer;transition:border-color .15s,transform .12s;box-shadow:0 1px 3px #00000014}.color-swatch:hover{border-color:var(--copper);transform:translateY(-1px)}.color-swatch.selected{border-color:var(--forest)}.color-swatch__dot{width:18px;height:18px;border-radius:50%;background:var(--swatch-color);border:1.5px solid rgba(0,0,0,.12);flex-shrink:0}.color-swatch__label{font-family:DM Mono,monospace;font-size:.68rem;color:var(--forest);white-space:nowrap}.quantity-row{display:flex;align-items:center;gap:.5rem}.qty-btn{width:34px;height:34px;background:var(--forest);color:var(--parchment);border:none;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.qty-btn:hover{background:var(--forest-lt)}.qty-input{width:66px;text-align:center;font-family:DM Mono,monospace;font-size:1rem;border:2px solid var(--parchment-dk);padding:.35rem;color:var(--forest);background:#fff;outline:none}.qty-input:focus{border-color:var(--copper)}.design-notes{width:100%;font-family:Libre Baskerville,serif;font-size:.88rem;border:1px solid var(--parchment-dk);border-bottom:2px solid var(--parchment-dk);padding:.7rem .85rem;color:var(--forest);background:#fff;resize:vertical;outline:none;transition:border-color .15s}.design-notes:focus{border-bottom-color:var(--copper)}.btn-add-to-cart{display:block;width:100%;padding:1.05rem;background:var(--forest);color:var(--parchment);font-family:DM Mono,monospace;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;border:2px solid var(--forest);cursor:pointer;transition:background .2s,color .2s,transform .15s;margin-bottom:.7rem}.btn-add-to-cart:hover:not(:disabled){background:var(--copper);border-color:var(--copper);color:var(--forest);transform:translateY(-1px)}.btn-add-to-cart:disabled{background:var(--parchment);border-color:var(--parchment-dk);color:var(--parchment-dk);cursor:not-allowed}.btn-add-to-cart.added{background:var(--forest-lt);border-color:var(--forest-lt)}.btn-view-cart{display:block;width:100%;padding:1rem;background:transparent;color:var(--copper);font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--copper);cursor:pointer;transition:all .2s;text-align:center}.btn-view-cart:hover{background:var(--copper);color:var(--forest)}.design-related{padding:3rem 5vw;border-top:1px solid var(--parchment-dk)}.design-related h2{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.06em;color:var(--forest);margin:0 0 1.5rem}.design-related__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.related-card{background:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;border:1px solid var(--parchment-dk);overflow:hidden;transition:transform .2s,box-shadow .2s}.related-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001a}.related-card__img{width:100%;aspect-ratio:1;object-fit:contain;padding:.5rem;background:#fff}.related-card__name{font-family:Bebas Neue,sans-serif;font-size:1rem;letter-spacing:.06em;color:var(--forest);padding:.6rem;text-align:center}@media(max-width:860px){.design-config{padding:2rem 5vw}}@media(max-width:500px){.catalog-grid{display:flex;flex-direction:column;gap:1rem}}.cart-page{background:var(--cream);min-height:100vh;padding-bottom:6rem}.cart-header{background:var(--forest);padding:3.5rem 5vw 2.5rem;text-align:center;border-bottom:2px solid var(--copper)}.cart-title{font-family:Bebas Neue,sans-serif;font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:.06em;color:var(--parchment);margin:0 0 .4rem}.cart-count{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.12em;color:#c9733099;margin:0}.cart-empty{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:6rem 5vw;text-align:center}.cart-empty__text{font-family:Bebas Neue,sans-serif;font-size:2rem;letter-spacing:.06em;color:var(--parchment-dk);margin:0}.cart-layout{display:grid;grid-template-columns:1fr 400px;gap:3rem;max-width:1100px;margin:0 auto;padding:3rem 5vw;align-items:start}@media(max-width:800px){.cart-layout{grid-template-columns:1fr}}.cart-section-title{font-family:Bebas Neue,sans-serif;font-size:1.6rem;letter-spacing:.06em;color:var(--forest);margin:0 0 1.5rem;padding-bottom:.6rem;border-bottom:2px solid var(--copper)}.cart-items{display:flex;flex-direction:column}.cart-item{display:flex;gap:1rem;padding:1.25rem;background:var(--white);border-bottom:1px solid var(--parchment);transition:background .15s}.cart-item:last-of-type{border-bottom:none}.cart-item:hover{background:var(--parchment-lt)}.cart-item__art{width:68px;height:68px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.8rem;transition:background .4s}.cart-item__details{flex:1;display:flex;flex-direction:column;gap:.3rem}.cart-item__top{display:flex;justify-content:space-between;align-items:flex-start}.cart-item__name{font-family:Bebas Neue,sans-serif;font-size:1.15rem;letter-spacing:.04em;color:var(--forest)}.cart-item__remove{background:none;border:none;color:var(--parchment-dk);cursor:pointer;font-size:.85rem;padding:0;line-height:1;transition:color .15s}.cart-item__remove:hover{color:var(--red)}.cart-item__meta{font-family:DM Mono,monospace;font-size:.72rem;color:var(--muted);letter-spacing:.06em;margin:0}.cart-item__note{font-family:Libre Baskerville,serif;font-style:italic;font-size:.78rem;color:var(--muted);margin:0}.cart-item__qty-row{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.qty-btn-sm{width:26px;height:26px;background:var(--parchment);border:1px solid var(--parchment-dk);font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;font-family:inherit}.qty-btn-sm:hover{background:var(--parchment-dk)}.cart-item__qty{font-family:DM Mono,monospace;font-size:.9rem;font-weight:500;min-width:28px;text-align:center;color:var(--forest)}.cart-item__qty-label{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.1em;color:var(--parchment-dk);text-transform:uppercase}.cart-clear{background:none;border:none;font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--parchment-dk);cursor:pointer;padding:1rem 1.25rem 0;text-align:left;transition:color .15s}.cart-clear:hover{color:var(--red)}.cart-form{background:var(--white);padding:2rem;display:flex;flex-direction:column;gap:1.1rem;border:1px solid var(--parchment)}.cart-form__note{font-family:Libre Baskerville,serif;font-style:italic;font-size:.82rem;color:var(--muted);line-height:1.6;background:#c9733014;border-left:3px solid var(--copper);padding:.75rem .9rem;margin:0}.form-label{display:flex;flex-direction:column;gap:.4rem;font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.form-input,.form-textarea{width:100%;font-family:Libre Baskerville,serif;font-size:.92rem;border:1px solid var(--parchment-dk);border-bottom:2px solid var(--parchment-dk);padding:.6rem .8rem;color:var(--forest);background:var(--surface);outline:none;transition:border-color .15s,background .15s}.form-input:focus,.form-textarea:focus{border-bottom-color:var(--copper);background:var(--white)}.form-textarea{resize:vertical}.cart-error{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.06em;color:var(--red);background:#ee2f2e12;border-left:3px solid var(--red);padding:.65rem .85rem;margin:0}.btn-submit-quote{padding:1.05rem;background:var(--forest);color:var(--parchment);font-family:DM Mono,monospace;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;border:2px solid var(--forest);cursor:pointer;transition:background .2s,color .2s,transform .15s;margin-top:.5rem}.btn-submit-quote:hover:not(:disabled){background:var(--copper);border-color:var(--copper);color:var(--forest);transform:translateY(-1px)}.btn-submit-quote:disabled{background:var(--parchment);border-color:var(--parchment-dk);color:var(--parchment-dk);cursor:not-allowed}.btn-submit-quote.loading{background:var(--forest-lt)}.cart-form__fine{font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.08em;color:var(--parchment-dk);text-align:center;margin:0;line-height:1.6;text-transform:uppercase}.cart-success{min-height:60vh;display:flex;align-items:center;justify-content:center;background:var(--cream);padding:4rem 5vw}.cart-success__inner{text-align:center;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:1rem}.cart-success__icon{width:72px;height:72px;background:var(--forest);color:var(--parchment);display:flex;align-items:center;justify-content:center;font-size:1.8rem;animation:popIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{transform:scale(0)}to{transform:scale(1)}}.cart-success h2{font-family:Bebas Neue,sans-serif;font-size:2.5rem;letter-spacing:.06em;color:var(--forest);margin:0}.cart-success p{font-family:Libre Baskerville,serif;font-size:.95rem;color:var(--muted-dk);line-height:1.7;margin:0}.cart-success__sub{font-style:italic;opacity:.7}.cart-item__art{width:72px;height:72px;flex-shrink:0;background:#fff;overflow:hidden}.cart-item__art-img{width:100%;height:100%;object-fit:contain}.cart-item__art-swatch{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:Bebas Neue,sans-serif;font-size:1.5rem;color:#ffffff80}.form{display:flex;flex-direction:column;gap:1.25rem}fieldset{border:1px solid var(--parchment-dk);border-bottom:2px solid var(--copper);padding:1.25rem;background:var(--white)}fieldset legend{font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--copper);padding:0 .5rem}input[type=email],input[type=text]{width:100%;padding:.6rem .75rem;border:1px solid var(--parchment-dk);border-bottom:2px solid var(--parchment-dk);font-family:Libre Baskerville,serif;font-size:.95rem;color:var(--forest);background:var(--surface);margin-top:.4rem;outline:none;transition:border-color .15s;border-radius:0}input:focus{border-bottom-color:var(--copper);background:var(--white)}label{display:block;font-family:DM Mono,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.button{padding:1rem 2rem;font-family:DM Mono,monospace;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;background:var(--forest);color:var(--parchment);border:2px solid var(--forest);cursor:pointer;transition:background .2s,color .2s,transform .15s;border-radius:0}.button:hover:not(:disabled){background:var(--copper);border-color:var(--copper);color:var(--forest);transform:translateY(-1px)}.button:disabled{background:var(--parchment);border-color:var(--parchment-dk);color:var(--parchment-dk);cursor:not-allowed}.error{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.06em;color:var(--red);background:#ee2f2e12;border-left:3px solid var(--red);padding:.65rem .85rem;margin-top:.5rem}.invoice-details{margin-top:1.5rem;padding:1.5rem;border:1px solid var(--parchment-dk);border-top:3px solid var(--copper);background:var(--white)}.invoice-details h2{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.06em;color:var(--forest);margin:0 0 1rem}.invoice-details p{font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.06em;color:var(--muted-dk);margin:.25rem 0}.invoice-details ul{list-style:none;padding:0;margin:1rem 0}.invoice-details ul li{font-family:Libre Baskerville,serif;font-size:.88rem;color:var(--forest);padding:.5rem 0;border-bottom:1px solid var(--parchment)}.muted{font-family:Libre Baskerville,serif;font-style:italic;font-size:.85rem;color:var(--muted)}.pay-invoice-page{max-width:640px;margin:0 auto;padding:4rem 5vw 6rem}.pay-invoice-page header{margin-bottom:2.5rem}.pay-invoice-page header h1{font-family:Bebas Neue,sans-serif;font-size:clamp(2.4rem,5vw,3.5rem);letter-spacing:.06em;color:var(--forest);margin:0 0 .5rem}.pay-invoice-page header p{font-family:Libre Baskerville,serif;font-style:italic;font-size:.95rem;color:var(--muted);margin:0}.error-page{max-width:600px;margin:6rem auto;padding:2rem 5vw;text-align:center}.error-page h1{font-family:Bebas Neue,sans-serif;font-size:clamp(2.4rem,6vw,4rem);letter-spacing:.06em;color:var(--forest);margin:0 0 .75rem}.error-page .muted{font-family:Libre Baskerville,serif;font-style:italic;font-size:.95rem;color:var(--muted);margin:0 0 2.5rem;display:block}.error-actions{margin-top:1.5rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.error-actions .button{display:inline-block;padding:.85rem 2rem;background:var(--forest);color:var(--parchment);font-family:DM Mono,monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:2px solid var(--forest);cursor:pointer;transition:background .2s,color .2s}.error-actions .button:hover{background:var(--copper);border-color:var(--copper);color:var(--forest)}.error-actions .button--secondary{background:transparent;color:var(--forest)}.error-actions .button--secondary:hover{background:var(--forest);color:var(--parchment)}
