:root{
  --bg:#070b14;
  --surface:#0c1220;
  --surface-2:#0f172a;
  --text:#f8fafc;
  --muted:#98a2b3;
  --muted-2:#b5c0d2;
  --line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.20);
  --cyan:#7dd3fc;
  --violet:#8b5cf6;
  --violet-soft:#a78bfa;
  --pink:#ec4899;
  --amber:#f59e0b;
  --danger:#fca5a5;
  --shadow:0 28px 70px rgba(0,0,0,.34);
  --container:min(1180px,calc(100% - 40px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  font-family:Inter,system-ui,sans-serif;
  line-height:1.6;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 80% 4%,rgba(139,92,246,.11),transparent 28%),
    radial-gradient(circle at 8% 76%,rgba(14,165,233,.07),transparent 26%),
    linear-gradient(180deg,#070b14 0%,#080d18 52%,#060911 100%);
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(125,211,252,.48);
  outline-offset:3px;
}
.container{width:var(--container);margin-inline:auto}
.ambient{position:fixed;border-radius:50%;filter:blur(120px);opacity:.12;pointer-events:none;z-index:-1}
.ambient-one{width:340px;height:340px;background:var(--violet);right:-150px;top:12%}
.ambient-two{width:300px;height:300px;background:#0ea5e9;left:-160px;top:62%}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(7,11,20,.9);
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(18px);
}
.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto}
.brand-mark svg{width:100%;height:100%}
.brand-copy{display:grid;line-height:1.05}
.brand-copy strong{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:.18em}
.brand-copy small{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.16em;margin-top:6px}
.site-nav{display:flex;align-items:center;gap:22px;font-size:14px;color:#cbd5e1}
.site-nav a:hover{color:#fff}
.nav-portal{border:1px solid var(--line-strong);border-radius:11px;padding:9px 14px;color:#eef2ff!important;font-weight:700}
.nav-portal:hover{border-color:rgba(167,139,250,.7);background:rgba(139,92,246,.08)}
.menu-toggle{display:none;background:transparent;border:1px solid var(--line);color:#fff;border-radius:10px;padding:9px 13px;cursor:pointer}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 24px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--violet),#6366f1 48%,#0ea5e9);
  color:#fff;
  font-weight:800;
  border:0;
  cursor:pointer;
  box-shadow:0 12px 32px rgba(99,102,241,.26);
  transition:transform .22s ease,box-shadow .22s ease,opacity .22s ease;
}
.button:hover{transform:translateY(-2px);box-shadow:0 17px 40px rgba(99,102,241,.34)}
.button:disabled{opacity:.62;cursor:wait;transform:none}
.button-small{min-height:42px;padding:0 17px;border-radius:11px}

.contact-section{padding:82px 0 94px;min-height:calc(100vh - 150px);display:flex;align-items:center}
.contact-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:68px;align-items:start}
.contact-copy{padding-top:24px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#c4b5fd;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}
.eyebrow:before{content:"";width:28px;height:1px;background:linear-gradient(90deg,var(--cyan),var(--violet-soft))}
h1,h2,h3{font-family:Manrope,Inter,sans-serif;margin:0;letter-spacing:-.035em}
h1{font-size:clamp(46px,5.5vw,70px);line-height:1.01;margin-top:20px}
h1 span{background:linear-gradient(90deg,#fff,#c4b5fd 46%,var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:18px;color:var(--muted-2);max-width:650px;margin:24px 0 0}
.contact-principle{display:grid;gap:4px;margin-top:28px;padding:18px 20px;border-left:3px solid var(--violet-soft);background:rgba(139,92,246,.07);max-width:650px}
.contact-principle strong{font-family:Manrope,sans-serif;font-size:20px}
.contact-principle span{font-size:14px;color:#aeb9ca}
.next-steps{margin-top:36px;max-width:650px}
.next-steps-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--cyan)}
.next-steps ol{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid var(--line)}
.next-steps li{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.next-steps li>b{color:var(--violet-soft);font-size:11px;padding-top:3px}
.next-steps li div{display:grid;gap:2px}
.next-steps li strong{color:#eef2ff}
.next-steps li span{font-size:13px;color:var(--muted)}

.form-shell{padding:34px;border:1px solid rgba(167,139,250,.34);border-radius:26px;background:linear-gradient(155deg,rgba(15,23,42,.98),rgba(8,12,22,.98));box-shadow:var(--shadow)}
.form-heading>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--cyan)}
.form-heading h2{font-size:34px;margin-top:8px}
.form-heading p{margin:7px 0 0;color:var(--muted);font-size:13px}
form{margin-top:27px;display:grid;gap:18px}
.form-row{display:grid;gap:8px}
.two-column{grid-template-columns:1fr 1fr;gap:16px}
label>span{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;color:#e5e7eb}
label>span small{font-size:10px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.08em}
input,select,textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.035);
  color:#f8fafc;
  padding:13px 14px;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
input,select{min-height:50px}
textarea{resize:vertical;min-height:150px}
select{appearance:auto}
option{background:#0f172a;color:#f8fafc}
input::placeholder,textarea::placeholder{color:#707d90}
input:hover,select:hover,textarea:hover{border-color:rgba(255,255,255,.2)}
input:focus,select:focus,textarea:focus{border-color:rgba(125,211,252,.62);background:rgba(255,255,255,.05);box-shadow:0 0 0 4px rgba(14,165,233,.08);outline:0}
[aria-invalid="true"]{border-color:rgba(252,165,165,.75)!important;box-shadow:0 0 0 4px rgba(248,113,113,.08)!important}
.field-help{font-size:11px;color:var(--muted);font-weight:400}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{display:none;padding:12px 14px;border-radius:11px;font-size:13px}
.form-status.error{display:block;color:#fecaca;border:1px solid rgba(248,113,113,.35);background:rgba(127,29,29,.16)}
.submit-button{width:100%;margin-top:2px}
.privacy-note{margin:0;text-align:center;color:var(--muted);font-size:11px;line-height:1.5}
.privacy-note a{color:#c4b5fd;font-weight:700}

.site-footer{border-top:1px solid rgba(255,255,255,.07);background:rgba(5,8,14,.72)}
.footer-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}
.footer-wrap a{color:#c4b5fd;font-weight:700}

@media(max-width:1060px){
  .contact-grid{grid-template-columns:1fr;gap:42px;max-width:820px}
  .contact-copy{padding-top:0}
  .lead,.contact-principle,.next-steps{max-width:none}
}
@media(max-width:820px){
  :root{--container:min(100% - 28px,760px)}
  .nav-wrap{min-height:70px;position:relative}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .site-nav{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 1px);
    max-height:calc(100vh - 84px);
    overflow-y:auto;
    padding:14px;
    border:1px solid var(--line);
    border-radius:0 0 16px 16px;
    background:rgba(7,11,20,.98);
    box-shadow:0 24px 50px rgba(0,0,0,.34);
    flex-direction:column;
    align-items:stretch;
    gap:6px;
  }
  .site-nav.open{display:flex}
  .site-nav>a{padding:12px 10px;border-radius:10px}
  .site-nav>a:hover{background:rgba(255,255,255,.04)}
  .site-nav .nav-portal{padding:12px 10px}
  .site-nav .button{margin-top:4px;width:100%}
  .contact-section{padding:58px 0 70px;align-items:flex-start}
  h1{font-size:clamp(40px,10vw,58px)}
  .form-shell{padding:28px}
}
@media(max-width:620px){
  :root{--container:calc(100% - 24px)}
  .brand-mark{width:42px;height:42px}
  .brand-copy strong{font-size:16px}
  .brand-copy small{font-size:9px;letter-spacing:.12em}
  .menu-toggle{padding:8px 11px}
  .contact-section{padding:46px 0 58px}
  h1{font-size:42px}
  .lead{font-size:16px}
  .two-column{grid-template-columns:1fr}
  .form-shell{padding:22px;border-radius:21px}
  .form-heading h2{font-size:29px}
  .footer-wrap{min-height:88px;flex-direction:column;justify-content:center;text-align:center;gap:6px}
}
@media(max-width:380px){
  h1{font-size:37px}
  .contact-principle{padding:16px}
  .next-steps li{grid-template-columns:34px 1fr}
  .form-shell{padding:18px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important}
}
