/* Raga Marketing additions on top of the shared design (body.raga theme). */
.brand img{height:44px;width:auto;display:block}
.raga .hero{padding-block:72px 56px}
.raga .hero h1{max-width:16ch}
.raga .hero .button{margin-top:28px}
.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:24px}
.offer-card{background:var(--surface);border-radius:10px;padding:30px;display:flex;flex-direction:column;gap:14px}
.offer-card h3{font-size:24px}
.offer-card p{color:var(--muted);font-size:15px}
.price-list{list-style:none;margin:6px 0 10px;padding:0;border-top:1px solid var(--line)}
.price-list li{display:grid;grid-template-columns:70px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.price-list span{font:11px monospace;color:var(--soft);text-transform:uppercase;padding-top:3px}
.offer-card .text-link{margin-top:auto;font-size:13px}
.offer-body{display:grid;gap:44px;padding-block:20px 72px;max-width:860px}
.offer-body.narrow{max-width:640px}
.offer-body h2{font-size:30px;margin-bottom:14px}
.offer-body p{color:var(--muted);font-size:16px}
.offer-body .steps{margin-top:10px;grid-template-columns:1fr;gap:20px}
.offer-body .steps h3{font-size:20px}
.proof{padding-left:20px;color:var(--muted);display:grid;gap:10px;margin-bottom:16px}
.facts{display:grid;grid-template-columns:160px 1fr;gap:10px 20px;margin:0}
.facts dt{font:12px monospace;color:var(--soft);text-transform:uppercase;padding-top:3px}
.facts dd{margin:0}
.facts a,.case-intro a{text-decoration:underline;text-underline-offset:4px}
.legal h2{font-size:22px;margin:10px 0 -30px}
.legal ul{color:var(--muted);padding-left:20px;margin:0}
.book-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;padding-block:20px 72px}
.book-grid h2{font-size:28px;margin-bottom:12px}
.book-grid p{color:var(--muted);margin-bottom:20px}
.lead-form{display:grid;gap:16px}
.lead-form label{display:grid;gap:6px;font-size:14px;font-weight:600}
.lead-form input,.lead-form select,.lead-form textarea{font:inherit;font-weight:400;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);width:100%}
.lead-form .button{justify-self:start;border:0}
.form-note{font-size:13px;color:var(--muted)}
.form-note a{text-decoration:underline}
/* Chat widget */
.chat{position:fixed;right:18px;bottom:18px;z-index:50;font-size:15px}
.chat-toggle{background:var(--ink);color:#fff;border:0;border-radius:999px;padding:12px 18px;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.chat-panel{position:absolute;right:0;bottom:56px;width:min(370px,calc(100vw - 36px));height:min(520px,calc(100vh - 110px));background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.2);display:flex;flex-direction:column;overflow:hidden}
.chat-panel[hidden]{display:none}
.chat-panel header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}
.chat-close{background:none;border:0;font-size:22px;line-height:1;color:var(--ink)}
.chat-note{font-size:12px;color:var(--muted);padding:8px 14px;margin:0;border-bottom:1px solid var(--line)}
.chat-log{list-style:none;margin:0;padding:12px 14px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px}
.chat-log li{max-width:88%;padding:9px 12px;border-radius:10px;white-space:pre-wrap;line-height:1.45}
.chat-log .user{align-self:flex-end;background:var(--ink);color:#fff}
.chat-log .bot{align-self:flex-start;background:var(--surface)}
.chat-log .bot a{text-decoration:underline}
.chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line)}
.chat-form input{flex:1;font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:6px;min-width:0}
.chat-form button{background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:0 14px}
@media(max-width:1000px){.offer-grid,.book-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.facts dd{margin-bottom:8px}}
