/* VERO Consulting - case studies portfolio and IRIS web case study */

.case-studies-hero {
  color: rgba(255,255,255,.84);
  background:
    radial-gradient(circle at 16% 20%, rgba(54,127,200,.24), transparent 28rem),
    radial-gradient(circle at 84% 18%, rgba(54,127,200,.22), transparent 30rem),
    linear-gradient(145deg,var(--navy-950),#04142f 78%);
}
.case-studies-hero h1,
.case-studies-hero h2,
.case-studies-hero h3 { color: var(--white); }
.case-studies-hero .breadcrumb,
.case-studies-hero .breadcrumb a { color: rgba(255,255,255,.7); }
.case-studies-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:center;
}
.case-studies-hero h1 { max-width:900px; font-size:clamp(2.8rem,5.8vw,5.4rem); }
.case-studies-hero .lede { color:rgba(255,255,255,.76); }
.case-studies-hero-visual {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.75rem;
  margin:0;
  padding:.8rem;
  border:1px solid rgba(155,198,255,.22);
  border-radius:1.55rem;
  background:rgba(255,255,255,.07);
  box-shadow:0 28px 70px rgba(0,0,0,.28);
}
.case-studies-hero-visual img { width:100%; height:280px; object-fit:cover; border-radius:1rem; }
.case-studies-hero-visual img:first-child { object-position:center 58%; }
.case-constant-band {
  padding:clamp(1.5rem,3vw,2.25rem);
  border-left:5px solid var(--blue-500);
  border-radius:0 1.35rem 1.35rem 0;
  background:var(--blue-100);
}
.case-constant-band strong { display:block; margin-bottom:.6rem; color:var(--navy-950); font-size:clamp(1.35rem,2.5vw,2rem); }
.case-constant-band p { margin:0; color:var(--slate-600); font-size:1.06rem; }
.case-portfolio-grid { display:grid; gap:clamp(2rem,5vw,4rem); }
.case-portfolio-card {
  display:grid;
  grid-template-columns:minmax(340px,.92fr) minmax(0,1.08fr);
  overflow:hidden;
  border:1px solid var(--slate-200);
  border-radius:1.7rem;
  background:var(--white);
  box-shadow:var(--shadow-md);
}
.case-portfolio-card:nth-child(even) { grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr); }
.case-portfolio-card:nth-child(even) .case-portfolio-media { order:2; }
.case-portfolio-media { position:relative; display:flex; align-items:center; justify-content:center; min-height:440px; padding:1rem; background:var(--slate-050); }
.case-portfolio-media img { width:100%; height:auto; max-height:440px; object-fit:contain; }
.case-portfolio-card.iris .case-portfolio-media img { object-position:center; }
.case-portfolio-card.rfp .case-portfolio-media img { object-position:center; }
.case-portfolio-date {
  position:absolute; top:1rem; left:1rem;
  padding:.48rem .72rem;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  color:var(--white);
  background:rgba(6,29,67,.86);
  font-size:.74rem; font-weight:760; letter-spacing:.08em; text-transform:uppercase;
}
.case-portfolio-content { padding:clamp(1.7rem,4vw,3.2rem); }
.case-portfolio-content h2 { margin-bottom:1rem; }
.case-portfolio-content .lede { font-size:1.12rem; }
.case-capability-tags { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.4rem 0 1.6rem; }
.case-capability-tags span {
  padding:.46rem .66rem;
  border:1px solid rgba(29,100,171,.2);
  border-radius:999px;
  color:var(--navy-800);
  background:rgba(231,241,255,.7);
  font-size:.76rem; font-weight:720;
}
.case-card-proof { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; margin:1.35rem 0; }
.case-card-proof div { padding:.8rem; border-radius:.85rem; background:var(--slate-050); }
.case-card-proof strong { display:block; color:var(--navy-950); font-size:1.3rem; line-height:1; }
.case-card-proof span { display:block; margin-top:.35rem; color:var(--slate-600); font-size:.72rem; font-weight:700; text-transform:uppercase; line-height:1.3; }
.case-complement-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.case-complement-card { padding:clamp(1.4rem,3vw,2rem); border:1px solid var(--slate-200); border-radius:1.25rem; background:var(--white); box-shadow:var(--shadow-sm); }
.case-complement-card h3 { margin-bottom:.75rem; }
.case-complement-card ul { margin:0; padding-left:1.1rem; color:var(--slate-600); }
.case-complement-card li + li { margin-top:.42rem; }

/* Homepage dual case-study section */
.home-case-studies-section {
  padding:clamp(4.5rem,8vw,7rem) 0;
  color:rgba(255,255,255,.82);
  background:
    radial-gradient(circle at 18% 14%,rgba(54,127,200,.25),transparent 27rem),
    radial-gradient(circle at 84% 24%,rgba(54,127,200,.24),transparent 30rem),
    linear-gradient(145deg,var(--navy-950),#04142f 78%);
}
.home-case-studies-section h2,
.home-case-studies-section h3 { color:var(--white); }
.home-case-studies-section .lede { color:rgba(255,255,255,.74); }
.home-case-studies-heading { display:grid; grid-template-columns:minmax(0,.9fr) minmax(300px,.72fr); gap:2rem; align-items:end; margin-bottom:2.4rem; }
.home-case-studies-heading h2 { margin-bottom:0; }
.home-case-studies-heading .lede { margin-bottom:0; }
.home-case-studies-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.35rem; }
.home-study-card { overflow:hidden; border:1px solid rgba(155,198,255,.22); border-radius:1.45rem; background:rgba(255,255,255,.07); box-shadow:0 24px 65px rgba(0,0,0,.25); }
.home-study-card figure { margin:0; }
.home-study-card figure img { width:100%; height:300px; object-fit:cover; }
.home-study-card.iris figure img { object-position:center 58%; }
.home-study-card-content { padding:1.45rem; }
.home-study-kicker { display:inline-flex; margin-bottom:.7rem; color:var(--blue-300); font-size:.72rem; font-weight:760; letter-spacing:.1em; text-transform:uppercase; }
.home-study-card p { color:rgba(255,255,255,.72); }
.home-study-mini-proof { display:flex; flex-wrap:wrap; gap:.55rem; margin:1rem 0 1.25rem; }
.home-study-mini-proof span { padding:.45rem .6rem; border:1px solid rgba(155,198,255,.18); border-radius:.75rem; color:rgba(255,255,255,.74); background:rgba(255,255,255,.05); font-size:.76rem; font-weight:700; }
.home-study-disclosure { margin-top:1rem; color:rgba(255,255,255,.52); font-size:.8rem; line-height:1.5; }
.home-case-studies-footer { display:flex; justify-content:center; margin-top:1.6rem; }

/* IRIS case study */
.page-hero-iris {
  color:rgba(255,255,255,.84);
  background:
    radial-gradient(circle at 82% 18%,rgba(54,127,200,.26),transparent 31rem),
    linear-gradient(145deg,var(--navy-950),#04142f 76%);
}
.page-hero-iris h1,
.page-hero-iris h2,
.page-hero-iris h3 { color:var(--white); }
.page-hero-iris .breadcrumb,
.page-hero-iris .breadcrumb a { color:rgba(255,255,255,.7); }
.iris-hero-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr); gap:clamp(2.5rem,5vw,5rem); align-items:center; }
.iris-hero-grid h1 { font-size:clamp(2.65rem,5vw,4.9rem); }
.iris-hero-grid .lede { color:rgba(255,255,255,.76); }
.iris-role-line { margin:1.1rem 0 0; padding:1rem 1.1rem; border-left:4px solid var(--blue-300); background:rgba(255,255,255,.06); color:rgba(255,255,255,.8); }
.iris-hero-visual { margin:0; padding:.75rem; border:1px solid rgba(155,198,255,.22); border-radius:1.45rem; background:rgba(255,255,255,.07); box-shadow:0 26px 68px rgba(0,0,0,.28); }
.iris-hero-visual img { width:100%; border-radius:.9rem; }
.iris-hero-visual figcaption { padding:.75rem .3rem .1rem; color:rgba(255,255,255,.62); font-size:.84rem; }
.iris-stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid rgba(54,127,200,.2); border-radius:1.35rem; background:var(--white); box-shadow:var(--shadow-md); }
.iris-stat { padding:1.45rem 1rem; text-align:center; }
.iris-stat + .iris-stat { border-left:1px solid var(--slate-200); }
.iris-stat strong { display:block; color:var(--navy-950); font-size:clamp(1.65rem,3vw,2.65rem); line-height:1; }
.iris-stat span { display:block; margin-top:.4rem; color:var(--slate-600); font-size:.72rem; font-weight:760; letter-spacing:.06em; line-height:1.35; text-transform:uppercase; }
.iris-section-heading { display:grid; grid-template-columns:minmax(0,.9fr) minmax(300px,.68fr); gap:2rem; align-items:end; margin-bottom:clamp(2rem,4vw,3.4rem); }
.iris-section-heading h2,
.iris-section-heading .lede { margin-bottom:0; }
.iris-role-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem; }
.iris-role-card { padding:1.35rem; border:1px solid var(--slate-200); border-radius:1.15rem; background:var(--white); box-shadow:var(--shadow-sm); }
.iris-role-card h3 { margin-bottom:.65rem; }
.iris-role-card p { color:var(--slate-600); }
.iris-figure { margin:clamp(2rem,4vw,3rem) auto 0; padding:.75rem; border:1px solid rgba(8,41,93,.1); border-radius:1.4rem; background:var(--white); box-shadow:var(--shadow-md); }
.iris-figure img { width:100%; border-radius:.85rem; }
.iris-figure figcaption { padding:.75rem .35rem .1rem; color:var(--slate-600); font-size:.88rem; }
.iris-field-section { color:rgba(255,255,255,.82); background:linear-gradient(145deg,var(--navy-950),#04142f 78%); }
.iris-field-section h2,
.iris-field-section h3 { color:var(--white); }
.iris-field-section .lede { color:rgba(255,255,255,.74); }
.iris-field-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; margin-top:1.6rem; }
.iris-field-card { padding:1.1rem; border:1px solid rgba(155,198,255,.18); border-radius:1rem; background:rgba(255,255,255,.06); }
.iris-field-card strong { display:block; color:var(--white); }
.iris-field-card span { display:block; margin-top:.35rem; color:rgba(255,255,255,.68); font-size:.9rem; }
.iris-team-boundary { margin-top:1.25rem; padding:1rem 1.15rem; border-left:4px solid var(--blue-300); color:rgba(255,255,255,.72); background:rgba(255,255,255,.05); }
.iris-two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.iris-info-card { padding:clamp(1.35rem,2.5vw,2rem); border:1px solid var(--slate-200); border-radius:1.25rem; background:var(--white); box-shadow:var(--shadow-sm); }
.iris-info-card p { color:var(--slate-600); }
.iris-expanded-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.iris-expanded-stat { padding:1.1rem; border-radius:1rem; color:rgba(255,255,255,.72); background:var(--navy-950); }
.iris-expanded-stat strong { display:block; color:var(--white); font-size:1.75rem; }
.iris-expanded-stat span { display:block; margin-top:.35rem; font-size:.76rem; font-weight:700; text-transform:uppercase; }
.iris-source-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.9rem; }
.iris-source-card { padding:1.1rem; border:1px solid var(--slate-200); border-radius:1rem; background:var(--white); }
.iris-source-card strong { display:block; color:var(--navy-950); }
.iris-source-card a { display:block; margin-top:.28rem; font-weight:720; }
.iris-source-card span { display:block; margin-top:.4rem; color:var(--slate-600); font-size:.88rem; }
.case-study-crosslink { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2rem; align-items:center; padding:clamp(1.5rem,3vw,2.2rem); border:1px solid var(--slate-200); border-radius:1.35rem; background:var(--white); box-shadow:var(--shadow-sm); }
.case-study-crosslink h2 { margin-bottom:.55rem; }
.case-study-crosslink p { margin-bottom:0; color:var(--slate-600); }

@media (max-width: 1050px) {
  .case-studies-hero-grid,
  .case-portfolio-card,
  .case-portfolio-card:nth-child(even),
  .iris-hero-grid,
  .iris-section-heading,
  .home-case-studies-heading { grid-template-columns:1fr; }
  .case-portfolio-card:nth-child(even) .case-portfolio-media { order:0; }
  .case-portfolio-media { min-height:360px; }
  .home-case-studies-grid { grid-template-columns:1fr; }
  .iris-field-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-study-crosslink { grid-template-columns:1fr; }
}
@media (max-width: 720px) {
  .case-studies-hero-visual { grid-template-columns:1fr; }
  .case-studies-hero-visual img { height:220px; }
  .case-portfolio-media { min-height:280px; }
  .case-card-proof,
  .case-complement-grid,
  .iris-role-grid,
  .iris-two-column,
  .iris-source-grid { grid-template-columns:1fr; }
  .iris-stats-grid { grid-template-columns:1fr; }
  .iris-stat + .iris-stat { border-left:0; border-top:1px solid var(--slate-200); }
  .iris-field-grid { grid-template-columns:1fr; }
  .iris-expanded-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-study-card figure img { height:240px; }
}

/* IRIS final case-study revision - 2026-08-19 */
.iris-suite-section { padding-top: 0; }
.iris-suite-panel {
  overflow: hidden;
  border: 1px solid rgba(18,74,140,.22);
  border-radius: 1.25rem;
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.iris-suite-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .8rem 1rem;
  color: var(--white);
  background: var(--navy-950);
}
.iris-suite-heading span {
  color: var(--blue-300);
  font-size: .76rem;
  font-weight: 760;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.iris-suite-heading strong { font-size: 1rem; }
.iris-suite-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
}
.iris-suite-grid span {
  padding: .85rem .55rem;
  border-right: 1px solid rgba(18,74,140,.16);
  color: var(--navy-950);
  background: rgba(231,241,255,.58);
  font-size: .8rem;
  font-weight: 740;
  line-height: 1.3;
  text-align: center;
}
.iris-suite-grid span:last-child { border-right: 0; }
.iris-coverage-teaser {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(54,127,200,.26);
  border-radius: 1.1rem;
  color: var(--navy-950);
  background: linear-gradient(100deg,rgba(231,241,255,.95),rgba(255,255,255,.98));
  box-shadow: var(--shadow-sm);
  text-decoration: none;
}
.iris-coverage-teaser:hover { transform: translateY(-1px); box-shadow: var(--shadow-md); }
.iris-coverage-teaser-badge {
  padding: .48rem .68rem;
  border-radius: 999px;
  color: var(--white);
  background: var(--blue-600);
  font-size: .7rem;
  font-weight: 760;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.iris-coverage-teaser-link { color: var(--blue-600); font-weight: 760; white-space: nowrap; }
.iris-plain-list { margin: 0; padding-left: 1.15rem; color: var(--slate-600); }
.iris-plain-list li + li { margin-top: .55rem; }
.iris-early-band {
  display: grid;
  grid-template-columns: minmax(230px,.65fr) minmax(0,1.35fr);
  gap: 1.25rem;
  align-items: center;
  margin-top: 1.4rem;
  padding: 1.2rem;
  border-radius: 1.2rem;
  color: rgba(255,255,255,.78);
  background: var(--navy-950);
}
.iris-early-band strong { display: block; margin-bottom: .35rem; color: var(--blue-300); text-transform: uppercase; }
.iris-early-band p { margin: 0; }
.iris-timeline { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .65rem; }
.iris-timeline span { position: relative; padding-top: 1.25rem; color: rgba(255,255,255,.67); font-size: .76rem; line-height: 1.35; text-align: center; }
.iris-timeline span::before { position: absolute; top: .35rem; left: 50%; width: .64rem; height: .64rem; border: 2px solid var(--white); border-radius: 50%; background: var(--blue-500); transform: translateX(-50%); content: ""; }
.iris-timeline span::after { position: absolute; top: .64rem; right: 50%; width: calc(100% + .65rem); height: 2px; background: rgba(54,127,200,.8); content: ""; z-index: 0; }
.iris-timeline span:first-child::after { display: none; }
.iris-timeline b { display: block; margin-bottom: .28rem; color: var(--white); font-size: .72rem; }
.iris-constraint-heading { margin-top: 1.4rem; color: var(--navy-950); font-size: .8rem; font-weight: 780; letter-spacing: .08em; text-transform: uppercase; }
.iris-constraint-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; margin-top: .7rem; }
.iris-constraint-card { padding: 1rem; border: 1px solid rgba(18,74,140,.18); border-radius: .95rem; background: rgba(231,241,255,.55); }
.iris-constraint-card strong { display: block; color: var(--navy-950); font-size: .84rem; text-transform: uppercase; }
.iris-constraint-card span { display: block; margin-top: .35rem; color: var(--slate-600); font-size: .86rem; line-height: 1.45; }
.iris-ops-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(18,74,140,.18); border-radius: 1.2rem; background: var(--white); box-shadow: var(--shadow-sm); }
.iris-ops-facts div { padding: 1.25rem; border-right: 1px solid var(--slate-200); border-bottom: 1px solid var(--slate-200); }
.iris-ops-facts div:nth-child(2n) { border-right: 0; }
.iris-ops-facts div:nth-last-child(-n+2) { border-bottom: 0; }
.iris-ops-facts strong { display: block; color: var(--navy-950); font-size: 1.25rem; }
.iris-ops-facts span { display: block; margin-top: .3rem; color: var(--slate-600); font-size: .76rem; font-weight: 720; text-transform: uppercase; }
.iris-ops-facts .accent { color: var(--white); background: var(--navy-950); }
.iris-ops-facts .accent strong { color: var(--white); }
.iris-ops-facts .accent span { color: var(--blue-300); }
.iris-capability-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; margin-top: 1rem; }
.iris-capability { padding: 1rem; border: 1px solid var(--slate-200); border-radius: .9rem; background: var(--white); }
.iris-capability strong { display: block; color: var(--navy-950); font-size: .86rem; text-transform: uppercase; }
.iris-capability span { display: block; margin-top: .3rem; color: var(--slate-600); font-size: .86rem; }
.iris-callout-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; margin-top: 1rem; }
.iris-callout { padding: 1.15rem; border: 1px solid rgba(18,74,140,.18); border-radius: 1rem; background: rgba(231,241,255,.65); }
.iris-callout strong { display: block; color: var(--navy-950); text-transform: uppercase; }
.iris-callout p { margin: .4rem 0 0; color: var(--slate-600); }
.iris-callout.dark { color: rgba(255,255,255,.8); background: var(--navy-950); }
.iris-callout.dark strong { color: var(--blue-300); }
.iris-callout.dark p { color: rgba(255,255,255,.74); }
.iris-regional-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; margin-bottom: 1rem; }
.iris-regional-stats div { padding: 1.1rem; border: 1px solid var(--slate-200); border-radius: 1rem; text-align: center; background: var(--slate-050); }
.iris-regional-stats strong { display: block; color: var(--navy-950); font-size: 2rem; line-height: 1; }
.iris-regional-stats span { display: block; margin-top: .35rem; color: var(--slate-600); font-size: .74rem; font-weight: 740; text-transform: uppercase; }
.iris-infrastructure-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; margin-top: 1rem; }
.iris-figure-compact { max-width: 1050px; }
.iris-team-boundary-light { color: var(--slate-600); background: rgba(231,241,255,.55); }
.iris-complete-story { margin-top: 1.25rem; padding: 1.2rem; color: rgba(255,255,255,.8); background: var(--navy-950); }
.iris-complete-story strong { display: block; margin-bottom: .35rem; color: var(--blue-300); text-transform: uppercase; }
.iris-complete-story p { margin: 0; }
.iris-complete-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border: 1px solid rgba(18,74,140,.18); border-top: 0; }
.iris-complete-grid div { padding: 1rem; border-right: 1px solid rgba(18,74,140,.18); background: rgba(231,241,255,.5); }
.iris-complete-grid div:last-child { border-right: 0; }
.iris-complete-grid strong { display: block; color: var(--navy-950); font-size: .82rem; text-transform: uppercase; }
.iris-complete-grid span { display: block; margin-top: .35rem; color: var(--slate-600); font-size: .84rem; }
.iris-why-mattered { margin-top: .7rem; padding: .8rem 1rem; border: 1px solid rgba(18,74,140,.18); color: var(--slate-600); background: rgba(231,241,255,.65); }
.iris-why-mattered strong { color: var(--navy-950); text-transform: uppercase; }

/* Independent coverage is evidence, not a footnote. */
.iris-coverage-section {
  color: rgba(255,255,255,.8);
  background:
    radial-gradient(circle at 12% 14%,rgba(54,127,200,.28),transparent 28rem),
    radial-gradient(circle at 88% 22%,rgba(54,127,200,.2),transparent 30rem),
    linear-gradient(145deg,var(--navy-950),#031126 80%);
}
.iris-coverage-section h2,
.iris-coverage-section h3 { color: var(--white); }
.iris-coverage-heading { display: grid; grid-template-columns: minmax(0,.9fr) minmax(320px,.7fr); gap: 2rem; align-items: end; margin-bottom: 1.2rem; }
.iris-coverage-heading h2 { margin-bottom: 0; font-size: clamp(2.2rem,4.3vw,3.8rem); }
.iris-coverage-heading p { margin: 0; color: rgba(255,255,255,.72); font-size: 1.05rem; }
.iris-coverage-kicker { margin-bottom: .8rem; color: var(--blue-300); font-size: .78rem; font-weight: 780; letter-spacing: .15em; text-transform: uppercase; }
.iris-coverage-proof { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 1.35rem; padding: 1rem 1.15rem; border: 1px solid rgba(155,198,255,.25); border-radius: 1rem; background: rgba(54,127,200,.13); }
.iris-coverage-proof strong { color: var(--white); }
.iris-coverage-proof span { color: rgba(255,255,255,.64); font-size: .88rem; }
.iris-coverage-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.iris-coverage-card { display: flex; flex-direction: column; min-height: 245px; padding: 1.3rem; border: 1px solid rgba(155,198,255,.2); border-radius: 1.15rem; background: rgba(255,255,255,.08); box-shadow: 0 18px 42px rgba(0,0,0,.2); }
.iris-coverage-source { display: grid; grid-template-columns: auto 1fr auto; gap: .65rem; align-items: center; }
.iris-coverage-source span { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .65rem; color: var(--white); background: var(--blue-600); font-size: .75rem; font-weight: 780; }
.iris-coverage-source strong { color: var(--blue-300); font-size: .8rem; letter-spacing: .05em; text-transform: uppercase; }
.iris-coverage-source em { color: rgba(255,255,255,.54); font-size: .76rem; font-style: normal; }
.iris-coverage-card h3 { margin: 1rem 0 .55rem; font-size: 1.24rem; }
.iris-coverage-card p { color: rgba(255,255,255,.67); }
.iris-coverage-card a { align-self: flex-start; margin-top: auto; padding: .62rem .78rem; border: 1px solid rgba(155,198,255,.26); border-radius: .75rem; color: var(--white); background: rgba(54,127,200,.16); font-size: .82rem; font-weight: 760; text-decoration: none; }
.iris-coverage-card a:hover { color: var(--navy-950); background: var(--blue-300); }
.iris-coverage-footer { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 1.25rem; align-items: center; margin-top: 1.3rem; padding-top: 1.3rem; border-top: 1px solid rgba(155,198,255,.2); }
.iris-coverage-footer span { color: rgba(255,255,255,.58); font-size: .84rem; }

@media (max-width: 1050px) {
  .iris-suite-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .iris-suite-grid span:nth-child(3n) { border-right: 0; }
  .iris-coverage-teaser,
  .iris-early-band,
  .iris-coverage-heading,
  .iris-coverage-footer { grid-template-columns: 1fr; }
  .iris-coverage-teaser-link { white-space: normal; }
  .iris-constraint-grid,
  .iris-complete-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .iris-infrastructure-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .iris-complete-grid div:nth-child(2) { border-right: 0; }
  .iris-complete-grid div:nth-child(-n+2) { border-bottom: 1px solid rgba(18,74,140,.18); }
}
@media (max-width: 720px) {
  .iris-suite-heading { align-items: flex-start; flex-direction: column; }
  .iris-suite-grid,
  .iris-constraint-grid,
  .iris-capability-grid,
  .iris-callout-grid,
  .iris-regional-stats,
  .iris-infrastructure-grid,
  .iris-complete-grid,
  .iris-coverage-grid { grid-template-columns: 1fr; }
  .iris-suite-grid span { border-right: 0; border-bottom: 1px solid rgba(18,74,140,.16); }
  .iris-suite-grid span:last-child { border-bottom: 0; }
  .iris-timeline { grid-template-columns: 1fr; }
  .iris-timeline span { padding: .15rem 0 .15rem 1.5rem; text-align: left; }
  .iris-timeline span::before { top: .38rem; left: .35rem; transform: none; }
  .iris-timeline span::after { display: none; }
  .iris-ops-facts { grid-template-columns: 1fr; }
  .iris-ops-facts div { border-right: 0; }
  .iris-ops-facts div:nth-last-child(-n+2) { border-bottom: 1px solid var(--slate-200); }
  .iris-ops-facts div:last-child { border-bottom: 0; }
  .iris-complete-grid div { border-right: 0; border-bottom: 1px solid rgba(18,74,140,.18); }
  .iris-complete-grid div:last-child { border-bottom: 0; }
  .iris-coverage-proof { align-items: flex-start; flex-direction: column; }
  .iris-coverage-card { min-height: 0; }
}
