.contact-hero { position: relative; overflow: hidden; padding: 82px 24px 70px; background: linear-gradient(135deg,#07142a 0%,#0a1c38 60%,#0d2a50 100%); color:#fff; }
.contact-hero::before { content:""; position:absolute; inset:-50% -10% auto 45%; height:460px; border-radius:50%; background:radial-gradient(circle,rgba(47,133,255,.22),transparent 68%); pointer-events:none; }
.contact-hero__inner { position:relative; z-index:1; width:min(1180px,100%); margin:0 auto; display:flex; align-items:flex-end; justify-content:space-between; gap:48px; }
.contact-hero__inner > div:first-child { max-width:740px; }
.contact-hero__kicker { display:inline-flex; align-items:center; gap:8px; margin-bottom:18px; color:#7dd3fc; font-size:12px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.contact-hero__kicker::before { content:""; width:26px; height:2px; background:currentColor; }
.contact-hero h1 { margin:0; color:#f8fafc; font-size:clamp(38px,5vw,64px); line-height:1.05; letter-spacing:-.045em; }
.contact-hero p { max-width:650px; margin:22px 0 0; color:#b9c8dc; font-size:17px; line-height:1.75; }
.contact-hero__status { display:flex; align-items:center; gap:12px; min-width:265px; padding:16px 18px; border:1px solid rgba(148,184,226,.24); border-radius:16px; background:rgba(3,14,30,.45); backdrop-filter:blur(12px); }
.contact-hero__status > span { width:10px; height:10px; flex:0 0 auto; border-radius:50%; background:#34d399; box-shadow:0 0 0 6px rgba(52,211,153,.13); }
.contact-hero__status div { display:grid; gap:3px; }
.contact-hero__status strong { font-size:13px; }
.contact-hero__status small { color:#94a9c4; font-size:11px; }
.contact-section { padding:64px 24px 90px; background:var(--background); }
.contact-layout { width:min(1180px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr); gap:34px; align-items:start; }
.contact-panel,.contact-aside__card,.contact-aside__note { border:1px solid var(--line); background:var(--surface); box-shadow:0 18px 55px rgba(15,23,42,.06); }
.contact-panel { padding:38px; border-radius:24px; }
.contact-panel__head { margin-bottom:30px; }
.contact-panel__head > span { color:var(--blue-500); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.contact-panel__head h2 { margin:8px 0 8px; font-size:clamp(24px,3vw,34px); letter-spacing:-.025em; }
.contact-panel__head p { margin:0; color:var(--muted); line-height:1.65; }
.contact-form--modern { gap:19px; }
.contact-form__row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-form--modern .form-group label { text-transform:none; letter-spacing:0; color:var(--text); font-size:13px; }
.contact-form--modern .form-group input,.contact-form--modern .form-group textarea { width:100%; border-radius:11px; background:var(--background); }
.contact-form--modern .form-group textarea { min-height:164px; }
.contact-form__row > .form-group { min-width:0; }
.contact-form--modern .form-group select { width:100%; min-height:46px; border:1px solid var(--line); border-radius:11px; padding:12px; background:var(--background); color:var(--text); font:inherit; }
.contact-form--modern .form-group input[type="tel"] { direction:ltr; text-align:left; }
.contact-help { display:block; margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.65; overflow-wrap:anywhere; }
.contact-required { color:var(--muted); font-size:11px; font-weight:400; }
.contact-process ol { display:grid; gap:18px; margin:0; padding-left:22px; }
.contact-process li { padding-left:4px; color:var(--blue-500); }
.contact-process li::before { display:none; }
.contact-process li strong,.contact-process li span { display:block; }
.contact-process li strong { color:var(--text); font-size:13px; margin-bottom:4px; }
.contact-process li span { color:var(--muted); font-size:12px; line-height:1.65; }
.contact-form--modern .field-validation-error,.contact-field-error,.contact-validation { color:#dc2626; font-size:12px; }
.contact-validation:empty,.contact-field-error:empty { display:none; }
.contact-validation ul { margin:0 0 8px; padding:12px 14px 12px 32px; border-radius:10px; background:rgba(220,38,38,.08); }
.contact-consent { display:flex; align-items:flex-start; gap:11px; color:var(--muted); font-size:12px; line-height:1.55; cursor:pointer; }
.contact-consent input { width:17px; height:17px; margin-top:2px; flex:0 0 auto; accent-color:var(--blue-500); }
.contact-consent strong { color:var(--text); }
.contact-security { display:grid; gap:14px; padding:18px; border:1px solid var(--line); border-radius:14px; background:var(--background); }
.contact-security__label { display:flex; align-items:center; gap:10px; }
.contact-security__label svg { width:25px; height:25px; color:#16a34a; }
.contact-security__label div { display:grid; gap:2px; }
.contact-security__label strong { font-size:13px; }
.contact-security__label small { color:var(--muted); font-size:11px; }
.contact-security__unavailable { margin:0; color:#b45309; font-size:12px; line-height:1.5; }
.contact-submit { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 24px; border:0; border-radius:12px; background:linear-gradient(135deg,var(--blue-500),#1757d4); color:#fff; font-size:14px; font-weight:800; box-shadow:0 12px 28px rgba(37,99,235,.25); cursor:pointer; transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease; }
.contact-submit:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 16px 34px rgba(37,99,235,.32); }
.contact-submit:disabled { opacity:.55; cursor:not-allowed; }
.contact-submit svg { width:17px; height:17px; }
.contact-alert { display:flex; align-items:center; gap:10px; margin-bottom:22px; padding:13px 15px; border-radius:11px; }
.contact-alert svg { width:20px; height:20px; }
.contact-alert p { margin:0; }
.contact-alert--success { color:#047857; background:rgba(16,185,129,.1); }
.contact-aside { display:grid; gap:16px; }
.contact-aside__card { display:flex; align-items:center; gap:14px; padding:20px; border-radius:16px; }
.contact-aside__icon { display:grid; place-items:center; width:42px; height:42px; flex:0 0 auto; border-radius:12px; color:var(--blue-500); background:rgba(37,99,235,.1); }
.contact-aside__icon svg { width:21px; height:21px; }
.contact-aside__card div { min-width:0; display:grid; gap:4px; }
.contact-aside__card small { color:var(--muted); font-size:11px; }
.contact-aside__card a,.contact-aside__card strong { overflow-wrap:anywhere; color:var(--text); font-size:13px; }
.contact-aside__note { margin-top:6px; padding:25px; border-radius:18px; }
.contact-aside__note h2 { margin:0 0 15px; font-size:17px; }
.contact-aside__note ul { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.contact-aside__note li { position:relative; padding-left:20px; color:var(--muted); font-size:12px; line-height:1.55; }
.contact-aside__note li::before { content:""; position:absolute; left:0; top:.55em; width:7px; height:7px; border-radius:50%; background:#38bdf8; box-shadow:0 0 0 4px rgba(56,189,248,.12); }
.contact-socials { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.contact-socials a { display:grid; place-items:center; min-height:42px; border:1px solid var(--line); border-radius:10px; color:var(--muted); background:var(--surface); font-size:11px; font-weight:700; }
.contact-socials a:hover { color:var(--blue-500); border-color:var(--blue-500); }
[data-theme="dark"] .contact-panel,[data-theme="dark"] .contact-aside__card,[data-theme="dark"] .contact-aside__note { box-shadow:0 18px 55px rgba(0,0,0,.22); }
@media (max-width:900px) { .contact-hero { padding-top:64px; } .contact-hero__inner { align-items:flex-start; flex-direction:column; gap:28px; } .contact-layout { grid-template-columns:1fr; } .contact-aside { grid-template-columns:1fr 1fr; } .contact-aside__note,.contact-socials { grid-column:1/-1; } }
@media (max-width:600px) { .contact-hero,.contact-section { padding-left:16px; padding-right:16px; } .contact-hero { padding-top:48px; padding-bottom:48px; } .contact-hero__status { width:100%; min-width:0; } .contact-panel { padding:24px 18px; border-radius:18px; } .contact-form__row,.contact-aside { grid-template-columns:1fr; } .contact-aside__note,.contact-socials { grid-column:auto; } .contact-socials { grid-template-columns:repeat(2,1fr); } .cf-turnstile { transform-origin:left top; max-width:100%; overflow:hidden; } }
