@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@300;500;700&display=swap');

*{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

/* Versen reusable design system */
:root{
  --vs-bg:#f7f4ef;
  --vs-bg-warm:#fbfaf7;
  --vs-surface:#ffffff;
  --vs-surface-soft:#f1efea;
  --vs-ink:#0b0c0c;
  --vs-ink-soft:#191a19;
  --vs-muted:#74716a;
  --vs-line:rgba(11,12,12,.1);
  --vs-line-strong:rgba(11,12,12,.18);
  --vs-gold:#b49554;
  --vs-radius-xs:6px;
  --vs-radius-sm:8px;
  --vs-radius-md:14px;
  --vs-radius-lg:22px;
  --vs-shadow-soft:0 18px 50px rgba(20,18,14,.08);
  --vs-shadow-product:0 28px 42px rgba(20,18,14,.16);
  --vs-font-sans:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --vs-font-serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --vs-space-1:4px;
  --vs-space-2:8px;
  --vs-space-3:12px;
  --vs-space-4:16px;
  --vs-space-5:20px;
  --vs-space-6:24px;
  --vs-space-8:32px;
  --vs-space-10:40px;
  --vs-space-12:48px;
  --vs-space-16:64px;
  --vs-space-20:80px;
  --vs-ease:cubic-bezier(.2,.8,.2,1);
}

.design-system-page{
  padding:0;
  background:
    radial-gradient(circle at 50% 0,rgba(255,255,255,.94),rgba(255,255,255,0) 38rem),
    var(--vs-bg);
  color:var(--vs-ink);
  font-family:var(--vs-font-sans);
  font-weight:300;
}

.vs-shell{
  width:min(1180px,100% - 32px);
  margin:0 auto;
}

.vs-section{
  padding:clamp(56px,9vw,104px) 0;
  border-bottom:1px solid var(--vs-line);
}

.vs-section-header{
  display:grid;
  gap:var(--vs-space-3);
  max-width:760px;
  margin-bottom:var(--vs-space-8);
}

.vs-eyebrow{
  color:var(--vs-muted);
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  line-height:1.2;
  text-transform:uppercase;
}

.vs-display,
.vs-title,
.vs-heading,
.vs-subheading{
  color:var(--vs-ink);
  font-family:var(--vs-font-serif);
  font-weight:500;
  letter-spacing:0;
}

.vs-display{
  font-size:clamp(58px,16vw,150px);
  line-height:.82;
}

.vs-title{
  font-size:clamp(42px,9vw,86px);
  line-height:.9;
}

.vs-heading{
  font-size:clamp(32px,6vw,58px);
  line-height:.98;
}

.vs-subheading{
  font-size:clamp(25px,4vw,38px);
  line-height:1.02;
}

.vs-body,
.vs-small,
.vs-micro{
  color:var(--vs-muted);
  line-height:1.55;
}

.vs-body{
  max-width:620px;
  font-size:17px;
}

.vs-small{
  font-size:13px;
}

.vs-micro{
  font-size:11px;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.vs-card{
  border:1px solid var(--vs-line);
  border-radius:var(--vs-radius-md);
  background:rgba(255,255,255,.78);
  box-shadow:var(--vs-shadow-soft);
}

.vs-grid-2,
.vs-grid-3,
.vs-grid-4{
  display:grid;
  gap:var(--vs-space-4);
}

.vs-grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.vs-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.vs-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.vs-stack{
  display:grid;
  gap:var(--vs-space-4);
}

.vs-cluster{
  display:flex;
  flex-wrap:wrap;
  gap:var(--vs-space-2);
  align-items:center;
}

.vs-button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 20px;
  border:1px solid var(--vs-ink);
  border-radius:999px;
  background:var(--vs-ink);
  color:#fff;
  font-size:13px;
  font-weight:500;
  transition:transform .28s var(--vs-ease), background .28s var(--vs-ease), color .28s var(--vs-ease), border-color .28s var(--vs-ease);
}

.vs-button:hover{
  transform:translateY(-1px);
}

.vs-button-secondary{
  border-color:var(--vs-line-strong);
  background:#fff;
  color:var(--vs-ink);
}

.vs-button-ghost{
  border-color:transparent;
  background:transparent;
  color:var(--vs-ink);
}

.vs-icon-button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.74);
  color:var(--vs-ink);
}

.vs-icon-button svg,
.vs-cart-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.vs-header{
  min-height:72px;
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
  gap:var(--vs-space-3);
  padding:0 var(--vs-space-5);
  border:1px solid var(--vs-line);
  border-radius:var(--vs-radius-lg);
  background:rgba(255,255,255,.82);
  box-shadow:var(--vs-shadow-soft);
  backdrop-filter:blur(18px);
}

.vs-logo{
  justify-self:center;
  color:var(--vs-ink);
  font-size:13px;
  font-weight:700;
  letter-spacing:.34em;
}

.vs-menu-icon{
  position:relative;
}

.vs-menu-icon::before{
  content:"";
  width:16px;
  height:2px;
  border-radius:2px;
  background:currentColor;
  box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;
}

.vs-filter-pill{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 15px;
  border:1px solid var(--vs-line);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:var(--vs-muted);
  font-size:12px;
  font-weight:500;
}

.vs-filter-pill.is-active{
  border-color:var(--vs-ink);
  background:var(--vs-ink);
  color:#fff;
}

.vs-hero{
  min-height:calc(100svh - 32px);
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:var(--vs-space-8);
  padding:var(--vs-space-4);
}

.vs-hero-panel{
  min-height:620px;
  display:grid;
  align-content:end;
  gap:var(--vs-space-5);
  padding:var(--vs-space-6);
  border-radius:var(--vs-radius-lg);
  background:
    radial-gradient(ellipse at 58% 56%,rgba(255,255,255,.78),rgba(255,255,255,0) 44%),
    linear-gradient(180deg,#fbfaf7 0%,#f1efea 100%);
  overflow:hidden;
  position:relative;
}

.vs-product-stage{
  min-height:280px;
  display:grid;
  place-items:center;
  border-radius:var(--vs-radius-md);
  background:
    radial-gradient(ellipse at 50% 72%,rgba(20,18,14,.15),rgba(20,18,14,0) 30%),
    linear-gradient(180deg,#fbfaf7,#eeece6);
  position:relative;
  overflow:hidden;
}

.vs-product-stage::after{
  content:"";
  position:absolute;
  left:22%;
  right:22%;
  bottom:17%;
  height:8%;
  border-radius:50%;
  background:rgba(20,18,14,.13);
  filter:blur(14px);
}

.vs-product-stage img{
  position:relative;
  z-index:1;
  width:min(74%,240px);
  max-height:84%;
  object-fit:contain;
  filter:drop-shadow(var(--vs-shadow-product));
  transition:transform .55s var(--vs-ease);
}

.vs-product-stage:hover img{
  transform:translateY(-5px) rotate(-1deg);
}

.vs-product-stage-composition img{
  position:absolute;
}

.vs-product-stage-composition img:nth-child(1){
  left:9%;
  bottom:14%;
  width:34%;
  transform:rotate(-7deg);
}

.vs-product-stage-composition img:nth-child(2){
  left:39%;
  bottom:10%;
  width:38%;
}

.vs-product-stage-composition img:nth-child(3){
  right:3%;
  bottom:18%;
  width:34%;
  transform:rotate(5deg);
}

.vs-product-card{
  display:grid;
  gap:var(--vs-space-3);
  color:var(--vs-ink);
}

.vs-product-card-media{
  aspect-ratio:1/1.12;
  min-height:0;
}

.vs-product-card-body{
  display:grid;
  gap:var(--vs-space-1);
}

.vs-product-card-brand{
  color:var(--vs-muted);
  font-size:11px;
  font-weight:500;
}

.vs-product-card-title{
  min-height:38px;
  color:var(--vs-ink);
  font-size:14px;
  font-weight:500;
  line-height:1.25;
}

.vs-product-card-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vs-space-2);
}

.vs-price{
  color:var(--vs-ink);
  font-size:15px;
  font-weight:600;
}

.vs-arrow{
  color:var(--vs-muted);
  font-size:18px;
}

.vs-weekly-card{
  min-height:430px;
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:var(--vs-space-4);
  padding:var(--vs-space-5);
  border-radius:var(--vs-radius-lg);
  background:var(--vs-surface);
  overflow:hidden;
}

.vs-weekly-card .vs-product-stage{
  min-height:240px;
}

.vs-countdown{
  display:grid;
  grid-template-columns:repeat(3,auto);
  gap:var(--vs-space-4);
  justify-content:start;
}

.vs-countdown strong{
  display:block;
  color:var(--vs-ink);
  font-family:var(--vs-font-serif);
  font-size:34px;
  font-weight:500;
  line-height:.9;
}

.vs-countdown span{
  display:block;
  margin-top:5px;
  color:var(--vs-muted);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.vs-category-card{
  min-height:250px;
  display:grid;
  align-content:space-between;
  gap:var(--vs-space-5);
  padding:var(--vs-space-5);
  border-radius:var(--vs-radius-md);
  background:linear-gradient(180deg,#fff,#f1efea);
  overflow:hidden;
}

.vs-category-card .vs-product-stage{
  min-height:160px;
  background:transparent;
}

.vs-membership-block{
  display:grid;
  justify-items:center;
  gap:var(--vs-space-5);
  padding:clamp(34px,8vw,72px) var(--vs-space-5);
  text-align:center;
}

.vs-membership-offer{
  width:min(360px,100%);
  display:grid;
  gap:var(--vs-space-3);
  padding:var(--vs-space-5);
  border:1px solid rgba(180,149,84,.28);
  border-radius:var(--vs-radius-md);
  background:linear-gradient(180deg,#fff,#f8f5ee);
}

.vs-membership-offer strong{
  color:var(--vs-ink);
  font-size:28px;
}

.vs-account-card,
.vs-checkout-card,
.vs-cart-item{
  display:grid;
  gap:var(--vs-space-3);
  padding:var(--vs-space-4);
  border:1px solid var(--vs-line);
  border-radius:var(--vs-radius-md);
  background:rgba(255,255,255,.84);
}

.vs-account-row,
.vs-checkout-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vs-space-3);
  padding:var(--vs-space-3) 0;
  border-bottom:1px solid var(--vs-line);
}

.vs-account-row:last-child,
.vs-checkout-row:last-child{
  border-bottom:0;
}

.vs-cart-item{
  grid-template-columns:78px 1fr auto;
  align-items:center;
}

.vs-cart-thumb{
  aspect-ratio:1;
  min-height:0;
}

.vs-quantity{
  display:inline-grid;
  grid-template-columns:34px 34px 34px;
  align-items:center;
  border:1px solid var(--vs-line);
  border-radius:999px;
  overflow:hidden;
}

.vs-quantity button,
.vs-quantity span{
  min-height:34px;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:var(--vs-ink);
  font-size:12px;
}

.vs-overlay-demo{
  min-height:560px;
  display:grid;
  grid-template-rows:auto 1fr auto;
  padding:var(--vs-space-5);
  border-radius:var(--vs-radius-lg);
  background:
    linear-gradient(180deg,rgba(5,6,6,.94),rgba(5,6,6,.9)),
    var(--vs-ink);
  color:#fff;
  overflow:hidden;
}

.vs-overlay-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.vs-overlay-links{
  display:grid;
  align-content:start;
  gap:var(--vs-space-3);
  padding-top:var(--vs-space-12);
}

.vs-overlay-links a{
  color:#fff;
  font-size:23px;
  font-weight:300;
}

.vs-overlay-promo{
  min-height:210px;
  display:grid;
  align-content:end;
  gap:var(--vs-space-2);
  margin:0 calc(var(--vs-space-5) * -1) calc(var(--vs-space-5) * -1);
  padding:var(--vs-space-5);
  background:
    radial-gradient(ellipse at 72% 60%,rgba(255,255,255,.3),rgba(255,255,255,0) 34%),
    linear-gradient(180deg,#f7f4ef,#e8e2d7);
  color:var(--vs-ink);
}

.vs-footer{
  display:grid;
  grid-template-columns:1.2fr repeat(2,1fr);
  gap:var(--vs-space-8);
  padding:var(--vs-space-10) 0;
}

.vs-footer nav{
  display:grid;
  gap:var(--vs-space-2);
}

.vs-footer a{
  color:var(--vs-muted);
  font-size:13px;
}

.vs-space-sample{
  display:grid;
  gap:var(--vs-space-3);
}

.vs-space-row{
  display:grid;
  grid-template-columns:72px 1fr;
  align-items:center;
  gap:var(--vs-space-3);
  color:var(--vs-muted);
  font-size:12px;
}

.vs-space-bar{
  height:16px;
  border-radius:999px;
  background:var(--vs-ink);
}

.vs-mobile-frame{
  width:min(360px,100%);
  margin:0 auto;
  border:1px solid var(--vs-line);
  border-radius:30px;
  background:#fff;
  box-shadow:var(--vs-shadow-soft);
  overflow:hidden;
}

.vs-mobile-frame .vs-header{
  border:0;
  border-bottom:1px solid var(--vs-line);
  border-radius:0;
  box-shadow:none;
}

.vs-mobile-content{
  display:grid;
  gap:var(--vs-space-5);
  padding:var(--vs-space-5);
}

.vs-animate-rise{
  animation:vs-rise 1s var(--vs-ease) both;
}

.vs-animate-float{
  animation:vs-float 4.8s ease-in-out infinite;
}

.vs-animate-soft-pulse{
  animation:vs-soft-pulse 2.8s ease-in-out infinite;
}

@keyframes vs-rise{
  from{
    opacity:0;
    transform:translateY(16px);
  }
  to{
    opacity:1;
    transform:none;
  }
}

/* Internal Versen checkout */
.page-checkout{
  background:#f7f4ef;
}

.checkout-screen{
  width:min(430px,100% - 32px);
  margin:0 auto;
  padding:28px 0 56px;
}

.checkout-flow{
  display:grid;
  gap:24px;
}

.checkout-kicker{
  color:#77736b;
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  line-height:1.2;
  text-transform:uppercase;
}

.checkout-progress{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  gap:0;
  position:relative;
  list-style:none;
  margin:2px 0 20px;
}

.checkout-progress::before{
  content:"";
  position:absolute;
  top:13px;
  left:12.5%;
  right:12.5%;
  height:1px;
  background:rgba(9,11,12,.12);
}

.checkout-progress li{
  position:relative;
  z-index:1;
  display:grid;
  justify-items:center;
  gap:7px;
  color:#77736b;
  font-size:10px;
}

.checkout-progress span{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border:1px solid rgba(9,11,12,.16);
  border-radius:50%;
  background:#f7f4ef;
  color:#77736b;
  font-size:11px;
  font-weight:500;
}

.checkout-progress small{
  font-size:10px;
  line-height:1;
}

.checkout-progress li.is-active span,
.checkout-progress li.is-complete span{
  border-color:#080909;
  background:#080909;
  color:#fffdfa;
}

.checkout-progress li.is-active small{
  color:#080909;
  font-weight:500;
}

.checkout-step-panel{
  display:grid;
  gap:20px;
}

.checkout-step-panel[hidden]{
  display:none!important;
}

.checkout-step-header{
  display:grid;
  gap:10px;
}

.checkout-step-header h1{
  margin:0;
  color:#080909;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:34px;
  font-weight:500;
  letter-spacing:0;
  line-height:1;
}

.checkout-step-header p{
  max-width:330px;
  color:#67645d;
  font-size:13px;
  line-height:1.55;
}

.checkout-form{
  display:grid;
  gap:14px;
}

.checkout-form label,
.checkout-payment-card{
  display:grid;
  gap:7px;
}

.checkout-form label span{
  color:#55524d;
  font-size:11px;
  font-weight:500;
}

.checkout-form label i{
  color:#a56f42;
  font-style:normal;
}

.checkout-form input,
.checkout-form select{
  width:100%;
  min-height:48px;
  padding:0 14px;
  border:1px solid rgba(9,11,12,.12);
  border-radius:8px;
  background:#fffdfa;
  color:#080909;
  font:500 16px/1.2 'Inter',system-ui,sans-serif;
  outline:none;
}

.checkout-form input:focus,
.checkout-form select:focus{
  border-color:rgba(9,11,12,.28);
  background:#fff;
}

.checkout-field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.checkout-checkbox{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center;
  gap:10px!important;
  margin:4px 0;
  color:#4f4c47;
  font-size:12px;
}

.checkout-checkbox input{
  width:15px;
  min-width:15px;
  height:15px;
  min-height:15px;
  padding:0;
  border-radius:3px;
  accent-color:#080909;
}

.checkout-note{
  padding:17px 18px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:8px;
  background:#fffdfa;
  color:#4d4a44;
  font-size:13px;
  line-height:1.55;
  text-align:center;
}

.checkout-primary,
.checkout-pay-button{
  width:100%;
  min-height:50px;
  margin-top:4px;
  border-radius:8px!important;
  background:#080909!important;
  color:#fffdfa!important;
}

.checkout-back-link,
.checkout-orders-link{
  justify-self:start;
  color:#68645d;
  font-size:12px;
  text-decoration:none;
}

.checkout-payment-grid{
  display:grid;
  gap:14px;
}

.checkout-payment-locked .checkout-payment-grid{
  filter:grayscale(1);
  opacity:.42;
  pointer-events:none;
  user-select:none;
}

.checkout-payment-card,
.checkout-order-summary{
  display:grid;
  gap:14px;
  padding:0;
  border:1px solid rgba(9,11,12,.1);
  border-radius:10px;
  background:#fffdfa;
}

.checkout-payment-card{
  padding:14px;
}

.payment-method-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.payment-method-head strong,
.checkout-order-summary h2{
  color:#080909;
  font-size:13px;
  font-weight:700;
}

.card-brands{
  display:flex;
  align-items:center;
  gap:5px;
}

.card-brands span{
  min-width:30px;
  height:18px;
  display:grid;
  place-items:center;
  border:1px solid rgba(9,11,12,.14);
  border-radius:3px;
  background:#fff;
  color:#043d9f;
  font-size:8px;
  font-weight:700;
}

.card-brands span:nth-child(2){
  color:#c04b1a;
}

.card-brands span:nth-child(3){
  color:#0b5aa6;
}

.stripe-element-shell{
  min-height:96px;
  padding:10px 0 0;
}

.stripe-element-shell p{
  color:#77736b;
  font-size:12px;
}

.stripe-wallet-shell{
  display:grid;
  gap:10px;
}

.stripe-wallet-shell[hidden]{
  display:none!important;
}

.stripe-wallet-shell span{
  display:flex;
  align-items:center;
  gap:10px;
  color:#77736b;
  font-size:11px;
}

.stripe-wallet-shell span::before,
.stripe-wallet-shell span::after{
  content:'';
  height:1px;
  flex:1;
  background:rgba(9,11,12,.1);
}

.checkout-save-card{
  margin:0;
}

.checkout-save-card input:disabled{
  opacity:.42;
}

.stripe-safe{
  position:relative;
  padding-left:18px;
  color:#77736b;
  font-size:10px;
}

.stripe-safe::before{
  content:"";
  position:absolute;
  left:1px;
  top:1px;
  width:9px;
  height:8px;
  border:1.3px solid currentColor;
  border-radius:2px;
}

.stripe-safe::after{
  content:"";
  position:absolute;
  left:3px;
  top:-3px;
  width:5px;
  height:5px;
  border:1.3px solid currentColor;
  border-bottom:0;
  border-radius:6px 6px 0 0;
}

.checkout-order-summary{
  padding:14px;
}

.checkout-payment-card .checkout-order-summary{
  padding:0 0 14px;
  border:0;
  border-bottom:1px solid rgba(9,11,12,.1);
  border-radius:0;
  background:transparent;
}

.checkout-summary-items{
  display:grid;
  gap:10px;
}

.checkout-mini-item{
  display:grid;
  grid-template-columns:44px 1fr auto;
  align-items:center;
  gap:10px;
}

.checkout-mini-image{
  width:44px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:
    radial-gradient(ellipse at 50% 82%,rgba(8,9,9,.13),rgba(8,9,9,0) 34%),
    linear-gradient(145deg,#fffdfa 0%,#f6f3ed 68%,#ebe6db 100%);
  overflow:hidden;
}

.checkout-mini-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:8px;
}

.checkout-mini-item small{
  display:block;
  margin-bottom:2px;
  color:#77736b;
  font-size:10px;
}

.checkout-mini-item strong{
  display:block;
  color:#080909;
  font-size:11px;
  font-weight:500;
  line-height:1.25;
}

.checkout-mini-item em{
  color:#080909;
  font-size:11px;
  font-style:normal;
  font-weight:500;
}

.checkout-total-lines{
  display:grid;
  gap:7px;
  padding-top:6px;
}

.checkout-total-lines div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#55524d;
  font-size:12px;
}

.checkout-total-lines strong{
  color:#080909;
  font-weight:500;
}

.checkout-total-lines .is-total{
  padding-top:3px;
  color:#080909;
  font-size:15px;
  font-weight:700;
}

.checkout-total-lines .is-total strong{
  display:grid;
  gap:2px;
  justify-items:end;
  font-size:16px;
  font-weight:700;
  text-align:right;
}

.checkout-total-lines .is-total small{
  color:#9a9690;
  font-size:11px;
  font-weight:500;
  line-height:1.25;
}

.checkout-total-lines .checkout-saving-line{
  margin-top:1px;
  color:#8a6a18;
  font-size:12px;
  font-weight:600;
}

.checkout-total-lines .checkout-saving-line strong{
  color:#8a6a18;
  font-size:13px;
  font-weight:700;
}

.checkout-pay-button{
  background:linear-gradient(135deg,#c9a962,#a98743)!important;
  border-color:#b89955!important;
  color:#111!important;
}

.checkout-terms{
  color:#77736b;
  font-size:10px;
  line-height:1.45;
  text-align:center;
}

.checkout-terms a{
  color:#080909;
}

.checkout-confirmation{
  justify-items:center;
  padding-top:14px;
  text-align:center;
}

.checkout-confirmation .checkout-step-header{
  justify-items:center;
}

.checkout-success-mark{
  width:72px;
  height:72px;
  position:relative;
  border:2px solid #1f8a4c;
  border-radius:50%;
}

.checkout-success-mark::before{
  content:"";
  position:absolute;
  left:22px;
  top:25px;
  width:23px;
  height:12px;
  border-left:2px solid #1f8a4c;
  border-bottom:2px solid #1f8a4c;
  transform:rotate(-45deg);
}

.checkout-confirm-email{
  color:#4f4c47;
  font-size:13px;
  line-height:1.55;
}

.checkout-order-number{
  width:100%;
  display:grid;
  gap:8px;
  padding:20px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:10px;
  background:#fffdfa;
}

.checkout-order-number span{
  color:#55524d;
  font-size:12px;
}

.checkout-order-number strong{
  color:#080909;
  font-size:21px;
  font-weight:500;
}

.checkout-next-list{
  width:100%;
  display:grid;
  gap:14px;
  margin:8px 0 16px;
  text-align:left;
}

.checkout-next-list strong{
  color:#080909;
  font-size:13px;
}

.checkout-next-list ul{
  display:grid;
  gap:15px;
  list-style:none;
}

.checkout-next-list li{
  position:relative;
  padding-left:22px;
  color:#4f4c47;
  font-size:12px;
}

.checkout-next-list li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:#1f8a4c;
  font-weight:700;
}

.checkout-orders-link{
  justify-self:center;
  text-decoration:underline;
  text-underline-offset:3px;
}

body:not(.mobile-menu-open) .checkout-screen,
body:not(.mobile-menu-open) .checkout-flow{
  max-width:100%;
  overflow-x:clip!important;
  overscroll-behavior-x:none;
}

@media (min-width: 860px){
  .checkout-screen{
    width:min(760px,100% - 48px);
  }

  .checkout-payment-grid{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
  }
}

@media (max-width: 420px){
  .checkout-screen{
    width:min(100% - 24px,430px);
    padding-top:22px;
  }

  .checkout-field-row{
    gap:8px;
  }

  .checkout-step-header h1{
    font-size:32px;
  }
}

@keyframes vs-float{
  0%,100%{
    transform:translateY(0);
  }
  50%{
    transform:translateY(-8px);
  }
}

@keyframes vs-soft-pulse{
  0%,100%{
    box-shadow:0 0 0 rgba(20,18,14,0);
  }
  50%{
    box-shadow:0 18px 60px rgba(20,18,14,.12);
  }
}

@media (prefers-reduced-motion:reduce){
  .vs-animate-rise,
  .vs-animate-float,
  .vs-animate-soft-pulse{
    animation:none;
  }

  .vs-button,
  .vs-product-stage img{
    transition:none;
  }
}

@media (max-width:820px){
  .vs-grid-2,
  .vs-grid-3,
  .vs-grid-4,
  .vs-footer{
    grid-template-columns:1fr;
  }

  .vs-section{
    padding:56px 0;
  }

  .vs-hero{
    min-height:auto;
    padding:var(--vs-space-3) 0;
  }

  .vs-hero-panel{
    min-height:calc(100svh - 24px);
    padding:var(--vs-space-5);
  }

  .vs-product-card-media{
    aspect-ratio:1/1.08;
  }

  .vs-cart-item{
    grid-template-columns:68px 1fr;
  }

  .vs-cart-item .vs-quantity{
    grid-column:2;
    width:max-content;
  }
}

:root{
  --bg:#f8f9f7;
  --surface:#ffffff;
  --surface-2:#eef2ef;
  --ink:#111412;
  --muted:#66706a;
  --line:#dfe5df;
  --accent:#b8ff4a;
  --accent-ink:#172000;
  --deep:#18221c;
  --warning:#ff6f3d;
  --shadow:0 24px 70px rgba(20,28,22,.11);
  --nav-height:74px;
  --top-strip-height:38px;
}

html{
  min-height:100%;
  background:var(--bg);
  color-scheme:light;
  scroll-behavior:smooth;
}

html[data-theme="dark"]{
  --bg:#0e1110;
  --surface:#171b19;
  --surface-2:#222824;
  --ink:#f4f7f1;
  --muted:#aab3ad;
  --line:#303832;
  --deep:#f4f7f1;
  --shadow:0 24px 70px rgba(0,0,0,.28);
  color-scheme:dark;
}

body{
  min-height:100svh;
  padding-top:calc(var(--nav-height) + var(--top-strip-height));
  padding-bottom:84px;
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:0;
  overflow-x:hidden;
}

.top-strip{
  position:fixed;
  inset:0 0 auto;
  z-index:101;
  height:var(--top-strip-height);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  padding:0 18px;
  background:var(--ink);
  color:var(--surface);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.top-strip a{
  color:var(--accent);
}

a{
  color:inherit;
  text-decoration:none;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  outline:2px solid #111312;
  outline-offset:3px;
}

button,
input,
textarea,
select{
  font:inherit;
}

input,
textarea,
select{
  font-size:max(16px,1em);
}

button{
  cursor:pointer;
}

button:disabled{
  cursor:not-allowed;
  opacity:.5;
}

img,
svg{
  display:block;
  max-width:100%;
}

[hidden]{
  display:none!important;
}

body.auth-loading .menu,
body.auth-loading [data-guest-home],
body.auth-loading [data-member-home],
body.auth-loading [data-account-flow],
body.auth-loading [data-account-area],
body.auth-loading [data-membership-checkout],
body.auth-loading [data-category-select],
body.auth-loading [data-catalog-add],
body.auth-loading [data-add-to-cart-button],
body.auth-loading [data-cart-checkout],
body.auth-loading [data-discount-form]{
  visibility:hidden;
}

.nav{
  position:fixed;
  top:var(--top-strip-height);
  left:0;
  right:0;
  z-index:100;
  min-height:var(--nav-height);
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px;
  padding:14px clamp(16px,4vw,44px);
  border-bottom:1px solid var(--line);
  background:rgba(248,249,247,.82);
  backdrop-filter:blur(18px);
}

.nav-mobile-menu{
  display:none;
}

html[data-theme="dark"] .nav{
  background:rgba(14,17,16,.82);
}

.logo{
  font-size:15px;
  font-weight:700;
  letter-spacing:.18em;
}

.menu,
.nav-actions{
  display:flex;
  align-items:center;
  gap:8px;
}

.menu{
  justify-content:center;
}

.menu a,
.nav-member-cta,
.account-link,
.footer-links a{
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}

.menu a,
.nav-member-cta{
  padding:10px 12px;
  border:1px solid transparent;
}

.menu a.active,
.menu a:hover,
.nav-member-cta.active,
.nav-member-cta:hover{
  border-color:var(--ink);
  color:var(--ink);
  background:var(--surface);
}

.nav-icon,
.nav-mobile-menu{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--ink);
  position:relative;
}

.nav-mobile-menu{
  display:none;
}

.nav-icon svg,
.nav-mobile-menu svg,
.bottom-nav svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.nav-account::before,
.nav-wishlist:empty::before,
.nav-cart:empty::before,
.nav-mobile-menu:empty::before{
  content:"";
  width:18px;
  height:18px;
  border:2px solid currentColor;
}

.nav-account::before{
  border-radius:50%;
  box-shadow:0 12px 0 -5px currentColor;
}

.nav-wishlist:empty::before{
  transform:rotate(45deg);
  border-left:0;
  border-top:0;
}

.nav-cart [data-cart-count],
.menu [data-cart-count]{
  position:absolute;
  top:-7px;
  right:-7px;
  min-width:20px;
  min-height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--accent);
  color:var(--accent-ink);
  font-size:11px;
  font-weight:700;
}

.bottom-nav{
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:99;
  display:none;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line);
  background:rgba(255,255,255,.86);
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}

html[data-theme="dark"] .bottom-nav{
  background:rgba(23,27,25,.86);
}

.bottom-nav a{
  min-height:58px;
  display:grid;
  place-items:center;
  gap:3px;
  color:var(--muted);
  font-size:11px;
  font-weight:700;
}

.bottom-nav a.active{
  color:var(--ink);
  background:var(--accent);
}

main,
.home-shell,
.cart-screen,
.liked-shell,
.drops-screen,
.order-screen,
.account-dashboard-shell,
.product-detail-page{
  width:min(1180px,100% - 32px);
  margin:0 auto;
}

.fade{
  opacity:1;
  transform:none;
}

.page-hero,
.membership-hero,
.launch-hero,
.drops-hero,
.activation-stage{
  padding:clamp(38px,7vw,92px) 0 34px;
}

.page-hero-content,
.hero-content,
.membership-panel,
.launch-hero{
  position:relative;
}

.badge,
.status-pill,
.detail-saving,
.detail-urgency,
.home-countdown,
.shop-drop-countdown,
.launch-countdown span,
.activation-status,
.order-status-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  padding:8px 10px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}

h1,
.hero h1,
.page-hero h1,
.membership-hero h1,
.product-detail h1,
.drops-hero h1,
.activation-stage h1{
  max-width:860px;
  margin-top:16px;
  color:var(--ink);
  font-size:72px;
  line-height:.94;
  letter-spacing:0;
  overflow-wrap:normal;
}

h2{
  font-size:46px;
  line-height:1;
}

h3{
  font-size:18px;
  line-height:1.15;
}

p{
  color:var(--muted);
  line-height:1.6;
}

.page-hero p,
.membership-hero p,
.launch-hero p,
.product-detail p,
.drops-hero p{
  max-width:620px;
  margin-top:16px;
  font-size:18px;
}

.glow,
.activation-glow,
.activation-rings{
  display:none;
}

.cta,
.product-btn,
.account-switch-button,
.remove-btn,
.filter,
.sort-pill,
.variant-option,
.flag-toggle{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 18px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:var(--surface);
  font-weight:800;
  line-height:1;
  transition:transform .16s ease, background .16s ease, color .16s ease;
}

.cta:hover,
.product-btn:hover,
.account-switch-button:hover,
.remove-btn:hover{
  transform:translateY(-1px);
}

.product-btn.secondary,
.secondary,
.remove-btn,
.account-switch-button,
.filter,
.sort-pill,
.variant-option{
  border-color:var(--line);
  background:var(--surface);
  color:var(--ink);
}

.filter.active,
.sort-pill.active,
.variant-option.active,
.product-btn:not(.secondary),
.cta{
  border-color:var(--ink);
}

.danger-link,
.danger-action{
  border-color:var(--warning);
  color:var(--warning);
}

.hero-actions,
.account-actions,
.activation-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.launch-hero{
  min-height:calc(100svh - var(--nav-height) - 18px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,520px);
  align-items:center;
  gap:clamp(28px,6vw,84px);
  border-bottom:1px solid var(--line);
}

.launch-hero-copy{
  min-width:0;
}

.launch-hero h1{
  font-size:66px;
}

.store-hero{
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  grid-template-areas:
    "campaign campaign"
    "copy product";
  gap:18px;
  align-items:stretch;
  padding:34px 0 42px;
  border-bottom:1px solid var(--line);
}

.hero-campaign{
  grid-area:campaign;
  position:relative;
  isolation:isolate;
  min-height:220px;
  display:grid;
  align-content:end;
  gap:10px;
  padding:28px;
  background:
    radial-gradient(circle at 80% 30%,rgba(184,255,74,.74),rgba(184,255,74,0) 42%),
    linear-gradient(120deg,#f9faf6 0%,#eaffbd 100%),
    var(--surface-2);
  border:1px solid var(--line);
  color:var(--ink);
  overflow:hidden;
}

.hero-campaign span,
.hero-campaign em,
.store-hero-product span{
  width:max-content;
  max-width:100%;
  padding:8px 10px;
  background:var(--ink);
  color:var(--surface);
  font-size:12px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hero-campaign > span,
.hero-campaign > strong,
.hero-campaign > em{
  position:relative;
  z-index:2;
}

.hero-campaign strong{
  max-width:690px;
  font-size:86px;
  line-height:.92;
}

.hero-product-composition{
  position:absolute;
  top:18px;
  right:18px;
  bottom:18px;
  width:min(45%,540px);
  pointer-events:none;
  z-index:1;
}

.hero-product{
  position:absolute;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 22px 22px rgba(15,18,16,.16));
}

.hero-product-main{
  left:30%;
  bottom:-4%;
  width:42%;
  z-index:5;
}

.hero-product-left{
  left:2%;
  bottom:6%;
  width:32%;
  z-index:3;
  transform:rotate(-8deg);
}

.hero-product-right{
  right:0;
  bottom:4%;
  width:40%;
  z-index:4;
  transform:rotate(5deg);
}

.hero-product-back{
  left:47%;
  top:0;
  width:30%;
  z-index:2;
  opacity:.94;
  transform:rotate(8deg);
}

.hero-product-front{
  left:15%;
  top:12%;
  width:28%;
  z-index:6;
  transform:rotate(-2deg);
}

.hero-product-pear{
  right:7%;
  bottom:0;
  width:34%;
  z-index:7;
  transform:rotate(3deg);
}

.store-hero-copy{
  grid-area:copy;
  align-self:center;
  min-width:0;
}

.store-hero-copy h1{
  max-width:760px;
  font-size:68px;
}

.store-hero-product{
  grid-area:product;
  position:relative;
  min-height:420px;
  display:grid;
  place-items:center;
  padding:28px;
  border:1px solid var(--line);
  background:var(--surface);
  overflow:hidden;
}

.store-hero-product img{
  width:min(88%,360px);
  filter:drop-shadow(0 28px 24px rgba(20,28,22,.16));
}

.store-hero-product span{
  position:absolute;
  left:18px;
  bottom:18px;
  background:var(--accent);
  color:var(--accent-ink);
}

.featured-categories,
.product-showcase,
.vehicle-shop,
.bundle-feature,
.guide-strip,
.brand-story{
  padding:42px 0;
  border-bottom:1px solid var(--line);
}

.category-tile-grid,
.vehicle-grid,
.guide-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.category-tile,
.vehicle-grid a,
.guide-grid a{
  min-height:132px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:18px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--ink);
}

.category-tile span,
.vehicle-grid a,
.guide-grid a{
  font-size:22px;
  font-weight:800;
}

.category-tile small{
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}

.vehicle-shop{
  display:grid;
  grid-template-columns:minmax(0,360px) 1fr;
  gap:18px;
  align-items:start;
}

.bundle-feature{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:18px;
  align-items:stretch;
}

.bundle-copy{
  display:grid;
  align-content:center;
  justify-items:start;
  gap:16px;
  padding:28px;
  border:1px solid var(--line);
  background:var(--surface);
}

.bundle-card{
  min-height:320px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px;
  background:var(--ink);
  color:var(--surface);
}

.bundle-card span{
  font-weight:800;
  letter-spacing:.18em;
}

.bundle-card strong{
  max-width:260px;
  font-size:48px;
  line-height:1;
}

.bundle-card small{
  color:var(--accent);
  font-weight:800;
}

.brand-story{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-items:start;
}

.brand-story p{
  font-size:18px;
}

.home-countdown{
  margin-bottom:12px;
  background:var(--accent);
  color:var(--accent-ink);
  border-color:var(--accent);
}

.home-countdown strong,
.shop-drop-countdown strong{
  color:inherit;
}

.home-hero-visual{
  min-height:420px;
  display:grid;
  place-items:center;
  background:var(--surface-2);
  border:1px solid var(--line);
  overflow:hidden;
}

.home-hero-visual img{
  width:min(82%,420px);
  filter:drop-shadow(0 26px 24px rgba(20,28,22,.18));
}

.section-heading-row,
.category-launch-header,
.catalog-tools{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}

.category-launch-header{
  grid-column:1/-1;
}

.home-trending,
.home-steps,
.home-upgrade,
.home-service-strip,
.category-launch,
.catalog-section,
.cart-layout,
.account-grid,
.membership-plans,
.liked-warning,
.suggestion-layout,
.drops-list,
.section,
.pdp-information{
  padding:42px 0;
  border-bottom:1px solid var(--line);
}

.home-trending-grid,
.product-grid,
.steps,
.plan-grid,
.account-grid,
.account-metrics,
.home-service-strip,
.drops-list,
.category-launch{
  display:grid;
  gap:14px;
}

.home-trending-grid,
.product-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.steps,
.plan-grid,
.account-grid,
.home-service-strip,
.drops-list,
.category-launch{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.home-service-strip{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.product-card,
.home-trending-card,
.step,
.account-card,
.cart-summary,
.cart-item,
.featured,
.membership-plans article,
.category-launch-card,
.liked-warning,
.suggestion-panel,
.suggestion-rhythm,
.order-success-card,
.order-confirmation-panel,
.activation-panel,
.settings-card,
.member-saving-box,
.empty-state,
.pdp-card,
.pdp-service-list li,
.admin-card,
.dashboard-sidebar,
.account-metric{
  border:1px solid var(--line);
  background:var(--surface);
  box-shadow:none;
}

.product-card,
.home-trending-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  overflow:hidden;
}

.product-info{
  display:grid;
  gap:10px;
  padding:14px;
}

.product-card-meta,
.product-prices,
.product-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.product-card-meta,
.product-saving{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.product-info h3{
  min-height:46px;
}

.product-prices{
  justify-content:flex-start;
  font-size:16px;
}

.product-actions .product-btn{
  flex:1;
  min-height:42px;
  padding-inline:10px;
  font-size:13px;
}

.product-badges{
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.great-price,
.few-left,
.home-deal-badge{
  display:inline-flex;
  padding:6px 8px;
  background:var(--accent);
  color:var(--accent-ink);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}

.product-wishlist-button{
  position:absolute;
  top:10px;
  right:10px;
  z-index:3;
  width:38px;
  height:38px;
  border:1px solid var(--line);
  background:var(--surface);
}

.product-wishlist-button::before{
  content:"";
  width:14px;
  height:14px;
  display:block;
  margin:auto;
  border:2px solid var(--ink);
  border-left:0;
  border-top:0;
  transform:rotate(45deg);
}

.product-image,
.home-trending-image,
.cart-item-image,
.product-large-image,
.product-thumb,
.category-image-row,
.liked-product-image{
  display:grid;
  place-items:center;
  background:var(--surface-2);
  color:var(--muted);
  overflow:hidden;
}

.product-image,
.home-trending-image{
  aspect-ratio:1/1;
}

.product-image img,
.home-trending-image img,
.cart-item-image img,
.product-large-image img,
.product-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:18px;
}

.product-content,
.home-trending-copy,
.cart-item-info{
  display:grid;
  gap:8px;
  padding:14px;
}

.product-content h3,
.home-trending-copy strong{
  min-height:42px;
  color:var(--ink);
}

.product-meta,
.product-card-header,
.price-row,
.detail-prices,
.summary-row,
.cart-item-row,
.pdp-card-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.old{
  color:var(--muted);
  text-decoration:line-through;
}

.new,
.product-price,
.home-price{
  color:var(--ink);
  font-weight:800;
}

.product-card .cta,
.home-add-button{
  position:absolute;
  right:12px;
  bottom:12px;
  width:44px;
  min-width:44px;
  height:44px;
  min-height:44px;
  padding:0;
  border-radius:50%;
  background:var(--accent);
  color:var(--accent-ink);
  border-color:var(--accent);
  font-size:22px;
}

.wishlist-button,
[data-wishlist-toggle]{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--ink);
}

.catalog-tools{
  align-items:center;
}

.filter-row,
.sort-control,
.theme-switcher{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.category-launch-card{
  min-height:172px;
  align-items:flex-start;
  display:grid;
  gap:10px;
  padding:18px;
  color:var(--ink);
  text-align:left;
}

.category-launch-card.active{
  outline:3px solid var(--accent);
  outline-offset:-3px;
}

.category-launch-card span{
  font-size:24px;
  font-weight:800;
}

.shop-drop-countdown{
  grid-column:1/-1;
  background:var(--deep);
  color:var(--surface);
  border-color:var(--deep);
}

.product-detail{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,460px);
  gap:clamp(22px,5vw,64px);
  padding:36px 0;
}

.pdp-topbar{
  display:none;
}

.pdp-breadcrumb{
  display:flex;
  gap:8px;
  padding-top:28px;
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}

.product-detail-media{
  display:grid;
  grid-template-columns:82px 1fr;
  gap:12px;
}

.product-thumb-rail{
  display:grid;
  gap:12px;
  align-content:start;
}

.product-thumb{
  aspect-ratio:1/1;
  border:1px solid var(--line);
}

.product-thumb.active{
  border-color:var(--ink);
}

.product-large-image{
  min-height:560px;
  border:1px solid var(--line);
}

.product-gallery-arrows{
  display:none;
}

.product-detail-info{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
}

.product-detail h1{
  margin-top:0;
  font-size:56px;
}

.detail-prices{
  justify-content:flex-start;
  font-size:24px;
}

.product-buy-box,
.variant-picker,
.pdp-service-list,
.product-description-rich,
.pdp-information-hero{
  width:100%;
  display:grid;
  gap:12px;
}

.quantity-control{
  display:grid;
  grid-template-columns:46px 1fr 46px;
  border:1px solid var(--line);
  background:var(--surface);
}

.quantity-control button,
.quantity-control input{
  min-height:46px;
  border:0;
  background:transparent;
  color:var(--ink);
  text-align:center;
}

.pdp-card-row{
  width:100%;
}

.pdp-card{
  flex:1;
  padding:14px;
}

.pdp-service-list{
  list-style:none;
}

.pdp-service-list li{
  padding:14px;
}

.cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:18px;
  align-items:start;
}

.cart-list{
  display:grid;
  gap:12px;
}

.cart-item{
  display:grid;
  grid-template-columns:116px 1fr;
  gap:14px;
  padding:12px;
}

.cart-item-image{
  aspect-ratio:1/1;
}

.cart-summary,
.account-card,
.featured,
.membership-plans article,
.suggestion-panel,
.suggestion-rhythm,
.order-confirmation-panel,
.activation-panel,
.settings-card,
.liked-warning{
  padding:20px;
}

.cart-summary{
  position:sticky;
  top:calc(var(--nav-height) + 18px);
  display:grid;
  gap:14px;
}

.discount-form,
.member-form,
.launch-form,
.contact-form{
  display:grid;
  gap:10px;
}

.discount-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
}

input,
textarea,
select{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--ink);
  padding:0 12px;
}

textarea{
  min-height:130px;
  padding-top:12px;
  resize:vertical;
}

.form-message{
  min-height:22px;
  font-size:13px;
}

.dashboard-layout{
  display:grid;
  grid-template-columns:240px 1fr;
  gap:18px;
}

.dashboard-sidebar{
  position:sticky;
  top:calc(var(--nav-height) + 18px);
  display:grid;
  gap:6px;
  padding:12px;
}

.dashboard-sidebar a,
.dashboard-sidebar button{
  min-height:42px;
  display:flex;
  align-items:center;
  border:0;
  background:transparent;
  color:var(--muted);
  font-weight:800;
  text-align:left;
}

.dashboard-sidebar .active{
  color:var(--ink);
}

.dashboard-main,
.account-grid{
  min-width:0;
}

.account-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.account-overview,
.order-card{
  grid-column:1/-1;
}

.account-metrics{
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin-top:16px;
}

.account-metric{
  padding:12px;
}

.account-metric span,
.account-metric small{
  color:var(--muted);
  font-size:12px;
}

.account-metric strong{
  display:block;
  margin-top:8px;
}

.membership-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  align-items:center;
  gap:32px;
  padding:32px;
  border:1px solid var(--line);
  background:var(--surface);
}

.membership-card-visual{
  min-height:230px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:24px;
  background:var(--deep);
  color:var(--surface);
}

.membership-card-visual span{
  font-size:22px;
  font-weight:800;
  letter-spacing:.16em;
}

.membership-card-visual small{
  color:var(--accent);
  font-weight:800;
}

.plan-grid{
  align-items:stretch;
}

.featured{
  outline:3px solid var(--accent);
  outline-offset:-3px;
}

.liked-auth-modal,
.dialog-backdrop{
  position:fixed;
  inset:0;
  z-index:200;
  display:grid;
  place-items:center;
  padding:18px;
}

.liked-auth-backdrop,
.dialog-backdrop::before{
  position:absolute;
  inset:0;
  content:"";
  background:rgba(17,20,18,.56);
}

.liked-auth-card,
.dialog-panel{
  position:relative;
  z-index:1;
  width:min(460px,100%);
}

.liked-auth-close{
  float:right;
  border:0;
  background:transparent;
  color:var(--muted);
}

.home-upgrade{
  display:grid;
  grid-template-columns:1fr 320px;
  align-items:center;
  gap:24px;
}

.home-service-strip article{
  display:flex;
  gap:12px;
  padding:16px;
  border:1px solid var(--line);
  background:var(--surface);
}

.service-icon,
.step-icon{
  width:36px;
  height:36px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  background:var(--accent);
  color:var(--accent-ink);
}

.service-icon svg,
.step-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

.step{
  min-height:180px;
  padding:18px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
}

.step-number{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  background:var(--ink);
  color:var(--surface);
  font-weight:800;
}

.activation-stage{
  min-height:calc(100svh - var(--nav-height));
  display:grid;
  place-items:center;
}

.activation-panel{
  width:min(620px,100%);
  text-align:left;
}

.activation-orb{
  width:86px;
  height:86px;
  margin:22px 0;
  background:var(--accent);
}

.footer,
.site-footer{
  width:min(1180px,100% - 32px);
  margin:42px auto 0;
  padding:24px 0 110px;
  border-top:1px solid var(--line);
}

.footer-content,
.footer-links,
.site-footer-inner,
.site-footer nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:14px;
}

.site-footer-inner{
  align-items:flex-start;
}

.site-footer p{
  max-width:360px;
  margin-top:8px;
}

.site-footer nav a{
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}

.footer-logo{
  font-weight:800;
  letter-spacing:.16em;
}

.launch-body{
  padding:0;
}

.launch-gate{
  min-height:100svh;
  width:min(720px,100% - 32px);
  margin:0 auto;
  display:grid;
  place-items:center;
}

.launch-panel{
  width:100%;
  padding:34px;
  border:1px solid var(--line);
  background:var(--surface);
}

.launch-countdown{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:20px 0;
}

.admin-dashboard,
.admin-panel,
.admin-results{
  display:grid;
  gap:14px;
}

.admin-inline-link{
  text-decoration:underline;
}

@media (max-width:980px){
  :root{
    --nav-height:86px;
    --top-strip-height:44px;
  }

  body{
    padding-bottom:36px;
    background:#fff;
  }

  .top-strip{
    justify-content:center;
    gap:30px;
    overflow-x:auto;
    white-space:nowrap;
    scrollbar-width:none;
    font-size:14px;
    letter-spacing:0;
    text-transform:none;
  }

  .top-strip::-webkit-scrollbar{
    display:none;
  }

  .nav{
    grid-template-columns:auto 1fr auto;
    min-height:var(--nav-height);
    padding:0 20px;
    background:#fff;
    border-bottom:1px solid #e8ece8;
    backdrop-filter:none;
  }

  .nav-mobile-menu{
    display:grid;
  }

  .logo{
    justify-self:center;
    font-size:28px;
    letter-spacing:.36em;
  }

  .menu{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:120;
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    padding:8px 14px 14px;
    border-bottom:1px solid var(--line);
    background:var(--bg);
    box-shadow:var(--shadow);
    transform:translateY(-8px);
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
  }

  html[data-theme="dark"] .menu{
    background:var(--bg);
  }

  body.mobile-menu-open .menu{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
  }

  .menu a{
    display:flex;
    align-items:center;
    min-height:48px;
    border-bottom:1px solid var(--line);
    border-radius:0;
    padding-inline:4px;
  }

  .nav-actions{
    gap:18px;
  }

  .nav-member-cta{
    display:none;
  }

  .bottom-nav{
    display:none;
  }

  .launch-hero,
  .store-hero,
  .vehicle-shop,
  .bundle-feature,
  .brand-story,
  .product-detail,
  .cart-layout,
  .dashboard-layout,
  .membership-panel,
  .home-upgrade{
    grid-template-columns:1fr;
  }

  .store-hero{
    grid-template-areas:
      "campaign"
      "copy"
      "product";
    min-height:0;
  }

  .hero-campaign{
    min-height:300px;
  }

  .hero-campaign strong{
    font-size:58px;
  }

  .hero-product-composition{
    width:min(50%,420px);
  }

  .store-hero-copy h1{
    font-size:54px;
  }

  .category-tile-grid,
  .vehicle-grid,
  .guide-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .home-hero-visual{
    min-height:320px;
  }

  .home-trending-grid,
  .product-grid,
  .steps,
  .plan-grid,
  .account-grid,
  .home-service-strip,
  .drops-list,
  .category-launch{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .dashboard-sidebar,
  .cart-summary{
    position:static;
  }

  .dashboard-sidebar{
    display:flex;
    overflow-x:auto;
  }

  .account-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  :root{
    --nav-height:86px;
    --top-strip-height:44px;
  }

  .top-strip{
    height:var(--top-strip-height);
    justify-content:center;
    gap:24px;
    padding:0 14px;
    font-size:13px;
    font-weight:700;
    letter-spacing:0;
    text-transform:none;
  }

  .top-strip span:nth-of-type(n+3),
  .top-strip a{
    display:none;
  }

  .nav{
    gap:10px;
    min-height:var(--nav-height);
    padding:0 20px;
  }

  .logo{
    font-size:27px;
    letter-spacing:.32em;
  }

  .nav-icon,
  .nav-mobile-menu{
    width:42px;
    height:42px;
  }

  .nav-actions .nav-wishlist{
    display:none;
  }

  .nav-icon,
  .nav-mobile-menu{
    border-color:transparent;
    background:transparent;
  }

  main,
  .home-shell,
  .cart-screen,
  .liked-shell,
  .drops-screen,
  .order-screen,
  .account-dashboard-shell,
  .product-detail-page{
    width:100%;
  }

  h1,
  .hero h1,
  .page-hero h1,
  .membership-hero h1,
  .product-detail h1,
  .drops-hero h1,
  .activation-stage h1{
    font-size:48px;
  }

  .store-hero{
    display:block;
    padding:0;
    border:0;
  }

  .hero-campaign{
    min-height:600px;
    align-content:end;
    padding:0 24px 48px;
    border:0;
    background:
      radial-gradient(circle at 72% 14%,rgba(184,255,74,.84),rgba(184,255,74,0) 38%),
      linear-gradient(180deg,#fbfcf8 0%,#eff4ed 58%,#d9ff8a 100%);
    color:var(--ink);
  }

  .hero-product-composition{
    top:28px;
    right:0;
    bottom:285px;
    left:0;
    width:auto;
  }

  .hero-product{
    filter:drop-shadow(0 20px 18px rgba(15,18,16,.13));
  }

  .hero-product-main{
    left:34%;
    bottom:-2%;
    width:30%;
  }

  .hero-product-left{
    left:5%;
    bottom:8%;
    width:24%;
    transform:rotate(-9deg);
  }

  .hero-product-right{
    right:3%;
    bottom:6%;
    width:30%;
    transform:rotate(6deg);
  }

  .hero-product-back{
    left:51%;
    top:1%;
    width:23%;
  }

  .hero-product-front{
    left:19%;
    top:12%;
    width:22%;
  }

  .hero-campaign strong{
    max-width:330px;
    color:var(--ink);
    font-size:46px;
    font-weight:800;
    line-height:.98;
  }

  .hero-campaign span{
    background:transparent;
    color:var(--muted);
    padding:0;
    font-size:14px;
    letter-spacing:.04em;
    text-transform:uppercase;
  }

  .hero-campaign em{
    min-height:58px;
    width:205px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:8px;
    border:0;
    background:var(--ink);
    color:var(--surface);
    font-size:20px;
    letter-spacing:0;
    text-transform:none;
  }

  .store-hero-copy,
  .store-hero-product{
    display:none;
  }

  .featured-categories,
  .product-showcase,
  .vehicle-shop,
  .bundle-feature,
  .guide-strip,
  .brand-story,
  .home-service-strip,
  .catalog-section,
  .category-launch,
  .pdp-information{
    padding:38px 20px;
  }

  .home-countdown,
  .shop-drop-countdown{
    width:100%;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:12px;
    font-size:11px;
    line-height:1.15;
  }

  .shop-drop-countdown{
    grid-template-columns:1fr;
  }

  .shop-drop-countdown strong{
    overflow-wrap:normal;
  }

  .page-hero p,
  .membership-hero p,
  .launch-hero p,
  .product-detail p,
  .drops-hero p{
    font-size:16px;
  }

  .page-hero{
    padding:34px 20px 18px;
  }

  .page-hero h1{
    font-size:46px;
  }

  .section-heading-row{
    margin-bottom:22px;
  }

  .section-heading-row h2,
  .featured-categories h2,
  .product-showcase h2{
    font-size:44px;
    font-weight:500;
    line-height:1.08;
  }

  .home-trending-grid,
  .product-grid,
  .vehicle-grid,
  .guide-grid,
  .category-launch{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .category-tile-grid{
    display:flex;
    gap:18px;
    margin:0 -20px;
    padding:0 20px 8px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }

  .category-tile-grid::-webkit-scrollbar{
    display:none;
  }

  .category-tile{
    flex:0 0 205px;
    min-height:0;
    gap:16px;
    padding:0;
    border:0;
    background:transparent;
    scroll-snap-align:start;
  }

  .category-tile::before{
    content:"";
    display:block;
    width:100%;
    aspect-ratio:1.22/1;
    border-radius:4px;
    background:
      linear-gradient(135deg,rgba(17,20,18,.12),rgba(17,20,18,.02)),
      #eef0ef;
  }

  .category-tile span{
    font-size:25px;
    font-weight:500;
  }

  .category-tile small{
    display:none;
  }

  .steps,
  .plan-grid,
  .account-grid,
  .home-service-strip,
  .drops-list{
    grid-template-columns:1fr;
  }

  .vehicle-grid a,
  .guide-grid a{
    min-height:112px;
  }

  .vehicle-grid a,
  .guide-grid a{
    font-size:17px;
  }

  .product-info{
    padding:18px 0 0;
    gap:12px;
  }

  .product-info h3,
  .home-trending-copy strong{
    min-height:0;
    font-size:22px;
    font-weight:700;
    line-height:1.15;
  }

  .product-actions{
    display:none;
  }

  .product-actions .product-btn{
    width:100%;
  }

  .home-trending-copy{
    padding:18px 0 0;
  }

  .home-trending-prices,
  .product-prices{
    flex-wrap:wrap;
    font-size:21px;
    line-height:1.1;
  }

  .product-card,
  .home-trending-card{
    border:0;
    background:transparent;
    overflow:visible;
  }

  .product-image,
  .home-trending-image{
    border-radius:4px;
    background:#f3f3f3;
  }

  .product-image img,
  .home-trending-image img{
    padding:18px;
  }

  .home-deal-badge,
  .great-price,
  .few-left{
    border-radius:8px;
    background:#fff;
    color:#e64e5e;
    font-size:18px;
    font-weight:500;
    text-transform:none;
  }

  .home-deal-badge{
    position:absolute;
    top:12px;
    right:12px;
    z-index:2;
  }

  .product-badges{
    top:12px;
    right:12px;
    left:auto;
  }

  .home-add-button{
    width:58px;
    min-width:58px;
    height:58px;
    min-height:58px;
    right:14px;
    bottom:calc(100% - 58px - 14px);
    border-radius:8px;
    background:#fff;
    color:#2648ff;
    border:0;
    font-size:0;
  }

  .home-add-button::before{
    content:"+";
    font-size:32px;
    line-height:1;
  }

  .product-wishlist-button{
    display:none;
  }

  .product-detail-media{
    display:block;
  }

  .product-thumb-rail{
    display:none;
  }

  .product-large-image{
    width:100%;
    min-height:560px;
    border:0;
    background:#f5f5f5;
  }

  .product-large-image img{
    padding:34px;
  }

  .product-detail{
    display:block;
    padding:0;
  }

  .product-detail-info{
    padding:34px 20px 28px;
    background:#fff;
  }

  .product-detail h1{
    font-size:40px;
    font-weight:500;
    line-height:1.1;
  }

  .detail-prices{
    font-size:26px;
    justify-content:flex-start;
  }

  .product-buy-box{
    margin-top:10px;
  }

  .pdp-breadcrumb{
    padding:28px 20px 22px;
    overflow:hidden;
    white-space:nowrap;
    text-transform:uppercase;
    font-size:13px;
    letter-spacing:.02em;
  }

  .cart-item{
    grid-template-columns:86px 1fr;
  }

  .discount-row{
    grid-template-columns:1fr;
  }

  .membership-panel{
    padding:18px;
  }

  .membership-card-visual{
    min-height:190px;
  }

  .section-heading-row,
  .category-launch-header,
  .catalog-tools{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* Premium storefront redesign: mobile-first Versen V4 */
:root{
  --bg:#f7f7f5;
  --surface:#ffffff;
  --surface-2:#f0f1ee;
  --surface-3:#e8e9e5;
  --ink:#090b0c;
  --muted:#676d68;
  --soft:#9aa09a;
  --line:#e0e2dd;
  --accent:#090b0c;
  --accent-ink:#ffffff;
  --deep:#090b0c;
  --warning:#b45136;
  --shadow:0 18px 48px rgba(15,18,16,.09);
  --soft-shadow:0 8px 26px rgba(15,18,16,.07);
  --radius:8px;
  --nav-height:76px;
  --top-strip-height:34px;
}

html[data-theme="dark"]{
  --bg:#f7f7f5;
  --surface:#ffffff;
  --surface-2:#f0f1ee;
  --surface-3:#e8e9e5;
  --ink:#090b0c;
  --muted:#676d68;
  --soft:#9aa09a;
  --line:#e0e2dd;
  --deep:#090b0c;
  --shadow:0 18px 48px rgba(15,18,16,.09);
  color-scheme:light;
}

body{
  padding-top:calc(var(--nav-height) + var(--top-strip-height));
  padding-bottom:0;
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:300;
}

strong,
h1,
h2,
h3,
.logo,
.cta,
.product-btn{
  font-weight:500;
}

.glow,
.activation-glow,
.activation-rings{
  display:none!important;
}

.fade{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .7s ease, transform .7s ease;
}

.fade.show{
  opacity:1;
  transform:none;
}

.top-strip{
  height:var(--top-strip-height);
  background:#111312;
  color:#fff;
  font-size:11px;
  font-weight:500;
  letter-spacing:.02em;
  text-transform:none;
}

.top-strip a{
  color:#fff;
  opacity:.76;
}

.nav{
  min-height:var(--nav-height);
  border-bottom:1px solid rgba(9,11,12,.08);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(18px);
}

html[data-theme="dark"] .nav{
  background:rgba(255,255,255,.88);
}

.logo{
  color:var(--ink);
  font-size:18px;
  letter-spacing:.24em;
}

.menu a,
.nav-member-cta,
.footer-links a{
  color:#555c57;
  font-size:14px;
  font-weight:500;
}

.menu a,
.nav-member-cta{
  min-height:40px;
  padding:10px 13px;
  border:0;
  border-radius:999px;
}

.menu a.active,
.menu a:hover,
.nav-member-cta.active,
.nav-member-cta:hover{
  border:0;
  background:#f1f2ef;
  color:var(--ink);
}

.nav-icon,
.nav-mobile-menu{
  border:0;
  border-radius:50%;
  background:#f2f3f0;
  color:var(--ink);
}

.nav-icon.active,
.nav-icon:hover{
  background:#e7e8e4;
}

.nav-cart [data-cart-count],
.menu [data-cart-count]{
  background:var(--ink);
  color:#fff;
}

.nav-cart [data-cart-count]:empty,
.menu [data-cart-count]:empty{
  display:none;
}

.nav-account::before{
  width:16px;
  height:16px;
  border:1.8px solid currentColor;
  border-radius:50%;
  box-shadow:none;
}

.nav-account::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:8px;
  width:18px;
  height:8px;
  border:1.8px solid currentColor;
  border-top:0;
  border-radius:0 0 18px 18px;
  transform:translateX(-50%);
}

.nav-mobile-menu[aria-label="Tillbaka"]::before{
  width:13px;
  height:13px;
  border:0;
  border-left:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateX(2px) rotate(45deg);
}

.nav-mobile-menu[aria-label="Meny"]:empty::before{
  width:18px;
  height:2px;
  border:0;
  border-radius:2px;
  background:currentColor;
  box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;
}

.bottom-nav{
  border:1px solid rgba(9,11,12,.08);
  border-radius:22px;
  background:rgba(255,255,255,.9);
  box-shadow:0 14px 40px rgba(15,18,16,.14);
}

.bottom-nav a{
  border-radius:18px;
  font-size:11px;
  font-weight:500;
}

.bottom-nav a.active{
  background:#111312;
  color:#fff;
}

main,
.home-shell,
.cart-screen,
.liked-shell,
.drops-screen,
.order-screen,
.account-dashboard-shell,
.product-detail-page,
.membership-page{
  width:min(1180px,100% - 32px);
  margin:0 auto;
}

.eyebrow{
  display:block;
  margin-bottom:14px;
  color:var(--muted);
  font-size:12px;
  font-weight:500;
  letter-spacing:.11em;
  text-transform:uppercase;
}

h1,
.page-hero h1,
.membership-hero h1,
.product-detail h1,
.drops-hero h1{
  max-width:900px;
  margin-top:0;
  font-size:clamp(48px,7vw,86px);
  line-height:.94;
  letter-spacing:0;
}

h2{
  font-size:clamp(34px,4.7vw,58px);
  line-height:1;
  letter-spacing:0;
}

h3{
  font-size:20px;
  line-height:1.18;
}

p{
  color:var(--muted);
  font-size:17px;
  line-height:1.58;
}

.page-hero,
.membership-hero,
.drops-hero{
  padding:clamp(58px,8vw,112px) 0 clamp(38px,6vw,74px);
}

.page-hero p,
.membership-hero p,
.drops-hero p,
.product-detail p{
  font-size:19px;
}

.cta,
.product-btn,
.account-switch-button,
.remove-btn,
.filter,
.sort-pill,
.variant-option,
.flag-toggle{
  min-height:52px;
  border:1px solid var(--ink);
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-size:15px;
  font-weight:500;
  box-shadow:none;
}

.product-btn.secondary,
.secondary,
.remove-btn,
.account-switch-button,
.filter,
.sort-pill,
.variant-option{
  border-color:rgba(9,11,12,.12);
  background:#fff;
  color:var(--ink);
}

.filter.active,
.sort-pill.active,
.variant-option.active{
  border-color:var(--ink);
  background:var(--ink);
  color:#fff;
}

.badge,
.status-pill,
.detail-saving,
.detail-urgency,
.home-countdown,
.shop-drop-countdown,
.activation-status,
.order-status-badge{
  border:1px solid rgba(9,11,12,.1);
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:12px;
  font-weight:500;
  letter-spacing:.08em;
}

.premium-hero{
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,520px);
  gap:clamp(34px,7vw,92px);
  align-items:center;
  padding:clamp(48px,8vw,92px) 0;
  border-bottom:1px solid var(--line);
}

.premium-hero-copy p{
  max-width:620px;
  margin-top:22px;
}

.hero-actions{
  gap:12px;
  margin-top:30px;
}

.hero-proof-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:34px;
}

.hero-proof-row span{
  padding:10px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:13px;
}

.premium-hero-stage{
  position:relative;
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:10px;
  padding:28px;
  border-radius:var(--radius);
  background:#eceeeb;
  box-shadow:var(--shadow);
  overflow:hidden;
}

.premium-hero-stage::before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:6px;
  pointer-events:none;
}

.premium-hero-stage > span,
.premium-hero-stage > strong{
  position:relative;
  z-index:3;
}

.premium-hero-stage > span{
  width:max-content;
  padding:8px 10px;
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:12px;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.premium-hero-stage > strong{
  max-width:360px;
  font-size:42px;
  line-height:1;
  color:var(--ink);
}

.premium-hero-stage .hero-product-composition{
  position:absolute;
  inset:34px 10px 150px;
  width:auto;
  z-index:1;
}

.hero-product{
  filter:drop-shadow(0 24px 22px rgba(15,18,16,.14));
}

.premium-intro,
.value-section,
.membership-benefits,
.weekly-drop-section,
.reviews-section,
.home-faq,
.featured-categories,
.product-showcase,
.vehicle-shop,
.bundle-feature,
.guide-strip,
.brand-story,
.home-service-strip,
.catalog-section,
.category-launch,
.pdp-information,
.related-products-section,
.membership-benefit-band,
.membership-plans,
.membership-faq{
  padding:clamp(58px,8vw,104px) 0;
  border-bottom:1px solid var(--line);
}

.premium-intro{
  width:min(880px,100%);
  margin:0 auto;
  text-align:center;
}

.premium-intro p{
  max-width:700px;
  margin:22px auto 0;
}

.section-heading-row{
  margin-bottom:28px;
}

.section-heading-row a{
  color:var(--muted);
  font-size:15px;
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:5px;
}

.premium-category-grid,
.value-grid,
.benefit-list,
.review-grid,
.membership-benefit-band{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.category-tile,
.vehicle-grid a,
.guide-grid a{
  min-height:300px;
  justify-content:flex-end;
  gap:12px;
  padding:22px;
  border:0;
  border-radius:var(--radius);
  background:#eceeea;
  box-shadow:var(--soft-shadow);
  overflow:hidden;
}

.category-tile::before{
  content:"";
  display:block;
  width:100%;
  height:160px;
  margin-bottom:auto;
  border-radius:6px;
  background:#f8f8f6;
}

.category-car::before{
  background:#f8f8f6 url("assets/hero-studio/bilschampo-tershine-purify-s-keramiskt.png") center/contain no-repeat;
}

.category-performance::before{
  background:#f8f8f6 url("assets/versen-whey-hero.png") center/contain no-repeat;
}

.category-drops::before{
  background:#f8f8f6 url("assets/hero-studio/snabbforsegling-tershine-amplify-500-ml.png") center/contain no-repeat;
}

.category-tile span{
  font-size:30px;
  font-weight:500;
  letter-spacing:0;
}

.category-tile small{
  color:var(--muted);
  font-size:15px;
}

.value-section,
.membership-benefits,
.weekly-drop-section,
.reviews-section{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(26px,5vw,72px);
  align-items:start;
}

.value-grid{
  grid-template-columns:1fr;
}

.value-grid article,
.benefit-list article,
.review-grid article,
.membership-benefit-band article,
.plan-grid article,
.account-card,
.cart-summary,
.cart-item,
.dashboard-sidebar,
.account-metric,
.empty-state,
.liked-warning,
.suggestion-panel,
.suggestion-rhythm,
.settings-card,
.order-success-card,
.order-confirmation-panel,
.activation-panel{
  border:1px solid rgba(9,11,12,.08);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--soft-shadow);
}

.value-grid article,
.benefit-list article,
.review-grid article,
.membership-benefit-band article{
  padding:24px;
}

.value-grid strong,
.benefit-list strong,
.review-grid strong,
.membership-benefit-band strong{
  display:block;
  margin-bottom:8px;
  font-size:22px;
}

.benefit-list{
  grid-template-columns:1fr;
}

.benefit-list article{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
}

.benefit-list span,
.membership-benefit-band span{
  color:var(--soft);
  font-size:13px;
  font-weight:500;
  letter-spacing:.08em;
}

.membership-benefit-copy{
  position:sticky;
  top:calc(var(--nav-height) + var(--top-strip-height) + 24px);
}

.membership-benefit-copy p{
  margin:18px 0 24px;
}

.weekly-drop-section{
  align-items:center;
}

.drop-copy h2{
  font-size:clamp(42px,6vw,74px);
}

.drop-copy p{
  max-width:520px;
  margin:16px 0 24px;
}

.drop-visual{
  min-height:360px;
  display:grid;
  place-items:center;
  border-radius:var(--radius);
  background:#eceeea;
  box-shadow:var(--soft-shadow);
}

.drop-visual img{
  width:min(80%,380px);
  filter:drop-shadow(0 24px 22px rgba(15,18,16,.12));
}

.home-trending-grid,
.product-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px 16px;
}

.product-card,
.home-trending-card{
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}

.product-image,
.home-trending-image{
  position:relative;
  aspect-ratio:1/1.08;
  border-radius:var(--radius);
  background:#eceeea;
  box-shadow:var(--soft-shadow);
}

.product-image img,
.home-trending-image img{
  padding:26px;
}

.product-info,
.home-trending-copy{
  padding:16px 2px 0;
  gap:10px;
}

.product-card-meta,
.product-category,
.home-trending-copy small,
.product-saving,
.home-trending-saving{
  color:var(--muted);
  font-size:12px;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.product-info h3,
.home-trending-copy strong{
  min-height:0;
  color:var(--ink);
  font-size:21px;
  line-height:1.15;
  font-weight:500;
}

.product-prices,
.home-trending-prices,
.detail-prices{
  justify-content:flex-start;
  gap:10px;
}

.new,
.product-price,
.home-price,
.home-trending-prices em{
  color:var(--ink);
  font-size:22px;
  font-style:normal;
  font-weight:500;
}

.old,
.home-trending-prices del{
  color:#8b918b;
  font-size:16px;
  text-decoration:line-through;
}

.great-price,
.few-left,
.home-deal-badge{
  border-radius:999px;
  background:#fff;
  color:#111312;
  box-shadow:0 6px 18px rgba(15,18,16,.08);
  font-size:12px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
}

.product-wishlist-button,
.home-add-button{
  border:0;
  border-radius:50%;
  background:#fff;
  color:var(--ink);
  box-shadow:0 8px 20px rgba(15,18,16,.1);
}

.home-add-button{
  width:46px;
  min-width:46px;
  height:46px;
  min-height:46px;
  right:12px;
  bottom:calc(100% - 58px);
}

.reviews-section{
  align-items:center;
}

.review-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.review-grid p{
  color:var(--ink);
  font-size:20px;
  line-height:1.35;
}

.review-grid strong{
  margin-top:24px;
  color:var(--muted);
  font-size:14px;
}

.faq-stack{
  display:grid;
  gap:10px;
}

.faq-stack details,
.pdp-accordion details{
  border:1px solid rgba(9,11,12,.08);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--soft-shadow);
}

.faq-stack summary,
.pdp-accordion summary{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 20px;
  color:var(--ink);
  cursor:pointer;
  font-size:19px;
  font-weight:500;
  list-style:none;
}

.faq-stack summary::-webkit-details-marker,
.pdp-accordion summary::-webkit-details-marker{
  display:none;
}

.faq-stack summary::after,
.pdp-accordion summary::after{
  content:"+";
  color:var(--muted);
  font-size:24px;
}

.faq-stack details[open] summary::after,
.pdp-accordion details[open] summary::after{
  content:"-";
}

.faq-stack p,
.pdp-accordion p,
.product-description-rich{
  padding:0 20px 20px;
}

.shop-hero{
  border-bottom:0;
  text-align:left;
}

.category-launch{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.category-launch-card{
  min-height:220px;
  align-content:start;
  border-radius:var(--radius);
  padding:22px;
  box-shadow:var(--soft-shadow);
}

.category-launch-card.active{
  outline:0;
  border-color:var(--ink);
}

.category-launch-card span{
  font-size:28px;
  font-weight:500;
}

.category-image-row{
  display:flex;
  gap:6px;
  min-height:70px;
  background:transparent;
}

.category-image-row img{
  width:54px;
  height:54px;
  object-fit:contain;
  border-radius:6px;
  background:#f3f4f1;
}

.shop-drop-countdown{
  grid-column:1/-1;
  width:100%;
  border-radius:var(--radius);
  background:#111312;
  color:#fff;
}

.catalog-tools{
  align-items:center;
}

.product-detail-page{
  width:min(1240px,100%);
}

.pdp-breadcrumb{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  padding:24px 0;
  color:var(--muted);
  font-weight:500;
}

.product-detail{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:clamp(28px,6vw,78px);
  padding:18px 0 clamp(64px,8vw,104px);
  border-bottom:1px solid var(--line);
}

.product-detail-media{
  grid-template-columns:86px 1fr;
}

.product-large-image{
  min-height:660px;
  border:0;
  border-radius:var(--radius);
  background:#eceeea;
  box-shadow:var(--soft-shadow);
}

.product-large-image img{
  padding:48px;
}

.product-thumb{
  border:0;
  border-radius:var(--radius);
  background:#f0f1ee;
  box-shadow:var(--soft-shadow);
}

.product-thumb.active{
  border:1px solid var(--ink);
}

.product-detail-info{
  position:sticky;
  top:calc(var(--nav-height) + var(--top-strip-height) + 24px);
  align-self:start;
  gap:18px;
  padding:8px 0;
}

.product-detail h1{
  font-size:clamp(38px,4.5vw,62px);
  line-height:1;
}

.price-label{
  color:var(--muted);
  font-size:12px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.detail-prices .new{
  font-size:34px;
}

.detail-prices .old{
  font-size:20px;
}

.product-buy-box{
  padding:18px;
  border:1px solid rgba(9,11,12,.08);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--soft-shadow);
}

.quantity-control{
  border:1px solid rgba(9,11,12,.1);
  border-radius:999px;
  overflow:hidden;
}

.quantity-control button,
.quantity-control input{
  min-height:50px;
}

.pdp-card-row span{
  flex:1;
  display:grid;
  place-items:center;
  min-height:46px;
  border:1px solid rgba(9,11,12,.08);
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:13px;
}

.pdp-service-list{
  margin-top:4px;
}

.pdp-service-list ul{
  display:grid;
  gap:8px;
  list-style:none;
}

.pdp-service-list li{
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:0;
  color:var(--muted);
}

.pdp-information,
.related-products-section{
  width:min(1180px,100% - 32px);
  margin:0 auto;
}

.product-description-rich{
  display:grid;
  gap:18px;
}

.product-copy-section{
  display:grid;
  gap:12px;
}

.product-copy-section h3{
  margin-top:8px;
}

.product-spec-list{
  display:grid;
  gap:10px;
}

.product-spec-list div{
  display:grid;
  grid-template-columns:minmax(120px,.4fr) 1fr;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid var(--line);
}

.product-spec-list dt{
  color:var(--muted);
}

.product-note-list{
  display:grid;
  gap:8px;
  padding-left:18px;
  color:var(--muted);
}

.membership-page{
  width:min(1180px,100% - 32px);
}

.premium-membership-hero{
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  display:grid;
  align-items:center;
  padding:clamp(48px,8vw,92px) 0;
}

.membership-panel{
  grid-template-columns:minmax(0,1fr) minmax(320px,430px);
  gap:clamp(28px,6vw,76px);
  padding:0;
  border:0;
  background:transparent;
}

.membership-copy p{
  max-width:620px;
  margin:22px 0 28px;
}

.membership-card-visual{
  min-height:520px;
  border-radius:var(--radius);
  background:#111312;
  box-shadow:var(--shadow);
}

.membership-card-visual strong{
  max-width:240px;
  font-size:48px;
  line-height:1;
}

.membership-card-visual small{
  color:#fff;
  opacity:.66;
}

.membership-benefit-band{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.plan-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.plan-grid article{
  display:grid;
  gap:16px;
  padding:28px;
}

.plan-grid article strong{
  font-size:42px;
  line-height:1;
}

.featured{
  outline:0;
  border-color:var(--ink)!important;
}

.featured em{
  width:max-content;
  padding:7px 10px;
  border-radius:999px;
  background:#111312;
  color:#fff;
  font-style:normal;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cart-layout{
  grid-template-columns:minmax(0,1fr) minmax(340px,400px);
  gap:24px;
}

.cart-list{
  gap:14px;
}

.cart-item{
  grid-template-columns:128px 1fr;
  gap:18px;
  padding:14px;
}

.cart-item-image{
  border-radius:var(--radius);
  background:#eceeea;
}

.cart-item-info h3{
  font-size:22px;
}

.cart-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.quantity-control.small{
  width:150px;
  grid-template-columns:42px 1fr 42px;
}

.cart-summary{
  top:calc(var(--nav-height) + var(--top-strip-height) + 24px);
  gap:16px;
  padding:22px;
}

.checkout-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
}

.checkout-steps span{
  min-height:38px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f1f2ef;
  color:var(--muted);
  font-size:12px;
}

.checkout-steps .active{
  background:#111312;
  color:#fff;
}

.member-saving-box{
  border:0;
  border-radius:var(--radius);
  background:#f1f2ef;
  padding:16px;
  box-shadow:none;
}

.discount-row{
  grid-template-columns:1fr auto;
}

input,
textarea,
select{
  min-height:54px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  padding:0 16px;
}

textarea{
  border-radius:var(--radius);
}

.dashboard-layout{
  grid-template-columns:220px 1fr;
  gap:24px;
}

.dashboard-sidebar{
  top:calc(var(--nav-height) + var(--top-strip-height) + 24px);
  padding:12px;
}

.dashboard-sidebar a,
.dashboard-sidebar button{
  min-height:46px;
  padding:0 12px;
  border-radius:999px;
  font-weight:500;
}

.dashboard-sidebar .active{
  background:#111312;
  color:#fff;
}

.account-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.account-card{
  padding:24px;
}

.account-card h2{
  font-size:34px;
}

.account-metrics{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.account-metric{
  padding:16px;
  box-shadow:none;
}

.account-metric strong{
  font-size:20px;
}

.empty-state,
.empty-cart{
  min-height:260px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  padding:28px;
  border:1px solid rgba(9,11,12,.08);
  border-radius:var(--radius);
  background:#fff;
  color:var(--muted);
  text-align:center;
  box-shadow:var(--soft-shadow);
}

.empty-state span,
.empty-cart h2{
  color:var(--ink);
  font-size:26px;
  font-weight:500;
}

.category-lock-popover,
.points-popover{
  position:fixed;
  inset:0;
  z-index:240;
  display:grid;
  place-items:end center;
  padding:18px;
  background:rgba(9,11,12,.42);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}

.category-lock-popover.show,
.points-popover.show{
  opacity:1;
  pointer-events:auto;
}

.category-lock-card,
.points-popover-card{
  width:min(460px,100%);
  display:grid;
  gap:14px;
  padding:24px;
  border-radius:16px;
  background:#fff;
  box-shadow:var(--shadow);
}

.category-lock-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.site-footer{
  width:100%;
  margin:0;
  padding:64px max(16px,calc((100vw - 1180px) / 2)) 92px;
  border-top:1px solid var(--line);
  background:#fff;
}

.site-footer-inner{
  align-items:flex-start;
}

.footer-logo{
  font-weight:500;
  letter-spacing:.24em;
}

.site-footer p{
  font-size:15px;
}

.site-footer nav{
  gap:18px;
}

.site-footer nav a{
  color:var(--muted);
  font-size:14px;
  font-weight:500;
}

@media (max-width:980px){
  :root{
    --nav-height:72px;
    --top-strip-height:34px;
  }

  body{
    background:var(--bg);
  }

  .nav{
    padding:0 16px;
  }

  .nav-mobile-menu{
    display:grid;
  }

  .logo{
    justify-self:center;
    font-size:20px;
    letter-spacing:.28em;
  }

  .menu{
    position:fixed;
    top:calc(var(--nav-height) + var(--top-strip-height));
    left:10px;
    right:10px;
    display:grid;
    gap:4px;
    padding:12px;
    border:1px solid rgba(9,11,12,.08);
    border-radius:18px;
    background:#fff;
    box-shadow:var(--shadow);
  }

  .menu a{
    min-height:54px;
    padding:0 14px;
    border:0;
    border-radius:14px;
    font-size:18px;
  }

  .premium-hero,
  .value-section,
  .membership-benefits,
  .weekly-drop-section,
  .reviews-section,
  .product-detail,
  .cart-layout,
  .dashboard-layout,
  .membership-panel{
    grid-template-columns:1fr;
  }

  .premium-hero-stage{
    min-height:540px;
  }

  .membership-benefit-copy,
  .product-detail-info{
    position:static;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .premium-category-grid,
  .membership-benefit-band,
  .category-launch,
  .account-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .dashboard-sidebar{
    position:static;
    display:flex;
    overflow-x:auto;
  }
}

@media (max-width:640px){
  :root{
    --nav-height:66px;
    --top-strip-height:32px;
  }

  body{
    padding-bottom:88px;
  }

  .top-strip{
    gap:18px;
    font-size:12px;
  }

  .top-strip span:nth-of-type(n+3),
  .top-strip a{
    display:none;
  }

  .nav{
    min-height:var(--nav-height);
    padding:0 14px;
  }

  .logo{
    font-size:17px;
    letter-spacing:.24em;
  }

  .nav-actions{
    gap:4px;
  }

  .nav-actions .nav-account,
  .nav-actions .nav-wishlist,
  .nav-member-cta{
    display:none;
  }

  .nav-icon,
  .nav-mobile-menu{
    width:44px;
    height:44px;
    background:#f1f2ef;
  }

  .bottom-nav{
    display:grid;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:160;
    padding:4px;
  }

  .page-product-detail .bottom-nav,
  .page-cart .bottom-nav{
    display:none;
  }

  .page-product-detail,
  .page-cart{
    padding-bottom:0;
  }

  main,
  .home-shell,
  .cart-screen,
  .liked-shell,
  .drops-screen,
  .order-screen,
  .account-dashboard-shell,
  .product-detail-page,
  .membership-page{
    width:100%;
  }

  .premium-hero{
    min-height:0;
    display:flex;
    flex-direction:column;
    gap:0;
    padding:0;
    border-bottom:0;
  }

  .premium-hero-copy{
    padding:38px 20px 34px;
    background:#fff;
  }

  .premium-hero-copy h1{
    font-size:48px;
    line-height:.98;
  }

  .premium-hero-copy p{
    margin-top:18px;
    font-size:18px;
  }

  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .hero-actions .cta,
  .hero-actions .product-btn{
    width:100%;
  }

  .hero-proof-row{
    gap:8px;
    margin-top:24px;
  }

  .hero-proof-row span{
    font-size:12px;
  }

  .premium-hero-stage{
    min-height:430px;
    border-radius:0;
    box-shadow:none;
  }

  .premium-hero-stage::before{
    display:none;
  }

  .premium-hero-stage > strong{
    max-width:300px;
    font-size:36px;
  }

  .premium-hero-stage .hero-product-composition{
    inset:24px 0 122px;
  }

  .premium-intro,
  .value-section,
  .membership-benefits,
  .weekly-drop-section,
  .reviews-section,
  .home-faq,
  .featured-categories,
  .product-showcase,
  .vehicle-shop,
  .bundle-feature,
  .guide-strip,
  .brand-story,
  .home-service-strip,
  .catalog-section,
  .category-launch,
  .pdp-information,
  .related-products-section,
  .membership-benefit-band,
  .membership-plans,
  .membership-faq{
    padding:54px 20px;
  }

  .page-hero,
  .membership-hero,
  .drops-hero{
    padding:46px 20px 26px;
  }

  h1,
  .page-hero h1,
  .membership-hero h1,
  .product-detail h1,
  .drops-hero h1{
    font-size:44px;
    line-height:.99;
  }

  h2,
  .section-heading-row h2,
  .featured-categories h2,
  .product-showcase h2{
    font-size:38px;
    line-height:1.04;
  }

  p,
  .page-hero p,
  .membership-hero p,
  .drops-hero p,
  .product-detail p{
    font-size:17px;
  }

  .section-heading-row,
  .category-launch-header,
  .catalog-tools{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }

  .premium-category-grid,
  .category-tile-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin:0;
    padding:0;
    overflow:visible;
  }

  .category-tile{
    min-height:270px;
  }

  .category-tile span{
    font-size:28px;
  }

  .value-section,
  .membership-benefits,
  .weekly-drop-section,
  .reviews-section{
    display:grid;
    grid-template-columns:1fr;
  }

  .value-grid,
  .benefit-list,
  .review-grid,
  .membership-benefit-band,
  .plan-grid,
  .account-grid,
  .account-metrics,
  .category-launch,
  .steps,
  .home-service-strip,
  .drops-list{
    grid-template-columns:1fr;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 14px;
  }

  .product-info h3,
  .home-trending-copy strong{
    font-size:18px;
  }

  .new,
  .product-price,
  .home-price,
  .home-trending-prices em{
    font-size:20px;
  }

  .product-actions{
    display:none;
  }

  .home-add-button{
    display:none;
  }

  .product-large-image{
    min-height:500px;
    border-radius:0;
    box-shadow:none;
  }

  .product-large-image img{
    padding:34px;
  }

  .product-detail{
    width:100%;
    display:block;
    padding:0 0 36px;
  }

  .product-detail-media{
    display:block;
  }

  .product-thumb-rail{
    display:none;
  }

  .product-detail-info{
    padding:30px 20px 178px;
    background:#fff;
  }

  .product-detail h1{
    font-size:38px;
  }

  .product-short-description{
    font-size:17px;
  }

  .product-buy-box{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:170;
    grid-template-columns:112px 1fr;
    gap:10px;
    padding:12px 14px calc(12px + env(safe-area-inset-bottom));
    border-width:1px 0 0;
    border-radius:18px 18px 0 0;
    box-shadow:0 -12px 36px rgba(15,18,16,.13);
  }

  .product-buy-box .detail-urgency,
  .product-buy-box .detail-buy-now,
  .product-buy-box .form-message{
    display:none;
  }

  .product-buy-box .cta{
    min-height:56px;
  }

  .quantity-control{
    grid-template-columns:34px 1fr 34px;
  }

  .pdp-breadcrumb,
  .pdp-information,
  .related-products-section{
    width:100%;
  }

  .pdp-breadcrumb{
    padding:20px;
  }

  .pdp-card-row{
    display:none;
  }

  .membership-page{
    width:100%;
  }

  .premium-membership-hero{
    min-height:0;
    padding:46px 20px 54px;
  }

  .membership-panel{
    display:grid;
  }

  .membership-card-visual{
    min-height:260px;
    order:-1;
  }

  .membership-card-visual strong{
    font-size:34px;
  }

  .premium-membership-hero h1{
    font-size:40px;
  }

  .cart-screen,
  .account-dashboard-shell{
    width:100%;
  }

  .cart-layout{
    display:grid;
    grid-template-columns:1fr;
    padding:0 20px 54px;
  }

  .cart-item{
    grid-template-columns:92px 1fr;
    gap:12px;
  }

  .cart-item-info h3{
    font-size:18px;
  }

  .cart-summary{
    position:static;
  }

  .discount-row{
    grid-template-columns:1fr;
  }

  .dashboard-layout{
    display:grid;
    grid-template-columns:1fr;
    padding:0 20px 54px;
  }

  .dashboard-sidebar{
    margin:0 -20px;
    padding:0 20px 8px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }

  .dashboard-sidebar a,
  .dashboard-sidebar button{
    flex:0 0 auto;
    border:1px solid rgba(9,11,12,.08);
    background:#fff;
  }

  .dashboard-sidebar .active{
    background:#111312;
  }

  .account-card{
    padding:20px;
  }

  .account-card h2{
    font-size:30px;
  }

  .category-lock-popover,
  .points-popover{
    align-items:end;
    padding:10px;
  }

  .category-launch-card{
    min-height:184px;
  }

  .site-footer{
    padding:46px 20px 118px;
  }

  .site-footer-inner,
  .site-footer nav{
    display:grid;
    justify-content:stretch;
  }
}

/* Versen V5 quality pass: launch-ready commerce polish */
:root{
  --bg:#f6f6f3;
  --paper:#fbfbf8;
  --warm:#eeeee9;
  --hairline:rgba(9,11,12,.075);
  --commerce-shadow:0 18px 44px rgba(15,18,16,.08);
}

body{
  background:var(--paper);
}

.top-strip{
  height:30px;
  font-size:11px;
}

.nav{
  min-height:68px;
  padding:0 clamp(18px,4vw,48px);
  background:rgba(251,251,248,.88);
  border-bottom:1px solid rgba(9,11,12,.055);
  box-shadow:0 1px 0 rgba(255,255,255,.75) inset;
}

.logo{
  font-size:17px;
  font-weight:500;
  letter-spacing:.28em;
}

.menu{
  gap:2px;
}

.menu a,
.nav-member-cta{
  color:#4f5550;
  font-size:13px;
}

.nav-icon,
.nav-mobile-menu{
  width:40px;
  height:40px;
  background:rgba(9,11,12,.035);
}

.nav-icon svg,
.nav-mobile-menu svg,
.bottom-nav svg{
  stroke-width:1.55;
}

.premium-hero{
  width:min(1320px,100%);
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);
  gap:clamp(22px,4vw,58px);
  padding:clamp(34px,5vw,70px) max(16px,calc((100vw - 1180px) / 2));
  border-bottom:0;
}

.premium-hero-copy{
  max-width:560px;
}

.premium-hero-copy .eyebrow{
  margin-bottom:18px;
}

.premium-hero-copy h1{
  max-width:560px;
  font-size:clamp(54px,6.2vw,88px);
  line-height:.91;
}

.premium-hero-copy p{
  max-width:500px;
  margin-top:24px;
  color:#666b66;
  font-size:18px;
}

.premium-hero-stage{
  min-height:660px;
  padding:34px;
  background:#ecece7;
  border-radius:10px;
  box-shadow:0 26px 70px rgba(20,24,22,.11);
}

.premium-hero-stage::before{
  inset:20px;
  border-color:rgba(255,255,255,.58);
}

.premium-hero-stage > span{
  background:rgba(255,255,255,.9);
}

.premium-hero-stage > strong{
  max-width:390px;
  font-size:48px;
  line-height:.96;
}

.premium-hero-stage .hero-product-composition{
  inset:26px 8px 160px;
}

.hero-actions .cta,
.hero-actions .product-btn{
  min-height:56px;
  padding-inline:24px;
}

.campaign-strip{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  padding:clamp(38px,6vw,84px) 0;
  border-bottom:1px solid var(--hairline);
}

.campaign-card{
  position:relative;
  min-height:330px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  padding:22px;
  border-radius:10px;
  background:#e9e9e4;
  color:var(--ink);
  overflow:hidden;
  box-shadow:var(--commerce-shadow);
}

.campaign-card::before{
  content:"";
  position:absolute;
  inset:18px 12px 108px;
  background:center/contain no-repeat;
  opacity:.96;
}

.campaign-card-large::before{
  background-image:url("assets/hero-studio/fortvattsmedel-tershine-elevate-snow-foam-skummande-vaxsakert.png");
}

.campaign-card-deal::before{
  background-image:url("assets/hero-studio/snabbforsegling-tershine-amplify-500-ml.png");
}

.campaign-card-kit::before{
  background-image:url("assets/hero-studio/kallavfettning-tershine-dissolve.png");
}

.campaign-card-new::before{
  background-image:url("assets/versen-whey-hero.png");
}

.campaign-card span,
.campaign-card strong,
.campaign-card small{
  position:relative;
  z-index:1;
}

.campaign-card span{
  color:#747a74;
  font-size:12px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.campaign-card strong{
  max-width:260px;
  font-size:25px;
  line-height:1.05;
}

.campaign-card small{
  color:#5f655f;
  font-size:14px;
}

.premium-intro{
  display:none;
}

.premium-category-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.category-tile{
  min-height:270px;
  padding:18px;
  background:#ebebe6;
  box-shadow:none;
}

.category-tile::before{
  height:145px;
  background-color:#f8f8f5;
}

.category-exterior::before,
.category-car::before{
  background:#f8f8f5 url("assets/hero-studio/bilschampo-tershine-purify-s-keramiskt.png") center/contain no-repeat;
}

.category-interior::before{
  background:#f8f8f5 url("assets/product-clean/allrengoring-tershine-apc-interior-cleaner-gront-apple.jpg") center/contain no-repeat;
}

.category-microfiber::before{
  background:#f8f8f5 url("assets/product-clean/tershine-microfiber-cloth-standard-5-pack-40-x-40-cm.jpg") center/contain no-repeat;
}

.category-accessories::before{
  background:#f8f8f5 url("assets/product-clean/tershine-brush-supersoft-2-st.jpg") center/contain no-repeat;
}

.category-tile span{
  font-size:23px;
  line-height:1.02;
}

.category-tile small{
  font-size:13px;
  line-height:1.35;
}

.value-section,
.membership-benefits,
.weekly-drop-section,
.reviews-section{
  width:min(1180px,100%);
  margin:0 auto;
}

.featured-categories,
.product-showcase,
.value-section,
.membership-benefits,
.weekly-drop-section,
.reviews-section,
.home-faq,
.membership-benefit-band,
.membership-value-proof,
.membership-plans,
.membership-compare,
.membership-faq{
  padding-top:clamp(72px,9vw,132px);
  padding-bottom:clamp(72px,9vw,132px);
}

.product-showcase{
  border-bottom:1px solid var(--hairline);
}

.home-trending-grid,
.product-grid{
  gap:42px 18px;
}

.product-image,
.home-trending-image{
  aspect-ratio:1/1.18;
  background:#eeeeea;
  box-shadow:none;
  transition:transform .22s ease, box-shadow .22s ease;
}

.product-card:hover .product-image,
.home-trending-card:hover .home-trending-image{
  transform:translateY(-2px);
  box-shadow:0 18px 44px rgba(15,18,16,.1);
}

.product-image img,
.home-trending-image img{
  padding:30px;
  transition:transform .22s ease;
}

.product-card:hover .product-image img,
.home-trending-card:hover .home-trending-image img{
  transform:scale(1.025);
}

.product-info,
.home-trending-copy{
  padding-top:18px;
  gap:8px;
}

.product-info h3,
.home-trending-copy strong{
  font-size:19px;
  line-height:1.18;
}

.member-price-label{
  display:block;
  margin-top:3px;
  color:#717771;
  font-size:11px;
  font-weight:500;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.product-prices,
.home-trending-prices{
  margin-top:2px;
}

.new,
.product-price,
.home-price,
.home-trending-prices em{
  font-size:23px;
}

.old,
.home-trending-prices del{
  font-size:15px;
}

.product-saving,
.home-trending-saving{
  color:#525852;
  font-size:12px;
  letter-spacing:0;
  text-transform:none;
}

.product-quick-add,
.product-quick-add.visual-only,
.home-add-button{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:4;
  width:42px;
  height:42px;
  min-width:42px;
  min-height:42px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:#111312;
  color:#fff;
  box-shadow:0 10px 24px rgba(15,18,16,.16);
  font-size:24px;
  line-height:1;
}

.product-quick-add.visual-only{
  pointer-events:none;
}

.product-actions{
  display:none;
}

.great-price,
.few-left,
.home-deal-badge{
  padding:7px 10px;
  color:#111312;
}

.home-deal-badge{
  top:12px;
  left:12px;
  right:auto;
}

.product-detail{
  padding-top:8px;
}

.product-large-image{
  min-height:700px;
  background:#eeeee9;
  box-shadow:none;
}

.product-large-image img{
  padding:60px;
}

.product-detail-info{
  gap:20px;
}

.product-short-description{
  max-width:520px;
  color:#5f655f;
}

.detail-saving{
  background:#f0f0eb;
  color:#2f342f;
}

.product-buy-box{
  padding:20px;
  box-shadow:0 18px 42px rgba(15,18,16,.08);
}

.pdp-service-list li{
  font-size:15px;
}

.membership-card-visual{
  min-height:560px;
  padding:34px;
  background:#111312;
}

.membership-card-visual strong{
  font-size:54px;
}

.membership-value-proof{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(24px,5vw,72px);
  border-bottom:1px solid var(--hairline);
}

.savings-example-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.savings-example-grid article{
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  padding:24px;
  border-radius:10px;
  background:#e9e9e4;
}

.savings-example-grid span,
.plan-grid article > span{
  color:#737973;
  font-size:12px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.savings-example-grid strong{
  font-size:36px;
  line-height:1;
}

.membership-compare{
  display:grid;
  gap:0;
  border-bottom:1px solid var(--hairline);
}

.compare-row{
  display:grid;
  grid-template-columns:1fr 110px 110px;
  gap:12px;
  padding:18px 0;
  border-bottom:1px solid var(--hairline);
  align-items:center;
}

.compare-row:last-child{
  border-bottom:0;
}

.compare-row span{
  color:#3b403c;
  font-size:17px;
}

.compare-row strong,
.compare-row em{
  color:var(--ink);
  font-style:normal;
  text-align:right;
}

.cart-summary{
  box-shadow:0 18px 44px rgba(15,18,16,.08);
}

.summary-saving strong{
  font-size:14px;
}

.checkout-trust-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
}

.checkout-trust-row span{
  min-height:38px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f1f2ee;
  color:#616761;
  font-size:12px;
  text-align:center;
}

.account-dashboard-shell .page-hero{
  padding-bottom:28px;
}

.account-card{
  box-shadow:none;
}

.account-card.login-card{
  background:#fff;
}

.site-footer{
  background:#111312;
  color:#fff;
  padding-top:76px;
}

.site-footer-inner{
  display:grid;
  grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(120px,1fr));
  gap:clamp(24px,4vw,58px);
}

.site-footer p{
  color:rgba(255,255,255,.68);
}

.site-footer nav{
  display:contents;
}

.footer-column{
  display:grid;
  align-content:start;
  gap:10px;
}

.footer-column strong{
  margin-bottom:8px;
  color:#fff;
  font-size:13px;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.site-footer nav a,
.footer-column a{
  color:rgba(255,255,255,.68);
  font-size:14px;
  font-weight:300;
}

.footer-payment-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:28px;
}

.footer-payment-row span{
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  color:rgba(255,255,255,.74);
  font-size:12px;
}

@media (max-width:980px){
  .premium-hero{
    width:100%;
    grid-template-columns:1fr;
    padding:0;
  }

  .premium-hero-copy{
    max-width:none;
    padding:40px 24px 54px;
  }

  .premium-hero-stage{
    min-height:560px;
    border-radius:0;
  }

  .campaign-strip,
  .premium-category-grid,
  .membership-value-proof,
  .site-footer-inner{
    grid-template-columns:1fr 1fr;
  }

  .premium-category-grid{
    gap:16px;
  }
}

@media (max-width:640px){
  :root{
    --nav-height:62px;
    --top-strip-height:30px;
  }

  body{
    background:#fbfbf8;
  }

  .nav{
    min-height:var(--nav-height);
    padding:0 14px;
  }

  .logo{
    font-size:16px;
    letter-spacing:.25em;
  }

  .nav-icon,
  .nav-mobile-menu{
    width:42px;
    height:42px;
  }

  .premium-hero{
    display:flex;
    flex-direction:column-reverse;
  }

  .premium-hero-stage{
    min-height:470px;
    padding:22px;
    background:#e9e9e4;
  }

  .premium-hero-stage .hero-product-composition{
    inset:24px -12px 142px;
  }

  .premium-hero-stage > strong{
    max-width:280px;
    font-size:34px;
  }

  .premium-hero-copy{
    padding:34px 20px 46px;
  }

  .premium-hero-copy h1{
    font-size:44px;
    line-height:.96;
  }

  .premium-hero-copy p{
    margin-top:18px;
    font-size:17px;
  }

  .hero-proof-row{
    margin-top:22px;
  }

  .campaign-strip{
    width:100%;
    display:flex;
    gap:14px;
    padding:38px 20px 54px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    border-bottom:1px solid var(--hairline);
  }

  .campaign-card{
    flex:0 0 78vw;
    min-height:310px;
    scroll-snap-align:start;
  }

  .campaign-card strong{
    font-size:24px;
  }

  .featured-categories,
  .product-showcase,
  .value-section,
  .membership-benefits,
  .weekly-drop-section,
  .reviews-section,
  .home-faq,
  .membership-benefit-band,
  .membership-value-proof,
  .membership-plans,
  .membership-compare,
  .membership-faq{
    padding:64px 20px;
  }

  .premium-category-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
  }

  .category-tile{
    min-height:230px;
    padding:14px;
  }

  .category-tile::before{
    height:118px;
  }

  .category-tile span{
    font-size:21px;
  }

  .category-tile small{
    display:block;
    font-size:12px;
  }

  .value-section,
  .membership-benefits,
  .weekly-drop-section,
  .reviews-section,
  .membership-value-proof{
    width:100%;
    grid-template-columns:1fr;
    gap:24px;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 14px;
  }

  .product-image,
  .home-trending-image{
    aspect-ratio:1/1.24;
    border-radius:9px;
  }

  .product-image img,
  .home-trending-image img{
    padding:22px;
  }

  .product-info,
  .home-trending-copy{
    padding-top:13px;
  }

  .product-info h3,
  .home-trending-copy strong{
    font-size:17px;
  }

  .new,
  .product-price,
  .home-price,
  .home-trending-prices em{
    font-size:19px;
  }

  .product-quick-add,
  .product-quick-add.visual-only{
    width:38px;
    height:38px;
    min-width:38px;
    min-height:38px;
    right:9px;
    bottom:9px;
  }

  .product-large-image{
    min-height:520px;
  }

  .product-large-image img{
    padding:38px;
  }

  .product-detail-info{
    padding-bottom:166px;
  }

  .detail-prices .new{
    font-size:30px;
  }

  .product-buy-box{
    grid-template-columns:112px 1fr;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(18px);
  }

  .premium-membership-hero{
    padding-top:36px;
  }

  .membership-card-visual{
    min-height:280px;
  }

  .membership-card-visual strong{
    font-size:36px;
  }

  .savings-example-grid,
  .plan-grid,
  .site-footer-inner{
    grid-template-columns:1fr;
  }

  .savings-example-grid article{
    min-height:190px;
  }

  .compare-row{
    grid-template-columns:1fr 70px 80px;
    gap:8px;
    padding:15px 0;
  }

  .compare-row span{
    font-size:15px;
  }

  .checkout-trust-row{
    grid-template-columns:1fr;
  }

  .site-footer{
    padding:56px 20px 126px;
  }

  .footer-column{
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.1);
  }
}

/* Final visual ecommerce pass: product-led premium retail */
.premium-hero{
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  grid-template-columns:minmax(360px,.72fr) minmax(560px,1.28fr);
  gap:clamp(22px,3vw,48px);
  padding-top:clamp(24px,4vw,54px);
  padding-bottom:clamp(34px,5vw,70px);
}

.premium-hero-copy h1{
  font-size:clamp(58px,6vw,92px);
  line-height:.89;
}

.premium-hero-copy p{
  max-width:430px;
}

.premium-hero-stage{
  min-height:720px;
  padding:0;
  display:block;
  background:#fff;
  box-shadow:0 28px 80px rgba(20,24,22,.1);
}

.premium-hero-stage::before{
  display:none;
}

.premium-hero-stage > span{
  position:absolute;
  left:34px;
  bottom:116px;
  z-index:2;
}

.premium-hero-stage > strong{
  position:absolute;
  left:34px;
  bottom:34px;
  z-index:2;
  max-width:420px;
  font-size:48px;
}

.campaign-strip{
  width:100%;
  max-width:none;
  margin:0;
  display:flex;
  gap:18px;
  padding:clamp(42px,6vw,86px) max(20px,calc((100vw - 1180px) / 2));
  overflow-x:auto;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
}

.campaign-strip::-webkit-scrollbar{
  display:none;
}

.campaign-card{
  flex:0 0 min(360px,31vw);
  min-height:390px;
  scroll-snap-align:start;
  background:#fff;
  box-shadow:0 20px 52px rgba(20,24,22,.08);
}

.campaign-card::before{
  inset:0 0 112px;
  background-size:cover;
}

.campaign-card strong{
  max-width:300px;
  font-size:28px;
}

.featured-categories,
.value-section,
.weekly-drop-section{
  display:none!important;
}

.product-showcase{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  padding-top:clamp(66px,9vw,126px);
}

.product-showcase .section-heading-row h2{
  max-width:760px;
  font-size:clamp(42px,6vw,76px);
}

.home-trending-grid,
.product-grid{
  gap:54px 22px;
}

.home-trending-card:nth-child(1),
.home-trending-card:nth-child(6),
.product-card:nth-child(1),
.product-card:nth-child(7){
  grid-column:span 2;
}

.home-trending-card:nth-child(1) .home-trending-image,
.home-trending-card:nth-child(6) .home-trending-image,
.product-card:nth-child(1) .product-image,
.product-card:nth-child(7) .product-image{
  aspect-ratio:1.55/1;
}

.product-image,
.home-trending-image,
.cart-item-image,
.product-large-image,
.product-thumb,
.liked-product-image{
  background:#fff;
}

.home-trending-image-wrap{
  position:relative;
}

.product-image,
.home-trending-image{
  aspect-ratio:1/1.22;
  box-shadow:none;
  isolation:isolate;
}

.product-image::before,
.home-trending-image::before{
  content:"";
  position:absolute;
  left:14%;
  right:14%;
  bottom:14%;
  height:18%;
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(17,19,18,.16), rgba(17,19,18,0) 70%);
  z-index:0;
}

.product-image::after,
.home-trending-image::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:17%;
  height:16%;
  border-radius:50%;
  background:#f4f2ec;
  z-index:0;
}

.product-image img,
.home-trending-image img{
  position:relative;
  z-index:1;
  padding:34px;
  filter:drop-shadow(0 22px 18px rgba(15,18,16,.12));
}

.product-info h3,
.home-trending-copy strong{
  font-size:20px;
}

.product-news-section{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  padding:clamp(72px,9vw,132px) 0;
  border-bottom:1px solid var(--hairline);
}

.editorial-product-row{
  display:grid;
  grid-template-columns:1.35fr .82fr .82fr;
  gap:18px;
}

.editorial-product-card{
  min-height:520px;
  display:grid;
  align-content:end;
  gap:8px;
  padding:0 22px 24px;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 20px 52px rgba(20,24,22,.08);
}

.editorial-product-card img{
  width:calc(100% + 44px);
  max-width:none;
  height:360px;
  margin:0 -22px auto;
  object-fit:cover;
}

.editorial-product-card.is-wide img{
  height:382px;
}

.editorial-product-card span{
  color:#70766f;
  font-size:12px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.editorial-product-card strong{
  max-width:420px;
  font-size:31px;
  line-height:1.02;
}

.premium-trust-bar{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  padding:0;
  border-block:1px solid var(--hairline);
}

.premium-trust-bar span{
  min-height:94px;
  display:grid;
  place-items:center;
  padding:18px;
  border-right:1px solid var(--hairline);
  color:#424842;
  font-size:15px;
  text-align:center;
}

.premium-trust-bar span:last-child{
  border-right:0;
}

.membership-benefits{
  border-top:0;
}

.product-large-image{
  min-height:760px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#fff;
  box-shadow:0 20px 60px rgba(20,24,22,.08);
}

.product-large-image::before{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:14%;
  height:13%;
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(17,19,18,.15), rgba(17,19,18,0) 70%);
}

.product-large-image img{
  position:relative;
  z-index:1;
  padding:70px;
  filter:drop-shadow(0 32px 24px rgba(15,18,16,.13));
}

.product-detail{
  gap:clamp(34px,6vw,86px);
}

.site-footer{
  padding-top:92px;
}

.footer-logo{
  font-size:20px;
}

.site-footer p{
  max-width:420px;
  font-size:17px;
}

@media (max-width:980px){
  .premium-hero{
    grid-template-columns:1fr;
  }

  .premium-hero-stage{
    min-height:620px;
  }

  .campaign-card{
    flex-basis:min(390px,44vw);
  }

  .editorial-product-row{
    grid-template-columns:1fr 1fr;
  }

  .editorial-product-card.is-wide{
    grid-column:span 2;
  }
}

@media (max-width:640px){
  body{
    padding-bottom:86px;
  }

  .premium-hero{
    flex-direction:column-reverse;
  }

  .premium-hero-stage{
    min-height:520px;
  }

  .premium-hero-stage > span{
    left:20px;
    bottom:98px;
  }

  .premium-hero-stage > strong{
    left:20px;
    right:20px;
    bottom:24px;
    font-size:34px;
  }

  .premium-hero-copy{
    padding:32px 20px 44px;
  }

  .premium-hero-copy h1{
    font-size:46px;
  }

  .premium-hero-copy p{
    font-size:17px;
  }

  .campaign-strip{
    padding:34px 20px 58px;
  }

  .campaign-card{
    flex:0 0 82vw;
    min-height:360px;
  }

  .campaign-card strong{
    font-size:26px;
  }

  .product-showcase,
  .product-news-section{
    width:100%;
    padding:62px 20px;
  }

  .product-showcase .section-heading-row h2{
    font-size:42px;
  }

  .home-trending-grid,
  .product-grid{
    gap:38px 16px;
  }

  .home-trending-card:nth-child(1),
  .home-trending-card:nth-child(6),
  .product-card:nth-child(1),
  .product-card:nth-child(7){
    grid-column:span 2;
  }

  .home-trending-card:nth-child(1) .home-trending-image,
  .home-trending-card:nth-child(6) .home-trending-image,
  .product-card:nth-child(1) .product-image,
  .product-card:nth-child(7) .product-image{
    aspect-ratio:1.35/1;
  }

  .product-image img,
  .home-trending-image img{
    padding:24px;
  }

  .editorial-product-row{
    display:flex;
    gap:16px;
    margin:0 -20px;
    padding:0 20px 6px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }

  .editorial-product-card,
  .editorial-product-card.is-wide{
    flex:0 0 82vw;
    min-height:430px;
    scroll-snap-align:start;
  }

  .editorial-product-card img,
  .editorial-product-card.is-wide img{
    height:300px;
  }

  .editorial-product-card strong{
    font-size:27px;
  }

  .premium-trust-bar{
    width:100%;
    grid-template-columns:1fr 1fr;
    padding:0 20px;
    border:0;
  }

  .premium-trust-bar span{
    min-height:76px;
    border:1px solid var(--hairline);
    border-width:1px 0 0;
  }

  .premium-trust-bar span:nth-child(odd){
    border-right:1px solid var(--hairline);
  }

  .product-large-image{
    min-height:560px;
  }

  .product-large-image img{
    padding:42px;
  }

  .site-footer{
    padding-top:68px;
  }
}

/* Inline product photography compositions */
.campaign-card::before{
  display:none;
}

.campaign-visual{
  position:absolute!important;
  inset:0 0 112px!important;
  z-index:0!important;
  display:block!important;
  padding:0!important;
  background:
    radial-gradient(ellipse at 50% 86%, rgba(17,19,18,.13), rgba(17,19,18,0) 45%),
    linear-gradient(145deg,#fff 0%,#f5f4ef 58%,#ebe9e2 100%);
  overflow:hidden;
}

.campaign-visual::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:10%;
  height:15%;
  border-radius:50%;
  background:#fff;
  opacity:.9;
}

.campaign-visual img{
  position:absolute;
  z-index:1;
  width:52%;
  height:78%;
  object-fit:contain;
  filter:drop-shadow(0 24px 18px rgba(15,18,16,.14));
}

.campaign-visual img:nth-child(1){
  left:10%;
  bottom:8%;
  transform:rotate(-7deg);
}

.campaign-visual img:nth-child(2){
  left:34%;
  bottom:8%;
  transform:rotate(1deg);
}

.campaign-visual img:nth-child(3){
  right:8%;
  bottom:8%;
  transform:rotate(7deg);
}

.campaign-card-deal .campaign-visual img,
.campaign-card-new .campaign-visual img{
  left:23%;
  width:56%;
  height:82%;
  transform:none;
}

.campaign-card-popular .campaign-visual img:nth-child(1){
  left:18%;
  width:42%;
}

.campaign-card-popular .campaign-visual img:nth-child(2){
  left:42%;
  width:44%;
}

.editorial-hero-composition{
  position:absolute;
  inset:6% 2% 20%;
  z-index:1;
  width:auto;
}

.editorial-hero-composition::before{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:-6%;
  height:18%;
  border-radius:50%;
  background:#fff;
  opacity:.92;
}

.premium-hero-stage{
  background:
    radial-gradient(ellipse at 50% 84%, rgba(17,19,18,.12), rgba(17,19,18,0) 38%),
    linear-gradient(145deg,#fff 0%,#f6f5f0 55%,#ebe9e2 100%);
}

.premium-hero-stage > span,
.premium-hero-stage > strong{
  z-index:3;
}

.editorial-product-card{
  position:relative;
}

.editorial-visual{
  position:relative;
  width:calc(100% + 44px);
  height:360px;
  margin:0 -22px auto;
  display:block;
  background:
    radial-gradient(ellipse at 50% 84%, rgba(17,19,18,.12), rgba(17,19,18,0) 42%),
    linear-gradient(145deg,#fff 0%,#f5f4ef 60%,#ebe9e2 100%);
  overflow:hidden;
}

.editorial-product-card.is-wide .editorial-visual{
  height:382px;
}

.editorial-visual::after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:11%;
  height:16%;
  border-radius:50%;
  background:#fff;
  opacity:.92;
}

.editorial-product-card .editorial-visual img{
  position:absolute;
  z-index:1;
  width:auto;
  max-width:none;
  height:auto;
  margin:0;
  object-fit:contain;
  filter:drop-shadow(0 28px 20px rgba(15,18,16,.14));
}

.kit-visual img:nth-child(1){
  left:36%;
  bottom:8%;
  width:32%;
  transform:rotate(1deg);
}

.kit-visual img:nth-child(2){
  left:16%;
  bottom:8%;
  width:27%;
  transform:rotate(-8deg);
}

.kit-visual img:nth-child(3){
  right:16%;
  bottom:8%;
  width:28%;
  transform:rotate(7deg);
}

.single-visual img{
  left:26%;
  bottom:7%;
  width:48%;
}

.performance-visual img{
  left:17%;
  bottom:5%;
  width:66%;
}

@media (max-width:640px){
  .editorial-hero-composition{
    inset:5% -6% 23%;
  }

  .editorial-product-card .editorial-visual,
  .editorial-product-card.is-wide .editorial-visual{
    height:300px;
  }
}

/* Final mobile campaign framing */
.editorial-hero-composition::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  bottom:0;
  z-index:0;
  height:84%;
  opacity:.78;
  filter:drop-shadow(0 26px 20px rgba(15,18,16,.13));
  background:
    linear-gradient(180deg,#121313 0 15%,#0f1111 15% 74%,#1e6db0 74% 100%) 48% 48%/23% 78% no-repeat,
    linear-gradient(180deg,#141514 0 18%,#101111 18% 78%,#2f83c7 78% 100%) 23% 62%/17% 60% no-repeat,
    linear-gradient(180deg,#161716 0 18%,#111212 18% 76%,#dfe4df 76% 100%) 73% 62%/18% 64% no-repeat,
    linear-gradient(180deg,#151615 0 20%,#101111 20% 100%) 34% 26%/16% 45% no-repeat,
    linear-gradient(180deg,#171817 0 20%,#101111 20% 100%) 64% 25%/15% 43% no-repeat;
  border-radius:30px;
  pointer-events:none;
}

.editorial-hero-composition .hero-product{
  z-index:2;
}

@media (max-width:640px){
  .premium-hero{
    position:relative;
    display:grid;
    min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
    overflow:hidden;
  }

  .premium-hero-stage,
  .premium-hero-copy{
    grid-area:1 / 1;
  }

  .premium-hero-stage{
    min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
    border-radius:0;
    box-shadow:none;
  }

  .premium-hero-stage > span,
  .premium-hero-stage > strong{
    display:none;
  }

  .premium-hero-copy{
    position:relative;
    z-index:4;
    align-self:end;
    padding:0 20px 104px;
    background:linear-gradient(180deg,rgba(251,251,248,0) 0%,rgba(251,251,248,.92) 24%,#fbfbf8 100%);
  }

  .premium-hero-copy .eyebrow{
    margin-bottom:14px;
  }

  .premium-hero-copy h1{
    max-width:350px;
    font-size:48px;
    line-height:.94;
  }

  .premium-hero-copy p{
    max-width:330px;
    margin-top:18px;
    color:#4d524e;
  }

  .hero-actions{
    margin-top:28px;
  }

  .hero-proof-row{
    display:none;
  }

  .editorial-hero-composition{
    inset:5% -4% 40%;
  }

  .editorial-hero-composition::after{
    left:6%;
    right:6%;
    height:92%;
  }
}

.premium-hero-copy h1{
  max-width:620px;
  font-size:clamp(54px,5.2vw,78px);
}

@media (max-width:640px){
  .premium-hero-copy h1{
    max-width:350px;
    font-size:48px;
  }
}

/* Luxury UX pass: storefront navigation and editorial commerce flow */
body{
  padding-bottom:0;
}

.bottom-nav{
  display:none!important;
}

.nav{
  min-height:66px;
  padding-block:10px;
  border-bottom:1px solid rgba(9,11,12,.07);
  background:rgba(251,251,248,.82);
  box-shadow:0 1px 0 rgba(255,255,255,.62) inset;
}

.nav-mobile-menu,
.nav-icon{
  border-radius:50%;
  border:1px solid rgba(9,11,12,.055);
  background:rgba(255,255,255,.72);
  box-shadow:0 10px 28px rgba(16,18,17,.06);
}

.nav-mobile-menu[aria-expanded="true"] svg{
  transform:rotate(90deg);
}

.menu{
  gap:18px;
}

.menu-link-stack{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
}

.menu-panel-copy,
.menu-feature,
.menu-service-row{
  display:none;
}

.menu a{
  border:0;
  border-radius:999px;
  background:transparent;
  color:#4f5550;
  font-weight:500;
}

.menu a:hover,
.menu a.active{
  background:rgba(9,11,12,.05);
  color:#0d0f0e;
}

.premium-home{
  width:100%;
}

.mobile-hero-visual{
  display:none;
}

.campaign-strip{
  padding-top:clamp(72px,8vw,124px);
  padding-bottom:clamp(84px,9vw,132px);
}

.product-showcase{
  padding-top:clamp(88px,9vw,144px);
}

.product-news-section,
.category-editorial,
.membership-benefits,
.premium-trust-bar{
  margin-top:0;
}

.section-heading-row{
  margin-bottom:clamp(28px,4vw,54px);
}

.section-heading-row h2,
.category-editorial h2,
.membership-benefit-copy h2{
  letter-spacing:0;
}

.category-editorial{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  padding:clamp(86px,9vw,148px) 0;
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:clamp(30px,6vw,86px);
  align-items:start;
  border-top:1px solid rgba(9,11,12,.08);
}

.category-editorial-copy{
  position:sticky;
  top:calc(var(--top-strip-height) + var(--nav-height) + 34px);
}

.category-editorial-copy h2{
  max-width:420px;
  margin-top:14px;
  font-size:clamp(44px,5vw,76px);
  line-height:.95;
  font-weight:500;
}

.category-editorial-copy p{
  max-width:360px;
  margin-top:22px;
  color:#676d68;
  font-size:18px;
  line-height:1.55;
}

.category-editorial-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.category-editorial-card{
  position:relative;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:10px;
  padding:24px;
  overflow:hidden;
  border-radius:10px;
  background:#fff;
  box-shadow:0 24px 70px rgba(18,22,20,.08);
}

.category-editorial-card.is-large{
  grid-row:span 2;
  min-height:640px;
}

.category-editorial-card small,
.category-editorial-card > span:not(.category-studio){
  position:relative;
  z-index:2;
  color:#767c77;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.category-editorial-card strong{
  position:relative;
  z-index:2;
  max-width:320px;
  color:#111312;
  font-size:clamp(26px,3vw,42px);
  line-height:.98;
  font-weight:500;
}

.category-editorial-card.is-dark{
  min-height:300px;
  background:#101211;
  color:#fff;
  box-shadow:none;
}

.category-editorial-card.is-dark::before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
}

.category-editorial-card.is-dark strong{
  color:#fff;
}

.category-studio{
  position:absolute;
  inset:0 0 110px;
  background:
    radial-gradient(ellipse at 50% 82%, rgba(17,19,18,.12), rgba(17,19,18,0) 38%),
    linear-gradient(145deg,#fff 0%,#f6f5ef 62%,#ece9df 100%);
  overflow:hidden;
}

.category-studio::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:9%;
  height:16%;
  border-radius:50%;
  background:rgba(255,255,255,.95);
}

.category-studio img{
  position:absolute;
  z-index:1;
  object-fit:contain;
  filter:drop-shadow(0 26px 18px rgba(15,18,16,.14));
}

.category-studio-care img:nth-child(1){
  left:20%;
  bottom:8%;
  width:42%;
}

.category-studio-care img:nth-child(2){
  right:11%;
  bottom:10%;
  width:38%;
  transform:rotate(5deg);
}

.category-studio-detail img{
  left:23%;
  bottom:6%;
  width:56%;
}

.category-studio-performance img{
  left:10%;
  bottom:2%;
  width:80%;
}

.home-trending-image,
.product-image{
  background:
    radial-gradient(ellipse at 50% 84%, rgba(17,19,18,.12), rgba(17,19,18,0) 38%),
    linear-gradient(145deg,#fff 0%,#f8f7f2 64%,#efede5 100%);
}

.home-trending-card,
.product-card{
  border-radius:0;
}

.home-trending-info,
.product-card-body{
  padding-top:18px;
}

.home-trending-info h3,
.product-card h3{
  font-size:17px;
  line-height:1.18;
}

.site-footer{
  margin-top:0;
  padding:clamp(92px,10vw,156px) max(20px,calc((100vw - 1180px) / 2)) 54px;
  background:#0d0f0e;
  color:#fff;
}

.site-footer-inner{
  width:100%;
  grid-template-columns:minmax(280px,1.35fr) repeat(4,minmax(130px,.6fr));
  gap:clamp(32px,5vw,82px);
}

.footer-logo{
  display:inline-block;
  margin-bottom:26px;
  color:#fff;
  font-size:clamp(32px,5vw,72px);
  line-height:.9;
  letter-spacing:.22em;
}

.site-footer p{
  max-width:620px;
  color:rgba(255,255,255,.72);
  font-size:clamp(20px,2.5vw,34px);
  line-height:1.12;
}

.footer-column strong{
  color:rgba(255,255,255,.42);
  font-size:12px;
  letter-spacing:.14em;
}

.site-footer nav a,
.footer-column a{
  color:rgba(255,255,255,.78);
}

.site-footer nav a:hover,
.footer-column a:hover{
  color:#fff;
}

@media (max-width:980px){
  .nav{
    min-height:var(--nav-height);
    padding:0 18px;
  }

  .nav-mobile-menu{
    display:grid;
  }

  .nav-actions .nav-account,
  .nav-actions .nav-wishlist,
  .nav-member-cta{
    display:none!important;
  }

  .logo{
    justify-self:center;
    font-size:17px;
    letter-spacing:.28em;
  }

  body.mobile-menu-open{
    overflow:hidden;
  }

  body.mobile-menu-open::before{
    content:"";
    position:fixed;
    top:calc(var(--top-strip-height) + var(--nav-height));
    left:0;
    right:0;
    bottom:0;
    z-index:280;
    background:#fbfbf8;
  }

  .menu{
    position:fixed!important;
    top:calc(var(--top-strip-height) + var(--nav-height))!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:300;
    display:flex!important;
    flex-direction:column;
    justify-content:flex-start!important;
    align-items:stretch!important;
    gap:0;
    padding:30px 20px calc(26px + env(safe-area-inset-bottom));
    overflow-y:auto;
    border:0;
    background:#fbfbf8!important;
    box-shadow:none;
    transform:translateY(-18px);
    opacity:0;
    pointer-events:none;
    transition:opacity .32s ease, transform .32s ease;
  }

  .nav > .menu{
    display:none!important;
  }

  body.mobile-menu-open .menu{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    background:#fbfbf8!important;
  }

  body.mobile-menu-open .nav{
    z-index:320;
  }

  .luxury-menu-overlay{
    position:fixed;
    top:calc(var(--top-strip-height) + var(--nav-height));
    left:0;
    right:0;
    bottom:0;
    z-index:310;
    display:none;
    flex-direction:column;
    padding:30px 20px calc(24px + env(safe-area-inset-bottom));
    overflow-y:auto;
    background:#fbfbf8;
    opacity:0;
    pointer-events:none;
    transform:translateY(-18px);
    transition:opacity .32s ease, transform .32s ease;
  }

  body.mobile-menu-open .luxury-menu-overlay{
    display:flex;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
  }

  .luxury-menu-intro span{
    display:block;
    color:#8a908a;
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
  }

  .luxury-menu-intro strong{
    display:block;
    max-width:310px;
    margin-top:12px;
    color:#111312;
    font-size:34px;
    line-height:.98;
    font-weight:500;
  }

  .luxury-menu-links{
    display:grid;
    margin-top:28px;
  }

  .luxury-menu-links a{
    position:relative;
    min-height:62px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid rgba(9,11,12,.08);
    color:#101211;
    font-size:clamp(34px,12vw,58px);
    line-height:1;
    font-weight:500;
  }

  .luxury-menu-links a::after{
    content:"";
    width:18px;
    height:18px;
    border-top:1.4px solid currentColor;
    border-right:1.4px solid currentColor;
    opacity:.34;
    transform:rotate(45deg);
  }

  .luxury-menu-links a.active{
    color:#6f756f;
  }

  .luxury-menu-feature{
    position:relative;
    min-height:250px;
    margin-top:34px;
    padding:20px;
    overflow:hidden;
    border-radius:10px;
    background:
      radial-gradient(ellipse at 50% 82%, rgba(17,19,18,.13), rgba(17,19,18,0) 40%),
      linear-gradient(145deg,#fff 0%,#f4f3ed 62%,#ebe8df 100%);
    color:#111312;
  }

  .luxury-menu-feature-visual{
    position:absolute;
    inset:0;
  }

  .luxury-menu-feature-visual::after{
    content:"";
    position:absolute;
    left:24%;
    right:22%;
    bottom:13%;
    height:14%;
    border-radius:50%;
    background:#fff;
  }

  .luxury-menu-feature-visual img{
    position:absolute;
    z-index:1;
    object-fit:contain;
    filter:drop-shadow(0 22px 16px rgba(15,18,16,.13));
  }

  .luxury-menu-feature-visual img:nth-child(1){
    left:34%;
    bottom:11%;
    width:32%;
  }

  .luxury-menu-feature-visual img:nth-child(2){
    left:13%;
    bottom:11%;
    width:30%;
    transform:rotate(-8deg);
  }

  .luxury-menu-feature small,
  .luxury-menu-feature strong{
    position:relative;
    z-index:2;
    display:block;
  }

  .luxury-menu-feature small{
    color:#777d78;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
  }

  .luxury-menu-feature strong{
    max-width:210px;
    margin-top:8px;
    font-size:28px;
    line-height:1;
    font-weight:500;
  }

  .menu-panel-copy,
  .menu-feature,
  .menu-service-row{
    display:block;
  }

  .menu-panel-copy{
    padding:8px 0 34px;
  }

  .menu-panel-copy span{
    display:block;
    color:#8a908a;
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
  }

  .menu-panel-copy strong{
    display:block;
    max-width:300px;
    margin-top:12px;
    color:#111312;
    font-size:34px;
    line-height:.98;
    font-weight:500;
  }

  .menu-link-stack{
    position:relative;
    z-index:4;
    display:grid!important;
    align-content:start;
    gap:0;
    flex:0 0 auto;
  }

  .menu a{
    min-height:0;
    padding:0;
    border-radius:0;
    background:transparent;
  }

  .menu-link-stack a{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:62px;
    border-bottom:1px solid rgba(9,11,12,.08);
    color:#101211!important;
    font-size:clamp(34px,12vw,58px);
    line-height:1;
    font-weight:500;
    letter-spacing:-.01em;
    opacity:1!important;
    visibility:visible!important;
  }

  .menu-link-stack a::after{
    content:"";
    width:18px;
    height:18px;
    border-top:1.4px solid currentColor;
    border-right:1.4px solid currentColor;
    opacity:.36;
    transform:rotate(45deg);
  }

  .menu-link-stack a.active{
    color:#6d736e;
  }

  .menu-feature{
    position:relative;
    z-index:2;
    min-height:260px;
    margin-top:38px;
    padding:20px;
    overflow:hidden;
    border-radius:10px;
    background:
      radial-gradient(ellipse at 50% 82%, rgba(17,19,18,.13), rgba(17,19,18,0) 40%),
      linear-gradient(145deg,#fff 0%,#f4f3ed 62%,#ebe8df 100%);
    color:#111312;
  }

  .menu-feature-visual{
    position:absolute;
    inset:0;
  }

  .menu-feature-visual::after{
    content:"";
    position:absolute;
    left:24%;
    right:22%;
    bottom:13%;
    height:14%;
    border-radius:50%;
    background:#fff;
  }

  .menu-feature-visual img{
    position:absolute;
    z-index:1;
    object-fit:contain;
    filter:drop-shadow(0 22px 16px rgba(15,18,16,.13));
  }

  .menu-feature-visual img:nth-child(1){
    left:34%;
    bottom:11%;
    width:32%;
  }

  .menu-feature-visual img:nth-child(2){
    left:13%;
    bottom:11%;
    width:30%;
    transform:rotate(-8deg);
  }

  .menu-feature small,
  .menu-feature strong{
    position:relative;
    z-index:2;
    display:block;
  }

  .menu-feature small{
    color:#777d78;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
  }

  .menu-feature strong{
    max-width:210px;
    margin-top:8px;
    font-size:28px;
    line-height:1;
    font-weight:500;
  }

  .menu-service-row{
    position:relative;
    z-index:2;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    padding-top:22px;
  }

  .menu-service-row span{
    padding:10px 12px;
    border:1px solid rgba(9,11,12,.08);
    border-radius:999px;
    color:#696f6a;
    font-size:12px;
  }

  .category-editorial{
    grid-template-columns:1fr;
  }

  .category-editorial-copy{
    position:static;
  }

  .site-footer-inner{
    grid-template-columns:1fr 1fr;
  }

  .site-footer-brand{
    grid-column:1 / -1;
  }
}

@media (max-width:640px){
  :root{
    --nav-height:62px;
    --top-strip-height:28px;
  }

  body{
    padding-bottom:0!important;
  }

  .top-strip{
    gap:22px;
    font-size:11px;
  }

  .top-strip span:nth-child(3),
  .top-strip a{
    display:none;
  }

  .nav{
    padding-inline:14px;
    background:rgba(251,251,248,.9);
    backdrop-filter:blur(18px);
  }

  .nav-icon,
  .nav-mobile-menu{
    width:42px;
    height:42px;
    background:rgba(255,255,255,.74);
  }

  .nav-mobile-menu[aria-label="Meny"]{
    position:relative;
  }

  .nav-mobile-menu[aria-label="Meny"][aria-expanded="true"] svg{
    opacity:0;
  }

  .nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::before,
  .nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::after{
    content:"";
    position:absolute;
    width:17px;
    height:1.5px;
    border:0;
    border-radius:999px;
    background:currentColor;
    box-shadow:none;
  }

  .nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::before{
    transform:rotate(45deg);
  }

  .nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::after{
    transform:rotate(-45deg);
  }

  .nav-actions{
    gap:0;
  }

  .premium-hero{
    display:flex;
    flex-direction:column;
    min-height:auto;
    overflow:visible;
    background:#fbfbf8;
  }

  .premium-hero::before{
    display:none!important;
  }

  .premium-hero-copy{
    order:2;
    align-self:auto;
    margin-top:-86px;
    padding:0 20px 58px;
    background:linear-gradient(180deg,rgba(251,251,248,0) 0%,#fbfbf8 34%,#fbfbf8 100%);
  }

  .premium-hero-stage{
    order:1;
    position:relative!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    min-height:560px;
    height:560px;
    background:
      url("assets/hero-studio/dackglans-tershine-refined-500-ml.png") 62% 16%/29% auto no-repeat,
      url("assets/hero-studio/snabbforsegling-tershine-amplify-500-ml.png") 22% 54%/28% auto no-repeat,
      url("assets/hero-studio/bilschampo-tershine-purify-s-keramiskt.png") 52% 68%/32% auto no-repeat,
      url("assets/hero-studio/fortvattsmedel-tershine-elevate-snow-foam-skummande-vaxsakert.png") 94% 72%/31% auto no-repeat,
      radial-gradient(ellipse at 50% 69%, rgba(17,19,18,.14), rgba(17,19,18,0) 30%),
      linear-gradient(180deg,#fbfbf8 0%,#fbfbf8 100%)!important;
    display:none!important;
  }

  main .premium-hero .mobile-hero-visual{
    position:relative;
    order:1;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:560px;
    overflow:hidden;
    background:
      radial-gradient(ellipse at 50% 72%, rgba(17,19,18,.13), rgba(17,19,18,0) 34%),
      linear-gradient(180deg,#fbfbf8 0%,#fbfbf8 100%);
  }

  .mobile-hero-visual::after{
    content:"";
    position:absolute;
    left:20%;
    right:18%;
    bottom:19%;
    height:12%;
    border-radius:50%;
    background:rgba(255,255,255,.96);
  }

  .mobile-hero-product{
    position:absolute;
    z-index:1;
    display:block;
    object-fit:contain;
    filter:drop-shadow(0 24px 18px rgba(15,18,16,.13));
  }

  .mobile-hero-product-main{
    left:35%;
    bottom:10%;
    width:34%;
  }

  .mobile-hero-product-left{
    left:7%;
    bottom:24%;
    width:29%;
    transform:rotate(-7deg);
  }

  .mobile-hero-product-back{
    left:52%;
    top:12%;
    width:29%;
    transform:rotate(8deg);
  }

  .mobile-hero-product-right{
    right:-6%;
    bottom:18%;
    width:34%;
    transform:rotate(5deg);
  }

  .mobile-hero-product-pear{
    right:10%;
    bottom:9%;
    width:34%;
    z-index:3;
    transform:rotate(3deg);
  }

  .premium-hero-stage,
  .premium-hero-copy{
    grid-area:auto;
  }

  .premium-hero-stage .editorial-hero-composition{
    inset:5% -4% 17%!important;
    display:block;
    opacity:1;
  }

  .campaign-strip{
    padding-top:66px;
  }

  .campaign-card{
    flex-basis:84vw;
    min-height:410px;
  }

  .product-showcase,
  .product-news-section,
  .category-editorial,
  .membership-benefits{
    padding-top:76px;
    padding-bottom:78px;
  }

  .product-showcase .section-heading-row h2,
  .section-heading-row h2,
  .category-editorial-copy h2,
  .membership-benefit-copy h2{
    font-size:42px;
    line-height:.98;
  }

  .category-editorial{
    width:100%;
    padding-left:20px;
    padding-right:20px;
    gap:32px;
  }

  .category-editorial-copy p{
    font-size:17px;
  }

  .category-editorial-grid{
    display:flex;
    gap:16px;
    margin:0 -20px;
    padding:0 20px 4px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }

  .category-editorial-card,
  .category-editorial-card.is-large{
    flex:0 0 82vw;
    min-height:470px;
    scroll-snap-align:start;
  }

  .category-editorial-card.is-dark{
    min-height:470px;
  }

  .category-studio{
    inset:0 0 118px;
  }

  .membership-benefits{
    width:100%;
    padding-left:20px;
    padding-right:20px;
  }

  .premium-trust-bar{
    padding-top:28px;
    padding-bottom:54px;
  }

  .site-footer{
    padding:76px 20px 34px;
  }

  .site-footer-inner{
    grid-template-columns:1fr;
    gap:34px;
  }

  .footer-logo{
    font-size:42px;
  }

  .site-footer p{
    font-size:26px;
  }

  .menu-panel-copy{
    padding-bottom:18px;
  }

  .menu-panel-copy strong{
    display:none;
  }

  .menu-link-stack{
    position:absolute;
    left:20px;
    right:20px;
    top:84px;
  }

  .menu-link-stack a{
    min-height:58px;
    font-size:38px;
  }

  .menu-feature{
    position:absolute;
    left:20px;
    right:20px;
    bottom:calc(22px + env(safe-area-inset-bottom));
    min-height:210px;
    margin-top:0;
  }

  .menu-service-row{
    display:none;
  }
}

@media (min-width:981px){
  .luxury-menu-overlay{
    display:none;
  }
}

@media (min-width:981px){
  .mobile-hero-visual{
    display:none!important;
  }
}

/* Versen reference rebuild */
:root{
  --bg:#f7f4ef;
  --surface:#fffdfa;
  --surface-2:#f3f0ea;
  --surface-3:#ebe7de;
  --ink:#080909;
  --muted:#6f6d67;
  --soft:#a5a199;
  --line:rgba(8,9,9,.09);
  --accent:#080909;
  --accent-ink:#fff;
  --deep:#080909;
  --shadow:0 22px 70px rgba(27,24,18,.08);
  --soft-shadow:0 14px 38px rgba(27,24,18,.06);
  --radius:18px;
  --nav-height:64px;
  --top-strip-height:0px;
}

html,
html[data-theme="dark"]{
  background:var(--bg);
  color-scheme:light;
}

body{
  padding-top:var(--nav-height)!important;
  padding-bottom:0!important;
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:300;
}

.top-strip,
.bottom-nav,
.nav-member-cta,
.nav-actions .nav-account,
.nav-actions .nav-wishlist,
.page-home .membership-benefits,
.campaign-card-deal{
  display:none!important;
}

.nav{
  top:0!important;
  min-height:var(--nav-height);
  grid-template-columns:44px 1fr 44px;
  padding:0 clamp(16px,4vw,28px);
  border:0;
  border-bottom:1px solid rgba(8,9,9,.055);
  background:rgba(255,253,250,.84)!important;
  box-shadow:none;
  backdrop-filter:blur(20px);
}

.nav-mobile-menu{
  display:grid!important;
  grid-column:1;
}

.logo{
  grid-column:2;
  justify-self:center;
  color:var(--ink);
  font-size:13px!important;
  font-weight:700;
  letter-spacing:.36em!important;
  transform:translateX(.18em);
}

.nav-actions{
  grid-column:3;
  justify-self:end;
  gap:0;
}

.nav-icon,
.nav-mobile-menu{
  width:40px!important;
  height:40px!important;
  border:0!important;
  border-radius:50%;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ink);
}

.nav-cart [data-cart-count]{
  top:3px;
  right:3px;
  min-width:17px;
  min-height:17px;
  background:var(--ink);
  color:#fff;
  font-size:10px;
}

.nav-cart [data-cart-count]:empty{
  display:none;
}

.nav > .menu{
  display:none!important;
}

.nav-mobile-menu[aria-label="Meny"] svg,
.nav-mobile-menu[aria-label="Meny"]:empty::before{
  width:17px;
}

.nav-mobile-menu[aria-label="Meny"][aria-expanded="true"] svg{
  opacity:0;
}

.nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::before,
.nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::after{
  content:"";
  position:absolute;
  width:18px;
  height:1.5px;
  border:0;
  border-radius:999px;
  background:currentColor;
  box-shadow:none;
}

.nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::before{
  transform:rotate(45deg);
}

.nav-mobile-menu[aria-label="Meny"][aria-expanded="true"]::after{
  transform:rotate(-45deg);
}

body.mobile-menu-open{
  overflow:hidden;
}

.luxury-menu-overlay{
  position:fixed;
  inset:var(--nav-height) 0 0;
  z-index:310;
  display:flex!important;
  flex-direction:column;
  padding:0 clamp(24px,5.8vw,52px) calc(28px + env(safe-area-inset-bottom));
  overflow-y:auto;
  background:
    radial-gradient(circle at 22% 24%,rgba(255,255,255,.035),rgba(255,255,255,0) 23rem),
    linear-gradient(120deg,rgba(255,255,255,.025),rgba(255,255,255,0) 42%),
    #070808;
  color:#fff;
  opacity:0;
  pointer-events:none;
  transform:translateY(-8px);
  transition:opacity .3s cubic-bezier(.2,.8,.2,1), transform .3s cubic-bezier(.2,.8,.2,1);
}

.luxury-menu-overlay::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:3px 3px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.08));
}

body.mobile-menu-open .luxury-menu-overlay{
  opacity:1;
  pointer-events:auto;
  transform:none;
}

body.mobile-menu-open .nav{
  z-index:330;
  background:#070808!important;
  color:#fff;
  border-color:rgba(255,255,255,.055);
  box-shadow:none;
}

body.mobile-menu-open .logo,
body.mobile-menu-open .nav-icon,
body.mobile-menu-open .nav-mobile-menu{
  color:#fff;
}

.luxury-menu-shell{
  width:min(760px,100%);
  min-height:100%;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  padding-top:clamp(26px,5.5vh,54px);
}

.luxury-menu-links{
  display:grid;
  border-top:1px solid rgba(255,255,255,.105);
}

.luxury-menu-links a{
  min-height:clamp(54px,6.6vh,68px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.105);
  color:rgba(255,255,255,.95);
  font-size:clamp(21px,5.7vw,28px);
  font-weight:300;
  line-height:1.18;
  letter-spacing:0;
  text-shadow:0 1px 18px rgba(0,0,0,.3);
}

.luxury-menu-links a span[data-cart-count]{
  min-width:18px;
  min-height:18px;
  margin-left:10px;
  display:inline-grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:10px;
  vertical-align:middle;
}

.luxury-menu-links a span[data-cart-count]:empty{
  display:none;
}

.luxury-menu-links a::after{
  content:"";
  width:11px;
  height:11px;
  margin-right:3px;
  border-top:1.2px solid currentColor;
  border-right:1.2px solid currentColor;
  opacity:.68;
  transform:rotate(45deg);
}

.luxury-menu-links a.active{
  color:rgba(255,255,255,.64);
}

.luxury-menu-footer{
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.105);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.luxury-menu-utility{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:11px;
  min-height:34px;
  color:rgba(255,255,255,.68);
  font-size:clamp(15px,4vw,19px);
  font-weight:300;
  line-height:1.1;
}

.luxury-menu-utility-icon,
.luxury-menu-utility::before{
  width:29px;
  height:29px;
  flex:0 0 29px;
  border:1.4px solid currentColor;
  border-radius:50%;
  opacity:.88;
}

.luxury-menu-utility-icon{
  padding:5px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luxury-menu-support::before{
  content:"?";
  display:grid;
  place-items:center;
  background:none;
  font-size:18px;
  line-height:1;
}

h1,
h2,
.page-hero h1,
.membership-hero h1,
.product-detail h1,
.drops-hero h1,
.section-heading-row h2,
.category-editorial-copy h2{
  font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  font-weight:500!important;
  letter-spacing:0!important;
}

p{
  color:var(--muted);
  font-size:15px;
  line-height:1.48;
}

.eyebrow{
  margin-bottom:10px;
  color:var(--muted);
  font-size:10px;
  font-weight:500;
  letter-spacing:.09em;
}

.cta,
.product-btn,
.account-switch-button,
.remove-btn,
.filter,
.sort-pill,
.variant-option{
  min-height:42px;
  padding:0 18px;
  border:1px solid var(--ink);
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-size:12px;
  font-weight:500;
  box-shadow:none!important;
}

.product-btn.secondary,
.secondary,
.remove-btn,
.account-switch-button,
.filter,
.sort-pill,
.variant-option{
  border-color:var(--line);
  background:#fff;
  color:var(--ink);
}

.filter.active,
.sort-pill.active,
.variant-option.active{
  border-color:var(--ink);
  background:var(--ink);
  color:#fff;
}

main,
.home-shell,
.cart-screen,
.liked-shell,
.drops-screen,
.order-screen,
.account-dashboard-shell,
.product-detail-page,
.membership-page{
  width:min(1180px,100% - 32px);
  margin:0 auto;
}

.premium-home{
  width:100%;
}

.premium-hero{
  width:min(390px,100%);
  min-height:auto;
  margin:14px auto 0;
  display:flex;
  flex-direction:column;
  gap:0;
  padding:0;
  border:0;
  border-radius:18px;
  background:#fffdfa;
  box-shadow:var(--shadow);
  overflow:hidden;
}

.premium-hero-copy{
  order:1!important;
  padding:38px 24px 0!important;
  background:transparent!important;
}

.premium-hero-copy h1{
  max-width:260px;
  margin:0;
  color:var(--ink);
  font-size:42px!important;
  line-height:.94!important;
}

.premium-hero-copy p{
  max-width:245px;
  margin:12px 0 16px;
  color:#686661;
  font-size:13px;
  line-height:1.45;
}

.hero-actions{
  margin:0;
}

.hero-actions .cta{
  min-height:38px;
  padding:0 18px;
  font-size:12px;
}

.hero-proof-row{
  display:none!important;
}

.hero-drop-clock{
  margin-top:176px;
}

.hero-drop-clock span,
.hero-drop-clock small{
  display:block;
  color:#74716a;
  font-size:10px;
  letter-spacing:.06em;
}

.hero-drop-clock strong{
  display:block;
  margin-top:5px;
  color:#080909;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:31px;
  font-weight:500;
  line-height:.9;
}

.premium-hero-stage{
  display:none!important;
}

main .premium-hero .mobile-hero-visual{
  order:2;
  display:block!important;
  height:250px!important;
  margin-top:-252px;
  background:
    radial-gradient(ellipse at 57% 83%,rgba(8,9,9,.14),rgba(8,9,9,0) 30%),
    linear-gradient(180deg,rgba(255,253,250,0),#fffdfa 45%,#fffdfa)!important;
}

.mobile-hero-visual > span{
  display:none!important;
}

.mobile-hero-visual::after{
  content:"";
  position:absolute;
  left:34%;
  right:8%;
  bottom:9%;
  height:20%;
  border-radius:50%;
  background:rgba(255,255,255,.96);
  filter:blur(2px);
}

.mobile-hero-product{
  z-index:2!important;
  filter:drop-shadow(0 24px 18px rgba(8,9,9,.14))!important;
}

.mobile-hero-product-left{
  left:38%!important;
  bottom:12%!important;
  width:28%!important;
}

.mobile-hero-product-main{
  left:59%!important;
  bottom:8%!important;
  width:35%!important;
  transform:rotate(5deg)!important;
}

.mobile-hero-product-back,
.mobile-hero-product-right{
  display:none!important;
}

.mobile-hero-product-pear{
  display:block!important;
  right:12%!important;
  bottom:10%!important;
  width:32%!important;
  z-index:3!important;
  transform:rotate(3deg)!important;
}

.campaign-strip,
.product-showcase,
.product-news-section,
.category-editorial,
.premium-trust-bar,
.catalog-section,
.category-launch,
.pdp-information,
.related-products-section,
.cart-layout,
.account-grid,
.drops-list{
  border:0;
}

.campaign-strip{
  width:min(390px,100% - 32px);
  margin:24px auto 0;
  padding:0;
  display:grid;
  gap:16px;
}

.campaign-card{
  min-height:390px;
  border:0;
  border-radius:18px;
  background:#fffdfa;
  box-shadow:var(--shadow);
}

.campaign-card-large{
  min-height:430px;
}

.product-showcase,
.product-news-section,
.category-editorial,
.premium-trust-bar{
  width:min(1180px,100% - 32px);
  margin:0 auto;
  padding:64px 0;
}

.section-heading-row{
  margin-bottom:24px;
}

.section-heading-row h2{
  max-width:520px;
  font-size:clamp(34px,6vw,58px)!important;
  line-height:.95!important;
}

.section-heading-row a{
  color:var(--muted);
  font-size:12px;
  text-decoration:none;
}

.home-trending-grid,
.product-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px 18px;
}

.home-trending-card,
.product-card{
  position:relative;
  display:grid;
  gap:12px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.home-trending-image-wrap,
.product-image{
  position:relative;
}

.home-trending-image,
.product-image,
.cart-item-image,
.product-large-image,
.liked-product-image{
  border:0!important;
  border-radius:10px;
  background:
    radial-gradient(ellipse at 50% 82%,rgba(8,9,9,.13),rgba(8,9,9,0) 34%),
    linear-gradient(145deg,#fffdfa 0%,#f6f3ed 68%,#ebe6db 100%)!important;
  overflow:hidden;
}

.home-trending-image::after,
.product-image::after,
.product-large-image::after{
  content:"";
  position:absolute;
  left:21%;
  right:21%;
  bottom:12%;
  height:13%;
  border-radius:50%;
  background:rgba(255,255,255,.95);
  filter:blur(2px);
}

.home-trending-image img,
.product-image img,
.cart-item-image img,
.product-large-image img{
  position:relative;
  z-index:1;
  padding:20px!important;
  object-fit:contain;
  filter:drop-shadow(0 24px 18px rgba(8,9,9,.13));
  transition:transform .45s cubic-bezier(.2,.8,.2,1);
}

.home-trending-card:hover img,
.product-card:hover img{
  transform:translateY(-5px) rotate(-1deg);
}

.home-trending-copy,
.product-info{
  padding:0!important;
  gap:4px;
}

.home-trending-copy small,
.product-card-meta,
.product-category{
  color:#6f6d67;
  font-size:11px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.home-trending-copy strong,
.product-info h3,
.product-content h3{
  min-height:0!important;
  color:var(--ink);
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.24!important;
}

.home-trending-prices,
.product-prices{
  display:flex;
  gap:8px;
  align-items:center;
  color:var(--ink);
  font-size:14px!important;
}

.home-trending-prices em,
.new,
.product-price,
.home-price{
  color:var(--ink);
  font-style:normal;
  font-weight:600;
}

.old,
.home-trending-prices del{
  color:#9b9790;
  font-size:12px;
  text-decoration:line-through;
}

.product-saving,
.home-trending-saving,
.member-price-label,
.home-deal-badge,
.great-price,
.few-left{
  display:none!important;
}

.product-actions,
.product-wishlist-button{
  display:none!important;
}

.product-quick-add,
.home-add-button{
  position:absolute;
  right:9px!important;
  bottom:9px!important;
  z-index:3;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  display:grid;
  place-items:center;
  border:0!important;
  border-radius:50%;
  background:rgba(255,255,255,.9)!important;
  color:var(--ink)!important;
  font-size:0!important;
  box-shadow:0 10px 26px rgba(8,9,9,.08)!important;
}

.product-quick-add::before,
.home-add-button::before{
  content:"+";
  font-size:18px;
  line-height:1;
}

.product-quick-add[data-added]::before{
  content:"✓";
}

.shop-hero,
.page-hero,
.drops-hero{
  padding:32px 0 22px!important;
}

.page-hero h1,
.drops-hero h1{
  font-size:clamp(36px,9vw,58px)!important;
  line-height:.94!important;
}

.page-hero p,
.drops-hero p{
  max-width:520px;
  font-size:14px!important;
}

.catalog-tools{
  gap:12px;
  margin-bottom:22px;
}

.filter-row,
.sort-control{
  gap:8px;
  overflow-x:auto;
  flex-wrap:nowrap;
  scrollbar-width:none;
}

.filter-row::-webkit-scrollbar,
.sort-control::-webkit-scrollbar{
  display:none;
}

.filter,
.sort-pill{
  min-height:34px;
  padding:0 14px;
  flex:0 0 auto;
  font-size:11px;
}

.category-launch{
  display:none!important;
}

.product-detail{
  width:min(390px,100%);
  margin:14px auto 0;
  display:block;
  padding:0!important;
  border-radius:18px;
  background:#fffdfa;
  box-shadow:var(--shadow);
  overflow:hidden;
}

.pdp-breadcrumb,
.product-thumb-rail,
.product-gallery-arrows,
.detail-buy-now{
  display:none!important;
}

.product-detail-media{
  display:block!important;
}

.product-large-image{
  min-height:430px!important;
  border-radius:0;
}

.product-large-image img{
  padding:42px!important;
}

.product-detail-info{
  padding:22px 20px 20px!important;
  gap:12px;
  background:#fffdfa!important;
}

.product-detail h1{
  width:100%;
  font-size:25px!important;
  line-height:1.02!important;
}

.detail-prices{
  width:100%;
  justify-content:space-between!important;
  font-size:16px!important;
}

.product-short-description{
  font-size:13px!important;
}

.product-buy-box{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:10px;
  position:static!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.detail-urgency,
.price-label{
  display:none!important;
}

.quantity-control{
  grid-template-columns:28px 1fr 28px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
}

.quantity-control button,
.quantity-control input{
  min-height:42px;
  font-size:12px;
}

.product-buy-box .cta{
  min-height:42px;
  border-radius:8px;
}

.pdp-card-row,
.pdp-service-list ul{
  display:flex;
  gap:12px;
  padding-top:4px;
  color:#77736b;
  font-size:11px;
}

.pdp-service-list li{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

.cart-screen{
  width:min(430px,100% - 32px);
}

.cart-layout{
  display:block!important;
  padding:0 0 42px!important;
}

.cart-list{
  gap:0;
}

.cart-item{
  grid-template-columns:78px 1fr auto;
  gap:14px;
  align-items:start;
  padding:17px 0;
  border:0!important;
  border-bottom:1px solid var(--line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.cart-item-image{
  aspect-ratio:1;
  border-radius:8px;
}

.cart-item-info{
  padding:0!important;
  gap:6px;
}

.cart-item h3{
  font-size:13px;
  line-height:1.24;
}

.cart-actions{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
}

.quantity-control.small{
  width:92px;
  grid-template-columns:30px 30px 30px;
}

.quantity-control.small input,
.quantity-control.small button{
  min-height:30px;
}

.cart-actions .remove-btn{
  width:26px;
  min-width:26px;
  height:26px;
  min-height:26px;
  padding:0;
  border:0;
  background:transparent;
  color:#77736b;
  font-size:0;
}

.cart-actions .remove-btn::before{
  content:"×";
  font-size:17px;
}

.cart-summary{
  position:static!important;
  margin-top:20px;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body:not(.cart-has-items) .cart-summary{
  display:none!important;
}

.cart-summary h2{
  display:none;
}

.checkout-steps,
.member-saving-box,
.checkout-trust-row,
.discount-form label,
[data-cart-help],
.status-pill[data-cart-status]{
  display:none!important;
}

.summary-row{
  padding:8px 0;
  border-bottom:1px solid var(--line);
  color:#6f6d67;
  font-size:13px;
}

.summary-row strong{
  color:var(--ink);
  font-size:13px;
  font-weight:500;
}

.summary-row.summary-saving{
  display:none;
}

.summary-row.summary-total-saving{
  border-bottom:0;
  color:#7d6a34;
  font-size:12px;
}

.summary-row.summary-total-saving strong{
  color:#8a6a18;
  font-size:14px;
  font-weight:700;
}

.cart-checkout{
  width:100%;
  min-height:48px;
  margin-top:8px;
  border-radius:8px;
}

.category-lock-popover{
  position:fixed;
  inset:0;
  z-index:500;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(247,244,239,.94);
  opacity:0;
  pointer-events:none;
  transition:opacity .25s ease;
}

.category-lock-popover.show{
  opacity:1;
  pointer-events:auto;
}

.category-lock-card{
  width:min(390px,100%);
  display:grid;
  justify-items:center;
  gap:14px;
  padding:50px 22px 24px;
  border-radius:18px;
  background:#fffdfa;
  box-shadow:var(--shadow);
  text-align:center;
}

.category-lock-popover.is-required .category-lock-card{
  gap:13px;
  padding:38px 22px 24px;
}

.category-lock-card .badge{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  background:#f7f4ef;
  color:transparent;
  position:relative;
}

.category-lock-card .badge::before{
  content:"";
  width:22px;
  height:18px;
  position:absolute;
  left:50%;
  top:31px;
  border:2px solid var(--ink);
  border-radius:5px;
  transform:translateX(-50%);
}

.category-lock-card .badge::after{
  content:"";
  position:absolute;
  left:50%;
  top:17px;
  width:20px;
  height:20px;
  border:2px solid var(--ink);
  border-bottom:0;
  border-radius:14px 14px 0 0;
  transform:translateX(-50%);
}

.category-lock-popover.is-required .category-lock-card .badge{
  margin-bottom:4px;
}

.category-lock-popover.is-required .category-lock-card .badge::before{
  top:31px;
}

.category-lock-popover.is-required .category-lock-card .badge::after{
  top:16px;
}

.category-lock-card h2{
  max-width:285px;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:37px;
  font-weight:500;
  line-height:.96;
}

.category-lock-card p{
  max-width:285px;
  font-size:13px;
}

.category-lock-actions{
  width:100%;
  display:grid;
  gap:10px;
  margin-top:6px;
}

.category-lock-popover.is-required .category-lock-actions{
  margin-top:12px;
}

.category-lock-actions .product-btn{
  width:100%;
  border-radius:8px;
}

.category-lock-actions .product-btn.secondary{
  border:0;
  background:transparent;
}

.dashboard-layout{
  display:block!important;
}

.dashboard-sidebar{
  display:none!important;
}

.account-dashboard-shell{
  width:min(430px,100% - 32px);
}

.account-grid{
  display:grid;
  grid-template-columns:1fr!important;
  gap:12px;
  padding:0 0 48px!important;
  border:0;
}

.account-card,
.settings-card,
.order-success-card,
.order-confirmation-panel,
.empty-state{
  padding:18px!important;
  border:1px solid var(--line)!important;
  border-radius:12px!important;
  background:#fffdfa!important;
  box-shadow:none!important;
}

.account-card h2{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:28px;
  line-height:1;
}

.account-metrics{
  grid-template-columns:1fr!important;
  gap:8px;
}

.account-metric{
  padding:13px!important;
  border:1px solid var(--line)!important;
  border-radius:10px;
  background:#fffdfa;
}

.member-form input,
input,
textarea,
select{
  min-height:46px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fffdfa;
}

.drops-hero{
  width:min(390px,100%);
  margin:14px auto 0;
  display:block!important;
  padding:36px 20px 320px!important;
  border-radius:18px;
  background:
    url("assets/hero-studio/kallavfettning-tershine-dissolve.png") 27% 80%/28% auto no-repeat,
    url("assets/hero-studio/bilschampo-tershine-purify-s-keramiskt.png") 61% 78%/34% auto no-repeat,
    radial-gradient(ellipse at 53% 83%,rgba(8,9,9,.14),rgba(8,9,9,0) 25%),
    #fffdfa;
  box-shadow:var(--shadow);
}

.drops-hero h1{
  font-size:38px!important;
}

.drops-hero article{
  margin-top:18px;
  padding:0;
  border:0;
  background:transparent;
}

.drops-list{
  width:min(390px,100%);
  margin:20px auto 0;
  grid-template-columns:1fr!important;
  padding:0 0 48px!important;
}

.drops-list article{
  display:grid;
  grid-template-columns:54px 1fr;
  align-items:center;
  padding:12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fffdfa;
}

.site-footer{
  width:100%;
  margin:0;
  padding:42px max(20px,calc((100vw - 1180px) / 2)) 34px;
  border:0;
  background:#fffdfa;
  color:var(--ink);
}

.site-footer-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}

.site-footer-brand{
  grid-column:1 / -1;
}

.footer-logo{
  color:var(--ink);
  font-family:'Inter',system-ui,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.36em;
}

.site-footer p{
  max-width:240px;
  margin-top:18px;
  color:#5f5c56;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:31px;
  line-height:.95;
}

.footer-column strong{
  color:#77736b;
  font-size:10px;
  font-weight:500;
  letter-spacing:.09em;
}

.footer-column a,
.site-footer nav a{
  color:var(--ink);
  font-size:12px;
  font-weight:300;
}

@media (min-width:700px){
  .premium-hero,
  .product-detail,
  .cart-screen,
  .account-dashboard-shell,
  .drops-hero,
  .drops-list{
    width:min(520px,100% - 40px);
  }

  .premium-hero-copy h1{
    max-width:340px;
    font-size:56px!important;
  }

  main .premium-hero .mobile-hero-visual{
    height:315px!important;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (min-width:981px){
  body{
    padding-top:78px!important;
  }

  .nav{
    width:min(1180px,100% - 48px);
    left:50%;
    right:auto;
    top:16px!important;
    min-height:64px;
    border:1px solid var(--line);
    border-radius:18px;
    transform:translateX(-50%);
    box-shadow:var(--soft-shadow);
  }

  .luxury-menu-overlay{
    inset:0;
    padding:92px max(48px,calc((100vw - 1180px) / 2)) 42px;
  }

  .luxury-menu-links a{
    width:min(620px,100%);
  }

  .luxury-menu-feature{
    width:min(420px,100%);
    min-height:260px;
  }

  .premium-hero{
    width:min(1180px,100% - 48px);
    min-height:690px;
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    align-items:stretch;
  }

  .premium-hero-copy{
    padding:70px 0 70px 58px!important;
  }

  .premium-hero-copy h1{
    max-width:440px;
    font-size:76px!important;
  }

  .premium-hero-copy p{
    max-width:310px;
    font-size:15px;
  }

  .hero-drop-clock{
    margin-top:auto;
    padding-top:260px;
  }

  main .premium-hero .mobile-hero-visual{
    height:auto!important;
    min-height:690px;
    margin:0;
  }

  .mobile-hero-product-left{
    left:21%!important;
    bottom:24%!important;
    width:27%!important;
  }

  .mobile-hero-product-main{
    left:43%!important;
    bottom:20%!important;
    width:34%!important;
  }

  .mobile-hero-product-back{
    display:block!important;
    left:39%!important;
    top:16%!important;
    width:23%!important;
  }

  .campaign-strip{
    width:min(1180px,100% - 48px);
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin-top:28px;
  }

  .campaign-card{
    min-height:390px;
  }

  .campaign-card-large{
    grid-column:span 2;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .product-detail-page{
    width:100%;
  }

  .product-detail{
    width:min(760px,100% - 48px);
    display:grid;
    grid-template-columns:1fr;
  }

  .product-large-image{
    min-height:560px!important;
  }

  .product-detail-info{
    padding:30px!important;
  }

  .product-detail h1{
    font-size:36px!important;
  }

  .cart-screen{
    width:min(520px,100% - 48px);
  }
}

@media (max-width:640px){
  main,
  .home-shell,
  .cart-screen,
  .liked-shell,
  .drops-screen,
  .order-screen,
  .account-dashboard-shell,
  .product-detail-page,
  .membership-page{
    width:100%;
  }

  .page-hero{
    width:min(390px,100% - 32px);
    margin:0 auto;
  }

  .premium-hero{
    position:relative;
    min-height:520px;
    overflow:hidden;
  }

  .premium-hero-copy{
    position:static!important;
    z-index:3;
    margin-top:0!important;
    padding-top:48px!important;
  }

  .premium-hero-copy > *{
    position:relative;
    z-index:3;
  }

  .premium-hero .hero-actions{
    display:flex!important;
    justify-content:flex-start!important;
  }

  .premium-hero .hero-actions .cta{
    width:auto!important;
    min-width:0!important;
  }

  .premium-hero-copy h1{
    font-size:39px!important;
    line-height:.96!important;
  }

  .hero-drop-clock{
    position:absolute;
    left:24px;
    bottom:24px;
    z-index:4;
    margin:0!important;
  }

  main .premium-hero .mobile-hero-visual{
    position:absolute!important;
    inset:315px 0 0!important;
    height:auto!important;
    margin:0!important;
    z-index:1!important;
  }

  .mobile-hero-product-left{
    left:32%!important;
    bottom:13%!important;
    width:24%!important;
  }

  .mobile-hero-product-main{
    display:none!important;
  }

  .mobile-hero-product-right{
    display:block!important;
    right:12%!important;
    bottom:11%!important;
    width:28%!important;
    transform:rotate(5deg)!important;
  }

  .product-showcase,
  .product-news-section,
  .category-editorial,
  .premium-trust-bar,
  .catalog-section,
  .pdp-information,
  .related-products-section{
    width:min(390px,100% - 32px);
    padding:54px 0;
  }

  .home-trending-grid,
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 18px;
  }

  .home-trending-image,
  .product-image{
    aspect-ratio:.92/1;
  }

  .category-editorial{
    display:block;
  }

  .category-editorial-copy{
    position:static;
  }

  .category-editorial-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-top:24px;
  }

  .category-editorial-card,
  .category-editorial-card.is-large,
  .category-editorial-card.is-dark{
    min-height:260px;
  }

  .category-studio{
    inset:0 0 88px;
  }

  .editorial-product-row{
    grid-template-columns:1fr!important;
  }

  .editorial-product-card,
  .editorial-product-card.is-wide{
    min-height:360px;
  }
}

/* Home refinement: calmer hero, tighter pacing, natural vertical scroll */
html,
body{
  width:100%;
  max-width:100%;
  height:auto;
  overflow-x:clip!important;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:none;
}

.page-home,
.page-home main,
.page-home .premium-home{
  max-width:100%;
  overflow-x:clip!important;
  overflow-y:visible!important;
}

.page-home{
  background:#fff;
  min-height:100%;
  touch-action:pan-y;
}

.page-home main,
.page-home .premium-home{
  overflow-x:clip!important;
  overflow-y:visible!important;
}

.page-home *{
  min-width:0;
}

.page-home .product-news-section,
.page-home .category-editorial,
.page-home .campaign-strip{
  display:none!important;
}

.page-home .product-showcase{
  padding-top:clamp(36px,6vw,72px);
  padding-bottom:clamp(28px,5vw,56px);
}

.page-home .premium-trust-bar{
  margin-top:0;
  padding-top:0;
  padding-bottom:clamp(28px,5vw,54px);
}

.page-home .home-trending-grid{
  margin-bottom:0;
}

.page-home .site-footer{
  margin-top:0;
}

.page-home .premium-hero{
  width:100%;
  max-width:none;
  margin:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.page-home .premium-hero-copy{
  background:#fff!important;
}

.page-home main .premium-hero .mobile-hero-visual{
  touch-action:pan-y;
  pointer-events:none;
  -webkit-user-select:none;
  user-select:none;
}

.page-home .mobile-hero-product{
  -webkit-user-drag:none;
}

.hero-drop-clock{
  display:grid;
  gap:5px;
  align-content:start;
}

.hero-drop-clock strong{
  letter-spacing:.05em;
  white-space:nowrap;
}

.hero-drop-clock small{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-top:2px;
  line-height:1.25;
  text-align:center;
  word-spacing:0;
}

.hero-drop-clock small span:first-child{
  text-align:left;
}

.hero-drop-clock small span:last-child{
  text-align:right;
}

@media (max-width:640px){
  .page-home .premium-hero{
    min-height:540px;
    border-radius:0;
  }

  .page-home .premium-hero-copy{
    padding-top:44px!important;
  }

  .page-home .premium-hero-copy h1{
    max-width:275px;
    font-size:38px!important;
  }

  .page-home .premium-hero-copy p{
    max-width:252px;
    margin-bottom:15px;
  }

  .page-home .hero-drop-clock{
    left:24px;
    bottom:25px;
    gap:6px;
  }

  .page-home .hero-drop-clock strong{
    font-size:27px;
    line-height:.9;
  }

  .page-home .hero-drop-clock small{
    font-size:9px;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    inset:292px 0 0!important;
    overflow:visible!important;
  }

  .page-home .mobile-hero-visual::after{
    left:38%;
    right:12%;
    bottom:10%;
    height:17%;
  }

  .page-home .mobile-hero-product-left{
    left:36%!important;
    bottom:16%!important;
    width:22%!important;
    transform:rotate(-5deg)!important;
  }

  .page-home .mobile-hero-product-right{
    right:17%!important;
    bottom:15%!important;
    width:25%!important;
    transform:rotate(4deg)!important;
  }

  .page-home .mobile-hero-product-pear{
    right:12%!important;
    bottom:8%!important;
    width:30%!important;
  }

  .page-home .product-showcase{
    padding-top:32px!important;
    padding-bottom:48px!important;
  }

  .page-home .section-heading-row{
    margin-bottom:20px;
  }
}

@media (min-width:981px){
  .page-home .premium-hero{
    width:100%;
    min-height:690px;
    grid-template-columns:minmax(48px,1fr) minmax(360px,520px) minmax(420px,660px) minmax(48px,1fr);
  }

  .page-home .premium-hero-copy{
    grid-column:2;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    grid-column:3;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    overflow:visible!important;
  }

  .page-home .mobile-hero-product-left{
    left:23%!important;
    bottom:26%!important;
    width:23%!important;
  }

  .page-home .mobile-hero-product-main{
    display:none!important;
  }

  .page-home .mobile-hero-product-right{
    display:block!important;
    right:24%!important;
    bottom:24%!important;
    width:27%!important;
  }

  .page-home .mobile-hero-product-pear{
    display:block!important;
    right:14%!important;
    bottom:15%!important;
    width:24%!important;
  }
}

@supports not (overflow:clip){
  html,
  body,
  .page-home,
  .page-home main,
  .page-home .premium-home{
    overflow-x:hidden!important;
  }
}

body.mobile-menu-open{
  overflow:hidden!important;
  touch-action:none;
}

/* Product image surfaces stay clean white so the isolated product assets never show framed edges. */
.product-image,
.home-trending-image,
.cart-item-image,
.product-large-image,
.product-thumb,
.liked-product-image,
.category-image-row img{
  background:#fff!important;
}

.product-image::before,
.product-image::after,
.home-trending-image::before,
.home-trending-image::after,
.product-large-image::before,
.product-large-image::after{
  content:none!important;
}

/* Flush product presentation: no visible image frame, just product on white. */
.product-grid,
.home-trending-grid{
  align-items:start;
}

.product-image,
.home-trending-image{
  display:grid!important;
  place-items:center!important;
  aspect-ratio:1/1.08!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  isolation:auto!important;
}

.product-image img,
.home-trending-image img{
  width:118%!important;
  height:118%!important;
  max-width:none!important;
  max-height:none!important;
  padding:0!important;
  object-fit:contain!important;
  filter:none!important;
  transform:none!important;
}

.home-trending-card:hover img,
.product-card:hover img{
  transform:none!important;
}

@media (max-width:640px){
  .product-grid,
  .home-trending-grid{
    gap:30px 18px!important;
  }

  .product-image,
  .home-trending-image{
    aspect-ratio:1/1.08!important;
  }

  .product-image img,
  .home-trending-image img{
    width:124%!important;
    height:124%!important;
  }
}

/* Product listing page: centered, white, and normal mobile document scrolling. */
.page-products{
  min-height:100%;
  background:#fff!important;
  touch-action:pan-y;
  overflow-x:clip!important;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:none;
}

.page-products main{
  width:100%;
  max-width:100%;
  margin:0 auto;
  background:#fff!important;
  overflow-x:clip!important;
  overflow-y:visible!important;
}

.page-products .page-hero,
.page-products .category-launch,
.page-products .catalog-section{
  width:min(1180px,100% - 32px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  background:#fff!important;
  overflow-x:clip!important;
  overflow-y:visible!important;
}

.page-products .catalog-section{
  padding-top:42px!important;
}

.page-products .product-grid{
  width:100%;
  margin-left:auto!important;
  margin-right:auto!important;
  justify-content:center;
}

.page-products .product-card{
  min-width:0;
}

.page-products .product-image,
.page-products .product-image img{
  touch-action:pan-y;
}

@supports not (overflow:clip){
  .page-products,
  .page-products main,
  .page-products .page-hero,
  .page-products .category-launch,
  .page-products .catalog-section{
    overflow-x:hidden!important;
  }
}

@media (max-width:640px){
  .page-products .page-hero,
  .page-products .category-launch,
  .page-products .catalog-section{
    width:min(390px,100% - 32px)!important;
  }

  .page-products .category-launch{
    margin-top:18px!important;
  }

  .page-products .catalog-section{
    padding-top:36px!important;
    padding-bottom:56px!important;
  }
}

/* Product listing scale: compact products without the old framed look. */
.page-products .catalog-tools{
  justify-content:flex-start!important;
}

.page-products .sort-control{
  display:none!important;
}

.page-products .product-grid{
  gap:34px 20px!important;
}

.page-products .product-image{
  aspect-ratio:1/1!important;
}

.page-products .product-image img{
  width:90%!important;
  height:90%!important;
}

@media (max-width:640px){
  .page-products .product-grid{
    gap:32px 18px!important;
  }

  .page-products .product-image{
    aspect-ratio:1/1!important;
  }

  .page-products .product-image img{
    width:100%!important;
    height:100%!important;
  }
}

/* Universal product card surface from latest reference. */
.product-card,
.home-trending-card{
  --product-card-surface:#fffefd;
  --product-card-line:rgba(8,9,9,.1);
  --product-card-gold:#a77a2b;
  gap:0!important;
  padding:18px!important;
  border:1px solid rgba(8,9,9,.045)!important;
  border-radius:18px!important;
  background:var(--product-card-surface)!important;
  box-shadow:0 16px 34px rgba(17,18,18,.07)!important;
  overflow:hidden!important;
}

.product-image,
.home-trending-image{
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.home-trending-image-wrap{
  position:relative;
}

.product-info,
.home-trending-copy{
  flex:1;
  display:flex!important;
  flex-direction:column;
  padding:16px 18px 0!important;
}

.product-card-meta,
.home-trending-copy small{
  color:#74716c!important;
  font-size:12px!important;
  line-height:1.25!important;
}

.product-info h3,
.home-trending-copy strong{
  margin-top:14px!important;
  color:#121212!important;
  font-size:16px!important;
  line-height:1.22!important;
}

.product-prices,
.home-trending-prices{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:14px!important;
  width:100%;
  margin-top:auto!important;
  padding-top:22px!important;
  border-top:1px solid var(--product-card-line)!important;
  font-size:20px!important;
}

.product-prices span,
.home-trending-prices em,
.home-trending-prices del{
  white-space:nowrap;
}

.product-prices .new,
.home-trending-prices em{
  font-weight:700!important;
}

.product-prices .old,
.home-trending-prices del{
  color:#9b9892!important;
  font-size:14px!important;
}

.product-saving,
.home-trending-saving{
  display:block!important;
  margin-top:7px!important;
  color:var(--product-card-gold)!important;
  font-size:11px!important;
  font-weight:650!important;
  letter-spacing:0!important;
  line-height:1.2!important;
  text-transform:none!important;
}

.product-quick-add,
.home-add-button{
  top:16px!important;
  right:16px!important;
  bottom:auto!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 10px 24px rgba(20,18,14,.08)!important;
}

.product-quick-add::before,
.home-add-button::before{
  font-size:17px!important;
  font-weight:500!important;
  transform:translateY(-1px);
}

.page-products .catalog-tools{
  margin-bottom:26px!important;
}

.page-products .filter-row{
  width:100%;
  display:flex;
  align-items:center;
  gap:14px!important;
  overflow-x:auto;
  flex-wrap:nowrap;
}

.page-products .filter-row::before{
  content:"Filtrera";
  flex:0 0 auto;
  color:#74716c;
  font-size:15px;
  font-weight:300;
}

.page-products .filter-row::after{
  content:"";
  width:20px;
  height:1px;
  flex:0 0 auto;
  order:-1;
  background:#aaa7a0;
}

.page-products .filter-row::before{
  order:-2;
}

.page-products .filter{
  min-height:48px!important;
  padding:0 24px!important;
  border:1px solid #dedbd4!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#111!important;
  font-size:14px!important;
  font-weight:500!important;
  box-shadow:none!important;
}

.page-products .filter.active{
  border-color:#050505!important;
  background:#050505!important;
  color:#fff!important;
}

@media (max-width:640px){
  .product-card,
  .home-trending-card{
    padding:14px!important;
    border-radius:16px!important;
  }

  .product-info,
  .home-trending-copy{
    padding:14px 8px 0!important;
  }

  .product-info h3,
  .home-trending-copy strong{
    font-size:15px!important;
  }

  .product-prices,
  .home-trending-prices{
    gap:8px!important;
    padding-top:18px!important;
    font-size:18px!important;
  }

  .product-prices .old,
  .home-trending-prices del{
    font-size:14px!important;
  }

  .page-products .filter-row{
    gap:12px!important;
    margin-left:0;
  }

  .page-products .filter{
    min-height:44px!important;
    padding:0 20px!important;
    font-size:13px!important;
  }
}

.product-card:nth-child(1),
.product-card:nth-child(7),
.home-trending-card:nth-child(1),
.home-trending-card:nth-child(6){
  grid-column:auto!important;
}

.product-card:nth-child(1) .product-image,
.product-card:nth-child(7) .product-image,
.home-trending-card:nth-child(1) .home-trending-image,
.home-trending-card:nth-child(6) .home-trending-image{
  aspect-ratio:1/1!important;
}

/* Hide product plus buttons per latest direction. */
.product-quick-add,
.home-add-button{
  display:none!important;
}

/* Launch polish 2026-05-11 */
.home-show-more{
  display:flex;
  justify-content:center;
  margin-top:26px;
}

.home-show-more .product-btn{
  min-height:38px;
  padding:0 18px;
  border-color:rgba(9,11,12,.12)!important;
  background:#fffdfa!important;
  color:#3d3b36!important;
  font-size:12px!important;
}

.hero-drop-clock small{
  grid-template-columns:repeat(3,minmax(42px,1fr))!important;
  align-items:start;
}

.hero-drop-clock small span{
  text-align:center!important;
}

.hero-drop-clock small span:first-child{
  text-align:left!important;
}

.hero-drop-clock small span:last-child{
  transform:translateX(5px);
}

.variant-picker{
  width:100%;
  display:grid!important;
  gap:7px!important;
  margin-top:2px;
}

.variant-picker[hidden]{
  display:none!important;
}

.variant-picker label{
  color:#3c3b37;
  font-size:11px;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.variant-select-wrap{
  position:relative;
}

.variant-select-wrap::after{
  content:"";
  position:absolute;
  right:18px;
  top:50%;
  width:13px;
  height:13px;
  border-right:4px solid #343331;
  border-bottom:4px solid #343331;
  pointer-events:none;
  transform:translateY(-68%) rotate(45deg);
}

.variant-picker select{
  width:100%;
  min-height:58px!important;
  appearance:none;
  border:2px solid #151515!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#343331!important;
  font-size:24px!important;
  font-weight:300!important;
  padding:0 52px 0 18px!important;
}

.pdp-accordion{
  display:grid;
  gap:14px;
}

.pdp-accordion details{
  margin:0!important;
  box-shadow:none!important;
}

.pdp-accordion summary{
  min-height:54px!important;
  padding:0 17px!important;
  font-size:16px!important;
}

.pdp-accordion p,
.product-description-rich{
  font-size:13px!important;
  line-height:1.55!important;
}

.product-description-rich h3{
  font-size:15px!important;
  line-height:1.25!important;
}

.pdp-information .section-heading-row h2{
  font-size:clamp(26px,5vw,42px)!important;
}

.pdp-service-list li{
  font-size:12px!important;
  line-height:1.45!important;
}

.page-product-detail .site-footer{
  padding-bottom:118px;
}

.product-buy-box{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:260!important;
  display:grid!important;
  grid-template-columns:104px minmax(0,1fr)!important;
  gap:10px!important;
  padding:12px max(14px,env(safe-area-inset-left)) calc(12px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))!important;
  border:0!important;
  border-radius:0!important;
  background:#050505!important;
  box-shadow:0 -16px 38px rgba(5,5,5,.18)!important;
}

.product-buy-box .detail-urgency,
.product-buy-box .detail-buy-now,
.product-buy-box .form-message{
  display:none!important;
}

.product-buy-box .quantity-control{
  border-color:rgba(255,255,255,.18)!important;
  background:#161616!important;
}

.product-buy-box .quantity-control button,
.product-buy-box .quantity-control input{
  min-height:46px!important;
  background:transparent!important;
  color:#fff!important;
  font-size:14px!important;
}

.product-buy-box .cta{
  min-height:46px!important;
  border:1px solid #fff!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#050505!important;
}

.product-detail-info{
  padding-bottom:24px!important;
}

.membership-hero-plans{
  margin-top:26px;
}

.membership-hero-plans article{
  padding:20px!important;
}

.membership-hero-plans article strong{
  font-size:31px!important;
}

.membership-invite-code{
  display:grid;
  gap:8px;
  max-width:430px;
  margin-top:14px;
}

.membership-invite-code span{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
}

.membership-invite-code input{
  min-height:46px;
  border-radius:8px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.membership-invite-code small{
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}

.membership-invite-code.is-checking input{
  border-color:rgba(15,15,15,.32);
}

.membership-invite-code.is-valid input{
  border-color:rgba(42,115,72,.55);
  background:#fbfffc;
}

.membership-invite-code.is-valid small{
  color:#2a7348;
}

.membership-invite-code.is-invalid input{
  border-color:rgba(166,54,54,.7);
  background:#fff8f7;
}

.membership-invite-code.is-invalid small{
  color:#a63636;
}

.membership-benefit-band{
  display:none!important;
}

.membership-value-proof{
  margin-top:0!important;
}

.compare-row span{
  font-size:14px!important;
}

.membership-faq .faq-stack{
  display:grid;
  gap:14px;
}

.account-card.login-card{
  display:grid;
  gap:16px;
}

.account-card.login-card p{
  margin:0;
  font-size:13px;
  line-height:1.55;
}

.member-form{
  display:grid;
  gap:12px!important;
}

.account-switch-button,
.account-link,
.remove-btn.account-link{
  margin-top:4px!important;
}

.account-logout-button{
  width:100%;
  margin-top:8px;
  background:#111!important;
  color:#fff!important;
}

.settings-grid{
  gap:14px!important;
}

.settings-card{
  display:grid;
  gap:14px;
}

.settings-status{
  display:grid;
  gap:8px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fffdfa;
}

.settings-status span{
  color:#77736b!important;
  font-size:11px!important;
  font-weight:500!important;
  letter-spacing:.08em!important;
}

.settings-status strong{
  color:#111!important;
  font-size:17px!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
}

.settings-status p{
  margin:0!important;
  color:#6f6b64!important;
  font-size:13px!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}

.page-account.is-authenticated .account-dashboard-shell,
.page-settings .account-dashboard-shell{
  width:min(760px,100% - 32px)!important;
}

.page-account.is-authenticated .page-hero{
  padding:34px 0 18px!important;
}

.page-account.is-authenticated .page-hero h1{
  max-width:560px;
  font-size:clamp(40px,10vw,68px)!important;
  line-height:.94!important;
}

.page-account.is-authenticated .page-hero p{
  max-width:430px;
  font-size:14px!important;
  line-height:1.55!important;
}

.page-account.is-authenticated .dashboard-layout{
  display:block!important;
}

.page-account.is-authenticated .dashboard-sidebar,
.page-settings .dashboard-sidebar{
  display:none!important;
}

.page-account.is-authenticated .dashboard-sidebar::-webkit-scrollbar,
.page-settings .dashboard-sidebar::-webkit-scrollbar{
  display:none;
}

.page-account.is-authenticated .dashboard-sidebar a,
.page-account.is-authenticated .dashboard-sidebar button,
.page-settings .dashboard-sidebar a,
.page-settings .dashboard-sidebar button{
  min-height:38px!important;
  flex:0 0 auto;
  padding:0 14px!important;
  border:1px solid var(--line)!important;
  border-radius:999px!important;
  background:#fffdfa!important;
  color:#5f5b53!important;
  font-size:12px!important;
  font-weight:500!important;
}

.page-account.is-authenticated .dashboard-sidebar .active,
.page-settings .dashboard-sidebar .active{
  border-color:#111!important;
  background:#111!important;
  color:#fff!important;
}

.page-account.is-authenticated .account-grid,
.page-settings .account-grid{
  gap:14px!important;
  padding-bottom:64px!important;
}

.page-account.is-authenticated .account-card,
.page-settings .account-card{
  padding:22px!important;
  border-radius:14px!important;
}

.page-account.is-authenticated .account-overview{
  display:grid;
  gap:16px;
  border:0!important;
  background:transparent!important;
  padding:0!important;
}

.page-account.is-authenticated .account-overview .status-pill{
  width:max-content;
  min-height:28px;
  padding:0 10px!important;
  border-radius:999px;
  background:#111!important;
  color:#fff!important;
  font-size:10px!important;
}

.page-account.is-authenticated .account-overview h2,
.page-account.is-authenticated .member-card h2,
.page-settings .settings-card h2{
  margin:0!important;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(31px,8vw,46px)!important;
  font-weight:500!important;
  line-height:.98!important;
}

.page-account.is-authenticated .account-overview > p,
.page-account.is-authenticated .member-card > p,
.page-settings .settings-card > p{
  max-width:440px;
  margin:0!important;
  color:#6f6b64!important;
  font-size:13px!important;
  line-height:1.55!important;
}

.page-account.is-authenticated .account-metrics{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:2px!important;
}

.page-account.is-authenticated .account-metric{
  min-height:104px;
  display:grid;
  align-content:space-between;
  padding:14px!important;
  border:1px solid rgba(9,11,12,.08)!important;
  border-radius:12px!important;
  background:#fffdfa!important;
}

.page-account.is-authenticated .account-metric span,
.account-card-kicker{
  color:#77736b!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

.page-account.is-authenticated .account-metric strong{
  color:#111!important;
  font-size:20px!important;
  font-weight:600!important;
  line-height:1.05!important;
}

.page-account.is-authenticated .points-metric{
  grid-column:1 / -1;
}

.page-account.is-authenticated .points-metric small{
  color:#6f6b64!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.page-account.is-authenticated .account-status-card,
.page-settings .settings-card{
  display:grid;
  gap:12px!important;
}

.page-account.is-authenticated .account-status-card .status-pill{
  min-height:32px;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:10px!important;
}

.page-account.is-authenticated .account-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:10px!important;
  margin-top:6px!important;
}

.page-account.is-authenticated .account-actions .product-btn{
  width:100%;
  margin:0!important;
  border-radius:8px!important;
}

.page-account.is-authenticated .account-logout-button{
  border-color:rgba(9,11,12,.12)!important;
  background:#fffdfa!important;
  color:#111!important;
}

.page-account.is-authenticated .order-card .empty-state{
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

.page-account.is-authenticated .account-grid{
  gap:52px!important;
}

.page-account.is-authenticated .account-card,
.page-account.is-authenticated .account-overview,
.page-account.is-authenticated .account-status-card,
.page-account.is-authenticated .order-card{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.page-account.is-authenticated .account-overview > .status-pill,
.page-account.is-authenticated .account-overview > h2,
.page-account.is-authenticated .account-overview > p{
  display:none!important;
}

.page-account.is-authenticated .account-metrics{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  margin:0!important;
}

.page-account.is-authenticated .account-metric{
  min-height:0!important;
  display:grid!important;
  gap:16px!important;
  align-content:start!important;
  padding:0 0 26px!important;
  margin:0 0 26px!important;
  border:0!important;
  border-bottom:1px solid rgba(9,11,12,.12)!important;
  border-radius:0!important;
  background:transparent!important;
}

.page-account.is-authenticated .account-metric span,
.page-account.is-authenticated .account-card-kicker{
  color:#74716a!important;
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing:.14em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}

.page-account.is-authenticated .account-metric strong{
  color:#050505!important;
  font-size:clamp(31px,9vw,44px)!important;
  font-weight:700!important;
  line-height:1!important;
}

.page-account.is-authenticated .points-metric small{
  margin-top:-8px;
  color:#77736b!important;
  font-size:17px!important;
  line-height:1.45!important;
}

.page-account.is-authenticated .account-status-card{
  gap:18px!important;
}

.page-account.is-authenticated .account-status-card h2,
.page-account.is-authenticated .order-card h2{
  margin:0!important;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(48px,15vw,76px)!important;
  font-weight:500!important;
  line-height:.92!important;
}

.page-account.is-authenticated .account-status-card .status-pill{
  width:max-content;
  max-width:100%;
  min-height:45px!important;
  padding:0 22px!important;
  border:1px solid rgba(9,11,12,.09)!important;
  border-radius:999px!important;
  background:#fffdfa!important;
  color:#55524c!important;
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing:.12em!important;
}

.page-account.is-authenticated .account-status-card > p{
  max-width:560px;
  margin:0!important;
  color:#6f6b64!important;
  font-size:17px!important;
  line-height:1.75!important;
}

.page-account.is-authenticated [data-account-email]{
  margin-top:8px!important;
}

.page-account.is-authenticated .account-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  margin-top:24px!important;
  border-top:1px solid rgba(9,11,12,.1);
}

.page-account.is-authenticated .account-action-row{
  min-height:76px!important;
  display:grid!important;
  grid-template-columns:42px 1fr 24px;
  align-items:center;
  gap:18px!important;
  width:100%;
  padding:0!important;
  border:0!important;
  border-bottom:1px solid rgba(9,11,12,.1)!important;
  border-radius:0!important;
  background:transparent!important;
  color:#090909!important;
  font-size:21px!important;
  font-weight:400!important;
  text-align:left;
}

.page-account.is-authenticated .account-action-row svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.page-account.is-authenticated .account-action-row i,
.page-account.is-authenticated .account-order-link i{
  justify-self:end;
  width:13px;
  height:13px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(-45deg);
}

.page-account.is-authenticated .order-card{
  display:grid;
  gap:26px!important;
}

.page-account.is-authenticated .order-row{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:16px;
  align-items:end;
  padding:0 0 34px;
  border-bottom:1px solid rgba(9,11,12,.1);
}

.page-account.is-authenticated .order-row strong{
  color:#77736b;
  font-size:18px;
  font-weight:300;
}

.page-account.is-authenticated .order-row span{
  color:#050505;
  font-size:38px;
  font-weight:500;
  line-height:1;
}

.page-account.is-authenticated .order-row small{
  justify-self:end;
  color:#77736b;
  font-size:17px;
}

.page-account.is-authenticated .order-row p{
  grid-column:1 / -1;
  justify-self:center;
  margin:-14px 0 0!important;
  color:#77736b!important;
  font-size:16px!important;
  line-height:1.45!important;
}

.page-account.is-authenticated .order-row a{
  grid-column:1 / -1;
  justify-self:center;
  color:#111;
  font-size:14px;
}

.page-account.is-authenticated .account-order-link{
  min-height:54px;
  display:grid;
  grid-template-columns:1fr 24px;
  align-items:center;
  border-bottom:1px solid rgba(9,11,12,.1);
  color:#111;
  font-size:18px;
}

.page-account.is-authenticated .order-card .empty-state{
  display:grid;
  gap:8px;
  padding:0 0 28px!important;
  border-bottom:1px solid rgba(9,11,12,.1)!important;
}

.page-account.is-authenticated .order-card .empty-state span{
  color:#050505;
  font-size:22px;
  font-weight:500;
}

.page-account.is-authenticated .order-card .empty-state p{
  margin:0!important;
  color:#77736b!important;
  font-size:16px!important;
}

.page-settings .settings-grid{
  grid-template-columns:1fr!important;
}

.page-settings .account-card,
.page-settings .settings-card,
.page-settings .settings-status{
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

.page-settings .settings-status{
  padding:16px!important;
  border-radius:12px!important;
  background:#f7f4ef!important;
}

.page-settings .danger-link{
  width:100%;
  min-height:44px!important;
  border-radius:8px!important;
  background:#fffdfa!important;
}

.page-settings .settings-back{
  width:max-content;
  max-width:100%;
  min-height:42px!important;
  padding:0 18px!important;
  border-radius:8px!important;
}

.page-settings .account-back-button{
  justify-self:start;
  margin-top:2px;
}

@media (max-width:640px){
  .page-account.is-authenticated .account-dashboard-shell,
  .page-settings .account-dashboard-shell{
    width:min(430px,100% - 28px)!important;
  }

  .page-account.is-authenticated .account-metrics{
    grid-template-columns:1fr!important;
  }

  .page-account.is-authenticated .account-actions{
    grid-template-columns:1fr!important;
  }

  .page-account.is-authenticated .account-grid{
    gap:46px!important;
  }

  .page-account.is-authenticated .account-status-card h2,
  .page-account.is-authenticated .order-card h2{
    font-size:54px!important;
  }

  .page-account.is-authenticated .account-status-card > p{
    font-size:16px!important;
  }

  .page-account.is-authenticated .order-row{
    grid-template-columns:1fr auto 1fr;
    gap:10px;
  }

  .page-account.is-authenticated .order-row span{
    font-size:33px;
  }

  .page-account.is-authenticated .order-row strong,
  .page-account.is-authenticated .order-row small{
    font-size:15px;
  }
}

.page-account.is-authenticated .account-dashboard-shell{
  width:min(560px,100% - 48px)!important;
}

.page-account.is-authenticated .page-hero{
  padding:28px 0 12px!important;
}

.page-account.is-authenticated .page-hero h1{
  max-width:360px!important;
  margin-top:10px!important;
  font-size:34px!important;
  line-height:.96!important;
}

.page-account.is-authenticated .page-hero p{
  max-width:320px!important;
  margin-top:12px!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.page-account.is-authenticated .account-grid{
  gap:38px!important;
  padding-bottom:48px!important;
}

.page-account.is-authenticated .account-metric{
  gap:10px!important;
  padding-bottom:18px!important;
  margin-bottom:18px!important;
}

.page-account.is-authenticated .account-metric span,
.page-account.is-authenticated .account-card-kicker{
  font-size:9px!important;
  font-weight:500!important;
  letter-spacing:.15em!important;
}

.page-account.is-authenticated .account-metric strong{
  font-size:23px!important;
  font-weight:500!important;
}

.page-account.is-authenticated .points-metric small{
  margin-top:-4px!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.page-account.is-authenticated .account-status-card{
  gap:12px!important;
}

.page-account.is-authenticated .account-status-card h2,
.page-account.is-authenticated .order-card h2{
  font-size:32px!important;
  line-height:1!important;
}

.page-account.is-authenticated .account-status-card .status-pill{
  min-height:32px!important;
  padding:0 14px!important;
  font-size:9px!important;
  letter-spacing:.13em!important;
}

.page-account.is-authenticated .account-status-card > p{
  max-width:340px!important;
  font-size:12px!important;
  line-height:1.65!important;
}

.page-account.is-authenticated [data-account-email]{
  margin-top:3px!important;
}

.page-account.is-authenticated .account-actions{
  margin-top:14px!important;
}

.page-account.is-authenticated .account-action-row{
  min-height:54px!important;
  grid-template-columns:30px 1fr 18px!important;
  gap:12px!important;
  font-size:15px!important;
}

.page-account.is-authenticated .account-action-row svg{
  width:20px!important;
  height:20px!important;
  stroke-width:1.55!important;
}

.page-account.is-authenticated .account-action-row i,
.page-account.is-authenticated .account-order-link i{
  width:9px!important;
  height:9px!important;
  border-width:1.6px!important;
}

.page-account.is-authenticated .order-card{
  gap:16px!important;
}

.page-account.is-authenticated .order-row{
  gap:10px!important;
  padding-bottom:22px!important;
}

.page-account.is-authenticated .order-row strong,
.page-account.is-authenticated .order-row small{
  font-size:12px!important;
}

.page-account.is-authenticated .order-row span{
  font-size:24px!important;
  font-weight:400!important;
}

.page-account.is-authenticated .order-row p{
  margin:-8px 0 0!important;
  font-size:12px!important;
}

.page-account.is-authenticated .account-order-link{
  min-height:42px!important;
  grid-template-columns:1fr 18px!important;
  font-size:13px!important;
}

.page-account.is-authenticated .order-card .empty-state{
  gap:5px!important;
  padding-bottom:18px!important;
}

.page-account.is-authenticated .order-card .empty-state span{
  font-size:15px!important;
  font-weight:400!important;
}

.page-account.is-authenticated .order-card .empty-state p{
  font-size:12px!important;
}

@media (max-width:640px){
  .page-account.is-authenticated .account-dashboard-shell{
    width:min(430px,100% - 46px)!important;
  }

  .page-account.is-authenticated .page-hero h1{
    font-size:32px!important;
  }

  .page-account.is-authenticated .account-metric strong{
    font-size:22px!important;
  }
}

.cart-screen{
  padding-bottom:34px;
}

.cart-layout{
  width:100%;
  padding-inline:0!important;
  padding-bottom:72px!important;
}

.cart-list,
.cart-summary{
  width:100%;
}

.empty-cart{
  display:grid;
  justify-items:start;
  gap:10px;
  padding:28px 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.empty-cart h2{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:34px;
  font-weight:500;
  line-height:1;
}

body:not(.cart-has-items) .cart-list{
  display:grid;
  place-items:center;
  width:100%;
}

body:not(.cart-has-items) .empty-cart{
  width:min(340px,100%);
  justify-items:center!important;
  text-align:center;
  gap:12px;
  margin:0 auto!important;
  padding:clamp(34px,8vh,74px) 0!important;
}

body:not(.cart-has-items) .empty-cart h2,
body:not(.cart-has-items) .empty-cart p{
  text-align:center;
}

body:not(.cart-has-items) .empty-cart p{
  max-width:320px;
  margin-inline:auto;
}

body:not(.cart-has-items) .empty-cart .product-btn{
  justify-self:center;
  min-height:42px;
  padding-inline:24px;
}

.cart-item{
  padding-inline:2px!important;
}

.quantity-control.small input{
  color:#111!important;
  opacity:1!important;
  text-align:center!important;
}

.discount-row input{
  min-width:0;
}

.discount-row .product-btn{
  white-space:normal;
}

.cart-checkout{
  background:linear-gradient(135deg,#c9a962,#a98743)!important;
  border-color:#b89955!important;
  color:#111!important;
}

.cart-item .product-prices .new{
  color:var(--vs-gold)!important;
}

.cart-item .cart-actions{
  width:100%;
  max-width:182px;
  align-items:center!important;
  justify-content:flex-start;
  gap:0;
}

.cart-item .quantity-control.small{
  width:132px;
  min-width:132px;
  grid-template-columns:36px minmax(60px,1fr) 36px;
  overflow:hidden;
  border:1px solid rgba(9,11,12,.14);
  border-radius:999px;
  background:transparent;
}

.cart-item .quantity-control.small button,
.cart-item .quantity-value,
.cart-item .quantity-control.small input{
  min-height:36px;
  border:0;
  background:transparent;
  color:#111!important;
  font-size:14px;
  line-height:1;
}

.cart-item .quantity-control.small button{
  display:grid;
  place-items:center;
  color:#6f6a62!important;
  font-size:17px;
  font-weight:400;
}

.cart-item .quantity-value{
  display:flex;
  align-items:center;
  justify-content:center;
  border-inline:0;
}

.cart-item .quantity-value::after{
  content:"st";
  margin-left:3px;
  color:#111;
  font-size:14px;
  font-weight:700;
  line-height:1;
}

.cart-item .quantity-control.small input{
  appearance:textfield;
  -moz-appearance:textfield;
  width:2.2ch;
  min-width:2.2ch;
  min-height:36px;
  padding:0;
  border:0;
  font-weight:700;
  opacity:1!important;
  text-align:center!important;
}

.cart-item .quantity-control.small input::-webkit-outer-spin-button,
.cart-item .quantity-control.small input::-webkit-inner-spin-button{
  margin:0;
  appearance:none;
  -webkit-appearance:none;
}

.cart-item .cart-actions .remove-btn{
  width:36px;
  min-width:36px;
  height:36px;
  min-height:36px;
  margin-left:10px;
  display:grid;
  place-items:center;
  align-self:center;
  border:0;
  border-left:1px solid rgba(9,11,12,.12);
  border-radius:0;
  background:transparent;
  color:#7b756d;
  line-height:1;
}

.cart-item .cart-actions .remove-btn::before{
  content:none;
}

.cart-item .cart-actions .remove-btn svg{
  width:16px;
  height:16px;
  display:block;
  transform:translateY(1px);
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}

.category-lock-card .badge{
  width:64px!important;
  height:64px!important;
}

.category-lock-card .badge::before{
  width:22px!important;
  height:18px!important;
  left:50%!important;
  top:31px!important;
  border-width:2px!important;
  border-radius:5px!important;
  transform:translateX(-50%)!important;
}

.category-lock-card .badge::after{
  left:50%!important;
  top:17px!important;
  width:20px!important;
  height:20px!important;
  border-width:2px!important;
  border-radius:14px 14px 0 0!important;
  transform:translateX(-50%)!important;
}

.category-lock-popover.is-required .category-lock-card .badge::after{
  top:16px!important;
}

.contact-card,
.contact-prep-card{
  display:grid;
  gap:16px;
}

.contact-form{
  gap:12px!important;
}

.contact-form textarea{
  min-height:140px;
  padding-top:14px!important;
  border-radius:12px!important;
}

.contact-form .product-btn{
  background:linear-gradient(135deg,#c9a962,#a98743)!important;
  border-color:#b89955!important;
  color:#111!important;
}

.site-footer-brand p{
  display:none!important;
}

.footer-org-number span{
  color:#77736b;
  font-size:12px;
}

.detail-saving:empty{
  display:none!important;
}

.footer-payment-row span{
  border-color:rgba(9,11,12,.12)!important;
  background:#f7f4ef!important;
  color:#4d4a43!important;
}

.page-support .legal-section{
  width:min(430px,100% - 32px)!important;
  margin:0 auto!important;
  padding:0 0 54px!important;
  display:grid;
  gap:18px;
}

.page-support .legal-card{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.page-support .legal-card h2{
  font-size:34px!important;
}

.page-support .legal-card p{
  font-size:14px!important;
  line-height:1.55!important;
}

.page-footer-info .page-hero{
  width:min(560px,100% - 48px)!important;
  margin-inline:auto!important;
  padding:34px 0 12px!important;
}

.page-footer-info .page-hero-content{
  max-width:430px!important;
}

.page-footer-info .badge,
.page-footer-info .eyebrow{
  margin-bottom:12px!important;
  color:#77736b!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.18em!important;
}

.page-footer-info .badge{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.page-footer-info .page-hero h1{
  max-width:390px!important;
  margin:0!important;
  font-size:30px!important;
  font-weight:400!important;
  line-height:1!important;
}

.page-footer-info .page-hero p{
  max-width:360px!important;
  margin-top:14px!important;
  color:#77736b!important;
  font-size:13px!important;
  line-height:1.6!important;
}

.footer-info-list{
  width:min(560px,100% - 48px)!important;
  margin:0 auto!important;
  padding:18px 0 62px!important;
}

.footer-info-row{
  display:grid;
  gap:8px;
  padding:22px 0;
  border-bottom:1px solid rgba(9,11,12,.1);
  background:transparent!important;
  box-shadow:none!important;
}

.footer-info-row:first-child{
  border-top:1px solid rgba(9,11,12,.1);
}

.footer-info-row h2{
  margin:0!important;
  color:#111!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:300!important;
  line-height:1.25!important;
  letter-spacing:0!important;
}

.footer-info-row p{
  max-width:440px;
  margin:0!important;
  color:#77736b!important;
  font-size:13px!important;
  line-height:1.65!important;
}

.footer-info-row a{
  color:#111!important;
  text-underline-offset:3px;
}

.contact-info-list{
  gap:0!important;
}

.contact-card{
  gap:16px!important;
}

.contact-card .member-form{
  width:100%;
}

.contact-card input,
.contact-card select,
.contact-card textarea{
  border-radius:12px!important;
  font-size:13px!important;
}

.contact-card .product-btn{
  width:100%;
  min-height:48px!important;
  border-radius:999px!important;
  font-size:13px!important;
}

.support-login-lock,
.support-sent-card{
  display:grid;
  gap:10px;
  padding:16px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:12px;
  background:#fffdfa;
}

.support-sent-card .product-btn{
  width:max-content!important;
  min-height:40px!important;
  padding:0 18px!important;
  border:1px solid #a98743!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#7b5f22!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:500!important;
}

.support-page-back{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  margin:20px 0 0;
  border:1px solid rgba(9,11,12,.1);
  border-radius:50%;
  background:#fffdfa;
  color:#111;
}

.page-footer-info .support-page-back,
.support-chat-shell .support-page-back{
  margin-left:0;
}

.page-footer-info main > .support-page-back{
  margin-left:calc((100% - min(560px,100% - 48px)) / 2);
}

.support-page-back::before{
  content:"";
  width:10px;
  height:10px;
  border-left:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:rotate(45deg) translate(1px,-1px);
}

.support-login-lock strong,
.support-sent-card strong{
  color:#111;
  font-size:15px;
  font-weight:500;
  line-height:1.3;
}

.support-login-lock p,
.support-sent-card p{
  max-width:390px!important;
  color:#77736b!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.contact-form.is-locked{
  position:relative;
  opacity:.42;
  filter:grayscale(1);
  pointer-events:none;
  user-select:none;
}

.page-account.is-authenticated .account-support-card{
  display:grid;
  gap:13px!important;
}

.page-account.is-authenticated .account-support-card h2{
  margin:0!important;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:32px!important;
  font-weight:500!important;
  line-height:1!important;
}

.page-account.is-authenticated .account-support-card > p{
  margin:0!important;
  color:#77736b!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.account-support-preview{
  display:grid;
  gap:0;
  margin-top:5px;
  border-top:1px solid rgba(9,11,12,.1);
}

.account-support-row{
  min-height:74px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  padding:14px 0;
  border-bottom:1px solid rgba(9,11,12,.1);
  color:#111;
}

.account-support-row span{
  min-width:0;
  display:grid;
  gap:5px;
}

.account-support-row strong{
  overflow:hidden;
  color:#111;
  font-size:15px;
  font-weight:500;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.account-support-row small{
  overflow:hidden;
  color:#77736b;
  font-size:11px;
  line-height:1.35;
}

.account-support-meta,
.support-chat-meta{
  display:flex!important;
  align-items:center;
  gap:7px!important;
  min-width:0;
  white-space:nowrap;
}

.account-support-meta b,
.support-chat-meta b{
  color:#77736b;
  font-weight:400;
}

.account-support-latest,
.support-chat-latest{
  display:-webkit-box!important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  text-overflow:ellipsis;
  white-space:normal!important;
  overflow:hidden!important;
}

.support-chat-image-preview{
  display:flex!important;
  align-items:center;
  gap:8px!important;
  min-width:0;
}

.support-chat-image-preview img{
  width:42px;
  height:42px;
  flex:0 0 auto;
  object-fit:cover;
  border-radius:9px;
}

.support-chat-image-preview small{
  min-width:0;
  overflow:hidden;
  color:#77736b;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.account-support-action,
.support-chat-card-action{
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:8px!important;
  min-width:max-content!important;
}

.account-support-row em,
.support-chat-list-item em{
  position:relative;
  padding:6px 9px;
  border:1px solid rgba(38,138,82,.28);
  border-radius:999px;
  color:#376749;
  background:rgba(67,170,105,.06);
  font-size:9px;
  font-style:normal;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 0 0 0 rgba(55,153,89,.22);
  animation:supportStatusPulse 2.4s ease-in-out infinite;
}

.account-support-row i,
.support-chat-card-action i{
  width:9px;
  height:9px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(-45deg);
}

@keyframes supportStatusPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(55,153,89,.16)}
  50%{box-shadow:0 0 0 4px rgba(55,153,89,0)}
}

.account-support-all{
  justify-self:start;
  margin-top:4px;
  color:#111;
  font-size:12px;
  text-underline-offset:4px;
}

.support-chat-shell{
  width:min(920px,100% - 48px);
  margin:0 auto;
  padding-bottom:64px;
}

.support-chat-layout{
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  gap:18px;
}

.support-chat-layout.is-login-only{
  grid-template-columns:minmax(280px,420px);
}

.support-chat-layout.is-list-only,
.support-chat-layout.is-detail{
  grid-template-columns:1fr;
}

.support-chat-list,
.support-chat-panel{
  min-width:0;
  border:1px solid rgba(9,11,12,.1);
  border-radius:14px;
  background:#fffdfa;
}

.support-chat-list{
  align-self:start;
  overflow:hidden;
}

.support-chat-layout.is-list-only .support-chat-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  border:0;
  border-radius:0;
  background:transparent;
}

.support-chat-list-item{
  width:100%;
  min-height:84px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 10px;
  align-items:start;
  padding:14px;
  border:0;
  border-bottom:1px solid rgba(9,11,12,.08);
  background:transparent;
  color:#111;
  text-align:left;
}

.support-chat-layout.is-list-only .support-chat-list-item{
  min-height:138px;
  align-content:space-between;
  padding:18px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:14px;
  background:#fffdfa;
}

.support-chat-list-item.active,
.support-chat-list-item:hover{
  background:#f7f4ef;
}

.support-chat-list-item span{
  min-width:0;
  display:grid;
  gap:5px;
}

.support-chat-list-item strong{
  overflow:hidden;
  font-size:13px;
  font-weight:500;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.support-chat-list-item small{
  overflow:hidden;
  color:#77736b;
  font-size:11px;
  line-height:1.35;
}

.support-chat-panel{
  min-height:620px;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
}

.support-chat-header{
  min-height:78px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  border-bottom:1px solid rgba(9,11,12,.08);
}

.support-chat-back{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(9,11,12,.1);
  border-radius:50%;
  background:transparent;
  color:#111;
}

.support-chat-back::before{
  content:"";
  width:10px;
  height:10px;
  border-left:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:rotate(45deg) translate(1px,-1px);
}

.support-chat-header small{
  color:#77736b;
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.support-chat-header h2{
  margin:3px 0 0;
  overflow:hidden;
  color:#111;
  font-size:17px;
  font-weight:500;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.support-chat-header span{
  padding:7px 10px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:999px;
  color:#56524b;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.support-chat-messages{
  display:flex;
  flex-direction:column;
  gap:12px;
  overflow:auto;
  padding:18px;
  background:#f7f4ef;
}

.support-message{
  max-width:78%;
  display:grid;
  gap:4px;
}

.support-message.mine{
  align-self:end;
  justify-items:end;
}

.support-message.theirs{
  align-self:start;
  justify-items:start;
}

.support-message-bubble{
  display:grid;
  gap:8px;
  padding:11px 13px;
  border-radius:18px;
  background:#fffdfa;
  color:#111;
  box-shadow:0 8px 26px rgba(9,11,12,.05);
}

.support-message.mine .support-message-bubble{
  background:#fffdfa;
  color:#111;
}

.support-message-bubble p{
  margin:0;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  font-size:13px;
  line-height:1.45;
}

.support-message-bubble img{
  display:block;
  max-width:min(260px,62vw);
  border-radius:12px;
}

.support-message time{
  color:#88837b;
  font-size:10px;
}

.support-chat-composer{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:8px;
  align-items:end;
  padding:12px;
  border-top:1px solid rgba(9,11,12,.08);
  background:#fffdfa;
}

.support-chat-composer textarea{
  min-height:38px;
  max-height:120px;
  resize:vertical;
  padding:10px 12px!important;
  border:1px solid rgba(9,11,12,.12)!important;
  border-radius:18px!important;
  background:#f7f4ef!important;
  color:#111!important;
  font-size:13px!important;
}

.support-attach-button{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(9,11,12,.12);
  border-radius:50%;
  color:#111;
  cursor:pointer;
}

.support-attach-button span{
  font-size:23px;
  font-weight:300;
  line-height:1;
}

.support-chat-composer button{
  min-height:38px;
  padding:0 15px;
  border:0;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:12px;
  font-weight:500;
}

.support-chat-composer small{
  grid-column:2 / -1;
  min-height:14px;
  color:#77736b;
  font-size:11px;
}

.support-chat-composer small.is-error{
  color:#a63636;
  font-weight:500;
}

.support-attachment-preview{
  grid-column:2 / -1;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  padding:7px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:12px;
  background:#f7f4ef;
}

.support-attachment-preview img{
  width:42px;
  height:42px;
  flex:0 0 auto;
  object-fit:cover;
  border-radius:9px;
}

.support-attachment-preview span{
  min-width:0;
  overflow:hidden;
  color:#77736b;
  font-size:11px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.support-chat-empty,
.support-chat-closed{
  display:grid;
  gap:10px;
  align-content:center;
  padding:18px;
  color:#77736b;
  font-size:13px;
  line-height:1.55;
}

.support-chat-empty strong{
  color:#111;
  font-size:15px;
  font-weight:500;
}

@media (max-width:760px){
  .account-support-row{
    grid-template-columns:minmax(0,1fr) auto 14px;
  }

  .account-support-row time{
    grid-column:1 / -1;
  }

  .support-chat-shell{
    width:min(430px,100% - 28px);
  }

  .support-chat-layout{
    grid-template-columns:1fr;
  }

  .support-chat-layout.is-list-only .support-chat-list{
    grid-template-columns:1fr;
  }

  .support-chat-panel{
    min-height:70svh;
  }

  .support-chat-layout:not(.is-list-only) .support-chat-list{
    max-height:220px;
    overflow:auto;
  }
}

@media (max-width:640px){
  .page-footer-info .page-hero,
  .footer-info-list{
    width:min(100% - 34px,430px)!important;
  }

  .page-footer-info .page-hero{
    padding-top:28px!important;
  }

  .page-footer-info .page-hero h1{
    font-size:28px!important;
  }

  .footer-info-row{
    padding:20px 0;
  }

  .footer-info-row h2{
    font-size:14px!important;
  }
}

@media (min-width:700px){
  .product-buy-box{
    left:50%!important;
    right:auto!important;
    width:min(520px,calc(100% - 32px))!important;
    transform:translateX(-50%);
  }
}

@media (max-width:640px){
  .premium-hero-copy h1{
    max-width:320px!important;
    font-size:34px!important;
  }

  .premium-hero-copy p{
    max-width:295px!important;
  }

  .product-detail-info{
    padding-bottom:24px!important;
  }

  .pdp-card-row,
  .pdp-service-list ul{
    flex-wrap:wrap;
  }

  .membership-panel{
    gap:24px!important;
  }

  .membership-hero-plans{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .membership-card-visual{
    min-height:250px!important;
  }

  .cart-screen,
  .account-dashboard-shell{
    width:min(430px,100% - 28px)!important;
  }

  .cart-item{
    grid-template-columns:78px minmax(0,1fr)!important;
  }

  .cart-actions{
    align-items:flex-start!important;
  }

  .discount-row{
    grid-template-columns:1fr!important;
  }

  .legal-section{
    width:min(430px,100% - 28px)!important;
  }
}

/* Universal scroll stability: the viewport is the only vertical scroll owner. */
html{
  width:100%;
  max-width:100%;
  min-height:100%;
  height:auto!important;
  overflow-x:clip!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:none;
}

body{
  width:100%;
  max-width:100%;
  min-height:100svh;
  height:auto!important;
  overflow-x:clip!important;
  overflow-y:visible!important;
  overscroll-behavior-x:none;
}

body:not(.mobile-menu-open){
  touch-action:pan-y;
}

body:not(.mobile-menu-open) main,
body:not(.mobile-menu-open) .home-shell,
body:not(.mobile-menu-open) .premium-home,
body:not(.mobile-menu-open) .cart-screen,
body:not(.mobile-menu-open) .liked-shell,
body:not(.mobile-menu-open) .drops-screen,
body:not(.mobile-menu-open) .order-screen,
body:not(.mobile-menu-open) .account-dashboard-shell,
body:not(.mobile-menu-open) .product-detail-page,
body:not(.mobile-menu-open) .membership-page,
body:not(.mobile-menu-open) .page-hero,
body:not(.mobile-menu-open) .product-detail,
body:not(.mobile-menu-open) .cart-layout,
body:not(.mobile-menu-open) .account-grid,
body:not(.mobile-menu-open) .membership-hero,
body:not(.mobile-menu-open) .membership-value-proof,
body:not(.mobile-menu-open) .membership-compare,
body:not(.mobile-menu-open) .membership-faq,
body:not(.mobile-menu-open) .footer-info-list,
body:not(.mobile-menu-open) .legal-section,
body:not(.mobile-menu-open) .catalog-section,
body:not(.mobile-menu-open) .category-launch,
body:not(.mobile-menu-open) .pdp-information,
body:not(.mobile-menu-open) .related-products-section{
  max-width:100%;
  overflow-x:clip!important;
  overflow-y:visible!important;
  overscroll-behavior-x:none;
}

main img,
.product-image img,
.home-trending-image img,
.cart-item-image img,
.product-large-image img,
.product-thumb img,
.liked-product-image img,
.category-image-row img,
.membership-card-visual img{
  -webkit-user-drag:none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  user-select:none;
}

.membership-payment-panel{
  width:min(1080px, calc(100% - 32px));
  margin:18px auto 54px;
  display:grid;
  grid-template-columns:minmax(0, .85fr) minmax(320px, 1fr);
  gap:18px;
  align-items:start;
  border-top:1px solid rgba(15,15,15,.1);
  padding-top:26px;
}

.membership-payment-panel[hidden]{
  display:none;
}

.membership-payment-copy h2{
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(2rem, 5vw, 4.3rem);
  line-height:.95;
  margin:10px 0 14px;
  letter-spacing:0;
}

.membership-payment-copy p{
  max-width:430px;
  color:var(--muted);
  line-height:1.6;
  margin:0;
}

.membership-payment-card{
  background:var(--surface);
  border:1px solid rgba(15,15,15,.1);
  border-radius:8px;
  box-shadow:0 18px 46px rgba(18,18,18,.08);
  padding:18px;
}

.membership-payment-card>strong{
  display:block;
  font-size:.92rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:14px;
}

.membership-payment-card .stripe-element-shell{
  margin-bottom:14px;
}

.account-express-membership{
  display:grid;
  gap:16px!important;
}

.account-express-membership[hidden]{
  display:none!important;
}

.account-express-membership > p{
  max-width:520px;
}

.account-express-plans{
  margin-top:4px!important;
}

.account-membership-payment{
  grid-column:1 / -1;
  width:100%;
  margin:0 0 40px;
}

.account-express-active .account-grid{
  gap:18px!important;
}

.account-express-active .page-hero p,
.account-express-active .account-express-membership > .account-card-kicker,
.account-express-active .account-express-membership > h2,
.account-express-active .account-express-membership > p:not(.form-message){
  display:none!important;
}

.page-membership .premium-membership-hero{
  padding-bottom:clamp(13px,2vw,23px)!important;
}

.page-membership .membership-value-proof{
  padding-top:clamp(15px,2.5vw,29px)!important;
}

@media (max-width:760px){
  .membership-payment-panel{
    grid-template-columns:1fr;
    width:min(100% - 24px, 520px);
    margin-top:8px;
  }

  .membership-payment-card{
    padding:14px;
  }
}

@media (max-width:640px){
  .page-settings .account-dashboard-shell{
    width:min(430px,100% - 56px)!important;
  }

  .page-settings .page-hero{
    width:100%!important;
    margin:0!important;
  }

  .page-settings .settings-grid{
    width:100%!important;
    margin:0!important;
  }

  .page-settings .settings-status{
    box-sizing:border-box!important;
    width:100%!important;
    overflow:visible!important;
  }

  .page-settings .settings-status p{
    max-width:100%!important;
    overflow-wrap:break-word!important;
  }

  .account-express-plans{
    grid-template-columns:1fr!important;
  }

  .account-membership-payment{
    width:100%!important;
    margin-bottom:30px;
  }

  .page-membership .premium-membership-hero{
    padding-bottom:12px!important;
  }

  .page-membership .membership-value-proof{
    padding-top:16px!important;
  }
}

.product-card,
.home-trending-card,
.cart-item,
.liked-product-card,
.account-card,
.membership-panel,
.footer-info-row,
.legal-card{
  touch-action:pan-y;
}

html.mobile-menu-open,
body.mobile-menu-open{
  overflow:hidden!important;
  touch-action:none;
}

@supports not (overflow:clip){
  html,
  body:not(.mobile-menu-open) main,
  body:not(.mobile-menu-open) .home-shell,
  body:not(.mobile-menu-open) .premium-home,
  body:not(.mobile-menu-open) .cart-screen,
  body:not(.mobile-menu-open) .liked-shell,
  body:not(.mobile-menu-open) .drops-screen,
  body:not(.mobile-menu-open) .order-screen,
  body:not(.mobile-menu-open) .account-dashboard-shell,
  body:not(.mobile-menu-open) .product-detail-page,
  body:not(.mobile-menu-open) .membership-page,
  body:not(.mobile-menu-open) .page-hero,
  body:not(.mobile-menu-open) .product-detail,
  body:not(.mobile-menu-open) .cart-layout,
  body:not(.mobile-menu-open) .account-grid,
  body:not(.mobile-menu-open) .membership-hero,
  body:not(.mobile-menu-open) .membership-value-proof,
  body:not(.mobile-menu-open) .membership-compare,
  body:not(.mobile-menu-open) .membership-faq,
  body:not(.mobile-menu-open) .footer-info-list,
  body:not(.mobile-menu-open) .legal-section,
  body:not(.mobile-menu-open) .catalog-section,
  body:not(.mobile-menu-open) .category-launch,
  body:not(.mobile-menu-open) .pdp-information,
  body:not(.mobile-menu-open) .related-products-section{
    overflow-x:hidden!important;
  }

  body{
    overflow-x:hidden!important;
  }
}

.menu-link-stack .suggest-drop-link{
  position:relative;
  margin-left:16px;
  padding-inline:16px!important;
  border:1px solid rgba(180,149,84,.32)!important;
  background:
    radial-gradient(circle at 70% 35%,rgba(255,255,255,.72) 0 1.5px,transparent 2px),
    radial-gradient(circle at 84% 64%,rgba(180,149,84,.74) 0 1.4px,transparent 2px),
    linear-gradient(135deg,rgba(255,249,229,.92),rgba(250,241,210,.58))!important;
  background-size:100% 100%,100% 100%,100% 100%;
  color:#7f5c16!important;
  box-shadow:0 12px 28px rgba(144,106,34,.12), inset 0 1px 0 rgba(255,255,255,.78);
  animation:suggestDropDust 5.4s ease-in-out infinite;
}

.menu-link-stack .suggest-drop-link::before,
.menu-link-stack .suggest-drop-link::after,
.luxury-menu-links .suggest-drop-link::before{
  content:"";
  position:absolute;
  width:8px;
  height:8px;
  background:#b49554;
  clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);
  pointer-events:none;
  animation:suggestDropSpark 3.8s ease-in-out infinite;
}

.menu-link-stack .suggest-drop-link::before{
  left:calc(100% - 54px);
  top:8px;
  opacity:.82;
}

.menu-link-stack .suggest-drop-link::after{
  right:16px;
  bottom:8px;
  width:6px;
  height:6px;
  opacity:.66;
  animation-delay:1.2s;
}

.luxury-menu-links .suggest-drop-link{
  position:relative;
  margin-top:22px;
  padding:18px 16px!important;
  overflow:hidden;
  border:1px solid rgba(218,185,105,.36)!important;
  border-radius:14px;
  background:
    linear-gradient(135deg,rgba(117,82,21,.54),rgba(32,25,15,.34))!important;
  color:#f3d990!important;
  box-shadow:0 18px 46px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.12);
}

.luxury-menu-links .suggest-drop-link::before{
  left:74%;
  top:19px;
  background:#f1d58b;
  filter:drop-shadow(0 0 9px rgba(241,213,139,.55));
  animation-duration:3.2s;
}

.luxury-menu-links .suggest-drop-link::after{
  border-color:#f3d990!important;
}

.luxury-menu-links .suggest-drop-link span{
  position:relative;
  z-index:1;
}

.luxury-menu-links .suggest-drop-link span::before,
.luxury-menu-links .suggest-drop-link span::after{
  content:"";
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#f3d990;
  opacity:.76;
  pointer-events:none;
  box-shadow:
    28px -18px 0 rgba(243,217,144,.7),
    68px -8px 0 rgba(243,217,144,.48),
    116px 10px 0 rgba(243,217,144,.56),
    154px -12px 0 rgba(243,217,144,.44),
    186px 6px 0 rgba(243,217,144,.5);
  animation:suggestDropFloat 4.8s ease-in-out infinite;
}

.luxury-menu-links .suggest-drop-link span::before{
  left:calc(100% + 28px);
  top:46%;
}

.luxury-menu-links .suggest-drop-link span::after{
  left:calc(100% + 92px);
  top:15%;
  width:4px;
  height:4px;
  box-shadow:
    32px 20px 0 rgba(243,217,144,.6),
    76px 2px 0 rgba(243,217,144,.5),
    116px 25px 0 rgba(243,217,144,.46);
  animation-delay:1.4s;
}

@keyframes suggestDropDust{
  0%,
  100%{
    background-position:0 0,0 0,0 0;
  }

  50%{
    background-position:8px -6px,-10px 7px,0 0;
  }
}

@keyframes suggestDropSpark{
  0%,
  100%{
    opacity:.48;
    transform:translate3d(0,0,0) scale(.88) rotate(0deg);
  }

  45%{
    opacity:1;
    transform:translate3d(3px,-4px,0) scale(1.18) rotate(18deg);
  }

  72%{
    opacity:.7;
    transform:translate3d(-2px,2px,0) scale(.96) rotate(32deg);
  }
}

@keyframes suggestDropFloat{
  0%,
  100%{
    opacity:.44;
    transform:translate3d(0,0,0);
  }

  50%{
    opacity:.95;
    transform:translate3d(6px,-5px,0);
  }
}

@media (prefers-reduced-motion:reduce){
  .menu-link-stack .suggest-drop-link,
  .menu-link-stack .suggest-drop-link::before,
  .menu-link-stack .suggest-drop-link::after,
  .luxury-menu-links .suggest-drop-link,
  .luxury-menu-links .suggest-drop-link::before,
  .luxury-menu-links .suggest-drop-link span::before,
  .luxury-menu-links .suggest-drop-link span::after{
    animation:none!important;
  }
}

.page-suggest-drop .suggest-drop-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.page-suggest-drop .suggest-drop-hero::before{
  content:"";
  position:absolute;
  inset:8px -26px auto auto;
  width:170px;
  height:170px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(236,205,132,.2),rgba(236,205,132,0) 68%);
  z-index:-1;
}

.suggest-star-field{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.suggest-star-field span{
  position:absolute;
  width:11px;
  height:11px;
  background:#b49554;
  clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);
  filter:drop-shadow(0 0 8px rgba(180,149,84,.32));
}

.suggest-star-field span:nth-child(1){
  right:18%;
  top:18%;
}

.suggest-star-field span:nth-child(2){
  right:8%;
  top:52%;
  width:7px;
  height:7px;
  opacity:.72;
}

.suggest-star-field span:nth-child(3){
  left:2%;
  bottom:22%;
  width:8px;
  height:8px;
  opacity:.58;
}

.suggest-star-field span:nth-child(4){
  right:34%;
  bottom:16%;
  width:5px;
  height:5px;
  opacity:.7;
}

.page-suggest-drop .page-hero .badge{
  color:#8a661f!important;
}

.suggest-drop-list{
  position:relative;
}

.suggest-drop-list::before{
  content:"";
  position:absolute;
  left:50%;
  top:4px;
  width:min(280px,70vw);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(180,149,84,.46),transparent);
  transform:translateX(-50%);
}

.suggest-oracle-card,
.suggest-rhythm-row{
  position:relative;
}

.suggest-oracle-card::after,
.suggest-rhythm-row::after{
  content:"";
  position:absolute;
  right:4px;
  top:24px;
  width:7px;
  height:7px;
  background:#b49554;
  clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);
  opacity:.72;
}

.suggest-drop-card{
  margin-block:4px 2px;
  padding:24px 0!important;
}

.suggest-drop-card .member-form{
  gap:12px!important;
}

.suggest-drop-card .product-btn{
  background:
    radial-gradient(circle at 22% 22%,rgba(255,255,255,.5),transparent 18%),
    linear-gradient(135deg,#d6b76c,#a57b2c)!important;
  border-color:#b69245!important;
  color:#111!important;
  box-shadow:0 14px 32px rgba(138,102,31,.16)!important;
}

@media (max-width:980px){
  .menu-link-stack .suggest-drop-link{
    margin-left:0;
  }
}

@media (max-width:640px){
  .page-suggest-drop .suggest-drop-hero::before{
    right:-54px;
    top:4px;
  }

  .suggest-star-field span:nth-child(1){
    right:16%;
    top:14%;
  }

  .suggest-star-field span:nth-child(3){
    left:5%;
    bottom:18%;
  }
}

.page-suggest-drop{
  background:
    radial-gradient(circle at 76% 18%,rgba(224,200,154,.18),transparent 30rem),
    linear-gradient(180deg,#fffefa 0,#f7f4ef 100%)!important;
}

.suggest-drop-page{
  width:min(1120px,100% - 40px);
  margin:0 auto;
  padding:clamp(28px,5vw,58px) 0 72px;
}

.suggest-drop-stage{
  position:relative;
  min-height:clamp(280px,32vw,390px);
  display:flex;
  align-items:center;
}

.suggest-drop-copy{
  position:relative;
  z-index:2;
  display:grid;
  align-content:center;
  justify-items:start;
  gap:18px;
}

.suggest-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#9a762f;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.suggest-kicker i,
.suggest-drop-stage::before,
.suggest-drop-stage::after{
  width:13px;
  height:13px;
  background:#c29b4b;
  clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);
}

.suggest-kicker i{
  display:block;
}

.suggest-drop-stage::before,
.suggest-drop-stage::after{
  content:"";
  position:absolute;
  pointer-events:none;
  opacity:.72;
}

.suggest-drop-stage::before{
  right:3%;
  top:12%;
}

.suggest-drop-stage::after{
  right:4%;
  bottom:23%;
  width:20px;
  height:20px;
}

.suggest-drop-copy h1{
  max-width:470px;
  margin:0!important;
  color:#090909;
  font-size:clamp(48px,7vw,82px)!important;
  font-weight:400!important;
  line-height:.96!important;
}

.suggest-drop-copy p{
  max-width:390px;
  margin:0!important;
  color:#6f6a61!important;
  font-size:17px!important;
  line-height:1.75!important;
}

.suggest-form-shell{
  position:relative;
  width:min(860px,100%);
  margin:clamp(22px,4vw,42px) auto 0;
  padding:0;
}

.suggestion-form{
  display:grid;
  gap:28px;
}

.suggestion-form fieldset{
  min-width:0;
  display:grid;
  gap:14px;
  border:0;
}

.suggestion-form legend{
  margin-bottom:12px;
  color:#141414;
  font-size:16px;
  font-weight:700;
  line-height:1.2;
}

.suggest-field{
  min-height:74px;
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:16px;
  align-items:start;
  padding:20px 22px;
  border:1px solid rgba(16,17,17,.09);
  border-radius:18px;
  background:rgba(255,255,255,.62);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}

.suggest-field svg,
.suggest-category-grid svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:#1f2120;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.suggest-field span{
  min-width:0;
  display:grid;
  gap:6px;
}

.suggest-field strong{
  color:#595959;
  font-size:14px;
  font-weight:600;
  line-height:1.25;
}

.suggest-field input,
.suggest-field textarea{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#111!important;
  font-size:14px!important;
  line-height:1.45;
  outline:none;
}

.suggest-field input::placeholder,
.suggest-field textarea::placeholder{
  color:#9a9690;
  opacity:1;
}

.suggest-field-message{
  position:relative;
  min-height:160px;
}

.suggest-field-message textarea{
  min-height:84px!important;
  resize:vertical;
}

.suggest-field-message small{
  position:absolute;
  right:20px;
  bottom:16px;
  color:#9a9690;
  font-size:12px;
}

.suggest-field-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.suggest-category-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.suggest-category-grid label{
  min-width:0;
}

.suggest-category-grid input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.suggest-category-grid span{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 10px;
  border:1px solid rgba(16,17,17,.09);
  border-radius:18px;
  background:rgba(255,255,255,.6);
  color:#222;
  font-size:14px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  transition:border-color .2s ease, background .2s ease, color .2s ease;
}

.suggest-category-grid input:checked + span{
  border-color:rgba(170,130,62,.42);
  background:rgba(255,249,235,.72);
  color:#1b1710;
}

.suggest-submit{
  width:min(320px,100%);
  min-height:50px!important;
  justify-self:center;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
}

.suggest-lock-note{
  width:min(480px,100%);
  margin:0 auto 20px;
  display:grid;
  gap:4px;
  padding:14px 16px;
  border:1px solid rgba(170,130,62,.24);
  border-radius:16px;
  background:rgba(255,249,235,.72);
  text-align:center;
}

.suggest-lock-note strong{
  color:#1b1710;
  font-size:13px;
}

.suggest-lock-note span{
  color:#776f63;
  font-size:12px;
}

.page-suggest-drop.suggestion-locked .suggestion-form{
  position:relative;
  opacity:.58;
  filter:saturate(.55);
}

.page-suggest-drop.suggestion-locked .suggestion-form::after{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(247,244,239,.08),rgba(247,244,239,.42));
  pointer-events:auto;
}

.page-suggest-drop .category-lock-card .badge{
  color:transparent!important;
  font-size:0!important;
}

@media (max-width:820px){
  input,
  textarea,
  select{
    font-size:16px!important;
  }

  .suggest-drop-page{
    width:min(100% - 34px,520px);
    padding-top:26px;
  }

  .suggest-drop-stage{
    min-height:0;
    grid-template-columns:1fr;
    gap:8px;
    text-align:left;
  }

  .suggest-drop-copy{
    gap:14px;
  }

  .suggest-drop-copy h1{
    max-width:340px;
    font-size:48px!important;
  }

  .suggest-drop-copy p{
    max-width:315px;
    font-size:14px!important;
    line-height:1.65!important;
  }

  .suggest-form-shell{
    margin-top:16px;
  }

  .suggestion-form{
    gap:24px;
  }

  .suggest-field-row,
  .suggest-category-grid{
    grid-template-columns:1fr;
  }

  .suggest-category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .suggest-category-grid span{
    min-height:62px;
    justify-content:flex-start;
    padding-inline:14px;
  }
}

@media (max-width:420px){
  .suggest-drop-copy h1{
    font-size:42px!important;
  }

  .suggest-field{
    padding:18px 16px;
    border-radius:16px;
  }

  .suggest-category-grid span{
    font-size:13px;
  }
}

/* Order status page */
.page-order .order-screen{
  width:min(760px,100% - 32px);
}

.page-order .order-hero{
  padding:clamp(42px,8vw,86px) 0 26px!important;
}

.page-order .page-hero-content{
  display:grid;
  gap:12px;
}

.page-order .page-hero h1{
  max-width:560px!important;
  margin:0!important;
  color:#050505;
  font-family:var(--vs-font-serif);
  font-size:clamp(54px,14vw,92px)!important;
  font-weight:500!important;
  line-height:.88!important;
}

.page-order .page-hero p{
  max-width:440px!important;
  margin:0!important;
  color:#74716a!important;
  font-size:clamp(16px,4.8vw,22px)!important;
  line-height:1.5!important;
}

.page-order .section.compact{
  padding-top:22px;
}

.page-order .order-confirmation-panel{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

.order-detail-list{
  display:grid;
  gap:14px;
}

.order-detail-card{
  display:grid;
  gap:20px;
  padding:22px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:14px;
  background:#fffdfa;
}

.order-empty-card{
  display:grid;
  gap:12px;
  padding:22px;
  border:1px solid rgba(9,11,12,.1);
  border-radius:14px;
  background:#fffdfa;
}

.order-empty-card span{
  color:#74716a;
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.order-empty-card strong{
  color:#050505;
  font-family:var(--vs-font-serif);
  font-size:clamp(30px,8vw,46px);
  font-weight:500;
  line-height:.98;
}

.order-empty-card p{
  max-width:460px;
  margin:0!important;
  color:#77736b!important;
  font-size:14px!important;
  line-height:1.6!important;
}

.order-empty-card .account-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:8px;
}

.order-empty-card .product-btn{
  min-height:46px;
  border-radius:8px!important;
}

.order-detail-topline,
.order-detail-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:#74716a;
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  line-height:1.2;
  text-transform:uppercase;
}

.order-detail-topline strong{
  color:#111;
  font-size:11px;
  font-weight:500;
}

.order-detail-heading{
  display:grid;
  gap:5px;
}

.order-detail-heading h2{
  margin:0;
  color:#050505;
  font-family:var(--vs-font-serif);
  font-size:clamp(34px,8vw,54px);
  font-weight:500;
  line-height:.95;
}

.order-detail-heading p,
.order-detail-items{
  margin:0!important;
  color:#77736b!important;
  font-size:14px!important;
  line-height:1.6!important;
}

.order-detail-meta{
  justify-content:flex-start;
  padding-top:2px;
  text-transform:none;
  letter-spacing:0;
  font-size:14px;
}

.order-status-trail{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  list-style:none;
  padding:12px 0 4px;
}

.order-status-trail li{
  position:relative;
  display:grid;
  gap:8px;
  min-width:0;
  color:#aaa59b;
}

.order-status-trail li::before{
  content:"";
  position:absolute;
  top:6px;
  left:0;
  right:0;
  height:1px;
  background:rgba(9,11,12,.1);
  transform:translateX(-50%);
}

.order-status-trail li:first-child::before{
  display:none;
}

.order-status-trail li span{
  position:relative;
  z-index:1;
  width:13px;
  height:13px;
  border:1px solid rgba(9,11,12,.16);
  border-radius:50%;
  background:#fffdfa;
}

.order-status-trail li.is-complete{
  color:#111;
}

.order-status-trail li.is-complete::before{
  background:#111;
}

.order-status-trail li.is-complete span{
  border-color:#111;
  background:#111;
}

.order-status-trail li.is-current span{
  box-shadow:0 0 0 5px rgba(9,11,12,.06);
}

.order-status-trail strong{
  max-width:92px;
  color:currentColor;
  font-size:10px;
  font-weight:500;
  letter-spacing:.08em;
  line-height:1.25;
  text-transform:uppercase;
}

.order-detail-link{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  border:1px solid #111;
  border-radius:8px;
  color:#111;
  font-size:13px;
  font-weight:500;
}

@media(max-width:640px){
  .page-order .order-screen{
    width:min(430px,100% - 32px);
  }

  .page-order .order-hero{
    padding:38px 0 18px!important;
  }

  .page-order .page-hero h1{
    font-size:48px!important;
  }

  .page-order .page-hero p{
    font-size:16px!important;
  }

  .order-detail-card{
    padding:18px;
    gap:18px;
    border-radius:12px;
  }

  .order-empty-card{
    padding:18px;
    border-radius:12px;
  }

  .order-empty-card .account-actions{
    grid-template-columns:1fr;
  }

  .order-detail-heading h2{
    font-size:32px;
  }

  .order-status-trail strong{
    max-width:70px;
    font-size:8px;
    letter-spacing:.06em;
  }
}

/* Homepage hero mockup stack: products sit as one premium studio group. */
.page-home .premium-hero{
  isolation:isolate;
}

.page-home main .premium-hero .mobile-hero-visual{
  background:
    radial-gradient(ellipse at 70% 78%,rgba(8,9,9,.16),rgba(8,9,9,0) 29%),
    linear-gradient(180deg,rgba(255,255,255,0) 0%,#fff 34%,#fff 100%)!important;
}

.page-home .mobile-hero-visual::after{
  z-index:1;
  left:38%!important;
  right:6%!important;
  bottom:7%!important;
  height:20%!important;
  background:rgba(255,255,255,.98)!important;
  filter:blur(3px)!important;
}

.page-home .mobile-hero-product{
  filter:drop-shadow(0 20px 16px rgba(8,9,9,.16))!important;
  transform-origin:50% 88%;
}

.page-home .mobile-hero-product-back{
  display:block!important;
  z-index:2!important;
  left:auto!important;
  right:18%!important;
  top:auto!important;
  bottom:20%!important;
  width:26%!important;
  transform:rotate(4deg)!important;
}

.page-home .mobile-hero-product-right{
  display:none!important;
}

.page-home .mobile-hero-product-pear{
  display:block!important;
  z-index:4!important;
  right:8%!important;
  bottom:7%!important;
  width:38%!important;
  transform:rotate(2deg)!important;
  filter:drop-shadow(0 24px 17px rgba(8,9,9,.18))!important;
}

.page-home .mobile-hero-product-left{
  display:block!important;
  z-index:5!important;
  left:42%!important;
  bottom:8%!important;
  width:24%!important;
  transform:rotate(-2deg)!important;
  filter:drop-shadow(0 25px 17px rgba(8,9,9,.18))!important;
}

@media (max-width:640px){
  .page-home .premium-hero{
    min-height:724px!important;
  }

  .page-home .premium-hero-copy{
    position:relative!important;
    z-index:6!important;
    padding-top:88px!important;
  }

  .page-home .premium-hero-copy h1{
    max-width:310px!important;
    font-size:39px!important;
    line-height:.96!important;
  }

  .page-home .premium-hero-copy p{
    max-width:300px!important;
    font-size:15px!important;
    line-height:1.38!important;
  }

  .page-home .hero-actions .cta{
    min-height:42px;
    padding:0 22px;
    font-size:14px;
  }

  .page-home .hero-drop-clock{
    position:absolute!important;
    left:24px!important;
    top:548px!important;
    bottom:auto!important;
    z-index:7!important;
    width:164px;
    margin:0!important;
  }

  .page-home .hero-drop-clock span,
  .page-home .hero-drop-clock small{
    font-size:14px;
    letter-spacing:.03em;
    text-transform:none;
  }

  .page-home .hero-drop-clock strong{
    margin-top:12px;
    font-size:33px!important;
    letter-spacing:.06em;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    position:absolute!important;
    inset:auto 0 -8px!important;
    height:370px!important;
    margin:0!important;
    overflow:visible!important;
  }

  .page-home .mobile-hero-product-back{
    right:12%!important;
    bottom:34%!important;
    width:31%!important;
  }

  .page-home .mobile-hero-product-pear{
    right:0!important;
    bottom:16%!important;
    width:47%!important;
  }

  .page-home .mobile-hero-product-left{
    left:38%!important;
    bottom:16%!important;
    width:31%!important;
  }

  .page-home .product-showcase{
    padding-top:42px!important;
  }
}

@media (max-width:380px){
  .page-home .premium-hero-copy h1{
    font-size:41px!important;
  }

  .page-home .premium-hero-copy p{
    font-size:16px!important;
  }

  .page-home .mobile-hero-product-pear{
    right:7%!important;
    width:40%!important;
  }
}

@media (min-width:981px){
  .page-home main .premium-hero .mobile-hero-visual{
    min-height:690px;
  }

  .page-home .mobile-hero-product-back{
    right:12%!important;
    bottom:30%!important;
    width:24%!important;
  }

  .page-home .mobile-hero-product-pear{
    right:0!important;
    bottom:18%!important;
    width:36%!important;
  }

  .page-home .mobile-hero-product-left{
    left:34%!important;
    bottom:18%!important;
    width:24%!important;
  }
}

/* Hero campaign crop: let the products behave like the lower-half image. */
.page-home .premium-hero-copy{
  background:transparent!important;
}

.page-home main .premium-hero .mobile-hero-visual{
  background:transparent!important;
}

.page-home .mobile-hero-visual::after{
  content:none!important;
}

@media (max-width:640px){
  .page-home main .premium-hero .mobile-hero-visual{
    inset:auto -22px -36px!important;
    height:405px!important;
    background:transparent!important;
  }

  .page-home .mobile-hero-visual::after{
    content:none!important;
  }

  .page-home .mobile-hero-product-back{
    right:2%!important;
    bottom:27%!important;
    width:27%!important;
    transform:rotate(6deg)!important;
    z-index:2!important;
  }

  .page-home .mobile-hero-product-pear{
    right:-12%!important;
    bottom:8%!important;
    width:47%!important;
    transform:rotate(3deg)!important;
    filter:drop-shadow(0 28px 18px rgba(8,9,9,.2))!important;
  }

  .page-home .mobile-hero-product-left{
    left:39%!important;
    bottom:9%!important;
    width:28%!important;
    transform:rotate(-5deg)!important;
    filter:drop-shadow(0 28px 18px rgba(8,9,9,.19))!important;
  }

  .page-home .mobile-hero-product-main{
    display:block!important;
    left:-11%!important;
    bottom:0!important;
    width:29%!important;
    z-index:1!important;
    opacity:.76!important;
    filter:blur(2.5px) drop-shadow(0 24px 18px rgba(8,9,9,.13))!important;
    transform:rotate(-11deg)!important;
  }
}

@media (min-width:981px){
  .page-home main .premium-hero .mobile-hero-visual{
    overflow:visible!important;
  }

  .page-home .mobile-hero-product-back{
    right:4%!important;
    bottom:28%!important;
    width:30%!important;
  }

  .page-home .mobile-hero-product-pear{
    right:-13%!important;
    bottom:15%!important;
    width:46%!important;
  }

  .page-home .mobile-hero-product-left{
    left:28%!important;
    bottom:16%!important;
    width:30%!important;
  }
}

/* Mobile hero cutout: use the supplied product image without its dark background. */
.page-home .hero-campaign-cutout{
  display:block;
  pointer-events:none;
  -webkit-user-drag:none;
  user-select:none;
}

@media (max-width:640px){
  .page-home .premium-hero{
    min-height:735px!important;
    background:#fff!important;
    overflow:hidden!important;
  }

  .page-home .premium-hero-copy{
    position:relative!important;
    z-index:4!important;
    padding-top:86px!important;
    background:transparent!important;
  }

  .page-home .premium-hero-copy h1{
    max-width:330px!important;
    font-size:43px!important;
    line-height:.95!important;
  }

  .page-home .premium-hero-copy .hero-title-line{
    display:block;
    white-space:nowrap;
  }

  .page-home .premium-hero-copy p{
    max-width:300px!important;
    margin-top:24px!important;
    margin-bottom:22px!important;
    font-size:16px!important;
    line-height:1.36!important;
  }

  .page-home .hero-actions .cta{
    min-height:44px!important;
    padding:0 24px!important;
    font-size:15px!important;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    position:absolute!important;
    inset:auto -10px -8px!important;
    z-index:2!important;
    display:block!important;
    height:430px!important;
    margin:0!important;
    overflow:visible!important;
    background:transparent!important;
  }

  .page-home main .premium-hero .mobile-hero-visual::before{
    content:""!important;
    position:absolute;
    z-index:2;
    inset:-10px 10px auto;
    height:46px;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.58) 58%,rgba(255,255,255,0) 100%);
    pointer-events:none;
  }

  .page-home main .premium-hero .mobile-hero-visual::after,
  .page-home main .premium-hero .mobile-hero-visual > span,
  .page-home .mobile-hero-product{
    display:none!important;
    content:none!important;
  }

  .page-home .hero-campaign-cutout{
    position:absolute;
    left:50%;
    bottom:-6px;
    width:105%;
    max-width:none;
    height:auto;
    transform:translateX(-50%);
    filter:drop-shadow(0 24px 18px rgba(8,9,9,.13));
  }

  .page-home .product-showcase{
    padding-top:34px!important;
  }
}

@media (max-width:380px){
  .page-home .premium-hero-copy h1{
    font-size:40px!important;
  }

  .page-home .premium-hero-copy p{
    font-size:15px!important;
  }

  .page-home .hero-campaign-cutout{
    width:110%;
  }
}

/* Beige hero blend: use the supplied full artwork and match the page around it. */
@media (max-width:640px){
  .page-home,
  .page-home main,
  .page-home .premium-home{
    background:#efe4d1!important;
  }

  .page-home .premium-hero{
    min-height:760px!important;
    background:
      linear-gradient(180deg,#fff 0%,#fff 42%,#f4ead9 61%,#eadbc4 100%)!important;
    overflow:hidden!important;
  }

  .page-home .premium-hero-copy{
    z-index:5!important;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.96) 72%,rgba(255,255,255,0) 100%)!important;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    inset:auto 0 0!important;
    height:452px!important;
    overflow:hidden!important;
    background:#eadbc4!important;
  }

  .page-home main .premium-hero .mobile-hero-visual::before{
    content:""!important;
    position:absolute;
    z-index:2;
    inset:0 0 auto;
    height:58px;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.72) 42%,rgba(244,234,217,0) 100%);
    pointer-events:none;
  }

  .page-home main .premium-hero .mobile-hero-visual::after{
    content:none!important;
    display:none!important;
  }

  .page-home .hero-campaign-cutout{
    left:50%;
    bottom:-86px;
    width:108%;
    height:500px;
    object-fit:cover;
    object-position:50% 100%;
    transform:translateX(-50%);
    filter:none;
  }

  .page-home .product-showcase{
    background:#fff!important;
  }
}

@media (max-width:380px){
  .page-home .hero-campaign-cutout{
    width:112%;
    height:480px;
  }
}

/* Unify the homepage with the hero artwork tone. */
@media (max-width:640px){
  .page-home,
  .page-home body,
  body.page-home,
  .page-home main,
  .page-home .premium-home,
  .page-home .premium-hero,
  .page-home .product-showcase,
  .page-home .premium-trust-bar{
    background:#eadbc4!important;
  }

  .page-home .nav,
  .page-home .launch-nav{
    background:rgba(234,219,196,.96)!important;
    border-bottom-color:rgba(110,92,62,.12)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.18) inset!important;
  }

  .page-home .premium-hero{
    background:#eadbc4!important;
  }

  .page-home .premium-hero-copy{
    background:transparent!important;
    padding-top:44px!important;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    background:#eadbc4!important;
  }

  .page-home main .premium-hero .mobile-hero-visual::before{
    height:44px;
    background:linear-gradient(180deg,#eadbc4 0%,rgba(234,219,196,.7) 48%,rgba(234,219,196,0) 100%)!important;
  }

  .page-home .product-showcase{
    margin-top:0!important;
    padding-inline:24px!important;
  }

  .page-home .home-trending-card{
    background:#efe4d1!important;
    color:#080909!important;
  }

  .page-home .home-trending-image,
  .page-home .product-image{
    background:#efe4d1!important;
  }

  .page-home .product-showcase h2,
  .page-home .home-trending-copy strong,
  .page-home .home-trending-prices em{
    color:#080909!important;
  }

  .page-home .product-showcase .eyebrow,
  .page-home .section-heading-row a,
  .page-home .home-trending-vendor,
  .page-home .home-trending-prices del{
    color:#6f6d67!important;
  }
}

/* Return the page to Versen white; only the hero artwork carries the warm tone. */
@media (max-width:640px){
  .page-home,
  .page-home body,
  body.page-home,
  .page-home main,
  .page-home .premium-home,
  .page-home .product-showcase,
  .page-home .premium-trust-bar{
    background:#fff!important;
  }

  .page-home .nav,
  .page-home .launch-nav{
    background:rgba(255,255,255,.94)!important;
    border-bottom-color:rgba(9,11,12,.07)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.62) inset!important;
  }

  .page-home .premium-hero{
    min-height:820px!important;
    background:
      linear-gradient(180deg,#fff 0%,#fff 44%,#f2e7d9 60%,#f2e7d9 78%,#fff 100%)!important;
    overflow:hidden!important;
  }

  .page-home .premium-hero-copy{
    background:transparent!important;
    padding-top:26px!important;
  }

  .page-home main .premium-hero .mobile-hero-visual{
    inset:auto 0 0!important;
    height:520px!important;
    background:transparent!important;
    overflow:hidden!important;
  }

  .page-home main .premium-hero .mobile-hero-visual::before{
    content:""!important;
    position:absolute;
    z-index:2;
    inset:0 0 auto;
    height:164px;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.94) 22%,rgba(255,255,255,.68) 58%,rgba(242,231,217,0) 100%)!important;
    pointer-events:none;
  }

  .page-home main .premium-hero .mobile-hero-visual::after{
    content:none!important;
    display:none!important;
  }

  .page-home .hero-campaign-cutout{
    left:50%;
    bottom:-58px;
    width:112%;
    height:560px;
    object-fit:cover;
    object-position:50% 100%;
    transform:translateX(-50%);
    filter:none;
  }

  .page-home .product-showcase{
    margin-top:0!important;
    padding-inline:16px!important;
    background:#fff!important;
  }

  .page-home .home-trending-card,
  .page-products .product-card,
  .page-home .home-trending-image,
  .page-home .product-image,
  .page-products .product-image{
    background:#f6f5f1!important;
  }
}

@media (max-width:380px){
  .page-home .hero-campaign-cutout{
    width:116%;
    height:535px;
  }
}

/* Street-card entry: intentionally small, quiet, and only linked from the hero flow. */
.first-card-strip{
  position:relative;
  isolation:isolate;
  width:100%;
  min-height:58px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  padding:9px max(18px,calc((100vw - 1180px) / 2));
  border-top:1px solid rgba(9,11,12,.06);
  border-bottom:1px solid rgba(9,11,12,.08);
  background:
    linear-gradient(100deg,rgba(255,255,255,.95),rgba(246,244,238,.98) 45%,rgba(255,255,255,.94)),
    #fff;
  color:#111211;
  text-decoration:none;
  overflow:hidden;
}

.first-card-strip::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(115deg,transparent 0 34%,rgba(255,255,255,.86) 44%,transparent 56% 100%);
  transform:translateX(-64%);
  animation:first-card-sheen 4.8s ease-in-out infinite;
  pointer-events:none;
}

.first-card-strip-copy,
.first-card-strip-action{
  font-size:13px;
  font-weight:500;
  letter-spacing:.03em;
  white-space:nowrap;
}

.first-card-strip-copy{
  text-align:right;
}

.first-card-strip-action{
  color:#60645e;
  text-align:left;
}

.first-card-strip-card{
  position:relative;
  width:64px;
  height:36px;
  display:grid;
  align-content:space-between;
  padding:8px 9px;
  border:1px solid transparent;
  border-radius:5px;
  background:
    linear-gradient(118deg,rgba(255,255,255,.2),rgba(255,255,255,0) 34%) padding-box,
    linear-gradient(135deg,#171817 0%,#31322d 48%,#e9dec8 49%,#f8f0df 100%) padding-box,
    linear-gradient(135deg,#7b5b1f 0%,#f6e7b4 22%,#ad8432 43%,#fff4c8 62%,#8d6a26 100%) border-box;
  background-clip:padding-box,padding-box,border-box;
  box-shadow:0 10px 24px rgba(15,18,16,.14), inset 0 1px 0 rgba(255,255,255,.42), 0 0 0 1px rgba(255,244,200,.2);
  color:#fff;
  overflow:hidden;
}

.first-card-strip-card::after{
  content:"";
  position:absolute;
  inset:-30% -50%;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.54) 47%,transparent 58%);
  transform:translateX(-42%);
  animation:first-card-mini-sheen 3.2s ease-in-out infinite;
}

.first-card-strip-card span,
.first-card-strip-card strong{
  position:relative;
  z-index:1;
  line-height:1;
}

.first-card-strip-card span{
  font-size:7px;
  font-weight:500;
  letter-spacing:.22em;
  text-shadow:0 1px 2px rgba(0,0,0,.22);
}

.first-card-strip-card strong{
  color:#fff3d8;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-shadow:0 1px 3px rgba(0,0,0,.28);
}

.first-card-strip:hover,
.first-card-strip:focus-visible{
  color:#050605;
  background:#fff;
}

.first-versen-page{
  min-height:calc(100svh - var(--nav-height) - var(--top-strip-height));
  display:grid;
  place-items:start center;
  padding:clamp(24px,4vw,54px) max(16px,calc((100vw - 1180px) / 2)) clamp(64px,10vw,128px);
  background:
    radial-gradient(ellipse at 50% 0%,rgba(241,232,215,.88),rgba(255,255,255,0) 44%),
    #fff;
}

.first-versen-hero{
  width:min(760px,100%);
  text-align:center;
}

.first-versen-hero h1{
  max-width:620px;
  margin:14px auto 0;
  font-size:clamp(54px,9vw,96px);
  line-height:.9;
}

.first-versen-card{
  position:relative;
  width:min(300px,76vw);
  aspect-ratio:1.72;
  margin:34px auto 0;
  display:grid;
  align-content:space-between;
  padding:26px 28px;
  border:1.5px solid transparent;
  border-radius:12px;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.16),rgba(255,255,255,0) 30%) padding-box,
    linear-gradient(118deg,rgba(255,255,255,.22),rgba(255,255,255,0) 34%) padding-box,
    linear-gradient(135deg,#171817 0%,#31322d 48%,#e9dec8 49%,#f8f0df 100%) padding-box,
    linear-gradient(135deg,#6f5018 0%,#f8e8b1 18%,#ad8432 40%,#fff5ca 61%,#8b681f 100%) border-box;
  background-clip:padding-box,padding-box,padding-box,border-box;
  box-shadow:0 26px 60px rgba(15,18,16,.15), inset 0 1px 0 rgba(255,255,255,.44), inset 0 -1px 0 rgba(8,9,9,.1), 0 0 0 1px rgba(255,244,200,.18);
  color:#fff;
  overflow:hidden;
  transform:rotate(-1.4deg);
}

.first-versen-card::before{
  content:"";
  position:absolute;
  inset:auto 10% -22% 10%;
  height:32%;
  border-radius:50%;
  background:rgba(15,18,16,.18);
  filter:blur(18px);
}

.first-versen-card::after{
  content:"";
  position:absolute;
  inset:-24% -42%;
  background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.52) 47%,transparent 59%);
  transform:translateX(-48%);
  animation:first-card-mini-sheen 3.8s ease-in-out infinite;
}

.first-versen-card span,
.first-versen-card strong{
  position:relative;
  z-index:1;
  line-height:1;
}

.first-versen-card span{
  font-size:14px;
  font-weight:500;
  letter-spacing:.24em;
  text-shadow:0 1px 3px rgba(0,0,0,.24);
}

.first-versen-card strong{
  color:#fff3d8;
  font-size:36px;
  font-weight:700;
  letter-spacing:.08em;
  text-shadow:0 2px 8px rgba(0,0,0,.32);
}

.first-versen-points{
  width:min(620px,100%);
  margin:30px auto 0;
  padding:0;
  display:grid;
  gap:0;
  list-style:none;
  text-align:left;
}

.first-versen-offer{
  padding:14px 18px;
  border:1px solid rgba(174,139,78,.22);
  border-radius:12px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(250,247,239,.82)),
    #fff;
  box-shadow:0 18px 42px rgba(15,18,16,.06), inset 0 1px 0 rgba(255,255,255,.9);
}

.first-versen-offer-row{
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:68px;
  padding:10px 0;
}

.first-versen-offer-row + .first-versen-offer-row{
  border-top:1px solid rgba(156,114,36,.16);
}

.first-versen-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(174,139,78,.2);
  border-radius:50%;
  background:rgba(255,251,242,.72);
  color:#9d7426;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.first-versen-icon svg{
  width:22px;
  height:22px;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}

.first-versen-offer-copy{
  display:block;
  min-width:0;
  color:#111211;
  line-height:1.32;
}

.first-versen-offer-copy span{
  display:block;
}

.first-versen-offer-copy span:first-child{
  font-size:17px;
  font-weight:700;
  letter-spacing:-.01em;
}

.first-versen-offer-copy span:last-child{
  margin-top:4px;
  color:#66645f;
  font-size:14px;
  font-weight:500;
}

.first-versen-offer-copy strong{
  color:#9d7426;
  font-weight:700;
}

.first-versen-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:36px;
  padding:8px 18px;
  border:1px solid rgba(176,133,48,.44);
  border-radius:999px;
  background:linear-gradient(135deg,#9d7426,#c7a35a 52%,#8b651f);
  color:#fffaf0;
  font-size:13px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 10px 22px rgba(126,90,26,.18), inset 0 1px 0 rgba(255,255,255,.32);
}

.first-versen-cta svg{
  width:15px;
  height:15px;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}

.first-versen-cta:hover,
.first-versen-cta:focus-visible{
  color:#fff;
  transform:translateY(-1px);
}

.first-versen-proof{
  width:min(620px,100%);
  margin:20px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  color:#111211;
  text-align:left;
}

.first-versen-proof > span{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:0 14px;
}

.first-versen-proof > span + span{
  border-left:1px solid rgba(156,114,36,.16);
}

.first-versen-proof svg{
  width:30px;
  height:30px;
  padding:7px;
  border:1px solid rgba(174,139,78,.18);
  border-radius:50%;
  background:rgba(255,251,242,.72);
  color:#9d7426;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}

.first-versen-proof strong,
.first-versen-proof small{
  display:block;
  line-height:1.28;
}

.first-versen-proof strong{
  font-size:12px;
  font-weight:700;
}

.first-versen-proof small{
  margin-top:2px;
  color:#696862;
  font-size:11px;
  font-weight:500;
}

.first-versen-hero p{
  max-width:440px;
  margin:24px auto 0;
  color:#666b66;
  font-size:18px;
  line-height:1.5;
}

@keyframes first-card-sheen{
  0%,54%{transform:translateX(-68%);}
  72%,100%{transform:translateX(68%);}
}

@keyframes first-card-mini-sheen{
  0%,42%{transform:translateX(-54%);}
  68%,100%{transform:translateX(54%);}
}

@media (max-width:640px){
  .first-card-strip{
    min-height:56px;
    gap:8px;
    padding-inline:14px;
  }

  .first-card-strip-copy,
  .first-card-strip-action{
    font-size:12px;
    letter-spacing:0;
  }

  .first-card-strip-card{
    width:58px;
    height:34px;
    padding:7px 8px;
  }

  .first-versen-page{
    align-items:start;
    padding:26px 20px 80px;
  }

  .first-versen-hero{
    text-align:left;
  }

  .first-versen-hero h1{
    margin-inline:0;
    font-size:52px;
  }

  .first-versen-card{
    width:min(250px,72vw);
    margin:28px 0 0;
    padding:22px 24px;
    border-radius:10px;
  }

  .first-versen-card span{
    font-size:12px;
  }

  .first-versen-card strong{
    font-size:30px;
  }

  .first-versen-points{
    width:100%;
    margin:26px 0 0;
  }

  .first-versen-offer{
    padding:10px 13px;
    border-radius:11px;
  }

  .first-versen-offer-row{
    grid-template-columns:36px minmax(0,1fr);
    gap:11px;
    min-height:62px;
    padding:11px 0;
  }

  .first-versen-icon{
    width:36px;
    height:36px;
  }

  .first-versen-icon svg{
    width:19px;
    height:19px;
  }

  .first-versen-offer-copy span:first-child{
    font-size:15px;
  }

  .first-versen-offer-copy span:last-child{
    font-size:12.5px;
  }

  .first-versen-cta{
    grid-column:2;
    justify-self:start;
    min-height:31px;
    margin-top:4px;
    padding:7px 14px;
    font-size:12px;
  }

  .first-versen-proof{
    width:100%;
    margin-top:16px;
    grid-template-columns:1fr;
    gap:9px;
  }

  .first-versen-proof > span{
    grid-template-columns:28px minmax(0,1fr);
    padding:0;
  }

  .first-versen-proof > span + span{
    border-left:0;
  }

  .first-versen-hero p{
    margin-inline:0;
    font-size:16px;
  }
}

@media (max-width:360px){
  .first-card-strip{
    gap:7px;
  }

  .first-card-strip-copy,
  .first-card-strip-action{
    font-size:11px;
  }

  .first-card-strip-card{
    width:54px;
  }
}

@media (prefers-reduced-motion:reduce){
  .first-card-strip::before,
  .first-card-strip-card::after,
  .first-versen-card::after{
    animation:none;
  }
}
