/* Saulės Kliošas v3 — sand, warm ink, amber, Figtree */

:root{
  --color-bg:#f7f2ea;
  --color-surface:#ece5d8;
  --color-neutral-100:#fbf8f2;
  --color-divider:#d9d0c1;
  --color-text:#201e1d;
  --color-accent-2-100:oklch(0.965 0.01 215);
  --color-accent-2-200:oklch(0.93 0.02 215);
  --color-accent-2-300:oklch(0.80 0.012 70);
  --color-accent-2-500:oklch(0.48 0.014 60);
  --color-accent-2-600:oklch(0.38 0.014 60);
  --color-accent-2-700:oklch(0.30 0.012 60);
  --color-accent-2-800:oklch(0.27 0.012 60);
  --color-accent-2-900:oklch(0.23 0.01 60);
  --color-accent:oklch(0.68 0.11 65);
  --color-accent-700:oklch(0.52 0.11 60);
  --color-accent-800:oklch(0.44 0.1 58);
  --color-accent-200:oklch(0.92 0.04 75);
  --color-accent-100:oklch(0.96 0.02 75);
  --color-neutral-500:#a19786;
  --color-neutral-600:#82796a;
  --color-neutral-700:#645c50;
  --color-neutral-800:#474238;
  --font:'Figtree', system-ui, sans-serif;
  --radius-md:12px;
  --radius-lg:16px;
  --shadow-lg:0 12px 32px color-mix(in srgb, #2e2b25 22%, transparent);
  --max:1180px;
  --gutter:clamp(20px, 4.2vw, 56px);
  --header:80px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --photo:saturate(0.85) contrast(0.94) brightness(1.04);

  --linen:var(--color-bg);
  --linen-2:var(--color-surface);
  --sand:var(--color-divider);
  --ink:var(--color-text);
  --ink-2:var(--color-neutral-800);
  --ink-3:var(--color-neutral-700);
  --gold:var(--color-accent);
  --gold-deep:var(--color-accent-800);
  --serif:var(--font);
  --sans:var(--font);
  --white:var(--color-neutral-100);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
html,body{margin:0; padding:0}
html{font-synthesis:none}
body{
  background:var(--color-neutral-100);
  color:var(--color-text);
  font-family:var(--font);
  font-size:16px;
  line-height:1.55;
  font-weight:400;
  font-optical-sizing:auto;
  -webkit-font-smoothing:antialiased;
}
img,svg,video{max-width:100%; display:block}
img{height:auto}
a{color:var(--color-accent-2-800); text-decoration:none}
a:hover{color:var(--color-accent-2-900)}
button,input,select,textarea{font:inherit; color:inherit}
button{background:none; border:0; cursor:pointer}
h1,h2,h3,h4{
  font-family:var(--font);
  font-weight:500;
  color:var(--color-text);
  letter-spacing:-.03em;
  line-height:1.02;
  margin:0;
  text-wrap:balance;
}
h1{font-size:clamp(2.5rem, 4vw + 1rem, 5rem)}
h2{font-size:clamp(1.7rem, 2vw + .8rem, 2.5rem); letter-spacing:-.02em}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
:focus-visible{outline:2px solid var(--color-accent-2-700); outline-offset:2px}
::selection{background:var(--color-accent-2-200)}

.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:300;background:var(--color-text);color:#fff;padding:.7rem 1rem}
.wrap{width:100%; max-width:var(--max); margin-inline:auto; padding-inline:var(--gutter)}
.wrap--wide{max-width:1180px}
.eyebrow{
  font-size:12px; letter-spacing:.1em; text-transform:uppercase;
  font-weight:500; color:var(--color-accent-2-800); margin:0 0 .5rem;
}
.eyebrow--light{color:var(--color-accent-2-300)}
.lede{font-size:18px; line-height:1.5; max-width:36rem; margin:.4rem 0 1.2rem}
.text-link{color:var(--color-accent-2-800); border-bottom:1.5px solid currentColor; font-size:15px}
.chip{
  align-self:flex-start; padding:8px 16px; border-radius:999px;
  background:var(--color-accent-2-200); color:var(--color-accent-2-900); font-size:13px;
}

.brand__mark{width:40px; height:40px; flex:none; display:block}
.brand__mark--sm{width:30px; height:30px}
.announce{
  background:var(--color-accent-2-200); color:var(--color-accent-2-900);
  text-align:center; font-size:13px; padding:9px 16px;
}
.announce strong{font-weight:600}

.site-header{
  position:sticky; top:0; z-index:80;
  background:color-mix(in srgb, var(--color-neutral-100) 92%, transparent);
  backdrop-filter:blur(14px);
}
.site-header__inner{
  display:flex; align-items:center; gap:40px; min-height:76px;
}
.site-header__check{display:flex; align-items:center; justify-content:space-between; min-height:76px}
.site-header--checkout .brand__name{font-size:24px}
.site-header--checkout .brand__mark{width:30px; height:30px}
.header-secure{font-size:14px; color:var(--color-neutral-700)}
.header-secure a{color:inherit; border-bottom:1px solid currentColor}
.brand{display:inline-flex; align-items:center; gap:12px; color:var(--color-text); flex:none}
.brand__text{display:flex; flex-direction:column; line-height:1}
.brand__name{font-weight:600; font-size:22px; letter-spacing:-.02em}
.brand__place{font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--color-neutral-700); margin-top:5px}
.nav{display:flex; align-items:center; gap:28px; font-size:15px}
.nav a{color:var(--color-text); padding-bottom:4px; border-bottom:1.5px solid transparent; font-weight:400}
.nav a[aria-current="page"]{font-weight:600; border-bottom-color:var(--color-accent-2-700)}
.nav__mobile-extra{display:none}
.header-tools{display:flex; margin-left:auto; gap:10px; align-items:center}
.header-phone{font-size:14px; color:var(--color-neutral-700); margin-right:8px}
.pill{
  height:40px; padding:0 16px; border-radius:999px; display:grid; place-items:center;
  font-size:14px; color:var(--color-text); white-space:nowrap;
}
.pill--ghost{border:1.5px solid var(--color-divider); max-width:148px; overflow:hidden; text-overflow:ellipsis}
.pill--ghost.is-in{border-color:var(--color-accent-2-700); font-weight:600}
.pill--solid{background:var(--color-accent-2-700); color:var(--color-neutral-100); font-weight:600}
.pill--light{background:var(--color-neutral-100); color:var(--color-text); font-weight:600; font-size:13px; height:auto; padding:9px 14px}
.pill--cart{white-space:nowrap}
.pill-cart__count{display:none}
.cat-pills{display:flex; gap:8px; padding:0 0 16px; flex-wrap:wrap; justify-content:flex-start}
.cat-pills a{padding:8px 16px; border-radius:999px; background:var(--color-surface); color:var(--color-text); font-size:14px}
.cat-pills a.is-on{background:var(--color-accent-2-700); color:var(--color-neutral-100)}
.burger{display:none; width:40px; height:40px; padding:10px; border-radius:50%; border:1.5px solid var(--color-divider)}
.burger span{display:block; height:2px; background:currentColor}
.burger span+span{margin-top:5px}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-size:15px; font-weight:600; padding:14px 28px; border-radius:999px;
  border:1.5px solid transparent; cursor:pointer;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.btn--solid{background:var(--color-accent-2-700); color:var(--color-neutral-100)}
.btn--solid:hover{background:var(--color-accent-2-600)}
.btn--solid:active{background:var(--color-accent-2-800)}
.btn--ghost{border-color:var(--color-divider); color:var(--color-text)}
.btn--ghost:hover{background:var(--color-surface)}
.btn--outline{border-color:var(--color-accent-2-700); color:var(--color-accent-2-800)}
.btn--light{background:var(--color-neutral-100); color:var(--color-accent-2-900)}
.btn--ghost-light{border-color:var(--color-accent-2-600); color:var(--color-neutral-100)}
.btn--full{width:100%}
.icon-btn{width:40px; height:40px; display:grid; place-items:center; border-radius:50%}
.icon-btn svg{width:18px; height:18px}

.hero{
  display:grid; grid-template-columns:1fr 1fr; gap:48px;
  padding:24px var(--gutter) 0; max-width:var(--max); margin:0 auto; align-items:center;
}
.hero__copy{display:flex; flex-direction:column; gap:24px}
.hero h1{font-size:clamp(3rem, 6vw, 80px); line-height:.98; letter-spacing:-.03em}
.hero p{font-size:19px; line-height:1.5; max-width:420px; margin:0}
.hero__actions{display:flex; flex-wrap:wrap; gap:12px}
.hero__meta{font-size:14px; color:var(--color-neutral-700); padding-top:8px}
.hero__media{position:relative; height:min(600px, 70vh)}
.hero__media img{width:100%; height:100%; object-fit:cover; border-radius:999px 999px var(--radius-lg) var(--radius-lg)}
.hero__badge{
  position:absolute; left:-32px; bottom:48px; width:170px; height:170px; border-radius:50%;
  background:var(--color-accent-2-700); color:var(--color-neutral-100);
  display:grid; place-items:center; text-align:center; font-size:16px; line-height:1.3; padding:20px;
}

.section{padding-block:72px 0}
.section--tight{padding-top:72px}
.section--shopflow{padding:16px 0 72px}
body:not(.home) main > .section{padding:24px 0 72px}
.shop-archive{padding-top:24px; padding-bottom:72px}
.pdp-section{padding-top:8px; padding-bottom:72px}
body:not(.home) main > .section.pdp-section{padding:8px 0 72px}
.section__head{display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px}
.section__lede{max-width:380px; margin:0; font-size:15px; color:var(--color-neutral-700)}

.cat-circles{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px}
.cat-circle{display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; color:var(--color-text)}
.cat-circle__img{width:100%; aspect-ratio:1; border-radius:50%; overflow:hidden; background:var(--color-surface); margin-bottom:8px}
.cat-circle img{width:100%; height:100%; object-fit:cover}
.cat-circle strong{font-size:18px; font-weight:500}
.cat-circle span{font-size:13px; color:var(--color-neutral-700)}

.product-grid, ul.products, .woocommerce ul.products, .woocommerce-page ul.products{
  list-style:none !important; margin:0 !important; padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:20px !important;
  width:100% !important;
  float:none !important;
}
.product-grid::before, .product-grid::after,
ul.products::before, ul.products::after,
.woocommerce ul.products::before, .woocommerce ul.products::after{display:none !important; content:none !important}
.product-grid--4{grid-template-columns:repeat(4, minmax(0, 1fr)) !important}
.product-card,
li.product,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  display:flex !important; flex-direction:column !important;
  float:none !important; clear:none !important;
  width:auto !important; max-width:none !important;
  margin:0 !important; padding:0 !important;
  border-radius:16px !important; overflow:hidden;
  background:var(--color-surface);
  position:relative;
}
.product-card__media{
  display:block; aspect-ratio:4/5; overflow:hidden; position:relative; background:var(--color-surface);
}
.product-card__media img,
li.product .product-card__media img,
.woocommerce ul.products li.product a img{
  width:100% !important; height:100% !important; object-fit:cover !important;
  margin:0 !important; display:block !important;
  transition:transform .3s ease; filter:var(--photo);
  border-radius:0 !important;
}
.product-card:hover .product-card__media img{transform:scale(1.03)}
.product-card__cta{
  position:absolute; left:12px; right:12px; bottom:12px;
  padding:10px; border-radius:999px; text-align:center;
  background:var(--color-accent-2-700); color:var(--color-neutral-100); font-weight:600; font-size:14px;
  opacity:0; transform:translateY(6px); transition:opacity .2s ease, transform .2s ease;
  pointer-events:none;
}
.product-card:hover .product-card__cta{opacity:1; transform:none}
.badge{
  position:absolute; top:12px; left:12px; z-index:2;
  padding:5px 12px; border-radius:999px; background:var(--color-accent-200); color:var(--color-accent-800); font-size:12px; font-weight:500;
}
.product-card__body{display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:14px 18px 16px}
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:16px !important; font-weight:500 !important; letter-spacing:0; line-height:1.3; margin:0;
  font-family:var(--font) !important;
}
.product-card h3 a{color:inherit}
.stock-line{display:flex; align-items:center; gap:6px; font-size:13px; color:var(--color-neutral-700); margin:2px 0 0; line-height:1.35}
.stock-line .pdp__stock-icon{width:7px; height:7px}
.price{font-size:16px; color:var(--color-accent-800); flex:none; white-space:nowrap}
.price--pdp{font-size:30px; color:var(--color-text)}
.price del{color:var(--color-neutral-500); margin-right:.35rem}

.image-break{margin-top:80px; position:relative; height:520px; overflow:hidden}
.image-break img{width:100%; height:100%; object-fit:cover; object-position:center 70%; filter:var(--photo)}
.image-break::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 42%, rgba(32,30,29,.55) 100%);
  pointer-events:none;
}
.image-break__copy{position:absolute; left:var(--gutter); bottom:48px; color:var(--color-neutral-100); max-width:520px; z-index:1}
.image-break__copy span{font-size:12px; letter-spacing:.1em; text-transform:uppercase}
.image-break__copy p{font-size:40px; font-weight:500; letter-spacing:-.02em; line-height:1.05; text-shadow:0 2px 24px rgba(32,30,29,.55); margin:.4rem 0 0}

.salon-band{padding:72px 0; background:var(--color-accent-2-900); color:var(--color-neutral-100); margin-top:72px}
.salon-band__grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center}
.salon-band h2{font-size:clamp(2rem,3vw,44px)}
.salon-band p{font-size:17px; line-height:1.55; color:var(--color-accent-2-200)}
.salon-band .muted{color:var(--color-accent-2-300); font-size:15px}
.salon-band__photo{height:420px; border-radius:var(--radius-lg); overflow:hidden}
.salon-band__photo img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}

.fb-strip{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px}
.fb-strip a{aspect-ratio:1; border-radius:16px; overflow:hidden}
.fb-strip img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}

.news-box{
  margin:72px 0 0; padding:40px 48px; border-radius:var(--radius-lg);
  background:var(--color-accent-200); display:grid; grid-template-columns:1fr auto; gap:32px; align-items:center;
}
.news-box strong{display:block; font-size:26px; font-weight:500; letter-spacing:-.02em; color:var(--color-accent-800)}
.news-box span{font-size:15px; color:var(--color-accent-800)}
.news-box__row{display:flex; gap:8px}
.news-box input{
  width:280px; height:50px; padding:0 20px; border:0; border-radius:999px; background:var(--color-neutral-100);
}

.site-footer{padding:56px 0 40px; font-size:14px; color:var(--color-neutral-700); margin-top:0}
.site-footer--ruled{border-top:1px solid var(--color-divider)}
.site-footer__inner{display:grid; grid-template-columns:1.4fr 1fr; gap:48px}
.foot-cols{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.site-footer h3{font-size:15px; font-weight:600; letter-spacing:0; margin-bottom:10px; color:var(--color-text)}
.foot-nav{display:flex; flex-direction:column; gap:10px}
.foot-nav a{color:var(--color-neutral-700)}
.footer-lead{margin-top:14px; max-width:360px; line-height:1.5}
.footer-copy{margin-top:14px}
.site-footer--slim{padding:32px 0; border-top:1px solid var(--color-divider)}
.site-footer--slim .brand__name{font-size:20px; font-weight:600; letter-spacing:-.02em}
.site-footer__slim{display:flex; justify-content:space-between; align-items:center; gap:24px}
.foot-nav--row{flex-direction:row; flex-wrap:wrap; gap:24px}

.shop-archive h1{font-size:60px; line-height:1; letter-spacing:-.03em; margin:0 0 16px; font-weight:500}
.shop-archive .lede{font-size:18px; max-width:560px; margin:0 0 8px}
.shop-tools{display:flex; justify-content:space-between; align-items:baseline; color:var(--color-neutral-700); font-size:14px; padding:16px 0 24px; gap:16px}
.woocommerce-result-count{margin:0; font-size:14px; color:var(--color-neutral-700)}

.pdp{display:flex; flex-direction:column; gap:40px}
.crumbs{font-size:13px; color:var(--color-neutral-700)}
.pdp__layout{display:grid; grid-template-columns:minmax(280px,1.15fr) minmax(0,1fr); gap:40px; align-items:start}
.pdp__layout:has(.thumbs){grid-template-columns:96px minmax(280px,1.15fr) minmax(0,1fr); gap:32px}
.pdp__main{border-radius:var(--radius-lg); overflow:hidden; aspect-ratio:1; min-height:420px; background:var(--color-surface)}
.pdp__layout:has(.thumbs) .pdp__main{aspect-ratio:4/5; min-height:0}
.pdp__main img{width:100%; height:100%; object-fit:contain; object-position:center; filter:var(--photo)}
.pdp__layout:has(.thumbs) .pdp__main img{object-fit:cover}
.thumbs{display:flex; flex-direction:column; gap:12px}
.thumbs button{aspect-ratio:4/5; border-radius:var(--radius-md); overflow:hidden; padding:0}
.thumbs button.is-on{outline:2px solid var(--color-accent-2-700); outline-offset:2px}
.thumbs img{width:100%; height:100%; object-fit:cover}
.pdp__info{display:flex; flex-direction:column; gap:22px; padding-top:16px}
.pdp__info h1{font-size:48px; line-height:1.02; letter-spacing:-.03em; font-weight:500}
.pdp__info .single_add_to_cart_button,
.pdp .single_add_to_cart_button{
  position:absolute !important; width:1px !important; height:1px !important;
  overflow:hidden !important; clip:rect(0 0 0 0) !important; pointer-events:none !important;
  opacity:0 !important;
}
.pdp__buy{display:flex; flex-direction:column; gap:10px; width:100%}
.pdp__stock{display:flex; align-items:center; gap:8px; margin:0; min-height:24px; font-size:14px; font-weight:500; color:var(--color-neutral-800)}
.pdp__stock-icon{width:8px; height:8px; border-radius:50%; background:var(--color-accent-2-500); flex:none}
.pdp__stock--ok .pdp__stock-icon{background:var(--color-accent-2-500)}
.pdp__stock--low .pdp__stock-icon,.stock-line--low .pdp__stock-icon{background:var(--color-accent)}
.pdp__stock--last .pdp__stock-icon,.stock-line--last .pdp__stock-icon{background:var(--color-accent-700)}
.pdp__stock--out .pdp__stock-icon,.stock-line--out .pdp__stock-icon{background:var(--color-neutral-500)}
.pdp__atc{display:flex; gap:10px; align-items:stretch; position:relative}
.pdp__atc > .stock{display:none !important}
.pdp__atc form.cart{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0)}
.sk-qty{display:inline-flex; align-items:center; height:58px; border:1.5px solid var(--color-divider); border-radius:999px; flex:none; background:var(--color-neutral-100)}
.sk-qty button{width:42px; height:100%; font-size:20px; line-height:1; color:var(--color-text)}
.sk-qty input{width:36px; height:100%; border:0; background:transparent; text-align:center; padding:0; -moz-appearance:textfield}
.sk-qty input::-webkit-outer-spin-button,.sk-qty input::-webkit-inner-spin-button{-webkit-appearance:none; margin:0}
.sk-atc{flex:1; margin:0; padding:18px; border-radius:999px; font-size:16px; font-weight:600}
.wish{width:58px; height:58px; border-radius:50%; border:1.5px solid var(--color-divider); font-size:20px; flex:none}
.micro{display:flex; gap:20px; flex-wrap:wrap; font-size:13px; color:var(--color-neutral-700)}
.ship-table{display:flex; flex-direction:column; border-top:1px solid var(--color-divider)}
.ship-table>div{display:flex; justify-content:space-between; padding:16px 0; border-bottom:1px solid var(--color-divider); font-size:15px}
.acc{border-radius:var(--radius-lg); background:var(--color-surface); padding:4px 20px}
.acc details{border-bottom:1px solid var(--color-divider); padding:8px 0}
.acc details:last-child{border:0}
.acc summary{font-weight:600; font-size:15px; cursor:pointer; list-style:none; display:flex; justify-content:space-between}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:'+'}
.acc details[open] summary::after{content:'−'}
.sizes__label{display:flex; justify-content:space-between; font-size:14px}
.sizes__label button{color:var(--color-accent-2-800); border-bottom:1.5px solid currentColor}
.size-pills{display:flex; gap:8px; flex-wrap:wrap; margin:0}
.size-pills button{
  min-width:56px; padding:12px; text-align:center; border-radius:999px; border:1.5px solid var(--color-divider);
  font-size:15px; font-weight:500; background:transparent;
}
.size-pills button.is-on{background:var(--color-text); color:var(--color-neutral-100); border-color:var(--color-text)}
.size-pills button:disabled{color:var(--color-neutral-500); text-decoration:line-through}
.pdp:has(.size-pills) table.variations,
.pdp:has(.size-pills) .woocommerce-variation{
  position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0);
}
.pdp:has(.size-pills) .variations select{position:absolute; opacity:0; pointer-events:none; width:1px; height:1px}
.size-block{
  margin-top:8px; padding:40px; border-radius:var(--radius-lg); background:var(--color-surface);
  display:grid; grid-template-columns:1fr 1.4fr; gap:48px;
}
.size-block h2{font-size:30px; letter-spacing:-.02em; font-weight:500}
.size-block table{width:100%; border-collapse:collapse; font-size:15px}
.size-block th,.size-block td{padding:12px 0; border-bottom:1px solid var(--color-divider); text-align:left}
.reviews{display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px}
.reviews blockquote{margin:0; padding:24px 28px; border-radius:var(--radius-lg); background:var(--color-surface)}
.stars{color:var(--color-accent-700); letter-spacing:.1em; font-size:14px}
.reviews cite{font-style:normal; font-size:13px; color:var(--color-neutral-700)}
.related.products{margin-top:24px}
.related.products > h2{font-size:32px; letter-spacing:-.02em; font-weight:500; margin:24px 0}
.related.products ul.products{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.sticky-cart{display:none}

.salon-page{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start}
.salon-page > div:last-child{display:flex; flex-direction:column; gap:22px}
.salon-page .lede{margin:0; font-size:18px; max-width:none}
.salon-photos{display:grid; grid-template-columns:1fr 1fr; grid-template-rows:360px 220px; gap:12px}
.salon-photos__wide{grid-column:1/-1; width:100%; height:100%; object-fit:cover; border-radius:var(--radius-lg); filter:var(--photo)}
.salon-photos img{width:100%; height:100%; object-fit:cover; border-radius:16px; filter:var(--photo)}
.fact-tiles{display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; margin:18px 0}
.fact-tiles>div{padding:16px 18px; border-radius:var(--radius-md); background:var(--color-surface); font-size:14px; line-height:1.4}
.fact-tiles strong{display:block; font-size:20px; font-weight:600; color:var(--color-accent-2-800)}
.contact-mini{display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; padding:20px 0; border-top:1px solid var(--color-divider); border-bottom:1px solid var(--color-divider); font-size:15px; margin-bottom:20px}
.contact-mini span{display:block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--color-neutral-700); margin-bottom:6px}

.contact-grid{display:grid; grid-template-columns:1fr 1.3fr; gap:56px; align-items:start}
.contact-grid__copy{display:flex; flex-direction:column; gap:24px}
.contact-grid .lede{margin:0; font-size:18px; line-height:1.5; max-width:none}
.contact-grid h1{font-size:64px; line-height:1; letter-spacing:-.03em; font-weight:500}
.salon-page h1{font-size:64px; line-height:1; letter-spacing:-.03em; font-weight:500}
.contact-rows>div{display:grid; grid-template-columns:120px 1fr; padding:18px 0; border-top:1px solid var(--color-divider); font-size:16px; font-weight:500}
.contact-rows>div:last-child{border-bottom:1px solid var(--color-divider)}
.contact-rows span{color:var(--color-neutral-700); font-size:14px; font-weight:400}
.contact-rows b{font-weight:500}
.contact-rows a{color:inherit; font-weight:500}
.map{height:560px; border-radius:var(--radius-lg); overflow:hidden; background:var(--color-accent-2-200)}
.map iframe{width:100%; height:calc(100% + 48px); border:0; filter:saturate(.5) contrast(.9) sepia(.2)}

.legal-layout{display:grid; grid-template-columns:260px 1fr; gap:64px; align-items:start}
.legal-nav{display:flex; flex-direction:column; gap:4px; position:sticky; top:96px}
.legal-nav a{padding:10px 16px; border-radius:999px; color:var(--color-text)}
.legal-nav a.is-on{background:var(--color-accent-2-700); color:var(--color-neutral-100)}
.legal-nav__meta{margin-top:16px; padding:10px 16px; font-size:13px; color:var(--color-neutral-700)}
.prose{max-width:680px; font-size:16px; line-height:1.65}
.prose h1,.legal-layout .prose h1{
  font-size:52px; line-height:1.02; letter-spacing:-.03em; font-weight:500; margin:0 0 16px; padding:0; border:0;
}
.prose .eyebrow{margin:0 0 8px}
.prose h2{
  font-size:22px; margin:32px 0 10px; padding-top:24px; border-top:1px solid var(--color-divider);
  font-weight:500; letter-spacing:0;
}
.prose table{width:100%; border-collapse:collapse; font-size:15px; margin:16px 0 8px; display:table; table-layout:auto}
.prose th,.prose td{
  padding:14px 20px 14px 0; border-bottom:1px solid var(--color-divider);
  text-align:left; vertical-align:top; font-weight:400; line-height:1.45;
}
.prose th{font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--color-neutral-700); font-weight:600; padding-top:10px; padding-bottom:10px; border-bottom-width:1.5px}
.prose tr:last-child td{border-bottom:0}
.prose ul,.prose ol{margin:0 0 1.2rem 1.2rem; padding:0}
.prose li{margin:0 0 .45rem; line-height:1.55}
.prose--legal{padding-bottom:24px}
.prose--legal > p:last-child, .prose--legal > ul:last-child, .prose--legal > table:last-child{margin-bottom:0}

.sk-cart{display:grid; grid-template-columns:minmax(0,1.5fr) 400px; gap:48px; align-items:start}
.sk-cart .sk-steps,.sk-checkout .sk-steps{grid-column:1/-1}
.sk-cart__head{display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:8px}
.sk-cart__head h1{font-size:44px; font-weight:500}
.sk-cart__count{font-size:15px; color:var(--color-neutral-700)}
.sk-cart__main,.sk-cart__extra{grid-column:1}
.sk-cart__aside{grid-column:2; grid-row:2 / span 3}
.sk-line{display:grid; grid-template-columns:120px 1fr auto; gap:24px; padding:24px 0; border-top:1px solid var(--color-divider); align-items:start}
.sk-line__img{aspect-ratio:4/5; border-radius:var(--radius-md); overflow:hidden}
.sk-line__img img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}
.sk-line h2{font-size:18px; font-weight:500; letter-spacing:0}
.sk-line__qty{display:flex; align-items:center; gap:14px; padding-top:6px}
.sk-line__remove{font-size:14px; color:var(--color-neutral-700); border-bottom:1px solid currentColor}
.sk-sum{padding:32px; border-radius:var(--radius-lg); background:var(--color-surface); position:sticky; top:96px}
.sk-sum h2{font-size:22px; font-weight:500; margin-bottom:16px}
.sk-sum .shop_table{width:100%; border:0}
.sk-sum th,.sk-sum td{border:0; padding:8px 0; text-align:left; font-weight:400}
.sk-sum .order-total th,.sk-sum .order-total td{padding-top:12px; border-top:1px solid var(--color-divider); font-size:20px; font-weight:500}
.sk-sum__note{font-size:13px; color:var(--color-neutral-700); text-align:center; margin-top:12px}
.sk-coupon{display:flex; gap:8px; margin:12px 0}
.sk-coupon input,.woocommerce input.input-text, .woocommerce input[type=email], .woocommerce input[type=text], .woocommerce input[type=tel], .woocommerce input[type=password], .woocommerce textarea, .woocommerce select{
  height:50px; padding:0 20px; border:0; border-radius:999px; background:var(--color-surface);
}
.sk-empty-cart{display:flex; flex-direction:column; align-items:center; text-align:center; gap:20px; padding:48px 0 72px}
.sk-empty-cart h1{font-size:40px; letter-spacing:-.03em; font-weight:500}
.empty-icon{width:96px; height:96px; border-radius:50%; background:var(--color-accent-2-200); position:relative}
.empty-icon::before{content:""; position:absolute; inset:36px 32px 28px; border:2.5px solid var(--color-accent-2-800); border-top:0; border-radius:0 0 8px 8px}
.empty-suggest{width:100%; margin-top:24px}

.sk-auth{display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:40px 0 80px; align-items:stretch}
.sk-auth h1, .sk-auth__new h2{font-size:40px; line-height:1; letter-spacing:-.03em; font-weight:500; margin:0}
.sk-auth__card>p{margin:0; font-size:15px; line-height:1.5; color:var(--color-neutral-700)}
.sk-auth__new h2{color:var(--color-neutral-100)}
.sk-auth__new p{color:var(--color-accent-2-200); font-size:16px; line-height:1.55; margin:0; max-width:380px}
.sk-auth__new .woocommerce-privacy-policy-text{display:none}
.sk-auth__card{padding:48px; border-radius:var(--radius-lg); background:var(--color-surface); display:flex; flex-direction:column; gap:20px}
.sk-auth__new{padding:48px; border-radius:var(--radius-lg); background:var(--color-accent-2-900); color:var(--color-neutral-100); display:flex; flex-direction:column; gap:20px; justify-content:center}
.sk-auth-notices{max-width:var(--max); margin:0 auto 16px; padding-inline:var(--gutter)}
.sk-auth-notices .woocommerce-error, .sk-auth-notices .woocommerce-message, .sk-auth-notices .woocommerce-info{
  padding:14px 18px; border-radius:var(--radius-md); background:var(--color-surface); font-size:14px; line-height:1.45; margin:0 0 8px;
}
.sk-login,.sk-register{display:flex; flex-direction:column; gap:16px; width:100%}
.sk-register{align-items:stretch; gap:14px}
.sk-field{display:flex; flex-direction:column; gap:8px; width:100%}
.sk-field>span,.sk-field>label,.sk-field__row label{font-size:14px; font-weight:600; color:inherit}
.sk-field__row{display:flex; justify-content:space-between; align-items:baseline; gap:12px}
.sk-field__forgot{font-size:14px; font-weight:400; color:var(--color-accent-2-800); border:0}
.sk-auth__card .sk-login input[type=text],
.sk-auth__card .sk-login input[type=email],
.sk-auth__card .sk-login input[type=password],
.sk-auth__card input.input-text{
  display:block; width:100%; height:50px; padding:0 20px; border:0; border-radius:999px;
  background:var(--color-neutral-100); color:var(--color-text); font-size:15px; line-height:50px;
  box-sizing:border-box; box-shadow:inset 0 0 0 1.5px var(--color-divider);
}
.sk-auth__card .sk-login input::placeholder{color:var(--color-neutral-600)}
.sk-auth__card .sk-login .btn{width:100%; padding:16px; font-size:15px; margin-top:8px}
.sk-register .sk-field span{color:var(--color-accent-2-200)}
.sk-register input[type=email],
.sk-register input[type=password]{
  display:block; width:100%; height:50px; padding:0 20px; border:0; border-radius:999px;
  background:var(--color-neutral-100); color:var(--color-text); font-size:15px; box-sizing:border-box;
}
.sk-register input::placeholder{color:var(--color-neutral-600)}
.sk-register__note{margin:0; font-size:13px; line-height:1.45; color:var(--color-accent-2-300)}
.sk-auth__new .btn{align-self:flex-start; width:auto; padding:16px 28px; font-size:15px}
.sk-auth__hint{font-size:13px; color:var(--color-neutral-700)}
.woocommerce-ResetPassword .input-text,
.woocommerce-ResetPassword input[type=text],
.woocommerce-ResetPassword input[type=email]{
  display:block; width:100%; max-width:420px; height:50px; padding:0 20px; border:0;
  border-radius:999px; background:var(--color-surface); color:var(--color-text); font-size:15px;
  box-shadow:inset 0 0 0 1.5px var(--color-divider);
}
.lost_password,.woocommerce-form-login__rememberme{display:none}
.sk-account__head{margin-bottom:32px}
.sk-account__head h1{font-size:clamp(32px,4vw,44px); line-height:1.05; letter-spacing:-.03em; font-weight:500; margin:0 0 8px}
.sk-account__head p{margin:0; font-size:16px; color:var(--color-neutral-700); max-width:36rem}
.sk-account__grid{display:grid; grid-template-columns:200px minmax(0,1fr); gap:40px; align-items:start}
.sk-acc-nav{display:flex; flex-direction:column; gap:4px}
.sk-acc-nav a,.sk-account__nav a{display:block; padding:10px 16px; border-radius:999px; color:var(--color-text); font-size:15px}
.sk-acc-nav a.is-active,.sk-account__nav a.is-active,.woocommerce-MyAccount-navigation-link.is-active{background:var(--color-accent-2-700); color:#fff}
.sk-account__main{min-width:0}
.sk-account .woocommerce-info,.sk-account .woocommerce-message,.sk-account .woocommerce-error{
  padding:14px 18px; border-radius:var(--radius-md); background:var(--color-surface); color:var(--color-text);
  margin:0 0 20px; font-size:14px; line-height:1.45;
}
.sk-dash__cards{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:28px}
.sk-dash__card{padding:20px; border-radius:var(--radius-lg); background:var(--color-surface); color:inherit}
.sk-dash__card strong{display:block; font-size:18px; margin-bottom:4px}
.sk-dash h2{font-size:22px; font-weight:500; margin:0 0 12px}
.sk-empty{padding:18px 20px; border-radius:var(--radius-md); background:var(--color-surface); font-size:15px; margin:0}
.sk-empty a{border-bottom:1px solid currentColor; color:var(--color-accent-2-800)}
.sk-orders{list-style:none; padding:0; margin:0}
.sk-orders li{display:grid; grid-template-columns:1fr auto auto auto; gap:16px; align-items:center; padding:16px 0; border-top:1px solid var(--color-divider)}
.sk-orders li:last-child{border-bottom:1px solid var(--color-divider)}
.sk-orders strong{display:block; font-size:16px}
.sk-orders span{font-size:14px; color:var(--color-neutral-700)}
.sk-orders__total{font-size:16px; color:var(--color-text) !important; font-weight:500}
.sk-status{display:inline-block; padding:6px 12px; border-radius:999px; background:var(--color-surface); font-size:13px; color:var(--color-text); white-space:nowrap}
.sk-status--processing,.sk-status--sk-ready{background:var(--color-accent-2-200); color:var(--color-accent-2-900)}
.sk-status--completed{background:var(--color-accent-2-700); color:#fff}
.sk-view-order h2{font-size:28px; letter-spacing:-.02em; font-weight:500; margin:0 0 8px}
.sk-view-order__meta{font-size:15px; color:var(--color-neutral-700); margin:0 0 16px}
.sk-order-items{list-style:none; margin:16px 0; padding:0}
.sk-order-items li{display:flex; justify-content:space-between; gap:16px; padding:12px 0; border-top:1px solid var(--color-divider); font-size:15px}
.sk-addresses{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.sk-addr-card{padding:24px; border-radius:var(--radius-lg); background:var(--color-surface); display:flex; flex-direction:column; gap:14px}
.sk-addr-card h2{font-size:20px; font-weight:500; margin:0}
.sk-addr-card header p{margin:6px 0 0; font-size:14px; color:var(--color-neutral-700)}
.sk-addr-card address{font-style:normal; font-size:15px; line-height:1.5}
.sk-addr-card__empty{margin:0; color:var(--color-neutral-700); font-size:15px}
.sk-addr-card .btn{align-self:flex-start}
.sk-account-form{display:flex; flex-direction:column; gap:16px; max-width:560px}
.sk-account-form__lede,.sk-account-form__hint{margin:0; font-size:14px; color:var(--color-neutral-700)}
.sk-account-form__grid{display:grid; grid-template-columns:1fr 1fr; gap:14px 16px}
.sk-account-form__grid .sk-field--wide{grid-column:1/-1}
.sk-account-form .sk-field input,
.sk-account .form-row input.input-text,
.sk-account .form-row input[type=email],
.sk-account .form-row input[type=tel],
.sk-account .form-row input[type=text],
.sk-account .form-row input[type=password],
.sk-account .form-row textarea,
.sk-account .form-row select{
  display:block; width:100%; height:50px; padding:0 20px; border:0; border-radius:999px;
  background:var(--color-neutral-100); color:var(--color-text); font-size:15px; box-sizing:border-box;
  box-shadow:inset 0 0 0 1.5px var(--color-divider);
}
.sk-account .form-row{display:flex; flex-direction:column; gap:8px; margin:0 0 14px; float:none; width:auto}
.sk-account .form-row-first,.sk-account .form-row-last{float:none; width:auto}
.sk-account .form-row label{display:block; font-size:14px; font-weight:600; margin:0}
.sk-account .form-row .woocommerce-input-wrapper{display:block; width:100%}
.sk-account-form__pass{border:0; margin:8px 0 0; padding:20px; border-radius:var(--radius-lg); background:var(--color-surface); display:flex; flex-direction:column; gap:12px}
.sk-account-form__pass legend{font-size:16px; font-weight:600; padding:0}
.sk-account-form__actions{display:flex; gap:10px; align-items:center; margin:8px 0 0}
.woocommerce-address-fields__field-wrapper{display:grid; grid-template-columns:1fr 1fr; gap:14px 16px}
.woocommerce-address-fields__field-wrapper .form-row-wide,
.woocommerce-address-fields__field-wrapper #billing_address_1_field,
.woocommerce-address-fields__field-wrapper #shipping_address_1_field,
.woocommerce-address-fields__field-wrapper #billing_email_field,
.woocommerce-address-fields__field-wrapper #billing_phone_field{grid-column:1/-1}
.sk-account #billing_country_field,.sk-account #shipping_country_field{
  position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0);
}

.woocommerce-checkout h1, .woocommerce-checkout .col2-set{max-width:none}
.checkout-guest-note{color:var(--color-neutral-700); margin:0 0 24px}
.woocommerce-checkout .col2-set{display:grid; grid-template-columns:1.4fr 1fr; gap:48px}
#order_review{padding:32px; border-radius:var(--radius-lg); background:var(--color-surface)}
#place_order{width:100%; padding:18px; border-radius:999px; background:var(--color-accent-2-700); color:#fff; font-weight:600; border:0}
.woocommerce-error, .woocommerce-message, .woocommerce-info{
  border-radius:var(--radius-lg); background:var(--color-surface); padding:14px 18px; list-style:none;
}

.drawer-bg{position:fixed; inset:0; background:rgba(32,30,29,.35); opacity:0; pointer-events:none; transition:.2s; z-index:90}
.drawer-bg.is-open{opacity:1; pointer-events:auto}
.drawer{position:fixed; top:0; right:0; height:100%; width:min(420px,100%); background:var(--color-neutral-100); z-index:100; transform:translateX(100%); transition:transform .25s ease; display:flex; flex-direction:column}
.drawer.is-open{transform:none}
.drawer__head{display:flex; justify-content:space-between; align-items:center; padding:20px 24px}
.drawer__foot{padding:20px 24px}
.drawer__tot{display:flex; justify-content:space-between; margin-bottom:12px; font-size:18px}
.toast{
  position:fixed; right:24px; top:100px; z-index:120;
  display:flex; align-items:center; gap:14px; padding:14px 18px 14px 14px;
  border-radius:var(--radius-lg); background:var(--color-text); color:var(--color-neutral-100); box-shadow:var(--shadow-lg);
}
.toast[hidden]{display:none}
.toast__img{width:44px; height:52px; border-radius:8px; overflow:hidden; background:var(--color-surface)}
.modal{position:fixed; inset:0; background:rgba(32,30,29,.45); display:none; place-items:center; z-index:130; padding:20px}
.modal.is-open{display:grid}
.modal__card{width:min(480px,100%); background:var(--color-neutral-100); border-radius:var(--radius-lg); padding:28px; display:flex; flex-direction:column; gap:14px}
.modal__bar{display:flex; justify-content:space-between; align-items:center}
.modal__card label{display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:600}
.modal__card input{height:50px; border:0; border-radius:999px; background:var(--color-surface); padding:0 18px}
.cookie{position:fixed; left:16px; right:16px; bottom:16px; z-index:140}
.cookie__card{max-width:560px; margin:0 auto; background:var(--color-neutral-100); border:1px solid var(--color-divider); border-radius:var(--radius-lg); padding:20px 24px; box-shadow:var(--shadow-lg)}
.cookie__actions{display:flex; gap:8px; margin-top:12px}
.form-note{font-size:14px; color:var(--color-accent-2-800)}

.quantity{display:inline-flex; align-items:center; border:1.5px solid var(--color-divider); border-radius:999px; overflow:hidden}
.quantity input{width:40px; height:36px; border:0; background:transparent; text-align:center; padding:0}
.woocommerce table.variations{border:0}
.woocommerce table.variations td,.woocommerce table.variations th{border:0; padding:4px 0; background:none}

@media (max-width: 980px){
  .hero,.salon-band__grid,.salon-page,.contact-grid,.legal-layout,.sk-cart,.sk-auth,.pdp__layout,.size-block,.news-box,.site-footer__inner,.sk-account__grid,.sk-addresses,.sk-account-form__grid,.woocommerce-address-fields__field-wrapper{grid-template-columns:1fr}
  .hero__media{height:380px}
  .hero__badge{left:16px; width:120px; height:120px; font-size:13px}
  .cat-circles{grid-template-columns:repeat(3,1fr)}
  .product-grid, ul.products, .product-grid--4, .woocommerce ul.products, .reviews, .fb-strip, .fact-tiles, .contact-mini, .sk-dash__cards{grid-template-columns:1fr 1fr !important}
  .site-header__inner{gap:12px}
  .nav{
    display:none; position:fixed; inset:calc(var(--header) + 36px) 0 0; background:var(--color-neutral-100);
    flex-direction:column; align-items:flex-start; padding:24px; gap:16px; z-index:70;
  }
  .nav.is-open{display:flex}
  .nav__mobile-extra{display:flex; flex-direction:column; gap:12px; margin-top:12px}
  .burger{display:grid; place-items:center}
  .header-phone,.header-tools .pill--ghost,.brand__place,.pill-cart__full{display:none}
  .pill-cart__count{display:grid}
  .pill--cart{width:40px; height:40px; padding:0; border-radius:50%}
  .brand__name{font-size:18px}
  .brand__mark{width:28px; height:28px}
  .pdp__layout,.pdp__layout:has(.thumbs){grid-template-columns:1fr}
  .pdp__main{min-height:320px}
  .thumbs{flex-direction:row}
  .thumbs button{width:72px}
  .sticky-cart{display:flex}
  .salon-photos{grid-template-rows:240px 140px}
  .woocommerce-checkout .col2-set{grid-template-columns:1fr}
  .site-footer__slim{flex-direction:column; align-items:flex-start}
}
@media (max-width: 640px){
  h1{font-size:36px}
  .hero h1{font-size:44px}
  .contact-grid h1,.salon-page h1,.shop-archive h1,.ship-layout h1,.prose h1,.legal-layout .prose h1{font-size:36px}
  .pdp__info h1{font-size:32px}
  .sk-cart__head h1,.sk-checkout__head h1,.sk-auth h1,.sk-auth__new h2,.sk-account__head h1{font-size:32px}
  .sk-orders li{grid-template-columns:1fr 1fr; gap:8px}
  .sk-acc-nav{flex-direction:row; flex-wrap:wrap}
  .site-header--checkout .brand__name{font-size:20px}
  .cat-circles{display:flex; overflow:auto; gap:14px}
  .cat-circle{width:96px; flex:none}
  .cat-circle__img{width:96px; height:96px}
  .product-card__cta{opacity:1; transform:none; font-size:13px; padding:8px}
  .image-break{height:320px}
  .news-box__row{flex-direction:column}
  .news-box input{width:100%}
}

/* —— Launch UX 2.2 —— */
.how-strip{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px;
}
.how-strip li{
  padding:20px 22px; border-radius:var(--radius-lg); background:var(--color-surface);
  display:flex; flex-direction:column; gap:6px;
}
.how-strip--shop{margin:0 0 28px}
.how-strip strong{font-size:16px; font-weight:600; letter-spacing:0}
.how-strip span{font-size:14px; color:var(--color-neutral-700); line-height:1.45}

.fabric-chips{display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0}
.fabric-chips li{
  padding:6px 12px; border-radius:999px; background:var(--color-surface);
  color:var(--color-text); font-size:13px; font-weight:400;
}
.size-hint{margin:0; font-size:13px; color:var(--color-accent-800)}
.size-pills.is-shake{animation:sk-shake .45s var(--ease)}
@keyframes sk-shake{
  0%,100%{transform:translateX(0)}
  25%{transform:translateX(-6px)}
  75%{transform:translateX(6px)}
}
.single_add_to_cart_button.is-gated,
.single_add_to_cart_button.disabled,
.single_add_to_cart_button:disabled,
.sk-atc.is-gated{
  opacity:.55;
}
.pdp form.cart .quantity{display:none}
.pdp .variations .label{display:none}
.pdp table.variations{margin:0}

.sticky-cart{
  display:none;
  position:fixed; left:0; right:0; bottom:0; z-index:50;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  background:color-mix(in srgb, var(--color-neutral-100) 92%, transparent);
  backdrop-filter:blur(12px);
  border-top:1px solid var(--color-divider);
  align-items:center; justify-content:space-between; gap:12px;
}
.sticky-cart__meta{display:flex; flex-direction:column; min-width:0}
.sticky-cart__meta strong{font-size:14px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:52vw}
.sticky-cart__meta span{font-size:13px; color:var(--color-accent-800)}
.sticky-cart .btn{padding:12px 20px; flex:none}

.sk-steps{
  list-style:none; display:flex; align-items:center; gap:12px; padding:0; margin:0 0 28px; flex-wrap:wrap;
  font-size:14px; color:var(--color-neutral-600);
}
.sk-steps li{display:flex; align-items:center; gap:8px}
.sk-steps li:not(:last-child)::after{content:''; width:40px; height:1.5px; background:var(--color-divider); margin-left:4px}
.sk-steps__n{
  width:24px; height:24px; border-radius:50%; border:1.5px solid var(--color-divider);
  display:grid; place-items:center; font-size:12px; font-weight:600;
}
.sk-steps .is-on{color:var(--color-text); font-weight:600}
.sk-steps .is-on .sk-steps__n{background:var(--color-accent-2-700); color:var(--color-neutral-100); border-color:transparent}
.sk-steps a{color:inherit}

.sk-checkout__head h1{font-size:40px; font-weight:500; margin:0 0 .4rem}
.sk-cart__head h1{font-size:44px; font-weight:500}
.sk-thanks__head h1{font-size:40px; font-weight:500; margin:0 0 .4rem}
.sk-checkout__grid{display:grid; grid-template-columns:1.35fr .9fr; gap:40px; align-items:start}
.sk-panel{
  background:var(--color-surface); border-radius:var(--radius-lg); padding:28px;
  margin-bottom:20px;
}
.sk-panel h2{font-size:22px; letter-spacing:0; margin:0 0 10px}
.sk-panel__lede{font-size:14px; color:var(--color-neutral-700); margin:0 0 16px}
.sk-panel--sum{position:sticky; top:96px; margin-bottom:12px}
.sk-ship-tiles{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:16px}
.sk-tile{
  text-align:left; padding:16px 16px 14px; border-radius:var(--radius-md);
  border:1.5px solid var(--color-divider); background:var(--color-neutral-100);
  display:flex; flex-direction:column; gap:4px; min-height:100%;
}
.sk-tile.is-on{border-color:var(--color-accent-2-700); background:var(--color-accent-2-100); box-shadow:0 0 0 1px var(--color-accent-2-700)}
.sk-tile__kicker{font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--color-accent-2-800); font-weight:600}
.sk-tile strong{font-size:15px; font-weight:600; letter-spacing:0; line-height:1.25}
.sk-tile em{font-style:normal; font-weight:600; color:var(--color-accent-800)}
.sk-tile__hint{font-size:12px; color:var(--color-neutral-700); line-height:1.35}
.sk-trust{list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:6px; font-size:13px; color:var(--color-neutral-700)}
.sk-trust li{padding-left:18px; position:relative}
.sk-trust li::before{content:''; position:absolute; left:0; top:.45em; width:8px; height:8px; border-radius:50%; background:var(--color-accent-2-500)}
.sk-pay-soon{font-size:13px; color:var(--color-neutral-700); margin:0 0 12px; line-height:1.45}
.sk-check{margin:8px 0}
.sk-invoice-box{display:none}
.sk-invoice-box.is-open{display:block}
.is-soft-hide{display:none !important}
.sk-visually-hidden, .sk-visually-hidden.form-row, #billing_country_field{
  position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0);
}
.sk-checkout .col2-set{display:block; grid-template-columns:1fr}
.sk-ship-address, #ship-to-different-address, .woocommerce-shipping-fields{display:none}
.create-account{margin-top:8px; font-size:14px}
.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle{
  font-size:14px; margin:0 0 16px; color:var(--color-neutral-700);
}

.sk-thanks{display:flex; flex-direction:column; gap:28px}
.sk-thanks__head p{max-width:36rem; color:var(--color-neutral-700)}
.sk-thanks__grid{display:grid; grid-template-columns:1fr 1fr; gap:20px}
.sk-thanks-items{list-style:none; margin:0; padding:0}
.sk-thanks-items li{display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--color-divider); font-size:15px}
.sk-thanks-total{display:flex; justify-content:space-between; font-size:20px; margin-top:12px}
.sk-next{list-style:none; margin:0; padding:0; display:grid; gap:12px}
.sk-next li{display:grid; grid-template-columns:36px 1fr; gap:14px; align-items:start; padding:16px 18px; border-radius:var(--radius-md); background:var(--color-surface)}
.sk-next li span{
  width:36px; height:36px; border-radius:50%; display:grid; place-items:center;
  background:var(--color-accent-2-700); color:#fff; font-weight:600; font-size:14px;
}
.sk-next strong{display:block; font-size:16px; letter-spacing:0}
.sk-next p{margin:.25rem 0 0; font-size:14px; color:var(--color-neutral-700)}
.sk-next--salon{margin:8px 0 20px}
.salon-hours-note{font-size:15px; color:var(--color-neutral-800); margin:0 0 16px}
.sk-ready-banner{
  padding:14px 18px; border-radius:var(--radius-md); background:var(--color-accent-2-200);
  color:var(--color-accent-2-900); font-weight:500;
}
.sk-track{display:flex; gap:8px; list-style:none; padding:0; margin:16px 0 24px; flex-wrap:wrap}
.sk-track li{padding:8px 14px; border-radius:999px; background:var(--color-surface); color:var(--color-neutral-600); font-size:13px}
.sk-track li.is-on{background:var(--color-accent-2-700); color:#fff}

@media (max-width: 980px){
  .how-strip,.sk-checkout__grid,.sk-thanks__grid,.sk-ship-tiles{grid-template-columns:1fr}
  .sk-panel--sum{position:static}
  .sticky-cart{display:flex}
  .pdp-section{padding-bottom:96px}
}
@media (max-width: 640px){
  .how-strip{grid-template-columns:1fr 1fr}
}

/* —— v3 home story, salon card, cart extras —— */
.section--roomy{padding-top:88px}
.how-photos__head{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:36px}
.how-photos__head h2{font-size:44px; line-height:1.05; letter-spacing:-.02em}
.how-photos__head p{font-size:17px; line-height:1.55; color:var(--color-neutral-800); max-width:460px; margin:0}
.how-photos{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px}
.how-photos__img{aspect-ratio:4/3; border-radius:var(--radius-lg); overflow:hidden; margin-bottom:16px}
.how-photos__img img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}
.how-photos__copy{display:flex; gap:14px; align-items:baseline}
.how-photos__copy span{font-size:14px; color:var(--color-accent-800); font-weight:600; flex:none}
.how-photos__copy strong{display:block; font-size:20px; font-weight:500; letter-spacing:0}
.how-photos__copy p{margin:.4rem 0 0; font-size:15px; line-height:1.5; color:var(--color-neutral-700)}

.story{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center}
.story__photos{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.story__photo{border-radius:var(--radius-lg); overflow:hidden; aspect-ratio:3/4}
.story__photo--offset{margin-top:48px}
.story__photo img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}
.story__copy{display:flex; flex-direction:column; gap:22px}
.story__copy h2{font-size:44px; line-height:1.05}
.story__copy p{font-size:17px; line-height:1.6; margin:0}
.story__facts{display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-top:8px}
.story__facts>div{padding-top:16px; border-top:1.5px solid var(--color-text)}
.story__facts strong{display:block; font-size:16px; margin-bottom:6px}
.story__facts span{font-size:15px; line-height:1.5; color:var(--color-neutral-700)}

.salon-card{border-radius:var(--radius-lg); overflow:hidden; background:var(--color-surface); display:grid; grid-template-columns:1.1fr 1fr; align-items:stretch}
.salon-card__photo{min-height:460px}
.salon-card__photo img{width:100%; height:100%; object-fit:cover; filter:var(--photo)}
.salon-card__copy{padding:56px; display:flex; flex-direction:column; gap:20px; justify-content:center}
.salon-card__copy h2{font-size:40px; line-height:1.05}
.salon-card__copy p{font-size:17px; line-height:1.55; margin:0}
.salon-card__rows{border-top:1px solid var(--color-divider); font-size:15px}
.salon-card__rows>div{display:flex; justify-content:space-between; padding:14px 0; border-bottom:1px solid var(--color-divider)}
.salon-card__rows>div:last-child{border:0}
.salon-card__rows span{color:var(--color-neutral-700)}

.quote-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:stretch}
.quote-card{
  padding:48px; border-radius:var(--radius-lg); background:var(--color-accent-2-700); color:var(--color-neutral-100);
  display:flex; flex-direction:column; justify-content:space-between; gap:40px; min-height:420px;
}
.quote-card__stars{color:var(--color-accent); font-size:16px; letter-spacing:.12em}
.quote-card p{font-size:30px; font-weight:500; line-height:1.25; letter-spacing:-.02em; margin:18px 0 12px}
.quote-card cite{font-style:normal; font-size:15px; color:var(--color-accent-2-200)}
.quote-card__foot{display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:24px; border-top:1px solid var(--color-accent-2-600)}
.quote-card__foot strong{display:block; font-size:22px; font-weight:500}
.quote-card__foot span{font-size:14px; color:var(--color-accent-2-200)}
.quote-mosaic{display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:12px}
.quote-mosaic a,.quote-mosaic img{width:100%; height:100%; object-fit:cover; border-radius:var(--radius-lg); overflow:hidden; display:block; filter:var(--photo); min-height:160px}

.hold-note{padding:14px 20px; border-radius:var(--radius-md); background:var(--color-accent-200); color:var(--color-accent-900); font-size:14px; display:flex; justify-content:space-between; align-items:center; gap:12px; margin:8px 0 4px}
.hold-note__why{text-decoration:underline; font-size:13px; color:inherit}
.hold-note__exp{font-size:13px; color:var(--color-neutral-700); margin:0 0 8px}
.sk-line__chips{display:flex; gap:8px; flex-wrap:wrap}
.sk-chip,.sk-line__chips .variation{padding:6px 12px; border-radius:999px; background:var(--color-surface); font-size:13px; display:inline-block}
.sk-chip--warn{background:var(--color-accent-200); color:var(--color-accent-800)}
.sk-line__acts{display:flex; gap:20px; padding-top:10px; font-size:14px; color:var(--color-neutral-700); flex-wrap:wrap; align-items:center}
.sk-line__acts a,.sk-line__later,.sk-line__size{border-bottom:1px solid currentColor; background:none; color:inherit; padding:0; font:inherit; cursor:pointer}
.sk-line__size{border:0}
.sk-line__size select{height:36px; padding:0 12px; border-radius:999px; background:var(--color-surface); border:0; margin-left:6px}
.sk-line__sum{display:flex; flex-direction:column; align-items:flex-end; gap:6px; font-size:19px}
.sk-line__sum span{font-size:13px; color:var(--color-neutral-700)}
.sk-line h2{font-size:19px}
.sk-reserve-offer{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; border-radius:var(--radius-lg); background:var(--color-surface); margin-top:12px}
.sk-reserve-offer strong{display:block; font-size:16px; font-weight:500}
.sk-reserve-offer span{font-size:14px; color:var(--color-neutral-700)}
.sk-upsell{display:flex; flex-direction:column; gap:16px; padding-top:24px}
.sk-upsell>span{font-size:16px; font-weight:500}
.sk-upsell__grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
.sk-upsell article{display:grid; grid-template-columns:72px 1fr; gap:14px; align-items:center; padding:12px; border-radius:var(--radius-lg); border:1.5px solid var(--color-divider)}
.sk-upsell article img{aspect-ratio:4/5; object-fit:cover; border-radius:10px; filter:var(--photo); width:100%; height:auto}
.sk-upsell strong{display:block; font-size:14px; font-weight:500; line-height:1.3}
.sk-upsell em{display:block; font-style:normal; font-size:14px; color:var(--color-accent-800)}
.sk-upsell .add_to_cart_button{font-size:13px; color:var(--color-accent-2-800); border-bottom:1px solid currentColor}
.sk-sum .order-total td,.sk-sum .order-total th{font-size:26px; font-weight:500}
.sk-sum__vat{font-size:13px; color:var(--color-neutral-700); margin:-6px 0 12px}
.sk-promo{margin-top:16px; padding-top:16px; border-top:1px solid var(--color-divider); font-size:14px}
.sk-promo summary{display:flex; justify-content:space-between; cursor:pointer; color:var(--color-neutral-700)}
.sk-promo summary span{color:var(--color-accent-2-800); border-bottom:1px solid currentColor}
.sk-sum-ship{display:flex; flex-direction:column; gap:12px; padding:20px 24px; border-radius:var(--radius-lg); border:1.5px solid var(--color-divider); font-size:14px; margin-top:16px}
.sk-sum-ship>div{display:flex; justify-content:space-between}
.sk-sum-ship>div:last-child{padding-top:10px; border-top:1px solid var(--color-divider)}

.sk-block{margin-bottom:36px}
.sk-block h2{font-size:20px; font-weight:500; letter-spacing:-.01em; margin:0 0 16px}
.sk-checkout #customer_details .woocommerce-billing-fields > h3,
.sk-checkout .woocommerce-additional-fields > h3{display:none}
.sk-checkout #customer_details .woocommerce-billing-fields__field-wrapper{
  display:grid; grid-template-columns:1fr 1fr; gap:14px 16px;
}
.sk-checkout #billing_email_field,
.sk-checkout #billing_address_1_field,
.sk-checkout #billing_city_field,
.sk-checkout #billing_postcode_field,
.sk-checkout .sk-check,
.sk-checkout .sk-invoice-box,
.sk-checkout #order_comments_field,
.sk-checkout .create-account{grid-column:1/-1}
.sk-checkout .form-row{
  display:flex; flex-direction:column; gap:8px; margin:0; padding:0; float:none; width:auto;
}
.sk-checkout .form-row label{
  display:block; float:none; width:auto; margin:0; padding:0;
  font-size:14px; font-weight:600; line-height:1.3; color:var(--color-text);
}
.sk-checkout .form-row .optional{font-weight:400; color:var(--color-neutral-600); font-size:13px}
.sk-checkout .form-row .woocommerce-input-wrapper{display:block; width:100%}
.sk-checkout .form-row input.input-text,
.sk-checkout .form-row input[type=email],
.sk-checkout .form-row input[type=tel],
.sk-checkout .form-row input[type=text],
.sk-checkout .form-row input[type=password],
.sk-checkout .form-row textarea,
.sk-checkout .form-row select{
  display:block; width:100% !important; max-width:100%; height:50px; padding:0 20px;
  border:0; border-radius:999px; background:var(--color-neutral-100); color:var(--color-text);
  font-size:15px; line-height:50px; box-sizing:border-box;
  box-shadow:inset 0 0 0 1.5px var(--color-divider);
}
.sk-checkout .form-row textarea{
  height:auto; min-height:88px; padding:14px 20px; line-height:1.45; border-radius:16px; resize:vertical;
}
.sk-checkout .form-row input::placeholder,
.sk-checkout .form-row textarea::placeholder{color:var(--color-neutral-600)}
.sk-checkout .form-row-first, .sk-checkout .form-row-last{float:none; width:auto}
body.sk-ship-pickup #billing_address_1_field,
body.sk-ship-pickup #billing_city_field,
body.sk-ship-pickup #billing_postcode_field,
body.sk-ship-pickup .sk-addr{display:none !important}
.sk-checkout #order_review_heading,
.sk-checkout__aside > h2{font-size:22px; font-weight:500; letter-spacing:-.02em; margin:0 0 14px}
.sk-checkout #order_review.sk-panel{padding:24px}
.sk-checkout #order_review .shop_table{width:100%; border:0}
.sk-checkout #order_review .shop_table th,
.sk-checkout #order_review .shop_table td{
  border:0; padding:8px 0; text-align:left; vertical-align:top; font-weight:400; font-size:15px;
}
.sk-checkout #order_review .shop_table tfoot th{color:var(--color-neutral-700); font-weight:500}
.sk-checkout #order_review .order-total th,
.sk-checkout #order_review .order-total td{
  font-size:22px; font-weight:500; padding-top:14px; border-top:1px solid var(--color-divider);
}
.sk-checkout #payment{background:transparent; border:0; padding:0; margin-top:16px}
.sk-checkout #payment .form-row.place-order{margin:16px 0 0; padding:0; width:100%}
.sk-checkout #place_order{
  width:100%; padding:16px; border-radius:999px; border:0;
  background:var(--color-accent-2-700); color:var(--color-neutral-100);
  font-size:15px; font-weight:600;
}
.sk-checkout .woocommerce-terms-and-conditions-wrapper{font-size:14px; line-height:1.5; color:var(--color-neutral-700); margin:0 0 14px; overflow:visible}
.sk-checkout .woocommerce-form__label-for-checkbox{
  display:flex; align-items:flex-start; gap:10px; font-weight:400;
  white-space:normal; overflow:visible; max-width:100%;
}
.sk-checkout .woocommerce-terms-and-conditions-checkbox-text,
.sk-checkout .woocommerce-form__label-for-checkbox span{
  flex:1 1 auto; min-width:0; white-space:normal !important;
  overflow:visible !important; text-overflow:unset !important;
}
.sk-account .woocommerce-info{
  display:flex; flex-direction:column; align-items:flex-start; gap:10px;
}
.sk-account .woocommerce-info a.button,
.sk-account .woocommerce-info a.wc-forward{
  order:2; display:inline-block; padding:6px 14px; border-radius:999px;
  background:var(--color-accent-2-700); color:#fff; font-size:13px; font-weight:600;
}
.sk-checkout .woocommerce-privacy-policy-text{margin:0 0 10px}
.sk-checkout #order_review .includes_tax,
.sk-checkout #order_review .tax_label{
  display:block; font-size:13px; font-weight:400; color:var(--color-neutral-700); margin-top:4px;
}
.sk-checkout #order_review .order-total td{white-space:normal}
.sk-pay-host{display:grid; gap:10px}
.sk-pay-host .wc_payment_methods,
.sk-block--pay .wc_payment_methods{
  display:grid; grid-template-columns:1fr; gap:10px; list-style:none; margin:0; padding:0;
}
.sk-pay-host .wc_payment_method,
.sk-block--pay .wc_payment_method{
  margin:0; padding:16px 18px; border-radius:16px; border:1.5px solid var(--color-divider);
  background:var(--color-neutral-100); min-height:0;
}
.sk-pay-host .wc_payment_method > label,
.sk-block--pay .wc_payment_method > label{
  display:block; font-size:15px; font-weight:600; margin:0;
}
.sk-pay-host .payment_box,
.sk-block--pay .payment_box{
  background:transparent; padding:8px 0 0; margin:0; border:0;
  font-size:14px; line-height:1.5; color:var(--color-neutral-700);
}
.sk-pay-host .payment_box p, .sk-block--pay .payment_box p{margin:0}
.sk-pay-host li:has(input:checked){
  border-color:var(--color-accent-2-700); background:var(--color-accent-2-200);
}
.sk-pickup-sms{padding:16px 20px; border-radius:var(--radius-md); background:var(--color-surface); font-size:14px; color:var(--color-neutral-800); margin:0}
.sk-tile.is-on{background:var(--color-accent-2-200); color:var(--color-accent-2-900); border-color:transparent; box-shadow:none}
body.woocommerce-checkout:not(.woocommerce-order-received) .site-footer{display:none}
.ship-layout{display:grid; grid-template-columns:1fr 1.6fr; gap:56px; align-items:start}
.ship-layout__side{position:sticky; top:96px; display:flex; flex-direction:column; gap:20px}
.ship-layout__side .eyebrow, .ship-layout__side h1, .ship-layout__side .ship-help{margin:0}
.ship-layout h1{font-size:52px; line-height:1.02; letter-spacing:-.03em; font-weight:500; text-wrap:balance}
.ship-help{padding:20px 24px; border-radius:var(--radius-lg); background:var(--color-accent-2-200); color:var(--color-accent-2-900); font-size:15px; line-height:1.5}
.ship-layout__main{display:flex; flex-direction:column; gap:0}
.ship-row{display:grid; grid-template-columns:220px 1fr; gap:24px; padding:28px 0; border-top:1px solid var(--color-divider); align-items:start}
.ship-row h2{font-size:24px; margin:0; padding:0; border:0; letter-spacing:-.01em; font-weight:500}
.ship-row__text{display:flex; flex-direction:column; gap:12px}
.ship-row__text p{margin:0; padding:0; border:0; font-size:16px; line-height:1.6}
.pdp__atc{align-items:stretch}
.sk-line__chips dl{margin:0; display:inline}
.sk-line__chips dt{display:none}
.sk-line__chips dd{display:inline; margin:0; padding:6px 12px; border-radius:999px; background:var(--color-surface); font-size:13px}

@media (max-width: 980px){
  .how-photos,.how-photos__head,.story,.salon-card,.quote-grid,.sk-upsell__grid,.ship-layout,.story__facts,.ship-row{grid-template-columns:1fr}
  .story__photo--offset{margin-top:0}
  .salon-card__copy{padding:28px}
  .quote-card p{font-size:24px}
  .sk-cart__aside{grid-column:1; grid-row:auto}
  .sk-reserve-offer{flex-direction:column; align-items:flex-start}
  .hero{padding-top:8px}
  .hero__media{margin:24px var(--gutter) 0; height:380px; border-radius:999px 999px 24px 24px; overflow:hidden}
  .hero__media img{border-radius:0}
  .hero__badge{display:none}
}
@media (max-width: 640px){
  .how-photos{grid-template-columns:1fr}
}
