/* =================================================================
   AI SEARCH SCENE: after the search climb, the screen becomes an
   AI assistant chat. The question types, the answer streams in and
   recommends the business, the visitor taps "Call now", and the
   green burst carries into the call section (now "from an AI search").
   ================================================================= */
.ai{position:absolute;z-index:4;top:calc(var(--bar-top) - 4px);bottom:18px;left:var(--pad);right:var(--pad);display:flex;flex-direction:column;
  background:#fff;border-radius:26px;box-shadow:0 0 0 1px var(--line),var(--sh-lg);overflow:hidden;visibility:hidden;opacity:0}
.ai-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.ai-logo{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#4f7cff,#a259ff);color:#fff;font-size:14px}
.ai-title{font-weight:600;font-size:15px}
.ai-tabs{display:flex;gap:6px;margin-left:auto}
.ai-tabs li{padding:5px 10px;border-radius:999px;color:var(--muted);font-size:10px}
.ai-tabs li.on{background:var(--ink);color:#fff}
.ai-body{flex:1;overflow:hidden;padding:18px 16px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#fbfbff,#fff)}
.msg{display:flex;gap:10px}
.msg--user{justify-content:flex-end}
.ai-q{max-width:85%;background:var(--ink);color:#fff;padding:12px 16px;border-radius:20px 20px 6px 20px;font-size:15px;line-height:1.4;min-height:1.4em}
.ai-av{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;background:linear-gradient(135deg,#4f7cff,#a259ff);color:#fff;font-size:13px}
.ai-ans{flex:1;min-width:0}
.ai-a{font-size:15px;line-height:1.55;color:var(--ink-2);min-height:1.5em}
.ai-a b{color:var(--ink)}
.ai-card{margin-top:14px;border-radius:20px;padding:14px;background:#fff;box-shadow:0 0 0 1.5px var(--green),0 18px 36px -18px rgba(14,159,90,.45);opacity:0;transform:translate3d(0,14px,0) scale(.98)}
.aic-top{display:flex;align-items:center;gap:12px}
.aic-logo{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--ink);color:#fff;font-family:var(--f-display);font-weight:800;font-size:17px;flex:none}
.aic-top b{display:block;font-size:16px}
.aic-top span:not(.aic-badge):not(.aic-logo){display:block;font-size:12.5px;color:var(--muted)}
.aic-badge{margin-left:auto;background:var(--green);color:#fff;padding:4px 9px;border-radius:999px;font-size:9.5px;white-space:nowrap}
.aic-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.aic-facts li{font-size:12px;font-weight:500;padding:5px 10px;border-radius:999px;background:#eef8f2;color:#0a6b3d}
.aic-acts{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}
.ai-call{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;background:var(--green);color:#fff;font-weight:600;font-size:14px}
.ai-call svg{width:15px;height:15px;fill:currentColor}
.aic-site{color:var(--muted);font-size:10px;text-transform:none;letter-spacing:0}
.ai-src{margin-top:10px;color:var(--muted);font-size:10px;opacity:0}
.ai-input{display:flex;align-items:center;gap:8px;margin:0 16px 16px;height:46px;padding:0 16px;border-radius:999px;background:#f3f3f0;color:var(--muted);font-size:14px}
.ai-input .caret{margin-left:0}

/* sheet readout switches from position number to "AI pick" in the AI scene */
.ai-pick,.sr-l2{display:none}
.sheet.is-ai .sr-n,.sheet.is-ai .sr-l{display:none}
.sheet.is-ai .ai-pick{display:block;font-family:var(--f-display);font-weight:800;font-variation-settings:"wdth" 106;font-size:clamp(30px,3vw,44px);line-height:.9;letter-spacing:-.03em;color:var(--mint)}
.sheet.is-ai .sr-l2{display:block;color:rgba(255,255,255,.5);max-width:14ch;line-height:1.4}

@media (min-width:900px){
  .ai{left:calc(var(--cx,0px) + var(--pad) + var(--sheetw) + var(--colgap));right:calc(var(--cx,0px) + var(--pad))}
  .ai-body{padding:26px 28px;gap:20px}
  .ai-q,.ai-a{font-size:17px}
  .ai-card{padding:18px;max-width:560px}
}
@media (max-width:899px){
  .ai{bottom:calc(46% + 8px)}
  .ai-tabs{display:none}
  .ai-body{padding:14px;gap:12px}
  .ai-q,.ai-a{font-size:14px}
  .ai-input{display:none}
  .ai-src{display:none}
  .aic-facts li:nth-child(3){display:none}
}
@media (max-width:899px) and (max-height:760px){ .ai-card .aic-facts{display:none} }

/* phones: chat anchors to the latest message (like real chat apps), and the panel only stops at the sheet */
@media (max-width:899px){
  .ai{bottom:calc(272px + var(--sb))}
  .ai-body{justify-content:flex-end}
  .ai-card{padding:12px}
  .aic-top b{font-size:15px}
  .aic-acts{margin-top:10px}
}
/* desktop hero: 3 lines, not 4 */
@media (min-width:900px){ .hero-h{max-width:15ch!important;font-size:clamp(44px,min(8.4vw,13svh),128px)!important} }

/* hero: three deliberate lines on desktop */
@media (min-width:900px){ .hero-h{max-width:none!important;font-size:clamp(44px,min(7.2vw,12svh),120px)!important} .hero-h .line{white-space:nowrap} }
