.root-canal-page { --rc-pad:clamp(28px,3vw,46px); }
.root-canal-page h1,.root-canal-page h2,.root-canal-page h3 { font-weight:500; letter-spacing:-.045em; }
.root-canal-page p { line-height:1.46; }
.rc-hero { display:grid; grid-template-columns:1.5fr 1.05fr .8fr; gap:5px; min-height:700px; }
.rc-hero-copy { padding:var(--rc-pad); background:white; border-radius:24px; display:flex; flex-direction:column; align-items:start; }
.rc-hero-copy h1 { font-size:clamp(37px,3.7vw,58px); line-height:1.23; margin:58px 0 30px; }
.rc-hero-copy h1 span,.rc-reason h2 span,.rc-heading h2 span,.rc-retreatment h2 span,.rc-protect h2 span,.rc-next-care h2 span { color:#7892a8; }
.rc-hero-copy>p:not(.section-label) { font-size:17px; color:var(--slate); max-width:410px; }
.rc-hero-copy>.pill { margin-top:32px; }
.rc-hero-sign { margin-top:auto; padding-top:55px; font-size:12px; color:var(--slate); }
.rc-hero-portrait { position:relative; border-radius:24px; isolation:isolate; overflow:hidden; background:#dce8f1; color:white; }
.rc-hero-portrait>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 0; z-index:-2; }
.rc-hero-portrait:after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#0c2c49f5,transparent 75%); z-index:-1; }
.rc-hero-portrait>span { position:absolute; top:30px; left:28px; color:#42637e; font-size:18px; }
.rc-hero-portrait>div { position:absolute; bottom:30px; left:28px; right:28px; }
.rc-hero-portrait p { font-size:22px; letter-spacing:-.04em; }
.rc-hero-portrait h2 { font-size:29px; margin:35px 0 27px; }
.rc-hero-portrait h2 small { font-size:12px; display:block; margin-top:7px; }
.rc-hero-portrait>div>span { display:flex; align-items:center; justify-content:space-between; font-size:13px; color:#d2e4f2; }
.rc-hero-side { display:grid; grid-template-rows:1fr 1fr; gap:5px; }
.rc-hero-side>a { background:#dfeaf3; border-radius:24px; padding:28px; position:relative; display:flex; flex-direction:column; }
.rc-hero-side>a:first-child { background:#19496f; color:white; }
.rc-hero-side .dot-index { width:100%; }
.rc-hero-side>a:first-child .dot-number { color:#bdd6e9; }
.rc-hero-side>a:first-child .dot-track i { background:#4b7292; }
.rc-hero-side>a:first-child .dot-track i.is-filled { background:#d2e7f7; }
.rc-hero-side h2 { font-size:clamp(24px,2.35vw,36px); line-height:1.26; margin:36px 0 25px; }
.rc-hero-side p { color:var(--slate); font-size:14px; margin-top:auto; padding-bottom:38px; }
.rc-hero-side>a:first-child p { color:#bfd7e8; }
.rc-hero-side>a>svg:last-child { position:absolute; bottom:26px; right:26px; }
.rc-hero-side>a>svg:not(:last-child) { color:#668fae; margin-top:28px; }
.rc-hero-side>a:last-child h2 { margin-top:22px; }
.rc-reason { display:grid; grid-template-columns:1fr 1.65fr; gap:70px; }
.rc-reason-intro h2,.rc-heading h2,.rc-retreatment-heading h2,.rc-protect-intro h2,.rc-next-care h2 { font-size:clamp(29px,3.2vw,49px); line-height:1.25; }
.rc-reason-intro h2 { margin:35px 0 28px; }
.rc-reason-intro>p:last-of-type { font-size:17px; color:var(--slate); }
.rc-reason-intro>a { display:flex; align-items:center; gap:30px; margin-top:32px; font-size:14px; }
.rc-reason-card { background:white; border-radius:24px; padding:var(--rc-pad); display:grid; grid-template-columns:1fr 1fr; column-gap:36px; align-items:start; }
.rc-reason-card>svg { color:#7295b0; }
.rc-reason-card h3 { grid-column:1; font-size:clamp(28px,2.8vw,43px); line-height:1.27; margin-top:55px; }
.rc-reason-card>p { grid-column:2; grid-row:2; align-self:end; font-size:17px; color:var(--slate); }
.rc-reason-card>div { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:7px; margin-top:55px; }
.rc-reason-card>div>span { background:#eef3f7; border-radius:30px; padding:12px 20px; font-size:13px; }
.root-canal-page .rc-treatment,.root-canal-page .rc-retreatment,.root-canal-page .rc-next-care,.root-canal-page .rc-prepare,.root-canal-page .rc-faq { padding-top:0; }
.rc-heading { display:grid; grid-template-columns:1fr 2fr 1fr; gap:28px; align-items:start; margin-bottom:50px; }
.rc-heading>p:last-child { font-size:16px; color:var(--slate); align-self:end; }
.rc-stage-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
.rc-stage-grid article { padding:28px; border-radius:24px; background:white; min-height:290px; display:flex; flex-direction:column; }
.rc-stage-grid article:last-child { background:#dfeaf3; }
.rc-stage-grid h3 { font-size:25px; line-height:1.25; margin:40px 0 27px; }
.rc-stage-grid p { margin-top:auto; color:var(--slate); font-size:16px; }
.rc-note { font-size:13px; color:var(--slate); margin-top:23px; }
.rc-retreatment-heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:35px; margin-bottom:48px; }
.rc-retreatment-heading h2 { margin-top:32px; }
.rc-retreatment-heading>p { font-size:17px; color:var(--slate); }
.rc-review-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:5px; }
.rc-review-main { padding:var(--rc-pad); border-radius:24px; background:#dfeaf3; }
.rc-review-main>span { font-size:14px; color:var(--slate); }
.rc-review-main h3 { font-size:clamp(32px,3.3vw,50px); line-height:1.24; margin:52px 0 30px; }
.rc-review-main>p { font-size:18px; color:var(--slate); max-width:445px; }
.rc-review-main>div { margin-top:45px; padding:25px; border-radius:17px; background:#f5f8fb; }
.rc-review-main>div>span { font-size:12px; color:var(--slate); }
.rc-review-main>div>p { margin-top:18px; font-size:17px; }
.rc-review-main>.pill { margin-top:30px; }
.rc-review-notes { display:grid; gap:5px; }
.rc-review-notes article { border-radius:24px; background:white; padding:32px; display:grid; grid-template-columns:30px 1fr; gap:25px; align-items:start; }
.rc-review-notes article>span { font-size:12px; color:var(--slate); padding-top:5px; }
.rc-review-notes h3 { font-size:27px; line-height:1.3; }
.rc-review-notes p { font-size:17px; color:var(--slate); margin-top:28px; max-width:350px; }
.rc-microscope { max-width:1900px; padding:0 var(--gutter); margin-inline:auto; display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.rc-micro-visual { background:#153f62; color:white; border-radius:24px; padding:var(--rc-pad); overflow:hidden; position:relative; min-height:580px; display:flex; flex-direction:column; justify-content:space-between; isolation:isolate; }
.rc-micro-visual>span { font-size:clamp(38px,4.5vw,70px); line-height:1; letter-spacing:-.06em; position:relative; z-index:1; }
.rc-micro-visual>div:last-child { display:flex; justify-content:space-between; font-size:13px; color:#bfd8eb; }
.rc-focus-art { position:absolute; inset:0; display:grid; place-items:center; color:#c7deef; z-index:-1; }
.rc-focus-art i { position:absolute; width:330px; height:330px; border:1px solid #c7deef36; border-radius:50%; }
.rc-focus-art i:nth-child(2) { width:460px; height:460px; }
.rc-focus-art i:nth-child(3) { width:590px; height:590px; }
.rc-focus-art:after,.rc-focus-art:before { content:''; position:absolute; width:22px; height:1px; background:#c7deef8a; right:25%; top:50%; }
.rc-focus-art:after { transform:rotate(90deg); }
.rc-micro-copy { background:white; border-radius:24px; padding:var(--rc-pad); }
.rc-micro-copy h2 { font-size:clamp(34px,3.6vw,54px); line-height:1.24; margin:55px 0 30px; }
.rc-micro-copy h2 span { color:#7892a8; }
.rc-micro-copy>p:not(.section-label) { color:var(--slate); font-size:18px; max-width:450px; }
.rc-micro-note { background:#eef3f7; border-radius:20px; padding:28px; margin-top:45px; }
.rc-micro-note h3 { font-size:25px; line-height:1.28; }
.rc-micro-note p { font-size:16px; color:var(--slate); margin-top:22px; }
.rc-protect { display:grid; grid-template-columns:1fr 1.65fr; gap:65px; }
.rc-protect-intro h2 { margin:35px 0 28px; }
.rc-protect-intro>p:not(.section-label) { font-size:17px; color:var(--slate); }
.rc-protect-intro>.pill { margin-top:32px; }
.rc-protect-grid { display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.rc-protect-grid article { border-radius:24px; background:white; padding:30px; }
.rc-protect-grid h3 { font-size:26px; line-height:1.28; margin:45px 0 25px; }
.rc-protect-grid p { font-size:17px; color:var(--slate); }
.rc-protect-grid .rc-next-check { grid-column:1/-1; background:#dfeaf3; }
.rc-next-check h3 { margin-top:30px; }
.rc-next-care { display:grid; grid-template-columns:1.1fr 1fr; gap:55px; }
.rc-next-care h2 { font-size:clamp(29px,3vw,46px); margin-top:32px; }
.rc-next-care>div:last-child { background:white; border-radius:24px; padding:35px; align-self:end; }
.rc-next-care>div>p:not(.section-label) { color:var(--slate); font-size:17px; }
.rc-next-care a { display:flex; align-items:center; justify-content:space-between; font-size:14px; margin-top:35px; gap:20px; }
.rc-prepare-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
.rc-prepare-grid article { background:white; border-radius:24px; padding:32px; }
.rc-prepare-grid svg { color:#7397b2; }
.rc-prepare-grid h3 { font-size:27px; margin:40px 0 25px; }
.rc-prepare-grid p { font-size:17px; color:var(--slate); }
.rc-related { display:flex; gap:30px; align-items:center; background:white; border-radius:24px; padding:30px; width:calc(100% - var(--gutter) - var(--gutter)); max-width:calc(1900px - var(--gutter) - var(--gutter)); margin:0 auto 90px; }
.rc-related>img { width:130px; height:150px; border-radius:15px; object-fit:cover; object-position:50% 0; }
.rc-related h2 { font-size:clamp(26px,2.5vw,39px); line-height:1.25; margin-top:22px; }
.rc-related>span { margin-left:auto; display:flex; align-items:center; gap:30px; font-size:14px; }
@media(max-width:1150px) {
 .rc-hero { grid-template-columns:1.4fr 1fr; min-height:0; }
 .rc-hero-copy { min-height:620px; }
 .rc-hero-copy h1 { font-size:45px; }
 .rc-hero-side { grid-column:1/-1; grid-template-columns:1fr 1fr; grid-template-rows:auto; }
 .rc-hero-side>a { min-height:220px; }
 .rc-hero-side h2 { font-size:25px; margin-top:27px; }
 .rc-hero-side h2 br { display:initial; }
 .rc-hero-side>a:last-child>svg:not(:last-child) { position:absolute; right:28px; top:46px; }
 .rc-hero-side p { margin-top:0; padding-bottom:0; }
 .rc-hero-side>a:last-child h2 { margin-top:27px; }
 .rc-heading { grid-template-columns:1fr 2fr; }
 .rc-heading>p:last-child { grid-column:2; }
 .rc-reason { gap:35px; grid-template-columns:1fr 1.5fr; }
 .rc-reason-card { grid-template-columns:1fr; }
 .rc-reason-card>p { grid-column:auto; grid-row:auto; margin-top:25px; }
 .rc-reason-card>div { margin-top:30px; }
 .rc-reason-card h3 { margin-top:35px; }
 .rc-stage-grid { grid-template-columns:1fr 1fr; }
 .rc-stage-grid article { min-height:250px; }
 .rc-protect { gap:35px; }
 .rc-next-care { gap:35px; }
 .rc-review-notes article { padding:28px; gap:18px; }
}
@media(max-width:700px) {
 .rc-hero { grid-template-columns:1fr; }
 .rc-hero-copy { padding:28px; min-height:0; }
 .rc-hero-copy h1 { font-size:35px; margin:40px 0 28px; }
 .rc-hero-copy>p:not(.section-label) { font-size:16px; }
 .rc-hero-copy>.pill { font-size:12px; }
 .rc-hero-sign { padding-top:45px; font-size:11px; }
 .rc-hero-portrait { min-height:480px; }
 .rc-hero-portrait>div { left:27px; right:27px; bottom:27px; }
 .rc-hero-portrait p { font-size:24px; }
 .rc-hero-side { grid-column:auto; grid-template-columns:1fr 1fr; }
 .rc-hero-side>a { padding:24px 20px; min-height:270px; }
 .rc-hero-side h2 { font-size:23px; }
 .rc-hero-side p { font-size:13px; padding-bottom:36px; }
 .rc-hero-side>a:last-child>svg:not(:last-child) { display:none; }
 .rc-hero-side>a>svg:last-child { right:20px; bottom:23px; }
 .rc-reason,.rc-protect,.rc-next-care { grid-template-columns:1fr; gap:35px; }
 .rc-reason-intro h2,.rc-heading h2,.rc-retreatment-heading h2,.rc-protect-intro h2,.rc-next-care h2 { font-size:30px; }
 .rc-reason-intro>p:last-of-type { font-size:16px; }
 .rc-reason-card { padding:28px; }
 .rc-reason-card h3 { font-size:30px; }
 .rc-reason-card>p { font-size:16px; }
 .rc-reason-card>div>span { padding:11px 15px; font-size:12px; }
 .rc-heading,.rc-retreatment-heading { grid-template-columns:1fr; gap:27px; margin-bottom:35px; }
 .rc-heading>p:last-child { grid-column:auto; }
 .rc-stage-grid { grid-template-columns:1fr; }
 .rc-stage-grid article { padding:28px; min-height:225px; }
 .rc-stage-grid h3 { font-size:27px; margin-top:32px; }
 .rc-retreatment-heading>p { font-size:16px; }
 .rc-review-grid { grid-template-columns:1fr; }
 .rc-review-main { padding:28px; }
 .rc-review-main h3 { font-size:32px; margin-top:40px; }
 .rc-review-main>p { font-size:16px; }
 .rc-review-main>div { padding:23px; margin-top:35px; }
 .rc-review-main>div>p { font-size:16px; }
 .rc-review-notes article { padding:28px 24px; grid-template-columns:20px 1fr; gap:15px; }
 .rc-review-notes h3 { font-size:25px; }
 .rc-review-notes p { font-size:16px; margin-top:23px; }
 .rc-microscope { grid-template-columns:1fr; }
 .rc-micro-visual { min-height:390px; padding:28px; }
 .rc-micro-visual>span { font-size:43px; }
 .rc-focus-art i { width:220px; height:220px; }
 .rc-focus-art i:nth-child(2) { width:320px; height:320px; }
 .rc-focus-art i:nth-child(3) { width:420px; height:420px; }
 .rc-focus-art>svg { width:64px; }
 .rc-micro-copy { padding:28px; }
 .rc-micro-copy h2 { font-size:34px; margin:40px 0 27px; }
 .rc-micro-copy>p:not(.section-label) { font-size:16px; }
 .rc-micro-note { padding:25px; margin-top:30px; }
 .rc-micro-note h3 { font-size:25px; }
 .rc-micro-note p { font-size:16px; }
 .rc-protect-grid { grid-template-columns:1fr; }
 .rc-protect-grid article { padding:28px; }
 .rc-protect-grid h3 { font-size:27px; margin-top:32px; }
 .rc-protect-grid p { font-size:16px; }
 .rc-next-care>div:last-child { padding:28px; }
 .rc-next-care>div>p:not(.section-label) { font-size:16px; }
 .rc-next-care a { font-size:13px; }
 .rc-prepare-grid { grid-template-columns:1fr; }
 .rc-prepare-grid article { padding:28px; }
 .rc-prepare-grid h3 { margin-top:30px; }
 .rc-prepare-grid p { font-size:16px; }
 .rc-related { flex-wrap:wrap; padding:27px; gap:27px; margin-bottom:75px; }
 .rc-related>img { width:80px; height:95px; }
 .rc-related>div { width:100%; }
 .rc-related h2 { font-size:27px; }
 .rc-related>span { margin-left:0; width:100%; justify-content:space-between; }
}
