body{margin:0;background:#F5F6F3}
a{color:#130231}a:hover{color:#4B3A6E}
input:focus{outline:2px solid #130231;outline-offset:1px}
.page{font-family:'IBM Plex Sans',system-ui,sans-serif;color:#130231;background:#F5F6F3;min-height:100vh}

.hero{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"head form" "body form";grid-template-rows:auto 1fr;column-gap:56px;row-gap:24px;padding:64px 24px 48px;align-items:start}
.hero-head{grid-area:head}.hero-body{grid-area:body}.hero-form{grid-area:form}

.form-msg{padding:12px 14px;border-radius:6px;font-size:14px;line-height:1.5}
.form-msg-error{background:#FDECEC;border:1px solid #F2B8B8;color:#7A1414}
.form-msg-ok{background:#E8F5EC;border:1px solid #A9D8B8;color:#14532D}
.form-msg[hidden]{display:none}
button[disabled]{opacity:.6;cursor:wait !important}

.faq{border-top:1px solid #DDE1DA}
.faq details{border-bottom:1px solid #DDE1DA}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 4px;font-size:17px;font-weight:600;line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;font-family:'IBM Plex Mono',monospace;font-size:22px;line-height:1;color:#130231;transition:transform .15s ease}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:#4B3A6E}
.faq summary:focus-visible{outline:2px solid #130231;outline-offset:2px}
.faq .answer{padding:0 4px 20px;font-size:16px;line-height:1.65;color:#3A4656;max-width:760px}
.faq .answer p{margin:0}.faq .answer p+p{margin-top:12px}

@media (max-width: 900px){.hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "form" "body";grid-template-rows:auto;row-gap:32px;padding:40px 24px 40px}}
@media (max-width: 820px){.steps{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width: 600px){.facts{grid-template-columns:minmax(0,1fr) !important}.logo{height:32px !important}.topphone{order:2;margin-left:auto;padding:8px 10px !important;font-size:13px}.topnav{order:3;width:100%;margin-left:0 !important;gap:24px !important;font-size:14px !important}}
@media (max-width: 520px){.steps{grid-template-columns:minmax(0,1fr) !important}}
