.contact-page .hero{padding:140px 48px 32px;background:var(--light-grad);text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.contact-page .hero-copy{max-width:760px;display:flex;flex-direction:column;gap:14px}.contact-page .hero .h1{font-size:52px}.contact-page .hero-sub{font-size:18px;line-height:1.55;color:var(--charcoal);opacity:.85;margin:0}.contact-page .body{padding:48px 48px 80px;display:flex;justify-content:center}.contact-page .body-inner{width:100%;max-width:1100px;display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start}.contact-page .form-card{background:#fff;border:1px solid var(--grey-200);border-radius:20px;padding:36px 40px;display:flex;flex-direction:column;gap:18px}.contact-page .form-card h2{margin:0;font-size:22px;font-weight:900;letter-spacing:-.01em}.contact-page .form-row{display:flex;flex-direction:column;gap:6px}.contact-page .form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.contact-page .form-row .label-sm{font-size:12px;font-weight:700;color:var(--grey-700);letter-spacing:.02em}.contact-page .form-row input,.contact-page .form-row select,.contact-page .form-row textarea{font-family:Satoshi,sans-serif;font-size:15px;padding:12px 16px;border:1.5px solid var(--grey-200);border-radius:12px;background:#fff;color:var(--charcoal);transition:border-color .15s,box-shadow .15s;width:100%}.contact-page .form-row input:focus,.contact-page .form-row select:focus,.contact-page .form-row textarea:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 3px rgba(20,184,166,.1)}.contact-page .form-row textarea{min-height:140px;resize:vertical}.contact-page .form-card .btn{align-self:flex-start;margin-top:4px;width:auto}.contact-page .form-card .privacy{font-size:12px;line-height:1.55;color:var(--grey-500);margin:0}.contact-page .form-card .privacy a{color:var(--brand-700);text-decoration:underline}.contact-page .form-result{padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5}.contact-page .form-result.ok{background:var(--brand-50);border:1px solid var(--brand-200);color:var(--brand-800)}.contact-page .form-result.error{background:#FEF2F2;border:1px solid #fecaca;color:#991B1B}.contact-page .aside{display:flex;flex-direction:column;gap:18px}.contact-page .aside-card{background:#fff;border:1px solid var(--grey-200);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:12px}.contact-page .aside-card.is-cta{background:linear-gradient(180deg,var(--brand-50),#fff);border-color:var(--brand-200)}.contact-page .aside-card h3{margin:0;font-size:17px;font-weight:900;letter-spacing:-.01em}.contact-page .aside-card p{margin:0;font-size:14px;line-height:1.55;color:var(--grey-700)}.contact-page .aside-card .btn{width:100%}.contact-page .aside-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.contact-page .aside-list li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}.contact-page .aside-list svg{flex-shrink:0;color:var(--brand-600);margin-top:1px}.contact-page .aside-list a{color:var(--brand-700);font-weight:700}.contact-page .aside-list a:hover{color:var(--brand-800);text-decoration:underline}.contact-page .modal-overlay,body>.modal-overlay{position:fixed;inset:0;background:rgba(17,24,39,.55);backdrop-filter:blur(6px);z-index:200;display:none;align-items:center;justify-content:center;padding:24px;animation:contactModalFadeIn .2s ease;font-family:Satoshi,sans-serif;color:var(--charcoal)}.contact-page .modal-overlay.is-open,body>.modal-overlay.is-open{display:flex}@keyframes contactModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes contactModalScaleIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.contact-page .modal-overlay .modal,body>.modal-overlay .modal{background:#fff;border-radius:22px;box-shadow:var(--shadow-lg);max-width:520px;width:100%;padding:36px;position:relative;animation:contactModalScaleIn .25s ease;max-height:90vh;overflow-y:auto;transition:max-width .25s ease}.contact-page .modal-overlay .modal.is-wide,body>.modal-overlay .modal.is-wide{max-width:920px}.contact-page .modal-overlay .modal-close,body>.modal-overlay .modal-close{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;background:var(--grey-100);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--grey-600);transition:background .15s}.contact-page .modal-overlay .modal-close:hover,body>.modal-overlay .modal-close:hover{background:var(--grey-200);color:var(--charcoal)}.contact-page .modal-overlay .modal h2,body>.modal-overlay .modal h2{font-size:24px;font-weight:900;letter-spacing:-.015em;margin:0 0 6px;line-height:1.2}.contact-page .modal-overlay .modal-sub,body>.modal-overlay .modal-sub{font-size:14px;line-height:1.55;color:var(--grey-600);margin:0 0 22px}.contact-page .modal-overlay .modal-form,body>.modal-overlay .modal-form{display:flex;flex-direction:column;gap:14px}.contact-page .modal-overlay .form-row,body>.modal-overlay .form-row{display:flex;flex-direction:column}.contact-page .modal-overlay .form-row.two-col,body>.modal-overlay .form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}.contact-page .modal-overlay input,.contact-page .modal-overlay select,body>.modal-overlay input,body>.modal-overlay select{font-family:Satoshi,sans-serif;font-size:15px;padding:11px 14px;border:1.5px solid var(--grey-200);border-radius:11px;background:#fff;color:var(--charcoal);transition:border-color .15s,box-shadow .15s;width:100%}.contact-page .modal-overlay input:focus,.contact-page .modal-overlay select:focus,body>.modal-overlay input:focus,body>.modal-overlay select:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 3px rgba(20,184,166,.1)}.contact-page .modal-overlay .label-sm,body>.modal-overlay .label-sm{font-size:12px;font-weight:700;color:var(--grey-700);margin-bottom:5px;display:block}.contact-page .modal-overlay .modal-submit,body>.modal-overlay .modal-submit{margin-top:6px;width:100%}.contact-page .modal-overlay .modal-fineprint,body>.modal-overlay .modal-fineprint{font-size:11px;line-height:1.5;color:var(--grey-500);margin:10px 0 0;text-align:center}.contact-page .modal-overlay .modal-fineprint a,body>.modal-overlay .modal-fineprint a{color:var(--brand-700);text-decoration:underline}.contact-page .modal-overlay .modal-success,body>.modal-overlay .modal-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 0;gap:14px}.contact-page .modal-overlay .modal-success h3,body>.modal-overlay .modal-success h3{font-size:22px;font-weight:900;margin:0;letter-spacing:-.01em}.contact-page .modal-overlay .modal-success p,body>.modal-overlay .modal-success p{font-size:14px;line-height:1.55;color:var(--grey-700);margin:0;max-width:380px}.contact-page .modal-overlay .calendly-embed,body>.modal-overlay .calendly-embed{width:100%;min-height:680px;border-radius:14px;overflow:hidden;border:1px solid var(--grey-200);margin-top:4px;background:var(--grey-50)}.contact-page .modal-overlay .calendly-fallback,body>.modal-overlay .calendly-fallback{display:flex;flex-direction:column;gap:10px;align-items:center;font-size:13px;color:var(--grey-600);padding:24px;text-align:center}.contact-page .modal-overlay .calendly-fallback a,body>.modal-overlay .calendly-fallback a{color:var(--brand-700);font-weight:700;text-decoration:underline}@media (max-width:960px){.contact-page .hero{padding:120px 20px 24px}.contact-page .hero .h1{font-size:32px}.contact-page .body{padding:24px 16px 48px}.contact-page .body-inner{grid-template-columns:1fr;gap:24px}.contact-page .form-card{padding:24px 20px}.contact-page .form-row.two-col,body>.modal-overlay .form-row.two-col{grid-template-columns:1fr}body>.modal-overlay .modal{padding:28px 20px}}