/* Optional on-site AI. The approved homepage stays intact until a question is sent. */
.cw99-search-note { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 16px; margin-top:8px; font:400 13px/1.4 futura-pt,sans-serif; color:var(--cw99-muted); }
.cw99-search-note a { display:inline-flex; align-items:center; min-height:44px; color:var(--cw99-blue); }
.cw99-catalog-ai { display:inline-flex; align-items:center; min-height:44px; margin:8px 0 0; font:500 16px/1.4 futura-pt,sans-serif; color:var(--cw99-blue); }
.cw99-assistant { padding:24px 0 36px; margin-bottom:20px; border-top:1px solid var(--cw99-line); font:400 16px/1.4 futura-pt,sans-serif; color:#000; scroll-margin-top:24px; }
.cw99-assistant[hidden], .cw99-concept .cw99-listings[hidden] { display:none; }
.cw99-assistant * { box-sizing:border-box; }
.cw99-assistant .cw99-assistant__heading { display:flex; gap:16px; justify-content:space-between; align-items:center; margin-bottom:20px; }
.cw99-assistant .cw99-assistant__heading h2 { margin:0; font:700 clamp(22px,1.95vw,36px)/1.2 futura-pt,sans-serif; color:#000; }
.cw99-assistant .cw99-assistant__reset { background:none; border:0; padding:8px 0; min-height:44px; color:var(--cw99-blue); font:500 15px/1.4 futura-pt,sans-serif; box-shadow:none; cursor:pointer; }
.cw99-assistant .cw99-assistant__grid { display:grid; grid-template-columns:minmax(0,1fr); gap:36px; }
.cw99-assistant.cw99-assistant--has-results .cw99-assistant__grid { grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); }
.cw99-assistant .cw99-assistant__conversation { min-width:0; }
.cw99-assistant .cw99-assistant__messages { display:grid; gap:16px; }
.cw99-assistant .cw99-assistant__message { padding:0; min-width:0; }
.cw99-assistant .cw99-assistant__message--user { padding:12px 16px; background:var(--cw99-card); border-radius:var(--cw99-r); }
.cw99-assistant .cw99-assistant__speaker { display:block; margin-bottom:5px; color:var(--cw99-muted); font-size:13px; font-weight:500; }
.cw99-assistant .cw99-assistant__message p { margin:0; font:400 18px/1.45 futura-pt,sans-serif; color:#000; white-space:pre-wrap; overflow-wrap:anywhere; }
.cw99-assistant .cw99-assistant__form { margin:22px 0 0; }
.cw99-assistant .cw99-assistant__form label { display:block; font:500 15px/1.4 futura-pt,sans-serif; color:#000; margin:0 0 8px; }
.cw99-assistant .cw99-assistant__controls { display:flex; gap:10px; }
.cw99-assistant .cw99-assistant__controls input { flex:1; min-width:0; width:0; border:1px solid var(--cw99-line); border-radius:6px; padding:12px; min-height:48px; font:400 16px/1.4 futura-pt,sans-serif; background:#fff; color:#000; box-shadow:none; }
.cw99-assistant .cw99-assistant__controls input::placeholder { color:var(--cw99-muted); }
.cw99-assistant .cw99-assistant__controls button, .cw99-assistant .cw99-assistant__draft { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border:0; border-radius:6px; font:700 16px/1.4 futura-pt,sans-serif; color:#fff; background:var(--cw99-blue); background-image:none; box-shadow:none; cursor:pointer; text-decoration:none; }
.cw99-assistant .cw99-assistant__controls button:hover, .cw99-assistant .cw99-assistant__draft:hover { background:var(--cw99-blue-hover); }
.cw99-assistant .cw99-assistant__controls button:disabled { cursor:wait; }
.cw99-assistant .cw99-assistant__privacy { margin:10px 0 0; font:400 13px/1.4 futura-pt,sans-serif; color:var(--cw99-muted); }
.cw99-assistant .cw99-assistant__privacy a, .cw99-assistant .cw99-assistant__fallback { color:var(--cw99-blue); text-decoration:underline; }
.cw99-assistant .cw99-assistant__fallback { display:inline-flex; align-items:center; min-height:44px; }
.cw99-assistant .cw99-assistant__results { min-width:0; }
.cw99-assistant .cw99-assistant__results h3 { margin:0 0 16px; font:700 22px/1.2 futura-pt,sans-serif; color:#000; }
.cw99-assistant .cw99-assistant__cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.cw99-assistant .cw99-assistant__card { display:block; min-width:0; border-radius:var(--cw99-r); background:#fff; box-shadow:0 0 16px rgba(0,0,0,.07); text-decoration:none; overflow:hidden; }
.cw99-assistant .cw99-assistant__card img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.cw99-assistant .cw99-assistant__card-details { padding:14px 16px; }
.cw99-assistant .cw99-assistant__demo { display:block; font:400 12px/1.4 futura-pt,sans-serif; color:var(--cw99-muted); margin-bottom:6px; }
.cw99-assistant .cw99-assistant__card h4 { margin:0 0 8px; font:700 17px/1.25 futura-pt,sans-serif; color:#000; overflow-wrap:anywhere; }
.cw99-assistant .cw99-assistant__price { margin:0 0 6px; font:700 18px/1.3 futura-pt,sans-serif; color:var(--cw99-blue); }
.cw99-assistant .cw99-assistant__city, .cw99-assistant .cw99-assistant__category { margin:0 0 4px; font:400 14px/1.4 futura-pt,sans-serif; color:var(--cw99-muted); }
.cw99-assistant a:focus-visible, .cw99-assistant button:focus-visible, .cw99-assistant input:focus-visible, .cw99-search-note a:focus-visible { outline:3px solid var(--cw99-blue); outline-offset:3px; }
@media(max-width:760px) {
 .cw99-search-note { font-size:12px; gap:4px 12px; }
 .cw99-search-note a { min-height:44px; }
 .cw99-assistant { padding-top:18px; margin-bottom:0; }
 .cw99-assistant .cw99-assistant__heading { align-items:flex-start; gap:10px; margin-bottom:16px; }
 .cw99-assistant .cw99-assistant__reset { font-size:13px; padding-top:0; }
 .cw99-assistant.cw99-assistant--has-results .cw99-assistant__grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .cw99-assistant .cw99-assistant__message p { font-size:16px; }
 .cw99-assistant .cw99-assistant__controls { gap:8px; }
 .cw99-assistant .cw99-assistant__controls button { padding:12px 16px; }
 .cw99-assistant .cw99-assistant__cards { grid-template-columns:minmax(0,1fr); gap:14px; }
 .cw99-assistant .cw99-assistant__card { display:flex; align-items:stretch; }
 .cw99-assistant .cw99-assistant__card img { width:100px; flex-shrink:0; aspect-ratio:auto; object-fit:cover; }
 .cw99-assistant .cw99-assistant__card-details { padding:12px; min-width:0; }
 .cw99-assistant .cw99-assistant__card h4 { font-size:16px; }
}

.cw99-assistant .cw99-assistant__speaker, .cw99-assistant .cw99-assistant__demo, .cw99-assistant .cw99-assistant__city, .cw99-assistant .cw99-assistant__category { color:#000; opacity:.6; }

.cw99-search-privacy { display:flex; flex-wrap:wrap; align-items:center; gap:0 6px; margin:0; }
.cw99-search-privacy a { display:inline-flex; align-items:center; min-height:44px; color:var(--cw99-blue); text-decoration:underline; }
