/* ===========================================================
   Single provider detail page — right-side sticky accordion
   (Locations · Questions & Answers · Map) + consultation CTA.
   Loaded ONLY on single amg_doctor pages (isolated). The sidebar
   is already position:sticky via main.css (.sidebar), and the
   .ibody grid collapses to one column at <=900px (responsive).
   =========================================================== */
/* ---- Slightly wider sidebar on single doctor pages (desktop only).
        <=900px still collapses to one full-width column via main.css,
        so it stays responsive across tablet & mobile. ---- */
@media(min-width:901px){
  .ibody{ grid-template-columns:1fr 380px; }
}

.doc-acc{
  background:#fff;
  border:1px solid var(--cyan-200);
  border-radius:var(--radius);
  box-shadow:0 10px 28px rgba(16,40,80,.07);
  overflow:hidden;
}

/* ---- Accordion items ---- */
.doc-acc__item{ border-bottom:1px solid var(--line); }
.doc-acc__item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:18px 22px;
  font-family:var(--sans);
  font-weight:600;
  color:var(--ink);
  font-size:1rem;
  transition:color .2s ease, background .2s ease;
}
.doc-acc__item summary::-webkit-details-marker{ display:none; }
.doc-acc__item summary:hover{ background:var(--cyan-50); }
.doc-acc__item[open] summary{ color:var(--blue); }

/* chevron that rotates smoothly on open/close */
.doc-acc__ic{
  flex:0 0 auto;
  width:9px; height:9px;
  border-right:2px solid var(--blue);
  border-bottom:2px solid var(--blue);
  transform:rotate(45deg);
  transition:transform .25s ease;
}
.doc-acc__item[open] .doc-acc__ic{ transform:rotate(-135deg); }

/* body slides + fades in on open */
.doc-acc__body{ padding:2px 22px 20px; animation:docAccIn .28s ease; }
@keyframes docAccIn{ from{ opacity:0; transform:translateY(-6px); } to{ opacity:1; transform:translateY(0); } }

/* ---- Locations list ---- */
.doc-loc{ padding:12px 0; border-bottom:1px solid var(--line); }
.doc-loc:last-child{ border-bottom:0; padding-bottom:2px; }
.doc-loc b{ display:block; color:var(--ink); font-size:.94rem; }
.doc-loc span{ display:block; color:var(--body); font-size:.84rem; margin:3px 0; line-height:1.5; }
.doc-loc a{ color:var(--blue); font-size:.84rem; font-weight:600; }
.doc-loc a:hover{ color:var(--blue-dark); }

/* ---- Q&A list ---- */
.doc-qa{ padding:11px 0; border-bottom:1px solid var(--line); }
.doc-qa:last-child{ border-bottom:0; padding-bottom:2px; }
.doc-qa b{ display:block; color:var(--ink); font-size:.9rem; margin-bottom:4px; }
.doc-qa p{ margin:0; color:var(--body); font-size:.84rem; line-height:1.55; }

/* ---- Map ---- */
.doc-map iframe{
  width:100%;
  height:200px;
  border:0;
  border-radius:var(--radius-sm);
  display:block;
  background:var(--cyan-50);
}

/* ---- Footer CTA ---- */
.doc-acc__foot{ padding:18px 22px 22px; }
.doc-acc__foot .btn{ width:100%; justify-content:center; }

/* ---- Bottom CTA: highlighted, boxed dark-blue container — mirrors the About Us
        page CTA (.about-cta) exactly, but scoped here with .doc-cta classes so
        single doctor pages match it without loading about.css. The shared
        template-parts/cta.php is left untouched for every other template. ---- */
.doc-cta-wrap{ background:var(--cyan-50); }
.doc-cta{
  background:#0059A6;
  color:#fff;
  border-radius:24px;
  padding:64px 40px;
  text-align:center;
  box-shadow:0 26px 60px -24px rgba(0,89,166,.55);
}
.doc-cta .pill{ background:rgba(255,255,255,.14); color:#fff; border-color:rgba(255,255,255,.28); }
.doc-cta h2{ color:#fff; }
.doc-cta .lead{ color:rgba(255,255,255,.85); margin:0 auto 26px; }
.doc-cta__btns{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.doc-cta .btn--light{ background:#fff; color:#0059A6; }
.doc-cta .btn--light:hover{ background:#e9f2fb; color:#0059A6; }
.doc-cta__ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.6); }
.doc-cta__ghost:hover{ background:#fff; color:#0059A6; border-color:#fff; }
@media(max-width:640px){ .doc-cta{ padding:44px 22px; } }
