/* ==========================================================================
   Medspa_Theme — About Layouts (20)
   Token-driven tones. GROUND RULE: anything painting its own background
   declares its own text tokens, or it inherits the section's and goes invisible.
   ========================================================================== */
.msvc-about{position:relative;
  --a-bg:var(--cream); --a-fg:var(--ink); --a-fg2:var(--body); --a-fg3:var(--muted);
  --a-line:var(--border); --a-accent:var(--coral-ink); --a-card:#fff;
  background:var(--a-bg);color:var(--a-fg2);padding-block:var(--gap);
  display:block;grid-template-columns:none}
.msvc-about.t-white{--a-bg:var(--white)}
.msvc-about.t-cream{--a-bg:var(--cream)}
.msvc-about.t-sand {--a-bg:var(--sand)}
/* BLUSH RULE: --coral-ink 4.18:1 and --muted 4.11:1 both FAIL on blush. */
.msvc-about.t-blush{--a-bg:var(--blush); --a-accent:var(--coral-dk); --a-fg3:var(--body)}
.msvc-about.t-ink{--a-bg:var(--ink); --a-fg:#fff; --a-fg2:var(--on-dark-2); --a-fg3:var(--on-dark-2);
  --a-line:var(--border-lt); --a-accent:var(--nude); --a-card:var(--dark)}

.msvc-about .wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.msvc-about .msvc-eyebrow{color:var(--a-accent)}
.msvc-about h2{color:var(--a-fg)}
.msvc-about .msvc-prose{color:var(--a-fg2);margin-top:18px}
.msvc-about .msvc-prose :is(h3,h4,strong){color:var(--a-fg)}
.msvc-about .msvc-prose a{color:var(--a-accent)}
.msvc-about .ph{display:grid;place-items:center;background:var(--sand);color:var(--muted);
  border-radius:var(--rl);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.msvc-about img{border-radius:var(--rl);display:block}
.ab-head.ctr{text-align:center;max-width:760px;margin-inline:auto}
.ab-two{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}
.ab-two.rev>:first-child{order:-1}
.ab-drop>p:first-of-type::first-letter{float:left;font-family:var(--fd);
  font-size:3.4em;line-height:.82;padding:6px 10px 0 0;color:var(--a-accent)}

/* 2 */
.ab2-fig{margin:0}
.ab2-fig figcaption{font-size:.74rem;color:var(--a-fg3);margin-top:10px;font-style:italic}
/* 3 */
.ab3-w{max-width:720px;margin-inline:auto}
/* 4 */
.ab4-g{display:grid;grid-template-columns:1.5fr .85fr;gap:clamp(28px,4vw,52px);align-items:start}
.ab4-p{--a-fg:var(--ink); --a-fg2:var(--body); --a-fg3:var(--muted);
  background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:24px;position:sticky;top:96px}
.ab4-h{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--coral-ink);margin-bottom:14px}
.ab4-p dl{margin:0;display:grid;gap:12px}
.ab4-p dl>div{display:grid;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.ab4-p dl>div:last-child{border-bottom:0;padding-bottom:0}
.ab4-p dt{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--a-fg3)}
.ab4-p dd{margin:0;font-size:.9rem;font-weight:700;color:var(--a-fg)}
/* 5 — owns its ground */
.msvc-about.ab-5{--a-bg:var(--ink); --a-fg:#fff; --a-fg2:var(--on-dark-2); --a-fg3:var(--on-dark-2);
  --a-line:var(--border-lt); --a-accent:var(--nude)}
.ab5-w{max-width:820px;margin-inline:auto;text-align:center}
.ab5-p{font-size:1.06rem;line-height:1.75}
/* 6 */
.ab6-b{margin-bottom:clamp(24px,4vw,44px)}
.ab6-b img,.ab6-b .ph{border-radius:var(--rl)}
.ab6-t{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,4vw,52px);align-items:start}
.ab6-c{margin-top:0}
/* 7 */
.ab7-q{--a-fg:var(--ink); --a-fg3:var(--muted);
  margin:24px 0 0;padding:20px 24px;background:#fff;border-left:3px solid var(--coral-btn);
  border-radius:0 var(--rs) var(--rs) 0}
.ab7-q p{margin:0;font-family:var(--fd);font-size:1.1rem;line-height:1.5;color:var(--a-fg)}
.ab7-q cite{display:block;margin-top:10px;font-style:normal;font-size:.73rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--a-fg3)}
/* 8 */
.ab8-lead{max-width:720px;margin-inline:auto;text-align:center}
.ab8-g{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}
.ab8-c{--a-fg:var(--ink); --a-fg2:var(--body);
  background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:26px}
.ab8-c.isnt{background:var(--sand)}
.ab8-h{font-size:.94rem;font-weight:700;color:var(--a-fg);margin-bottom:14px}
.ab8-c ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.ab8-c li{display:flex;gap:10px;font-size:.87rem;color:var(--a-fg2);line-height:1.5}
.ab8-c li span{flex:none;font-weight:700}
.ab8-c.is li span{color:#1F7A4C}
.ab8-c.isnt li span{color:var(--coral-dk)}
/* 9 */
.ab9-v{position:relative;padding-top:56.25%;border-radius:var(--rl);overflow:hidden;background:var(--ink)}
.ab9-v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* 10 */
.ab10-g{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(28px,5vw,60px);align-items:center}
.ab10-i{position:relative}
.ab10-s{--a-fg:#fff;
  position:absolute;right:-18px;bottom:24px;background:var(--ink);border-radius:var(--rl);
  padding:18px 22px;box-shadow:0 18px 50px rgba(0,0,0,.22);min-width:130px}
.ab10-s .n{font-family:var(--fd);font-size:2.2rem;line-height:1;color:var(--a-fg)}
.ab10-s .l{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--on-dark-2);margin-top:6px}
/* 11 */
.ab11-c{column-count:2;column-gap:44px;margin-top:26px}
.ab11-c p{margin-top:0}
/* 12 */
.ab12-l{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:16px;counter-reset:ab12}
.ab12-l li{display:flex;gap:14px;align-items:flex-start}
.ab12-l .n{font-family:var(--fd);font-size:1.15rem;color:var(--a-accent);flex:none;
  line-height:1.2;min-width:26px}
.ab12-l .t{font-size:.9rem;font-weight:700;color:var(--a-fg)}
.ab12-l p{margin:4px 0 0;font-size:.85rem;color:var(--a-fg2);line-height:1.55}
/* 13 */
.ab13-lead{max-width:760px}
.ab13-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:32px}
.ab13-c{--a-fg:var(--ink); --a-fg2:var(--body); --a-accent:var(--coral-ink);
  background:#fff;border:1px solid var(--border);border-radius:var(--rl);padding:22px}
.ab13-c .ic{display:block;font-size:1.4rem;color:var(--a-accent);margin-bottom:10px}
.ab13-c .t{font-size:.9rem;font-weight:700;color:var(--a-fg);margin-bottom:6px}
.ab13-c p{margin:0;font-size:.83rem;color:var(--a-fg2);line-height:1.55}
/* 14 */
.ab14-lead{max-width:780px;margin-inline:auto;text-align:center;font-size:1.04rem;line-height:1.7}
.ab14-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:30px;margin-top:38px;
  padding-top:34px;border-top:1px solid var(--a-line)}
.ab14-c .t{font-size:.88rem;font-weight:700;color:var(--a-fg);margin-bottom:7px}
.ab14-c p{margin:0;font-size:.84rem;color:var(--a-fg2);line-height:1.55}
/* 15 */
.ab15-a img,.ab15-a .ph{border-radius:999px 999px var(--rl) var(--rl)}
/* 16 */
.ab16-c{--a-fg:var(--ink); --a-fg2:var(--body); --a-fg3:var(--muted); --a-accent:var(--coral-ink);
  --a-line:var(--border);
  background:#fff;border-radius:var(--rl);padding:clamp(26px,4vw,52px);
  box-shadow:0 20px 60px rgba(0,0,0,.07)}
/* 17 */
.ab17-w{max-width:820px;margin-inline:auto}
.ab17-lead{margin-bottom:10px}
.ab17-i{padding:22px 0;border-bottom:1px solid var(--a-line)}
.ab17-i:last-child{border-bottom:0}
.ab17-i h3{margin:0 0 8px;font-size:1rem;font-weight:700;color:var(--a-fg)}
.ab17-i p{margin:0;font-size:.88rem;color:var(--a-fg2);line-height:1.65}
/* 18 */
.ab18-lead{max-width:720px;margin-inline:auto;text-align:center}
.ab18-d{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:24px;margin-top:44px}
.ab18-line{position:absolute;left:6%;right:6%;top:5px;height:2px;background:var(--a-line)}
.ab18-s{position:relative;text-align:center}
.ab18-s .d{display:block;width:12px;height:12px;border-radius:50%;background:var(--a-accent);
  margin:0 auto 16px;position:relative;z-index:2;box-shadow:0 0 0 4px var(--a-bg)}
.ab18-s .t{font-size:.86rem;font-weight:700;color:var(--a-fg)}
.ab18-s p{margin:5px 0 0;font-size:.79rem;color:var(--a-fg2);line-height:1.5}
/* 19 */
.ab19-g{display:grid;grid-template-columns:1.1fr .9fr .7fr;gap:clamp(22px,3vw,40px);margin-top:30px;align-items:start}
.ab19-f{margin:0;display:grid;gap:12px}
.ab19-f>div{padding-bottom:12px;border-bottom:1px solid var(--a-line)}
.ab19-f>div:last-child{border-bottom:0}
.ab19-f dt{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--a-fg3)}
.ab19-f dd{margin:3px 0 0;font-size:.88rem;font-weight:700;color:var(--a-fg)}
/* 20 */
.ab20-fr{--a-fg:var(--ink); --a-fg2:var(--body); --a-fg3:var(--muted); --a-accent:var(--coral-ink);
  --a-line:var(--border);
  background:#fff;border:1px solid var(--ink);padding:clamp(26px,4vw,52px);
  clip-path:polygon(0 0,calc(100% - 40px) 0,100% 40px,100% 100%,40px 100%,0 calc(100% - 40px))}

@media(max-width:900px){
  .ab-two,.ab4-g,.ab6-t,.ab8-g,.ab10-g,.ab19-g{grid-template-columns:1fr}
  .ab-two.rev>:first-child{order:0}
  .ab11-c{column-count:1}
  .ab4-p{position:static}
  .ab10-s{right:12px;bottom:12px}
  .ab18-line{display:none}
}
