/* A2 = A + Gretchen 10/30 15:21 fixes only. Loaded after mm-a.css. ICON parity measured on
   iconpediatricdentistrye.kinsta.cloud (a2/qa/icon_metrics.json): round chips 48px / 20px glyph,
   centered headings over full-width card rows, very light brand-tint grounds, full-bleed photo cards (radius 22). */
:root{--sage-t:#EEF1EC;--sand-t:#F6F2E7;--sage-c:#E1E7DF;--sand-c:#EFE7D3;--ivory-c:#F3EEE0;--rad2:22px}

/* Maple mark = the only motif (eyebrow marker) */
.mk{width:30px;height:16px;flex:none;color:var(--gold,#C2A36A)}
.ma-eb .mk{color:#BB9C63}.ma-eb.on-dark .mk,.ma-hero .seo .mk{color:#C2A36A}
.ma-hero .seo{display:flex;align-items:center;gap:12px}
.ma-eb.center{justify-content:center}

/* top bar: Deep River with both social icons + call (ICON pattern) */
.topbar{background:#48584E!important}
.topbar .soc{gap:14px!important}
.topbar .soc a svg{width:16px;height:16px}

/* round icon chips, ICON size */
.ic-chip{width:48px!important;height:48px!important;border-radius:50%!important;display:grid!important;place-items:center!important;flex:0 0 48px}
.ic-chip svg{width:20px!important;height:20px!important}
.ma-pf-ic{background:#48584E!important;color:#fff!important}
.ma-st-chip{background:#fff!important;color:#48584E!important;box-shadow:0 6px 16px -8px rgba(44,54,48,.5)}
.ma-tx-ic{background:#fff!important;color:#48584E!important;box-shadow:0 6px 16px -8px rgba(44,54,48,.5)}
.ma-ap-ic{background:rgba(255,255,255,.12)!important;color:#E6E0CA!important;border:1.5px solid rgba(230,224,202,.45)}
.ma-fin-ic{background:#48584E!important;color:#fff!important}

/* centered heading groups over full-width card rows */
.ma-head.center{text-align:center;max-width:860px;margin-left:auto;margin-right:auto}
.ma-head.center .ma-intro{margin:16px auto 0;max-width:620px;color:var(--muted);font-size:18px}

/* grounds: white / light brand tints / one deep band, never the same twice in a row */
.ma-proofband{background:#fff!important}
.ma-steps{background:var(--sage-t)!important}
.ma-doc{background:#fff!important}
.ma-tx-sec{background:var(--sand-t)!important}
.ma-fin{background:#fff!important}
.ma-loc{background:var(--sage-t)!important}
.ma-faq{background:#fff!important}

/* step cards: full-bleed photo, number chip on the photo edge, tinted body (ICON first-visit cards) */
.ma-st{border-radius:var(--rad2)!important;background:#fff}
.ma-st.t0{background:var(--sage-c)!important}.ma-st.t1{background:var(--sand-c)!important}.ma-st.t2{background:var(--ivory-c)!important}
.ma-st-media{margin:0!important;border-radius:0!important;aspect-ratio:3/2}
.ma-st-chip{right:14px!important;top:14px!important;bottom:auto!important}
.ma-st-body{position:relative;padding:0 26px 30px!important}
.ma-st-n{display:inline-block!important;font-size:40px!important;line-height:1!important;padding:12px 16px 8px;margin:-34px 0 12px -26px!important;background:inherit;border-radius:0 16px 0 0;position:relative;color:#48584E!important}
.ma-st.t0 .ma-st-n{background:var(--sage-c)}.ma-st.t1 .ma-st-n{background:var(--sand-c)}.ma-st.t2 .ma-st-n{background:var(--ivory-c)}

/* treatment photo cards: white card, full-bleed photo, ICON radius, soft shadow, sage top rule */
.ma-tx{background:#fff!important;border-radius:var(--rad2)!important;box-shadow:0 20px 40px -28px rgba(44,54,48,.45);border-top:3px solid #AFB9AE}
.ma-tx-media{border-radius:0!important}
.ma-tx-ic{left:auto!important;right:14px;top:14px;bottom:auto!important}

/* fee cards on white = tinted */
.ma-fin-c{background:var(--sand-t)!important;box-shadow:none!important;border-radius:var(--rad2)!important}

/* why band stays the one deep band */
.ma-apart{margin-top:0!important}

/* mega menu m3: compact, every item a page, photo stretched to the column height (no white space) */
.mpanel.m3{width:auto!important;max-width:calc(100vw - 40px);padding:26px!important}
.m3-grid{display:grid;grid-template-columns:auto 240px;gap:28px;align-items:stretch}
.m3-cols{display:flex;gap:32px}
.m3-col{min-width:200px}
.m3-col ul{list-style:none;margin:0;padding:0}
.mpanel.m3 a.m3-h{display:flex;align-items:center;justify-content:space-between;gap:10px;font:600 13px/1.2 var(--body);text-transform:uppercase;letter-spacing:.14em;color:#48584E;text-decoration:none;padding:4px 0 12px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.mpanel.m3 li a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;font-size:17px;font-weight:600;color:var(--night);text-decoration:none}
.mpanel.m3 li a:hover,.mpanel.m3 a.m3-h:hover{text-decoration:underline;text-underline-offset:4px}
.mpanel.m3 li a:hover .m2-ar,.mpanel.m3 a.m3-h:hover .m2-ar{opacity:1;transform:none}
.m3-feat{position:relative;display:block;border-radius:14px;overflow:hidden;min-height:170px;text-decoration:none}
.m3-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.m3-feat:hover img{transform:scale(1.04)}
.m3-cap{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;color:#2C3630;border-radius:10px;padding:10px 12px;font-weight:600;font-size:15px}

/* 390: no short photo crops */
@media (max-width:640px){
  .ma-hero{display:block!important;min-height:0!important}
  .ma-hero-bg{position:relative!important;inset:auto!important;aspect-ratio:4/5}
  .ma-hero-bg img{object-position:62% 20%}
  .ma-hero-shade{background:linear-gradient(180deg,rgba(44,54,48,0) 55%,rgba(44,54,48,.9) 100%)!important}
  .ma-hero-in{padding:28px 0 44px!important;background:#2C3630}
  .ma-hero-copy{max-width:none!important}
  .ma-loc-media{aspect-ratio:4/3!important;height:auto!important;min-height:0!important}
  .ma-loc-media img{height:100%!important;object-position:70% 30%}
  .ma-loc-card{margin-top:16px!important;transform:none!important}
  .ma-st-media,.ma-tx-media{aspect-ratio:4/3!important}
  .ma-cta-bg{aspect-ratio:4/3!important}
  .ma-head.center{text-align:left}.ma-eb.center{justify-content:flex-start}
}
/* r2 fixes */
.ma-faq .qa{background:var(--sand-t)!important;box-shadow:none!important}
@media (max-width:640px){
  .ma-hero{background:#2C3630!important}
  .ma-hero-bg{width:100%!important;max-width:none!important;left:auto!important;right:auto!important}
  .ma-hero-in{background:transparent!important}
}
.m3-feat{min-height:120px!important}.mpanel.m3 a.m3-h{font-size:15px!important}
@media (max-width:640px){.ma-hero-bg{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1/1!important}.ma-hero-bg img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover}}
/* r1 reviewer fixes (10/30) */
.mpanel.m3 li.sub a{padding:7px 0 7px 18px;font-size:16px;font-weight:500;color:#48584E}
.m3-grid{grid-template-columns:minmax(230px,auto) 250px!important}
.m3-feat{min-height:0!important}
.a2-dochead{display:flex;align-items:center;gap:22px}
.a2-docph{flex:0 0 132px;width:132px;height:132px;margin:0;border-radius:50%;background:var(--sage-t);border:2px dashed #AFB9AE;display:grid;place-items:center;align-content:center;gap:6px;text-align:center;color:#48584E}
.a2-docph .mk{width:44px;height:23px;color:#48584E}
.a2-docph figcaption{font-size:11px;line-height:1.25;padding:0 14px;font-weight:600;letter-spacing:.02em}
.ma-ap-lead{align-self:stretch;display:flex;flex-direction:column}
.a2-apph{margin:28px 0 0;border-radius:22px;overflow:hidden;flex:1 1 auto;min-height:220px;position:relative}
.a2-apph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.ma-ap-lead .ma-actions .btn{margin-top:26px}
.mm-label{font-size:15px!important;color:#F3EEE0!important;letter-spacing:.16em}
@media (max-width:640px){
  .ma-hero{display:flex!important;flex-direction:column}
  .ma-hero-in{order:0}.ma-hero-bg{order:1;aspect-ratio:4/3!important}
  .ma-hero-in{padding:26px 0 30px!important}
  .a2-docph{flex-basis:96px;width:96px;height:96px}.a2-docph figcaption{font-size:9px;padding:0 8px}
  .a2-apph{min-height:0;aspect-ratio:4/3;flex:none}
}
.mpanel.m3{width:max-content!important}
.m3-grid{grid-template-columns:240px 260px!important;gap:24px!important}
/* r2 reviewer fixes (10/30) */
.ma-doc-copy,.ma-doc-creds{min-width:0}
.ma-doc-copy h2{overflow-wrap:break-word}
@media (min-width:901px) and (max-width:1240px){.ma-doc2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}.ma-doc-creds{padding:26px 26px 30px}.cred{grid-template-columns:104px minmax(0,1fr);gap:16px}.cred-logo .aff-img{max-width:104px;background-size:contain}.cred-t b{font-size:16px;letter-spacing:.03em}.cred-t span{font-size:15px}}
@media (max-width:640px){.cred-t b{font-size:15px;letter-spacing:.03em}}
.ma-loc-media img{transform:scale(1.32);transform-origin:100% 78%;object-position:100% 50%!important}
.m3-feat{min-height:150px!important}.m3-feat img{object-position:50% 12%}
.ma-fin .ma-intro .tlink{margin-left:6px}
.a2-doch2 .nw{display:inline-block;white-space:nowrap}
.a2-doch2{font-size:clamp(28px,3.9vw,56px)!important}
@media (min-width:901px) and (max-width:1240px){.a2-doch2{font-size:clamp(30px,3.4vw,44px)!important}}
/* r3: 768 steps row layout - number tab no longer pulls into the photo */
@media (min-width:641px) and (max-width:1100px){.ma-st-body{padding:24px 26px!important}.ma-st-n{margin:0 0 10px 0!important;padding:0!important;background:none!important;border-radius:0!important}}
/* r3: treatment photo cards full-bleed, no sage seam on top (ICON parity) */
.ma-tx{border-top:0!important;overflow:hidden}
/* r3: mobile drawer visit block */
.mm-visit{margin:22px 22px 28px;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.85);font-size:15px;line-height:1.55}
.mm-visit p{margin:0 0 8px}.mm-visit-h{font-size:14px!important;letter-spacing:.14em;text-transform:uppercase;color:#D8C9A3;margin-bottom:10px!important}
.mm-visit .tlink{color:#fff}
.ma-ap h3{hyphens:manual}
.ma-ap h3 .nw{white-space:nowrap}
/* r3b: row-layout step card - photo fills its grid column (aspect-ratio was forcing it 39px into the text column) */
@media (min-width:641px) and (max-width:1100px){.ma-st-media{aspect-ratio:auto!important;width:100%!important;height:100%!important;min-height:200px}.ma-st-media img{position:absolute;inset:0}}
/* r3b: footer top row wraps between 641-900 (CTA was pushing the page 73px wide) */
@media (max-width:900px){.f-top{flex-wrap:wrap;gap:24px}}
/* r3d: 360 sideways scroll - header row, location grid track, CTA photo all fit the viewport */
@media (max-width:380px){.logo img,.hdr.scrolled .logo img{width:min(160px,44vw)!important;height:auto!important}}
@media (max-width:640px){.ma-loc-in{grid-template-columns:minmax(0,1fr)!important}.ma-loc-media,.ma-loc-card{min-width:0}.ma-cta-bg{height:auto!important}}
