/* =============================================================
   Stylex theme — main stylesheet (components + WooCommerce + responsive)
   Mobile-first. Tokens come from tokens.css.
   ============================================================= */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:var(--lh-base);}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}
:focus-visible{outline:2px solid var(--stx-gold-400);outline-offset:2px;}
.skip-link{position:absolute;left:-9999px;}
.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px 14px;z-index:200;border-radius:4px;}

.container{max-width:var(--container);margin:0 auto;padding:0 20px;width:100%;}
.container--wide{max-width:var(--container-wide);}
.container--text{max-width:var(--container-text);}
@media(min-width:768px){.container{padding:0 32px;}}

/* ===== Buttons ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:14px 26px;border-radius:4px;border:1.5px solid transparent;cursor:pointer;transition:all var(--dur-base) var(--ease-out);white-space:nowrap;line-height:1;}
.btn:active{transform:translateY(1px);}
.btn--primary{background:linear-gradient(135deg,#F4D06A 0%,#E6A81B 52%,#C8910F 100%);color:#1A1814;box-shadow:0 8px 22px -8px rgba(201,145,15,.55);}
.btn--primary:hover{background:linear-gradient(135deg,#F8DA84 0%,#EDB221 52%,#D69A14 100%);box-shadow:0 12px 30px -8px rgba(201,145,15,.72);color:#15120C;transform:translateY(-1px);}
.btn--outline{background:transparent;border-color:var(--stx-gold-400);color:var(--stx-gold-500);}
.btn--outline:hover{background:var(--stx-gold-50);}
.btn--onyx{background:var(--stx-onyx-900);color:var(--stx-ivory-50);}
.btn--onyx:hover{background:var(--stx-onyx-800);color:var(--stx-ivory-50);}
.btn--outline-light{background:transparent;border-color:var(--stx-ivory-50);color:var(--stx-ivory-50);}
.btn--outline-light:hover{background:rgba(250,247,241,.08);}
.btn--sm{padding:9px 16px;font-size:11px;}
.btn--block{width:100%;}

/* ===== Announcement + Header ===== */
.announce{background:var(--stx-onyx-900);color:var(--stx-ivory-50);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-align:center;padding:9px 12px;}
.announce b{color:var(--stx-gold-300);font-weight:600;}
.announce__link{color:inherit;text-decoration:none;border-bottom:1px solid rgba(236,186,46,.45);transition:border-color var(--dur-base);}
.announce__link:hover b{color:var(--stx-gold-200);}
.announce__link:hover{border-bottom-color:var(--stx-gold-200);}
.site-header{position:sticky;top:0;z-index:50;background:rgba(11,11,13,.82);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid rgba(255,255,255,.06);color:var(--stx-ivory-50);}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:18px;}
.site-header__logo{display:inline-flex;align-items:center;line-height:1;}
.site-header__logo img{height:30px;width:auto;display:block;}
@media(min-width:768px){.site-header__logo img{height:34px;}}
.site-footer__logo{display:inline-block;}
.site-footer__logo img{height:44px;width:auto;display:block;margin-bottom:18px;}
.mobile-nav__logo{height:32px;width:auto;}

/* Hero stats */
.hero__stats{display:flex;gap:26px;margin-top:30px;flex-wrap:wrap;}
.hero__stat b{font-family:var(--font-display);font-weight:600;font-size:30px;color:var(--stx-gold-300);display:block;line-height:1;}
.hero__stat span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stx-onyx-100);}
@media(min-width:768px){.hero__stats{gap:40px;}.hero__stat b{font-size:36px;}}
.site-header__nav{display:none;gap:26px;align-items:center;}
.site-header__nav a{font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;padding:4px 0;position:relative;opacity:.85;transition:color var(--dur-base),opacity var(--dur-base);}
.site-header__nav a:hover,.site-header__nav a.active{color:var(--stx-gold-300);opacity:1;}
.site-header__actions{display:flex;gap:18px;align-items:center;}
.site-header__icon{color:inherit;display:inline-flex;position:relative;cursor:pointer;transition:color var(--dur-base);background:none;border:0;padding:0;}
.site-header__icon:hover{color:var(--stx-gold-300);}
.site-header__count{position:absolute;top:-7px;right:-9px;background:var(--stx-gold-400);color:#fff;font-size:10px;font-weight:700;min-width:17px;height:17px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;}
.nav-toggle{display:inline-flex;background:none;border:0;color:inherit;padding:0;}
@media(min-width:992px){.site-header__nav{display:flex;}.nav-toggle{display:none;}}

/* Mobile drawer */
.mobile-nav{position:fixed;inset:0;z-index:60;background:var(--stx-onyx-900);color:var(--stx-ivory-50);transform:translateX(100%);transition:transform var(--dur-slow) var(--ease-out);display:flex;flex-direction:column;padding:24px;}
.mobile-nav.open{transform:translateX(0);}
.mobile-nav__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;}
.mobile-nav__list{list-style:none;margin:0;padding:0;}
.mobile-nav a{display:block;font-family:var(--font-display);font-size:28px;font-weight:500;padding:14px 0;border-bottom:1px solid var(--stx-onyx-600);color:var(--stx-ivory-50);}
.mobile-nav a:hover{color:var(--stx-gold-300);}
body.nav-open{overflow:hidden;}

/* ===== Footer ===== */
.site-footer{background:var(--stx-onyx-900);color:var(--stx-ivory-100);padding:64px 0 28px;margin-top:80px;border-top:1px solid var(--stx-onyx-500);}
.site-footer__grid{display:grid;grid-template-columns:1fr;gap:36px;}
.site-footer__brand .site-header__logo{display:inline-block;margin-bottom:16px;}
.site-footer__brand p{color:var(--stx-onyx-300);font-size:14px;line-height:1.6;max-width:340px;}
.site-footer h5{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--stx-gold-300);margin:0 0 16px;}
.site-footer ul{list-style:none;padding:0;margin:0;}
.site-footer ul li{margin-bottom:10px;}
.site-footer ul a{font-size:14px;color:var(--stx-onyx-200);transition:color var(--dur-base);}
.site-footer ul a:hover{color:var(--stx-gold-300);}
.site-footer__bottom{border-top:1px solid var(--stx-onyx-500);padding-top:24px;margin-top:40px;display:flex;flex-direction:column;gap:14px;justify-content:space-between;align-items:center;font-size:12px;color:var(--stx-onyx-300);letter-spacing:.04em;text-align:center;}
.site-footer__social{display:flex;gap:16px;align-items:center;}
.site-footer__social a{color:var(--stx-ivory-100);transition:color var(--dur-base);}
.site-footer__social a:hover{color:var(--stx-gold-300);}
@media(min-width:768px){.site-footer{padding-top:80px;}.site-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;}.site-footer__bottom{flex-direction:row;text-align:left;}}

/* ===== Section header ===== */
.section{padding:64px 0;}
.section--muted{background:var(--bg-muted);}
.section--dark{background:var(--stx-onyx-900);color:var(--stx-ivory-50);}
.section--dark .section-header h2{color:var(--stx-ivory-50);}
.section-header{text-align:center;margin-bottom:40px;}
.section-header h2{margin:14px 0 8px;}
.section-header h2 em{font-style:italic;color:var(--stx-gold-500);}
.section-header p{color:var(--fg-body);max-width:540px;margin:0 auto;}
.section-header .eyebrow{justify-content:center;}
@media(min-width:768px){.section{padding:90px 0;}.section-header{margin-bottom:56px;}}

/* ===== Hero (full-bleed image) ===== */
.hero{position:relative;background:var(--stx-onyx-900);color:var(--stx-ivory-50);overflow:hidden;}
.hero__bg{position:absolute;inset:0;z-index:0;}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center;}
.hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(11,11,13,.74) 0%,rgba(11,11,13,.5) 42%,rgba(11,11,13,.84) 100%);}
.hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:clamp(470px,72vh,560px);padding:64px 0;max-width:640px;}
.hero h1{color:var(--stx-ivory-50);font-size:clamp(38px,9vw,72px);line-height:1.02;letter-spacing:-.02em;margin:16px 0 18px;}
.hero h1 em{font-style:italic;color:var(--stx-gold-300);}
.hero p{color:var(--stx-onyx-100);font-size:17px;line-height:1.6;max-width:440px;margin-bottom:28px;}
.hero__actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
@media(min-width:768px){.hero::after{background:linear-gradient(90deg,rgba(11,11,13,.92) 0%,rgba(11,11,13,.62) 50%,rgba(11,11,13,.2) 100%);}.hero__inner{min-height:clamp(520px,68vh,620px);}}

/* ===== Lifestyle band (full-bleed image) ===== */
.lifestyle{position:relative;overflow:hidden;color:var(--stx-ivory-50);background:var(--stx-onyx-900);}
.lifestyle__bg{position:absolute;inset:0;z-index:0;}
.lifestyle__bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%;}
.lifestyle::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(11,11,13,.82),rgba(11,11,13,.66) 50%,rgba(11,11,13,.85));}
.lifestyle__inner{position:relative;z-index:2;text-align:center;padding:72px 0;max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center;}
.lifestyle .eyebrow{justify-content:center;}
.lifestyle h2{color:var(--stx-ivory-50);}
.lifestyle h2 em{font-style:italic;color:var(--stx-gold-300);}
.lifestyle p{color:var(--stx-onyx-100);max-width:430px;margin-bottom:24px;}
@media(min-width:768px){.lifestyle__inner{padding:120px 0;}.lifestyle__bg img{object-position:center 35%;}}

/* ===== Product grid + card ===== */
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(min-width:768px){.product-grid{grid-template-columns:repeat(3,1fr);gap:20px;}}
@media(min-width:1100px){.product-grid{grid-template-columns:repeat(4,1fr);gap:24px;}}
.product-card{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:4px;overflow:hidden;transition:all 280ms var(--ease-out);display:flex;flex-direction:column;}
.product-card:hover{border-color:var(--stx-gold-300);box-shadow:var(--shadow-md);transform:translateY(-2px);}
.product-card__media{position:relative;overflow:hidden;aspect-ratio:1/1;background:var(--stx-onyx-900);}
.product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-out);}
.product-card:hover .product-card__media img{transform:scale(1.04);}
.product-card__flag{position:absolute;top:12px;left:12px;background:var(--stx-gold-400);color:#fff;font-size:10px;font-weight:600;letter-spacing:.16em;padding:5px 10px;border-radius:2px;text-transform:uppercase;z-index:3;}
.product-card__flag--sale{background:var(--stx-danger);}
.product-card__body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:4px;}
.product-card__name{font-family:var(--font-display);font-weight:600;font-size:23px;line-height:1.12;color:var(--fg);margin:0;}
.product-card__sub{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--stx-gold-500);}
.product-card__price-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:8px;}
.product-card__price{font-family:var(--font-body);font-weight:700;font-size:18px;color:var(--fg);letter-spacing:-.01em;font-variant-numeric:tabular-nums;}
.product-card__price del{color:var(--fg-muted);font-size:13px;margin-right:6px;font-weight:500;}
@media(min-width:768px){.product-card__name{font-size:26px;}.product-card__price{font-size:22px;}.product-card__body{padding:20px 22px 22px;}}

/* ===== Trust bar ===== */
.trust-bar{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);}
.trust-bar__item{padding:22px 12px;text-align:center;border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);display:flex;flex-direction:column;align-items:center;gap:8px;}
.trust-bar__item:nth-child(2n){border-right:0;}
.trust-bar__icon{color:var(--stx-gold-400);}
.trust-bar__title{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--fg);}
.trust-bar__sub{font-size:12px;color:var(--fg-muted);}
@media(min-width:768px){.trust-bar{grid-template-columns:repeat(4,1fr);}.trust-bar__item{padding:28px 16px;border-bottom:0;}.trust-bar__item:nth-child(2n){border-right:1px solid var(--hairline);}.trust-bar__item:last-child{border-right:0;}}

/* ===== Feature / collection / story / testimonial / faq / cta ===== */
.feature-grid{display:grid;grid-template-columns:1fr;gap:18px;}
.feature-card{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:4px;padding:34px 28px;text-align:center;transition:border-color var(--dur-base);}
.feature-card:hover{border-color:var(--stx-gold-300);}
.feature-card__icon{color:var(--stx-gold-400);margin-bottom:16px;display:inline-flex;}
.feature-card h3{font-size:22px;margin:0 0 10px;}
.feature-card p{color:var(--fg-body);font-size:14px;line-height:1.6;margin:0;}
@media(min-width:768px){.feature-grid{grid-template-columns:repeat(3,1fr);gap:24px;}}

.collection-grid{display:grid;grid-template-columns:1fr;gap:14px;}
.collection-card{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:4px;display:block;}
.collection-card img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-out);}
.collection-card:hover img{transform:scale(1.05);}
.collection-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,13,0) 30%,rgba(11,11,13,.85) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:28px;color:var(--stx-ivory-50);}
.collection-card__overlay h3{color:var(--stx-ivory-50);font-size:26px;margin:8px 0;}
.collection-card__overlay .arrow{margin-top:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--stx-gold-300);}
@media(min-width:768px){.collection-grid{grid-template-columns:repeat(3,1fr);gap:16px;}}

.story{display:grid;grid-template-columns:1fr;gap:36px;align-items:center;}
.story__media{aspect-ratio:4/5;background:var(--stx-onyx-900);border-radius:4px;overflow:hidden;}
.story__media img{width:100%;height:100%;object-fit:cover;}
.story__copy h2 em{font-style:italic;color:var(--stx-gold-500);}
.story__copy p{font-size:16px;line-height:1.7;color:var(--fg-body);margin-bottom:20px;}
.story__copy .dropcap::first-letter{font-family:var(--font-display);font-style:italic;font-size:4.4em;line-height:.85;float:left;margin:.1em .12em 0 0;color:var(--stx-gold-400);font-weight:500;}
@media(min-width:768px){.story{grid-template-columns:1fr 1fr;gap:64px;}}

.testimonial-grid{display:grid;grid-template-columns:1fr;gap:18px;}
.testimonial{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:4px;padding:32px 30px;}
.testimonial__mark{font-family:var(--font-display);font-style:italic;font-size:52px;line-height:.3;color:var(--stx-gold-400);display:block;margin-bottom:18px;}
.testimonial__quote{font-family:var(--font-display);font-style:italic;font-size:21px;line-height:1.4;color:var(--fg);margin:0 0 20px;}
.testimonial__by{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--fg-muted);}
.testimonial__by b{color:var(--fg);}
@media(min-width:768px){.testimonial-grid{grid-template-columns:1fr 1fr;gap:24px;}}

.faq{max-width:760px;margin:0 auto;}
.faq__item{border-bottom:1px solid var(--hairline);}
.faq__btn{width:100%;background:transparent;border:0;padding:22px 0;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--fg);cursor:pointer;}
.faq__btn:hover{color:var(--stx-gold-500);}
.faq__icon{font-family:var(--font-body);font-size:24px;color:var(--stx-gold-400);font-weight:300;transition:transform var(--dur-base);flex-shrink:0;}
.faq__item.open .faq__icon{transform:rotate(45deg);}
.faq__content{padding:0 0 22px;font-size:15px;line-height:1.7;color:var(--fg-body);max-width:640px;display:none;}
.faq__item.open .faq__content{display:block;}

.cta-band{background:var(--stx-onyx-900);color:var(--stx-ivory-50);padding:72px 0;text-align:center;position:relative;overflow:hidden;}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(193,155,68,.12),transparent 60%);pointer-events:none;}
.cta-band h2{color:var(--stx-ivory-50);font-size:clamp(32px,4vw,56px);margin-bottom:14px;position:relative;}
.cta-band h2 em{font-style:italic;color:var(--stx-gold-300);}
.cta-band p{color:var(--stx-onyx-200);max-width:500px;margin:0 auto 30px;position:relative;}
.cta-band__actions{display:inline-flex;gap:12px;position:relative;flex-wrap:wrap;justify-content:center;}

/* ===== Page header (generic) + content ===== */
.page-hero{background:var(--stx-onyx-900);color:var(--stx-ivory-50);text-align:center;padding:56px 0;}
.page-hero h1{color:var(--stx-ivory-50);margin:12px 0 0;}
.page-hero .eyebrow{justify-content:center;}
.entry{max-width:var(--container-text);margin:56px auto;padding:0 20px;}
.entry h1,.entry h2,.entry h3{margin-top:1.6em;}
.entry img{border-radius:4px;margin:1.5em 0;}
.entry a{color:var(--stx-gold-600);text-decoration:underline;text-underline-offset:2px;}
.entry-figure{margin:40px 0;}
.entry-figure img{width:100%;height:auto;display:block;border-radius:4px;margin:0;}
.entry-figure figcaption{margin-top:10px;font-size:13px;color:var(--fg-muted);text-align:center;font-style:italic;}
.breadcrumbs{font-size:12px;letter-spacing:.04em;color:var(--fg-muted);padding:18px 0;}
.breadcrumbs a:hover{color:var(--stx-gold-500);}

/* =============================================================
   WooCommerce overrides — map default markup to brand
   ============================================================= */
.woocommerce-page .container,.woocommerce .container{}
.wc-wrap{padding:40px 0 8px;}
.woocommerce-products-header{text-align:center;padding:24px 0 8px;}
.woocommerce-products-header__title{font-family:var(--font-display);}
.term-description{text-align:center;max-width:640px;margin:0 auto 8px;color:var(--fg-body);}
.woocommerce-result-count{font-family:var(--font-mono);font-size:12px;color:var(--fg-muted);}
.woocommerce-ordering select{font-family:var(--font-body);padding:8px 12px;border:1px solid var(--hairline-strong);border-radius:4px;background:var(--bg-elevated);}

/* Shop loop → custom product cards (bigger images, even buttons) */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;}
@media(min-width:600px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}}
@media(min-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;}}
/* Homepage Best Sellers — reuse shop cards, but 4-up */
.woocommerce.stx-bestsellers ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
@media(min-width:1024px){.woocommerce.stx-bestsellers ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;}}
.woocommerce ul.products li.product.stx-card{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:4px;overflow:hidden;margin:0!important;width:auto!important;float:none!important;text-align:left;display:flex;flex-direction:column;transition:border-color 280ms var(--ease-out),box-shadow 280ms var(--ease-out),transform 280ms var(--ease-out);}
.woocommerce ul.products li.product.stx-card:hover{border-color:var(--stx-gold-300);box-shadow:var(--shadow-md);transform:translateY(-3px);}
.stx-card__link{display:flex;flex-direction:column;color:inherit;}
.stx-card__media{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--stx-onyx-900);}
.stx-card__media img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;transition:transform 600ms var(--ease-out);}
.stx-card:hover .stx-card__media img{transform:scale(1.05);}
.stx-card__flag{position:absolute;top:12px;left:12px;z-index:3;background:var(--stx-danger);color:#fff;border-radius:2px;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;line-height:1;}
.stx-card__info{padding:20px 22px 4px;display:flex;flex-direction:column;gap:5px;}
.stx-card__title{font-family:var(--font-display);font-weight:600;font-size:26px;line-height:1.12;color:var(--fg);margin:0;min-height:1.18em;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.stx-card__sub{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--stx-gold-500);}
.stx-card__price{font-family:var(--font-body);font-weight:700;font-size:18px;color:var(--fg);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:10px;}
@media(max-width:600px){.stx-card__info{padding:16px 15px 4px;}.stx-card__title{font-size:21px;}.stx-card__sub{font-size:10px;letter-spacing:.12em;}}
.stx-card__price del{color:var(--fg-muted);font-weight:500;font-size:.72em;margin-right:6px;}
.stx-card__price ins{text-decoration:none;}
.stx-card__action{margin-top:auto;padding:16px 20px 20px;}
.stx-card__action .button,.stx-card__action .added_to_cart{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;width:100%;background:linear-gradient(160deg,#2A2A30 0%,#161619 55%,#0A0A0C 100%);color:var(--stx-ivory-50);border:1px solid rgba(255,255,255,.07);border-radius:4px;padding:14px 16px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:background var(--dur-base),box-shadow var(--dur-base),transform var(--dur-base);margin:0;}
.stx-card__action .button:hover{background:linear-gradient(160deg,#37373F 0%,#1C1C21 55%,#101013 100%);box-shadow:0 10px 22px -10px rgba(0,0,0,.55),inset 0 -2px 0 0 var(--stx-gold-400);color:#fff;transform:translateY(-1px);}
.woocommerce span.onsale{background:var(--stx-danger);color:#fff;border-radius:2px;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;min-height:0;min-width:0;padding:5px 10px;line-height:1;}

/* ===== Single product (PDP) — refined ===== */
.stx-pdp{display:grid;grid-template-columns:1fr;gap:26px;margin:0;}
@media(min-width:900px){.stx-pdp{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start;}}
.woocommerce-product-gallery{opacity:1!important;}
.stx-pdp__media{position:relative;min-width:0;}
@media(min-width:900px){.stx-pdp__media{position:sticky;top:96px;}}
.stx-pdp .woocommerce-product-gallery{margin:0!important;width:100%!important;float:none!important;}
.stx-pdp .woocommerce-product-gallery__wrapper{margin:0;}
.stx-pdp .woocommerce-product-gallery__image{margin:0;}
.stx-pdp .woocommerce-product-gallery__image{overflow:hidden;border-radius:4px;}
.stx-pdp .woocommerce-product-gallery__image img,.stx-pdp .flex-viewport{aspect-ratio:1/1;width:100%!important;height:auto;object-fit:cover;border-radius:4px;background:var(--stx-onyx-900);transition:transform .6s var(--ease-out);}
.stx-pdp .woocommerce-product-gallery__image:hover img{transform:scale(1.045);}
.stx-pdp .flex-control-thumbs{display:flex;gap:10px;padding:0;margin:12px 0 0;list-style:none;flex-wrap:wrap;}
.stx-pdp .flex-control-thumbs li{width:78px;}
.stx-pdp .flex-control-thumbs img{aspect-ratio:1/1;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.55;border:1px solid transparent;transition:opacity var(--dur-base),border-color var(--dur-base);}
.stx-pdp .flex-control-thumbs img:hover{opacity:.85;}
.stx-pdp .flex-control-thumbs img.flex-active{opacity:1;border-color:var(--stx-gold-400);}
.stx-pdp span.onsale{position:absolute;top:14px;left:14px;z-index:3;}

/* summary */
.stx-pdp__summary{min-width:0;max-width:540px;}
.stx-pdp__eyebrow{margin-bottom:14px;}
.stx-pdp .product_title{font-family:var(--font-display);font-weight:500;font-size:clamp(26px,3.2vw,38px);line-height:1.1;letter-spacing:-.01em;margin:0 0 14px;color:var(--fg);}
.stx-pdp p.price,.stx-pdp .price{font-family:var(--font-body);font-weight:700;font-size:26px;color:var(--fg);letter-spacing:-.01em;margin:0 0 18px;font-variant-numeric:tabular-nums;}
.stx-pdp p.price del{color:var(--fg-muted);font-size:18px;margin-right:8px;font-weight:500;}
.stx-pdp p.price ins{text-decoration:none;}
.stx-pdp .woocommerce-product-details__short-description{font-size:15px;line-height:1.7;color:var(--fg-body);margin:0 0 22px;}
.stx-pdp .woocommerce-product-details__short-description p{margin:0 0 10px;}
.stx-pdp .woocommerce-product-details__short-description p:last-child{margin-bottom:0;}

/* spec strip */
.pdp-specs{display:flex;margin:0 0 24px;border:1px solid var(--hairline);border-radius:4px;overflow:hidden;}
.pdp-specs>div{flex:1;min-width:0;padding:12px 16px;border-right:1px solid var(--hairline);}
.pdp-specs>div:last-child{border-right:0;}
.pdp-specs dt{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 5px;}
.pdp-specs dd{font-family:var(--font-mono);font-size:13px;color:var(--fg);margin:0;}
@media(max-width:520px){
  .pdp-specs{flex-direction:column;}
  .pdp-specs>div{border-right:0;border-bottom:1px solid var(--hairline);display:flex;justify-content:space-between;align-items:baseline;padding:11px 16px;}
  .pdp-specs>div:last-child{border-bottom:0;}
  .pdp-specs dt{margin:0;}
}

/* variations / size selector */
.stx-pdp form.cart{margin:0 0 4px;}
.stx-pdp .variations{margin:0 0 18px;border:0;width:100%;}
.stx-pdp .variations tbody,.stx-pdp .variations tr{display:block;}
.stx-pdp .variations tr{margin-bottom:14px;}
.stx-pdp .variations th.label{display:block;text-align:left;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--fg);padding:0 0 8px;width:auto;line-height:1;}
.stx-pdp .variations td.value{display:block;padding:0;}
.stx-pdp .variations select{width:100%;max-width:300px;padding:13px 38px 13px 14px;border:1px solid var(--hairline-strong);border-radius:4px;font-family:var(--font-body);font-size:14px;color:var(--fg);background:var(--bg-elevated) url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%236B6557' stroke-width='1.5' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E") no-repeat right 14px center;-webkit-appearance:none;appearance:none;cursor:pointer;}
.stx-pdp .variations select:focus{outline:none;border-color:var(--stx-gold-400);}
.stx-pdp .reset_variations{display:inline-block;margin-top:6px;font-size:12px;color:var(--stx-gold-600);}
.stx-pdp .woocommerce-variation-price .price{font-size:22px;margin:6px 0 14px;}

/* qty + add to cart */
.stx-pdp form.cart .quantity{display:inline-flex;margin:0 10px 0 0;}
.stx-pdp .quantity input.qty{height:56px;width:74px;text-align:center;border:1px solid var(--hairline-strong);border-radius:4px;font-family:var(--font-mono);font-size:15px;background:var(--bg-elevated);transition:border-color var(--dur-base);}
.stx-pdp .quantity input.qty:focus{outline:none;border-color:var(--stx-gold-400);}
.stx-pdp .single_add_to_cart_button,.stx-pdp form.cart .button{position:relative;overflow:hidden;height:56px;padding:0 46px!important;background:linear-gradient(160deg,#2C2C33 0%,#17171B 46%,#0A0A0C 100%)!important;color:var(--stx-ivory-50)!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:4px!important;font-size:13px!important;font-weight:600!important;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 26px -10px rgba(0,0,0,.62);transition:background var(--dur-base),box-shadow var(--dur-base),transform var(--dur-base) var(--ease-out);}
.stx-pdp .single_add_to_cart_button::after,.stx-pdp form.cart .button::after{content:"";position:absolute;top:0;left:-75%;width:55%;height:100%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.16) 50%,transparent 100%);transform:skewX(-20deg);transition:left .65s var(--ease-out);pointer-events:none;}
.stx-pdp .single_add_to_cart_button:hover,.stx-pdp form.cart .button:hover{background:linear-gradient(160deg,#3A3A43 0%,#1E1E24 46%,#111114 100%)!important;box-shadow:0 16px 36px -10px rgba(0,0,0,.72),inset 0 -2px 0 0 var(--stx-gold-400);transform:translateY(-2px);}
.stx-pdp .single_add_to_cart_button:hover::after,.stx-pdp form.cart .button:hover::after{left:135%;}
.stx-pdp .single_add_to_cart_button:active,.stx-pdp form.cart .button:active{transform:translateY(0);}
.woocommerce .stx-pdp .single_add_to_cart_button.disabled,.woocommerce .stx-pdp .single_add_to_cart_button:disabled,.woocommerce .stx-pdp .single_add_to_cart_button.wc-variation-selection-needed{background:var(--stx-onyx-700)!important;color:var(--stx-onyx-300)!important;cursor:not-allowed;box-shadow:none!important;opacity:1!important;}
.stx-pdp .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px;}
/* ===== Product gallery lightbox ===== */
.woocommerce-product-gallery__image a{cursor:zoom-in;}
body.stx-lb-open{overflow:hidden;}
.stx-lb{position:fixed;inset:0;z-index:9999;background:rgba(8,8,10,.95);display:none;align-items:center;justify-content:center;padding:clamp(16px,5vh,64px) clamp(16px,6vw,96px);}
.stx-lb.is-open{display:flex;animation:stx-lb-in .22s var(--ease-out);}
@keyframes stx-lb-in{from{opacity:0}to{opacity:1}}
.stx-lb__img{max-width:100%;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:3px;box-shadow:0 30px 90px rgba(0,0,0,.6);}
.stx-lb__close{position:absolute;top:16px;right:20px;width:46px;height:46px;border:0;background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer;opacity:.78;transition:opacity var(--dur-base);}
.stx-lb__close:hover{opacity:1;}
.stx-lb__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--dur-base),color var(--dur-base);}
.stx-lb__nav:hover{background:var(--stx-gold-400);color:#0B0B0D;}
.stx-lb__prev{left:clamp(8px,2vw,24px);}
.stx-lb__next{right:clamp(8px,2vw,24px);}
.stx-lb__count{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:rgba(255,255,255,.7);font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;}
@media(max-width:560px){.stx-lb__nav{width:42px;height:42px;font-size:24px;}.stx-lb__img{max-height:78vh;}}

/* trust features */
.pdp-features{list-style:none;padding:22px 0 0;margin:22px 0 0;border-top:1px solid var(--hairline);display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;}
.pdp-features li{display:flex;gap:11px;align-items:flex-start;}
.pdp-features li svg{color:var(--stx-gold-500);flex-shrink:0;margin-top:1px;}
.pdp-features li>div{min-width:0;}
.pdp-features b{display:block;font-size:13px;font-weight:600;color:var(--fg);margin-bottom:3px;}
.pdp-features span{display:block;font-size:12px;color:var(--fg-muted);line-height:1.45;}
@media(max-width:560px){.pdp-features{grid-template-columns:1fr;gap:16px;}}

/* meta */
.stx-pdp .product_meta{margin-top:22px;padding-top:18px;border-top:1px solid var(--hairline);font-size:12px;color:var(--fg-muted);letter-spacing:.02em;}
.stx-pdp .product_meta>span{display:block;margin-bottom:5px;}
.stx-pdp .product_meta .sku{font-family:var(--font-mono);color:var(--fg-body);}
.stx-pdp .product_meta a{color:var(--fg-body);}
.stx-pdp .product_meta a:hover{color:var(--stx-gold-600);}

/* details: tabs + related (full width) */
.stx-pdp__details{margin-top:8px;}
.woocommerce-tabs{margin-top:56px;}
.woocommerce-tabs ul.tabs{border:0;padding:0;margin:0 0 28px;display:flex;gap:30px;flex-wrap:wrap;border-bottom:1px solid var(--hairline);}
.woocommerce-tabs ul.tabs::before{display:none;}
.woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;padding:0;margin:0;}
.woocommerce-tabs ul.tabs li a{padding:14px 0!important;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-muted);}
.woocommerce-tabs ul.tabs li.active a{color:var(--fg);box-shadow:inset 0 -2px 0 var(--stx-gold-400);}
.woocommerce-tabs .panel{font-size:15px;line-height:1.75;color:var(--fg-body);max-width:780px;}
.woocommerce-tabs .panel h2{font-family:var(--font-display);font-weight:500;font-size:24px;margin:0 0 14px;}
.woocommerce-tabs .panel p{margin:0 0 14px;}
.woocommerce-tabs table.shop_attributes th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted);}
.related.products,.upsells.products{margin-top:72px;}
.related.products>h2,.upsells.products>h2{font-family:var(--font-display);font-weight:500;text-align:center;margin-bottom:36px;font-size:var(--fs-32);}

/* Cart / Checkout / Account */
.woocommerce table.shop_table{border-radius:4px;border-color:var(--hairline);}
.woocommerce table.shop_table th{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce-checkout #order_review_heading{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:4px;padding:24px;}
.woocommerce-checkout #payment{background:transparent;}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .checkout-button{background:var(--stx-onyx-900);color:var(--stx-ivory-50);border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:14px 26px;transition:background var(--dur-base);}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--stx-onyx-800);color:var(--stx-ivory-50);}
.woocommerce .button.alt,.woocommerce #place_order,.woocommerce button.button.alt{background:linear-gradient(160deg,#2C2C33 0%,#17171B 46%,#0A0A0C 100%)!important;color:var(--stx-ivory-50)!important;border:1px solid rgba(255,255,255,.09)!important;}
.woocommerce .button.alt:hover,.woocommerce #place_order:hover,.woocommerce button.button.alt:hover{background:linear-gradient(160deg,#3A3A43 0%,#1E1E24 46%,#111114 100%)!important;color:#fff!important;box-shadow:0 12px 28px -10px rgba(0,0,0,.6),inset 0 -2px 0 0 var(--stx-gold-400)!important;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection{border:1px solid var(--hairline-strong);border-radius:4px;padding:12px 14px;font-family:var(--font-body);}

/* ===== Checkout — minimalist two-column ===== */
.stx-checkout__grid{display:grid;grid-template-columns:1fr;gap:34px;max-width:1200px;margin:0 auto;}
@media(min-width:980px){.stx-checkout__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(40px,5vw,72px);align-items:start;}}
.stx-checkout .col2-set,.stx-checkout #customer_details{display:block;width:100%;}
.stx-checkout .col2-set .col-1,.stx-checkout .col2-set .col-2{width:100%;float:none;padding:0;}
.stx-checkout h3,.woocommerce-checkout .stx-checkout #order_review_heading,.stx-checkout .woocommerce-billing-fields>h3,.stx-checkout .woocommerce-additional-fields>h3{font-family:var(--font-display);font-weight:500;font-size:1.5rem;line-height:1.15;letter-spacing:-.01em;color:var(--fg);margin:0 0 18px;background:none!important;border:0!important;padding:0!important;}
.stx-checkout .form-row{margin:0 0 16px;}
.stx-checkout .form-row label{font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--fg);margin-bottom:6px;display:block;}
.woocommerce-checkout form .form-row input.input-text,.woocommerce-checkout form .form-row textarea,.woocommerce-checkout form .form-row select,.woocommerce-checkout .select2-container .select2-selection{width:100%;border:1px solid var(--hairline-strong);border-radius:4px;padding:13px 14px;background:var(--bg-elevated);font-size:15px;transition:border-color var(--dur-base),box-shadow var(--dur-base);}
.woocommerce-checkout form .form-row input.input-text:focus,.woocommerce-checkout form .form-row textarea:focus,.woocommerce-checkout form .form-row select:focus{outline:none;border-color:var(--stx-gold-400);box-shadow:0 0 0 3px rgba(230,168,27,.12);}
.stx-checkout__aside{position:relative;}
@media(min-width:980px){.stx-checkout__aside{position:sticky;top:96px;}}
.woocommerce-checkout .stx-checkout #order_review{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:6px;padding:22px 24px;}
.stx-checkout #order_review .shop_table{border:0;margin:0;width:100%;}
.stx-checkout #order_review .shop_table th,.stx-checkout #order_review .shop_table td{padding:12px 0;border-bottom:1px solid var(--hairline);}
.stx-checkout #order_review .cart_item .product-name{color:var(--fg-body);font-size:14px;line-height:1.4;}
.stx-checkout #order_review tr.order-total .amount{font-size:19px;color:var(--fg);}
.stx-checkout #order_review td.product-name img,.stx-checkout #order_review .cart_item img{width:52px;height:52px;object-fit:cover;border-radius:4px;}
.stx-checkout #payment{background:transparent!important;}
.stx-checkout #payment ul.payment_methods{border:1px solid var(--hairline);border-radius:4px;padding:4px 16px;margin:18px 0 0;background:var(--bg);}
.stx-checkout #payment ul.payment_methods li{border-bottom:1px solid var(--hairline);padding:13px 0;list-style:none;margin:0;}
.stx-checkout #payment ul.payment_methods li:last-child{border-bottom:0;}
.stx-checkout #payment ul.payment_methods label{font-weight:600;color:var(--fg);}
.stx-checkout #payment div.payment_box{background:var(--bg-muted)!important;border-radius:4px;font-size:13px;color:var(--fg-muted);margin-top:10px;}
.stx-checkout #payment div.payment_box::before{display:none!important;}
.stx-checkout .woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--fg-muted);margin:16px 0;}
.stx-checkout .woocommerce-privacy-policy-text{font-size:12px;color:var(--fg-subtle);line-height:1.5;}
.stx-checkout #place_order{width:100%;margin-top:18px;height:54px;font-size:13px;letter-spacing:.16em;}
.stx-checkout__trust{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:11px;}
.stx-checkout__trust li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--fg-body);}
.stx-checkout__trust li svg{color:var(--stx-gold-500);flex-shrink:0;}
.woocommerce-checkout .woocommerce-form-login-toggle,.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:20px;}
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews,.woocommerce-error,.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce-cart .cart-empty.woocommerce-info{background:var(--bg-muted)!important;border:1px solid var(--hairline)!important;border-top:2px solid var(--stx-gold-400)!important;border-radius:4px;color:var(--fg-body)!important;}
.woocommerce-info::before,.woocommerce-message::before,.woocommerce-noreviews::before{color:var(--stx-gold-500)!important;}
.woocommerce-error{border-top-color:var(--stx-danger)!important;}
/* hide the redundant 'cart is empty' notice (we render a branded empty state) */
.woocommerce-cart .woocommerce-notices-wrapper .cart-empty,.woocommerce-cart-form+.cart-empty{display:none;}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--hairline);}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--stx-gold-600);font-weight:600;}

/* Utilities */
.text-center{text-align:center;}
.mt-7{margin-top:var(--sp-7);}
.hidden{display:none!important;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}

/* =============================================================
   Frontend-audit fixes
   ============================================================= */
/* Mobile overflow guard (real fix: let grid/flex children shrink) */
html,body{overflow-x:hidden;}
.product-grid>*,.trust-bar>*,.feature-grid>*,.collection-grid>*,.testimonial-grid>*,.pdp-features>*,.site-footer__grid>*,.journal-grid>*,.woocommerce ul.products>li.product{min-width:0;}
.entry,.woocommerce-tabs .panel,.story__copy,.lifestyle__inner,.hero__copy,.section-header,.product-card__body{overflow-wrap:break-word;}

/* Shop grid: WooCommerce clearfix ::before/::after were occupying empty grid cells */
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important;}

/* Announcement bar — mobile-safe */
.announce__short{display:inline;}
.announce__full{display:none;}
@media(max-width:767px){.announce{font-size:10px;letter-spacing:.12em;}}
@media(min-width:768px){.announce__short{display:none;}.announce__full{display:inline;}}

/* Branded form controls */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-ordering select,.woocommerce .quantity input.qty,.stx-cart-empty input,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],input[type=number],textarea{font-family:var(--font-body);border:1px solid var(--hairline-strong);border-radius:4px;background:var(--bg-elevated);color:var(--fg);padding:12px 14px;}
.woocommerce .quantity input.qty{padding:0;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--stx-gold-400)!important;}
.woocommerce-ordering select{padding:11px 38px 11px 14px;-webkit-appearance:none;appearance:none;background:var(--bg-elevated) url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%236B6557' stroke-width='1.5' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E") no-repeat right 14px center;cursor:pointer;}
.woocommerce .required,.required{color:var(--stx-gold-600)!important;border:0;text-decoration:none;}

/* Pagination */
.woocommerce nav.woocommerce-pagination{margin:48px 0 0;text-align:center;}
.woocommerce nav.woocommerce-pagination ul{border:0;display:inline-flex;gap:6px;margin:0;}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0;overflow:visible;}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:44px;height:44px;line-height:44px;padding:0 12px;border:1px solid var(--hairline-strong)!important;border-radius:4px;font-family:var(--font-mono);font-size:13px;color:var(--fg-body);background:var(--bg-elevated);}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--stx-onyx-900);color:var(--stx-ivory-50);border-color:var(--stx-onyx-900);}

/* Journal (blog) grid + branded fallback */
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
@media(min-width:900px){.journal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}}
.journal-card__media{position:relative;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,var(--stx-onyx-700),var(--stx-onyx-900));display:grid;place-items:center;}
.journal-card__media img{width:100%;height:100%;object-fit:cover;}
.journal-card__fallback{font-family:var(--font-display);font-style:italic;font-size:34px;letter-spacing:.04em;color:var(--stx-gold-400);opacity:.55;}

/* Branded empty cart */
.stx-cart-empty{text-align:center;max-width:520px;margin:0 auto;padding:72px 0 88px;display:flex;flex-direction:column;align-items:center;}
.stx-cart-empty .eyebrow{justify-content:center;margin-bottom:14px;}
.stx-cart-empty h2{margin:0 0 10px;}
.stx-cart-empty p{color:var(--fg-muted);margin:0 0 26px;}

/* Social / lifestyle strip */
.social-strip{padding:60px 0;}
.social-strip.section--muted{background:var(--bg-muted);}
.social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
@media(min-width:768px){.social-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}}
.social-tile{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:4px;background:var(--stx-onyx-900);display:block;}
.social-tile img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-out),opacity .3s;}
.social-tile:hover img{transform:scale(1.06);opacity:.72;}
.social-tile__ig{position:absolute;inset:0;display:grid;place-items:center;color:#fff;opacity:0;transition:opacity .3s;}
.social-tile:hover .social-tile__ig{opacity:1;}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;}}
