/* Root Canal page clarity: comfortable spacing and explicit call/form actions.
   Scoped to this page; shared CSS, JavaScript and form fields are unchanged. */
html body #main.rc-clarity {--rc-space:clamp(1.35rem,3.3vw,3rem);}
html body #main.rc-clarity :is(.rc-hero-copy,.rc-section-heading>*,.rc-panel-copy,.rc-options-intro,.rc-prep-grid>*,.rc-faq-intro,.rc-call-panel>*,.request-intro) {min-width:0;}
html body #main.rc-clarity .rc-hero {padding-block:1rem 2.8rem;}
html body #main.rc-clarity .rc-hero-grid {gap:var(--rc-space);}
html body #main.rc-clarity .rc-hero-copy h1 {margin-bottom:1.15rem;}
html body #main.rc-clarity .rc-tagline {font-size:clamp(1.25rem,2vw,1.45rem);line-height:1.45;margin-bottom:1rem;text-wrap:balance;}
html body #main.rc-clarity .rc-intro {font-size:1.25rem;line-height:1.7;margin-bottom:1.5rem;max-width:35rem;}
html body #main.rc-clarity .rc-hero-actions {gap:.7rem;align-items:stretch;}
html body #main.rc-clarity .rc-hero-actions .btn {font-size:1.125rem;padding:.85rem 1.05rem;min-height:3.35rem;}
html body #main.rc-clarity .rc-visit-link {margin-top:1.2rem;}
html body #main.rc-clarity .rc-reassurance {margin:1rem 0 1.2rem;}
html body #main.rc-clarity .rc-doctor {padding-top:1rem;}
html body #main.rc-clarity .rc-art-caption {margin-top:.65rem;}
html body #main.rc-clarity .rc-scope {gap:1rem;padding:1.3rem 1.5rem;}
html body #main.rc-clarity .rc-scope>div {flex:1 1 29rem;}
html body #main.rc-clarity .rc-section-nav {gap:.6rem 1.45rem;justify-content:flex-start;padding-block:1rem;}
html body #main.rc-clarity .rc-nav-label {color:#526b76;font-size:1rem;font-weight:650;}
html body #main.rc-clarity .rc-section-nav a {font-size:1rem;line-height:1.5;}
html body #main.rc-clarity .rc-section {padding-block:3.7rem;}
html body #main.rc-clarity h2 {font-size:clamp(2.1rem,3.1vw,2.85rem);line-height:1.16;}
html body #main.rc-clarity p {font-size:1.1875rem;line-height:1.7;}
html body #main.rc-clarity :is(.rc-small,.rc-art-caption,.rc-reassurance,.rc-copy-note,.rc-safety p) {font-size:1rem;line-height:1.65;}
html body #main.rc-clarity .rc-section-heading {gap:1.1rem 2.75rem;align-items:flex-start;margin-bottom:1.7rem;}
html body #main.rc-clarity .rc-section-heading>div {flex:1 1 28rem;}
html body #main.rc-clarity .rc-section-heading>p {flex:1 1 20rem;max-width:28rem;}
html body #main.rc-clarity .rc-essentials {gap:1.15rem;}
html body #main.rc-clarity .rc-essential {padding:1.6rem;}
html body #main.rc-clarity .rc-essential-top {margin-bottom:1.3rem;}
html body #main.rc-clarity .rc-essential h3 {font-size:1.55rem;line-height:1.25;margin-bottom:.8rem;}
html body #main.rc-clarity .rc-essential p {font-size:1.125rem;margin-bottom:1rem;}
html body #main.rc-clarity .rc-concerns {gap:1.2rem 2.5rem;margin-top:2rem;padding-top:2rem;}
html body #main.rc-clarity .rc-concerns h3 {font-size:1.75rem;line-height:1.25;}
html body #main.rc-clarity .rc-concerns p {margin-bottom:1rem;}
html body #main.rc-clarity .rc-step-tabs {grid-template-columns:repeat(auto-fit,minmax(min(100%,18.5rem),1fr));}
html body #main.rc-clarity .rc-step-tab {gap:.85rem;padding:1.2rem;align-items:center;}
html body #main.rc-clarity .rc-step-tab strong {font-size:1.2rem;line-height:1.4;}
html body #main.rc-clarity .rc-step-tab[aria-selected="true"] strong {color:#a6195b;}
html body #main.rc-clarity .rc-panel {padding:2rem;gap:2rem;align-items:start;}
html body #main.rc-clarity .rc-panel-copy h3 {font-size:clamp(1.6rem,2.4vw,2rem);line-height:1.22;margin-bottom:1.15rem;}
html body #main.rc-clarity .rc-panel-copy p {margin-bottom:0;}
html body #main.rc-clarity .rc-step-question {padding:1.55rem;align-self:start;}
html body #main.rc-clarity .rc-step-question p {font-size:1.2rem;line-height:1.6;}
html body #main.rc-clarity .rc-options-layout {gap:2.5rem;}
html body #main.rc-clarity .rc-option {padding:1.5rem;gap:1rem;}
html body #main.rc-clarity .rc-option h3 {font-size:1.5rem;line-height:1.3;}
html body #main.rc-clarity .rc-option p {font-size:1.125rem;}
html body #main.rc-clarity .rc-prep-grid {gap:2.5rem;}
html body #main.rc-clarity .rc-fee-card {padding:2rem;}
html body #main.rc-clarity .rc-fee-card h3 {font-size:1.9rem;line-height:1.25;margin-bottom:1.2rem;}
html body #main.rc-clarity .rc-checks {gap:.8rem;}
html body #main.rc-clarity .rc-home-note {margin-top:1.25rem;}
html body #main.rc-clarity .rc-home-note p {font-size:1.125rem;}
html body #main.rc-clarity .rc-after-contact {margin-top:1.2rem;}
html body #main.rc-clarity .rc-faq-layout {gap:2.75rem;}
html body #main.rc-clarity .faq-list summary {font-size:1.25rem;line-height:1.5;padding-block:1.25rem;}
html body #main.rc-clarity .faq-answer {font-size:1.1875rem;line-height:1.75;}
html body #main.rc-clarity .rc-last-section {padding-top:0;padding-bottom:2.5rem;}
html body #main.rc-clarity .rc-call-panel {padding:2.5rem;gap:2.5rem;align-items:start;}
html body #main.rc-clarity .rc-closing-actions {gap:.7rem;align-items:stretch;}
html body #main.rc-clarity .rc-closing-actions .btn {font-size:1.0625rem;padding:.85rem 1.05rem;min-height:3.25rem;}
html body #main.rc-clarity .rc-call-panel .rc-contact-directions {margin:1.15rem 0 0;}
html body #main.rc-clarity .gdc-banner-save {margin-top:1rem;}
html body #main.rc-clarity .rc-call-outline {padding:1.7rem;}
html body #main.rc-clarity .rc-call-outline h3 {font-size:1.6rem;line-height:1.25;}
html body #main.rc-clarity .rc-related {padding-block:1.5rem;}
html body #main.rc-clarity .request-section {padding-block:3.7rem;}
html body #main.rc-clarity .request-layout {grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));}
html body #main.rc-clarity .request-intro>p {font-size:1.1875rem;line-height:1.7;}
html body #main.rc-clarity .request-steps {gap:1rem;}
html body #main.rc-clarity #appointment-request {scroll-margin-top:1.5rem;}
.rc-clarity :is(.btn,.text-link,.rc-inline-link,.rc-inline-label,.rc-secondary-button) {max-width:100%;overflow-wrap:anywhere;}
body.root-canals-clarified>.skip-link:not(:focus) {transform:translateY(-200%);}
@media(max-width:1050px){
 html body #main.rc-clarity .rc-hero-grid {grid-template-columns:1fr;gap:2rem;}
 html body #main.rc-clarity .rc-section {padding-block:3.2rem;}
 html body #main.rc-clarity .rc-last-section {padding-top:0;}
}
@media(max-width:760px){
 html body #main.rc-clarity .rc-section-heading {flex-direction:column;}
 html body #main.rc-clarity .rc-section-heading>div,html body #main.rc-clarity .rc-section-heading>p {flex:auto;max-width:100%;}
 html body #main.rc-clarity :is(.rc-faq-layout,.rc-call-panel,.request-layout) {grid-template-columns:1fr;gap:1.7rem;}
 html body #main.rc-clarity .rc-step-tabs {grid-template-columns:1fr;}
}
@media(max-width:600px){
 html body #main.rc-clarity .rc-hero {padding-block:.8rem 2.4rem;}
 html body #main.rc-clarity .rc-hero-actions {display:grid;grid-template-columns:1fr;gap:.65rem;}
 html body #main.rc-clarity .rc-hero-actions .btn {width:100%;}
 html body #main.rc-clarity .rc-intro {font-size:1.125rem;}
 html body #main.rc-clarity .rc-section-nav {gap:.3rem 1.05rem;padding-block:1rem;}
 html body #main.rc-clarity .rc-nav-label {flex-basis:100%;}
 html body #main.rc-clarity .rc-section {padding-block:2.8rem;}
 html body #main.rc-clarity .rc-last-section {padding-top:0;}
 html body #main.rc-clarity :is(.rc-essential,.rc-fee-card,.rc-call-outline,.rc-panel,.rc-call-panel) {padding:1.4rem;}
 html body #main.rc-clarity .rc-scope {padding:1.2rem;}
 html body #main.rc-clarity .rc-option {padding:1.3rem;}
 html body #main.rc-clarity :is(.rc-concerns p,.rc-panel-copy p,.rc-section-heading>p,.rc-prep-grid p,.rc-call-panel>div>p,.rc-faq-intro>p,.request-intro>p,.faq-answer) {font-size:1.125rem;}
 html body #main.rc-clarity .rc-panel {gap:1.4rem;}
 html body #main.rc-clarity .rc-panel-copy h3 {font-size:1.65rem;}
 html body #main.rc-clarity .rc-step-question {padding:1.25rem;}
 html body #main.rc-clarity .rc-step-tab {padding:1.05rem;}
 html body #main.rc-clarity .rc-closing-actions {display:grid;grid-template-columns:1fr;}
 html body #main.rc-clarity .rc-closing-actions .btn {width:100%;}
 html body #main.rc-clarity .request-section {padding-block:2.8rem;}
 body.root-canals-clarified .mobile-action-bar {display:grid;grid-template-columns:.8fr 1.4fr .7fr;gap:.45rem;padding:.65rem .8rem max(.65rem,env(safe-area-inset-bottom));}
 body.root-canals-clarified .mobile-action-bar a {font-size:1rem;line-height:1.3;padding:.7rem .35rem;min-height:3rem;gap:.35rem;word-break:normal;flex-wrap:nowrap;}
 body.root-canals-clarified .mobile-action-bar a .icon {width:1rem;height:1rem;}
}
@media(max-width:370px){body.root-canals-clarified .mobile-action-bar .icon {display:none;}}
@media print{html body #main.rc-clarity :is(.rc-section,.request-section){padding-block:1rem;}.rc-clarity .rc-section-nav{display:none;}}
/* Text and icons must reflow independently when browser text is enlarged. */
html body #main.rc-clarity .rc-inline-link .rc-inline-label,
html body #main.rc-clarity .rc-secondary-button .rc-inline-label {flex:1 1 auto;min-width:0;overflow-wrap:anywhere;}
html body #main.rc-clarity .rc-secondary-button {max-width:100%;width:fit-content;}
html body #main.rc-clarity .rc-secondary-button>span {flex:1 1 auto;min-width:0;overflow-wrap:anywhere;}
@media(max-width:600px){
 html body #main.rc-clarity :is(.rc-essential,.rc-fee-card,.rc-call-outline,.rc-panel,.rc-call-panel) {padding:clamp(20px,1.4rem,26px);}
 html body #main.rc-clarity .rc-step-question {padding:clamp(18px,1.25rem,24px);}
 html body #main.rc-clarity .rc-secondary-button {gap:12px;padding:12px 18px;}
}
