/* Search panel, mobile CTA bar, chatbot, reduced motion */
.ov{position:fixed;inset:0;background:#06214acc;z-index:50;display:none;padding:max(4rem,env(safe-area-inset-top,0px)) 1rem 1rem}.ov.open{display:block}
.ov .sp{max-width:660px;margin:0 auto;background:#fff;border-radius:26px;padding:1.2rem;max-height:80vh;overflow:auto}
.ov .sp input{font-size:1.1rem}.ov .sp a{display:block;padding:.7rem .5rem;border-bottom:1px solid var(--line);text-decoration:none}.ov .sp a:hover{background:var(--mint)}.ov .sp small{color:var(--mute)}
.mcta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:25;background:#fff;border-top:1px solid var(--line);padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom,0px));gap:.5rem;box-shadow:0 -10px 30px -20px #0b2f6b}
.mcta a{flex:1;text-align:center;padding:.65rem .3rem;border-radius:14px;text-decoration:none;font-weight:800;font-size:.82rem;background:var(--mint);color:var(--navy)}.mcta a:last-child{background:linear-gradient(135deg,var(--sun),var(--sun2))}
@media(max-width:860px){.mcta{display:flex}body{padding-bottom:66px}}
.fab{position:fixed;right:max(1rem,env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:30;width:58px;height:58px;border-radius:50%;border:0;background:var(--teal);color:#fff;font-size:1.5rem;cursor:pointer;box-shadow:0 12px 26px -8px #0b2f6b}
@media(max-width:860px){.fab{bottom:calc(5.2rem + env(safe-area-inset-bottom,0px))}.chat{bottom:calc(9.5rem + env(safe-area-inset-bottom,0px))!important}}
.chat{position:fixed;right:max(1rem,env(safe-area-inset-right,0px));bottom:calc(5.2rem + env(safe-area-inset-bottom,0px));z-index:30;width:min(360px,100% - 2rem);max-height:min(500px,65vh);display:none;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px -20px #0b2f6b;overflow:hidden}.chat.open{display:flex}
.ch{background:var(--teal);color:#fff;padding:.8rem 1rem;display:flex;justify-content:space-between}.ch button{background:none;border:0;color:#fff;cursor:pointer;font-size:1.1rem}
.log{padding:1rem;overflow:auto;flex:1;display:flex;flex-direction:column;gap:.5rem}.m{max-width:88%;padding:.55rem .8rem;border-radius:14px;font-size:.9rem;background:var(--mint)}.m.u{background:var(--teal);color:#fff;align-self:flex-end}
.qr{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 1rem .6rem}.qr button{font:700 .78rem inherit;font-family:inherit;border:1.5px solid var(--teal);background:none;color:var(--ink);border-radius:999px;padding:.3rem .7rem;cursor:pointer}
.chat form{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--line)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
