.contact-page{background:var(--paper)}.contact-page-intro{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--surface-soft),var(--paper));padding:72px 0 58px}.contact-page-intro-grid{grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;display:grid}.contact-page-intro h1{color:var(--ink);font-size:clamp(42px,5vw,68px)}.contact-page-intro h1 em{color:var(--teal);font-style:normal}.contact-page-intro-grid>div:last-child{border-left:1px solid var(--line);padding-left:30px}.contact-page-intro-grid>div:last-child p{max-width:46ch;font-size:16px;line-height:1.8}.contact-page-intro-grid>div:last-child span{font:10px/1.5 var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--teal);margin-top:18px;display:block}.contact-page-layout{grid-template-columns:minmax(250px,.62fr) minmax(0,1.38fr);align-items:start;gap:50px;padding-top:64px;padding-bottom:90px;display:grid}.contact-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;padding:28px;position:sticky;top:112px}.contact-card h2{margin-bottom:16px;font-size:28px}.contact-card>p:not(.eyebrow){font-size:14px;line-height:1.75}.contact-card .contact-email{color:var(--link,var(--teal));overflow-wrap:anywhere;margin:22px 0 4px;font-weight:600;display:inline-flex}.contact-card .contact-links{flex-direction:row;margin:16px 0 26px}.contact-card dl{border-top:1px solid var(--line);margin:0}.contact-card dl div{border-bottom:1px solid var(--line);padding:15px 0}.contact-card dt{font:9px/1.5 var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--teal)}.contact-card dd{color:var(--ink);margin:5px 0 0;font-size:13px;line-height:1.55}.onboarding-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:36px}.onboarding-heading{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:26px}.onboarding-heading .eyebrow{margin-bottom:10px}.onboarding-heading h2{font-size:clamp(28px,3vw,40px)}.onboarding-heading>p:last-child{margin-top:10px;font-size:14px}.onboarding-form{display:grid}.onboarding-more{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin-top:18px;overflow:hidden}.onboarding-more summary{cursor:pointer;min-height:52px;color:var(--ink);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.onboarding-more summary small{color:var(--muted);font-size:12px;font-weight:400}.onboarding-more[open] summary{border-bottom:1px solid var(--line)}.onboarding-more .question{padding-inline:16px}.ai-followups{border:1px solid color-mix(in srgb,var(--teal) 30%,var(--line));background:color-mix(in srgb,var(--mint) 10%,var(--paper));border-radius:14px;margin:24px 0 6px;padding:22px}.ai-followups>div:first-child{margin-bottom:8px}.ai-followups h3{margin:7px 0 5px;font-size:20px}.ai-followups p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.ai-badge{color:var(--teal);font:10px/1 var(--mono);letter-spacing:.13em}.ai-question-list .question:last-child{border-bottom:0;padding-bottom:8px}.ai-followups>.button{margin-top:16px}.question-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.question{border:0;border-bottom:1px solid var(--line);min-width:0;margin:0;padding:24px 0}.question>span,.question>legend{width:100%;color:var(--ink);align-items:baseline;gap:12px;margin:0 0 12px;font-size:14px;font-weight:600;display:flex}.question b{color:var(--teal);font:10px/1.5 var(--mono);letter-spacing:1px}.question small{color:var(--muted);margin-left:auto;font-size:11px;font-weight:400}.question input[type=text],.question input[type=email],.question input[type=tel],.question input:not([type]),.question textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:48px;color:var(--ink);border-radius:8px;padding:12px 14px;font-size:15px}.phone-input{border:1px solid var(--line);background:var(--paper);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;min-height:48px;display:grid;overflow:hidden}.phone-input>span{border-right:1px solid var(--line);color:var(--teal);padding:0 12px 0 14px;font-weight:700}.question .phone-input input[type=tel]{background:0 0;border:0;border-radius:0;min-width:0}.question textarea{resize:vertical;min-height:125px;line-height:1.6}.answer-options{flex-wrap:wrap;gap:9px;display:flex}.answer-options label{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.answer-options label:has(input:checked){background:color-mix(in srgb,var(--mint) 24%,var(--surface));border-color:color-mix(in srgb,var(--teal) 45%,var(--line))}.answer-options input{width:16px;height:16px;accent-color:var(--teal);margin:0}.onboarding-submit{justify-content:space-between;align-items:center;gap:25px;padding-top:28px;display:flex}.onboarding-submit p{max-width:290px;font-size:11px;line-height:1.6}.onboarding-received h2{margin-bottom:16px}.onboarding-received>p{margin-bottom:20px}.onboarding-received textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:12px/1.7 var(--mono);resize:vertical;border-radius:9px;padding:16px}@media (width<=850px){.contact-page-intro-grid{grid-template-columns:1fr;gap:26px}.contact-page-intro-grid>div:last-child{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.contact-page-layout{grid-template-columns:1fr}.onboarding-card{order:1}.contact-card{order:2;position:static}.contact-card dl{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.contact-card dl div{border-bottom:0}.contact-card .contact-links{margin-bottom:20px}}@media (width<=620px){.contact-page-intro{padding:45px 0 38px}.contact-page-layout{gap:26px;padding-top:30px;padding-bottom:55px}.contact-card,.onboarding-card{padding:22px}.question-row{grid-template-columns:1fr;gap:0}.question{padding:20px 0}.answer-options{grid-template-columns:1fr;display:grid}.onboarding-submit{flex-direction:column;align-items:stretch}.onboarding-submit .button{width:100%}.onboarding-submit p{max-width:none}.contact-card dl{grid-template-columns:1fr;gap:0}.contact-card dl div{border-bottom:1px solid var(--line)}}
