:root {
  --ink: #111827; --muted: #667085; --line: #e5e7eb;
  --blue: #2563eb; --paper: #fff; --wash: #f5f7fb;
}
* { box-sizing: border-box; }
html, body { min-height: 100%; }
body { margin: 0; color: var(--ink); background: var(--wash); font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; -webkit-font-smoothing: antialiased; }
button, a { font: inherit; }
.chooser-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(420px,.92fr); background: var(--paper); }
.chooser-card { position: relative; width: min(670px,100%); margin: 0 auto; padding: 100px clamp(28px,7vw,96px) 42px; display: flex; flex-direction: column; justify-content: center; }
.brand { position: absolute; top: 34px; display: inline-flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; }
.brand__logo { padding: 5px 10px; color: #fff; background: var(--blue); border-radius: 8px; font-size: 13px; font-weight: 850; letter-spacing: .06em; }
.brand__name { font-size: 19px; font-weight: 760; letter-spacing: -.03em; }
.brand__name span { color: var(--blue); }
.hero-copy { margin: 0 0 28px; }
.eyebrow { margin: 0 0 13px; color: var(--blue); font-size: 12px; font-weight: 800; letter-spacing: .14em; }
h1 { max-width: 590px; margin: 0; font-size: clamp(42px,5vw,66px); line-height: .98; letter-spacing: -.055em; }
.hero-copy > p:last-child { max-width: 560px; margin: 22px 0 0; color: var(--muted); font-size: 17px; line-height: 1.6; }
.complex-list { display: grid; gap: 10px; }
.complex-option { width: 100%; min-height: 76px; display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 14px; padding: 14px 17px; border: 1px solid var(--line); border-radius: 14px; background: #fff; color: var(--ink); text-align: left; }
button.complex-option { cursor: pointer; transition: border-color .18s,box-shadow .18s,transform .18s; }
button.complex-option:hover,button.complex-option:focus-visible { outline: none; border-color: #9bb7ff; box-shadow: 0 10px 28px rgba(37,99,235,.11); transform: translateY(-1px); }
.complex-option__icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 12px; background: #eff6ff; font-size: 23px; }
.complex-option__copy { display: grid; gap: 4px; }
.complex-option__copy strong { font-size: 16px; }
.complex-option__copy small { color: var(--muted); font-size: 13px; }
.complex-option__arrow { color: var(--blue); font-size: 27px; }
.complex-option--soon { background: #fafafa; color: #6b7280; }
.complex-option--soon .complex-option__icon { background: #f1f3f5; filter: grayscale(.45); }
.complex-option__status { padding: 5px 8px; border-radius: 999px; background: #eceff3; color: #7b8494; font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.remember-note { margin: 16px 0 0; color: #98a2b3; font-size: 12px; text-align: center; }
.bot-link { align-self: center; margin-top: 22px; color: #64748b; font-size: 13px; font-weight: 650; text-decoration: none; }
.bot-link:hover { color: var(--blue); }
.visual-panel { position: relative; overflow: hidden; min-height: 100vh; display: grid; place-items: center; background: linear-gradient(rgba(16,24,40,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(16,24,40,.035) 1px,transparent 1px),#eff3f9; background-size: 32px 32px; }
.visual-panel__glow { position: absolute; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle,rgba(37,99,235,.2),rgba(37,99,235,0) 68%); }
.neighbour-card { position: absolute; width: min(380px,76%); min-height: 94px; display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 14px; padding: 18px; border: 1px solid rgba(255,255,255,.9); border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 24px 65px rgba(37,55,84,.13); backdrop-filter: blur(14px); }
.neighbour-card--one { transform: translate(-14%,-140%) rotate(-2deg); }
.neighbour-card--two { transform: translate(10%,-10%) rotate(1.5deg); }
.neighbour-card--three { transform: translate(-10%,120%) rotate(-1deg); }
.avatar { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 50%; color: #fff; font-weight: 800; }
.avatar--blue { background: #3b82f6; } .avatar--rose { background: #e8798f; } .avatar--green { background: #10b981; }
.neighbour-card div { display: grid; gap: 5px; } .neighbour-card strong { font-size: 16px; } .neighbour-card small { color: var(--muted); font-size: 12px; }
.rating { color: #d97706; font-size: 12px; font-weight: 750; }
.visual-panel__caption { position: absolute; bottom: 52px; left: 50%; width: 100%; margin: 0; transform: translateX(-50%); color: #64748b; font-size: 14px; line-height: 1.55; text-align: center; }
.visual-panel__caption strong { color: var(--ink); font-size: 17px; }
@media (max-width:900px) { .chooser-shell { grid-template-columns: 1fr; } .chooser-card { min-height: 100vh; } .brand { top: 27px; } .visual-panel { display: none; } }
@media (max-width:520px) { .chooser-card { padding-inline: 20px; } h1 { font-size: 43px; } .hero-copy > p:last-child { font-size: 15px; } .complex-option { grid-template-columns: 44px 1fr auto; padding: 12px; } .complex-option__icon { width: 44px; height: 44px; } }
