/* ============================================================
   FLAT & TORCH DOWN page (Flat-Torch-Down-Roofing.html)
   Plates are cut from the 803x1958 comp; headings and labels that
   repeat the artwork are screen-reader only so nothing prints twice.
   ============================================================ */
.torchpage{--tk:.1245cqw;}
.td-hero{background:#fff;}
.td-hero > img.plate,.td-pro > img.plate,.td-cta > img.plate{display:block;width:100%;height:auto;}

.td-cards{
  list-style:none;margin:0;padding:calc(10*var(--tk)) calc(22*var(--tk)) calc(16*var(--tk));background:#fff;
  display:grid;grid-template-columns:repeat(3,1fr);gap:calc(14*var(--tk));
}
.td-cards img{display:block;width:100%;height:auto;border-radius:calc(3*var(--tk));}
.td-cards b{
  display:block;margin-top:calc(8*var(--tk));text-align:center;background:#0a2150;color:#fff;
  padding:calc(7*var(--tk)) calc(8*var(--tk));border-radius:calc(2*var(--tk));
  font-family:var(--ui);font-weight:800;font-size:calc(12*var(--tk));line-height:1.2;
}

.td-system{background:#fff;display:grid;grid-template-columns:430fr 363fr;align-items:stretch;}
.td-system img{display:block;width:100%;height:100%;object-fit:cover;}

.td-types{background:#fff;padding:calc(14*var(--tk)) calc(22*var(--tk)) calc(10*var(--tk));}
.td-types h2{
  margin:0 0 calc(12*var(--tk));font-family:var(--ui);font-weight:800;color:var(--navy);
  font-size:calc(26*var(--tk));letter-spacing:-.01em;
}
.td-types ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:calc(12*var(--tk));}
.td-types img{display:block;width:100%;height:auto;border-radius:calc(3*var(--tk));}
.td-types b{
  display:block;margin-top:calc(7*var(--tk));text-align:center;background:#0a2150;color:#fff;
  padding:calc(6*var(--tk)) calc(6*var(--tk));border-radius:calc(2*var(--tk));
  font-family:var(--ui);font-weight:800;font-size:calc(11.5*var(--tk));
}

.td-ba{background:#fff;padding:calc(10*var(--tk)) calc(22*var(--tk)) calc(18*var(--tk));}
.td-ba h2{margin:0 0 calc(12*var(--tk));font-family:var(--ui);font-weight:900;color:var(--navy);font-size:calc(34*var(--tk));}
.td-ba h2 span{color:var(--red);}
.td-ba > div{display:grid;grid-template-columns:1fr 1fr;gap:calc(10*var(--tk));}
.td-ba figure{position:relative;margin:0;}
.td-ba img{display:block;width:100%;height:100%;object-fit:cover;border-radius:calc(3*var(--tk));}
.td-ba figcaption{
  position:absolute;left:0;bottom:0;background:#0a2150;color:#fff;
  padding:calc(7*var(--tk)) calc(16*var(--tk));border-radius:0 calc(3*var(--tk)) 0 calc(3*var(--tk));
  font-family:var(--ui);font-weight:800;font-size:calc(15*var(--tk));letter-spacing:.02em;
}
.td-ba figcaption.after{background:var(--red);}

.td-cta{position:relative;}
.td-cta-hit{position:absolute;inset:0;display:block;}

@media (max-width:1000px){
  .torchpage{--tk:1px;}
  .td-cards{grid-template-columns:1fr;gap:14px;padding:18px 16px;}
  .td-cards b{font-size:.92rem;}
  .td-system{grid-template-columns:1fr;}
  .td-types{padding:22px 16px 10px;}
  .td-types h2{font-size:1.4rem;}
  .td-types ul{grid-template-columns:repeat(2,1fr);gap:14px 10px;}
  .td-types b{font-size:.8rem;}
  .td-ba{padding:18px 16px 24px;}
  .td-ba h2{font-size:1.7rem;}
  .td-ba > div{grid-template-columns:1fr;gap:12px;}
  .td-ba figcaption{font-size:.95rem;padding:6px 14px;}
}

/* the three feature cards are one piece of artwork under the hero */
.td-cards-band{background:#fff;}
.td-cards-band > img.plate{display:block;width:100%;height:auto;}
