.concierge-body{background:#f4efe6}.concierge-shell{min-height:calc(100vh - 76px);display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:7vh 8vw 9vh;background:radial-gradient(circle at 12% 8%,rgba(155,118,40,.12),transparent 30%)}.concierge-intro{padding-top:5vh}.concierge-intro h1{font:500 clamp(44px,5.2vw,74px)/1.13 var(--serif);letter-spacing:-.04em;margin:25px 0}.concierge-intro>p:not(.kicker){color:#655e56;font:17px/1.85 var(--serif);max-width:520px}.concierge-boundary{display:grid;gap:9px;margin-top:35px;font-size:12px;color:var(--muted)}.concierge-boundary span:before{content:'✓';color:var(--gold);margin-right:10px}.concierge-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);min-height:660px;overflow:hidden;display:flex;flex-direction:column}.concierge-status{display:grid;grid-template-columns:12px 1fr;gap:2px 10px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.status-dot{width:8px;height:8px;border-radius:50%;background:#51895a;grid-row:1/3}.concierge-status b{font:500 14px var(--serif)}.concierge-status small{color:var(--muted);font-size:10px}.chat-log{padding:28px;display:flex;flex-direction:column;gap:16px;max-height:390px;overflow:auto;scroll-behavior:smooth}.message{max-width:82%;padding:16px 18px;border-radius:12px;font-size:14px;line-height:1.7}.message p{margin:0}.message small{display:block;margin-top:6px;color:var(--muted)}.message.assistant{align-self:flex-start;background:var(--warm);border-bottom-left-radius:2px}.message.user{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:2px}.chat-composer{margin-top:auto;padding:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.chat-composer textarea{resize:none;border:1px solid var(--line);border-radius:6px;padding:13px 14px;min-height:76px}.chat-composer .primary{border:0;cursor:pointer}.quick-replies{padding:0 22px 20px;display:flex;gap:8px;flex-wrap:wrap}.quick-replies button{border:1px solid var(--gold-light);background:#fff7e9;border-radius:999px;padding:9px 14px;color:#5d4720;cursor:pointer}.qualification,.concierge-contact,.concierge-success{padding:30px;border-top:1px solid var(--line)}.qualification h2,.concierge-contact h2,.concierge-success h2{font:500 28px/1.4 var(--serif)}.qualification dl{display:grid;grid-template-columns:110px 1fr;margin:24px 0;border-top:1px solid var(--line)}.qualification dt,.qualification dd{margin:0;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.qualification dt{color:var(--muted)}.qualification-note{color:var(--muted);font-size:12px}.qualification button,.concierge-contact button{border:0;cursor:pointer;margin-top:15px}.concierge-contact label{display:grid;gap:7px;margin:15px 0;font-size:13px}.concierge-contact input{border:1px solid var(--line);padding:13px;border-radius:4px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.concierge-contact .consent{display:flex;align-items:flex-start}.concierge-contact .consent input{margin-top:5px}.concierge-contact .consent a{text-decoration:underline}.concierge-success strong{color:var(--gold)}.concierge-success .success-upsell{margin-top:24px;padding:20px;background:rgba(155,118,40,.06);border:1px solid rgba(155,118,40,.2);border-radius:var(--radius-sm);text-align:left}.concierge-success .success-upsell b{display:block;font:500 17px var(--serif);margin-bottom:8px;color:var(--ink)}.concierge-success .success-upsell p{margin:0 0 12px;color:#5a544d;font-size:14px;line-height:1.7}.concierge-success .secondary{margin-top:22px}#concierge-error{color:#a2392f;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-cta--quiet{background:transparent;color:var(--ink);border:1px solid var(--line)}@media(max-width:900px){.concierge-shell{grid-template-columns:1fr;padding:55px 5vw}.concierge-intro{padding-top:0}.concierge-card{min-height:620px}}@media(max-width:620px){.concierge-shell{padding:38px 14px}.concierge-intro{padding:0 8px}.concierge-intro h1{font-size:42px}.concierge-card{min-height:calc(100vh - 140px);border-radius:8px}.chat-log{padding:20px}.message{max-width:90%}.chat-composer{grid-template-columns:1fr}.chat-composer .primary{width:100%}.contact-grid{grid-template-columns:1fr}}
