/* ===== Furniture Story — "Why Us" =====
   Built in the makieta editorial language (same vocabulary as furniture_story_about.css:
   hero → prologue → pillars → spread → pullquote → specs → numbers → values → cta).
   Everything scoped under .fs-why so it can't collide with OpenCart's Bootstrap theme.
   Fonts (Cormorant Garamond + Inter) are loaded globally/self-hosted by the .fs-chrome
   header, so no Google Fonts @import here. :root tokens kept identical to the about page. */

:root{
  --bg:#FAF8F4;
  --bg-alt:#F2EDE5;
  --bg-warm:#E8DFD2;
  --bg-deep:#1F1B17;
  --ink:#1A1A1A;
  --ink-soft:#4A4744;
  --muted:#8B857E;
  --line:#E5DFD5;
  --line-strong:#D7CFC2;
  --accent:#5C5347;
  --sage:#8A9A7B;
  --terracotta:#B66B4A;
  --white:#FFFFFF;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --transition:0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.fs-why{
  font-family:var(--sans);font-size:16px;line-height:1.7;
  color:var(--ink);background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
.fs-why *{margin:0;padding:0;box-sizing:border-box;}
.fs-why img{max-width:100%;display:block;}
.fs-why a{color:inherit;text-decoration:none;transition:opacity var(--transition);}
.fs-why a:hover{opacity:0.7;}
.fs-why button{font-family:inherit;cursor:pointer;border:none;background:none;}
/* OpenCart's stylesheet.css forces h1..h6{color:#444}. Restore the mockup's behaviour:
   headings inherit their section colour (white on the dark hero, --ink on light sections). */
.fs-why h1,.fs-why h2,.fs-why h3,.fs-why h4,.fs-why h5,.fs-why h6{color:inherit;}

/* ===== HERO — full-bleed editorial cover ===== */
.fs-why .hero{
  position:relative;
  height:86vh;min-height:600px;max-height:840px;
  overflow:hidden;
  color:var(--white);
}
.fs-why .hero img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center 42%;
}
.fs-why .hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0.30) 45%, rgba(0,0,0,0.66) 100%);
}
.fs-why .hero-content{
  position:absolute;inset:0;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 48px 80px;
  z-index:2;
}
.fs-why .hero-eyebrow{
  font-family:var(--sans);
  font-size:12px;letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  display:flex;align-items:center;gap:14px;
  margin-bottom:24px;
}
.fs-why .hero-eyebrow::before, .fs-why .hero-eyebrow::after{
  content:"";flex:0 0 36px;height:1px;background:rgba(255,255,255,0.5);
}
.fs-why .hero h1{
  font-family:var(--serif);
  font-size:clamp(52px, 7vw, 104px);
  line-height:1;font-weight:500;letter-spacing:-0.015em;
  max-width:15ch;
}
.fs-why .hero h1 em{font-style:italic;color:#E0C5A8;font-weight:400;}
.fs-why .hero-sub{
  margin-top:24px;
  font-family:var(--serif);font-style:italic;
  font-size:22px;line-height:1.45;
  max-width:560px;color:rgba(255,255,255,0.92);
}
.fs-why .hero-meta{
  position:absolute;top:40px;right:48px;
  font-size:11px;letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  display:flex;flex-direction:column;align-items:flex-end;gap:4px;
}
.fs-why .hero-meta strong{font-weight:500;}

/* ===== chapter tag (shared eyebrow) ===== */
.fs-why .chapter-tag{
  font-family:var(--sans);font-size:11px;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--terracotta);font-weight:500;
  display:inline-flex;align-items:center;gap:14px;
  margin-bottom:28px;
}
.fs-why .chapter-tag::before, .fs-why .chapter-tag::after{
  content:"";flex:0 0 36px;height:1px;background:var(--line-strong);
}

/* ===== Prologue — editorial intro ===== */
.fs-why .prologue{
  padding:120px 48px 96px;
  background:var(--bg);
}
.fs-why .prologue-inner{
  max-width:1080px;margin:0 auto;
  text-align:center;
}
.fs-why .prologue h2{
  font-family:var(--serif);
  font-size:clamp(34px, 4vw, 56px);
  line-height:1.15;font-weight:500;letter-spacing:-0.01em;
  margin-bottom:36px;
}
.fs-why .prologue h2 em{font-style:italic;color:var(--terracotta);font-weight:400;}
.fs-why .prologue-lead{
  font-family:var(--serif);font-style:italic;
  font-size:24px;line-height:1.55;color:var(--ink-soft);
  max-width:780px;margin:0 auto;
}

/* ===== Pillars — the six promises (3-col grid, hairline gaps) ===== */
.fs-why .pillars-wrap{
  padding:0 48px 120px;
  background:var(--bg);
}
.fs-why .pillars{
  max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3, 1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.fs-why .pillar{
  background:var(--bg);
  padding:52px 40px;
  text-align:left;
  position:relative;
}
.fs-why .pillar-icon{
  width:46px;height:46px;
  display:flex;align-items:center;justify-content:center;
  color:var(--accent);
  margin-bottom:26px;
  border:1px solid var(--line-strong);
  border-radius:50%;
}
.fs-why .pillar-icon svg{width:21px;height:21px;}
.fs-why .pillar-num{
  font-family:var(--serif);font-style:italic;
  font-size:18px;color:var(--terracotta);
  margin-bottom:14px;
  display:flex;align-items:center;gap:10px;
}
.fs-why .pillar-num::before{
  content:"";width:24px;height:1px;background:var(--terracotta);
}
.fs-why .pillar h4{
  font-family:var(--serif);
  font-size:27px;font-weight:500;line-height:1.2;
  margin-bottom:14px;
}
.fs-why .pillar p{font-size:14.5px;line-height:1.75;color:var(--ink-soft);}

/* ===== Image + text spread ===== */
.fs-why .spread{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  background:var(--bg-alt);
}
.fs-why .spread-img{
  aspect-ratio:4/5;
  background:var(--bg-warm);
  overflow:hidden;
}
.fs-why .spread-img img{width:100%;height:100%;object-fit:cover;}
.fs-why .spread-text{
  padding:96px 80px;
  display:flex;flex-direction:column;justify-content:center;
  background:var(--bg);
}
.fs-why .spread.reverse .spread-img{order:2;}
.fs-why .spread.reverse .spread-text{order:1;}
.fs-why .spread-text .chapter-num{
  font-family:var(--serif);font-style:italic;
  font-size:18px;color:var(--terracotta);
  margin-bottom:14px;
}
.fs-why .spread-text h3{
  font-family:var(--serif);
  font-size:clamp(34px, 3vw, 48px);
  line-height:1.15;font-weight:500;letter-spacing:-0.01em;
  margin-bottom:24px;
}
.fs-why .spread-text h3 em{font-style:italic;color:var(--terracotta);font-weight:400;}
.fs-why .spread-text p{
  font-size:16px;line-height:1.8;color:var(--ink-soft);
  margin-bottom:18px;
}
.fs-why .spread-text p:last-child{margin-bottom:0;}
.fs-why .spread-caption{
  position:absolute;bottom:28px;left:28px;
  font-size:11px;letter-spacing:0.15em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  background:rgba(26,26,26,0.4);backdrop-filter:blur(8px);
  padding:8px 14px;border-radius:2px;
}
.fs-why .spread.reverse .spread-caption{left:auto;right:28px;}

/* ===== Pull quote ===== */
.fs-why .pullquote{
  padding:120px 48px;
  background:var(--bg-deep);
  color:var(--bg);
  text-align:center;
}
.fs-why .pullquote-inner{
  max-width:920px;margin:0 auto;
  position:relative;
}
.fs-why .pullquote::before{
  content:"";display:block;
  width:48px;height:1px;background:var(--terracotta);
  margin:0 auto 32px;
}
.fs-why .pullquote q{
  quotes:none;
  font-family:var(--serif);font-style:italic;
  font-size:clamp(28px, 3.2vw, 44px);
  line-height:1.35;font-weight:400;
  color:var(--bg);
  letter-spacing:-0.005em;
}
.fs-why .pullquote q::before{content:"\201C ";}
.fs-why .pullquote q::after{content:" \201D";}
.fs-why .pullquote-attr{
  margin-top:36px;
  font-family:var(--sans);font-size:11px;letter-spacing:0.25em;text-transform:uppercase;
  color:rgba(255,255,255,0.6);font-weight:500;
}
.fs-why .pullquote-attr strong{color:var(--bg);font-weight:500;}

/* ===== Specs — the white-glove delivery list ===== */
.fs-why .specs{
  padding:120px 48px;
  background:var(--bg-alt);
}
.fs-why .specs-grid{
  max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:0.9fr 1.1fr;gap:80px;
  align-items:center;
}
.fs-why .specs-img{
  aspect-ratio:4/5;
  background:var(--bg-warm);
  overflow:hidden;
  border-radius:2px;
}
.fs-why .specs-img img{width:100%;height:100%;object-fit:cover;}
.fs-why .specs-content .chapter-num{
  font-family:var(--serif);font-style:italic;
  font-size:18px;color:var(--terracotta);
  margin-bottom:14px;
}
.fs-why .specs-content h3{
  font-family:var(--serif);
  font-size:clamp(34px, 3vw, 48px);
  line-height:1.15;font-weight:500;letter-spacing:-0.01em;
  margin-bottom:32px;
}
.fs-why .specs-content h3 em{font-style:italic;color:var(--terracotta);font-weight:400;}
.fs-why .spec-list{list-style:none;padding:0;}
.fs-why .spec-list li{
  display:grid;grid-template-columns:auto 1fr;gap:20px;
  padding:22px 0;
  border-top:1px solid var(--line-strong);
  align-items:flex-start;
}
.fs-why .spec-list li:last-child{border-bottom:1px solid var(--line-strong);}
.fs-why .spec-list .spec-label{
  font-family:var(--serif);font-style:italic;
  font-size:18px;color:var(--terracotta);
  white-space:nowrap;min-width:34px;
}
.fs-why .spec-list .spec-body strong{
  display:block;font-family:var(--serif);font-size:22px;font-weight:500;
  color:var(--ink);margin-bottom:6px;line-height:1.3;
}
.fs-why .spec-list .spec-body p{
  font-size:14px;line-height:1.7;color:var(--ink-soft);margin:0;
}

/* ===== Numbers strip ===== */
.fs-why .numbers{
  background:var(--bg-deep);color:var(--bg);
  padding:80px 48px;
}
.fs-why .numbers-inner{
  max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4, 1fr);
  gap:0;
  border-left:1px solid rgba(255,255,255,0.12);
}
.fs-why .num-cell{
  padding:32px 28px;
  border-right:1px solid rgba(255,255,255,0.12);
  text-align:center;
}
.fs-why .num-cell .n{
  font-family:var(--serif);
  font-size:62px;font-weight:500;line-height:1;
  margin-bottom:12px;color:var(--bg);
}
.fs-why .num-cell .n em{font-style:italic;color:#E0C5A8;font-weight:400;}
.fs-why .num-cell .l{
  font-family:var(--sans);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,0.7);
}

/* ===== Values ===== */
.fs-why .values{
  padding:120px 48px;
  background:var(--bg);
  text-align:center;
}
.fs-why .section-head{
  max-width:780px;margin:0 auto 80px;
}
.fs-why .section-head h2{
  font-family:var(--serif);
  font-size:clamp(34px, 4vw, 52px);
  line-height:1.15;font-weight:500;letter-spacing:-0.01em;
  margin:18px 0 16px;
}
.fs-why .section-head h2 em{font-style:italic;color:var(--terracotta);font-weight:400;}
.fs-why .section-head p{
  font-family:var(--serif);font-style:italic;
  font-size:20px;line-height:1.5;color:var(--ink-soft);
}
.fs-why .values-grid{
  max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3, 1fr);
  gap:56px;
  text-align:left;
}
.fs-why .value-card{
  padding:48px 0;
  border-top:1px solid var(--line-strong);
}
.fs-why .value-card .vt{
  font-family:var(--serif);font-style:italic;
  font-size:16px;color:var(--terracotta);
  margin-bottom:18px;
}
.fs-why .value-card h4{
  font-family:var(--serif);
  font-size:30px;font-weight:500;line-height:1.2;
  margin-bottom:18px;
}
.fs-why .value-card p{font-size:15px;line-height:1.8;color:var(--ink-soft);}

/* ===== CTA ===== */
.fs-why .cta{
  background:var(--bg-alt);
  padding:120px 48px;
  text-align:center;
}
.fs-why .cta h2{
  font-family:var(--serif);
  font-size:clamp(36px, 4vw, 56px);
  line-height:1.15;font-weight:500;letter-spacing:-0.01em;
  margin-bottom:18px;
}
.fs-why .cta h2 em{font-style:italic;color:var(--terracotta);font-weight:400;}
.fs-why .cta p{
  font-family:var(--serif);font-style:italic;
  font-size:20px;color:var(--ink-soft);
  max-width:620px;margin:0 auto 40px;
}
.fs-why .cta-buttons{display:inline-flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.fs-why .btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:18px 32px;
  font-family:var(--sans);font-size:13px;font-weight:600;
  letter-spacing:0.12em;text-transform:uppercase;
  border-radius:2px;
  transition:background var(--transition), color var(--transition), border-color var(--transition);
}
.fs-why .btn-primary{background:var(--ink);color:var(--bg);}
.fs-why .btn-primary:hover{background:var(--accent);opacity:1;}
.fs-why .btn-outline{background:transparent;color:var(--ink);border:1px solid var(--ink);}
.fs-why .btn-outline:hover{background:var(--ink);color:var(--bg);opacity:1;}
.fs-why .btn svg{width:14px;height:14px;}

/* ===== Responsive ===== */
@media(max-width:1024px){
  .fs-why .pillars{grid-template-columns:repeat(2, 1fr);}
  .fs-why .specs-grid{grid-template-columns:1fr;gap:48px;}
  .fs-why .values-grid{grid-template-columns:1fr;gap:0;}
  .fs-why .numbers-inner{grid-template-columns:repeat(2, 1fr);}
  .fs-why .num-cell:nth-child(2){border-right:none;}
  .fs-why .spread{grid-template-columns:1fr;}
  .fs-why .spread.reverse .spread-img{order:1;}
  .fs-why .spread.reverse .spread-text{order:2;}
  .fs-why .spread-text{padding:64px 40px;}
}
@media(max-width:640px){
  .fs-why .hero-content{padding:0 24px 48px;}
  .fs-why .hero-meta{display:none;}
  .fs-why .prologue, .fs-why .pillars-wrap, .fs-why .specs,
  .fs-why .values, .fs-why .cta{padding-left:24px;padding-right:24px;}
  .fs-why .pullquote{padding:80px 24px;}
  .fs-why .pillars{grid-template-columns:1fr;}
  .fs-why .num-cell .n{font-size:46px;}
}
