/* ========================================================================== 
   Beautral 3.2 — family-aware service architecture
   ========================================================================== */
.beautral-service{background:var(--bg);overflow:clip}
.beautral-service :where(.beautral-section-heading)>span,.beautral-kicker{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.45rem;color:var(--brand-strong);font-size:.78rem;font-weight:700}
.beautral-section-heading{margin-bottom:1.35rem}.beautral-section-heading h2{font-size:clamp(1.65rem,3vw,2.45rem)}
.beautral-section-heading--split{display:flex;align-items:end;justify-content:space-between;gap:2rem}.beautral-section-heading--split>p{max-width:480px;margin:0;color:var(--muted);font-size:.92rem}

/* Hero */
.beautral-service-hero{position:relative;padding-block:clamp(2rem,5vw,4.8rem);border-bottom:1px solid var(--line);background:var(--bg)}
.beautral-service-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 24%,color-mix(in srgb,var(--brand) 14%,transparent),transparent 34%)}
.beautral-service-hero--pricing::before{background:radial-gradient(circle at 82% 24%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 34%)}
.beautral-service-hero--comparison::before{background:radial-gradient(circle at 82% 24%,color-mix(in srgb,var(--brand-strong) 13%,transparent),transparent 36%)}
.beautral-service-hero .container{position:relative}
.beautral-service-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);align-items:center;gap:clamp(2rem,6vw,5.25rem);margin-top:1.25rem}
.beautral-service-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:.8rem}
.beautral-service-eyebrow{display:inline-flex;align-items:center;min-height:30px;padding:.28rem .68rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--brand-strong);font-size:.78rem;font-weight:700}
.beautral-service-parent-chip{display:inline-flex;align-items:center;gap:.28rem;min-height:30px;padding:.25rem .55rem;border-radius:999px;color:var(--muted);font-size:.76rem;font-weight:700}
.beautral-service-parent-chip:hover{background:var(--surface-2);color:var(--brand-strong)}
.beautral-service-parent-chip .material-icons-round{font-size:17px}
.beautral-service-hero h1{max-width:850px;margin-bottom:1rem;font-size:clamp(2.35rem,5.3vw,4.65rem);line-height:1.18}
.beautral-service-summary{max-width:720px;margin:0;color:var(--ink-soft);font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.95}
.beautral-service-hero__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.35rem}.beautral-service-hero__actions .btn{gap:.35rem}
.beautral-service-primary-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem;margin-top:1.15rem;color:var(--muted);font-size:.82rem}.beautral-service-primary-price strong{color:var(--brand-strong);font-size:1.02rem}
.beautral-service-hero__media,.beautral-service-hero__placeholder{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2);box-shadow:var(--shadow-soft)}
.beautral-service-hero__media img{width:100%;aspect-ratio:4/5;object-fit:cover}
.beautral-service-hero__placeholder{min-height:440px;display:grid;place-items:center;background:linear-gradient(145deg,var(--surface),var(--surface-2))}.beautral-service-hero__placeholder .material-icons-round{color:var(--brand-strong);font-size:72px;opacity:.72}

/* Hub directory */
.beautral-service-directory{border-bottom:1px solid var(--line);background:var(--bg-soft)}
.beautral-service-directory__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.beautral-path-card{min-height:160px;display:flex;flex-direction:column;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 0 0 rgba(0,0,0,0);transition:transform var(--ease),border-color var(--ease),box-shadow var(--ease)}
.beautral-path-card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:var(--shadow-soft)}
.beautral-path-card__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1rem;color:var(--muted);font-size:.75rem}.beautral-path-card__top .material-icons-round{font-size:19px;color:var(--brand-strong)}
.beautral-path-card h3{font-size:1.08rem}.beautral-path-card p{margin:.55rem 0 0;color:var(--muted);font-size:.84rem;line-height:1.75}

/* Pricing family */
.beautral-price-focus{background:var(--bg-soft)}
.beautral-price-focus__card{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.42fr);align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}
.beautral-price-focus__copy{padding:clamp(1.3rem,3vw,2rem)}.beautral-price-focus__copy h2{margin-bottom:.6rem;font-size:clamp(1.5rem,2.8vw,2.3rem)}.beautral-price-focus__copy p{max-width:660px;margin:0;color:var(--muted)}
.beautral-price-focus__value{display:flex;flex-direction:column;justify-content:center;gap:.35rem;padding:clamp(1.3rem,3vw,2rem);background:var(--surface-warm)}
.beautral-price-focus__value>span{color:var(--muted);font-size:.78rem}.beautral-price-focus__value>strong{font-size:clamp(1.25rem,2.2vw,1.8rem);color:var(--ink)}
.beautral-price-focus__value>a{display:inline-flex;align-items:center;gap:.3rem;margin-top:.65rem;color:var(--brand-strong);font-size:.84rem;font-weight:700}.beautral-price-focus__value .material-icons-round{font-size:18px}

/* Comparison family */
.beautral-decision-panel{background:var(--bg-soft)}
.beautral-decision-panel__inner{display:grid;grid-template-columns:minmax(240px,.45fr) minmax(0,1fr);gap:1.2rem;padding:clamp(1rem,2.5vw,1.5rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}
.beautral-decision-panel__heading{padding:.55rem}.beautral-decision-panel__heading>span{color:var(--accent-text);font-size:.78rem;font-weight:700}.beautral-decision-panel__heading h2{margin-top:.4rem;font-size:clamp(1.4rem,2.5vw,2rem)}
.beautral-decision-panel__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.beautral-decision-panel__links a{position:relative;display:flex;flex-direction:column;min-height:112px;padding:.9rem 2.6rem .9rem .9rem;border:1px solid var(--line);border-radius:14px;background:var(--bg);transition:border-color var(--ease),transform var(--ease)}.beautral-decision-panel__links a:hover{transform:translateY(-1px);border-color:var(--line-strong)}
.beautral-decision-panel__links small{color:var(--muted);font-size:.72rem}.beautral-decision-panel__links strong{margin-top:.25rem;color:var(--ink);font-size:.96rem}.beautral-decision-panel__links .material-icons-round{position:absolute;top:50%;right:.8rem;transform:translateY(-50%);color:var(--brand-strong);font-size:19px}

/* Main editorial content */
.beautral-service-content{padding-block:clamp(2.8rem,6vw,5.2rem)}
.beautral-service-content__grid{display:grid;grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:clamp(2rem,5vw,4rem)}
.beautral-service-article{max-width:820px}.beautral-service-article>:first-child{margin-top:0}
.beautral-service-sticky{position:sticky;top:92px}.beautral-service-sticky__card{padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}
.beautral-service-sticky__card>strong{display:block;margin-bottom:.35rem;color:var(--ink);font-size:1rem}.beautral-service-sticky__card>p{margin:0 0 .9rem;color:var(--muted);font-size:.84rem;line-height:1.75}.beautral-service-sticky__card .btn{width:100%}

/* Clinical/data panels */
.beautral-service-panels-section,.beautral-service-safety{background:var(--bg-soft)}
.beautral-service-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.beautral-service-panel-grid.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.beautral-service-panel{padding:1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.beautral-service-panel h3{margin-bottom:.7rem;font-size:1rem}.beautral-service-panel ul{display:grid;gap:.45rem;padding-right:1.05rem;color:var(--ink-soft);font-size:.9rem}.beautral-service-panel li::marker{color:var(--brand)}
.beautral-service-panel.is-positive{background:var(--surface-2)}.beautral-service-panel.is-caution,.beautral-service-panel.is-warning{background:var(--surface-warm)}.beautral-service-panel.is-danger{border-color:color-mix(in srgb,#a65348 32%,var(--line));background:color-mix(in srgb,#a65348 7%,var(--surface))}
.beautral-step-list{counter-reset:steps;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.beautral-step-list li{counter-increment:steps;position:relative;min-height:94px;padding:1rem 3.6rem 1rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.beautral-step-list li::before{content:counter(steps);position:absolute;top:1rem;right:1rem;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--brand-strong);font-weight:900}.beautral-step-list p{margin:0;color:var(--ink-soft);font-size:.91rem}

/* Internal-link graph */
.beautral-related-paths{border-block:1px solid var(--line);background:var(--bg-soft)}
.beautral-related-paths__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}
.beautral-related-link{position:relative;min-height:120px;display:flex;flex-direction:column;padding:.85rem 2.35rem .85rem .8rem;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.beautral-related-link:hover{border-color:var(--line-strong);box-shadow:var(--shadow-soft)}
.beautral-related-link>span:first-child{color:var(--muted);font-size:.7rem}.beautral-related-link>strong{margin-top:.35rem;color:var(--ink);font-size:.9rem;line-height:1.55}.beautral-related-link>.material-icons-round{position:absolute;right:.72rem;top:.78rem;color:var(--brand-strong);font-size:18px}

/* Review */
.beautral-service-review{padding-top:1.2rem}.beautral-medical-review{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.85rem 0;border-block:1px solid var(--line);color:var(--muted);font-size:.82rem}.beautral-medical-review>div{display:flex;align-items:center;gap:.45rem}.beautral-medical-review strong{color:var(--ink)}
.beautral-mobile-cta{display:none}

/* Type nuances */
.beautral-service--hub .beautral-service-content{padding-top:clamp(2.5rem,5vw,4rem)}
.beautral-service--detail .beautral-service-hero__media img{aspect-ratio:1/1}
.beautral-service--pricing .beautral-service-hero h1,.beautral-service--comparison .beautral-service-hero h1{font-size:clamp(2.2rem,4.7vw,4.1rem)}

@media(max-width:1100px){.beautral-related-paths__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.beautral-service-directory__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.beautral-service-hero__grid,.beautral-service-content__grid,.beautral-price-focus__card,.beautral-decision-panel__inner{grid-template-columns:1fr}.beautral-service-hero__media{max-width:680px}.beautral-service-hero__media img{aspect-ratio:16/10}.beautral-service-hero__placeholder{min-height:260px}.beautral-service-sticky{display:none}.beautral-price-focus__value{border-top:1px solid var(--line)}}
@media(max-width:700px){.beautral-section-heading--split{align-items:start;flex-direction:column;gap:.5rem}.beautral-service-directory__grid,.beautral-service-panel-grid,.beautral-service-panel-grid.is-two,.beautral-step-list,.beautral-decision-panel__links{grid-template-columns:1fr}.beautral-related-paths__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.beautral-service-hero__grid{gap:1.5rem}.beautral-service-hero__actions .btn{flex:1}.beautral-medical-review{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.beautral-service-hero{padding-top:1.2rem}.beautral-service-hero__grid{margin-top:.9rem}.beautral-service-hero h1{font-size:clamp(2rem,10vw,3rem)}.beautral-service-summary{font-size:.98rem}.beautral-service-hero__media{border-radius:20px}.beautral-related-paths__grid{grid-template-columns:1fr}.beautral-mobile-cta{position:fixed;right:.75rem;bottom:.75rem;left:.75rem;z-index:50;display:flex;gap:.5rem;padding:.45rem;border:1px solid var(--line);border-radius:16px;background:var(--overlay);box-shadow:var(--shadow-soft);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.beautral-mobile-cta .btn{flex:1}.beautral-service-review{padding-bottom:5rem}}
@media(prefers-reduced-motion:reduce){.beautral-path-card,.beautral-decision-panel__links a{transition:none}.beautral-path-card:hover,.beautral-decision-panel__links a:hover{transform:none}}


/* Phase 1 keyboard parity for service-card families. */
.beautral-path-card:focus-visible,.beautral-decision-panel__links a:focus-visible,.beautral-related-link:focus-visible,
.beautral-service-parent-chip:focus-visible,.beautral-price-focus__value>a:focus-visible{
  outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 4px var(--focus-ring)
}
.beautral-path-card:focus-visible,.beautral-decision-panel__links a:focus-visible,.beautral-related-link:focus-visible{border-color:var(--action-primary)}


/* Phase 2 — conversion hierarchy */
.beautral-service-guide-link{display:inline-flex;align-items:center;gap:.3rem;margin-top:.75rem;color:var(--link);font-size:.9rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.beautral-service-guide-link .material-icons-round{font-size:18px}
.beautral-service-trust{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.15rem}
.beautral-service-trust>span{display:inline-flex;align-items:center;gap:.35rem;min-height:34px;padding:.4rem .62rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.78rem;font-weight:650}
.beautral-service-trust .material-icons-round{color:var(--link);font-size:17px}
.beautral-service-sticky__actions{display:grid;gap:.5rem}
.beautral-service-sticky__actions .btn{width:100%}
.beautral-service-sticky__hint{display:block;margin-top:.7rem;color:var(--muted);font-size:.75rem;line-height:1.65}
.beautral-service-final-cta__card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--surface),var(--bg-soft));box-shadow:var(--shadow-soft)}
.beautral-service-final-cta__card h2{margin:.25rem 0 .55rem;font-size:clamp(1.45rem,2.5vw,2rem)}
.beautral-service-final-cta__card p{max-width:720px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.8}
.beautral-service-final-cta__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}
.beautral-mobile-cta__primary{flex:1.5!important}
.beautral-mobile-cta__secondary{flex:0 0 auto!important;min-width:82px}
.beautral-mobile-cta__secondary .material-icons-round{font-size:19px}
@media(max-width:920px){.beautral-service-final-cta__card{grid-template-columns:1fr}.beautral-service-final-cta__actions{justify-content:flex-start}}
@media(max-width:620px){
  .beautral-service-hero__actions{display:grid;grid-template-columns:1fr 1fr}
  .beautral-service-hero__actions .btn{width:100%;padding-inline:.75rem}
  .beautral-service-trust{display:grid;grid-template-columns:1fr}
  .beautral-service-final-cta__actions{display:grid;grid-template-columns:1fr}
  .beautral-mobile-cta{padding-bottom:max(.45rem,env(safe-area-inset-bottom))}
}
@media(max-width:390px){
  .beautral-service-hero__actions{grid-template-columns:1fr}
  .beautral-mobile-cta__secondary{min-width:72px;padding-inline:.65rem}
}

/* Phase 5 — explicit service-to-branch choice */
.beautral-service-branches__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.beautral-service-branch-card{display:flex;min-width:0;flex-direction:column;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.beautral-service-branch-card__head{display:flex;align-items:center;gap:.65rem}.beautral-service-branch-card__head>.material-icons-round{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:12px;background:var(--bg-soft);color:var(--action-primary)}.beautral-service-branch-card h3{margin:0;font-size:1rem}.beautral-service-branch-card h3 a{color:var(--ink);text-decoration:none}.beautral-service-branch-card__head small{display:block;margin-top:.15rem;color:var(--muted)}.beautral-service-branch-card>p{margin:.65rem 0;color:var(--muted);font-size:.82rem;line-height:1.75}.beautral-service-branch-card__meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.35rem}.beautral-service-branch-card__meta span{padding:.2rem .45rem;border-radius:999px;background:var(--bg-soft);color:var(--muted);font-size:.72rem}.beautral-service-branch-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.75rem}.beautral-service-branch-card__actions .btn{width:100%}.beautral-service-branch-card a:focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 4px var(--focus-ring)}
@media(max-width:720px){.beautral-service-branches__grid{grid-template-columns:1fr}}
@media(max-width:460px){.beautral-service-branch-card__actions{grid-template-columns:1fr}}
