/* USA Coverage Plan — editorial layout + illustration finishing pass */
:root{--uscp-art-bg:linear-gradient(135deg,#eef7ff 0%,#eaf9f6 100%)}

/* Homepage topic cards: intentional, balanced three-column editorial grid. */
.section-explore .masonry-grid,
.section-learning .masonry-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:auto;
  grid-auto-flow:dense;
  align-items:stretch;
  gap:20px;
}
.section-explore .masonry-card,
.section-learning .masonry-card{
  min-width:0;
  min-height:0;
  height:100%;
  border-color:#dfe9f3;
  box-shadow:0 8px 26px rgba(25,62,96,.045);
}
.section-explore .masonry-card-art,
.section-learning .masonry-card-art{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:1.6;
  flex:0 0 auto;
  overflow:hidden;
  background:var(--uscp-art-bg);
}
.section-explore .masonry-card-art img,
.section-learning .masonry-card-art img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  object-position:center;
  padding:0;
  transform:none;
}
.section-explore .masonry-card:hover .masonry-card-art img,
.section-learning .masonry-card:hover .masonry-card-art img{transform:scale(1.018)}

/* The lead card is a true feature tile: larger art beside the copy, not a tall
   grid item with a long empty text area underneath. */
.section-explore .masonry-card-tall,
.section-learning .masonry-card-tall{
  grid-column:span 2;
  grid-row:auto;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  grid-template-rows:minmax(300px,auto);
  flex-direction:initial;
  align-items:stretch;
}
.section-explore .masonry-card-tall .masonry-card-art,
.section-learning .masonry-card-tall .masonry-card-art{
  grid-column:1;
  grid-row:1;
  align-self:stretch;
  width:auto;
  height:100%;
  min-height:300px;
  aspect-ratio:auto;
}
.section-explore .masonry-card-tall .masonry-card-copy,
.section-learning .masonry-card-tall .masonry-card-copy{
  grid-column:2;
  grid-row:1;
  min-height:0;
  padding:clamp(22px,2.2vw,34px);
  justify-content:center;
  align-self:stretch;
}
.section-explore .masonry-card-tall h3,
.section-learning .masonry-card-tall h3{font-size:clamp(25px,2.15vw,34px);line-height:1.12;margin:12px 0 12px;letter-spacing:-.045em}
.section-explore .masonry-card-tall p,
.section-learning .masonry-card-tall p{font-size:14px;line-height:1.72;margin-bottom:20px}
.section-explore .masonry-card-tall .circle-link,
.section-learning .masonry-card-tall .circle-link{margin-top:20px}

/* A wide editorial card displays the whole vector illustration, without
   aggressively cropping the visual or stretching it beyond its proportions. */
.section-explore .masonry-card-wide,
.section-learning .masonry-card-wide{
  grid-column:span 2;
  grid-row:auto;
  display:flex;
  flex-direction:row;
  align-items:stretch;
  min-height:275px;
}
.section-explore .masonry-card-wide .masonry-card-art,
.section-learning .masonry-card-wide .masonry-card-art{
  width:44%;
  height:auto;
  min-height:275px;
  aspect-ratio:auto;
  flex:0 0 44%;
  align-self:stretch;
}
.section-explore .masonry-card-wide .masonry-card-copy,
.section-learning .masonry-card-wide .masonry-card-copy{
  min-width:0;
  min-height:0;
  padding:clamp(20px,2vw,30px);
  justify-content:center;
}
.section-explore .masonry-card-wide h3,
.section-learning .masonry-card-wide h3{font-size:clamp(21px,1.7vw,28px);line-height:1.16}
.section-explore .masonry-card-copy,
.section-learning .masonry-card-copy{min-height:0;padding:22px 23px 24px}
.section-explore .masonry-card h3,
.section-learning .masonry-card h3{overflow-wrap:break-word}
.section-explore .masonry-card p,
.section-learning .masonry-card p{font-size:13px;line-height:1.7}
.section-explore .masonry-card .circle-link,
.section-learning .masonry-card .circle-link{margin-top:auto}

/* Official-resource cards: use a wide illustration panel instead of squeezing
   a landscape SVG into an icon-sized box. */
.uscp-provider-grid{align-items:stretch;gap:20px}
.uscp-provider-card{display:flex;flex-direction:column;min-width:0;min-height:340px;padding:22px}
.uscp-provider-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:1.78;
  margin:0 0 18px;
  padding:0;
  overflow:hidden;
  border:1px solid #e2edf5;
  border-radius:16px;
  background:var(--uscp-art-bg);
}
.uscp-provider-mark img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  object-position:center;
  padding:0;
}
.uscp-provider-card h3{font-size:20px;line-height:1.25;margin:0 0 9px;letter-spacing:-.025em}
.uscp-provider-card p{font-size:14px;line-height:1.7;margin:0 0 18px}
.uscp-provider-card>a{margin-top:auto;padding-top:4px;font-size:12px}

/* All locally bundled SVG illustrations are landscape 800×500 artwork. Keep
   the full composition visible in article cards rather than clipping text/art. */
.article-card .article-art img{object-fit:contain;object-position:center;background:var(--uscp-art-bg)}
.article-card-featured .article-art img{object-fit:contain}
.uscp-article-grid .masonry-card-art img{object-fit:contain}
.entry-hero-art,.page-hero-art{object-fit:contain;object-position:center}
img{image-rendering:auto}

/* Responsive layout: retain the feature/editorial hierarchy on tablets, stack
   everything intentionally on phones, and avoid overflow on narrow screens. */
@media(max-width:1050px){
  .section-explore .masonry-grid,.section-learning .masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
  .section-explore .masonry-card-tall,.section-learning .masonry-card-tall{grid-column:span 2;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);grid-template-rows:minmax(280px,auto)}
  .section-explore .masonry-card-wide,.section-learning .masonry-card-wide{grid-column:span 2}
  .uscp-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .section-explore .masonry-grid,.section-learning .masonry-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  .section-explore .masonry-card-tall,.section-learning .masonry-card-tall{grid-column:auto;display:flex;flex-direction:column;grid-template-columns:none;grid-template-rows:none}
  .section-explore .masonry-card-wide,.section-learning .masonry-card-wide{grid-column:auto;flex-direction:column;min-height:0}
  .section-explore .masonry-card-art,.section-learning .masonry-card-art,
  .section-explore .masonry-card-tall .masonry-card-art,.section-learning .masonry-card-tall .masonry-card-art,
  .section-explore .masonry-card-wide .masonry-card-art,.section-learning .masonry-card-wide .masonry-card-art{
    width:100%;height:auto;min-height:0;aspect-ratio:1.6;flex:0 0 auto;grid-column:auto;grid-row:auto
  }
  .section-explore .masonry-card-tall .masonry-card-copy,.section-learning .masonry-card-tall .masonry-card-copy,
  .section-explore .masonry-card-wide .masonry-card-copy,.section-learning .masonry-card-wide .masonry-card-copy{grid-column:auto;grid-row:auto;padding:20px 21px 23px;min-height:0}
  .section-explore .masonry-card-tall h3,.section-learning .masonry-card-tall h3{font-size:25px}
  .section-explore .masonry-card .circle-link,.section-learning .masonry-card .circle-link{position:static;margin-top:15px}
  .uscp-provider-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .uscp-provider-card{min-height:0;padding:18px}
  .uscp-provider-mark{aspect-ratio:1.8}
}
