:root{--ink:#12231d;--deep:#10382d;--green:#3e7b63;--muted:#77847e;--line:#e4e9e6;--bg:#f7f8f6;--white:#fff}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
nav{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6vw}
.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:.2em;font-size:14px}.mark{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--deep);color:#fff;letter-spacing:0}
.nav-right{display:flex;gap:18px;font-size:9px;letter-spacing:.17em;color:#7c8782;font-weight:750}
.hero{max-width:1100px;margin:auto;padding:13vh 8vw 12vh}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:850;color:var(--green);margin-bottom:24px}
.hero h1{font-size:clamp(56px,8.3vw,112px);line-height:.88;letter-spacing:-.065em;max-width:920px;margin:0 0 31px;font-weight:720}.hero h1 em{font-style:normal;color:var(--green)}
.hero p{max-width:620px;font-size:17px;line-height:1.7;color:var(--muted);margin:0}.hero-cta{margin-top:34px;border:0;border-radius:999px;background:var(--deep);color:#fff;padding:15px 19px 15px 21px;font-weight:800;cursor:pointer}.hero-cta span{margin-left:30px}
.service-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.service-row>div{padding:28px 4vw;border-right:1px solid var(--line)}.service-row>div:last-child{border:0}.service-row small,.service-row strong,.service-row span{display:block}.service-row small{font-size:9px;color:#a0aaa5;margin-bottom:14px}.service-row strong{font-size:14px}.service-row span{font-size:11px;color:var(--muted);margin-top:6px}

.launcher{position:fixed;right:28px;bottom:27px;z-index:50;border:0;border-radius:999px;background:var(--deep);color:#fff;padding:15px 18px;display:flex;align-items:center;gap:10px;font-weight:800;box-shadow:0 20px 55px #10382d38;cursor:pointer}.launcher b{font-size:14px;margin-left:8px}.live-dot{width:8px;height:8px;border-radius:50%;background:#8ad6b5;box-shadow:0 0 0 5px #8ad6b51c}

.chat{position:fixed;z-index:49;right:28px;bottom:84px;width:410px;height:min(700px,calc(100vh - 105px));background:#fff;border:1px solid #dfe5e1;border-radius:25px;box-shadow:0 32px 95px #14231e2b;overflow:hidden;display:none;flex-direction:column}.chat.open{display:flex}
.chat-head{height:72px;background:var(--deep);color:#fff;padding:0 18px;display:flex;align-items:center;justify-content:space-between}.assistant-id{display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--deep);font-weight:850}.assistant-id strong,.assistant-id small{display:block}.assistant-id strong{font-size:14px}.assistant-id small{font-size:9px;color:#b9c9c1;margin-top:3px}.assistant-id i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#83d4b0;margin:0 3px}.close{border:0;background:none;color:#fff;font-size:28px;cursor:pointer;line-height:1}
.welcome{padding:22px 20px 11px}.welcome-label{font-size:8px;letter-spacing:.2em;color:var(--green);font-weight:850}.welcome h2{font-size:25px;letter-spacing:-.025em;margin:7px 0 5px}.welcome p{font-size:11px;line-height:1.55;color:var(--muted);margin:0;max-width:310px}
.messages{flex:1;overflow-y:auto;padding:5px 18px 10px;scroll-behavior:smooth}.msg{display:flex;margin:0 0 10px}.msg.user{justify-content:flex-end}.bubble{max-width:84%;padding:11px 13px;border-radius:15px;font-size:12px;line-height:1.5;white-space:pre-wrap}.msg.bot .bubble{background:#f0f4f1;border-bottom-left-radius:5px}.msg.user .bubble{background:var(--deep);color:#fff;border-bottom-right-radius:5px}.typing .bubble{color:#8a9590}
.actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:7px 13px 9px;border-top:1px solid #f0f2f0}.actions button{border:1px solid var(--line);background:#fff;border-radius:10px;text-align:left;padding:9px 10px;color:#53615a;font-size:10px;font-weight:700;cursor:pointer}.actions span{color:var(--green);margin-right:5px}
.booking-card{display:none;margin:0 13px 9px;padding:10px;border:1px solid #dce6e0;background:#f6f9f7;border-radius:13px}.booking-card.show{display:block}.booking-card>div{display:flex;align-items:center;gap:9px}.booking-icon{width:30px;height:30px;display:grid;place-items:center;background:var(--deep);color:#fff;border-radius:9px}.booking-card strong,.booking-card small{display:block}.booking-card strong{font-size:11px}.booking-card small{font-size:9px;color:var(--muted);margin-top:2px}.booking-card a{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:9px 10px;background:var(--deep);border-radius:9px;color:#fff;text-decoration:none;font-size:10px;font-weight:800}.booking-card a b{font-size:12px}
.lead-card{display:none;background:#f5f7f5;border-top:1px solid var(--line);padding:12px;max-height:280px;overflow:auto}.lead-card.show{display:block}.lead-title{display:flex;justify-content:space-between;margin-bottom:8px}.lead-title strong,.lead-title small{display:block}.lead-title strong{font-size:12px}.lead-title small{font-size:9px;color:var(--muted);margin-top:2px}.lead-title button{border:0;background:none;font-size:19px;color:#7d8882;cursor:pointer}
#leadForm{display:grid;grid-template-columns:1fr 1fr;gap:6px}#leadForm input,#leadForm select,#leadForm textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;font:inherit;font-size:10px;outline:none}#leadForm textarea{grid-column:1/-1;min-height:48px;resize:vertical}#leadForm button{grid-column:1/-1;border:0;border-radius:9px;background:var(--deep);color:#fff;padding:9px;font-size:10px;font-weight:800;cursor:pointer}.status{font-size:9px;color:var(--muted);margin-top:6px}
.composer{display:flex;gap:7px;padding:10px 13px;border-top:1px solid var(--line);background:#fff}.composer input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:11px 12px;outline:none;font-size:11px}.composer button{width:40px;border:0;border-radius:11px;background:var(--deep);color:#fff;font-size:17px;cursor:pointer}.privacy{text-align:center;color:#a1aaa6;font-size:8px;padding:0 0 8px}

@media(max-width:700px){nav{padding:0 20px}.nav-right{display:none}.hero{padding:70px 24px}.hero h1{font-size:58px}.service-row{grid-template-columns:1fr 1fr}.service-row>div{padding:20px}.chat{right:10px;bottom:76px;width:calc(100vw - 20px);height:calc(100vh - 92px)}.launcher{right:12px;bottom:12px}}
