:root {
  --navy-950: #041426;
  --navy-900: #071b34;
  --navy-800: #0b294d;
  --blue: #1769f6;
  --blue-dark: #0b56d4;
  --blue-soft: #eaf2ff;
  --green: #20c77a;
  --green-dark: #0a8d53;
  --ink: #10233b;
  --muted: #607086;
  --line: #dfe7f1;
  --surface: #f5f8fc;
  --white: #fff;
  --shadow: 0 24px 70px rgba(3, 19, 40, .18);
  --radius-xl: 28px;
  --radius-lg: 20px;
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }
img { display: block; max-width: 100%; }
[hidden] { display: none !important; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 1000; padding: 10px 14px; background: #fff; color: var(--navy-900); border-radius: 8px; transform: translateY(-180%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
.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; }

.site-header { position: absolute; z-index: 30; inset: 0 0 auto; border-bottom: 1px solid rgba(255,255,255,.12); color: #fff; }
.header-inner { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: flex; align-items: center; gap: 16px; color: #fff; text-decoration: none; }
.brand img { width: 176px; height: auto; filter: brightness(0) invert(1); }
.brand > span { padding-left: 16px; border-left: 1px solid rgba(255,255,255,.26); font-size: 12px; line-height: 1.35; color: rgba(255,255,255,.68); }
.brand > span b { color: #fff; font-weight: 650; }
.header-actions { display: flex; align-items: center; gap: 24px; }
.online-pill { display: inline-flex; align-items: center; gap: 9px; padding: 9px 13px; border: 1px solid rgba(39, 224, 137, .28); border-radius: 100px; background: rgba(24, 196, 116, .09); font-size: 13px; font-weight: 700; white-space: nowrap; }
.status-dot { position: relative; display: inline-block; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 0 rgba(32,199,122,.55); animation: pulse 1.8s infinite; }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(32,199,122,.58); } 70% { box-shadow: 0 0 0 8px rgba(32,199,122,0); } 100% { box-shadow: 0 0 0 0 rgba(32,199,122,0); } }
.phone-link { display: flex; align-items: center; gap: 11px; color: #fff; text-decoration: none; }
.phone-icon { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font-size: 17px; transform: rotate(-12deg); }
.phone-link span:last-child { display: flex; flex-direction: column; }
.phone-link b { font-size: 16px; letter-spacing: .01em; }
.phone-link small { color: rgba(255,255,255,.58); font-size: 11px; }

.hero { position: relative; overflow: hidden; min-height: 810px; padding: 145px 0 74px; color: #fff; background:
  linear-gradient(180deg, transparent 72%, #0a2b4e 100%),
  radial-gradient(circle at 14% 85%, rgba(16, 103, 238, .28), transparent 28%),
  linear-gradient(122deg, var(--navy-950) 0%, var(--navy-900) 57%, #0b3767 100%); }
.hero::before { content: ""; position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px); background-size: 74px 74px; mask-image: linear-gradient(180deg, #000 0%, #000 68%, transparent 100%); }
.hero::after { content: ""; position: absolute; width: 720px; height: 720px; right: -410px; top: -310px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; box-shadow: 0 0 0 100px rgba(255,255,255,.02), 0 0 0 200px rgba(255,255,255,.018); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none; }
.hero-glow-one { right: 8%; top: 18%; width: 340px; height: 340px; background: rgba(23,105,246,.24); }
.hero-glow-two { display: none; }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr; align-items: center; gap: 64px; }
.hero-copy { padding: 0; text-align: center; }
.hero h1 { max-width: 900px; margin: 0 auto; font-size: clamp(45px, 4.7vw, 68px); line-height: .99; letter-spacing: -.055em; font-weight: 760; }
.hero h1 span { display: block; color: #77a9ff; }
.hero-points { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 28px; margin: 26px 0 0; color: rgba(255,255,255,.82); font-size: 13px; }
.hero-points span { display: inline-flex; align-items: center; gap: 7px; }
.hero-points i { color: #48dda0; font-style: normal; font-weight: 800; }

.chat-shell { width: 100%; max-width: 960px; margin: 0 auto; overflow: hidden; border: 1px solid rgba(112,169,237,.28); border-radius: 28px; background: #071b31; color: var(--ink); text-align: left; box-shadow: 0 34px 100px rgba(0,0,0,.34), 0 0 0 7px rgba(71,132,209,.045); transform: translateZ(0); }
.chat-topbar { display: flex; align-items: center; justify-content: space-between; min-height: 74px; padding: 11px 40px 11px 20px; color: #fff; border-bottom: 1px solid rgba(134,183,239,.15); background: linear-gradient(110deg, rgba(7,26,47,.98), rgba(12,48,84,.98)); }
.chat-person { display: flex; align-items: center; gap: 11px; }
.mini-avatar { position: relative; width: 48px; height: 48px; }
.mini-avatar img { width: 48px; height: 48px; border: 2px solid rgba(255,255,255,.82); border-radius: 50%; object-fit: cover; object-position: center 14%; box-shadow: 0 6px 18px rgba(0,0,0,.22); }
.chat-person > div:last-child { display: flex; flex-direction: column; }
.chat-person strong { color: #f5f9ff; font-size: 14px; line-height: 1.35; }
.chat-person span { display: flex; align-items: center; gap: 7px; margin-top: 3px; color: #61dfa6; font-size: 11px; font-weight: 700; }
.chat-person .status-dot { width: 6px; height: 6px; flex-basis: 6px; }
.secure-badge { display: inline-flex; align-items: center; gap: 6px; color: #6ce2ac; font-size: 10px; font-weight: 450; }
.secure-badge::before { content: ""; width: 12px; height: 12px; flex: 0 0 12px; background: var(--green); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M7 10V7a5 5 0 0 1 10 0v3M6 10h12a2 2 0 0 1 2 2v8H4v-8a2 2 0 0 1 2-2Z'/%3E%3Cpath stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 14v2.5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M7 10V7a5 5 0 0 1 10 0v3M6 10h12a2 2 0 0 1 2 2v8H4v-8a2 2 0 0 1 2-2Z'/%3E%3Cpath stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 14v2.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.chat-body { display: flex; flex-direction: column; min-height: 452px; padding: 20px 28px 14px; background-color: #041426; background-image: url("assets/chat-pattern-blue.svg?v=2"), radial-gradient(circle at 88% 4%, rgba(38,91,163,.19), transparent 43%), linear-gradient(145deg, #03101e 0%, #061c32 52%, #082845 100%); background-position: center top, center, center; background-size: 960px 520px, cover, cover; background-repeat: repeat, no-repeat, no-repeat; }
.chat-time { margin: 0 auto 14px; color: #9eb0bf; font-size: 10px; text-align: center; text-transform: uppercase; letter-spacing: .06em; }
.message-row { display: flex; align-items: flex-end; gap: 9px; margin-bottom: 8px; }
.message-row > img { flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; object-fit: cover; object-position: center 15%; }
.avatar-spacer { flex: 0 0 30px; }
.message-bubble { max-width: 420px; padding: 11px 14px; border-radius: 6px 15px 15px 15px; background: rgba(255,255,255,.97); border: 1px solid rgba(217,228,239,.92); box-shadow: 0 7px 20px rgba(4,14,23,.18); font-size: 13px; line-height: 1.48; }
.user-message { justify-content: flex-end; margin: 14px 0; }
.user-message .message-bubble { color: #fff; background: var(--blue); border-color: var(--blue); border-radius: 15px 6px 15px 15px; }
.question-step { width: calc(100% - 39px); max-width: 760px; margin: 20px 0 0 39px; }
.field-label { display: block; margin-bottom: 6px; color: #526276; font-size: 11px; font-weight: 700; }
.question-step .field-label { color: #c8d4de; }
.textarea-wrap { position: relative; }
.textarea-wrap textarea { display: block; width: 100%; min-height: 105px; resize: vertical; padding: 13px 14px 30px; color: #f4f8fd; caret-color: #76aaff; background: rgba(5,21,41,.9); border: .5px solid rgba(101,155,224,.58); border-radius: 14px; box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 8px 24px rgba(0,8,20,.12); font-size: 13px; line-height: 1.5; transition: background .18s, border-color .18s, box-shadow .18s; }
.textarea-wrap textarea::placeholder { color: #8ea4ba; opacity: 1; }
.textarea-wrap textarea:hover { border-color: rgba(112,171,244,.68); }
.textarea-wrap textarea:focus { outline: none; background: rgba(6,25,49,.97); border-color: #67a5fa; box-shadow: 0 0 0 3px rgba(78,147,243,.18), 0 14px 32px rgba(0,8,20,.22), inset 0 1px 0 rgba(255,255,255,.035); }
.char-count { position: absolute; right: 11px; bottom: 8px; color: #718aa4; font-size: 9px; }
.char-count b { font-weight: 500; }
.field-error { min-height: 0; margin: 6px 0; color: #ce3240; font-size: 11px; }
.primary-btn, .secondary-btn, .light-btn { border: 0; border-radius: 13px; font-weight: 750; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.primary-btn { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 52px; padding: 0 18px 0 20px; color: #fff; background: linear-gradient(135deg, #25ca82, #07985a); box-shadow: 0 11px 24px rgba(5,143,86,.28), inset 0 1px 0 rgba(255,255,255,.15); }
.primary-btn:hover, .primary-btn:focus-visible { background: linear-gradient(135deg, #31d98f, #078a51); box-shadow: 0 14px 28px rgba(5,143,86,.36), inset 0 1px 0 rgba(255,255,255,.2); transform: translateY(-1px); outline: none; }
.primary-btn:disabled { opacity: .62; cursor: wait; transform: none; }
.primary-btn i, .secondary-btn i, .light-btn i, .text-cta i { font-style: normal; }
.question-step .primary-btn { position: relative; width: min(100%, 310px); min-height: 52px; margin: 18px auto 0 0; padding: 0 10px 0 20px; overflow: hidden; border: .5px solid rgba(99,231,169,.68); border-radius: 13px; background: linear-gradient(135deg, #24c980 0%, #07985a 100%); box-shadow: 0 10px 24px rgba(1,91,54,.34), inset 0 1px 0 rgba(255,255,255,.15); font-size: 14px; letter-spacing: -.01em; }
.question-step .primary-btn::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,.08), transparent 42%); }
.question-step .primary-btn span, .question-step .primary-btn i { position: relative; z-index: 1; }
.question-step .primary-btn i { display: grid; place-items: center; width: 34px; height: 34px; border: .5px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(0,71,42,.3); font-size: 18px; transition: transform .18s ease, background .18s ease; }
.question-step .primary-btn:hover, .question-step .primary-btn:focus-visible { background: linear-gradient(135deg, #31d98f, #078a51); box-shadow: 0 13px 28px rgba(1,91,54,.42), inset 0 1px 0 rgba(255,255,255,.2); transform: translateY(-1px); }
.question-step .primary-btn:hover i, .question-step .primary-btn:focus-visible i { background: rgba(0,66,39,.46); transform: translateX(2px); }
.shield-icon { width: 10px; height: 10px; flex: 0 0 10px; background: var(--green); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M7 10V7a5 5 0 0 1 10 0v3M6 10h12a2 2 0 0 1 2 2v8H4v-8a2 2 0 0 1 2-2Z'/%3E%3Cpath stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 14v2.5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M7 10V7a5 5 0 0 1 10 0v3M6 10h12a2 2 0 0 1 2 2v8H4v-8a2 2 0 0 1 2-2Z'/%3E%3Cpath stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 14v2.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.chat-footer-note { display: flex; align-items: center; justify-content: center; gap: 6px; width: max-content; min-height: 0; margin: auto auto 0; padding: 48px 0 0; color: #61dfa6; border: 0; background: transparent; font-size: 10px; font-weight: 450; text-align: center; }
.chat-appear { opacity: 0; transform: translateY(9px); animation: chatIn .45s ease forwards; }
.delay-1 { animation-delay: .2s; }.delay-2 { animation-delay: .72s; }.delay-3 { animation-delay: 1.15s; }
@keyframes chatIn { to { opacity: 1; transform: translateY(0); } }
.contact-step { animation: chatIn .35s ease both; }
.typing-row { display: flex; align-items: center; gap: 9px; }
.typing-row img { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; object-position: center 15%; }
.typing { display: flex; gap: 4px; padding: 12px 14px; border: 1px solid #e1e8f1; border-radius: 6px 15px 15px 15px; background: #fff; }
.typing i { width: 6px; height: 6px; border-radius: 50%; background: #8fa0b5; animation: typing 1.1s infinite ease-in-out; }
.typing i:nth-child(2) { animation-delay: .16s; }.typing i:nth-child(3) { animation-delay: .32s; }
.intro-typing { min-height: 48px; margin: 4px 0 8px; }
.typing-caption { color: #a9bac8; font-size: 10px; }
@keyframes typing { 0%, 60%, 100% { transform: translateY(0); opacity: .45; } 30% { transform: translateY(-3px); opacity: 1; } }
.response-choice { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; width: calc(100% - 39px); max-width: 760px; margin: 17px 0 0 39px; animation: chatIn .35s ease both; }
.response-choice-btn { display: grid; grid-template-columns: 42px minmax(0,1fr) 22px; align-items: center; gap: 12px; min-height: 82px; padding: 12px 14px; color: #edf6ff; border: .5px solid rgba(104,163,230,.48); border-radius: 16px; background: linear-gradient(145deg,rgba(14,54,91,.97),rgba(7,31,56,.98)); box-shadow: 0 12px 30px rgba(0,8,20,.2),inset 0 1px 0 rgba(255,255,255,.035); text-align: left; transition: border-color .18s,background .18s,transform .18s,box-shadow .18s; }
.response-choice-btn:hover,.response-choice-btn:focus-visible { border-color: rgba(92,218,157,.75); background: linear-gradient(145deg,rgba(14,70,86,.98),rgba(7,43,58,.98)); box-shadow: 0 15px 32px rgba(0,17,25,.3),inset 0 1px 0 rgba(255,255,255,.05); outline: none; transform: translateY(-2px); }
.response-choice-icon { display: grid; place-items: center; width: 42px; height: 42px; color: #72e1aa; border: 1px solid rgba(76,220,149,.3); border-radius: 13px; background: rgba(35,199,120,.1); font-size: 18px; font-style: normal; }
.response-choice-icon-message { font-size: 17px; }
.response-choice-btn span { min-width: 0; }
.response-choice-btn strong,.response-choice-btn small { display: block; }
.response-choice-btn strong { color: #f4f9ff; font-size: 13px; line-height: 1.25; }
.response-choice-btn small { margin-top: 3px; color: #91a7be; font-size: 10px; line-height: 1.35; }
.response-choice-btn > b { color: #72e1aa; font-size: 18px; font-weight: 500; transition: transform .18s; }
.response-choice-btn:hover > b,.response-choice-btn:focus-visible > b { transform: translateX(2px); }
.response-choice .response-another-question { grid-column: 1 / -1; justify-self: start; margin-top: 3px; }
.contact-form { width: calc(100% - 39px); max-width: 760px; margin: 16px 0 0 39px; padding: 22px; border: 1px solid #dce6f2; border-radius: 18px; background: rgba(255,255,255,.98); box-shadow: 0 14px 34px rgba(3,13,22,.24); animation: chatIn .35s ease both; }
.contact-form h2 { margin: 0 0 3px; font-size: 20px; letter-spacing: -.025em; }
.contact-form > p:first-of-type { margin: 0 0 15px; color: var(--muted); font-size: 11px; }
.input-group { display: block; margin-top: 13px; }
.input-group > span { display: flex; justify-content: space-between; margin-bottom: 5px; color: #526276; font-size: 10px; font-weight: 700; }
.input-group b { color: #d43343; }.input-group small { color: #99a5b4; font-weight: 500; }
.input-group input { width: 100%; height: 47px; padding: 0 13px; border: 1.5px solid #d8e1ed; border-radius: 11px; color: var(--ink); background: #fff; font-size: 14px; }
.input-group input:focus { outline: none; border-color: #76a4f5; box-shadow: 0 0 0 4px rgba(23,105,246,.08); }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-form .lead-submit { position: relative; width: min(100%, 350px); min-height: 58px; margin: 17px auto 0 0; padding: 0 9px 0 23px; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 16px; background: linear-gradient(125deg, #2bd389 0%, #11aa68 58%, #078d53 100%); box-shadow: 0 14px 30px rgba(3,123,73,.3), inset 0 1px 0 rgba(255,255,255,.2); }
.contact-form .lead-submit::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,.13), transparent 38%); }
.contact-form .lead-submit span, .contact-form .lead-submit i { position: relative; z-index: 1; }
.contact-form .lead-submit i { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 12px; background: rgba(255,255,255,.16); font-size: 19px; transition: transform .18s ease, background .18s ease; }
.contact-form .lead-submit:hover, .contact-form .lead-submit:focus-visible { background: linear-gradient(125deg, #35df94 0%, #14b772 58%, #078248 100%); box-shadow: 0 18px 34px rgba(3,123,73,.38), inset 0 1px 0 rgba(255,255,255,.24); transform: translateY(-2px); }
.contact-form .lead-submit:hover i, .contact-form .lead-submit:focus-visible i { background: rgba(255,255,255,.22); transform: translateX(2px); }
.another-question-btn { display: inline-flex; align-items: center; gap: 7px; margin: 14px 0 0; padding: 5px 0; color: #58708d; border: 0; border-bottom: 1px dashed #b8c7d9; background: transparent; font-size: 11px; font-weight: 650; transition: color .18s ease, border-color .18s ease; }
.another-question-btn i { font-size: 13px; font-style: normal; transition: transform .18s ease; }.another-question-btn:hover, .another-question-btn:focus-visible { color: var(--blue); border-color: #78a4ed; outline: none; }.another-question-btn:hover i, .another-question-btn:focus-visible i { transform: translateX(-2px); }
.success-step { padding: 62px 28px; text-align: center; animation: chatIn .45s ease both; }
.success-check { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 15px; color: #fff; background: var(--green); border-radius: 50%; box-shadow: 0 0 0 10px rgba(32,199,122,.1); font-size: 28px; font-weight: 800; }
.success-step h2 { margin: 0 0 9px; color: #f7fbff; font-size: 24px; }
.success-step p { max-width: 430px; margin: 0 auto 22px; color: #b8cee3; font-size: 13px; line-height: 1.55; }
.success-step p strong { color: #fff; font-weight: 800; }
.call-now { display: inline-flex; flex-direction: column; align-items: center; gap: 4px; color: #f4f9ff; text-decoration: none; }
.call-now span { font-size: 13px; font-weight: 650; }
.call-now strong { color: #68a7ff; border-bottom: 1px solid rgba(104,167,255,.65); font-size: 21px; line-height: 1.25; font-weight: 800; letter-spacing: .01em; transition: color .18s ease, border-color .18s ease; }
.call-now:hover strong, .call-now:focus-visible strong { color: #90c0ff; border-color: #90c0ff; }
.call-now:focus-visible { outline: 2px solid rgba(104,167,255,.55); outline-offset: 5px; border-radius: 4px; }
.chat-shell.is-success .chat-topbar, .chat-shell.is-success .chat-time, .chat-shell.is-success #introTyping, .chat-shell.is-success #introMessage, .chat-shell.is-success .chat-footer-note { display: none !important; }
.chat-shell.is-success .chat-body { min-height: 440px; justify-content: center; padding: 24px 28px; }

.trust-strip { position: relative; z-index: 5; margin-top: -1px; background: #fff; border-bottom: 1px solid var(--line); }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); min-height: 118px; align-items: center; }
.trust-grid > div { display: flex; align-items: center; gap: 16px; min-height: 58px; padding: 0 28px; border-right: 1px solid var(--line); }
.trust-grid > div:first-child { padding-left: 0; }.trust-grid > div:last-child { padding-right: 0; border-right: 0; }
.trust-grid strong { flex: none; color: var(--navy-900); font-size: 26px; line-height: 1; letter-spacing: -.035em; }
.trust-grid span { color: var(--muted); font-size: 11px; line-height: 1.45; }

.section { padding: 104px 0; }
.section-heading { margin-bottom: 45px; }
.section-kicker { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 11px; color: var(--blue); font-size: 12px; font-weight: 800; letter-spacing: .085em; text-transform: uppercase; }
.section-heading h2, .team-copy h2, .faq-side h2 { margin: 0; color: var(--navy-900); font-size: clamp(35px, 4vw, 52px); line-height: 1.06; letter-spacing: -.047em; }
.section-heading p { color: var(--muted); }
.split-heading { display: grid; grid-template-columns: 1fr 370px; align-items: end; gap: 60px; }
.split-heading p { margin: 0 0 3px; font-size: 13px; }
.centered-heading { max-width: 730px; margin-inline: auto; text-align: center; }
.centered-heading p { max-width: 630px; margin: 15px auto 0; }
.recent-section { background: var(--surface); }
.recent-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.answer-card { display: flex; flex-direction: column; min-height: 312px; padding: 25px 24px 22px; border: 1px solid #dfe7f1; border-radius: var(--radius-lg); background: #fff; box-shadow: 0 8px 25px rgba(10,35,68,.045); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.answer-card:hover { transform: translateY(-3px); border-color: #b8cdf0; box-shadow: 0 18px 40px rgba(10,35,68,.09); }
.featured-answer { border-color: #a9c7fb; box-shadow: inset 0 3px 0 var(--blue), 0 12px 35px rgba(10,67,161,.1); }
.answer-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 15px; }
.answer-meta span { padding: 5px 8px; color: var(--blue); background: var(--blue-soft); border-radius: 6px; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .045em; }
.answer-meta time { position: relative; padding-left: 12px; color: #8290a2; font-size: 9.5px; }
.answer-meta time::before { content: ""; position: absolute; left: 0; top: 50%; width: 6px; height: 6px; transform: translateY(-50%); border-radius: 50%; background: var(--green); }
.answer-card h3 { margin: 0 0 11px; font-size: 19px; line-height: 1.26; letter-spacing: -.025em; }
.answer-card p { margin: 0 0 20px; color: var(--muted); font-size: 12px; line-height: 1.58; }
.text-cta { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding: 0; border: 0; color: var(--blue); background: none; font-size: 12px; font-weight: 800; text-align: left; }
.text-cta i { transition: transform .18s ease; }.text-cta:hover i { transform: translateX(3px); }
.center-cta { display: flex; justify-content: center; margin-top: 35px; }
.secondary-btn { display: inline-flex; align-items: center; gap: 20px; min-height: 52px; padding: 0 22px; color: var(--navy-900); background: #fff; border: 1px solid #cfdbea; box-shadow: 0 8px 20px rgba(10,35,68,.05); }
.secondary-btn:hover, .secondary-btn:focus-visible { color: var(--blue); border-color: #9bbbf0; transform: translateY(-1px); outline: none; }

.topics-section { background: #fff; }
.topics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.topic-card { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-height: 192px; padding: 24px; text-align: left; border: 1px solid var(--line); border-radius: 18px; background: #fff; color: var(--ink); transition: .22s ease; }
.topic-card:hover, .topic-card:focus-visible { border-color: #a7c2ef; background: #f9fbff; box-shadow: 0 16px 35px rgba(12,48,93,.08); transform: translateY(-3px); outline: none; }
.topic-symbol { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 22px; color: #80b3ff; border: 1px solid rgba(112,169,239,.2); border-radius: 14px; background: radial-gradient(circle at 28% 18%, rgba(94,158,243,.18), transparent 48%), rgba(43,108,197,.13); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); }
.topic-symbol svg { width: 25px; height: 25px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.topic-card strong { margin-bottom: 4px; font-size: 16px; letter-spacing: -.02em; }
.topic-card small { max-width: 180px; color: var(--muted); font-size: 11px; }
.topic-card > i { position: absolute; right: 19px; top: 25px; color: #9aabc0; font-style: normal; }
.topic-card-accent { color: #fff; border-color: var(--navy-800); background: linear-gradient(145deg, var(--navy-800), var(--navy-900)); }
.topic-card-accent:hover, .topic-card-accent:focus-visible { background: linear-gradient(145deg, #113b6c, var(--navy-900)); border-color: #2c6bb5; }
.topic-card-accent .topic-symbol { color: #fff; border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.12); }.topic-card-accent small { color: rgba(255,255,255,.62); }.topic-card-accent > i { color: #fff; }

.steps-section { overflow: hidden; background: var(--navy-900); color: #fff; }
.steps-section .section-kicker { color: #75a9ff; }.steps-section .section-heading h2 { color: #fff; }
.steps-grid { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; max-width: 1020px; margin: auto; }
.steps-grid::before { content: ""; position: absolute; top: 45px; left: 18%; right: 18%; height: 1px; background: linear-gradient(90deg, transparent, rgba(114,164,247,.5), transparent); }
.steps-grid article { position: relative; padding: 0 35px; text-align: center; }
.step-number { position: absolute; z-index: 1; top: -24px; right: 17%; color: rgba(121,170,245,.18); font-size: 88px; font-weight: 850; line-height: 1; letter-spacing: -.045em; }
.step-icon { position: relative; z-index: 2; display: grid; place-items: center; width: 86px; height: 86px; margin: 0 auto 23px; border: 1px solid rgba(122,170,249,.28); border-radius: 25px; background: #0d315a; color: #85b3ff; font-size: 26px; box-shadow: 0 0 0 9px rgba(255,255,255,.025); }
.steps-grid h3 { margin: 0 0 9px; font-size: 19px; }.steps-grid p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; }
.compact-btn { width: auto; min-width: 250px; gap: 24px; }

.team-section { background: #fff; }
.team-layout { display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: 75px; }
.team-copy h2 { margin-bottom: 18px; }.team-copy > p { max-width: 440px; margin: 0 0 26px; color: var(--muted); font-size: 14px; }
.team-proof { display: flex; align-items: center; gap: 14px; margin-bottom: 28px; }
.team-proof strong { color: var(--blue); font-size: 32px; letter-spacing: -.04em; }.team-proof span { color: var(--muted); font-size: 11px; }
.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: 235px 235px; gap: 14px; }
.team-card { position: relative; overflow: hidden; border-radius: 19px; background: #eaf0f7; }
.team-card-large { grid-row: 1 / 3; }
.team-card img { width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform .4s ease; }.team-card:hover img { transform: scale(1.025); }
.team-card > div { position: absolute; inset: auto 0 0; padding: 38px 16px 14px; color: #fff; background: linear-gradient(transparent, rgba(3,17,34,.9)); }
.team-card h3 { margin: 0 0 3px; font-size: 14px; }.team-card p { margin: 0; color: rgba(255,255,255,.7); font-size: 9px; line-height: 1.4; }
.team-card-large h3 { font-size: 18px; }.team-card-large p { font-size: 11px; }
.online-label { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 8px; color: #a2f0c9; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.online-label .status-dot { width: 6px; height: 6px; flex-basis: 6px; }

.faq-section { background: var(--surface); }
.faq-layout { display: grid; grid-template-columns: 330px 1fr; align-items: start; gap: 90px; }
.faq-side { position: sticky; top: 25px; }.faq-side > p { color: var(--muted); font-size: 13px; }
.faq-call { margin-top: 30px; padding: 18px; border: 1px solid #cfe0f7; border-radius: 16px; background: linear-gradient(145deg, #fff, #f4f8ff); box-shadow: 0 10px 28px rgba(12,57,116,.07); }
.faq-call > span { display: block; color: var(--muted); font-size: 11px; }
.faq-chat-cta { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 52px; margin-top: 12px; padding: 0 8px 0 16px; color: #fff; border: 0; border-radius: 13px; background: linear-gradient(125deg, #26ca82, #07985a); box-shadow: 0 10px 22px rgba(3,125,74,.28), inset 0 1px 0 rgba(255,255,255,.14); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.faq-chat-cta b { font-size: 12px; font-weight: 750; }.faq-chat-cta > i { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: rgba(255,255,255,.16); font-size: 17px; font-style: normal; }
.faq-chat-cta:hover, .faq-chat-cta:focus-visible { outline: none; background: linear-gradient(125deg, #31d98f, #078a51); box-shadow: 0 14px 28px rgba(3,125,74,.36); transform: translateY(-1px); }
.faq-call small { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 10px; color: var(--green-dark); font-size: 9px; font-weight: 400; }.faq-call small .status-dot { width: 6px; height: 6px; flex-basis: 6px; }
.faq-list { border-top: 1px solid #d7e1ec; }
.faq-item { border-bottom: 1px solid #d7e1ec; }
.faq-question { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; padding: 22px 0; color: var(--navy-900); border: 0; background: transparent; font-size: 16px; font-weight: 750; text-align: left; cursor: pointer; }
.faq-question:focus-visible { outline: 2px solid rgba(91,154,239,.55); outline-offset: 5px; border-radius: 5px; }
.faq-question i { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; color: var(--blue); background: #fff; border: 1px solid #ccdaeb; border-radius: 50%; font-style: normal; transition: transform .3s cubic-bezier(.22,1,.36,1), background .2s; }
.faq-item.is-open .faq-question i { transform: rotate(45deg); }
.faq-answer { height: 0; overflow: hidden; opacity: 0; transition: height .34s cubic-bezier(.22,1,.36,1), opacity .22s ease; }
.faq-item.is-open .faq-answer { opacity: 1; }
.faq-answer-inner { padding: 0 58px 22px 0; }
.faq-list p { max-width: 720px; margin: 0 0 14px; color: var(--muted); font-size: 13px; }

.final-cta { padding: 58px 0; color: #fff; background: linear-gradient(120deg, #0a3970, #0d5fcb); }
.final-cta-inner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; }
.final-avatar { position: relative; width: 80px; height: 80px; }.final-avatar img { width: 80px; height: 80px; border: 2px solid rgba(255,255,255,.75); border-radius: 50%; object-fit: cover; object-position: center top; }
.final-cta h2 { margin: 0 0 3px; font-size: 30px; letter-spacing: -.035em; }.final-cta p { margin: 0; color: rgba(255,255,255,.66); font-size: 13px; }
.light-btn { display: inline-flex; align-items: center; gap: 25px; min-height: 54px; padding: 0 22px; color: var(--navy-900); background: #fff; }.light-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,.16); }

.site-footer { padding: 65px 0 18px; color: #a8b8ca; background: var(--navy-950); }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.25fr; gap: 55px; }
.footer-brand img { display: block; width: 180px; height: auto; filter: brightness(0) invert(1); }.site-footer .footer-brand p { margin: 38px 0 0; color: #718398; font-size: 11px; line-height: 1.8; }
.site-footer h2 { margin: 0 0 15px; color: #fff; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.site-footer a, .site-footer p { display: block; margin: 0 0 7px; color: #8798ac; font-size: 11px; text-decoration: none; }.site-footer a:hover { color: #fff; }.footer-phone { color: #fff !important; font-size: 16px !important; font-weight: 800; }
.footer-bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 55px; padding-top: 17px; border-top: 1px solid rgba(255,255,255,.08); color: #617489; font-size: 9px; }

.mobile-sticky { display: none; }
.recent-slider-dots { display: none; }
.cookie-banner { position: fixed; z-index: 200; left: 24px; right: 24px; bottom: 20px; max-width: 850px; margin: auto; align-items: center; justify-content: space-between; gap: 28px; padding: 17px 19px; border: 1px solid #d7e1ed; border-radius: 16px; background: #fff; box-shadow: 0 18px 60px rgba(4,20,38,.24); }
.cookie-banner:not([hidden]) { display: flex; }.cookie-banner strong { font-size: 13px; }.cookie-banner p { display: inline; margin: 0 7px 0 5px; color: var(--muted); font-size: 10px; }.cookie-banner a { color: var(--blue); font-size: 10px; }.cookie-actions { display: flex; gap: 8px; flex: none; }.cookie-actions button { min-height: 38px; padding: 0 13px; border: 1px solid #cfdae8; border-radius: 9px; background: #fff; color: var(--ink); font-size: 10px; font-weight: 700; }.cookie-actions button:last-child { border-color: var(--blue); color: #fff; background: var(--blue); }

.legal-page { background: var(--surface); }.legal-header { position: static; color: #fff; background: var(--navy-900); }.legal-header .site-header { position: static; }.legal-main { padding: 58px 0 90px; }.legal-card { max-width: 900px; margin: auto; padding: 45px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 12px 40px rgba(8,33,67,.06); }.legal-card h1 { margin: 0 0 10px; font-size: 38px; line-height: 1.1; letter-spacing: -.04em; }.legal-card .legal-date { color: var(--muted); font-size: 12px; }.legal-card h2 { margin: 34px 0 10px; font-size: 20px; }.legal-card p, .legal-card li { color: #52657b; font-size: 13px; }.legal-card a { color: var(--blue); }.back-link { display: inline-flex; margin-bottom: 22px; color: var(--blue); font-size: 12px; font-weight: 750; text-decoration: none; }

/* Unified dark theme */
body { color: #edf5ff; background: #06172a; }
.hero-team-surface { position: relative; overflow: hidden; background: radial-gradient(circle at 86% 9%, rgba(47,112,205,.27), transparent 29%), radial-gradient(circle at 12% 45%, rgba(20,77,142,.16), transparent 31%), linear-gradient(135deg, #041426 0%, #082b52 49%, #0a2b4e 100%); }
.hero-team-surface .hero { overflow: visible; background: transparent; }
.hero-team-surface .team-section-early { background: transparent; }
.trust-strip { color: #edf5ff; background: linear-gradient(180deg, #071a30, #081f39); border-color: rgba(118,164,218,.18); }
.trust-grid > div { border-color: rgba(118,164,218,.16); }
.trust-grid strong { color: #f5f9ff; }
.trust-grid span { color: #8fa5bd; }
.section-heading h2, .team-copy h2, .faq-side h2 { color: #f1f7ff; }
.section-heading p, .team-copy > p, .faq-side > p { color: #9aadc3; }
.recent-section { position: relative; background: radial-gradient(circle at 85% 10%, rgba(31,100,184,.14), transparent 31%), linear-gradient(180deg, #081d35, #071a30); }
.recent-section::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(rgba(137,181,232,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(137,181,232,.04) 1px, transparent 1px); background-size: 72px 72px; }
.recent-section > .container { position: relative; z-index: 1; }
.answer-card { color: #edf5ff; border-color: rgba(125,174,229,.28); background: radial-gradient(circle at 12% 0, rgba(61,132,218,.13), transparent 44%), linear-gradient(150deg, #103453 0%, #0c2947 58%, #091f38 100%); box-shadow: 0 16px 38px rgba(0,8,20,.24), inset 0 1px 0 rgba(202,226,255,.055); }
.answer-card:hover { border-color: rgba(112,169,239,.48); background: radial-gradient(circle at 12% 0, rgba(72,148,239,.17), transparent 44%), linear-gradient(150deg, #133c60 0%, #0e2f51 58%, #0a243f 100%); box-shadow: 0 22px 46px rgba(0,8,20,.3), inset 0 1px 0 rgba(218,235,255,.07); }
.featured-answer { border-color: rgba(91,153,242,.65); box-shadow: inset 0 3px 0 #3c8cff, 0 18px 42px rgba(0,35,82,.26); }
.answer-meta span { color: #84b5ff; background: rgba(57,125,224,.14); }
.answer-meta time { color: #8499b0; }
.answer-card h3 { color: #f4f8fd; }
.answer-card p { color: #a6b6c9; }
.text-cta { color: #6fa8ff; }
.answer-card { position: relative; appearance: none; min-height: 326px; overflow: hidden; color: #edf5ff; text-align: left; cursor: pointer; }
.answer-card:focus-visible { outline: 2px solid #65a7ff; outline-offset: 4px; }
.answer-card::before { content: "“"; position: absolute; right: 18px; top: 46px; color: rgba(116,173,255,.08); font-family: Georgia, serif; font-size: 104px; line-height: 1; pointer-events: none; }
.answer-card::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 96px; background: linear-gradient(180deg, transparent, rgba(9,31,56,.97) 58%); pointer-events: none; transition: background .22s ease; }
.answer-card:hover::after { background: linear-gradient(180deg, transparent, rgba(10,36,63,.98) 58%); }
.answer-meta { position: relative; z-index: 2; width: 100%; }
.answer-meta .answer-category { display: inline-flex; }
.answered-badge { position: relative; z-index: 2; display: inline-flex; align-items: center; align-self: flex-start; gap: 6px; margin: 1px 0 19px; padding: 7px 10px; color: #8df0be; border: 1px solid rgba(59,218,139,.25); border-radius: 100px; background: rgba(28,189,110,.12); font-size: 10px; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; }
.answered-badge i { display: grid; place-items: center; width: 15px; height: 15px; color: #062d20; border-radius: 50%; background: #3adb8b; font-size: 9px; font-style: normal; }
.answer-question { position: relative; z-index: 2; display: block; max-width: 94%; max-height: 112px; overflow: hidden; color: #eef6ff; font-size: 17px; font-weight: 100; line-height: 1.5; letter-spacing: -.012em; -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 57%, transparent 100%); mask-image: linear-gradient(180deg, #000 0%, #000 57%, transparent 100%); }
.answer-private { position: absolute; z-index: 3; left: 24px; right: 24px; bottom: 22px; display: flex; align-items: center; gap: 7px; color: #6ddba7; font-size: 10px; font-weight: 650; letter-spacing: .02em; }
.answer-private::after { content: "Открыть"; margin-left: auto; color: #7da9df; font-weight: 750; }
.answer-private .shield-icon { width: 11px; height: 11px; flex-basis: 11px; }
.secondary-btn { color: #eaf3ff; background: #0b2848; border-color: rgba(122,171,229,.28); box-shadow: 0 9px 24px rgba(0,9,24,.22); }
.secondary-btn:hover, .secondary-btn:focus-visible { color: #fff; background: #10365e; border-color: #568fdb; }
.recent-chat-cta { position: relative; justify-content: space-between; min-width: 330px; min-height: 58px; padding: 0 10px 0 22px; overflow: hidden; color: #fff; border: .5px solid rgba(100,232,170,.7); border-radius: 15px; background: linear-gradient(135deg, #27cd84 0%, #10aa67 58%, #078a50 100%); box-shadow: 0 14px 30px rgba(1,92,55,.38), inset 0 1px 0 rgba(255,255,255,.16); font-size: 14px; }
.recent-chat-cta::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,.12), transparent 42%); }
.recent-chat-cta span, .recent-chat-cta i { position: relative; z-index: 1; }
.recent-chat-cta i { display: grid; place-items: center; width: 38px; height: 38px; border: .5px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(0,70,42,.3); font-size: 18px; transition: transform .18s ease, background .18s ease; }
.recent-chat-cta:hover, .recent-chat-cta:focus-visible { color: #fff; border-color: rgba(135,245,191,.88); background: linear-gradient(135deg, #33dc91 0%, #13b670 58%, #078049 100%); box-shadow: 0 18px 36px rgba(1,92,55,.46), inset 0 1px 0 rgba(255,255,255,.2); transform: translateY(-2px); }
.recent-chat-cta:hover i, .recent-chat-cta:focus-visible i { background: rgba(0,66,39,.46); transform: translateX(2px); }
.team-section-early .secondary-btn { color: #fff; border-color: rgba(100,232,170,.54); background: linear-gradient(135deg, #21c77c, #078e53); box-shadow: 0 12px 26px rgba(1,91,54,.3), inset 0 1px 0 rgba(255,255,255,.12); }
.team-section-early .secondary-btn:hover, .team-section-early .secondary-btn:focus-visible { color: #fff; border-color: rgba(137,244,191,.78); background: linear-gradient(135deg, #2fd88b, #07814b); box-shadow: 0 15px 30px rgba(1,91,54,.38); }
.topics-section { background: linear-gradient(180deg, #06172a, #071b31); }
.topic-card { color: #edf5ff; border-color: rgba(120,166,219,.19); background: linear-gradient(145deg, #0a213c, #081c33); box-shadow: inset 0 1px 0 rgba(255,255,255,.02); }
.topic-card:hover, .topic-card:focus-visible { border-color: rgba(102,159,232,.6); background: linear-gradient(145deg, #0e2c4f, #0a223d); box-shadow: 0 17px 38px rgba(0,8,20,.28); }
.topic-symbol { color: #82b7ff; }
.topic-card small { color: #91a5bc; }
.topic-card > i { color: #68809b; }
.topic-card-accent { color: #fff; border-color: rgba(78,147,238,.52); background: linear-gradient(145deg, #12427a, #0b2a4e); box-shadow: 0 15px 36px rgba(0,28,68,.28); }
.topic-card-accent:hover, .topic-card-accent:focus-visible { background: linear-gradient(145deg, #175596, #0d345f); border-color: #65a1ed; }
.steps-section { border-top: 1px solid rgba(111,157,212,.14); border-bottom: 1px solid rgba(111,157,212,.14); background: radial-gradient(circle at 50% 0, rgba(27,99,190,.16), transparent 42%), #071b34; }
.team-section { background: radial-gradient(circle at 8% 30%, rgba(30,103,193,.12), transparent 28%), linear-gradient(180deg, #081e37, #071a30); }
.team-section-early { position: relative; margin-top: 0; padding-top: 132px; padding-bottom: 116px; background: radial-gradient(circle at 72% 66%, rgba(20,83,148,.12), transparent 42%), #0a2b4e; }
.team-section-early::before { content: none; }
.team-section-early > .container { position: relative; z-index: 1; }
.team-section-early .team-copy h2 { max-width: 520px; font-size: clamp(34px, 3.55vw, 46px); }
.team-copy > p { color: #9aadc3; }
.team-proof strong { color: #74abff; }
.team-proof span { color: #91a6bd; }
.team-card { border: 1px solid rgba(118,164,218,.2); background: #0b2746; box-shadow: 0 14px 34px rgba(0,8,20,.22); }
.faq-section { background: linear-gradient(180deg, #06172a, #071b32); }
.faq-side > p { color: #98abc1; }
.faq-call { border-color: rgba(108,161,224,.28); background: linear-gradient(145deg, #0d2a4a, #091f39); box-shadow: 0 14px 32px rgba(0,8,20,.24), inset 0 1px 0 rgba(255,255,255,.025); }
.faq-call > span { color: #9bafc5; }
.faq-call small { color: #67dda6; }
.faq-list { border-color: rgba(119,164,218,.2); }
.faq-item { border-color: rgba(119,164,218,.2); }
.faq-question { color: #edf5ff; }
.faq-question i { color: #78adff; background: #0b2949; border-color: rgba(117,166,224,.3); }
.faq-list p { color: #9dafc4; }
.final-cta { border-top: 1px solid rgba(128,177,233,.2); border-bottom: 1px solid rgba(128,177,233,.16); background: radial-gradient(circle at 75% 0, rgba(49,126,224,.3), transparent 42%), linear-gradient(120deg, #09284a, #0b4387); }
.light-btn { color: #fff; border: .5px solid rgba(116,237,179,.65); background: linear-gradient(135deg, #24ca80, #078e53); box-shadow: 0 11px 26px rgba(1,87,52,.3), inset 0 1px 0 rgba(255,255,255,.14); }
.light-btn:hover, .light-btn:focus-visible { color: #fff; background: linear-gradient(135deg, #31da8e, #07804a); box-shadow: 0 14px 30px rgba(1,87,52,.38); outline: none; }
.site-footer { border-top: 1px solid rgba(120,166,219,.12); background: #03101e; }
.cookie-banner { color: #edf5ff; border-color: rgba(122,170,226,.28); background: #0a213c; box-shadow: 0 18px 60px rgba(0,6,16,.52); }
.cookie-banner p { color: #9cafc4; }
.cookie-actions button { color: #dce9f8; border-color: rgba(120,166,219,.32); background: #0d2b4b; }
.contact-form { color: #edf5ff; border-color: rgba(115,167,230,.3); background: rgba(7,27,50,.98); box-shadow: 0 18px 42px rgba(0,7,18,.36), inset 0 1px 0 rgba(255,255,255,.025); }
.contact-form > p:first-of-type { color: #9cafc4; }
.input-group > span { color: #b4c5d8; }
.input-group small { color: #8498af; }
.input-group input { color: #f4f8fd; border: .5px solid rgba(107,161,225,.52); background: #06182d; }
.input-group input::placeholder { color: #7f94ac; }
.input-group input:focus { border-color: #67a5fa; background: #071d36; box-shadow: 0 0 0 3px rgba(78,147,243,.15); }
.another-question-btn { color: #88a3bf; border-color: #53718f; }
.another-question-btn:hover, .another-question-btn:focus-visible { color: #78adff; border-color: #78adff; }
.legal-page { color: #edf5ff; background: linear-gradient(180deg, #06172a, #071c33); }
.legal-main { min-height: calc(100vh - 86px); }
.legal-card { color: #edf5ff; border-color: rgba(120,166,219,.2); background: linear-gradient(150deg, #0b2847, #081d35); box-shadow: 0 18px 48px rgba(0,7,18,.28); }
.legal-card h1, .legal-card h2 { color: #f2f7fd; }
.legal-card .legal-date, .legal-card p, .legal-card li { color: #a2b4c8; }
.legal-card a, .back-link { color: #79adff; }

.privacy-question-modal { width: min(calc(100% - 32px), 500px); margin: auto; padding: 38px 36px 32px; overflow: visible; color: #edf6ff; border: 1px solid rgba(116,176,239,.3); border-radius: 24px; background: radial-gradient(circle at 18% 0, rgba(39,130,231,.2), transparent 38%), linear-gradient(150deg, #0c2b4b, #071b31 72%); box-shadow: 0 34px 100px rgba(0,7,19,.65), inset 0 1px 0 rgba(255,255,255,.05); text-align: center; }
.privacy-question-modal[open] { animation: privacyModalIn .24s ease both; }
.privacy-question-modal::backdrop { background: rgba(1,10,22,.76); backdrop-filter: blur(7px); }
.privacy-modal-close { position: absolute; right: 15px; top: 13px; display: grid; place-items: center; width: 35px; height: 35px; padding: 0; color: #91a9c2; border: 1px solid rgba(129,171,220,.18); border-radius: 50%; background: rgba(255,255,255,.035); font-size: 23px; font-weight: 300; line-height: 1; transition: color .18s, background .18s; }
.privacy-modal-close:hover, .privacy-modal-close:focus-visible { color: #fff; background: rgba(255,255,255,.09); outline: none; }
.privacy-modal-icon { display: grid; place-items: center; width: 62px; height: 62px; margin: 0 auto 16px; border: 1px solid rgba(61,221,143,.28); border-radius: 20px; background: rgba(35,199,120,.11); box-shadow: 0 0 0 8px rgba(32,199,122,.035); }
.privacy-modal-icon .shield-icon { width: 25px; height: 25px; flex-basis: 25px; }
.privacy-modal-kicker { display: block; margin-bottom: 7px; color: #65dfa5; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.privacy-question-modal h2 { margin: 0; color: #f5f9ff; font-size: 29px; line-height: 1.12; letter-spacing: -.035em; }
.privacy-question-modal p { max-width: 400px; margin: 16px auto 19px; color: #a8bbcf; font-size: 13px; line-height: 1.58; }
.privacy-question-modal > strong { display: block; margin-bottom: 16px; color: #dfeeff; font-size: 14px; }
.privacy-modal-actions { display: flex; flex-direction: column; gap: 9px; }
.privacy-modal-primary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; padding: 0 10px 0 20px; color: #fff; border: .5px solid rgba(105,235,173,.66); border-radius: 14px; background: linear-gradient(135deg, #25ca82, #078f54); box-shadow: 0 13px 28px rgba(1,88,53,.38), inset 0 1px 0 rgba(255,255,255,.14); font-size: 14px; font-weight: 800; }
.privacy-modal-primary i { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 50%; background: rgba(0,70,42,.34); font-size: 18px; font-style: normal; }
.privacy-modal-primary:hover, .privacy-modal-primary:focus-visible { background: linear-gradient(135deg, #31da8f, #07804a); outline: none; transform: translateY(-1px); }
.privacy-modal-secondary { min-height: 42px; color: #8fa8c1; border: 0; background: transparent; font-size: 11px; }
.privacy-modal-secondary:hover, .privacy-modal-secondary:focus-visible { color: #d7e8fa; outline: none; }
.primary-btn, .faq-chat-cta, .recent-chat-cta, .team-section-early .secondary-btn, .light-btn, .privacy-modal-primary, .mobile-sticky { text-shadow: 0 1px 1px rgba(0,58,35,.46); }
.primary-btn, .recent-chat-cta, .team-section-early .secondary-btn, .light-btn, .privacy-modal-primary { border-bottom-color: rgba(0,67,40,.38); }
@keyframes privacyModalIn { from { opacity: 0; transform: translateY(14px) scale(.975); } to { opacity: 1; transform: none; } }

@media (max-width: 1300px) {
  .container { width: min(90%, var(--container)); }
}

@media (max-width: 1050px) {
  .hero-grid { gap: 52px; }
  .hero h1 { font-size: 50px; }
  .trust-grid > div { padding: 0 18px; }
  .recent-grid { grid-template-columns: repeat(2, 1fr); }
  .topics-grid { grid-template-columns: repeat(2, 1fr); }
  .team-layout { grid-template-columns: 1fr; gap: 45px; }
  .team-copy { max-width: 680px; }.team-grid { min-height: 540px; }
}

@media (max-width: 820px) {
  .header-inner { min-height: 75px; }.brand img { width: 152px; }.brand > span, .online-pill { display: none; }.phone-link small { display: none; }
  .hero { padding-top: 112px; min-height: 0; }.hero-grid { grid-template-columns: 1fr; gap: 46px; }.hero-copy { text-align: center; }.hero h1 { margin-left: auto; margin-right: auto; }.hero-points { justify-content: center; }
  .chat-shell { width: 100%; margin: auto; text-align: left; }
  .trust-grid { grid-template-columns: repeat(2, 1fr); }.trust-grid > div { padding: 18px; border-bottom: 1px solid rgba(118,164,218,.16); }.trust-grid > div:nth-child(2) { border-right: 0; }.trust-grid > div:nth-child(3), .trust-grid > div:nth-child(4) { border-bottom: 0; }
  .section { padding: 78px 0; }.split-heading { grid-template-columns: 1fr; gap: 15px; }
  .team-section-early { padding-top: 104px; padding-bottom: 90px; }
  .steps-grid { gap: 0; }.steps-grid article { padding: 0 15px; }.steps-grid::before { left: 15%; right: 15%; }
  .faq-layout { grid-template-columns: 1fr; gap: 35px; }.faq-side { position: static; }.faq-call { max-width: 330px; }
  .final-cta-inner { grid-template-columns: auto 1fr; }.final-cta .light-btn { grid-column: 1 / -1; justify-self: center; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  body { padding-bottom: 0; }
  .container { width: min(calc(100% - 40px), var(--container)); }
  .site-header { background: rgba(4,20,38,.82); backdrop-filter: blur(12px); }.header-inner { min-height: 66px; }.brand img { width: 134px; }.phone-icon { width: 34px; height: 34px; }.phone-link b { display: none; }
  .hero { padding: 93px 0 38px; background: linear-gradient(180deg, transparent 74%, #0a2b4e 100%), radial-gradient(circle at 25% 26%, rgba(26,107,234,.28), transparent 34%), linear-gradient(155deg, #041426, #082b52); }
  .hero::before { background-size: 48px 48px; }.hero-grid { gap: 36px; }.hero-copy { text-align: center; }.hero h1 { font-size: clamp(35px, 10.8vw, 47px); line-height: 1.01; }.hero-points { justify-content: center; gap: 6px 14px; margin: 14px 0 0; font-size: 9px; }
  .chat-shell { margin-inline: 0; border-radius: 20px; box-shadow: 0 24px 55px rgba(0,0,0,.28); }.chat-topbar { min-height: 64px; padding: 9px 20px 9px 12px; }.mini-avatar, .mini-avatar img { width: 42px; height: 42px; }.chat-person strong { font-size: 13px; }.secure-badge { width: 12px; flex: 0 0 12px; gap: 0; overflow: hidden; font-size: 0; white-space: nowrap; }.secure-badge::before { display: block; }.chat-body { min-height: 473px; padding: 14px 12px 12px; }.chat-footer-note { justify-content: center; min-height: 0; margin: auto auto 0; padding: 43px 0 0; font-size: 9px; }.message-bubble { font-size: 12px; }.question-step { width: 100%; max-width: none; margin-left: 0; margin-top: 16px; }.textarea-wrap textarea { min-height: 120px; font-size: 16px; }.primary-btn { min-height: 54px; }.question-step .primary-btn { width: 100%; min-height: 56px; margin-top: 16px; }.response-choice { grid-template-columns: 1fr; width: 100%; max-width: none; margin-left: 0; }.response-choice-btn { min-height: 72px; }.contact-form { width: 100%; max-width: none; margin-left: 0; padding: 16px 14px; }.contact-form .lead-submit { width: 100%; min-height: 56px; }.another-question-btn { margin-top: 13px; }.input-group input { height: 49px; font-size: 16px; }.success-step { padding: 55px 15px; }.call-now strong { font-size: 19px; }.chat-shell.is-success .chat-body { min-height: 410px; padding: 20px 14px; }
  .trust-grid { grid-template-columns: 1fr; min-height: 0; padding: 7px 0; }.trust-grid > div { display: grid; grid-template-columns: 155px minmax(0,1fr); align-items: center; justify-content: stretch; gap: 14px; min-height: 64px; padding: 12px 0 !important; border-right: 0; border-bottom: 1px solid rgba(118,164,218,.16) !important; }.trust-grid > div:last-child { border-bottom: 0 !important; }.trust-grid strong { min-width: 0; font-size: 22px; }.trust-grid span { font-size: 10px; }
  .section { padding: 64px 0; }.section-heading { margin-bottom: 30px; }.section-heading h2, .team-copy h2, .faq-side h2 { font-size: 34px; }.split-heading { display: block; }.split-heading p { margin-top: 13px; }
  .team-section-early { padding-top: 86px; padding-bottom: 72px; }
  .team-section-early .team-copy h2 { font-size: 32px; }
  .recent-grid { display: flex; overflow-x: auto; overscroll-behavior-inline: contain; gap: 12px; margin-right: -20px; padding: 0 20px 12px 0; scroll-snap-type: x mandatory; scroll-padding-inline: 0; touch-action: pan-x pan-y; -webkit-overflow-scrolling: touch; scrollbar-width: none; }.recent-grid::-webkit-scrollbar { display: none; }.answer-card { flex: 0 0 calc(100% - 18px); min-height: 322px; scroll-snap-align: start; scroll-snap-stop: always; }.answer-question { font-size: 16px; }.recent-slider-dots { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 28px; margin: 5px 0 0; }.recent-slider-dot { width: 6px; height: 6px; padding: 0; border: 0; border-radius: 50%; background: rgba(132,170,214,.34); transition: width .2s ease, border-radius .2s ease, background .2s ease; }.recent-slider-dot.is-active { width: 20px; border-radius: 10px; background: #35d78e; }.center-cta { margin-top: 18px; }.secondary-btn { width: 100%; justify-content: space-between; }.recent-chat-cta { width: calc(100% - 20px); min-width: 0; max-width: 310px; margin-inline: auto; padding-left: 18px; font-size: 12px; }
  .topics-grid { grid-template-columns: 1fr 1fr; gap: 9px; }.topic-card { min-height: 160px; padding: 16px; }.topic-symbol { width: 39px; height: 39px; margin-bottom: 16px; border-radius: 12px; }.topic-symbol svg { width: 22px; height: 22px; }.topic-card strong { font-size: 13px; }.topic-card small { font-size: 9px; }.topic-card > i { top: 18px; right: 15px; }
  .steps-grid { grid-template-columns: 1fr; gap: 42px; }.steps-grid::before { display: none; }.steps-grid article { display: flex; flex-direction: column; align-items: center; padding: 0 25px; }.step-number { position: static; order: -2; margin-bottom: 10px; color: #72a9ff; font-size: 13px; font-weight: 850; line-height: 1; letter-spacing: .12em; }.step-number::before { content: none; }.step-icon { order: -1; width: 75px; height: 75px; margin-bottom: 17px; }
  .team-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 245px 190px 190px; gap: 9px; min-height: 0; }.team-card-large { grid-column: 1 / -1; grid-row: auto; }.team-card-large img { object-position: center; }.team-card:last-child { grid-column: 1 / -1; }.team-card:last-child img { object-position: center 18%; }
  .faq-question { padding: 19px 0; font-size: 14px; }.faq-answer-inner { padding-right: 0; }.faq-list p { font-size: 12px; }
  .final-cta { padding: 50px 0; }.final-cta-inner { display: flex; flex-direction: column; align-items: center; gap: 0; text-align: center; }.final-avatar, .final-avatar img { width: 72px; height: 72px; }.final-avatar { margin-bottom: 15px; }.final-cta .online-label { justify-content: center; margin-bottom: 10px; }.final-cta h2 { max-width: 310px; margin: 0 auto 9px; font-size: 27px; line-height: 1.12; }.final-cta p { max-width: 290px; margin: 0 auto; font-size: 11px; line-height: 1.55; }.final-cta .light-btn { width: 100%; margin-top: 24px; justify-content: space-between; }
  .footer-grid { grid-template-columns: 1fr; gap: 30px; }.site-footer .footer-brand p { margin-top: 42px; line-height: 1.9; }.footer-bottom { flex-direction: column; gap: 5px; margin-top: 35px; }
  .mobile-sticky { display: none !important; }
  .cookie-banner { left: 10px; right: 10px; bottom: 10px; align-items: stretch; flex-direction: column; gap: 12px; }.cookie-banner p { display: block; margin: 3px 0; }.cookie-actions button { flex: 1; }
  .legal-main { padding: 30px 0 70px; }.legal-card { padding: 24px 18px; border-radius: 15px; }.legal-card h1 { font-size: 30px; }
  .privacy-question-modal { width: calc(100% - 24px); padding: 34px 20px 24px; border-radius: 21px; }.privacy-question-modal h2 { font-size: 25px; }.privacy-question-modal p { font-size: 12px; }.privacy-modal-primary { min-height: 55px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
