:root {
  --ink: #0b1724;
  --ink-2: #17314a;
  --muted: #5f7080;
  --line: #dce5ea;
  --paper: #f6f4ee;
  --white: #ffffff;
  --blue: #1f6feb;
  --blue-dark: #0d4fac;
  --teal: #0f8d86;
  --gold: #c59445;
  --shadow: 0 28px 70px rgba(11,23,36,.13);
  --radius-lg: 34px;
  --radius-md: 22px;
  --radius-sm: 14px;
  --max: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
button, input, select, textarea { font: inherit; }
img, svg { display: block; max-width: 100%; }
.skip-link { position: fixed; left: 14px; top: 10px; z-index: 1000; padding: 10px 14px; background: var(--ink); color: white; transform: translateY(-160%); border-radius: 10px; }
.skip-link:focus { transform: translateY(0); }
.site-header { position: sticky; top: 0; z-index: 70; border-bottom: 1px solid rgba(220,229,234,.82); background: rgba(255,255,255,.92); backdrop-filter: blur(18px); }
.nav-wrap { width: min(calc(100% - 36px), var(--max)); margin: 0 auto; min-height: 76px; display:flex; align-items:center; gap: 24px; }
.brand { font-weight: 900; letter-spacing: -.04em; font-size: 24px; text-decoration: none; }
.desktop-nav { margin-left:auto; display:flex; align-items:center; gap: 24px; font-size:14px; font-weight:700; }
.desktop-nav a { text-decoration:none; color:#33495d; }
.desktop-nav a:hover { color:var(--blue); }
.lang-link { padding-left:10px; border-left:1px solid var(--line); }
.header-cta, .button-primary, .button-secondary { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 18px; border-radius:999px; font-weight:800; text-decoration:none; border:1px solid transparent; transition:.2s ease; }
.header-cta, .button-primary { background:var(--ink); color:white; box-shadow:0 10px 25px rgba(11,23,36,.12); }
.header-cta:hover, .button-primary:hover { transform:translateY(-2px); background:var(--blue-dark); }
.button-secondary { border-color:#cddbe3; background:white; color:var(--ink); }
.button-secondary:hover { border-color:#9fb7c6; transform:translateY(-2px); }
.menu-button { display:none; margin-left:auto; width:46px; height:46px; border-radius:50%; border:1px solid var(--line); background:white; font-size:20px; }
.mobile-nav { display:none; border-top:1px solid var(--line); padding:14px 18px 20px; background:white; }
.mobile-nav.open { display:grid; gap:6px; }
.mobile-nav a { padding:12px 8px; text-decoration:none; font-weight:750; }
.hero { position:relative; overflow:hidden; background:radial-gradient(circle at 14% 10%, rgba(31,111,235,.12), transparent 28%), linear-gradient(180deg,#fbfcfd 0%,#f3f7f8 100%); }
.hero::after { content:""; position:absolute; width:520px; height:520px; right:-250px; top:-220px; border:1px solid rgba(31,111,235,.12); border-radius:50%; box-shadow:0 0 0 70px rgba(31,111,235,.035),0 0 0 140px rgba(31,111,235,.02); }
.hero-grid { position:relative; z-index:1; width:min(calc(100% - 36px),var(--max)); margin:0 auto; padding:88px 0 78px; display:grid; grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr); gap:58px; align-items:center; }
.eyebrow { margin:0 0 18px; text-transform:uppercase; letter-spacing:.16em; font-weight:900; font-size:12px; color:var(--blue-dark); }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:24px; max-width:760px; font-size:clamp(48px,6.2vw,84px); line-height:.98; letter-spacing:-.055em; }
.hero-copy > p:not(.eyebrow) { max-width:710px; font-size:19px; line-height:1.65; color:#536779; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:31px; }
.hero-proof { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:31px; padding-top:23px; border-top:1px solid #dbe5ea; font-size:13px; font-weight:800; color:#607386; }
.hero-proof span::before { content:"✓"; margin-right:7px; color:var(--teal); }
.acquisition-visual { position:relative; min-height:540px; padding:24px; border:1px solid rgba(255,255,255,.9); border-radius:38px; background:linear-gradient(145deg,#0d2132 0%,#102f46 65%,#0f5960 125%); box-shadow:var(--shadow); color:white; overflow:hidden; }
.acquisition-visual::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:34px 34px; mask-image:linear-gradient(to bottom,black,transparent 78%); }
.visual-label { position:relative; z-index:2; font-size:12px; letter-spacing:.12em; font-weight:900; text-transform:uppercase; color:#a6c9db; }
.market-chip { position:absolute; z-index:3; display:grid; place-items:center; width:78px; height:78px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.08); backdrop-filter:blur(8px); border-radius:50%; font-size:13px; font-weight:900; box-shadow:0 10px 30px rgba(0,0,0,.15); }
.market-fl { left:42px; top:118px; }
.market-ny { left:155px; top:74px; }
.market-nj { left:232px; top:156px; }
.market-pa { left:94px; top:225px; }
.route-line { position:absolute; z-index:1; height:1px; transform-origin:left center; background:linear-gradient(90deg,rgba(143,199,255,.15),rgba(143,199,255,.95)); box-shadow:0 0 14px rgba(74,164,255,.35); }
.r1 { width:270px; left:105px; top:158px; transform:rotate(22deg); }
.r2 { width:238px; left:215px; top:112px; transform:rotate(39deg); }
.r3 { width:190px; left:285px; top:194px; transform:rotate(36deg); }
.r4 { width:248px; left:150px; top:263px; transform:rotate(8deg); }
.pr-node { position:absolute; z-index:4; right:44px; top:277px; width:150px; min-height:102px; padding:17px; border-radius:24px; background:white; color:var(--ink); box-shadow:0 22px 48px rgba(0,0,0,.22); }
.pr-node small { display:block; text-transform:uppercase; letter-spacing:.11em; color:#6a7c8d; font-size:10px; font-weight:900; }
.pr-node strong { display:block; margin-top:7px; font-size:18px; }
.postcard { position:absolute; z-index:4; left:38px; right:38px; bottom:28px; display:grid; grid-template-columns:1.25fr .75fr; min-height:154px; border-radius:23px; overflow:hidden; background:#f7f2e7; color:var(--ink); transform:rotate(-1.4deg); box-shadow:0 18px 38px rgba(0,0,0,.28); }
.postcard-copy { padding:23px; }
.postcard-copy small { text-transform:uppercase; font-weight:900; letter-spacing:.13em; color:#8b6d3a; font-size:9px; }
.postcard-copy strong { display:block; max-width:270px; margin-top:8px; font-size:21px; line-height:1.12; letter-spacing:-.025em; }
.postcard-side { border-left:1px solid rgba(11,23,36,.14); padding:18px; display:flex; align-items:center; justify-content:center; }
.qr-demo { width:76px; height:76px; border:7px solid white; outline:1px solid rgba(11,23,36,.2); background:conic-gradient(from 90deg at 25% 25%,#112536 0 25%,transparent 0 50%,#112536 0 75%,transparent 0) 0 0/24px 24px; }
section { scroll-margin-top:86px; }
.section { padding:94px 0; }
.section.alt { background:#f5f7f8; }
.section.dark { background:var(--ink); color:white; }
.section-wrap { width:min(calc(100% - 36px),var(--max)); margin:0 auto; }
.section-head { display:grid; grid-template-columns:.72fr 1.28fr; gap:44px; align-items:end; margin-bottom:42px; }
.section-head h2 { margin:0; font-size:clamp(35px,4.5vw,58px); line-height:1.02; letter-spacing:-.045em; }
.section-head p { margin:0; max-width:640px; color:var(--muted); font-size:17px; line-height:1.65; }
.dark .section-head p { color:#afc1d0; }
.problem-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.problem-card { min-height:300px; padding:28px; border:1px solid var(--line); border-radius:var(--radius-md); background:white; display:flex; flex-direction:column; }
.problem-card .num { color:var(--blue); font-weight:900; font-size:12px; letter-spacing:.14em; }
.problem-card h3 { margin:50px 0 13px; font-size:25px; letter-spacing:-.03em; }
.problem-card p { color:var(--muted); line-height:1.65; }
.system-flow { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin-top:36px; }
.flow-step { position:relative; min-height:190px; padding:20px 16px 18px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(255,255,255,.055); }
.flow-step:not(:last-child)::after { content:"→"; position:absolute; right:-14px; top:52px; z-index:4; color:#6ea8df; font-size:24px; font-weight:900; }
.flow-step span { display:block; color:#72b4f6; font-size:11px; font-weight:900; letter-spacing:.13em; }
.flow-step h3 { margin:31px 0 10px; font-size:18px; }
.flow-step p { color:#aebfcd; font-size:13px; line-height:1.55; }
.system-note { margin-top:26px; color:#c3d1dc; max-width:820px; line-height:1.7; }
.audience-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:22px; align-items:stretch; }
.audience-panel { padding:34px; border:1px solid var(--line); border-radius:var(--radius-lg); background:white; box-shadow:0 20px 50px rgba(20,44,65,.06); }
.audience-panel h3 { font-size:29px; letter-spacing:-.035em; margin-bottom:11px; }
.audience-panel > p { color:var(--muted); line-height:1.65; }
.audience-tabs { display:grid; gap:8px; margin-top:24px; }
.audience-tab { width:100%; text-align:left; padding:17px 18px; border:1px solid var(--line); background:#fbfcfd; border-radius:14px; cursor:pointer; font-weight:800; color:#31495e; }
.audience-tab.active { border-color:rgba(31,111,235,.35); color:var(--blue-dark); background:#eef5ff; box-shadow:inset 3px 0 0 var(--blue); }
.audience-detail { position:relative; padding:36px; min-height:420px; border-radius:var(--radius-lg); overflow:hidden; background:linear-gradient(145deg,#eef5fb,#fbfcfd); border:1px solid #d5e4ed; }
.audience-detail small { text-transform:uppercase; letter-spacing:.13em; font-weight:900; color:var(--blue-dark); }
.audience-detail h3 { margin-top:18px; max-width:510px; font-size:34px; letter-spacing:-.04em; }
.audience-detail p { max-width:590px; color:#5c7082; line-height:1.7; }
.criteria { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.criteria span { padding:10px 12px; border-radius:999px; background:white; border:1px solid #cfdde6; font-size:12px; font-weight:800; color:#39566c; }
.compliance-note { margin-top:24px; padding:15px 17px; border-left:3px solid var(--gold); background:#fffaf1; color:#6d5a38; font-size:13px; line-height:1.6; }
.measure-grid { display:grid; grid-template-columns:.94fr 1.06fr; gap:24px; }
.dashboard { padding:26px; border:1px solid #d9e3e9; border-radius:28px; background:#f9fbfc; }
.dashboard-top { display:flex; justify-content:space-between; gap:18px; align-items:center; padding-bottom:19px; border-bottom:1px solid #dce5ea; }
.status { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:900; color:#2b6e61; }
.status::before { content:""; width:8px; height:8px; background:#27a77e; border-radius:50%; box-shadow:0 0 0 4px rgba(39,167,126,.11); }
.funnel { display:grid; gap:12px; margin-top:22px; }
.funnel-row { display:grid; grid-template-columns:36px 1fr auto; align-items:center; gap:13px; padding:15px 17px; border:1px solid #dde6eb; background:white; border-radius:14px; }
.funnel-row b { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:#edf4fb; color:var(--blue-dark); font-size:12px; }
.funnel-row strong { font-size:14px; }
.funnel-row em { font-style:normal; font-size:11px; font-weight:900; color:#708293; text-transform:uppercase; letter-spacing:.08em; }
.measure-copy { padding:18px 8px 18px 24px; }
.measure-copy h3 { font-size:34px; letter-spacing:-.04em; }
.measure-copy p { color:var(--muted); line-height:1.7; }
.measure-list { display:grid; gap:0; margin-top:26px; border-top:1px solid var(--line); }
.measure-list div { padding:16px 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:32px 1fr; gap:12px; }
.measure-list b { color:var(--blue); }
.offer-band { position:relative; overflow:hidden; padding:46px; border-radius:36px; background:linear-gradient(120deg,#eaf4ff,#f8f4e9); border:1px solid #d6e4eb; }
.offer-band::after { content:"AMISA"; position:absolute; right:-24px; bottom:-33px; font-size:130px; font-weight:950; letter-spacing:-.08em; color:rgba(16,53,77,.045); }
.offer-band h2 { max-width:760px; font-size:clamp(38px,4.7vw,62px); line-height:1.01; letter-spacing:-.05em; }
.offer-band p { max-width:760px; color:#5c7081; line-height:1.7; font-size:17px; }
.offer-points { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:30px; }
.offer-points div { padding:17px; border-radius:16px; border:1px solid rgba(21,67,96,.12); background:rgba(255,255,255,.72); font-weight:800; font-size:13px; }
.cta-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:30px; align-items:center; }
.cta-grid h2 { font-size:clamp(42px,5.4vw,72px); letter-spacing:-.055em; line-height:.98; }
.cta-grid p { color:#aabcc9; max-width:730px; font-size:18px; line-height:1.7; }
.cta-card { padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:rgba(255,255,255,.055); }
.cta-card small { color:#86b6d7; text-transform:uppercase; letter-spacing:.12em; font-weight:900; }
.cta-card ul { margin:19px 0 24px; padding:0; list-style:none; display:grid; gap:11px; color:#cfdae2; }
.cta-card li::before { content:"✓"; color:#57cbb5; margin-right:9px; }
.cta-card .button-primary { width:100%; background:white; color:var(--ink); }
.site-footer { background:#08121c; color:white; }
.footer-wrap { width:min(calc(100% - 36px),var(--max)); margin:0 auto; padding:50px 0; display:grid; grid-template-columns:1.2fr .8fr; gap:35px; }
.footer-brand { font-weight:950; font-size:25px; letter-spacing:-.04em; }
.footer-wrap p { color:#91a7b8; line-height:1.65; max-width:560px; }
.footer-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 18px; align-content:start; }
.footer-links a { color:#c6d2dc; text-decoration:none; font-size:13px; font-weight:750; }
.footer-bottom { width:min(calc(100% - 36px),var(--max)); margin:0 auto; padding:20px 0 28px; border-top:1px solid rgba(255,255,255,.09); color:#718797; font-size:12px; display:flex; justify-content:space-between; gap:16px; }
.reveal { opacity:0; transform:translateY(20px); transition:opacity .55s ease, transform .55s ease; }
.reveal.visible { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } .reveal { opacity:1; transform:none; transition:none; } * { animation:none !important; transition:none !important; } }
@media (max-width: 1040px) {
  .desktop-nav { display:none; }
  .menu-button { display:grid; place-items:center; }
  .header-cta { margin-left:auto; }
  .hero-grid { grid-template-columns:1fr; padding-top:68px; }
  .acquisition-visual { max-width:760px; width:100%; margin:0 auto; }
  .system-flow { grid-template-columns:repeat(3,1fr); }
  .flow-step:nth-child(3)::after { display:none; }
  .audience-layout,.measure-grid,.cta-grid { grid-template-columns:1fr; }
  .measure-copy { padding:12px 0 0; }
  .offer-points { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 720px) {
  .nav-wrap { width:min(calc(100% - 24px),var(--max)); min-height:68px; }
  .header-cta { display:none; }
  .hero-grid,.section-wrap,.footer-wrap,.footer-bottom { width:min(calc(100% - 24px),var(--max)); }
  .hero-grid { padding:52px 0 54px; gap:38px; }
  h1 { font-size:clamp(44px,14vw,66px); }
  .hero-copy > p:not(.eyebrow) { font-size:17px; }
  .hero-actions { display:grid; }
  .button-primary,.button-secondary { width:100%; }
  .acquisition-visual { min-height:500px; padding:20px; border-radius:28px; }
  .market-chip { width:62px; height:62px; font-size:11px; }
  .market-fl { left:26px; top:112px; }
  .market-ny { left:116px; top:73px; }
  .market-nj { left:180px; top:149px; }
  .market-pa { left:76px; top:204px; }
  .route-line { display:none; }
  .pr-node { right:25px; top:250px; width:138px; }
  .postcard { left:22px; right:22px; grid-template-columns:1fr .48fr; }
  .postcard-copy { padding:19px; }
  .postcard-copy strong { font-size:18px; }
  .qr-demo { width:62px; height:62px; }
  .section { padding:70px 0; }
  .section-head { grid-template-columns:1fr; gap:13px; }
  .section-head h2 { font-size:38px; }
  .problem-grid,.system-flow { grid-template-columns:1fr; }
  .problem-card { min-height:auto; }
  .problem-card h3 { margin-top:30px; }
  .flow-step { min-height:auto; }
  .flow-step:not(:last-child)::after { content:"↓"; display:block; right:20px; top:auto; bottom:-20px; }
  .audience-panel,.audience-detail { padding:25px; border-radius:24px; }
  .audience-detail { min-height:390px; }
  .offer-band { padding:29px; border-radius:26px; }
  .offer-points { grid-template-columns:1fr; }
  .footer-wrap { grid-template-columns:1fr; }
  .footer-links { justify-content:flex-start; }
  .footer-bottom { flex-direction:column; }
}


/* Real estate growth refinements */
.early-advantage {
  padding: 56px 0;
  background: #eef5f8;
  border-top: 1px solid #dbe6eb;
  border-bottom: 1px solid #dbe6eb;
}
.advantage-grid {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 44px;
  align-items: center;
}
.advantage-grid h2 {
  margin: 0;
  font-size: clamp(38px,4.5vw,58px);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.advantage-grid p {
  margin-bottom: 14px;
  max-width: 710px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}
.advantage-grid strong {
  display: block;
  max-width: 760px;
  color: var(--ink-2);
  font-size: 17px;
  line-height: 1.55;
}
.pilot-section { background: #fff; }
.pilot-grid {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 12px;
}
.pilot-card {
  position: relative;
  min-height: 270px;
  padding: 24px 22px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg,#fff,#f9fbfc);
}
.pilot-card b {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #eef5ff;
  color: var(--blue-dark);
  font-size: 12px;
}
.pilot-card h3 {
  margin: 42px 0 12px;
  font-size: 21px;
  letter-spacing: -.03em;
}
.pilot-card p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}
.pilot-scope {
  margin-top: 18px;
  padding: 18px 22px;
  display: flex;
  gap: 16px 24px;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #d5e4ed;
  border-radius: 18px;
  background: #eef5fb;
}
.pilot-scope strong { color: var(--ink); }
.pilot-scope span { color: var(--muted); line-height: 1.55; }
.compliance-note {
  border-left: 0;
  border: 1px solid #e7d8b8;
  border-radius: 16px;
  background: #fffaf1;
}
.compliance-note .compliance-label {
  display: block;
  margin-bottom: 8px;
  color: #8b6d3a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.compliance-note strong { display:block; margin-bottom:5px; color:#594a31; }
.compliance-note p { margin:0; color:#6d5a38; font-size:13px; line-height:1.6; }

/* Real estate opportunity diagnostic */
.diagnostic-hero {
  overflow: hidden;
  background:
    radial-gradient(circle at 14% 0%,rgba(31,111,235,.12),transparent 30%),
    linear-gradient(180deg,#fbfcfd 0%,#f2f7f9 100%);
}
.diagnostic-hero-grid {
  width: min(calc(100% - 36px),var(--max));
  margin: 0 auto;
  padding: 86px 0 72px;
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 54px;
  align-items: center;
}
.diagnostic-intro h1 {
  margin-bottom: 24px;
  max-width: 790px;
  font-size: clamp(48px,6vw,78px);
  line-height: .99;
  letter-spacing: -.055em;
}
.diagnostic-intro > p:not(.eyebrow) {
  max-width: 720px;
  color: #536779;
  font-size: 19px;
  line-height: 1.68;
}
.diagnostic-badges {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
.diagnostic-badges span {
  padding: 9px 12px;
  border: 1px solid #cfdee6;
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  color: #466075;
  font-size: 12px;
  font-weight: 800;
}
.diagnostic-summary {
  padding: 30px;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.7);
  background: linear-gradient(145deg,#0d2132,#143b50);
  color: white;
  box-shadow: var(--shadow);
}
.diagnostic-summary > small {
  display: block;
  margin-bottom: 18px;
  color: #8fc3df;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.summary-row {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 13px;
  align-items: center;
  padding: 17px 0;
  border-top: 1px solid rgba(255,255,255,.1);
}
.summary-row b {
  color: #7fc0ed;
  font-size: 12px;
}
.summary-row span {
  color: #d8e5ed;
  font-weight: 700;
  line-height: 1.45;
}
.diagnostic-form-section {
  padding: 90px 0 102px;
  background: #f5f7f8;
}
.diagnostic-form-wrap {
  width: min(calc(100% - 36px),var(--max));
  margin: 0 auto;
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 34px;
  align-items: start;
}
.form-context {
  position: sticky;
  top: 110px;
  padding: 26px 8px 26px 0;
}
.form-context h2 {
  max-width: 480px;
  margin-bottom: 18px;
  font-size: clamp(36px,4vw,52px);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.form-context > p:not(.eyebrow) {
  max-width: 490px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.7;
}
.context-note {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid #d6e1e7;
}
.context-note strong,
.context-note span { display:block; }
.context-note strong { margin-bottom:8px; color:var(--ink-2); }
.context-note span { color:var(--muted); line-height:1.6; }
.realestate-form {
  padding: 34px;
  border: 1px solid #d9e4ea;
  border-radius: 30px;
  background: white;
  box-shadow: 0 22px 60px rgba(11,23,36,.08);
}
.form-heading {
  margin-bottom: 26px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--line);
}
.form-heading small {
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.form-heading h2 {
  margin: 9px 0 7px;
  font-size: 34px;
  letter-spacing: -.04em;
}
.form-heading p { margin:0; color:var(--muted); line-height:1.6; }
.form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
}
.field { display:grid; gap:8px; }
.field.full { grid-column: 1 / -1; }
.field label {
  color: #344e63;
  font-size: 13px;
  font-weight: 850;
}
.field input,
.field select,
.field textarea {
  width: 100%;
  border: 1px solid #cfdce4;
  border-radius: 13px;
  background: #fbfcfd;
  color: var(--ink);
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.field input,
.field select { min-height: 50px; padding: 0 14px; }
.field textarea { min-height: 118px; padding: 13px 14px; resize: vertical; line-height:1.55; }
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: rgba(31,111,235,.6);
  background: white;
  box-shadow: 0 0 0 4px rgba(31,111,235,.09);
}
.submit-row {
  margin-top: 4px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}
.submit-row .button-primary {
  width: max-content;
  border: 0;
  cursor: pointer;
}
.submit-row p {
  margin: 2px 0 0;
  color: #718392;
  font-size: 12px;
  line-height: 1.55;
}
.submit-row a { color:var(--blue-dark); font-weight:800; }

@media (max-width: 1040px) {
  .pilot-grid { grid-template-columns:repeat(3,1fr); }
  .diagnostic-hero-grid,
  .diagnostic-form-wrap { grid-template-columns:1fr; }
  .form-context { position:static; padding-right:0; }
}
@media (max-width: 720px) {
  .early-advantage { padding:44px 0; }
  .advantage-grid { grid-template-columns:1fr; gap:12px; }
  .advantage-grid p { font-size:16px; }
  .pilot-grid { grid-template-columns:1fr; }
  .pilot-card { min-height:auto; }
  .pilot-card h3 { margin-top:26px; }
  .pilot-scope { flex-direction:column; align-items:flex-start; }
  .diagnostic-hero-grid,
  .diagnostic-form-wrap { width:min(calc(100% - 24px),var(--max)); }
  .diagnostic-hero-grid { padding:56px 0 52px; gap:34px; }
  .diagnostic-intro h1 { font-size:clamp(44px,13vw,62px); }
  .diagnostic-intro > p:not(.eyebrow) { font-size:17px; }
  .diagnostic-summary { padding:24px; border-radius:24px; }
  .diagnostic-form-section { padding:64px 0 76px; }
  .realestate-form { padding:23px; border-radius:24px; }
  .form-grid { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .submit-row .button-primary { width:100%; }
}
