/* Wallcraft Off White Collection — page-specific styles.
   Loaded after site.css so it does not replace global/menu/collection-card work. */

.offwhite-hero{padding:118px 0 48px;min-height:68svh;display:grid;align-items:center;overflow:hidden;position:relative;background:#efeee8}
.offwhite-hero:before{content:"";position:absolute;right:-12vw;top:-18vw;width:54vw;height:54vw;border-radius:50%;background:rgba(255,255,255,.72);filter:blur(2px)}
.offwhite-hero:after{content:"";position:absolute;left:-14vw;bottom:-24vw;width:46vw;height:46vw;border-radius:50%;background:#e2e6e1;opacity:.75}
.offwhite-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(32px,5vw,84px);align-items:center;position:relative;z-index:2}
.offwhite-hero-copy{padding:32px 0}
.offwhite-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(4rem,8.2vw,8.7rem);font-weight:400;line-height:.79;letter-spacing:-.065em;margin:.14em 0 .24em}
.offwhite-hero-copy h1 em{font-weight:400;color:#8b9893}
.offwhite-hero-copy p{font-size:clamp(1.05rem,1.55vw,1.32rem);max-width:620px;color:#565952;margin:0}
.offwhite-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}
.text-link{font-size:.9rem;font-weight:760;border-bottom:1px solid currentColor;padding-bottom:3px}
.offwhite-hero-visual{height:min(56svh,650px);min-height:430px;border-radius:38px;overflow:hidden;position:relative;box-shadow:0 28px 80px rgba(35,37,34,.12);background:#e9e8e1}
.offwhite-hero-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.58) contrast(.96) brightness(1.03)}
.offwhite-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(243,242,231,.08),transparent 42%,rgba(187,201,202,.12));pointer-events:none}
.hero-palette{position:absolute;left:28px;right:28px;bottom:28px;height:66px;display:grid;grid-template-columns:repeat(8,1fr);gap:4px;padding:6px;background:rgba(250,248,243,.79);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(12px);border-radius:999px;z-index:3;box-shadow:0 12px 30px rgba(0,0,0,.09)}
.hero-palette i{background:var(--c);border-radius:999px;border:1px solid rgba(20,20,18,.06);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.hero-palette i:hover{transform:scaleY(1.18);box-shadow:0 8px 15px rgba(20,20,18,.08)}

.offwhite-intro{background:var(--paper)}
.offwhite-intro-grid{display:grid;grid-template-columns:.55fr 1.6fr .85fr;gap:clamp(28px,5vw,80px);align-items:start;padding-top:22px;border-top:1px solid var(--line)}
.offwhite-intro h2,.section-heading-row h2,.sample-callout h2,.undertone-guide h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,5vw,5.3rem);font-weight:400;letter-spacing:-.05em;line-height:.94;margin:.08em 0 .28em}
.offwhite-intro-grid>p:last-child{color:var(--muted);font-size:1.02rem;margin-top:7px}

.offwhite-pairings{background:#e9e8e2}
.section-heading-row{display:grid;grid-template-columns:1.2fr .6fr;gap:40px;align-items:end;margin-bottom:38px}
.section-heading-row>p{max-width:520px;color:var(--muted);justify-self:end}
.pairing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pairing-card{min-height:410px;background:#faf9f5;border:1px solid rgba(21,21,19,.09);border-radius:30px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.pairing-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(35,35,30,.1)}
.pairing-swatches{position:absolute;inset:0 0 auto 0;height:58%;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:14px}
.pairing-swatches i{background:var(--c);border:1px solid rgba(20,20,18,.05);border-radius:999px;transform-origin:center bottom;transition:transform .6s var(--ease),border-radius .6s var(--ease)}
.pairing-card:hover .pairing-swatches i:nth-child(1){transform:scaleY(1.08)}
.pairing-card:hover .pairing-swatches i:nth-child(2){transform:scaleY(.94)}
.pairing-card:hover .pairing-swatches i:nth-child(3){transform:scaleY(1.04)}
.pairing-card:hover .pairing-swatches i:nth-child(4){transform:scaleY(.9)}
.pairing-card h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:7px 0 5px}
.pairing-card p{margin:0;color:var(--muted);max-width:430px}

.offwhite-collection{background:#f5f2ec}
.collection-heading{margin-bottom:44px}
.offwhite-studio{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:stretch}
.selected-colour{--selected:#F3F2E7;min-height:620px;border-radius:34px;background:var(--selected);position:sticky;top:95px;overflow:hidden;color:#151513;transition:background .75s var(--ease),color .35s ease;box-shadow:inset 0 0 0 1px rgba(0,0,0,.065)}
.selected-colour.is-dark{color:#fff}
.selected-colour-noise{position:absolute;inset:0;background:radial-gradient(circle at 28% 14%,rgba(255,255,255,.4),transparent 34%),linear-gradient(160deg,rgba(255,255,255,.15),transparent 40%,rgba(0,0,0,.06));mix-blend-mode:soft-light}
.selected-colour-copy{position:absolute;left:32px;right:32px;bottom:30px;z-index:2}
.selected-colour-copy h3{font-family:Georgia,serif;font-size:clamp(3.2rem,5vw,5.7rem);font-weight:400;line-height:.9;letter-spacing:-.045em;margin:.12em 0}
.selected-colour-copy p{margin:0;opacity:.72;font-weight:750;letter-spacing:.025em}
.offwhite-swatches{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.offwhite-swatch{appearance:none;border:1px solid rgba(21,21,19,.1);border-radius:26px;background:#fbfaf7;padding:12px;text-align:left;display:grid;grid-template-rows:190px auto;gap:14px;transition:transform .38s var(--ease),box-shadow .38s var(--ease),border-color .25s ease;overflow:hidden}
.offwhite-swatch:hover,.offwhite-swatch.is-selected{transform:translateY(-4px);box-shadow:0 18px 40px rgba(25,25,20,.09);border-color:rgba(21,21,19,.26)}
.swatch-face{display:block;background:var(--swatch);border:1px solid rgba(15,15,13,.055);border-radius:18px;position:relative;overflow:hidden}
.swatch-face:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,255,255,.34),transparent 38%,rgba(0,0,0,.035))}
.offwhite-swatch:hover .swatch-face{animation:swatch-breathe .75s var(--ease)}
@keyframes swatch-breathe{0%,100%{border-radius:18px;transform:scale(1)}45%{border-radius:25px 16px 25px 16px;transform:scale(.985,1.025)}}
.swatch-meta{display:flex;align-items:end;justify-content:space-between;gap:10px;padding:0 3px 2px}
.swatch-meta b{font-size:1rem}.swatch-meta small{color:var(--muted);font-weight:780;letter-spacing:.05em}

.offwhite-editorial{background:#e7e6e0}
.editorial-grid{display:grid;grid-template-columns:1.3fr .7fr;grid-template-rows:repeat(2,330px);gap:16px}
.editorial-grid figure{margin:0;position:relative;border-radius:30px;overflow:hidden;background:#ddd}
.editorial-grid img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .6s ease;filter:saturate(.62) contrast(.98)}
.editorial-grid figure:hover img{transform:scale(1.03);filter:saturate(.78)}
.editorial-main{grid-row:1/3}
.editorial-grid figcaption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(250,248,243,.9);backdrop-filter:blur(8px);border-radius:18px;padding:13px 16px;font-size:.9rem;display:flex;gap:16px;align-items:center}
.editorial-grid figcaption span{font-weight:900;letter-spacing:.08em;color:#788985}

.undertone-guide{background:#f3f1eb}
.undertone-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,7vw,110px);align-items:start}
.undertone-points{display:grid;gap:0;border-top:1px solid var(--line)}
.undertone-points article{display:grid;grid-template-columns:54px .55fr 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line);align-items:start}
.undertone-points b{font-size:.72rem;letter-spacing:.12em;color:#83918d}
.undertone-points h3{font-family:Georgia,serif;font-size:1.45rem;font-weight:400;margin:0}
.undertone-points p{margin:0;color:var(--muted)}

.sample-callout{background:#dfe3df}
.sample-callout-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;padding:40px 0}
.sample-callout-inner>div:last-child{max-width:540px;justify-self:end}
.sample-callout .btn{margin-top:14px}

@media(max-width:1080px){
  .offwhite-hero-grid{grid-template-columns:1fr 1fr;gap:32px}
  .offwhite-hero-copy h1{font-size:clamp(3.8rem,8.8vw,7rem)}
  .offwhite-intro-grid{grid-template-columns:1fr 1.5fr}.offwhite-intro-grid>p:last-child{grid-column:2}
  .pairing-grid{grid-template-columns:1fr 1fr}.pairing-card:last-child{grid-column:1/-1}
  .offwhite-studio{grid-template-columns:1fr}.selected-colour{position:relative;top:auto;min-height:420px}
  .undertone-grid{grid-template-columns:1fr;gap:28px}
}

@media(max-width:780px){
  .offwhite-hero{padding-top:92px;min-height:auto}
  .offwhite-hero-grid{grid-template-columns:1fr;gap:24px}
  .offwhite-hero-copy{padding:26px 0 0}
  .offwhite-hero-copy h1{font-size:clamp(4rem,19vw,7rem)}
  .offwhite-hero-visual{height:48svh;min-height:360px;border-radius:26px}
  .hero-palette{left:14px;right:14px;bottom:14px;height:50px;padding:5px;gap:3px}
  .offwhite-intro-grid,.section-heading-row,.sample-callout-inner{grid-template-columns:1fr;gap:22px}
  .offwhite-intro-grid>p:last-child{grid-column:auto}.section-heading-row>p,.sample-callout-inner>div:last-child{justify-self:start}
  .pairing-grid{grid-template-columns:1fr}.pairing-card:last-child{grid-column:auto}.pairing-card{min-height:390px}
  .offwhite-swatches{grid-template-columns:1fr 1fr}.offwhite-swatch{grid-template-rows:150px auto;border-radius:22px}
  .editorial-grid{grid-template-columns:1fr;grid-template-rows:420px 270px 270px}.editorial-main{grid-row:auto}
  .undertone-points article{grid-template-columns:38px 1fr}.undertone-points p{grid-column:2}
  .sample-callout-inner{padding:15px 0}
}

@media(max-width:520px){
  .offwhite-hero-copy h1{font-size:clamp(3.5rem,19vw,5.7rem)}
  .offwhite-hero-actions{align-items:flex-start;flex-direction:column}
  .hero-palette{height:46px}
  .pairing-card{min-height:360px;padding:20px}.pairing-swatches{height:56%;padding:10px}
  .offwhite-swatches{grid-template-columns:1fr}.offwhite-swatch{grid-template-columns:110px 1fr;grid-template-rows:110px;align-items:stretch}.swatch-meta{align-items:flex-start;justify-content:center;flex-direction:column;padding:10px 5px}.swatch-face{height:110px}
  .selected-colour{min-height:360px;border-radius:26px}.selected-colour-copy{left:22px;right:22px;bottom:22px}
  .editorial-grid{grid-template-rows:360px 250px 250px}.editorial-grid figure{border-radius:24px}
  .undertone-points article{grid-template-columns:32px 1fr;gap:12px}
}

@media(prefers-reduced-motion:reduce){
  .hero-palette i,.pairing-card,.pairing-swatches i,.offwhite-swatch,.editorial-grid img{transition:none!important;animation:none!important}
}
