
.service-module--emergency {
  --svc-accent: #dc2626;
  --svc-accent-dark: #991b1b;
  --svc-soft: #fff1f2;
}
.emergency-command { padding: 18px 0 14px; }
.emergency-command__grid { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(300px,.82fr); gap: 18px; align-items: stretch; }
.emergency-command__copy,
.emergency-command__media { border-radius: 28px; box-shadow: var(--svc-shadow); border: 1px solid rgba(255,255,255,.76); }
.emergency-command__copy {
  padding: clamp(24px, 3.2vw, 36px);
  background: linear-gradient(135deg, #7f1d1d, #111827 68%);
  color: #fff;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.emergency-command__copy::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(-45deg, rgba(255,255,255,.05) 0 1px, transparent 1px 18px); pointer-events: none; }
.emergency-command__copy > * { position: relative; z-index: 1; }
.emergency-command h1 { margin: 14px 0 10px; max-width: 620px; font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.03; letter-spacing: -.04em; font-weight: 650; }
.emergency-command p { margin: 0; max-width: 580px; color: rgba(255,255,255,.88); line-height: 1.58; font-size: 1.02rem; }
.emergency-pulse { display: inline-flex; width: max-content; align-items: center; gap: 10px; padding: 8px 13px; border-radius: 999px; color: #fff; background: rgba(239,68,68,.32); font-weight: 650; text-transform: uppercase; letter-spacing: .075em; font-size: .72rem; }
.emergency-pulse::before { content: ""; width: 9px; height: 9px; border-radius: 999px; background: #22c55e; box-shadow: 0 0 0 8px rgba(34,197,94,.14); }
.service-module main .emergency-command .svc-btn--ghost { color: #fff; background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.24); }
.emergency-command__quote-note {
  margin-top: 16px;
  display: grid;
  gap: 4px;
  max-width: 360px;
  padding: 14px 16px;
  border-radius: 16px;
  color: #fff;
  background: rgba(15,23,42,.46);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(10px);
}
.emergency-command__quote-note strong { font-size: .95rem; }
.emergency-command__quote-note span { color: rgba(255,255,255,.84); line-height: 1.45; }
.emergency-command__media { position: relative; overflow: hidden; background: #111827; min-height: 300px; }
.emergency-command__media img { width: 100%; height: 100%; display: block; object-fit: cover; }
.emergency-command__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(15,23,42,.06) 45%, rgba(15,23,42,.42) 100%); pointer-events: none; }
.emergency-command__trust { position: absolute; left: 14px; right: 14px; bottom: 14px; z-index: 2; display: flex; flex-wrap: wrap; gap: 8px; }
.emergency-command__trust span { display: inline-flex; align-items: center; min-height: 31px; padding: 0 10px; border-radius: 999px; background: rgba(15,23,42,.72); color: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.18); font-weight: 560; font-size: .84rem; backdrop-filter: blur(10px); }
.emergency-essentials .svc-bullet-list li { background: #fff7ed; border-color: rgba(220,38,38,.18); }
.emergency-essentials__steps .svc-process__step span { background: #111827; }
.service-module--emergency .svc-case-study { border-color: rgba(220,38,38,.16); background: linear-gradient(180deg, #fff, #fff7f7); }
.service-module--emergency .svc-case-study__step { border-color: rgba(220,38,38,.12); }
.service-module--emergency .svc-case-study__step figure::after { background: none; }
@media (max-width: 1040px) {
  .emergency-command__grid { grid-template-columns: 1fr; }
  .emergency-command__copy, .emergency-command__media { min-height: auto; }
  .emergency-command__media { min-height: 260px; }
}
@media (max-width: 680px) {
  .emergency-command { padding-top: 14px; }
  .emergency-command__copy, .emergency-command__media { border-radius: 22px; }
  .emergency-command__copy { padding: 20px; }
  .emergency-command__media { min-height: 230px; }
  .emergency-command__trust { left: 10px; right: 10px; bottom: 10px; }
}


/* Shattered storefront glass: unique emergency landing and case study */
.emergency-landing-intel { display: grid; gap: 18px; }
.emergency-landing-intel > .svc-panel,
.emergency-landing-intel > .svc-card-section { margin: 0; }
.emergency-landing-intel__situations { background: linear-gradient(135deg, #fff, #fff7ed); border-color: rgba(220,38,38,.16); }
.emergency-landing-intel__steps { background: linear-gradient(135deg, #fff, #f8fafc); }
.emergency-landing-intel__checks { background: #0f172a; color: #fff; }
.emergency-landing-intel__checks .svc-section-head h2,
.emergency-landing-intel__checks .svc-mini-label { color: #fff; }
.emergency-landing-intel__checks .svc-chip-row span { background: rgba(255,255,255,.1); color: #fff; border-color: rgba(255,255,255,.2); }
.emergency-repair-options .svc-card { border-top: 4px solid #dc2626; }
.emergency-landing-intel__quote .svc-check { background: #fff7ed; border-color: rgba(220,38,38,.14); }
.service-module--emergency[data-service="shattered-storefront-glass-response"] .svc-case-study__step { grid-template-columns: minmax(260px,.82fr) minmax(0,1.18fr); padding: 16px; }
.service-module--emergency[data-service="shattered-storefront-glass-response"] .svc-case-study__step figure { aspect-ratio: 1 / 1; }
.service-module--emergency[data-service="shattered-storefront-glass-response"] .svc-case-study__step p { color: #334155; }
@media (max-width: 820px) {
  .service-module--emergency[data-service="shattered-storefront-glass-response"] .svc-case-study__step { grid-template-columns: 1fr; }
}


/* Residential emergency window: vertical before-and-after case studies */
.service-module--emergency[data-service="residential-emergency-window-repair"] .svc-case-study__step {
  grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
  padding: 16px;
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .svc-case-study__step figure {
  aspect-ratio: 3 / 4;
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .svc-case-study__step p {
  color: #334155;
}
@media (max-width: 820px) {
  .service-module--emergency[data-service="residential-emergency-window-repair"] .svc-case-study__step {
    grid-template-columns: 1fr;
  }
}


/* Commercial entrance failure: mixed square and vertical repair evidence */
.service-module--emergency[data-service="commercial-entrance-failures"] .svc-case-study__step {
  grid-template-columns: minmax(260px,.82fr) minmax(0,1.18fr);
  padding: 16px;
}
.service-module--emergency[data-service="commercial-entrance-failures"] .svc-case-study__step figure {
  aspect-ratio: 1 / 1;
}
.service-module--emergency[data-service="commercial-entrance-failures"] .svc-case-study__step:nth-child(n+4) figure {
  aspect-ratio: 3 / 4;
}
.service-module--emergency[data-service="commercial-entrance-failures"] .svc-case-study__step p {
  color: #334155;
}
@media (max-width: 820px) {
  .service-module--emergency[data-service="commercial-entrance-failures"] .svc-case-study__step {
    grid-template-columns: 1fr;
  }
}


/* Emergency board-up: vertical before-and-after evidence across opening types */
.service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step {
  grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
  padding: 16px;
}
.service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step figure {
  aspect-ratio: 3 / 4;
}
.service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step p {
  color: #334155;
}
@media (max-width: 820px) {
  .service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step {
    grid-template-columns: 1fr;
  }
}


/* Break-in and forced-entry repair: square repair detail plus vertical door reinstallation */
.service-module--emergency[data-service="break-in-forced-entry-repair"] .svc-case-study__step {
  grid-template-columns: minmax(260px,.82fr) minmax(0,1.18fr);
  padding: 16px;
}
.service-module--emergency[data-service="break-in-forced-entry-repair"] .svc-case-study__step figure {
  aspect-ratio: 1 / 1;
}
.service-module--emergency[data-service="break-in-forced-entry-repair"] .svc-case-study__step:nth-child(n+7) figure {
  aspect-ratio: 3 / 4;
}
.service-module--emergency[data-service="break-in-forced-entry-repair"] .svc-case-study__step p {
  color: #334155;
}
@media (max-width: 820px) {
  .service-module--emergency[data-service="break-in-forced-entry-repair"] .svc-case-study__step {
    grid-template-columns: 1fr;
  }
}


/* Residential emergency window: calm, home-focused presentation */
.service-module--emergency[data-service="residential-emergency-window-repair"] {
  --res-home-ink: #10233f;
  --res-home-blue: #2563eb;
  --res-home-sky: #eaf3ff;
  --res-home-warm: #fff8eb;
  --res-home-green: #0f766e;
}
.residential-emergency-intro {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 24px;
  margin-top: 22px;
  margin-bottom: 22px;
  padding: clamp(24px, 4vw, 46px);
  border: 1px solid rgba(37,99,235,.14);
  border-radius: 28px;
  background:
    radial-gradient(circle at 12% 18%, rgba(37,99,235,.12), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f4f8ff 62%, #fff9ee 100%);
  box-shadow: 0 24px 70px rgba(15,35,63,.08);
}
.residential-emergency-intro__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.residential-emergency-intro__copy h2 {
  max-width: 720px;
  margin: 10px 0 14px;
  color: var(--res-home-ink);
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.06;
  letter-spacing: -.04em;
}
.residential-emergency-intro__copy > p {
  max-width: 700px;
  margin: 0;
  color: #475569;
  font-size: 1.02rem;
  line-height: 1.75;
}
.residential-emergency-intro__note {
  margin-top: 20px;
  padding: 14px 16px;
  border-left: 4px solid var(--res-home-green);
  border-radius: 0 14px 14px 0;
  background: rgba(255,255,255,.78);
  color: #1e3a4f;
  font-weight: 650;
  line-height: 1.55;
}
.residential-emergency-priorities {
  display: grid;
  gap: 12px;
}
.residential-emergency-priority {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  padding: 18px;
  border: 1px solid rgba(37,99,235,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 12px 34px rgba(15,35,63,.05);
}
.residential-emergency-priority > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--res-home-ink);
  color: #fff;
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .04em;
}
.residential-emergency-priority h3 {
  margin: 2px 0 6px;
  color: var(--res-home-ink);
  font-size: 1.05rem;
}
.residential-emergency-priority p {
  margin: 0;
  color: #64748b;
  line-height: 1.55;
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .emergency-landing-intel__situations {
  background: linear-gradient(135deg, #fff, var(--res-home-warm));
  border-color: rgba(217,119,6,.14);
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .emergency-landing-intel__steps {
  background: linear-gradient(135deg, #fff, var(--res-home-sky));
  border-color: rgba(37,99,235,.13);
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .emergency-landing-intel__checks {
  background: linear-gradient(135deg, #10233f, #173a64);
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .emergency-repair-options .svc-card {
  border-top-color: var(--res-home-blue);
  background: linear-gradient(180deg, #fff, #f8fbff);
}
.service-module--emergency[data-service="residential-emergency-window-repair"] .emergency-landing-intel__quote .svc-check {
  background: #f8fbff;
  border-color: rgba(37,99,235,.12);
}
.residential-case-showcase {
  padding: clamp(22px, 3vw, 34px);
  background: linear-gradient(180deg, #fff, #f8fbff);
  border-color: rgba(37,99,235,.14);
}
.residential-case-showcase__head {
  max-width: 900px;
}
.residential-case-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 22px;
}
.residential-case-card {
  overflow: hidden;
  border: 1px solid rgba(37,99,235,.13);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(15,35,63,.07);
}
.residential-case-card__header {
  padding: 22px 22px 18px;
}
.residential-case-card__header > span {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--res-home-sky);
  color: #1d4ed8;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.residential-case-card__header h3 {
  margin: 0 0 10px;
  color: var(--res-home-ink);
  font-size: clamp(1.3rem, 2vw, 1.7rem);
  line-height: 1.17;
  letter-spacing: -.025em;
}
.residential-case-card__header p {
  margin: 0;
  color: #64748b;
  line-height: 1.6;
}
.residential-case-card__photos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  border-top: 1px solid rgba(37,99,235,.1);
}
.residential-case-photo {
  margin: 0;
  min-width: 0;
}
.residential-case-photo + .residential-case-photo {
  border-left: 1px solid rgba(37,99,235,.1);
}
.residential-case-photo__image {
  position: relative;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #e8eef7;
}
.residential-case-photo__image > span {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(15,35,63,.86);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.residential-case-photo:nth-child(2) .residential-case-photo__image > span {
  background: rgba(15,118,110,.9);
}
.residential-case-photo__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.residential-case-photo figcaption {
  padding: 16px;
}
.residential-case-photo h4 {
  margin: 0 0 8px;
  color: var(--res-home-ink);
  font-size: .98rem;
  line-height: 1.28;
}
.residential-case-photo p {
  margin: 0;
  color: #64748b;
  font-size: .9rem;
  line-height: 1.55;
}
@media (max-width: 980px) {
  .residential-emergency-intro,
  .residential-case-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 680px) {
  .residential-emergency-intro {
    padding: 20px;
    border-radius: 22px;
  }
  .residential-emergency-priority {
    grid-template-columns: 40px minmax(0,1fr);
    padding: 15px;
  }
  .residential-emergency-priority > span {
    width: 38px;
    height: 38px;
  }
  .residential-case-showcase {
    padding: 18px;
  }
  .residential-case-card__photos {
    grid-template-columns: 1fr;
  }
  .residential-case-photo + .residential-case-photo {
    border-left: 0;
    border-top: 1px solid rgba(37,99,235,.1);
  }
  .residential-case-photo__image {
    aspect-ratio: 4 / 5;
  }
}


/* Emergency commercial entrance: full steel door-and-frame replacement case */
.service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case {
  margin-top: 18px;
}
.service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case .svc-case-study {
  background: linear-gradient(180deg, #ffffff, #f4f8ff);
  border-color: rgba(37,99,235,.16);
}
.service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case .svc-case-study__step {
  grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
}
.service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case .svc-case-study__step figure {
  aspect-ratio: 3 / 4;
}
.service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case .svc-mini-label {
  color: #1d4ed8;
}
@media (max-width: 820px) {
  .service-module--emergency[data-service="commercial-entrance-failures"] .emergency-replacement-case .svc-case-study__step {
    grid-template-columns: 1fr;
  }
}


/* DW_IMAGE_AUDIT_20260710: compact emergency evidence */
.service-module--emergency .svc-case-study__steps { gap: 14px; }
.service-module--emergency .svc-case-study__step { gap: 14px; padding: 12px; }
.service-module--emergency .svc-case-study__step img {
  object-fit: contain;
  object-position: center;
  background: #eef2f6;
}
/* One Mississauga doorway source is narrower than 3:4; keep the entire frame visible. */
.service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step:nth-child(3) figure {
  width: min(100%, 220px);
  aspect-ratio: 726 / 1280;
  justify-self: center;
}
@media (max-width: 820px) {
  .service-module--emergency .svc-case-study__step figure {
    width: min(100%, 320px);
    justify-self: center;
  }
  .service-module--emergency[data-service="emergency-board-up-securing"] .svc-case-study__step:nth-child(3) figure {
    width: min(100%, 220px);
  }
}


/* DW_IMAGE_AUDIT_20260710: residential before-and-after photos */
.residential-case-photo__image { aspect-ratio: 3 / 4; background:#eef2f6; }
.residential-case-photo__image img { object-fit: contain; object-position:center; background:#eef2f6; }
@media (max-width: 680px) {
  .residential-case-photo__image { aspect-ratio: 3 / 4; }
}

/* Consistent emergency-service photo walkthroughs.
   The generic component alternates media order, but service evidence is easier to scan
   when every photo stays in the same compact left column. */
@media (min-width: 821px) {
  .service-module--emergency[data-service] .svc-case-study__step,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step {
    grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    align-items: center;
  }
  .service-module--emergency[data-service] .svc-case-study__step > figure,
  .service-module--emergency[data-service] .svc-case-study__step--reverse > figure,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step > figure {
    grid-column: 1;
    grid-row: 1;
    order: 0;
    width: 100%;
    max-width: 280px;
    justify-self: start;
  }
  .service-module--emergency[data-service] .svc-case-study__step > div,
  .service-module--emergency[data-service] .svc-case-study__step--reverse > div,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step > div {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }
}
@media (max-width: 820px) {
  .service-module--emergency[data-service] .svc-case-study__step,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step {
    grid-template-columns: 1fr;
  }
  .service-module--emergency[data-service] .svc-case-study__step > figure,
  .service-module--emergency[data-service] .svc-case-study__step--reverse > figure,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step > figure {
    grid-column: 1;
    grid-row: 1;
    order: 0;
    width: min(100%, 280px);
    justify-self: center;
  }
  .service-module--emergency[data-service] .svc-case-study__step > div,
  .service-module--emergency[data-service] .svc-case-study__step--reverse > div,
  .service-module--emergency[data-service] .emergency-replacement-case .svc-case-study__step > div {
    grid-column: 1;
    grid-row: 2;
  }
}

/* Variant B: shared Damage to Secured landing system for every emergency page. */
.emergency-variant-b {
  --emergency-navy: #020817;
  --emergency-navy-soft: #07162d;
  --emergency-ink: #08142a;
  --emergency-red: #e11d2e;
  --emergency-red-dark: #b81222;
  --emergency-line: #d9dee7;
  --emergency-paper: #f5f4f0;
}

.emergency-variant-b .emergency-damage-layout {
  background: var(--emergency-paper);
  color: var(--emergency-ink);
  overflow: clip;
}

.emergency-damage-hero {
  position: relative;
  background:
    radial-gradient(circle at 20% 18%, rgba(37, 73, 121, .28), transparent 36%),
    var(--emergency-navy);
  color: #fff;
}

.emergency-damage-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  min-height: min(720px, calc(100svh - 82px));
  max-width: 1600px;
  margin: 0 auto;
}

.emergency-damage-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(42px, 6vw, 92px) clamp(26px, 3.4vw, 54px);
}

.emergency-damage-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: clamp(24px, 4vw, 44px);
  color: rgba(255, 255, 255, .62);
  font-size: .78rem;
  letter-spacing: .015em;
}

.emergency-damage-breadcrumb a {
  color: inherit;
  text-decoration: none;
}

.emergency-damage-breadcrumb a:hover,
.emergency-damage-breadcrumb a:focus-visible { color: #fff; }

.emergency-damage-status {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 10px;
  max-width: 100%;
  color: rgba(255, 255, 255, .86);
  font-size: .75rem;
  font-weight: 760;
  letter-spacing: .09em;
  line-height: 1.35;
  text-transform: uppercase;
}

.emergency-damage-status i {
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #31c76a;
  box-shadow: 0 0 0 7px rgba(49, 199, 106, .12);
}

.emergency-damage-hero h1 {
  max-width: 680px;
  margin: 19px 0 0;
  color: #fff;
  font-size: clamp(3rem, 4.65vw, 5rem);
  font-weight: 820;
  letter-spacing: -.065em;
  line-height: .96;
  text-wrap: balance;
}

.emergency-damage-rule {
  width: 74px;
  height: 5px;
  margin: 26px 0 22px;
  background: var(--emergency-red);
}

.emergency-damage-hero__copy > p:not(.emergency-damage-hero__phone) {
  max-width: 620px;
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  line-height: 1.65;
}

.emergency-damage-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.service-module main .emergency-damage-hero .svc-btn {
  min-height: 54px;
  padding: 0 22px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 5px;
  color: #fff;
  font-size: .96rem;
  font-weight: 760;
  letter-spacing: -.01em;
  box-shadow: none;
}

.service-module main .emergency-damage-hero .svc-btn--primary {
  border-color: var(--emergency-red);
  background: var(--emergency-red);
}

.service-module main .emergency-damage-hero .svc-btn--primary:hover,
.service-module main .emergency-damage-hero .svc-btn--primary:focus-visible {
  border-color: var(--emergency-red-dark);
  background: var(--emergency-red-dark);
}

.service-module main .emergency-damage-hero .svc-btn--ghost {
  background: rgba(255, 255, 255, .04);
}

.service-module main .emergency-damage-hero .svc-btn--ghost:hover,
.service-module main .emergency-damage-hero .svc-btn--ghost:focus-visible {
  background: rgba(255, 255, 255, .12);
}

.emergency-damage-hero__phone {
  margin: 15px 0 0;
  color: rgba(255, 255, 255, .56);
  font-size: .86rem;
}

.emergency-damage-hero__phone a {
  color: #fff;
  font-weight: 760;
  text-decoration: none;
}

.emergency-damage-hero__media {
  position: relative;
  min-height: 520px;
  margin: 0;
  overflow: hidden;
  background: #101827;
}

.emergency-damage-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(2, 8, 23, .34), transparent 23%);
}

.emergency-damage-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.emergency-damage-strip {
  border-top: 1px solid rgba(255, 255, 255, .12);
  background: var(--emergency-navy-soft);
  color: #fff;
}

.emergency-damage-strip__inner {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 0;
  padding-bottom: 0;
}

.emergency-damage-strip__inner > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 78px;
  padding: 16px 24px;
  text-align: center;
}

.emergency-damage-strip__inner > div + div {
  border-left: 1px solid rgba(255, 255, 255, .2);
}

.emergency-damage-strip__inner span {
  color: var(--emergency-red);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .08em;
}

.emergency-damage-strip__inner strong {
  color: #fff;
  font-size: .92rem;
  line-height: 1.35;
}

.emergency-damage-story {
  padding-top: clamp(58px, 8vw, 108px);
  padding-bottom: clamp(44px, 7vw, 88px);
}

.emergency-damage-story__head {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(300px, .72fr);
  align-items: end;
  gap: 44px;
  margin-bottom: 30px;
}

.emergency-damage-story__head h2 {
  max-width: 720px;
  margin: 8px 0 0;
  color: var(--emergency-ink);
  font-size: clamp(2.35rem, 4.6vw, 4.6rem);
  font-weight: 820;
  letter-spacing: -.055em;
  line-height: 1;
  text-wrap: balance;
}

.emergency-damage-story__head > p {
  margin: 0;
  color: #4b5565;
  font-size: 1rem;
  line-height: 1.68;
}

.emergency-damage-story__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid #ccd2dc;
  background: #ccd2dc;
}

.emergency-damage-story__step {
  min-width: 0;
  background: #fff;
}

.emergency-damage-story__step figure {
  position: relative;
  aspect-ratio: 4 / 4.5;
  margin: 0;
  overflow: hidden;
  background: #111827;
}

.emergency-damage-story__step figure::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 50%, rgba(2, 8, 23, .68));
}

.emergency-damage-story__step img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.emergency-damage-story__number {
  position: absolute;
  z-index: 2;
  right: 20px;
  bottom: 12px;
  color: #fff;
  font-size: clamp(3.5rem, 6vw, 6rem);
  font-weight: 850;
  letter-spacing: -.08em;
  line-height: 1;
}

.emergency-damage-story__copy {
  min-height: 218px;
  padding: 24px;
  border-top: 4px solid var(--emergency-red);
}

.emergency-damage-story__copy .svc-mini-label { color: var(--emergency-red); }

.emergency-damage-story__copy h3 {
  margin: 8px 0 9px;
  color: var(--emergency-ink);
  font-size: clamp(1.18rem, 1.8vw, 1.5rem);
  letter-spacing: -.025em;
  line-height: 1.2;
}

.emergency-damage-story__copy p {
  margin: 0;
  color: #596273;
  line-height: 1.58;
}

.emergency-variant-b .residential-emergency-intro,
.emergency-variant-b .emergency-landing-intel,
.emergency-variant-b .emergency-essentials,
.emergency-variant-b .emergency-damage-support {
  position: relative;
  z-index: 1;
}

.emergency-variant-b .residential-emergency-intro,
.emergency-variant-b .emergency-landing-intel,
.emergency-variant-b .emergency-essentials {
  margin-top: 0;
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(34px, 5vw, 70px);
}

.emergency-variant-b .emergency-landing-intel {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  background: #fff;
}

.emergency-variant-b .emergency-landing-intel > .svc-panel,
.emergency-variant-b .emergency-landing-intel > .svc-card-section {
  border: 1px solid var(--emergency-line);
  border-radius: 0;
  box-shadow: none;
}

.emergency-variant-b .emergency-landing-intel__checks,
.emergency-variant-b .emergency-repair-options,
.emergency-variant-b .emergency-landing-intel__quote {
  grid-column: 1 / -1;
}

.emergency-variant-b .emergency-landing-intel__checks {
  background: var(--emergency-navy-soft);
}

.emergency-variant-b .emergency-repair-options .svc-card {
  border: 1px solid var(--emergency-line);
  border-top: 4px solid var(--emergency-red);
  border-radius: 0;
  box-shadow: none;
}

.emergency-damage-support {
  display: grid;
  gap: 18px;
  padding-top: clamp(34px, 5vw, 70px);
  padding-bottom: clamp(50px, 7vw, 92px);
}

.emergency-variant-b .emergency-damage-support > .svc-panel,
.emergency-variant-b .emergency-damage-support > .svc-more-copy {
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

.emergency-variant-b .emergency-damage-support > .svc-quote-checklist {
  border: 0;
  background: var(--emergency-navy-soft);
  color: #fff;
}

.emergency-variant-b .emergency-damage-support > .svc-quote-checklist h2,
.emergency-variant-b .emergency-damage-support > .svc-quote-checklist p,
.emergency-variant-b .emergency-damage-support > .svc-quote-checklist .svc-mini-label { color: #fff; }

.emergency-variant-b .emergency-damage-support > .svc-quote-checklist .svc-check {
  border-color: rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .08);
  color: #fff;
}

.emergency-variant-b .svc-final-cta {
  background: var(--emergency-navy);
}

.emergency-variant-b .svc-final-cta .svc-btn--primary {
  background: var(--emergency-red);
  border-color: var(--emergency-red);
}

@media (max-width: 1040px) {
  .emergency-damage-hero__grid {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    min-height: 610px;
  }

  .emergency-damage-hero h1 { font-size: clamp(2.8rem, 5.7vw, 4.4rem); }
  .emergency-damage-story__head { grid-template-columns: 1fr; gap: 18px; }
  .emergency-damage-story__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .emergency-damage-hero__grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .emergency-damage-hero__copy {
    padding: 24px 20px 28px;
  }

  .emergency-damage-breadcrumb { display: none; }

  .emergency-damage-hero h1 {
    max-width: 560px;
    font-size: clamp(2.55rem, 11.2vw, 3.4rem);
  }

  .emergency-damage-rule { margin: 20px 0 17px; }

  .emergency-damage-hero__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-module main .emergency-damage-hero .svc-btn {
    width: 100%;
    padding: 0 14px;
    text-align: center;
  }

  .emergency-damage-hero__media {
    min-height: 0;
    aspect-ratio: 2.2 / 1;
  }

  .emergency-damage-hero__media::after { background: none; }

  .emergency-damage-strip__inner > div {
    gap: 6px;
    min-height: 70px;
    padding: 12px 7px;
    flex-direction: column;
  }

  .emergency-damage-strip__inner strong { font-size: .72rem; }

  .emergency-damage-story { padding-right: 0; padding-left: 0; }

  .emergency-damage-story__head {
    padding-right: 20px;
    padding-left: 20px;
  }

  .emergency-damage-story__head h2 {
    font-size: clamp(2.35rem, 11vw, 3rem);
  }

  .emergency-damage-story__grid {
    grid-auto-flow: column;
    grid-auto-columns: minmax(82vw, 1fr);
    grid-template-columns: none;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: thin;
  }

  .emergency-damage-story__step { scroll-snap-align: start; }
  .emergency-damage-story__copy { min-height: 205px; }

  .emergency-variant-b .emergency-landing-intel { grid-template-columns: 1fr; }

  .emergency-variant-b .emergency-landing-intel__checks,
  .emergency-variant-b .emergency-repair-options,
  .emergency-variant-b .emergency-landing-intel__quote { grid-column: auto; }
}

@media (max-width: 460px) {
  .emergency-damage-status { font-size: .67rem; }
  .emergency-damage-hero__actions { grid-template-columns: 1fr; }
  .emergency-damage-story__grid { grid-auto-columns: 88vw; }
}

/* Variant B V2: one-screen hero, broad visual story rows and compact copy. */
.emergency-variant-b .emergency-damage-hero__grid {
  height: clamp(500px, calc(100svh - 82px), 680px);
  min-height: 0;
  grid-template-columns: minmax(420px, .88fr) minmax(0, 1.12fr);
}

.emergency-variant-b .emergency-damage-hero__copy {
  min-width: 0;
  padding: clamp(30px, 4.3vw, 58px) clamp(26px, 3.5vw, 54px);
}

.emergency-variant-b .emergency-damage-hero h1 {
  max-width: 630px;
  margin-top: 16px;
  font-size: clamp(2.55rem, 3.7vw, 4rem);
  letter-spacing: -.035em;
  line-height: 1.16;
}

.emergency-variant-b .emergency-damage-rule {
  margin: 20px 0 18px;
}

.emergency-variant-b .emergency-damage-hero__copy > p:not(.emergency-damage-hero__phone) {
  max-width: 560px;
  font-size: clamp(.98rem, 1.2vw, 1.1rem);
  line-height: 1.52;
}

.emergency-variant-b .emergency-damage-hero__actions {
  margin-top: 22px;
}

.emergency-variant-b .emergency-damage-hero__media {
  height: 100%;
  min-height: 0;
}

.emergency-variant-b .emergency-damage-story {
  padding-top: clamp(54px, 7vw, 88px);
  padding-bottom: clamp(42px, 6vw, 72px);
}

.emergency-variant-b .emergency-damage-story__head {
  display: block;
  max-width: 900px;
  margin-bottom: 28px;
}

.emergency-variant-b .emergency-damage-story__head h2 {
  max-width: 900px;
  margin-top: 9px;
  font-size: clamp(2.3rem, 4.2vw, 4.2rem);
}

.emergency-variant-b .emergency-damage-story__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  overflow: visible;
  border: 0;
  background: transparent;
}

.emergency-variant-b .emergency-damage-story__step {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(340px, .78fr);
  height: clamp(320px, 46svh, 430px);
  min-height: 0;
  overflow: hidden;
  border: 1px solid #ccd2dc;
  background: #fff;
}

.emergency-variant-b .emergency-damage-story__step--reverse {
  grid-template-columns: minmax(340px, .78fr) minmax(0, 1.22fr);
}

.emergency-variant-b .emergency-damage-story__step figure {
  min-height: 0;
  height: 100%;
  aspect-ratio: auto;
  grid-column: 1;
}

.emergency-variant-b .emergency-damage-story__step--reverse figure {
  grid-column: 2;
  grid-row: 1;
}

.emergency-variant-b .emergency-damage-story__step img {
  object-position: center;
}

.emergency-variant-b .emergency-damage-story__copy {
  display: flex;
  min-height: 0;
  padding: clamp(30px, 4vw, 54px);
  border-top: 0;
  border-left: 5px solid var(--emergency-red);
  flex-direction: column;
  justify-content: center;
}

.emergency-variant-b .emergency-damage-story__step--reverse .emergency-damage-story__copy {
  grid-column: 1;
  grid-row: 1;
  border-right: 5px solid var(--emergency-red);
  border-left: 0;
}

.emergency-variant-b .emergency-damage-story__copy h3 {
  max-width: 520px;
  margin: 10px 0 12px;
  font-size: clamp(1.65rem, 2.7vw, 2.5rem);
  line-height: 1.08;
}

.emergency-variant-b .emergency-damage-story__copy p {
  max-width: 520px;
  font-size: 1rem;
  line-height: 1.55;
}

.emergency-variant-b .emergency-damage-story__number {
  right: 24px;
  bottom: 18px;
  font-size: clamp(4rem, 8vw, 7rem);
}

.emergency-next-steps {
  padding-top: clamp(42px, 6vw, 72px);
  padding-bottom: clamp(42px, 6vw, 72px);
}

.emergency-next-steps__head {
  max-width: 840px;
  margin-bottom: 24px;
}

.emergency-next-steps__head h2 {
  margin: 8px 0 0;
  color: var(--emergency-ink);
  font-size: clamp(2rem, 3.7vw, 3.6rem);
  letter-spacing: -.045em;
  line-height: 1.02;
}

.emergency-next-steps__list {
  display: grid;
  gap: 10px;
}

.emergency-next-steps__item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 34px;
  gap: 18px;
  align-items: center;
  min-height: 102px;
  padding: 18px 24px;
  border: 1px solid #ccd2dc;
  background: #fff;
  color: var(--emergency-ink);
  text-decoration: none;
  transition: border-color .18s ease, transform .18s ease, background .18s ease;
}

.emergency-next-steps__item:hover,
.emergency-next-steps__item:focus-visible {
  border-color: var(--emergency-red);
  background: #fffafa;
  transform: translateX(3px);
}

.emergency-next-steps__number {
  color: var(--emergency-red);
  font-size: .82rem;
  font-weight: 850;
  letter-spacing: .08em;
}

.emergency-next-steps__copy {
  display: grid;
  gap: 5px;
}

.emergency-next-steps__copy strong {
  color: var(--emergency-ink);
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  line-height: 1.2;
}

.emergency-next-steps__copy small {
  max-width: 850px;
  color: #596273;
  font-size: .94rem;
  line-height: 1.45;
}

.emergency-next-steps__arrow {
  color: var(--emergency-red);
  font-size: 1.5rem;
  font-weight: 800;
}

@media (max-width: 1040px) {
  .emergency-variant-b .emergency-damage-hero__grid {
    grid-template-columns: minmax(390px, .92fr) minmax(0, 1.08fr);
  }

  .emergency-variant-b .emergency-damage-hero h1 {
    font-size: clamp(2.35rem, 4.8vw, 3.5rem);
    line-height: 1.16;
  }

  .emergency-variant-b .emergency-damage-story__step,
  .emergency-variant-b .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  }
}

@media (max-width: 760px) {
  .emergency-variant-b .emergency-damage-hero__grid {
    height: calc(100svh - 68px);
    min-height: 580px;
    max-height: 760px;
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 64%) minmax(0, 36%);
  }

  .emergency-variant-b .emergency-damage-hero__copy {
    padding: 20px 20px 22px;
  }

  .emergency-variant-b .emergency-damage-hero h1 {
    max-width: 520px;
    margin-top: 12px;
    font-size: clamp(2rem, 8.7vw, 2.65rem);
    letter-spacing: -.025em;
    line-height: 1.16;
  }

  .emergency-variant-b .emergency-damage-rule {
    width: 62px;
    height: 4px;
    margin: 14px 0 13px;
  }

  .emergency-variant-b .emergency-damage-hero__copy > p:not(.emergency-damage-hero__phone) {
    max-width: 520px;
    font-size: .96rem;
    line-height: 1.45;
  }

  .emergency-variant-b .emergency-damage-hero__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
  }

  .service-module main .emergency-damage-hero .svc-btn {
    min-height: 48px;
    padding: 0 10px;
    font-size: .9rem;
  }

  .emergency-variant-b .emergency-damage-hero__media {
    aspect-ratio: auto;
  }

  .emergency-variant-b .emergency-damage-story {
    padding-right: 20px;
    padding-left: 20px;
  }

  .emergency-variant-b .emergency-damage-story__head {
    padding: 0;
  }

  .emergency-variant-b .emergency-damage-story__head h2 {
    font-size: clamp(2.15rem, 10vw, 2.85rem);
  }

  .emergency-variant-b .emergency-damage-story__grid {
    display: grid;
    grid-auto-flow: row;
    grid-template-columns: 1fr;
    gap: 18px;
    overflow: visible;
  }

  .emergency-variant-b .emergency-damage-story__step,
  .emergency-variant-b .emergency-damage-story__step--reverse {
    display: grid;
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .emergency-variant-b .emergency-damage-story__step figure,
  .emergency-variant-b .emergency-damage-story__step--reverse figure {
    grid-column: 1;
    grid-row: 1;
    height: clamp(220px, 34svh, 280px);
    min-height: 0;
    aspect-ratio: auto;
  }

  .emergency-variant-b .emergency-damage-story__copy,
  .emergency-variant-b .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    padding: 20px 22px 22px;
    border-top: 4px solid var(--emergency-red);
    border-right: 0;
    border-left: 0;
  }

  .emergency-variant-b .emergency-damage-story__copy h3 {
    font-size: clamp(1.45rem, 6.5vw, 1.9rem);
  }

  .emergency-next-steps {
    padding-right: 20px;
    padding-left: 20px;
  }

  .emergency-next-steps__item {
    grid-template-columns: 38px minmax(0, 1fr) 24px;
    gap: 12px;
    min-height: 94px;
    padding: 16px;
  }
}

@media (max-width: 380px) {
  .emergency-variant-b .emergency-damage-hero__grid {
    grid-template-rows: minmax(0, 68%) minmax(0, 32%);
  }

  .emergency-variant-b .emergency-damage-status {
    font-size: .62rem;
  }

  .emergency-variant-b .emergency-damage-hero h1 {
    font-size: clamp(1.9rem, 8.9vw, 2.35rem);
  }
}

/* Emergency storefront photo refresh: preserve the complete 2:1 work sequence. */
@media (min-width: 1201px) {
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(300px, 42%) minmax(0, 1fr);
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 42%);
  }

  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    padding: clamp(22px, 2.4vw, 36px);
  }
}

.service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step figure,
.service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse figure {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 1;
  align-self: center;
  background: #eef2f6;
}

.service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step img {
  object-fit: contain;
  object-position: center;
  background: #eef2f6;
}

@media (min-width: 761px) and (max-width: 1200px) {
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse figure {
    grid-column: 1;
    grid-row: 1;
  }

  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    padding: 22px 26px 24px;
    border-top: 4px solid var(--emergency-red);
    border-right: 0;
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse figure {
    height: auto;
    aspect-ratio: 2 / 1;
  }
}

/* Emergency board-up photo refresh: preserve both complete 2:1 collages. */
@media (min-width: 1201px) {
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(300px, 42%) minmax(0, 1fr);
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 42%);
  }

  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    padding: clamp(22px, 2.4vw, 36px);
  }
}

.service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step figure,
.service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse figure {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 1;
  align-self: center;
  background: #eef2f6;
}

.service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step img {
  object-fit: contain;
  object-position: center;
  background: #eef2f6;
}

@media (min-width: 761px) and (max-width: 1200px) {
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse figure {
    grid-column: 1;
    grid-row: 1;
  }

  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    padding: 22px 26px 24px;
    border-top: 4px solid var(--emergency-red);
    border-right: 0;
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse figure {
    height: auto;
    aspect-ratio: 2 / 1;
  }
}

/* Emergency commercial entrance photo refresh: preserve the five complete 2:1 work images. */
@media (min-width: 1201px) {
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(300px, 42%) minmax(0, 1fr);
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 42%);
  }

  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    padding: clamp(22px, 2.4vw, 36px);
  }
}

.service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
.service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 1;
  align-self: center;
  background: #eef2f6;
}

.service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step img {
  object-fit: contain;
  object-position: center;
  background: #eef2f6;
}

@media (min-width: 761px) and (max-width: 1200px) {
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
    grid-column: 1;
    grid-row: 1;
  }

  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    padding: 22px 26px 24px;
    border-top: 4px solid var(--emergency-red);
    border-right: 0;
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
    height: auto;
    aspect-ratio: 2 / 1;
  }
}

/* Residential emergency window photo refresh: preserve the complete 2:1 IGU replacement sequence. */
@media (min-width: 1201px) {
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(300px, 42%) minmax(0, 1fr);
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 42%);
  }

  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    padding: clamp(22px, 2.4vw, 36px);
  }
}

.service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
.service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 1;
  align-self: center;
  background: #eef2f6;
}

.service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step img {
  object-fit: contain;
  object-position: center;
  background: #eef2f6;
}

@media (min-width: 761px) and (max-width: 1200px) {
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
    grid-column: 1;
    grid-row: 1;
  }

  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__copy,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse .emergency-damage-story__copy {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    padding: 22px 26px 24px;
    border-top: 4px solid var(--emergency-red);
    border-right: 0;
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step figure,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse figure {
    height: auto;
    aspect-ratio: 2 / 1;
  }
}

/* Keep every complete 2:1 emergency walkthrough photo flush with the full column height. */
@media (min-width: 1201px) {
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="shattered-storefront-glass-response"] .emergency-damage-story__step--reverse,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="emergency-board-up-securing"] .emergency-damage-story__step--reverse,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="commercial-entrance-failures"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step,
  .service-module--emergency.emergency-variant-b[data-service="residential-emergency-window-repair"] .emergency-damage-story--wide-2x1 .emergency-damage-story__step--reverse {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
