/* ==========================================================================
   Wooddale design system (ported from the Shopify theme's wd-styles + WD sections)
   ========================================================================== */
:root {
  --wd-ink:#1E1B18; --wd-ink-2:#4A433C; --wd-mute:#7A7168; --wd-bg:#F7F4EF; --wd-sand:#EDE6DB; --wd-line:#E4DDD2; --wd-bronze:#8A6A4F; --wd-white:#fff;
  --font-body--family: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-heading--family: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  --wd-header-h: 76px;
}
html { -webkit-text-size-adjust: 100%; }
body, body.ast-separate-container, body.ast-plain-container, body.ast-page-builder-template {
  background: var(--wd-bg) !important; color: var(--wd-ink); font-family: var(--font-body--family); font-size: 16px; line-height: 1.7;
  -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
body .site, body .site-content, body #content { background: var(--wd-bg); }
h1,h2,h3,h4,.entry-title { font-family: var(--font-heading--family); font-weight: 400; color: var(--wd-ink); letter-spacing: -.01em; }
h5,h6 { font-family: var(--font-body--family); font-weight: 500; }
a { color: var(--wd-ink); }
a:hover, a:focus { color: var(--wd-bronze); }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 2px solid var(--wd-bronze); outline-offset: 2px; }

.wd-wrap { max-width: 1480px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 56px); box-sizing: border-box; width: 100%; }
.wd-eyebrow { display:inline-block; font: 500 12px/1.2 var(--font-body--family); letter-spacing:.18em; text-transform:uppercase; color: var(--wd-bronze); margin-bottom: 14px; }
.wd-h2 { font-family: var(--font-heading--family); font-weight: 400; font-size: clamp(34px, 4.2vw, 56px); line-height: 1.04; letter-spacing: -.01em; margin: 0; color: var(--wd-ink); }
.wd-lead { font-size: 16px; line-height: 1.65; color: var(--wd-ink-2); max-width: 56ch; margin: 14px 0 0; }
.wd-lead p { margin: 0 0 .8em; }
.wd-head { display:flex; align-items:flex-end; justify-content:space-between; gap: 24px; flex-wrap: wrap; margin-bottom: clamp(24px, 3vw, 40px); }
.wd-btn, a.wd-btn, button.wd-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height: 52px; padding: 0 28px; font: 500 14px/1 var(--font-body--family); letter-spacing:.06em; text-transform:uppercase; text-decoration:none; border:1px solid var(--wd-ink); background: var(--wd-ink); color: var(--wd-bg); border-radius: 0; cursor: pointer; transition: background .25s, color .25s, border-color .25s; box-sizing: border-box; }
.wd-btn:hover, a.wd-btn:hover, button.wd-btn:hover { background: var(--wd-bronze); border-color: var(--wd-bronze); color:#fff; }
.wd-btn--ghost, a.wd-btn--ghost { background: transparent; color: var(--wd-ink); }
.wd-btn--light, a.wd-btn--light { background: #fff; color: var(--wd-ink); border-color:#fff; }
.wd-btn--outline-light, a.wd-btn--outline-light { background: transparent; color:#fff; border-color: rgba(255,255,255,.7); }
.wd-link { font: 500 13px/1 var(--font-body--family); letter-spacing:.12em; text-transform:uppercase; color: var(--wd-ink); text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:6px; white-space:nowrap; }
.wd-link:hover { color: var(--wd-bronze); }

/* ---------- product card ---------- */
.wd-card { display:block; text-decoration:none; color: var(--wd-ink); }
.wd-card:hover { color: var(--wd-ink); }
.wd-card__media { position:relative; display:block; aspect-ratio: 3/2; overflow:hidden; background: #fff; }
.wd-card__img { position:absolute; inset:0; width:100% !important; height:100% !important; object-fit:contain; object-position:center; transition: opacity .45s ease, transform .8s ease; }
.wd-card__img--alt { background:#fff; opacity:0; }
.wd-card:hover .wd-card__img--alt { opacity:1; }
.wd-card:hover .wd-card__img { transform: scale(1.02); }
.wd-card__badge { position:absolute; top:12px; left:12px; background: var(--wd-bronze); color:#fff; font: 500 11px/1 var(--font-body--family); letter-spacing:.14em; text-transform:uppercase; padding: 7px 10px; z-index: 2; }
.wd-card__badge--new { background: var(--wd-ink); }
.wd-card__body { display:block; padding: 16px 2px 0; }
.wd-card__type { display:block; font-size: 11px; letter-spacing:.14em; text-transform:uppercase; color: var(--wd-mute); margin-bottom: 6px; line-height: 1.4; }
.wd-card__title { display:block; font-size: 16px; line-height:1.35; font-weight: 500; }
.wd-card__price { display:block; margin-top: 6px; font-size: 15px; color: var(--wd-ink-2); line-height: 1.4; }
.wd-card__price s { color: var(--wd-mute); margin-left: 6px; }
@media (max-width: 749px) { .wd-head { margin-bottom: 22px; } .wd-btn, a.wd-btn { min-height: 48px; padding: 0 22px; font-size: 13px; } .wd-card__body { padding-top: 12px; } }

/* ---------- announcement + header ---------- */
.wd-ann { background: var(--wd-ink); color: var(--wd-bg); text-align: center; padding: 9px 16px; font: 500 11px/1.4 var(--font-body--family); letter-spacing: .16em; text-transform: uppercase; position: relative; z-index: 60; }
.wd-ann a { color: inherit; text-decoration: none; }
.wd-ann a:hover { color: #E9D9C4; }
@media (max-width: 749px) { .wd-ann { font-size: 10px; letter-spacing: .12em; padding: 8px 12px; } }

.wd-header { position: sticky; top: 0; z-index: 50; background: var(--wd-bg); border-bottom: 1px solid var(--wd-line); transition: background .3s, color .3s, border-color .3s; }
body.admin-bar .wd-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .wd-header { top: 0; } }
/* sticky lives on the wrapper: the header alone has no room to stick inside a same-height wrapper */
body:not(.wd-home) .wd-header-wrap { position: sticky; top: 0; z-index: 50; }
body.admin-bar:not(.wd-home) .wd-header-wrap { top: 32px; }
@media (max-width: 782px) { body.admin-bar:not(.wd-home) .wd-header-wrap { top: 0; } }
.wd-header__bar { display:grid; grid-template-columns: 1fr auto 1fr; align-items:center; height: var(--wd-header-h); gap: 24px; }
.wd-header__logo { display:flex; align-items:center; }
.wd-header__logo img { height: 30px; width: auto; display:block; }
.wd-header__logo .wd-logo--light { display:none; }
.wd-nav { display:flex; justify-content:center; }
.wd-nav > ul { display:flex; gap: 30px; list-style:none; margin:0; padding:0; }
.wd-nav > ul > li { position: static; }
.wd-nav > ul > li > a { display:flex; align-items:center; height: var(--wd-header-h); font: 400 14px/1 var(--font-body--family); letter-spacing: .06em; text-transform: uppercase; text-decoration:none; color: inherit; position: relative; }
.wd-nav > ul > li > a::after { content:''; position:absolute; left:0; right:0; bottom: 22px; height:1px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform .3s; }
.wd-nav > ul > li:hover > a::after, .wd-nav > ul > li.current-menu-item > a::after, .wd-nav > ul > li.current-menu-ancestor > a::after { transform: scaleX(1); }
.wd-mega { position:absolute; left:0; right:0; top: 100%; background: var(--wd-bg); color: var(--wd-ink); border-top: 1px solid var(--wd-line); border-bottom: 1px solid var(--wd-line); opacity:0; visibility:hidden; transform: translateY(-6px); transition: opacity .25s, transform .25s, visibility .25s; box-shadow: 0 24px 40px rgba(30,27,24,.06); }
.wd-nav li:hover > .wd-mega, .wd-nav li:focus-within > .wd-mega { opacity:1; visibility:visible; transform:none; }
.wd-mega__inner { display:grid; grid-template-columns: 220px 1fr; gap: 48px; padding-top: 36px; padding-bottom: 40px; }
.wd-mega__links { list-style:none; margin:0; padding:0; display:grid; gap: 12px; align-content:start; }
.wd-mega__links a { font-size: 15px; text-decoration:none; color: var(--wd-ink); }
.wd-mega__links a:hover { color: var(--wd-bronze); }
.wd-mega__tiles { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.wd-mega__tile { display:block; text-decoration:none; color: var(--wd-ink); }
.wd-mega__tile span.img { display:block; aspect-ratio: 16/9; overflow:hidden; background: var(--wd-sand); }
.wd-mega__tile img { width:100%; height:100%; object-fit:cover; transition: transform .8s; }
.wd-mega__tile:hover img { transform: scale(1.04); }
.wd-mega__tile span.t { display:block; margin-top: 10px; font-size: 14px; }
.wd-header__actions { display:flex; justify-content:flex-end; align-items:center; gap: 6px; }
.wd-icon-btn { display:inline-flex; align-items:center; justify-content:center; width: 44px; height: 44px; background:none; border:0; color: inherit; cursor:pointer; position:relative; padding:0; text-decoration:none; }
.wd-icon-btn:hover { color: var(--wd-bronze); background: none; }
.wd-icon-btn svg { width: 22px; height: 22px; }
.wd-cart-count { position:absolute; top: 6px; right: 4px; min-width: 18px; height: 18px; border-radius: 9px; background: var(--wd-ink); color: var(--wd-bg); font: 500 10px/18px var(--font-body--family); text-align:center; padding: 0 4px; }
.wd-cart-count:empty, .wd-cart-count[data-count="0"] { display:none; }
.wd-burger { display:none; }
.wd-search { position:absolute; left:0; right:0; top:100%; background: var(--wd-bg); border-bottom:1px solid var(--wd-line); padding: 22px 0; display:none; color: var(--wd-ink); }
.wd-search.is-open { display:block; }
.wd-search form { display:flex; gap: 12px; border-bottom: 1px solid var(--wd-ink); }
.wd-search input[type=search] { flex:1; border:0 !important; background:transparent !important; font: 20px var(--font-body--family); padding: 12px 0 !important; outline: none; color: var(--wd-ink); box-shadow:none !important; }
.wd-search button { background:none !important; border:0; font: 500 12px/1 var(--font-body--family); letter-spacing:.14em; text-transform:uppercase; color: var(--wd-ink) !important; cursor:pointer; padding: 0; }

/* transparent header over the home hero */
body.wd-home .wd-header { position: absolute; left:0; right:0; top: auto; background: transparent; border-color: rgba(255,255,255,.18); color: #fff; }
body.wd-home .wd-header .wd-logo--dark { display:none; }
body.wd-home .wd-header .wd-logo--light { display:block; }
body.wd-home .wd-header .wd-cart-count { background:#fff; color: var(--wd-ink); }
/* hover/search only recolour the header in place; only the scrolled state pins it, so it never jumps under the announcement bar */
body.wd-home .wd-header.is-solid, body.wd-home .wd-header:hover, body.wd-home .wd-header.is-search { background: var(--wd-bg); color: var(--wd-ink); border-color: var(--wd-line); }
body.wd-home .wd-header.is-solid { position: fixed; top: 0; }
body.wd-home.admin-bar .wd-header.is-solid { top: 32px; }
@media (max-width: 782px) { body.wd-home.admin-bar .wd-header.is-solid { top: 0; } }
body.wd-home .wd-header.is-solid .wd-logo--dark, body.wd-home .wd-header:hover .wd-logo--dark, body.wd-home .wd-header.is-search .wd-logo--dark { display:block; }
body.wd-home .wd-header.is-solid .wd-logo--light, body.wd-home .wd-header:hover .wd-logo--light, body.wd-home .wd-header.is-search .wd-logo--light { display:none; }
body.wd-home .wd-header.is-solid .wd-cart-count, body.wd-home .wd-header:hover .wd-cart-count { background: var(--wd-ink); color: var(--wd-bg); }
body.wd-home .wd-header-wrap { position: relative; }

/* mobile drawer */
.wd-drawer { position: fixed; inset: 0; z-index: 100; visibility: hidden; }
.wd-drawer.is-open { visibility: visible; }
.wd-drawer__bg { position:absolute; inset:0; background: rgba(30,27,24,.45); opacity:0; transition: opacity .3s; }
.wd-drawer.is-open .wd-drawer__bg { opacity:1; }
.wd-drawer__panel { position:absolute; top:0; bottom:0; left:0; width: min(88vw, 400px); background: var(--wd-bg); color: var(--wd-ink); transform: translateX(-100%); transition: transform .35s ease; display:flex; flex-direction:column; overflow-y:auto; }
.wd-drawer.is-open .wd-drawer__panel { transform:none; }
.wd-drawer__head { display:flex; justify-content:space-between; align-items:center; padding: 14px 16px; border-bottom: 1px solid var(--wd-line); }
.wd-drawer__head img { height: 22px; width:auto; }
.wd-drawer ul { list-style:none; margin:0; padding:0; }
.wd-drawer__nav > ul > li { border-bottom: 1px solid var(--wd-line); }
.wd-drawer__nav > ul > li > a, .wd-drawer__nav summary { display:flex; justify-content:space-between; align-items:center; padding: 18px 20px; font: 400 15px/1 var(--font-body--family); letter-spacing:.06em; text-transform: uppercase; text-decoration:none; color: var(--wd-ink); cursor:pointer; list-style:none; }
.wd-drawer__nav summary::-webkit-details-marker { display:none; }
.wd-drawer__nav details[open] summary svg { transform: rotate(180deg); }
.wd-drawer__nav details ul { padding: 0 20px 16px 32px; display:grid; gap: 14px; }
.wd-drawer__nav details ul a { text-decoration:none; font-size: 15px; color: var(--wd-ink-2); }
.wd-drawer__foot { margin-top:auto; padding: 24px 20px; font-size: 14px; line-height: 1.6; color: var(--wd-ink-2); border-top: 1px solid var(--wd-line); }
.wd-drawer__foot a { color: var(--wd-ink); }

@media (max-width: 989px) {
  :root { --wd-header-h: 64px; }
  .wd-header__bar { grid-template-columns: 1fr auto 1fr; gap: 8px; }
  .wd-nav { display:none; }
  .wd-burger { display:inline-flex; }
  .wd-header__logo { justify-content:center; order: 2; }
  .wd-header__left { order: 1; display:flex; }
  .wd-header__actions { order: 3; }
  .wd-header__logo img { height: 22px; }
}
@media (min-width: 990px) { .wd-header__left { display:none; } }

/* ---------- footer ---------- */
.wd-foot { background: var(--wd-ink); color: rgba(247,244,239,.78); padding: clamp(56px, 6vw, 96px) 0 28px; }
.wd-foot a { color: inherit; text-decoration: none; }
.wd-foot a:hover { color: #fff; }
.wd-foot__top { display:grid; grid-template-columns: 1.3fr .8fr .8fr 1.4fr; gap: clamp(28px, 4vw, 64px); padding-bottom: 48px; border-bottom: 1px solid rgba(247,244,239,.14); }
.wd-foot__logo img { width: 170px; height:auto; display:block; margin-bottom: 22px; }
.wd-foot__addr { font-size: 15px; line-height: 1.7; margin:0; }
.wd-foot__addr strong { color:#fff; font-weight:500; }
.wd-foot h3 { font: 500 12px/1.2 var(--font-body--family); letter-spacing:.16em; text-transform:uppercase; color:#fff; margin: 0 0 18px; }
.wd-foot ul { list-style:none; margin:0; padding:0; display:grid; gap: 11px; font-size: 15px; line-height: 1.4; }
.wd-foot__news p { font-size: 15px; line-height:1.6; margin: 0 0 16px; }
.wd-foot__form { display:flex; border-bottom: 1px solid rgba(247,244,239,.5); }
.wd-foot__form input[type=email] { flex:1; min-width:0; background: transparent !important; border:0 !important; color:#fff !important; font-size: 15px; padding: 14px 0 !important; outline: none; box-shadow:none !important; }
.wd-foot__form input::placeholder { color: rgba(247,244,239,.55); }
.wd-foot__form button { background: none !important; border:0; color:#fff !important; font: 500 12px/1 var(--font-body--family); letter-spacing:.14em; text-transform:uppercase; cursor:pointer; padding: 0 0 0 16px; }
.wd-foot__msg { font-size: 14px; margin-top: 12px; color: #E9D9C4; }
.wd-foot__social { display:flex; gap: 14px; margin-top: 26px; }
.wd-foot__social a { width: 40px; height: 40px; border: 1px solid rgba(247,244,239,.3); display:inline-flex; align-items:center; justify-content:center; }
.wd-foot__social a:hover { border-color:#fff; }
.wd-foot__bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap: 14px; padding-top: 24px; font-size: 13px; color: rgba(247,244,239,.55); }
.wd-foot__bottom ul { display:flex; flex-wrap:wrap; gap: 18px; font-size: 13px; }
@media (max-width: 989px) { .wd-foot__top { grid-template-columns: 1fr 1fr; } .wd-foot__brand, .wd-foot__news { grid-column: span 2; } }

/* ---------- hero ---------- */
.wd-hero { position:relative; min-height: min(88vh, 860px); display:flex; align-items:flex-end; color:#fff; overflow:hidden; background:#2a2521; }
.wd-hero__media, .wd-hero__media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wd-hero__media::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(20,17,14,.05) 30%, rgba(20,17,14,.62) 100%), linear-gradient(90deg, rgba(20,17,14,.45), rgba(20,17,14,0) 60%); }
.wd-hero__inner { position:relative; width:100%; padding-top: 160px; padding-bottom: clamp(40px, 7vw, 96px); }
.wd-hero__eyebrow { color:#E9D9C4; }
.wd-hero h1 { font-family: var(--font-heading--family); font-weight:400; font-size: clamp(44px, 7vw, 104px); line-height: .98; letter-spacing:-.015em; margin:0; max-width: 13ch; color:#fff; }
.wd-hero p { font-size: clamp(16px, 1.3vw, 19px); line-height:1.6; max-width: 46ch; margin: 22px 0 0; color: rgba(255,255,255,.88); }
.wd-hero__ctas { display:flex; gap:12px; flex-wrap:wrap; margin-top: 34px; }
@media (max-width: 749px) {
  .wd-hero { min-height: 78svh; }
  .wd-hero__inner { padding-top: 120px; padding-bottom: 36px; }
  .wd-hero p { font-size: 15px; margin-top: 16px; }
  .wd-hero__ctas { margin-top: 24px; }
  .wd-hero__media::after { background: linear-gradient(180deg, rgba(20,17,14,.15) 20%, rgba(20,17,14,.72) 100%); }
  .wd-hero__ctas .wd-btn { flex: 1 1 100%; }
}

/* ---------- usp strip ---------- */
.wd-usp { border-top:1px solid var(--wd-line); border-bottom:1px solid var(--wd-line); }
.wd-usp__grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); }
.wd-usp__item { display:flex; gap: 16px; align-items:flex-start; padding: 30px 24px; border-left:1px solid var(--wd-line); line-height: 1.4; }
.wd-usp__item:first-child { border-left:0; padding-left:0; }
.wd-usp__item svg { flex: 0 0 28px; color: var(--wd-bronze); }
.wd-usp__t { display:block; font-weight: 500; font-size: 15px; margin-bottom: 4px; }
.wd-usp__d { display:block; font-size: 14px; line-height:1.5; color: var(--wd-mute); }
@media (max-width: 989px) { .wd-usp__grid { grid-template-columns: 1fr 1fr; } .wd-usp__item { padding: 22px 12px; border-left:0; border-top:1px solid var(--wd-line); } .wd-usp__item:nth-child(-n+2) { border-top:0; } .wd-usp__item:first-child { padding-left: 12px; } }
@media (max-width: 479px) { .wd-usp__item { flex-direction: column; gap: 10px; padding: 20px 10px; } .wd-usp__t { font-size: 14px; } .wd-usp__d { font-size: 13px; } }

/* ---------- categories ---------- */
.wd-cats { padding: clamp(56px, 7vw, 110px) 0 clamp(28px, 3vw, 48px); }
.wd-cats__grid { display:grid; grid-template-columns: repeat(12, minmax(0,1fr)); gap: 14px; }
.wd-cat { position:relative; display:block; aspect-ratio: 3/4; overflow:hidden; text-decoration:none; color:#fff; background: var(--wd-sand); grid-column: span 3; }
.wd-cat:hover { color: #fff; }
.wd-cat:nth-child(1), .wd-cat:nth-child(2) { grid-column: span 6; aspect-ratio: 16/10; }
.wd-cat img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition: transform 1s ease; }
.wd-cat:hover img { transform: scale(1.04); }
.wd-cat::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(20,17,14,0) 45%, rgba(20,17,14,.6)); }
.wd-cat__label { position:absolute; left: 22px; right: 22px; bottom: 20px; z-index:1; display:flex; justify-content:space-between; align-items:flex-end; gap: 12px; }
.wd-cat__name { font-family: var(--font-heading--family); font-size: clamp(26px, 2.4vw, 38px); line-height:1; }
.wd-cat__count { font-size: 12px; letter-spacing:.14em; text-transform:uppercase; opacity:.85; white-space:nowrap; line-height: 1.2; }
@media (max-width: 989px) {
  .wd-cats__grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
  .wd-cat { grid-column: span 1; aspect-ratio: 4/5; }
  .wd-cat:nth-child(1), .wd-cat:nth-child(2) { grid-column: span 2; aspect-ratio: 16/10; }
}
@media (max-width: 749px) {
  .wd-cat__label { left: 14px; right: 14px; bottom: 14px; flex-direction: column; align-items: flex-start; gap: 6px; }
  .wd-cat__name { font-size: 24px; }
  .wd-cat__count { font-size: 10px; }
}

/* ---------- product rows ---------- */
.wd-prod { padding: clamp(40px, 5vw, 80px) 0; }
.wd-prod--tint { background: var(--wd-sand); }
.wd-prod__grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 28px 18px; }
@media (max-width: 989px) {
  .wd-prod__grid { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 72%; overflow-x:auto; scroll-snap-type: x mandatory; padding-bottom: 12px; scrollbar-width: none; }
  .wd-prod__grid::-webkit-scrollbar { display:none; }
  .wd-prod__grid > * { scroll-snap-align: start; }
}

/* ---------- story ---------- */
.wd-story { padding: clamp(56px, 7vw, 110px) 0; }
.wd-story--dark { background: var(--wd-ink); color: var(--wd-bg); }
.wd-story__grid { display:grid; grid-template-columns: 1.15fr 1fr; gap: clamp(32px, 6vw, 96px); align-items:center; }
.wd-story__grid--flip .wd-story__media { order: 2; }
.wd-story__media { position:relative; aspect-ratio: 5/4; overflow:hidden; background: var(--wd-sand); }
.wd-story__media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wd-story--dark .wd-h2 { color: var(--wd-bg); }
.wd-story--dark .wd-lead { color: rgba(247,244,239,.78); }
.wd-story__list { list-style:none; padding:0; margin: 28px 0 32px; display:grid; gap: 14px; }
.wd-story__list li { display:flex; gap: 14px; align-items:flex-start; font-size: 15px; line-height:1.55; }
.wd-story__list li::before { content:''; flex: 0 0 18px; height:1px; margin-top: 11px; background: var(--wd-bronze); }
.wd-story .wd-lead + .wd-btn, .wd-story .wd-lead + a.wd-btn { margin-top: 28px; }
@media (max-width: 989px) { .wd-story__grid { grid-template-columns: 1fr; } .wd-story__grid--flip .wd-story__media { order: 0; } }

/* ---------- google reviews ---------- */
.wd-gr-section { background: var(--wd-bg); padding: clamp(56px,7vw,110px) 0; }
.wd-gr-section .wd-gr__eyebrow { display:block; text-align:center; }
.wd-gr-section .wd-gr__heading { text-align:center; margin: 0 0 clamp(32px,4vw,56px); }
.wd-gr { display: flex; align-items: center; gap: 2rem; }
.wd-gr__summary { flex: 0 0 12.5rem; text-align: center; color: var(--wd-ink); line-height: 1.3; }
.wd-gr__badge { font-weight: 600; font-size: 1.25rem; letter-spacing: .04em; text-transform: uppercase; margin-bottom: 0.375rem; }
.wd-gr__score { font-size: 2.25rem; font-weight: 600; line-height: 1; margin-bottom: 0.312rem; }
.wd-gr__score-out { font-size: 1rem; font-weight: 400; opacity: .55; }
.wd-gr__stars { position: relative; display: inline-block; font-size: 1.5rem; line-height: 1; letter-spacing: 0.112rem; margin-bottom: 0.5rem; white-space: nowrap; }
.wd-gr__stars-bg { color: rgba(11, 35, 65, 0.18); }
.wd-gr__stars-fill { position: absolute; left: 0; top: 0; overflow: hidden; color: #F5A623; white-space: nowrap; }
.wd-gr__based { font-size: 0.938rem; margin-bottom: 0.625rem; opacity: .8; }
.wd-gr__based strong { font-weight: 600; }
.wd-gr__google { font-weight: 700; font-size: 1.5rem; letter-spacing: -.02em; font-family: Arial, sans-serif; }
.wd-gr__review-link { display: inline-block; margin-top: 0.625rem; font-size: 0.875rem; color: var(--wd-ink); border-bottom: 1.5px solid var(--wd-ink); text-decoration: none; }
.wd-gr__slider { position: relative; flex: 1 1 auto; min-width: 0; width: 100%; max-width: 100%; }
.wd-gr__track { max-width: 100%; display: flex; gap: 1rem; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x proximity; scrollbar-width: none; padding: 0.375rem 0.125rem 0.625rem; }
.wd-gr__track::-webkit-scrollbar { display: none; }
.wd-gr__card { flex: 0 0 min(21.2rem, 84%); scroll-snap-align: start; background: #fff; color: var(--wd-ink); border: 1px solid var(--wd-line); border-radius: 10px; padding: 1.25rem; display: flex; flex-direction: column; transition: transform .3s ease, box-shadow .3s ease; box-sizing: border-box; }
.wd-gr__card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(11, 35, 65, 0.10); }
.wd-gr__card-head { display: flex; align-items: flex-start; gap: 0.688rem; margin-bottom: 0.562rem; line-height: 1.3; }
.wd-gr__avatar { width: 2.5rem; height: 2.5rem; border-radius: 50%; color: #fff; font-weight: 600; font-size: 1.06rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0; text-transform: uppercase; }
.wd-gr__avatar-img { width: 2.5rem !important; height: 2.5rem !important; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.wd-gr__who { display: flex; flex-direction: column; }
.wd-gr__name { font-weight: 600; font-size: 0.938rem; }
.wd-gr__time { font-size: 0.781rem; opacity: .6; }
.wd-gr__g { margin-left: auto; width: 1.25rem; height: 1.25rem; flex-shrink: 0; }
.wd-gr__card-stars { display: flex; align-items: center; gap: 0.312rem; margin-bottom: 0.5rem; color: #F5A623; font-size: 1rem; line-height: 1; }
.wd-gr__verified { width: 1rem; height: 1rem; }
.wd-gr__text { font-size: 0.906rem; line-height: 1.6; margin: 0; opacity: .85; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.wd-gr__arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: #fff !important; border: 1px solid var(--wd-line); color: var(--wd-ink) !important; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; transition: background .3s ease; }
.wd-gr__arrow:hover { background: var(--wd-bg) !important; }
.wd-gr__arrow svg { width: 1.06rem; height: 1.06rem; }
.wd-gr__arrow--prev { left: -0.875rem; }
.wd-gr__arrow--next { right: -0.875rem; }
@media screen and (max-width: 900px) { .wd-gr { flex-direction: column; gap: 1.38rem; } .wd-gr__summary { flex: none; } .wd-gr__arrow--prev { left: 0.125rem; } .wd-gr__arrow--next { right: 0.125rem; } }

/* ---------- visit ---------- */
.wd-visit { padding: clamp(56px, 7vw, 110px) 0; }
.wd-visit__grid { display:grid; grid-template-columns: 1fr 1.3fr; gap: clamp(28px, 5vw, 80px); align-items:stretch; }
.wd-visit__info dl { margin: 30px 0 34px; display:grid; gap: 20px; }
.wd-visit__info dt { font-size: 11px; letter-spacing:.16em; text-transform:uppercase; color: var(--wd-mute); margin-bottom: 6px; font-weight: 400; }
.wd-visit__info dd { margin:0; font-size: 17px; line-height:1.5; }
.wd-visit__info dd a { color: inherit; text-decoration: none; border-bottom: 1px solid var(--wd-line); }
.wd-visit__ctas { display:flex; gap: 12px; flex-wrap:wrap; }
.wd-visit__map { min-height: 440px; background: var(--wd-sand); }
.wd-visit__map iframe { width:100%; height:100%; min-height: 440px; border:0; filter: grayscale(.35) contrast(1.05); display:block; }
@media (max-width: 989px) { .wd-visit__grid { grid-template-columns: 1fr; } .wd-visit__map, .wd-visit__map iframe { min-height: 320px; } }
@media (max-width: 749px) { .wd-visit__ctas .wd-btn { flex: 1 1 100%; } .wd-visit__info dd { font-size: 16px; } }

/* ---------- collection (product archive) ---------- */
.wd-col { padding: clamp(28px, 4vw, 56px) 0 clamp(56px, 7vw, 100px); }
.wd-col__crumbs { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--wd-mute); margin-bottom: 18px; line-height: 1.4; }
.wd-col__crumbs a { color: inherit; text-decoration: none; }
.wd-col__head { display:grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px 64px; align-items:end; padding-bottom: 28px; }
.wd-col__title { font-family: var(--font-heading--family); font-weight: 400; font-size: clamp(40px, 5.4vw, 76px); line-height: 1; letter-spacing: -.01em; margin: 0; }
.wd-col__desc { font-size: 16px; line-height: 1.65; color: var(--wd-ink-2); max-width: 58ch; }
.wd-col__desc p { margin: 0; }
.wd-col__chips { display:flex; gap: 8px; overflow-x:auto; scrollbar-width:none; padding: 2px 0 22px; }
.wd-col__chips::-webkit-scrollbar { display:none; }
.wd-chip { flex: 0 0 auto; display:inline-flex; align-items:center; height: 40px; padding: 0 18px; border: 1px solid var(--wd-line); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--wd-ink); text-decoration:none; background: transparent; transition: border-color .2s, background .2s; }
.wd-chip:hover { border-color: var(--wd-ink); color: var(--wd-ink); }
.wd-chip.is-on { background: var(--wd-ink); border-color: var(--wd-ink); color: var(--wd-bg); }
.wd-col__bar { position: sticky; top: var(--wd-header-h); z-index: 4; display:flex; align-items:center; justify-content:space-between; gap: 12px; padding: 12px 0; margin-bottom: 26px; border-top: 1px solid var(--wd-line); border-bottom: 1px solid var(--wd-line); background: var(--wd-bg); }
body.admin-bar .wd-col__bar { top: calc(var(--wd-header-h) + 32px); }
.wd-col__count { font-size: 14px; color: var(--wd-mute); }
.wd-col__sort { display:flex; align-items:center; gap: 10px; font-size: 13px; color: var(--wd-mute); margin: 0; }
.wd-col__sort select { height: 44px; border: 1px solid var(--wd-line); background-color: var(--wd-bg); color: var(--wd-ink); font: 14px var(--font-body--family); padding: 0 34px 0 12px; border-radius: 0; -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231E1B18' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position: right 12px center; }
.wd-col__grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 44px 20px; }
.wd-col__empty { padding: 60px 0; text-align:center; font-size: 17px; color: var(--wd-ink-2); }
.wd-col__pages { display:flex; justify-content:center; align-items:center; gap: 6px; margin-top: 56px; }
.wd-col__pages a, .wd-col__pages span { min-width: 44px; height: 44px; display:inline-flex; align-items:center; justify-content:center; padding: 0 10px; font-size: 14px; color: var(--wd-ink); text-decoration:none; border: 1px solid transparent; box-sizing: border-box; }
.wd-col__pages a:hover { border-color: var(--wd-line); }
.wd-col__pages .current { border-color: var(--wd-ink); }
@media (max-width: 989px) { .wd-col__head { grid-template-columns: 1fr; } .wd-col__grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 36px 16px; } }
@media (max-width: 749px) {
  .wd-col__grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px 12px; }
  .wd-col__count { display:none; }
  .wd-col__sort-label { display:none; }
  .wd-col__sort select { max-width: 48vw; }
  .wd-col .wd-card__title { font-size: 14px; }
  .wd-col .wd-card__price { font-size: 14px; }
  .wd-col .wd-card__type { font-size: 10px; letter-spacing: .1em; }
  .wd-col .wd-card__badge { top: 8px; left: 8px; padding: 5px 7px; font-size: 10px; }
}

/* ---------- contact page ---------- */
.wd-ct-hero { padding: clamp(28px, 4vw, 56px) 0 clamp(40px, 5vw, 72px); }
.wd-ct-hero__grid { display:grid; grid-template-columns: 1fr 1.1fr; gap: clamp(28px, 5vw, 80px); align-items:center; }
.wd-ct-hero h1 { font-family: var(--font-heading--family); font-weight:400; font-size: clamp(44px, 6vw, 88px); line-height:.98; letter-spacing:-.015em; margin: 0; }
.wd-ct-hero .wd-lead { font-size: 17px; }
.wd-ct-hero__ctas { display:flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.wd-ct-hero__img { position:relative; aspect-ratio: 5/4; overflow:hidden; background: var(--wd-sand); }
.wd-ct-hero__img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wd-ct-hero__tag { position:absolute; left: 18px; bottom: 18px; background: var(--wd-bg); padding: 12px 16px; font-size: 13px; line-height:1.4; }
.wd-ct-hero__tag b { display:block; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; font-size: 11px; color: var(--wd-bronze); margin-bottom: 2px; }
.wd-ct-cards { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; padding-bottom: clamp(48px, 6vw, 88px); }
.wd-ct-card { background:#fff; border: 1px solid var(--wd-line); padding: 30px 28px; display:flex; flex-direction:column; gap: 14px; }
.wd-ct-card__icon { width: 44px; height: 44px; border-radius: 50%; background: var(--wd-sand); color: var(--wd-bronze); display:flex; align-items:center; justify-content:center; }
.wd-ct-card h2 { font: 500 12px/1.2 var(--font-body--family); letter-spacing: .16em; text-transform: uppercase; color: var(--wd-mute); margin: 6px 0 0; }
.wd-ct-card p { margin: 0; font-size: 17px; line-height: 1.55; color: var(--wd-ink); }
.wd-ct-card a.big { font-family: var(--font-heading--family); font-size: 34px; line-height: 1; color: var(--wd-ink); text-decoration: none; }
.wd-ct-card .wd-link { align-self: flex-start; margin-top: auto; }
.wd-ct-hours { width:100%; border-collapse: collapse; font-size: 15px; border: 0; margin: 0; }
.wd-ct-hours td { padding: 6px 0; border: 0; border-bottom: 1px solid var(--wd-line); }
.wd-ct-hours td:last-child { text-align: right; color: var(--wd-ink-2); }
.wd-ct-hours tr:last-child td { border-bottom: 0; }
.wd-ct-hours tr.is-today td { font-weight: 600; color: var(--wd-ink); }
.wd-ct-open { display:inline-flex; align-items:center; gap: 8px; font-size: 13px; letter-spacing: .06em; }
.wd-ct-open::before { content:''; width: 8px; height: 8px; border-radius: 50%; background: #9a9a9a; }
.wd-ct-open.is-open::before { background: #3c9a5f; }
.wd-ct-main { background: var(--wd-sand); padding: clamp(56px, 7vw, 104px) 0; }
.wd-ct-main__grid { display:grid; grid-template-columns: 1.25fr 1fr; gap: clamp(32px, 6vw, 96px); align-items:start; }
.wd-ct-form { display:grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 30px; }
.wd-ct-form label { display:flex; flex-direction:column; gap: 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--wd-ink-2); margin: 0; }
.wd-ct-form .full { grid-column: 1 / -1; }
.wd-ct-form input, .wd-ct-form select, .wd-ct-form textarea { width:100%; border: 1px solid var(--wd-line) !important; background-color: #fff !important; color: var(--wd-ink) !important; font: 16px var(--font-body--family); padding: 14px 14px !important; border-radius: 0 !important; letter-spacing: normal; text-transform: none; -webkit-appearance: none; appearance: none; box-shadow: none !important; box-sizing: border-box; height: auto; }
.wd-ct-form textarea { min-height: 150px; resize: vertical; }
.wd-ct-form input:focus, .wd-ct-form select:focus, .wd-ct-form textarea:focus { outline: none; border-color: var(--wd-ink) !important; }
.wd-ct-form select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231E1B18' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-repeat:no-repeat !important; background-position: right 14px center !important; }
.wd-ct-form .wd-btn { justify-self: start; }
.wd-ct-form .wd-hp { position:absolute; left:-9999px; }
.wd-ct-msg { grid-column: 1 / -1; padding: 16px 18px; background: #fff; border-left: 3px solid var(--wd-bronze); font-size: 15px; margin: 0; }
.wd-ct-steps { list-style:none; margin: 30px 0 0; padding:0; counter-reset: s; display:grid; gap: 22px; }
.wd-ct-steps li { counter-increment: s; display:grid; grid-template-columns: 44px 1fr; gap: 16px; font-size: 16px; line-height: 1.6; color: var(--wd-ink-2); }
.wd-ct-steps li::before { content: counter(s, decimal-leading-zero); font-family: var(--font-heading--family); font-size: 28px; line-height: 1; color: var(--wd-bronze); }
.wd-ct-steps b { display:block; color: var(--wd-ink); font-weight: 500; }
.wd-ct-map { height: clamp(340px, 42vw, 520px); background: var(--wd-sand); }
.wd-ct-map iframe { width:100%; height:100%; border:0; filter: grayscale(.35) contrast(1.05); display:block; }
@media (max-width: 989px) { .wd-ct-hero__grid, .wd-ct-main__grid { grid-template-columns: 1fr; } .wd-ct-cards { grid-template-columns: 1fr; } }
@media (max-width: 749px) { .wd-ct-hero__ctas .wd-btn { flex: 1 1 100%; } .wd-ct-form { grid-template-columns: 1fr; } .wd-ct-form .wd-btn { justify-self: stretch; } .wd-ct-card { padding: 24px 20px; } }

/* ---------- generic page / article ---------- */
.wd-page { padding: clamp(28px, 4vw, 56px) 0 clamp(56px, 7vw, 100px); }
.wd-page__head { max-width: 860px; margin: 0 auto clamp(28px, 4vw, 48px); text-align: center; }
.wd-page__title { font-family: var(--font-heading--family); font-weight: 400; font-size: clamp(40px, 5.4vw, 76px); line-height: 1; letter-spacing: -.01em; margin: 0; }
.wd-page__meta { margin-top: 18px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--wd-mute); }
.wd-page__hero { max-width: 1100px; margin: 0 auto clamp(32px, 4vw, 56px); aspect-ratio: 16/9; overflow:hidden; background: var(--wd-sand); }
.wd-page__hero img { width:100%; height:100%; object-fit:cover; }
.wd-rte { max-width: 760px; margin: 0 auto; font-size: 17px; line-height: 1.75; color: var(--wd-ink-2); }
.wd-rte h2 { font-size: clamp(30px, 3vw, 40px); line-height: 1.1; margin: 1.6em 0 .5em; color: var(--wd-ink); }
.wd-rte h3 { font-size: clamp(24px, 2.2vw, 30px); line-height: 1.15; margin: 1.4em 0 .4em; color: var(--wd-ink); }
.wd-rte p, .wd-rte ul, .wd-rte ol { margin: 0 0 1.1em; }
.wd-rte ul { padding-left: 1.2em; }
.wd-rte li { margin-bottom: .4em; }
.wd-rte strong { color: var(--wd-ink); font-weight: 500; }
.wd-rte a { color: var(--wd-ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--wd-bronze); }
.wd-rte img { display:block; margin: 2em auto; }
.wd-blog__grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 44px 24px; }
.wd-post-card { display:block; text-decoration:none; color: var(--wd-ink); }
.wd-post-card .img { display:block; aspect-ratio: 3/2; overflow:hidden; background: var(--wd-sand); }
.wd-post-card img { width:100%; height:100%; object-fit:cover; transition: transform .8s; }
.wd-post-card:hover img { transform: scale(1.03); }
.wd-post-card .d { display:block; margin-top: 16px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--wd-mute); }
.wd-post-card .t { display:block; margin-top: 8px; font-family: var(--font-heading--family); font-size: 26px; line-height: 1.12; }
.wd-post-card .x { display:block; margin-top: 10px; font-size: 15px; line-height: 1.6; color: var(--wd-ink-2); }
@media (max-width: 989px) { .wd-blog__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 649px) { .wd-blog__grid { grid-template-columns: 1fr; } }

/* ---------- single product ---------- */
.wd-pdp { padding: clamp(20px, 3vw, 40px) 0 clamp(40px, 5vw, 72px); }
.wd-pdp .woocommerce-breadcrumb, .wd-pdp__crumbs { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--wd-mute); margin: 0 0 22px; line-height: 1.4; }
.wd-pdp__crumbs a { color: inherit; text-decoration:none; }
.wd-pdp div.product { display:grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 48px; align-items:start; margin:0; }
.wd-pdp div.product::before, .wd-pdp div.product::after { display:none !important; }
.wd-pdp div.product .woocommerce-product-gallery { width: 100% !important; float: none !important; margin: 0 !important; opacity: 1 !important; }
.wd-pdp div.product .summary { width: 100% !important; float: none !important; margin: 0 !important; position: sticky; top: calc(var(--wd-header-h) + 24px); padding: 24px 0; }
body.admin-bar .wd-pdp div.product .summary { top: calc(var(--wd-header-h) + 56px); }
.wd-pdp .woocommerce-product-gallery__wrapper { background:#fff; }
.wd-pdp .woocommerce-product-gallery__image { background:#fff; }
.wd-pdp .woocommerce-product-gallery__image a { display:block; aspect-ratio: 3/2; }
.wd-pdp .woocommerce-product-gallery__image img { width:100% !important; height:100% !important; object-fit: contain; }
.wd-pdp .flex-control-thumbs { display:flex !important; gap: 4px; margin: 4px 0 0 !important; padding:0; flex-wrap: wrap; }
.wd-pdp .flex-control-thumbs li { width: 64px !important; float:none !important; margin:0 !important; background:#fff; }
.wd-pdp .flex-control-thumbs li img { aspect-ratio: 1; object-fit: contain; opacity: .55; border: 1px solid transparent; transition: opacity .2s; }
.wd-pdp .flex-control-thumbs li img.flex-active, .wd-pdp .flex-control-thumbs li img:hover { opacity: 1; border-color: var(--wd-ink); }
.wd-pdp .woocommerce-product-gallery__trigger { background: #fff; border-radius: 0; }
.wd-pdp .product_title { font-family: var(--font-heading--family); font-size: 32px; line-height: 1.1; font-weight: 400; margin: 0 0 12px; }
.wd-pdp .summary .price { font-size: 18px; color: var(--wd-ink) !important; margin: 0 0 24px; padding-bottom: 24px; border-bottom: 1px solid var(--wd-line); font-weight: 400; }
.wd-pdp .summary .price del { color: var(--wd-mute); opacity: 1; margin-left: 6px; }
.wd-pdp .summary .price ins { text-decoration: none; font-weight: 500; }
.wd-pdp .summary .price del + ins, .wd-pdp .summary .price ins { margin-left: 0; }
.wd-pdp table.variations { margin: 0 0 18px; border: 0; }
.wd-pdp table.variations tr { display:block; margin-bottom: 18px; }
.wd-pdp table.variations th, .wd-pdp table.variations td { display:block; padding: 0; border: 0; text-align: left; background: none; }
.wd-pdp table.variations th label { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; font-weight: 500; color: var(--wd-ink-2); margin-bottom: 10px; display:block; }
.wd-pdp table.variations select.wd-hidden-select { position:absolute !important; opacity:0 !important; pointer-events:none; width:1px !important; height:1px !important; }
.wd-pdp .reset_variations { display:none !important; }
.wd-opts { display:flex; flex-wrap:wrap; gap: 8px; }
.wd-opt { min-height: 44px; padding: 10px 16px; border: 1px solid var(--wd-line); background: var(--wd-bg); color: var(--wd-ink); font: 14px/1.2 var(--font-body--family); cursor:pointer; border-radius: 0; transition: border-color .2s, background .2s, color .2s; flex: 1 1 calc(50% - 8px); text-align:center; }
.wd-opt:hover { border-color: var(--wd-ink); background: var(--wd-bg); color: var(--wd-ink); }
.wd-opt.is-on { background: var(--wd-ink); color: var(--wd-bg); border-color: var(--wd-ink); }
.wd-opt.is-na { opacity: .4; text-decoration: line-through; }
.wd-pdp .single_variation_wrap .woocommerce-variation-price { display:none; }
.wd-pdp form.cart { display:flex; flex-wrap:wrap; gap: 10px; margin: 0 0 28px !important; }
.wd-pdp form.variations_form { display:block; }
.wd-pdp .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; gap: 10px; }
.wd-pdp .quantity { margin: 0 !important; }
.wd-pdp .quantity .qty { height: 52px; width: 80px; border: 1px solid var(--wd-ink); background: var(--wd-bg); border-radius: 0; font-size: 15px; }
.wd-pdp .single_add_to_cart_button { flex: 1 1 auto; min-height: 52px; background: var(--wd-ink) !important; color: var(--wd-bg) !important; border: 1px solid var(--wd-ink) !important; border-radius: 0 !important; font: 500 14px/1 var(--font-body--family) !important; letter-spacing: .06em; text-transform: uppercase; padding: 0 28px !important; }
.wd-pdp .single_add_to_cart_button:hover { background: var(--wd-bronze) !important; border-color: var(--wd-bronze) !important; }
.wd-pdp .single_add_to_cart_button.disabled { opacity: .5; }
.wd-pdp .wd-pdp__desc { font-size: 15px; line-height: 1.7; color: var(--wd-ink-2); }
.wd-pdp .wd-pdp__desc h2, .wd-pdp .wd-pdp__desc h3 { font-size: 22px; margin: 1.2em 0 .4em; color: var(--wd-ink); }
.wd-pdp .wd-pdp__desc ul { padding-left: 1.2em; margin: 0 0 1em; }
.wd-pdp .wd-pdp__desc table { border-collapse: collapse; width: 100%; font-size: 14px; }
.wd-pdp .wd-pdp__desc td, .wd-pdp .wd-pdp__desc th { border: 0; border-bottom: 1px solid var(--wd-line); padding: 8px 0; text-align:left; }
.wd-pdp .product_meta { display:none; }
.wd-pdp .woocommerce-tabs, .wd-pdp .related, .wd-pdp .upsells { display:none; }
.wd-pdp .onsale { display:none; }
.wd-sticky-atc { position: fixed; left:0; right:0; bottom:0; z-index: 40; background: var(--wd-bg); border-top: 1px solid var(--wd-line); transform: translateY(100%); transition: transform .3s; }
.wd-sticky-atc.is-on { transform:none; }
.wd-sticky-atc__in { display:flex; align-items:center; justify-content:space-between; gap: 16px; padding-top: 12px; padding-bottom: 12px; }
.wd-sticky-atc__t { font-weight: 500; font-size: 15px; line-height: 1.3; }
.wd-sticky-atc__p { font-size: 14px; color: var(--wd-ink-2); }
.wd-related { padding: 48px 0; }
.wd-related h3 { font-size: 24px; margin: 0 0 28px; }
.wd-related__grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px 12px; }
@media (max-width: 989px) { .wd-pdp div.product { grid-template-columns: 1fr; gap: 12px; } .wd-pdp div.product .summary { position: static; } .wd-related__grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 749px) { .wd-pdp .product_title { font-size: 28px; } .wd-sticky-atc__p { display:none; } }

/* ---------- woo misc (cart / checkout / notices) ---------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--wd-bronze) !important; background: #fff !important; }
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .woocommerce #respond input#submit, .wp-block-button__link { background: var(--wd-ink) !important; color: var(--wd-bg) !important; border-radius: 0 !important; text-transform: uppercase; letter-spacing: .06em; font-weight: 500 !important; font-family: var(--font-body--family) !important; }
.woocommerce .button:hover, .woocommerce button.button:hover, .woocommerce a.button:hover { background: var(--wd-bronze) !important; color: #fff !important; }
.wd-main-pad { padding: clamp(28px, 4vw, 56px) 0 clamp(56px, 7vw, 100px); }
.wd-main-pad .entry-title { font-size: clamp(36px, 4.6vw, 64px); line-height: 1; margin-bottom: 28px; }

/* hide Astra chrome we replace */
#masthead, .site-header:not(.wd-header), #colophon, .site-footer:not(.wd-foot), .ast-mobile-popup-drawer, #ast-scroll-top { display:none !important; }
.ast-container, .site-content > .ast-container { max-width: none !important; padding: 0 !important; display:block !important; }
#primary { margin: 0 !important; padding: 0 !important; width: 100% !important; }
#secondary { display:none !important; }
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post { background: transparent !important; padding: 0 !important; margin: 0 !important; }

.wd-pdp .summary .woocommerce-breadcrumb, .wd-pdp .summary .ast-breadcrumbs-wrapper, .wd-pdp .summary .single-product-category { display:none !important; }
