/* ============================================================
   GCCC providers — oval headshots v2 (brochure v4 spacing)
   Uses images/providers-oval-v2/* (NEW crops; originals untouched).
   Rollback:
     1) restore providers-oval-v1.css → providers-oval.css AND
        revert img paths to images/providers/, OR
     2) remove <link providers-oval.css> and restore HTML from
        _Archive/2026-09-24 oval-site-v1/ (plus path revert).
   ============================================================ */

:root {
  --oval-ratio: 1.55 / 1.95;
  --oval-frame: 6px;
  --oval-frame-sm: 3px;
}

/* Crops are pre-framed — no CSS zoom/object-position hacks */
.card_image img,
.prov_image_small img {
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  background-color: #fff !important;
  transition: opacity .35s ease;
}

/* ---------- Full-size cards (providers.php) ---------- */
.providers_section:not(.providers_section--home) .card {
  height: auto !important;
  width: 220px !important;
  background-color: transparent !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 4px 0;
}

.providers_section:not(.providers_section--home) .card_image {
  width: 190px;
  height: auto !important;
  aspect-ratio: var(--oval-ratio);
  border-radius: 50%;
  background-color: #fff !important;
  padding: var(--oval-frame);
  box-sizing: border-box;
  overflow: hidden;
  box-shadow: 0 14px 28px -12px rgba(11, 61, 92, 0.35);
}

.providers_section:not(.providers_section--home) .card_image img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: block;
}

.providers_section:not(.providers_section--home) .card_content {
  position: static !important;
  width: 100%;
  margin-top: 12px;
  height: auto !important;
  min-height: 52px;
  border-radius: 10px;
  padding: 10px 12px;
}

.providers_section:not(.providers_section--home) .btn {
  top: 4px;
  right: 4px;
  margin-top: 0 !important;
  margin-right: 0 !important;
}

.providers_section:not(.providers_section--home) .card:hover .btn {
  margin-top: -4px !important;
  margin-right: -4px !important;
}

.providers_section:not(.providers_section--home) .card:hover .card_image img {
  opacity: 0.88;
}

/* ---------- Home compact row ---------- */
.providers_section--home .card {
  width: clamp(78px, 9.2vw, 118px) !important;
  height: auto !important;
  background-color: transparent !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2px 0 0;
}

.providers_section--home .card_image {
  width: 100%;
  height: auto !important;
  aspect-ratio: var(--oval-ratio);
  border-radius: 50%;
  background-color: #fff !important;
  padding: var(--oval-frame-sm);
  box-sizing: border-box;
  overflow: hidden;
  box-shadow: 0 6px 14px -6px rgba(11, 61, 92, 0.3);
}

.providers_section--home .card_image img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: block;
}

.providers_section--home .card_content {
  position: static !important;
  width: 100%;
  margin-top: 6px;
  height: auto !important;
  min-height: 0;
  border-radius: 8px;
  padding: 4px 5px 5px;
}

.providers_section--home .btn {
  width: 20px;
  height: 20px;
  font-size: 10px;
  top: 0;
  right: 0;
  margin-top: 0 !important;
  margin-right: 0 !important;
}

.providers_section--home .cards .cards_item {
  padding: 4px 3px 8px;
}

.providers_section--home .card:hover .card_image img {
  opacity: 0.9;
}

@media screen and (max-width: 480px) {
  .providers_section--home .card {
    width: clamp(88px, 28vw, 110px) !important;
  }
  .providers_section--home .card_image { padding: 3px; }
  .providers_section--home .card_title { font-size: 0.62rem; }
  .providers_section--home .card_text { font-size: 0.55rem; }
}

/* ---------- Other Providers bar ---------- */
.prov {
  width: 110px !important;
  height: auto !important;
  margin-bottom: 24px !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.prov_image_small {
  width: 100px !important;
  height: auto !important;
  aspect-ratio: var(--oval-ratio) !important;
  border-radius: 50% !important;
  background-color: #fff !important;
  padding: var(--oval-frame-sm);
  box-sizing: border-box;
  overflow: hidden;
  box-shadow: 0 6px 14px -6px rgba(11, 61, 92, 0.28);
}

.prov_image_small img {
  width: 100%;
  height: 100%;
  border-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
  display: block;
}

.prov_text {
  width: 110px !important;
  text-align: center;
  padding-top: 8px;
  font-size: 14px;
  line-height: 1.25;
}

.prov a:hover img {
  transform: scale(1.05) !important;
}

/* ---------- Individual provider hero photos (use oval-v2) ---------- */
.siddiqui_image,
.freeman_image,
.brown_image,
.sisodraker_image,
.pitocchi_image,
.dixit_image,
.watts_image,
.grant_image,
.carbajal_image {
  width: min(360px, 85vw) !important;
  height: auto !important;
  aspect-ratio: var(--oval-ratio) !important;
  border-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
  background-color: #fff !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 16px 32px -14px rgba(11, 61, 92, 0.4);
  outline: 6px solid #fff;
  outline-offset: 0;
}

.siddiqui_image   { background-image: url("../images/providers-oval-v2/Siddiqui.png") !important; }
.freeman_image    { background-image: url("../images/providers-oval-v2/Freeman.png") !important; }
.brown_image      { background-image: url("../images/providers-oval-v2/Brown.png") !important; }
.sisodraker_image { background-image: url("../images/providers-oval-v2/Sisodraker.png") !important; }
.pitocchi_image   { background-image: url("../images/providers-oval-v2/Pitocchi.png") !important; }
.dixit_image      { background-image: url("../images/providers-oval-v2/dixit.png") !important; }
.watts_image      { background-image: url("../images/providers-oval-v2/Watts.png") !important; }
.grant_image      { background-image: url("../images/providers-oval-v2/grant.png") !important; }
.carbajal_image   { background-image: url("../images/providers-oval-v2/Carbajal.png") !important; }

@media screen and (max-width: 900px) {
  .siddiqui_image,
  .freeman_image,
  .brown_image,
  .sisodraker_image,
  .pitocchi_image,
  .dixit_image,
  .watts_image,
  .grant_image,
  .carbajal_image {
    width: min(280px, 70vw) !important;
    margin: 0 auto;
  }
  .column_one { justify-items: center !important; }
}
