/* Our Work page only. Loads AFTER the frozen shared site.css.
   Reuses .pj-media / .pj-tag / .checks / .steps / .band from the shared system. */

/* hero shows a before/after pair behind the scrim */
.hero-ba-media{display:grid;grid-template-columns:1fr 1fr}
.hero-ba-media picture{display:block;height:100%}
.hero-ba-media img{width:100%;height:100%;object-fit:cover}
@media (max-width:767px){.hero-ba-media{grid-template-columns:1fr}.hero-ba-media picture:last-child{display:none}}

/* project cards */
.sec-featured{background:#fff}
.sec-featured.is-alt{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.proj-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px}
.proj-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.proj-head .sec-num{margin:0}
.proj-head h2{margin:0;font-size:clamp(1.35rem,2.2vw,1.8rem)}
.proj-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:34px;align-items:start}
.proj-grid .pj-media{border-radius:12px;overflow:hidden}
.proj-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.proj-cols>div{border-left:1px solid var(--line);padding-left:18px}
.proj-cols>div:first-child{border-left:0;padding-left:0}
.proj-ico{display:block;width:34px;height:34px;margin-bottom:10px}
.proj-ico svg{width:34px;height:34px;fill:none;stroke:var(--orange);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.proj-cols h3{font-size:.95rem;margin-bottom:.45em}
.proj-cols p{font-size:.88rem;margin:0}
.proj-cols .checks li{font-size:.86rem;padding-left:26px}
.proj-cta{margin:26px 0 0}

/* more transformations */
.sec-more{background:#fff}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.more-grid .proj-card h3{font-size:1.05rem;margin-bottom:16px}
.more-grid .pj-media{border-radius:12px;overflow:hidden;margin-bottom:18px}
.more-grid p{font-size:.92rem}
.more-label{color:var(--orange);font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:14px 0 10px}
.more-grid .checks{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}

/* detail strip inside the black band */
.detail-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.detail-strip li{text-align:center}
.detail-strip picture{display:block;border-radius:10px;overflow:hidden;margin-bottom:10px}
.detail-strip img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.detail-strip span{display:block;color:#fff;font-size:.82rem;font-weight:700}

/* five-step process (shared .steps is four across) */
.steps-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.steps-5::before{left:10%;right:10%}

/* closing portfolio banner */
.sec-portfolio{background:var(--cream);border-top:1px solid var(--line)}
.portfolio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:44px;align-items:center}
.portfolio-media picture{display:block;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.portfolio-media img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}

/* closing CTA band */
.band-cta{border-top:1px solid rgba(255,255,255,.12)}
.band-cta-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}
.band-cta h2{color:#fff;margin-bottom:.4em}
.band-cta p{color:#C9CDD3;margin:0}
.band-cta-actions{display:flex;flex-direction:column;gap:12px}

@media (max-width:1024px){
  .proj-grid,.proj-grid.is-flip{grid-template-columns:1fr;gap:26px}
  .proj-grid.is-flip .proj-cols{order:2}
  .more-grid,.portfolio-grid,.band-cta-grid{grid-template-columns:1fr;gap:28px}
  .detail-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .steps-5{grid-template-columns:1fr 1fr}
  .steps-5::before{display:none}
}
@media (max-width:767px){
  .proj-card{padding:20px}
  .proj-cols{grid-template-columns:1fr;gap:18px}
  .proj-cols>div{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:16px}
  .proj-cols>div:first-child{border-top:0;padding-top:0}
  .detail-strip{grid-template-columns:1fr 1fr}
  .steps-5{grid-template-columns:1fr}
  .more-grid .checks{grid-template-columns:1fr}
  .band-cta-actions .btn{width:100%}
}

/* hero before/after tags, per the Our Work mockup */
.hero-ba-media figure{margin:0;position:relative;height:100%;overflow:hidden}
.hero-ba-media figure .pj-tag{z-index:1}

/* ---- warranty (verbatim from RENEWITHQ.md) ---- */
.sec-warranty{background:var(--cream);border-top:1px solid var(--line)}
.warranty-card{display:flex;gap:22px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:5px solid var(--orange);border-radius:var(--radius);padding:30px 32px}
.warranty-ico{flex:none;width:52px;height:52px;border-radius:50%;border:2px solid var(--orange);display:grid;place-items:center}
.warranty-ico svg{width:26px;height:26px;fill:none;stroke:var(--orange);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.warranty-card h2{font-size:1.25rem;margin-bottom:.4em}
.warranty-text{margin:0;font-size:1rem}
@media (max-width:767px){.warranty-card{flex-direction:column;gap:16px;padding:22px}}
