/* ============================================================
   WOMEN / FINISH + SEASONAL / L3 BATCH
   Burgundy-gold editorial diagnostics for finish and weather pages.
   ============================================================ */

.wfsl3-hero {
  min-height: clamp(640px, 88vh, 880px);
  position: relative;
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfsl3-hero-img {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) brightness(0.66) contrast(1.06);
  transform: scale(1.02);
}
.wfsl3-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 28%, rgba(232,185,107,0.20), transparent 24%),
    linear-gradient(90deg, rgba(46,8,7,0.96) 0%, rgba(70,13,10,0.74) 46%, rgba(35,7,5,0.22) 100%),
    linear-gradient(0deg, rgba(18,7,5,0.98) 0%, transparent 38%);
}
.wfsl3-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(rgba(244,234,215,0.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(244,234,215,0.15) 1px, transparent 1px);
  background-size: 72px 72px;
  mix-blend-mode: overlay;
}
.wfsl3-hero .frame {
  position: relative;
  z-index: 3;
  min-height: clamp(640px, 88vh, 880px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(28px, 4vw, 54px);
  padding-top: clamp(34px, 5vw, 68px);
  padding-bottom: clamp(34px, 5vw, 68px);
}
.wfsl3-crumb {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.58);
}
.wfsl3-crumb a { color: rgba(244,234,215,0.62); }
.wfsl3-crumb a:hover,
.wfsl3-crumb span:last-child { color: #f4ead7; }
.wfsl3-hero-copy {
  align-self: center;
  max-width: 1040px;
}
.wfsl3-kicker {
  display: block;
  margin-bottom: 20px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfsl3-hero h1 {
  margin: 0;
  font-family: var(--f-display);
  font-weight: 400;
  font-size: clamp(68px, 11vw, 164px);
  line-height: 0.84;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfsl3-hero h1 span {
  display: block;
  font-style: italic;
  color: var(--gold);
}
.wfsl3-hero p {
  max-width: 760px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(244,234,215,0.78);
}
.wfsl3-signal-strip {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  border-top: 1px solid rgba(244,234,215,0.22);
  border-left: 1px solid rgba(244,234,215,0.18);
}
.wfsl3-signal-strip a {
  min-height: 92px;
  padding: 16px 18px;
  border-right: 1px solid rgba(244,234,215,0.18);
  color: #f4ead7;
}
.wfsl3-signal-strip span {
  display: block;
  margin-bottom: 8px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wfsl3-signal-strip b {
  font-family: var(--f-display);
  font-size: clamp(18px, 1.7vw, 27px);
  line-height: 1;
  font-weight: 400;
}

.wfsl3-nav {
  position: sticky;
  top: 70px;
  z-index: 40;
  background: var(--bg-deep);
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.wfsl3-nav .frame {
  display: flex;
  align-items: center;
  gap: 26px;
  padding-top: 14px;
  padding-bottom: 14px;
  overflow-x: auto;
}
.wfsl3-nav .label,
.wfsl3-nav a {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  white-space: nowrap;
}
.wfsl3-nav .label { color: var(--ink-mute); }
.wfsl3-nav .links { display: flex; gap: 22px; align-items: center; }
.wfsl3-nav a {
  color: var(--ink-dim);
  padding-bottom: 4px;
  border-bottom: 1px solid transparent;
}
.wfsl3-nav a span {
  color: var(--gold);
  margin-right: 7px;
}
.wfsl3-nav a:hover {
  color: var(--ink);
  border-bottom-color: var(--gold);
}

.wfsl3-intro .frame {
  display: grid;
  grid-template-columns: 0.82fr 1.72fr;
  gap: clamp(30px, 5vw, 74px);
  align-items: start;
}
.wfsl3-intro aside {
  position: sticky;
  top: 142px;
  display: grid;
  gap: 10px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
}
.wfsl3-intro aside div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--rule);
  color: var(--ink-mute);
}
.wfsl3-intro aside b {
  color: var(--ink);
  font-weight: 500;
  text-align: right;
}
.wfsl3-intro .standfirst {
  max-width: 920px;
  margin: 0 0 24px;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 47px);
  line-height: 1.18;
  letter-spacing: -0.016em;
  color: var(--ink);
  text-wrap: pretty;
}
.wfsl3-intro .body p {
  max-width: 780px;
  margin: 0 0 14px;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}

.wfsl3-sec {
  border-top: 1px solid var(--rule);
  padding: clamp(56px, 6vw, 104px) 0;
}
.wfsl3-head {
  display: grid;
  grid-template-columns: 80px 1.18fr 0.82fr;
  gap: 28px;
  align-items: end;
  margin-bottom: 34px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--rule);
}
.wfsl3-head .num {
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(34px, 3.8vw, 56px);
  line-height: 0.85;
  color: var(--gold);
}
.wfsl3-head span {
  display: block;
  margin-bottom: 8px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ink-mute);
}
.wfsl3-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 4vw, 64px);
  line-height: 0.96;
  font-weight: 400;
  letter-spacing: -0.02em;
  text-wrap: balance;
}
.wfsl3-head h2 em {
  color: var(--gold);
  font-style: italic;
}
.wfsl3-head p {
  margin: 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: 17px;
  line-height: 1.5;
  color: var(--ink-dim);
}

.wfsl3-diagnostics {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: clamp(16px, 2.4vw, 32px);
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.wfsl3-diagnostics a {
  grid-column: span 4;
  min-height: 280px;
  padding: 28px 0 24px;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid var(--rule);
  border-top: 4px solid color-mix(in oklab, var(--gold) 66%, transparent);
  transition: background 0.2s, transform 0.2s;
}
.wfsl3-diagnostics a:nth-child(1) { grid-column: span 5; }
.wfsl3-diagnostics a:nth-child(2) { grid-column: span 3; padding-top: 76px; }
.wfsl3-diagnostics a:nth-child(3) { grid-column: span 4; }
.wfsl3-diagnostics a:nth-child(4) { grid-column: span 4; }
.wfsl3-diagnostics a:nth-child(5) { grid-column: span 5; padding-top: 62px; }
.wfsl3-diagnostics a:nth-child(6) { grid-column: span 3; }
.wfsl3-diagnostics a:hover {
  transform: translateY(-3px);
  background: color-mix(in oklab, var(--bg) 84%, var(--gold) 8%);
}
.wfsl3-diagnostics span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfsl3-diagnostics h3 {
  margin: auto 0 14px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 0.98;
  font-weight: 400;
  letter-spacing: -0.012em;
}
.wfsl3-diagnostics p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: var(--ink-dim);
}

.wfsl3-system-sec {
  background:
    linear-gradient(90deg, rgba(46,8,7,0.96), rgba(46,8,7,0.88)),
    var(--bg-deep);
  color: #f4ead7;
}
.wfsl3-system {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: clamp(30px, 5vw, 74px);
  align-items: stretch;
}
.wfsl3-system-title {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 520px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wfsl3-system-title span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfsl3-system-title h2 {
  margin: 18px 0 16px;
  font-family: var(--f-display);
  font-size: clamp(48px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfsl3-system-title p {
  max-width: 420px;
  margin: 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: 20px;
  line-height: 1.42;
  color: rgba(244,234,215,0.68);
}
.wfsl3-system-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: clamp(16px, 2vw, 28px);
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wfsl3-system-grid article {
  grid-column: span 6;
  min-height: 250px;
  padding: 28px 0 24px;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wfsl3-system-grid article:nth-child(1) { grid-column: span 7; }
.wfsl3-system-grid article:nth-child(2) { grid-column: span 5; padding-top: 76px; }
.wfsl3-system-grid article:nth-child(3) { grid-column: span 5; }
.wfsl3-system-grid article:nth-child(4) { grid-column: span 7; }
.wfsl3-system-grid span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wfsl3-system-grid h3 {
  margin: 28px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 44px);
  line-height: 0.98;
  font-weight: 400;
}
.wfsl3-system-grid p {
  margin: auto 0 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.68);
}

.wfsl3-leaf-list {
  border-top: 1px solid var(--rule);
}
.wfsl3-leaf-list .leaf-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 110px 34px;
  gap: clamp(18px, 2.4vw, 34px);
  align-items: baseline;
  padding: 24px 0;
  border-bottom: 1px solid var(--rule);
  transition: padding-left 0.2s, background 0.2s;
}
.wfsl3-leaf-list .leaf-row:hover {
  padding-left: 8px;
  background: color-mix(in oklab, var(--bg) 90%, var(--gold) 5%);
}
.wfsl3-leaf-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfsl3-leaf-list .t {
  font-family: var(--f-display);
  font-size: clamp(24px, 3vw, 46px);
  font-weight: 400;
  line-height: 1;
  color: var(--ink);
}
.wfsl3-leaf-list .read {
  font-family: var(--f-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ink-mute);
  text-align: right;
}
.wfsl3-leaf-list .arr {
  font-family: var(--f-display);
  color: var(--ink-mute);
  text-align: right;
}

.wfsl3-faq {
  border-top: 1px solid var(--rule);
}
.wfsl3-faq details {
  border-bottom: 1px solid var(--rule);
}
.wfsl3-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 22px 0;
  display: grid;
  grid-template-columns: 60px 1fr 28px;
  gap: 20px;
  align-items: baseline;
}
.wfsl3-faq summary::-webkit-details-marker { display: none; }
.wfsl3-faq summary span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfsl3-faq summary b {
  font-family: var(--f-display);
  font-weight: 400;
  font-size: clamp(19px, 1.7vw, 25px);
  line-height: 1.28;
}
.wfsl3-faq summary i {
  font-family: var(--f-display);
  font-style: normal;
  font-size: 22px;
  color: var(--ink-mute);
  text-align: right;
}
.wfsl3-faq details[open] summary i {
  color: var(--gold);
  transform: rotate(45deg);
}
.wfsl3-faq p {
  max-width: 820px;
  margin: 0 0 24px 80px;
  font-family: var(--f-sans);
  font-size: 15px;
  line-height: 1.7;
  color: var(--ink-dim);
}
.wfsl3-cross a:first-child {
  background: color-mix(in oklab, var(--bg) 82%, var(--gold) 8%);
}

/* Skin Outfit Pairings: bespoke fabric-light study */
.wfskin-hero {
  position: relative;
  min-height: clamp(690px, 94vh, 940px);
  overflow: hidden;
  background: #2b0807;
  color: #f8eddc;
}
.wfskin-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.86) brightness(0.72) contrast(1.04);
  transform: scale(1.02);
}
.wfskin-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(38,5,5,0.96) 0%, rgba(72,16,12,0.76) 46%, rgba(72,16,12,0.18) 100%),
    linear-gradient(0deg, rgba(34,7,5,0.98) 0%, rgba(34,7,5,0.46) 35%, transparent 68%);
}
.wfskin-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(690px, 94vh, 940px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfskin-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.34fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: end;
}
.wfskin-title h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfskin-title h1 span {
  display: block;
  color: #e7bd7b;
  font-style: italic;
}
.wfskin-title p {
  max-width: 760px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(248,237,220,0.78);
}
.wfskin-test-card {
  border-top: 1px solid rgba(248,237,220,0.3);
  padding-top: 20px;
}
.wfskin-test-card span,
.wfskin-sidebar span,
.wfskin-ruleline span,
.wfskin-surface-photo span,
.wfskin-fabric-head span,
.wfskin-board-photo span,
.wfskin-controls-title span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfskin-test-card span { color: #e7bd7b; }
.wfskin-test-card p {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  color: rgba(248,237,220,0.86);
}
.wfskin-hero-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(248,237,220,0.22);
}
.wfskin-hero-strip a {
  min-height: 160px;
  padding: 22px 24px;
  border-right: 1px solid rgba(248,237,220,0.18);
  color: #f8eddc;
  background: rgba(34,7,5,0.28);
}
.wfskin-hero-strip span {
  display: block;
  margin-bottom: 28px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #e7bd7b;
}
.wfskin-hero-strip b {
  display: block;
  margin-bottom: 12px;
  font-family: var(--f-display);
  font-size: clamp(25px, 2.5vw, 40px);
  line-height: 0.98;
  font-weight: 400;
}
.wfskin-hero-strip small {
  display: block;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.5;
  color: rgba(248,237,220,0.68);
}
.wfskin-nav {
  background: #efe4d1;
}
.wfskin-surface .frame {
  display: grid;
  grid-template-columns: 0.64fr minmax(0, 1.1fr) 0.76fr;
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfskin-sidebar {
  position: sticky;
  top: 142px;
  display: grid;
  gap: 10px;
}
.wfskin-sidebar div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--rule);
  color: var(--ink-mute);
}
.wfskin-sidebar b {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ink);
  text-align: right;
  font-weight: 500;
}
.wfskin-surface-copy .standfirst {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(31px, 3.4vw, 54px);
  line-height: 1.12;
  color: var(--ink);
  text-wrap: pretty;
}
.wfskin-ruleline {
  margin-top: clamp(30px, 5vw, 62px);
  padding-top: 22px;
  border-top: 1px solid var(--rule);
}
.wfskin-ruleline span,
.wfskin-sidebar span,
.wfskin-fabric-head span,
.wfskin-controls-title span {
  color: var(--gold);
}
.wfskin-ruleline p {
  max-width: 680px;
  margin: 14px 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wfskin-surface-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 44vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  border: 1px solid var(--rule);
  overflow: hidden;
  filter: saturate(0.82) contrast(1.08);
}
.wfskin-surface-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 38%, rgba(45,8,7,0.72));
}
.wfskin-surface-photo span {
  position: absolute;
  z-index: 1;
  left: 18px;
  bottom: 18px;
  color: #f8eddc;
}
.wfskin-fabric {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #eadcc6;
  color: #2f1410;
  border-top: 1px solid var(--rule);
}
.wfskin-fabric-head {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wfskin-fabric-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
  color: #2f1410;
}
.wfskin-fabric-head h2 em {
  color: #8b4c1f;
  font-style: italic;
}
.wfskin-fabric-board {
  display: grid;
  grid-template-columns: minmax(280px, 0.52fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfskin-board-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 56vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfskin-board-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(44,8,7,0.04), rgba(44,8,7,0.7));
}
.wfskin-board-photo span {
  position: absolute;
  z-index: 1;
  left: 20px;
  bottom: 20px;
  color: #f8eddc;
}
.wfskin-fabric-rows {
  display: grid;
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #5e1612 16%);
}
.wfskin-fabric-rows a {
  display: grid;
  grid-template-columns: 62px minmax(160px, 0.46fr) minmax(240px, 1fr);
  gap: clamp(16px, 2vw, 28px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 34px) 0;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 78%, #5e1612 16%);
  color: #2f1410;
}
.wfskin-fabric-rows span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #8b4c1f;
}
.wfskin-control-grid span,
.wfskin-lower-notes span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold);
}
.wfskin-fabric-rows h3,
.wfskin-control-grid h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(25px, 2.8vw, 43px);
  line-height: 1;
  font-weight: 400;
}
.wfskin-fabric-rows h3 {
  color: #2f1410;
}
.wfskin-fabric-rows p,
.wfskin-control-grid p,
.wfskin-lower-notes p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: var(--ink-dim);
}
.wfskin-fabric-rows p {
  color: #5f4740;
}
.wfskin-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #310908;
  color: #f8eddc;
}
.wfskin-controls-title {
  display: grid;
  grid-template-columns: 0.4fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  align-items: end;
  padding-bottom: 26px;
  border-bottom: 1px solid rgba(248,237,220,0.2);
}
.wfskin-controls-title h2 {
  margin: 0;
  max-width: 900px;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 92px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.025em;
  text-wrap: balance;
}
.wfskin-control-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-bottom: 1px solid rgba(248,237,220,0.2);
}
.wfskin-control-grid article {
  min-height: 330px;
  padding: 28px 24px 26px 0;
  border-right: 1px solid rgba(248,237,220,0.16);
}
.wfskin-control-grid figure {
  position: relative;
  height: clamp(150px, 15vw, 230px);
  margin: 0 0 24px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  filter: saturate(0.78) contrast(1.08);
}
.wfskin-control-grid figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(49,9,8,0.02), rgba(49,9,8,0.42));
}
.wfskin-control-grid h3 {
  margin-top: 34px;
  color: #f8eddc;
}
.wfskin-control-grid p {
  margin-top: 16px;
  color: rgba(248,237,220,0.64);
}
.wfskin-lower-notes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(18px, 3vw, 38px);
  margin-top: clamp(30px, 4vw, 54px);
}
.wfskin-lower-notes a {
  padding-top: 18px;
  border-top: 1px solid rgba(248,237,220,0.18);
}
.wfskin-lower-notes p {
  margin-top: 12px;
  color: rgba(248,237,220,0.64);
}

/* Lip and Look: bespoke color-signal page */
.wflip-hero {
  position: relative;
  min-height: clamp(690px, 94vh, 940px);
  overflow: hidden;
  background: #260607;
  color: #fff1df;
}
.wflip-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.9) brightness(0.7) contrast(1.08);
  transform: scale(1.02);
}
.wflip-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(27,3,4,0.96) 0%, rgba(76,8,13,0.82) 48%, rgba(76,8,13,0.18) 100%),
    linear-gradient(0deg, rgba(27,3,4,0.98) 0%, rgba(27,3,4,0.45) 38%, transparent 70%);
}
.wflip-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(690px, 94vh, 940px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wflip-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.34fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: end;
}
.wflip-title h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wflip-title h1 span {
  display: block;
  color: #ffcfba;
  font-style: italic;
}
.wflip-title p {
  max-width: 760px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(255,241,223,0.78);
}
.wflip-accessory-note {
  border-top: 1px solid rgba(255,241,223,0.28);
  padding-top: 20px;
}
.wflip-accessory-note span,
.wflip-signal-copy span,
.wflip-signal-photo span,
.wflip-map-head span,
.wflip-texture-title span,
.wflip-texture-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wflip-accessory-note span { color: #ffcfba; }
.wflip-accessory-note p {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  color: rgba(255,241,223,0.86);
}
.wflip-swatch-rail {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  min-height: 116px;
  border: 1px solid rgba(255,241,223,0.18);
}
.wflip-swatch-rail > span {
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: 14px;
}
.wflip-swatch-rail b {
  font-family: var(--f-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255,241,223,0.9);
  text-shadow: 0 1px 10px rgba(0,0,0,0.42);
}
.wflip-nav { background: #f1e4d2; }
.wflip-signal .frame {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1fr) minmax(190px, 0.34fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wflip-signal-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(500px, 52vw, 740px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wflip-signal-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(38,6,7,0.02), rgba(38,6,7,0.72));
}
.wflip-signal-photo span {
  position: absolute;
  z-index: 1;
  left: 18px;
  bottom: 18px;
  color: #fff1df;
}
.wflip-signal-copy {
  padding-top: clamp(10px, 5vw, 80px);
}
.wflip-signal-copy span,
.wflip-map-head span,
.wflip-texture-title span {
  color: #9d1118;
}
.wflip-signal-copy .standfirst {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(33px, 3.8vw, 60px);
  line-height: 1.05;
  color: var(--ink);
  text-wrap: pretty;
}
.wflip-signal-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wflip-signal-jobs {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--rule);
}
.wflip-signal-jobs div {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 12px;
  align-items: baseline;
  padding: 18px 0;
  border-bottom: 1px solid var(--rule);
}
.wflip-signal-jobs span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.2em;
  color: #9d1118;
}
.wflip-signal-jobs b {
  font-family: var(--f-display);
  font-size: clamp(22px, 2vw, 32px);
  font-weight: 400;
}
.wflip-map {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #2a0708;
  color: #fff1df;
}
.wflip-map-head {
  display: grid;
  grid-template-columns: minmax(0, 0.62fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wflip-map-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wflip-map-head h2 em {
  color: #ffcfba;
  font-style: italic;
}
.wflip-map-grid {
  display: grid;
  border-top: 1px solid rgba(255,241,223,0.2);
}
.wflip-map-grid a {
  display: grid;
  grid-template-columns: 64px 62px minmax(180px, 0.44fr) minmax(240px, 1fr);
  gap: clamp(14px, 2vw, 28px);
  align-items: center;
  padding: clamp(22px, 3vw, 34px) 0;
  border-bottom: 1px solid rgba(255,241,223,0.18);
  color: #fff1df;
}
.wflip-map-grid .swatch {
  width: 44px;
  height: 44px;
  display: block;
  background: var(--lip-color);
}
.wflip-map-grid .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #ffcfba;
}
.wflip-map-grid h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wflip-map-grid p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,241,223,0.64);
}
.wflip-texture {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #eadcc6;
  color: #2d100d;
}
.wflip-texture-title {
  display: grid;
  grid-template-columns: 0.36fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  align-items: end;
  padding-bottom: 30px;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 80%, #7b1f49 14%);
}
.wflip-texture-title h2 {
  max-width: 980px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(39px, 5.4vw, 82px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wflip-texture-board {
  display: grid;
  grid-template-columns: minmax(280px, 0.46fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 62px);
  margin-top: clamp(30px, 4vw, 56px);
  align-items: start;
}
.wflip-texture-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(480px, 52vw, 720px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wflip-texture-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(45,16,13,0.02), rgba(45,16,13,0.72));
}
.wflip-texture-photo span {
  position: absolute;
  z-index: 1;
  left: 18px;
  bottom: 18px;
  color: #fff1df;
}
.wflip-texture-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
.wflip-texture-controls article {
  border-top: 1px solid color-mix(in oklab, var(--rule) 82%, #7b1f49 12%);
  padding-top: 18px;
}
.wflip-texture-controls figure {
  height: clamp(170px, 18vw, 270px);
  margin: 0 0 22px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.8) contrast(1.08);
}
.wflip-texture-controls span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #9d1118;
}
.wflip-texture-controls h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wflip-texture-controls p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}

/* Nails and Palette: bespoke small-color page */
.wfnail-hero {
  position: relative;
  min-height: clamp(690px, 94vh, 940px);
  overflow: hidden;
  background: #2d0908;
  color: #fff2df;
}
.wfnail-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.84) brightness(0.68) contrast(1.08);
  transform: scale(1.02);
}
.wfnail-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(30,5,5,0.96) 0%, rgba(69,13,12,0.76) 48%, rgba(69,13,12,0.16) 100%),
    linear-gradient(0deg, rgba(30,5,5,0.98) 0%, rgba(30,5,5,0.46) 38%, transparent 70%);
}
.wfnail-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(690px, 94vh, 940px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfnail-hero-copy {
  align-self: center;
  max-width: 1060px;
}
.wfnail-hero-copy h1 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfnail-hero-copy h1 span {
  display: block;
  color: #f4d7c6;
  font-style: italic;
}
.wfnail-hero-copy p {
  max-width: 760px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(255,242,223,0.78);
}
.wfnail-swatch-stack {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  min-height: 126px;
  border: 1px solid rgba(255,242,223,0.18);
}
.wfnail-swatch-stack > span {
  display: flex;
  align-items: flex-end;
  padding: 14px;
  border-right: 1px solid rgba(255,242,223,0.16);
}
.wfnail-swatch-stack b {
  font-family: var(--f-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255,242,223,0.9);
  text-shadow: 0 1px 10px rgba(0,0,0,0.42);
}
.wfnail-nav { background: #efe3d0; }
.wfnail-proximity .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.78fr) minmax(220px, 0.48fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfnail-proximity-copy {
  position: sticky;
  top: 142px;
}
.wfnail-proximity-copy span,
.wfnail-proximity-board span,
.wfnail-palette-head span,
.wfnail-controls-photo span,
.wfnail-controls-copy span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #8a3c22;
}
.wfnail-proximity-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(33px, 3.8vw, 60px);
  line-height: 1.06;
  color: var(--ink);
  text-wrap: pretty;
}
.wfnail-proximity-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wfnail-proximity-board {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.wfnail-proximity-board figure {
  position: relative;
  min-height: clamp(230px, 24vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfnail-proximity-board figure:first-child {
  grid-column: 1 / -1;
  min-height: clamp(320px, 34vw, 520px);
}
.wfnail-proximity-board figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(45,9,8,0.02), rgba(45,9,8,0.7));
}
.wfnail-proximity-board span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #fff2df;
}
.wfnail-proximity-notes {
  display: grid;
  border-top: 1px solid var(--rule);
}
.wfnail-proximity-notes a {
  padding: 18px 0;
  border-bottom: 1px solid var(--rule);
}
.wfnail-proximity-notes span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8a3c22;
}
.wfnail-proximity-notes b {
  display: block;
  margin-top: 14px;
  font-family: var(--f-display);
  font-size: clamp(23px, 2.3vw, 36px);
  line-height: 1;
  font-weight: 400;
  color: var(--ink);
}
.wfnail-proximity-notes p {
  margin: 12px 0 0;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.58;
  color: var(--ink-dim);
}
.wfnail-palette {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #eadcc6;
  color: #2d100d;
}
.wfnail-palette-head {
  display: grid;
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wfnail-palette-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfnail-palette-head h2 em {
  color: #8a3c22;
  font-style: italic;
}
.wfnail-palette-table {
  display: grid;
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8a3c22 14%);
}
.wfnail-palette-table a {
  display: grid;
  grid-template-columns: 56px 62px minmax(160px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2vw, 28px);
  align-items: center;
  padding: clamp(22px, 3vw, 34px) 0;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 80%, #8a3c22 14%);
  color: #2d100d;
}
.wfnail-palette-table .chip {
  width: 36px;
  height: 58px;
  border-radius: 999px 999px 14px 14px;
  display: block;
  background: var(--nail-color);
  box-shadow: inset 0 0 0 1px rgba(45,16,13,0.16);
}
.wfnail-palette-table .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8a3c22;
}
.wfnail-palette-table h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfnail-palette-table p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}
.wfnail-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #2f0908;
  color: #fff2df;
}
.wfnail-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.82fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfnail-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(500px, 52vw, 740px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfnail-controls-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(47,9,8,0.02), rgba(47,9,8,0.72));
}
.wfnail-controls-photo span {
  position: absolute;
  z-index: 1;
  left: 18px;
  bottom: 18px;
  color: #fff2df;
}
.wfnail-controls-copy {
  border-top: 1px solid rgba(255,242,223,0.2);
  padding-top: 22px;
}
.wfnail-controls-copy h2 {
  max-width: 880px;
  margin: 18px 0 clamp(28px, 4vw, 54px);
  font-family: var(--f-display);
  font-size: clamp(39px, 5.4vw, 82px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfnail-control-list {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
.wfnail-control-list article {
  border-top: 1px solid rgba(255,242,223,0.18);
  padding-top: 18px;
}
.wfnail-control-list figure {
  height: clamp(170px, 18vw, 270px);
  margin: 0 0 22px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.8) contrast(1.08);
}
.wfnail-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #d7aa7a;
}
.wfnail-control-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfnail-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,242,223,0.64);
}

/* Fragrance by Mood: bespoke atmosphere page */
.wfscent-hero {
  position: relative;
  min-height: clamp(690px, 94vh, 940px);
  overflow: hidden;
  background: #170f0d;
  color: #fff0df;
}
.wfscent-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.72) brightness(0.62) contrast(1.1);
  transform: scale(1.02);
}
.wfscent-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 36%, rgba(216,201,170,0.24), transparent 24%),
    linear-gradient(90deg, rgba(22,13,11,0.98) 0%, rgba(48,27,21,0.78) 46%, rgba(48,27,21,0.18) 100%),
    linear-gradient(0deg, rgba(22,13,11,0.98) 0%, rgba(22,13,11,0.44) 40%, transparent 70%);
}
.wfscent-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(690px, 94vh, 940px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfscent-hero-copy {
  align-self: center;
  max-width: 1060px;
}
.wfscent-hero-copy h1 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfscent-hero-copy h1 span {
  display: block;
  color: #decaa7;
  font-style: italic;
}
.wfscent-hero-copy p {
  max-width: 760px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(255,240,223,0.78);
}
.wfscent-distance {
  display: grid;
  grid-template-columns: 0.55fr 0.9fr 1.25fr;
  min-height: 108px;
  align-items: end;
  border-top: 1px solid rgba(255,240,223,0.22);
}
.wfscent-distance span {
  padding: 16px 18px 14px 0;
  border-right: 1px solid rgba(255,240,223,0.15);
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(255,240,223,0.74);
}
.wfscent-nav { background: #eee2d0; }
.wfscent-atmosphere .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.72fr) minmax(240px, 0.5fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfscent-atmosphere-copy {
  position: sticky;
  top: 142px;
  padding-top: 8px;
}
.wfscent-atmosphere-copy span,
.wfscent-bottle span,
.wfscent-mood-head span,
.wfscent-controls-photo span,
.wfscent-controls-copy span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #8c6040;
}
.wfscent-atmosphere-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(33px, 3.8vw, 60px);
  line-height: 1.06;
  color: var(--ink);
  text-wrap: pretty;
}
.wfscent-atmosphere-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wfscent-bottle {
  position: sticky;
  top: 142px;
  min-height: clamp(500px, 52vw, 740px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfscent-bottle::after,
.wfscent-controls-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(25,15,13,0.02), rgba(25,15,13,0.72));
}
.wfscent-bottle span,
.wfscent-controls-photo span {
  position: absolute;
  z-index: 1;
  left: 18px;
  bottom: 18px;
  color: #fff0df;
}
.wfscent-projection {
  display: grid;
  border-top: 1px solid var(--rule);
}
.wfscent-projection div {
  padding: 20px 0;
  border-bottom: 1px solid var(--rule);
}
.wfscent-projection span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8c6040;
}
.wfscent-projection b {
  display: block;
  margin-top: 16px;
  font-family: var(--f-display);
  font-size: clamp(26px, 2.5vw, 40px);
  line-height: 1;
  font-weight: 400;
  color: var(--ink);
}
.wfscent-projection p {
  margin: 12px 0 0;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.58;
  color: var(--ink-dim);
}
.wfscent-mood {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #18100e;
  color: #fff0df;
}
.wfscent-mood-head {
  display: grid;
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wfscent-mood-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfscent-mood-head h2 em {
  color: #decaa7;
  font-style: italic;
}
.wfscent-mood-list {
  display: grid;
  border-top: 1px solid rgba(255,240,223,0.18);
}
.wfscent-mood-list a {
  display: grid;
  grid-template-columns: 86px 62px minmax(150px, 0.38fr) minmax(260px, 1fr);
  gap: clamp(14px, 2vw, 28px);
  align-items: center;
  padding: clamp(24px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(255,240,223,0.16);
  color: #fff0df;
}
.wfscent-mood-list .tone {
  width: 68px;
  height: 68px;
  display: block;
  border-radius: 50%;
  background:
    radial-gradient(circle, var(--scent-tone) 0%, color-mix(in oklab, var(--scent-tone) 42%, transparent) 50%, transparent 72%);
  box-shadow: 0 0 44px color-mix(in oklab, var(--scent-tone) 72%, transparent);
}
.wfscent-mood-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #decaa7;
}
.wfscent-mood-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(28px, 3.2vw, 50px);
  line-height: 1;
  font-weight: 400;
}
.wfscent-mood-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,240,223,0.64);
}
.wfscent-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #eadcc6;
  color: #2d100d;
}
.wfscent-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.82fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfscent-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(500px, 52vw, 740px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfscent-controls-copy {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8c6040 14%);
  padding-top: 22px;
}
.wfscent-controls-copy h2 {
  max-width: 880px;
  margin: 18px 0 clamp(28px, 4vw, 54px);
  font-family: var(--f-display);
  font-size: clamp(39px, 5.4vw, 82px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfscent-control-list {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
.wfscent-control-list article {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8c6040 14%);
  padding-top: 18px;
}
.wfscent-control-list figure {
  height: clamp(170px, 18vw, 270px);
  margin: 0 0 22px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.72) contrast(1.08);
}
.wfscent-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #8c6040;
}
.wfscent-control-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfscent-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}

/* Hair and Texture: bespoke silhouette and neckline page */
.wfhair-hero {
  position: relative;
  min-height: clamp(710px, 96vh, 960px);
  overflow: hidden;
  background: #260807;
  color: #fff0df;
}
.wfhair-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) brightness(0.62) contrast(1.12);
  transform: scale(1.02);
}
.wfhair-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(31,5,5,0.98) 0%, rgba(64,11,9,0.76) 46%, rgba(64,11,9,0.12) 100%),
    linear-gradient(0deg, rgba(31,5,5,0.98) 0%, rgba(31,5,5,0.46) 38%, transparent 70%);
}
.wfhair-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(710px, 96vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfhair-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.36fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: end;
}
.wfhair-hero-copy h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfhair-hero-copy h1 span {
  display: block;
  color: #e7c49e;
  font-style: italic;
}
.wfhair-hero-copy p {
  max-width: 790px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(255,240,223,0.78);
}
.wfhair-hero-note {
  border-top: 1px solid rgba(255,240,223,0.28);
  padding-top: 20px;
}
.wfhair-hero-note span,
.wfhair-neckline-copy span,
.wfhair-neckline-gallery span,
.wfhair-shape-head span,
.wfhair-controls-photo span,
.wfhair-controls-copy span,
.wfhair-weather-title span,
.wfhair-weather-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfhair-hero-note span { color: #e7c49e; }
.wfhair-hero-note p {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  color: rgba(255,240,223,0.86);
}
.wfhair-line-rail {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  min-height: 112px;
  align-items: end;
  border-top: 1px solid rgba(255,240,223,0.22);
}
.wfhair-line-rail span {
  padding: 16px 18px 14px 0;
  border-right: 1px solid rgba(255,240,223,0.15);
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(255,240,223,0.74);
}
.wfhair-nav { background: #efe3d0; }
.wfhair-neckline .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(280px, 0.86fr) minmax(230px, 0.48fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfhair-neckline-copy {
  position: sticky;
  top: 142px;
}
.wfhair-neckline-copy span,
.wfhair-shape-head span,
.wfhair-controls-copy span,
.wfhair-weather-title span {
  color: #8b4a2e;
}
.wfhair-neckline-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(33px, 3.8vw, 60px);
  line-height: 1.06;
  color: var(--ink);
  text-wrap: pretty;
}
.wfhair-neckline-copy p:not(.standfirst) {
  max-width: 640px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wfhair-neckline-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.wfhair-neckline-gallery figure {
  position: relative;
  min-height: clamp(230px, 24vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfhair-neckline-gallery figure:first-child {
  grid-column: 1 / -1;
  min-height: clamp(340px, 38vw, 560px);
}
.wfhair-neckline-gallery figure::after,
.wfhair-controls-photo::after,
.wfhair-weather-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(39,8,7,0.02), rgba(39,8,7,0.72));
}
.wfhair-neckline-gallery span,
.wfhair-controls-photo span,
.wfhair-weather-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #fff0df;
}
.wfhair-neckline-checks {
  display: grid;
  border-top: 1px solid var(--rule);
}
.wfhair-neckline-checks div {
  padding: 20px 0;
  border-bottom: 1px solid var(--rule);
}
.wfhair-neckline-checks span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8b4a2e;
}
.wfhair-neckline-checks b {
  display: block;
  margin-top: 16px;
  font-family: var(--f-display);
  font-size: clamp(26px, 2.5vw, 40px);
  line-height: 1;
  font-weight: 400;
  color: var(--ink);
}
.wfhair-neckline-checks p {
  margin: 12px 0 0;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.58;
  color: var(--ink-dim);
}
.wfhair-shape {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #eadcc6;
  color: #2f100c;
}
.wfhair-shape-head {
  display: grid;
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wfhair-shape-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfhair-shape-head h2 em {
  color: #8b4a2e;
  font-style: italic;
}
.wfhair-shape-list {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: clamp(18px, 2.6vw, 38px);
  align-items: start;
}
.wfhair-shape-list a {
  grid-column: span 4;
  color: #2f100c;
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8b4a2e 14%);
  padding-top: 18px;
}
.wfhair-shape-list a:nth-child(1),
.wfhair-shape-list a:nth-child(4) { grid-column: span 5; }
.wfhair-shape-list a:nth-child(2),
.wfhair-shape-list a:nth-child(5) { grid-column: span 3; margin-top: clamp(40px, 6vw, 96px); }
.wfhair-shape-list figure {
  height: clamp(240px, 27vw, 430px);
  margin: 0 0 20px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) contrast(1.08);
}
.wfhair-shape-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8b4a2e;
}
.wfhair-shape-list h3 {
  margin: 20px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfhair-shape-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}
.wfhair-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #2b0807;
  color: #fff0df;
}
.wfhair-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.82fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfhair-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfhair-controls-copy {
  border-top: 1px solid rgba(255,240,223,0.2);
  padding-top: 22px;
}
.wfhair-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(28px, 4vw, 54px);
  font-family: var(--f-display);
  font-size: clamp(39px, 5.4vw, 82px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfhair-control-list {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
.wfhair-control-list article {
  border-top: 1px solid rgba(255,240,223,0.18);
  padding-top: 18px;
}
.wfhair-control-list figure {
  height: clamp(180px, 19vw, 290px);
  margin: 0 0 22px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.78) contrast(1.08);
}
.wfhair-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #e7c49e;
}
.wfhair-control-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfhair-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,240,223,0.64);
}
.wfhair-weather {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #f0e4d2;
  color: #2f100c;
}
.wfhair-weather .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(270px, 0.6fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfhair-weather-title {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8b4a2e 14%);
  padding-top: 22px;
}
.wfhair-weather-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 92px);
  line-height: 0.9;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfhair-weather-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(390px, 38vw, 560px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfhair-weather-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(28px, 4vw, 52px);
}
.wfhair-weather-list article {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8b4a2e 14%);
  padding-top: 18px;
}
.wfhair-weather-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8b4a2e;
}
.wfhair-weather-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfhair-weather-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}

/* Jewelry and Metal: bespoke temperature and hardware page */
.wfjewel-hero {
  position: relative;
  min-height: clamp(700px, 95vh, 950px);
  overflow: hidden;
  background: #1c100d;
  color: #fff0df;
}
.wfjewel-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.72) brightness(0.62) contrast(1.12);
  transform: scale(1.02);
}
.wfjewel-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 28%, rgba(196,152,74,0.24), transparent 24%),
    linear-gradient(90deg, rgba(25,13,10,0.98) 0%, rgba(54,31,24,0.78) 47%, rgba(54,31,24,0.12) 100%),
    linear-gradient(0deg, rgba(25,13,10,0.98) 0%, rgba(25,13,10,0.42) 38%, transparent 70%);
}
.wfjewel-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 95vh, 950px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 64px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfjewel-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.34fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: end;
}
.wfjewel-hero-copy h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfjewel-hero-copy h1 span {
  display: block;
  color: #d5b06d;
  font-style: italic;
}
.wfjewel-hero-copy p {
  max-width: 790px;
  margin: 26px 0 0;
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(20px, 2vw, 30px);
  line-height: 1.38;
  color: rgba(255,240,223,0.78);
}
.wfjewel-hero-note {
  border-top: 1px solid rgba(255,240,223,0.28);
  padding-top: 20px;
}
.wfjewel-hero-note span,
.wfjewel-temp-copy span,
.wfjewel-tray span,
.wfjewel-map-head span,
.wfjewel-controls-photo span,
.wfjewel-controls-copy span,
.wfjewel-hardware-title span,
.wfjewel-hardware-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfjewel-hero-note span { color: #d5b06d; }
.wfjewel-hero-note p {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  color: rgba(255,240,223,0.86);
}
.wfjewel-metal-rail {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  min-height: 118px;
  border: 1px solid rgba(255,240,223,0.18);
}
.wfjewel-metal-rail > span {
  display: flex;
  align-items: flex-end;
  padding: 14px;
  border-right: 1px solid rgba(255,240,223,0.15);
}
.wfjewel-metal-rail b {
  font-family: var(--f-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255,240,223,0.92);
  text-shadow: 0 1px 10px rgba(0,0,0,0.42);
}
.wfjewel-nav { background: #eee2d0; }
.wfjewel-temp .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(280px, 0.86fr) minmax(230px, 0.48fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfjewel-temp-copy {
  position: sticky;
  top: 142px;
}
.wfjewel-temp-copy span,
.wfjewel-map-head span,
.wfjewel-controls-copy span,
.wfjewel-hardware-title span {
  color: #8a6130;
}
.wfjewel-temp-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(33px, 3.8vw, 60px);
  line-height: 1.06;
  color: var(--ink);
  text-wrap: pretty;
}
.wfjewel-temp-copy p:not(.standfirst) {
  max-width: 640px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: var(--ink-dim);
}
.wfjewel-tray {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.wfjewel-tray figure {
  position: relative;
  min-height: clamp(230px, 24vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfjewel-tray figure:first-child {
  grid-column: 1 / -1;
  min-height: clamp(340px, 38vw, 560px);
}
.wfjewel-tray figure::after,
.wfjewel-controls-photo::after,
.wfjewel-hardware-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(28,16,13,0.02), rgba(28,16,13,0.72));
}
.wfjewel-tray span,
.wfjewel-controls-photo span,
.wfjewel-hardware-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #fff0df;
}
.wfjewel-temp-notes {
  display: grid;
  border-top: 1px solid var(--rule);
}
.wfjewel-temp-notes div {
  padding: 20px 0;
  border-bottom: 1px solid var(--rule);
}
.wfjewel-temp-notes span {
  font-family: var(--f-display);
  font-size: clamp(26px, 2.8vw, 44px);
  line-height: 1;
  color: var(--ink);
}
.wfjewel-temp-notes p {
  margin: 12px 0 0;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.58;
  color: var(--ink-dim);
}
.wfjewel-map {
  padding: clamp(58px, 7vw, 118px) 0;
  background: #eadcc6;
  color: #2f100c;
}
.wfjewel-map-head {
  display: grid;
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 54px);
}
.wfjewel-map-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfjewel-map-head h2 em {
  color: #8a6130;
  font-style: italic;
}
.wfjewel-map-list {
  display: grid;
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8a6130 14%);
}
.wfjewel-map-list a {
  display: grid;
  grid-template-columns: 72px 62px minmax(170px, 0.42fr) minmax(260px, 1fr);
  gap: clamp(14px, 2vw, 28px);
  align-items: center;
  padding: clamp(22px, 3vw, 34px) 0;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 80%, #8a6130 14%);
  color: #2f100c;
}
.wfjewel-map-list .metal {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: block;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,0.82), transparent 19%),
    linear-gradient(135deg, var(--metal-tone), color-mix(in oklab, var(--metal-tone) 58%, #2f100c 20%));
  box-shadow: inset 0 0 0 1px rgba(47,16,12,0.18);
}
.wfjewel-map-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8a6130;
}
.wfjewel-map-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfjewel-map-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}
.wfjewel-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #1c100d;
  color: #fff0df;
}
.wfjewel-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.82fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfjewel-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfjewel-controls-copy {
  border-top: 1px solid rgba(255,240,223,0.2);
  padding-top: 22px;
}
.wfjewel-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(28px, 4vw, 54px);
  font-family: var(--f-display);
  font-size: clamp(39px, 5.4vw, 82px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfjewel-control-list {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
.wfjewel-control-list article {
  border-top: 1px solid rgba(255,240,223,0.18);
  padding-top: 18px;
}
.wfjewel-control-list figure {
  height: clamp(180px, 19vw, 290px);
  margin: 0 0 22px;
  background-size: cover;
  background-position: center;
  filter: saturate(0.72) contrast(1.08);
}
.wfjewel-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #d5b06d;
}
.wfjewel-control-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfjewel-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,240,223,0.64);
}
.wfjewel-hardware {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #f0e4d2;
  color: #2f100c;
}
.wfjewel-hardware .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(270px, 0.6fr);
  gap: clamp(24px, 4vw, 62px);
  align-items: start;
}
.wfjewel-hardware-title {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8a6130 14%);
  padding-top: 22px;
}
.wfjewel-hardware-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 92px);
  line-height: 0.9;
  font-weight: 400;
  letter-spacing: -0.024em;
  text-wrap: balance;
}
.wfjewel-hardware-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(390px, 38vw, 560px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfjewel-hardware-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(28px, 4vw, 52px);
}
.wfjewel-hardware-list article {
  border-top: 1px solid color-mix(in oklab, var(--rule) 80%, #8a6130 14%);
  padding-top: 18px;
}
.wfjewel-hardware-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #8a6130;
}
.wfjewel-hardware-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(27px, 3vw, 44px);
  line-height: 1;
  font-weight: 400;
}
.wfjewel-hardware-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #5f4740;
}

/* Bags and Shoes: bespoke edge-styling page */
.wfbag-hero {
  position: relative;
  min-height: clamp(690px, 92vh, 930px);
  overflow: hidden;
  background: #130f0d;
  color: #f8ead8;
}
.wfbag-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 58% center;
  filter: saturate(0.82) brightness(0.58) contrast(1.12);
  transform: scale(1.02);
}
.wfbag-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(19,15,13,0.98) 0%, rgba(47,31,24,0.78) 48%, rgba(47,31,24,0.18) 100%),
    linear-gradient(0deg, rgba(19,15,13,0.98) 0%, rgba(19,15,13,0.44) 42%, transparent 72%);
}
.wfbag-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(690px, 92vh, 930px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfbag-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: end;
}
.wfbag-title h1 {
  max-width: 1100px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(66px, 11vw, 168px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.032em;
  text-wrap: balance;
}
.wfbag-title h1 span {
  display: block;
  color: #d7a15f;
  font-style: italic;
}
.wfbag-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(248,234,216,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(248,234,216,0.82);
}
.wfbag-edge-rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(248,234,216,0.22);
  border-bottom: 1px solid rgba(248,234,216,0.22);
}
.wfbag-edge-rail div {
  min-height: 128px;
  padding: 18px;
  border-right: 1px solid rgba(248,234,216,0.18);
  display: grid;
  align-content: space-between;
}
.wfbag-edge-rail div:last-child { border-right: 0; }
.wfbag-edge-rail span,
.wfbag-pairing-copy span,
.wfbag-collage span,
.wfbag-map-head span,
.wfbag-controls-head span,
.wfbag-controls-photo span,
.wfbag-movement-photo span,
.wfbag-movement-copy span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfbag-edge-rail span {
  color: #d7a15f;
}
.wfbag-edge-rail b {
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 48px);
  line-height: 0.92;
  font-weight: 400;
}
.wfbag-edge-rail small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(248,234,216,0.64);
}
.wfbag-nav { background: #efe4d4; }
.wfbag-pairing {
  background: #f7efe4;
}
.wfbag-pairing .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(300px, 0.86fr) minmax(220px, 0.36fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfbag-pairing-copy {
  position: sticky;
  top: 142px;
}
.wfbag-pairing-copy span,
.wfbag-map-head span,
.wfbag-controls-head span,
.wfbag-movement-copy span {
  color: #99613f;
}
.wfbag-pairing-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(34px, 3.8vw, 62px);
  line-height: 1.04;
  color: #27140f;
  text-wrap: pretty;
}
.wfbag-pairing-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 40px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #674a3e;
}
.wfbag-collage {
  display: grid;
  grid-template-columns: 0.72fr 1fr;
  grid-auto-rows: minmax(190px, auto);
  gap: 16px;
}
.wfbag-collage figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfbag-collage .main {
  grid-column: 1 / -1;
  min-height: clamp(360px, 38vw, 580px);
}
.wfbag-collage figure::after,
.wfbag-controls-photo::after,
.wfbag-movement-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(19,15,13,0.02), rgba(19,15,13,0.7));
}
.wfbag-collage span,
.wfbag-controls-photo span,
.wfbag-movement-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f8ead8;
}
.wfbag-pairing-notes {
  display: grid;
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
}
.wfbag-pairing-notes div {
  padding: 20px 0;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
}
.wfbag-pairing-notes span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #99613f;
}
.wfbag-pairing-notes p {
  margin: 14px 0 0;
  font-family: var(--f-display);
  font-size: clamp(24px, 2.6vw, 38px);
  line-height: 1.04;
  color: #27140f;
}
.wfbag-map {
  padding: clamp(62px, 7vw, 124px) 0;
  background: #21130f;
  color: #f8ead8;
}
.wfbag-map-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 70px);
  align-items: end;
  margin-bottom: clamp(32px, 5vw, 66px);
}
.wfbag-map-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.4vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbag-map-head h2 em {
  color: #d7a15f;
  font-style: italic;
}
.wfbag-map-list {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(248,234,216,0.18);
}
.wfbag-map-list a {
  display: grid;
  grid-template-columns: clamp(120px, 16vw, 250px) 58px minmax(190px, 0.42fr) minmax(240px, 1fr);
  gap: clamp(14px, 2.6vw, 34px);
  align-items: center;
  padding: clamp(18px, 3vw, 32px) 0;
  border-bottom: 1px solid rgba(248,234,216,0.18);
  color: #f8ead8;
}
.wfbag-map-list a:nth-child(even) {
  padding-left: clamp(0px, 8vw, 96px);
}
.wfbag-map-list figure {
  height: clamp(98px, 13vw, 180px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.78) contrast(1.08);
}
.wfbag-map-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #d7a15f;
}
.wfbag-map-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3.2vw, 50px);
  line-height: 0.98;
  font-weight: 400;
}
.wfbag-map-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(248,234,216,0.66);
}
.wfbag-controls {
  padding: clamp(60px, 7vw, 122px) 0;
  background: #ece3d7;
  color: #27140f;
}
.wfbag-controls .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(290px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfbag-controls-head {
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
  padding-top: 22px;
}
.wfbag-controls-head h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 92px);
  line-height: 0.9;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbag-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(440px, 45vw, 650px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfbag-control-grid {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(30px, 5vw, 64px);
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
  border-left: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
}
.wfbag-control-grid article {
  min-height: clamp(250px, 24vw, 380px);
  padding: clamp(18px, 2vw, 26px);
  border-right: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 78%, #99613f 14%);
  display: flex;
  flex-direction: column;
}
.wfbag-control-grid article:nth-child(2),
.wfbag-control-grid article:nth-child(4) {
  background: #f5eadc;
}
.wfbag-control-grid span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #99613f;
}
.wfbag-control-grid h3 {
  margin: auto 0 16px;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.4vw, 50px);
  line-height: 0.96;
  font-weight: 400;
}
.wfbag-control-grid p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #674a3e;
}
.wfbag-movement {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #dfe7e2;
  color: #14201d;
}
.wfbag-movement .frame {
  display: grid;
  grid-template-columns: minmax(260px, 0.5fr) minmax(0, 0.9fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfbag-movement-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfbag-movement-copy {
  border-top: 1px solid rgba(20,32,29,0.18);
  padding-top: 22px;
}
.wfbag-movement-copy h2 {
  max-width: 920px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbag-test-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(20,32,29,0.18);
}
.wfbag-test-list article {
  display: grid;
  grid-template-columns: 62px minmax(160px, 0.4fr) minmax(260px, 1fr);
  gap: clamp(14px, 2vw, 28px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 34px) 0;
  border-bottom: 1px solid rgba(20,32,29,0.18);
}
.wfbag-test-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #667f78;
}
.wfbag-test-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfbag-test-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(20,32,29,0.66);
}

/* Beauty Bridges: bespoke lead/support/silence page */
.wfbridge-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: #170f10;
  color: #fff1e8;
}
.wfbridge-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 50% center;
  filter: saturate(0.82) brightness(0.6) contrast(1.08);
  transform: scale(1.02);
}
.wfbridge-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 72% 22%, rgba(230,161,137,0.22), transparent 25%),
    linear-gradient(90deg, rgba(23,15,16,0.98) 0%, rgba(54,31,30,0.76) 48%, rgba(54,31,30,0.12) 100%),
    linear-gradient(0deg, rgba(23,15,16,0.98) 0%, rgba(23,15,16,0.44) 40%, transparent 72%);
}
.wfbridge-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfbridge-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.34fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wfbridge-title h1 {
  max-width: 1140px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(64px, 10.5vw, 164px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wfbridge-title h1 span {
  display: block;
  color: #e6a189;
  font-style: italic;
}
.wfbridge-rule-card {
  border-top: 1px solid rgba(255,241,232,0.28);
  padding-top: 20px;
}
.wfbridge-rule-card span,
.wfbridge-hero-strip span,
.wfbridge-rule-copy span,
.wfbridge-image-stack span,
.wfbridge-map-head span,
.wfbridge-controls-photo span,
.wfbridge-controls-copy span,
.wfbridge-systems-head span,
.wfbridge-systems-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfbridge-rule-card span,
.wfbridge-hero-strip span {
  color: #e6a189;
}
.wfbridge-rule-card p {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1.02;
  color: rgba(255,241,232,0.88);
}
.wfbridge-hero-strip {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1.28fr;
  border-top: 1px solid rgba(255,241,232,0.2);
}
.wfbridge-hero-strip div {
  min-height: 134px;
  padding: 18px;
  border-right: 1px solid rgba(255,241,232,0.16);
  display: grid;
  align-content: space-between;
}
.wfbridge-hero-strip div:last-child { border-right: 0; }
.wfbridge-hero-strip b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.6vw, 58px);
  line-height: 0.92;
  font-weight: 400;
}
.wfbridge-hero-strip small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,241,232,0.64);
}
.wfbridge-nav { background: #f1e5dc; }
.wfbridge-rule {
  background: #fbf1e7;
  color: #29120f;
}
.wfbridge-rule .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(300px, 0.78fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfbridge-rule-copy {
  position: sticky;
  top: 142px;
}
.wfbridge-rule-copy span,
.wfbridge-map-head span,
.wfbridge-controls-copy span,
.wfbridge-systems-head span {
  color: #9d574c;
}
.wfbridge-rule-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #29120f;
  text-wrap: pretty;
}
.wfbridge-rule-copy p:not(.standfirst) {
  max-width: 650px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #684642;
}
.wfbridge-image-stack {
  display: grid;
  grid-template-columns: 0.8fr 1fr;
  grid-template-rows: minmax(250px, 0.7fr) minmax(220px, 0.5fr);
  gap: 16px;
}
.wfbridge-image-stack figure {
  position: relative;
  min-height: 230px;
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfbridge-image-stack .main {
  grid-row: 1 / 3;
  min-height: clamp(480px, 52vw, 720px);
}
.wfbridge-image-stack figure::after,
.wfbridge-controls-photo::after,
.wfbridge-systems-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(23,15,16,0.02), rgba(23,15,16,0.7));
}
.wfbridge-image-stack span,
.wfbridge-controls-photo span,
.wfbridge-systems-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #fff1e8;
}
.wfbridge-equation {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr 1.2fr;
  align-items: center;
  gap: clamp(10px, 2vw, 22px);
  margin-top: clamp(16px, 3vw, 34px);
  padding-top: clamp(20px, 3vw, 36px);
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
}
.wfbridge-equation span,
.wfbridge-equation em {
  font-family: var(--f-display);
  font-size: clamp(30px, 4.4vw, 72px);
  line-height: 0.92;
  font-weight: 400;
}
.wfbridge-equation b {
  font-family: var(--f-display);
  font-size: clamp(24px, 3vw, 48px);
  font-weight: 400;
  color: #9d574c;
}
.wfbridge-equation em {
  color: #9d574c;
}
.wfbridge-map {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #efe1d7;
  color: #29120f;
}
.wfbridge-map-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wfbridge-map-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbridge-map-head h2 em {
  color: #9d574c;
  font-style: italic;
}
.wfbridge-map-list {
  display: grid;
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
}
.wfbridge-map-list a {
  display: grid;
  grid-template-columns: 58px clamp(110px, 13vw, 190px) minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(20px, 3vw, 34px) 0;
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
  color: #29120f;
}
.wfbridge-map-list a:nth-child(2),
.wfbridge-map-list a:nth-child(5) {
  padding-left: clamp(0px, 7vw, 92px);
}
.wfbridge-map-list .n {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9d574c;
}
.wfbridge-map-list figure {
  height: clamp(110px, 14vw, 190px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.78) contrast(1.06);
}
.wfbridge-map-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3.2vw, 50px);
  line-height: 0.98;
  font-weight: 400;
}
.wfbridge-map-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #684642;
}
.wfbridge-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: #170f10;
  color: #fff1e8;
}
.wfbridge-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.46fr) minmax(0, 0.88fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfbridge-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfbridge-controls-copy {
  border-top: 1px solid rgba(255,241,232,0.2);
  padding-top: 22px;
}
.wfbridge-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbridge-control-lines {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(255,241,232,0.18);
}
.wfbridge-control-lines article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(255,241,232,0.18);
}
.wfbridge-control-lines span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #e6a189;
}
.wfbridge-control-lines h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wfbridge-control-lines p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(255,241,232,0.66);
}
.wfbridge-systems {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #faf0e6;
  color: #29120f;
}
.wfbridge-systems .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(270px, 0.48fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfbridge-systems-head {
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
  padding-top: 22px;
}
.wfbridge-systems-head h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfbridge-system-board {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(32px, 5vw, 66px);
  border-top: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
  border-left: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
}
.wfbridge-system-board article {
  min-height: clamp(260px, 25vw, 390px);
  padding: clamp(18px, 2vw, 26px);
  border-right: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
  border-bottom: 1px solid color-mix(in oklab, var(--rule) 78%, #9d574c 14%);
  display: flex;
  flex-direction: column;
}
.wfbridge-system-board article:nth-child(2),
.wfbridge-system-board article:nth-child(4) {
  background: #f3e5db;
}
.wfbridge-system-board span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9d574c;
}
.wfbridge-system-board h3 {
  margin: auto 0 18px;
  font-family: var(--f-display);
  font-size: clamp(31px, 3.3vw, 52px);
  line-height: 0.96;
  font-weight: 400;
}
.wfbridge-system-board p {
  margin: 0;
  padding: 11px 0;
  border-top: 1px solid color-mix(in oklab, var(--rule) 74%, #9d574c 12%);
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.3;
  color: #684642;
}
.wfbridge-systems-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(430px, 44vw, 640px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

/* Spring: bespoke weather-reset page */
.wfspring-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfspring-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 55% center;
  filter: saturate(0.82) brightness(0.58) contrast(1.08);
  transform: scale(1.02);
}
.wfspring-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 78% 24%, rgba(232,185,107,0.2), transparent 24%),
    linear-gradient(90deg, rgba(61,12,9,0.98) 0%, rgba(90,20,16,0.78) 48%, rgba(90,20,16,0.12) 100%),
    linear-gradient(0deg, rgba(61,12,9,0.98) 0%, rgba(61,12,9,0.44) 40%, transparent 72%);
}
.wfspring-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfspring-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.35fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wfspring-title h1 {
  max-width: 1040px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(68px, 11vw, 174px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wfspring-title h1 span {
  display: block;
  color: var(--gold);
  font-style: italic;
}
.wfspring-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(244,234,215,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(244,234,215,0.82);
}
.wfspring-forecast {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wfspring-forecast div {
  min-height: 132px;
  padding: 18px;
  border-right: 1px solid rgba(244,234,215,0.16);
  display: grid;
  align-content: space-between;
}
.wfspring-forecast div:last-child { border-right: 0; }
.wfspring-forecast span,
.wfspring-reset-copy span,
.wfspring-collage span,
.wfspring-condition-head span,
.wfspring-controls-photo span,
.wfspring-controls-copy span,
.wfspring-pavement-title span,
.wfspring-pavement-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfspring-forecast span {
  color: var(--gold);
}
.wfspring-forecast b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.8vw, 62px);
  line-height: 0.92;
  font-weight: 400;
}
.wfspring-forecast small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.64);
}
.wfspring-nav { background: var(--bg-deep); }
.wfspring-reset {
  background: #f4ead7;
  color: #2a0f0b;
}
.wfspring-reset .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(300px, 0.82fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfspring-reset-copy {
  position: sticky;
  top: 142px;
}
.wfspring-reset-copy span,
.wfspring-condition-head span,
.wfspring-controls-copy span,
.wfspring-pavement-title span {
  color: #9a5a34;
}
.wfspring-reset-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #2a0f0b;
  text-wrap: pretty;
}
.wfspring-reset-copy p:not(.standfirst) {
  max-width: 650px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #6e5140;
}
.wfspring-collage {
  display: grid;
  grid-template-columns: 1fr 0.72fr;
  gap: 16px;
}
.wfspring-collage figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfspring-collage .main {
  grid-column: 1 / -1;
  min-height: clamp(360px, 39vw, 590px);
}
.wfspring-collage figure::after,
.wfspring-controls-photo::after,
.wfspring-pavement-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61,12,9,0.02), rgba(61,12,9,0.68));
}
.wfspring-collage span,
.wfspring-controls-photo span,
.wfspring-pavement-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f4ead7;
}
.wfspring-conditions {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #eadfcd;
  color: #2a0f0b;
}
.wfspring-condition-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wfspring-condition-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfspring-condition-head h2 em {
  color: #9a5a34;
  font-style: italic;
}
.wfspring-condition-grid {
  display: grid;
  border-top: 1px solid rgba(61,12,9,0.16);
}
.wfspring-condition-grid a {
  display: grid;
  grid-template-columns: clamp(118px, 15vw, 210px) 58px minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(18px, 2.8vw, 32px) 0;
  border-bottom: 1px solid rgba(61,12,9,0.16);
  color: #2a0f0b;
}
.wfspring-condition-grid figure {
  height: clamp(98px, 12vw, 170px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.78) contrast(1.05);
}
.wfspring-condition-grid span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfspring-condition-grid h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 48px);
  line-height: 0.98;
  font-weight: 400;
}
.wfspring-condition-grid p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}
.wfspring-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfspring-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.86fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfspring-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfspring-controls-copy {
  border-top: 1px solid rgba(244,234,215,0.2);
  padding-top: 22px;
}
.wfspring-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfspring-control-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(244,234,215,0.18);
}
.wfspring-control-list article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wfspring-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wfspring-control-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wfspring-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.66);
}
.wfspring-pavement {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #f2e5d2;
  color: #2a0f0b;
}
.wfspring-pavement .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(280px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfspring-pavement-title {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 22px;
}
.wfspring-pavement-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfspring-pavement-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 42vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfspring-pavement-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(30px, 5vw, 64px);
}
.wfspring-pavement-list article {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 18px;
}
.wfspring-pavement-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfspring-pavement-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfspring-pavement-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}

/* Summer: bespoke heat-system page */
.wfsummer-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfsummer-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 54% center;
  filter: saturate(0.88) brightness(0.6) contrast(1.08);
  transform: scale(1.02);
}
.wfsummer-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 26%, rgba(232,185,107,0.22), transparent 24%),
    linear-gradient(90deg, rgba(61,12,9,0.98) 0%, rgba(90,20,16,0.74) 48%, rgba(90,20,16,0.1) 100%),
    linear-gradient(0deg, rgba(61,12,9,0.98) 0%, rgba(61,12,9,0.42) 40%, transparent 72%);
}
.wfsummer-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfsummer-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.35fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wfsummer-title h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(68px, 11vw, 174px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wfsummer-title h1 span {
  display: block;
  color: var(--gold);
  font-style: italic;
}
.wfsummer-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(244,234,215,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(244,234,215,0.82);
}
.wfsummer-heat-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wfsummer-heat-strip div {
  min-height: 132px;
  padding: 18px;
  border-right: 1px solid rgba(244,234,215,0.16);
  display: grid;
  align-content: space-between;
}
.wfsummer-heat-strip div:last-child { border-right: 0; }
.wfsummer-heat-strip span,
.wfsummer-heat-copy span,
.wfsummer-gallery span,
.wfsummer-condition-head span,
.wfsummer-controls-photo span,
.wfsummer-controls-copy span,
.wfsummer-cooling-title span,
.wfsummer-cooling-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfsummer-heat-strip span {
  color: var(--gold);
}
.wfsummer-heat-strip b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.8vw, 62px);
  line-height: 0.92;
  font-weight: 400;
}
.wfsummer-heat-strip small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.64);
}
.wfsummer-nav { background: var(--bg-deep); }
.wfsummer-heat {
  background: #f4ead7;
  color: #2a0f0b;
}
.wfsummer-heat .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(300px, 0.88fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfsummer-heat-copy {
  position: sticky;
  top: 142px;
}
.wfsummer-heat-copy span,
.wfsummer-condition-head span,
.wfsummer-controls-copy span,
.wfsummer-cooling-title span {
  color: #9a5a34;
}
.wfsummer-heat-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #2a0f0b;
  text-wrap: pretty;
}
.wfsummer-heat-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #6e5140;
}
.wfsummer-gallery {
  display: grid;
  grid-template-columns: 0.78fr 1fr;
  gap: 16px;
}
.wfsummer-gallery figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfsummer-gallery .main {
  grid-column: 1 / -1;
  min-height: clamp(380px, 40vw, 610px);
}
.wfsummer-gallery figure::after,
.wfsummer-controls-photo::after,
.wfsummer-cooling-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61,12,9,0.02), rgba(61,12,9,0.68));
}
.wfsummer-gallery span,
.wfsummer-controls-photo span,
.wfsummer-cooling-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f4ead7;
}
.wfsummer-conditions {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #eadfcd;
  color: #2a0f0b;
}
.wfsummer-condition-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wfsummer-condition-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfsummer-condition-list {
  display: grid;
  border-top: 1px solid rgba(61,12,9,0.16);
}
.wfsummer-condition-list a {
  display: grid;
  grid-template-columns: clamp(118px, 15vw, 210px) 58px minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(18px, 2.8vw, 32px) 0;
  border-bottom: 1px solid rgba(61,12,9,0.16);
  color: #2a0f0b;
}
.wfsummer-condition-list figure {
  height: clamp(98px, 12vw, 170px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) contrast(1.06);
}
.wfsummer-condition-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfsummer-condition-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 48px);
  line-height: 0.98;
  font-weight: 400;
}
.wfsummer-condition-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}
.wfsummer-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfsummer-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.86fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfsummer-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfsummer-controls-copy {
  border-top: 1px solid rgba(244,234,215,0.2);
  padding-top: 22px;
}
.wfsummer-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfsummer-control-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(244,234,215,0.18);
}
.wfsummer-control-list article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wfsummer-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wfsummer-control-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wfsummer-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.66);
}
.wfsummer-cooling {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #f2e5d2;
  color: #2a0f0b;
}
.wfsummer-cooling .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(280px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfsummer-cooling-title {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 22px;
}
.wfsummer-cooling-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfsummer-cooling-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 42vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfsummer-cooling-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(30px, 5vw, 64px);
}
.wfsummer-cooling-list article {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 18px;
}
.wfsummer-cooling-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfsummer-cooling-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfsummer-cooling-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}

/* Fall: bespoke layer-math page */
.wffall-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wffall-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 54% center;
  filter: saturate(0.86) brightness(0.58) contrast(1.1);
  transform: scale(1.02);
}
.wffall-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 26%, rgba(232,185,107,0.2), transparent 24%),
    linear-gradient(90deg, rgba(61,12,9,0.98) 0%, rgba(90,20,16,0.76) 48%, rgba(90,20,16,0.1) 100%),
    linear-gradient(0deg, rgba(61,12,9,0.98) 0%, rgba(61,12,9,0.42) 40%, transparent 72%);
}
.wffall-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wffall-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.35fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wffall-title h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(68px, 11vw, 174px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wffall-title h1 span {
  display: block;
  color: var(--gold);
  font-style: italic;
}
.wffall-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(244,234,215,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(244,234,215,0.82);
}
.wffall-layer-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wffall-layer-strip div {
  min-height: 132px;
  padding: 18px;
  border-right: 1px solid rgba(244,234,215,0.16);
  display: grid;
  align-content: space-between;
}
.wffall-layer-strip div:last-child { border-right: 0; }
.wffall-layer-strip span,
.wffall-layer-copy span,
.wffall-gallery span,
.wffall-condition-head span,
.wffall-controls-photo span,
.wffall-controls-copy span,
.wffall-texture-title span,
.wffall-texture-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wffall-layer-strip span {
  color: var(--gold);
}
.wffall-layer-strip b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.8vw, 62px);
  line-height: 0.92;
  font-weight: 400;
}
.wffall-layer-strip small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.64);
}
.wffall-nav { background: var(--bg-deep); }
.wffall-layer {
  background: #f4ead7;
  color: #2a0f0b;
}
.wffall-layer .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(300px, 0.88fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wffall-layer-copy {
  position: sticky;
  top: 142px;
}
.wffall-layer-copy span,
.wffall-condition-head span,
.wffall-controls-copy span,
.wffall-texture-title span {
  color: #9a5a34;
}
.wffall-layer-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #2a0f0b;
  text-wrap: pretty;
}
.wffall-layer-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #6e5140;
}
.wffall-gallery {
  display: grid;
  grid-template-columns: 0.78fr 1fr;
  gap: 16px;
}
.wffall-gallery figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wffall-gallery .main {
  grid-column: 1 / -1;
  min-height: clamp(380px, 40vw, 610px);
}
.wffall-gallery figure::after,
.wffall-controls-photo::after,
.wffall-texture-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61,12,9,0.02), rgba(61,12,9,0.68));
}
.wffall-gallery span,
.wffall-controls-photo span,
.wffall-texture-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f4ead7;
}
.wffall-conditions {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #eadfcd;
  color: #2a0f0b;
}
.wffall-condition-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wffall-condition-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wffall-condition-list {
  display: grid;
  border-top: 1px solid rgba(61,12,9,0.16);
}
.wffall-condition-list a {
  display: grid;
  grid-template-columns: clamp(118px, 15vw, 210px) 58px minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(18px, 2.8vw, 32px) 0;
  border-bottom: 1px solid rgba(61,12,9,0.16);
  color: #2a0f0b;
}
.wffall-condition-list figure {
  height: clamp(98px, 12vw, 170px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) contrast(1.06);
}
.wffall-condition-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wffall-condition-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 48px);
  line-height: 0.98;
  font-weight: 400;
}
.wffall-condition-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}
.wffall-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wffall-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.86fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wffall-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wffall-controls-copy {
  border-top: 1px solid rgba(244,234,215,0.2);
  padding-top: 22px;
}
.wffall-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wffall-control-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(244,234,215,0.18);
}
.wffall-control-list article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wffall-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wffall-control-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wffall-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.66);
}
.wffall-texture {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #f2e5d2;
  color: #2a0f0b;
}
.wffall-texture .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(280px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wffall-texture-title {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 22px;
}
.wffall-texture-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wffall-texture-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 42vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wffall-texture-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(30px, 5vw, 64px);
}
.wffall-texture-list article {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 18px;
}
.wffall-texture-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wffall-texture-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wffall-texture-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}

/* Winter: bespoke cold-armor page */
.wfwinter-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfwinter-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 54% center;
  filter: saturate(0.74) brightness(0.56) contrast(1.12);
  transform: scale(1.02);
}
.wfwinter-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 26%, rgba(232,185,107,0.16), transparent 24%),
    linear-gradient(90deg, rgba(61,12,9,0.98) 0%, rgba(90,20,16,0.78) 48%, rgba(90,20,16,0.1) 100%),
    linear-gradient(0deg, rgba(61,12,9,0.98) 0%, rgba(61,12,9,0.42) 40%, transparent 72%);
}
.wfwinter-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wfwinter-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.35fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wfwinter-title h1 {
  max-width: 1080px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(68px, 11vw, 174px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wfwinter-title h1 span {
  display: block;
  color: var(--gold);
  font-style: italic;
}
.wfwinter-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(244,234,215,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(244,234,215,0.82);
}
.wfwinter-cold-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wfwinter-cold-strip div {
  min-height: 132px;
  padding: 18px;
  border-right: 1px solid rgba(244,234,215,0.16);
  display: grid;
  align-content: space-between;
}
.wfwinter-cold-strip div:last-child { border-right: 0; }
.wfwinter-cold-strip span,
.wfwinter-line-copy span,
.wfwinter-gallery span,
.wfwinter-condition-head span,
.wfwinter-controls-photo span,
.wfwinter-controls-copy span,
.wfwinter-texture-title span,
.wfwinter-texture-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wfwinter-cold-strip span { color: var(--gold); }
.wfwinter-cold-strip b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.8vw, 62px);
  line-height: 0.92;
  font-weight: 400;
}
.wfwinter-cold-strip small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.64);
}
.wfwinter-nav { background: var(--bg-deep); }
.wfwinter-line {
  background: #f4ead7;
  color: #2a0f0b;
}
.wfwinter-line .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(300px, 0.88fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfwinter-line-copy {
  position: sticky;
  top: 142px;
}
.wfwinter-line-copy span,
.wfwinter-condition-head span,
.wfwinter-controls-copy span,
.wfwinter-texture-title span {
  color: #9a5a34;
}
.wfwinter-line-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #2a0f0b;
  text-wrap: pretty;
}
.wfwinter-line-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #6e5140;
}
.wfwinter-gallery {
  display: grid;
  grid-template-columns: 0.78fr 1fr;
  gap: 16px;
}
.wfwinter-gallery figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfwinter-gallery .main {
  grid-column: 1 / -1;
  min-height: clamp(380px, 40vw, 610px);
}
.wfwinter-gallery figure::after,
.wfwinter-controls-photo::after,
.wfwinter-texture-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61,12,9,0.02), rgba(61,12,9,0.68));
}
.wfwinter-gallery span,
.wfwinter-controls-photo span,
.wfwinter-texture-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f4ead7;
}
.wfwinter-conditions {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #eadfcd;
  color: #2a0f0b;
}
.wfwinter-condition-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wfwinter-condition-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfwinter-condition-list {
  display: grid;
  border-top: 1px solid rgba(61,12,9,0.16);
}
.wfwinter-condition-list a {
  display: grid;
  grid-template-columns: clamp(118px, 15vw, 210px) 58px minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(18px, 2.8vw, 32px) 0;
  border-bottom: 1px solid rgba(61,12,9,0.16);
  color: #2a0f0b;
}
.wfwinter-condition-list figure {
  height: clamp(98px, 12vw, 170px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.76) contrast(1.08);
}
.wfwinter-condition-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfwinter-condition-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 48px);
  line-height: 0.98;
  font-weight: 400;
}
.wfwinter-condition-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}
.wfwinter-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wfwinter-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.86fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wfwinter-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfwinter-controls-copy {
  border-top: 1px solid rgba(244,234,215,0.2);
  padding-top: 22px;
}
.wfwinter-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfwinter-control-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(244,234,215,0.18);
}
.wfwinter-control-list article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wfwinter-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wfwinter-control-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wfwinter-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.66);
}
.wfwinter-texture {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #f2e5d2;
  color: #2a0f0b;
}
.wfwinter-texture .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(280px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wfwinter-texture-title {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 22px;
}
.wfwinter-texture-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wfwinter-texture-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 42vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wfwinter-texture-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(30px, 5vw, 64px);
}
.wfwinter-texture-list article {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 18px;
}
.wfwinter-texture-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wfwinter-texture-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wfwinter-texture-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}

/* Transitional: bespoke in-between system page */
.wftrans-hero {
  position: relative;
  min-height: clamp(700px, 94vh, 960px);
  overflow: hidden;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wftrans-hero-photo {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 54% center;
  filter: saturate(0.84) brightness(0.58) contrast(1.08);
  transform: scale(1.02);
}
.wftrans-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 76% 26%, rgba(232,185,107,0.18), transparent 24%),
    linear-gradient(90deg, rgba(61,12,9,0.98) 0%, rgba(90,20,16,0.76) 48%, rgba(90,20,16,0.1) 100%),
    linear-gradient(0deg, rgba(61,12,9,0.98) 0%, rgba(61,12,9,0.42) 40%, transparent 72%);
}
.wftrans-hero .frame {
  position: relative;
  z-index: 2;
  min-height: clamp(700px, 94vh, 960px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(30px, 5vw, 68px);
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}
.wftrans-hero-grid {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.35fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: end;
}
.wftrans-title h1 {
  max-width: 1120px;
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(64px, 10.5vw, 166px);
  line-height: 0.84;
  font-weight: 400;
  letter-spacing: -0.034em;
  text-wrap: balance;
}
.wftrans-title h1 span {
  display: block;
  color: var(--gold);
  font-style: italic;
}
.wftrans-hero-grid p {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(244,234,215,0.28);
  font-family: var(--f-display);
  font-style: italic;
  font-size: clamp(21px, 2.2vw, 34px);
  line-height: 1.22;
  color: rgba(244,234,215,0.82);
}
.wftrans-swing-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244,234,215,0.22);
  border-bottom: 1px solid rgba(244,234,215,0.22);
}
.wftrans-swing-strip div {
  min-height: 132px;
  padding: 18px;
  border-right: 1px solid rgba(244,234,215,0.16);
  display: grid;
  align-content: space-between;
}
.wftrans-swing-strip div:last-child { border-right: 0; }
.wftrans-swing-strip span,
.wftrans-swing-copy span,
.wftrans-gallery span,
.wftrans-condition-head span,
.wftrans-controls-photo span,
.wftrans-controls-copy span,
.wftrans-carry-title span,
.wftrans-carry-photo span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.wftrans-swing-strip span { color: var(--gold); }
.wftrans-swing-strip b {
  font-family: var(--f-display);
  font-size: clamp(31px, 3.8vw, 62px);
  line-height: 0.92;
  font-weight: 400;
}
.wftrans-swing-strip small {
  font-family: var(--f-sans);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(244,234,215,0.64);
}
.wftrans-nav { background: var(--bg-deep); }
.wftrans-swing {
  background: #f4ead7;
  color: #2a0f0b;
}
.wftrans-swing .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(300px, 0.88fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wftrans-swing-copy {
  position: sticky;
  top: 142px;
}
.wftrans-swing-copy span,
.wftrans-condition-head span,
.wftrans-controls-copy span,
.wftrans-carry-title span {
  color: #9a5a34;
}
.wftrans-swing-copy .standfirst {
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(35px, 3.9vw, 64px);
  line-height: 1.04;
  color: #2a0f0b;
  text-wrap: pretty;
}
.wftrans-swing-copy p:not(.standfirst) {
  max-width: 620px;
  margin: clamp(24px, 3vw, 42px) 0 0;
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.72;
  color: #6e5140;
}
.wftrans-gallery {
  display: grid;
  grid-template-columns: 0.78fr 1fr;
  gap: 16px;
}
.wftrans-gallery figure {
  position: relative;
  min-height: clamp(230px, 23vw, 360px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wftrans-gallery .main {
  grid-column: 1 / -1;
  min-height: clamp(380px, 40vw, 610px);
}
.wftrans-gallery figure::after,
.wftrans-controls-photo::after,
.wftrans-carry-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61,12,9,0.02), rgba(61,12,9,0.68));
}
.wftrans-gallery span,
.wftrans-controls-photo span,
.wftrans-carry-photo span {
  position: absolute;
  z-index: 1;
  left: 16px;
  bottom: 16px;
  color: #f4ead7;
}
.wftrans-conditions {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #eadfcd;
  color: #2a0f0b;
}
.wftrans-condition-head {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
  margin-bottom: clamp(30px, 5vw, 64px);
}
.wftrans-condition-head h2 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(44px, 6.2vw, 104px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wftrans-condition-list {
  display: grid;
  border-top: 1px solid rgba(61,12,9,0.16);
}
.wftrans-condition-list a {
  display: grid;
  grid-template-columns: clamp(118px, 15vw, 210px) 58px minmax(180px, 0.42fr) minmax(250px, 1fr);
  gap: clamp(14px, 2.4vw, 32px);
  align-items: center;
  padding: clamp(18px, 2.8vw, 32px) 0;
  border-bottom: 1px solid rgba(61,12,9,0.16);
  color: #2a0f0b;
}
.wftrans-condition-list figure {
  height: clamp(98px, 12vw, 170px);
  margin: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(0.82) contrast(1.06);
}
.wftrans-condition-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wftrans-condition-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(29px, 3vw, 48px);
  line-height: 0.98;
  font-weight: 400;
}
.wftrans-condition-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}
.wftrans-controls {
  padding: clamp(64px, 7vw, 126px) 0;
  background: var(--bg-deep);
  color: #f4ead7;
}
.wftrans-controls .frame {
  display: grid;
  grid-template-columns: minmax(270px, 0.48fr) minmax(0, 0.86fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wftrans-controls-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(520px, 54vw, 760px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wftrans-controls-copy {
  border-top: 1px solid rgba(244,234,215,0.2);
  padding-top: 22px;
}
.wftrans-controls-copy h2 {
  max-width: 900px;
  margin: 18px 0 clamp(30px, 4vw, 58px);
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 96px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wftrans-control-list {
  grid-column: 2;
  display: grid;
  border-top: 1px solid rgba(244,234,215,0.18);
}
.wftrans-control-list article {
  display: grid;
  grid-template-columns: 62px minmax(150px, 0.3fr) minmax(260px, 1fr);
  gap: clamp(14px, 2.4vw, 34px);
  align-items: baseline;
  padding: clamp(22px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(244,234,215,0.18);
}
.wftrans-control-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--gold);
}
.wftrans-control-list h3 {
  margin: 0;
  font-family: var(--f-display);
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 0.96;
  font-weight: 400;
}
.wftrans-control-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: rgba(244,234,215,0.66);
}
.wftrans-carry {
  padding: clamp(62px, 7vw, 126px) 0;
  background: #f2e5d2;
  color: #2a0f0b;
}
.wftrans-carry .frame {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(280px, 0.52fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
}
.wftrans-carry-title {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 22px;
}
.wftrans-carry-title h2 {
  max-width: 900px;
  margin: 18px 0 0;
  font-family: var(--f-display);
  font-size: clamp(42px, 6vw, 94px);
  line-height: 0.88;
  font-weight: 400;
  letter-spacing: -0.026em;
  text-wrap: balance;
}
.wftrans-carry-photo {
  position: sticky;
  top: 142px;
  min-height: clamp(420px, 42vw, 620px);
  margin: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.wftrans-carry-list {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
  margin-top: clamp(30px, 5vw, 64px);
}
.wftrans-carry-list article {
  border-top: 1px solid rgba(61,12,9,0.16);
  padding-top: 18px;
}
.wftrans-carry-list span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: 0.24em;
  color: #9a5a34;
}
.wftrans-carry-list h3 {
  margin: 22px 0 12px;
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  font-weight: 400;
}
.wftrans-carry-list p {
  margin: 0;
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.62;
  color: #6e5140;
}

@media (max-width: 1120px) {
  .wfsl3-signal-strip,
  .wfsl3-diagnostics,
  .wfsl3-system-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .wfsl3-diagnostics a,
  .wfsl3-diagnostics a:nth-child(1),
  .wfsl3-diagnostics a:nth-child(2),
  .wfsl3-diagnostics a:nth-child(3),
  .wfsl3-diagnostics a:nth-child(4),
  .wfsl3-diagnostics a:nth-child(5),
  .wfsl3-diagnostics a:nth-child(6),
  .wfsl3-system-grid article,
  .wfsl3-system-grid article:nth-child(1),
  .wfsl3-system-grid article:nth-child(2),
  .wfsl3-system-grid article:nth-child(3),
  .wfsl3-system-grid article:nth-child(4) {
    grid-column: auto;
    padding-top: 26px;
    min-height: 220px;
  }
  .wfsl3-head,
  .wfsl3-intro .frame,
  .wfsl3-system,
  .wfskin-hero-grid,
  .wflip-hero-grid,
  .wfnail-controls .frame,
  .wfscent-controls .frame,
  .wfhair-controls .frame,
  .wfhair-weather .frame,
  .wfjewel-controls .frame,
  .wfjewel-hardware .frame,
  .wfbag-controls .frame,
  .wfbag-movement .frame,
  .wfbridge-controls .frame,
  .wfbridge-systems .frame,
  .wfspring-controls .frame,
  .wfspring-pavement .frame,
  .wfsummer-controls .frame,
  .wfsummer-cooling .frame,
  .wffall-controls .frame,
  .wffall-texture .frame,
  .wfwinter-controls .frame,
  .wfwinter-texture .frame,
  .wftrans-controls .frame,
  .wftrans-carry .frame,
  .wfskin-surface .frame,
  .wfnail-proximity .frame,
  .wfscent-atmosphere .frame,
  .wfhair-neckline .frame,
  .wfjewel-temp .frame,
  .wfbag-pairing .frame,
  .wfbridge-rule .frame,
  .wfspring-reset .frame,
  .wfsummer-heat .frame,
  .wffall-layer .frame,
  .wfwinter-line .frame,
  .wftrans-swing .frame,
  .wflip-signal .frame,
  .wfskin-fabric-head,
  .wflip-map-head,
  .wfnail-palette-head,
  .wfscent-mood-head,
  .wfhair-hero-grid,
  .wfhair-shape-head,
  .wfjewel-hero-grid,
  .wfjewel-map-head,
  .wfbag-hero-grid,
  .wfbag-map-head,
  .wfbridge-hero-grid,
  .wfbridge-map-head,
  .wfspring-hero-grid,
  .wfspring-condition-head,
  .wfsummer-hero-grid,
  .wfsummer-condition-head,
  .wffall-hero-grid,
  .wffall-condition-head,
  .wfwinter-hero-grid,
  .wfwinter-condition-head,
  .wftrans-hero-grid,
  .wftrans-condition-head,
  .wfskin-fabric-board,
  .wfskin-controls-title,
  .wflip-texture-title,
  .wflip-texture-board {
    grid-template-columns: 1fr;
  }
  .wfsl3-intro aside {
    position: static;
  }
  .wfskin-sidebar,
  .wfskin-surface-photo,
  .wfskin-board-photo,
  .wflip-signal-photo,
  .wflip-texture-photo,
  .wfnail-proximity-copy,
  .wfnail-controls-photo,
  .wfscent-atmosphere-copy,
  .wfscent-bottle,
  .wfscent-controls-photo,
  .wfhair-neckline-copy,
  .wfhair-controls-photo,
  .wfhair-weather-photo,
  .wfjewel-temp-copy,
  .wfjewel-controls-photo,
  .wfjewel-hardware-photo,
  .wfbag-pairing-copy,
  .wfbag-controls-photo,
  .wfbag-movement-photo,
  .wfbridge-rule-copy,
  .wfbridge-controls-photo,
  .wfbridge-systems-photo,
  .wfspring-reset-copy,
  .wfspring-controls-photo,
  .wfspring-pavement-photo,
  .wfsummer-heat-copy,
  .wfsummer-controls-photo,
  .wfsummer-cooling-photo,
  .wffall-layer-copy,
  .wffall-controls-photo,
  .wffall-texture-photo,
  .wfwinter-line-copy,
  .wfwinter-controls-photo,
  .wfwinter-texture-photo,
  .wftrans-swing-copy,
  .wftrans-controls-photo,
  .wftrans-carry-photo {
    position: static;
  }
  .wfsl3-system-title {
    min-height: 320px;
  }
  .wfsl3-head p {
    max-width: 760px;
  }
  .wfskin-hero-strip,
  .wfskin-control-grid,
  .wfskin-lower-notes,
  .wflip-swatch-rail,
  .wfnail-swatch-stack,
  .wfnail-control-list,
  .wfscent-distance,
  .wfscent-control-list,
  .wfhair-line-rail,
  .wfhair-control-list,
  .wfhair-weather-list,
  .wfjewel-metal-rail,
  .wfjewel-control-list,
  .wfjewel-hardware-list,
  .wfbag-edge-rail,
  .wfbag-control-grid,
  .wfbridge-hero-strip,
  .wfbridge-system-board,
  .wfspring-forecast,
  .wfspring-condition-grid,
  .wfspring-pavement-list,
  .wfsummer-heat-strip,
  .wfsummer-cooling-list,
  .wffall-layer-strip,
  .wffall-texture-list,
  .wfwinter-cold-strip,
  .wfwinter-texture-list,
  .wftrans-swing-strip,
  .wftrans-carry-list {
    grid-template-columns: 1fr;
  }
  .wfspring-condition-grid a,
  .wfspring-condition-grid a:nth-child(1),
  .wfspring-condition-grid a:nth-child(2),
  .wfspring-condition-grid a:nth-child(3),
  .wfspring-condition-grid a:nth-child(4),
  .wfspring-condition-grid a:nth-child(5),
  .wfspring-condition-grid a:nth-child(6) {
    grid-column: auto;
  }
  .wfnail-control-list,
  .wfscent-control-list,
  .wfhair-control-list,
  .wfhair-weather-list,
  .wfjewel-control-list,
  .wfjewel-hardware-list,
  .wfbag-control-grid,
  .wfbag-test-list,
  .wfbridge-control-lines,
  .wfbridge-system-board,
  .wfspring-control-list,
  .wfspring-pavement-list,
  .wfsummer-control-list,
  .wfsummer-cooling-list,
  .wffall-control-list,
  .wffall-texture-list,
  .wfwinter-control-list,
  .wfwinter-texture-list,
  .wftrans-control-list,
  .wftrans-carry-list { grid-column: auto; }
  .wfhair-shape-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wfhair-shape-list a,
  .wfhair-shape-list a:nth-child(1),
  .wfhair-shape-list a:nth-child(2),
  .wfhair-shape-list a:nth-child(4),
  .wfhair-shape-list a:nth-child(5) {
    grid-column: auto;
    margin-top: 0;
  }
  .wfskin-control-grid article {
    min-height: 0;
    padding: 24px 0;
    border-right: 0;
    border-bottom: 1px solid rgba(248,237,220,0.16);
  }
  .wfskin-control-grid h3 {
    margin-top: 40px;
  }
}

@media (max-width: 720px) {
  .wfsl3-nav .frame {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .wfsl3-nav .links {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .wfsl3-signal-strip,
  .wfsl3-diagnostics,
  .wfsl3-system-grid {
    grid-template-columns: 1fr;
  }
  .wfsl3-hero h1 {
    font-size: clamp(58px, 17vw, 88px);
  }
  .wfsl3-hero p {
    font-size: 19px;
  }
  .wfsl3-leaf-list .leaf-row {
    grid-template-columns: 42px 1fr;
    gap: 8px 16px;
  }
  .wfsl3-leaf-list .read,
  .wfsl3-leaf-list .arr {
    grid-column: 2;
    text-align: left;
  }
  .wfskin-fabric-rows a {
    grid-template-columns: 1fr;
  }
  .wflip-map-grid a,
  .wfnail-palette-table a,
  .wfscent-mood-list a,
  .wfjewel-map-list a,
  .wfbag-map-list a,
  .wfbag-test-list article,
  .wfbridge-map-list a,
  .wfbridge-control-lines article,
  .wfbridge-equation,
  .wfspring-condition-grid a,
  .wfspring-control-list article,
  .wfsummer-condition-list a,
  .wfsummer-control-list article,
  .wffall-condition-list a,
  .wffall-control-list article,
  .wfwinter-condition-list a,
  .wfwinter-control-list article,
  .wftrans-condition-list a,
  .wftrans-control-list article,
  .wfhair-shape-list,
  .wflip-texture-controls {
    grid-template-columns: 1fr;
  }
  .wfbag-map-list a:nth-child(even) {
    padding-left: 0;
  }
  .wfbridge-map-list a:nth-child(2),
  .wfbridge-map-list a:nth-child(5) {
    padding-left: 0;
  }
  .wfskin-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wflip-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfnail-hero-copy h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfscent-hero-copy h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfhair-hero-copy h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfjewel-hero-copy h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfbag-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfbridge-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfspring-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfsummer-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wffall-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfwinter-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wftrans-title h1 {
    font-size: clamp(58px, 17vw, 90px);
  }
  .wfsl3-faq p {
    margin-left: 0;
  }
}
