/* =======================================================================
   Addere Silk — theme.css
   Theme by The Free Website Guys.
   ======================================================================= */

:root{
	--font-display:'Cormorant Garamond','Sundays',serif;
	--font-body:'Jost','Optima','Optima LT Std',sans-serif;
	--radius:.25rem;
	--btn-radius:0px;
	--btn-height:3rem;
	--btn-padding:0 2rem;
	--btn-font-size:11px;
	--btn-font-weight:500;
	--btn-letter-spacing:.24em;
	--btn-text-transform:uppercase;
	--btn-icon-padding:.6rem;
	--card-radius:0px;
	--section-padding:2rem;
	--checkout-gap:2rem;
	--header-height:96px;
	--admin-bar-height:0px;
	--announcement-height:0px;
	--color-button-text:var(--primary-foreground,#fff);
}

/* ---- color tokens (defaults; overridden inline by Customizer, Section 22.9) ---- */
:root{
	--background:#f9f9f9;
	--foreground:#3d1128;
	--primary:#671e3e;
	--primary-foreground:#f9f9f9;
	--secondary:#e2fdf9;
	--accent:#80fef6;
	--muted:#ebebeb;
	--border:#e0e0e0;
	--highlight:#d7f2ec;
	--logo-height:64px;
}

*{box-sizing:border-box;}
html,body{overflow-x:hidden;}
body{
	margin:0;
	background:var(--background);
	color:var(--foreground);
	font-family:var(--font-body);
	font-weight:400;
	-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;}
img:not(.cover-img):not(.hero-bg-img):not(.product-card-img):not(.theme-hero__slide):not(.theme-mega-menu__feature-img):not(.theme-cart-drawer__pair-img):not(.theme-cart-item__img){max-width:100%;height:auto;}
.cover-img,.hero-bg-img,.product-card-img,.theme-hero__slide,.theme-mega-menu__feature-img{
	position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
}
.cover-img-parent,.cover-img-parent-static{position:relative;overflow:hidden;}
.cover-img-parent-static{aspect-ratio:3/4;display:block;}

h1,h2,h3,h4,h5,h6{font-weight:inherit;font-size:inherit;}
h1,h2,h3,h4,h5,h6,.font-display{font-family:var(--font-display);font-weight:400;letter-spacing:.005em;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit;}
.italic{font-style:italic;}

.container-wide{width:100%;max-width:80rem;margin:0 auto;padding:0 1.5rem;}
.container-editorial{width:100%;max-width:64rem;margin:0 auto;padding:0 1.5rem;}
@media(min-width:1024px){.container-wide,.container-editorial{padding:0 2.5rem;}}

.label-eyebrow{display:block;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;color:color-mix(in srgb,var(--foreground) 55%,transparent);}
.link-underline{position:relative;}
.link-underline::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.link-underline:hover::after{transform:scaleX(1);}

/* ---- reveal animation (Section 2.1) ---- */
.reveal-item{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.25,.4,.25,1),transform .8s cubic-bezier(.25,.4,.25,1);}
.reveal-item.is-visible{opacity:1;transform:translateY(0);}
body.is-customizer .reveal-item{opacity:1!important;transform:none!important;}
@media (prefers-reduced-motion: reduce){
	.reveal-item{transition:none;opacity:1;transform:none;}
}
.theme-btn-loading{opacity:.6!important;pointer-events:none!important;cursor:wait!important;}

/* =======================================================================
   HEADER
   ======================================================================= */
.theme-announcement{position:fixed;top:var(--admin-bar-height);left:0;right:0;z-index:60;background:var(--primary);color:var(--primary-foreground);}
.theme-announcement__inner{position:relative;display:flex;align-items:center;justify-content:center;min-height:2.25rem;padding:.4rem 2rem;}
.theme-announcement__text{margin:0;font-size:10px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;text-align:center;}
.theme-announcement__close{position:absolute;right:.5rem;padding:.25rem;opacity:.85;}
.theme-announcement__close:hover{opacity:1;}

.site-header{position:fixed;left:0;right:0;top:calc(var(--admin-bar-height) + var(--announcement-height));z-index:50;background:color-mix(in srgb,var(--background) 90%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);transition:top .3s;overflow:visible;}
body:has(.theme-announcement){--announcement-height:36px;}
body.admin-bar{--admin-bar-height:32px;}
@media screen and (max-width:782px){body.admin-bar{--admin-bar-height:46px;}}
.site-header > .container-wide{overflow:visible;}
.site-nav{position:relative;display:flex;align-items:center;justify-content:space-between;height:6rem;}
@media(min-width:1024px){.site-nav{height:7rem;}}
.site-nav__mobile-toggle{display:flex;align-items:center;}
@media(min-width:1024px){.site-nav__mobile-toggle{display:none;}}
.theme-icon-btn{padding:.5rem;transition:opacity .3s;}
.theme-icon-btn:hover{opacity:.6;}
.site-logo{display:flex;align-items:center;position:absolute;left:50%;transform:translateX(-50%);}
@media(min-width:1024px){.site-logo{position:static;transform:none;}}
.site-logo-img{height:var(--logo-height)!important;width:auto!important;display:block;}
.site-logo-text{line-height:var(--logo-height);display:block;font-family:var(--font-display);font-size:1.5rem;font-style:italic;}
.site-nav__primary{display:none;}
@media(min-width:1024px){
	.site-nav__primary{display:flex;align-items:center;gap:2.25rem;position:absolute;left:50%;transform:translateX(-50%);}
}
.site-nav__item{position:static;}
.site-nav__trigger{background:none;border:none;cursor:pointer;padding:0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:inherit;display:inline-flex;align-items:center;gap:.25rem;transition:opacity .3s,color .3s;}
.site-nav__trigger:hover,.site-nav__trigger.is-active{color:var(--primary);opacity:.85;}
.site-nav__chevron{width:.75rem;height:.75rem;}
.site-nav__actions{display:flex;align-items:center;gap:.25rem;}
.theme-cart-btn{position:relative;}
.theme-cart-count{position:absolute;top:-2px;right:-2px;min-width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;background:var(--primary);color:var(--primary-foreground);border-radius:50%;padding:0 3px;}
.theme-cart-count:empty{display:none;}

/* Mega menu — full viewport width, centered on nav (matches Lovable MegaMenu.tsx) */
.theme-mega-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:100vw;z-index:40;}
.theme-mega-menu[hidden]{display:none!important;}
.theme-mega-menu__panel{background:var(--background);border-top:1px solid var(--border);border-bottom:1px solid var(--border);box-shadow:var(--shadow-elevated,0 18px 50px rgba(0,0,0,.08));animation:theme-fade-in .35s ease;}
@keyframes theme-fade-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.theme-mega-menu__inner{padding:3rem 0;}
.theme-mega-menu__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2.5rem;}
.theme-mega-menu__columns{grid-column:span 12;display:grid;gap:2.5rem;grid-template-columns:repeat(var(--mega-cols,2),minmax(0,1fr));}
@media(min-width:1024px){
	.theme-mega-menu__grid.has-feature .theme-mega-menu__columns{grid-column:span 8;}
	.theme-mega-menu__feature{grid-column:span 4;}
}
.theme-mega-menu__column-title{font-family:var(--font-display);font-size:1.5rem;line-height:1;margin:0 0 1.75rem;color:var(--foreground);}
.theme-mega-menu__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.875rem;}
.theme-mega-menu__link{background:none;border:none;padding:0;cursor:pointer;text-align:left;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 85%,transparent);transition:color .3s;}
.theme-mega-menu__link:hover{color:var(--primary);}
.theme-mega-menu__shop-all{margin-top:2.5rem;background:none;border:none;border-bottom:1px solid var(--foreground);padding:0 0 .25rem;cursor:pointer;font-size:11px;letter-spacing:.22em;text-transform:uppercase;transition:color .3s,border-color .3s;}
.theme-mega-menu__shop-all:hover{color:var(--primary);border-color:var(--primary);}
.theme-mega-menu__feature{background:none;border:none;padding:0;cursor:pointer;text-align:left;display:none;width:100%;overflow:hidden;position:relative;}
@media(min-width:1024px){.theme-mega-menu__feature{display:block;}}
.theme-mega-menu__feature-media{position:relative;aspect-ratio:4/5;width:100%;overflow:hidden;isolation:isolate;}
.theme-mega-menu__feature-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s ease;}
.theme-mega-menu__feature:hover img{transform:scale(1.05);}
.theme-mega-menu__feature-scrim{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.55),rgba(0,0,0,.1) 40%,rgba(0,0,0,.2));}
.theme-mega-menu__feature-eyebrow{position:absolute;top:1.5rem;left:1.5rem;right:1.5rem;z-index:2;margin:0;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.95);}
.theme-mega-menu__feature-copy{position:absolute;bottom:1.5rem;left:1.5rem;right:1.5rem;z-index:2;color:#fff;}
.theme-mega-menu__feature-title{font-family:var(--font-display);font-size:1.25rem;line-height:1.2;margin:0 0 .75rem;text-shadow:0 2px 18px rgba(0,0,0,.6);}
.theme-mega-menu__feature-cta{display:inline-flex;align-items:center;gap:.5rem;font-size:10px;letter-spacing:.32em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.8);padding-bottom:.25rem;}

/* Mobile sheet */
.theme-mobile-sheet{position:fixed;inset:0;z-index:65;pointer-events:none;}
.theme-mobile-sheet[aria-hidden="false"]{pointer-events:auto;}
body.mobile-menu-open{overflow:hidden;}
.theme-mobile-sheet__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35);opacity:0;transition:opacity .3s;}
.theme-mobile-sheet[aria-hidden="false"] .theme-mobile-sheet__backdrop{opacity:1;}
.theme-mobile-sheet__panel{position:absolute;top:0;left:0;height:100%;height:100dvh;width:min(88vw,24rem);max-width:24rem;background:var(--background);border-right:1px solid var(--border);box-shadow:4px 0 24px rgba(0,0,0,.08);display:flex;flex-direction:column;min-height:0;transform:translateX(-100%);transition:transform .35s ease;}
.theme-mobile-sheet[aria-hidden="false"] .theme-mobile-sheet__panel{transform:translateX(0);}
.theme-mobile-sheet__head{display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;height:5rem;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);flex-shrink:0;}
.site-logo-img--sm{height:3rem!important;}
.theme-mobile-sheet__nav{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:.75rem .5rem;}
.theme-mobile-sheet__list{list-style:none;margin:0;padding:0;}
.theme-mobile-sheet__section{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);}
.theme-mobile-sheet__section-toggle,.theme-mobile-sheet__top-link{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:1rem .75rem;text-align:left;font-family:var(--font-display);font-size:1.125rem;line-height:1.3;color:var(--foreground);cursor:pointer;}
.theme-mobile-sheet__chevron{flex-shrink:0;transition:transform .3s;}
.theme-mobile-sheet__section-toggle[aria-expanded="true"] .theme-mobile-sheet__chevron{transform:rotate(180deg);}
.theme-mobile-sheet__subsections{padding:0 .75rem .75rem;}
.theme-mobile-sheet__subsections[hidden]{display:none;}
.theme-mobile-sheet__group{margin-bottom:1rem;}
.theme-mobile-sheet__group:last-child{margin-bottom:.5rem;}
.theme-mobile-sheet__group-label{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 50%,transparent);margin:0 0 .5rem;}
.theme-mobile-sheet__group ul{list-style:none;margin:0;padding:0;}
.theme-mobile-sheet__link{display:block;width:100%;text-align:left;background:none;border:none;padding:.625rem 0;font-size:.875rem;line-height:1.4;color:color-mix(in srgb,var(--foreground) 80%,transparent);cursor:pointer;}
.theme-mobile-sheet__link:hover{color:var(--primary);}
.theme-mobile-sheet__link--cta{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--primary);text-decoration:underline;text-underline-offset:4px;}
.theme-mobile-sheet__footer{border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent);padding:1rem .75rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;flex-shrink:0;}
.theme-mobile-sheet__action{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border:1px solid var(--border);background:none;font-size:11px;letter-spacing:.24em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s;}
.theme-mobile-sheet__action:hover{background:var(--primary);color:var(--primary-foreground);}
.theme-mobile-sheet__action--primary{grid-column:1/-1;background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);}
@media(max-width:1023px){.theme-mega-menu{display:none!important;}}

/* Scroll progress */
.theme-scroll-progress{position:fixed;top:calc(var(--admin-bar-height) + var(--announcement-height));left:0;right:0;height:2px;background:var(--primary);transform-origin:0 50%;transform:scaleX(0);z-index:70;pointer-events:none;transition:background .3s;}
.theme-scroll-progress.on-announcement{background:var(--primary-foreground);}

/* Email popup */
.theme-email-popup{position:fixed;inset:0;z-index:61;}
.theme-email-popup[hidden]{display:none!important;}
.theme-email-popup__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--foreground) 40%,transparent);backdrop-filter:blur(4px);}
.theme-email-popup__center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;}
.theme-email-popup__card{position:relative;background:var(--background);max-width:28rem;width:100%;padding:2.5rem;border:1px solid var(--border);box-shadow:var(--shadow-elevated,0 18px 50px rgba(0,0,0,.08));animation:theme-fade-in .6s ease;}
.theme-email-popup__close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--muted-foreground);cursor:pointer;padding:.25rem;}
.theme-email-popup__head{text-align:center;margin-bottom:1.75rem;}
.theme-email-popup__title{font-family:var(--font-display);font-size:1.5rem;line-height:1.3;margin:.75rem 0;}
@media(min-width:768px){.theme-email-popup__title{font-size:1.875rem;}}
.theme-email-popup__text{font-size:.875rem;color:var(--muted-foreground);line-height:1.6;margin:0;}
.theme-email-popup__form{display:flex;flex-direction:column;gap:.75rem;}
.theme-email-popup__input{width:100%;padding:.75rem 1rem;border:1px solid var(--border);background:var(--background);font-size:.875rem;}
.theme-email-popup__submit{width:100%;height:3rem;background:var(--primary);color:var(--primary-foreground);border:none;font-size:11px;letter-spacing:.24em;text-transform:uppercase;cursor:pointer;}
.theme-email-popup__fine{text-align:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-foreground);margin:1.25rem 0 0;}
.theme-email-popup__success{text-align:center;padding:1rem 0;}
.theme-email-popup__success-title{font-family:var(--font-display);font-size:1.5rem;font-style:italic;margin:0 0 .5rem;}
.theme-email-popup__success-text{font-size:.875rem;color:var(--muted-foreground);margin:0;}

/* Contact modal */
.theme-contact-modal{position:fixed;inset:0;z-index:62;display:flex;align-items:center;justify-content:center;padding:1rem;}
.theme-contact-modal[hidden]{display:none!important;}
.theme-contact-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);}
.theme-contact-modal__dialog{position:relative;background:var(--background);max-width:32rem;width:100%;max-height:90vh;overflow-y:auto;border:1px solid var(--border);padding:2rem;animation:theme-fade-in .4s ease;}
.theme-contact-modal__close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;opacity:.7;}
.theme-contact-modal__title{font-family:var(--font-display);font-size:1.5rem;line-height:1.2;margin:.5rem 0;}
.theme-contact-modal__desc{font-size:15px;line-height:1.6;color:var(--muted-foreground);margin:0;}
.theme-contact-modal__email-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--muted-foreground);border-top:1px solid var(--border);padding-top:1rem;margin:1rem 0;}
.theme-contact-modal__row{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem;}
@media(min-width:640px){.theme-contact-modal__row{grid-template-columns:1fr 1fr;}}
.theme-contact-modal__input,.theme-contact-modal__textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--border);background:var(--background);font-size:.875rem;}
.theme-contact-modal__textarea{resize:none;}
.theme-contact-modal__actions{display:flex;justify-content:flex-end;}
.theme-contact-modal__submit{display:inline-flex;align-items:center;gap:.5rem;height:2.75rem;padding:0 1.5rem;background:var(--primary);color:var(--primary-foreground);border:none;font-size:11px;letter-spacing:.24em;text-transform:uppercase;cursor:pointer;}
.theme-contact-modal__success{text-align:center;padding:2rem 0;}
.theme-contact-modal__success-icon{width:3.5rem;height:3.5rem;background:var(--primary);color:var(--primary-foreground);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;}
.theme-contact-modal__success h3{font-family:var(--font-display);font-size:1.25rem;margin:0 0 .5rem;}
.theme-contact-modal__success p{font-size:.875rem;color:var(--muted-foreground);margin:0;}

/* Search dialog */
.theme-search-dialog{position:fixed;inset:0;z-index:80;}
.theme-search-dialog[hidden]{display:none!important;}
.theme-search-dialog__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--foreground) 40%,transparent);backdrop-filter:blur(4px);border:none;cursor:pointer;}
.theme-search-dialog__panel{position:relative;background:var(--background);max-height:92vh;overflow-y:auto;border-bottom:1px solid var(--border);box-shadow:var(--shadow-elevated,0 18px 50px rgba(0,0,0,.08));animation:theme-fade-in .35s ease;}
.theme-search-dialog__close{position:absolute;top:1.25rem;right:1.25rem;background:none;border:none;opacity:.7;cursor:pointer;z-index:2;}
@media(min-width:1024px){.theme-search-dialog__close{top:1.75rem;right:2rem;}}
.theme-search-dialog__inner{padding:2.5rem 0;}
@media(min-width:1024px){.theme-search-dialog__inner{padding:3.5rem 0;}}
.theme-search-dialog__layout{display:grid;grid-template-columns:1fr;gap:2.5rem;}
@media(min-width:1024px){.theme-search-dialog__layout{grid-template-columns:260px 1fr;gap:4rem;}}
.theme-search-dialog__sidebar-title{font-family:var(--font-display);font-size:1.5rem;margin:0 0 1.5rem;}
.theme-search-dialog__cat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.875rem;}
.theme-search-dialog__cat-btn{background:none;border:none;padding:0;text-align:left;font-size:11px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;color:color-mix(in srgb,var(--foreground) 85%,transparent);}
.theme-search-dialog__cat-btn:hover{color:var(--primary);}
.theme-search-dialog__color-link-wrap{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent);}
.theme-search-dialog__color-label{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 50%,transparent);margin:0 0 .75rem;}
.theme-search-dialog__color-link{display:inline-flex;align-items:center;gap:.75rem;background:none;border:none;padding:0;cursor:pointer;text-align:left;}
.theme-search-dialog__color-wheel-icon{width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--foreground) 15%,transparent);background:conic-gradient(from 0deg,#c44569,#c9a24c,#9fae8c,#2a3a6b,#6b2c4a,#c44569);flex-shrink:0;}
.theme-search-dialog__color-link-title{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;}
.theme-search-dialog__color-link-sub{display:block;font-size:11px;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin-top:.125rem;}
.theme-search-dialog__main{padding-right:0;}
@media(min-width:1024px){.theme-search-dialog__main{padding-right:4rem;}}
.theme-search-dialog__input-row{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid color-mix(in srgb,var(--foreground) 30%,transparent);padding-bottom:.75rem;}
.theme-search-dialog__input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-display);font-size:1.5rem;}
.theme-search-dialog__input::-webkit-search-cancel-button,
.theme-search-dialog__input::-webkit-search-decoration,
.theme-search-dialog__input::-ms-clear{display:none;appearance:none;}
.theme-search-dialog__results{margin-top:2.5rem;}
.theme-search-dialog__results-title{font-family:var(--font-display);font-size:1.5rem;margin:0 0 1.5rem;}
.theme-search-dialog__no-results{font-size:.875rem;color:color-mix(in srgb,var(--foreground) 60%,transparent);}
.theme-search-dialog__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;}
@media(min-width:768px){.theme-search-dialog__grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1024px){.theme-search-dialog__grid{grid-template-columns:repeat(4,1fr);gap:2rem;}}
.theme-search-dialog__product{background:none;border:none;padding:0;text-align:left;cursor:pointer;}
.theme-search-dialog__product-img{aspect-ratio:1;overflow:hidden;background:var(--secondary);}
.theme-search-dialog__product-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;}
.theme-search-dialog__product:hover img{transform:scale(1.05);}
.theme-search-dialog__product-name{margin:.75rem 0 0;font-size:10px;letter-spacing:.24em;text-transform:uppercase;line-height:1.4;}
.theme-search-dialog__product-price{margin:.25rem 0 0;font-size:11px;color:color-mix(in srgb,var(--foreground) 70%,transparent);}

/* Color search — ColorSearchDialog.tsx */
.theme-color-search{position:fixed;inset:0;z-index:80;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;}
.theme-color-search[hidden]{display:none!important;}
.theme-color-search__backdrop{position:fixed;inset:0;z-index:0;background:color-mix(in srgb,var(--foreground) 40%,transparent);backdrop-filter:blur(4px);border:none;cursor:pointer;}
.theme-color-search__panel{position:relative;z-index:1;width:100%;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--background);border-bottom:1px solid var(--border);box-shadow:var(--shadow-elevated,0 18px 50px rgba(0,0,0,.08));animation:theme-fade-in .35s ease;flex-shrink:0;}
@media(min-width:768px){.theme-color-search__panel{max-height:94vh;}}
.theme-color-search__sticky-head{position:sticky;top:0;z-index:2;flex-shrink:0;background:color-mix(in srgb,var(--background) 95%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);}
.theme-color-search__head-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;min-height:0;}
.theme-color-search__head-brand{display:flex;align-items:center;gap:.75rem;min-width:0;}
.theme-color-search__logo{height:2rem!important;width:auto!important;flex-shrink:0;}
.theme-color-search__head-label{display:none;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 60%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(min-width:640px){.theme-color-search__head-label{display:inline;}}
.theme-color-search__head-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0;}
@media(min-width:640px){.theme-color-search__head-actions{gap:1.5rem;}}
.theme-color-search__count{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 70%,transparent);white-space:nowrap;}
.theme-color-search__close{background:none;border:none;cursor:pointer;opacity:.7;padding:.5rem;}
.theme-color-search__close:hover{opacity:1;}
.theme-color-search__body{display:block;padding:2rem 0;flex-shrink:0;}
@media(min-width:1024px){.theme-color-search__body{padding:3rem 0;}}
.theme-color-search__layout{display:grid;grid-template-columns:1fr;gap:2rem;}
@media(min-width:768px){.theme-color-search__layout{grid-template-columns:260px 1fr;gap:2.5rem;}}
@media(min-width:1024px){.theme-color-search__layout{grid-template-columns:320px 1fr;gap:4rem;}}
.theme-color-search__sidebar{align-self:start;}
@media(min-width:768px){.theme-color-search__sidebar{position:sticky;top:6rem;}}
.theme-color-search__active-name{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 60%,transparent);margin:0 0 .75rem;}
.theme-color-search__chips{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem;}
.theme-color-search__chip-wrap{position:relative;}
.theme-color-search__chip{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--foreground) 15%,transparent);cursor:pointer;padding:0;transition:border-color .3s,box-shadow .3s;}
.theme-color-search__chip.is-active{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 30%,transparent);}
.theme-color-search__chip-remove{position:absolute;top:-4px;right:-4px;width:1rem;height:1rem;background:var(--background);border:1px solid color-mix(in srgb,var(--foreground) 20%,transparent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--foreground) 70%,transparent);cursor:pointer;padding:0;}
.theme-color-search__chip-remove:hover{color:var(--primary);}
.theme-color-search__add{display:inline-flex;align-items:center;gap:.375rem;height:2.5rem;padding:0 .75rem;border:1px dashed color-mix(in srgb,var(--foreground) 30%,transparent);border-radius:9999px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 70%,transparent);cursor:pointer;transition:color .3s,border-color .3s;}
.theme-color-search__add:hover{color:var(--primary);border-color:var(--primary);}
.theme-color-search__wheel-block{position:relative;display:inline-block;margin-bottom:1.5rem;}
.theme-color-search__wheel-hide{position:absolute;top:-4px;right:-4px;z-index:10;padding:.375rem;background:color-mix(in srgb,var(--background) 80%,transparent);border:none;border-radius:50%;opacity:.7;cursor:pointer;}
.theme-color-search__wheel-hide:hover{opacity:1;}
.theme-color-search__picker-row{display:flex;align-items:flex-start;gap:1rem;}
.theme-color-search__wheel-wrap{position:relative;width:220px;height:220px;flex-shrink:0;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px color-mix(in srgb,var(--foreground) 10%,transparent);}
.theme-color-search__canvas{border-radius:50%;cursor:crosshair;display:block;touch-action:none;}
.theme-color-search__indicator{position:absolute;width:1.25rem;height:1.25rem;border-radius:50%;border:2px solid var(--background);box-shadow:0 0 0 1px rgba(0,0,0,.35);pointer-events:none;}
.theme-color-search__lightness{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding-top:.25rem;}
.theme-color-search__lightness input{writing-mode:vertical-lr;height:11rem;width:4px;appearance:none;cursor:pointer;background:linear-gradient(to bottom,#fff,#000);border-radius:2px;}
.theme-color-search__lightness span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 50%,transparent);}
.theme-color-search__palette{margin-top:0;}
.theme-color-search__palette-label{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 50%,transparent);margin:0 0 .75rem;}
.theme-color-search__swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.625rem;max-width:260px;}
.theme-color-search__swatch{aspect-ratio:1;border-radius:50%;border:1px solid color-mix(in srgb,var(--foreground) 10%,transparent);cursor:pointer;padding:0;transition:transform .2s;}
.theme-color-search__swatch:hover{transform:scale(1.1);}
.theme-color-search__hint{margin:1.5rem 0 0;font-size:11px;line-height:1.6;color:color-mix(in srgb,var(--foreground) 55%,transparent);}
.theme-color-search__empty{padding:6rem 0;text-align:center;}
.theme-color-search__empty-title{font-family:var(--font-display);font-size:1.5rem;margin:0 0 .5rem;color:var(--foreground);}
.theme-color-search__empty-text{font-size:.875rem;color:color-mix(in srgb,var(--foreground) 60%,transparent);margin:0;}
.theme-color-search__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
@media(min-width:1024px){.theme-color-search__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;}}
@media(min-width:1280px){.theme-color-search__grid{grid-template-columns:repeat(4,1fr);}}
.theme-color-search__product{background:none;border:none;padding:0;text-align:left;cursor:pointer;}
.theme-color-search__product-img{aspect-ratio:1;overflow:hidden;background:var(--secondary);}
.theme-color-search__product-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;}
.theme-color-search__product:hover img{transform:scale(1.05);}
.theme-color-search__product-name{margin:.75rem 0 0;font-size:10px;letter-spacing:.24em;text-transform:uppercase;line-height:1.4;}
.theme-color-search__product-price{margin:.25rem 0 0;font-size:11px;color:color-mix(in srgb,var(--foreground) 70%,transparent);}

/* Discover article */
.theme-discover-article{padding-top:calc(6rem + var(--admin-bar-height));}
@media(min-width:1024px){.theme-discover-article{padding-top:calc(7rem + var(--admin-bar-height));}}
@media(max-width:1023px){.theme-discover-article .container-editorial{padding-left:2rem;padding-right:2rem;}}
.theme-discover-article__hero{position:relative;height:64vh;min-height:420px;overflow:hidden;}
.theme-discover-article__hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.theme-discover-article__hero-scrim{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.2) 40%,rgba(0,0,0,.7));}
.theme-discover-article__hero-copy{position:absolute;inset:auto 0 0 0;padding-bottom:2.5rem;color:var(--primary-foreground);}
.theme-discover-article__eyebrow{display:block;font-size:11px;letter-spacing:.32em;text-transform:uppercase;margin-bottom:1rem;text-shadow:0 2px 10px rgba(0,0,0,.6);}
.theme-discover-article__hero-title{font-family:var(--font-display);font-size:2.25rem;line-height:1.05;max-width:48rem;margin:0;text-shadow:0 2px 18px rgba(0,0,0,.55);}
@media(min-width:768px){.theme-discover-article__hero-title{font-size:3.75rem;}}
.theme-discover-article__tagline{margin:1.25rem 0 0;max-width:42rem;font-size:1rem;line-height:1.6;text-shadow:0 2px 10px rgba(0,0,0,.5);}
.theme-discover-article__body{padding:4rem 0;}
.theme-discover-article__back{display:inline-flex;align-items:center;gap:.5rem;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:2.5rem;}
.theme-discover-block__heading{font-family:var(--font-display);font-size:1.875rem;margin:3.5rem 0 1.25rem;}
@media(min-width:768px){.theme-discover-block__heading{font-size:2.25rem;}}
.theme-discover-block__paragraph{font-size:1rem;line-height:1.85;color:color-mix(in srgb,var(--foreground) 85%,transparent);margin:0 0 1.5rem;}
@media(min-width:768px){.theme-discover-block__paragraph{font-size:17px;}}
.theme-discover-block__quote{margin:3rem 0;padding-left:1.5rem;border-left:2px solid color-mix(in srgb,var(--primary) 40%,transparent);}
@media(min-width:768px){.theme-discover-block__quote{padding-left:2.5rem;}}
.theme-discover-block__quote blockquote{font-family:var(--font-display);font-style:italic;font-size:1.5rem;line-height:1.3;color:var(--primary);margin:0;}
.theme-discover-block__quote figcaption{margin-top:.75rem;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted-foreground);}
.theme-discover-block__image{margin:2.5rem 0;}
.theme-discover-block__image img{width:100%;height:auto;}
.theme-discover-block__image figcaption{margin-top:.75rem;font-size:.75rem;font-style:italic;color:var(--muted-foreground);text-align:center;}
.theme-discover-block__pair,.theme-discover-block__trio{display:grid;gap:2px;margin:2.5rem 0;}
@media(min-width:640px){.theme-discover-block__pair{grid-template-columns:1fr 1fr;}}
@media(min-width:640px){.theme-discover-block__trio{grid-template-columns:repeat(3,1fr);}}
.theme-discover-block__pair img,.theme-discover-block__trio img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.theme-discover-article__continue{border-top:1px solid var(--border);background:color-mix(in srgb,var(--secondary) 30%,transparent);padding:3.5rem 0;}
.theme-discover-article__continue-label{display:block;text-align:center;margin-bottom:2rem;}
.theme-discover-article__continue-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;}
@media(min-width:768px){.theme-discover-article__continue-grid{grid-template-columns:1fr 1fr;}}
.theme-discover-article__nav-card{position:relative;display:block;overflow:hidden;border:1px solid var(--border);min-height:220px;text-decoration:none;color:inherit;}
.theme-discover-article__nav-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;transition:opacity .5s;}
.theme-discover-article__nav-card:hover img{opacity:.7;}
.theme-discover-article__nav-card-inner{position:relative;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;}
.theme-discover-article__nav-card--next .theme-discover-article__nav-card-inner{align-items:flex-end;text-align:right;}
.theme-discover-article__nav-dir{display:inline-flex;align-items:center;gap:.5rem;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--primary);}
.theme-discover-article__nav-eyebrow{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.5rem;}
.theme-discover-article__nav-card h3{font-family:var(--font-display);font-size:1.5rem;line-height:1.2;margin:0;}

/* =======================================================================
   HERO
   ======================================================================= */
.theme-hero{position:relative;width:100%;height:100vh;overflow:hidden;}
body.theme-no-hero .theme-hero{display:none;}
.theme-hero__slides{position:absolute;inset:0;}
.theme-hero__slide{opacity:0;transition:opacity 1.4s cubic-bezier(.25,.4,.25,1);}
.theme-hero__slide.is-active{opacity:1;}
.theme-hero__scrim{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0,0,0,.45), rgba(0,0,0,.15) 40%, rgba(0,0,0,.65));pointer-events:none;}
.theme-hero__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:20;padding:.75rem;color:rgba(255,255,255,.8);transition:color .3s;}
.theme-hero__arrow:hover{color:#fff;}
.theme-hero__arrow--prev{left:1rem;}
.theme-hero__arrow--next{right:1rem;}
@media(min-width:768px){.theme-hero__arrow--prev{left:2rem;}.theme-hero__arrow--next{right:2rem;}}
.theme-hero__content-wrap{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;}
@media(min-width:768px){.theme-hero__content-wrap{align-items:center;}}
.theme-hero__content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:42rem;margin:0 auto;padding-bottom:5rem;}
@media(min-width:768px){.theme-hero__content{padding-bottom:0;}}
.theme-hero__eyebrow{font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.9);text-shadow:0 1px 8px rgba(0,0,0,.4);margin-bottom:1.25rem;}
.theme-hero__title{font-size:3rem;line-height:1.02;color:#fff;margin:0 0 2rem;text-shadow:0 2px 24px rgba(0,0,0,.45);}
@media(min-width:768px){.theme-hero__title{font-size:3.75rem;}}
@media(min-width:1024px){.theme-hero__title{font-size:4.5rem;}}
.btn-hero-primary{display:inline-flex;align-items:center;gap:.5rem;height:3rem;padding:0 2.5rem;background:var(--primary);color:var(--primary-foreground);border:1px solid var(--primary);font-size:11px;letter-spacing:.24em;text-transform:none;font-weight:500;transition:background .3s,color .3s;}
.btn-hero-primary:hover{background:var(--background);color:var(--primary);}
.theme-hero__cta-arrow{animation:heroArrowNudge 1.8s ease-in-out infinite;}
@keyframes heroArrowNudge{0%,100%{transform:translateX(0);}50%{transform:translateX(4px);}}
.theme-hero__dots{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);z-index:20;display:flex;gap:.5rem;}
.theme-hero__dot{height:2px;width:1.25rem;background:rgba(255,255,255,.4);transition:width .5s,background .5s;}
.theme-hero__dot.is-active{width:2.5rem;background:#fff;}

/* =======================================================================
   CAPTION STRIP
   ======================================================================= */
.theme-caption-strip{border-bottom:1px solid var(--border);}
.theme-caption-strip__inner{padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1rem;}
@media(min-width:768px){.theme-caption-strip__inner{flex-direction:row;align-items:center;justify-content:space-between;}}
.theme-caption-strip__title{font-style:italic;font-size:1.25rem;line-height:1.4;}
@media(min-width:768px){.theme-caption-strip__title{font-size:1.5rem;}}
.theme-caption-strip__cta{display:inline-flex;align-items:center;gap:.5rem;font-size:11px;letter-spacing:.24em;text-transform:uppercase;}
.theme-caption-strip__cta:hover{color:var(--primary);}

/* =======================================================================
   FEATURED GALLERY
   ======================================================================= */
.theme-featured-gallery__grid{display:grid;grid-template-columns:1fr;gap:2px;background:var(--background);}
@media(min-width:768px){.theme-featured-gallery__grid{grid-template-columns:repeat(12,1fr);gap:3px;}}
.theme-featured-tile{position:relative;display:block;width:100%;overflow:hidden;background:var(--secondary);text-align:left;min-height:44vh;}
.theme-featured-tile--primary{min-height:70vh;}
@media(min-width:768px){
	.theme-featured-tile--primary{grid-column:span 7;grid-row:span 2;min-height:88vh;}
	.theme-featured-tile--secondary{grid-column:span 5;min-height:44vh;}
}
.theme-featured-tile__scrim{position:absolute;left:0;right:0;bottom:0;height:70%;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,.35),transparent);}
.theme-featured-tile__scrim--top{top:0;bottom:auto;height:55%;background:linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.3),transparent);}
.theme-featured-tile__content{position:absolute;bottom:1.75rem;left:1.75rem;right:1.75rem;transition:transform .5s;}
@media(min-width:768px){.theme-featured-tile__content{bottom:2.5rem;left:2.5rem;right:2.5rem;}}
.theme-featured-tile:hover .theme-featured-tile__content{transform:translateY(-4px);}
.theme-featured-tile__content--top{bottom:auto;top:4rem;}
@media(min-width:768px){.theme-featured-tile__content--top{top:5rem;}}
.theme-featured-tile__eyebrow{display:block;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#fff;margin-bottom:1.25rem;text-shadow:0 2px 10px rgba(0,0,0,.75);}
.theme-featured-tile__eyebrow--top{position:absolute;top:1.5rem;left:1.75rem;right:1.75rem;margin:0;}
@media(min-width:768px){.theme-featured-tile__eyebrow--top{top:2rem;left:2.5rem;}}
.theme-featured-tile__title{display:block;font-family:var(--font-display);font-size:1.5rem;line-height:1.15;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.75);}
@media(min-width:768px){.theme-featured-tile__title{font-size:1.875rem;}}
@media(min-width:1024px){.theme-featured-tile__title{font-size:2.125rem;}}
.theme-featured-tile__cta{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.25rem;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(255,255,255,.8);padding-bottom:.25rem;text-shadow:0 2px 10px rgba(0,0,0,.7);}
.theme-featured-tile .cover-img{transition:transform 1.6s cubic-bezier(.25,.4,.25,1);}
.theme-featured-tile:hover .cover-img{transform:scale(1.05);}

/* =======================================================================
   CATEGORY SCROLLER
   ======================================================================= */
.theme-category-scroller__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:4rem 1.5rem 1.5rem;}
@media(min-width:1024px){.theme-category-scroller__head{padding-top:5rem;}}
.theme-category-scroller__title{font-family:var(--font-display);font-size:1.5rem;line-height:1.2;margin-top:.5rem;}
@media(min-width:768px){.theme-category-scroller__title{font-size:1.875rem;}}
.theme-category-scroller__hint{display:none;align-items:center;gap:.5rem;margin-top:.75rem;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--primary) 80%,transparent);transition:opacity .5s;}
@media(min-width:768px){.theme-category-scroller__hint{display:inline-flex;}}
.theme-category-scroller__hint.is-hidden{opacity:0;}
.theme-category-scroller__actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0;}
.theme-category-scroller__clear{background:none;border:none;padding:0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--primary);cursor:pointer;}
.theme-category-scroller__clear:hover{opacity:.7;}
.theme-category-scroller__nav{display:none;gap:.5rem;}
@media(min-width:768px){.theme-category-scroller__nav{display:flex;}}
.theme-category-scroller__arrow{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--background);cursor:pointer;transition:background .3s,color .3s,opacity .3s;}
.theme-category-scroller__arrow:hover:not(:disabled){background:var(--foreground);color:var(--background);}
.theme-category-scroller__arrow:disabled{opacity:.3;cursor:default;}
.theme-category-scroller__wrap{position:relative;}
.theme-category-scroller__fade{pointer-events:none;position:absolute;top:0;bottom:0;right:0;width:4rem;z-index:2;background:linear-gradient(to left,var(--background),transparent);transition:opacity .3s;}
@media(min-width:768px){.theme-category-scroller__fade{width:7rem;}}
.theme-category-scroller__fade.is-hidden{opacity:0;}
.theme-category-scroller__track{display:flex;gap:3px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:0 1rem 4rem;scrollbar-width:thin;}
@media(min-width:768px){.theme-category-scroller__track{padding-left:1.5rem;padding-right:1.5rem;}}
@media(min-width:1024px){.theme-category-scroller__track{padding-bottom:5rem;}}
.theme-category-scroller__item{flex:0 0 78vw;scroll-snap-align:start;}
@media(min-width:640px){.theme-category-scroller__item{flex:0 0 44vw;}}
@media(min-width:768px){.theme-category-scroller__item{flex:0 0 32vw;}}
@media(min-width:1024px){.theme-category-scroller__item{flex:0 0 22vw;}}
@media(min-width:1280px){.theme-category-scroller__item{flex:0 0 18vw;}}
.theme-category-scroller__item.is-active .theme-cat-tile{box-shadow:inset 0 0 0 2px var(--primary);}
.theme-cat-tile{position:relative;display:block;width:100%;min-height:320px;overflow:hidden;text-align:left;background:var(--secondary);border:none;padding:0;cursor:pointer;}
@media(min-width:768px){.theme-cat-tile{min-height:400px;}}
@media(min-width:1024px){.theme-cat-tile{min-height:460px;}}
.theme-cat-tile__scrim{position:absolute;left:0;right:0;bottom:0;height:70%;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,.35),transparent);}
.theme-cat-tile__content{position:absolute;bottom:1.75rem;left:1.75rem;right:1.75rem;transition:transform .5s;}
@media(min-width:768px){.theme-cat-tile__content{bottom:2.5rem;left:2.5rem;right:2.5rem;}}
.theme-cat-tile:hover .theme-cat-tile__content{transform:translateY(-4px);}
.theme-cat-tile__eyebrow{display:block;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#fff;margin-bottom:1rem;text-shadow:0 2px 10px rgba(0,0,0,.75);}
.theme-cat-tile__title{display:block;font-family:var(--font-display);font-size:1.5rem;line-height:1.15;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.75);}
@media(min-width:768px){.theme-cat-tile__title{font-size:1.875rem;}}
.theme-cat-tile__cta{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(255,255,255,.8);padding-bottom:.25rem;}
.theme-cat-tile .cover-img{transition:transform 1.6s cubic-bezier(.25,.4,.25,1);}
.theme-cat-tile:hover .cover-img{transform:scale(1.05);}

/* =======================================================================
   SHOP + PRODUCT GRID
   ======================================================================= */
.theme-shop-section{background:color-mix(in srgb,var(--secondary) 40%,transparent);}
.theme-shop-section__head{text-align:center;padding-top:5rem;padding-bottom:1rem;}
.shop-heading{font-size:2.25rem;line-height:1.05;margin-top:.75rem;}
@media(min-width:768px){.shop-heading{font-size:3rem;}}
@media(min-width:1024px){.shop-heading{font-size:3.75rem;}}
.theme-shop-filters{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;justify-content:center;margin:0 auto 2.5rem;padding-top:1.5rem;}
@media(min-width:640px){.theme-shop-filters{flex-direction:row;align-items:flex-start;gap:1rem;}}
.theme-filter-select--sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.theme-filter-dropdown{position:relative;flex:1;}
@media(min-width:640px){.theme-filter-dropdown{max-width:20rem;}}
.theme-filter-dropdown__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--border);background:var(--background);cursor:pointer;transition:border-color .3s;}
.theme-filter-dropdown__trigger:hover,.theme-filter-dropdown.is-open .theme-filter-dropdown__trigger{border-color:var(--primary);}
.theme-filter-dropdown__label-wrap{display:flex;flex-direction:column;align-items:flex-start;text-align:left;}
.theme-filter-dropdown__label{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 50%,transparent);}
.theme-filter-dropdown__value{display:flex;align-items:center;gap:.5rem;margin-top:.125rem;font-size:.875rem;color:var(--foreground);}
.theme-filter-dropdown__swatch,.theme-filter-dropdown__option-swatch{width:.875rem;height:.875rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--foreground) 10%,transparent);flex-shrink:0;}
.theme-filter-dropdown__chevron{flex-shrink:0;transition:transform .3s;}
.theme-filter-dropdown.is-open .theme-filter-dropdown__chevron{transform:rotate(180deg);}
.theme-filter-dropdown__menu{position:absolute;left:0;right:0;top:calc(100% + .25rem);z-index:30;list-style:none;margin:0;padding:0;background:var(--background);border:1px solid var(--border);box-shadow:var(--shadow-elevated,0 18px 50px rgba(0,0,0,.08));max-height:20rem;overflow-y:auto;animation:theme-fade-in .35s ease;}
.theme-filter-dropdown__menu-divider{border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);}
.theme-filter-dropdown__option{width:100%;display:flex;align-items:center;gap:.625rem;padding:.625rem 1rem;background:none;border:none;text-align:left;font-size:.875rem;cursor:pointer;transition:background .3s,color .3s;}
.theme-filter-dropdown__option:hover{background:color-mix(in srgb,var(--secondary) 60%,transparent);}
.theme-filter-dropdown__option.is-active{color:var(--primary);}
.theme-filter-dropdown__option--accent{color:var(--primary);}
.theme-shop-filters__clear{align-self:center;background:none;border:none;padding:.75rem 0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--primary);cursor:pointer;white-space:nowrap;}
.theme-shop-filters__clear:hover{opacity:.7;}
.theme-filter-select{min-width:220px;height:3rem;padding:0 1rem;border:1px solid var(--border);background:var(--background);font-family:var(--font-body);font-size:.875rem;}
.theme-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;align-items:stretch;padding-bottom:5rem;}
@media(min-width:640px){.theme-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:1024px){.theme-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
.theme-product-card-wrap{display:flex;flex-direction:column;height:100%;}
.theme-product-card{position:relative;display:flex;flex-direction:column;height:100%;background:var(--muted);}
.theme-product-card > .theme-card-link{position:absolute;inset:0;z-index:2;pointer-events:auto;}
.theme-product-card *:not(.theme-card-link){pointer-events:none;}
.theme-product-card__image-wrapper{position:relative;aspect-ratio:4/5;overflow:hidden;}
.theme-product-card__badge{position:absolute;top:1rem;right:1rem;z-index:3;padding:.4rem .75rem;font-size:10px;letter-spacing:.22em;text-transform:uppercase;background:var(--foreground);color:var(--background);}
.theme-product-card__info{position:absolute;bottom:1rem;right:1rem;max-width:58%;background:color-mix(in srgb,var(--background) 95%,transparent);backdrop-filter:blur(4px);padding:1rem;box-shadow:var(--shadow-soft,0 6px 24px -8px rgba(0,0,0,.1));z-index:3;}
.theme-product-card__eyebrow{display:block;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin-bottom:.35rem;}
.theme-product-card__title{font-family:var(--font-display);font-style:italic;font-size:15px;line-height:1.2;margin:0 0 .35rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.theme-product-card__price{font-size:13px;}
.theme-product-card__price .woocommerce-Price-amount{font-weight:400;}
.theme-shop-empty-state,.theme-shop-no-match{padding:5rem 0;text-align:center;border:1px dashed var(--border);}
.theme-shop-empty-state__title{font-family:var(--font-display);font-style:italic;font-size:1.5rem;margin-bottom:.5rem;}
.theme-shop-empty-state__text{font-size:.875rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);max-width:32rem;margin:0 auto;}

/* =======================================================================
   PROCESS
   ======================================================================= */
.theme-process-section__grid{display:grid;grid-template-columns:1fr;min-height:80vh;}
@media(min-width:1024px){.theme-process-section__grid{grid-template-columns:1fr 1fr;}}
.theme-process-section__image{position:relative;min-height:50vh;order:2;}
@media(min-width:1024px){.theme-process-section__image{order:1;min-height:100%;}}
.theme-process-section__copy{display:flex;flex-direction:column;justify-content:center;padding:5rem 2rem;order:1;}
@media(min-width:1024px){.theme-process-section__copy{padding:5rem 5rem;order:2;}}
.theme-process-section .section-heading,.theme-process-section__title{font-size:2.25rem;line-height:1.05;margin:1.5rem 0 2rem;}
@media(min-width:768px){.theme-process-section__title{font-size:3rem;}}
.theme-process-section__text{color:color-mix(in srgb,var(--foreground) 55%,transparent);font-size:15px;line-height:1.7;margin-bottom:2.5rem;}
.theme-process-section__text p{margin:0 0 1rem;}
.theme-process-section__quote{font-family:var(--font-display);font-style:italic;font-size:1.25rem;border-top:1px solid var(--border);padding-top:2rem;}
@media(min-width:768px){.theme-process-section__quote{font-size:1.5rem;}}

/* =======================================================================
   BRAND
   ======================================================================= */
.theme-brand-section{background:color-mix(in srgb,var(--secondary) 40%,transparent);padding:5rem 0;}
.theme-brand-section__head{text-align:center;margin-bottom:3rem;}
.about-section.section-heading{font-size:1.875rem;line-height:1.1;margin-top:1rem;}
@media(min-width:768px){.about-section.section-heading{font-size:2.25rem;}}
@media(min-width:1024px){.about-section.section-heading{font-size:3rem;}}
.theme-brand-story,.theme-brand-meaning{margin-bottom:5rem;}
.theme-brand-story__grid{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start;}
@media(min-width:1024px){.theme-brand-story__grid{grid-template-columns:repeat(12,1fr);gap:2.5rem;}}
.theme-brand-story__grid > img{grid-column:span 12;width:100%;object-fit:cover;}
@media(min-width:1024px){.theme-brand-story__grid > img{grid-column:span 3;position:sticky;top:8rem;}}
.theme-brand-story__copy{grid-column:span 12;font-size:15px;line-height:1.7;color:color-mix(in srgb,var(--foreground) 85%,transparent);}
@media(min-width:1024px){.theme-brand-story__copy{grid-column:span 6;}}
.theme-brand-story__copy p{margin:0 0 1.25rem;overflow-wrap:break-word;}
.theme-brand-story__lead{font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--foreground);}
.theme-brand-story__quote{font-family:var(--font-display);font-style:italic;font-size:1.5rem;text-align:center;color:var(--foreground);padding-top:.5rem;}
.theme-brand-story__center{text-align:center;}
.theme-brand-story__signoff{font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--foreground);}
.theme-brand-palette__intro{max-width:none;margin:0 auto 2.5rem;font-size:15px;line-height:1.7;text-align:left;color:color-mix(in srgb,var(--foreground) 85%,transparent);}
.theme-brand-palette__intro p{margin:0 0 1.25rem;}
.offerings-section.section-heading{font-size:1.875rem;line-height:1.1;margin-top:1rem;}
@media(min-width:768px){.offerings-section.section-heading{font-size:2.25rem;}}
@media(min-width:1024px){.offerings-section.section-heading{font-size:3rem;}}
.theme-brand-palette__grid{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:768px){.theme-brand-palette__grid{grid-template-columns:repeat(3,1fr);}}
.theme-brand-palette__swatch{background:var(--background);padding:1.5rem;border:1px solid var(--border);}
.theme-brand-palette__color{aspect-ratio:3/2;margin-bottom:1rem;}
.theme-brand-palette__label{font-family:var(--font-display);font-style:italic;font-size:1.125rem;margin:0;}
.theme-brand-palette__sub{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin:.25rem 0 0;}

/* =======================================================================
   FAQ + CONTACT
   ======================================================================= */
.theme-resources-section{padding:5rem 0;}
.theme-faq{margin-bottom:6rem;}
.theme-faq__head{text-align:center;margin-bottom:3.5rem;}
.theme-faq .section-heading{font-size:2.25rem;line-height:1.05;margin-top:1rem;}
@media(min-width:768px){.theme-faq .section-heading{font-size:3rem;}}
.theme-faq__list{border-top:1px solid var(--border);}
.theme-faq__item{border-bottom:1px solid var(--border);}
.theme-faq__question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem 0;text-align:left;background:none;border:none;cursor:pointer;}
.theme-faq__question-main{display:flex;align-items:center;gap:1rem;min-width:0;padding-right:1rem;}
.theme-faq__topic-icon{flex-shrink:0;transition:color .5s,transform .5s;color:var(--primary);}
.theme-faq__item.is-open .theme-faq__topic-icon{color:var(--accent);transform:rotate(8deg);}
.theme-faq__question-text{font-family:var(--font-display);font-size:1.125rem;transition:color .3s;}
.theme-faq__question:hover .theme-faq__question-text{color:var(--primary);}
@media(min-width:768px){.theme-faq__question-text{font-size:1.25rem;}}
.theme-faq__icon{flex-shrink:0;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;transition:border-color .3s;}
.theme-faq__question:hover .theme-faq__icon{border-color:var(--primary);}
.theme-faq__answer{padding-bottom:1.5rem;padding-right:3rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);font-size:15px;line-height:1.7;overflow-wrap:break-word;}
.theme-contact{text-align:center;}
.contact-title{font-size:2.25rem;line-height:1.05;margin:1.25rem 0 2rem;}
@media(min-width:768px){.contact-title{font-size:3rem;}}
@media(min-width:1024px){.contact-title{font-size:3.75rem;}}
.theme-contact__text{max-width:32rem;margin:0 auto 2.5rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);font-size:15px;line-height:1.7;}

/* =======================================================================
   DISCOVER
   ======================================================================= */
.theme-discover-section{background:color-mix(in srgb,var(--secondary) 40%,transparent);scroll-margin-top:6rem;}
.theme-discover-section__head{text-align:center;padding:5rem 1.5rem 2.5rem;}
@media(min-width:1024px){.theme-discover-section__head{padding-top:7rem;}}
.theme-discover-section .section-heading{font-size:2.25rem;line-height:1.05;}
@media(min-width:768px){.theme-discover-section .section-heading{font-size:3rem;}}
@media(min-width:1024px){.theme-discover-section .section-heading{font-size:3rem;}}
.theme-discover-section__grid{display:grid;grid-template-columns:1fr;gap:2px;background:var(--background);}
@media(min-width:768px){.theme-discover-section__grid{grid-template-columns:repeat(3,1fr);gap:3px;}}
.theme-discover-tile{position:relative;display:block;min-height:58vh;overflow:hidden;text-align:left;background:var(--secondary);text-decoration:none;color:inherit;}
@media(min-width:768px){.theme-discover-tile{min-height:72vh;}}
.theme-discover-tile .cover-img{transition:transform 1.6s cubic-bezier(.25,.4,.25,1);will-change:transform;}
.theme-discover-tile:hover .cover-img{transform:scale(1.05);}
.theme-discover-tile__scrim{position:absolute;inset:0;top:0;height:55%;background:linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.3),transparent);pointer-events:none;}
.theme-discover-tile__eyebrow{position:absolute;top:1.5rem;left:1.75rem;font-size:10px;letter-spacing:.32em;text-transform:uppercase;font-weight:500;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.8);z-index:1;}
@media(min-width:768px){.theme-discover-tile__eyebrow{top:2rem;left:2.5rem;}}
.theme-discover-tile__content{position:absolute;top:4rem;left:1.75rem;right:1.75rem;transition:transform .5s;z-index:1;}
@media(min-width:768px){.theme-discover-tile__content{top:5rem;left:2.5rem;right:2.5rem;}}
.theme-discover-tile:hover .theme-discover-tile__content{transform:translateY(-4px);}
.theme-discover-tile__title{display:block;color:#fff;font-family:var(--font-display);font-size:1.5rem;line-height:1.15;text-shadow:0 2px 18px rgba(0,0,0,.75);}
@media(min-width:768px){.theme-discover-tile__title{font-size:1.875rem;}}
@media(min-width:1024px){.theme-discover-tile__title{font-size:2.125rem;}}

/* =======================================================================
   FOOTER
   ======================================================================= */
.site-footer{background:var(--primary);color:var(--primary-foreground);}
.site-footer__inner{padding:4rem 1.5rem;}
.site-footer .label-eyebrow{color:color-mix(in srgb,var(--primary-foreground) 70%,transparent);}
.site-footer__newsletter{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-bottom:3.5rem;padding-bottom:3rem;border-bottom:1px solid color-mix(in srgb,var(--primary-foreground) 15%,transparent);align-items:end;}
@media(min-width:768px){.site-footer__newsletter{grid-template-columns:1fr 1fr;}}
.site-footer__newsletter-title{font-size:1.5rem;margin:.75rem 0;}
@media(min-width:1024px){.site-footer__newsletter-title{font-size:1.875rem;}}
.site-footer__newsletter-text{font-size:.875rem;color:color-mix(in srgb,var(--primary-foreground) 70%,transparent);line-height:1.7;}
.site-footer__newsletter-form{display:flex;flex-direction:column;gap:.75rem;}
@media(min-width:640px){.site-footer__newsletter-form{flex-direction:row;justify-content:flex-end;}}
.site-footer__newsletter-input{width:100%;height:2.75rem;padding:0 1rem;background:transparent;border:1px solid color-mix(in srgb,var(--primary-foreground) 30%,transparent);color:var(--primary-foreground);font-size:.875rem;}
@media(min-width:640px){.site-footer__newsletter-input{width:18rem;}}
.site-footer__newsletter-input::placeholder{color:color-mix(in srgb,var(--primary-foreground) 50%,transparent);}
.site-footer__newsletter-submit{height:2.75rem;padding:0 1.5rem;background:var(--primary-foreground);color:var(--primary);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;gap:.5rem;justify-content:center;}
.site-footer__columns{display:grid;grid-template-columns:1fr;gap:2.5rem;}
@media(min-width:768px){.site-footer__columns{grid-template-columns:1.5fr 1fr 1fr;gap:4rem;}}
.site-footer__tagline{display:block;font-family:var(--font-display);font-style:italic;font-size:11px;letter-spacing:.16em;opacity:.7;margin-top:.5rem;}
.site-footer__about{margin-top:1.25rem;font-size:.875rem;max-width:24rem;line-height:1.7;color:color-mix(in srgb,var(--primary-foreground) 70%,transparent);}
.site-footer__nav ul,.site-footer__contact ul{list-style:none;margin:1.25rem 0 0;padding:0;}
.site-footer__nav li,.site-footer__contact li{margin-bottom:.75rem;font-size:.875rem;color:color-mix(in srgb,var(--primary-foreground) 70%,transparent);}
.site-footer__email{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:color-mix(in srgb,var(--primary-foreground) 70%,transparent);}
.site-footer__bottom{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid color-mix(in srgb,var(--primary-foreground) 15%,transparent);display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.18em;text-transform:uppercase;}
@media(min-width:640px){.site-footer__bottom{flex-direction:row;}}
.site-footer__bottom a{text-decoration:underline;text-underline-offset:4px;}

/* =======================================================================
   404
   ======================================================================= */
.theme-404-main{min-height:70vh;display:flex;align-items:center;justify-content:center;padding-top:calc(var(--header-height) + var(--admin-bar-height));}
.theme-404-container{text-align:center;}
.theme-404-code{font-size:3rem;margin-bottom:1rem;}
.theme-404-text{font-size:1.25rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin-bottom:1rem;}
.theme-404-link{color:var(--primary);text-decoration:underline;}

/* generic pages */
body:not(.theme-no-hero) .theme-page-main{padding-top:0;}
.theme-page-main,.theme-generic-main{padding-top:calc(var(--header-height) + var(--admin-bar-height));padding-bottom:5rem;}
.theme-page-container{padding-top:3rem;}
.page-title{font-size:2.5rem;margin-bottom:1.5rem;}

/* =======================================================================
   SIDE CART DRAWER (Section 12)
   ======================================================================= */
#theme-cart-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--foreground) 30%,transparent);z-index:70;opacity:0;pointer-events:none;transition:opacity .3s;}
body.cart-open #theme-cart-overlay{opacity:1;pointer-events:auto;}
#theme-cart-drawer{position:fixed;right:0;top:0;height:100%;width:100%;max-width:32rem;background:var(--background);z-index:71;box-shadow:-14px 0 40px -12px rgba(0,0,0,.2);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .4s cubic-bezier(.25,.4,.25,1);}
body.cart-open #theme-cart-drawer{transform:translateX(0);}
#theme-cart-drawer.is-updating{opacity:.6;pointer-events:none;}
.theme-cart-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:2rem 2rem 1.25rem;border-bottom:1px solid var(--border);}
.theme-cart-drawer__title{font-family:var(--font-display);font-style:italic;font-size:1.5rem;margin:0;}
.theme-cart-drawer__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;gap:1.25rem;}
.theme-cart-drawer__empty svg{color:color-mix(in srgb,var(--foreground) 45%,transparent);}
.theme-btn-outline{padding:.75rem 1.5rem;border:1px solid var(--foreground);font-size:11px;letter-spacing:.24em;text-transform:uppercase;}
.theme-cart-drawer__items{flex:1;overflow:auto;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:2rem;}
.theme-cart-item{display:flex;gap:1.25rem;}
.theme-cart-item__image{position:relative;display:block;width:6rem;height:8rem;flex-shrink:0;overflow:hidden;background:var(--secondary);}
.theme-cart-item__image img,.theme-cart-item__img{position:static;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;display:block;}
.theme-cart-item__info{flex:1;min-width:0;display:flex;flex-direction:column;}
.theme-cart-item__title{font-size:11px;letter-spacing:.22em;text-transform:uppercase;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.theme-cart-item__variation{font-size:.75rem;font-style:italic;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin:.4rem 0 0;}
.theme-cart-item__price{font-size:.875rem;margin:.4rem 0 0;}
.theme-cart-item__controls{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:1rem;}
.theme-cart-item__qty{display:flex;align-items:center;border:1px solid var(--border);}
.theme-cart-item__qty button{padding:.4rem .65rem;}
.theme-cart-item__qty span{padding:0 .6rem;font-size:.875rem;min-width:28px;text-align:center;}
.theme-cart-item__remove{font-size:.75rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);text-decoration:underline;text-underline-offset:4px;background:none;border:none;cursor:pointer;font-family:var(--font-body);}
.theme-cart-drawer__pair-with{padding-top:1rem;border-top:1px solid var(--border);margin-top:0;}
.theme-cart-drawer__pair-title{font-family:var(--font-display);font-style:italic;font-size:1.125rem;margin:0 0 1rem;color:var(--foreground);}
.theme-cart-drawer__pair-scroll{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;overflow:hidden;}
#theme-cart-drawer .theme-cart-drawer__pair-card{width:auto;min-width:0;display:flex!important;flex-direction:column;align-items:stretch;text-align:left;text-decoration:none;color:inherit;background:transparent!important;border:none!important;padding:0!important;margin:0;cursor:pointer;font-family:var(--font-body);min-height:0!important;height:auto!important;letter-spacing:normal!important;text-transform:none!important;border-radius:0!important;opacity:1!important;}
#theme-cart-drawer .theme-cart-drawer__pair-card:hover{background:transparent!important;color:inherit!important;opacity:1!important;}
#theme-cart-drawer .theme-cart-drawer__pair-media{display:grid;grid-template:1fr/1fr;width:100%;aspect-ratio:3/4;overflow:hidden;margin-bottom:.5rem;background:var(--secondary);}
#theme-cart-drawer .theme-cart-drawer__pair-media .theme-cart-drawer__pair-img{grid-area:1/1;width:100%;height:100%;min-width:0;min-height:0;max-width:none;margin:0;object-fit:cover;object-position:center;display:block;transition:transform .7s cubic-bezier(.25,.4,.25,1);}
.theme-cart-drawer__pair-card:hover .theme-cart-drawer__pair-img{transform:scale(1.05);}
.theme-cart-drawer__pair-name{font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-weight:400;}
.theme-cart-drawer__pair-price{font-size:.75rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin:.125rem 0 0;font-weight:400;}
.theme-cart-drawer__pair-price .woocommerce-Price-amount{font-weight:400;}
.theme-cart-drawer__footer{padding:1.5rem 2rem;border-top:1px solid var(--border);}
.theme-cart-drawer__subtotal{display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-display);font-size:1.25rem;margin-bottom:.5rem;}
.theme-cart-drawer__note{font-size:.75rem;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin-bottom:1rem;}
.theme-btn-primary,.theme-cart-drawer__checkout{display:flex;align-items:center;justify-content:center;width:100%;height:3rem;background:var(--primary);color:var(--primary-foreground);font-size:11px;letter-spacing:.28em;text-transform:uppercase;}
.theme-btn-primary:hover,.theme-cart-drawer__checkout:hover{opacity:.9;}

/* Hide WooCommerce "View cart" injected by AJAX add-to-cart (Section 11.4.2) */
.woocommerce-page a.added_to_cart.wc-forward,
.single-product a.added_to_cart.wc-forward,
body a.added_to_cart.wc-forward{display:none!important;}

/* Notice scoping (Section 14.1) */
.single-product .woocommerce-message,
.single-product .woocommerce-info{display:none;}
#theme-cart-drawer .woocommerce-message{display:none;}

/* =======================================================================
   WOOCOMMERCE — ADD TO CART BUTTON OVERRIDE (Section 11.4.1)
   ======================================================================= */
.single_add_to_cart_button.button,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card),
a.single_add_to_cart_button,
a.add_to_cart_button:not(.theme-cart-drawer__pair-card){
	background-color:var(--primary)!important;
	color:var(--color-button-text)!important;
	border:none!important;
	border-radius:var(--btn-radius)!important;
	min-height:var(--btn-height)!important;
	padding:var(--btn-padding)!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	font-family:var(--font-body)!important;
	font-size:var(--btn-font-size)!important;
	font-weight:var(--btn-font-weight)!important;
	letter-spacing:var(--btn-letter-spacing)!important;
	text-transform:none!important;
	cursor:pointer!important;
	transition:opacity .2s ease!important;
}
.single_add_to_cart_button.button:hover,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card):hover{opacity:.85!important;background-color:var(--primary)!important;color:var(--color-button-text)!important;}
.single_add_to_cart_button.button:disabled,
.single_add_to_cart_button.button.disabled,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card):disabled,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card).disabled{cursor:not-allowed!important;opacity:.4!important;pointer-events:none!important;}
.single_add_to_cart_button.button:disabled:hover,
.single_add_to_cart_button.button.disabled:hover,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card):disabled:hover,
.add_to_cart_button.button:not(.theme-cart-drawer__pair-card).disabled:hover{opacity:.4!important;background-color:var(--primary)!important;}
.single-product .single_add_to_cart_button.loading::after,
.ajax_add_to_cart.loading::after{display:none!important;}

.theme-attr-select-hidden{display:none!important;}
.theme-attr-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;}
.theme-attr-pill{padding:.5rem 1rem;border:1px solid var(--border);font-size:.75rem;letter-spacing:.05em;}
.theme-attr-pill.is-selected{background:var(--foreground);color:var(--background);border-color:var(--foreground);}

/* =======================================================================
   SINGLE PRODUCT — ProductDetail.tsx
   ======================================================================= */
.single-product-main{padding-top:calc(8rem + var(--admin-bar-height));background:var(--background);}
@media(min-width:1024px){.single-product-main{padding-top:calc(10rem + var(--admin-bar-height));}}

.theme-product-layout{display:grid;grid-template-columns:1fr;min-width:0;align-items:start;}
@media(min-width:1024px){.theme-product-layout{grid-template-columns:1fr 1fr;}}

.theme-product-gallery-wrap{position:relative;background:var(--background);min-width:0;max-width:100%;}
@media(min-width:1024px){.theme-product-gallery-wrap{position:sticky;top:calc(8rem + var(--admin-bar-height));align-self:start;}}

.theme-product-gallery{display:flex;min-width:0;width:100%;}
.theme-product-thumbnails{display:none;flex-direction:column;gap:.75rem;padding:1rem 1rem 1rem 1.5rem;background:color-mix(in srgb,var(--background) 40%,transparent);flex-shrink:0;}
@media(min-width:768px){.theme-product-thumbnails{display:flex;padding:1rem 1.5rem;}}
@media(min-width:1024px){.theme-product-thumbnails{padding:1.5rem;}}

.theme-product-thumbnails--mobile{display:flex;flex-direction:row;gap:.5rem;padding:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--background);}
@media(min-width:768px){.theme-product-thumbnails--mobile{display:none;}}

.theme-product-thumb{width:3.5rem;height:3.5rem;overflow:hidden;border:1px solid transparent;opacity:.6;flex-shrink:0;padding:0;background:none;cursor:pointer;transition:opacity .3s,border-color .3s;}
@media(min-width:1024px){.theme-product-thumb{width:4rem;height:4rem;}}
.theme-product-thumb:hover{opacity:1;}
.theme-product-thumb.is-active{border-color:var(--foreground);opacity:1;}
.theme-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}

.theme-product-main-image{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--background);aspect-ratio:3/4;width:100%;max-height:min(75vh,calc(100vw - 3rem));}
@media(min-width:1024px){.theme-product-main-image{max-height:calc(100vh - 12rem - var(--admin-bar-height));}}
.theme-product-main-image img{width:100%;height:100%;object-fit:cover;display:block;}

.theme-product-info{padding:2.5rem 1.5rem;min-width:0;max-width:100%;}
@media(min-width:768px){.theme-product-info{padding:2.5rem 2.5rem;}}
@media(min-width:1024px){.theme-product-info{padding:4rem 3rem;}}

.theme-breadcrumb{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin-bottom:1.5rem;}
.theme-breadcrumb a{transition:color .3s;}
.theme-breadcrumb a:hover{color:var(--foreground);}
.theme-breadcrumb__sep{margin:0 .5rem;}

.product-title{font-family:var(--font-body);font-weight:400;font-size:15px;letter-spacing:.22em;text-transform:uppercase;line-height:1.5;margin:0;color:var(--foreground);}
@media(min-width:768px){.product-title{font-size:1rem;}}

.theme-product-sku{margin:.75rem 0 0;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 55%,transparent);}

.theme-product-divider{border:none;border-top:1px solid var(--border);margin:1.75rem 0;}

.theme-product-price{font-family:var(--font-body);font-size:1.125rem;color:var(--foreground);margin:0;}
.theme-product-price .woocommerce-Price-amount{font-weight:400;}

.theme-product-note{margin-top:1.75rem;padding:1rem 1.25rem;background:color-mix(in srgb,var(--secondary) 70%,transparent);font-size:13px;line-height:1.65;color:color-mix(in srgb,var(--foreground) 85%,transparent);}

.theme-product-purchase{margin-top:2rem;}
.theme-variation-group{margin-top:1.75rem;}
.theme-variation-group__label{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:color-mix(in srgb,var(--foreground) 55%,transparent);margin:0 0 .75rem;font-weight:400;font-family:var(--font-body);}

.single-product .variations,.single-product .variations .label,.single-product .variations .value select{display:none!important;}
.single-product .woocommerce-variation-price,.single-product .reset_variations{display:none!important;}
.single-product .single_variation_wrap{margin-top:0;}

.theme-attr-pills{display:flex;flex-wrap:wrap;gap:.5rem;}
.theme-attr-pill{min-width:3.5rem;padding:.625rem 1rem;border:1px solid var(--border);font-family:var(--font-body);font-size:.75rem;letter-spacing:.05em;background:none;cursor:pointer;transition:background .3s,border-color .3s,color .3s;}
.theme-attr-pill:hover{border-color:var(--foreground);}
.theme-attr-pill.is-selected{background:var(--foreground);color:var(--background);border-color:var(--foreground);}

.single-product .theme-add-to-cart-area{display:block;margin-top:2rem;}
.single-product .theme-quantity-wrapper{display:none!important;}

.single-product .single_add_to_cart_button.button,
.single-product a.single_add_to_cart_button.button,
.single-product button.single_add_to_cart_button.button{
	width:100%!important;
	height:3.5rem!important;
	min-height:3.5rem!important;
	padding:0 2rem!important;
	border-radius:0!important;
	background-color:var(--foreground)!important;
	color:var(--background)!important;
	border:1px solid var(--foreground)!important;
	font-family:var(--font-body)!important;
	font-size:11px!important;
	font-weight:500!important;
	letter-spacing:.28em!important;
	text-transform:uppercase!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:.5rem!important;
	transition:background .3s,color .3s,border-color .3s,opacity .3s!important;
	opacity:1!important;
}
.single-product .single_add_to_cart_button.button:hover,
.single-product a.single_add_to_cart_button.button:hover,
.single-product button.single_add_to_cart_button.button:hover:not(:disabled){
	background-color:var(--primary)!important;
	color:var(--primary-foreground)!important;
	border-color:var(--primary)!important;
	opacity:1!important;
}
.single-product .single_add_to_cart_button.button:disabled,
.single-product .single_add_to_cart_button.button.disabled,
.single-product button.single_add_to_cart_button.button:disabled{
	cursor:not-allowed!important;
	opacity:.4!important;
	pointer-events:none!important;
}
.single-product .single_add_to_cart_button.is-added{background-color:var(--foreground)!important;color:var(--background)!important;border-color:var(--foreground)!important;opacity:1!important;pointer-events:none!important;}
.single-product .single_add_to_cart_button__icon{width:1rem;height:1rem;flex-shrink:0;}

.theme-product-details{margin-top:3rem;}
.theme-product-details__title{font-size:11px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 1.25rem;font-weight:400;font-family:var(--font-body);color:var(--foreground);}
.woocommerce-product-details__description{font-family:var(--font-display);font-size:19px;line-height:1.55;color:color-mix(in srgb,var(--foreground) 90%,transparent);margin:0 0 1.5rem;overflow-wrap:break-word;word-break:break-word;}
.woocommerce-product-details__description p{margin:0;}
.theme-product-details__list,.woocommerce-product-details__short-description ul{margin:1.5rem 0 0;padding-left:1.25rem;list-style:disc;font-family:var(--font-body);font-size:14px;line-height:1.65;color:color-mix(in srgb,var(--foreground) 80%,transparent);}
.theme-product-details__list li,.woocommerce-product-details__short-description li{margin:0 0 .625rem;line-height:1.65;}
.theme-product-details__list li:last-child,.woocommerce-product-details__short-description li:last-child{margin-bottom:0;}
.theme-product-details__list li::marker,.woocommerce-product-details__short-description li::marker{color:var(--primary);}

.related-products-section{padding:6rem 0;border-top:1px solid var(--border);margin-top:3rem;}
.related-products-title{font-family:var(--font-display);font-size:1.875rem;line-height:1.15;margin:0 0 3rem;}
@media(min-width:768px){.related-products-title{font-size:2.25rem;}}
.theme-product-grid--related{gap:2rem 2rem;padding-bottom:0;}
@media(min-width:640px){.theme-product-grid--related{gap:3rem 2rem;}}
@media(min-width:1024px){.theme-product-grid--related{gap:3rem 2rem;}}

.posted_in,.single-product .posted_in{display:none;}
.theme-stock-status--out{display:none;}

.theme-quantity-wrapper{display:flex;align-items:center;border:1px solid var(--border);height:var(--btn-height);}
.theme-quantity-wrapper .theme-qty-minus,.theme-quantity-wrapper .theme-qty-plus{padding:0 1rem;height:100%;}
.theme-qty-input{width:3rem;text-align:center;border:none;background:none;font-family:var(--font-body);font-size:.875rem;-moz-appearance:textfield;}
.theme-qty-input::-webkit-outer-spin-button,.theme-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

.variations.shop_attributes tbody,
.variations tbody tr,
.variations tbody td{display:block;width:100%;}
.variations tbody td.label{padding-bottom:.25rem;font-weight:600;}
.variations tbody td.value{padding-top:0;}

/* =======================================================================
   WOOCOMMERCE SHOP / ARCHIVE
   ======================================================================= */
.theme-shop-main{padding-top:calc(var(--header-height) + var(--admin-bar-height));padding-bottom:4rem;}
.theme-shop-heading{text-align:center;margin-bottom:2rem;}
.theme-shop-body{padding-bottom:4rem;}
.theme-shop-empty{text-align:center;padding:4rem 0;}

/* =======================================================================
   CHECKOUT / CART / ACCOUNT / THANK YOU
   ======================================================================= */
body.woocommerce-checkout .site-main{padding-top:calc(var(--header-height) + var(--admin-bar-height));padding-bottom:4rem;}
body.woocommerce-checkout .entry-content{max-width:100%;}
body.woocommerce-cart .site-main,
body.woocommerce-account .site-main{padding-top:calc(var(--header-height) + var(--admin-bar-height));padding-bottom:4rem;}

body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar{min-width:0;width:100%;max-width:none;}
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-select select{width:100%!important;max-width:none!important;font-family:var(--font-body);border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-select select:focus{outline:2px solid var(--primary);}
body.woocommerce-checkout .wc-block-checkout{display:block;}
@media(min-width:768px){
	body.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout{
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:var(--checkout-gap);
		align-items:start;
	}
}
body.woocommerce-checkout .wc-block-checkout__sidebar{background:color-mix(in srgb,var(--muted) 60%,var(--background));border-radius:var(--card-radius);padding:var(--section-padding);}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{background:var(--primary)!important;border-radius:var(--btn-radius)!important;font-family:var(--font-body)!important;letter-spacing:.15em;text-transform:uppercase;font-size:12px!important;}
body.woocommerce-checkout .wc-block-components-notice-banner{grid-column:1/-1;}

body.theme-thankyou-page{overflow-x:hidden;}
body.theme-thankyou-page .woocommerce-order-details table{width:100%;table-layout:fixed;}
body.theme-thankyou-page .woocommerce-order-details tfoot th{text-align:left;}
body.theme-thankyou-page .woocommerce-order-details tfoot td{text-align:right;}
body.theme-thankyou-page .woocommerce-order h2,
body.theme-thankyou-page .woocommerce-order-details__title{padding:0 0 1rem;font-size:1.5rem;}
@media(min-width:768px){
	body.theme-thankyou-page .woocommerce-customer-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start;}
}
body.theme-thankyou-page .woocommerce-customer-details address{min-width:0;overflow-wrap:break-word;}

/* =======================================================================
   CUSTOMIZER MEDIA CONTROL (Section 22.3)
   ======================================================================= */
.theme-media-control{display:flex;flex-direction:column;gap:.5rem;}
.theme-media-url-input{width:100%;min-width:0;box-sizing:border-box;}
.theme-media-preview{max-width:100%;height:auto;display:block;}
