/* =========================================================
   FACILITIES PAGE (facilities.html only)
   Uses the shared tokens and components from site.css.
   ========================================================= */

.page-facilities{
  --fac-space:5rem;
  --fac-h2:clamp(2rem,3vw,3rem);
}

/* active navigation item */
.header nav a[aria-current="page"]{border-bottom-color:var(--orange);color:var(--ink)}

/* ---------- shared rhythm ---------- */
.fac-section{padding:var(--fac-space) var(--pad)}
.fac-section h2{
  margin:0;
  font-size:var(--fac-h2);
  font-weight:800;line-height:1.05;letter-spacing:-.035em;color:var(--ink);
}
.fac-section .eyebrow{margin-bottom:.8rem}
.fac-copy p:not(.eyebrow),
.fac-lead{color:#4f4a45;font-size:1.06rem;line-height:1.6}
.fac-figure{margin:0}
.fac-figure img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee}
.fac-figure figcaption{
  margin-top:.75rem;padding-left:.8rem;
  border-left:2px solid var(--orange);
  font-size:.84rem;line-height:1.5;color:var(--muted);
}

/* ---------- hero ---------- */
.fac-hero{
  position:relative;overflow:hidden;
  min-height:min(76vh,720px);
  display:flex;align-items:flex-end;
  background:var(--black);color:#fff;
}
.fac-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.fac-hero-shade{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(8,7,6,.86) 0%,rgba(8,7,6,.62) 32%,rgba(8,7,6,.12) 62%,rgba(8,7,6,0) 80%),
    linear-gradient(0deg,rgba(8,7,6,.55) 0%,rgba(8,7,6,0) 38%);
}
.fac-hero-content{position:relative;width:100%;padding:7rem var(--pad) 4.5rem}
.fac-hero h1{
  margin:0;max-width:13ch;color:#fff;
  font-size:clamp(2.5rem,5.4vw,5.4rem);
  font-weight:800;line-height:1;letter-spacing:-.04em;
}
.fac-hero-intro{max-width:600px;margin:1.6rem 0 0;color:#ece8e3;font-size:1.06rem;line-height:1.65}

/* ---------- production base ---------- */
.fac-base{
  display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5.5rem);align-items:start;
  border-bottom:1px solid var(--line);
}
.fac-lead{max-width:680px;margin:0;padding-top:1.6rem;font-size:1.12rem}

/* ---------- history timeline ---------- */
.fac-history{border-bottom:1px solid var(--line)}
.fac-timeline{
  position:relative;
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.4rem;
  margin:2.6rem 0 0;padding:0;list-style:none;
}
.fac-timeline::before{
  content:"";position:absolute;left:0;right:0;top:5px;
  height:1px;background:var(--line);
}
.fac-timeline li{position:relative;padding-top:2rem}
.fac-timeline li::before{
  content:"";position:absolute;left:0;top:0;
  width:11px;height:11px;border-radius:50%;
  background:var(--orange);box-shadow:0 0 0 4px #fff;
}
.fac-year{display:block;font-size:clamp(1.7rem,2.2vw,2.2rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--ink)}
.fac-timeline h3{margin:.65rem 0 .45rem;font-size:1.02rem;font-weight:700;color:var(--ink)}
.fac-timeline p{margin:0;color:#4f4a45;font-size:.95rem;line-height:1.6}

/* ---------- image / text features ---------- */
.fac-feature{
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(2.5rem,5vw,5.5rem);
}
.fac-feature--reverse{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
.fac-feature + .fac-feature{padding-top:0}
.fac-copy p:not(.eyebrow){max-width:540px;margin:1.1rem 0 0}

.fac-check{
  display:grid;grid-template-columns:150px 1fr;gap:1.2rem;align-items:center;
  margin-top:2rem;padding-top:1.6rem;
  border-top:1px solid var(--line);
}
.fac-check img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#eee}
.fac-check h3{margin:0 0 .35rem;font-size:1.02rem;font-weight:700;color:var(--ink)}
.fac-copy .fac-check p{margin:0;font-size:.95rem;line-height:1.6}

/* ---------- location ---------- */
.fac-location{background:#f6f4f1;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fac-location-inner{
  display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5.5rem);align-items:start;
}
.fac-directions{
  display:inline-flex;align-items:center;gap:.6rem;min-height:52px;margin-top:1.8rem;
  padding:.9rem 1.5rem;
  background:var(--orange);border:1px solid var(--orange);color:var(--ink);
  text-decoration:none;font-size:.92rem;font-weight:700;
  transition:background .2s,border-color .2s;
}
.fac-directions:hover{background:var(--orange-dark);border-color:var(--orange-dark)}
.fac-contact{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem 2.4rem;
  margin:0;padding-left:1.8rem;border-left:2px solid var(--orange);
}
.fac-contact div:first-child{grid-column:1/-1}
.fac-contact dt{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.fac-contact dd{margin:.4rem 0 0;font-size:1.12rem;line-height:1.55;color:var(--ink)}
.fac-contact address{font-style:normal;font-size:1.22rem;font-weight:600}
.fac-contact a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(239,138,23,.6);text-underline-offset:4px}
.fac-contact a:hover{color:var(--orange-dark)}

/* ---------- closing invitation (dark band) ---------- */
.fac-cta{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:center;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(10,9,8,.95) 0%,rgba(10,9,8,.86) 55%,rgba(10,9,8,.78) 100%),
    url("../images/contactus%20copy.jpg") center/cover no-repeat;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.fac-cta-text{padding-left:1.9rem;border-left:2px solid var(--orange)}
.fac-cta h2{color:#fff}
.fac-cta-text p:not(.eyebrow){max-width:560px;margin:1rem 0 0;color:#d9d4ce;font-size:1.06rem;line-height:1.6}
.fac-cta .enquiry-actions{margin-top:0;flex-wrap:nowrap}
.fac-cta .enquiry-secondary-button{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
.fac-cta .enquiry-secondary-button:hover,
.fac-cta .enquiry-secondary-button:focus-visible{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}

/* ---------- responsive ---------- */
@media(max-width:1000px){
  .page-facilities{--fac-space:4rem}
  .fac-base,
  .fac-feature,
  .fac-feature--reverse,
  .fac-location-inner,
  .fac-cta{grid-template-columns:1fr}
  .fac-base{gap:1rem}
  .fac-lead{padding-top:0}
  .fac-timeline{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2.6rem}
  .fac-timeline::before{display:none}
  .fac-feature--reverse .fac-figure{order:-1}
  .fac-cta{gap:2rem}
  .fac-cta .enquiry-actions{flex-wrap:wrap}
}
@media(max-width:680px){
  .page-facilities{--fac-space:3.2rem}
  .fac-section{padding-left:var(--gutter);padding-right:var(--gutter)}
  .fac-hero{min-height:560px}
  .fac-hero-content{padding:5rem var(--gutter) 3rem}
  .fac-hero-shade{
    background:linear-gradient(0deg,rgba(8,7,6,.9) 0%,rgba(8,7,6,.7) 50%,rgba(8,7,6,.15) 100%);
  }
  .fac-hero-intro{font-size:1rem}
  .fac-lead{font-size:1.06rem}

  /* vertical timeline */
  .fac-timeline{grid-template-columns:1fr;gap:2rem;padding-left:1.6rem}
  .fac-timeline::before{display:block;left:5px;right:auto;top:6px;bottom:6px;width:1px;height:auto}
  .fac-timeline li{padding-top:0}
  .fac-timeline li::before{left:-1.6rem;top:.55rem}

  .fac-check{grid-template-columns:96px 1fr;gap:1rem}
  .fac-contact{grid-template-columns:1fr;gap:1.3rem;padding-left:1.2rem}
  .fac-cta-text{padding-left:1.3rem}
  .fac-cta .enquiry-actions{flex-direction:column;align-items:stretch}
}
