.contact-main{padding-bottom:48px}
.contact-main::after{left:45%;top:-220px;height:1200px}
.contact-inner{max-width:1312px;margin:auto;padding:0 56px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);grid-template-areas:"intro form" "proof form";grid-template-rows:auto 1fr;gap:30px 64px;align-items:start}
.contact-intro{grid-area:intro;min-width:0}
.contact-main h1{font-size:clamp(38px,3.3vw,49px);font-weight:500;line-height:1.16;letter-spacing:-.03em;margin:0 0 26px;text-wrap:balance;max-width:22ch}
.contact-highlight{position:relative;isolation:isolate;display:inline-block;white-space:nowrap;color:#2148b0;font-weight:600;padding:.04em .12em .10em;margin:.04em -.12em -.04em;border-radius:.12em;text-shadow:0 1px 0 #ffffff80}
.contact-highlight::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(150deg,#ffffffd6,#eef5ffb3 36%,#bddbfc8c 76%,#dcecffb3);box-shadow:inset 0 2px 1px #ffffffd9,inset 1px 0 1px #ffffffbf,inset 0 -1px 2px #76a7e64d,0 8px 18px -13px #264c8560}
.contact-highlight::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#fff,#ffffff60 30%,#8bbaff70 58%,#ffffffd9 82%,#b4d4f88c);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.contact-intro p{max-width:55ch;font-size:16px;line-height:1.8;color:#425b7a;margin:0 0 20px;text-wrap:pretty}
.contact-intro .contact-lead{font-size:20px;line-height:1.5;letter-spacing:-.012em;color:#172a47;margin-bottom:18px}
.contact-intro p:last-child{margin-bottom:0}
.contact-intro strong{font-weight:600;color:#29496f}
.contact-form-panel{grid-area:form;position:relative;isolation:isolate;min-width:0;padding:30px 32px 24px;border-radius:16px;background:linear-gradient(145deg,#ffffffb3,#e4effc85 72%,#dceaf966);box-shadow:inset 0 2px 1px #ffffffeb,inset 1px 0 1px #ffffff99,inset 0 -1px 2px #a6c3e759,0 22px 38px -29px #36578180;scroll-margin-top:112px}
.contact-form-panel::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(135deg,#ffffffeb,#ffffff29 35%,#a4c8f080 65%,#ffffffbf);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.contact-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.contact-form-heading h2{font-size:23px;font-weight:600;line-height:1.4;margin:0}
.contact-required-note{font-size:12px;line-height:1.6;color:#526b89;margin:8px 0 24px}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field label{display:block;font-size:13px;font-weight:500;color:#29496f;line-height:1.6;margin:0 0 8px}
.contact-field label>span:not(.field-optional){color:#526b89}
.field-optional{font-size:12px;font-weight:400;color:#526b89}
.contact-field input,.contact-field textarea{appearance:none;display:block;width:100%;min-height:50px;border:1px solid #758ba9;border-radius:10px;background:linear-gradient(150deg,#ffffffe0,#f7faffb3);color:#172a47;font:inherit;font-size:16px;line-height:1.5;padding:12px 14px;transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease;caret-color:#2148b0}
.contact-field textarea{resize:vertical;min-height:96px;max-height:300px}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#526b89;opacity:1}
.contact-field input:focus,.contact-field textarea:focus{outline:2px solid #2148b0;outline-offset:3px;border-color:#7799d3;box-shadow:0 0 0 6px #bad5ff3d}
.contact-field [aria-invalid="true"]{border-color:#a54549}
.field-error{font-size:12px;color:#922f3a;line-height:1.6;margin:6px 0 0}
.contact-submit{width:100%;border:0;justify-content:space-between;margin:26px 0 0;min-height:56px;cursor:pointer;font-family:inherit;font-size:14px}
.contact-submit:disabled{cursor:wait;opacity:.75}
.contact-submit:disabled .action-arrow svg{transform:none}
.contact-privacy{font-size:12px;line-height:1.75;color:#526b89;margin:15px 0 0}
.contact-privacy a{color:#29496f;text-decoration:underline;text-decoration-color:#7597c580;text-underline-offset:4px}
.contact-form-status{margin:20px 0 0;padding:14px 16px;background:#f8e8eb;color:#862e3a;font-size:14px;line-height:1.7;border-radius:10px}
.contact-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-proof{grid-area:proof;min-width:0}
.contact-benefits{list-style:none;padding:0;margin:0 0 30px;display:flex;flex-direction:column;gap:12px}
.contact-benefits li{display:flex;align-items:center;gap:12px;color:#29496f;font-size:14px;line-height:1.65}
.contact-benefits svg{width:19px;height:19px;color:#3d65a5;stroke-width:1.5}
.contact-person{display:flex;align-items:center;gap:24px}
.contact-person figure{position:relative;margin:0;flex:0 0 116px}
.contact-person figure::before{content:"";position:absolute;inset:10px -10px 27px 12px;z-index:-1;border-radius:12px;background:linear-gradient(140deg,#c9def470,#a9d0ff91);box-shadow:inset -1px 0 0 #ffffffd9;transform:rotate(4deg)}
.contact-person figure>img{display:block;width:116px;height:136px;object-fit:cover;object-position:center 28%;border-radius:12px;box-shadow:0 12px 20px -15px #17376366}
.contact-person figcaption{font-size:10px;color:#53647c;line-height:1.5;margin-top:8px}
.contact-person-copy strong{font-size:18px;font-weight:600;line-height:1.5;color:#172a47}
.contact-person-copy>p{font-size:13px;color:#526b89;line-height:1.65;margin:3px 0 16px}
.contact-review{display:inline-flex;align-items:center;gap:10px;min-height:44px}
.contact-review img{flex:none;width:20px;height:20px}
.contact-review b{display:block;color:#29496f;font-size:14px;font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums}
.contact-review b{display:flex;align-items:center;gap:7px}
.contact-stars{display:inline-flex;gap:1px;color:#886323}
.contact-stars svg{width:13px;height:13px;fill:currentColor;stroke:none}
.contact-review small{font-size:11px;color:#526b89;line-height:1.7}
.contact-success[hidden],.contact-form-status[hidden],.field-error[hidden],#contact-form[hidden]{display:none}
.contact-success{padding:20px 0 12px;outline:none}
.contact-success:focus-visible{outline:2px solid #2148b0;outline-offset:8px;border-radius:8px}
.contact-success-symbol{display:grid;place-items:center;width:52px;height:52px;margin-bottom:24px;background:#d4e4f880;color:#2148b0;border-radius:50%;box-shadow:inset 0 1px 1px #fff}
.contact-success-symbol svg{width:26px;height:26px}
.contact-success h2{font-size:30px;line-height:1.25;font-weight:600;margin:0 0 22px}
.contact-success p{font-size:16px;color:#425b7a;line-height:1.8;margin:0 0 20px}
.contact-success .legal-back{gap:12px;margin:0}
.contact-success .legal-back svg{transform:none}
@media(hover:hover){.contact-field input:hover,.contact-field textarea:hover{border-color:#5f7ea5}.contact-review:hover{text-decoration:underline;text-underline-offset:4px}.contact-privacy a:hover{color:#2148b0;text-decoration-color:currentColor}}
@media(max-width:1100px){.contact-inner{padding:0 6%}.contact-layout{gap:30px 38px}.contact-main h1{font-size:40px}.contact-form-panel{padding:28px 26px}.contact-person{gap:18px}.contact-person figure{flex-basis:100px}.contact-person figure>img{width:100px;height:120px}.contact-form-heading h2{font-size:21px}}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;grid-template-areas:"intro" "form" "proof";gap:34px;max-width:700px;margin:auto}.contact-main h1{max-width:25ch;font-size:46px}.contact-intro p{max-width:65ch}.contact-form-panel{padding:32px}.contact-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}.contact-benefits{margin:0}.contact-form-heading h2{font-size:23px}.contact-form-panel{scroll-margin-top:105px}}
@media(max-width:600px){.contact-main{padding-top:96px;padding-bottom:30px}.contact-main h1{font-size:34px;line-height:1.17;margin-bottom:22px;max-width:23ch}.contact-intro .contact-lead{font-size:18px;line-height:1.5}.contact-intro p{font-size:15px;line-height:1.75}.contact-layout{gap:28px}.contact-form-panel{padding:26px 22px 24px;scroll-margin-top:24px}.contact-form-heading h2{font-size:21px}.contact-fields{grid-template-columns:1fr;gap:20px}.contact-field-wide{grid-column:auto}.contact-submit{font-size:12.5px;padding-left:14px;gap:10px}.contact-submit .action-arrow{flex-shrink:0}.contact-proof{display:flex;flex-direction:column;align-items:stretch;gap:30px}.contact-person figure{flex-basis:104px}.contact-person figure>img{width:104px;height:124px}.contact-person{gap:22px}.contact-required-note{margin-bottom:22px}.contact-success h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.contact-field input,.contact-field textarea{transition:none}}
@media(prefers-reduced-transparency:reduce){.contact-form-panel,.contact-highlight::before{background:#eaf2fc}.contact-field input,.contact-field textarea{background:#fff}}
@media(forced-colors:active){.contact-highlight,.contact-intro p,.contact-intro strong,.contact-field label,.field-optional,.contact-required-note,.contact-privacy,.contact-benefits li,.contact-person-copy strong,.contact-person-copy>p,.contact-review b,.contact-review small,.contact-success p{color:CanvasText}.contact-highlight::before,.contact-highlight::after,.contact-form-panel::before,.contact-person figure::before{display:none}.contact-form-panel{background:Canvas;border:1px solid CanvasText;box-shadow:none}.contact-field input,.contact-field textarea{background:Field;color:FieldText;border-color:FieldText}.contact-success-symbol{background:Canvas;box-shadow:none;border:1px solid CanvasText}.contact-form-status,.field-error{background:Canvas;color:CanvasText}.contact-form-status{border:1px solid CanvasText}.contact-field input:focus,.contact-field textarea:focus{outline-color:Highlight;box-shadow:none}.contact-review,.contact-privacy a{color:LinkText}.contact-submit{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}}
