/* Layout and contrast corrections on top of rebrand.css */
html[data-theme] #contact .h-final .grad{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:#f0d8ff!important;color:#f0d8ff!important}
html[data-theme=light] #contact .cform{background:#fff!important;color:#201335!important;border:1px solid #d1c3e5;box-shadow:none;--fg:#201335;--mut:#463959;--dim:#62516f;--rb-mut:#463959;--rb-dim:#62516f;--s1:#fff;--bd2:#b9a6cf}
html[data-theme=light] #contact .cform h3,html[data-theme=light] #contact .cform p,html[data-theme=light] #contact .cform label,html[data-theme=light] #contact .cform legend{color:#201335!important}
html[data-theme=light] #contact .cform label>span,html[data-theme=light] #contact .cform legend span,html[data-theme=light] #contact .cform .cf-sub{color:#514060!important}
html[data-theme=light] #contact .cform input,html[data-theme=light] #contact .cform select,html[data-theme=light] #contact .cform textarea{background-color:#fff!important;color:#201335!important;border-color:#9c87b6}
html[data-theme=light] #contact .cform ::placeholder{color:#62516f!important;opacity:1}
html[data-theme=light] #contact .ftools-c span{background:#F3EEFF!important;color:#3B1E8C!important;border-color:#b9a6cf!important}
html[data-theme=light] #contact .ftools-c input:checked+span{background:#4E27B0!important;color:#fff!important;border-color:#4E27B0!important}
html[data-theme=light] #contact .cform .btn-primary{background:#4E27B0!important;color:#fff!important}
html[data-theme] #how .how{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:32px!important;row-gap:32px;padding-left:0!important;align-items:start}
html[data-theme] #how .hstep{min-width:0;position:relative;transform:none!important;opacity:1!important;padding:0;white-space:normal}
html[data-theme] #how .hstep h3,html[data-theme] #how .hstep p{max-width:100%;width:auto;white-space:normal;overflow-wrap:break-word;transform:none!important}
html[data-theme] #how .hstep>span{position:relative!important;left:auto!important;top:auto!important;margin:0 0 20px!important}
html[data-theme] #how .hstep h3{padding-top:0}
html[data-theme] #how .how-line{left:28px;right:calc(25% - 28px)}
html[data-theme] #services.sec,html[data-theme] #faq.sec{background:var(--rb-s2)!important;border:1px solid var(--rb-line2);border-radius:28px;box-shadow:none!important}
html[data-theme=light] #services .card{background:#fff}
html[data-theme=dark] #services.sec,html[data-theme=dark] #faq.sec{background:var(--rb-s2)!important}
html[data-theme] .dental-glyph{background:#4E27B0!important;color:#fff!important;border-color:#4E27B0!important;display:inline-grid;place-items:center}
/* Purple emphasis blends radially to transparent instead of a rectangular hero fill. */
html[data-theme] .wrap.hero{background:radial-gradient(ellipse at 72% 40%,rgba(var(--rb-ac-rgb),.13),rgba(var(--rb-ac-rgb),0) 70%)!important}
.rb-mobile-menu{display:none}
#rb-ai-slot{display:none}
@media(max-width:1100px){html[data-theme] #how .how{grid-template-columns:repeat(2,minmax(0,1fr))!important}html[data-theme] #how .how-line{display:none!important}}
@media(max-width:860px){
.rb-mobile-menu{display:block;position:relative;flex:0 0 auto;order:1}
.rb-mobile-menu summary{display:flex;align-items:center;justify-content:center;cursor:pointer;list-style:none;min-width:42px;min-height:38px;padding:0 5px;border:1px solid var(--rb-line2);border-radius:9px;background:var(--rb-s2);color:var(--rb-fg);font:600 12px Inter,sans-serif}
.rb-mobile-menu summary::-webkit-details-marker{display:none}
.rb-mobile-menu nav{position:absolute;right:0;top:calc(100% + 12px);width:min(260px,calc(100vw - 40px));display:grid;gap:4px;padding:10px;border:1px solid var(--rb-line2);border-radius:12px;background:var(--rb-s1);color:var(--rb-fg);box-shadow:0 6px 18px #0002;z-index:120}
.rb-mobile-menu a{display:block;min-height:44px;padding:12px;border-radius:6px;color:var(--rb-fg);font:500 14px Inter,sans-serif;text-decoration:none}
.rb-mobile-menu a:hover,.rb-mobile-menu a:focus-visible{background:var(--rb-s2);outline:2px solid var(--rb-ac)}
.rb-mobile-menu summary:focus-visible{outline:2px solid var(--rb-ac);outline-offset:3px}
html[data-theme] #rb-toggle{order:2}
html[data-theme] .nav-in,html[data-theme] .b-nav-in{gap:7px}
#rb-ai-slot{display:flex;min-height:56px;align-items:center;justify-content:flex-start}
html[data-theme] #rb-ai-slot #ai-fab{position:relative!important;inset:auto!important;transform:none;box-shadow:none;min-height:48px;margin:0}
html[data-theme] #rb-ai-slot #ai-fab.hide{visibility:hidden;opacity:0;pointer-events:none}
}
@media(max-width:600px){html[data-theme] #how .how{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}html[data-theme] #services.sec,html[data-theme] #faq.sec{border-radius:20px}html[data-theme] .b-nav-in .b-btn-sm,html[data-theme] .nav-in>.btn{padding-inline:10px!important;font-size:12px!important}html[data-theme] .nav-in .brand,html[data-theme] .b-brand{width:30px}}

html[data-theme] .wrap.hero{background:none!important}
html[data-theme] body:has(.wrap.hero){background:radial-gradient(ellipse 900px 650px at 70% 200px,rgba(var(--rb-ac-rgb),.13),transparent 75%),var(--rb-bg)!important}

/* Only voice case mobile metrics: intrinsic rows, no equal-height empty tails. */
@media(max-width:560px){html[data-case="ai-voice-agent"] .tiles{grid-auto-rows:auto!important;align-items:start!important}html[data-case="ai-voice-agent"] .tiles>.tile{height:auto!important;min-height:0!important;align-self:start!important;padding:18px!important}html[data-case="ai-voice-agent"] .tiles>.tile .l{margin-bottom:0!important}}
