/* Built 2026-10-27 from public/css. Do not edit this file directly. */
/* ===== 00-base.css ===== */
/* Wools of New Zealand (woolcarpet.co.nz) styles. Built into public/wcnz.css from css/*.css by tools/build.js.
   Brand (2026 guidelines): Alabaster #F5F2EB, Stone #D8D1C2, Driftwood #B8AD9B, Sage #6B7A68, Hearth #9C6A4B (calls to action and links),
   Charcoal #2B2B2B. Headings Playfair Display, body Georgia. */
:root{--wc-alabaster:#F5F2EB;--wc-stone:#D8D1C2;--wc-driftwood:#B8AD9B;--wc-sage:#6B7A68;--wc-sage-dark:#58664F;--wc-hearth:#9C6A4B;--wc-hearth-soft:#F3E3D6;--wc-charcoal:#2B2B2B;
  --wc-max:1920px;--wc-gutter:clamp(16px,2.2vw,40px);
  --wc-head:"Playfair Display",Georgia,serif;--wc-body:Georgia,"Times New Roman",serif;--wc-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}

/* ---------- Squarespace: on pages with one of our code blocks ---------- */
/* hide Squarespace's own header and footer (ours are drawn by wcnz.js) */
html.wc-chrome #header, html.wc-chrome header.header, html.wc-chrome .header-announcement-bar-wrapper,
html.wc-chrome #footer-sections, html.wc-chrome footer.sections, html.wc-chrome .footer-sections{display:none!important}
/* no gaps around the section that holds our block */
/* full width: no template padding, no grid gutters, no max widths, on every page with one of our blocks */
.page-section:has([data-wc-app]){padding:0!important;min-height:0!important;max-width:none!important;width:100%!important}
.page-section:has([data-wc-app]) .content,.page-section:has([data-wc-app]) .section-border{padding:0!important;max-width:none!important;width:100%!important}
.page-section:has([data-wc-app]) .fluid-engine{display:block!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important}
.page-section:has([data-wc-app]) .fe-block{width:100%!important;max-width:none!important;grid-area:auto!important}
.sqs-layout:has([data-wc-app]),.sqs-layout:has([data-wc-app]) .sqs-row,.sqs-layout:has([data-wc-app]) .col{padding:0!important;margin:0!important;width:100%!important;max-width:none!important}
#page:has([data-wc-app]),#sections:has([data-wc-app]),main:has([data-wc-app]),article:has([data-wc-app]){padding-left:0!important;padding-right:0!important;max-width:none!important}
.page-section:has([data-wc-app]) .section-background{display:none!important}
.page-section:has([data-wc-app]) .content-wrapper{padding:0!important;max-width:none!important;width:100%!important}
.page-section:has([data-wc-app]) .fluid-engine{row-gap:0!important;grid-template-rows:none!important;grid-auto-rows:auto!important}
.page-section:has([data-wc-app]) .sqs-block,.page-section:has([data-wc-app]) .fe-block{padding:0!important;margin:0!important}
.page-section:has([data-wc-app]) .sqs-block-content{margin:0!important}
html:has([data-wc-app]),body:has([data-wc-app]){overflow-x:clip}
/* no gap before our footer: nothing below the last section, and any leftover gap shows footer colour, not page colour */
html.wc-chrome #siteWrapper,html.wc-chrome #page,html.wc-chrome #sections,html.wc-chrome main,html.wc-chrome article,html.wc-chrome .sections,
html.wc-chrome .page-section:has([data-wc-app]):last-child{padding-bottom:0!important;margin-bottom:0!important}
.page-section:has([data-wc-app]) .section-divider-display,.page-section:has([data-wc-app]) .section-divider-block{display:none!important}
.page-section:has([data-wc-app]) .sqs-block-content>*{margin-bottom:0!important}
html.wc-chrome,html.wc-chrome body{background:var(--wc-charcoal)!important}
html.wc-chrome #siteWrapper{background:transparent}
[data-wc-app]{display:block;background:var(--wc-alabaster)}
[data-wc-app] img{max-width:100%}

/* ---------- site header ---------- */
.wc-sitehead{position:sticky;top:0;z-index:9000;background:var(--wc-charcoal);color:#fff;font-family:var(--wc-body)}
.wc-sitehead *{box-sizing:border-box}
.wc-sitehead__in{max-width:calc(var(--wc-max) + 2*var(--wc-gutter));margin:0 auto;padding:0 var(--wc-gutter);min-height:96px;display:flex;align-items:center;gap:24px}
.wc-sitehead__logo{flex:0 0 auto;display:block;line-height:0}
.wc-sitehead__logo img{height:60px;width:auto;display:block}
.wc-sitehead__nav{margin-left:auto;display:flex;align-items:center;gap:4px 30px;flex-wrap:wrap;justify-content:flex-end}
.wc-sitehead__nav a{color:rgba(255,255,255,.88);text-decoration:none;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;padding:8px 0;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease;white-space:nowrap}
.wc-sitehead__nav a:hover{color:#fff;border-bottom-color:var(--wc-driftwood)}
.wc-sitehead__nav a[aria-current="page"]{color:#fff;border-bottom-color:var(--wc-hearth)}
.wc-sitehead__fb{display:inline-flex;align-items:center}
.wc-sitehead__fb svg{width:18px;height:18px}
.wc-sitehead__fb span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wc-sitehead__nav a.wc-sitehead__cta{background:var(--wc-hearth);color:#fff;padding:10px 18px;border-radius:6px;border:0;font-weight:600}
.wc-sitehead__nav a.wc-sitehead__cta:hover{background:#fff;color:var(--wc-charcoal)}
.wc-sitehead__samples{display:inline-flex;align-items:center;gap:6px;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 12px;font:600 13px var(--wc-sans)}
.wc-sitehead__samples[hidden]{display:none}
.wc-sitehead__samples svg{width:17px;height:17px}
.wc-sitehead__samples b{background:var(--wc-hearth);border-radius:999px;min-width:20px;height:20px;line-height:20px;text-align:center;font-size:12px;padding:0 5px}
.wc-sitehead__menu{display:none;margin-left:auto;background:none;border:0;color:#fff;width:44px;height:44px;padding:10px;cursor:pointer}
.wc-sitehead__menu svg{width:24px;height:24px}
.wc-sitehead :focus-visible{outline:2px solid var(--wc-hearth-soft);outline-offset:3px}
@media(max-width:760px){
  .wc-sitehead__in{min-height:76px;gap:12px;padding:0 16px}
  .wc-sitehead__logo img{height:44px}
  .wc-sitehead__menu{display:block}
  .wc-sitehead__samples{margin-left:auto}
  .wc-sitehead__samples:not([hidden]) + .wc-sitehead__menu{margin-left:0}
  .wc-sitehead__nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--wc-charcoal);flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 20px;border-top:1px solid rgba(255,255,255,.12);max-height:calc(100vh - 64px);overflow-y:auto}
  .wc-sitehead.is-open .wc-sitehead__nav{display:flex}
  .wc-sitehead__nav a{font-size:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1)}
  .wc-sitehead__nav a[aria-current="page"]{border-bottom-color:rgba(255,255,255,.1);color:var(--wc-hearth-soft)}
  .wc-sitehead__fb span{position:static;width:auto;height:auto;overflow:visible;clip:auto;margin-left:8px}
  .wc-sitehead__nav a.wc-sitehead__cta{margin-top:14px;text-align:center;padding:14px}
  html.wc-menu-open{overflow:hidden}
}

/* ---------- site footer ---------- */
.wc-sitefoot{background:var(--wc-charcoal);color:rgba(255,255,255,.85);font-family:var(--wc-body);font-size:15px;line-height:1.6}
.wc-sitefoot *{box-sizing:border-box}
.wc-sitefoot__in{max-width:var(--wc-max);margin:0 auto;padding:56px var(--wc-gutter) 40px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.2fr;gap:36px}
.wc-sitefoot__brand img{height:32px;width:auto;display:block}
.wc-sitefoot__tag{font-family:var(--wc-head);font-size:22px;line-height:1.3;color:#fff;margin:18px 0 0;max-width:320px}
.wc-sitefoot h2{font:700 11.5px var(--wc-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--wc-driftwood);margin:0 0 14px}
.wc-sitefoot ul{list-style:none;margin:0;padding:0}
.wc-sitefoot li{margin:0 0 8px}
.wc-sitefoot address{font-style:normal}
.wc-sitefoot a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25)}
.wc-sitefoot a:hover{border-bottom-color:var(--wc-hearth-soft)}
.wc-sitefoot__fb{display:inline-flex;align-items:center;gap:8px}
.wc-sitefoot__fb svg{width:18px;height:18px}
.wc-sitefoot__follow{margin:14px 0 0}
.wc-sitefoot__base{border-top:1px solid rgba(255,255,255,.12);max-width:var(--wc-max);margin:0 auto;padding:18px var(--wc-gutter) 28px;font-size:13px;color:rgba(255,255,255,.6)}
@media(max-width:900px){.wc-sitefoot__in{grid-template-columns:1fr 1fr;padding:40px 16px 28px;gap:28px}.wc-sitefoot__brand{grid-column:1/-1}.wc-sitefoot__follow{margin:14px 0 0}
.wc-sitefoot__base{padding:16px}}
@media(max-width:480px){.wc-sitefoot__in{grid-template-columns:1fr}}

/* ===== 20-home-hero.css ===== */

.wc-hero{
  --alabaster:#F5F2EB; --stone:#D8D1C2; --driftwood:#B8AD9B; --sage:#6B7A68; --sage-dark:#58664F; --hearth:#9C6A4B; --hearth-soft:#F3E3D6; --charcoal:#2B2B2B; --muted:#5a5a5a;
  --head:"Playfair Display",var(--heading-font-font-family,Georgia),Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  position:relative; width:100vw; max-width:100vw; left:50%; margin-left:-50vw;
  background:var(--charcoal); color:var(--charcoal); box-sizing:border-box; overflow:hidden;
  font-family:Georgia,"Times New Roman",serif; font-size:17px; line-height:1.6; text-align:left;
}
.wc-hero *{box-sizing:border-box; min-width:0}
.wc-hero img{display:block; max-width:100%}
.wc-hero :focus-visible{outline:3px solid var(--hearth); outline-offset:2px}
.wc-hero .wh-bg{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 85%}
.wc-hero::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(30,28,24,.78) 0%,rgba(30,28,24,.5) 45%,rgba(30,28,24,.15) 100%); pointer-events:none}
.wc-hero .wh-in{position:relative; z-index:1; max-width:var(--wc-max); margin:0 auto; padding:calc(var(--wh-clear,0px) + 56px) var(--wc-gutter) 64px; display:grid; grid-template-columns:minmax(0,1fr) 440px; gap:48px; align-items:center; min-height:max(560px,min(78vh,720px))}

/* LEFT: words */
.wc-hero .wh-copy{max-width:620px; color:#fff}
.wc-hero .wh-kicker{font-family:var(--sans); font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--hearth-soft); margin:0 0 14px}
.wc-hero h1{font-family:var(--head); font-weight:400; font-size:54px; line-height:1.08; color:#fff; margin:0 0 16px}
.wc-hero .wh-sub{font-family:var(--head); font-size:22px; line-height:1.4; color:#fff; margin:0 0 14px}
.wc-hero .wh-body{font-size:17px; color:rgba(255,255,255,.9); margin:0 0 28px; max-width:540px}
.wc-hero .wh-acts{display:flex; flex-wrap:wrap; gap:12px}
.wc-hero .wh-btn{display:inline-block; padding:14px 26px; border-radius:6px; font-family:var(--sans); font-size:14px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; background:var(--hearth); color:#fff; border:1px solid var(--hearth); transition:background .2s ease,border-color .2s ease,color .2s ease}
.wc-hero .wh-btn:hover{background:var(--charcoal); border-color:var(--charcoal); color:#fff}
.wc-hero .wh-btn.ghost{background:transparent; border-color:#fff}
.wc-hero .wh-btn.ghost:hover{background:#fff; color:var(--charcoal)}

/* RIGHT: colour finder widget */
.wc-hero .wh-find{min-width:0; max-width:100%; background:#fff; border:1px solid var(--stone); border-radius:12px; padding:22px 22px 18px; box-shadow:0 18px 40px rgba(0,0,0,.18); font-family:var(--sans)}
.wc-hero .wh-find h2{font-family:var(--head); font-weight:400; font-size:26px; line-height:1.15; margin:0 0 4px; color:var(--charcoal)}
.wc-hero .wh-find > p{margin:0 0 14px; font-size:13.5px; line-height:1.5; color:var(--muted)}
.wc-hero .wh-search{position:relative; margin:0 0 12px; width:100%; max-width:100%}
.wc-hero .wh-search input{display:block; box-sizing:border-box!important; width:100%!important; max-width:100%!important; min-width:0!important; height:auto!important; margin:0!important; padding:11px 12px 11px 38px!important; border:1px solid var(--stone)!important; border-radius:6px!important; font-family:inherit; font-size:15px!important; line-height:1.3!important; color:var(--charcoal); background:#fff!important; -webkit-appearance:none; appearance:none; box-shadow:none}
.wc-hero .wh-search input:focus{outline:none; border-color:var(--hearth); box-shadow:0 0 0 3px var(--hearth-soft)}
.wc-hero .wh-search svg{position:absolute; left:12px; top:50%; width:17px; height:17px; transform:translateY(-50%); color:var(--driftwood); pointer-events:none}
.wc-hero .wh-lbl{display:block; font-size:10.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--hearth); margin:0 0 6px}
.wc-hero .wh-chips{display:flex; flex-wrap:wrap; gap:6px; margin:0 0 12px}
.wc-hero .wh-chip{display:inline-flex; align-items:center; gap:6px; padding:6px 11px; border:1px solid var(--stone); border-radius:999px; background:#fff; font-family:inherit; font-size:12.5px; color:var(--charcoal); cursor:pointer; line-height:1.2; transition:background .2s ease,border-color .2s ease,color .2s ease}
.wc-hero .wh-chip:hover{border-color:var(--driftwood); background:var(--alabaster)}
.wc-hero .wh-chip[aria-pressed="true"]{background:var(--sage); border-color:var(--sage); color:#fff}
.wc-hero .wh-dot{width:11px; height:11px; border-radius:50%; border:1px solid rgba(0,0,0,.15); flex-shrink:0}
.wc-hero .wh-count{font-size:12px; color:#6a6a6a; margin:2px 0 8px; display:flex; justify-content:space-between; gap:8px}
.wc-hero .wh-clear{background:none; border:0; padding:0; font:inherit; color:var(--hearth); cursor:pointer; text-decoration:underline}
.wc-hero .wh-res{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; max-height:318px; overflow-y:auto; padding:2px 4px 2px 0; margin:0 0 12px; overscroll-behavior:contain}
.wc-hero .wh-res:empty{display:none}
.wc-hero .wh-none{font-size:13.5px; color:var(--muted); background:var(--alabaster); border-radius:8px; padding:14px; margin:0 0 12px; text-align:center}
.wc-hero .wh-c{position:relative; display:flex; flex-direction:column}
.wc-hero .wh-c a.wh-img{display:block; aspect-ratio:1/1; border-radius:8px; overflow:hidden; background:var(--alabaster); border:2px solid transparent}
.wc-hero .wh-c.on a.wh-img{border-color:var(--sage)}
.wc-hero .wh-c img{width:100%; height:100%; object-fit:cover; transition:transform .4s ease}
.wc-hero .wh-c:hover img{transform:scale(1.08)}
.wc-hero .wh-c strong{display:block; font-size:12px; line-height:1.25; margin:5px 0 0; color:var(--charcoal)}
.wc-hero .wh-c span{display:block; font-size:10.5px; color:#777; line-height:1.3}
.wc-hero .wh-add{margin-top:6px; width:100%; padding:6px 4px; border:1px solid var(--stone); border-radius:5px; background:#fff; font-family:inherit; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--charcoal); cursor:pointer}
.wc-hero .wh-add:hover{background:var(--alabaster); border-color:var(--driftwood)}
.wc-hero .wh-c.on .wh-add{background:var(--sage); border-color:var(--sage); color:#fff}
.wc-hero .wh-foot{display:flex; align-items:center; justify-content:space-between; gap:10px; border-top:1px solid var(--stone); padding-top:12px; font-size:13px; color:var(--muted)}
.wc-hero .wh-foot strong{color:var(--hearth)}
.wc-hero .wh-foot a{color:#fff; background:var(--charcoal); text-decoration:none; padding:8px 12px; border-radius:6px; font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap}
.wc-hero .wh-foot a:hover{background:var(--sage-dark)}
.wc-hero .wh-toast{position:fixed; left:50%; bottom:20px; transform:translate(-50%,calc(100% + 40px)); visibility:hidden; background:var(--charcoal); color:#fff; padding:12px 16px; border-radius:8px; font-family:var(--sans); font-size:14px; z-index:9998; display:flex; gap:14px; align-items:center; box-shadow:0 10px 30px rgba(0,0,0,.25); transition:transform .3s ease; max-width:calc(100vw - 32px)}
.wc-hero .wh-toast.show{transform:translate(-50%,0); visibility:visible}
.wc-hero .wh-toast a{color:var(--hearth-soft); font-weight:700; white-space:nowrap}
/* tagging helper (only with ?wnz_tag=1) */
.wc-hero .wh-tag{margin-top:6px; width:100%; font-size:11px; padding:3px; border:1px solid var(--hearth); border-radius:4px}
.wc-hero .wh-tagbar{background:var(--hearth-soft); border:1px solid var(--hearth); border-radius:8px; padding:10px; margin:0 0 12px; font-size:12.5px}
.wc-hero .wh-tagbar button{margin-top:6px; padding:7px 10px; border:0; border-radius:5px; background:var(--hearth); color:#fff; font:inherit; font-weight:700; cursor:pointer}
.wc-hero .wh-tagbar textarea{width:100%; height:90px; margin-top:8px; font:11px/1.3 monospace}

@media(max-width:1100px){
  .wc-hero .wh-in{grid-template-columns:minmax(0,1fr) 400px; gap:32px}
  .wc-hero h1{font-size:44px}
}
@media(max-width:900px){
  .wc-hero::after{background:linear-gradient(to bottom,rgba(30,28,24,.25) 0%,rgba(30,28,24,.7) 45%,rgba(30,28,24,.85) 100%)}
  .wc-hero .wh-in{display:block; padding:calc(var(--wh-clear,0px) + 32px) 16px 28px; min-height:0}
  .wc-hero h1{font-size:36px}
  .wc-hero .wh-sub{font-size:19px}
  .wc-hero .wh-body{font-size:16px; margin-bottom:22px}
  .wc-hero .wh-find{margin-top:28px}
}
@media(max-width:420px){
  .wc-hero .wh-btn{flex:1 1 auto; text-align:center; padding:13px 16px}
  .wc-hero .wh-find{padding:18px 14px 14px}
  .wc-hero .wh-res{gap:8px; max-height:340px}
}

/* phones: the finder starts as just the search bar and opens when tapped */
.wc-hero .wh-x{display:none}
@media(max-width:900px){
  .wc-hero .wh-find:not(.open){padding:0; border:0; background:transparent; box-shadow:none}
  .wc-hero .wh-find:not(.open) h2,.wc-hero .wh-find:not(.open) > p,.wc-hero .wh-find:not(.open) .wh-more{display:none}
  .wc-hero .wh-find:not(.open) .wh-search{margin:0}
  .wc-hero .wh-find:not(.open) .wh-search input{padding:14px 14px 14px 42px!important; font-size:16px!important; border-color:#fff!important; box-shadow:0 8px 24px rgba(0,0,0,.22)!important}
  .wc-hero .wh-find:not(.open) .wh-search svg{left:14px; width:19px; height:19px; color:var(--hearth)}
  .wc-hero .wh-find.open .wh-search input{padding-right:44px!important; font-size:16px!important}
  .wc-hero .wh-find.open .wh-x{display:flex; align-items:center; justify-content:center; position:absolute; right:6px; top:50%; transform:translateY(-50%); width:32px; height:32px; border:0; border-radius:50%; background:var(--alabaster); color:var(--charcoal); font-size:22px; line-height:1; cursor:pointer; padding:0}
  .wc-hero .wh-find{margin-top:22px}
  .wc-hero .wh-find.open{scroll-margin-top:calc(var(--wh-clear,0px) + 12px)}
}

/* ===== 21-ranges.css ===== */
#wc-home{
  --alabaster:#F5F2EB; --stone:#D8D1C2; --driftwood:#B8AD9B; --sage:#6B7A68; --sage-dark:#58664F;
  --hearth:#9C6A4B; --hearth-soft:#F3E3D6; --charcoal:#2B2B2B;
  width:100%; max-width:100%; background:var(--alabaster); color:var(--charcoal); overflow-x:clip;
  font-family:var(--body-font-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
}
#wc-home *{box-sizing:border-box; min-width:0;}
#wc-home .wc-layout{max-width:var(--wc-max); margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:40px; align-items:start; padding:40px var(--wc-gutter) 64px;}
@media (min-width:1600px){#wc-home .wc-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}

/* ---------- RANGES GRID (2 white blocks per row) ---------- */
#wc-home .wc-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px;}
#wc-home .wc-item{background:#fff; border:1px solid var(--stone); border-radius:12px; padding:24px 22px 26px; display:flex; flex-direction:column; transition:border-color .2s ease, box-shadow .2s ease;}
#wc-home .wc-item:hover{border-color:var(--driftwood); box-shadow:0 6px 18px rgba(43,43,43,.06);}
#wc-home .wc-eyebrow{font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--hearth); font-weight:700; margin:0 0 6px; min-height:14px; line-height:14px;}
#wc-home .wc-title{font-family:var(--heading-font-font-family, Georgia, serif); font-size:24px; font-weight:400; letter-spacing:.08em; text-transform:uppercase; margin:0 0 16px; line-height:1.1; color:var(--charcoal);}
#wc-home .wc-main{aspect-ratio:1/1; overflow:hidden; border-radius:10px; background:var(--alabaster); border:1px solid var(--stone);}
#wc-home .wc-main img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease;}
#wc-home .wc-item:hover .wc-main img{transform:scale(1.05);}
#wc-home .wc-thumbs{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:12px 0 20px;}
#wc-home .wc-thumbs div{aspect-ratio:1/1; overflow:hidden; border-radius:6px; background:var(--alabaster);}
#wc-home .wc-thumbs img{width:100%; height:100%; object-fit:cover; display:block;}
#wc-home .wc-btn{display:block; width:100%; margin-top:auto; padding:13px 20px; text-align:center; text-decoration:none; border:none; border-radius:6px; cursor:pointer;
  background:var(--sage); color:#fff; font-size:14px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; transition:background .2s ease;
  font-family:var(--primary-button-font-font-family, inherit);}
#wc-home .wc-btn:hover{background:var(--hearth); color:#fff;}
#wc-home .wc-btn-outline{background:#fff; color:var(--charcoal); border:1px solid var(--charcoal);}
#wc-home .wc-btn-outline:hover{background:var(--alabaster); color:var(--charcoal);}
#wc-home .wc-tile .wc-title{white-space:nowrap;}
@media(min-width:981px) and (max-width:1300px){ #wc-home .wc-tile .wc-title{font-size:clamp(16px,1.65vw,20px);} }
@media(min-width:641px) and (max-width:980px){ #wc-home .wc-tile .wc-title{font-size:clamp(16px,2.5vw,20px);} }

/* ---------- SPEC CARD under each range card (data in WC_SPECS script) ---------- */
#wc-home .wc-cell{display:flex; flex-direction:column; gap:12px;}
#wc-home .wc-cell > .wc-item{flex:0 0 auto;}
#wc-home .wc-cell > .wc-spec{flex:1 1 auto; display:flex; flex-direction:column; justify-content:center;}
#wc-home .wc-spec{background:#fff; border:1px solid var(--stone); border-radius:12px; padding:18px 22px 16px; text-align:center;}
#wc-home .wc-spec h3{font-family:var(--heading-font-font-family, Georgia, serif); font-size:22px; font-weight:400; margin:0 0 6px; line-height:1.2; color:var(--charcoal);}
#wc-home .wc-spec p{margin:0; font-size:15px; line-height:1.55; color:#444; font-family:var(--body-font-font-family, Georgia, serif);}
#wc-home .wc-spec-line{margin:14px 0 0; padding-top:12px; border-top:1px solid var(--stone); font-size:12.5px; font-weight:700; line-height:1.45; color:var(--charcoal); font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;}
@media(max-width:640px){ #wc-home .wc-spec{padding:16px 16px 14px;} #wc-home .wc-spec h3{font-size:20px;} #wc-home .wc-spec p{font-size:14.5px;} }

/* ---------- SIDEBAR ---------- */
#wc-home .wc-side{position:sticky; top:120px; display:flex; flex-direction:column; gap:20px;}
#wc-home .wc-card{background:#fff; border:1px solid var(--stone); border-radius:12px; padding:24px;}
#wc-home .wc-card h3{margin:0 0 16px; font-size:13px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--charcoal); font-family:var(--body-font-font-family, inherit);}

/* 1. Steps */
#wc-home .wc-step{display:flex; gap:14px; align-items:flex-start; padding:14px 0; border-bottom:1px solid var(--alabaster); text-decoration:none; color:inherit;}
#wc-home .wc-card h3 + .wc-step{padding-top:0;}
#wc-home .wc-step-num{width:40px; height:40px; flex-shrink:0; border-radius:50%; background:var(--hearth-soft); color:var(--hearth); display:flex; align-items:center; justify-content:center;
  font-family:var(--heading-font-font-family, Georgia, serif); font-size:18px;}
#wc-home .wc-step strong{display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; margin-bottom:4px; color:var(--charcoal);}
#wc-home .wc-step p{margin:0; font-size:13px; line-height:1.5; color:#5a5a5a;}
#wc-home a.wc-step:hover strong{color:var(--sage-dark);}

/* Step 3 - measure & quote CTA */
#wc-home .wc-step-cta{border-bottom:none; padding-bottom:0;}
#wc-home .wc-step-cta > div:last-child{flex:1;}
#wc-home .wc-step-cta .wc-num-hot{background:var(--hearth); color:#fff;}
#wc-home .wc-mq-btn{display:flex; align-items:center; justify-content:center; gap:10px; margin-top:14px; background:var(--sage); font-size:13px;}
#wc-home .wc-mq-btn:hover{background:var(--hearth);}
#wc-home .wc-mq-btn .wc-chev{display:inline-block; width:8px; height:8px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform .3s ease;}
#wc-home .wc-mq-btn[aria-expanded="true"]{background:var(--hearth);}
#wc-home .wc-mq-btn[aria-expanded="true"] .wc-chev{transform:translateY(2px) rotate(-135deg);}

/* Dropdown (Store finder) */
#wc-home .wc-drop{display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s ease, margin-top .4s ease; margin-top:0; scroll-margin-top:24px;}
#wc-home .wc-drop.open{grid-template-rows:1fr; margin-top:16px;}
#wc-home .wc-drop-inner{overflow:hidden; min-height:0; visibility:hidden; transition:visibility 0s linear .4s;}
#wc-home .wc-drop.open .wc-drop-inner{visibility:visible; transition:visibility 0s;}
#wc-home .wc-drop-box{background:var(--alabaster); border:1px solid var(--stone); border-radius:10px; padding:18px 16px;}
#wc-home .wc-drop-box h4{margin:0 0 6px; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--charcoal);}
#wc-home .wc-drop-box > p{margin:0 0 14px; font-size:13px; line-height:1.5; color:#5a5a5a;}

/* 2. About our carpets */
#wc-home .wc-about-img{aspect-ratio:4/3; overflow:hidden; border-radius:8px; background:var(--alabaster); border:1px solid var(--stone); margin-bottom:18px;}
#wc-home .wc-about-img img{width:100%; height:100%; object-fit:cover; display:block;}
#wc-home .wc-about p{margin:0 0 12px; font-size:13.5px; line-height:1.6; color:#5a5a5a;}
#wc-home .wc-about p:last-child{margin-bottom:0;}
#wc-home .wc-about .wc-about-note{font-weight:700; color:var(--hearth);}

/* Store finder */
#wc-home .wc-sf-label{display:block; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--hearth); margin:0 0 6px;}
#wc-home .wc-sf-select{position:relative; margin-bottom:14px;}
#wc-home .wc-sf-select select{width:100%; appearance:none; -webkit-appearance:none; padding:11px 38px 11px 12px; border:1px solid var(--stone); border-radius:6px; background:#fff; font-family:inherit; font-size:14px; color:var(--charcoal); cursor:pointer;}
#wc-home .wc-sf-select select:focus{outline:none; border-color:var(--hearth); box-shadow:0 0 0 3px var(--hearth-soft);}
#wc-home .wc-sf-select::after{content:""; position:absolute; right:15px; top:50%; width:7px; height:7px; border-right:2px solid var(--charcoal); border-bottom:2px solid var(--charcoal); transform:translateY(-70%) rotate(45deg); pointer-events:none;}
#wc-home .wc-sf-or{display:flex; align-items:center; gap:10px; margin:-4px 0 10px; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#8a8a8a;}
#wc-home .wc-sf-or::before, #wc-home .wc-sf-or::after{content:""; flex:1; height:1px; background:var(--stone);}
#wc-home .wc-sf-search{width:100%; padding:11px 12px; margin-bottom:14px; border:1px solid var(--stone); border-radius:6px; background:#fff; font-family:inherit; font-size:14px; color:var(--charcoal);}
#wc-home .wc-sf-search:focus{outline:none; border-color:var(--hearth); box-shadow:0 0 0 3px var(--hearth-soft);}
#wc-home .wc-sf-count{font-size:12px; color:#6a6a6a; margin:0 0 8px; min-height:16px;}
#wc-home .wc-sf-list{list-style:none; margin:0 0 12px; padding:0 2px 0 0; display:flex; flex-direction:column; gap:8px; max-height:420px; overflow-y:auto;}
#wc-home .wc-sf-list:empty{display:none;}
#wc-home .wc-sf-store{background:#fff; border:1px solid var(--stone); border-radius:8px; padding:13px 13px 12px;}
#wc-home .wc-sf-store strong{display:block; font-size:14px; line-height:1.3; color:var(--charcoal); letter-spacing:0; text-transform:none; margin:0 0 4px;}
#wc-home .wc-sf-addr{display:block; font-size:12.5px; line-height:1.45; color:#5f5f5f; font-style:normal;}
#wc-home .wc-sf-town{display:inline-block; margin-top:6px; font-size:10.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--sage-dark); background:#EEF1EC; padding:3px 7px; border-radius:4px;}
#wc-home .wc-sf-acts{display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:10px;}
#wc-home .wc-sf-acts a{display:flex; align-items:center; justify-content:center; gap:6px; padding:8px 6px; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; border-radius:5px; white-space:nowrap; transition:background .2s ease, color .2s ease, border-color .2s ease;}
#wc-home .wc-sf-dir{background:#fff; color:var(--charcoal); border:1px solid var(--charcoal);}
#wc-home .wc-sf-dir:hover{background:var(--alabaster); color:var(--charcoal);}
#wc-home .wc-sf-acts a:only-child{grid-column:1 / -1;}
#wc-home .wc-sf-acts svg{width:13px; height:13px; flex-shrink:0;}
#wc-home .wc-sf-region{font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--sage-dark); margin:6px 0 0; padding:0;}
#wc-home .wc-sf-note{font-size:12.5px; line-height:1.5; color:#5a5a5a; margin:0 0 10px;}

/* 4. Wool benefits */
#wc-home .wc-wool{background:var(--sage); border-color:var(--sage); color:#fff;}
#wc-home .wc-wool h3{color:#fff;}
#wc-home .wc-wool-head{font-family:var(--heading-font-font-family, Georgia, serif); font-size:28px; line-height:1.1; margin:0 0 10px;}
#wc-home .wc-wool p{color:rgba(255,255,255,.88); font-size:13.5px; line-height:1.55; margin:0 0 16px;}
#wc-home .wc-wool .wc-btn{background:#fff; color:var(--charcoal);}
#wc-home .wc-wool .wc-btn:hover{background:var(--alabaster); color:var(--charcoal);}

/* 0. Sample box (top of sidebar) - shared basket with the range pages and the header colour finder */
#wc-home .wc-samples{scroll-margin-top:90px;}
#wc-home .wc-samples > p{margin:0 0 14px; font-size:13.5px; line-height:1.55; color:#5a5a5a;}
#wc-home .wc-sb-thumbs{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:0 0 14px;}
#wc-home .wc-sb-thumbs:empty{display:none;}
#wc-home .wc-sb-t{position:relative; text-align:center;}
#wc-home .wc-sb-t img{width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:6px; border:2px solid var(--sage); display:block;}
#wc-home .wc-sb-t span{display:block; font-size:10.5px; line-height:1.2; margin-top:4px; color:var(--charcoal); overflow-wrap:anywhere;}
#wc-home .wc-sb-t em{display:block; font-style:normal; font-size:9.5px; color:#777;}
#wc-home .wc-sb-x{position:absolute; top:-6px; right:-6px; width:20px; height:20px; border-radius:50%; border:none; background:var(--hearth); color:#fff; font-size:13px; line-height:20px; padding:0; cursor:pointer;}
#wc-home .wc-sb-x:hover{background:var(--charcoal);}
#wc-home .wc-sb-empty{margin:0 0 14px; padding:14px; border:1px dashed var(--stone); border-radius:8px; text-align:center; font-size:13px; color:#777;}
#wc-home .wc-samples .wc-btn{background:var(--sage);}
#wc-home .wc-samples .wc-btn:hover{background:var(--hearth);}
#wc-home .wc-samples .wc-btn:disabled{background:var(--stone); color:var(--charcoal); cursor:not-allowed;}
#wc-home .wc-sb-count{margin:10px 0 0; text-align:center; font-size:13px; color:#5a5a5a;}
#wc-home .wc-sb-count strong{color:var(--hearth);}
/* sample request form (pop-up) */
#wc-home .wc-modal{display:none; position:fixed; inset:0; background:rgba(43,43,43,.6); z-index:9999; align-items:center; justify-content:center; padding:16px;}
#wc-home .wc-modal.active{display:flex;}
#wc-home .wc-form{background:#fff; padding:24px; border-radius:12px; width:100%; max-width:480px; max-height:calc(100vh - 32px); overflow-y:auto; border:1px solid var(--stone);}
#wc-home .wc-form h3{margin:0 0 8px; font-size:20px; color:var(--charcoal); font-family:var(--heading-font-font-family, Georgia, serif); font-weight:400;}
#wc-home .wc-form .wc-form-sel{margin:0 0 16px; color:var(--sage); font-weight:600; font-size:14px;}
#wc-home .wc-form input{box-sizing:border-box!important; max-width:100%!important; min-width:0!important; margin:0 0 12px!important; width:100%; padding:10px; margin-bottom:12px; border:1px solid var(--stone); border-radius:6px; font-family:inherit; font-size:15px; background:#fff;}
#wc-home .wc-form input:focus{outline:none; border-color:var(--hearth); box-shadow:0 0 0 3px var(--hearth-soft);}
#wc-home .wc-form .wc-btn{background:var(--sage);}
#wc-home .wc-form .wc-btn:hover{background:var(--hearth);}
#wc-home .wc-form .wc-btn:disabled{background:var(--stone); color:var(--charcoal);}
#wc-home .wc-captcha{margin:0 0 12px; min-height:78px;}
@media(max-width:400px){ #wc-home .wc-captcha{transform:scale(.86); transform-origin:0 0;} }
#wc-home .wc-close{float:right; font-size:28px; cursor:pointer; line-height:1; color:var(--driftwood); background:none; border:0; padding:0;}
#wc-home .wc-close:hover{color:var(--charcoal);}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1200px){ #wc-home .wc-layout{grid-template-columns:minmax(0,1fr) 340px; gap:32px;} }
@media(max-width:980px){
  #wc-home .wc-layout{grid-template-columns:minmax(0,1fr); padding:20px 16px 48px;}
  #wc-home .wc-grid{gap:20px;}
  #wc-home .wc-side{position:static; max-width:560px; width:100%; margin:0 auto;}
}
@media(max-width:640px){
  #wc-home .wc-grid{grid-template-columns:minmax(0,1fr); max-width:440px; margin:0 auto;}
  #wc-home .wc-item{padding:20px 16px 22px;}
  #wc-home .wc-title{font-size:21px;}
}/* wide screens, 3 per row: the tiles card (10th) runs across the full row instead of sitting alone */
@media (min-width:1600px){
  #wc-home .wc-cell:has(.wc-tile){grid-column:1/-1; flex-direction:row; align-items:stretch;}
  #wc-home .wc-cell:has(.wc-tile) > .wc-tile{flex:2 1 0; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); grid-template-rows:auto auto auto 1fr; column-gap:24px;}
  #wc-home .wc-tile .wc-main{grid-column:1; grid-row:1 / span 4; aspect-ratio:auto; min-height:300px;}
  #wc-home .wc-tile .wc-eyebrow,#wc-home .wc-tile .wc-title,#wc-home .wc-tile .wc-thumbs{grid-column:2;}
  #wc-home .wc-tile .wc-btn{grid-column:2; align-self:end;}
  #wc-home .wc-cell:has(.wc-tile) > .wc-spec{flex:1 1 0;}
}

/* ===== 22-range.css ===== */
/* Carpet range pages (/rolling-downs etc.): the old page styles, scoped to .wc-range, plus the room visualiser button. */
.wc-range{--alabaster:#F5F2EB;--stone:#D8D1C2;--driftwood:#B8AD9B;--sage:#6B7A68;--sage-dark:#58664F;--charcoal:#2B2B2B;--hearth:#9C6A4B;--hearth-soft:#F3E3D6;background:var(--alabaster);padding:0}
.wc-range *{box-sizing:border-box}
.wc-range .ed-container{max-width: var(--wc-max); margin: 2rem auto; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: var(--charcoal);}
.wc-range .ed-container h2{color: var(--charcoal);}
.wc-range .ed-main-wrap{display: grid; grid-template-columns: 1fr 380px; gap: 40px; align-items: start;}
.wc-range .ed-left{min-width: 0;}
.wc-range .ed-right{position: sticky; top: 116px;}
.wc-range .ed-grid-box{background: #fff; border: 1px solid var(--stone); border-radius: 12px; padding: 24px;}
.wc-range .ed-grid-box > p{margin: 0 0 20px; color: #5a5a5a;}
.wc-range .ed-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px;}
.wc-range .ed-card{text-align: center;}
.wc-range .ed-label{margin: 0 0 12px; font-weight: 700; font-size: 18px; color: var(--charcoal); text-align: left;}
.wc-range .ed-img-wrap{position: relative; overflow: hidden; border-radius: 12px; box-shadow: 0 4px 12px rgba(43,43,43,0.08); cursor: pointer; border: 3px solid transparent; transition: border .2s ease;}
.wc-range .ed-card.selected .ed-img-wrap{border-color: var(--sage);}
.wc-range .ed-card img{width: 100%; height: 260px; object-fit: cover; transition: transform .4s ease; display: block;}
.wc-range .ed-card:hover img{transform: scale(1.15);}
.wc-range .ed-banner-span{grid-column: span 1;}
.wc-range .ed-banner-img{height: 260px; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 12px rgba(43,43,43,0.08);}
.wc-range .ed-banner-img img{width: 100%; height: 100%; object-fit: cover; display: block;}
.wc-range .ed-btn{background: var(--charcoal); color: white; border: none; padding: 12px 24px; border-radius: 6px; font-weight: 600; cursor: pointer; margin-top: 12px; width: 180px; transition: background .2s ease, color .2s ease, border-color .2s ease; display: inline-block; text-align: center; text-decoration: none;}
.wc-range .ed-btn:hover{background: #444;}
.wc-range .ed-btn:disabled{background: var(--stone); color: var(--charcoal); cursor: not-allowed;}
.wc-range .ed-btn-secondary{background: #fff; color: var(--charcoal); border: 1px solid var(--charcoal);}
.wc-range .ed-btn-secondary:hover{background: var(--alabaster);}
.wc-range .ed-rug-cta{margin-top: 14px; padding-top: 12px; border-top: 2px solid var(--hearth-soft);}
.wc-range .ed-rug-cta p{margin: 0; font-size: 14px; color: var(--charcoal);}
.wc-range .ed-btn.ed-btn-rug{background: var(--sage); color: #fff;}
.wc-range .ed-btn.ed-btn-rug:hover{background: var(--sage-dark);}
.wc-range .ed-select-btn{background: #fff; color: var(--charcoal); border: 1px solid var(--stone); width: auto; min-width: 160px;}
.wc-range .ed-select-btn:hover{background: var(--alabaster); border-color: var(--driftwood);}
.wc-range .ed-card.selected .ed-select-btn{background: var(--sage); color: #fff; border-color: var(--sage);}
.wc-range .ed-card.selected .ed-select-btn:hover{background: var(--sage-dark); border-color: var(--sage-dark);}
.wc-range .ed-samples{font-size: 14px; color: #5a5a5a; margin-top: 12px; text-align: center;}
.wc-range .ed-samples strong{color: var(--hearth);}
.wc-range .ed-basket-note{font-size: 12px; color: #777; margin-top: 6px; text-align: center;}
.wc-range .ed-thumbs{display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 4px;}
.wc-range .ed-thumbs:empty{display: none;}
.wc-range .ed-thumb{position: relative; width: 64px; text-align: center;}
.wc-range .ed-thumb img{width: 64px; height: 64px; object-fit: cover; border-radius: 6px; border: 2px solid var(--sage); display: block; box-sizing: border-box;}
.wc-range .ed-thumb span{display: block; font-size: 11px; color: var(--charcoal); margin-top: 4px; line-height: 1.2;}
.wc-range .ed-thumb span em{display: block; font-style: normal; font-size: 10px; color: #777; margin-top: 2px;}
.wc-range .ed-thumb-remove{position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; border-radius: 50%; border: none; background: var(--hearth); color: #fff; font-size: 13px; line-height: 20px; padding: 0; cursor: pointer;}
.wc-range .ed-thumb-remove:hover{background: var(--charcoal);}
.wc-range .ed-divider-box{border: 1px solid var(--stone); border-radius: 12px; padding: 20px; margin-bottom: 24px; background: #fff; text-align: center;}
.wc-range .ed-divider-box h3{margin: 0 0 12px; font-size: 18px; color: var(--charcoal);}
.wc-range .ed-divider-box p{color:#5a5a5a; font-size:14px; margin:0 0 12px; line-height: 1.5;}
.wc-range .ed-divider-box .ed-note{font-size: 13px; color: #777; margin-top: 8px;}
.wc-range .ed-divider-box .ed-kiwi-line{font-size: 14px; color: var(--charcoal); font-weight: 600; margin: 12px 0 0; padding-top: 12px; border-top: 2px solid var(--hearth-soft);}
.wc-range .ed-divider-box .ed-btn{margin-top: 12px; width: 100%; box-sizing: border-box;}
.wc-range .ed-divider-box .ed-btn + .ed-btn{margin-top: 8px;}
.wc-range .ed-kiwi-box{text-align: left;}
.wc-range .ed-kiwi-box ul{margin: 8px 0 0 20px; padding: 0;}
.wc-range .ed-kiwi-box li{font-size: 14px; color: #555; margin-bottom: 6px; line-height: 1.5;}
.wc-range .ed-kiwi-box li::marker{color: var(--hearth);}
.wc-range .ed-preview-box{border: 1px solid var(--stone); border-radius: 12px; padding: 20px; background: #fff; margin-bottom: 24px;}
.wc-range .ed-preview-box h3{margin: 0 0 8px; font-size: 18px; color: var(--charcoal);}
.wc-range .ed-preview-name{font-size: 14px; color: var(--sage); margin-bottom: 16px; min-height: 20px; font-weight: 600;}
.wc-range .ed-room{width: 100%; border-radius: 8px; overflow: hidden; background: var(--alabaster); min-height: 200px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--stone);}
.wc-range .ed-room img{width: 100%; height: auto; display: block;}
.wc-range .ed-modal{display: none; position: fixed; inset: 0; background: rgba(43,43,43,.6); z-index: 9999; align-items: center; justify-content: center;}
.wc-range .ed-modal.active{display: flex;}
.wc-range .ed-form-box{background: #fff; padding: 24px; border-radius: 12px; width: 95%; max-width: 480px; border: 1px solid var(--stone);}
.wc-range .ed-form-box h3{margin: 0 0 8px; font-size: 20px; color: var(--charcoal);}
.wc-range .ed-form-box p{margin: 0 0 16px; color: var(--sage); font-weight: 600;}
.wc-range .ed-form-box input,.wc-range .ed-form-box textarea{width: 100%; padding: 10px; margin-bottom: 12px; border: 1px solid var(--stone); border-radius: 6px; font-family: inherit; box-sizing: border-box; background: #fff;}
.wc-range .ed-form-box input:focus,.wc-range .ed-form-box textarea:focus{outline: none; border-color: var(--hearth); box-shadow: 0 0 0 3px var(--hearth-soft);}
.wc-range .ed-form-box textarea{resize: vertical; min-height: 80px;}
.wc-range .ed-form-box .ed-btn{background: var(--sage);}
.wc-range .ed-form-box .ed-btn:hover{background: var(--sage-dark);}
.wc-range .ed-captcha{margin: 0 0 12px; min-height: 78px;}
@media(max-width: 400px){
.wc-range .ed-captcha{transform: scale(.86); transform-origin: 0 0;}
}
.wc-range .ed-close{float: right; font-size: 28px; cursor: pointer; line-height: 1; color: var(--driftwood);}
.wc-range .ed-close:hover{color: var(--charcoal);}
@media(max-width: 1100px){
.wc-range .ed-main-wrap{grid-template-columns: 1fr; gap: 24px;}
.wc-range .ed-right{display: flex; flex-direction: column; position: static;}
.wc-range .ed-right > .ed-divider-box:nth-child(1){order: 1;}
.wc-range .ed-right > .ed-preview-box{order: 2;}
.wc-range .ed-right > .ed-divider-box:nth-child(3){order: 3;}
.wc-range .ed-right > .ed-divider-box:nth-child(4){order: 4;}
.wc-range .ed-right > .ed-divider-box:nth-child(5){order: 5; display: none;}
}

@media(max-width: 900px){
.wc-range .ed-grid{grid-template-columns: repeat(2, 1fr); gap: 24px;}
.wc-range .ed-card img{height: 220px;}
.wc-range .ed-banner-img{height: 220px;}
.wc-range .ed-banner-span{grid-column: span 2;}
}

@media(max-width: 600px){
.wc-range .ed-grid-box{padding: 16px;}
.wc-range .ed-grid{grid-template-columns: 1fr;}
.wc-range .ed-banner-span{display: none;}
.wc-range .ed-btn{width: 100%;}
}

.wc-range .ed-container h2{font-family:var(--wc-head);font-weight:400;font-size:clamp(28px,4vw,42px);line-height:1.15;margin:24px 0 20px}
.wc-range .ed-img-wrap{display:block;width:100%;padding:0;background:none;font:inherit}
.wc-range .ed-vis-link{display:block;margin:8px auto 0;background:none;border:0;padding:4px;color:var(--hearth);font:600 13px var(--wc-sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.wc-range .ed-btn.ed-btn-vis{width:100%;background:var(--hearth);margin-top:14px}
.wc-range .ed-btn.ed-btn-vis:hover{background:#7d5339}
.wc-range .ed-vis-note{margin:8px 0 0;font-size:13px;color:#6a6a6a;text-align:center}
.wc-range .ed-close{background:none;border:0;padding:0}
.wc-range .ed-modal{z-index:100000}
.wc-range .ed-right{top:90px}


/* ===== 23-range-sections.css ===== */
/* Carpet range pages: the sections that were Squarespace sections on the old pages (hero banner, specification,
   other ranges, why wool, closing banner). Full width; the old block's own styles stay in 22-range.css. */
.wc-range>.ed-container{padding:0 var(--wc-gutter);max-width:var(--wc-max)}
@media(max-width:600px){.wc-range{padding:0}.wc-range>.ed-container{padding:0 16px}}
.wc-range .rg-in{max-width:var(--wc-max);margin:0 auto;padding:0 var(--wc-gutter)}

/* hero */
.wc-range .rg-hero{position:relative;min-height:min(78vh,720px);display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--charcoal)}
.wc-range .rg-hero__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.wc-range .rg-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.42) 0%,rgba(20,18,16,.22) 30%,rgba(20,18,16,.06) 55%,rgba(20,18,16,0) 75%)}
.wc-range .rg-hero__in{position:relative;z-index:1;width:100%;max-width:var(--wc-max);margin:0 auto;padding:12vh var(--wc-gutter)}
.wc-range .rg-hero h1{font:400 clamp(40px,5.2vw,72px)/1.05 var(--wc-head);letter-spacing:.02em;margin:0 0 .6em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.wc-range .rg-hero p{font:600 clamp(16px,1.35vw,20px)/1.45 var(--wc-body);max-width:600px;margin:0 0 1.1em;text-shadow:0 1px 8px rgba(0,0,0,.5)}

/* specification */
.wc-range .rg-spec{padding:56px 0 40px;font-family:var(--wc-body);color:var(--charcoal)}
.wc-range .rg-spec h2,.wc-range .rg-also h2{font:400 clamp(28px,3vw,40px)/1.15 var(--wc-head);margin:0 0 24px;color:var(--charcoal)}
.wc-range .rg-spec__intro{max-width:760px;margin:0 0 24px}
.wc-range .rg-spec__intro h3{font:400 22px var(--wc-head);margin:0 0 8px}
.wc-range .rg-spec__intro p{margin:0 0 10px;line-height:1.6}
.wc-range .rg-spec__rows{margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px;border-top:1px solid var(--stone)}
.wc-range .rg-spec__rows div{display:flex;gap:16px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--stone)}
.wc-range .rg-spec__rows dt{font-weight:700;margin:0}
.wc-range .rg-spec__rows dd{margin:0;text-align:right}
.wc-range .rg-spec__note{max-width:760px;margin:20px 0 0;font-size:15px;line-height:1.55}

/* other ranges */
.wc-range .rg-also{padding:32px 0 48px}
.wc-range .rg-also__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.wc-range .rg-also__card{display:block;text-decoration:none;color:var(--charcoal);font:400 20px var(--wc-head)}
.wc-range .rg-also__card img{display:block;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:8px;margin-bottom:10px;transition:transform .3s ease}
.wc-range .rg-also__card:hover img{transform:scale(1.02)}
.wc-range .rg-also__card:hover span{color:var(--hearth)}
@media(max-width:900px){.wc-range .rg-also__grid{grid-template-columns:repeat(2,1fr)}}

/* why wool */
.wc-range .rg-btn{display:inline-block;background:var(--hearth);color:#fff;text-decoration:none;padding:14px 28px;border-radius:6px;font:600 15px var(--wc-sans)}
.wc-range .rg-btn:hover{background:var(--charcoal)}
@media(max-width:600px){.wc-range .rg-spec__rows{grid-template-columns:1fr}.wc-range .rg-also__grid{gap:14px}.wc-range .rg-also__card{font-size:17px}}

/* closing banner */
.wc-range .rg-end{position:relative;min-height:min(60vh,560px);display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--charcoal)}
.wc-range .rg-end__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.wc-range .rg-end::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.38) 0%,rgba(20,18,16,.12) 45%,rgba(20,18,16,0) 70%)}
.wc-range .rg-end__in{position:relative;z-index:1;width:100%;max-width:var(--wc-max);margin:0 auto;padding:10vh var(--wc-gutter)}
.wc-range .rg-end__btn{display:inline-block;background:rgba(107,122,104,.85);color:#fff;text-decoration:none;padding:24px 72px;border-radius:6px;font:15px var(--wc-body);margin-bottom:48px}
.wc-range .rg-end__btn:hover{background:var(--sage-dark)}
.wc-range .rg-end h2{font:400 clamp(30px,3.4vw,48px)/1.1 var(--wc-head);max-width:520px;margin:0;color:#fff}
@media(max-width:600px){.wc-range .rg-hero::after{background:linear-gradient(180deg,rgba(20,18,16,.1) 0%,rgba(20,18,16,.38) 50%,rgba(20,18,16,.1) 100%)}.wc-range .rg-in{padding:0 16px}.wc-range .rg-hero__in,.wc-range .rg-end__in{padding:56px 16px}.wc-range .rg-hero{min-height:62vh}.wc-range .rg-end__btn{padding:18px 40px;margin-bottom:32px}}

/* flooring site: room pictures are cropped low so the carpet always shows */
.wc-hero .wh-bg,.wc-range .rg-hero__bg,.wc-range .rg-end__bg,.wc-range .rg-also__card img,.wc-rug-info .ri-band>img,.wc-rug-info .ri-about-img img,#wc-home .wc-main img{object-position:center 85%!important}

/* why wool: sage band, sticky lead with stats on the left, hairline list on the right */
.wc-range .rg-why{background:var(--wc-sage-dark);color:#F5F2EB;padding:clamp(56px,7vw,104px) 0;font-family:var(--wc-body)}
.wc-range .rg-why__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.wc-range .rg-why__lead{position:sticky;top:130px}
.wc-range .rg-why__eyebrow{font:600 12px/1 var(--wc-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--wc-stone);margin:0 0 18px}
.wc-range .rg-why h2{font:400 clamp(32px,3.6vw,52px)/1.08 var(--wc-head);margin:0 0 18px;color:#fff}
.wc-range .rg-why__intro{font-size:17px;line-height:1.65;margin:0 0 32px;color:rgba(245,242,235,.85);max-width:30em}
.wc-range .rg-why__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0 0 36px;border-top:1px solid rgba(245,242,235,.25)}
.wc-range .rg-why__stats div{padding:20px 14px 0 0}
.wc-range .rg-why__stats div+div{padding-left:16px;border-left:1px solid rgba(245,242,235,.25)}
.wc-range .rg-why__stats dt{font:400 clamp(34px,3.4vw,48px)/1 var(--wc-head);color:#fff;margin:0 0 8px}
.wc-range .rg-why__stats dd{margin:0;font:13px/1.4 var(--wc-sans);color:rgba(245,242,235,.75)}
.wc-range .rg-why__btn{display:inline-flex;align-items:center;gap:10px;background:#F5F2EB;color:var(--wc-charcoal)!important;text-decoration:none!important;font:600 14px/1 var(--wc-sans);letter-spacing:.04em;padding:16px 24px;border-radius:999px;transition:gap .2s,background .2s}
.wc-range .rg-why__btn:hover{gap:16px;background:#fff}
.wc-range .rg-why__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(245,242,235,.25)}
.wc-range .rg-why__list li{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid rgba(245,242,235,.25);transition:padding .25s}
.wc-range .rg-why__list li:hover{padding-left:8px}
.wc-range .rg-why__ic{width:48px;height:48px;border-radius:50%;border:1px solid rgba(245,242,235,.4);display:flex;align-items:center;justify-content:center;color:#F3E3D6;transition:background .25s,color .25s}
.wc-range .rg-why__list li:hover .rg-why__ic{background:#F5F2EB;color:var(--wc-sage-dark)}
.wc-range .rg-why__list h3{font:400 22px/1.25 var(--wc-head);margin:2px 0 6px;color:#fff}
.wc-range .rg-why__list p{margin:0;font-size:15px;line-height:1.65;color:rgba(245,242,235,.8)}
@media(max-width:900px){.wc-range .rg-why__in{grid-template-columns:1fr}.wc-range .rg-why__lead{position:static}}
@media(max-width:600px){.wc-range .rg-why__stats div{padding-right:8px}.wc-range .rg-why__stats div+div{padding-left:10px}
  .wc-range .rg-why__list{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 16px;border:0;margin:0 -16px;padding:0 16px 8px;scrollbar-width:none}
  .wc-range .rg-why__list::-webkit-scrollbar{display:none}
  .wc-range .rg-why__list li{flex:0 0 78%;scroll-snap-align:start;display:block;padding:22px 20px;border:1px solid rgba(245,242,235,.25);border-radius:14px}
  .wc-range .rg-why__list li:hover{padding-left:20px}
  .wc-range .rg-why__ic{width:40px;height:40px;margin-bottom:14px}
  .wc-range .rg-why__list li:after{content:""}}
/* the wool fibre picture fills the space under the button */
.wc-range .rg-why__fibre{display:block;width:108%;max-width:none;margin:48px 0 0 -4%;opacity:.95}
/* long text opens on hover (or keyboard focus) on computers; always shown on touch screens */
@media(hover:hover) and (min-width:601px){
  .wc-range .rg-why__list li{cursor:default;outline:none}
  .wc-range .rg-why__list p{max-height:0;opacity:0;overflow:hidden;transition:max-height .45s ease,opacity .3s ease,margin .3s ease}
  .wc-range .rg-why__list li:hover p,.wc-range .rg-why__list li:focus-within p,.wc-range .rg-why__list li:focus p{max-height:200px;opacity:1}
  .wc-range .rg-why__list li:focus-visible{box-shadow:inset 3px 0 0 #F3E3D6}
  .wc-range .rg-why__list h3{margin-bottom:0;transition:margin .3s}
  .wc-range .rg-why__list li:hover h3,.wc-range .rg-why__list li:focus h3{margin-bottom:6px}
  .wc-range .rg-why__list li{align-items:center}
}
@media(max-width:900px){.wc-range .rg-why__fibre{width:100%;margin:36px 0 0}}

/* ===== 30-visualiser.css ===== */
/* Shared controls (buttons, chips, toasts) and the room visualiser: used by the rug builder, the
   "See it in a room" pop-up, and any product button with data-wc-visualise. */
.wc-vis,.wc-pop,.wc-toast,.wc-rb{--wc-line:#D8D1C2;--wc-muted:#6a6a6a;--wc-ease:cubic-bezier(.2,.7,.2,1)}
.wc-vis *,.wc-pop *,.wc-rb *{box-sizing:border-box}
.wc-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.wc-noscroll,html.wc-noscroll body{overflow:hidden!important}

/* Squarespace themes restyle every button: put ours back to plain */
.wc-vis button,.wc-pop button,.wc-rb button,.wc-toast button{font-family:var(--wc-sans);letter-spacing:normal;text-transform:none;line-height:1.25;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wc-vis :focus-visible,.wc-pop :focus-visible,.wc-rb :focus-visible{outline:2px solid var(--wc-hearth);outline-offset:2px}

.wc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid transparent;border-radius:10px;background:var(--wc-hearth);color:#fff!important;padding:13px 20px;font:700 15px var(--wc-sans)!important;text-decoration:none!important;transition:background .2s,transform .2s,border-color .2s}
.wc-btn:hover{background:#7d5339;transform:translateY(-1px)}
.wc-btn:disabled{opacity:.55;pointer-events:none}
.wc-btn svg{flex:none}
.wc-btn--sage{background:var(--wc-sage)}.wc-btn--sage:hover{background:var(--wc-sage-dark)}
.wc-btn--ghost{background:transparent;color:var(--wc-sage-dark)!important;border-color:var(--wc-sage)}.wc-btn--ghost:hover{background:#E8EBE4}
.wc-btn--sm{padding:9px 14px;font-size:13px!important;border-radius:999px}
.wc-btn--block{display:flex;width:100%}
.wc-link{background:none!important;border:0;padding:0;color:var(--wc-hearth)!important;font:600 13px var(--wc-sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.wc-kicker{display:block;font:700 11px var(--wc-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--wc-hearth)}
.wc-chips{display:flex;flex-wrap:wrap;gap:8px}
.wc-chips[hidden],.wc-chip[hidden]{display:none}
.wc-chip{border:1px solid var(--wc-line);background:#fff;color:var(--wc-charcoal);border-radius:999px;padding:8px 14px;font:500 13px var(--wc-sans);transition:border-color .2s,background .2s}
.wc-chip:hover{border-color:var(--wc-driftwood)}
.wc-chip.is-active{background:var(--wc-sage);border-color:var(--wc-sage);color:#fff}
.wc-chip small{opacity:.7;font-size:11px}
.wc-select{width:100%;padding:11px 12px;border:1px solid var(--wc-driftwood);border-radius:10px;background:#fff;font:15px var(--wc-body);color:var(--wc-charcoal)}
.wc-note{background:#F3E3D6;border:1px solid #E7C9AE;border-radius:12px;padding:12px 14px;font-size:13px;color:#5b3f2c}
.wc-spinner{width:34px;height:34px;border:3px solid var(--wc-stone);border-top-color:var(--wc-sage);border-radius:50%;animation:wc-spin 1s linear infinite;margin:0 auto 12px}
@keyframes wc-spin{to{transform:rotate(360deg)}}
.wc-toast{position:fixed;left:50%;bottom:24px;z-index:100001;transform:translate(-50%,20px);opacity:0;transition:opacity .3s,transform .3s;background:var(--wc-charcoal);color:#fff;padding:12px 20px;border-radius:999px;font:14px var(--wc-sans);box-shadow:0 10px 30px rgba(0,0,0,.25);max-width:calc(100vw - 32px);text-align:center}
.wc-toast.is-on{opacity:1;transform:translate(-50%,0)}

/* ---------- visualiser ---------- */
.wc-vis{display:grid;gap:12px;font-family:var(--wc-body);color:var(--wc-charcoal)}
.wc-vis__rooms{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:2px 2px 4px;-webkit-overflow-scrolling:touch}
.wc-vis__room{flex:0 0 108px;position:relative;display:block;border:1px solid var(--wc-line);border-radius:10px;overflow:hidden;padding:0;background:#fff;aspect-ratio:16/10;cursor:pointer}
.wc-vis__room img{width:100%;height:100%;object-fit:cover;display:block}
.wc-vis__room span{position:absolute;left:0;right:0;bottom:0;padding:14px 6px 4px;background:linear-gradient(transparent,rgba(0,0,0,.6));color:#fff;font:600 11px var(--wc-sans);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wc-vis__room.is-active{box-shadow:0 0 0 2px var(--wc-sage);border-color:var(--wc-sage)}
.wc-vis__room--upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#F5F2EB;border-style:dashed;border-color:var(--wc-driftwood);color:var(--wc-sage-dark)}
.wc-vis__room--upload span{position:static;background:none;color:inherit;padding:0;text-align:center}
/* product pages: the upload button comes first and stands out */
.wc-vis__room--upload.is-first{order:-1;flex-basis:150px;background:var(--wc-sage);border:0;color:#fff}
.wc-vis__room--upload.is-first span{font-size:13px;font-weight:700;line-height:1.2;padding:0 6px;white-space:normal}
.wc-vis__room--upload.is-first:hover{background:var(--wc-hearth)}
.wc-vis__stage{position:relative;border-radius:16px;overflow:hidden;background:#E9E5DC;touch-action:none;user-select:none;-webkit-user-select:none}
.wc-vis__stage canvas{display:block;width:100%;height:auto}
.wc-vis__stage.is-loading canvas{opacity:.85;transition:opacity .2s}
.wc-vis__empty{aspect-ratio:16/9;display:grid;place-items:center;text-align:center;padding:30px}
.wc-vis.is-calib .wc-vis__stage canvas{cursor:crosshair}
.wc-vis.is-finding .wc-vis__stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);background-size:100% 40%;background-repeat:no-repeat;animation:wc-scan 1.6s ease-in-out infinite}
@keyframes wc-scan{from{background-position:0 -60%}to{background-position:0 160%}}
.wc-handle{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:#fff;border:2px solid var(--wc-sage);box-shadow:0 2px 10px rgba(0,0,0,.25);cursor:grab;touch-action:none;transition:transform .15s;z-index:2}
.wc-handle:hover,.wc-handle.is-drag{transform:scale(1.2)}
.wc-handle--move{width:44px;height:44px;margin:-22px 0 0 -22px;background:rgba(255,255,255,.85);display:grid;place-items:center;cursor:move;color:var(--wc-sage)}
.wc-handle--rot{width:36px;height:36px;margin:-18px 0 0 -18px;display:grid;place-items:center;color:var(--wc-sage)}
.wc-handle--cal{width:26px;height:26px;margin:-13px 0 0 -13px;background:rgba(255,255,255,.35);border:2px solid #fff;box-shadow:0 0 0 1.5px var(--wc-hearth),0 2px 8px rgba(0,0,0,.3)}
.wc-handle--cal::after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:var(--wc-hearth)}
.wc-vis__stage.is-dragging .wc-handle--cal.is-drag{opacity:.35;transform:none}
.wc-vis.is-clean .wc-handle,.wc-vis.is-clean .wc-vis__size{opacity:0;pointer-events:none}
.wc-vis__size{position:absolute;left:12px;bottom:12px;z-index:2;background:rgba(255,255,255,.9);color:var(--wc-charcoal);border-radius:999px;padding:6px 12px;font:600 12px var(--wc-sans);pointer-events:none}
.wc-vis__alert{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;width:min(380px,calc(100% - 32px));background:rgba(255,255,255,.96);border-radius:16px;padding:18px 20px;box-shadow:0 10px 30px rgba(0,0,0,.18);text-align:center}
.wc-vis__alert b{display:block;font:400 22px var(--wc-head)}
.wc-vis__alert p{font-size:14px;color:var(--wc-muted);margin:6px 0 0}
.wc-vis__stage canvas.wc-loupe{position:absolute;display:none;width:120px;height:120px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1.5px var(--wc-hearth),0 8px 24px rgba(0,0,0,.3);z-index:4;pointer-events:none}
.wc-compare{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:6px}
.wc-compare .wc-chip{box-shadow:0 2px 8px rgba(0,0,0,.15)}
.wc-ai-loading{position:absolute;inset:0;display:grid;place-items:center;background:rgba(245,242,235,.75);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:3;text-align:center;font:14px var(--wc-sans)}
.wc-vis__busy{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.92);font:600 12px var(--wc-sans);pointer-events:none;z-index:3}
.wc-vis__busy .wc-spinner,.wc-vis__finding .wc-spinner{width:16px;height:16px;border-width:2px;margin:0;flex:none}
.wc-vis__finding{display:flex;align-items:center;gap:10px}
.wc-vis__hint{font-size:14px;line-height:1.5;color:#4a4a4a}
.wc-vis__hint:empty{display:none}
.wc-vis__hint p{margin:0}
.wc-vis__tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.wc-vis__tools [hidden]{display:none}
.wc-vis__light{display:flex;align-items:center;gap:8px;font:13px var(--wc-sans);color:var(--wc-muted)}
.wc-vis__light input{width:110px;accent-color:var(--wc-sage)}
.wc-vis__tools .wc-btn{margin-left:auto}
.wc-vis__note{margin:0;font-size:12px;line-height:1.5;color:var(--wc-muted)}
.wc-cal{display:grid;gap:12px;background:#fff;border:1px solid var(--wc-line);border-radius:14px;padding:16px 18px}
.wc-cal b{font:400 19px var(--wc-head)}
.wc-cal p{margin:4px 0 0;font-size:14px;color:var(--wc-muted)}
.wc-cal__btns{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.wc-guide-drop{border:1px solid var(--wc-line);border-radius:14px;background:#fff}
.wc-guide-drop summary{list-style:none;cursor:pointer;padding:13px 16px;font:400 17px var(--wc-head);display:flex;justify-content:space-between;align-items:center;gap:10px}
.wc-guide-drop summary::-webkit-details-marker{display:none}
.wc-guide-drop summary::after{content:"+";font:400 22px var(--wc-sans);color:var(--wc-sage)}
.wc-guide-drop[open] summary::after{content:"−"}
.wc-guide-drop__body{padding:0 16px 16px;font-size:14px}
.wc-guide-drop__body>p{margin:0}
.wc-guide{list-style:none;margin:10px 0 4px;padding:0;display:grid;gap:10px}
.wc-guide li{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;font-size:13px;line-height:1.5}
.wc-guide b{display:block;font-size:14px}
.wc-guide__art{color:var(--wc-sage);background:#F5F2EB;border-radius:10px;border:1px solid var(--wc-line);display:grid;place-items:center;aspect-ratio:3/2}
.wc-guide__art svg{width:100%;height:auto}
.wc-guide--full li{grid-template-columns:110px 1fr;font-size:14px}
@media(max-width:600px){
  .wc-vis__room{flex-basis:92px}
  .wc-vis__size{left:8px;bottom:8px;font-size:11px;padding:5px 10px}
  .wc-vis__tools .wc-btn{margin-left:0}
  .wc-vis__light input{width:90px}
}

/* product buttons on any page: <button data-wc-visualise='{...}'> */
.wc-visualise{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--wc-sage);background:#fff;color:var(--wc-sage-dark);border-radius:999px;padding:9px 16px;font:600 14px var(--wc-sans);cursor:pointer}
.wc-visualise:hover{background:#E8EBE4}

/* ---------- "See it in a room" pop-up ---------- */
.wc-pop{position:fixed;inset:0;z-index:100000;display:none;background:rgba(30,28,24,.6);padding:24px;overflow-y:auto;font-family:var(--wc-body);color:var(--wc-charcoal)}
.wc-pop.is-open{display:block}
.wc-pop__in{position:relative;max-width:1320px;margin:0 auto;background:#F5F2EB;border-radius:18px;padding:22px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.wc-pop__close{position:absolute;right:10px;top:10px;z-index:5;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:var(--wc-charcoal);display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.wc-pop__side{display:grid;gap:10px;align-content:start;padding-top:28px}
.wc-pop__title{font:400 28px/1.15 var(--wc-head);margin:2px 0 6px}
.wc-pop__title em{display:block;font-style:italic;color:var(--wc-hearth)}
.wc-pop__label{font:700 11px var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--wc-muted);margin-top:6px}
.wc-pop__cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}
.wc-pop__col{padding:0;border:2px solid transparent;border-radius:50%;aspect-ratio:1;overflow:hidden;background:#fff}
.wc-pop__col img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.wc-pop__col.is-active{border-color:var(--wc-sage);box-shadow:0 0 0 2px #fff inset}
.wc-pop__price{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:2px 10px;background:#fff;border:1px solid var(--wc-line);border-radius:12px;padding:12px 14px;margin:6px 0 4px}
.wc-pop__price b{font:700 26px var(--wc-head);color:var(--wc-hearth)}
.wc-pop__price small{grid-column:1/-1;font-size:12px;color:var(--wc-muted)}
.wc-pop__spec{margin:0;font-size:14px;color:#4a4a4a}
@media(max-width:960px){
  .wc-pop{padding:0}
  .wc-pop__in{grid-template-columns:1fr;border-radius:0;min-height:100%;padding:56px 14px 28px;gap:16px}
  .wc-pop__side{padding-top:0}
}

/* rug builder: one "Your room" panel, and hints on the rug until it is first moved */
.wc-vis__room--upload[aria-expanded="true"]{box-shadow:0 0 0 2px var(--wc-sage);border-color:var(--wc-sage)}
.wc-yr{border:1px solid var(--wc-line);border-radius:14px;background:#fff;padding:14px 16px 16px;font-size:14px;line-height:1.5}
.wc-yr[hidden]{display:none}
.wc-yr__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}
.wc-yr__head b{font:400 18px var(--wc-head)}
.wc-yr__x{border:0;background:none;font:400 26px/1 var(--wc-sans);color:var(--wc-muted);cursor:pointer;padding:0 4px}
.wc-yr>p{margin:0 0 12px}
.wc-yr__up{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.wc-yr{scroll-margin-top:120px}
.wc-yr__up.is-flash{animation:wcYrFlash .8s ease-in-out .35s 3}
@keyframes wcYrFlash{0%,100%{box-shadow:0 0 0 0 rgba(88,102,79,0);transform:none}50%{box-shadow:0 0 0 8px rgba(88,102,79,.35);transform:scale(1.05);background:#6f8064}}
@media (prefers-reduced-motion:reduce){.wc-yr__up.is-flash{animation:none;outline:3px solid rgba(88,102,79,.5)}}
.wc-yr__how{margin-top:12px}
.wc-yr__how summary{cursor:pointer;font-weight:600;color:var(--wc-sage-dark)}
.wc-yr__how .wc-guide{margin-top:10px}
.wc-vis.has-tips .wc-handle--move:after,.wc-vis.has-tips .wc-handle--rot:after{position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--wc-charcoal);color:#fff;border-radius:999px;padding:5px 11px;font:600 12px var(--wc-sans);box-shadow:0 2px 8px rgba(0,0,0,.25);pointer-events:none;animation:wcTip 2.4s ease-in-out infinite}
.wc-vis.has-tips .wc-handle--move:after{content:"Drag to move";left:calc(100% + 10px)}
.wc-vis.has-tips .wc-handle--rot:after{content:"Turn";right:calc(100% + 8px)}
@keyframes wcTip{0%,100%{opacity:1}50%{opacity:.75}}
/* phones: in the rug builder "Your room" comes first in the room row, filled green so it stands out */
@media (max-width:700px){
  .wc-vis__room--upload[data-act="your-room"]{order:-1;flex-basis:118px;background:var(--wc-sage);border:0;color:#fff}
  .wc-vis__room--upload[data-act="your-room"] span{font-size:13px;font-weight:700}
  .wc-vis__room--upload[data-act="your-room"][aria-expanded="true"]{background:var(--wc-sage-dark);box-shadow:none}
}

/* ===== 31-rugs-info.css ===== */


.wc-rug-info{
  --alabaster:#F5F2EB; --stone:#D8D1C2; --driftwood:#B8AD9B; --sage:#6B7A68; --sage-dark:#58664F; --hearth:#9C6A4B; --hearth-soft:#F3E3D6; --charcoal:#2B2B2B; --muted:#5a5a5a;
  --head:"Playfair Display",var(--heading-font-font-family,Georgia),Georgia,serif;
  position:relative; z-index:1;
  background:var(--alabaster); color:var(--charcoal); box-sizing:border-box;
  font-family:Georgia,"Times New Roman",serif; font-size:17px; line-height:1.6; text-align:left;
}
.wc-rug-info *{box-sizing:border-box; min-width:0}
.wc-rug-info img{display:block; max-width:100%}
.wc-rug-info .ri-in{max-width:var(--wc-max); margin:0 auto; padding:0 var(--wc-gutter)}
.wc-rug-info h2,.wc-rug-info h3{font-family:var(--head); font-weight:400; color:var(--charcoal); margin:0}
.wc-rug-info p{margin:0 0 12px}
.wc-rug-info .ri-kicker{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--hearth); margin:0 0 10px}
.wc-rug-info .ri-btn{display:inline-flex; align-items:center; gap:10px; padding:14px 22px; border-radius:6px; text-decoration:none!important; font-size:14px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; background:var(--hearth); color:#fff!important; border:0; cursor:pointer; font-family:inherit; transition:background .2s}
.wc-rug-info .ri-btn:hover{background:var(--charcoal)}
.wc-rug-info .ri-btn:focus-visible,.wc-rug-info input:focus-visible{outline:3px solid var(--hearth); outline-offset:3px}

/* 1. RUG DETAILS */
.wc-rug-info .ri-about{padding:32px 0 72px}
.wc-rug-info .ri-about-grid{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:56px; align-items:center}
.wc-rug-info .ri-about-img{border-radius:8px; overflow:hidden; aspect-ratio:4/3; background:var(--stone)}
.wc-rug-info .ri-about-img img{width:100%; height:100%; object-fit:cover}
.wc-rug-info .ri-about h2{font-size:40px; line-height:1.15; margin-bottom:6px}
.wc-rug-info .ri-sub{font-family:var(--head); font-size:20px; color:var(--sage-dark); margin:0 0 22px}
.wc-rug-info .ri-facts{list-style:none; margin:0; padding:0; display:grid; gap:12px}
.wc-rug-info .ri-facts li{display:flex; gap:14px; align-items:flex-start; background:#fff; border:1px solid var(--stone); border-radius:8px; padding:14px 16px}
.wc-rug-info .ri-ico{flex-shrink:0; width:36px; height:36px; border-radius:50%; background:var(--hearth-soft); color:var(--hearth); display:flex; align-items:center; justify-content:center}
.wc-rug-info .ri-ico svg{width:18px; height:18px}
.wc-rug-info .ri-facts strong{display:block; font-size:15px; line-height:1.3}
.wc-rug-info .ri-facts span{display:block; font-size:14px; line-height:1.45; color:var(--muted); margin-top:2px}

/* 2. COLOUR PERCEPTION */
.wc-rug-info .ri-colour{background:#fff; border-top:1px solid var(--stone); border-bottom:1px solid var(--stone); padding:72px 0}
.wc-rug-info .ri-colour-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:56px; align-items:center}
.wc-rug-info .ri-colour h2{font-size:36px; line-height:1.2; margin-bottom:14px}
.wc-rug-info .ri-colour p{color:var(--muted)}
.wc-rug-info .ri-compare{position:relative; aspect-ratio:4/3; border-radius:8px; overflow:hidden; background:var(--stone); user-select:none; -webkit-user-select:none; touch-action:pan-y}
.wc-rug-info .ri-compare img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none}
.wc-rug-info .ri-compare .ri-top{clip-path:inset(0 calc(100% - var(--pos,50%)) 0 0)}
.wc-rug-info .ri-handle{position:absolute; top:0; bottom:0; left:var(--pos,50%); width:3px; margin-left:-1.5px; background:#fff; box-shadow:0 0 0 1px rgba(43,43,43,.15); pointer-events:none}
.wc-rug-info .ri-handle::after{content:"\2194"; position:absolute; top:50%; left:50%; width:44px; height:44px; margin:-22px 0 0 -22px; border-radius:50%; background:#fff; color:var(--charcoal); font-size:20px; line-height:44px; text-align:center; box-shadow:0 4px 14px rgba(43,43,43,.25)}
.wc-rug-info .ri-tag{position:absolute; top:12px; padding:5px 12px; border-radius:999px; background:rgba(43,43,43,.72); color:#fff; font-size:11px; letter-spacing:.12em; text-transform:uppercase; pointer-events:none}
.wc-rug-info .ri-tag.l{left:12px} .wc-rug-info .ri-tag.r{right:12px}
.wc-rug-info .ri-compare input{position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:ew-resize}
.wc-rug-info .ri-caption{font-size:14px; color:var(--muted); margin:10px 0 0; text-align:center}

/* 3. ASSURANCE CARDS */
.wc-rug-info .ri-trust{padding:72px 0}
.wc-rug-info .ri-cards{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px}
.wc-rug-info .ri-card{background:#fff; border:1px solid var(--stone); border-radius:10px; padding:28px; display:flex; flex-direction:column}
.wc-rug-info .ri-card .ri-ico{width:48px; height:48px; margin-bottom:16px}
.wc-rug-info .ri-card .ri-ico svg{width:24px; height:24px}
.wc-rug-info .ri-card h3{font-size:24px; line-height:1.25; margin-bottom:10px}
.wc-rug-info .ri-card p{color:var(--muted); font-size:16px}
.wc-rug-info .ri-link{margin-top:auto; padding-top:6px; color:var(--hearth)!important; font-weight:700; font-size:14px; letter-spacing:.04em; text-decoration:none!important}
.wc-rug-info .ri-link:hover{color:var(--charcoal)!important}

/* 4. CARPET RANGES BAND */
.wc-rug-info .ri-band{position:relative; min-height:420px; display:flex; align-items:center; overflow:hidden; background:var(--charcoal)}
.wc-rug-info .ri-band > img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.wc-rug-info .ri-band::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(30,28,24,.78) 0%,rgba(30,28,24,.35) 55%,rgba(30,28,24,0) 100%)}
.wc-rug-info .ri-band .ri-in{position:relative; z-index:1; width:100%; padding-top:56px; padding-bottom:56px}
.wc-rug-info .ri-band h2{color:#fff; font-size:40px; line-height:1.15; max-width:520px; margin-bottom:12px}
.wc-rug-info .ri-band p{color:rgba(255,255,255,.88); max-width:460px; margin-bottom:22px}
.wc-rug-info .ri-band .ri-kicker{color:#F3E3D6}

@media(max-width:900px){
  .wc-rug-info{font-size:16px}
  .wc-rug-info .ri-in{padding:0 18px}
  .wc-rug-info .ri-about,.wc-rug-info .ri-colour,.wc-rug-info .ri-trust{padding:48px 0}
  .wc-rug-info .ri-about{padding-top:24px}
  .wc-rug-info .ri-about-grid,.wc-rug-info .ri-colour-grid{grid-template-columns:1fr; gap:28px}
  .wc-rug-info .ri-about h2,.wc-rug-info .ri-band h2{font-size:30px}
  .wc-rug-info .ri-colour h2{font-size:28px}
  .wc-rug-info .ri-cards{grid-template-columns:1fr; gap:16px}
  .wc-rug-info .ri-card{padding:22px}
  .wc-rug-info .ri-band{min-height:360px}
  .wc-rug-info .ri-band::after{background:linear-gradient(0deg,rgba(30,28,24,.82) 0%,rgba(30,28,24,.35) 70%,rgba(30,28,24,.2) 100%)}
  .wc-rug-info .ri-band{align-items:flex-end}
}
@media(prefers-reduced-motion:reduce){.wc-rug-info *{transition:none!important}}

/* ===== 32-rugs.css ===== */
/* ---------- rug page (/rugs): builder, room view, summary, samples & order ---------- */
.wc-rb{background:var(--wc-alabaster);color:var(--wc-charcoal);font-family:var(--wc-body);padding:40px var(--wc-gutter) 56px;text-align:left}
.wc-rb .rb-header{max-width:var(--wc-max);margin:0 auto 24px}
#rug-configurator .rb-header h2{font:400 42px/1.1 var(--wc-head);margin:0 0 8px;color:var(--wc-charcoal)}
.rb-usps{display:flex;flex-wrap:wrap;gap:6px 0;margin:6px 0 0;padding:0;font-size:15px;color:var(--wc-sage-dark)}
.rb-usps span{white-space:nowrap}
.rb-usps span+span:before{content:"·";margin:0 10px;color:var(--wc-driftwood)}
.wc-rb__grid{max-width:var(--wc-max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:28px;align-items:start}
.wc-rb__stagecol{position:sticky;top:112px;display:grid;gap:8px}
.wc-rb__stage{background:#fff;border:1px solid var(--wc-line);border-radius:18px;padding:12px}
.wc-rb__stagebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wc-rb__caption{flex:1 1 220px;font:400 18px var(--wc-head)}
.wc-rb__tool{border:1px solid var(--wc-line);background:#fff;color:var(--wc-charcoal);border-radius:999px;padding:8px 14px;font:600 13px var(--wc-sans)}
.wc-rb__tool:hover{border-color:var(--wc-sage)}
#viz-download{background:var(--wc-hearth);border-color:var(--wc-hearth);color:#fff}
#viz-download:hover{background:#7d5339}
.wc-rb__tool:disabled{opacity:.7;cursor:wait}
.wc-rb__codebar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:0 6px;font:13px var(--wc-sans);color:var(--wc-muted)}
.wc-rb__codebar b{color:var(--wc-charcoal);letter-spacing:.08em}

/* full-screen room view */
.wc-rb__overlay{position:fixed;inset:0;z-index:100000;background:rgba(30,28,24,.7);padding:20px;overflow-y:auto}
.wc-rb__overlay .wc-rb__stage{max-width:1500px;margin:0 auto}
.wc-rb__overlay .wc-vis__stage canvas{max-height:calc(100vh - 230px);width:auto;max-width:100%;margin:0 auto}
.wc-rb__overlay .wc-vis__stage{display:flex;justify-content:center;background:#E9E5DC}

/* steps */
.wc-rb__side{display:grid;gap:16px}
.wc-rb__steps{display:grid;gap:10px}
.wc-step{background:#fff;border:1px solid var(--wc-line);border-radius:14px;overflow:hidden}
.wc-step__head{margin:0;font:inherit}
.wc-step__head,.wc-step__head button{display:flex;align-items:center;gap:12px;width:100%}
.wc-step__head{padding:0}
.wc-step__head>.wc-step__num{margin:14px 0 14px 16px}
.wc-step__head button{border:0;background:none;padding:14px 16px;text-align:left;color:var(--wc-charcoal)}
.wc-step__num{flex:none;width:30px;height:30px;border-radius:50%;border:2px solid var(--wc-line);display:grid;place-items:center;font:700 14px var(--wc-head);color:var(--wc-charcoal)}
.wc-step.is-open .wc-step__num{background:var(--wc-sage);border-color:var(--wc-sage);color:#fff}
.wc-step__title{font:400 20px var(--wc-head)}
.wc-step__value{margin-left:auto;font:13px var(--wc-sans);color:var(--wc-muted);text-align:right;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wc-step.is-open .wc-step__value{display:none}
.wc-step__body{padding:0 16px 16px}
.wc-step:not(.is-open) .wc-step__body:empty{display:none}
.wc-rb__ranges{display:grid;gap:8px}
.wc-rb__range{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto auto;column-gap:12px;align-items:center;text-align:left;border:1px solid var(--wc-line);background:#fff;border-radius:12px;padding:8px;color:var(--wc-charcoal)}
.wc-rb__range>*{grid-column:2}
.wc-rb__range .wc-rb__rimg{grid-column:1;grid-row:1/4;width:64px;height:64px;border-radius:10px;background-size:cover;background-position:center}
.wc-rb__range b{font:400 18px var(--wc-head)}
.wc-rb__range span{font:13px var(--wc-sans);color:var(--wc-muted)}
.wc-rb__range em,.wc-rb__range small{font:italic 13px var(--wc-body);color:var(--wc-hearth)}
.wc-rb__range small{font-style:normal;color:var(--wc-muted)}
div.wc-rb__range{grid-template-columns:1fr}div.wc-rb__range>*{grid-column:1}
.wc-rb__range.is-active{border-color:var(--wc-sage);box-shadow:inset 4px 0 0 var(--wc-sage)}
.wc-rb__desc{margin:12px 0 0;font-size:15px;line-height:1.55}
.wc-rb__desc small{color:var(--wc-muted);font-size:13px}
.wc-rb__cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:12px 8px}
.wc-rb__col{display:grid;justify-items:center;gap:4px;text-align:center;font-size:13px;line-height:1.25}
.wc-rb__swatch{width:72px;height:72px;border-radius:8px;border:3px solid #fff;box-shadow:0 0 0 1px var(--wc-line);background-size:cover;background-position:center;padding:0}
.wc-rb__col.is-active .wc-rb__swatch{box-shadow:0 0 0 3px var(--wc-sage)}
.wc-rb__col.is-active>span{font-weight:700}
.wc-rb__add{border:0;background:none;padding:2px 4px;color:var(--wc-hearth);font:600 12px var(--wc-sans)!important;text-decoration:underline}
.wc-rb__add.is-added{color:var(--wc-sage-dark);text-decoration:none}
.wc-rb__hint{margin:12px 0 0;font-size:13px;color:var(--wc-muted)}
.wc-rb__shapes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wc-rb__shape{display:grid;justify-items:center;gap:6px;border:1px solid var(--wc-line);background:#fff;border-radius:12px;padding:14px;font:600 14px var(--wc-sans);color:var(--wc-charcoal)}
.wc-rb__shape svg{width:56px;height:40px;color:var(--wc-sage)}
.wc-rb__shape.is-active{border-color:var(--wc-sage);box-shadow:inset 0 0 0 1px var(--wc-sage);background:#F4F6F2}
.wc-rb__sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.wc-rb__size{display:grid;gap:2px;text-align:left;border:1px solid var(--wc-line);background:#fff;border-radius:10px;padding:10px 12px;color:var(--wc-charcoal)}
.wc-rb__size b{font:600 14px var(--wc-sans)}
.wc-rb__size span{font:13px var(--wc-sans);color:var(--wc-hearth)}
.wc-rb__size.is-active{background:var(--wc-sage);border-color:var(--wc-sage);color:#fff}
.wc-rb__size.is-active span{color:#fff}
.size-note{font-size:12px;color:var(--wc-muted);margin:10px 0 0;line-height:1.5}

/* summary */
.wc-rb__summary{background:#fff;border:1px solid var(--wc-line);border-radius:16px;padding:18px;display:grid;gap:4px}
.wc-rb__summary>.sum-rows+.price-box{margin-top:-4px}
.wc-rb__summary{grid-template-columns:1fr auto;align-items:start}
.wc-rb__summary>:not(.sum-rows):not(.price-box){grid-column:1/-1}
.sum-rows{margin:0;display:grid;gap:6px}
.sum-rows div{display:flex;gap:10px;align-items:baseline}
.sum-rows dt{width:56px;font:11px var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--wc-muted)}
.sum-rows dd{margin:0;font:16px var(--wc-head)}
.price-box{text-align:right}
.price-box .label{display:block;font:11px var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--wc-muted)}
#price{font:700 40px/1.05 var(--wc-head);color:var(--wc-hearth);transform-origin:right center}
#price.on-request{font-size:24px}
#price.bump{animation:wcBump .35s ease}
@keyframes wcBump{50%{transform:scale(1.08)}}
.delivery-note,.gst-note{font-size:12px;color:var(--wc-muted);margin:2px 0 0}
.rb-cta-row{display:flex;gap:10px;margin-top:12px}
.rb-cta{display:flex;align-items:center;justify-content:center;gap:10px;flex:1.4;padding:13px 16px;border:2px solid var(--wc-sage);border-radius:10px;background:var(--wc-sage);color:#fff;font:700 16px var(--wc-sans)!important;transition:background .2s,transform .2s}
.rb-cta:hover{background:var(--wc-sage-dark);transform:translateY(-1px)}
.rb-cta-row .rb-cta-2{flex:1;background:transparent;color:var(--wc-sage-dark)}
.rb-cta-row .rb-cta-2:hover{background:#E8EBE4}
.rb-invoice-note{margin:8px 2px 0;font-size:13px;line-height:1.45;color:var(--wc-muted);text-align:center}
.wishlist-callout{display:flex;align-items:center;gap:12px;margin-top:10px;padding:14px 16px;background:#F3E3D6;border:1px solid #E7C9AE;border-radius:12px}
.wishlist-callout-icon{flex:0 0 auto;font-size:20px;line-height:1;color:var(--wc-hearth)}
.wishlist-callout-text{flex:1;min-width:0;font-size:14px;line-height:1.4}
.wishlist-callout-text strong{display:block;font:700 16px var(--wc-head);margin-bottom:2px}
.wishlist-callout-btn{flex:0 0 auto;border:0;background:var(--wc-hearth);color:#fff;font:700 13px var(--wc-sans)!important;padding:11px 16px;border-radius:999px;white-space:nowrap}
.wishlist-callout-btn:hover{background:#7d5339}
.wishlist-callout-btn.is-ready{background:var(--wc-sage)}
.wishlist-callout-btn:disabled{opacity:.7;cursor:wait}

/* samples & order */
.order-row{max-width:var(--wc-max);margin:36px auto 0}
.rb-step-head{margin-bottom:14px}
.rb-kicker{display:block;font:11px var(--wc-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--wc-hearth)}
#rug-configurator .rb-title{margin:2px 0 0;font:400 30px var(--wc-head)}
.rb-step-body{background:#fff;border:1px solid var(--wc-line);border-radius:16px;padding:28px}
.sample-row{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--wc-line);border-radius:12px;margin-bottom:10px;background:#fff}
.sample-row img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--wc-sage)}
.sample-row .s-name{flex:1;font-size:17px;font-weight:600}
.sample-row .s-range{display:block;font-weight:400;font-size:14px;color:#777;margin-top:2px}
.sample-row button{border:1px solid var(--wc-driftwood);background:#fff;width:32px;height:32px;border-radius:50%;color:var(--wc-charcoal);padding:0;font-size:18px;line-height:1}
.sample-row button:hover{background:var(--wc-hearth);border-color:var(--wc-hearth);color:#fff}
#sample-cart-panel{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid #D8D1C2}
#rug-configurator #sample-cart-panel h4{margin:0 0 8px;font-size:30px;font-weight:400;line-height:1.2;color:#2B2B2B;display:flex;align-items:center;gap:10px}
#sample-cart-panel h4 span{background:#9C6A4B;color:#fff;padding:3px 12px;border-radius:14px;font-size:15px;font-family:Georgia,serif}
.panel-desc{font-size:17px;color:#6a6a6a;margin:0 0 16px;line-height:1.5}
.empty-cart{font-size:16px;color:#6a6a6a;padding:24px 16px;text-align:center;border:1px dashed #B8AD9B;border-radius:12px}
.text-btn{background:none;border:0;text-decoration:underline;font-family:Georgia,serif!important;font-size:15px;cursor:pointer;color:#6a6a6a;margin-top:4px}
.info-block{margin-bottom:20px}
#rug-configurator .info-block h4{margin:0 0 6px;font-size:24px;font-weight:400;line-height:1.25;color:#2B2B2B}
.info-block p{margin:0;font-size:17px;line-height:1.6;color:#2B2B2B}
#form-error-banner{display:none;background:#F3E3D6;border:1px solid #9C6A4B;color:#2B2B2B;padding:14px;border-radius:10px;margin-bottom:16px;font-size:16px}
#form-error-banner.show{display:block}
.checkbox-actions{display:flex;flex-direction:column;gap:12px;margin:24px 0}
.checkbox-label-large{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #D8D1C2;background:#fff;border-radius:12px;cursor:pointer;font-family:Georgia,serif!important;font-size:17px;font-weight:600;line-height:1.4;color:#2B2B2B}
.checkbox-label-large.checked{border-color:#6B7A68;box-shadow:inset 4px 0 0 #6B7A68}
.checkbox-label-large input{width:22px;height:22px;flex:0 0 22px;accent-color:#6B7A68}
.form-group{position:relative;margin-bottom:16px}
#rug-configurator .form-group label{font-size:17px;display:block;margin-bottom:6px;color:#2B2B2B}
.form-group input,.form-group textarea{width:100%;padding:14px;border:1px solid #B8AD9B;border-radius:10px;background:#fff;font-size:17px;font-family:Georgia,serif;color:#2B2B2B}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#9C6A4B;box-shadow:0 0 0 3px #F3E3D6}
.form-group input.error{border-color:#9C6A4B}
.field-error-icon{display:none;position:absolute;right:14px;bottom:14px;width:22px;height:22px;border-radius:50%;background:#9C6A4B;color:#fff;font-size:14px;font-weight:700;align-items:center;justify-content:center}
.field-error-icon.show{display:flex}
.error-message{display:none;margin:-8px 0 14px;font-size:15px;color:#9C6A4B}
.error-message.show{display:block}
#send-quote{width:100%;padding:18px;background:#6B7A68;color:#fff;border-radius:12px;cursor:pointer;font-size:19px;font-weight:700;margin-top:16px;border:0;transition:background .2s}
#send-quote:hover{background:#58664F}
#send-quote:disabled{background:#D8D1C2;color:#2B2B2B;cursor:not-allowed}
.rb-captcha{margin:8px 0 18px;min-height:78px}

.rb-captcha{margin:8px 0 18px;min-height:78px}
.rb-cta-row .rb-cta-2{border-color:var(--wc-sage)}
.rb-invoice-note--form{margin-top:10px}
.rb-confirm{background:#fff;border:1px solid var(--wc-line);border-left:4px solid var(--wc-sage);border-radius:12px;padding:26px 26px 22px;outline:none}
.rb-confirm h4{font:400 28px/1.2 var(--wc-head);margin:0 0 10px}
.rb-confirm p{margin:0 0 12px;font-size:17px;line-height:1.6}
.rb-confirm ul{margin:0 0 16px;padding-left:20px;font-size:16px;line-height:1.6}
.rb-confirm .rb-confirm-again{background:transparent;border:2px solid var(--wc-sage);color:var(--wc-sage-dark);border-radius:10px;padding:11px 18px;font-size:15px;font-weight:700}
#rug-configurator .order-panel[hidden],#rug-configurator .rb-confirm[hidden]{display:none!important}
@media(min-width:1101px){
  #step-4 .rb-step-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0 44px;align-items:start;padding:32px}
  #step-4 #sample-cart-panel{padding:0 44px 0 0;margin:0;border-bottom:0;border-right:1px solid var(--wc-line);align-self:stretch}
  #step-4 #rb-confirm{grid-column:2}
}
@media(min-width:1300px){
  #rug-configurator .order-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 36px;align-items:start}
  #rug-configurator .op-left .checkbox-actions{margin-bottom:0}
}

/* phones and tablets: room view on top, then the steps */
.wc-rb__pill{display:none}
@media(max-width:1100px){
  .wc-rb{padding:24px 16px 40px}
  #rug-configurator .rb-header h2{font-size:32px}
  .rb-usps{font-size:14px}
  .wc-rb__grid{grid-template-columns:1fr;gap:16px;max-width:760px}
  .wc-rb .rb-header,.order-row{max-width:760px}
  .wc-rb__stagecol{position:static}
  .wc-rb__stage{padding:8px;border-radius:14px}
  .wc-rb__stage .wc-vis__note,.wc-rb__stage .wc-guide-drop{font-size:13px}
  .wc-rb__pill{display:flex;position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9999;align-items:center;gap:8px;padding:13px 22px;border:0;border-radius:999px;background:var(--wc-charcoal);color:#fff;font:700 15px var(--wc-sans);box-shadow:0 6px 20px rgba(0,0,0,.3);opacity:0;pointer-events:none;transform:translate(-50%,16px);transition:opacity .25s,transform .25s;white-space:nowrap}
  .wc-rb__pill.is-on{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
  .rb-step-body{padding:18px}
  #rug-configurator #sample-cart-panel h4{font-size:26px}
  #rug-configurator .info-block h4{font-size:21px}
}
@media(max-width:600px){
  .rb-usps{gap:2px 14px;font-size:13px}.rb-usps span+span:before{content:none}
  .wc-rb__caption{font-size:16px;flex-basis:100%}
  .wc-rb__summary{grid-template-columns:1fr}
  .price-box{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 10px;text-align:left;border-top:1px solid var(--wc-line);padding-top:10px;margin-top:6px}
  .price-box .label{flex-basis:100%}
  #price{font-size:30px;transform-origin:left center}
  .wc-rb__swatch{width:62px;height:62px}
  .wc-rb__cols{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}
  .wishlist-callout{flex-wrap:wrap}.wishlist-callout-text{flex-basis:100%}.wishlist-callout-btn{flex:1 1 auto}
}
#step-4,.wc-rb__stage{scroll-margin-top:90px}

/* ----- clearer steps: progress bar, prompts, Next buttons, what happens next ----- */
.rb-progress{max-width:var(--wc-max);margin:0 auto 20px;padding:0;list-style:none;display:flex;gap:0;counter-reset:none}
.rb-progress li{flex:1;position:relative;min-width:0}
.rb-progress li+li:before{content:"";position:absolute;left:-50%;right:50%;top:17px;height:2px;background:var(--wc-line);z-index:0}
.rb-progress li.is-done+li:before,.rb-progress li.is-done+li.is-current:before{background:var(--wc-sage)}
.rb-progress button{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;border:0;background:none;padding:0;cursor:pointer;font:600 14px var(--wc-sans);color:var(--wc-muted)}
.rb-progress span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--wc-line);font:700 15px var(--wc-head);color:var(--wc-charcoal);transition:background .2s,border-color .2s}
.rb-progress .is-done button{color:var(--wc-sage-dark)}
.rb-progress .is-done span{background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff;font-family:var(--wc-sans)}
.rb-progress .is-current button{color:var(--wc-charcoal)}
.rb-progress .is-current span{background:var(--wc-sage);border-color:var(--wc-sage);color:#fff;box-shadow:0 0 0 5px rgba(107,122,104,.18)}
.rb-progress button:hover span{border-color:var(--wc-sage)}
.wc-step.is-done:not(.is-open) .wc-step__num{background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff;font-family:var(--wc-sans)}
.wc-step__ask{margin:0 0 12px;font:400 17px/1.45 var(--wc-body);color:var(--wc-charcoal)}
.wc-step__next{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;padding:14px 18px;border:0;border-radius:10px;background:var(--wc-sage);color:#fff;font:700 15px var(--wc-sans);cursor:pointer;transition:background .2s}
.wc-step__next:hover{background:var(--wc-hearth)}
.rb-next{margin-top:12px;padding:14px 16px;border-radius:12px;background:var(--wc-alabaster);font-size:14px;line-height:1.45}
.rb-next b{display:block;font:400 17px var(--wc-head);margin-bottom:8px}
.rb-next ol{margin:0;padding:0;list-style:none;counter-reset:rbn;display:grid;gap:8px}
.rb-next li{counter-increment:rbn;display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start}
.rb-next li:before{content:counter(rbn);width:24px;height:24px;border-radius:50%;background:var(--wc-sage);color:#fff;display:grid;place-items:center;font:700 12px var(--wc-sans)}
.wc-rb__summary.is-flash{animation:rbFlash 1.4s ease}
@keyframes rbFlash{0%,100%{box-shadow:0 0 0 0 rgba(107,122,104,0)}30%{box-shadow:0 0 0 6px rgba(107,122,104,.35)}}
@media(max-width:1100px){.rb-progress{max-width:760px}}
@media(max-width:600px){
  .rb-progress{margin-bottom:14px}
  .rb-progress button{font-size:12px;gap:4px}
  .rb-progress span{width:30px;height:30px;font-size:13px}
  .rb-progress li+li:before{top:14px}
}

/* ===== 40-tiles.css ===== */
/* Contract wool tiles (/contract-wool-tiles). Markup: tools/pages/tiles.js + src/data/tiles.json. Script: src/40-tiles.js */
.wc-tiles{
  --alabaster:#F5F2EB; --stone:#D8D1C2; --driftwood:#B8AD9B; --sage:#6B7A68; --sage-dark:#58664F; --hearth:#9C6A4B; --hearth-soft:#F3E3D6; --charcoal:#2B2B2B; --muted:#5a5a5a;
  --head:var(--wc-head);
    background:var(--alabaster); color:var(--charcoal); box-sizing:border-box;
  font-family:Georgia,"Times New Roman",serif; font-size:17px; line-height:1.6; text-align:left;
}
.wc-tiles *{box-sizing:border-box; min-width:0}
.wc-tiles img{display:block; max-width:100%}
.wc-tiles .wt-in{max-width:var(--wc-max); margin:0 auto; padding:0 var(--wc-gutter)}
.wc-tiles h1,.wc-tiles h2,.wc-tiles h3{font-family:var(--head); font-weight:400; color:var(--charcoal); margin:0}
.wc-tiles h2{font-size:40px; line-height:1.15; margin-bottom:14px}
.wc-tiles p{margin:0 0 12px}
.wc-tiles .wt-kicker{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--hearth); margin:0 0 10px}
.wc-tiles .wt-btn{display:inline-flex; align-items:center; gap:10px; padding:14px 22px; border-radius:6px; text-decoration:none!important; font-size:14px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; background:var(--hearth); color:#fff!important; border:0; cursor:pointer; font-family:inherit; transition:background .2s}
.wc-tiles .wt-btn:hover{background:var(--charcoal)}
.wc-tiles .wt-btn.ghost{background:transparent; border:1.5px solid rgba(255,255,255,.8)}
.wc-tiles .wt-btn.ghost:hover{background:rgba(255,255,255,.14)}
.wc-tiles button:focus-visible,.wc-tiles a:focus-visible{outline:3px solid var(--hearth); outline-offset:3px}
.wc-tiles section{scroll-margin-top:24px}

/* HERO */
.wc-tiles .wt-hero{position:relative; min-height:max(560px,min(78vh,740px)); display:flex; align-items:flex-end; overflow:hidden; background:var(--charcoal)}
.wc-tiles .wt-hero > img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 85%}
.wc-tiles .wt-hero::after{content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(30,28,24,.55) 0%,rgba(30,28,24,.22) 40%,rgba(30,28,24,0) 70%)}
.wc-tiles .wt-hero .wt-in{position:relative; z-index:1; width:100%; padding-top:120px; padding-bottom:60px}
.wc-tiles .wt-hero .wt-kicker{color:#F3E3D6}
.wc-tiles .wt-hero h1{color:#fff; font-size:60px; line-height:1.05; margin:0 0 14px; max-width:760px}
.wc-tiles .wt-hero p{color:rgba(255,255,255,.92); max-width:560px; font-size:19px; margin:0 0 26px}
.wc-tiles .wt-actions{display:flex; flex-wrap:wrap; gap:12px}

/* INTRO */
.wc-tiles .wt-intro{padding:64px 0 24px}
.wc-tiles .wt-intro-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:start}
.wc-tiles .wt-lead{font-family:var(--head); font-size:26px; line-height:1.35; color:var(--charcoal); margin:0}
.wc-tiles .wt-uses{display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 0; padding:0; list-style:none}
.wc-tiles .wt-uses li{background:#fff; border:1px solid var(--stone); border-radius:999px; padding:5px 14px; font-size:14px; color:var(--sage-dark)}

/* DESIGN EXPLORER */
.wc-tiles .wt-designs{padding:48px 0 72px}
.wc-tiles .wt-tabs{display:flex; gap:8px; margin:0 0 22px; flex-wrap:wrap}
.wc-tiles .wt-tab{appearance:none; -webkit-appearance:none; font:inherit; font-family:var(--head); font-size:18px; letter-spacing:.12em; padding:10px 22px; border-radius:999px; border:1px solid var(--stone); background:#fff; color:var(--charcoal); cursor:pointer; transition:background .2s,color .2s,border-color .2s}
.wc-tiles .wt-tab[aria-selected="true"]{background:var(--sage); border-color:var(--sage); color:#fff}
.wc-tiles .wt-explorer{display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:28px; align-items:start}
.wc-tiles .wt-stage{position:relative; border-radius:8px; overflow:hidden; background:var(--stone); aspect-ratio:4/3}
.wc-tiles .wt-stage img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:opacity .35s}
.wc-tiles .wt-stage-tag{position:absolute; left:14px; bottom:14px; z-index:1; background:rgba(255,255,255,.94); border-radius:6px; padding:6px 12px; font-size:14px}
.wc-tiles .wt-stage-tag strong{letter-spacing:.08em}
.wc-tiles .wt-side h3{font-size:30px; letter-spacing:.08em; margin:0 0 6px}
.wc-tiles .wt-side .wt-hint{font-size:15px; color:var(--muted); margin:0 0 16px}
.wc-tiles .wt-swatches{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 16px}
.wc-tiles .wt-sw{appearance:none; -webkit-appearance:none; font:inherit; padding:0; margin:0; border:2px solid transparent; border-radius:8px; background:#fff; cursor:pointer; text-align:center; overflow:hidden; transition:border-color .2s,transform .2s}
.wc-tiles .wt-sw:hover{transform:translateY(-2px)}
.wc-tiles .wt-sw[aria-pressed="true"]{border-color:var(--hearth)}
.wc-tiles .wt-sw img{width:100%; aspect-ratio:1/1; object-fit:cover}
.wc-tiles .wt-sw span{display:block; font-size:12px; letter-spacing:.08em; text-transform:uppercase; padding:7px 4px}
.wc-tiles .wt-scene{appearance:none; -webkit-appearance:none; font:inherit; font-size:14px; background:none; border:0; padding:0; color:var(--hearth); text-decoration:underline; text-underline-offset:3px; cursor:pointer}
.wc-tiles .wt-scene[hidden]{display:none}

/* COMFORTBASE + COMMITMENT */
.wc-tiles .wt-split{padding:72px 0; background:#fff; border-top:1px solid var(--stone); border-bottom:1px solid var(--stone)}
.wc-tiles .wt-split-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center}
.wc-tiles .wt-split-img{border-radius:8px; overflow:hidden; aspect-ratio:4/3; background:var(--stone)}
.wc-tiles .wt-split-img img{width:100%; height:100%; object-fit:cover}
.wc-tiles .wt-commit{padding:72px 0}
.wc-tiles .wt-commit .wt-in{max-width:880px; text-align:center}
.wc-tiles .wt-commit h2{font-size:34px}
.wc-tiles .wt-commit p{color:var(--muted); font-size:18px}

/* DOCUMENTS */
.wc-tiles .wt-docs{padding:0 0 72px}
.wc-tiles .wt-doc-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:22px}
.wc-tiles .wt-doc{display:flex; flex-direction:column; background:#fff; border:1px solid var(--stone); border-radius:10px; padding:24px}
.wc-tiles .wt-doc-ico{width:44px; height:44px; border-radius:50%; background:var(--hearth-soft); color:var(--hearth); display:flex; align-items:center; justify-content:center; margin:0 0 14px}
.wc-tiles .wt-doc-ico svg{width:20px; height:20px}
.wc-tiles .wt-doc h3{font-size:22px; line-height:1.2; margin:0 0 8px}
.wc-tiles .wt-doc p{font-size:15px; line-height:1.55; color:var(--muted)}
.wc-tiles .wt-doc a{margin-top:auto; align-self:flex-start; display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--sage-dark); text-decoration:none; padding-top:8px}
.wc-tiles .wt-doc a:hover{color:var(--hearth)}
.wc-tiles .wt-doc a svg{width:14px; height:14px}

/* Masterspec card (6th document card) - the link is drawn by Masterspec's own script */
.wc-tiles .wt-ms-logo{height:64px; width:auto; margin:0 0 14px; align-self:flex-start}
.wc-tiles .wt-ms-embed{margin-top:auto; padding-top:8px; max-width:100%; overflow:hidden}
.wc-tiles .wt-ms-embed img,.wc-tiles .wt-ms-embed iframe{max-width:100%!important; height:auto}
.wc-tiles .wt-ms-embed a{padding-top:0}

/* ACCREDITATIONS */
.wc-tiles .wt-accred{padding:72px 0; background:var(--sage-dark); color:#fff}
.wc-tiles .wt-accred h2{color:#fff}
.wc-tiles .wt-accred .wt-kicker{color:#F3E3D6}
.wc-tiles .wt-accred p{color:rgba(255,255,255,.88)}
.wc-tiles .wt-badges{display:flex; flex-wrap:wrap; gap:14px; margin-top:22px}
.wc-tiles .wt-badges div{background:#fff; border-radius:8px; padding:10px; width:118px; height:118px; display:flex; align-items:center; justify-content:center}
.wc-tiles .wt-badges img{max-height:100%; width:auto; object-fit:contain}

/* GALLERY */
.wc-tiles .wt-gallery{padding:72px 0 40px}
.wc-tiles .wt-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:22px}
.wc-tiles .wt-g{appearance:none; -webkit-appearance:none; display:block; width:100%; padding:0; margin:0; border:0; border-radius:8px; overflow:hidden; background:var(--stone); cursor:zoom-in; aspect-ratio:4/3}
.wc-tiles .wt-g img{width:100%; height:100%; object-fit:cover; transition:transform .5s}
.wc-tiles .wt-g:hover img{transform:scale(1.04)}
.wc-tiles .wt-lb{position:fixed; inset:0; z-index:9999; background:rgba(20,19,17,.92); display:none; align-items:center; justify-content:center; padding:56px 16px}
.wc-tiles .wt-lb.open{display:flex}
.wc-tiles .wt-lb img{max-width:min(1200px,100%); max-height:100%; object-fit:contain; border-radius:6px}
.wc-tiles .wt-lb button{position:absolute; appearance:none; -webkit-appearance:none; background:rgba(255,255,255,.12); color:#fff; border:0; width:48px; height:48px; border-radius:50%; font-size:26px; line-height:1; cursor:pointer}
.wc-tiles .wt-lb .x{top:14px; right:14px}
.wc-tiles .wt-lb .prev{left:14px; top:50%; transform:translateY(-50%)}
.wc-tiles .wt-lb .next{right:14px; top:50%; transform:translateY(-50%)}

/* QUOTE BAND */
.wc-tiles .wt-quote{padding:0 0 80px}
.wc-tiles .wt-quote-box{background:var(--hearth-soft); border-radius:12px; padding:44px 40px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap}
.wc-tiles .wt-quote-box h2{font-size:34px; margin:0 0 6px}
.wc-tiles .wt-quote-box p{margin:0; color:var(--muted)}
.wc-tiles .wt-quote-box a.mail{color:var(--hearth)}

@media(max-width:900px){
  .wc-tiles{font-size:16px}
  .wc-tiles h2{font-size:31px}
  .wc-tiles .wt-hero{min-height:520px}
  .wc-tiles .wt-hero h1{font-size:40px}
  .wc-tiles .wt-hero p{font-size:17px}
  .wc-tiles .wt-hero .wt-in{padding-bottom:40px}
  .wc-tiles .wt-intro{padding:44px 0 16px}
  .wc-tiles .wt-intro-grid,.wc-tiles .wt-explorer,.wc-tiles .wt-split-grid{grid-template-columns:1fr; gap:24px}
  .wc-tiles .wt-lead{font-size:22px}
  .wc-tiles .wt-designs{padding:32px 0 52px}
  .wc-tiles .wt-split,.wc-tiles .wt-commit,.wc-tiles .wt-accred,.wc-tiles .wt-gallery{padding:52px 0}
  .wc-tiles .wt-docs{padding:0 0 52px}
  .wc-tiles .wt-doc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-tiles .wt-grid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px}
  .wc-tiles .wt-quote{padding:0 0 56px}
  .wc-tiles .wt-quote-box{padding:32px 24px}
}
@media(max-width:560px){
  .wc-tiles .wt-in{padding:0 16px}
  .wc-tiles .wt-doc-grid{grid-template-columns:1fr}
  .wc-tiles .wt-badges div{width:96px; height:96px}
  .wc-tiles .wt-tab{font-size:16px; padding:9px 18px}
  .wc-tiles .wt-swatches{gap:8px}
}
@media(prefers-reduced-motion:reduce){.wc-tiles *{transition:none!important}}

/* tile visualiser */
.wc-tiles .wt-vis{padding:64px 0 72px; background:#fff}
.wc-tiles .wt-vis h2{margin:0 0 8px}
.wc-tiles .wt-vis-intro{margin:0 0 24px; color:var(--muted); max-width:640px}
.wc-tiles .wt-vis-grid{display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:28px; align-items:start}
.wc-tiles .wt-vis-stage{min-height:300px}
.wc-tiles .wt-vis-side{position:sticky; top:120px}
.wc-tiles .wt-vis-now{font-family:var(--head); font-size:24px; letter-spacing:.06em; margin:0 0 14px}
.wc-tiles .wt-vtabs{display:flex; gap:8px; flex-wrap:wrap; margin:0 0 14px}
.wc-tiles .wt-vd{appearance:none; -webkit-appearance:none; font:inherit; font-family:var(--head); font-size:16px; letter-spacing:.12em; padding:8px 18px; border-radius:999px; border:1px solid var(--stone); background:#fff; color:var(--charcoal); cursor:pointer}
.wc-tiles .wt-vd[aria-selected="true"]{background:var(--sage); border-color:var(--sage); color:#fff}
.wc-tiles .wt-vgroup{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px}
.wc-tiles .wt-vgroup[hidden]{display:none}
.wc-tiles .wt-vsw{appearance:none; -webkit-appearance:none; font:inherit; padding:0; border:2px solid transparent; border-radius:8px; background:var(--alabaster); cursor:pointer; overflow:hidden; text-align:center}
.wc-tiles .wt-vsw[aria-pressed="true"]{border-color:var(--hearth)}
.wc-tiles .wt-vsw img{width:100%; aspect-ratio:1/1; object-fit:cover}
.wc-tiles .wt-vsw span{display:block; font-size:12px; letter-spacing:.08em; text-transform:uppercase; padding:6px 4px}
.wc-tiles .wt-vis-note{font-size:14px; color:var(--muted); margin:16px 0}
@media (max-width:980px){
  .wc-tiles .wt-vis-grid{grid-template-columns:1fr}
  .wc-tiles .wt-vis-side{position:static}
  .wc-tiles .wt-vgroup{grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px}
  .wc-tiles .wt-vsw span{font-size:10px; letter-spacing:.02em}
}
@media (max-width:600px){ .wc-tiles .wt-vgroup{grid-template-columns:repeat(3,minmax(0,1fr))} }

/* ===== 41-pages.css ===== */
/* Content pages: Our story (/story), Wool's Benefits (/benefits), Care & Warranty (/care-warranty).
   Markup: tools/pages/*.js. Script: src/41-pages.js. Shared pieces first, then page-specific ones. */
.wc-page{font-family:var(--wc-body);color:var(--wc-charcoal);background:var(--wc-alabaster);font-size:17px;line-height:1.65}
.wc-page *{box-sizing:border-box}
.wc-page img{display:block;max-width:100%}
.wc-page h1,.wc-page h2,.wc-page h3,.wc-page h4{font-family:var(--wc-head);font-weight:400;color:inherit;margin:0;letter-spacing:0;text-transform:none}
.wc-page h2{font-size:clamp(30px,3.4vw,48px);line-height:1.1;margin:0 0 16px}
.wc-page h3{font-size:24px;line-height:1.25;margin:0 0 8px}
.wc-page p{margin:0 0 14px}
.wc-page a{color:var(--wc-hearth)}
.wc-page .wp-in{max-width:var(--wc-max);margin:0 auto;padding:0 var(--wc-gutter)}
.wc-page .wp-sec{padding:clamp(56px,7vw,104px) 0}
.wc-page .wp-sec--white{background:#fff}
.wc-page .wp-sec--stone{background:#EDE8DE}
.wc-page .wp-sec--sage{background:var(--wc-sage-dark);color:#F5F2EB}
.wc-page .wp-sec--sage p{color:rgba(245,242,235,.85)}
.wc-page .wp-eyebrow{font:600 12px/1.2 var(--wc-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--wc-hearth);margin:0 0 16px}
.wc-page .wp-sec--sage .wp-eyebrow,.wc-page .wp-hero .wp-eyebrow{color:#F3E3D6}
.wc-page .wp-muted{color:#5d5a55}
.wc-page .wp-lead{font:400 clamp(20px,2vw,26px)/1.45 var(--wc-head)}
.wc-page .wp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.wc-page .wp-split--top{align-items:start}
.wc-page .wp-img{border-radius:14px;overflow:hidden;background:var(--wc-stone);aspect-ratio:4/3}
.wc-page .wp-img img{width:100%;height:100%;object-fit:cover;object-position:center 85%}
.wc-page .wp-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.wc-page .wp-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border-radius:999px;background:var(--wc-hearth);color:#fff!important;text-decoration:none!important;font:600 14px/1 var(--wc-sans);letter-spacing:.04em;border:0;cursor:pointer;transition:background .2s,gap .2s}
.wc-page .wp-btn:hover{background:var(--wc-charcoal);gap:14px}
.wc-page .wp-btn--light{background:#F5F2EB;color:var(--wc-charcoal)!important}
.wc-page .wp-btn--light:hover{background:#fff}
.wc-page .wp-btn--ghost{background:transparent;color:var(--wc-charcoal)!important;box-shadow:inset 0 0 0 1.5px var(--wc-charcoal)}
.wc-page .wp-btn--ghost:hover{background:var(--wc-charcoal);color:#fff!important}
.wc-page .wp-hero .wp-btn--ghost{color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.85)}
.wc-page .wp-hero .wp-btn--ghost:hover{background:rgba(255,255,255,.15)}
.wc-page button:focus-visible,.wc-page a:focus-visible,.wc-page input:focus-visible{outline:3px solid var(--wc-hearth);outline-offset:3px}

/* hero: low crop so the floor shows, light feathered overlay from the left */
.wc-page .wp-hero{position:relative;min-height:min(80vh,760px);display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--wc-charcoal)}
.wc-page .wp-hero__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none!important;object-fit:cover;object-position:center 85%}
.wc-page .wp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.45) 0%,rgba(20,18,16,.24) 32%,rgba(20,18,16,.06) 58%,rgba(20,18,16,0) 78%)}
.wc-page .wp-hero .wp-in{position:relative;z-index:1;width:100%;padding-top:12vh;padding-bottom:12vh}
.wc-page .wp-hero h1{font-size:clamp(40px,5vw,72px);line-height:1.05;max-width:13em;margin:0 0 20px;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.3)}
.wc-page .wp-hero h1.wp-h1--long{font-size:clamp(34px,3.8vw,56px);max-width:15em}
.wc-page .wp-hero p{font-size:clamp(17px,1.4vw,20px);max-width:34em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.45)}

/* figures strip */
.wc-page .wp-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border-top:1px solid rgba(245,242,235,.28)}
.wc-page .wp-stats li{padding:22px 18px 0 0}
.wc-page .wp-stats li+li{padding-left:20px;border-left:1px solid rgba(245,242,235,.28)}
.wc-page .wp-stats b{display:block;font:400 clamp(36px,3.8vw,56px)/1 var(--wc-head);color:#fff;margin:0 0 10px;font-variant-numeric:tabular-nums}
.wc-page .wp-stats span{display:block;font:14px/1.45 var(--wc-sans);color:rgba(245,242,235,.78)}
.wc-page .wp-stats--dark{border-color:var(--wc-stone)}
.wc-page .wp-stats--dark li+li{border-color:var(--wc-stone)}
.wc-page .wp-stats--dark b{color:var(--wc-charcoal)}
.wc-page .wp-stats--dark span{color:#5d5a55}

/* cards */
.wc-page .wp-cards{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:20px}
.wc-page .wp-card{background:#fff;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.wc-page .wp-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(43,43,43,.1)}
.wc-page .wp-card__img{aspect-ratio:3/2;overflow:hidden;background:var(--wc-stone)}
.wc-page .wp-card__img img{width:100%;height:100%;object-fit:cover;object-position:center 80%}
.wc-page .wp-card__body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.wc-page .wp-card__body p{font-size:15px;line-height:1.6;color:#5d5a55}
.wc-page .wp-card__fig{align-self:flex-start;font:600 12px/1 var(--wc-sans);letter-spacing:.06em;background:var(--wc-hearth-soft);color:var(--wc-hearth);padding:7px 11px;border-radius:999px;margin:0 0 12px}
.wc-page .wp-card__claim{font:italic 17px/1.45 var(--wc-head)!important;color:var(--wc-charcoal)!important}
.wc-page .wp-link{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font:600 13px/1 var(--wc-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--wc-sage-dark)!important;text-decoration:none!important;padding-top:10px}
.wc-page .wp-link:hover{color:var(--wc-hearth)!important}
.wc-page .wp-ic-round{width:48px;height:48px;border-radius:50%;background:var(--wc-hearth-soft);color:var(--wc-hearth);display:flex;align-items:center;justify-content:center;margin:0 0 16px;flex:none}

/* range cards + closing banner */
.wc-page .wp-ranges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.wc-page .wp-range{display:block;text-decoration:none!important;color:var(--wc-charcoal)!important;font:400 22px var(--wc-head)}
.wc-page .wp-range img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center 85%;border-radius:12px;margin:0 0 12px;transition:transform .35s}
.wc-page .wp-range:hover img{transform:scale(1.02)}
.wc-page .wp-range:hover span{color:var(--wc-hearth)}
.wc-page .wp-end{position:relative;min-height:min(70vh,620px);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;text-align:center;color:#fff}
.wc-page .wp-end__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none!important;object-fit:cover;object-position:center 85%}
.wc-page .wp-end::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,18,16,.4) 0%,rgba(20,18,16,.12) 40%,rgba(20,18,16,0) 70%)}
.wc-page .wp-end .wp-in{position:relative;z-index:1;padding-bottom:64px}
.wc-page .wp-end h2{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35);margin:0 0 22px}

/* tabs */
.wc-page .wp-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;background:#fff;border-radius:999px;padding:6px;margin:0 0 32px;border:1px solid var(--wc-stone)}
.wc-page .wp-tab{appearance:none;-webkit-appearance:none;border:0;background:none;border-radius:999px;padding:11px 20px;font:600 13px/1 var(--wc-sans);letter-spacing:.06em;text-transform:uppercase;color:#5d5a55;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .25s,color .25s}
.wc-page .wp-tab[aria-selected="true"]{background:var(--wc-sage-dark);color:#fff}
.wc-page [role="tabpanel"][hidden]{display:none}

/* ---------- Our story ---------- */
.wc-page .ws-statement{max-width:1000px;margin:0 auto;text-align:center}
.wc-page .ws-statement p{font:400 clamp(24px,2.8vw,38px)/1.35 var(--wc-head);color:var(--wc-charcoal);margin:0 0 24px}
.wc-page .ws-statement p em{font-style:italic;color:var(--wc-sage-dark)}
.wc-page .ws-statement p:last-child{margin:0}
.wc-page .ws-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--wc-stone)}
.wc-page .ws-values>div{padding:28px 28px 0 0}
.wc-page .ws-values>div+div{padding-left:28px;border-left:1px solid var(--wc-stone)}
.wc-page .ws-values p{font-size:15px;color:#5d5a55;margin:0}
.wc-page .ws-hq{background:#fff;border-radius:14px;padding:28px 30px}
.wc-page .ws-hq p{margin:0 0 6px}

/* ---------- Wool's benefits ---------- */
.wc-page .wb-fibre-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end;margin:0 0 28px}
.wc-page .wb-fibre-head h2{margin:0}
.wc-page .wb-fibre-head p.wp-muted{margin:0;max-width:30em}
.wc-page .wb-fibre{border-radius:20px;background:radial-gradient(ellipse at 50% 50%,#76846f 0%,var(--wc-sage-dark) 72%);overflow:hidden;padding:clamp(48px,7vw,110px) clamp(16px,4vw,64px)}
.wc-page .wb-fibre__pic{position:relative;max-width:1300px;margin:0 auto}
.wc-page .wb-fibre__pic img{width:100%;height:auto}
.wc-page .wb-spot{position:absolute;top:50%;width:40px;height:40px;transform:translate(-50%,-50%);border-radius:50%;border:0;background:#F3E3D6;color:var(--wc-charcoal);font:700 14px/1 var(--wc-sans);cursor:pointer;box-shadow:0 0 0 7px rgba(243,227,214,.3);animation:wb-pulse 2.4s infinite}
.wc-page .wb-spot[aria-pressed="true"]{background:#fff;animation:none;box-shadow:0 0 0 7px rgba(255,255,255,.45)}
@keyframes wb-pulse{0%,100%{box-shadow:0 0 0 5px rgba(243,227,214,.35)}50%{box-shadow:0 0 0 13px rgba(243,227,214,0)}}
.wc-page .wb-points{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.wc-page .wb-points button{appearance:none;-webkit-appearance:none;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;text-align:left;background:#fff;border:1px solid transparent;border-radius:14px;padding:22px 22px 24px;cursor:pointer;color:inherit;font:inherit;transition:border-color .25s,transform .25s,box-shadow .25s}
.wc-page .wb-points button:hover{transform:translateY(-3px)}
.wc-page .wb-points button[aria-expanded="true"]{border-color:var(--wc-hearth);box-shadow:0 14px 34px rgba(43,43,43,.08)}
.wc-page .wb-points i{display:block;font:normal 600 13px/1 var(--wc-sans);color:var(--wc-hearth);margin:0 0 12px}
.wc-page .wb-points b{font:400 21px/1.3 var(--wc-head);display:block;margin:0 0 8px}
.wc-page .wb-points span{display:block;font-size:15px;line-height:1.6;color:#5d5a55}
.wc-page .wb-points button[aria-expanded="true"] b{color:var(--wc-hearth)}
.wc-page .wb-pillar{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,64px);align-items:center;margin:0 0 36px}
.wc-page .wb-pillar .wp-img{aspect-ratio:5/4}
.wc-page .wb-vs{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;font-size:15px}
.wc-page .wb-vs th,.wc-page .wb-vs td{padding:16px 20px;border-bottom:1px solid #ECE7DD;text-align:left;vertical-align:top}
.wc-page .wb-vs thead th{font:600 12px/1.3 var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:#5d5a55;background:#F8F6F1}
.wc-page .wb-vs tbody th{font-weight:700;width:20%}
.wc-page .wb-vs td:nth-child(2){color:var(--wc-sage-dark);font-weight:700}
.wc-page .wb-vs td:nth-child(3){color:#77726b}
.wc-page .wb-vs tr:last-child th,.wc-page .wb-vs tr:last-child td{border-bottom:0}
.wc-page .wb-journey{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:relative}
.wc-page .wb-journey::before{content:"";position:absolute;left:8%;right:8%;top:28px;height:1px;background:rgba(245,242,235,.35)}
.wc-page .wb-journey li{text-align:center;padding:0 10px;position:relative;font-size:14px;line-height:1.5;color:rgba(245,242,235,.8)}
.wc-page .wb-journey i{width:56px;height:56px;border-radius:50%;background:var(--wc-sage-dark);border:1px solid rgba(245,242,235,.45);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font:normal 22px/1 var(--wc-head);color:#fff}
.wc-page .wb-journey b{display:block;font:400 20px/1.25 var(--wc-head);color:#fff;margin:0 0 4px}

/* ---------- Care & warranty ---------- */
.wc-page .wcare-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px;max-width:820px}
.wc-page .wcare-three div{border-top:1px solid rgba(255,255,255,.5);padding-top:14px;font-size:15px;line-height:1.5;text-shadow:0 1px 8px rgba(0,0,0,.45)}
.wc-page .wcare-three b{display:block;font:400 22px/1.2 var(--wc-head);margin:0 0 4px}
.wc-page .wcare-finder{position:relative;z-index:2;background:#fff;border-radius:22px;padding:clamp(24px,4vw,48px);box-shadow:0 24px 60px rgba(43,43,43,.12);margin-top:-72px}
.wc-page .wcare-combo{position:relative;margin-top:18px}
.wc-page .wcare-combo input{width:100%;font:400 clamp(18px,2.2vw,24px) var(--wc-head);border:0;border-bottom:1.5px solid var(--wc-charcoal);background:transparent;padding:12px 44px 12px 0;border-radius:0;color:var(--wc-charcoal)}
.wc-page .wcare-combo input:focus{outline:none;border-bottom-color:var(--wc-hearth)}
.wc-page .wcare-combo>svg{position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#77726b}
.wc-page .wcare-list{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.16);max-height:340px;overflow:auto;z-index:5;padding:6px;list-style:none;margin:0}
.wc-page .wcare-list li{padding:10px 12px;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-size:15px}
.wc-page .wcare-list li[aria-selected="true"],.wc-page .wcare-list li:hover{background:var(--wc-alabaster)}
.wc-page .wcare-list li small{color:var(--wc-hearth);font:600 10px/1.6 var(--wc-sans);letter-spacing:.1em;text-transform:uppercase}
.wc-page .wcare-list .wcare-group{font:600 10px/1 var(--wc-sans);letter-spacing:.2em;text-transform:uppercase;color:#77726b;padding:12px 12px 4px;cursor:default;background:none!important}
.wc-page .wcare-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;align-items:center}
.wc-page .wcare-chip{appearance:none;-webkit-appearance:none;border:1px solid var(--wc-stone);background:#fff;border-radius:999px;padding:8px 14px;font:14px/1 var(--wc-body);color:var(--wc-charcoal);cursor:pointer;transition:background .2s,border-color .2s}
.wc-page .wcare-chip:hover,.wc-page .wcare-chip[aria-pressed="true"]{background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff}
.wc-page .wcare-stain{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px;margin-top:32px;padding-top:32px;border-top:1px solid #ECE7DD;animation:wcare-rise .45s ease}
@keyframes wcare-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.wc-page .wcare-badges{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;align-items:center}
.wc-page .wcare-badge{font:600 10px/1 var(--wc-sans);letter-spacing:.14em;text-transform:uppercase;padding:7px 11px;border-radius:999px;background:#E6EBE3;color:var(--wc-sage-dark)}
.wc-page .wcare-badge--urgent{background:#F4E2DA;color:#A04A2A}
.wc-page .wcare-meter{display:inline-flex;gap:3px;margin-left:6px;vertical-align:middle}
.wc-page .wcare-meter i{width:14px;height:4px;border-radius:2px;background:var(--wc-stone)}
.wc-page .wcare-meter i.on{background:var(--wc-hearth)}
.wc-page .wcare-tip{border-left:3px solid var(--wc-hearth);padding:4px 0 4px 14px;margin:0 0 20px;font:italic 19px/1.4 var(--wc-head)}
.wc-page .wcare-steps{list-style:none;counter-reset:s;padding:0;margin:0}
.wc-page .wcare-steps li{counter-increment:s;position:relative;padding:0 0 18px 50px;cursor:pointer;transition:opacity .2s;font-size:16px}
.wc-page .wcare-steps li::before{content:counter(s);position:absolute;left:0;top:-3px;width:32px;height:32px;border-radius:50%;border:1px solid var(--wc-stone);display:flex;align-items:center;justify-content:center;font:18px/1 var(--wc-head);color:var(--wc-sage-dark);background:#fff}
.wc-page .wcare-steps li::after{content:"";position:absolute;left:16px;top:31px;bottom:2px;width:1px;background:#ECE7DD}
.wc-page .wcare-steps li:last-child::after{display:none}
.wc-page .wcare-steps li.done{opacity:.55}
.wc-page .wcare-steps li.done::before{content:"✓";background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff;font:700 14px/1 var(--wc-sans)}
.wc-page .wcare-need{background:var(--wc-alabaster);border-radius:14px;padding:20px 22px}
.wc-page .wcare-need ul{padding-left:18px;margin:8px 0 0;font-size:15px}
.wc-page .wcare-golden{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.wc-page .wcare-golden div{background:#fff;border-radius:14px;padding:20px;font-size:14px;line-height:1.55;color:#5d5a55}
.wc-page .wcare-golden i{display:block;font:normal 28px/1 var(--wc-head);color:var(--wc-hearth);margin:0 0 10px}
.wc-page .wcare-golden b{display:block;font:400 20px/1.25 var(--wc-head);color:var(--wc-charcoal);margin:0 0 6px}
.wc-page .wcare-avoid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.wc-page .wcare-avoid span{background:#F4E2DA;color:#A04A2A;font:13px/1.2 var(--wc-sans);padding:8px 13px;border-radius:999px}
.wc-page .wcare-avoid span::before{content:"✕  "}
.wc-page .wcare-fluff{height:150px;position:relative;border-radius:14px;background:#fff;overflow:hidden;margin:0 0 14px}
.wc-page .wcare-fluff i{position:absolute;width:12px;height:3px;border-radius:3px;background:var(--wc-driftwood);transition:opacity .5s}
.wc-page .wcare-slider input{width:100%;accent-color:var(--wc-sage-dark)}
.wc-page .wcare-slider label{font:14px var(--wc-sans)}
.wc-page .wcare-scale{display:flex;justify-content:space-between;font:600 11px var(--wc-sans);color:#77726b;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
.wc-page .wcare-vac{display:grid;gap:10px}
.wc-page .wcare-vac>div{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:12px;padding:16px 18px;font-size:15px;line-height:1.5}
.wc-page .wcare-vac b{display:block}
.wc-page .wcare-vac span:not(.wcare-yes):not(.wcare-no){color:#5d5a55}
.wc-page .wcare-yes,.wc-page .wcare-no{width:30px;height:30px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--wc-sans)}
.wc-page .wcare-yes{background:#E3EBE2;color:#3F6B3A}
.wc-page .wcare-no{background:#F4E2DA;color:#A04A2A}
.wc-page .wcare-cal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.wc-page .wcare-cal div{border-top:2px solid var(--wc-sage-dark);padding-top:14px;font-size:15px;line-height:1.55;color:#5d5a55}
.wc-page .wcare-cal b{display:block;font:400 22px/1.2 var(--wc-head);color:var(--wc-charcoal);margin:0 0 6px}
.wc-page .wcare-warranty{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.wc-page .wcare-seal{width:clamp(150px,16vw,210px);aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(245,242,235,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;box-shadow:inset 0 0 0 10px var(--wc-sage-dark),inset 0 0 0 11px rgba(245,242,235,.35)}
.wc-page .wcare-seal b{font:400 clamp(56px,6vw,80px)/1 var(--wc-head)}
.wc-page .wcare-seal span{font:600 11px/1.4 var(--wc-sans);letter-spacing:.16em;text-transform:uppercase}

@media(max-width:1000px){
  .wc-page .wb-points{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-page .wcare-golden{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-page .wb-journey{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 0}
  .wc-page .wb-journey::before{display:none}
}
@media(max-width:900px){
  .wc-page .wp-split,.wc-page .wb-pillar,.wc-page .wcare-stain{grid-template-columns:1fr}
  .wc-page .wp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-page .wp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-page .wp-stats li{padding:20px 14px 18px 0!important;border-left:0!important}
  .wc-page .wp-stats li:nth-child(even){padding-left:18px!important;border-left:1px solid rgba(245,242,235,.28)!important}
  .wc-page .wp-stats--dark li:nth-child(even){border-color:var(--wc-stone)!important}
  .wc-page .wcare-cal{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .wc-page{font-size:16px}
  .wc-page .wb-fibre-head{grid-template-columns:1fr;gap:12px}
  .wc-page .wb-spot{width:30px;height:30px;font-size:12px}
  .wc-page .wb-points{grid-template-columns:1fr}
  .wc-page .wp-in{padding:0 16px}
  .wc-page .wp-hero{min-height:72vh}
  .wc-page .wp-hero::after{background:linear-gradient(180deg,rgba(20,18,16,.12) 0%,rgba(20,18,16,.4) 55%,rgba(20,18,16,.2) 100%)}
  .wc-page .wp-cards,.wc-page .wp-ranges,.wc-page .ws-values,.wc-page .wcare-three,.wc-page .wcare-golden,.wc-page .wcare-cal{grid-template-columns:1fr}
  .wc-page .ws-values>div{padding:22px 0!important;border-left:0!important;border-bottom:1px solid var(--wc-stone)}
  .wc-page .wcare-three{gap:12px}
  .wc-page .wp-tabs{display:flex;border-radius:16px}
  .wc-page .wp-tab{flex:1 1 auto;justify-content:center;padding:11px 12px}
  .wc-page .wb-journey{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-page .wb-vs{font-size:14px}
  .wc-page .wb-vs th,.wc-page .wb-vs td{padding:12px}
  .wc-page .wcare-finder{margin-top:-40px;border-radius:16px}
  .wc-page .wcare-warranty{grid-template-columns:1fr;justify-items:start}
}
@media(prefers-reduced-motion:reduce){.wc-page *{transition:none!important;animation:none!important}}
.wc-page .wp-hero p.wp-eyebrow,.wc-page .ws-statement p.wp-eyebrow{font:600 12px/1.2 var(--wc-sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 16px;text-shadow:none;max-width:none}
.wc-page .ws-statement p.wp-eyebrow{color:var(--wc-hearth)}
.wc-page .wp-stats b small{display:block;font:600 12px/1.2 var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:#F3E3D6;margin:0 0 6px}
.wc-page .wp-stats b em{font-style:normal}

/* shorter hero for utility pages */
.wc-page .wp-hero--short{min-height:min(52vh,480px)}

/* ---------- Contact ---------- */
.wc-page .wcc-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.wc-page .wcc-cards{display:grid;gap:14px}
.wc-page .wcc-card{display:flex;gap:16px;align-items:flex-start;background:#fff;border-radius:14px;padding:22px;text-decoration:none!important;color:var(--wc-charcoal)!important;transition:transform .25s,box-shadow .25s}
.wc-page .wcc-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(43,43,43,.08)}
.wc-page .wcc-card .wp-ic-round{margin:0}
.wc-page .wcc-card h3{font-size:20px;margin:0 0 4px}
.wc-page .wcc-card p{margin:0;font-size:15px;color:#5d5a55}
.wc-page .wcc-card .wcc-big{font:400 21px/1.3 var(--wc-head);color:var(--wc-charcoal)}
.wc-page .wcc-form{background:#fff;border-radius:18px;padding:clamp(24px,4vw,44px);box-shadow:0 20px 50px rgba(43,43,43,.07)}
.wc-page .wcc-topics{border:0;padding:0;margin:20px 0 18px;display:flex;flex-wrap:wrap;gap:8px}
.wc-page .wcc-topics legend{font:600 12px var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:#5d5a55;margin:0 0 10px;padding:0}
.wc-page .wcc-chip{position:relative;cursor:pointer}
.wc-page .wcc-chip input{position:absolute;opacity:0;pointer-events:none}
.wc-page .wcc-chip span{display:inline-block;border:1px solid var(--wc-stone);border-radius:999px;padding:9px 15px;font-size:14px;transition:background .2s,color .2s,border-color .2s}
.wc-page .wcc-chip input:checked+span{background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff}
.wc-page .wcc-chip input:focus-visible+span{outline:3px solid var(--wc-hearth);outline-offset:2px}
.wc-page .wcc-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wc-page .wcc-f{display:block;margin:0 0 14px}
.wc-page .wcc-f span{display:block;font:600 13px var(--wc-sans);margin:0 0 6px}
.wc-page .wcc-f input,.wc-page .wcc-f textarea{width:100%;border:1px solid var(--wc-stone);border-radius:10px;padding:13px 14px;font:16px var(--wc-body);background:#FBFAF7;color:var(--wc-charcoal)}
.wc-page .wcc-f input:focus,.wc-page .wcc-f textarea:focus{outline:none;border-color:var(--wc-sage-dark);background:#fff;box-shadow:0 0 0 3px rgba(88,102,79,.15)}
.wc-page .wcc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.wc-page .wcc-captcha{margin:6px 0 18px;min-height:78px}
.wc-page .wcc-msg{margin:14px 0 0;font-size:15px;color:var(--wc-sage-dark)}
.wc-page .wcc-msg.err{color:#A04A2A}
.wc-page .wcc-done{text-align:center;padding:40px 0}
.wc-page .wcc-done .wp-ic-round{margin:0 auto 16px;width:64px;height:64px}
.wc-page .wcc-q{text-decoration:none!important;color:var(--wc-charcoal)!important}

/* ---------- FAQ ---------- */
.wc-page .wfaq-lead{position:sticky;top:130px}
.wc-page .wfaq-list{border-top:1px solid var(--wc-stone)}
.wc-page .wfaq-item{border-bottom:1px solid var(--wc-stone)}
.wc-page .wfaq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font:400 clamp(19px,1.7vw,23px)/1.3 var(--wc-head)}
.wc-page .wfaq-item summary::-webkit-details-marker{display:none}
.wc-page .wfaq-item summary:hover{color:var(--wc-hearth)}
.wc-page .wfaq-item summary i{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--wc-stone);position:relative;transition:background .25s,border-color .25s,transform .3s}
.wc-page .wfaq-item summary i::before,.wc-page .wfaq-item summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:currentColor;transform:translate(-50%,-50%)}
.wc-page .wfaq-item summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .3s}
.wc-page .wfaq-item[open] summary i{background:var(--wc-sage-dark);border-color:var(--wc-sage-dark);color:#fff}
.wc-page .wfaq-item[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.wc-page .wfaq-a{padding:0 54px 24px 0;color:#5d5a55;animation:wcare-rise .35s ease}
.wc-page .wfaq-a p{margin:0 0 6px}

/* ---------- Sustainability ---------- */
.wc-page .wsus-sum{display:flex;align-items:stretch;gap:clamp(10px,2vw,24px);margin-top:32px;flex-wrap:wrap}
.wc-page .wsus-sum>div{flex:1 1 180px;border:1px solid rgba(245,242,235,.35);border-radius:16px;padding:22px 22px 20px}
.wc-page .wsus-sum b{display:block;font:400 clamp(40px,4.4vw,60px)/1 var(--wc-head);color:#fff;margin:0 0 10px}
.wc-page .wsus-sum b small{font-size:.38em;margin-left:4px;color:rgba(245,242,235,.75)}
.wc-page .wsus-sum span{font:14px/1.45 var(--wc-sans);color:rgba(245,242,235,.8)}
.wc-page .wsus-sum>i{align-self:center;font:normal 40px/1 var(--wc-head);color:#F3E3D6}
.wc-page .wsus-sum .wsus-total{background:#F5F2EB;border-color:#F5F2EB}
.wc-page .wsus-sum .wsus-total b{color:var(--wc-sage-dark)}
.wc-page .wsus-sum .wsus-total b small,.wc-page .wsus-sum .wsus-total span{color:#5d5a55}
.wc-page .wsus-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wc-page .wsus-pair .wp-img{aspect-ratio:3/4}
.wc-page .wsus-pair .wp-img:last-child{margin-top:40px}

/* ---------- Privacy ---------- */
.wc-page .wpp-head{padding-bottom:40px}
.wc-page .wpp-head h1{font-size:clamp(40px,5vw,64px);margin:0 0 18px}
.wc-page .wpp-head .wp-lead{max-width:38em}
.wc-page .wpp-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.wc-page .wpp-grid nav{position:sticky;top:130px;font-size:15px}
.wc-page .wpp-grid nav p{font:600 12px var(--wc-sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}
.wc-page .wpp-grid nav ol{margin:0;padding-left:20px}
.wc-page .wpp-grid nav li{margin:0 0 8px}
.wc-page .wpp-grid nav a{color:var(--wc-charcoal);text-decoration:none}
.wc-page .wpp-grid nav a:hover{color:var(--wc-hearth)}
.wc-page .wpp-body{max-width:760px}
.wc-page .wpp-body section{padding:0 0 32px;margin:0 0 32px;border-bottom:1px solid #ECE7DD;scroll-margin-top:130px}
.wc-page .wpp-body section:last-child{border:0}
.wc-page .wpp-body h2{font-size:30px;margin:0 0 14px}
.wc-page .wpp-body h3{font-size:20px;margin:22px 0 10px}
.wc-page .wpp-body ul{padding-left:20px;margin:0 0 14px}
.wc-page .wpp-body li{margin:0 0 6px}
.wc-page .wpp-table{border:1px solid #ECE7DD;border-radius:12px;overflow:hidden;margin:0 0 16px}
.wc-page .wpp-row{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:14px 18px;font-size:15px}
.wc-page .wpp-row+.wpp-row{border-top:1px solid #ECE7DD}
.wc-page .wpp-contact{background:var(--wc-alabaster);border-radius:12px;padding:20px 22px}
.wc-page .wpp-contact p{margin:0 0 6px}

@media(max-width:900px){
  .wc-page .wcc-grid,.wc-page .wpp-grid{grid-template-columns:1fr}
  .wc-page .wfaq-lead,.wc-page .wpp-grid nav{position:static}
  .wc-page .wsus-sum>i{display:none}
}
@media(max-width:600px){
  .wc-page .wcc-row{grid-template-columns:1fr;gap:0}
  .wc-page .wpp-row{grid-template-columns:1fr;gap:4px}
  .wc-page .wfaq-a{padding-right:0}
  .wc-page .wsus-pair .wp-img:last-child{margin-top:24px}
}

/* ===== 42-estimator.css ===== */
/* carpet estimator (/estimator) */
.wc-estimator [hidden]{display:none!important}
.wc-estimator .we-square{display:flex;gap:10px;align-items:flex-start;margin-top:12px;background:#fff;border-radius:12px;padding:12px 14px;cursor:pointer;font:14px/1.45 var(--wc-sans)}
.wc-estimator .we-square input{margin-top:3px;width:18px;height:18px;accent-color:var(--wc-sage);flex:none}
.wc-estimator .we-square small{display:block;color:#666;font-size:12.5px;margin-top:2px}
.wc-estimator .we-steps{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.wc-estimator .we-steps li{background:#fff;border:1px solid var(--wc-stone);border-radius:14px;padding:20px 22px 22px}
.wc-estimator .we-steps__art{display:block;color:var(--wc-sage-dark);margin-bottom:12px}
.wc-estimator .we-steps__art svg{width:120px;height:90px;display:block}
.wc-estimator .we-steps b{display:flex;align-items:center;gap:10px;font:400 21px/1.25 var(--wc-head);margin-bottom:8px}
.wc-estimator .we-steps b span{flex:none;width:28px;height:28px;border-radius:50%;background:var(--wc-hearth-soft);color:var(--wc-hearth);font:600 14px/28px var(--wc-sans);text-align:center}
.wc-estimator .we-steps p{margin:0;color:#555;font-size:15px;line-height:1.6}
.wc-estimator .we-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.wc-estimator .we-tabs{display:flex;gap:10px;margin-bottom:12px}
.wc-estimator .we-tab{flex:1;max-width:240px;text-align:left;border:1px solid var(--wc-stone);background:#fff;border-radius:12px;padding:10px 14px;cursor:pointer;font:600 15px var(--wc-sans);color:var(--wc-charcoal)}
.wc-estimator .we-tab small{display:block;font-weight:400;font-size:12px;color:#777;margin-top:2px}
.wc-estimator .we-tab{--c:var(--wc-sage);--t:rgba(107,122,104,.38);border-left:8px solid var(--t)}
.wc-estimator .we-tab[data-shot="1"]{--c:#9C6A4B;--t:rgba(156,106,75,.3)}
.wc-estimator .we-tab span::before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--t);border:2px solid var(--c);margin-right:8px;vertical-align:-1px}
.wc-estimator .we-tab[aria-selected="true"]{border-color:var(--c);box-shadow:0 0 0 2px var(--c);background:color-mix(in srgb,var(--c) 6%,#fff)}
.wc-estimator .we-stage{position:relative;border-radius:14px;overflow:hidden;background:var(--wc-alabaster)}
.wc-estimator .we-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:380px;border:2px dashed var(--wc-driftwood);border-radius:14px;cursor:pointer;color:var(--wc-sage-dark);text-align:center;padding:24px}
.wc-estimator .we-empty:hover{border-color:var(--wc-sage);background:#fff}
.wc-estimator .we-empty b{font:400 24px/1.25 var(--wc-head);color:var(--wc-charcoal)}
.wc-estimator .we-empty span{font:14px var(--wc-sans);color:#777}
.wc-estimator .we-empty svg{width:34px;height:34px;padding:12px;box-sizing:content-box;border-radius:50%;background:var(--wc-sage);color:#fff}
.wc-estimator .we-cv{display:block;width:100%;height:auto;touch-action:pan-y pinch-zoom;outline:none}
.wc-estimator .we-cv:focus-visible{box-shadow:inset 0 0 0 3px var(--wc-sage)}
.wc-estimator .we-loupe{position:absolute;top:10px;left:10px;width:120px;height:120px;border-radius:50%;border:3px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.3);pointer-events:none}
.wc-estimator .we-loupe.is-right{left:auto;right:10px}
.wc-estimator .we-busy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(245,242,235,.72);font:500 15px var(--wc-sans);color:var(--wc-charcoal);text-align:center;padding:20px}
.wc-estimator .we-hint{min-height:1.4em;margin:12px 0 0;font:14px/1.55 var(--wc-sans);color:#555}
.wc-estimator .we-hint.is-warn{background:#F3E3D6;color:#2B2B2B;padding:10px 14px;border-radius:8px}
.wc-estimator .we-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.wc-estimator .we-tools .wc-chip{cursor:pointer}
.wc-estimator .we-tools .we-next{background:var(--wc-sage);color:#fff;border-color:var(--wc-sage)}
.wc-estimator .we-tools .we-next:hover{background:var(--wc-hearth);border-color:var(--wc-hearth)}
.wc-estimator .we-side{background:var(--wc-alabaster);border-radius:16px;padding:22px;position:sticky;top:110px}
.wc-estimator .we-side h2{font-size:28px;margin:0 0 14px}
.wc-estimator .we-planbox{background:#fff;border:1px solid var(--wc-stone);border-radius:12px;overflow:hidden}
.wc-estimator .we-plan{display:block;width:100%}
.wc-estimator [data-act="flip"]{margin-top:10px;cursor:pointer}
.wc-estimator .we-res{margin:16px 0 0;display:grid;gap:10px}
.wc-estimator .we-res div{background:#fff;border-radius:12px;padding:12px 16px;display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:2px 12px}
.wc-estimator .we-res dt{font:600 12px var(--wc-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--wc-hearth)}
.wc-estimator .we-res dd{margin:0;font:400 26px/1.1 var(--wc-head);text-align:right}
.wc-estimator .we-res small{grid-column:1/-1;font:13px var(--wc-sans);color:#666}
.wc-estimator .we-notes{margin:12px 0 0;padding-left:18px;font:13px/1.5 var(--wc-sans);color:#555}
.wc-estimator .we-notes li{margin-bottom:4px}
.wc-estimator .we-save{display:flex;gap:10px;align-items:flex-end;margin-top:14px}
.wc-estimator .we-save label{flex:1;font:12px var(--wc-sans);color:#666}
.wc-estimator .we-save input{display:block;width:100%;margin-top:4px;padding:11px 12px;border:1px solid var(--wc-stone);border-radius:10px;font:15px var(--wc-body);background:#fff}
.wc-estimator .we-save .wp-btn{white-space:nowrap}
.wc-estimator .we-rooms{margin:0}
.wc-estimator .we-rooms h3{font:400 20px var(--wc-head);margin:0 0 8px}
.wc-estimator .we-rooms ul{list-style:none;margin:0;padding:0}
.wc-estimator .we-rooms li{display:grid;grid-template-columns:1fr auto 28px;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--wc-stone);font:15px/1.3 var(--wc-sans)}
.wc-estimator .we-rooms li small{display:block;font-size:12.5px;color:#7a766f;font-weight:400;margin-top:2px}
.wc-estimator .we-rooms__n{text-align:right;font-variant-numeric:tabular-nums}
.wc-estimator .we-rooms .we-total{font-weight:600;border-bottom:0}
.wc-estimator .we-roombtns{display:flex;gap:8px;margin-top:10px}
.wc-estimator .we-roombtns .wc-chip{cursor:pointer}
.wc-estimator .we-cta{display:grid;gap:10px;margin-top:18px}
.wc-estimator .we-cta .wp-btn{justify-content:center}
@media (max-width:980px){
  .wc-estimator .we-grid{grid-template-columns:1fr}
  .wc-estimator .we-side{position:static}
  .wc-estimator .we-steps{grid-template-columns:1fr}
}
@media (max-width:600px){
  .wc-estimator .we-empty{min-height:260px}
  .wc-estimator .we-side{padding:16px;margin:0 -4px}
  .wc-estimator .we-save{flex-direction:column;align-items:stretch}
}

.wc-estimator .we-manual{background:#fff;border:1px solid var(--wc-stone);border-radius:12px;padding:10px 14px;margin:0 0 12px;font:14px/1.5 var(--wc-sans)}
.wc-estimator .we-manual summary{cursor:pointer;font-weight:600;color:var(--wc-sage)}
.wc-estimator .we-manual__row{display:flex;align-items:flex-end;gap:10px;margin:10px 0 6px}
.wc-estimator .we-manual__row>span{padding-bottom:10px;color:#777}
.wc-estimator .we-manual label{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:4px}
.wc-estimator .we-manual label span{width:100%;font-size:12px;color:#666}
.wc-estimator .we-manual input{flex:1;min-width:0;width:100%;max-width:120px;padding:8px 10px;border:1px solid var(--wc-stone);border-radius:8px;font:16px var(--wc-sans)}
.wc-estimator .we-manual i{font-style:normal;color:#666}
.wc-estimator .we-manual p{margin:4px 0 0;font-size:12px;color:#777}
/* full screen editing (phones) */
.wc-estimator .we-fs-open{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:0;border-radius:999px;background:rgba(43,43,43,.78);color:#fff;font:600 13px var(--wc-sans);cursor:pointer}
.wc-estimator .we-fs-open:hover{background:var(--wc-sage)}
.wc-estimator .we-stage.is-full{position:fixed;inset:0;z-index:100000;display:flex;flex-direction:column;border-radius:0;background:#ECE6DA}
.wc-estimator .we-fs{display:flex;align-items:center;gap:10px;padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top));background:#fff;border-bottom:1px solid var(--wc-stone)}
.wc-estimator .we-fs[hidden]{display:none}
.wc-estimator .we-fs__t{flex:1;margin:0;font:13px/1.35 var(--wc-sans);color:#444}
.wc-estimator .we-fs__btns{display:flex;gap:6px;align-items:center}
.wc-estimator .we-fs__z{width:40px;height:40px;border-radius:50%;border:1px solid var(--wc-stone);background:#fff;font:600 22px/1 var(--wc-sans);color:var(--wc-charcoal);cursor:pointer}
.wc-estimator .we-fs__done{padding:10px 18px}
.wc-estimator .is-full .we-view{flex:1;min-height:0;overflow:auto;display:flex;touch-action:pan-x pan-y;overscroll-behavior:contain}
.wc-estimator .is-full .we-cv{margin:auto;flex:none;max-width:none;touch-action:pan-x pan-y}
.wc-estimator .is-full .we-loupe{top:70px}
html.we-locked,html.we-locked body{overflow:hidden!important}

/* house plan upload */
.wc-estimator .we-hp{margin:0 0 18px}
.wc-estimator .we-hp__bar{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--wc-alabaster);border:1px solid var(--wc-stone)}
.wc-estimator .we-hp__bar p{margin:0;flex:1;font:15px/1.45 var(--wc-sans);color:#4a4743}
.wc-estimator .we-hp__bar b{color:var(--wc-charcoal)}
.wc-estimator .we-hp__ic{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--wc-sage-dark)}
.wc-estimator .we-hp__up{flex:none;padding:12px 18px;cursor:pointer}
.wc-estimator .we-hp__busy{display:flex;align-items:center;gap:10px;padding:16px 4px;font:15px/1.4 var(--wc-sans);color:#4a4743}
.wc-estimator .we-hp__out{margin-top:12px;padding:18px;border-radius:14px;background:#fff;border:1px solid var(--wc-stone)}
.wc-estimator .we-hp__t{font:15px/1.5 var(--wc-sans);margin:0 0 12px}
.wc-estimator .we-hp__note{color:#7a5b45}
.wc-estimator .we-hp__wrap{overflow-x:auto;margin:0 -4px}
.wc-estimator .we-hp__tbl{width:100%;border-collapse:collapse;font:15px/1.3 var(--wc-sans)}
.wc-estimator .we-hp__tbl th{text-align:left;font:600 11px/1.2 var(--wc-sans);letter-spacing:.12em;text-transform:uppercase;color:#7a766f;padding:6px 6px 8px}
.wc-estimator .we-hp__tbl td{padding:6px;border-top:1px solid #eee8de;vertical-align:middle}
.wc-estimator .we-hp__tbl tr.is-off td:not(:first-child){opacity:.45}
.wc-estimator .we-hp__tbl input[type=checkbox]{width:20px;height:20px;accent-color:var(--wc-sage-dark)}
.wc-estimator .we-hp__tbl input[type=text],.wc-estimator .we-hp__tbl input[type=number]{font:15px/1.2 var(--wc-sans);padding:8px 9px;border:1px solid var(--wc-stone);border-radius:8px;background:#fff;color:var(--wc-charcoal)}
.wc-estimator .we-hp__tbl input[type=text]{width:100%;min-width:120px}
.wc-estimator .we-hp__tbl input[type=number]{width:72px}
.wc-estimator .we-hp__tbl label{display:flex;align-items:center;gap:4px}
.wc-estimator .we-hp__tbl i{font-style:normal;color:#7a766f}
.wc-estimator .we-hp__tbl small{display:block;margin-top:3px;font-size:12px;color:#7a5b45}
.wc-estimator .we-hp__a{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.wc-estimator .we-hp__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.wc-estimator .we-hp__sum{flex:1;min-width:200px;margin:0;font:15px/1.4 var(--wc-sans)}
.wc-estimator .we-hp__foot .wp-btn[disabled]{opacity:.5;cursor:default}
.wc-estimator .we-ref{font:600 12px/1 var(--wc-sans);letter-spacing:.08em;color:var(--wc-hearth);margin-left:8px;white-space:nowrap}
@media (max-width:640px){
  .wc-estimator .we-hp__bar{flex-wrap:wrap}
  .wc-estimator .we-hp__bar p{flex-basis:calc(100% - 60px)}
  .wc-estimator .we-hp__up{width:100%;justify-content:center}
  .wc-estimator .we-hp__out{padding:14px 12px}
  .wc-estimator .we-hp__tbl thead{display:none}
  .wc-estimator .we-hp__tbl tr{display:grid;grid-template-columns:28px 1fr 1fr auto;gap:6px 8px;padding:10px 0;border-top:1px solid #eee8de}
  .wc-estimator .we-hp__tbl td{border:0;padding:0}
  .wc-estimator .we-hp__tbl td:nth-child(2){grid-column:2/-1}
  .wc-estimator .we-hp__tbl td:nth-child(3){grid-column:2}
  .wc-estimator .we-hp__tbl input[type=number]{width:100%}
  .wc-estimator .we-hp__a{align-self:center}
}

/* three ways in */
.wc-estimator .we-tool h2{margin-bottom:20px}
.wc-estimator .we-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 28px}
.wc-estimator .we-path{display:flex;align-items:flex-start;gap:14px;text-align:left;padding:18px 18px 16px;border-radius:16px;border:2px solid var(--wc-stone);background:var(--wc-alabaster);cursor:pointer;font:inherit;color:var(--wc-charcoal);transition:border-color .2s,background .2s,box-shadow .2s}
.wc-estimator .we-path:hover{border-color:var(--wc-driftwood);background:#fff}
.wc-estimator .we-path.is-on{border-color:var(--wc-sage-dark);background:#fff;box-shadow:0 10px 28px rgba(43,43,43,.08)}
.wc-estimator .we-path__ic{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--wc-sage-dark);border:1px solid var(--wc-stone)}
.wc-estimator .we-path.is-on .we-path__ic{background:var(--wc-sage-dark);color:#fff;border-color:var(--wc-sage-dark)}
.wc-estimator .we-path b{display:block;font:400 22px/1.2 var(--wc-head);margin:2px 0 6px}
.wc-estimator .we-path small{display:block;font:14px/1.45 var(--wc-sans);color:#5d5a55}
.wc-estimator .we-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:340px;border:2px dashed var(--wc-driftwood);border-radius:14px;cursor:pointer;text-align:center;padding:24px;background:var(--wc-alabaster)}
.wc-estimator .we-drop:hover{border-color:var(--wc-sage);background:#fff}
.wc-estimator .we-drop b{font:400 24px/1.25 var(--wc-head);color:var(--wc-charcoal)}
.wc-estimator .we-drop span{font:14px var(--wc-sans);color:#777;max-width:28em}
.wc-estimator .we-drop svg{width:34px;height:34px;padding:12px;box-sizing:content-box;border-radius:50%;background:var(--wc-sage);color:#fff}
.wc-estimator .we-hp__fig{position:relative;margin:0 0 16px;border:1px solid var(--wc-stone);border-radius:12px;overflow:hidden;background:#fff}
.wc-estimator .we-hp__img{display:block;width:100%;height:auto}
.wc-estimator .we-hp__boxes{position:absolute;inset:0}
.wc-estimator .we-hp__box{position:absolute;padding:0;border:2px dashed rgba(88,102,79,.35);border-radius:3px;background:transparent;cursor:pointer;transition:background .15s,border-color .15s}
.wc-estimator .we-hp__box span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:3px 8px;border-radius:999px;background:var(--wc-sage-dark);color:#fff;font:600 12px/1.2 var(--wc-sans);white-space:nowrap;opacity:0;transition:opacity .15s;pointer-events:none}
.wc-estimator .we-hp__box.is-on{background:rgba(107,122,104,.34);border:2px solid var(--wc-sage-dark)}
.wc-estimator .we-hp__box.is-hot{background:rgba(156,106,75,.32);border-color:var(--wc-hearth)}
.wc-estimator .we-hp__box.is-hot span{opacity:1;background:var(--wc-hearth)}
.wc-estimator .we-hp__tbl tr.is-hot td{background:#F6EFE8}
.wc-estimator .we-sz__t,.wc-estimator .we-photo__t{font:15px/1.5 var(--wc-sans);color:#4a4743;margin:0 0 12px}
.wc-estimator .we-sz__tbl td:last-child{width:40px;text-align:right}
.wc-estimator .we-sz__more{margin-top:10px}
.wc-estimator .we-sz__sum{flex:1;min-width:200px;margin:0;font:15px/1.4 var(--wc-sans)}
.wc-estimator .we-sz .we-hp__foot{padding-top:14px;border-top:1px solid var(--wc-stone);margin-top:16px}
.wc-estimator .we-photo-res{margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.wc-estimator .we-rooms__head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 8px}
.wc-estimator .we-rooms__head h2{margin:0}
.wc-estimator .we-rooms__head p{margin:0;font:13px var(--wc-sans);color:#7a766f}
.wc-estimator .we-ref{font:700 15px/1 var(--wc-sans);letter-spacing:.06em;color:var(--wc-hearth);margin-left:4px}
.wc-estimator .we-rooms__empty{font:14px/1.5 var(--wc-sans);color:#7a766f;padding:14px;border:1px dashed var(--wc-driftwood);border-radius:12px;margin:8px 0 0}
.wc-estimator .we-rooms__x{width:28px;height:28px;border-radius:50%;border:0;background:transparent;color:#8a857d;font:20px/1 var(--wc-sans);cursor:pointer}
.wc-estimator .we-rooms__x:hover{background:#EDE8DE;color:var(--wc-charcoal)}
.wc-estimator .we-rooms__btns{margin-top:10px}
@media (max-width:1000px){
  .wc-estimator .we-paths{grid-template-columns:1fr;gap:10px}
  .wc-estimator .we-path{padding:14px}
  .wc-estimator .we-path__ic{width:44px;height:44px}
  .wc-estimator .we-path b{font-size:20px;margin-bottom:3px}
  .wc-estimator .we-photo-res{grid-template-columns:1fr}
}
@media (max-width:640px){
  .wc-estimator .we-drop{min-height:220px}
  .wc-estimator .we-sz__tbl tr{grid-template-columns:1fr 1fr auto 28px}
  .wc-estimator .we-sz__tbl td:nth-child(1){grid-column:1/-1}
  .wc-estimator .we-sz__tbl td:nth-child(2){grid-column:1}
  .wc-estimator .we-sz__tbl td:nth-child(3){grid-column:2}
  .wc-estimator .we-sz__tbl td:last-child{width:auto}
}

/* ===== 43-notfound.css ===== */
/* 404 page (tools/pages/notfound.js, src/43-notfound.js): a sheep for the 0, rolling hills, a sheep jumping the fence */
.wc-nf .nf-field{position:relative;overflow:hidden;min-height:min(92vh,980px);padding:clamp(80px,9vw,120px) 0 clamp(170px,18vw,260px);background:linear-gradient(180deg,#E7EEF0 0%,#F5F2EB 62%);text-align:center}
.wc-nf .nf-in{position:relative;z-index:2}
.wc-nf h1{font-size:clamp(40px,5.4vw,80px);line-height:1.05;margin:8px 0 16px}
.wc-nf .nf-lead{font-size:clamp(18px,1.6vw,22px);max-width:30em;margin:0 auto}
.wc-nf .nf-btns{justify-content:center}
.wc-nf .nf-more{margin-top:24px;color:#5d5a55;font-size:16px}
.wc-nf .nf-count{display:block;margin-top:6px;font:italic 15px/1.4 var(--wc-body);color:var(--wc-sage-dark)}

.wc-nf .nf-big{display:flex;align-items:center;justify-content:center;gap:clamp(4px,1.5vw,24px);margin:0 auto}
.wc-nf .nf-digit{font:400 clamp(130px,19vw,280px)/.9 var(--wc-head);color:var(--wc-charcoal)}
.wc-nf .nf-sheep{position:relative;width:clamp(170px,23vw,340px);padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent;animation:nfBob 3.2s ease-in-out infinite}
.wc-nf .nf-sheep__svg{display:block;width:100%;height:auto;overflow:visible}
.wc-nf .nf-fleece circle,.wc-nf .nf-tuft circle{fill:#fff}
.wc-nf .nf-fleece--edge circle{fill:#E2DACB}
.wc-nf .nf-legs rect{fill:var(--wc-charcoal)}
.wc-nf .nf-face,.wc-nf .nf-ear{fill:var(--wc-charcoal)}
.wc-nf .nf-ear{transform-box:fill-box}
.wc-nf .nf-ear--l{transform-origin:100% 50%;animation:nfEarL 5s ease-in-out infinite}
.wc-nf .nf-ear--r{transform-origin:0 50%;animation:nfEarR 5s ease-in-out infinite}
.wc-nf .nf-eye>circle:first-child{fill:#fff}
.wc-nf .nf-pupil{fill:var(--wc-charcoal);transition:transform .15s}
.wc-nf .nf-eyes{transform-box:fill-box;transform-origin:50% 50%;animation:nfBlink 4.6s infinite}
.wc-nf .nf-mouth{fill:none;stroke:#F3E3D6;stroke-width:3;stroke-linecap:round;transform-box:fill-box;transform-origin:50% 0;animation:nfChew 1.1s ease-in-out infinite}
.wc-nf .nf-head{transform-box:fill-box;transform-origin:20% 60%;transition:transform .25s}
.wc-nf .nf-sheep:hover .nf-head{transform:rotate(-6deg)}
.wc-nf .nf-sheep.is-baa{animation:nfHop .55s ease-out}
.wc-nf .nf-sheep.is-baa .nf-mouth{animation:none;d:path("M203 116 q7 14 14 0");fill:#F3E3D6}
.wc-nf .nf-sheep:focus-visible{outline:3px solid var(--wc-hearth);outline-offset:6px;border-radius:24px}
.wc-nf .nf-bubble{position:absolute;left:72%;bottom:88%;z-index:3;min-width:150px;max-width:240px;padding:12px 16px;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(43,43,43,.14);font:600 15px/1.35 var(--wc-sans);color:var(--wc-charcoal);text-align:left;opacity:0;transform:translateY(8px) scale(.9);transform-origin:0 100%;transition:opacity .2s,transform .2s;pointer-events:none}
.wc-nf .nf-bubble::after{content:"";position:absolute;left:18px;top:100%;border:9px solid transparent;border-top-color:#fff}
.wc-nf .nf-bubble.is-on{opacity:1;transform:none}
.wc-nf .nf-puff{position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #E6DFD2;pointer-events:none;animation:nfPuff .8s ease-out forwards}

.wc-nf .nf-sky{position:absolute;inset:0;pointer-events:none}
.wc-nf .nf-cloud{position:absolute;height:38px;width:120px;border-radius:40px;background:#fff;opacity:.85;animation:nfDrift 60s linear infinite}
.wc-nf .nf-cloud::before,.wc-nf .nf-cloud::after{content:"";position:absolute;background:#fff;border-radius:50%}
.wc-nf .nf-cloud::before{width:56px;height:56px;left:16px;top:-26px}
.wc-nf .nf-cloud::after{width:44px;height:44px;left:58px;top:-18px}
.wc-nf .nf-cloud--a{top:12%;left:-10%}
.wc-nf .nf-cloud--b{top:26%;left:-10%;transform:scale(.7);animation-duration:85s;animation-delay:-40s}

.wc-nf .nf-hill{position:absolute;left:0;right:0;bottom:0;height:clamp(150px,16vw,230px);z-index:1}
.wc-nf .nf-hill svg{position:absolute;inset:0;width:100%;height:100%}
.wc-nf .nf-hill--back{fill:#A9B5A2}
.wc-nf .nf-hill--front{fill:var(--wc-sage)}
.wc-nf .nf-fence{position:absolute;left:62%;bottom:34%;width:90px;height:44px}
.wc-nf .nf-fence i{position:absolute;bottom:0;width:7px;height:44px;background:#8A6A52;border-radius:2px}
.wc-nf .nf-fence i:nth-child(1){left:0}.wc-nf .nf-fence i:nth-child(2){left:41px}.wc-nf .nf-fence i:nth-child(3){right:0}
.wc-nf .nf-fence b{position:absolute;left:-4px;right:-4px;height:5px;background:#8A6A52;border-radius:2px}
.wc-nf .nf-fence b:nth-of-type(1){top:8px}.wc-nf .nf-fence b:nth-of-type(2){top:24px}
.wc-nf .nf-jumper{position:absolute;bottom:34%;left:-80px;width:60px;animation:nfRun 9s linear infinite}
.wc-nf .nf-jumper svg{display:block;width:100%;animation:nfJump 9s linear infinite}
.wc-nf .nf-mini circle{fill:#fff}

@keyframes nfBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes nfHop{0%{transform:translateY(0)}35%{transform:translateY(-26px) rotate(-4deg)}70%{transform:translateY(0) rotate(2deg)}100%{transform:none}}
@keyframes nfBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes nfChew{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.7) translateY(1px)}}
@keyframes nfEarL{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(18deg)}90%{transform:rotate(-6deg)}}
@keyframes nfEarR{0%,60%,100%{transform:rotate(0)}65%{transform:rotate(-18deg)}70%{transform:rotate(6deg)}}
@keyframes nfPuff{to{transform:translate(var(--dx),var(--dy)) scale(.3);opacity:0}}
@keyframes nfDrift{to{transform:translateX(130vw)}}
@keyframes nfRun{0%{left:-80px}100%{left:calc(100% + 80px)}}
@keyframes nfJump{0%,58%,74%,100%{transform:translateY(0)}66%{transform:translateY(-70px) rotate(-8deg)}}

@media (max-width:640px){
  .wc-nf .nf-digit{font-size:28vw}
  .wc-nf .nf-sheep{width:38vw}
  .wc-nf .nf-bubble{left:auto;right:-20px;bottom:96%;min-width:130px;font-size:14px}
  .wc-nf .nf-btns .wp-btn{width:100%;justify-content:center}
  .wc-nf .nf-fence{left:70%}
}
@media (prefers-reduced-motion:reduce){
  .wc-nf *,.wc-nf *::before,.wc-nf *::after{animation:none!important;transition:none!important}
  .wc-nf .nf-jumper{display:none}
}
