/* A light clinic setting, framed portrait and four professional highlights. */
body.dark-variant #about-doctor.about-doctor--redesigned {
  position:relative;isolation:isolate;overflow:hidden;padding:74px 7vw 54px 16vw;
  background:#f6faff var(--ffc-media-04497232a5b7, url("images/doctor-clinic-background.png")) left center/cover no-repeat;
}
body.dark-variant #about-doctor.about-doctor--redesigned::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle 190px at 63% -10%,#dceff8b3 99%,transparent 100%),radial-gradient(circle 180px at 100% 111%,#dceff8b3 99%,transparent 100%);
}
body.dark-variant #about-doctor .about-doctor__inner {position:relative;display:block;width:100%;max-width:1420px;margin:0 auto}
body.dark-variant #about-doctor .about-doctor__main {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:68px}
body.dark-variant #about-doctor .about-doctor__copy {position:relative;isolation:isolate;min-width:0}
/* Keep the spine visible and soften the background only behind the biography. */
body.dark-variant #about-doctor .about-doctor__copy::before {
  content:"";position:absolute;inset:-16px -20px;z-index:-1;pointer-events:none;
  border-radius:18px;background:#f7fbfff5;filter:blur(12px);
}
body.dark-variant #about-doctor .about-doctor__eyebrow {
  display:flex;align-items:center;gap:15px;margin:0 0 23px;color:#003366;
  font-family:"Open Sans",Arial,sans-serif;font-size:14px;font-weight:700;line-height:1.6;letter-spacing:1.2px;text-transform:uppercase;
}
body.dark-variant #about-doctor .about-doctor__eyebrow::before {width:30px;height:2px;background:#fe9933}
body.dark-variant #about-doctor #about-doctor-heading {margin:0 0 24px;color:#003366;font-size:clamp(34px,3.05vw,54px);font-weight:700;line-height:1.16;letter-spacing:-1.6px;text-transform:none}
body.dark-variant #about-doctor #about-doctor-heading::after {content:"";display:block;width:58px;height:3px;margin-top:22px;background:#a9d0e7}
body.dark-variant #about-doctor .about-doctor__copy > p:not(.about-doctor__eyebrow) {margin:0 0 18px;color:#16324b;font-size:17px;font-weight:500;line-height:1.75;text-wrap:pretty}
body.dark-variant #about-doctor .about-doctor__copy > p:last-child {margin-bottom:0}
body.dark-variant #about-doctor .about-doctor__portrait-wrap {position:relative;isolation:isolate;width:100%;max-width:480px;margin-left:auto}
body.dark-variant #about-doctor .about-doctor__portrait-wrap::before {content:"";position:absolute;z-index:-1;top:-28px;right:-40px;width:75%;height:65%;border-radius:22px;background:linear-gradient(135deg,#bbd9e8,#8fbcd8)}
body.dark-variant #about-doctor .about-doctor__portrait-wrap::after {content:"";position:absolute;z-index:-1;top:46px;right:-100px;width:108px;height:140px;background:radial-gradient(circle,#a9cfe4 2.3px,transparent 2.8px) 0 0/18px 18px}
body.dark-variant #about-doctor .about-doctor__portrait {position:relative;width:100%;max-width:none;margin:0;overflow:hidden;border:3px solid #fff;border-radius:22px;background:#fff;box-shadow:0 18px 38px #163c6512}
body.dark-variant #about-doctor .about-doctor__portrait > img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
body.dark-variant #about-doctor figcaption {padding:19px 20px 20px;border:0;background:#fff;text-align:left}
body.dark-variant #about-doctor .about-doctor__name {margin:0 0 7px;color:#003366;font-size:25px;font-weight:700;line-height:1.25}
body.dark-variant #about-doctor .about-doctor__practice {color:#16324b;font-size:13px;font-weight:500;line-height:1.55}
body.dark-variant #about-doctor .about-doctor__credentials {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:52px 0 0;padding:0;list-style:none}
body.dark-variant #about-doctor .about-doctor__credential {display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:21px;margin:0;padding:0;min-width:0}
body.dark-variant #about-doctor .about-doctor__credential-icon {display:flex;align-items:center;justify-content:center;width:82px;height:82px;border-radius:50%;background:#dfedf7;color:#003366}
body.dark-variant #about-doctor .about-doctor__credential-icon svg {display:block;width:48px;height:48px}
body.dark-variant #about-doctor .about-doctor__credential-copy {position:relative;isolation:isolate;min-width:0;min-height:65px;padding-left:22px;border-left:1px solid #b6bfc9}
body.dark-variant #about-doctor .about-doctor__credential-copy::before {
  content:"";position:absolute;inset:-6px -10px -6px 0;z-index:-1;pointer-events:none;
  border-radius:8px;background:#f7fbfff5;filter:blur(8px);
}
body.dark-variant #about-doctor .about-doctor__credential h3 {margin:0 0 5px;color:#003366;font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.5px;text-transform:none}
body.dark-variant #about-doctor .about-doctor__credential p {margin:0;color:#31465b;font-size:14px;line-height:1.5}
body.dark-variant #about-doctor .about-doctor__credential .about-doctor__credential-label {font-size:12px;font-weight:600;line-height:1.6;letter-spacing:1.3px;text-transform:uppercase}
/* Reserve the spine's side of the photograph on laptop-sized screens. */
@media(max-width:1600px) and (min-width:901px) {
  body.freeport-site.dark-variant #content > #about-doctor.about-doctor--redesigned {padding:56px clamp(40px,5vw,80px) 44px clamp(250px,24vw,360px);background-position:-24px center}
  body.freeport-site.dark-variant #content #about-doctor .about-doctor__inner {max-width:1080px}
  body.dark-variant #about-doctor .about-doctor__main {grid-template-columns:minmax(0,1.5fr) minmax(0,.95fr);gap:36px}
  body.dark-variant #about-doctor .about-doctor__copy::before {inset:-12px -14px;filter:blur(10px)}
  body.dark-variant #about-doctor .about-doctor__eyebrow {margin-bottom:18px}
  body.dark-variant #about-doctor #about-doctor-heading {margin-bottom:20px;font-size:clamp(32px,2.8vw,44px);letter-spacing:-1px}
  body.dark-variant #about-doctor #about-doctor-heading::after {margin-top:18px}
  body.dark-variant #about-doctor .about-doctor__copy > p:not(.about-doctor__eyebrow) {margin-bottom:14px;font-size:16px;line-height:1.7}
  body.dark-variant #about-doctor .about-doctor__copy > p:last-child {margin-bottom:0}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap {max-width:360px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap::before {top:-22px;right:-26px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap::after {right:-64px;width:76px;background-size:16px 16px}
  body.dark-variant #about-doctor figcaption {padding:16px 17px}
  body.dark-variant #about-doctor .about-doctor__name {font-size:22px}
  body.dark-variant #about-doctor .about-doctor__practice {font-size:12px}
  body.dark-variant #about-doctor .about-doctor__credentials {margin-top:36px;gap:20px}
  body.dark-variant #about-doctor .about-doctor__credential {grid-template-columns:65px minmax(0,1fr);gap:14px}
  body.dark-variant #about-doctor .about-doctor__credential-icon {width:65px;height:65px}
  body.dark-variant #about-doctor .about-doctor__credential-icon svg {width:39px;height:39px}
  body.dark-variant #about-doctor .about-doctor__credential-copy {padding-left:15px}
  body.dark-variant #about-doctor .about-doctor__credential h3 {font-size:16px}
  body.dark-variant #about-doctor .about-doctor__credential .about-doctor__credential-label {font-size:10px;letter-spacing:1px}
}
@media(max-width:1100px) and (min-width:901px) {
  body.freeport-site.dark-variant #content > #about-doctor.about-doctor--redesigned {padding-left:clamp(230px,24vw,264px);background-position:calc(16vw - 270px) center}
  body.dark-variant #about-doctor .about-doctor__main {gap:28px}
  body.dark-variant #about-doctor .about-doctor__copy > p:not(.about-doctor__eyebrow) {font-size:15px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap {max-width:280px}
}
@media(max-width:900px) {
  body.dark-variant #about-doctor.about-doctor--redesigned {padding:58px 28px 50px;background-position:left top}
  body.dark-variant #about-doctor .about-doctor__inner {max-width:760px}
  body.dark-variant #about-doctor .about-doctor__main {grid-template-columns:minmax(0,1fr);gap:44px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap {max-width:450px;margin:0 auto}
  body.dark-variant #about-doctor #about-doctor-heading {font-size:38px}
  body.dark-variant #about-doctor .about-doctor__copy > p:not(.about-doctor__eyebrow) {font-size:16px;line-height:1.75}
  body.dark-variant #about-doctor .about-doctor__credentials {grid-template-columns:minmax(0,1fr);max-width:520px;margin:36px auto 0;gap:22px}
  body.dark-variant #about-doctor .about-doctor__credential {grid-template-columns:72px minmax(0,1fr)}
  body.dark-variant #about-doctor .about-doctor__credential-icon {width:72px;height:72px}
  body.dark-variant #about-doctor .about-doctor__credential-icon svg {width:42px;height:42px}
}
@media(max-width:600px) {
  body.dark-variant #about-doctor.about-doctor--redesigned {padding:48px 22px}
  body.dark-variant #about-doctor .about-doctor__eyebrow {font-size:13px;letter-spacing:1px;gap:12px;margin-bottom:18px}
  body.dark-variant #about-doctor #about-doctor-heading {font-size:34px;letter-spacing:-1px;line-height:1.15}
  body.dark-variant #about-doctor #about-doctor-heading::after {margin-top:18px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap::before {top:-18px;right:-20px}
  body.dark-variant #about-doctor .about-doctor__portrait-wrap::after {right:-58px;width:66px;top:30px}
  body.dark-variant #about-doctor .about-doctor__name {font-size:23px}
  body.dark-variant #about-doctor figcaption {padding:16px 17px}
  body.dark-variant #about-doctor .about-doctor__practice {font-size:12px}
  body.dark-variant #about-doctor .about-doctor__credential {gap:17px}
  body.dark-variant #about-doctor .about-doctor__credential-copy {padding-left:18px}
  body.dark-variant #about-doctor .about-doctor__credential h3 {font-size:17px}
}

/* Lightweight Google review feed, without third-party widget scripts. */
body.freeport-site #patient-reviews{background:#f7f9fc;color:#172d39}
body.freeport-site #patient-reviews #patient-reviews-heading{color:#003366}
body.freeport-site #patient-reviews .patient-reviews__eyebrow{color:#655136}
body.freeport-site #patient-reviews .patient-reviews__google{background:#fff;color:#172d39;border:1px solid #dce4ed;box-shadow:none}
body.freeport-site #patient-reviews .patient-reviews__total{color:#526172}
#patient-reviews .patient-reviews__note{margin:12px 0;color:#526172;font-size:14px}
#patient-reviews .patient-reviews__controls{display:flex;justify-content:flex-end;gap:8px;margin:0 0 16px}
#patient-reviews .patient-reviews__controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;background:#fff;color:#003366;border:1px solid #cbd7e2;border-radius:50%;font-size:24px;cursor:pointer}
#patient-reviews .patient-reviews__controls button:disabled{opacity:.4;cursor:default}
#patient-reviews .patient-reviews__controls button:is(:hover,:focus){background:#edf3fa;color:#003366}
#patient-reviews .patient-reviews__grid{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 40px)/3);grid-template-rows:auto;gap:20px;overflow-x:auto;align-items:start;scroll-snap-type:x mandatory;scroll-padding:2px;padding:4px 2px 20px;scrollbar-width:thin}
body.freeport-site #patient-reviews .review-card{grid-row:auto!important;scroll-snap-align:start;min-width:0;margin:0;border:1px solid #e0e5eb;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00336608}
#patient-reviews .review-card__inner{display:flex;flex-direction:column;padding:24px;gap:16px}
#patient-reviews .review-card__author{display:flex;align-items:center;gap:12px;margin:0}
body.freeport-site #patient-reviews .review-card__avatar{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;background:#edf3fa;color:#003366;border:0;font-size:14px}
#patient-reviews .review-card__profile{min-width:0;flex:1}
body.freeport-site #patient-reviews .review-card__profile h3{color:#172d39;font-size:15px;line-height:1.4;margin:0 0 3px;letter-spacing:0}
#patient-reviews .review-card__source-link{color:#526172;font-size:12px;line-height:1.4;text-decoration:none}
#patient-reviews .review-card__source-link:hover{text-decoration:underline}
#patient-reviews .review-card__google-icon{width:24px;height:24px;flex:none}
#patient-reviews .review-card__rating{color:#946500;letter-spacing:2px;font-size:20px;line-height:1}
#patient-reviews .review-card__quote{padding:0;margin:0;border:0}
body.freeport-site #patient-reviews .review-card__text{color:#344352;font-size:15px;line-height:1.65;margin:0;white-space:pre-line}
body.freeport-site #patient-reviews .review-card__toggle{align-self:flex-start;padding:0;min-height:32px;border:0;background:transparent;color:#003366;font-size:13px;text-decoration:underline}
#patient-reviews .patient-reviews__actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;margin-top:24px}
#patient-reviews .patient-reviews__all{color:#003366;text-decoration:underline;font-size:15px}
body.freeport-site #patient-reviews .patient-reviews__appointment{background:#003366;color:#fff;border-color:#003366;padding:14px 22px}
#patient-reviews :is(button,a,[tabindex]):focus-visible{outline:3px solid #07549b;outline-offset:3px}
@media(max-width:1000px){#patient-reviews .patient-reviews__grid{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:600px){#patient-reviews .patient-reviews__grid{grid-auto-columns:90%}#patient-reviews .review-card__inner{padding:20px}}
/* Keep offscreen accessibility labels inside the scrollable feed. */
#patient-reviews .review-card{position:relative}
#patient-reviews .review-card__source-link{position:relative}
