/* ============================================================
   ALIMONTA : ventilated stone facades (page-specific)
   Linked AFTER css/styles.css. Reuses :root tokens; adds only
   the components this capability page needs.
   ============================================================ */

/* ---- hero / subhead band ---- */
.fac-hero{padding-top:9.5rem;padding-bottom:clamp(2.5rem,5vw,4rem);position:relative;overflow:hidden;border-bottom:1px solid var(--line-soft)}
.fac-hero__inner{max-width:62rem}
.fac-hero h1{
  font-family:var(--font-display);font-weight:600;
  font-size:clamp(2.3rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.03em;
  margin:.4rem 0 1.5rem;
}
.fac-hero__lede{font-size:clamp(1.05rem,1.7vw,1.32rem);color:rgba(244,245,242,.82);max-width:52ch;margin-bottom:2rem}
.fac-hero__cta{display:flex;flex-wrap:wrap;gap:.9rem}
.fac-hero .techbg img{top:48%;right:-3%;width:min(560px,46%);opacity:.16}
@media(max-width:760px){.fac-hero .techbg{display:none}}

/* ---- generic section heads ---- */
.fac-sec{padding-block:var(--sec)}
.fac-sec--tight{padding-block:clamp(3.5rem,8vw,7rem)}
.fac-head{max-width:60rem;margin-bottom:clamp(2.4rem,4vw,3.6rem)}
.fac-head .muted{margin-top:1.1rem;max-width:64ch}
.fac-divide{border-top:1px solid var(--line-soft)}

/* ---- "what it is" : copy + big section drawing ---- */
.fac-split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4.2rem);align-items:center}
.fac-split__copy p{color:var(--text-dim);margin-top:1rem;max-width:54ch}
.fac-drawing{
  border:1px solid var(--line);border-radius:var(--r);
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.005));
  padding:clamp(1.2rem,2.4vw,2rem);
}
.fac-drawing img{width:100%;height:auto}
.fac-drawing figcaption{
  font-family:var(--font-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--text-faint);margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line-soft);
}
.paper .fac-drawing img{filter:invert(1)}
@media(max-width:860px){.fac-split{grid-template-columns:1fr;gap:2.2rem}}

/* ---- principle ledger (rainscreen wins) ---- */
.fac-ledger{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2.6rem;
  background:var(--line-soft);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}
.fac-ledger li{background:var(--slate);padding:1.4rem 1.4rem 1.6rem;display:flex;flex-direction:column;gap:.5rem}
.fac-ledger .k{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--lime)}
.fac-ledger b{font-family:var(--font-display);font-weight:600;font-size:1.12rem;letter-spacing:-.01em;line-height:1.2}
.fac-ledger p{color:var(--text-dim);font-size:.92rem}
@media(max-width:760px){.fac-ledger{grid-template-columns:1fr}}

/* ---- two-ways delivery cards ---- */
.fac-ways{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,2.5vw,1.8rem)}
.fac-way{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:rgba(255,255,255,.02);display:flex;flex-direction:column}
.fac-way__draw{background:var(--ink-900);padding:clamp(1.4rem,2.5vw,2rem) clamp(1.4rem,2.5vw,2.2rem) 1rem;border-bottom:1px solid var(--line-soft)}
.fac-way__draw img{width:100%;height:auto}
.paper .fac-way__draw{background:#EDE6D7}
.paper .fac-way__draw img{filter:invert(1)}
.fac-way__body{padding:clamp(1.4rem,2.4vw,1.9rem)}
.fac-way__tag{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--lime)}
.fac-way__body h3{font-family:var(--font-display);font-weight:600;font-size:1.3rem;letter-spacing:-.01em;margin:.5rem 0 .7rem;line-height:1.12}
.fac-way__body p{color:var(--text-dim);font-size:.96rem}
.fac-way__list{margin-top:1.1rem;display:flex;flex-direction:column;gap:.5rem}
.fac-way__list li{display:flex;gap:.7rem;font-size:.92rem;color:var(--text)}
.fac-way__list li::before{content:"";width:6px;height:6px;background:var(--lime);transform:rotate(45deg);flex:none;margin-top:.5rem}
.fac-tradeoff{margin-top:2.4rem}
@media(max-width:860px){.fac-ways{grid-template-columns:1fr}}

/* ---- supply boundary table ---- */
.fac-boundary{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-top:.6rem}
.fac-row{display:grid;grid-template-columns:1.1fr 1.4fr auto;gap:1rem;align-items:center;
  padding:1.05rem clamp(1.2rem,2.4vw,1.8rem);border-top:1px solid var(--line-soft)}
.fac-row:first-child{border-top:0}
.fac-row__head{background:rgba(255,255,255,.02);border-top:0}
.fac-row__head span{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}
.fac-row .el{font-family:var(--font-display);font-weight:600;font-size:1.02rem}
.fac-row .de{color:var(--text-dim);font-size:.93rem}
.fac-own{justify-self:end;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;
  padding:.34rem .7rem;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.fac-own--us{background:var(--lime);color:#1b1d16;border-color:transparent}
.paper .fac-own--us{background:#A6CB1F}
.fac-own--them{color:var(--text-dim)}
.fac-note{margin-top:1.4rem;border-left:2px solid var(--lime);padding:.3rem 0 .3rem 1.2rem;
  font-family:var(--font-display);font-weight:500;font-size:1.12rem;line-height:1.4;color:var(--text)}
@media(max-width:680px){
  .fac-row{grid-template-columns:1fr auto;gap:.5rem .8rem}
  .fac-row .de{grid-column:1 / -1}
  .fac-row__head{display:none}
}

/* ---- selecting stone : test ledger ---- */
.fac-tests{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:.4rem;
  background:var(--line-soft);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}
.fac-test{background:var(--slate);padding:1.35rem 1.5rem;display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.1rem;align-items:baseline}
.fac-test__code{font-family:var(--font-mono);font-weight:700;font-size:.92rem;letter-spacing:.04em;color:var(--lime);white-space:nowrap}
.fac-test__what{grid-column:2}
.fac-test__what b{font-family:var(--font-display);font-weight:600;font-size:1rem;display:block;margin-bottom:.15rem}
.fac-test__what span{color:var(--text-dim);font-size:.9rem;line-height:1.5}
@media(max-width:860px){.fac-tests{grid-template-columns:1fr}}

/* ---- differentiator chain ---- */
.fac-chain{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.5rem);margin-top:.4rem}
.fac-link{border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.4rem,2.4vw,1.9rem);background:rgba(255,255,255,.02);display:flex;flex-direction:column;gap:.6rem}
.fac-link__no{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;color:var(--lime)}
.fac-link h3{font-family:var(--font-display);font-weight:600;font-size:1.18rem;letter-spacing:-.01em;line-height:1.16}
.fac-link p{color:var(--text-dim);font-size:.94rem}
@media(max-width:680px){.fac-chain{grid-template-columns:1fr}}

/* ---- take-off flow strip ---- */
.fac-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:.4rem;
  background:var(--line-soft);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}
.fac-step{background:var(--slate);padding:1.4rem 1.4rem 1.6rem;display:flex;flex-direction:column;gap:.55rem;position:relative}
.fac-step__no{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.16em;color:var(--lime)}
.fac-step b{font-family:var(--font-display);font-weight:600;font-size:1.02rem;line-height:1.18}
.fac-step p{color:var(--text-dim);font-size:.88rem;line-height:1.5}
.fac-pricing-note{margin-top:2rem;max-width:64ch}
@media(max-width:860px){.fac-flow{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fac-flow{grid-template-columns:1fr}}

/* ---- proof gallery (reuse .proof__grid look, scoped) ---- */
.fac-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px;margin-top:.4rem}
.fac-gallery figure{position:relative;overflow:hidden;border-radius:14px;grid-column:span 2;grid-row:span 1;height:100%;min-height:0}
.fac-gallery .gtall{grid-row:span 2}
.fac-gallery .gwide{grid-column:span 2}
.fac-gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.95) contrast(1.02);display:block}
.fac-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:.9rem 1rem;
  font-family:var(--font-mono);font-size:.68rem;letter-spacing:.05em;color:var(--text);
  background:linear-gradient(transparent,rgba(20,21,25,.92))}
@media(max-width:860px){.fac-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}.fac-gallery .gwide{grid-column:span 2}}
@media(max-width:560px){.fac-gallery{grid-template-columns:1fr;grid-auto-rows:230px}.fac-gallery .gtall,.fac-gallery .gwide{grid-row:span 1;grid-column:span 1}}

/* ---- closing CTA ---- */
.fac-close{text-align:center;padding-block:var(--sec)}
.fac-close h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.9rem,4.4vw,3.2rem);line-height:1.06;letter-spacing:-.02em;max-width:24ch;margin:.6rem auto 1.8rem}
.fac-close__cta{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}
