@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* mobile.css */
/* Mobile responsive pass: Apple-style rhythm */
@media(max-width:767px){
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:clip}
/* typography: h2 = h3 */
h1{font-size:34px!important;line-height:1.1!important;letter-spacing:-.02em}
h2,h3{font-size:26px!important;line-height:1.2!important;letter-spacing:-.015em}
h1,h2,h3{font-weight:700!important}
h1 em,h2 em,h3 em,h1 span,h2 span,h3 span,h1 strong,h2 strong,h3 strong{font-weight:700!important;font-style:normal}
section .sec-intro,section .hm-doc-lead{font-size:16px;line-height:1.55}
/* wider, even section spacing */
.hm-doc,.hm-svc,.hm-care,.hm-why,.hm-rev,.hm-vt,.hm-fv,.hm-team,.hm-pod,.hm-choose,section.hm-care,section.hm-choose,section.sig,.sig,.band{padding-top:76px!important;padding-bottom:76px!important}
.hm-aff,.hm-ins{padding-top:56px!important;padding-bottom:56px!important}
.sec-head,.sig-head,.hm-care-head,.hm-team-head{margin-bottom:28px}
/* tap targets */
.btn{min-height:48px}
.chip,.city-chips .chip{min-height:44px}
/* cosmetic: stacked image-top cards */
section.sig .sig-track{grid-template-columns:1fr!important;gap:16px!important}
section.sig .sig-card{grid-template-columns:1fr!important;grid-template-rows:auto auto;min-height:0!important;border-radius:24px}
section.sig .sig-card img{grid-column:1!important;grid-row:1!important;height:210px!important;object-position:center 25%}
section.sig .sig-glass{grid-column:1!important;grid-row:2!important;padding:20px 22px 22px!important}
/* image crops */
.hm-panel-pic{height:240px}
.hm-panel-pic img{object-position:center 22%}
.hm-doc-photo{object-position:center top}
.tm-pic img{object-position:center 15%}
/* team: one per row */
.hm-team-grid{grid-template-columns:1fr!important;gap:16px!important}
section.hm-team .tm-pic{aspect-ratio:4/3.4}
/* checklist: no carousel */
section.hm-choose .hm-checklist{display:grid!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;grid-template-columns:1fr!important;overflow:visible!important;padding-bottom:0!important;gap:12px!important}
section.hm-choose .hm-checklist li{scroll-snap-align:none}
}
/* location: map first, then text */
@media(max-width:959px){
.areas-grid .area-map{order:-1}
.areas-grid{gap:28px}
.area-map .am2{border-radius:20px}
.city-chips{gap:8px}
}
/* wz.css */
.drop-list{list-style:none;margin:0;padding:0}
.drop-list a{display:block;padding:11px 14px;border-radius:12px;color:var(--navy);font-weight:600;text-decoration:none}
.drop-list a:hover,.drop-list a[aria-current]{background:var(--sky-50);color:var(--blue)}
.hp{position:absolute;left:-9999px}
.di .fs{fill:#d7ecf9}
.di .fg{fill:#f6cfc2}
.di .ac,.di .badge{fill:var(--blush)}
.di .ring{stroke:var(--blush)}
.di .ln-ac,.di .shine,.di .wire{stroke:var(--sky)}
.di .canal,.di .crack,.di .beam{stroke:#d9826a}
.di{overflow:visible}
.di .fw{fill:#fff;stroke:var(--navy);stroke-width:2.4;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.di .fw.big{stroke-width:2.4}
.di .fs{fill:#bfe2f6;stroke:var(--navy);stroke-width:2.4;stroke-linejoin:round}
.di .fg{fill:#ffc9b9;stroke:var(--navy);stroke-width:2.4;stroke-linejoin:round}
.di .ln{fill:none;stroke:var(--navy);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.di .ln-ac{fill:none;stroke:var(--sky);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.di .ac{fill:var(--coral)}
.di .half{fill:#e8f5fd}
.di .shine{fill:none;stroke:var(--sky);stroke-width:3;stroke-linecap:round}
.di .ray{fill:none;stroke:#ffb020;stroke-width:3;stroke-linecap:round}
.di .wire{fill:none;stroke:var(--sky);stroke-width:2.6;stroke-linecap:round}
.di .br{fill:#bfe2f6;stroke:var(--navy);stroke-width:2.2}
.di .pulp{fill:#ffc9b9;stroke:none}
.di .canal{fill:none;stroke:var(--coral);stroke-width:3;stroke-linecap:round}
.di .beam{stroke:var(--coral);stroke-width:3;stroke-linecap:round;stroke-dasharray:3 3}
.di .crack{fill:none;stroke:var(--coral);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.di .badge{fill:var(--coral)}
.di .ring{fill:none;stroke:var(--coral);stroke-width:2;opacity:.5}
.di .plus{stroke:#fff;stroke-width:3.4;stroke-linecap:round}
.di .bub{fill:#e2f1fb;stroke:var(--sky);stroke-width:2}
.di .zz{fill:none;stroke:var(--blue);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.di .dr{stroke-dasharray:1;stroke-dashoffset:0}
.di [class*=a-],.di .ac,.di .bub,.di .zz,.di .ring,.di .badge,.di .br{transform-box:fill-box;transform-origin:center}
@media(prefers-reduced-motion:no-preference){.js [data-reveal] .di .dr{stroke-dashoffset:1}.js [data-reveal].in .di .dr{animation:draw 1.2s calc(.3s + var(--i,0)*.12s) var(--ease) forwards}a:hover .di-implant .a-screw,a:focus-visible .di-implant .a-screw{animation:screw .9s var(--ease)}a:hover .di-implant .a-crown{animation:dropin .9s var(--ease)}a:hover .di-allon4 .a-posts g{animation:popup .6s calc(var(--i)*.09s) var(--ease) both}a:hover .di-aligner .a-aligner,.tile-opt:hover .di-aligner .a-aligner{animation:slip .9s var(--ease)}a:hover .di-braces .wire{animation:draw2 .9s var(--ease)}a:hover .di-braces .a-brackets rect{animation:popup .5s var(--ease)}a:hover .di .a-spark,a:hover .di-cosmetic .a-stars path,.tile-opt:hover .di .a-stars path{animation:twinkle .9s var(--ease)}.di-cosmetic .s2,.di-cosmetic .s3{animation:twinkle 3.2s 1s ease-in-out infinite}a:hover .di-whitening .a-rays,.tile-opt:hover .di-whitening .a-rays{animation:rays 1s var(--ease)}a:hover .di-whitening .half{animation:whiten 1s var(--ease) forwards}a:hover .di-family .a-brush,.tile-opt:hover .di-family .a-brush{animation:scrub .8s ease-in-out 2}a:hover .di-family .bub{animation:bubble 1.2s var(--ease)}a:hover .di-crown .a-cap,.tile-opt:hover .di-crown .a-cap{animation:capdown .8s var(--ease)}a:hover .di-rootcanal .canal{animation:draw2 .9s var(--ease)}.di-rootcanal .a-glow{animation:glow 2.4s ease-in-out infinite}.di-rootcanal .g2{animation-delay:1.2s}a:hover .di-laser .beam,.tile-opt:hover .di-laser .beam{animation:beam .25s linear 6}.di-laser .a-dot{animation:glow 1.8s ease-in-out infinite}.di-emergency .ring{animation:ping 2s ease-out infinite}a:hover .di-emergency .a-badge,.tile-opt:hover .di-emergency .a-badge{animation:shake .6s var(--ease)}a:hover .di-denture .a-top,.tile-opt:hover .di-denture .a-top{animation:chomp .7s ease-in-out 2}.di-sleep .zz{animation:zfloat 3s ease-in-out infinite}.di-sleep .z2{animation-delay:1s}}
.wz-sec{background:linear-gradient(180deg,var(--cream),#F2F9FE)!important}
.wz-card{display:grid;border-radius:32px;overflow:hidden;background:#fff;box-shadow:var(--shadow-3);border:1px solid var(--line)}
.wz-side{position:relative;padding:32px 28px;background:radial-gradient(360px 220px at 100% 0%,rgba(54,166,221,.35),transparent),var(--navy);color:#fff;overflow:hidden}
.wz-side h2{color:#fff}
.wz-side p{color:#ffffffdb}
.wz-side .eyebrow{color:#ffb39f}
.wz-perks{list-style:none;margin:22px 0;padding:0;display:grid;gap:12px}
.wz-perks li{display:flex;gap:12px;align-items:center;font-weight:600}
.wz-perks .icon{color:#7fc6ee}
.wz-call{display:flex;gap:14px;align-items:center;padding:14px 18px;border-radius:20px;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none}
.wz-call strong{font:700 22px/1.2 var(--font-heading)}
.wz-call:hover{background:#ffffff24;color:#fff}
.wz-call-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--coral);color:var(--navy);flex:none}
.wz-hours{margin:12px 0 0;font-size:14px}
.wz{padding:28px 22px 30px;min-width:0}
.wz .hp{position:absolute;left:-9999px}
.wz-progress{position:relative;list-style:none;margin:0 0 26px;padding:0;display:grid;grid-template-columns:repeat(3,1fr)}
.wz-progress li{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.wz-progress:before{content:"";position:absolute;left:16.6%;right:16.6%;top:19px;height:4px;border-radius:4px;background:#e3eef6}
.wz-bar{position:absolute;left:16.6%;right:16.6%;top:19px;height:4px}
.wz-bar span{display:block;height:100%;width:0;border-radius:4px;background:linear-gradient(90deg,var(--blue),var(--coral));transition:width .5s var(--ease)}
.wz-dot{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;border:2.5px solid #D4E4EF;color:var(--muted);font:700 16px/1 var(--font-heading);transition:all .3s var(--ease)}
.wz-dot svg{display:none}
.is-cur .wz-dot{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 0 0 6px var(--sky-50)}
.is-done .wz-dot{border-color:#22a06b;background:#22a06b;color:#fff}
.is-done .wz-num{display:none}
.is-done .wz-dot svg{display:block}
.wz-lbl{font-weight:700;font-size:14px;color:var(--muted)}
.is-cur .wz-lbl{color:var(--navy)}
.wz-step{border:0;margin:0;padding:0;min-width:0;display:grid;gap:18px}
.wz-legend{padding:0;margin-bottom:4px;font:700 20px/1.3 var(--font-heading);color:var(--navy)}
.is-wizard .wz-step{animation:panel .45s var(--ease)}
.wz-row2{display:grid;gap:16px}
@media(min-width:640px){.wz-row2{grid-template-columns:1fr 1fr}}
.fl{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:14.5px;color:var(--navy)}
.fl input,.fl select,.fl textarea{width:100%;min-height:52px;padding:12px 16px;border-radius:14px;border:1.5px solid #D4E4EF;background:#fbfdff;font:500 16px/1.4 var(--font-body);color:var(--text);transition:border-color .2s,box-shadow .2s,background .2s}
.fl textarea{min-height:120px;resize:vertical}
.fl input:focus,.fl select:focus,.fl textarea:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px var(--sky-50)}
.wz-q{display:flex;flex-direction:column;gap:10px}
.wz-ql{font-weight:700;font-size:14.5px;color:var(--navy)}
.wz-hint{display:block;font-weight:500;color:var(--muted);font-size:14px;margin-top:2px}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seg-3{grid-template-columns:repeat(3,1fr)}
.seg label,.chips label{position:relative;cursor:pointer}
.seg input,.chips input,.tile-opt input,.agree input{position:absolute;opacity:0;width:1px;height:1px}
.seg span{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 12px;border-radius:14px;border:1.5px solid #D4E4EF;background:#fbfdff;font-weight:700;font-size:15px;color:var(--navy);text-align:center;transition:all .2s}
.seg input:checked+span{border-color:var(--blue);background:var(--sky-50);box-shadow:inset 0 0 0 1px var(--blue)}
.seg .hot input:checked+span{border-color:var(--coral-600);background:var(--coral-50);box-shadow:inset 0 0 0 1px var(--coral-600)}
.seg input:focus-visible+span,.chips input:focus-visible+span,.tile-opt input:focus-visible+.to-in,.agree input:focus-visible+span{outline:3px solid var(--blue);outline-offset:2px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-height:46px;min-width:58px;padding:8px 16px;border-radius:999px;border:1.5px solid #D4E4EF;background:#fbfdff;font-weight:700;font-size:15px;color:var(--navy);transition:all .2s}
.chips-t span{border-radius:16px;line-height:1.2}
.chips-t small{font-weight:500;font-size:14px;color:var(--muted)}
.chips input:checked+span{border-color:var(--blue);background:var(--blue);color:#fff}
.chips input:checked+span small{color:#ffffffd9}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(min-width:760px){.tiles{grid-template-columns:repeat(4,1fr)}}
.tile-opt{cursor:pointer;display:flex}
.to-in{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:16px 10px 14px;border-radius:18px;border:1.5px solid #D4E4EF;background:#fbfdff;text-align:center;transition:all .2s var(--ease)}
.to-ic{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--sky-50)}
.to-l{font-weight:700;font-size:14px;line-height:1.3;color:var(--navy)}
.to-tick{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;transform:scale(0);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.tile-opt:hover .to-in{border-color:var(--sky);transform:translateY(-2px)}
.tile-opt input:checked+.to-in{border-color:var(--blue);background:#f3f9fd;box-shadow:inset 0 0 0 1px var(--blue)}
.tile-opt input:checked+.to-in .to-tick{transform:scale(1)}
.tile-opt input:checked+.to-in .to-ic{background:#fff}
.wz-urgent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 0;padding:12px 14px;border-radius:14px;background:var(--coral-50);color:var(--navy);font-weight:600;font-size:14.5px}
.wz-urgent .icon{color:var(--coral-600);margin-top:2px}
.drop{position:relative;display:block;cursor:pointer}
.drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.drop-in{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 16px;border-radius:18px;border:2px dashed #BFD6E6;background:#fbfdff;text-align:center;color:var(--blue);transition:all .2s}
.drop:hover .drop-in,.drop.is-over .drop-in{border-color:var(--blue);background:var(--sky-50)}
.drop.has-file .drop-in{border-style:solid;border-color:#22a06b;background:#f0faf5;color:#22a06b}
.drop-t{color:var(--navy);font-size:15px}
.drop-f{font-size:14px;color:var(--muted)}
.drop:hover .arr{animation:upload 1s ease-in-out infinite}
.drop-ic .arr{transform-box:fill-box}
.agree{display:flex;gap:12px;align-items:flex-start;cursor:pointer;position:relative;font-weight:600;font-size:15px;color:var(--navy);line-height:1.45}
.agree span:before{content:"";flex:none;display:inline-block;vertical-align:-5px;width:22px;height:22px;margin-right:10px;border-radius:7px;border:2px solid #BFD6E6;background:#fff;transition:all .2s}
.agree input:checked+span:before{background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;border-color:var(--blue)}
.wz-nav{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.wz-nav [data-next],.wz-nav [data-submit]{margin-left:auto}
.wz-nav [hidden]{display:none}
.has-err input,.has-err select,.has-err textarea,.has-err .seg span,.has-err .to-in{border-color:#d93a1a!important}
.wz-err{color:#b42318;font-weight:700;font-size:14px}
.wz:not(.is-wizard) .wz-progress,.wz:not(.is-wizard) [data-next],.wz:not(.is-wizard) [data-back]{display:none}
.wz:not(.is-wizard) .wz-step+.wz-step{margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}
@media(min-width:980px){.wz-card{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)}.wz-side{padding:44px 36px}.wz{padding:40px 44px}}
@media(max-width:520px){.wz-lbl{font-size:14px}.seg-3 span{font-size:14px;padding:8px 6px}}
.wz-step[hidden],.wz-urgent[hidden],.wz [hidden]{display:none!important}
.di .ol{fill:none;stroke:var(--navy);stroke-width:2.4;stroke-linejoin:round}
@media(max-width:640px){.hm-svc-ic .di{width:48px;height:48px}}
.wz-sec{background:radial-gradient(700px 380px at 100% 0%,rgba(54,166,221,.16),transparent 70%),radial-gradient(600px 320px at 0% 100%,rgba(227,160,138,.18),transparent 70%),#f4f8fb!important}
.wz-card{border-radius:34px;border-color:#e3eef7}
.wz-side{background:radial-gradient(360px 220px at 100% 0%,rgba(54,166,221,.5),transparent),radial-gradient(300px 200px at 0% 100%,rgba(227,160,138,.3),transparent),linear-gradient(170deg,#134a75,#0d2a44)}
.wz-side .eyebrow{color:#bfe3f7}
.wz-call-ic{background:var(--blush)}
.wz-legend{font:400 26px/1.2 var(--font-heading)}
.is-cur .wz-dot{box-shadow:0 0 0 6px #dcedf9}
.wz-bar span{background:linear-gradient(90deg,var(--blue),var(--blush))}
.fl input,.fl select,.fl textarea,.seg span,.chips span,.to-in,.drop-in{border-color:#d5e5f2;background:#fbfdff}
.seg .hot input:checked+span{border-color:#d9826a;background:#fbede8;box-shadow:inset 0 0 0 1px #d9826a}
.to-in{border-radius:22px}
@media(prefers-reduced-motion:no-preference){.hm-svc-grid li.in .di *{animation-delay:.35s}.hm-svc-grid li.in .di-implant .a-screw{animation:screw .9s var(--ease)}.hm-svc-grid li.in .di-implant .a-crown{animation:dropin .9s var(--ease)}.hm-svc-grid li.in .di-allon4 .a-posts g{animation:popup .6s calc(var(--i)*.09s) var(--ease) both}.hm-svc-grid li.in .di-aligner .a-aligner{animation:slip .9s var(--ease)}.hm-svc-grid li.in .di-braces .wire{animation:draw2 .9s var(--ease)}.hm-svc-grid li.in .di-braces .a-brackets rect{animation:popup .5s var(--ease)}.hm-svc-grid li.in .di-cosmetic .a-stars path{animation:twinkle .9s var(--ease)}.hm-svc-grid li.in .di-whitening .a-rays{animation:rays 1s var(--ease)}.hm-svc-grid li.in .di-whitening .half{animation:whiten 1s var(--ease) forwards}.hm-svc-grid li.in .di-family .a-brush{animation:scrub .8s ease-in-out 2}.hm-svc-grid li.in .di-family .bub{animation:bubble 1.2s var(--ease)}.hm-svc-grid li.in .di-crown .a-cap{animation:capdown .8s var(--ease)}.hm-svc-grid li.in .di-rootcanal .canal{animation:draw2 .9s var(--ease)}.hm-svc-grid li.in .di-laser .beam{animation:beam .25s linear 6}.hm-svc-grid li.in .di-emergency .a-badge{animation:shake .6s var(--ease)}.hm-svc-grid li.in .di-denture .a-top{animation:chomp .7s ease-in-out 2}}
@media(prefers-reduced-motion:no-preference){body .hm-svc .hm-svc-grid li .di *{animation-delay:calc(var(--i,0)*.35s)}body .hm-svc .hm-svc-grid li .di-implant .a-screw{animation:lp-screw 3.6s ease-in-out infinite;animation-delay:calc(var(--i,0)*.35s)}body .hm-svc .hm-svc-grid li .di-implant .a-crown{animation:lp-drop 3.6s ease-in-out infinite;animation-delay:calc(var(--i,0)*.35s)}body .hm-svc .hm-svc-grid li .di .a-spark{animation:lp-twinkle 2.4s ease-in-out infinite}body .hm-svc .hm-svc-grid li .di-allon4 .a-posts g{animation:lp-post 3.2s ease-in-out infinite;animation-delay:calc(var(--i)*.18s + .3s)}body .hm-svc .hm-svc-grid li .di-braces .wire.dr{animation:lp-draw 3.6s ease-in-out infinite;animation-delay:.7s}body .hm-svc .hm-svc-grid li .di-braces .a-brackets rect{animation:lp-pop 3.6s ease-in-out infinite}body .hm-svc .hm-svc-grid li .di-braces .a-brackets rect:nth-child(2){animation-delay:.9s}body .hm-svc .hm-svc-grid li .di-braces .a-brackets rect:nth-child(3){animation-delay:1.1s}body .hm-svc .hm-svc-grid li .di-braces .a-brackets rect:nth-child(1){animation-delay:.7s}body .hm-svc .hm-svc-grid li .di-family .a-brush{animation:lp-scrub 3s ease-in-out infinite;animation-delay:1s}body .hm-svc .hm-svc-grid li .di-family .bub{animation:lp-bub 3s ease-out infinite}body .hm-svc .hm-svc-grid li .di-family .bub:nth-child(2){animation-delay:1.3s}body .hm-svc .hm-svc-grid li .di-family .bub:nth-child(3){animation-delay:1.7s}body .hm-svc .hm-svc-grid li .di-family .bub:nth-child(1){animation-delay:1.05s}body .hm-svc .hm-svc-grid li .di-crown .a-cap{animation:lp-cap 3.4s ease-in-out infinite;animation-delay:1.4s}body .hm-svc .hm-svc-grid li .di-rootcanal .canal.dr{animation:lp-draw 3.4s ease-in-out infinite;animation-delay:1.7s}body .hm-svc .hm-svc-grid li .di-rootcanal .a-glow{animation:glow 1.7s ease-in-out infinite}body .hm-svc .hm-svc-grid li .di-laser .a-pen{animation:lp-pen 3s ease-in-out infinite;animation-delay:2.1s}body .hm-svc .hm-svc-grid li .di-laser .beam{animation:lp-beam 3s linear infinite;animation-delay:2.1s}body .hm-svc .hm-svc-grid li .di-laser .a-dot{animation:glow 1s ease-in-out infinite}body .hm-svc .hm-svc-grid li .di-emergency .a-badge{animation:lp-shake 3s ease-in-out infinite;animation-delay:2.4s}body .hm-svc .hm-svc-grid li .di-emergency .ring{animation:ping 1.5s ease-out infinite}body .hm-svc .hm-svc-grid li .di-emergency .crack.dr{animation:lp-draw 3s ease-in-out infinite;animation-delay:2.4s}body .hm-svc .hm-svc-grid li .di-denture .a-top{animation:lp-chomp 2.6s ease-in-out infinite;animation-delay:2.8s}body .hm-svc .hm-svc-grid li .di-denture .a-bot{animation:lp-chomp-b 2.6s ease-in-out infinite;animation-delay:2.8s}body .hm-svc .hm-svc-grid li .hm-svc-card:hover .di *{animation-duration:1.3s}}
.hm-svc .hm-svc-ic .di{width:58px;height:58px}
@media(max-width:640px){.hm-svc .hm-svc-ic .di{width:50px;height:50px}}
/* ===== Booking form: compact ===== */
section.wz-sec{padding:clamp(52px,6vw,84px) 0}
section.wz-sec .wz-card{grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);border-radius:28px}
section.wz-sec .wz-side{padding:32px 30px;display:flex;flex-direction:column}
section.wz-sec .wz-side h2{font-size:clamp(26px,2.4vw,32px);margin-bottom:10px}
section.wz-sec .wz-side p{font-size:15px;margin:0}
section.wz-sec .wz-perks{margin:16px 0;gap:8px}
section.wz-sec .wz-perks li{font-size:14.5px}
section.wz-sec .wz-call{padding:10px 14px;border-radius:16px;margin-top:auto}
section.wz-sec .wz-call-ic{width:40px;height:40px}
section.wz-sec .wz-call strong{font-size:19px}
section.wz-sec .wz-hours{font-size:13px;margin-top:8px}
section.wz-sec .wz{padding:28px 34px}
section.wz-sec .wz-progress{margin-bottom:18px}
section.wz-sec .wz-progress li{flex-direction:row;justify-content:center;gap:8px}
section.wz-sec .wz-dot{width:32px;height:32px;font-size:14px}
section.wz-sec .wz-progress:before,section.wz-sec .wz-bar{top:14px;display:none}
section.wz-sec .wz-legend{font-size:17px;margin-bottom:0}
section.wz-sec .wz-step{gap:14px}
section.wz-sec .wz-row2{gap:12px}
section.wz-sec .fl input,section.wz-sec .fl select,section.wz-sec .fl textarea{min-height:44px;padding-top:9px;padding-bottom:9px}
section.wz-sec .wz-q{gap:8px}
section.wz-sec .seg span,section.wz-sec .chips span{min-height:42px;padding-top:6px;padding-bottom:6px}
section.wz-sec .wz-nav{margin-top:16px;padding-top:16px}
@media(max-width:899px){section.wz-sec .wz-card{grid-template-columns:1fr}section.wz-sec .wz{padding:24px 20px}}
/* ===== Booking: joined with footer ===== */
section.wz-sec{background:radial-gradient(700px 380px at 100% 0%,rgba(54,166,221,.25),transparent 70%),radial-gradient(600px 320px at 0% 100%,rgba(227,160,138,.16),transparent 70%),var(--navy)!important}
section.wz-sec .wz-card{background:none;border:0;box-shadow:none;overflow:visible;gap:48px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center}
section.wz-sec .wz-side{background:none;padding:0}
section.wz-sec .wz-side:before,section.wz-sec .wz-side:after{display:none}
section.wz-sec .wz-side h2{font-size:clamp(30px,3vw,42px)}
section.wz-sec .wz{background:#fff;border-radius:28px;box-shadow:0 30px 70px rgba(0,0,0,.28)}
section.wz-sec .wz-call{margin-top:18px;align-self:flex-start}
@media(max-width:899px){section.wz-sec .wz-card{grid-template-columns:1fr;gap:28px}}
.di [class*=a-],.di .ac,.di .bub,.di .zz,.di .ring,.di .br,.di .ray{transform-box:fill-box;transform-origin:center}
@media(prefers-reduced-motion:no-preference){.di-implant .a-screw{animation:lp-screw 3.6s ease-in-out infinite!important}.di-implant .a-crown{animation:lp-drop 3.6s ease-in-out infinite!important}.di .a-spark{animation:lp-twinkle 2.4s ease-in-out infinite!important}.di-allon4 .a-posts g{animation:lp-post 3.2s ease-in-out infinite!important;animation-delay:calc(var(--i,0)*.18s)!important}.di-braces .wire.dr,.di-rootcanal .canal.dr,.di-emergency .crack.dr,.di-aligner .ln-ac.dr,.di-cosmetic .shine.dr,.di-whitening .shine.dr,.di-check .ln.dr,.di-insurance .ln.dr,.di-implant .ln.dr,.di-sleep .ln.dr{animation:lp-draw 3.6s ease-in-out infinite!important}.di-braces .a-brackets rect{animation:lp-pop 3.6s ease-in-out infinite!important}.di-braces .a-brackets rect:nth-child(2){animation-delay:.2s!important}.di-braces .a-brackets rect:nth-child(3){animation-delay:.4s!important}.di-family .a-brush{animation:lp-scrub 3s ease-in-out infinite!important}.di-family .bub,.di-cleaning .bub{animation:lp-bub 3s ease-out infinite!important}.di .bub:nth-child(2){animation-delay:.3s!important}.di .bub:nth-child(3){animation-delay:.7s!important}.di-crown .a-cap{animation:lp-cap 3.4s ease-in-out infinite!important}.di-extraction .a-cap{animation:lp-lift 3.4s ease-in-out infinite!important}.di-rootcanal .a-glow{animation:glow 1.7s ease-in-out infinite!important}.di-rootcanal .g2{animation-delay:.85s!important}.di-laser .a-pen{animation:lp-pen 3s ease-in-out infinite!important}.di-laser .beam{animation:lp-beam 3s linear infinite!important}.di-laser .a-dot{animation:glow 1s ease-in-out infinite!important}.di-emergency .a-badge{animation:lp-shake 3s ease-in-out infinite!important}.di-emergency .ring{animation:ping 1.5s ease-out infinite!important}.di-denture .a-top{animation:lp-chomp 2.6s ease-in-out infinite!important}.di-denture .a-bot{animation:lp-chomp-b 2.6s ease-in-out infinite!important}.di-aligner .a-aligner{animation:lp-slip 3.2s ease-in-out infinite!important}.di-cosmetic .a-stars path{animation:lp-twinkle 2.4s ease-in-out infinite!important}.di-cosmetic .a-stars .s2{animation-delay:.6s!important}.di-cosmetic .a-stars .s3{animation-delay:1.2s!important}.di-whitening .a-rays{animation:lp-rays 2.8s ease-in-out infinite!important}.di-whitening .half{animation:lp-whiten 2.8s ease-in-out infinite!important}.di-sleep .a-moon{animation:lp-rock 4s ease-in-out infinite!important}.di-sleep .zz{animation:zfloat 3s ease-in-out infinite!important}.di-sleep .z2{animation-delay:1s!important}.di-calendar .a-cal{animation:lp-pop 3s ease-in-out infinite!important}.di-clock .ln{transform-box:view-box;transform-origin:32px 33px;animation:lp-spin 8s linear infinite!important}.di-tooth,.di-user{animation:lp-bob 3.2s ease-in-out infinite}.di-user .ac{animation:lp-twinkle 2.4s ease-in-out infinite!important}.di-bridge rect{transform-box:fill-box;transform-origin:center;animation:lp-drop 3.4s ease-in-out infinite!important}.di-smile .fw{transform-box:fill-box;transform-origin:center top;animation:lp-grin 3s ease-in-out infinite!important}a:hover .di *,button:hover .di *{animation-duration:1.4s!important}.hdr .sub .di,.hdr .sub .di *,.sheet .di,.sheet .di *{animation-play-state:paused!important}.hdr .has-kids:hover .sub .di,.hdr .has-kids:hover .sub .di *,.hdr .has-kids:focus-within .sub .di,.hdr .has-kids:focus-within .sub .di *,.hdr .menu-btn[aria-expanded=true]+.sub .di,.hdr .menu-btn[aria-expanded=true]+.sub .di *,.sheet[open] .di,.sheet[open] .di *{animation-play-state:running!important}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes screw{0%{transform:translateY(-7px) rotate(-8deg)}50%{transform:translateY(-2px) rotate(6deg)}to{transform:none}}
@keyframes dropin{0%{transform:translateY(-6px);opacity:.6}to{transform:none;opacity:1}}
@keyframes popup{0%{transform:translateY(8px) scale(.6);opacity:0}to{transform:none;opacity:1}}
@keyframes slip{0%{transform:translateY(-9px);opacity:.3}to{transform:none;opacity:1}}
@keyframes draw2{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes twinkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.35) rotate(45deg)}}
@keyframes rays{0%{transform:scale(.8);opacity:.2}60%{transform:scale(1.12);opacity:1}to{transform:none}}
@keyframes whiten{to{fill:#fff}}
@keyframes scrub{0%,to{transform:translate(0)}50%{transform:translate(-5px,4px)}}
@keyframes bubble{0%{transform:translateY(6px) scale(.4);opacity:0}to{transform:none;opacity:1}}
@keyframes capdown{0%{transform:translateY(-10px)}70%{transform:translateY(1.5px)}to{transform:none}}
@keyframes glow{0%,to{opacity:.35}50%{opacity:1}}
@keyframes beam{0%,to{opacity:1}50%{opacity:.2}}
@keyframes ping{0%{transform:scale(.9);opacity:.7}to{transform:scale(1.5);opacity:0}}
@keyframes shake{0%,to{transform:none}25%{transform:rotate(-12deg)}75%{transform:rotate(10deg)}}
@keyframes chomp{0%,to{transform:none}50%{transform:translateY(7px)}}
@keyframes zfloat{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(-4px);opacity:1}}
@keyframes panel{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes ring{0%,70%,to{transform:rotate(0)}74%{transform:rotate(-6deg)}78%{transform:rotate(6deg)}82%{transform:rotate(-4deg)}86%{transform:rotate(3deg)}}
@keyframes upload{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes lp-screw{0%,55%,to{transform:none}12%{transform:translateY(-3px) rotate(-14deg)}24%{transform:translateY(-1px) rotate(12deg)}36%{transform:translateY(1px) rotate(-6deg)}46%{transform:none}}
@keyframes lp-drop{0%,60%,to{transform:none}18%{transform:translateY(-8px)}34%{transform:translateY(1.5px)}44%{transform:none}}
@keyframes lp-twinkle{0%,to{transform:scale(.55) rotate(0);opacity:.35}50%{transform:scale(1.35) rotate(90deg);opacity:1}}
@keyframes lp-post{0%,50%,to{transform:none}18%{transform:translateY(-6px)}32%{transform:translateY(1px)}}
@keyframes lp-draw{0%{stroke-dashoffset:1}35%,75%{stroke-dashoffset:0}to{stroke-dashoffset:-1}}
@keyframes lp-pop{0%,40%,to{transform:none}15%{transform:scale(1.3)}28%{transform:scale(.94)}}
@keyframes lp-scrub{0%,60%,to{transform:none}10%,30%,50%{transform:translate(-5px,4px)}20%,40%{transform:translate(1px,-1px)}}
@keyframes lp-bub{0%{transform:translateY(5px) scale(.3);opacity:0}25%{transform:none;opacity:1}70%{transform:translateY(-5px);opacity:1}to{transform:translateY(-9px) scale(1.15);opacity:0}}
@keyframes lp-cap{0%,60%,to{transform:none}20%{transform:translateY(-11px) rotate(-4deg)}38%{transform:translateY(1.5px)}48%{transform:none}}
@keyframes lp-pen{0%,60%,to{transform:none}20%,40%{transform:translate(-3px,3px)}}
@keyframes lp-beam{0%,15%,45%,to{opacity:0}20%,30%,40%{opacity:1}25%,35%{opacity:.25}}
@keyframes lp-shake{0%,55%,to{transform:none}10%{transform:rotate(-14deg) scale(1.08)}22%{transform:rotate(12deg) scale(1.08)}34%{transform:rotate(-6deg)}44%{transform:none}}
@keyframes lp-chomp{0%,50%,to{transform:none}15%,35%{transform:translateY(4px)}25%{transform:none}}
@keyframes lp-chomp-b{0%,50%,to{transform:none}15%,35%{transform:translateY(-2px)}25%{transform:none}}
@keyframes lp-lift{0%,60%,to{transform:none}25%,40%{transform:translateY(-8px) rotate(8deg)}}
@keyframes lp-slip{0%,55%,to{transform:none}20%,35%{transform:translateY(-5px)}}
@keyframes lp-rays{0%,100%{transform:scale(.92);opacity:.5}50%{transform:scale(1.08);opacity:1}}
@keyframes lp-whiten{0%,100%{opacity:1}50%{opacity:.15}}
@keyframes lp-rock{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@keyframes lp-spin{to{transform:rotate(360deg)}}
@keyframes lp-bob{0%,100%{transform:none}50%{transform:translateY(-3px)}}
@keyframes lp-grin{0%,60%,100%{transform:none}25%{transform:scaleY(1.25)}}

/* booking form v2: soft-filled fields, choice cards, chip button (design only) */
html body .wz-sec:not(#_a) .wz-card{box-shadow:0 50px 90px -40px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.07)!important;border-radius:36px!important}
html body .wz-sec:not(#_a) form.wz{position:relative!important;padding:36px 44px 38px!important;background:linear-gradient(180deg,#fff 0%,#F8FBFE 100%)!important;border-radius:36px 36px 36px 120px!important}
html body .wz-sec:not(#_a) form.wz:before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;height:6px!important;background:linear-gradient(90deg,#36A6DD,#9FD6F2 55%,#E3A08A)!important}
html body .wz-sec:not(#_a) .wz-progress{margin:6px 0 38px!important;padding:0!important;background:none!important;grid-template-columns:repeat(3,1fr)!important}
html body .wz-sec:not(#_a) .wz-progress:before{left:16.6%!important;right:16.6%!important;top:20px!important;height:3px!important;background:repeating-linear-gradient(90deg,#C6DAE9 0 6px,transparent 6px 12px)!important}
html body .wz-sec:not(#_a) .wz-bar{left:16.6%!important;right:16.6%!important;top:20px!important;height:3px!important}
html body .wz-sec:not(#_a) .wz-dot{width:42px!important;height:42px!important;border:2px solid #C6DAE9!important;background:#fff!important;font-size:16px!important}
html body .wz-sec:not(#_a) .is-cur .wz-dot{background:linear-gradient(135deg,#36A6DD,#1570b0)!important;border-color:#fff!important;color:#fff!important;box-shadow:0 0 0 5px rgba(54,166,221,.2),0 10px 20px -8px rgba(21,112,176,.7)!important}
html body .wz-sec:not(#_a) .wz-lbl{font-size:15px!important;font-weight:600!important}
html body .wz-sec:not(#_a) .wz-step{gap:24px!important}
html body .wz-sec:not(#_a) .wz-legend{font:700 26px/1.2 var(--font-heading)!important;color:#0D2A44!important;margin:0 0 4px!important;padding:0 0 0 18px!important;border-left:5px solid #E3A08A!important;border-radius:2px!important}
html body .wz-sec:not(#_a) .wz-row2{gap:22px!important}
html body .wz-sec:not(#_a) .fl,html body .wz-sec:not(#_a) .wz-ql{font-size:15px!important;font-weight:600!important;color:#0D2A44!important;gap:10px!important;transition:color .2s!important}
html body .wz-sec:not(#_a) .fl:focus-within{color:#1570b0!important}
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea{min-height:60px!important;padding:14px 20px!important;border:2px solid transparent!important;border-bottom:2px solid #C6DAE9!important;border-radius:18px!important;background:#EEF4F9!important;box-shadow:none!important;font-size:16px!important;color:#0D2A44!important}
html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl select:hover,html body .wz-sec:not(#_a) .fl textarea:hover{background:#E7F0F7!important}
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{background:#fff!important;border-color:#36A6DD!important;box-shadow:0 12px 24px -14px rgba(54,166,221,.7),0 0 0 4px rgba(54,166,221,.14)!important}
html body .wz-sec:not(#_a) .seg{gap:16px!important}
html body .wz-sec:not(#_a) .seg span{position:relative!important;min-height:72px!important;padding:14px 20px 14px 66px!important;justify-content:flex-start!important;text-align:left!important;border:2px solid transparent!important;border-radius:20px!important;background:#EEF4F9!important;box-shadow:none!important;font-weight:600!important;font-size:16px!important;color:#0D2A44!important}
html body .wz-sec:not(#_a) .seg span:before{content:""!important;position:absolute!important;left:20px!important;top:50%!important;width:28px!important;height:28px!important;margin-top:-14px!important;border-radius:50%!important;background:#fff!important;box-shadow:inset 0 0 0 2px #A9C7DC!important;transition:all .2s!important}
html body .wz-sec:not(#_a) .seg label:hover span{background:#E3EEF6!important;transform:translateY(-2px)!important}
html body .wz-sec:not(#_a) .seg input:checked+span{background:#fff!important;border-color:#36A6DD!important;box-shadow:0 14px 28px -16px rgba(54,166,221,.8)!important}
html body .wz-sec:not(#_a) .seg input:checked+span:before{background:#36A6DD url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat!important;box-shadow:none!important}
html body .wz-sec:not(#_a) .wz-nav{margin-top:32px!important;padding-top:26px!important;border-top:2px dotted #D5E3EE!important}
@media(max-width:900px){html body .wz-sec:not(#_a) form.wz{border-radius:28px!important;padding:28px 20px 30px!important}}
@media(max-width:700px){html body .wz-sec:not(#_a) .wz-lbl{display:none!important}html body .wz-sec:not(#_a) .is-cur .wz-lbl{display:inline!important}html body .wz-sec:not(#_a) .wz-legend{font-size:22px!important}html body .wz-sec:not(#_a) .seg{grid-template-columns:1fr!important}}

/* booking form v3: clearly visible boxes */
html body .wz-sec:not(#_a) form.wz{background:linear-gradient(180deg,#EAF3FA 0%,#F4F9FD 100%)!important}
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea{background:#fff!important;border:2px solid #7FA6C0!important;border-radius:16px!important;box-shadow:0 3px 0 #C9DCEA,0 10px 18px -12px rgba(13,42,68,.35)!important}
html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl select:hover,html body .wz-sec:not(#_a) .fl textarea:hover{background:#fff!important;border-color:#36A6DD!important}
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{border-color:#1570b0!important;box-shadow:0 3px 0 #36A6DD,0 0 0 4px rgba(54,166,221,.2)!important}
html body .wz-sec:not(#_a) .seg span{background:#fff!important;border:2px solid #7FA6C0!important;box-shadow:0 3px 0 #C9DCEA!important}
html body .wz-sec:not(#_a) .seg label:hover span{background:#fff!important;border-color:#36A6DD!important}
html body .wz-sec:not(#_a) .seg input:checked+span{background:#E3F2FC!important;border-color:#1570b0!important;box-shadow:0 3px 0 #36A6DD!important}
html body .wz-sec:not(#_a) .seg span:before{box-shadow:inset 0 0 0 2px #7FA6C0!important}
html body .wz-sec:not(#_a) .wz-nav{border-top-color:#B9D1E2!important}

/* booking form v4: no shadows, narrower form, mobile overflow fix */
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{outline:3px solid rgba(54,166,221,.35)!important;outline-offset:1px}
html body .wz-sec:not(#_a) .wz-card{border:0!important;outline:0!important}
html body .wz-sec:not(#_a) form.wz{width:100%;max-width:560px;justify-self:end;padding:30px 34px 32px!important;border-radius:28px!important}
@media(min-width:900px){html body .wz-sec:not(#_a) .wz-card{grid-template-columns:minmax(0,1fr) minmax(0,560px)!important;gap:56px!important}}
@media(max-width:899px){html body .wz-sec:not(#_a) .wz-card{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}html body .wz-sec:not(#_a) form.wz{max-width:none;justify-self:stretch;padding:24px 18px 26px!important}html body .wz-sec:not(#_a) .wz-side,html body .wz-sec:not(#_a) form.wz,html body .wz-sec:not(#_a) .wz-step,html body .wz-sec:not(#_a) .wz-row2{min-width:0}html body .wz-sec:not(#_a) .wz-row2{grid-template-columns:minmax(0,1fr)!important}}
html body .wz-sec:not(#_a) .seg span{padding:12px 16px 12px 58px!important;min-height:64px!important}
html body .wz-sec:not(#_a) .seg{gap:12px!important}

/* booking form v5: homepage only, slightly smaller, no shadows */
html body .wz-sec:not(#_a) form.wz{max-width:540px!important;padding:26px 30px 28px!important}
html body .wz-sec:not(#_a) .wz-progress{margin:4px 0 28px!important}
html body .wz-sec:not(#_a) .wz-dot{width:36px!important;height:36px!important;font-size:15px!important}
html body .wz-sec:not(#_a) .wz-legend{font-size:22px!important}
html body .wz-sec:not(#_a) .wz-step{gap:18px!important}
html body .wz-sec:not(#_a) .wz-row2{gap:16px!important}
html body .wz-sec:not(#_a) .fl{gap:7px!important;font-size:14.5px!important}
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea{min-height:50px!important;padding:11px 16px!important;border-radius:14px!important;box-shadow:none!important}
html body .wz-sec:not(#_a) .seg span{min-height:54px!important;padding:10px 14px 10px 52px!important;font-size:15px!important;border-radius:16px!important;box-shadow:none!important}
html body .wz-sec:not(#_a) .seg span:before{left:16px!important;width:24px!important;height:24px!important;margin-top:-12px!important}
html body .wz-sec:not(#_a) .wz-nav{margin-top:22px!important;padding-top:18px!important}

/* booking form v6: wider column, light field fill, 3D left items, more spacing (homepage only) */
@media(min-width:900px){html body .wz-sec:not(#_a) .wz-card{grid-template-columns:minmax(0,1fr) minmax(0,620px)!important;gap:64px!important}}
html body .wz-sec:not(#_a) form.wz{max-width:620px!important;padding:30px 36px 32px!important}
html body .wz-sec:not(#_a) .wz-step{gap:24px!important}
html body .wz-sec:not(#_a) .wz-row2{gap:22px!important}
html body .wz-sec:not(#_a) .wz-q{gap:12px!important}
html body .wz-sec:not(#_a) .wz-progress{margin:4px 0 34px!important}
html body .wz-sec:not(#_a) .wz-nav{margin-top:28px!important;padding-top:22px!important}
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea{background:#F5F9FD!important;border:1.5px solid #BBD3E4!important}
html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl select:hover,html body .wz-sec:not(#_a) .fl textarea:hover{background:#F0F6FB!important}
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{background:#fff!important;border-color:#36A6DD!important}
html body .wz-sec:not(#_a) .seg span{background:#F5F9FD!important;border:1.5px solid #BBD3E4!important}
html body .wz-sec:not(#_a) .seg input:checked+span{background:#E8F4FC!important;border-color:#36A6DD!important}
html body .wz-sec:not(#_a) .wz-side{display:flex!important;flex-direction:column!important;gap:6px!important}
html body .wz-sec:not(#_a) .wz-perks{gap:16px!important;margin:26px 0 30px!important}
html body .wz-sec:not(#_a) .wz-hours{margin-top:18px!important}

/* booking form v7: 3D buttons in the form (homepage only), no blur shadows */
html body .wz-sec:not(#_a) .seg span{border-bottom:5px solid #A9C5D9!important;background:linear-gradient(180deg,#FFFFFF,#EEF5FA)!important;transition:transform .12s,border-bottom-width .12s,background .15s!important}
html body .wz-sec:not(#_a) .seg label:hover span{transform:translateY(-1px)!important}
html body .wz-sec:not(#_a) .seg label:active span{transform:translateY(3px)!important;border-bottom-width:2px!important}
html body .wz-sec:not(#_a) .seg input:checked+span{background:linear-gradient(180deg,#F1F9FE,#D9EDF9)!important;border-color:#36A6DD!important;border-bottom:5px solid #1F86C2!important}

/* booking form v8: more space under the step title, icons in contact fields (homepage only) */
html body .wz-sec:not(#_a) .wz-legend{margin:0 0 14px!important;padding-bottom:4px!important}
html body .wz-sec:not(#_a) .wz-step{gap:26px!important}
html body .wz-sec:not(#_a) .wz-legend+.wz-row2{margin-top:8px!important}
html body .wz-sec:not(#_a) .fl{gap:10px!important}

/* booking form v9: no icons, clearer field boxes (homepage only) */
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea{background:#EDF4FA!important;border:2px solid #9DC0D8!important;border-radius:14px!important;padding-left:18px!important}
html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl select:hover,html body .wz-sec:not(#_a) .fl textarea:hover{background:#E6F0F8!important;border-color:#6FAAD0!important}
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{background:#fff!important;border-color:#2A93CF!important}

/* booking form v11: white fields, standard site buttons (homepage only) */
html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea,html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl select:hover,html body .wz-sec:not(#_a) .fl textarea:hover{background:#fff!important}

/* booking form v12: remove every box shadow in the homepage form */
html body .wz-sec:not(#_a) .wz-card,html body .wz-sec:not(#_a) form.wz,html body .wz-sec:not(#_a) form.wz:after,html body .wz-sec:not(#_a) .wz-progress,html body .wz-sec:not(#_a) .wz-progress li,html body .wz-sec:not(#_a) .wz-progress li.is-cur,html body .wz-sec:not(#_a) .wz-dot,html body .wz-sec:not(#_a) .is-cur .wz-dot,html body .wz-sec:not(#_a) .fl input,html body .wz-sec:not(#_a) .fl select,html body .wz-sec:not(#_a) .fl textarea,html body .wz-sec:not(#_a) .fl input:hover,html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus,html body .wz-sec:not(#_a) .seg span,html body .wz-sec:not(#_a) .seg label:hover span,html body .wz-sec:not(#_a) .seg input:checked+span,html body .wz-sec:not(#_a) .seg input:checked+span:before,html body .wz-sec:not(#_a) .seg span:before,html body .wz-sec:not(#_a) .to-in,html body .wz-sec:not(#_a) .to-ic,html body .wz-sec:not(#_a) .wz-call,html body .wz-sec:not(#_a) .wz-perks li{box-shadow:none!important}
html body .wz-sec:not(#_a) .wz-card{border:0!important;outline:0!important}
html body .wz-sec:not(#_a) .fl input:focus,html body .wz-sec:not(#_a) .fl select:focus,html body .wz-sec:not(#_a) .fl textarea:focus{outline:2px solid rgba(54,166,221,.45)!important;outline-offset:1px}

/* booking form v13: less space above the steps bar */
html body .wz-sec:not(#_a) form.wz{padding-top:20px!important}
html body .wz-sec:not(#_a) .wz-progress{margin-top:0!important}
/* pages.css */
/* ===== Cosmetic page: hero collage ===== */
.cd-hero-img{width:100%;height:auto;aspect-ratio:840/400;object-fit:cover;border-radius:28px}
/* ===== Article with sticky photo + contents ===== */
.cr{background:#fff}
.cr-grid{display:grid;gap:32px;align-items:start}
@media(min-width:980px){.cr-grid{grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:56px}}
.cr-side{display:grid;gap:22px}
@media(min-width:980px){.cr-side{position:sticky;top:110px}}
.cr-pic{margin:0;border-radius:28px;overflow:hidden;background:#EAF3FA}
.cr-pic img{display:block;width:100%;height:auto;aspect-ratio:4/4.6;object-fit:cover}
@media(max-width:979px){.cr-pic img{aspect-ratio:16/9}.cr-toc{display:none}}
.cr-toc ol{list-style:none;margin:0;padding:6px;display:grid;gap:2px;border-radius:22px;background:#F4F9FD;border:1px solid #E3EEF7;counter-reset:t}
.cr-toc li{counter-increment:t}
.cr-toc a{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:14px;color:var(--navy);text-decoration:none;font:600 14.5px/1.35 var(--font-body);transition:background .2s,color .2s}
.cr-toc a:before{content:counter(t);flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;border:1.5px solid #CFE4F4;color:var(--blue);font:700 12px/1 var(--font-heading)}
.cr-toc a:hover{background:#fff;color:var(--blue)}
.cr-main{display:grid;gap:22px}
.cr-lead{padding:6px 4px 10px}
.cr-lead .author-line{margin-bottom:16px}
.cr-lead>p:not(.author-line){font:500 clamp(19px,2vw,23px)/1.55 var(--font-body);color:var(--navy);margin:0}
.cr-card{padding:clamp(24px,3vw,38px);border-radius:28px;background:#fff;border:1px solid #E3EEF7;scroll-margin-top:110px}
.cr-card:nth-of-type(odd){background:linear-gradient(170deg,#fff,#F4F9FD)}
.cr-card h2{margin:0 0 14px;font-weight:700;font-size:clamp(22px,2.2vw,28px)!important;line-height:1.25;color:var(--navy);letter-spacing:-.015em}
.cr-card p{font-size:16.5px;line-height:1.7;margin:0 0 12px}
.cr-card a{color:var(--blue);font-weight:600}
.cr-card ul,.cr-card ol{list-style:none;margin:16px 0;padding:0;display:grid;gap:10px;counter-reset:cs}
.cr-card li{position:relative;padding:14px 16px 14px 56px;border-radius:16px;background:#fff;border:1px solid #E3EEF7;font-size:16px;line-height:1.55}
.cr-card li:before{content:"";position:absolute;left:16px;top:14px;width:26px;height:26px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.cr-card ol li{counter-increment:cs}
.cr-card ol li:before{content:counter(cs);background:var(--coral);color:var(--navy);font:700 14px/26px var(--font-heading);text-align:center}
.cr-card .table-wrap{margin-top:14px;border-radius:20px;border:1px solid #E3EEF7;overflow:auto;background:#fff}
@media(max-width:767px){.cr-card{padding:22px 18px}}
/* ===== Meet your dentist (doc-sec): icons + typography ===== */
.doc-sec .doc-name{font-size:clamp(26px,2.6vw,34px)!important;line-height:1.15!important;font-weight:700!important;letter-spacing:-.02em;margin:6px 0 12px!important}
.doc-sec .doc-lead{font-size:17px!important;line-height:1.6!important;color:var(--text)}
.doc-sec .cred-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:14px!important;margin:22px 0!important}
@media(max-width:560px){.doc-sec .cred-grid{grid-template-columns:1fr}}
.doc-sec .cred-grid li{position:relative;display:grid!important;gap:2px;padding:18px 18px 18px 84px!important;min-height:84px;border-radius:20px!important;background:#fff!important;border:1.5px solid #D9E9F4!important;box-shadow:none!important}
.doc-sec .cred-grid li:before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:16px;border:1.5px solid #CFE4F4;background:#EAF5FC center/28px no-repeat}
.doc-sec .cred-grid li:nth-child(1):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231570B0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='M8.5 14l-1.5 7 5-3 5 3-1.5-7'/%3E%3C/svg%3E")}
.doc-sec .cred-grid li:nth-child(2):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231570B0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 8-7 10-4-2-7-5.5-7-10V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E")}
.doc-sec .cred-grid li:nth-child(3):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231570B0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8l1 5-2 3v3l-1 7h-4l-1-7v-3L7 8z'/%3E%3Cpath d='M9.5 8h5'/%3E%3C/svg%3E")}
.doc-sec .cred-grid li:nth-child(4):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231570B0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v4M12 18v4M2 12h4M18 12h4M5 5l3 3M16 16l3 3M19 5l-3 3M8 16l-3 3'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
.doc-sec .cred-grid strong{font:700 20px/1.2 var(--font-heading)!important;color:var(--navy)!important;letter-spacing:.01em}
.doc-sec .cred-grid span{font-size:14.5px!important;line-height:1.4;color:var(--muted)}
.doc-sec .doc-facts li{font-size:16px}

/* ===== No sidebars on service pages ===== */
.rich-sec .rich-grid{grid-template-columns:1fr!important}
.rich-sec .rich{max-width:900px;margin:0 auto}
.cr-grid{grid-template-columns:1fr!important;gap:28px!important}
.cr-side{position:static!important}
.cr-toc{display:none!important}
.cr-pic{border-radius:28px}
.cr-pic img{aspect-ratio:21/8!important;object-position:center 40%}
@media(max-width:767px){.cr-pic img{aspect-ratio:16/9!important}}
.cr-main{max-width:960px;margin:0 auto;width:100%}

/* ===== Image heights: balanced with the text beside them ===== */
.hero-media .hm-frame img,.hm-frame img{aspect-ratio:5/4!important;max-height:460px;width:100%;object-fit:cover;object-position:center 20%}
.hm-doc-photo{aspect-ratio:4/4.6!important;max-height:540px}
.dm-frame img,.doc-media img{aspect-ratio:1/1!important;max-height:420px;object-fit:cover;object-position:center 18%}
.cost-pic img{max-height:340px;width:100%;object-fit:cover;object-position:center 25%}
section.hm-why .bt-a{min-height:0!important}
section.hm-why .bt-a img{max-height:460px;object-fit:cover}
.hm-panel-pic img{max-height:340px}
img.cd-hero-img{aspect-ratio:840/400!important;max-height:none}

/* ===== Google reviews: more padding ===== */
.hm-rev{padding-top:clamp(64px,7vw,96px)!important;padding-bottom:clamp(64px,7vw,96px)!important}
.hm-rev .hm-rev-head{gap:28px 56px;margin-bottom:34px}
.hm-rev .hm-rev-score{padding:26px 28px!important;border-radius:26px;gap:8px 14px}
.hm-rev .car-track,.hm-rev-track{gap:20px!important;padding:10px 6px 34px!important}
.hm-rev .rev-card{padding:28px 26px 26px!important;border-radius:26px!important;gap:16px}
.hm-rev .rev-top{gap:14px;padding-bottom:6px}
.hm-rev .rev-text{line-height:1.7;font-size:16px}
.hm-rev .rev-card .stars{font-size:18px;letter-spacing:3px}

/* ===== Cosmetic options: attractive cards ===== */
.opt-sec .opt-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))!important;gap:20px!important}
.opt-sec .opt-card{position:relative;display:flex!important;flex-direction:column;gap:12px;height:100%;padding:30px 28px 26px!important;border-radius:28px!important;background:#fff!important;border:1.5px solid #D9E9F4!important;box-shadow:none!important;overflow:hidden;transition:transform .35s var(--ease),border-color .3s,background .3s}
.opt-sec .opt-card:before{content:"";position:absolute;left:0;top:0;height:5px;width:0;background:linear-gradient(90deg,var(--blue),var(--coral));transition:width .45s var(--ease)}
.opt-sec .opt-card:hover{transform:translateY(-6px);border-color:var(--blue)!important;background:linear-gradient(170deg,#fff,#F1F8FD)!important}
.opt-sec .opt-card:hover:before{width:100%}
.opt-sec .opt-card .tile{width:68px!important;height:68px!important;border-radius:22px!important;background:linear-gradient(150deg,#EAF5FC,#D3E9F8)!important;border:1.5px solid #CFE4F4}
.opt-sec .opt-card h3{font-size:22px!important;margin:6px 0 0!important}
.opt-sec .opt-card p{font-size:16px;line-height:1.6;margin:0;flex:1}
.opt-sec .opt-card .more{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:10px 18px;border-radius:999px;background:#EAF5FC;color:var(--blue);font-weight:700;transition:background .25s,color .25s}
.opt-sec .opt-card:hover .more{background:var(--blue);color:#fff}

/* ===== Planning for cosmetic care ===== */
.cost-sec .cost-card.with-pic{display:grid!important;gap:28px!important;padding:0!important;border-radius:32px!important;overflow:hidden;background:linear-gradient(170deg,#fff,#F1F8FD)!important;border:1.5px solid #D9E9F4!important;box-shadow:none!important;align-items:stretch}
@media(min-width:960px){.cost-sec .cost-card.with-pic{grid-template-columns:minmax(0,5fr) minmax(0,6fr)!important;gap:0!important}.cost-sec .cost-card .cost-pic{order:-1}}
.cost-sec .cost-pic{margin:0!important;height:100%;min-height:260px}
.cost-sec .cost-pic img{width:100%;height:100%;max-height:none;object-fit:cover}
.cost-sec .cost-body{padding:clamp(26px,3.4vw,46px)!important;display:grid;gap:18px}
.cost-sec .cost-body h2{font-size:clamp(24px,2.4vw,30px)!important;margin:0 0 6px!important}
.cost-sec .ct-item{position:relative;padding:16px 18px 16px 64px;margin:10px 0;border-radius:18px;background:#fff;border:1.5px solid #E3EEF7;counter-increment:ci}
.cost-sec .cost-body>div{counter-reset:ci}
.cost-sec .ct-item:before{content:counter(ci);position:absolute;left:16px;top:16px;width:34px;height:34px;border-radius:50%;background:var(--coral);color:var(--navy);display:grid;place-items:center;font:700 15px/1 var(--font-heading)}
.cost-sec .ct-item h3{font-size:18px!important;margin:0 0 4px!important}
.cost-sec .ct-item p{margin:0;font-size:15px;line-height:1.55}

/* ===== CTA: curved bottom corner into the section below ===== */
.cta{position:relative}
.cta-wave{fill:#fff}
.cta:has(+ .wz-sec){padding-bottom:calc(clamp(56px,6vw,84px) + 36px)}
.cta:has(+ .wz-sec):after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:44px;background:var(--cream);border-radius:44px 44px 0 0;z-index:1}

/* ===== Article chapters (cosmetic page) ===== */
.ch-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:60;pointer-events:none}
.ch-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--coral))}
.ch-intro{padding:clamp(56px,7vw,96px) 0 clamp(24px,3vw,40px);background:#fff}
.ch-intro .wrap{max-width:880px}
.ch-intro .author-line{margin-bottom:22px}
.ch-intro p:not(.author-line){font:500 clamp(21px,2.4vw,28px)/1.5 var(--font-body);color:var(--navy);letter-spacing:-.01em;margin:0}
.ch{padding:clamp(52px,6vw,84px) 0;background:#fff}
.ch-alt{background:#F4F9FD}
.ch-wrap{max-width:880px}
.ch-wide .ch-wrap{max-width:1080px}
.ch-head{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.ch-n{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;font:700 17px/1 var(--font-heading);letter-spacing:.02em}
.ch-head h2{margin:0;font-weight:700;font-size:clamp(26px,3vw,36px)!important;line-height:1.2!important;letter-spacing:-.02em;color:var(--navy)}
.ch-body{padding-left:70px}
@media(max-width:767px){.ch-body{padding-left:0}.ch-head{align-items:flex-start}.ch-n{width:44px;height:44px;font-size:15px}}
.ch-body p{font-size:18px;line-height:1.75;color:var(--text);margin:0 0 16px;max-width:68ch}
.ch-wide .ch-body{padding-left:0}
.ch-body a{color:var(--blue);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-color:rgba(54,166,221,.4);transition:text-decoration-color .2s}
.ch-body a:hover{text-decoration-color:var(--blue)}
/* lists */
.ch-body ul{list-style:none;margin:22px 0;padding:0;display:grid;gap:0;border-top:1px solid #DCE9F3}
.ch-body ul li{position:relative;padding:16px 8px 16px 44px;border-bottom:1px solid #DCE9F3;font-size:17px;line-height:1.6}
.ch-body ul li:before{content:"";position:absolute;left:6px;top:19px;width:22px;height:22px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.ch-body li strong{color:var(--navy)}
/* steps timeline */
.ch-body ol{list-style:none;margin:26px 0;padding:0;counter-reset:st}
.ch-body ol li{position:relative;padding:0 0 26px 62px;font-size:17px;line-height:1.65;counter-increment:st}
.ch-body ol li:before{content:counter(st);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:var(--coral);color:var(--navy);display:grid;place-items:center;font:700 16px/1 var(--font-heading)}
.ch-body ol li:after{content:"";position:absolute;left:20px;top:46px;bottom:4px;width:2px;background:linear-gradient(180deg,var(--coral),rgba(227,160,138,.15))}
.ch-body ol li:last-child{padding-bottom:0}.ch-body ol li:last-child:after{display:none}
.ch-body ol li strong{display:block;color:var(--navy);font-size:18px;margin-bottom:2px}
/* table */
.ch-body .table-wrap{margin:8px 0 18px;border-radius:24px;overflow:auto;background:#fff;border:1px solid #D9E9F4}
.ch-body .stack-table{width:100%;border-collapse:separate;border-spacing:0;font-size:16px}
.ch-body .stack-table th{position:sticky;top:0;background:var(--navy);color:#fff;text-align:left;padding:16px 20px;font:700 14.5px/1.3 var(--font-body);letter-spacing:.01em}
.ch-body .stack-table td{padding:16px 20px;border-top:1px solid #E3EEF7;line-height:1.5;vertical-align:top}
.ch-body .stack-table td:first-child{font-weight:700;color:var(--navy);white-space:nowrap}
.ch-body .stack-table tbody tr:nth-child(even){background:#F4F9FD}
.ch-body .stack-table tbody tr:hover{background:#EAF5FC}
/* photo bands */
.ch-band{height:clamp(200px,28vw,380px);overflow:hidden;position:relative;background:#CFE8F6}
.ch-band img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
/* last chapter: call-out panel */
.ch-last{background:#fff;padding-top:clamp(40px,5vw,64px)}
.ch-last .ch-wrap{padding:clamp(28px,4vw,52px);border-radius:32px;background:radial-gradient(420px 260px at 100% 0%,rgba(54,166,221,.4),transparent),var(--navy);max-width:960px}
.ch-last .ch-n{background:var(--coral);color:var(--navy)}
.ch-last h2,.ch-last .ch-body p{color:#fff}
.ch-last .ch-body p{opacity:.92}
.ch-last .ch-body a{color:var(--coral);text-decoration-color:rgba(227,160,138,.5)}

/* ===== Article as home accordion (cosmetic page) ===== */
.oa-article{padding:clamp(56px,7vw,96px) 0;background:linear-gradient(180deg,#fff,#F4F9FD)}
.oa-lead{max-width:860px;margin:0 auto clamp(32px,4vw,52px);text-align:center}
.oa-lead .author-line{justify-content:center;margin-bottom:18px}
.oa-lead>p:not(.author-line){font:500 clamp(19px,2vw,23px)/1.55 var(--font-body);color:var(--navy);margin:0}
.oa-article .oa-num{font:700 17px/1 var(--font-heading);color:var(--blue)}
.oa-article .oa-t{font-size:clamp(17px,1.6vw,20px)}
.oa-article .oa-media{min-height:360px}
@media(min-width:900px){.oa-article .oa{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}.oa-article .oa-media{position:sticky;top:110px;min-height:520px;align-self:start}}
.oa-article .oa-in p{font-size:16.5px;line-height:1.7}
.oa-article .oa-in ul,.oa-article .oa-in ol{margin:14px 0;padding-left:22px;display:grid;gap:8px;font-size:16.5px;line-height:1.6}
.oa-article .table-wrap{overflow:auto;border-radius:18px;border:1px solid #D9E9F4;margin:8px 0 14px;background:#fff}
.oa-article .stack-table{min-width:560px;font-size:15px;border-collapse:collapse}
.oa-article .stack-table th{background:var(--navy);color:#fff;text-align:left;padding:12px 14px;font:700 14px/1.3 var(--font-body)}
.oa-article .stack-table td{padding:12px 14px;border-top:1px solid #E3EEF7;vertical-align:top}
.oa-article .stack-table td:first-child{font-weight:700;color:var(--navy)}
.oa-article .oa-media{min-height:0!important;aspect-ratio:4/3;background:#fff;border:1px solid #D9E9F4;box-shadow:none}
.oa-article .oa-pic img{object-fit:cover;object-position:center}
@media(max-width:899px){.oa-article .oa-media{aspect-ratio:16/10}}

/* About the dentist card */
.oa-article .oa-lead{max-width:none;margin:0 0 40px}
.al-card{display:grid;grid-template-columns:132px 1fr;gap:28px;align-items:center;padding:24px 28px;border-radius:24px;background:linear-gradient(135deg,#F3F9FD,#fff);border:1.5px solid #D9E9F4}
.al-photo{margin:0;text-align:center}
.al-photo img{width:132px;height:132px;border-radius:50%;object-fit:cover;object-position:center top;border:4px solid #fff;box-shadow:0 0 0 2px #CFE4F4}
.al-photo figcaption{margin-top:10px;font-size:14px;font-weight:600;color:#0D2A44;line-height:1.3}
.al-eyebrow{margin:0 0 6px;font-size:14px;font-weight:600;color:#1570B0}
.al-name{margin:0 0 10px;font-size:clamp(22px,2.2vw,28px);line-height:1.2;font-weight:700;letter-spacing:-.02em}
.al-name a{color:#0D2A44;text-decoration:none}.al-name a:hover{color:#1570B0}
.al-text{margin:0;font-size:17px;line-height:1.65;color:var(--text)}
@media(max-width:640px){.al-card{grid-template-columns:1fr;justify-items:center;text-align:center;padding:24px 20px;gap:18px}}

/* Q&A sections: one full section per H2 */
.al-sec{padding:clamp(48px,6vw,80px) 0 0!important;background:#fff}
.al-sec .oa-lead{margin:0}
.qa-sec{padding:clamp(56px,7vw,96px) 0;background:#fff}
.qa-sec.qa-alt{background:#F4F9FD}
.qa-grid{display:grid;gap:clamp(28px,5vw,72px);align-items:center}
@media(min-width:900px){.qa-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.qa-grid.qa-flip .qa-copy{order:2}.qa-grid.qa-flip .qa-pic{order:1}.qa-wide .qa-grid{grid-template-columns:1fr}}
.qa-num{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border-radius:14px;background:#EAF5FC;border:1.5px solid #CFE4F4;font:700 17px/1 var(--font-heading);color:#1570B0;margin-bottom:14px}
.qa-copy h2{margin:0 0 18px}
.qa-body p{font-size:17px;line-height:1.7;margin:0 0 14px}
.qa-body ul,.qa-body ol{margin:14px 0;padding:0;list-style:none;display:grid;gap:10px;font-size:17px;line-height:1.6;counter-reset:q}
.qa-body li{position:relative;padding:14px 16px 14px 52px;border-radius:16px;background:#fff;border:1.5px solid #D9E9F4}
.qa-alt .qa-body li{background:#fff}
.qa-body ul li:before{content:"";position:absolute;left:18px;top:19px;width:18px;height:18px;border-radius:50%;background:#E3A08A}
.qa-body ol li{counter-increment:q}
.qa-body ol li:before{content:counter(q);position:absolute;left:14px;top:12px;width:28px;height:28px;border-radius:50%;background:#0D2A44;color:#fff;font:700 14px/28px var(--font-body);text-align:center}
.qa-body a{color:#1570B0;font-weight:600}
.qa-pic{margin:0;border-radius:28px;overflow:hidden;border:1px solid #D9E9F4;aspect-ratio:4/3;background:#fff;box-shadow:0 18px 40px -24px rgba(13,42,68,.35)}
.qa-pic img{width:100%;height:100%;object-fit:cover;display:block}
.qa-wide .table-wrap{overflow:auto;border-radius:20px;border:1px solid #D9E9F4;background:#fff;margin:6px 0 0}
.qa-wide .stack-table{width:100%;min-width:640px;font-size:15.5px;border-collapse:collapse}
.qa-wide .stack-table th{background:#0D2A44;color:#fff;text-align:left;padding:14px 16px;font:700 14px/1.3 var(--font-body)}
.qa-wide .stack-table td{padding:14px 16px;border-top:1px solid #E3EEF7;vertical-align:top}
.qa-wide .stack-table td:first-child{font-weight:700;color:#0D2A44}
.qa-wide .stack-table tr:nth-child(even) td{background:#F8FBFE}
@media(max-width:899px){.qa-pic{aspect-ratio:16/10}}

/* Powerful pass */
.qa-sec{position:relative;overflow:hidden}
.qa-sec .qa-copy{position:relative;z-index:1}
.qa-sec .qa-copy:before{content:attr(data-n);}
.qa-num{min-width:0;height:auto;padding:0;border:0;background:none;display:block;font:800 clamp(72px,9vw,128px)/.85 var(--font-heading);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px #36A6DD;opacity:.55;margin:0 0 6px}
.qa-copy h2{font-size:clamp(30px,3.6vw,48px)!important;line-height:1.1!important;font-weight:800!important;letter-spacing:-.025em;color:#0D2A44}
.qa-body p:first-child{font-size:clamp(18px,1.5vw,20px);color:#0D2A44}
.qa-pic{position:relative;overflow:visible;border:0;background:none;box-shadow:none;aspect-ratio:auto}
.qa-pic:before{content:"";position:absolute;inset:18px -18px -18px 18px;border-radius:32px;background:#E3A08A;opacity:.35;z-index:0}
.qa-flip .qa-pic:before{inset:18px 18px -18px -18px;background:#36A6DD;opacity:.3}
.qa-pic img{position:relative;z-index:1;aspect-ratio:4/3;border-radius:32px;box-shadow:0 30px 60px -30px rgba(13,42,68,.5);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.qa-pic:hover img{transform:scale(1.02)}
.qa-body li{transition:transform .25s,box-shadow .25s,border-color .25s}
.qa-body li:hover{transform:translateY(-3px);border-color:#36A6DD;box-shadow:0 14px 28px -18px rgba(13,42,68,.35)}
.qa-wide .qa-copy{text-align:left}
.qa-wide .table-wrap{box-shadow:0 24px 50px -32px rgba(13,42,68,.4);border-radius:24px}
.qa-wide .stack-table th{background:linear-gradient(135deg,#0D2A44,#16456E)}
.qa-wide .stack-table tbody tr:hover td{background:#EAF5FC}
/* final section: navy */
#book-a-cosmetic-consultation-in-arlington-heights-il{background:linear-gradient(135deg,#0D2A44,#16456E)}
#book-a-cosmetic-consultation-in-arlington-heights-il h2,#book-a-cosmetic-consultation-in-arlington-heights-il .qa-body p{color:#fff}
#book-a-cosmetic-consultation-in-arlington-heights-il .qa-num{-webkit-text-stroke-color:#E3A08A}
#book-a-cosmetic-consultation-in-arlington-heights-il .qa-body a{color:#fff;text-decoration:underline;text-decoration-color:#E3A08A;text-underline-offset:4px}
#book-a-cosmetic-consultation-in-arlington-heights-il .smile-line path{stroke:#E3A08A}
/* about card stronger */
.al-card{box-shadow:0 24px 50px -34px rgba(13,42,68,.45);border-radius:28px;padding:32px 36px;grid-template-columns:168px 1fr}
.al-photo img{width:168px;height:168px}
.al-name{font-size:clamp(26px,3vw,38px)!important;font-weight:800!important}
.al-text{font-size:clamp(17px,1.4vw,19px)}
@media(max-width:640px){.al-card{grid-template-columns:1fr;padding:26px 20px}.qa-pic:before{inset:12px -8px -12px 12px}.qa-flip .qa-pic:before{inset:12px 12px -12px -8px}}
@supports(animation-timeline:view()){.qa-copy,.qa-pic{animation:qa-in both cubic-bezier(.2,.7,.2,1);animation-timeline:view();animation-range:entry 0% entry 40%}@keyframes qa-in{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.qa-copy,.qa-pic{animation:none!important}}

/* Basics pass: calm hierarchy, no giant numbers */
.qa-num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#EAF5FC;border:1px solid #CFE4F4;font:700 15px/1 var(--font-body);letter-spacing:0;color:#1570B0;-webkit-text-stroke:0;opacity:1;margin:0 0 16px}
.qa-copy h2{font-size:clamp(28px,3vw,40px)!important;line-height:1.15!important;font-weight:700!important}
.qa-body p:first-child{font-size:17px;color:inherit}
.qa-pic:before{display:none}
.qa-pic img{border-radius:24px;box-shadow:0 16px 36px -24px rgba(13,42,68,.4)}
.qa-pic:hover img{transform:none}
.qa-body li:hover{transform:none;box-shadow:none}
#book-a-cosmetic-consultation-in-arlington-heights-il .qa-num{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff;-webkit-text-stroke:0}
.al-name{font-weight:700!important;font-size:clamp(24px,2.6vw,32px)!important}
/* Image height matches text */
@media(min-width:900px){
.qa-grid{align-items:stretch}
.qa-copy{display:flex;flex-direction:column;justify-content:center}
.qa-pic{height:100%;min-height:380px}
.qa-pic img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
}
/* v13 polish */
.qa-sec{padding:clamp(64px,7vw,104px) 0!important}
.qa-sec.qa-alt{background:#F4F9FD}
.qa-grid{gap:clamp(36px,6vw,88px)!important}
.qa-body{max-width:62ch}
.qa-wide .qa-body{max-width:none}
.qa-body p{color:#2B4156}
.qa-copy h2{margin-bottom:22px!important}
.qa-pic img{border-radius:28px!important;box-shadow:0 24px 48px -28px rgba(13,42,68,.45)!important}
.qa-body ul li{padding-left:56px}
.qa-body ul li:before{content:"";left:16px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#EAF5FC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231570B0' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat;border:1px solid #CFE4F4}
.qa-body ol li{padding-left:56px}
.qa-body ol li:before{top:50%;transform:translateY(-50%);left:14px}
.qa-body li{border-radius:18px;box-shadow:0 1px 0 rgba(13,42,68,.03)}
.qa-wide .qa-copy{max-width:none}
.qa-wide .stack-table td,.qa-wide .stack-table th{padding:16px 18px}
.qa-wide .stack-table td:first-child{color:#0D2A44;background:#F8FBFE}
@media(max-width:899px){.qa-sec{padding:56px 0!important}.qa-pic{order:-1}.qa-copy h2{font-size:28px!important}}

/* v14: cost guides row + soft orange form separator */
.cg-sec{background:#fff}
.cg-head{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;justify-content:space-between;margin-bottom:36px}
.cg-head h2{margin:0}
.cg-head .btns{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.cg-grid{list-style:none;margin:0;padding:0;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}
.cg-card{padding:30px 28px;border-radius:24px;background:#F4F9FD;border:1.5px solid #D9E9F4;transition:border-color .25s}
.cg-card:hover{border-color:#36A6DD}
.cg-ic{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#fff;border:1.5px solid #CFE4F4;color:#1570B0;margin-bottom:18px}
.cg-card h3{margin:0 0 8px;font-size:21px;font-weight:700;color:#0D2A44}
.cg-card p{margin:0;font-size:16.5px;line-height:1.6;color:#2B4156}
@media(max-width:899px){.cg-grid{grid-template-columns:1fr}}
.cta:has(+ .wz-sec):after{background:#FDF1EB!important}
.wz-sec{background:#FDF1EB!important}

/* v15 */
/* About the dentist: full-width band */
.al-sec{background:linear-gradient(180deg,#F4F9FD,#fff)!important;padding:clamp(56px,6vw,88px) 0!important}
.al-card{display:grid!important;grid-template-columns:minmax(0,420px) 1fr!important;gap:clamp(32px,6vw,88px)!important;align-items:center;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.al-photo{position:relative;margin:0!important;text-align:left!important}
.al-photo img{width:100%!important;height:auto!important;aspect-ratio:1/1;border-radius:32px!important;border:0!important;box-shadow:0 30px 60px -34px rgba(13,42,68,.5)!important;object-position:center top}
.al-photo figcaption{position:absolute;left:16px;bottom:16px;margin:0!important;padding:10px 16px;border-radius:999px;background:#fff;color:#0D2A44;font-size:14px;font-weight:700;box-shadow:0 10px 24px -10px rgba(13,42,68,.4)}
.al-eyebrow{font-size:14px!important;font-weight:700!important;color:#1570B0}
.al-name{font-size:clamp(30px,3.6vw,46px)!important;line-height:1.1!important;font-weight:700!important;margin:0 0 18px!important}
.al-text{font-size:clamp(18px,1.5vw,20px)!important;line-height:1.7!important;max-width:60ch;color:#2B4156}
@media(max-width:820px){.al-card{grid-template-columns:1fr!important}.al-photo img{aspect-ratio:4/3}}
/* Cost guide cards */
.cg-grid{gap:24px}
.cg-card{padding:36px 32px!important;border-radius:28px!important;background:#fff!important;border:1px solid #E1EEF8!important;box-shadow:0 2px 4px rgba(13,42,68,.04),0 22px 44px -28px rgba(13,42,68,.28);transition:transform .3s,box-shadow .3s,border-color .3s}
.cg-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(13,42,68,.04),0 30px 54px -28px rgba(13,42,68,.38);border-color:#36A6DD!important}
.cg-ic{width:60px;height:60px;border-radius:18px;background:linear-gradient(150deg,#EAF5FC,#D3E9F8);margin-bottom:22px}
.cg-card h3{font-size:22px!important;margin-bottom:10px!important}
.cg-card p{font-size:17px!important;line-height:1.65!important}
/* Option cards: lighter */
.opt-sec .opt-grid{grid-template-columns:repeat(3,1fr)!important;gap:20px!important}
@media(max-width:899px){.opt-sec .opt-grid{grid-template-columns:1fr!important}}
.opt-sec .opt-card{padding:24px 24px 22px!important;border-radius:22px!important;gap:8px!important;box-shadow:0 18px 36px -28px rgba(13,42,68,.3)!important;border:1px solid #E1EEF8!important}
.opt-sec .opt-card .tile{width:52px!important;height:52px!important;border-radius:16px!important;margin-bottom:6px}
.opt-sec .opt-card .tile svg{width:26px;height:26px}
.opt-sec .opt-card h3{font-size:20px!important}
.opt-sec .opt-card p{font-size:16px}
.opt-sec .opt-card .more{padding:0!important;background:none!important;border-radius:0;color:#1570B0!important;margin-top:4px}
.opt-sec .opt-card:hover .more{background:none!important;color:#0D2A44!important}
.opt-sec .opt-card:hover{transform:translateY(-3px)}
/* Consultation CTA */
.cc-sec{padding:clamp(48px,6vw,88px) 0!important;background:#fff}
.cc-card{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:32px 56px;align-items:center;padding:clamp(36px,5vw,72px);border-radius:36px;background:linear-gradient(135deg,#0D2A44,#16456E);box-shadow:0 40px 70px -40px rgba(13,42,68,.7)}
.cc-blob{position:absolute;border-radius:50%;pointer-events:none}
.cc1{width:340px;height:340px;right:-90px;top:-130px;background:radial-gradient(circle,rgba(54,166,221,.35),transparent 70%)}
.cc2{width:300px;height:300px;left:-100px;bottom:-150px;background:radial-gradient(circle,rgba(227,160,138,.3),transparent 70%)}
.cc-copy{position:relative;z-index:1;max-width:640px}
.cc-ic{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#E3A08A;margin-bottom:20px}
.cc-card h2{color:#fff;font-size:clamp(28px,3.2vw,42px)!important;line-height:1.15!important;font-weight:700!important;margin:0 0 16px}
.cc-card .smile-line path{stroke:#E3A08A}
.cc-card p{color:rgba(255,255,255,.88);font-size:17.5px;line-height:1.7;margin:0}
.cc-card p a{color:#fff;font-weight:600;text-decoration:underline;text-decoration-color:#E3A08A;text-underline-offset:4px}
.cc-btns{position:relative;z-index:1;display:grid;gap:14px;min-width:260px}
.cc-btns .btn{justify-content:center;width:100%}
@media(max-width:899px){.cc-card{grid-template-columns:1fr;border-radius:28px}.cc-btns{min-width:0}}
/* v16: restore About card design, a bit wider */
.al-sec{background:#fff!important;padding:clamp(48px,6vw,80px) 0 0!important}
.al-card{display:grid!important;grid-template-columns:200px 1fr!important;gap:clamp(28px,4vw,56px)!important;align-items:center;padding:clamp(32px,4vw,52px) clamp(32px,5vw,64px)!important;border-radius:32px!important;background:linear-gradient(135deg,#F3F9FD,#fff)!important;border:1.5px solid #D9E9F4!important;box-shadow:0 24px 50px -34px rgba(13,42,68,.45)!important}
.al-photo{text-align:center!important;position:static!important}
.al-photo img{width:200px!important;height:200px!important;aspect-ratio:auto!important;border-radius:50%!important;border:5px solid #fff!important;box-shadow:0 0 0 2px #CFE4F4!important}
.al-photo figcaption{position:static!important;padding:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;margin-top:12px!important;font-size:14px;font-weight:600}
.al-text{max-width:none!important;font-size:clamp(17px,1.4vw,19px)!important}
.al-name{font-size:clamp(26px,3vw,38px)!important}
@media(max-width:820px){.al-card{grid-template-columns:1fr!important;justify-items:center;text-align:center;padding:28px 20px!important}}
/* hero: no empty frame, no tooth icon */
.hero-media .draw-tooth{display:none!important}
.hero-media .hm-frame{height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:none!important;box-shadow:none!important;padding:0!important}
.hero-media .hm-frame:has(.cd-hero-img){border-radius:28px;overflow:hidden}
/* About card: true full width, left aligned */
.al-sec .oa-lead,.al-sec .oa-lead.al-full{max-width:none!important;width:100%!important;margin:0!important;text-align:left!important}
.al-sec .al-card{width:100%!important;max-width:none!important;grid-template-columns:220px minmax(0,1fr)!important;text-align:left!important;justify-items:stretch}
.al-sec .al-copy{text-align:left!important;max-width:none}
.al-sec .al-name{max-width:none!important;white-space:normal}
.al-sec .al-text{text-align:left!important;max-width:none!important}
.al-sec .al-photo{justify-self:center}
@media(max-width:820px){.al-sec .al-card{grid-template-columns:1fr!important;justify-items:center}.al-sec .al-copy,.al-sec .al-text{text-align:center!important}}
/* trust strip: calmer */
.trust-card{box-shadow:0 12px 30px -24px rgba(13,42,68,.25)!important;border:1px solid #E6EFF7!important;border-radius:24px!important;padding:26px 32px!important}
.trust .stats{gap:0}
.trust .stats>li{border-color:#EDF3F8!important}
.trust .stat .tile{width:44px!important;height:44px!important;border-radius:14px!important;background:#F1F7FC!important;border:0!important;box-shadow:none!important;color:#1570B0}
.trust .stat .tile svg{width:22px;height:22px}
.trust .stat-num{font-size:clamp(24px,2.4vw,30px)!important;font-weight:700!important;color:#0D2A44}
.trust .stat-label{font-size:14px!important;color:#5A6F82!important;font-weight:500!important}
.trust .badges{border-top:1px solid #EDF3F8!important;margin-top:20px!important;padding-top:18px!important;gap:10px 28px!important;justify-content:center}
.trust .badges li{background:none!important;border:0!important;padding:0!important;font-size:14px!important;font-weight:600!important;color:#2B4156!important;box-shadow:none!important}
.trust .badges li svg{color:#36A6DD}
/* consultation: outer background off, card keeps navy */
section#book-a-cosmetic-consultation-in-arlington-heights-il.cc-sec{background:#fff!important}
/* options section spacing */
.opt-sec{padding:clamp(48px,5vw,72px) 0!important}
.opt-sec .sec-head{margin-bottom:28px!important;max-width:none}
.opt-sec .sec-intro{margin-top:6px}
.opt-sec .opt-layout{gap:0}
.doc-sec{padding-bottom:clamp(48px,5vw,72px)!important}
@media(max-width:767px){.opt-sec,.doc-sec{padding-top:56px!important;padding-bottom:56px!important}}

/* v22: animated duotone icons + color */
.opt-sec .opt-card{background:linear-gradient(170deg,#fff,#F4F9FD)!important;border:1px solid #DDEBF6!important;overflow:hidden;box-shadow:0 4px 14px rgba(13,42,68,.05)!important}
.opt-sec .opt-card:before{width:100%!important;height:4px;background:linear-gradient(90deg,#36A6DD,#E3A08A)!important;transform:scaleX(.22);transform-origin:left;transition:transform .45s}
.opt-sec .opt-card:hover:before{transform:scaleX(1)}
.opt-sec .opt-card:hover{box-shadow:0 22px 48px rgba(21,112,176,.16)!important;transform:translateY(-5px);border-color:transparent!important}
.opt-sec .hm-svc-ic{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:linear-gradient(150deg,#fff,#E2F0FA);box-shadow:inset 0 0 0 1px rgba(21,112,176,.1),0 8px 20px rgba(13,42,68,.07);margin-bottom:8px;transition:transform .45s,box-shadow .45s}
.opt-sec .hm-svc-ic .di{width:52px;height:52px}
.opt-sec .opt-card:hover .hm-svc-ic{transform:translateY(-3px) rotate(-5deg) scale(1.06);box-shadow:inset 0 0 0 1px rgba(21,112,176,.15),0 14px 28px rgba(21,112,176,.2)}
.opt-sec li:nth-child(even) .hm-svc-ic{background:linear-gradient(150deg,#fff,#FBE9E1)}
.opt-sec .opt-card .more{color:#1570B0!important}
.opt-sec .opt-card:hover .more{color:#B4533A!important}
/* planning cards: color */
.cg-card{position:relative;overflow:hidden;background:linear-gradient(170deg,#fff,#F4F9FD)!important}
.cg-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#36A6DD,#1570B0)}
.cg-card:nth-child(2):before{background:linear-gradient(90deg,#E3A08A,#F2C4B3)}
.cg-card:nth-child(3):before{background:linear-gradient(90deg,#1570B0,#E3A08A)}
.cg-card:nth-child(2) .cg-ic{background:linear-gradient(150deg,#FFF3EE,#FBE0D5);color:#B4533A;border-color:#F6D5C8}
.cg-card:nth-child(3) .cg-ic{background:linear-gradient(150deg,#EAF5FC,#FBE9E1)}
.cg-ic{color:#1570B0}
.cg-card:hover h3{color:#1570B0}
/* revert peach separator */
.cta:has(+ .wz-sec):after{background:var(--cream)!important}
.wz-sec{background:var(--cream)!important}

/* v24: CTA redesign (no icons/images) + soft orange form bg */
.cta{background:linear-gradient(135deg,#F3C2AF 0%,#E3A08A 55%,#D98C73 100%)!important;padding:clamp(56px,6vw,88px) 0 calc(clamp(56px,6vw,88px) + 36px)!important}
.cta .cta-blob{opacity:.35;background:radial-gradient(circle,#fff,transparent 70%)!important}
.cta .cta-in{display:grid!important;grid-template-columns:1fr auto;gap:28px 56px;align-items:center;text-align:left}
.cta .cta-copy{max-width:680px}
.cta .eyebrow{color:#0D2A44!important;font-weight:700;opacity:.8}
.cta h2{color:#0D2A44!important;font-size:clamp(30px,3.6vw,46px)!important;font-weight:800!important;line-height:1.1!important;margin:6px 0 14px!important}
.cta p{color:#0D2A44!important;opacity:.9;font-size:18px;line-height:1.65}
.cta .cta-btns{display:grid;gap:14px;min-width:270px}
.cta .cta-btns .btn{justify-content:center;width:100%}
.cta .btn-white{background:#fff;color:#0D2A44}
.cta .btn-navy{background:#0D2A44;color:#fff}
@media(max-width:899px){.cta .cta-in{grid-template-columns:1fr}.cta .cta-btns{min-width:0}}
.cta:has(+ .wz-sec):after{background:#FDF1EB!important}
.wz-sec{background:#FDF1EB!important}



/* v34: scroll animation + refined Q&A design */
.qa-js .qa-r{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--d,0ms),transform .7s cubic-bezier(.22,1,.36,1) var(--d,0ms)}
.qa-js .qa-r.qa-in{opacity:1;transform:none}
.qa-js .qa-pic.qa-r{opacity:1;transform:none;clip-path:inset(0 0 100% 0 round 28px);transition:clip-path 1s cubic-bezier(.22,1,.36,1)}
.qa-js .qa-pic.qa-r.qa-in{clip-path:inset(0 0 0 0 round 28px)}
.qa-js .qa-pic.qa-r img{transform:scale(1.12);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}
.qa-js .qa-pic.qa-r.qa-in img{transform:scale(1)}
.qa-js .stack-table tbody tr.qa-r{transform:translateX(-18px)}
.qa-js .stack-table tbody tr.qa-r.qa-in{transform:none}
.qa-copy h2 .smile-line path{transition:stroke-dashoffset 1.2s .3s}
.qa-sec{position:relative}
.qa-sec:before{content:"";position:absolute;left:50%;top:0;width:1px;height:48px;background:linear-gradient(#36A6DD,transparent);opacity:.5;transform:translateX(-50%)}
.qa-sec .qa-copy h2{background:linear-gradient(90deg,#0D2A44,#1570B0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.qa-sec .qa-copy h2 .smile-line{-webkit-text-fill-color:initial}
.qa-sec .qa-body li{transition:transform .3s,box-shadow .3s,border-color .3s}
.qa-sec .qa-body li:hover{transform:translateX(6px);border-color:#36A6DD;box-shadow:0 14px 28px -20px rgba(13,42,68,.4)}
.qa-pic img{transition:transform .8s}
.qa-pic:hover img{transform:scale(1.03)}
@media(prefers-reduced-motion:reduce){.qa-js .qa-r,.qa-js .qa-pic.qa-r,.qa-js .qa-pic.qa-r img{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}}


/* ===== Hero photo height = text height (desktop), all pages ===== */
@media(min-width:960px){
.hero.has-photo .hero-grid{align-items:stretch!important}
.hero.has-photo .hero-media{align-self:stretch!important;display:flex!important;margin:0!important}
.hero.has-photo .hero-media .hm-frame{height:100%!important;width:100%!important;aspect-ratio:auto!important;border-radius:28px!important;overflow:hidden!important}
.hero.has-photo .hero-media .hm-frame img{aspect-ratio:auto!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 22%}
}

/* ===== CTA: buttons beside the text (desktop) ===== */
.cta .cta-phone{display:none!important}
@media(min-width:900px){.cta .cta-in{grid-template-columns:minmax(0,1fr) auto!important;align-items:center}.cta .cta-btns{min-width:260px}}
/* ===== Planning (cost) card: photo fills its side, no curved edge ===== */
.cost-sec .cost-pic{border-radius:0!important}
.cost-sec .cost-pic img{position:absolute;inset:0;width:100%;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover}
/* ===== From homepage: service icons (.di) + map rings ===== */
.am-ring{fill:none;stroke:var(--blue);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}
@media(prefers-reduced-motion:no-preference){.am-ring{animation:am-ripple 3.6s ease-out infinite}.am-ring.r2{animation-delay:1.2s}.am-ring.r3{animation-delay:2.4s}}
.am-ring{stroke-width:1.5}
@keyframes am-ripple{0%{transform:scale(.6);opacity:.55}100%{transform:scale(4.2);opacity:0}}
@keyframes am-ripple{0%{transform:scale(.7);opacity:.45}100%{transform:scale(3.4);opacity:0}}

/* ===== Service pages: calmer section rhythm (no runs of plain white) ===== */
body:not(:has(.hero-video)) main .hm-aff,body:not(:has(.hero-video)) main .hm-ins{background:#F4F8FB!important}
body:not(:has(.hero-video)) main .hm-aff .aff-track,body:not(:has(.hero-video)) main .hm-aff .hm-aff-logos{background:transparent}

/* ===== Meet your dentist: photo fills the arched frame ===== */
.doc-sec .dm-frame img{width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center 18%!important;display:block}

/* ===== Booking form: softer, premium look (all pages) ===== */
section.wz-sec .wz{position:relative;overflow:hidden;background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFE 100%)!important;border-radius:30px!important;box-shadow:0 40px 90px -30px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.6) inset!important}
section.wz-sec .wz:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,#36A6DD,#8CC9EC 45%,#F3C2AF 75%,#E3A08A)}
section.wz-sec .wz:after{content:"";position:absolute;right:-120px;top:-120px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(243,194,175,.28),transparent 70%);pointer-events:none}
section.wz-sec .wz>*:not(.hp){position:relative;z-index:1}
section.wz-sec .wz-progress{background:#F1F7FC;border-radius:999px;padding:6px;margin-bottom:22px!important;gap:6px}
section.wz-sec .wz-progress li{border-radius:999px;padding:7px 10px;transition:background .3s}
section.wz-sec .wz-progress li.is-cur{background:#fff;box-shadow:0 6px 16px -10px rgba(13,42,68,.45)}
section.wz-sec .wz-dot{border-width:0!important;background:#E3EEF7!important;color:#5A6F82!important;box-shadow:none!important}
section.wz-sec .is-cur .wz-dot{background:linear-gradient(145deg,#36A6DD,#1570B0)!important;color:#fff!important}
section.wz-sec .is-done .wz-dot{background:linear-gradient(145deg,#2DBA7E,#1E9461)!important;color:#fff!important}
section.wz-sec .wz-legend{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,sans-serif!important;font-weight:700!important;font-size:20px!important;color:#0D2A44}
section.wz-sec .fl{font-size:14px;font-weight:600;color:#33485C;gap:6px}
section.wz-sec .fl input,section.wz-sec .fl select,section.wz-sec .fl textarea,section.wz-sec .drop-in{background:#F4F8FB!important;border:1.5px solid transparent!important;border-radius:14px!important;transition:background .2s,border-color .2s,box-shadow .2s}
section.wz-sec .fl input:hover,section.wz-sec .fl select:hover,section.wz-sec .fl textarea:hover{background:#EEF4FA!important}
section.wz-sec .fl input:focus,section.wz-sec .fl select:focus,section.wz-sec .fl textarea:focus{background:#fff!important;border-color:#36A6DD!important;box-shadow:0 0 0 4px rgba(54,166,221,.14)!important}
section.wz-sec .seg span,section.wz-sec .chips span{background:#F4F8FB!important;border:1.5px solid transparent!important;border-radius:14px!important;font-weight:600!important;transition:all .2s}
section.wz-sec .seg span:hover,section.wz-sec .chips span:hover{background:#EEF4FA!important}
section.wz-sec .seg input:checked+span,section.wz-sec .chips input:checked+span{background:linear-gradient(135deg,#EAF5FC,#FDF0EA)!important;border-color:#36A6DD!important;box-shadow:0 8px 18px -12px rgba(21,112,176,.55)!important;color:#0D2A44}
section.wz-sec .to-in{background:#F4F8FB!important;border:1.5px solid transparent!important}
section.wz-sec .to-ic{background:#fff!important;box-shadow:0 6px 14px -10px rgba(13,42,68,.4)}
section.wz-sec .tile-opt input:checked+.to-in{background:linear-gradient(160deg,#EAF5FC,#FDF0EA)!important;border-color:#36A6DD!important;box-shadow:0 10px 22px -14px rgba(21,112,176,.6)!important}
section.wz-sec .wz-nav{border-top:1px solid #E9F0F6!important}
section.wz-sec .wz-nav .btn-coral{background:linear-gradient(135deg,#F0B8A3,#E3A08A 55%,#D98C73)!important;border:0!important;color:#0D2A44!important;box-shadow:0 14px 26px -14px rgba(217,140,115,.9)!important;padding-left:26px;padding-right:26px}
section.wz-sec .wz-nav .btn-coral:hover{transform:translateY(-2px)}
section.wz-sec .wz-nav .btn-ghost{background:#F4F8FB!important;border:0!important;color:#0D2A44!important}
section.wz-sec .wz-perks li{gap:12px}
section.wz-sec .wz-perks .icon{flex:none;width:30px;height:30px;padding:6px;border-radius:50%;background:rgba(255,255,255,.1);color:#F3C2AF!important}
section.wz-sec .wz-call{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.18)!important;backdrop-filter:blur(6px)}
section.wz-sec .wz-call-ic{background:linear-gradient(145deg,#F3C2AF,#E3A08A)!important;color:#0D2A44!important}
/* booking form: compact height */
section.wz-sec .wz .hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden;margin:0}
section.wz-sec{padding:clamp(40px,4vw,56px) 0!important}
section.wz-sec .wz{padding:24px 30px 22px!important}
section.wz-sec .wz-progress{margin-bottom:14px!important}
section.wz-sec .wz-step{gap:12px!important}
section.wz-sec .wz-legend{font-size:18px!important}
section.wz-sec .fl input,section.wz-sec .fl select{min-height:42px!important}
section.wz-sec .wz-nav{margin-top:12px!important;padding-top:12px!important}
section.wz-sec .wz-side h2{font-size:clamp(28px,2.6vw,38px)!important}
section.wz-sec .wz-perks{margin:12px 0!important}

/* ===== Balanced card grids: no orphan rows (e.g. 4 = one row, never 3+1) ===== */
@media(min-width:960px){section.opt-sec .opt-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}section.opt-sec .opt-grid>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
section.opt-sec .opt-grid:has(>:nth-child(2):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
section.opt-sec .opt-grid:has(>:nth-child(3):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section.opt-sec .opt-grid:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.opt-sec .opt-grid:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section.opt-sec .opt-grid:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section.opt-sec .opt-grid:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.opt-sec .opt-grid:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.opt-sec .opt-grid:has(>:nth-child(9):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section.opt-sec .opt-grid:has(>:nth-child(10):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section.opt-sec .opt-grid:has(>:nth-child(11):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.opt-sec .opt-grid:has(>:nth-child(12):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
}
@media(min-width:600px) and (max-width:959px){section.opt-sec .opt-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}section.opt-sec .opt-grid>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:960px){section .rel-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}section .rel-grid>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
section .rel-grid:has(>:nth-child(2):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
section .rel-grid:has(>:nth-child(3):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section .rel-grid:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .rel-grid:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section .rel-grid:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section .rel-grid:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .rel-grid:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .rel-grid:has(>:nth-child(9):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
}
@media(min-width:600px) and (max-width:959px){section .rel-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}section .rel-grid>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:960px){section .svc-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}section .svc-grid>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
section .svc-grid:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section .svc-grid:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section .svc-grid:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(9):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section .svc-grid:has(>:nth-child(10):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section .svc-grid:has(>:nth-child(11):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(12):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(13):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(14):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(15):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section .svc-grid:has(>:nth-child(16):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(17):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section .svc-grid:has(>:nth-child(18):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section .svc-grid:has(>:nth-child(19):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section .svc-grid:has(>:nth-child(20):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
}
@media(min-width:600px) and (max-width:959px){section .svc-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}section .svc-grid>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:960px){section.hm-choose .hm-checklist{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}section.hm-choose .hm-checklist>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
section.hm-choose .hm-checklist:has(>:nth-child(3):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section.hm-choose .hm-checklist:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.hm-choose .hm-checklist:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
section.hm-choose .hm-checklist:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
section.hm-choose .hm-checklist:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
section.hm-choose .hm-checklist:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
}
@media(min-width:600px) and (max-width:959px){section.hm-choose .hm-checklist{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}section.hm-choose .hm-checklist>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:960px){.rx-listblock .rx-checks{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}.rx-listblock .rx-checks>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
.rx-listblock .rx-checks:has(>:nth-child(2):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
.rx-listblock .rx-checks:has(>:nth-child(3):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-listblock .rx-checks:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
.rx-listblock .rx-checks:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-listblock .rx-checks:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-listblock .rx-checks:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
.rx-listblock .rx-checks:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
.rx-listblock .rx-checks:has(>:nth-child(9):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-listblock .rx-checks:has(>:nth-child(10):last-child)>*{flex-basis:calc((100% - 4*18px)/5)!important}
}
@media(min-width:600px) and (max-width:959px){.rx-listblock .rx-checks{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}.rx-listblock .rx-checks>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:960px){.rx-why-list{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;grid-template-columns:none!important}.rx-why-list>*{flex:0 0 calc((100% - 2*18px)/3)!important;max-width:none!important;grid-column:auto!important;margin:0!important}
.rx-why-list:has(>:nth-child(2):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
.rx-why-list:has(>:nth-child(3):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-why-list:has(>:nth-child(4):last-child)>*{flex-basis:calc((100% - 1*18px)/2)!important}
.rx-why-list:has(>:nth-child(5):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-why-list:has(>:nth-child(6):last-child)>*{flex-basis:calc((100% - 2*18px)/3)!important}
.rx-why-list:has(>:nth-child(7):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
.rx-why-list:has(>:nth-child(8):last-child)>*{flex-basis:calc((100% - 3*18px)/4)!important}
}
@media(min-width:600px) and (max-width:959px){.rx-why-list{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}.rx-why-list>*{flex:0 0 calc((100% - 14px)/2)!important;grid-column:auto!important;margin:0!important}}
@media(min-width:600px) and (max-width:959px){.ba-grid:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)!important}}

/* ===== MOBILE pass 1: spacing rhythm, media/text breathing room, why-cards, step icons ===== */
@media(max-width:767px){
/* one consistent vertical rhythm between sections */
main>section:not(.hero):not(.ctab):not(.cta):not(.pg-hero):not(.sx-hero):not(.sp-hero):not(.trust){padding-top:56px!important;padding-bottom:56px!important}
main>section.hm-aff,main>section.hm-ins{padding-top:40px!important;padding-bottom:40px!important}
/* space between two parts inside one section (photo block → text block) */
.hm-doc .hm-doc-grid,.doc-sec .doc-grid,.rx-media,.rx-why,.rx-consult,.rx-bond{gap:56px!important}
.hm-doc .hm-doc-media{margin-bottom:8px}
/* "Why patients choose" photo card: whole photo, readable caption below it */
.hm-why .bt-a.bt-photo{display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;padding:0!important;overflow:hidden}
.hm-why .bt-a.bt-photo img{position:static!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;inset:auto!important}
.hm-why .bt-a.bt-photo figcaption{position:static!important;inset:auto!important;background:linear-gradient(160deg,#134A75,#0D2A44)!important;color:#fff!important;padding:20px 20px 22px!important;margin:0!important}
.hm-why .bt-a.bt-photo figcaption .bt-t{color:rgba(255,255,255,.88)!important}
.hm-why .bt-a.bt-photo:before,.hm-why .bt-a.bt-photo:after{display:none!important}
/* step illustrations: smaller */
.hm-fv .fv-art{width:150px!important;max-width:150px!important;height:auto!important}
.hm-fv .fv-art svg{width:100%!important;height:auto!important}
/* icon tiles a touch smaller on phones */
.hm-svc-ic,.opt-card .hm-svc-ic,.rx-consult-list .hm-svc-ic{width:56px!important;height:56px!important}
.hm-svc-ic .di{width:40px!important;height:40px!important}
}
@media(max-width:767px){.hm-badge-n{font-size:14px!important;letter-spacing:-.01em;padding-left:4px!important;padding-right:4px!important}}

/* ===== Card grids fill the row: orphan items stretch (5 = 3 x 33% + 2 x 50%) ===== */
@media(min-width:600px){section.opt-sec .opt-grid>*,section .rel-grid>*,section .svc-grid>*,section.hm-choose .hm-checklist>*,.rx-listblock .rx-checks>*,.rx-why-list>*{flex-grow:1!important}}

/* ===== MOBILE: "Planning" cost card — photo on top, content below (no photo behind text) ===== */
@media(max-width:959px){
html body .cost-sec .cost-card.with-pic{display:flex!important;flex-direction:column!important;gap:0!important}
html body .cost-sec .cost-pic{order:-1!important;position:relative!important;min-height:0!important;height:auto!important;width:100%!important;border-radius:0!important}
html body .cost-sec .cost-pic img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;max-height:380px!important;object-fit:cover!important;object-position:center 25%!important;display:block}
html body .cost-sec .cost-body{position:relative;z-index:1;background:transparent}
}
/* ===== MOBILE: very tall photos get a phone-friendly frame (whole photo shown, never cut) ===== */
@media(max-width:767px){
html body .rx-media>.rx-img img,html body .rx-bond>.rx-img img{max-height:380px!important;object-fit:contain!important;background:linear-gradient(160deg,#F4F9FD,#EAF3FA)}
}

/* reviews page: all reviews in a grid, no carousel */
.rev-grid .car-track{display:grid!important;grid-auto-flow:row!important;grid-auto-columns:unset!important;grid-template-columns:repeat(3,1fr);gap:20px;overflow:visible!important;scroll-snap-type:none!important;padding:6px 0 0!important}
@media(max-width:1000px){.rev-grid .car-track{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.rev-grid .car-track{grid-template-columns:1fr}}
.rev-grid .car-track>li{scroll-snap-align:none}
.rev-grid .car-btns,.rev-grid .car-nav,.rev-grid .car-dots,.rev-grid [data-prev],.rev-grid [data-next]{display:none!important}
.rev-grid .car-ctrl,.rev-grid .car-btn{display:none!important}
/* reviews grid: full width, full text */
html body section.hm-rev.rev-grid .car,html body section.hm-rev.rev-grid .car-track{width:100%!important;max-width:none!important}
html body section.hm-rev.rev-grid .car-track{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:22px!important;overflow:visible!important;padding:6px 0 0!important}
html body section.hm-rev.rev-grid .car-track>li{width:auto!important;min-width:0!important;max-width:none!important;flex:none!important}
html body section.hm-rev.rev-grid .rev-card{width:100%!important;height:100%}
html body section.hm-rev.rev-grid .rev-text p{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important}
html body section.hm-rev.rev-grid .rev-who strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
@media(max-width:1000px){html body section.hm-rev.rev-grid .car-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){html body section.hm-rev.rev-grid .car-track{grid-template-columns:1fr!important}}
html body section.hm-rev.rev-grid>.wrap{width:100%!important;max-width:calc(var(--max,1200px) + 2*var(--gutter,24px))!important;margin-inline:auto!important}
html body section.hm-rev.rev-grid .rev-card.is-more{display:none!important}
.rev-more-wrap{display:flex;justify-content:center;margin-top:32px}
/* reviews layout v2 */
html body section.hm-rev.rev-grid>.wrap{max-width:1240px!important;margin:0 auto!important;padding-left:clamp(20px,4vw,40px)!important;padding-right:clamp(20px,4vw,40px)!important;box-sizing:border-box}
html body section.hm-rev.rev-grid .hm-rev-head{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:32px!important;margin-bottom:40px!important}
html body section.hm-rev.rev-grid .hm-rev-head .sec-head{flex:1 1 auto;max-width:640px;text-align:left}
html body section.hm-rev.rev-grid .hm-rev-aside{flex:0 0 auto}
html body section.hm-rev.rev-grid .hm-rev-score{padding:22px 26px!important}
html body section.hm-rev.rev-grid .car-track{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1100px){html body section.hm-rev.rev-grid .car-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:820px){html body section.hm-rev.rev-grid .hm-rev-head{flex-wrap:wrap!important}}
@media(max-width:640px){html body section.hm-rev.rev-grid .car-track{grid-template-columns:1fr!important}}
html body section.hm-rev.rev-grid{display:block!important}
html body section.hm-rev.rev-grid>.wrap{width:100%!important;justify-self:stretch!important}
/* service.css */
/* Service & inner pages design system (from Cosmetic Dentistry page) */

.hero-media .hm-frame:has(.cd-hero-wide){aspect-ratio:840/400!important;height:auto!important;border-radius:28px!important;overflow:hidden;box-shadow:0 30px 70px #0d2a4429}
.hero-media .hm-frame img.cd-hero-wide{width:100%;height:100%;aspect-ratio:840/400!important;max-height:none;object-fit:cover;object-position:center}
.hero-media:has(.cd-hero-wide){align-self:center}
@media(min-width:960px){.hero-grid:has(.cd-hero-wide){align-items:stretch}.hero-media:has(.cd-hero-wide){align-self:stretch;display:flex}.hero-media .hm-frame:has(.cd-hero-wide){aspect-ratio:auto!important;height:100%!important;width:100%}.hero-media .hm-frame img.cd-hero-wide{aspect-ratio:auto!important;height:100%;object-position:30% center}}
.trust .stats{gap:14px!important}
.trust .stats li+li .stat{border-left:0!important;border-radius:20px!important}
.trust .stat{gap:14px;padding:18px 20px;border-radius:20px;background:#fff;border:1px solid #EEF2F6;box-shadow:0 10px 24px -20px rgba(13,42,68,.35);transition:transform .25s ease,box-shadow .25s ease}
.trust .stat:hover{transform:translateY(-3px);box-shadow:0 16px 30px -18px rgba(13,42,68,.35);background:#fff}
.trust .stat .tile{width:52px!important;height:52px!important;border-radius:16px!important;color:#C9694A!important;background:linear-gradient(150deg,#FFFFFF 0%,#FFFFFF 40%,#FBE3D9 100%)!important;box-shadow:inset 0 0 0 1px rgba(227,160,138,.3),0 6px 14px -8px rgba(13,42,68,.25)!important}
.trust .stat .tile svg{width:24px;height:24px}
.trust .stat-num{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,sans-serif!important;font-weight:700!important;font-size:clamp(26px,2.4vw,32px)!important;letter-spacing:-.02em;line-height:1.05;color:#0D2A44!important}
.trust .stat-label{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter",system-ui,sans-serif!important;font-size:14px!important;font-weight:500!important;color:#5A6F82!important;margin-top:4px}

/* author card */
.rich-sec .author-card{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;margin:0 0 40px;padding:24px;background:linear-gradient(120deg,#FFFFFF 0%,#FDF3EE 100%);border:1px solid #F3D9CE;border-radius:24px;box-shadow:0 18px 40px -28px rgba(13,42,68,.4)}
.rich-sec .author-card .al-photo{width:150px;height:150px;border-radius:18px;object-fit:cover;object-position:center 15%;box-shadow:0 0 0 4px #fff,0 0 0 6px #F3C2AF}
.rich-sec .author-card .author-line{margin:0 0 10px!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter",system-ui,sans-serif;font-size:14px!important;font-weight:600!important;color:#C9694A!important;letter-spacing:.02em}
.rich-sec .author-card .author-line a{color:#0D2A44!important;font-weight:700!important;text-decoration:none!important;background:linear-gradient(#E3A08A,#E3A08A) 0 100%/100% 2px no-repeat;padding-bottom:1px}
.rich-sec .author-card .author-line a:hover{color:#C9694A!important}
.rich-sec .author-card .ac-intro{margin:0!important;font-size:clamp(17px,1.3vw,19px)!important;line-height:1.7!important;color:#0D2A44!important;font-weight:500}
@media(max-width:767px){.rich-sec .author-card{grid-template-columns:1fr;gap:18px;padding:20px;text-align:left}.rich-sec .author-card .al-photo{width:96px;height:96px}}


/* ===== rich content v2: open layout, no box borders ===== */
.rx-sec{padding-top:28px!important}
.trust{padding-bottom:0!important}
.rx-sec .wrap>*+*{margin-top:clamp(48px,6vw,80px)}
.rx-sec .author-card{border:0!important;box-shadow:none!important;margin:0!important}
.rx{position:relative;border:0!important;box-shadow:none!important;background:none;padding:0;border-radius:28px}
.rx h2{margin:0 0 16px!important;color:#0D2A44}
.rx p{color:#33485C;font-size:17px;line-height:1.7}
.rx p:last-child{margin-bottom:0}
.rx a{color:#1570B0;font-weight:600}
.rx .eyebrow{margin:0 0 10px}
.rx-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center}
.rx-media.rx-flip>.rx-img{order:2}
.rx-img{margin:0;border-radius:24px;overflow:hidden}
.rx-img img{width:100%;height:auto;display:block}
.rx-media:not(.rx-flip){grid-template-columns:minmax(0,.75fr) minmax(0,1.1fr)}
.rx-media.rx-flip.rx-peach{grid-template-columns:minmax(0,1.3fr) minmax(0,.55fr)}
.rx-peach,.rx-cards,.rx-cta{padding:clamp(28px,4vw,52px)}
.rx-peach{background:linear-gradient(120deg,#FFFFFF 0%,#FDF0EA 100%)}
.rx-table .table-wrap{margin:22px 0;border-radius:18px;overflow:hidden}
.rx-table table{width:100%;border-collapse:collapse;font-size:16px}
.rx-table th{background:#0D2A44;color:#fff;text-align:left;padding:14px 18px;font-weight:600}
.rx-table td{padding:14px 18px;border-top:1px solid #EDF3F8;color:#33485C}
.rx-table tbody tr:nth-child(even) td{background:#F7FBFE}
.rx-table td:first-child{font-weight:700;color:#0D2A44}
.rx-cards{background:#F7FBFE}
.rx ul,.rx ol{list-style:none;padding:0;margin:26px 0}
.rx-cards ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.rx-cards li{background:#fff;border-radius:18px;padding:20px;font-size:16px;line-height:1.6;color:#33485C;transition:transform .25s}
.rx-cards li:hover{transform:translateY(-3px)}
.rx-cards li strong{display:block;color:#0D2A44;font-size:17px;margin:10px 0 4px}
.rx-cards>p{margin-top:0}
.rx-ic{width:30px;height:30px;padding:6px;border-radius:10px;color:#C9694A;background:linear-gradient(150deg,#FFFFFF,#F6CDBD);flex:none;display:block}
.rx-timeline ol{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;counter-reset:rx;position:relative}
.rx-timeline ol:before{content:"";position:absolute;left:20px;right:20px;top:20px;height:2px;background:linear-gradient(90deg,#36A6DD,#E3A08A)}
.rx-timeline li{position:relative;padding-top:56px;font-size:16px;line-height:1.6;color:#33485C}
.rx-timeline li:before{counter-increment:rx;content:counter(rx);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:#fff;border:2px solid #E3A08A;color:#0D2A44;font-weight:700;display:grid;place-items:center;font-size:16px}
.rx-timeline li strong{display:block;color:#0D2A44;font-size:17px;margin-bottom:4px}
.rx-navy{background:radial-gradient(120% 140% at 100% 0%,#17466E 0%,#0D2A44 60%);color:#fff;padding:clamp(28px,4vw,52px)}
.rx-navy h2{color:#fff!important}
.rx-navy p{color:rgba(255,255,255,.85)}
.rx-navy a{color:#F3C2AF}
.rx-navy ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.rx-navy li{display:flex;flex-direction:column;gap:10px;background:rgba(255,255,255,.06);border-radius:16px;padding:18px;font-size:16px;line-height:1.6;color:rgba(255,255,255,.85)}
.rx-navy li strong{display:block;color:#fff;font-size:17px}
.rx-navy .rx-ic{color:#E3A08A;background:rgba(227,160,138,.15)}
.rx-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:start}
.rx-mini .rx-img{margin-bottom:22px}
.rx-cta{display:grid;grid-template-columns:1fr auto;gap:24px 48px;align-items:center;background:linear-gradient(120deg,#FDF0EA 0%,#F6CDBD 100%)}
.rx-cta h2{background:none!important;-webkit-text-fill-color:#0D2A44!important;color:#0D2A44!important;padding:0!important;box-shadow:none!important;border-radius:0!important}
.rx-cta p{color:#0D2A44}
.rx-cta a:not(.btn){color:#0D2A44;text-decoration:underline;text-decoration-color:#C9694A;text-underline-offset:3px}
.rx-cta-btns{display:flex;flex-direction:column;gap:12px;min-width:240px}
.rx-cta-btns .btn{justify-content:center}
.rx-cta .btn-coral{background:#0D2A44!important;color:#fff!important;border-color:#0D2A44!important}
.rx-btn-ghost{background:#fff;color:#0D2A44}
@media(max-width:959px){.rx-media,.rx-pair,.rx-cta{grid-template-columns:1fr}.rx-media.rx-flip>.rx-img{order:0}.rx-timeline ol{grid-template-columns:1fr;gap:20px}.rx-timeline ol:before{left:20px;right:auto;top:20px;bottom:20px;width:2px;height:auto;background:linear-gradient(180deg,#36A6DD,#E3A08A)}.rx-timeline li{padding:6px 0 0 60px;min-height:42px}.rx-cta-btns{min-width:0}}
@media(max-width:767px){.rx-table thead{display:none}.rx-table tr{display:block;border-top:1px solid #EDF3F8;padding:10px 0}.rx-table td{display:flex;justify-content:space-between;gap:12px;border:0;padding:6px 16px}.rx-table td:before{content:attr(data-label);font-weight:600;color:#5A6F82}}

/* ===== v3: full-width bands like the homepage ===== */
.rx-band{position:relative;padding:clamp(56px,5vw,72px) 0}
.rx-band.rich-sec{padding-top:28px!important}
.rx-band .wrap>*+*{margin-top:clamp(44px,5vw,64px)}
.rx-bg-white{background:#fff}
.rx-bg-care{background:linear-gradient(#fff,#F4F9FD)}
.rx-bg-sig{background:radial-gradient(720px 420px at 100% 0%,rgba(246,200,182,.45),transparent 65%),radial-gradient(640px 400px at 0% 100%,rgba(54,166,221,.13),transparent 70%),linear-gradient(170deg,#F6FAFD,#EEF5FB)}
.rx-bg-navy{background:radial-gradient(700px 380px at 85% 0%,rgba(54,166,221,.35),transparent 70%),radial-gradient(500px 300px at 0% 100%,rgba(227,160,138,.22),transparent 70%),linear-gradient(#0B2238,#0D2A44);color:#fff}
.rx-bg-peach{background:linear-gradient(170deg,#FCF5F1,#F7EAE3)}
/* panels now come from the band, not the block */
.rx-band .rx-cards,.rx-band .rx-peach,.rx-band .rx-navy{background:none!important;padding:0!important;border-radius:0}
.rx-bg-sig .rx-cards li{box-shadow:0 10px 26px -20px rgba(13,42,68,.35)}
.rx-bg-navy .rx-navy li{background:rgba(255,255,255,.07)}
.rx-bg-peach .rx-mini{background:#fff;border-radius:24px;padding:clamp(26px,3vw,40px)}
.rx-bg-white .rx-cta{background:radial-gradient(600px 360px at 100% 0%,rgba(54,166,221,.35),transparent 70%),radial-gradient(500px 300px at 0% 100%,rgba(227,160,138,.25),transparent 70%),linear-gradient(135deg,#0B2238,#0D2A44 60%,#134A75)!important;border-radius:28px}
.rx-bg-white .rx-cta h2{-webkit-text-fill-color:#fff!important;color:#fff!important}
.rx-bg-white .rx-cta p{color:rgba(255,255,255,.85)}
.rx-bg-white .rx-cta a:not(.btn){color:#F3C2AF;text-decoration-color:#E3A08A}
.rx-bg-white .rx-cta .btn-coral{background:#E3A08A!important;color:#0D2A44!important;border-color:#E3A08A!important}
.rx-bg-white .rx-cta .rx-btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.rx-bg-care .rx-table .table-wrap,.rx-bg-care .rx-timeline li{background:transparent}
.rx-bg-care .rx-table .table-wrap{background:#fff;box-shadow:0 18px 40px -30px rgba(13,42,68,.35)}
.rx-bg-care .rx-timeline li:before{background:#fff}

/* v4: equal-height media, table cards, plan checklist, whiter badges */
@media(min-width:960px){
.rx-media{align-items:stretch!important}
.rx-media>.rx-img{position:relative;height:auto;min-height:0}
.rx-media>.rx-img img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:center 25%}
.rx-media>.rx-copy{align-self:center}
}
.rx-bg-care .rx-table .table-wrap{background:none!important;box-shadow:none!important;border-radius:0;overflow:visible}
.rx-table table,.rx-table tbody{display:block}
.rx-table thead{display:none}
.rx-table tbody{display:grid!important;grid-template-columns:repeat(3,1fr);gap:18px}
.rx-table tr{display:flex!important;flex-direction:column;gap:12px;background:#fff;border-radius:22px;padding:24px;box-shadow:0 14px 34px -26px rgba(13,42,68,.45);transition:transform .25s}
.rx-table tr:hover{transform:translateY(-4px)}
.rx-table td{display:grid!important;grid-template-columns:1fr;gap:2px;padding:0!important;border:0!important;background:none!important;font-size:16px;line-height:1.5;color:#0D2A44}
.rx-table td:before{content:attr(data-label);font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7A8C9C}
.rx-table td:first-child{display:flex!important;align-items:center;gap:12px;font-size:20px;font-weight:700;padding-bottom:12px!important;border-bottom:1px solid #F0E3DC!important;margin-bottom:2px}
.rx-table td:first-child:before{content:"";width:38px;height:38px;flex:none;border-radius:12px;background:linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%) ,#fff;box-shadow:inset 0 0 0 1px rgba(227,160,138,.35);-webkit-mask:none;letter-spacing:0}
.rx-table td:first-child:after{content:"";position:absolute}
.rx-table tr{position:relative}
.rx-table td:first-child{position:relative}
.rx-table td:first-child{--tooth:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23C9694A' d='M20 10c-7 0-12 5.4-12 13 0 5.6 2.2 9.4 4 13.6 1.9 4.6 2.4 9.4 3.5 15 .8 4.6 2.2 8.8 5.6 8.8 4 0 4.6-5 5.4-9.8.8-4 1.8-8.6 5.5-8.6s4.7 4.6 5.5 8.6c.8 4.8 1.4 9.8 5.4 9.8 3.4 0 4.8-4.2 5.6-8.8 1.1-5.6 1.6-10.4 3.5-15 1.8-4.2 4-8 4-13.6 0-7.6-5-13-12-13-4.8 0-7.4 2.4-12 2.4S24.8 10 20 10z'/%3E%3C/svg%3E")}
.rx-table td:first-child:before{background:var(--tooth) center/20px no-repeat,linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%)}
@media(max-width:959px){.rx-table tbody{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.rx-table tbody{grid-template-columns:1fr}.rx-table tr{display:flex!important;padding:20px}}
@media(min-width:960px){.rx-media.rx-plan{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.rx-plan>.rx-img img{object-position:66% center!important}}
.rx-plan .rx-checks{list-style:none;padding:0;margin:20px 0;display:grid;gap:10px}
.rx-plan .rx-checks li{display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start;background:#fff;border-radius:16px;padding:14px 16px;font-size:16px;line-height:1.55;color:#33485C;box-shadow:0 10px 26px -22px rgba(13,42,68,.4)}
.rx-plan .rx-checks li strong{color:#0D2A44}
.rx-plan .rx-copy>p:last-child{font-weight:600;color:#0D2A44}
.trust .badges li{background:#fff!important;border:1px solid #EEF2F6;box-shadow:0 8px 20px -18px rgba(13,42,68,.4)}
.trust .badges .icon{color:#C9694A!important}

/* v5: compare table, bonding, makeover */
.rx-table tbody{display:table-row-group!important}
.rx-table table{display:table!important;width:100%;border-collapse:separate!important;border-spacing:0 12px}
.rx-table thead{display:table-header-group!important}
.rx-table th{background:none!important;color:#7A8C9C!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:.07em;text-transform:uppercase;padding:0 22px 2px!important;text-align:left}
.rx-table tr{display:table-row!important;padding:0!important;box-shadow:none!important;background:none!important;border-radius:0}
.rx-table tbody tr td{display:table-cell!important;background:#fff!important;padding:20px 22px!important;font-size:16px;line-height:1.5;color:#33485C;vertical-align:middle;border:0!important;margin:0!important;box-shadow:0 12px 28px -24px rgba(13,42,68,.5)}
.rx-table tbody tr td:before{content:none!important;display:none}
.rx-table tbody tr td:first-child{border-radius:18px 0 0 18px;font-size:18px!important;font-weight:700;color:#0D2A44;padding-left:72px!important;position:relative;white-space:nowrap;border-bottom:0!important}
.rx-table tbody tr td:first-child:after{content:"";position:absolute;left:22px;top:50%;width:36px;height:36px;margin-top:-18px;border-radius:11px;background:var(--tooth) center/18px no-repeat,linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%);box-shadow:inset 0 0 0 1px rgba(227,160,138,.35)}
.rx-table tbody tr td:last-child{border-radius:0 18px 18px 0;font-weight:600;color:#0D2A44}
.rx-table tbody tr:hover td{background:#FFF8F5!important}
.rx-table tbody tr td:nth-child(3){color:#1570B0;font-weight:600}
@media(max-width:767px){.rx-table table,.rx-table tbody{display:block!important}.rx-table thead{display:none!important}.rx-table tbody{display:grid!important;gap:14px}.rx-table tr{display:flex!important;flex-direction:column;gap:10px;background:#fff!important;border-radius:20px;padding:20px!important}.rx-table tbody tr td{display:grid!important;padding:0!important;box-shadow:none;border-radius:0!important;white-space:normal}.rx-table tbody tr td:before{content:attr(data-label)!important;display:block!important;font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7A8C9C}.rx-table tbody tr td:first-child{padding-left:50px!important;min-height:36px;display:flex!important;align-items:center}.rx-table tbody tr td:first-child:before{content:none!important;display:none!important}.rx-table tbody tr td:first-child:after{left:0}}
/* bonding */
.rx-bond{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:stretch}
.rx-bond .rx-img{position:relative;border-radius:28px;min-height:0}
.rx-bond .rx-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.rx-bond .rx-copy{align-self:center;padding:8px 0}
.rx-bond .rx-lead{font-size:clamp(18px,1.4vw,20px)!important;line-height:1.7;color:#0D2A44!important;font-weight:500;margin:0 0 22px}
.rx-note{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;background:linear-gradient(120deg,#FFFFFF,#FDF0EA);border-radius:20px;padding:20px 22px;box-shadow:0 14px 30px -26px rgba(13,42,68,.5)}
.rx-note p{margin:0!important;font-size:16px!important}
.rx-note-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:#C9694A;background:linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%);box-shadow:inset 0 0 0 1px rgba(227,160,138,.35)}
.rx-note-ic svg{width:22px;height:22px}
@media(max-width:959px){.rx-bond{grid-template-columns:1fr}.rx-bond .rx-img{aspect-ratio:4/3}}

/* homepage checklist band (copied from home) */
.hm-doc,.hm-svc,.hm-care,.hm-why,.hm-rev,.hm-vt,.hm-ins,.hm-fv,.hm-team,.hm-aff,.hm-pod,.hm-choose{position:relative;padding:clamp(60px,7vw,104px) 0;overflow-x:clip}
.hm-choose{background:#fff}
.hm-choose-grid{display:grid;gap:32px;align-items:start}
.hm-checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:none}
.hm-checklist li{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:18px 20px;border-radius:20px;background:var(--cream);border:1px solid #F6E6DB}
.ck-n{font:700 22px/1 var(--font-heading);color:var(--coral-600)}
.ck-body{font-size:16px;line-height:1.5}
.ck-body strong{color:var(--navy)}
.ck-tick circle{fill:#e6f6ee}
.ck-tick path{fill:none;stroke:#22a06b;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1}
.hm-doc,.hm-svc,.hm-care,.hm-why,.hm-rev,.hm-ins,.hm-fv,.hm-team,.hm-aff,.hm-choose,.sig{isolation:isolate}
.hm-checklist li{background:linear-gradient(170deg,#fff,#f4f8fb);border-color:#e3eef7;border-radius:22px}
.ck-n{font-family:var(--font-heading);font-weight:400;font-size:28px;color:var(--blue)}
/* ===== Checklist: steps on warm band ===== */
section.hm-choose{background:linear-gradient(170deg,#FCF5F1,#F7EAE3);padding:clamp(56px,6vw,88px) 0}
section.hm-choose .hm-choose-grid{grid-template-columns:1fr;gap:34px}
section.hm-choose .hm-choose-copy{position:static;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:56px;align-items:end}
section.hm-choose .hm-choose-copy h2{grid-column:1;grid-row:2/4;margin:0;align-self:start}
section.hm-choose .hm-choose-copy p.small{margin:0}
section.hm-choose .hm-checklist{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;counter-reset:none}
section.hm-choose .hm-checklist li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:22px 20px 24px;background:#fff;border:1px solid #F1DFD5;border-radius:22px;box-shadow:0 8px 22px rgba(120,60,30,.06);transition:transform .25s var(--ease),box-shadow .25s}
section.hm-choose .hm-checklist li:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(120,60,30,.12)}
section.hm-choose .ck-n{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(150deg,#FDE9E1,#F6CDBE);color:#B4533A;font:700 17px/1 var(--font-heading)}
section.hm-choose .ck-body{font-size:15px;line-height:1.55}
section.hm-choose .ck-body strong{display:block;font-size:17px;margin-bottom:4px}
section.hm-choose .hm-checklist li>svg{position:absolute;top:22px;right:18px}
section.hm-choose .hm-choose-copy{align-items:start}
section.hm-choose .hm-choose-copy p.small{grid-row:3}
section.hm-choose .hm-checklist li{animation:ck-in .7s cubic-bezier(.22,1,.36,1) both}
section.hm-choose .hm-checklist li{animation-timeline:view();animation-range:entry 0% entry 55%}
section.hm-choose .ck-n{animation:ck-n 4s ease-in-out infinite;animation-delay:calc(var(--i,0)*.5s)}
section.hm-choose .hm-checklist li .ck-tick path{animation:ck-draw 4s ease-in-out infinite!important;animation-delay:calc(var(--i,0)*.5s)!important}
section.hm-choose .hm-checklist li .ck-tick circle{transform-box:fill-box;transform-origin:center;animation:ck-pulse 4s ease-in-out infinite;animation-delay:calc(var(--i,0)*.5s)}
@keyframes ck-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes ck-n{0%,70%,100%{transform:none}10%{transform:translateY(-4px) rotate(-6deg)}20%{transform:none}}
@keyframes ck-draw{0%{stroke-dashoffset:1}20%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
@keyframes ck-pulse{0%,100%{transform:none}20%{transform:scale(1.18)}35%{transform:none}}
@media(max-width:1100px){section.hm-choose .hm-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}section.hm-choose .hm-checklist li:last-child{grid-column:span 2}}
@media(max-width:899px){section.hm-choose .hm-choose-copy{grid-template-columns:1fr}section.hm-choose .hm-choose-copy>*{grid-column:1!important;grid-row:auto!important}section.hm-choose .hm-choose-copy h2{margin-bottom:12px}}
@media(max-width:560px){section.hm-choose .hm-checklist{grid-template-columns:1fr}section.hm-choose .hm-checklist li:last-child{grid-column:auto}}
/* makeover uses homepage checklist band */
.rx-makeover .ck-body strong{color:#0D2A44}

/* v6: why redesign, light CTA, calmer band rhythm */
.rx-why{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:stretch;background:none!important;padding:0!important}
.rx-why .rx-why-pic{position:relative;border-radius:28px;overflow:hidden;min-height:0;background:#17466E}
.rx-why .rx-why-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%}
.rx-why .eyebrow{color:#F3C2AF!important}
.rx-why h2{color:#fff!important}
.rx-why p{color:rgba(255,255,255,.85)}
.rx-why a{color:#F3C2AF}
.rx-why-list{list-style:none;padding:0;margin:26px 0!important;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.rx-why-list li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;padding:16px 0;border-top:1px solid rgba(255,255,255,.12);font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.82)}
.rx-why-list li:last-child{grid-column:1/-1}
.rx-why-list li strong{display:block;color:#fff;font-size:16.5px;margin-bottom:2px}
.rx-why-list .rx-ic{width:34px;height:34px;color:#E3A08A;background:rgba(227,160,138,.14);box-shadow:none}
.rx-why-rate{display:inline-flex;align-items:center;gap:10px;margin:0!important;padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff!important;font-weight:600;font-size:15px}
.rx-stars{color:#F5B83D;letter-spacing:2px}
@media(max-width:959px){.rx-why{grid-template-columns:1fr}.rx-why .rx-why-pic{aspect-ratio:1/1;max-width:420px}.rx-why-list{grid-template-columns:1fr}}
/* CTA light card, buttons beside */
.rx-cta-band .rx-cta{background:radial-gradient(520px 300px at 100% 0%,rgba(54,166,221,.18),transparent 70%),radial-gradient(420px 260px at 0% 100%,rgba(227,160,138,.22),transparent 70%),#EAF3FA!important;border-radius:28px}
.rx-cta-band .rx-cta h2{-webkit-text-fill-color:#0D2A44!important;color:#0D2A44!important}
.rx-cta-band .rx-cta p{color:#33485C}
.rx-cta-band .rx-cta a:not(.btn){color:#0D2A44;text-decoration-color:#E3A08A}
.rx-cta-band .rx-cta-btns{flex-direction:row!important;min-width:0!important;gap:12px}
.rx-cta-band .rx-cta .btn-coral{background:#E3A08A!important;color:#0D2A44!important;border-color:#E3A08A!important}
.rx-cta-band .rx-cta .rx-btn-ghost{background:#0D2A44!important;color:#fff!important;box-shadow:none!important}
@media(max-width:959px){.rx-cta-band .rx-cta-btns{flex-direction:column!important}}
.rx-cta-band{padding:clamp(40px,4vw,56px) 0!important}
/* softer band tones */
.rx-bg-care{background:linear-gradient(#FFFFFF,#F4F9FD)!important}

/* v7: consult cards, flat homepage icons in options */
.rx-consult{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:center}
.rx-consult-head h2{margin:0!important}
.rx-consult-list{list-style:none;margin:0!important;padding:0;display:grid;gap:14px}
.rx-consult-list li{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:center;background:#fff;border-radius:20px;padding:18px 22px;box-shadow:0 12px 30px -24px rgba(13,42,68,.45)}
.rx-consult-list p{margin:0!important;font-size:16.5px!important;line-height:1.6;color:#33485C}
.rx-consult-list a{color:#1570B0;font-weight:600}
.rx-consult-list .hm-svc-ic,.opt-card .hm-svc-ic{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:linear-gradient(150deg,#fff,#e2f0fa);box-shadow:inset 0 0 0 1px #1570b01a,0 8px 20px #0d2a440f;margin:0}
.rx-consult-list .hm-svc-ic .di,.opt-card .hm-svc-ic .di{width:46px;height:46px}
.opt-card .hm-svc-ic{float:left;margin:0 16px 6px 0}
.opt-card:hover .hm-svc-ic{transform:translateY(-3px) rotate(-5deg);transition:transform .35s}
@media(max-width:959px){.rx-consult{grid-template-columns:1fr}}

/* ===== generic blocks for rolled-out service pages ===== */
.rx-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,72px);align-items:start}
.rx-split>.rx-head h2{margin:0!important}
.rx-split>.rx-head .eyebrow{margin:0 0 10px}
.rx-split>.rx-text>*:first-child{margin-top:0}
.rx-split .rx-checks{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}
.rx-checks li{display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start;background:#fff;border-radius:16px;padding:14px 16px;font-size:16px;line-height:1.55;color:#33485C;box-shadow:0 10px 26px -22px rgba(13,42,68,.4)}
.rx-checks li strong{color:#0D2A44}
.rx-bg-white .rx-checks li{background:#F7FBFE;box-shadow:none}
.rx-intro{font-size:clamp(18px,1.4vw,20px)!important;line-height:1.7!important;color:#0D2A44!important;font-weight:500;max-width:920px;margin:0 0 8px}
.rx-why-copy-only{grid-template-columns:1fr!important}
@media(max-width:959px){.rx-split{grid-template-columns:1fr}}
@media(max-width:767px){.trust .stats{gap:10px!important}.trust .stat{padding:12px!important;gap:10px!important}.trust .stat .tile{width:42px!important;height:42px!important}.trust .stat-num{font-size:24px!important}.trust .stat-label{font-size:13px!important}}
/* ===== stacked title → description (replaces side-by-side heading/text) ===== */
.rx-stack{max-width:900px}
.rx-stack>h2,.rx-stack .rx-stack-head h2{margin:0 0 16px!important}
.rx-stack p{max-width:78ch}
.rx-listblock{max-width:none}
.rx-listblock .rx-stack-head{max-width:900px}
.rx-listblock .rx-checks{list-style:none;padding:0;margin:22px 0 0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rx-listblock>p{margin-top:18px}
@media(max-width:767px){.rx-listblock .rx-checks{grid-template-columns:1fr}}
/* zigzag photo blocks: keep photos a comfortable size */
@media(min-width:960px){.rx-media>.rx-img{min-height:320px}}
/* live-site images (often infographics): show whole image, never crop */
.rx-natural.rx-media{align-items:center!important}
.rx-natural.rx-media>.rx-img{min-height:0!important;height:auto!important;position:static!important}
.rx-natural.rx-media>.rx-img img{position:static!important;width:100%!important;height:auto!important;object-fit:contain!important}
/* why band: text + reasons, no photo (avoid repeating photos) */
.rx-why{grid-template-columns:1fr!important}
.rx-why .rx-copy>h2,.rx-why .rx-copy>p:not(.rx-why-rate):not(.eyebrow){max-width:820px}
.rx-why-list li:last-child{grid-column:auto}
.rx-why-list li{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)!important;border-radius:18px;padding:18px!important}
/* live-site images: same height as the text, whole image visible */
@media(min-width:960px){
.rx-natural.rx-media{align-items:stretch!important}
.rx-natural.rx-media>.rx-img{position:relative!important;height:auto!important;min-height:0!important;background:linear-gradient(160deg,#F4F9FD,#EAF3FA);border-radius:24px}
.rx-natural.rx-media>.rx-img img{position:absolute!important;inset:14px!important;width:calc(100% - 28px)!important;height:calc(100% - 28px)!important;object-fit:contain!important;border-radius:14px}
.rx-natural.rx-media>.rx-copy{align-self:center}
}
.rx-bg-care .rx-natural.rx-media>.rx-img{background:#fff}
/* generated photo zigzags: equal columns, photo fills its side */
@media(min-width:960px){
.rx-gen.rx-media{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}
.rx-gen.rx-media>.rx-img{position:relative!important;min-height:220px!important;border-radius:24px;overflow:hidden}
.rx-gen.rx-media>.rx-img img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.rx-gen.rx-media>.rx-copy{align-self:center}
}
@media(max-width:959px){.rx-gen.rx-media>.rx-img img{width:100%;height:auto;border-radius:20px}}

/* ===== zigzag for bonding block ===== */
@media(min-width:960px){.rx-bond.rx-flip>.rx-img{order:2}.rx-plan.rx-flip>.rx-img{order:2}}

/* ===== Why band: one alignment — everything centered ===== */
.rx-why .rx-copy{text-align:center}
.rx-why .rx-copy>h2,.rx-why .rx-copy>p:not(.rx-why-rate){margin-left:auto!important;margin-right:auto!important;max-width:820px}
.rx-why .eyebrow{justify-content:center}
.rx-why-list{justify-content:center!important;text-align:left}
.rx-why-rate{display:flex!important;width:fit-content;margin:8px auto 0!important}
.rx-why-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.rx-btn-ghost-light{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)!important}
.rx-why-cta .btn-coral{background:#E3A08A!important;color:#0D2A44!important;border-color:#E3A08A!important}

/* ===== MOBILE + TABLET: image full width on top, text below, nothing cropped ===== */
@media(max-width:959px){
html body .rx-media,html body .rx-bond,html body .rx-why,html body .rx-consult,html body .rx-cta{display:flex!important;flex-direction:column!important;gap:24px!important;grid-template-columns:none!important}
html body .rx-media>.rx-img,html body .rx-bond>.rx-img{order:-1!important;width:100%!important;position:relative!important;min-height:0!important;height:auto!important;aspect-ratio:auto!important;border-radius:20px!important;overflow:hidden;margin:0!important;background:none!important}
html body .rx-media>.rx-img img,html body .rx-bond>.rx-img img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:0!important;display:block}
html body .rx-media>.rx-copy,html body .rx-bond>.rx-copy{width:100%!important;padding:0!important}
html body .rx-cta-btns{flex-direction:column!important;width:100%}
html body .rx-cta-btns .btn{width:100%}
.rx-checks li,.rx-consult-list li{padding:14px!important}
.rx-band{padding:48px 0!important}
.rx-band.rich-sec{padding-top:24px!important}
.rx-band .wrap>*+*{margin-top:40px!important}
}
@media(max-width:767px){
.rx-why-cta .btn{width:100%}
.rx-why-list{gap:12px!important}
/* trust stats: roomy 2x2 cards */
html body .trust .trust-card{padding:16px!important}
html body .trust .stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
html body .trust .stats>li{border:0!important;min-width:0}
html body .trust .stat{flex-direction:column!important;align-items:center!important;text-align:center!important;gap:10px!important;padding:18px 10px!important;height:100%;border-radius:18px!important}
html body .trust .stat-txt{align-items:center}
html body .trust .stat-num{font-size:28px!important}
html body .trust .stat-label{font-size:13.5px!important;line-height:1.35!important}
html body .trust .badges{flex-direction:column!important;align-items:stretch!important;gap:8px!important;margin-top:14px!important;padding-top:14px!important}
html body .trust .badges li{padding:10px 12px!important;border-radius:14px!important;font-size:14px!important}
/* hero: more breathing room */
html body .hero.has-photo .hero-grid{padding-top:28px!important;gap:32px!important}
html body .hero.has-photo .hero-media{margin-bottom:8px!important}
html body .hero .lead{margin-bottom:28px!important}
html body .hero .btns{margin-top:0!important;gap:12px!important}
html body .hero .rating-chip{margin-top:20px!important}
}
/* author card label: plain line, no pill */
html body .author-card .author-line{display:block!important;width:auto!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
@media(max-width:767px){html body .author-card{padding:20px!important;gap:16px!important}html body .author-card .al-photo{width:84px!important;height:84px!important;border-radius:50%!important}html body .author-card .ac-intro{font-size:17px!important}}
/* Why band: everything left-aligned (overrides centered version) */
html body .rx-why .rx-copy{text-align:left!important}
html body .rx-why .rx-copy>h2,html body .rx-why .rx-copy>p:not(.rx-why-rate){margin-left:0!important;margin-right:0!important}
html body .rx-why .eyebrow{justify-content:flex-start!important}
html body .rx-why .rx-why-list{justify-content:flex-start!important}
html body .rx-why .rx-why-rate{margin:8px 0 0!important}
html body .rx-why .rx-why-cta{justify-content:flex-start!important}

/* ===== Head rows: title + description left, actions right (no empty right side) ===== */
.rx-headrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 56px;align-items:end;margin-bottom:28px}
.rx-headrow .rx-headtext>*:last-child{margin-bottom:0!important}
.rx-headrow .rx-headtext h2{margin-bottom:14px!important}
.head-act{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;align-items:center;padding-bottom:4px}
.head-act .btn{white-space:nowrap}
.head-act .btn-coral{background:#E3A08A!important;color:#0D2A44!important;border-color:#E3A08A!important}
.head-ghost{background:#fff;color:#0D2A44;box-shadow:inset 0 0 0 1.5px rgba(13,42,68,.2)}
.rx-bg-navy .head-ghost,.rx-why .head-ghost{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)!important}
.rx-table .table-wrap{margin-top:8px!important}
.rx-listblock .rx-checks{margin-top:0!important}
.sec-head.has-act{display:grid!important;grid-template-columns:minmax(0,1fr) auto;column-gap:56px;align-items:end;max-width:none!important}
.sec-head.has-act>*:not(.head-act){grid-column:1}
.sec-head.has-act>.head-act{grid-column:2;grid-row:1/span 3;align-self:end}
@media(max-width:959px){
.rx-headrow,.sec-head.has-act{grid-template-columns:1fr!important}
.sec-head.has-act>.head-act{grid-column:1;grid-row:auto}
.head-act{justify-content:flex-start;margin-top:4px}
}
@media(max-width:767px){.head-act{flex-direction:column;align-items:stretch}.head-act .btn{width:100%;justify-content:center}}

/* ===== Split heads: title on the left (wide, ~2 lines), description on the right, boxes below ===== */
.rx-headrow.split-head{display:block!important;margin-bottom:32px}
.split-head .rx-headtext,.sec-head.split-head{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;column-gap:64px!important;align-items:end!important;max-width:none!important}
.split-head .rx-headtext>.eyebrow,.split-head .rx-headtext>h2,.sec-head.split-head>.eyebrow,.sec-head.split-head>h2{grid-column:1!important}
.split-head .rx-headtext>h2,.sec-head.split-head>h2{margin:0!important}
.split-head .rx-headtext>p:not(.eyebrow),.sec-head.split-head>p:not(.eyebrow){grid-column:2!important;grid-row:1/span 2;align-self:end;margin:0!important;padding-bottom:6px}
.split-head .rx-headtext>p:not(.eyebrow)+p:not(.eyebrow){grid-row:auto}
@media(max-width:959px){
.split-head .rx-headtext,.sec-head.split-head{grid-template-columns:1fr!important;row-gap:14px}
.split-head .rx-headtext>p:not(.eyebrow),.sec-head.split-head>p:not(.eyebrow){grid-column:1!important;grid-row:auto!important}
}
.rx-listblock .rx-stack-head.split-head{max-width:none!important}
@media(min-width:960px){.split-head .rx-headtext,.sec-head.split-head{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr)!important;column-gap:56px!important}}
.split-head h2{max-width:none!important;width:auto!important}
/* split heads: exact 50/50, title from the left edge, description to the right edge */
@media(min-width:960px){.split-head .rx-headtext,.sec-head.split-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:64px!important}}
.split-head .rx-headtext>p:not(.eyebrow),.sec-head.split-head>p:not(.eyebrow){max-width:none!important;width:100%!important;justify-self:stretch}

/* Long titles (3+ lines in 50/50): stacked — title, description below, then content */
.split-head.stacked-head .rx-headtext,.sec-head.split-head.stacked-head{display:block!important}
.split-head.stacked-head .rx-headtext>h2,.sec-head.split-head.stacked-head>h2{max-width:900px!important}
.split-head.stacked-head .rx-headtext>p:not(.eyebrow),.sec-head.split-head.stacked-head>p:not(.eyebrow){margin:14px 0 0!important;padding-bottom:0;max-width:820px!important}

/* ===== Why choose (homepage style): photo + icon reasons grid ===== */
.rx-why2 .sec-head{margin-bottom:36px}
.rx-why2 .w2-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7.2fr);gap:0 48px;align-items:stretch}
.rx-why2 .w2-photo{position:relative;margin:0;border-radius:28px;overflow:hidden;min-height:420px;background:#0D2A44}
.rx-why2 .w2-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rx-why2 .w2-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,42,68,0) 45%,rgba(13,42,68,.82))}
.rx-why2 .w2-photo figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:24px}
.rx-why2 .w2-photo .rx-why-cta{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.rx-why2 .w2-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;align-content:start}
.rx-why2 .w2-list li{display:grid;grid-template-columns:44px 1fr;column-gap:14px;padding:22px 0;border-top:1px solid #E3EEF7;margin:0}
.rx-why2 .w2-list li:nth-child(-n+2){border-top:0;padding-top:4px}
.rx-why2 .why-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(150deg,#EAF5FC,#D3E9F8);color:var(--blue,#1570B0)}
.rx-why2 .w2-k{display:block;font:700 12px/1.3 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--blue,#1570B0);margin-bottom:6px}
.rx-why2 .w2-list p{font:500 16px/1.55 var(--font-body);color:var(--text);margin:0}
.rx-why2 .w2-list p::first-letter{text-transform:uppercase}
.rx-why2 .w2-big{display:flex;align-items:center;gap:10px;font:700 26px/1.1 var(--font-heading);color:var(--navy,#0D2A44);margin-bottom:6px}
.rx-why2 .w2-big .stars{font-size:15px;color:#F5A623;letter-spacing:1px}
@media(max-width:959px){
 .rx-why2 .w2-grid{grid-template-columns:1fr;gap:28px}
 .rx-why2 .w2-photo{min-height:0;aspect-ratio:4/3}
}
@media(max-width:599px){
 .rx-why2 .w2-list{grid-template-columns:1fr}
 .rx-why2 .w2-list li:nth-child(2){border-top:1px solid #E3EEF7;padding-top:22px}
 .rx-why2 .w2-photo figcaption{padding:16px}
 .rx-why2 .w2-photo .rx-why-cta .btn{flex:1 1 100%;justify-content:center}
}
@media(max-width:767px){.rx-why2 .w2-list p{font-size:17px}}

/* ===== Images always cover their frame (no empty background / letterbox) ===== */
html body .rx-media>.rx-img:not(#_){position:relative!important;background:none!important;border-radius:24px!important;overflow:hidden!important;padding:0!important}
html body .rx-media>.rx-img img:not(#_){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center!important;border-radius:0!important;background:none!important}
@media(min-width:960px){html body .rx-media:not(#_){align-items:stretch!important}html body .rx-media>.rx-img:not(#_){min-height:380px!important;height:auto!important}}
@media(max-width:959px){html body .rx-media>.rx-img:not(#_){aspect-ratio:4/3!important;height:auto!important;min-height:0!important}}

/* ===== No single word left alone on the last line ===== */
html body p,html body li,html body dd,html body blockquote,html body figcaption,html body td{text-wrap:pretty}
html body h1,html body h2,html body h3,html body h4{text-wrap:balance}

/* ===== Image cards (homepage card style): replaces the check-icon card grid ===== */
.rx-icards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.rx-icards>li.rx-icard{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 10px 30px rgba(13,42,68,.06);margin:0;padding:0;min-height:260px}
.rx-icards:has(>li:nth-child(odd):last-child)>li:last-child{grid-column:1/-1;grid-template-columns:minmax(0,.5fr) minmax(0,1fr)}
.rx-icard-img{margin:0;position:relative;min-height:100%}
.rx-icard-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.rx-icard-body{padding:30px 32px;display:flex;flex-direction:column;justify-content:center;gap:10px}
html body .rx-icard-body h3:not(#_){margin:0;color:#0D2A44}
.rx-icard-body p{margin:0;color:var(--muted,#4A5B6B)}
.rx-icard-body p::first-letter{text-transform:uppercase}
.rx-listblock .rx-icards+p{margin-top:28px}
@media(max-width:959px){.rx-icards{grid-template-columns:1fr}.rx-icards>li.rx-icard,.rx-icards:has(>li:nth-child(odd):last-child)>li:last-child{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);grid-column:auto}}
@media(max-width:599px){.rx-icards>li.rx-icard,.rx-icards:has(>li:nth-child(odd):last-child)>li:last-child{grid-template-columns:1fr;min-height:0}.rx-icard-img{aspect-ratio:4/3;min-height:0}.rx-icard-body{padding:22px 22px 26px}}

/* ===== v4: no split heads anywhere: title, then description below ===== */
html body .split-head .rx-headtext:not(#_),html body .sec-head.split-head:not(#_){display:block!important;max-width:860px!important}
html body .split-head .rx-headtext>p:not(.eyebrow):not(#_),html body .sec-head.split-head>p:not(.eyebrow):not(#_){margin:14px 0 0!important;padding:0!important;max-width:820px!important}
html body .rx-headrow.split-head:not(#_){margin-bottom:28px}
/* ===== v4: check lists as a clean list, no boxes ===== */
html body ul.rx-checks:not(#_){display:grid!important;grid-template-columns:1fr!important;justify-content:stretch!important;max-width:none!important;gap:0 48px!important;list-style:none;padding:0!important;margin:8px 0 0!important;background:none!important;box-shadow:none!important}
@media(min-width:900px){html body ul.rx-checks:not(#_){grid-template-columns:1fr 1fr!important}}
html body ul.rx-checks>li:not(#_){display:grid!important;grid-template-columns:40px 1fr;gap:16px;align-items:center;padding:18px 0!important;margin:0!important;background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;border-bottom:1px solid #E6EEF5!important;width:auto!important;min-height:0!important;flex:none!important}
html body ul.rx-checks>li>.rx-ic:not(#_){width:40px;height:40px;padding:10px;border-radius:12px;color:#C9694A;background:#FBEDE6;box-shadow:none}
/* ===== v4: Why choose (homepage style): doctor photo + copy on a light background ===== */
html body section.dr-why:not(#_){background:#F4F8FB!important;color:inherit}
html body .dr-why .rx-why:not(#_){display:grid;gap:28px;align-items:stretch;background:none;padding:0;box-shadow:none}
@media(min-width:960px){html body .dr-why .rx-why:not(#_){grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px}}
.dr-why-photo{margin:0;position:relative;min-height:320px;border-radius:28px;overflow:hidden;box-shadow:0 24px 50px -30px rgba(13,42,68,.45)}
.dr-why-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 30%}
html body .dr-why .rx-copy:not(#_){align-self:center}
html body .dr-why :is(h2,p,a:not(.btn)):not(#_){color:#0D2A44}
html body .dr-why p:not(#_){color:#33485C}
html body .dr-why .rx-copy a:not(.btn):not(#_){color:#1570B0}
html body section.dr-why .rx-why:not(#_):not(#__){display:grid!important;max-width:none!important}
@media(min-width:960px){html body section.dr-why .rx-why:not(#_):not(#__){grid-template-columns:minmax(0,5fr) minmax(0,6fr)!important;gap:56px!important}}
html body section.dr-why :is(h2,h3):not(#_):not(#__){color:#0D2A44!important}
html body section.dr-why p:not(#_):not(#__){color:#33485C!important}
html body section.dr-why .rx-copy a:not(.btn):not(#_):not(#__){color:#1570B0!important}
html body section.dr-why .rx-btn-ghost:not(#_):not(#__){color:#0D2A44!important;border-color:#0D2A44!important}

/* ===== v5: check lists in homepage option-box style, light orange section ===== */
html body section.rx-band:has(ul.rx-checks):not(.dr-why):not(#_):not(#__){background:#FDF3EE!important}
html body ul.rx-checks:not(#_):not(#__){gap:16px!important;margin-top:12px!important}
html body ul.rx-checks>li:not(#_):not(#__){grid-template-columns:56px 1fr!important;gap:18px!important;padding:20px 22px!important;background:#fff!important;border:1.5px solid #F3DED3!important;border-bottom:1.5px solid #F3DED3!important;border-radius:22px!important;box-shadow:0 6px 18px rgba(13,42,68,.05)!important;transition:border-color .25s,box-shadow .25s,transform .25s;font-size:16px;line-height:1.5}
html body ul.rx-checks>li:hover:not(#_):not(#__){border-color:#E3A08A!important;box-shadow:0 12px 28px rgba(227,160,138,.22)!important;transform:translateY(-2px)}
html body ul.rx-checks>li>.rx-ic:not(#_):not(#__){width:56px!important;height:56px!important;padding:16px!important;border-radius:18px!important;color:#C9694A!important;background:linear-gradient(150deg,#fff,#FBE3D9)!important;border:1.5px solid #F6D3C4!important}
html body ul.rx-checks strong{display:block;color:#0D2A44;margin-bottom:2px}
@media(min-width:900px){html body ul.rx-checks>li:last-child:nth-child(odd):not(#_):not(#__){grid-column:1/-1}}

/* ===== v6: list sections = real photo + clean icon list (zigzag) ===== */
.ck-wrap{display:grid;gap:24px;margin-top:8px;align-items:stretch}
@media(min-width:900px){.ck-wrap{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px}.ck-wrap.ck-flip{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}.ck-wrap.ck-flip .ck-photo{order:2}}
.ck-photo{margin:0;position:relative;min-height:300px;border-radius:28px;overflow:hidden;box-shadow:0 24px 50px -30px rgba(13,42,68,.45)}
.ck-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
@media(max-width:899px){.ck-photo{min-height:0;aspect-ratio:3/2}}
.ck-body{display:flex;flex-direction:column;justify-content:center}
html body .ck-body ul.rx-checks:not(#_):not(#__){display:block!important;margin:0!important}
html body .ck-body ul.rx-checks>li:not(#_):not(#__){display:grid!important;grid-template-columns:48px 1fr!important;gap:16px!important;align-items:center;padding:16px 0!important;background:none!important;border:0!important;border-bottom:1px solid #F1DDD3!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
html body .ck-body ul.rx-checks>li:last-child:not(#_):not(#__){border-bottom:0!important}
html body .ck-body ul.rx-checks>li>.rx-ic:not(#_):not(#__){width:48px!important;height:48px!important;padding:13px!important;border-radius:16px!important}

/* ===== v7: list sections in homepage insurance-card style ===== */
html body section.rx-band:has(.ck-wrap):not(#_):not(#__){background:#fff!important}
html body .rx-listblock:has(>.ck-wrap):not(#_){position:relative;padding:clamp(24px,4vw,52px)!important;border-radius:32px;background:linear-gradient(135deg,#EAF5FC,#fff 60%,#FDF0EA)!important;border:1px solid #DCEBF5}
.ck-body .rx-stack-head{margin:0 0 18px!important}
.ck-body .rx-headtext h2{margin:0 0 12px}
@media(min-width:900px){.ck-photo{min-height:420px}}
html body section.rx-band:has(.ck-wrap):not(.dr-why):not(.x1):not(#_):not(#__){background:#fff!important}

/* ===== v8: hero photo in arch frame with glass doctor chip (porcelain veneers style) ===== */
html body .hero-arch .hm-blob:not(#_){display:none}
html body .hero-arch .hm-frame:not(#_){position:relative;overflow:visible!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:min(100%,520px);margin-inline:auto;aspect-ratio:auto!important;padding:0!important}
html body .hero-arch .hm-frame>img:not(#_){width:100%!important;height:auto!important;aspect-ratio:4/4.6!important;object-fit:cover!important;object-position:center 30%;border-radius:260px 260px 32px 32px!important;box-shadow:0 34px 80px rgba(13,42,68,.18)!important;position:static!important}
.hero-doc{position:absolute;left:-14px;bottom:26px;display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;border-radius:999px;max-width:88%;background:rgba(255,255,255,.62);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.75);box-shadow:0 18px 50px rgba(13,42,68,.1);z-index:2}
.hero-doc img{width:46px!important;height:46px!important;border-radius:50%;object-fit:cover;object-position:center 12%;background:#CFE6F6;aspect-ratio:1!important}
.hero-doc small{display:block;font-size:14px;color:#4D5A69;font-weight:600;line-height:1.2}
.hero-doc a{font-weight:700;color:#0D2A44;text-decoration:none;font-size:14.5px}
@media(max-width:599px){.hero-doc{left:8px;bottom:14px}}
html body .hero-arch .hm-frame .hero-doc img:not(#_):not(#__){position:static!important;inset:auto!important;width:46px!important;height:46px!important;min-width:46px;max-width:46px!important;flex:none;border-radius:50%!important;box-shadow:none!important;aspect-ratio:1!important;object-fit:cover!important;object-position:center 12%!important;transform:none!important}
html body .hero-arch .hm-frame .hero-doc:not(#_):not(#__){width:auto;white-space:nowrap}
html body .hero-arch .hm-frame .hero-doc span:not(#_){display:block}
/* v8b: hero photo matches the text height (arch frame, no tall image) */
@media(min-width:960px){html body .hero-arch .hero-grid:not(#_){align-items:stretch!important}
html body .hero-arch .hero-media:not(#_){display:flex;align-items:stretch}
html body .hero-arch .hm-frame:not(#_){height:100%;width:min(100%,500px)}
html body .hero-arch .hm-frame>img:not(#_):not(#__){aspect-ratio:auto!important;height:100%!important;max-height:560px}}
@media(max-width:959px){html body .hero-arch .hm-frame>img:not(#_):not(#__){aspect-ratio:4/3!important;border-radius:200px 200px 28px 28px!important}}
@media(min-width:960px){html body .hero-arch .hero-media:not(#_){align-items:center}html body .hero-arch .hm-frame:not(#_){height:auto}html body .hero-arch .hm-frame>img:not(#_):not(#__):not(#___){height:460px!important;max-height:none}}

/* ===== v10: strict page-wide zigzag + alternating shapes (blob / rounded rectangle) ===== */
@media(min-width:900px){
html body :is(.rx-media,.ck-wrap,.dr-why .rx-why).zz-l:not(#_):not(#__),html body :is(.rx-media,.ck-wrap,.dr-why .rx-why).zz-r:not(#_):not(#__){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)!important;gap:56px!important;align-items:stretch}
html body :is(.rx-media,.ck-wrap,.dr-why .rx-why).zz-r:not(#_):not(#__){grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)!important}
html body .zz-l>:is(.rx-img,.ck-photo,.dr-why-photo):not(#_):not(#__){order:0!important}
html body .zz-l>:not(.rx-img):not(.ck-photo):not(.dr-why-photo):not(#_):not(#__){order:1!important}
html body .zz-r>:is(.rx-img,.ck-photo,.dr-why-photo):not(#_):not(#__){order:2!important}
html body .zz-r>:not(.rx-img):not(.ck-photo):not(.dr-why-photo):not(#_):not(#__){order:1!important}
}

/* ===== v11: soft light-orange shape behind photos (photo shape unchanged) ===== */
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo):not(#_):not(#__){overflow:visible!important;isolation:isolate;position:relative}
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo):not(#_)::before{content:"";position:absolute;left:-5%;right:22%;top:14%;bottom:-6%;border-radius:58% 42% 52% 48%/48% 50% 50% 52%;background:#FBE6DC;z-index:-1;pointer-events:none}
html body .zz-r>:is(.rx-img,.ck-photo,.dr-why-photo):not(#_)::before{left:22%;right:-5%}
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo) img:not(#_){position:relative;z-index:1}
/* v11b: keep rounded photo corners; soft shape only on every other photo */
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo) img:not(#_):not(#__){border-radius:28px!important}
html body .zz-r>:is(.rx-img,.ck-photo,.dr-why-photo):not(#_):not(#__)::before{display:none}
html body .ck-wrap.ck-noimg:not(#_):not(#__){display:block!important}

/* ===== v12: equal spacing between all content sections ===== */
html body :is(main,body)>section:is(.rx-band,.band,.sx-answer,.sx-explain,.sx-compare,.sx-opts,.sx-guide,.hm-aff,.hm-ins,.hm-rev,.hm-vt,.hm-fv,.doc-sec,.gal-sec,.faq-sec,.rel-sec,.wz-sec):not(.rx-cta-band):not(#_):not(#__){padding-top:72px!important;padding-bottom:72px!important}
@media(max-width:767px){html body :is(main,body)>section:is(.rx-band,.band,.sx-answer,.sx-explain,.sx-compare,.sx-opts,.sx-guide,.hm-aff,.hm-ins,.hm-rev,.hm-vt,.hm-fv,.doc-sec,.gal-sec,.faq-sec,.rel-sec,.wz-sec):not(.rx-cta-band):not(#_):not(#__){padding-top:48px!important;padding-bottom:48px!important}}
.ck-after{margin-top:18px}.ck-after p{margin:0 0 10px}
/* v13: plain-text sections are framed (gradient card, coral accent) */
html body section.txt-frame>.wrap:not(#_):not(#__){position:relative;max-width:1100px;padding:clamp(28px,4vw,48px) clamp(24px,4vw,56px)!important;border-radius:32px;background:linear-gradient(135deg,#EAF5FC,#fff 60%,#FDF0EA);border:1px solid #DCEBF5;box-shadow:0 18px 50px -30px rgba(13,42,68,.35)}
html body section.txt-frame>.wrap:not(#_)::before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:5px;border-radius:0 6px 6px 0;background:#E3A08A}
html body section.txt-frame>.wrap p:last-child{margin-bottom:0}
@media(max-width:767px){html body section.txt-frame>.wrap:not(#_):not(#__){margin-inline:16px}}

/* ===== v14: comparison tables - each row one clean card, cells aligned ===== */
@media(min-width:768px){
html body .table-wrap:not(#_):not(#__){border:0!important;background:none!important;box-shadow:none!important;padding:0!important}
html body table.stack-table:not(#_):not(#__){border-collapse:separate!important;border-spacing:0 12px!important;width:100%}
html body table.stack-table thead th:not(#_):not(#__){background:none!important;border:0!important;padding:4px 24px!important}
html body table.stack-table tbody tr:not(#_):not(#__){background:none!important;box-shadow:none!important}
html body table.stack-table tbody td:not(#_):not(#__){display:table-cell!important;vertical-align:middle!important;background:#fff!important;box-shadow:none!important;border:0!important;border-top:1px solid #E3EDF5!important;border-bottom:1px solid #E3EDF5!important;border-radius:0!important;padding:20px 24px!important;height:auto!important}
html body table.stack-table tbody td:first-child:not(#_):not(#__){border-left:1px solid #E3EDF5!important;border-radius:18px 0 0 18px!important}
html body table.stack-table tbody td:last-child:not(#_):not(#__){border-right:1px solid #E3EDF5!important;border-radius:0 18px 18px 0!important}
html body table.stack-table tbody tr:last-child td:not(#_):not(#__){background:#FDF3EE!important;border-color:#F3DED3!important}
html body table.stack-table tbody td>*:not(#_){margin:0!important}
}
/* v15: readable text on light "why choose" sections */
html body section.dr-why :is(li,li *,strong,span,small):not(.btn):not(.btn *):not(#_):not(#__){color:#33485C!important}
html body section.dr-why :is(li strong,strong):not(#_):not(#__){color:#0D2A44!important}
html body section.dr-why :is(li,[class*="card"]):not(#_):not(#__){background:#fff!important;border:1px solid #E3EDF5!important}
/* v16: rating note = stars on top, text below; why-photo keeps natural ratio */
html body .rx-why-rate:not(#_):not(#__){display:block!important;padding:22px 26px!important;border-radius:22px;background:#fff!important;border:1px solid #E3EDF5}
html body .rx-why-rate .rx-stars:not(#_):not(#__){display:block!important;margin:0 0 8px!important;color:#F4B400!important;font-size:20px;letter-spacing:3px}
@media(min-width:960px){html body section.dr-why .rx-why:not(#_):not(#__){align-items:center!important}
html body .dr-why-photo:not(#_):not(#__){min-height:0!important;aspect-ratio:3/2;align-self:center}}
/* v17 dr-why gallery: two photos stacked, equal to text height */
html body figure.dr-why-gal:not(#_){display:grid;grid-template-rows:3fr 2fr;gap:16px;aspect-ratio:auto;min-height:0;background:none}
html body figure.dr-why-gal:not(#_) img{position:static;width:100%;height:100%;min-height:0;object-fit:cover;border-radius:28px;display:block}
@media(min-width:960px){html body section.dr-why .rx-why:not(#_){align-items:stretch}html body figure.dr-why-gal:not(#_){align-self:stretch;height:100%}}
@media(max-width:959px){html body figure.dr-why-gal:not(#_){grid-template-rows:auto auto}html body figure.dr-why-gal:not(#_) img{aspect-ratio:3/2}}
/* v17b fix: images stay inside figure */
html body figure.dr-why-gal:not(#_){position:relative!important;overflow:hidden;width:100%!important}
html body figure.dr-why-gal:not(#_) img{position:relative!important;inset:auto!important;width:100%!important;height:100%!important;max-width:100%!important;transform:none!important}
/* v18 hero image vertically centered to copy */
@media(min-width:960px){html body .hero-arch .hero-grid:not(#_){align-items:center!important}html body .hero-arch .hero-media:not(#_){align-self:center!important;margin-top:0!important}}
/* v19 hm-choose fix: title + text stacked, steps list beside */
html body section.hm-choose .hm-choose-copy:not(#_){display:block!important}
html body section.hm-choose .hm-choose-copy:not(#_)>*{grid-column:auto!important;grid-row:auto!important}
html body section.hm-choose .hm-choose-copy:not(#_) h2{margin:0 0 16px}
html body section.hm-choose .hm-choose-copy:not(#_) p.small{margin:0 0 12px;max-width:none}
html body section.hm-choose .hm-checklist:not(#_) li{opacity:1!important;transform:none!important}
@media(min-width:960px){html body section.hm-choose .hm-choose-grid:not(#_){display:grid!important;grid-template-columns:1fr 1.15fr!important;gap:56px!important;align-items:center!important}}
@media(max-width:959px){html body section.hm-choose .hm-choose-grid:not(#_){display:block!important}html body section.hm-choose .hm-checklist:not(#_){margin-top:24px}}
/* v19b steps as one clean vertical list, not card grid */
html body section.hm-choose ol.hm-checklist:not(#_){display:flex!important;flex-direction:column!important;gap:12px!important;grid-template-columns:none!important}
html body section.hm-choose ol.hm-checklist:not(#_) li{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:14px!important;padding:16px 20px!important;min-height:0!important;height:auto!important}
html body section.hm-choose ol.hm-checklist:not(#_) .ck-tick{display:none!important}
html body section.hm-choose ol.hm-checklist:not(#_) .ck-body{font-size:15px;line-height:1.55}
html body section.hm-choose ol.hm-checklist:not(#_){flex-wrap:nowrap!important}
html body section.hm-choose ol.hm-checklist:not(#_) li{width:100%!important;max-width:none!important;flex:none!important}
/* v20 team page */
html body .team-zz .ck-wrap:not(#_){display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center}
html body .team-zz .ck-wrap.zz-r:not(#_) .ck-photo{order:2}
html body .team-zz .ck-photo:not(#_){margin:0;aspect-ratio:4/3}
html body .team-zz .ck-photo:not(#_) img{width:100%;height:100%;object-fit:cover;border-radius:28px;display:block}
html body .team-txt:not(#_) h2{margin:0 0 16px}
html body .team-txt:not(#_) ul{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:10px}
html body .team-txt:not(#_) ul li{background:linear-gradient(120deg,#fff,#FDF0EA);border-left:4px solid #E9967A;border-radius:14px;padding:12px 16px}
html body .team-book:not(#_){max-width:820px;margin:0 auto;text-align:center}
html body .staff-sec .staff-pic:not(#_){width:240px;height:300px;border-radius:28px;margin:0 auto 16px;position:relative;overflow:visible}
html body .staff-sec .staff-pic:not(#_)::before{content:"";position:absolute;inset:18px -14px -14px 18px;background:#FDE3D6;border-radius:28px;z-index:0}
html body .staff-sec .staff-pic:not(#_) img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:50% 20%;border-radius:28px}
@media(max-width:959px){html body .team-zz .ck-wrap:not(#_){grid-template-columns:1fr;gap:24px}html body .team-zz .ck-wrap.zz-r:not(#_) .ck-photo{order:0}}
html body .team-zz .rx:not(#_),html body .team-zz .ck-wrap:not(#_){max-width:none!important;width:100%!important}
html body section.team-zz.sec-warm:not(#_){background:linear-gradient(180deg,#FFF8F4,#FDF0EA)}
/* v21 team variety */
html body .tm-navy:not(#_){display:flex;gap:24px;align-items:flex-start;background:linear-gradient(135deg,#0F2A44,#1C4468);color:#E6EEF6;border-radius:28px;padding:44px 48px;box-shadow:0 30px 60px -40px rgba(13,42,68,.7)}
html body .tm-navy:not(#_) h2{color:#fff;margin:0 0 12px}
html body .tm-navy:not(#_) p{color:#D5E1EC}
html body .tm-navy:not(#_) a{color:#F6B9A0}
html body .tm-navy:not(#_) .tm-ic{background:rgba(233,150,122,.18);color:#F6B9A0}
html body .tm-cardx:not(#_){display:flex;gap:24px;align-items:flex-start;background:linear-gradient(120deg,#FFFFFF,#FDF0EA);border-left:5px solid #E9967A;border-radius:24px;padding:36px 40px;box-shadow:0 20px 44px -34px rgba(13,42,68,.45)}
html body .tm-cardx:not(#_) h2{margin:0 0 12px}
html body .tm-ic:not(#_){flex:none;width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:#FDE3D6;color:#D9775A}
html body .tm-book:not(#_){max-width:820px;margin:0 auto;text-align:center;background:#fff;border-top:5px solid #E9967A;border-radius:24px;padding:40px 44px;box-shadow:0 20px 44px -34px rgba(13,42,68,.45)}
html body .tm-book:not(#_) h2{margin:0 0 12px}
@media(max-width:700px){html body .tm-navy:not(#_),html body .tm-cardx:not(#_){flex-direction:column;padding:28px 24px}}
/* v22 team redesign */
html body .tp-intro:not(#_){background:linear-gradient(180deg,#FFF8F4,#FDF0EA)}
html body .tp-intro-grid:not(#_){display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
html body .tp-intro-copy:not(#_) h2{margin:0 0 14px}
html body .tp-intro-copy:not(#_) ul{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:10px}
html body .tp-intro-copy:not(#_) ul li{background:#fff;border-radius:999px;padding:10px 18px;font-size:15px;box-shadow:0 10px 24px -18px rgba(13,42,68,.45)}
html body .tp-intro-photo:not(#_){margin:0;position:relative}
html body .tp-intro-photo:not(#_)::before{content:"";position:absolute;inset:24px -18px -18px 24px;background:#FBD8C7;border-radius:32px}
html body .tp-intro-photo:not(#_) img{position:relative;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;display:block}
html body .tp-roles:not(#_){display:grid;grid-template-columns:1fr 1.5fr;gap:28px;margin-top:40px}
html body .tp-role:not(#_){background:#fff;border-radius:28px;padding:28px;box-shadow:0 26px 50px -36px rgba(13,42,68,.5);border-top:5px solid #E9967A;display:flex;flex-direction:column;gap:22px}
html body .tp-people:not(#_){display:flex;gap:18px}
html body .tp-person:not(#_){margin:0;flex:1;text-align:center}
html body .tp-pic:not(#_){aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:#DCE8F7}
html body .tp-pic:not(#_) img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block}
html body .tp-person:not(#_) figcaption{margin-top:12px;display:flex;flex-direction:column;gap:2px}
html body .tp-person:not(#_) figcaption a{font-weight:700;font-size:18px;color:#0F2A44;text-decoration:none}
html body .tp-person:not(#_) figcaption span{color:#C9694B;font-size:14px}
html body .tp-role-txt:not(#_) h2{font-size:26px;margin:0 0 8px}
html body .tp-warm:not(#_){background:linear-gradient(135deg,#FDEDE4,#FFF7F2)}
html body .tp-pair:not(#_){display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:28px}
html body .tp-box:not(#_){background:#fff;border-radius:24px;padding:32px 34px;border-left:5px solid #E9967A;box-shadow:0 20px 44px -34px rgba(13,42,68,.45)}
html body .tp-box:not(#_) h2{font-size:26px;margin:0 0 10px}
html body .tp-warm .tm-book:not(#_){max-width:none}
@media(max-width:959px){html body .tp-intro-grid:not(#_),html body .tp-roles:not(#_),html body .tp-pair:not(#_){grid-template-columns:1fr;gap:24px}}
html body .tp-staff ~ * .tm-navy:not(#_),html body section .tm-navy:not(#_){display:block}
html body .tm-navy:not(#_) h2{max-width:none}
html body .tp-pic:not(#_){aspect-ratio:auto;height:320px}
html body .tp-grid3:not(#_){grid-template-columns:repeat(3,1fr)!important;max-width:1000px;margin:40px auto 0}
html body .tp-hmteam .sec-head:not(#_){text-align:center}
@media(max-width:959px){html body .tp-grid3:not(#_){grid-template-columns:1fr 1fr!important}}
@media(max-width:600px){html body .tp-grid3:not(#_){grid-template-columns:1fr!important}}
/* v23 team info: homepage-style light feature list */
html body .tp-warm:not(#_){background:#fff;position:relative;overflow:hidden}
html body .tp-warm:not(#_)::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,#FDE7DC 0%,rgba(253,231,220,0) 70%);top:-160px;right:-160px}
html body .tp-pair:not(#_){position:relative;gap:0!important;background:linear-gradient(135deg,#FFF6F1,#FDEDE4);border-radius:32px;padding:16px;grid-template-columns:1fr 1fr}
html body .tp-box:not(#_){background:transparent;border:0!important;box-shadow:none;border-radius:0;padding:32px 36px;display:grid;grid-template-columns:52px 1fr;column-gap:18px;align-content:start}
html body .tp-box:not(#_)>*:not(.tp-ic){grid-column:2}
html body .tp-box:not(#_):nth-child(-n+2){border-bottom:1px solid rgba(201,105,75,.18)!important}
html body .tp-box:not(#_):nth-child(odd){border-right:1px solid rgba(201,105,75,.18)!important}
html body .tp-box:not(#_) h2{font-size:22px!important;line-height:1.25;margin:4px 0 8px}
html body .tp-box:not(#_) p{font-size:16px;line-height:1.65;margin:0;color:#3B4F63}
html body .tp-ic:not(#_){grid-row:1/span 3;width:52px;height:52px;border-radius:50%;background:#fff;color:#D9775A;display:grid;place-items:center;box-shadow:0 10px 24px -14px rgba(201,105,75,.6)}
html body .tp-cta:not(#_){background:linear-gradient(135deg,#0F2A44,#1C4468)!important;color:#D5E1EC;border:0!important;max-width:none;margin-top:28px;padding:40px 44px}
html body .tp-cta:not(#_) h2{color:#fff;font-size:30px}
html body .tp-cta:not(#_) p{color:#D5E1EC}
html body .tp-cta:not(#_) a{color:#F6B9A0}
@media(max-width:959px){html body .tp-pair:not(#_){grid-template-columns:1fr}html body .tp-box:not(#_){border-right:0!important;border-bottom:1px solid rgba(201,105,75,.18)!important;padding:24px 18px}}
/* v24 team bento (homepage why-choose style) */
html body .tp-warm:not(#_)::before{display:none}
html body .tp-bento:not(#_){display:grid;grid-template-columns:repeat(3,1fr);gap:16px;grid-template-areas:"a b b" "c c d"}
html body .tp-bento .tb:not(#_){border-radius:28px;padding:34px 32px;min-height:230px;display:flex;flex-direction:column;justify-content:flex-end;opacity:1!important;transform:none!important}
html body .tp-bento .tb:not(#_) h2{font-size:clamp(22px,2vw,28px)!important;line-height:1.2;margin:0 0 10px}
html body .tp-bento .tb:not(#_) p{margin:0;font-size:16px;line-height:1.65}
html body .tp-bento .tb-coral:not(#_){grid-area:a;background:linear-gradient(150deg,#FF9C80,#E9967A);color:#0F2A44}
html body .tp-bento .tb-coral:not(#_) h2,html body .tp-bento .tb-coral:not(#_) p{color:#0F2A44}
html body .tp-bento .tb-navy:not(#_){grid-area:b;background:radial-gradient(320px 200px at 100% 0%,rgba(54,166,221,.55),transparent),linear-gradient(160deg,#1570b0,#0d2a44)}
html body .tp-bento .tb-navy:not(#_) h2{color:#fff}
html body .tp-bento .tb-navy:not(#_) p{color:#ffffffe0}
html body .tp-bento .tb-white:not(#_){grid-area:c;background:#fff;border:1px solid #F1E4DA;box-shadow:0 24px 50px -40px rgba(13,42,68,.5)}
html body .tp-bento .tb-sky:not(#_){grid-area:d;background:linear-gradient(135deg,#EAF4FB,#FDF0EA)}
html body .tp-ins:not(#_){background:linear-gradient(135deg,#EAF4FB,#fff 60%,#FDF0EA)!important;border:1px solid #DCEBF5!important;color:#33485C;border-radius:32px;margin-top:16px;padding:44px}
html body .tp-ins:not(#_) h2{color:#0F2A44}
html body .tp-ins:not(#_) p{color:#33485C}
html body .tp-ins:not(#_) a{color:#1570b0}
@media(max-width:959px){html body .tp-bento:not(#_){grid-template-columns:1fr;grid-template-areas:"a" "b" "c" "d"}html body .tp-bento .tb:not(#_){min-height:0}}
html body .oa-h2:not(#_){margin:0;font-size:inherit;line-height:inherit;font-weight:inherit}
html body .tp-warm .oa:not(#_){margin-bottom:8px}
/* v25 team: equal widths + equal spacing */
html body .tp-grid3:not(#_){max-width:none!important;margin:32px 0 0!important}
html body section.tp-hmteam:not(#_),html body section.tp-intro:not(#_),html body section.tp-warm:not(#_),html body section.hm-team:not(#_){padding:72px 0!important}
html body section.tp-hmteam .sec-head:not(#_){margin-bottom:0!important}
@media(max-width:959px){html body section.tp-hmteam:not(#_),html body section.tp-intro:not(#_),html body section.tp-warm:not(#_){padding:48px 0!important}}
html body .tp-intro-grid.wrap:not(#_){padding-left:20px;padding-right:20px}
/* v26 image+text photos: rounded rect with offset light-orange card behind (team intro style) */
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo):not(#_):not(#__)::before{display:block!important;content:"";position:absolute;inset:36px -24px -24px 36px!important;border-radius:32px!important;background:#F8DCCD!important;z-index:-1}
html body .zz-r>:is(.rx-img,.ck-photo,.dr-why-photo):not(#_):not(#__)::before{inset:36px 36px -24px -24px!important}
html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo):not(#_):not(#__){margin-bottom:24px}
@media(max-width:700px){html body :is(.rx-media>.rx-img:not(.rx-graphic),.ck-photo,.dr-why-photo,.tw-why-photo,.tw-cand-photo):not(#_):not(#__)::before{inset:20px -12px -12px 20px!important}}
/* typography.css */
/* Sitewide heading scale — identical on every page. Same hierarchy ratio on desktop, tablet and mobile.
   :not(#_) raises specificity so section-level rules can't override it. */
html body h1:not(#_),html body h2:not(#_),html body h3:not(#_),html body h4:not(#_){font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,"Segoe UI",sans-serif!important;font-weight:700!important}
/* desktop */
html body h1:not(#_){font-size:64px!important;line-height:1.08!important;letter-spacing:-.025em!important}
html body h2:not(#_){font-size:46px!important;line-height:1.12!important;letter-spacing:-.02em!important}
html body h3:not(#_){font-size:22px!important;line-height:1.25!important;letter-spacing:-.01em!important}
html body h4:not(#_){font-size:18px!important;line-height:1.3!important}
/* tablet */
@media(max-width:1023px){
html body h1:not(#_){font-size:52px!important}
html body h2:not(#_){font-size:38px!important}
html body h3:not(#_){font-size:21px!important}
html body h4:not(#_){font-size:18px!important}
}
/* mobile */
@media(max-width:767px){
html body h1:not(#_){font-size:40px!important;line-height:1.1!important;letter-spacing:-.02em!important}
html body h2:not(#_){font-size:30px!important;line-height:1.18!important;letter-spacing:-.015em!important}
html body h3:not(#_){font-size:20px!important;line-height:1.3!important;letter-spacing:-.005em!important}
html body h4:not(#_){font-size:17px!important}
}
/* FAQ questions: bold on every page */
html body .faq-sec summary:not(#_),html body .faq-sec summary span:not(#_),html body details summary span:not(#_){font-weight:700!important}
/* non-heading display text must never outrank the H2 on mobile */
@media(max-width:767px){
html body main .hm-rev-n:not(#_),html body main .bt-big:not(#_){font-size:30px!important}
html body main .tm-name:not(#_){font-size:20px!important}
html body main h1 em:not(#_),html body main h2 em:not(#_){font-size:inherit!important}
}
/* ===== MOBILE body text scale — one size per role, same on every page ===== */
@media(max-width:767px){
/* body copy */
html body main p:not(#_):not(.eyebrow):not(.lead):not(.rx-lead):not(.hv-sub):not(.hv-kicker):not(.small):not(.author-line):not(.hm-aff-sub):not(.sx-answer-k):not(.rx-why-rate):not(.vt-name),
html body main li:not(#_),html body main td:not(#_),html body main dd:not(#_),html body main blockquote:not(#_),html body main details p:not(#_){font-size:17px!important;line-height:1.65!important}
html body main .lead:not(#_),html body main .rx-lead:not(#_),html body main .ac-intro:not(#_){font-size:18px!important;line-height:1.6!important}
/* secondary text: never below 15px */
html body main small:not(#_),html body main .small:not(#_),html body main .stat-label:not(#_),html body main .ba-tag:not(#_),html body main .tag:not(#_),html body main label.fl:not(#_),html body main .wz-lbl:not(#_),html body main .wz-ql:not(#_),html body main .tm-role:not(#_),html body main .hm-aff-sub:not(#_),html body main .bt-k:not(#_),html body main .sig-tag:not(#_),html body main .pp-label:not(#_),html body main .hm-stat-l:not(#_),html body main figcaption:not(#_),html body main .dm-tag:not(#_),html body main .author-line:not(#_),html body main .sx-answer-k:not(#_),html body main .sx-here:not(#_),html body main .small-w:not(#_),html body main .tm-more:not(#_),html body main .link-more:not(#_),html body main .faq-count:not(#_),html body main time:not(#_),html body main .wz-hint:not(#_),html body main .sig-note:not(#_),html body main .sig-text:not(#_),html body main .sig-go:not(#_),html body main .pp-ep-d:not(#_),html body main .pp-ep-len:not(#_),html body main .sp-fun-k:not(#_){font-size:15px!important;line-height:1.45!important}
html body main .eyebrow:not(#_){font-size:14px!important}
html body main .trust .stat-label:not(#_){font-size:14.5px!important}
/* footer */
html body footer a:not(#_),html body footer li:not(#_),html body footer p:not(#_),html body footer span:not(#_){font-size:15px!important}
}
@media(max-width:767px){html body main .rev-who span:not(#_),html body main .vt-name span:not(#_),html body main .sx-q-who:not(#_),html body main .sx-guide a:not(#_),html body main .pg-hero a:not(#_){font-size:15px!important}}
/* FAQ questions are H3 on every page: bold, same H3 size */
html body .faq-q:not(#_){margin:0!important;flex:1 1 auto;color:#0D2A44}
html body summary .faq-q:not(#_){display:block}
/* ===== Paragraph font: Poppins on every page (p tags only) ===== */
html body p:not(#_){font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:0!important}
html body main p:not(#_):not(.eyebrow):not(.small):not(.author-line){line-height:1.7!important}
html body main .rx-why2 .w2-list p:not(#_){font-size:17px!important}
/* ===== ALL paragraphs: one size, one weight, every page, every screen (labels excluded: eyebrow, footer headings, video names, bylines) ===== */
html body p:not(#_):not(.eyebrow):not(.ftr-h):not(.vt-name):not(.author-line):not(.hv-kicker):not(.hp):not(.sr){font-size:17px!important;font-weight:400!important;line-height:1.7!important;font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
html body p:not(#_) strong,html body p:not(#_) b{font-weight:600!important}
/* spacing.css */
/* Site-wide equal section spacing (loaded last on every page) */
:root{--sec:72px}
@media(max-width:820px){:root{--sec:64px}}
html body :is(main>section,main>div>section):not(.hero):not(.pg-hero):not(.sx-hero):not(.post-hero):not(.au-stats):not(#_a):not(#_b){padding-top:var(--sec)!important;padding-bottom:var(--sec)!important;margin-top:0!important;margin-bottom:0!important;min-height:0!important}
html body :is(main>section,main>div>section):not(.hero):not(.pg-hero):not(.sx-hero):not(.post-hero):not(.au-stats):not(#_a):not(#_b)>.wrap:not([class*=card]){padding-top:0!important;padding-bottom:0!important}
html body :is(main>section,main>div>section):not(.hero):not(.pg-hero):not(.sx-hero):not(.post-hero):not(.au-stats):not(#_a):not(#_b)>*{margin-top:0!important;margin-bottom:0!important}
html body :is(main>section,main>div>section):not(.hero):not(.pg-hero):not(.sx-hero):not(.post-hero):not(.au-stats):not(#_a):not(#_b)>.wrap>:first-child{margin-top:0!important}
html body :is(main>section,main>div>section):not(.hero):not(.pg-hero):not(.sx-hero):not(.post-hero):not(.au-stats):not(#_a):not(#_b)>.wrap>:last-child{margin-bottom:0!important}
html body main>div:not(#_a){margin:0!important;padding:0!important}
html body main>.au-stats:not(#_a){padding:0!important;margin:-36px 0 0!important}
html body main>.au-stats+section:not(#_a):not(#_b){padding-top:calc(var(--sec) + 12px)!important}
/* table first-cell icon (td::after, absolute at left 22px, 36px wide): reserve room so it never overlaps text */
html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c){padding-left:74px!important;text-indent:0!important}
html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c)::after{top:50%!important;bottom:auto!important;margin-top:-18px!important;transform:none!important}
/* heroes: breathing room under the sticky header */
html body main>section:first-child:not(.hero-video):not(#_a):not(#_b){padding-top:64px!important}
@media(max-width:820px){html body main>section:first-child:not(.hero-video):not(#_a):not(#_b){padding-top:32px!important}}
/* mobile: every H1 full width of its column (homepage hero had a max-width) */
@media(max-width:820px){html body main h1:not(#_a):not(#_b){max-width:none!important;width:auto!important}}
/* stats strip right after a hero: tucked into the hero, not a separate section */
html body main>section.trust:not(#_a):not(#_b):not(#_c){padding-top:0!important;padding-bottom:0!important;margin-top:-72px!important;position:relative;z-index:3}
html body main>section.trust:not(#_a):not(#_b)+section{padding-top:calc(var(--sec) + 8px)!important}
@media(max-width:820px){html body main>section.trust:not(#_a):not(#_b):not(#_c){margin-top:-40px!important}}
/* every table section: light orange card (homepage insurance-card style) */
html body .rx.rx-table:not(#_a):not(#_b){background:linear-gradient(135deg,#EEF6FC 0%,#FFFFFF 45%,#FDEDE4 100%)!important;border-radius:28px!important;padding:40px!important;box-shadow:0 0 0 1px #F3E3D8,0 24px 50px -40px rgba(13,42,68,.4)!important}
@media(max-width:820px){html body .rx.rx-table:not(#_a):not(#_b){padding:24px 16px!important;border-radius:22px!important}}
/* mobile menu: submenu icons in the same soft-orange tiles as the main items */
html body .sheet-group:not(#_a) a:not(.sheet-row)>svg{box-sizing:content-box!important;width:18px!important;height:18px!important;padding:8px!important;flex:0 0 auto;border-radius:30%!important;background:linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%)!important;box-shadow:inset 0 0 0 1px rgba(227,160,138,.35),0 4px 10px rgba(13,42,68,.06)!important;color:#C9715A!important;fill:#C9715A!important}
/* affiliation logos: same boxes, bigger logos */
html body .aff-logo:not(#_a):not(#_b){padding:10px 14px!important}
html body .aff-logo:not(#_a):not(#_b) img{max-height:72px!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain!important}
@media(max-width:820px){html body .aff-logo:not(#_a):not(#_b){padding:10px 12px!important}html body .aff-logo:not(#_a):not(#_b) img{max-height:68px!important}}
/* homepage stat cards: clear gap from the photo/buttons above */
html body main .hm-doc .wrap>.hm-stats:not(#_a):not(#_b):not(#_c):not(#_d){margin-top:64px!important}
@media(max-width:820px){html body main .hm-doc .wrap>.hm-stats:not(#_a):not(#_b):not(#_c):not(#_d){margin-top:40px!important}}
/* "Meet your dentist" photo: rounded photo filling its frame + offset light-orange card (no blob) */
html body .doc-media:not(#_a):not(#_b){position:relative;height:auto!important}
html body .doc-media:not(#_a):not(#_b) .dm-blob,html body .doc-media:not(#_a):not(#_b) .dm-dot{display:none!important}
html body .doc-media:not(#_a):not(#_b):before{content:"";position:absolute;inset:22px -18px -18px 22px;border-radius:30px;background:#FBE3D9;z-index:0}
html body main .doc-media:not(#_a):not(#_b):not(#_c):not(#_d):not(#_e):not(#_f) .dm-frame:not(#_g){position:relative;z-index:1;border-radius:28px!important;overflow:hidden!important;aspect-ratio:4/5!important;height:auto!important;clip-path:none!important;background:#EAF3FB}
html body main .doc-media:not(#_a):not(#_b):not(#_c):not(#_d):not(#_e):not(#_f) .dm-frame img:not(#_g){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 20%!important;border-radius:0!important}
html body .doc-media:not(#_a):not(#_b) .dm-tag{z-index:2}
@media(max-width:820px){html body .doc-media:not(#_a):not(#_b):before{inset:14px -10px -10px 14px}}
/* homepage care accordion: option lists compact 2x2 so tabs stay short */
html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b){display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:14px 0!important;padding:0!important}
html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b)>li{display:flex!important;gap:10px!important;align-items:flex-start!important;padding:12px!important;margin:0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 0 0 1px #E6EDF3!important;min-height:0!important}
html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b)>li strong{display:block;font-size:15px!important;line-height:1.3!important;margin:0 0 2px!important}
html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b)>li span:last-child{font-size:14.5px!important;line-height:1.45!important}
html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b) .hm-opt-ic{flex:0 0 34px!important;width:34px!important;height:34px!important}
html body .hm-care .oa-in:not(#_a)>p{margin:0 0 10px!important}
@media(max-width:640px){html body .hm-care .oa-in .hm-opts:not(#_a):not(#_b){grid-template-columns:1fr!important}}
@media(min-width:981px){html body .hm-care .oa:not(#_a):not(#_b){grid-template-columns:minmax(0,5fr) minmax(0,7fr)!important;gap:48px!important}}
/* tables: last row no longer highlighted, same as the others */
html body table.stack-table tbody tr:last-child td:not(#_a):not(#_b):not(#_c){background:#fff!important;border-color:#E3EDF5!important}
/* logos: let each logo use the full box width */
html body .aff-logo:not(#_a):not(#_b):not(#_c){padding:8px 10px!important}
html body .aff-logo:not(#_a):not(#_b):not(#_c) img{max-height:76px!important;max-width:100%!important;width:auto!important;height:auto!important}
@media(max-width:820px){html body .aff-logo:not(#_a):not(#_b):not(#_c){padding:8px!important}html body .aff-logo:not(#_a):not(#_b):not(#_c) img{max-height:72px!important}}
/* removed language cards: keep grids balanced */
html body .au-two:not(#_a):has(>.au-card:only-child){grid-template-columns:1fr!important}
@media(min-width:1101px){html body .ct-info:not(.ab-info):not(#_a) .ct-cards{grid-template-columns:repeat(3,1fr)!important}}
/* ===== animated two-tone icons in tables + check lists (mega-menu style, orange tile) ===== */
html body .duo.t-ic,html body .duo.l-ic{width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:30%!important;background:linear-gradient(150deg,#fff 0%,#fff 35%,#F6CDBD 100%)!important;box-shadow:inset 0 0 0 1px rgba(227,160,138,.35),0 6px 14px rgba(13,42,68,.07)!important;display:inline-grid!important;place-items:center!important}
html body .duo.t-ic svg,html body .duo.l-ic svg{width:32px!important;height:32px!important}
html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c):not(#_d){padding-left:18px!important}
html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c):not(#_d)::before,html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c):not(#_d)::after{content:none!important;display:none!important}
html body table.stack-table tbody td:first-child:has(.t-ic){vertical-align:middle}
html body table.stack-table tbody td:first-child .t-ic{vertical-align:middle;margin-right:14px}
html body table.stack-table tbody td:first-child .t-name{vertical-align:middle}
@media(min-width:821px){html body table.stack-table tbody td:first-child:has(.t-ic):not(#_a){white-space:normal!important}html body table.stack-table tbody td:first-child:has(.t-ic){display:table-cell}}
html body ul.rx-checks>li:has(>.l-ic):not(#_a){display:flex!important;gap:14px!important;align-items:flex-start!important}
html body ul.rx-checks>li>.l-ic{margin-top:2px}
/* play the icon animation when the row comes into view and on hover */
:is(tr,li).ic-in .di .a-screw,:is(tr,li):hover .di-implant .a-screw{animation:screw .9s var(--ease)}
:is(tr,li).ic-in .di-implant .a-crown,:is(tr,li):hover .di-implant .a-crown{animation:dropin .9s var(--ease)}
:is(tr,li).ic-in .di-allon4 .a-posts g,:is(tr,li):hover .di-allon4 .a-posts g{animation:popup .6s calc(var(--i)*.09s) var(--ease) both}
:is(tr,li).ic-in .di-aligner .a-aligner,:is(tr,li):hover .di-aligner .a-aligner{animation:slip .9s var(--ease)}
:is(tr,li).ic-in .di-braces .wire,:is(tr,li):hover .di-braces .wire{animation:draw2 .9s var(--ease)}
:is(tr,li).ic-in .di-braces .a-brackets rect,:is(tr,li):hover .di-braces .a-brackets rect{animation:popup .5s var(--ease)}
:is(tr,li).ic-in .di .a-spark,:is(tr,li).ic-in .di-cosmetic .a-stars path,:is(tr,li):hover .di .a-spark,:is(tr,li):hover .di-cosmetic .a-stars path{animation:twinkle .9s var(--ease)}
:is(tr,li).ic-in .di-whitening .a-rays,:is(tr,li):hover .di-whitening .a-rays{animation:rays 1s var(--ease)}
:is(tr,li).ic-in .di-whitening .half,:is(tr,li):hover .di-whitening .half{animation:whiten 1s var(--ease) forwards}
:is(tr,li).ic-in .di-family .a-brush,:is(tr,li):hover .di-family .a-brush{animation:scrub .8s ease-in-out 2}
:is(tr,li).ic-in .di-family .bub,:is(tr,li):hover .di-family .bub{animation:bubble 1.2s var(--ease)}
:is(tr,li).ic-in .di-crown .a-cap,:is(tr,li):hover .di-crown .a-cap{animation:capdown .8s var(--ease)}
:is(tr,li).ic-in .di-rootcanal .canal,:is(tr,li):hover .di-rootcanal .canal{animation:draw2 .9s var(--ease)}
:is(tr,li).ic-in .di-laser .beam,:is(tr,li):hover .di-laser .beam{animation:beam .25s linear 6}
:is(tr,li).ic-in .di-emergency .a-badge,:is(tr,li):hover .di-emergency .a-badge{animation:shake .6s var(--ease)}
:is(tr,li).ic-in .di-denture .a-top,:is(tr,li):hover .di-denture .a-top{animation:chomp .7s ease-in-out 2}
:is(tr,li).ic-in .duo.t-ic,:is(tr,li).ic-in .duo.l-ic{animation:shPop .75s cubic-bezier(.22,1,.36,1) both}
@media(prefers-reduced-motion:reduce){:is(tr,li) .di *,.duo.t-ic,.duo.l-ic{animation:none!important}}
/* new icon motions */
.di :is(.a-fan,.a-tilt,.a-stack,.a-pop,.a-slide,.a-blink,.a-beat,.a-drop){transform-box:fill-box;transform-origin:center}
.di .a-fan{transform-origin:50% 100%}
.di .a-draw{stroke-dasharray:1;stroke-dashoffset:0}
@keyframes icPop{0%{transform:scale(.55)}60%{transform:scale(1.14)}100%{transform:scale(1)}}
@keyframes icTilt{0%,100%{transform:rotate(0)}35%{transform:rotate(-14deg)}70%{transform:rotate(9deg)}}
@keyframes icStack{0%{transform:translateY(-9px);opacity:.2}100%{transform:none;opacity:1}}
@keyframes icFan{0%{transform:rotate(-16deg) scale(.9)}60%{transform:rotate(6deg)}100%{transform:none}}
@keyframes icDrop{0%{transform:translateY(-12px);opacity:0}70%{transform:translateY(2px);opacity:1}100%{transform:none}}
@keyframes icBlink{0%,100%{transform:scaleY(1)}45%{transform:scaleY(.1)}}
@keyframes icBeat{0%,100%{transform:scale(1)}30%{transform:scale(1.15)}60%{transform:scale(.96)}}
@keyframes icSlide{0%{transform:translateY(-10px)}70%{transform:translateY(2px)}100%{transform:none}}
@keyframes icDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
:is(tr,li):is(.ic-in,:hover) .di .a-pop{animation:icPop .8s cubic-bezier(.22,1,.36,1) both}
:is(tr,li):is(.ic-in,:hover) .di .a-tilt{animation:icTilt 1s ease-in-out}
:is(tr,li):is(.ic-in,:hover) .di .a-stack>*{animation:icStack .6s cubic-bezier(.22,1,.36,1) both}
:is(tr,li):is(.ic-in,:hover) .di .a-stack>:nth-child(2){animation-delay:.12s}
:is(tr,li):is(.ic-in,:hover) .di .a-stack>:nth-child(3){animation-delay:.24s}
:is(tr,li):is(.ic-in,:hover) .di .a-fan{animation:icFan .9s cubic-bezier(.22,1,.36,1)}
:is(tr,li):is(.ic-in,:hover) .di .a-drop{animation:icDrop .8s .2s cubic-bezier(.22,1,.36,1) both}
:is(tr,li):is(.ic-in,:hover) .di .a-blink{animation:icBlink .6s .3s ease-in-out}
:is(tr,li):is(.ic-in,:hover) .di .a-beat{animation:icBeat .9s ease-in-out 2}
:is(tr,li):is(.ic-in,:hover) .di .a-slide{animation:icSlide .8s cubic-bezier(.22,1,.36,1)}
:is(tr,li):is(.ic-in,:hover) .di .a-draw{animation:icDraw 1s .2s ease both}
@media(prefers-reduced-motion:reduce){.di *{animation:none!important}}
html body table.stack-table tbody td:first-child .t-name:not(#_a){margin-left:16px!important;display:inline-block}
html body table.stack-table tbody td:first-child .t-ic:not(#_a){margin-right:0!important}
html body table.stack-table .t-row:not(#_a){display:inline-flex!important;align-items:center!important;gap:14px!important;flex-wrap:nowrap!important;white-space:normal!important}
html body table.stack-table .t-row .t-name:not(#_a):not(#_b){margin:0!important;display:block!important}
html body table.stack-table .t-row .t-ic{flex:0 0 44px!important}
/* numbered checklist (1-5): equal badges everywhere, number above text on mobile, entrance animation */
html body .hm-checklist:not(#_a) li .ck-n{flex:0 0 56px!important;width:56px!important;height:56px!important;min-width:56px!important;display:inline-grid!important;place-items:center!important;border-radius:18px!important;font-size:22px!important;font-weight:700!important;transform:none!important;rotate:0deg!important}
@media(max-width:820px){html body .hm-checklist:not(#_a) li{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}
html body .hm-checklist:not(#_a) li .ck-n{flex:0 0 auto!important;width:52px!important;height:52px!important;min-width:52px!important}
html body .hm-checklist:not(#_a) li .ck-tick{position:absolute!important;top:18px;right:18px}
html body .hm-checklist:not(#_a) li{position:relative!important}}
@keyframes ckIn{0%{transform:scale(.4) rotate(-20deg);opacity:0}60%{transform:scale(1.15) rotate(6deg);opacity:1}100%{transform:none;opacity:1}}
html body .hm-checklist li.ic-in .ck-n{animation:ckIn .8s cubic-bezier(.22,1,.36,1) both}
@media(prefers-reduced-motion:reduce){html body .hm-checklist li .ck-n{animation:none!important}}
@media(max-width:820px){html body main ol.hm-checklist:not(#_a):not(#_b):not(#_c)>li:not(#_d){display:grid!important;grid-template-columns:1fr!important;grid-auto-flow:row!important;justify-items:start!important;gap:12px!important;padding-right:56px!important}
html body main ol.hm-checklist:not(#_a):not(#_b):not(#_c)>li:not(#_d)>.ck-n{grid-column:1!important;grid-row:1!important}
html body main ol.hm-checklist:not(#_a):not(#_b):not(#_c)>li:not(#_d)>.ck-body{grid-column:1!important;grid-row:2!important}}

/* w2-list odd last item spans full row */
@media(min-width:821px){html body .rx-why2 .w2-list li:last-child:nth-child(odd):not(#_a){grid-column:1/-1}}

/* service section video */
html body .ck-wrap>.ck-photo.ck-video:not(#_a):not(#_b):not(#_c){align-self:center!important;aspect-ratio:4/3!important;height:auto!important;min-height:0!important;border-radius:28px!important;overflow:hidden!important;background:#EAF3FA;box-shadow:0 24px 50px -30px rgba(13,42,68,.45)}
html body .ck-photo.ck-video video:not(#_a):not(#_b):not(#_c){position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit}
html body ul.rx-checks .lbl-sep:not(#_a){display:none}
/* video section layout: video beside intro, parts as cards below */
html body .ck-wrap:has(>.ck-video):not(#_a):not(#_b):not(#_c){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:32px 48px!important;align-items:center!important}
html body .ck-wrap:has(>.ck-video)>.ck-body:not(#_a):not(#_b):not(#_c){display:contents!important}
html body .ck-wrap>.ck-photo.ck-video:not(#_a):not(#_b):not(#_c):not(#_d){grid-column:1!important;grid-row:1!important;align-self:center!important}
html body .ck-wrap:has(>.ck-video) .rx-stack-head:not(#_a):not(#_b):not(#_c){grid-column:2!important;grid-row:1!important;margin:0!important;align-self:center}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:not(#_a):not(#_b):not(#_c){grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;margin:0!important;padding:0!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks li:not(#_a):not(#_b):not(#_c){margin:0!important;padding:22px!important;border:1px solid #E3EEF7!important;border-radius:20px!important;background:#fff!important;box-shadow:0 18px 36px -28px rgba(13,42,68,.35)}
html body .ck-wrap:has(>.ck-video) .ck-after:not(#_a):not(#_b):not(#_c){grid-column:1/-1!important;margin:0!important}
@media(max-width:899px){
html body .ck-wrap:has(>.ck-video):not(#_a):not(#_b):not(#_c){grid-template-columns:1fr!important;gap:22px!important}
html body .ck-wrap>.ck-photo.ck-video:not(#_a):not(#_b):not(#_c):not(#_d),html body .ck-wrap:has(>.ck-video) .rx-stack-head:not(#_a):not(#_b):not(#_c){grid-column:1!important;grid-row:auto!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:not(#_a):not(#_b):not(#_c){grid-template-columns:1fr!important;gap:12px!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks li:not(#_a):not(#_b):not(#_c){padding:16px 18px!important}
}
/* rx-media video frame */
html body .rx-media>.rx-img.rx-video:not(#_a):not(#_b):not(#_c){align-self:center!important;aspect-ratio:4/3!important;height:auto!important;min-height:0!important;border-radius:28px!important;overflow:hidden!important;background:#EAF3FA;box-shadow:0 24px 50px -30px rgba(13,42,68,.45)}
html body .rx-img.rx-video video:not(#_a):not(#_b):not(#_c){position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit}
/* balanced card rows under video sections */
@media(min-width:900px){
html body .ck-wrap:has(>.ck-video) ul.rx-checks:has(>li:nth-child(4):last-child):not(#_a):not(#_b):not(#_c){grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:has(>li:nth-child(5):last-child):not(#_a):not(#_b):not(#_c){grid-template-columns:repeat(6,minmax(0,1fr))!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:has(>li:nth-child(5):last-child)>li:not(#_a):not(#_b):not(#_c){grid-column:span 2!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:has(>li:nth-child(5):last-child)>li:nth-child(n+4):not(#_a):not(#_b):not(#_c):not(#_d){grid-column:span 3!important}
html body .ck-wrap:has(>.ck-video) ul.rx-checks:has(>li:nth-child(2):last-child):not(#_a):not(#_b):not(#_c){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* table header: solid navy background on all stack tables */
html body table.stack-table thead th:not(#_a):not(#_b):not(#_c){background:#0D2A44!important;color:#fff!important;padding:16px 24px!important}
html body table.stack-table thead th:first-child:not(#_a):not(#_b):not(#_c){border-radius:18px 0 0 18px!important}
html body table.stack-table thead th:last-child:not(#_a):not(#_b):not(#_c){border-radius:0 18px 18px 0!important}
/* mobile table cards: icon starts at the same left edge as the text */
@media(max-width:767px){html body table.stack-table tbody td:first-child:not(#_a):not(#_b):not(#_c):not(#_d):not(#_e){padding-left:0!important}}
/* before/after cards: no empty strip, zoom button floats on the photo */
html body .ba:not(#_a):not(#_b){position:relative!important;border:0!important;box-shadow:0 18px 40px -22px rgba(13,42,68,.38)!important;border-radius:24px!important}
html body .ba figcaption:not(#_a):not(#_b){position:absolute!important;right:12px!important;bottom:12px!important;padding:0!important;z-index:4!important;pointer-events:none}
html body .ba .ba-zoom:not(#_a):not(#_b){pointer-events:auto;width:42px!important;height:42px!important;border-radius:14px!important;background:rgba(255,255,255,.94)!important;color:#0D2A44!important;box-shadow:0 6px 16px rgba(13,42,68,.22);backdrop-filter:blur(6px);transition:transform .2s,background .2s,color .2s}
html body .ba .ba-zoom:not(#_a):not(#_b):hover{background:#0D2A44!important;color:#fff!important;transform:scale(1.06)}
/* menu-icons.css */
/* Site-wide homepage-style icons + mobile menu entrance animation */
.sheet-meta{display:none!important}
.di{overflow:visible}
.di .fw{fill:#fff;stroke:#0D2A44;stroke-width:2.4;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.di .fs{fill:#bfe2f6;stroke:#0D2A44;stroke-width:2.4;stroke-linejoin:round}
.di .fg{fill:#ffc9b9;stroke:#0D2A44;stroke-width:2.4;stroke-linejoin:round}
.di .ol{fill:none;stroke:#0D2A44;stroke-width:2.4;stroke-linejoin:round}
.di .ln{fill:none;stroke:#0D2A44;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.di .ln-ac,.di .shine{fill:none;stroke:var(--sky,#36A6DD);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.di .wire{fill:none;stroke:var(--sky,#36A6DD);stroke-width:2.6;stroke-linecap:round}
.di .ac,.di .badge{fill:#E3A08A}
.di .half{fill:#e8f5fd}
.di .ray{fill:none;stroke:#ffb020;stroke-width:3;stroke-linecap:round}
.di .br{fill:#bfe2f6;stroke:#0D2A44;stroke-width:2.2}
.di .pulp{fill:#ffc9b9;stroke:none}
.di .canal,.di .crack{fill:none;stroke:#E3A08A;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.di .beam{stroke:#E3A08A;stroke-width:3;stroke-linecap:round;stroke-dasharray:3 3}
.di .ring{fill:none;stroke:#E3A08A;stroke-width:2;opacity:.5}
.di .plus{stroke:#fff;stroke-width:3.4;stroke-linecap:round}
.di .bub{fill:#e2f1fb;stroke:var(--sky,#36A6DD);stroke-width:2}
.di .zz{fill:none;stroke:var(--blue,#1570b0);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.di .dr{stroke-dasharray:1;stroke-dashoffset:0}
.di [class*=a-],.di .ac,.di .bub,.di .zz,.di .ring,.di .badge,.di .br{transform-box:fill-box;transform-origin:center}
/* soft white-to-coral icon tiles */
.duo{background:linear-gradient(150deg,#fff,#FDE7DC);box-shadow:inset 0 0 0 1px rgba(227,160,138,.35),0 8px 18px -8px rgba(13,42,68,.18)}
/* entrance: rows rise in one by one, icon tiles pop */
@keyframes shRow{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes shPop{0%{opacity:0;transform:scale(.55) rotate(-10deg)}60%{opacity:1;transform:scale(1.08) rotate(2deg)}100%{opacity:1;transform:none}}
.sheet[open] .sheet-list>li{animation:shRow .6s cubic-bezier(.22,1,.36,1) both}
.sheet[open] .sheet-list>li .duo{animation:shPop .75s cubic-bezier(.22,1,.36,1) both}
.sheet[open] .sheet-cta{animation:shRow .6s .5s cubic-bezier(.22,1,.36,1) both}
.sheet[open] .sheet-list>li:nth-child(1),.sheet[open] .sheet-list>li:nth-child(1) .duo{animation-delay:.06s}
.sheet[open] .sheet-list>li:nth-child(2),.sheet[open] .sheet-list>li:nth-child(2) .duo{animation-delay:.12s}
.sheet[open] .sheet-list>li:nth-child(3),.sheet[open] .sheet-list>li:nth-child(3) .duo{animation-delay:.18s}
.sheet[open] .sheet-list>li:nth-child(4),.sheet[open] .sheet-list>li:nth-child(4) .duo{animation-delay:.24s}
.sheet[open] .sheet-list>li:nth-child(5),.sheet[open] .sheet-list>li:nth-child(5) .duo{animation-delay:.30s}
.sheet[open] .sheet-list>li:nth-child(6),.sheet[open] .sheet-list>li:nth-child(6) .duo{animation-delay:.36s}
.sheet[open] .sheet-list>li:nth-child(7),.sheet[open] .sheet-list>li:nth-child(7) .duo{animation-delay:.42s}
@media(prefers-reduced-motion:reduce){.sheet[open] .sheet-list>li,.sheet[open] .sheet-list>li .duo,.sheet[open] .sheet-cta{animation:none!important}}

/* distinct menu icons */
.di-home{animation:lp-bob 3.2s ease-in-out infinite}
.di-home .ac{animation:lp-twinkle 2.4s ease-in-out infinite}
.di-services rect{transform-box:fill-box;transform-origin:center;animation:lp-pop 3.6s ease-in-out infinite}
.di-services rect:nth-child(2){animation-delay:.25s}
.di-services rect:nth-child(3){animation-delay:.5s}
.di-services rect:nth-child(4){animation-delay:.75s}

/* Mobile: image always first, then text (all image + text sections) */
@media(max-width:900px){
html body :is(.rx-media>.rx-img,.rx-bond>.rx-img,.rx-why>.dr-why-photo,.ck-wrap>.ck-photo,.team-zz .ck-wrap .ck-photo,.tp-intro-grid>.tp-intro-photo,.doc-grid>.doc-media,.hm-doc-grid>.hm-doc-media,.ab-grid>.ab-photo,.ab-pl>.ab-pl-pic):not(#_a):not(#_b){order:-1!important}
html body :is(.tp-intro-grid,.rx-why,.rx-bond,.hm-doc-grid,.doc-grid,.team-zz .ck-wrap){display:grid!important;grid-template-columns:1fr!important}
}

/* More padding inside all boxes + roomy text frame (all pages) */
html body :is(.hm-svc-card,.rev-card,.trust-card,.opt-card,.np-card,.rx-why-rate,.rel-card,.hm-rev-score,.stat,.np-facts):not(#_a):not(#_b){padding:30px 28px!important}
html body :is(.ct-card,.author-card,.wz.is-wizard):not(#_a):not(#_b){padding:34px 30px!important}
html body .rich-sec .author-card:not(#_a):not(#_b){gap:34px}
html body main>section.txt-frame:not(#_a):not(#_b):not(#_c):not(#_d)>.wrap:not(#_e):not([class*=card]){padding:clamp(30px,3.5vw,44px) clamp(24px,4vw,56px)!important}
html body .sx-answer-in:not(#_a):not(#_b):not(#_c){padding:clamp(30px,3.5vw,44px) clamp(24px,4vw,56px)!important}
@media(max-width:640px){
html body :is(.hm-svc-card,.rev-card,.trust-card,.opt-card,.np-card,.rx-why-rate,.rel-card,.hm-rev-score,.stat,.np-facts,.ct-card,.author-card,.wz.is-wizard):not(#_a):not(#_b){padding:24px 20px!important}
html body main>section.txt-frame:not(#_a):not(#_b):not(#_c):not(#_d)>.wrap:not(#_e):not([class*=card]),html body .sx-answer-in:not(#_a):not(#_b):not(#_c){padding:26px 20px!important}
}

/* text frame: same width as all other sections */
html body main>section.txt-frame:not(#_a):not(#_b):not(#_c):not(#_d)>.wrap:not(#_e){max-width:var(--max,1200px)!important;width:min(100% - 2*var(--gutter,20px),var(--max,1200px))!important;margin-inline:auto!important}
/* mobile: before/after photos stacked, no carousel */
@media(max-width:639px){
html body .ba-grid:not(#_a):not(#_b){display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;scroll-snap-type:none!important;margin:0!important;padding:0!important;gap:20px!important}
html body .ba-grid:not(#_a)>li{flex:none!important;scroll-snap-align:none}
}

/* New patients: photos inside cards */
.np-photo{margin:0 0 22px;border-radius:22px;overflow:hidden;box-shadow:0 18px 40px -26px rgba(13,42,68,.45)}
.np-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

/* Author box (blog posts): clean card, big avatar */
html body .author-box:not(#_a):not(#_b){position:relative;overflow:hidden;display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;gap:8px 24px!important;align-items:start;padding:30px 30px!important;border-radius:28px!important;background:linear-gradient(135deg,#EAF5FC,#fff 60%,#FDF0EA)!important;border:1px solid #DCEBF5!important;box-shadow:0 18px 40px -28px rgba(13,42,68,.4)!important}
html body .author-box:not(#_a)::before{content:"";position:absolute;left:0;top:26px;bottom:26px;width:5px;border-radius:0 6px 6px 0;background:#E3A08A}
html body .author-box .ab-pic{width:96px;height:96px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px #fff,0 0 0 6px #F3C2AF}
html body .author-box .ab-pic img{width:100%;height:100%;object-fit:cover;object-position:center 15%;border-radius:50%;display:block}
html body .author-box .ab-name{font-size:21px;margin:2px 0 8px!important}
html body .author-box .ab-name a{text-decoration:none;color:#0D2A44;background:linear-gradient(#E3A08A,#E3A08A) 0 100%/100% 2px no-repeat;padding-bottom:2px}
@media(max-width:640px){
html body .author-box:not(#_a):not(#_b){grid-template-columns:1fr!important;justify-items:start;gap:14px!important;padding:28px 24px 28px 28px!important}
html body .author-box .ab-pic{width:88px;height:88px}
html body .author-box .ab-name{font-size:22px}
}

/* Blog post on mobile: calmer, framed */
@media(max-width:820px){
html body .post-article:not(#_a) img{border-radius:22px;box-shadow:0 18px 40px -26px rgba(13,42,68,.4)}
html body .post-article:not(#_a) h2{margin:44px 0 14px!important}
html body .key-takeaways:not(#_a):not(#_b){padding:28px 24px!important;border-radius:26px!important;background:linear-gradient(135deg,#EAF5FC,#fff 60%,#FDF0EA)!important;border:1px solid #DCEBF5!important;border-left:5px solid #E3A08A!important;box-shadow:0 18px 40px -28px rgba(13,42,68,.35)!important}
html body .bl-w:not(#_a):not(#_b){padding:26px 24px!important;border-radius:26px!important}
}

/* FAQ on mobile: topic chips wrap in a grid, roomier questions */
@media(max-width:820px){
html body .faq-hero:not(#_a) .faq-cats{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;gap:10px!important}
html body .faq-hero:not(#_a) .faq-cats button{flex:1 1 calc(50% - 10px)!important;justify-content:center;min-height:48px;white-space:normal!important;text-align:center;line-height:1.25}
html body .faq-hero:not(#_a) .faq-cats button:first-child{flex-basis:100%!important}
html body .faq-hub:not(#_a) .faq-group{padding:28px 20px!important;border-radius:28px!important}
html body .faq-hub:not(#_a) .faq-list{padding:4px 20px!important;border-radius:22px!important}
html body .faq-hub:not(#_a) .faq-item summary{padding:22px 0!important;gap:16px}
html body .faq-hub:not(#_a) .faq-q{font-size:17px!important;line-height:1.4!important;font-weight:600!important}
html body .faq-hub:not(#_a) .faq-a{padding:0 0 22px!important}
html body .faq-hub:not(#_a) .faq-gh{margin-bottom:20px!important}
html body .faq-hub:not(#_a) .wrap{gap:24px!important}
}

/* New patients: steps as image + text rows, What to bring without checkboxes */
html body .np-rx .np-rx-btn{margin:22px 0 0!important}
html body .np-bring:not(#_a):not(#_b){padding-top:24px!important}
html body .np-bring .np-card{cursor:default}
html body .np-rx .btn-blue:not(#_a):not(#_b){color:#fff!important}
html body .np-rx .btn-ghost:not(#_a):not(#_b){color:#1570b0!important}

/* New patients: benefits section = title + text left, icon list right */
@media(min-width:900px){
html body .np-instips-card:not(#_a):not(#_b){display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:56px;row-gap:24px;align-items:center}
html body .np-instips-card:not(#_a)>.np-instips-head{grid-column:1;grid-row:1}
html body .np-instips-card:not(#_a)>.np-noplan{grid-column:1;grid-row:2;margin:0}
html body .np-instips-card:not(#_a)>.np-q{grid-column:2;grid-row:1/span 2}
}
html body .np-instips-card .np-q{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0;padding:0;list-style:none}
html body .np-instips-card .np-q>li{display:flex!important;gap:18px;align-items:flex-start;padding:20px 0!important;background:none!important;box-shadow:none!important;border-radius:0!important;border:0!important;border-top:1px solid #DCE9F3!important}
html body .np-instips-card .np-q>li:first-child{border-top:0!important;padding-top:0!important}
html body .np-instips-card .np-q>li:last-child{padding-bottom:0!important}
@media(max-width:899px){html body .np-instips-card .np-q{margin-top:24px}}

/* Mobile: hero image first, then content */
@media(max-width:959px){
html body .hero-grid:not(#_a):not(#_b){display:grid!important;grid-template-columns:1fr!important}
html body .hero-grid:not(#_a):not(#_b)>.hero-media{order:-1!important;margin:0 0 8px!important}
}
@media(max-width:979px){html body .np-hero-grid:not(#_a):not(#_b)>.np-hero-media{order:-1!important}}

/* FAQ: smaller group headings, a little more space */
html body .faq-hub h2.faq-gh:not(#_a):not(#_b){font-size:28px!important;line-height:1.2!important;margin-bottom:24px!important}
html body .faq-hub:not(#_a) .faq-item summary{padding-top:22px!important;padding-bottom:22px!important}
@media(max-width:820px){
html body .faq-hub h2.faq-gh:not(#_a):not(#_b){font-size:22px!important;gap:14px!important;margin-bottom:24px!important}
html body .faq-hub:not(#_a) .wrap{gap:32px!important}
html body .faq-hub:not(#_a) .faq-group{padding:32px 22px!important}
html body .faq-hub:not(#_a) .faq-item summary{padding-top:24px!important;padding-bottom:24px!important}
html body .faq-hub:not(#_a) [data-faq-more]{margin-top:26px!important}
}

/* Even rhythm: same gap between every section heading and its content, no stacked extra gaps */
html body main :is(.sec-head,.hm-aff-head,.hm-rev-head,.hm-vt-head,.sec-row,.hm-svc-head,.hm-care-head,.hm-team-head,.hm-why-head,.ab-oa-head):not(#_a):not(#_b):not(#_c){margin-bottom:44px!important}
html body main .hm-fv .fv-steps:not(#_a):not(#_b):not(#_c){margin-top:0!important}
html body main .rich-sec .author-card:not(#_a):not(#_b):not(#_c){margin-bottom:0!important}
html body main .rich-sec .author-card+.rx:not(#_a):not(#_b):not(#_c){margin-top:44px!important}
@media(max-width:820px){
html body main :is(.sec-head,.hm-aff-head,.hm-rev-head,.hm-vt-head,.sec-row,.hm-svc-head,.hm-care-head,.hm-team-head,.hm-why-head,.ab-oa-head):not(#_a):not(#_b):not(#_c){margin-bottom:32px!important}
html body main .rich-sec .author-card+.rx:not(#_a):not(#_b):not(#_c){margin-top:32px!important}
}

/* Why families/patients choose: one photo + clean 2-column icon list, no CTA row */
html body .dr-why .rx-why:not(#_a):not(#_b):not(#_c){display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:64px!important;align-items:stretch!important}
html body .dr-why .dr-why-photo:not(#_a):not(#_b){position:relative;margin:0!important;min-height:440px;overflow:visible!important;background:none!important;display:block!important;box-shadow:none!important}
html body .dr-why .dr-why-photo:not(#_a)::before{content:"";position:absolute;inset:22px -18px -18px 22px;border-radius:30px;background:#FBE3D9;z-index:0}
html body .dr-why .dr-why-photo img:not(#_a):not(#_b):not(#_c){position:absolute!important;inset:0;z-index:1;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;border-radius:28px;box-shadow:0 24px 56px -28px rgba(13,42,68,.4)}
html body .dr-why .dr-why-photo .dr-why-g2:not(#_a):not(#_b):not(#_c){display:none!important}
html body .dr-why .rx-why-list:not(#_a):not(#_b):not(#_c){display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 36px!important;margin:24px 0 0!important;padding:0;list-style:none}
html body .dr-why .rx-why-list>li:not(#_a):not(#_b):not(#_c){flex:none!important;display:flex!important;gap:16px;align-items:flex-start;padding:20px 0!important;margin:0!important;background:none!important;border:0!important;border-top:1px solid #E1EBF3!important;border-radius:0!important;box-shadow:none!important;min-height:0!important}
html body .dr-why .rx-why-list>li:nth-child(-n+2){border-top:0!important;padding-top:0!important}
html body .dr-why .rx-why-list>li:last-child:nth-child(odd){grid-column:1/-1}
html body .dr-why .rx-why-list>li>svg:not(#_a):not(#_b){flex:0 0 44px!important;width:44px!important;height:44px!important;padding:10px;border-radius:14px;background:linear-gradient(135deg,#fff,#FDE7DC)!important;color:#C9715A!important;fill:#C9715A!important;margin:0!important;box-shadow:inset 0 0 0 1px rgba(227,160,138,.3)}
html body .dr-why .rx-why-list strong{color:#0D2A44}
html body .dr-why .rx-copy>p:not(#_a):not(#_b){margin-top:24px!important}
@media(max-width:959px){
html body .dr-why .rx-why:not(#_a):not(#_b):not(#_c){grid-template-columns:1fr!important;gap:36px!important}
html body .dr-why .dr-why-photo:not(#_a):not(#_b){min-height:0;aspect-ratio:4/3}
html body .dr-why .rx-why-list:not(#_a):not(#_b):not(#_c){grid-template-columns:1fr!important}
html body .dr-why .rx-why-list>li:nth-child(2){border-top:1px solid #E1EBF3!important;padding-top:20px!important}
}

/* Remove extra CTA buttons (keep hero, closing CTA band and the booking form) */
.rx-why-cta{display:none!important}
html body .faq-sec .btn-blue[href^="tel"]:not(#_a){display:none!important}

/* Image beside text = same height as the text (desktop) */
@media(min-width:960px){
html body .rx-media:not(#_a):not(#_b):not(#_c):not(.rx-cta){align-items:stretch!important}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img{display:flex;height:auto}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img img{width:100%!important;height:100%!important;min-height:300px;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-copy{align-self:center}
}

/* Family dentistry: soft orange background on the comparison section */
html body .rx-band.fd-peach:not(#_a):not(#_b):not(#_c){background:#FFF3EC!important}

/* Trust stats box: tighter top/bottom space */
html body .trust-card:not(#_a):not(#_b){padding:20px 24px 18px!important}
html body .trust-card .stat:not(#_a):not(#_b){padding:20px 22px!important}
html body .trust-card .stats+*:not(#_a):not(#_b){margin-top:14px!important;padding-top:14px!important}
/* Why section: photo same height as text */
@media(min-width:960px){html body .dr-why .rx-why>.dr-why-photo:not(#_a):not(#_b):not(#_c){align-self:stretch!important;height:auto!important;min-height:420px}}
@media(min-width:960px){
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img{position:relative;display:block;min-height:320px;height:auto}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img img{position:absolute!important;inset:0;min-height:0}
}

/* equal image/text height: beat older min-height rules */
@media(min-width:960px){
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img{position:relative!important;display:block!important;min-height:240px!important;height:auto!important}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
}

/* Option cards: 5 boxes = 3 on top (33.3%) + 2 below (50%), full width */
@media(min-width:960px){
html body section.opt-sec .opt-grid:has(>:nth-child(5):last-child):not(#_a):not(#_b){display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:18px!important}
html body section.opt-sec .opt-grid:has(>:nth-child(5):last-child):not(#_a):not(#_b)>*{flex:none!important;max-width:none!important;grid-column:span 2!important;width:auto!important}
html body section.opt-sec .opt-grid:has(>:nth-child(5):last-child):not(#_a):not(#_b)>:nth-child(n+4){grid-column:span 3!important}
}
@media(min-width:960px){
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-img{align-self:stretch!important;margin:0!important}
html body .rx-media:not(#_a):not(#_b):not(#_c)>.rx-copy{align-self:stretch!important;display:flex!important;flex-direction:column;justify-content:center}
}

/* UNIVERSAL: image always above text on mobile/tablet, every image+text block */
@media(max-width:959px){
html body .rx:not(#_a):not(#_b),html body .rx-why:not(#_a):not(#_b),html body .dr-why .rx-why:not(#_a):not(#_b){display:grid!important;grid-template-columns:1fr!important}
html body .rx>:is(figure,.rx-img,.rx-media,.dr-why-photo,.rx-photo):not(#_a):not(#_b),
html body .rx-why>:is(figure,.dr-why-photo):not(#_a):not(#_b),
html body .dr-why .rx-why>.dr-why-photo:not(#_a):not(#_b){order:-1!important;grid-column:1!important;grid-row:auto!important}
html body .rx>.rx-copy:not(#_a):not(#_b),html body .rx-why>.rx-copy:not(#_a):not(#_b){order:1!important;grid-column:1!important}
}

/* mobile: image blocks full width of the content column */
@media(max-width:959px){
html body :is(.rx>figure,.rx>.rx-img,.rx-media>.rx-img,.rx-why>.dr-why-photo,.dr-why .rx-why>.dr-why-photo):not(#_a):not(#_b){width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;justify-self:stretch!important}
html body :is(.rx-why>.dr-why-photo,.dr-why-photo) img:not(#_a):not(#_b){width:100%!important;max-width:100%!important}
}

/* mobile: kill zz-l/zz-r two-column grid, single full-width column, image first */
@media(max-width:959px){
html body :is(.rx-media,.ck-wrap,.rx-why,.dr-why .rx-why,.rx).zz-l:not(#_a):not(#_b):not(#_c):not(#_d),
html body :is(.rx-media,.ck-wrap,.rx-why,.dr-why .rx-why,.rx).zz-r:not(#_a):not(#_b):not(#_c):not(#_d){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:28px!important;width:100%!important;max-width:100%!important}
html body .zz-r>:is(.rx-img,.ck-photo,.dr-why-photo,figure):not(#_a):not(#_b):not(#_c):not(#_d),
html body .zz-l>:is(.rx-img,.ck-photo,.dr-why-photo,figure):not(#_a):not(#_b):not(#_c):not(#_d){order:-1!important;width:100%!important;max-width:100%!important}
html body .zz-r>:not(.rx-img):not(.ck-photo):not(.dr-why-photo):not(figure):not(#_a):not(#_b):not(#_c),
html body .zz-l>:not(.rx-img):not(.ck-photo):not(.dr-why-photo):not(figure):not(#_a):not(#_b):not(#_c){order:1!important;width:100%!important;max-width:100%!important}
}

/* All-on-4 steps: title above, 5 cards in a row (homepage checklist style) */
@media(min-width:960px){
html body .ao4-steps .hm-choose-grid:not(#_a):not(#_b){display:block!important}
html body .ao4-steps .hm-choose-copy:not(#_a):not(#_b){max-width:760px;margin:0 auto 36px!important;text-align:center}
html body .ao4-steps .hm-checklist:not(#_a):not(#_b){display:grid!important;grid-template-columns:repeat(var(--ao4n,5),minmax(0,1fr))!important;gap:18px!important;width:100%!important}
html body .ao4-steps .hm-checklist>li:not(#_a):not(#_b){grid-column:auto!important;width:auto!important;max-width:none!important;margin:0!important}
}

/* NO CROPPING on mobile/tablet: show each photo at its full natural size */
@media(max-width:959px){
html body :is(.rx-media>.rx-img,.rx-img,.ck-photo,.dr-why-photo,.hm-doc-media,.doc-media,.tp-intro-photo,.ab-photo,.ab-pl-pic,.np-hero-media,.hero-media):not(#_a):not(#_b):not(#_c){aspect-ratio:auto!important;height:auto!important;min-height:0!important;max-height:none!important;position:relative!important}
html body :is(.rx-media>.rx-img,.rx-img,.ck-photo,.dr-why-photo,.hm-doc-media,.doc-media,.tp-intro-photo,.ab-photo,.ab-pl-pic,.np-hero-media,.hero-media) img:not(#_a):not(#_b):not(#_c){position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;display:block}
}
/* desktop: keep equal heights but bias crop toward faces (upper part) */
@media(min-width:960px){
html body :is(.rx-media>.rx-img,.rx-img,.ck-photo,.dr-why-photo) img:not(#_a):not(#_b):not(#_c){object-position:center 22%!important}
}

/* All-on-4 steps: number badge on top, text full width below */
html body .ao4-steps .hm-checklist>li:not(#_a):not(#_b){display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;position:relative!important}
html body .ao4-steps .hm-checklist>li .ck-body:not(#_a):not(#_b){width:100%!important;flex:none!important}
html body .ao4-steps .hm-checklist>li .ck-tick:not(#_a):not(#_b){position:absolute!important;top:22px;right:22px;display:block!important}
html body .ao4-steps .hm-checklist:has(>li:nth-child(4):last-child){--ao4n:4}
html body .ao4-steps .hm-checklist:has(>li:nth-child(6):last-child){--ao4n:3}
/* Dr. Poles name formula: name on line 1, credentials on line 2 */
.dr-name,.dr-cred{display:block}
.dr-name.in,.dr-cred.in{display:inline}
.dr-cred{font-weight:inherit;letter-spacing:0}
/* before/after: no caption text, zoom button only */
html body .ba figcaption:not(#_a){justify-content:flex-end!important;padding:10px 12px!important}
/* blog.css */
.bl-sec{padding:72px 0}
.bl-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}
.bl-intro{font-size:18px;color:#33485C;margin:0 0 24px}
.bl-status{font-weight:700;color:#0F2A44;margin:0 0 18px}
.bl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.bl-card{background:#fff;border:1px solid #EDE3DC;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 50px -40px rgba(13,42,68,.5);transition:transform .25s,box-shadow .25s}
.bl-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -36px rgba(13,42,68,.55)}
.bl-pic{display:block;aspect-ratio:16/10;overflow:hidden;background:#DCE8F7}
.bl-pic img{width:100%;height:100%;object-fit:cover;display:block}
.bl-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.bl-cat{align-self:flex-start;font-size:13px;font-weight:700;color:#C9694B;background:#FDEDE4;border-radius:999px;padding:5px 12px;text-decoration:none}
.bl-body h3{font-size:21px;line-height:1.3;margin:4px 0 0}
.bl-body h3 a{color:#0F2A44;text-decoration:none}
.bl-body h3 a:hover{color:#1570b0}
.bl-body>p{margin:0;color:#4A5C6E;font-size:15.5px;line-height:1.6}
.bl-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px;color:#6B7C8C!important}
.bl-meta a{color:#1570b0;font-weight:600;text-decoration:none}
.bl-more{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:6px;font-weight:700;color:#0F2A44;text-decoration:none}
.bl-more:hover{color:#C9694B}
.bl-side{display:flex;flex-direction:column;gap:18px;position:sticky;top:110px}
.bl-w{background:#fff;border:1px solid #EDE3DC;border-radius:20px;padding:20px 22px;box-shadow:0 20px 40px -36px rgba(13,42,68,.45)}
.bl-w h2{font-size:18px!important;margin:0 0 12px;color:#0F2A44}
.bl-search{display:flex;gap:8px;padding:10px}
.bl-search input{flex:1;min-width:0;border:1px solid #DCE3EA;border-radius:12px;padding:12px 14px;font:inherit;font-size:15px}
.bl-search input:focus{outline:2px solid #1570b0;outline-offset:1px}
.bl-search button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:12px;background:#1570b0;color:#fff;font-weight:700;padding:0 16px;cursor:pointer}
.bl-search button span{font-size:14px}
.bl-cats,.bl-latest{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bl-cats a{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:12px;color:#1570b0;font-weight:600;text-decoration:none;background:#F4F8FC}
.bl-cats a:hover{background:#FDEDE4;color:#C9694B}
.bl-cats span{font-size:12px;background:#fff;border-radius:999px;padding:2px 9px;color:#6B7C8C}
.bl-latest a{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;text-decoration:none}
.bl-latest img{width:72px;height:56px;object-fit:cover;border-radius:10px}
.bl-latest strong{display:block;font-size:14.5px;line-height:1.35;color:#0F2A44}
.bl-latest time{font-size:12.5px;color:#6B7C8C}
.bl-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.bl-tags a{font-size:13.5px;padding:6px 12px;border-radius:999px;border:1px solid #F1D5C7;color:#C9694B;text-decoration:none;background:#FFF8F4}
.bl-tags a:hover{background:#E9967A;color:#fff}
.bl-toc ol{margin:0;padding-left:20px;display:grid;gap:6px}
.bl-toc a{color:#1570b0;text-decoration:none;font-size:14.5px}
.bl-postmeta{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px;color:#6B7C8C;margin:14px 0 0}
.bl-postmeta a{color:#1570b0;font-weight:600;text-decoration:none}
.bl-post .post-article{min-width:0}
.bl-feat{margin:0 0 28px;border-radius:24px;overflow:hidden;aspect-ratio:16/9}
.bl-feat img{width:100%;height:100%;object-fit:cover;display:block}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media(max-width:959px){.bl-layout{grid-template-columns:1fr}.bl-side{position:static}.bl-sec{padding:48px 0}}
@media(max-width:640px){.bl-grid{grid-template-columns:1fr}}
html body .bl-w:not(#_) h2{font-size:18px!important;line-height:1.3!important;letter-spacing:0!important;margin:0 0 12px!important}
html body .bl-body:not(#_) h3{font-size:21px!important;line-height:1.3!important}
html body .bl-meta:not(#_){font-size:13.5px!important}
html body .post-hero .post-hero-in:not(#_){max-width:1240px!important;margin:0 auto!important}
html body .post-hero .post-hero-in:not(#_) h1,html body .post-hero .post-hero-in:not(#_) .lead{max-width:820px}
html body .bl-post .post-article:not(#_){max-width:none!important;width:100%}
.bl-faq{margin:40px 0 32px;padding:32px;border-radius:24px;background:linear-gradient(135deg,#FFF8F4,#FDEDE4)}
html body .bl-faq:not(#_) h2{margin:0 0 18px;font-size:28px}
html body .bl-faq:not(#_) .faq-list{display:grid;gap:12px}
html body .bl-faq:not(#_) details{background:#fff;border-radius:16px;padding:4px 20px;box-shadow:0 14px 30px -26px rgba(13,42,68,.5)}
html body .bl-faq:not(#_) .faq-q{font-size:18px!important;margin:0}
.bl-related{padding:72px 0;background:#F6F9FC}
.bl-grid3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}
@media(max-width:959px){.bl-grid3{grid-template-columns:1fr}}
.bl-pic-ph{background:linear-gradient(135deg,#EAF4FB,#FDEDE4)}
/* v2 article body: tighter rhythm + rich content */
html body .bl-post .post-article:not(#_) h2{margin:36px 0 12px!important}
html body .bl-post .post-article:not(#_) h3{margin:24px 0 8px!important}
html body .bl-post .post-article:not(#_) p{margin:0 0 14px!important}
html body .bl-post .post-article:not(#_) .bl-feat+p{margin-top:0!important}
.bl-keys{margin:0 0 28px;padding:24px 28px;border-radius:20px;background:linear-gradient(135deg,#F3F8FC,#FFF4EE)}
.bl-keys strong.kt{display:block;color:#0D2A44;font-size:17px;margin:0 0 10px}
.bl-keys ul,.post-article ul.bl-list,.post-article ol.bl-list{margin:0 0 16px;padding-left:22px}
.bl-keys li,.post-article .bl-list li{margin:0 0 8px;line-height:1.6}
.bl-keys li::marker,.post-article .bl-list li::marker{color:#E3A08A;font-weight:700}
.bl-tbl{margin:8px 0 22px;overflow-x:auto;border-radius:18px;box-shadow:0 0 0 1px #E6EDF3}
.bl-tbl table{width:100%;border-collapse:collapse;min-width:520px;font-size:15px}
.bl-tbl th{background:#0D2A44;color:#fff;text-align:left;padding:14px 18px;font-weight:600}
.bl-tbl td{padding:13px 18px;border-top:1px solid #E6EDF3;vertical-align:top;line-height:1.55}
.bl-tbl tr:nth-child(even) td{background:#F8FBFD}
.bl-tbl td:first-child{font-weight:600;color:#0D2A44}
.bl-note{margin:6px 0 22px;padding:18px 22px;border-left:4px solid #E3A08A;border-radius:0 16px 16px 0;background:#FFF8F4}
.bl-note p{margin:0!important}
html body .bl-faq:not(#_){margin:32px 0 24px}
/* uniform key takeaways box + article elements */
.post-article .key-takeaways{margin:28px 0!important}
.post-article .key-takeaways h3{margin:0 0 12px!important;font-weight:700!important;color:#0D2A44!important}
.post-article .key-takeaways ul{margin:0 0 12px!important;padding-left:22px!important}
.post-article .key-takeaways li{margin:0 0 8px!important;line-height:1.6}
.post-article .key-takeaways li::marker{color:#E3A08A;font-weight:700}
.post-article .key-takeaways .kt-read{margin:8px 0 0!important;font-size:14px;color:#5b6b7a}
.post-article table{width:100%;border-collapse:separate;border-spacing:0;margin:24px 0;border:1px solid #DCEBF5;border-radius:16px;overflow:hidden;font-size:15px}
.post-article th{background:#0D2A44;color:#fff;text-align:left;padding:12px 14px;font-weight:700}
.post-article td{padding:12px 14px;border-top:1px solid #E6EEF4;vertical-align:top}
.post-article tbody tr:nth-child(even) td{background:#F5FAFE}
.post-article .wp-block-table,.post-article figure.wp-block-table{overflow-x:auto}
.post-article iframe{max-width:100%;border:0;border-radius:18px}
.post-article img{max-width:100%;height:auto}
/* takeaway: very light blue, thin border, blends with the article */
html body .post-article .key-takeaways:not(#_a):not(#_b){background:#F3F9FD!important;border:1px solid #DCEBF5!important;border-left:1px solid #DCEBF5!important;border-radius:16px!important;box-shadow:none!important;padding:22px 24px!important;margin:20px 0!important}
/* FAQ accordion in posts (questions are H3) */
.post-article .faq-acc{margin:16px 0 28px;display:grid;gap:12px}
.post-article .faq-item{border:1px solid #DCEBF5;border-radius:16px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.post-article .faq-item[open]{border-color:#36A6DD;box-shadow:0 14px 30px -24px rgba(13,42,68,.4)}
.post-article .faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px}
.post-article .faq-item summary::-webkit-details-marker{display:none}
.post-article .faq-item summary::after{content:"";flex:0 0 26px;height:26px;border-radius:50%;background:#EAF5FC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v12M6 12h12' stroke='%230D2A44' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .25s}
.post-article .faq-item[open] summary::after{transform:rotate(45deg);background-color:#FDF0EA}
.post-article .faq-item summary:focus-visible{outline:3px solid #36A6DD;outline-offset:-3px}
.post-article:not(#_) .faq-item summary h3{margin:0!important}
.post-article .faq-a{padding:0 20px 16px}
.post-article:not(#_) .faq-a p{margin:0 0 12px!important}
.post-article .faq-a>:last-child{margin-bottom:0!important}
/* ===== Blog list cards v3 (mobile-first): date > tag > title > text > author, each on its own line ===== */
html body .bl-body:not(#_){padding:18px 18px 20px;gap:10px}
html body .bl-body:not(#_) .bl-date{display:block;font-size:13.5px;font-weight:600;line-height:1.3;color:#6B7C8C;margin:0}
html body .bl-body:not(#_) .bl-cat{display:inline-block;align-self:flex-start;margin:0}
html body .bl-body:not(#_) h3{margin:0!important;font-size:20px!important;line-height:1.3!important}
html body .bl-body:not(#_)>p{margin:0}
html body .bl-meta:not(#_){display:block;margin:0;padding-top:12px;border-top:1px solid #EDE3DC;font-size:14px!important}
html body .bl-meta:not(#_) a{display:block;text-decoration:none}
html body .bl-meta:not(#_) .dr-name{display:block;font-size:17px;font-weight:700;line-height:1.3;color:#0F2A44}
html body .bl-meta:not(#_) .dr-cred{display:block;font-size:12px;font-weight:500;line-height:1.4;color:#6B7C8C;margin-top:2px;letter-spacing:.01em}
@media(min-width:641px){html body .bl-body:not(#_){padding:22px 24px 24px}html body .bl-body:not(#_) h3{font-size:21px!important}}
/* ===== Single post hero meta v3 (mobile-first): author block + date block, aligned ===== */
html body .post-hero .bl-postmeta:not(#_){display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:22px 0 0;padding:16px 0 0;border-top:1px solid rgba(13,42,68,.12);max-width:520px;font-size:15px}
html body .post-hero .bl-postmeta:not(#_) a{display:block;text-decoration:none}
html body .post-hero .bl-postmeta:not(#_) .dr-name{display:block;font-size:18px;font-weight:700;line-height:1.3;color:#0D2A44}
html body .post-hero .bl-postmeta:not(#_) .dr-cred{display:block;font-size:13px;font-weight:500;line-height:1.4;color:#5B6B7A;margin-top:3px;letter-spacing:.01em}
html body .post-hero .bl-postmeta:not(#_) time{display:block;font-size:14.5px;font-weight:600;line-height:1.3;color:#5B6B7A}
@media(min-width:700px){html body .post-hero .bl-postmeta:not(#_){flex-direction:row;align-items:flex-start;gap:0;max-width:none;width:max-content}
html body .post-hero .bl-postmeta:not(#_) time{align-self:stretch;display:flex;align-items:flex-start;margin-left:24px;padding-left:24px;border-left:1px solid rgba(13,42,68,.15);font-size:16px;line-height:1.3;padding-top:2px}}
