/* =========================================================

   HIGHLAND DENTAL CENTER — CONSOLIDATED STAFF PAGE CSS



   Combined from:

   - HDC-Dentists(1).css

   - HDCMeet(1).css

   - HDCStaff(1).css



   Duplicate dentist, membership, trust-panel, breakpoint,

   and accessibility rules have been removed.



   Font:

   Poppins-Regular is used throughout to match the website.

   Ensure Poppins-Regular is loaded by Blocs or by the site.

   ========================================================= */



/* Shared font for every component in this file */

.hdc-dentists,

.hdc-dentists *,

.hdc-team,

.hdc-team *,

.hdc-staff-hero,

.hdc-staff-hero *,

.hdc-hero-trust,

.hdc-hero-trust * {

  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

}



/* =========================================================

   HIGHLAND DENTAL CENTER

   RESPONSIVE DENTIST SECTION — COMPACT VERSION



   Replace all older .hdc-dentists and .hdc-doctor-* rules

   with this complete CSS file.

   ========================================================= */





/* =========================================================

   SECTION

   ========================================================= */



.hdc-dentists {

  --hdc-cream: #f7f0e4;

  --hdc-text: #202020;

  --hdc-muted: #5f5c57;

  --hdc-teal: #2f6f78;

  --hdc-teal-dark: #24565d;

  --hdc-gold: #c59235;

  --hdc-line: rgba(32, 32, 32, 0.10);

  --hdc-card: rgba(255, 255, 255, 0.28);



  width: 100%;

  overflow-x: clip;



  padding: clamp(58px, 6vw, 88px) 0;



  color: var(--hdc-text);



  background:

    radial-gradient(

      circle at 8% 12%,

      rgba(197, 146, 53, 0.08),

      transparent 28%

    ),

    radial-gradient(

      circle at 92% 88%,

      rgba(47, 111, 120, 0.06),

      transparent 30%

    ),

    var(--hdc-cream);

}





/* Consistent box sizing */



.hdc-dentists *,

.hdc-dentists *::before,

.hdc-dentists *::after {

  box-sizing: border-box;

}





/* Main container */



.hdc-dentists-container {

  width: min(1180px, calc(100% - 48px));

  margin-inline: auto;

}





/* =========================================================

   SECTION INTRO

   ========================================================= */



.hdc-dentists-header {

  max-width: 760px;

  margin: 0 auto clamp(44px, 5vw, 66px);

  text-align: center;

}





.hdc-section-label,

.hdc-doctor-label,

.hdc-membership-title {

  display: block;



  color: #8c6a2d;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-weight: 700;

  line-height: 1.4;

  letter-spacing: 0.16em;

  text-transform: uppercase;

}





.hdc-section-label {

  margin-bottom: 14px;



  color: var(--hdc-teal);



  font-size: 0.76rem;

  letter-spacing: 0.19em;

}





.hdc-dentists-header h1 {

  margin: 0 0 18px;



  color: #111;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: clamp(2.8rem, 5.4vw, 5rem);

  font-weight: 400;

  line-height: 0.98;

  letter-spacing: -0.045em;

}





.hdc-dentists-header p {

  max-width: 680px;

  margin: 0 auto;



  color: var(--hdc-muted);



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: clamp(1rem, 1.4vw, 1.14rem);

  line-height: 1.7;

}





/* =========================================================

   DOCTOR CARD LAYOUT

   ========================================================= */



.hdc-doctor-card {

  display: grid;



  grid-template-columns:

    minmax(300px, 0.84fr)

    minmax(0, 1.16fr);



  grid-template-areas:

    "photo content";



  align-items: center;



  gap: clamp(38px, 5vw, 70px);



  min-width: 0;



  margin: 0 0 clamp(60px, 7vw, 92px);

}





/* Reduce spacing after the last dentist */



.hdc-doctor-card:last-of-type {

  margin-bottom: clamp(52px, 6vw, 78px);

}





/* Reverse alternating layout */



.hdc-doctor-reverse {

  grid-template-columns:

    minmax(0, 1.16fr)

    minmax(300px, 0.84fr);



  grid-template-areas:

    "content photo";

}





/* =========================================================

   DOCTOR PHOTO

   ========================================================= */



.hdc-doctor-photo {

  grid-area: photo;



  position: relative;

  isolation: isolate;



  width: 100%;

  min-width: 0;



  align-self: start;

}





/* Gold outline behind photograph */



.hdc-doctor-photo::before {

  content: "";



  position: absolute;

  inset: 20px -16px -18px 18px;

  z-index: -1;



  border: 1.5px solid rgba(197, 146, 53, 0.62);



  border-radius:

    48% 48% 28px 28px /

    22% 22% 28px 28px;

}





.hdc-doctor-photo img {

  display: block;



  width: 100%;

  height: auto;



  aspect-ratio: 4 / 4.65;



  object-fit: cover;

  object-position: center top;



  border-radius:

    48% 48% 28px 28px /

    22% 22% 28px 28px;



  background: #ece9e4;

}





/* Decorative dotted circle */



.hdc-photo-accent {

  position: absolute;

  right: -2px;

  bottom: 7%;



  width: clamp(64px, 7vw, 88px);

  aspect-ratio: 1;



  border: 8px solid var(--hdc-cream);

  border-radius: 50%;



  background-color: #fff;



  background-image:

    radial-gradient(

      circle,

      var(--hdc-gold) 0 4px,

      transparent 4.5px

    );



  background-size: 20px 20px;



  box-shadow: 0 6px 18px rgba(20, 20, 20, 0.10);

}





.hdc-doctor-reverse .hdc-photo-accent {

  right: auto;

  left: -2px;

}





/* =========================================================

   DOCTOR CONTENT

   ========================================================= */



.hdc-doctor-content {

  grid-area: content;



  width: 100%;

  min-width: 0;



  overflow: visible;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

}





.hdc-doctor-label {

  margin: 0 0 9px;



  color: var(--hdc-teal);



  font-size: 0.75rem;

}





.hdc-doctor-content h2 {

  margin: 0 0 7px;



  overflow-wrap: anywhere;



  color: #121212;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: clamp(2.5rem, 4.4vw, 4.55rem);

  font-weight: 400;

  line-height: 1;

  letter-spacing: -0.04em;

}





.hdc-credentials {

  margin: 0;



  color: #7d725f;



  font-size: 0.88rem;

  font-weight: 700;

  line-height: 1.4;

  letter-spacing: 0.08em;

  text-transform: uppercase;

}





/* Gold divider */



.hdc-doctor-divider {

  width: 72px;

  height: 2px;



  margin: 18px 0 19px;



  background: var(--hdc-gold);

}





/* Biography paragraphs */



.hdc-doctor-content > p:not(.hdc-credentials) {

  margin: 0 0 15px;



  color: var(--hdc-text);



  font-size: clamp(0.98rem, 1.28vw, 1.08rem);

  line-height: 1.58;

}





/* Remove unnecessary margin after final biography paragraph */



.hdc-doctor-content > p:not(.hdc-credentials):last-of-type {

  margin-bottom: 0;

}





/* =========================================================

   SPECIALTY TAGS

   ========================================================= */



.hdc-doctor-specialties {

  display: flex;

  flex-wrap: wrap;



  gap: 8px;



  margin: 19px 0 0;

}





.hdc-doctor-specialties span {

  display: inline-flex;

  align-items: center;



  min-height: 34px;



  padding: 7px 13px;



  border: 1px solid rgba(47, 111, 120, 0.22);

  border-radius: 999px;



  color: var(--hdc-teal-dark);

  background: rgba(255, 255, 255, 0.32);



  font-size: 0.81rem;

  font-weight: 700;

  line-height: 1.2;

}





/* =========================================================

   LEFT PORTRAIT COLUMN

   The HTML should wrap the portrait and memberships inside:

   <div class="hdc-doctor-left"> ... </div>

   ========================================================= */



.hdc-doctor-left {

  grid-area: photo;



  display: flex;

  flex-direction: column;

  align-self: start;



  width: 100%;

  min-width: 0;

}



.hdc-doctor-left .hdc-doctor-photo {

  grid-area: auto;

  width: 100%;

}





/* =========================================================

   PROFESSIONAL MEMBERSHIPS BELOW PORTRAIT

   ========================================================= */



.hdc-doctor-left .hdc-doctor-memberships {

  width: 100%;

  margin: 34px 0 0;

  padding: 25px 8px 0;



  border-top: 1px solid var(--hdc-line);

}



.hdc-membership-title {

  display: block;

  margin: 0 0 20px;



  color: #8c6a2d;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: 0.78rem;

  font-weight: 700;

  line-height: 1.4;

  letter-spacing: 0.16em;

  text-transform: uppercase;

}



.hdc-membership-logos {

  display: flex;

  align-items: center;

  justify-content: flex-start;

  flex-wrap: wrap;



  gap: 18px 28px;

  min-width: 0;

}



.hdc-membership-logos img {

  display: block;



  width: auto;

  height: auto;

  max-width: 100%;

  max-height: 72px;



  margin: 0;

  padding: 0;



  object-fit: contain;

  object-position: center;

}



.hdc-membership-logos .hdc-logo-ada {

  width: clamp(105px, 11vw, 138px);

}



.hdc-membership-logos .hdc-logo-icoi {

  width: clamp(175px, 18vw, 225px);

}





/* =========================================================

   BUTTONS

   Includes strong Blocs / Bootstrap text-color overrides.

   ========================================================= */



.hdc-doctor-button,

.hdc-team-cta-button {

  display: inline-flex;

  align-items: center;

  justify-content: center;



  gap: 10px;



  min-height: 46px;

  padding: 11px 18px;



  border: 1px solid var(--hdc-teal);

  border-radius: 999px;



  color: #ffffff !important;

  -webkit-text-fill-color: #ffffff;

  background: var(--hdc-teal);



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: 0.9rem;

  font-weight: 700;

  line-height: 1.2;

  text-decoration: none !important;



  box-shadow: 0 10px 24px rgba(47, 111, 120, 0.17);



  transition:

    transform 180ms ease,

    background-color 180ms ease,

    box-shadow 180ms ease;

}



a.hdc-doctor-button:link,

a.hdc-doctor-button:visited,

a.hdc-team-cta-button:link,

a.hdc-team-cta-button:visited,

.hdc-doctor-button *,

.hdc-team-cta-button * {

  color: #ffffff !important;

  -webkit-text-fill-color: #ffffff;

}



.hdc-doctor-button:hover,

.hdc-doctor-button:focus,

.hdc-doctor-button:focus-visible,

.hdc-doctor-button:active,

.hdc-team-cta-button:hover,

.hdc-team-cta-button:focus,

.hdc-team-cta-button:focus-visible,

.hdc-team-cta-button:active {

  color: #ffffff !important;

  -webkit-text-fill-color: #ffffff;

  background: var(--hdc-teal-dark);

  text-decoration: none !important;



  box-shadow: 0 14px 28px rgba(47, 111, 120, 0.23);

  transform: translateY(-2px);

}



.hdc-doctor-button:hover *,

.hdc-doctor-button:focus *,

.hdc-doctor-button:active *,

.hdc-team-cta-button:hover *,

.hdc-team-cta-button:focus *,

.hdc-team-cta-button:active * {

  color: #ffffff !important;

  -webkit-text-fill-color: #ffffff;

}



.hdc-doctor-button:focus-visible,

.hdc-team-cta-button:focus-visible {

  outline: 3px solid rgba(47, 111, 120, 0.28);

  outline-offset: 4px;

}





/* =========================================================

   BOTTOM CALL TO ACTION

   ========================================================= */



.hdc-team-cta {

  display: flex;

  align-items: center;

  justify-content: space-between;



  gap: 34px;



  padding: clamp(28px, 4vw, 46px);



  border: 1px solid rgba(47, 111, 120, 0.18);

  border-radius: 28px;



  background: rgba(255, 255, 255, 0.38);

}





.hdc-team-cta h2 {

  margin: 5px 0 8px;



  font-family: "Poppins-Regular", "Poppins", Arial, sans-serif;

  font-size: clamp(2rem, 3.5vw, 3.35rem);

  font-weight: 400;

  line-height: 1.05;

}





.hdc-team-cta p {

  margin: 0;



  color: var(--hdc-muted);



  font-size: 1rem;

  line-height: 1.55;

}





/* =========================================================

   LARGE DESKTOP — 1200PX AND UP

   ========================================================= */



@media (min-width: 1200px) {



  .hdc-dentists-container {

    width: min(1180px, calc(100% - 80px));

  }



  .hdc-doctor-card {

    gap: 68px;

  }



}





/* =========================================================

   DESKTOP — 992PX TO 1199PX

   ========================================================= */



@media (min-width: 992px) and (max-width: 1199.98px) {



  .hdc-dentists-container {

    width: min(1060px, calc(100% - 56px));

  }



  .hdc-doctor-card {

    grid-template-columns:

      minmax(280px, 0.88fr)

      minmax(0, 1.12fr);



    gap: 48px;



    margin-bottom: 76px;

  }



  .hdc-doctor-reverse {

    grid-template-columns:

      minmax(0, 1.12fr)

      minmax(280px, 0.88fr);

  }



  .hdc-doctor-card:last-of-type {

    margin-bottom: 64px;

  }



  .hdc-doctor-content h2 {

    font-size: clamp(2.6rem, 4vw, 3.75rem);

  }



}





/* =========================================================

   TABLET — BELOW 992PX

   Stack photograph above doctor information.

   ========================================================= */



@media (max-width: 991.98px) {



  .hdc-dentists-container {

    width: min(760px, calc(100% - 40px));

  }



  .hdc-doctor-card,

  .hdc-doctor-reverse {

    grid-template-columns: minmax(0, 1fr);



    grid-template-areas:

      "photo"

      "content";



    gap: 28px;



    max-width: 720px;



    margin: 0 auto 72px;

  }



  .hdc-doctor-card:last-of-type {

    margin-bottom: 58px;

  }



  .hdc-doctor-left {

    width: min(100%, 470px);

    margin-inline: auto;

  }



  .hdc-doctor-photo {

    width: 100%;

    margin-inline: auto;

  }



  .hdc-doctor-content {

    max-width: 680px;

    margin-inline: auto;

  }



  .hdc-doctor-reverse .hdc-photo-accent {

    right: -2px;

    left: auto;

  }



  .hdc-team-cta {

    align-items: flex-start;

    flex-direction: column;

  }



}





/* =========================================================

   SMALL / BLOCS SM — 576PX TO 767PX

   ========================================================= */



@media (min-width: 576px) and (max-width: 767.98px) {



  .hdc-dentists {

    padding: 52px 0 64px;

  }



  .hdc-dentists-container {

    width: min(640px, calc(100% - 36px));

  }



  .hdc-dentists-header {

    margin-bottom: 42px;

  }



  .hdc-doctor-card,

  .hdc-doctor-reverse {

    gap: 25px;

    margin-bottom: 64px;

  }



  .hdc-doctor-card:last-of-type {

    margin-bottom: 50px;

  }



  .hdc-doctor-left {

    width: min(100%, 440px);

  }



  .hdc-doctor-photo {

    width: 100%;

  }



  .hdc-membership-logos {

    gap: 14px 22px;

  }



}





/* =========================================================

   EXTRA SMALL / BLOCS XS — BELOW 576PX

   ========================================================= */



@media (max-width: 575.98px) {



  .hdc-dentists {

    padding: 46px 0 58px;

  }



  .hdc-dentists-container {

    width: min(430px, calc(100% - 28px));

  }



  .hdc-dentists-header {

    margin-bottom: 38px;

    text-align: left;

  }



  .hdc-dentists-header h1 {

    margin-bottom: 16px;



    font-size: clamp(2.55rem, 12vw, 3.55rem);

  }



  .hdc-dentists-header p {

    margin-left: 0;



    font-size: 1rem;

    line-height: 1.62;

  }



  .hdc-doctor-card,

  .hdc-doctor-reverse {

    gap: 23px;

    margin-bottom: 58px;

  }



  .hdc-doctor-card:last-of-type {

    margin-bottom: 44px;

  }



  .hdc-doctor-left {

    width: min(380px, calc(100% - 10px));

  }



  .hdc-doctor-photo {

    width: 100%;

  }



  .hdc-doctor-photo img {

    aspect-ratio: 4 / 4.7;

  }



  .hdc-doctor-photo::before {

    inset: 13px -9px -12px 12px;

  }



  .hdc-photo-accent {

    right: -5px;



    width: 60px;



    border-width: 6px;



    background-size: 15px 15px;



    background-image:

      radial-gradient(

        circle,

        var(--hdc-gold) 0 3px,

        transparent 3.5px

      );

  }



  .hdc-doctor-label {

    margin-bottom: 8px;



    font-size: 0.7rem;

    letter-spacing: 0.14em;

  }



  .hdc-doctor-content h2 {

    margin-bottom: 7px;



    font-size: clamp(2.35rem, 12vw, 3.25rem);

  }



  .hdc-credentials {

    font-size: 0.8rem;

    letter-spacing: 0.06em;

  }



  .hdc-doctor-divider {

    margin: 16px 0 17px;

  }



  .hdc-doctor-content > p:not(.hdc-credentials) {

    margin-bottom: 13px;



    font-size: 0.98rem;

    line-height: 1.58;

  }



  .hdc-doctor-specialties {

    gap: 7px;

    margin-top: 17px;

  }



  .hdc-doctor-specialties span {

    min-height: 32px;



    padding: 6px 10px;



    font-size: 0.77rem;

  }



  .hdc-doctor-left .hdc-doctor-memberships {

    margin-top: 28px;

    padding: 21px 0 0;

  }



  .hdc-membership-title {

    margin-bottom: 15px;

    text-align: left;

    font-size: 0.76rem;

  }



  .hdc-membership-logos {

    gap: 16px 20px;

  }



  .hdc-membership-logos .hdc-logo-ada {

    width: 108px;

  }



  .hdc-membership-logos .hdc-logo-icoi {

    width: min(190px, 100%);

  }



  .hdc-doctor-button,

  .hdc-team-cta-button {

    width: 100%;

  }



  .hdc-team-cta {

    padding: 26px 20px;

    border-radius: 22px;

  }



}





/* =========================================================

   ACCESSIBILITY

   ========================================================= */



@media (prefers-reduced-motion: reduce) {



  .hdc-doctor-button,

  .hdc-team-cta-button {

    transition: none;

  }



  .hdc-doctor-button:hover,

  .hdc-team-cta-button:hover {

    transform: none;

  }



}





/* =========================================================
   SUPPORTING STAFF — NEW TABBED DIRECTORY
   Replaces the old arched, vertically stacked staff cards.
   Match the new HTML staff section.
   ========================================================= */

    /* Self-contained styles for Blocs — centered, compact and edge-free */
    .hdc-team, .hdc-team * { box-sizing: border-box; }
    .hdc-team {
      --team-dark: #24494D;
      --team-teal: #3E6265;
      --team-soft: #F2F7F5;
      --team-border: #DEE9E5;
      color: #263F42;
      width: 100%;
      padding: 30px 16px 34px;
      background: transparent;
      font-family: inherit;
    }
    .hdc-team .hdc-team-container {
      width: 100%;
      max-width: 1000px;
      margin-inline: auto;
    }
    .hdc-team .hdc-team-header {
      max-width: 680px;
      text-align: center;
      margin: 0 auto 20px;
    }
    .hdc-team .hdc-team-eyebrow {
      display: block;
      color: var(--team-teal) !important;
      font-weight: 750;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-size: 12px;
      margin-bottom: 7px;
    }
    .hdc-team .hdc-team-header h2 {
      color: var(--team-dark) !important;
      font-size: clamp(28px, 3.6vw, 40px);
      font-weight: 500;
      line-height: 1.16;
      letter-spacing: -.8px;
      margin: 0 0 9px !important;
    }
    .hdc-team .hdc-team-header p {
      color: #596F70 !important;
      font-size: 15px;
      line-height: 1.5;
      margin: 0 !important;
    }
    .hdc-team .hdc-team-tabs {
      display: flex;
      gap: 7px;
      justify-content: center;
      background: var(--team-soft);
      border: 1px solid var(--team-border);
      border-radius: 14px;
      padding: 7px;
      margin: 0 auto 18px;
    }
    .hdc-team .hdc-team-tab {
      appearance: none;
      flex: 1 1 0;
      min-width: 0;
      padding: 12px 9px;
      min-height: 46px;
      border: 0;
      border-radius: 9px;
      background: transparent;
      color: var(--team-dark) !important;
      line-height: 1.25;
      font-family: inherit;
      font-size: 14px;
      font-weight: 650;
      cursor: pointer;
      transition: background .2s ease, color .2s ease;
    }
    .hdc-team .hdc-team-tab:hover { background: #DCEAE5; }
    .hdc-team .hdc-team-tab[aria-selected="true"] {
      color: #FFFFFF !important;
      background: var(--team-teal);
    }
    .hdc-team .hdc-team-tab:focus-visible {
      outline: 3px solid #86BDB2;
      outline-offset: 2px;
    }
    .hdc-team .hdc-team-panel[hidden] { display: none !important; }
    .hdc-team .hdc-team-category-header {
      margin: 0 auto 17px;
      max-width: 760px;
      text-align: center;
    }
    .hdc-team .hdc-team-category-header h3 {
      color: var(--team-dark) !important;
      font-size: clamp(20px, 2.5vw, 25px);
      font-weight: 650;
      line-height: 1.25;
      margin: 0 0 5px !important;
    }
    .hdc-team .hdc-team-category-header p {
      color: #596F70 !important;
      font-size: 14px;
      line-height: 1.5;
      margin: 0 !important;
    }
    .hdc-team .hdc-team-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 15px;
      align-items: stretch;
    }
    .hdc-team .hdc-team-panel .hdc-team-card {
      display: flex !important;
      flex-direction: row !important;
      align-items: flex-start;
      gap: 16px;
      min-width: 0;
      padding: 17px;
      background: #FFFFFF;
      border: 1px solid var(--team-border);
      border-radius: 16px;
      box-shadow: 0 5px 18px rgba(36,73,77,.045);
    }
    .hdc-team .hdc-team-panel .hdc-team-photo {
      flex: 0 0 142px;
      width: 142px;
      aspect-ratio: 4 / 5;
      margin: 0;
      overflow: hidden;
      border-radius: 11px;
      background: #E5EEEB;
    }
    .hdc-team .hdc-team-panel .hdc-team-photo img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center top;
    }
    .hdc-team .hdc-team-panel .hdc-team-info { min-width: 0; flex: 1; padding: 0 !important; text-align: left !important; display: block !important; }
    .hdc-team .hdc-team-role {
      display: block;
      color: var(--team-teal) !important;
      font-size: 10px;
      font-weight: 750;
      line-height: 1.4;
      letter-spacing: .7px;
      text-transform: uppercase;
      margin: 1px 0 5px;
    }
    .hdc-team .hdc-team-info h4 {
      color: var(--team-dark) !important;
      font-size: 20px;
      font-weight: 650;
      line-height: 1.25;
      margin: 0 0 9px !important;
    }
    .hdc-team .hdc-team-info p {
      color: #53696C !important;
      font-size: 13px;
      line-height: 1.55;
      margin: 0 0 9px !important;
    }
    .hdc-team .hdc-team-info p:last-child { margin-bottom: 0 !important; }
    /* For single-person categories, retain a comfortably centered card */
    .hdc-team .hdc-team-grid:has(> :only-child) {
      grid-template-columns: minmax(0, 610px);
      justify-content: center;
    }
    @media (max-width: 850px) {
      .hdc-team .hdc-team-grid { grid-template-columns: minmax(0, 1fr); }
      .hdc-team .hdc-team-grid:has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
      .hdc-team .hdc-team-panel .hdc-team-photo { flex-basis: 140px; width: 140px; }
    }
    @media (max-width: 600px) {
      .hdc-team { padding: 22px 12px 26px; }
      .hdc-team .hdc-team-header { margin-bottom: 16px; }
      .hdc-team .hdc-team-tabs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        padding: 6px;
        margin-bottom: 15px;
      }
      .hdc-team .hdc-team-tab { font-size: 12px; padding: 10px 7px; }
      .hdc-team .hdc-team-panel .hdc-team-card { gap: 12px; padding: 12px; }
      .hdc-team .hdc-team-panel .hdc-team-photo { flex-basis: 105px; width: 105px; }
      .hdc-team .hdc-team-info h4 { font-size: 17px; }
      .hdc-team .hdc-team-info p { font-size: 12px; }
    }
    @media (max-width: 370px) {
      .hdc-team .hdc-team-panel .hdc-team-card { flex-direction: column; }
      .hdc-team .hdc-team-panel .hdc-team-photo { width: 125px; flex-basis: auto; }
    }
    @media (prefers-reduced-motion: reduce) {
      .hdc-team .hdc-team-tab { transition: none; }
    }

    /* =========================================
       BLOCS / EXISTING SITE CSS OVERRIDES
       The ID-specific selectors and targeted !important declarations
       stop older .hdc-team-card / figure / text rules from
       reverting the horizontal layout to stacked center alignment.
    ========================================= */
    #hdc-staff-directory.hdc-team {
      padding: 22px 8px 26px !important;
      margin: 0 auto !important;
      max-width: none !important;
      text-align: left !important;
      background: transparent !important;
    }
    #hdc-staff-directory.hdc-team > .hdc-team-container {
      width: min(100%, 1100px) !important;
      max-width: 1100px !important;
      margin: 0 auto !important;
      padding: 0 !important;
    }
    #hdc-staff-directory .hdc-team-grid {
      display: grid !important;
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 16px !important;
      align-items: stretch !important;
    }
    #hdc-staff-directory .hdc-team-grid:has(> :only-child) {
      grid-template-columns: minmax(0, 700px) !important;
      justify-content: center !important;
    }
    #hdc-staff-directory .hdc-team-card {
      display: grid !important;
      grid-template-columns: 120px minmax(0, 1fr) !important;
      align-items: start !important;
      justify-items: stretch !important;
      column-gap: 17px !important;
      padding: 18px !important;
      margin: 0 !important;
      width: auto !important;
      height: auto !important;
      min-height: 0 !important;
      text-align: left !important;
    }
    #hdc-staff-directory .hdc-team-card > figure.hdc-team-photo {
      display: block !important;
      grid-column: 1 !important;
      grid-row: 1 !important;
      width: 120px !important;
      min-width: 0 !important;
      height: 150px !important;
      max-height: 150px !important;
      aspect-ratio: auto !important;
      margin: 0 !important;
      padding: 0 !important;
      border-radius: 10px !important;
      overflow: hidden !important;
      position: relative !important;
      float: none !important;
    }
    #hdc-staff-directory .hdc-team-card > figure.hdc-team-photo > img {
      display: block !important;
      width: 100% !important;
      height: 100% !important;
      max-width: none !important;
      max-height: none !important;
      margin: 0 !important;
      padding: 0 !important;
      object-fit: cover !important;
      object-position: center top !important;
      border-radius: 0 !important;
      position: static !important;
    }
    #hdc-staff-directory .hdc-team-card > .hdc-team-info {
      display: block !important;
      grid-column: 2 !important;
      grid-row: 1 !important;
      min-width: 0 !important;
      width: auto !important;
      margin: 0 !important;
      padding: 0 !important;
      text-align: left !important;
    }
    #hdc-staff-directory .hdc-team-card .hdc-team-role {
      display: block !important;
      margin: 0 0 5px !important;
      text-align: left !important;
      font-size: 11px !important;
    }
    #hdc-staff-directory .hdc-team-card .hdc-team-info h4 {
      text-align: left !important;
      margin: 0 0 10px !important;
      font-size: 20px !important;
      line-height: 1.25 !important;
    }
    #hdc-staff-directory .hdc-team-card .hdc-team-info p {
      text-align: left !important;
      font-size: 14px !important;
      line-height: 1.5 !important;
      margin: 0 0 10px !important;
      padding: 0 !important;
    }
    #hdc-staff-directory .hdc-team-category-header {
      margin-bottom: 14px !important;
    }
    @media (max-width: 950px) {
      #hdc-staff-directory .hdc-team-grid,
      #hdc-staff-directory .hdc-team-grid:has(> :only-child) {
        grid-template-columns: minmax(0, 1fr) !important;
      }
    }
    @media (max-width: 560px) {
      #hdc-staff-directory.hdc-team { padding: 16px 6px 20px !important; }
      #hdc-staff-directory .hdc-team-card {
        grid-template-columns: 95px minmax(0, 1fr) !important;
        column-gap: 12px !important;
        padding: 12px !important;
      }
      #hdc-staff-directory .hdc-team-card > figure.hdc-team-photo {
        width: 95px !important;
        height: 119px !important;
        max-height: 119px !important;
      }
      #hdc-staff-directory .hdc-team-card .hdc-team-info h4 { font-size: 18px !important; }
      #hdc-staff-directory .hdc-team-card .hdc-team-info p { font-size: 13px !important; }
    }
    @media (max-width: 350px) {
      #hdc-staff-directory .hdc-team-card {
        grid-template-columns: minmax(0, 1fr) !important;
      }
      #hdc-staff-directory .hdc-team-card > figure.hdc-team-photo {
        grid-column: 1 !important;
        grid-row: 1 !important;
      }
      #hdc-staff-directory .hdc-team-card > .hdc-team-info {
        grid-column: 1 !important;
        grid-row: 2 !important;
      }
    }
  
/* Remove legacy decorative badges/gradients in staff portraits */
.hdc-team .hdc-team-panel .hdc-team-photo::before,
.hdc-team .hdc-team-panel .hdc-team-photo::after { content: none !important; display: none !important; }
.hdc-team .hdc-team-panel .hdc-team-card:hover { transform: none; }

/* =========================================================

   HDC STAFF HERO — TRUST PANEL

   ========================================================= */



.hdc-hero-trust {

  width: min(390px, calc(100% - 40px));

  padding: 30px;

  color: #173047;



  background:

    linear-gradient(

      145deg,

      rgba(255, 255, 255, 0.82),

      rgba(255, 255, 255, 0.66)

    );



  border: 1px solid rgba(255, 255, 255, 0.72);

  border-radius: 24px;



  box-shadow:

    0 20px 55px rgba(19, 43, 63, 0.18),

    inset 0 1px 0 rgba(255, 255, 255, 0.7);



  -webkit-backdrop-filter: blur(18px) saturate(120%);

  backdrop-filter: blur(18px) saturate(120%);



  overflow: hidden;

}



.hdc-hero-trust-heading {

  margin-bottom: 19px;

}



.hdc-hero-trust-kicker {

  display: block;

  margin-bottom: 5px;



  font-size: 0.77rem;

  font-weight: 700;

  line-height: 1.3;

  letter-spacing: 0.12em;

  text-transform: uppercase;



  color: rgba(23, 48, 71, 0.68);

}



.hdc-hero-trust-heading h2 {

  margin: 0;



  font-size: clamp(2rem, 3vw, 2.75rem);

  font-weight: 500;

  line-height: 1.05;

  letter-spacing: -0.045em;



  color: #173047;

}



.hdc-hero-trust-divider {

  width: 100%;

  height: 1px;

  margin-bottom: 23px;



  background: linear-gradient(

    90deg,

    rgba(23, 48, 71, 0.36),

    rgba(23, 48, 71, 0.06)

  );

}



.hdc-hero-trust-grid {

  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 12px;

}



.hdc-hero-trust-item {

  min-height: 112px;

  padding: 16px;



  display: flex;

  flex-direction: column;

  justify-content: space-between;

  gap: 12px;



  background: rgba(255, 255, 255, 0.5);

  border: 1px solid rgba(255, 255, 255, 0.68);

  border-radius: 17px;



  box-shadow:

    0 8px 20px rgba(23, 48, 71, 0.07),

    inset 0 1px 0 rgba(255, 255, 255, 0.72);



  transition:

    transform 180ms ease,

    background-color 180ms ease,

    box-shadow 180ms ease;

}



.hdc-hero-trust-item:hover {

  transform: translateY(-2px);

  background: rgba(255, 255, 255, 0.68);



  box-shadow:

    0 12px 26px rgba(23, 48, 71, 0.11),

    inset 0 1px 0 rgba(255, 255, 255, 0.8);

}



.hdc-hero-trust-number,

.hdc-hero-trust-icon {

  display: block;



  font-size: 1.85rem;

  font-weight: 500;

  line-height: 1;

  letter-spacing: -0.04em;



  color: #173047;

}



.hdc-hero-trust-icon {

  font-size: 1.55rem;

}



.hdc-hero-trust-label {

  display: block;



  font-size: 0.84rem;

  font-weight: 600;

  line-height: 1.35;



  color: rgba(23, 48, 71, 0.78);

}



.hdc-hero-trust-button {

  width: 100%;

  min-height: 50px;

  margin-top: 20px;

  padding: 12px 18px;



  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;



  color: #ffffff;

  background: #173047;



  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: 999px;



  font-size: 0.9rem;

  font-weight: 650;

  line-height: 1;

  letter-spacing: 0.01em;

  text-decoration: none;



  box-shadow: 0 10px 24px rgba(23, 48, 71, 0.2);



  transition:

    transform 180ms ease,

    background-color 180ms ease,

    box-shadow 180ms ease;

}



.hdc-hero-trust-button:hover,

.hdc-hero-trust-button:focus-visible {

  color: #ffffff;

  background: #234864;

  text-decoration: none;

  transform: translateY(-2px);



  box-shadow: 0 14px 30px rgba(23, 48, 71, 0.27);

}



.hdc-hero-trust-button:focus-visible {

  outline: 3px solid rgba(23, 48, 71, 0.26);

  outline-offset: 4px;

}





/* =========================================================

   OPTIONAL HERO POSITIONING

   Apply .hdc-staff-hero to the parent Blocs section.

   ========================================================= */



.hdc-staff-hero {

  position: relative;

}



.hdc-staff-hero .hdc-hero-trust {

  position: absolute;

  z-index: 5;



  top: 50%;

  right: clamp(28px, 6vw, 100px);



  transform: translateY(-50%);

}





/* =========================================================

   BLOCS BREAKPOINTS

   ========================================================= */



/* Medium and smaller: under 992px */

@media (max-width: 991.98px) {



  .hdc-staff-hero .hdc-hero-trust {

    right: 28px;

    width: min(350px, calc(100% - 56px));

  }



  .hdc-hero-trust {

    padding: 24px;

    border-radius: 21px;

  }



  .hdc-hero-trust-item {

    min-height: 102px;

    padding: 14px;

  }

}





/* Small and smaller: under 768px */

@media (max-width: 767.98px) {



  .hdc-staff-hero {

    display: flex;

    flex-direction: column;

  }



  .hdc-staff-hero .hdc-hero-trust {

    position: relative;



    top: auto;

    right: auto;



    width: calc(100% - 36px);

    max-width: 520px;

    margin: 28px auto;



    transform: none;

  }



  .hdc-hero-trust-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

  }

}





/* Extra small: under 576px */

@media (max-width: 575.98px) {



  .hdc-staff-hero .hdc-hero-trust {

    width: calc(100% - 28px);

    margin: 20px auto;

  }



  .hdc-hero-trust {

    padding: 21px 18px;

    border-radius: 19px;

  }



  .hdc-hero-trust-heading {

    margin-bottom: 16px;

  }



  .hdc-hero-trust-heading h2 {

    font-size: 2rem;

  }



  .hdc-hero-trust-divider {

    margin-bottom: 17px;

  }



  .hdc-hero-trust-grid {

    gap: 9px;

  }



  .hdc-hero-trust-item {

    min-height: 100px;

    padding: 13px;

    border-radius: 14px;

  }



  .hdc-hero-trust-number {

    font-size: 1.55rem;

  }



  .hdc-hero-trust-label {

    font-size: 0.76rem;

  }



  .hdc-hero-trust-button {

    min-height: 48px;

    margin-top: 16px;

  }

}





/* Respect reduced-motion preferences */

@media (prefers-reduced-motion: reduce) {



  .hdc-hero-trust-item,

  .hdc-hero-trust-button {

    transition: none;

  }

}







/* =========================================================

   FINAL LINK-COLOR SAFETY OVERRIDE

   Prevents theme link styles from changing button text.

   ========================================================= */



a.hdc-doctor-button,

a.hdc-doctor-button:link,

a.hdc-doctor-button:visited,

a.hdc-doctor-button:hover,

a.hdc-doctor-button:focus,

a.hdc-doctor-button:active,

a.hdc-team-cta-button,

a.hdc-team-cta-button:link,

a.hdc-team-cta-button:visited,

a.hdc-team-cta-button:hover,

a.hdc-team-cta-button:focus,

a.hdc-team-cta-button:active,

a.hdc-hero-trust-button,

a.hdc-hero-trust-button:link,

a.hdc-hero-trust-button:visited,

a.hdc-hero-trust-button:hover,

a.hdc-hero-trust-button:focus,

a.hdc-hero-trust-button:active,

.hdc-doctor-button *,

.hdc-team-cta-button *,

.hdc-hero-trust-button * {

  color: #ffffff !important;

  -webkit-text-fill-color: #ffffff;

  text-decoration: none !important;

}

