.contact-page { min-height:100vh; }
.contact-main { overflow:hidden; width:100%; max-width:100%; }
.contact-hero { position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.05fr);gap:clamp(50px,7vw,110px);align-items:center;padding-top:170px;padding-bottom:100px;min-height:900px; }
.contact-orb { position:absolute;border-radius:999px;filter:blur(8px);pointer-events:none;opacity:.7; }
.contact-orb-one { width:480px;height:480px;background:radial-gradient(circle,rgba(255,212,0,.16),transparent 68%);right:-180px;top:80px; }
.contact-orb-two { width:420px;height:420px;background:radial-gradient(circle,rgba(255,255,255,.055),transparent 68%);left:-230px;bottom:10px; }
.contact-intro { position:relative;z-index:1; }
.contact-intro h1 { font-size:clamp(56px,6.1vw,94px);line-height:.96;letter-spacing:-.065em;margin:24px 0 30px; }
.contact-intro > p { max-width:610px;color:#9a9a94;font-size:18px;line-height:1.75;margin:0; }
.contact-steps { display:grid;gap:0;margin-top:54px;border-top:1px solid var(--line); }
.contact-steps article { display:grid;grid-template-columns:55px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line); }
.contact-steps article > span { color:var(--yellow);font-family:"Manrope";font-weight:800;font-size:13px;padding-top:3px; }
.contact-steps strong { display:block;font-family:"Manrope";font-size:16px;margin-bottom:6px; }
.contact-steps p { margin:0;color:#777772;font-size:14px;line-height:1.55; }
.form-shell { position:relative;z-index:2;padding:38px;background:linear-gradient(145deg,rgba(25,25,23,.97),rgba(12,12,12,.98));border:1px solid rgba(255,255,255,.11);border-radius:30px;box-shadow:0 35px 100px rgba(0,0,0,.48);overflow:hidden; }
.form-shell::before { content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--yellow),transparent);opacity:.65; }
.form-topline { display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:30px;padding-bottom:26px;border-bottom:1px solid var(--line); }
.form-topline h2,.success-state h2 { font-size:32px;letter-spacing:-.04em;margin:8px 0 0; }
.secure-pill { flex:none;display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border-radius:999px;background:#20201d;color:#aaa9a2;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em; }
.secure-pill i { width:7px;height:7px;border-radius:50%;background:#6ee7a5;box-shadow:0 0 12px rgba(110,231,165,.7); }
#leadForm { display:grid;gap:20px; }
.form-grid { display:grid;gap:16px; }
.two-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.field { display:grid;gap:9px; }
.field > span,.budget-field legend { font-size:12px;color:#b9b9b2;font-weight:700;letter-spacing:.055em;text-transform:uppercase; }
.field input { width:100%;height:56px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:#10100f;color:#f7f7f2;padding:0 16px;font:500 15px "DM Sans",sans-serif;outline:none;transition:border-color .2s,box-shadow .2s,background .2s; }
.field input::placeholder { color:#5e5e59; }
.field input:focus { border-color:rgba(255,212,0,.75);box-shadow:0 0 0 4px rgba(255,212,0,.08);background:#131310; }
.field.invalid input { border-color:#ff6969;box-shadow:0 0 0 4px rgba(255,70,70,.07); }
.field-error { display:none;color:#ff8585;font-size:11px; }
.field.invalid .field-error,.budget-field.invalid .budget-error { display:block; }
.budget-field { border:0;padding:0;margin:2px 0 0;min-width:0; }
.budget-field legend { margin-bottom:12px; }
.budget-options { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }
.budget-options label:last-child { grid-column:1 / -1; }
.budget-options input { position:absolute;opacity:0;pointer-events:none; }
.budget-options span { min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 12px;background:#10100f;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#85857f;font-size:13px;font-weight:700;cursor:pointer;transition:.2s; }
.budget-options input:checked + span { color:#090909;background:var(--yellow);border-color:var(--yellow);box-shadow:0 8px 28px rgba(255,212,0,.18); }
.budget-options span:hover { border-color:rgba(255,212,0,.45);color:#d8d8d1; }
.budget-field.invalid .budget-options { padding:2px;border-radius:14px;box-shadow:0 0 0 2px rgba(255,90,90,.45); }
.consent-field { display:grid;grid-template-columns:19px 1fr;gap:11px;align-items:start;color:#74746f;font-size:12px;line-height:1.55;cursor:pointer; }
.consent-field input { width:18px;height:18px;accent-color:var(--yellow);margin:1px 0 0; }
.consent-field.invalid { color:#ff8585; }
.form-submit { width:100%;border:0;min-height:58px;justify-content:center;cursor:pointer;font-family:"DM Sans";font-weight:800; }
.form-submit b { font-size:18px;margin-left:5px; }
.form-submit.loading { pointer-events:none;opacity:.75; }
.form-submit.loading .button-label,.form-submit.loading b { display:none; }
.button-loader { display:none;width:20px;height:20px;border:2px solid rgba(0,0,0,.25);border-top-color:#050505;border-radius:50%;animation:formSpin .7s linear infinite; }
.form-submit.loading .button-loader { display:block; }
@keyframes formSpin { to { transform:rotate(360deg); } }
.form-note { margin:0;text-align:center;color:#5d5d58;font-size:11px;line-height:1.5; }
.honeypot { position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important; }
.success-state { min-height:620px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;animation:successIn .6s cubic-bezier(.2,.7,.2,1); }
.success-state[hidden] { display:none; }
.success-state p { max-width:420px;color:#8c8c86;line-height:1.7;margin:16px auto 28px; }
.success-icon { display:grid;place-items:center;width:76px;height:76px;border-radius:50%;margin-bottom:25px;background:var(--yellow);color:#070707;font-size:36px;font-weight:900;box-shadow:0 0 0 13px rgba(255,212,0,.08),0 18px 55px rgba(255,212,0,.2); }
@keyframes successIn { from { opacity:0;transform:translateY(18px) scale(.98); } to { opacity:1;transform:none; } }
@media (max-width:1100px) { .contact-hero { grid-template-columns:1fr;max-width:800px;min-height:auto; } .contact-intro h1 { max-width:800px; } }
@media (max-width:640px) { .contact-hero { padding-top:120px;padding-bottom:70px;gap:46px; } .contact-intro h1 { font-size:clamp(48px,14vw,66px); } .contact-intro > p { font-size:16px; } .contact-steps { margin-top:38px; } .form-shell { padding:24px 16px;border-radius:22px; } .form-topline { align-items:flex-start; } .secure-pill { display:none; } .form-topline h2 { font-size:27px; } .two-columns { grid-template-columns:1fr; } .budget-options { grid-template-columns:1fr; } .budget-options label:last-child { grid-column:auto; } .field input { height:54px; } .success-state { min-height:560px;padding:18px; } }

@media (max-width:520px) {
  .contact-hero { width:100%;max-width:100%;padding-left:10px;padding-right:10px; }
  .contact-intro,.form-shell,.form-grid,.field,.budget-field { min-width:0;max-width:100%; }
  .contact-intro h1 { font-size:clamp(42px,13vw,58px);overflow-wrap:anywhere; }
  .contact-steps article { grid-template-columns:42px minmax(0,1fr);gap:12px; }
  .form-shell { width:100%;padding:22px 14px; }
  .form-topline { gap:10px; }
  .field input { min-width:0; }
  .budget-options span { overflow-wrap:anywhere; }
}

.direct-contact { padding-top:35px;padding-bottom:110px; }
.direct-contact-head { max-width:760px;margin:0 auto 38px;text-align:center; }
.direct-contact-head h2 { margin:12px 0 14px;font-size:clamp(34px,4vw,58px);letter-spacing:-.05em; }
.direct-contact-head p { margin:0;color:#85857f;font-size:16px;line-height:1.7; }
.direct-contact-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:1040px;margin:0 auto; }
.contact-channel-card { position:relative;display:flex;flex-direction:column;min-height:390px;padding:32px;border:1px solid rgba(255,255,255,.1);border-radius:26px;background:linear-gradient(145deg,rgba(23,23,21,.96),rgba(10,10,10,.98));overflow:hidden;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.contact-channel-card::before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 8%,rgba(255,212,0,.10),transparent 38%);opacity:.65;pointer-events:none; }
.contact-channel-card:hover { transform:translateY(-6px);border-color:rgba(255,212,0,.55);box-shadow:0 24px 70px rgba(0,0,0,.38),0 0 35px rgba(255,212,0,.07); }
.channel-icon { position:relative;display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:rgba(255,212,0,.1);border:1px solid rgba(255,212,0,.28);margin-bottom:28px;transition:transform .3s ease; }
.contact-channel-card:hover .channel-icon { transform:scale(1.08) rotate(-2deg); }
.channel-icon svg { width:27px;height:27px;fill:none;stroke:var(--yellow);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.channel-icon .solid-dot { fill:var(--yellow);stroke:none; }
.channel-kicker { position:relative;color:var(--yellow);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px; }
.contact-channel-card strong { position:relative;font:800 25px/1.2 "Manrope";letter-spacing:-.035em;color:#f4f4ef; }
.contact-channel-card p { position:relative;color:#7d7d77;line-height:1.65;margin:15px 0 24px; }
.channel-address { position:relative;color:#f2f2ed;font-weight:700;overflow-wrap:anywhere;margin-top:auto;margin-bottom:20px; }
.channel-button { position:relative;display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 18px;border-radius:14px;background:var(--yellow);color:#090909;font-weight:800; }
.channel-button b { font-size:18px; }

@media (max-width:760px) {
  .direct-contact { padding-top:10px;padding-bottom:75px; }
  .direct-contact-grid { grid-template-columns:1fr; }
  .contact-channel-card { min-height:350px;padding:26px 22px;border-radius:22px; }
}
