/*!
Theme Name: Worddrawing
Theme URI: https://worddrawing.com
Author: Worddrawing Studio
Description: Custom storefront theme for Worddrawing 鈥?personalised word art made from handwriting. Built for WooCommerce.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: worddrawing
*/

/* =========================================================
   1. Reset
   ========================================================= */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0}
img,svg,video,canvas{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5,h6,p,figure,blockquote{margin:0}
table{border-collapse:collapse;width:100%}
hr{border:0;border-top:1px solid var(--line);margin:0}
:focus-visible{outline:2px solid var(--clay);outline-offset:3px;border-radius:2px}

/* =========================================================
   2. Tokens
   ========================================================= */
:root{
  --paper:#F8F3EA;
  --paper-2:#EFE6D6;
  --paper-3:#E8DDC9;
  --card:#FFFCF6;
  --ink:#17150F;
  --ink-soft:#494336;
  --muted:#665D4F;
  --line:#DFD3BF;
  --line-soft:#EAE1D0;
  --clay:#A6522B;
  --clay-dark:#873F1E;
  --sage:#5F6B51;
  --gold:#B58B4C;
  --radius:6px;
  --radius-sm:3px;
  --shadow-s:0 1px 2px rgba(40,30,15,.05),0 10px 24px -18px rgba(40,30,15,.3);
  --shadow-m:0 2px 6px rgba(40,30,15,.06),0 26px 54px -32px rgba(40,30,15,.5);
  --shadow-frame:0 40px 70px -34px rgba(45,30,15,.55),0 8px 18px -12px rgba(45,30,15,.35);
  --serif:"Fraunces","Iowan Old Style",Georgia,"Times New Roman",serif;
  --sans:"Inter","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --script:"Caveat","Segoe Script","Bradley Hand",cursive;
  --ease:cubic-bezier(.2,.7,.3,1);
  --wrap:1280px;
  --pad:28px;
}

/* =========================================================
   3. Base typography
   ========================================================= */
body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1;
}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;letter-spacing:-.018em;line-height:1.06}
h1{font-size:clamp(38px,4.9vw,68px)}
h2{font-size:clamp(30px,3.5vw,46px)}
h3{font-size:clamp(21px,2vw,26px);line-height:1.15}
h4{font-size:19px;line-height:1.25}
p{line-height:1.7}
strong,b{font-weight:600}
em{font-style:italic}

.wd-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.wd-section{padding:clamp(56px,7.5vw,112px) 0}
.wd-section--tight{padding:clamp(36px,4.5vw,64px) 0}
.wd-rule{border-top:1px solid var(--line-soft)}

.eyebrow{
  display:flex;align-items:center;gap:10px;
  font-size:11px;letter-spacing:.17em;text-transform:uppercase;
  color:var(--muted);font-weight:500;
}
.eyebrow::before{content:"";width:26px;height:1px;background:currentColor;opacity:.6}
.lede{color:var(--ink-soft);font-size:17px;line-height:1.75;max-width:34em}
.muted{color:var(--muted)}
.script{font-family:var(--script)}

.wd-sechead{max-width:660px}
.wd-sechead h2{margin:14px 0 14px}

/* =========================================================
   4. Buttons & forms
   ========================================================= */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:52px;padding:0 26px;border:1px solid transparent;border-radius:var(--radius-sm);
  font-size:12px;letter-spacing:.11em;text-transform:uppercase;font-weight:500;
  transition:background .22s,color .22s,border-color .22s,transform .22s;
  white-space:nowrap;cursor:pointer;
}
.btn--primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn--primary:hover{background:var(--clay);border-color:var(--clay);transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--ink);border-color:#CFC2AC}
.btn--ghost:hover{border-color:var(--ink);background:rgba(25,23,18,.03)}
.btn--light{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn--light:hover{background:#fff;border-color:#fff}
.btn--block{width:100%}
.btn--sm{height:44px;padding:0 18px;font-size:11px}

.link-arrow{
  display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;border-bottom:1px solid rgba(25,23,18,.28);padding-bottom:4px;
  transition:border-color .2s;
}
.link-arrow:hover{border-color:var(--ink)}
.link-arrow svg{transition:transform .22s var(--ease)}
.link-arrow:hover svg{transform:translateX(3px)}

input[type="text"],input[type="email"],input[type="tel"],input[type="password"],
input[type="search"],input[type="number"],input[type="url"],select,textarea{
  width:100%;border:1px solid #CBBEA9;background:#FFFDF8;border-radius:var(--radius-sm);
  padding:14px 16px;font-size:15px;color:var(--ink);
  transition:border-color .2s,box-shadow .2s;
}
input:focus,select:focus,textarea:focus{
  outline:none;border-color:var(--clay);box-shadow:0 0 0 3px rgba(166,82,43,.12);
}
::placeholder{color:#A89A85}
label{font-size:12.5px;letter-spacing:.04em;color:var(--ink-soft)}

/* =========================================================
   5. Promo bar + header
   ========================================================= */
.wd-promo{
  background:var(--ink);color:#EFE7D8;font-size:11.5px;letter-spacing:.13em;
  text-transform:uppercase;display:flex;justify-content:center;gap:26px;
  padding:9px 18px;flex-wrap:wrap;text-align:center;
}
.wd-promo span{display:inline-flex;align-items:center;gap:8px}
.wd-promo i{width:4px;height:4px;border-radius:50%;background:var(--clay)}

.wd-header{
  position:sticky;top:0;z-index:60;
  background:rgba(248,243,234,.9);
  backdrop-filter:saturate(150%) blur(12px);
  -webkit-backdrop-filter:saturate(150%) blur(12px);
  border-bottom:1px solid transparent;
  transition:border-color .3s,box-shadow .3s;
}
.wd-header.is-stuck{border-bottom-color:var(--line-soft);box-shadow:0 8px 26px -24px rgba(30,20,10,.9)}
.wd-header__inner{display:flex;align-items:center;gap:34px;height:74px}
.wd-logo{
  font-family:var(--serif);font-size:24px;letter-spacing:-.02em;line-height:1;
  display:inline-flex;align-items:baseline;
}
.wd-logo .dot{color:var(--clay)}
.wd-nav{display:flex;margin-left:auto}
.wd-nav__list{display:flex;gap:26px;align-items:center}
.wd-logo__img{max-height:44px;width:auto;display:block}
.wd-nav a{
  font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);
  padding:6px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s;
}
.wd-nav a:hover,.wd-nav li.current-menu-item > a{color:var(--ink);border-color:var(--ink)}
.wd-actions{display:flex;align-items:center;gap:4px}
.wd-icon-btn{
  position:relative;display:grid;place-items:center;width:42px;height:42px;
  border-radius:50%;transition:background .2s;
}
.wd-icon-btn:hover{background:rgba(25,23,18,.06)}
.wd-cart-count{
  position:absolute;top:4px;right:3px;min-width:17px;height:17px;border-radius:99px;
  background:var(--clay);color:#fff;font-size:10px;line-height:17px;text-align:center;
  font-weight:600;padding:0 4px;
}
.wd-burger{display:none}

.wd-mobile-nav{
  display:none;position:fixed;left:0;right:0;top:74px;z-index:55;background:var(--paper);
  border-bottom:1px solid var(--line);padding:16px var(--pad) 26px;
  transform:translateY(-12px);opacity:0;pointer-events:none;transition:.28s var(--ease);
  box-shadow:0 30px 40px -30px rgba(30,20,10,.5);max-height:calc(100vh - 74px);overflow:auto;
}
.wd-mobile-nav.open{transform:none;opacity:1;pointer-events:auto}
.wd-mobile-nav a{
  display:block;padding:13px 0;border-bottom:1px solid var(--line-soft);
  font-size:13px;letter-spacing:.1em;text-transform:uppercase;
}
.wd-mobile-nav .btn{margin-top:18px;width:100%}

/* =========================================================
   6. Hero
   ========================================================= */
.wd-hero{position:relative;overflow:hidden;padding:clamp(36px,5vw,72px) 0 clamp(52px,6.5vw,92px)}
.wd-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(56% 48% at 78% 32%, rgba(233,206,178,.55), transparent 70%),
    radial-gradient(38% 40% at 6% 10%, rgba(214,226,208,.4), transparent 70%);
}
.wd-hero__grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,4vw,64px);align-items:center}
.wd-hero h1{margin:18px 0 22px}
.wd-hero h1 em{font-style:italic;color:var(--clay)}
.wd-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.wd-hero__meta{display:flex;flex-wrap:wrap;gap:16px 26px;margin-top:26px;font-size:12.5px;color:var(--muted);align-items:center}
.wd-hero__meta b{color:var(--ink);font-weight:500}
.stars{color:var(--clay);letter-spacing:.12em;font-size:12px;white-space:nowrap}

.wd-hero__visual{position:relative;padding:18px 0 56px}
.wd-frame{
  position:relative;background:#FFFDF8;padding:clamp(10px,1.9vw,20px);
  border:9px solid var(--frame,#23201B);box-shadow:var(--shadow-frame);
  transition:transform .5s var(--ease),box-shadow .5s;
}
.wd-frame--oak{--frame:#C7A276}
.wd-frame--black{--frame:#24211C}
.wd-frame--hero{width:min(100%,412px);margin-left:auto;transform:rotate(-1.1deg);z-index:2}
.wd-frame--hero:hover{transform:rotate(0) translateY(-4px)}
.wd-frame__art{aspect-ratio:1/1;background:#FFFCF4;overflow:hidden}
.wd-frame__art svg{width:100%;height:100%}

.wd-float{
  position:absolute;background:var(--card);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow-m);padding:14px 16px;
}
.wd-float--hand{left:-2px;top:0;width:182px;transform:rotate(-6deg);background:#FFFDF6;z-index:1}
.wd-hand{font-family:var(--script);font-size:24px;line-height:1.2;color:#2B2A35;white-space:nowrap}
.wd-hand span{display:block;font-size:12px;font-family:var(--sans);color:var(--muted);margin-top:6px}
.wd-hand__line{height:1px;background:#D8CFC0;margin-top:10px;position:relative}
.wd-hand__line::after{
  content:"";position:absolute;left:6%;right:30%;top:-4px;height:7px;
  border-bottom:1.5px solid #3C3A45;border-radius:0 0 60% 20%;opacity:.75;
}
.wd-float--proof{right:-18px;bottom:-34px;width:196px;transform:rotate(1.4deg);z-index:3}
.wd-proof-live{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.wd-proof-live i{width:6px;height:6px;border-radius:50%;background:#6E8A5B;box-shadow:0 0 0 3px rgba(110,138,91,.16)}
.wd-float--proof p{font-size:12.5px;line-height:1.55;margin:9px 0 12px;color:var(--ink-soft)}

.pill{
  display:inline-flex;align-items:center;border:1px solid #D6C9B6;background:#fff;border-radius:99px;
  padding:6px 12px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-soft);transition:.2s;
}
.pill--clay{background:var(--clay);border-color:var(--clay);color:#fff}
.pill--clay:hover{background:var(--clay-dark)}
.pill:hover{border-color:var(--ink)}

/* =========================================================
   7. Trust strip
   ========================================================= */
.wd-trust{background:var(--card);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.wd-trust__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.wd-trust__item{display:flex;gap:13px;padding:26px 24px;border-left:1px solid var(--line-soft)}
.wd-trust__item:first-child{border-left:0;padding-left:0}
.wd-trust__item svg{flex:0 0 22px;margin-top:3px;color:var(--clay)}
.wd-trust__item h4{font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.01em;line-height:1.5}
.wd-trust__item p{font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:2px}

/* =========================================================
   8. Steps
   ========================================================= */
.wd-steps-head{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;margin-bottom:52px}
.wd-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.wd-step{border-top:1px solid var(--line);padding-top:20px}
.wd-step .num{font-family:var(--serif);font-size:13px;color:var(--clay);letter-spacing:.08em}
.wd-step h3{font-size:21px;margin:10px 0 8px}
.wd-step p{font-size:13.5px;color:var(--muted);line-height:1.62}

/* =========================================================
   9. Format cards
   ========================================================= */
.wd-formats{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wd-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.wd-card{
  position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 28px 28px;display:flex;flex-direction:column;
  transition:transform .28s var(--ease),box-shadow .28s;
}
.wd-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-m)}
.wd-card--feature{border-color:var(--clay);box-shadow:inset 0 0 0 1px var(--clay)}
.wd-badge{
  position:absolute;top:-11px;left:26px;background:var(--clay);color:#fff;
  font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:99px;
}
.wd-card .kicker{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.wd-card h3{font-size:25px;margin:8px 0 4px}
.wd-price{font-family:var(--serif);font-size:30px;margin:14px 0 2px;line-height:1.1}
.wd-price small{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:6px}
.wd-card ul{display:grid;gap:9px;margin:18px 0 24px}
.wd-card li{display:flex;gap:9px;font-size:13.5px;color:var(--ink-soft);line-height:1.5}
.wd-card li svg{flex:0 0 14px;margin-top:4px;color:var(--sage)}
.wd-card .btn{margin-top:auto;width:100%}

/* =========================================================
   10. Live preview
   ========================================================= */
.wd-try{display:grid;grid-template-columns:1fr 1.02fr;gap:clamp(32px,5vw,72px);align-items:center}
.wd-try__field{margin-top:30px}
.wd-try__field > label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.wd-try input.wd-input{
  height:58px;font-family:var(--serif);font-size:19px;padding:0 16px;
}
.wd-shapes{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.wd-shape{
  display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:99px;
  border:1px solid #D3C6B2;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;
  color:var(--ink-soft);transition:.2s;
}
.wd-shape svg{width:14px;height:14px}
.wd-shape:hover{border-color:var(--ink)}
.wd-shape.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.wd-try__actions{display:flex;align-items:center;gap:16px;margin-top:28px;flex-wrap:wrap}
.wd-try__note{font-size:12px;color:var(--muted);max-width:20em;line-height:1.5}
.wd-samples{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:var(--muted)}
.wd-samples button{border-bottom:1px dashed #BFB2A0;padding:0;font-size:12px;color:var(--muted)}
.wd-samples button:hover{color:var(--clay);border-color:var(--clay)}
.wd-try__stage{display:grid;place-items:center;position:relative}
.wd-try__stage .wd-frame{width:min(100%,430px)}
.wd-try__stage .wd-frame::before{
  content:"";position:absolute;left:6%;right:6%;bottom:-22px;height:26px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(60,40,20,.22),transparent);filter:blur(2px);
}

/* =========================================================
   11. Gallery
   ========================================================= */
.wd-gallery{background:var(--card);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.wd-gallery__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:42px}
.wd-gallery__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 22px}
.wd-piece{display:flex;flex-direction:column;gap:14px}
.wd-piece .wd-frame{width:100%;padding:12px;border-width:8px;transition:transform .35s var(--ease),box-shadow .35s}
.wd-piece:hover .wd-frame{transform:translateY(-5px) rotate(-.4deg);box-shadow:0 34px 50px -30px rgba(45,30,15,.55)}
.wd-piece figcaption{font-size:12.5px;line-height:1.55}
.wd-piece figcaption b{display:block;font-weight:500;font-size:13px}
.wd-piece figcaption span{color:var(--muted)}
.wd-piece:nth-child(2),.wd-piece:nth-child(5){margin-top:34px}

/* =========================================================
   12. Proof
   ========================================================= */
.wd-proof{position:relative}
.wd-proof__grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(32px,5vw,72px);align-items:center}
.wd-proof__list{display:grid;gap:16px;margin-top:28px}
.wd-proof__list li{display:flex;gap:12px;font-size:14.5px;color:var(--ink-soft)}
.wd-proof__list b{font-weight:500;color:var(--ink)}
.wd-proof__list svg{flex:0 0 18px;margin-top:3px;color:var(--clay)}
.wd-mail{
  background:var(--card);border:1px solid var(--line);border-radius:10px;
  box-shadow:var(--shadow-m);overflow:hidden;max-width:470px;margin-left:auto;transform:rotate(.8deg);
}
.wd-mail__top{display:flex;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line-soft);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.wd-mail__body{padding:20px 18px 22px;display:grid;grid-template-columns:112px 1fr;gap:16px}
.wd-mail__thumb .wd-frame{padding:6px;border-width:5px;box-shadow:none}
.wd-mail__body h4{font-size:18px;margin-bottom:6px}
.wd-mail__body p{font-size:12.5px;color:var(--muted);line-height:1.55}
.wd-mail__actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.wd-mail__foot{padding:10px 18px;background:#F4EEE2;font-size:10.5px;color:var(--muted);display:flex;gap:6px;align-items:center}

/* =========================================================
   13. Reviews
   ========================================================= */
.wd-reviews__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.wd-score{display:flex;align-items:center;gap:14px}
.wd-score .big{font-family:var(--serif);font-size:44px;line-height:1}
.wd-score .sm{font-size:12px;color:var(--muted);line-height:1.5}
.wd-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.wd-review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column;gap:12px}
.wd-review p{font-family:var(--serif);font-style:italic;font-size:15.5px;line-height:1.65;color:var(--ink-soft)}
.wd-review .who{font-size:12px;color:var(--muted);margin-top:auto}
.wd-review .who b{color:var(--ink);font-weight:500}
.wd-verified{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--sage)}

/* =========================================================
   14. FAQ
   ========================================================= */
.wd-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,5vw,72px)}
.wd-faq__list{border-top:1px solid var(--line)}
.wd-faq details{border-bottom:1px solid var(--line)}
.wd-faq summary{
  list-style:none;cursor:pointer;padding:20px 36px 20px 0;position:relative;
  font-family:var(--serif);font-size:18px;line-height:1.4;
}
.wd-faq summary::-webkit-details-marker{display:none}
.wd-faq summary::after{
  content:"";position:absolute;right:6px;top:50%;width:11px;height:11px;margin-top:-6px;
  border-right:1.3px solid var(--ink-soft);border-bottom:1.3px solid var(--ink-soft);
  transform:rotate(45deg);transition:transform .25s;
}
.wd-faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.wd-faq .ans{padding:0 40px 22px 0;font-size:14px;color:var(--muted);line-height:1.7}

/* =========================================================
   15. Newsletter
   ========================================================= */
.wd-band{background:var(--ink);color:#F1E9DA;position:relative;overflow:hidden}
.wd-band::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(50% 100% at 80% 0%, rgba(166,82,43,.35), transparent 70%);
}
.wd-band__inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center;padding-top:60px;padding-bottom:60px}
.wd-band h2{color:#FBF5E9}
.wd-band p{color:#C9BFAE;font-size:14px;margin-top:10px;max-width:34em}
.wd-band form{display:flex;gap:10px;flex-wrap:wrap}
.wd-band input{
  flex:1 1 220px;height:54px;background:transparent;border:1px solid rgba(241,233,218,.32);
  border-radius:var(--radius-sm);color:#FBF5E9;padding:0 16px;font-size:14px;
}
.wd-band input::placeholder{color:rgba(241,233,218,.5)}
.wd-band .btn{height:54px}
.wd-band .fine{font-size:11px;color:rgba(201,191,174,.75);margin-top:12px}

/* =========================================================
   16. Footer
   ========================================================= */
.wd-footer{background:#141310;color:#C6BDAD;font-size:13px;padding:64px 0 26px}
.wd-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.09)}
.wd-footer .wd-logo{color:#F6EFE1;font-size:26px}
.wd-footer h5{font-family:var(--sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#A39A8A;margin:0 0 14px;font-weight:500}
.wd-footer li + li{margin-top:9px}
.wd-footer a:hover{color:#F6EFE1}
.wd-footer__bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;padding-top:22px;font-size:11.5px;color:#9A9182}
.wd-pay{display:flex;gap:6px;flex-wrap:wrap}
.wd-pay span{border:1px solid rgba(255,255,255,.16);border-radius:3px;padding:4px 9px;font-size:10px;letter-spacing:.05em;color:#C6BDAD}

/* sticky add-to-cart (phones) */
.wd-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:95;display:none;
  background:rgba(248,243,234,.97);backdrop-filter:blur(10px);
  border-top:1px solid var(--line);padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));
  transform:translateY(110%);transition:transform .3s var(--ease);
}
.wd-sticky.is-on{transform:none}
.wd-sticky__inner{display:flex;align-items:center;gap:14px;max-width:var(--wrap);margin:0 auto}
.wd-sticky__price{font-family:var(--serif);font-size:19px;margin-right:auto;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wd-sticky__price .screen-reader-text{display:none}
.wd-sticky__price del{display:none}
.wd-sticky .btn{height:46px;min-width:168px;flex:0 0 auto}
@media (max-width:960px){.wd-sticky{display:block}}

/* product size table */
.wd-tab{max-width:720px}
.wd-sizes{font-size:13.5px;margin:18px 0 26px}
.wd-sizes th{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:500;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
.wd-sizes td{padding:12px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft)}
.wd-tab h3{font-size:20px;margin:26px 0 10px}
.wd-plain-list{display:grid;gap:8px;font-size:14px;color:var(--ink-soft)}
.wd-plain-list li{position:relative;padding-left:16px;line-height:1.6}
.wd-plain-list li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--clay);opacity:.7}

/* customer download button */
.wd-order-download{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:18px 0 0}
.wd-order-download .btn{height:46px}
.wd-order-download__note{font-size:12px;color:var(--muted)}

/* thank-you next steps */
.wd-next{margin:34px 0 0;padding:26px 28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.wd-next h3{font-size:21px;margin-bottom:14px}
.wd-next ol{margin:0;padding-left:1.1em;display:grid;gap:10px;font-size:14px;color:var(--ink-soft)}
.wd-next li{line-height:1.6}
.wd-next li strong{color:var(--ink);font-weight:600}
.wd-next__note{margin-top:16px;font-size:12px;color:var(--muted)}

/* cookie notice */
.wd-cookie{
  position:fixed;left:24px;bottom:24px;z-index:110;max-width:420px;background:var(--ink);color:#EFE7D8;
  border-radius:6px;padding:18px 20px;box-shadow:0 24px 50px -20px rgba(0,0,0,.6);
  display:flex;flex-direction:column;gap:14px;
}
.wd-cookie[hidden]{display:none}
.wd-cookie p{font-size:12.5px;line-height:1.6;color:#CDC3B2;margin:0}
.wd-cookie a{color:#F3EADA;border-bottom:1px solid rgba(243,234,218,.4)}
.wd-cookie__actions{display:flex;gap:8px;flex-wrap:wrap}
.wd-cookie__ghost{background:transparent;color:#EFE7D8;border-color:rgba(241,233,218,.35)}
.wd-cookie__ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(241,233,218,.6)}
@media (max-width:620px){.wd-cookie{left:16px;right:16px;bottom:16px;max-width:none}}

/* =========================================================
   17. Toast
   ========================================================= */
.wd-toast{
  position:fixed;left:50%;bottom:26px;transform:translate(-50%,24px);z-index:120;
  background:var(--ink);color:var(--paper);padding:14px 20px;border-radius:4px;font-size:13px;
  box-shadow:0 20px 40px -18px rgba(0,0,0,.6);opacity:0;pointer-events:none;
  transition:.35s var(--ease);max-width:min(92vw,480px);display:flex;gap:10px;align-items:center;
}
.wd-toast.is-on{opacity:1;transform:translate(-50%,0)}
.wd-toast svg{flex:0 0 16px;color:#9DC08B}

/* =========================================================
   18. Inner pages
   ========================================================= */
.wd-page-head{padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,40px);border-bottom:1px solid var(--line-soft)}
.wd-page-head .eyebrow{margin-bottom:14px}
.wd-page-head p{margin-top:14px;max-width:40em;color:var(--ink-soft)}
.wd-content{padding:clamp(40px,5vw,72px) 0 clamp(56px,7vw,96px)}
.wd-prose{max-width:760px}
.wd-prose > * + *{margin-top:1.1em}
.wd-prose h2{margin-top:1.9em;font-size:clamp(26px,2.6vw,34px)}
.wd-prose h3{margin-top:1.6em}
.wd-prose ul,.wd-prose ol{padding-left:1.2em;list-style:disc}
.wd-prose li{margin:.4em 0}
.wd-prose a{color:var(--clay);border-bottom:1px solid rgba(166,82,43,.35)}
.wd-prose blockquote{border-left:2px solid var(--clay);padding-left:18px;font-family:var(--serif);font-style:italic;font-size:19px}
.wd-prose table{font-size:14px;margin-top:1.2em}
.wd-prose th,.wd-prose td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left}
.wd-prose img{border-radius:var(--radius)}

/* =========================================================
   19. WooCommerce 鈥?shared
   ========================================================= */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  background:var(--card);border:1px solid var(--line);border-top:2px solid var(--clay);
  border-radius:var(--radius);padding:16px 20px;margin:0 0 28px;font-size:14px;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;list-style:none;
}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before{display:none}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button{margin-left:auto}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.wc-block-components-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:48px;padding:0 22px;border-radius:var(--radius-sm);border:1px solid var(--ink);
  background:var(--ink);color:var(--paper);font-size:11.5px;letter-spacing:.11em;
  text-transform:uppercase;font-weight:500;transition:.2s;line-height:1;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.wc-block-components-button:hover{background:var(--clay);border-color:var(--clay);color:#fff}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:var(--clay);border-color:var(--clay);color:#fff;
}
.woocommerce a.button.alt:hover{background:var(--clay-dark)}
.woocommerce .button.wc-forward{background:var(--ink);color:var(--paper)}
.woocommerce #respond input#submit.disabled,
.woocommerce button.button:disabled{opacity:.45}

.woocommerce form .form-row label{font-size:12.5px;letter-spacing:.03em;color:var(--ink-soft);margin-bottom:6px}
.woocommerce form .form-row{margin-bottom:16px}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{height:auto;padding:13px 15px}

.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 22px;margin:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;padding:0;
  display:flex;flex-direction:column;gap:12px;text-align:left;
}
.woocommerce ul.products li.product .wd-product-media{
  position:relative;display:block;background:var(--card);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s;
}
.woocommerce ul.products li.product:hover .wd-product-media{transform:translateY(-4px);box-shadow:var(--shadow-m)}
.woocommerce ul.products li.product .wd-product-media img{width:100%;aspect-ratio:1/1;object-fit:cover}
.woocommerce ul.products li.product .wd-product-media svg{width:100%;height:auto;aspect-ratio:1/1;display:block}
.wd-product-trust{display:grid;gap:10px;margin:22px 0 0;padding-top:20px;border-top:1px solid var(--line-soft)}
.wd-product-trust li{display:flex;gap:9px;font-size:13px;color:var(--muted);line-height:1.5}
.wd-product-trust svg{flex:0 0 14px;margin-top:4px;color:var(--sage)}
.wd-page-title{font-size:clamp(30px,3.6vw,46px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--serif);font-size:18px;padding:0;font-weight:400;line-height:1.25;
}
.woocommerce ul.products li.product .price{
  font-family:var(--sans);font-size:14px;color:var(--ink-soft);margin:0;
}
.woocommerce ul.products li.product .price del{opacity:.45;margin-right:6px}
.woocommerce ul.products li.product .button{
  margin-top:8px;height:42px;font-size:11px;width:100%;
}
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale{
  background:var(--clay);color:#fff;border-radius:99px;padding:4px 10px;
  font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;min-height:0;line-height:1.6;
  position:absolute;top:12px;left:12px;z-index:2;
}
.woocommerce .star-rating{color:var(--clay);font-size:12px}

/* live canvas on the product page */
.wd-live-gallery{max-width:520px}
.wd-live-gallery .wd-frame{width:100%;padding:14px;border-width:9px}
.wd-live-gallery__hint{margin-top:16px;font-size:12px;color:var(--muted);text-align:center;line-height:1.5}
.woocommerce .reset_variations{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-left:8px}
.woocommerce div.product form.cart{margin-top:20px}

/* personalisation form */
.wd-perso{margin:26px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.wd-perso__title{font-size:18px;margin-bottom:14px}
.wd-perso__field{display:block;margin:0 0 16px}
.wd-perso__field > label{display:block;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.wd-perso textarea{min-height:86px;resize:vertical}
.wd-perso select{height:46px}
.wd-perso__hint{display:block;margin-top:6px;font-size:11.5px;color:var(--muted);line-height:1.5}
.wd-perso__hint--center{text-align:center;margin-top:10px}
.wd-perso .req{color:var(--clay)}
.wd-perso__preview{margin:18px 0 4px;max-width:300px}
.wd-perso__preview .wd-frame{padding:10px;border-width:7px}
.wd-perso input[type="file"]{font-size:12.5px;padding:10px 0;border:0;background:transparent}

/* shop toolbar */
.woocommerce .woocommerce-result-count{font-size:12.5px;color:var(--muted);margin:10px 0 22px;float:left}
.woocommerce .woocommerce-ordering{margin:0 0 22px;float:right}
.woocommerce .woocommerce-ordering select{height:44px;padding:0 14px;font-size:13px;width:auto;min-width:190px}
.woocommerce ul.products{clear:both}
.wd-shop-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.wd-shop-bar form.woocommerce-ordering{margin:0}

/* single product */
.woocommerce div.product{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);align-items:start}
.woocommerce div.product > *{min-width:0}
.woocommerce div.product div.images{margin:0}
.woocommerce div.product div.images img{border-radius:var(--radius);border:1px solid var(--line)}
.woocommerce div.product div.summary{margin:0;position:sticky;top:96px}
.woocommerce div.product .product_title{font-size:clamp(28px,3vw,38px);margin-bottom:8px}
.woocommerce div.product p.price{font-size:24px;color:var(--ink);font-family:var(--serif);margin:10px 0 16px}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:15px;color:var(--ink-soft);line-height:1.7}
.woocommerce div.product form.cart{margin:24px 0 0;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.woocommerce div.product form.cart .quantity{margin:0}
.woocommerce div.product form.cart .quantity label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.woocommerce div.product form.cart .button{height:52px;flex:1 1 240px;min-width:220px}
.woocommerce div.product .variations{max-width:360px;margin-bottom:8px}
.woocommerce div.product .variations th,
.woocommerce div.product .variations td{padding:6px 0;border:0;vertical-align:middle}
.woocommerce div.product .variations th{width:82px;text-align:left;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}
.woocommerce div.product .variations select{height:46px}
.woocommerce .quantity input.qty{
  width:72px;height:52px;border:1px solid #CBBEA9;background:#FFFDF8;border-radius:var(--radius-sm);
  text-align:center;font-size:15px;
}
.woocommerce div.product form.cart .button{height:52px;flex:1 1 220px}
.woocommerce div.product .product_meta{font-size:12px;color:var(--muted);border-top:1px solid var(--line-soft);padding-top:16px;margin-top:22px}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:56px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--line);display:flex;gap:26px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:none;border:0;border-radius:0;margin:0;padding:0 0 12px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom:1px solid var(--ink)}
.woocommerce div.product .related.products{margin-top:64px}
.woocommerce div.product .related.products > h2{font-size:26px;margin-bottom:24px}
.woocommerce div.product .related.products ul.products{grid-template-columns:repeat(3,1fr)}

/* cart & checkout */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce{padding:clamp(32px,4vw,56px) 0 clamp(56px,7vw,88px)}
.woocommerce table.shop_table{
  border:1px solid var(--line);border-radius:var(--radius);border-collapse:separate;border-spacing:0;
  background:var(--card);font-size:14px;
}
.woocommerce table.shop_table th{
  font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);
  font-weight:500;padding:14px 16px;border-bottom:1px solid var(--line);
}
.woocommerce table.shop_table td{padding:16px;border-top:1px solid var(--line-soft)}
.woocommerce table.shop_table img{width:64px;border-radius:4px}
.woocommerce .cart-collaterals{margin-top:32px}
.woocommerce .cart-collaterals .cart_totals{width:100%;float:none;max-width:460px;margin-left:auto}
.woocommerce .cart_totals h2{font-size:22px;margin-bottom:12px}
.woocommerce .cart_totals table.shop_table{background:var(--paper-2)}
.woocommerce table.shop_table td.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.woocommerce table.shop_table td.actions .coupon{display:flex;gap:8px;align-items:center;margin:0}
.woocommerce table.shop_table td.actions .coupon label{display:none}
.woocommerce table.shop_table td.actions .button{width:auto;height:44px}
.woocommerce .wc-proceed-to-checkout a.checkout-button{width:100%;height:56px;font-size:12px;letter-spacing:.13em}
.woocommerce table.shop_table .wd-cart-thumb{width:76px;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff}
.woocommerce table.shop_table .wd-cart-thumb svg{width:100%;height:auto;display:block}
.woocommerce .woocommerce-info{background:var(--paper-2);border-color:var(--line);border-top-color:var(--line)}
.woocommerce #coupon_code{height:44px;width:150px;margin-right:8px}
.woocommerce .cross-sells ul.products{grid-template-columns:repeat(2,1fr)}
.woocommerce form.checkout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,56px);align-items:start}
.woocommerce form.checkout > .woocommerce-NoticeGroup,
.woocommerce form.checkout > .col2-set,
.woocommerce form.checkout > #customer_details{grid-column:1}
.woocommerce form.checkout #order_review_heading,
.woocommerce form.checkout #order_review{grid-column:2;grid-row:1 / span 2}
.woocommerce form.checkout #order_review_heading{margin:0 0 12px}
.woocommerce form.checkout #order_review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;position:sticky;top:96px}
.woocommerce form.checkout h3{font-size:22px;margin:26px 0 14px}
.woocommerce form.checkout #customer_details{display:block}
.woocommerce form.checkout #customer_details .col-1,
.woocommerce form.checkout #customer_details .col-2{width:100%;float:none}
.woocommerce form.checkout .form-row-first,
.woocommerce form.checkout .form-row-last{width:calc(50% - 11px);float:left;clear:none}
.woocommerce form.checkout .form-row-last{float:right}
.woocommerce form.checkout .form-row-wide{width:100%;float:none;clear:both}
.woocommerce form.checkout .woocommerce-billing-fields__field-wrapper{display:flow-root}
.woocommerce #payment{background:transparent;border-radius:0;margin-top:8px}
.woocommerce #payment ul.payment_methods{border:0;padding:0;margin:0 0 16px}
.woocommerce #payment ul.payment_methods li{padding:12px 0;border-bottom:1px solid var(--line-soft)}
.woocommerce #payment div.payment_box{background:var(--paper-2);border-radius:var(--radius-sm);font-size:13px;margin:8px 0 0}
.woocommerce #payment div.payment_box::before{display:none}
.woocommerce #payment #place_order{width:100%;height:56px;font-size:12px;letter-spacing:.14em;margin-top:6px}

/* account & misc */
.woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:220px 1fr;gap:40px}
.woocommerce-account #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:960px}
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2{width:auto;float:none}
.woocommerce-account #customer_login h2{font-size:26px;margin-bottom:16px}
.woocommerce form.login,.woocommerce form.register{
  border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:var(--card);max-width:none;margin:0;
}
.woocommerce form.login .form-row,.woocommerce form.register .form-row{margin-bottom:16px}
.woocommerce form.login .woocommerce-form-login__rememberme{
  display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);margin:0 0 14px;
}
.woocommerce form.login .woocommerce-form-login__submit{width:100%;height:50px;margin:0}
.woocommerce form.login .lost_password{font-size:13px;margin:14px 0 0}
.woocommerce form.login .lost_password a{color:var(--muted);border-bottom:1px solid #CFC2AC}
.woocommerce .woocommerce-form-login-toggle .woocommerce-info,
.woocommerce .woocommerce-form-coupon-toggle .woocommerce-info{font-size:13.5px}
.woocommerce-account .woocommerce-MyAccount-navigation{width:auto;float:none}
.woocommerce-account .woocommerce-MyAccount-navigation ul{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--card)}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line-soft)}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;font-size:13px}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--ink);color:var(--paper)}
.woocommerce-account .woocommerce-MyAccount-content{width:auto;float:none}
.woocommerce .woocommerce-form-login,.woocommerce .woocommerce-form-register{
  border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:var(--card);max-width:480px;
}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center;margin-top:40px}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--line);
  border-radius:var(--radius-sm);font-size:13px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.woocommerce .woocommerce-breadcrumb{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}
.woocommerce .woocommerce-breadcrumb a{color:var(--muted)}
.woocommerce-orders-table .button{height:34px;font-size:10px;padding:0 14px}

/* =========================================================
   20. Reveal & utilities
   ========================================================= */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;word-wrap:normal!important}

/* =========================================================
   21. Responsive
   ========================================================= */
@media (max-width:1080px){
  .wd-nav{gap:18px}
  .wd-nav a{font-size:11px}
  .wd-trust__grid{grid-template-columns:repeat(2,1fr)}
  .wd-trust__item:nth-child(3){border-left:0;padding-left:0}
  .wd-trust__item:nth-child(3),.wd-trust__item:nth-child(4){border-top:1px solid var(--line-soft)}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .woocommerce div.product{grid-template-columns:1fr}
  .woocommerce div.product div.summary{position:static}
  .woocommerce form.checkout{grid-template-columns:1fr}
  .woocommerce form.checkout #order_review_heading,
  .woocommerce form.checkout #order_review{grid-column:1;grid-row:auto}
  .woocommerce form.checkout #order_review{position:static}
  .woocommerce-account .woocommerce{grid-template-columns:1fr}
}
@media (max-width:960px){
  .wd-nav{display:none}
  .wd-burger{display:grid}
  .wd-mobile-nav{display:block}
  .wd-hero__grid{grid-template-columns:1fr;gap:40px}
  .wd-hero__visual{padding:22px 0 34px;max-width:520px;margin:0 auto;width:100%}
  .wd-frame--hero{margin:0 auto}
  .wd-float--hand{left:-2px;top:-10px;width:164px}
  .wd-float--proof{right:-2px;bottom:-8px;width:218px}
  .wd-steps{grid-template-columns:repeat(2,1fr)}
  .wd-steps-head{grid-template-columns:1fr;gap:16px}
  .wd-try,.wd-proof__grid,.wd-faq,.wd-band__inner{grid-template-columns:1fr}
  .wd-cards{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}
  .wd-gallery__grid{grid-template-columns:repeat(2,1fr)}
  .wd-piece:nth-child(2),.wd-piece:nth-child(5){margin-top:0}
  .wd-review-grid{grid-template-columns:1fr}
  .wd-mail{margin:0;max-width:none;transform:none}
  .wd-footer__grid{grid-template-columns:1fr 1fr}
  .woocommerce form.checkout #customer_details{grid-template-columns:1fr}
}
@media (max-width:620px){
  :root{--pad:20px}
  .wd-header__inner{height:64px;gap:14px}
  .wd-mobile-nav{top:64px}
  .wd-logo{font-size:21px}
  .wd-hero h1{font-size:clamp(34px,9.2vw,44px)}
  .wd-hero__meta{gap:12px 18px;font-size:11.5px}
  .wd-float--hand{display:none}
  .wd-float--proof{right:-4px;bottom:-14px;width:200px;padding:12px 13px}
  .wd-steps{grid-template-columns:1fr}
  .wd-gallery__grid{grid-template-columns:1fr;gap:30px}
  .wd-footer__grid{grid-template-columns:1fr}
  .wd-band form{flex-direction:column}
  .wd-band .btn{width:100%}
  .wd-promo{font-size:10px;gap:10px}
  .wd-promo span:nth-child(2){display:none}
  .wd-mail__body{grid-template-columns:1fr}
  .woocommerce ul.products{grid-template-columns:1fr;gap:30px}
  /* cart as stacked cards on phones */
  .woocommerce table.shop_table.cart{display:block;border:0;background:transparent}
  .woocommerce table.shop_table.cart thead{display:none}
  .woocommerce table.shop_table.cart tbody{display:block}
  .woocommerce table.shop_table.cart tr.cart_item{
    display:grid;grid-template-columns:80px 1fr;gap:4px 14px;
    padding:16px 0;border-top:1px solid var(--line-soft);position:relative;margin:0;
  }
  .woocommerce table.shop_table.cart tr.cart_item td{border:0;padding:0;display:block;width:auto}
  .woocommerce table.shop_table.cart td.product-remove{position:absolute;top:14px;right:0;z-index:2}
  .woocommerce table.shop_table.cart td.product-remove a{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:14px;line-height:1;color:var(--muted)}
  .woocommerce table.shop_table.cart td.product-thumbnail{grid-column:1;grid-row:1 / span 4}
  .woocommerce table.shop_table.cart td.product-thumbnail img,
  .woocommerce table.shop_table.cart td.product-thumbnail .wd-cart-thumb{width:72px}
  .woocommerce table.shop_table.cart td.product-name{grid-column:2;padding-right:32px;font-size:14px;line-height:1.5}
  .woocommerce table.shop_table.cart td.product-price{display:none}
  .woocommerce table.shop_table.cart td.product-quantity{grid-column:2;margin-top:8px}
  .woocommerce table.shop_table.cart td.product-subtotal{grid-column:2;text-align:left;font-size:14px}
  .woocommerce table.shop_table.cart td.actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:16px 0}
  .woocommerce table.shop_table.cart td.actions .coupon{width:100%}
  .woocommerce table.shop_table.cart td.actions .coupon .input-text{flex:1;width:auto}
  .woocommerce table.shop_table.cart .cart-collaterals{margin-top:22px}
  .woocommerce .cart-collaterals .cart_totals{max-width:none}
  .woocommerce table.shop_table td{padding:12px 10px;font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}
