.contact-page{background:var(--color-paper-100);color:var(--color-ink-text)}
.contact-hero{position:relative;min-height:78svh;display:flex;align-items:flex-end;overflow:hidden;background:#070708;color:#fff}
.contact-hero-media,.contact-hero-overlay{position:absolute;inset:0}.contact-hero-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.04) brightness(.68)}
.contact-hero-overlay{background:linear-gradient(180deg,rgba(7,7,8,.18),rgba(7,7,8,.48) 45%,rgba(7,7,8,.95) 100%),linear-gradient(90deg,rgba(7,7,8,.82),transparent 65%)}
.contact-hero-inner{position:relative;z-index:1;padding-top:calc(var(--header-height) + 8rem);padding-bottom:4.5rem}
.contact-kicker{margin:0 0 1rem;font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#b6b0bd}
.contact-hero h1{max-width:13ch;margin:0;font-family:var(--font-display);font-size:clamp(3rem,8vw,7.8rem);line-height:.92;letter-spacing:-.055em}
.contact-hero h1 em{display:block;color:#c8b3ff;font-style:normal}
.contact-hero-copy{max-width:44rem;margin:1.8rem 0 0;color:#d1ccd8;font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.65}
.contact-hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:64rem;margin-top:3rem;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08)}
.contact-hero-meta a{display:flex;min-width:0;flex-direction:column;gap:.45rem;padding:1.15rem 1.25rem;background:rgba(7,7,8,.6);transition:background var(--transition-fast)}
.contact-hero-meta a:hover{background:rgba(255,255,255,.06)}
.contact-hero-meta span{color:#89838f;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}.contact-hero-meta strong{overflow-wrap:anywhere;font-size:.82rem;font-weight:600}
.contact-form-section{padding:clamp(5rem,10vw,9rem) 0;background:#f3f0ea}
.contact-form-layout{display:grid;grid-template-columns:minmax(16rem,.72fr) minmax(0,1.28fr);gap:clamp(3rem,7vw,8rem);align-items:start}
.contact-form-intro{position:sticky;top:calc(var(--header-height) + 2rem)}
.contact-form-intro h2,.contact-section-heading h2,.contact-next-copy h2{margin:.4rem 0 1.4rem;font-family:var(--font-display);font-size:clamp(2.5rem,5vw,5rem);line-height:.98;letter-spacing:-.045em}
.contact-form-intro>p{max-width:30rem;color:#625d66;line-height:1.75}
.contact-intro-note{margin-top:2.2rem;padding-top:1.2rem;border-top:1px solid rgba(13,12,15,.16)}.contact-intro-note span{display:block;margin-bottom:.55rem;color:#8b8490;font-size:.63rem;letter-spacing:.14em;text-transform:uppercase}.contact-intro-note strong{display:block;max-width:28rem;font-size:.9rem;line-height:1.55}
.contact-form{padding:clamp(1.35rem,3vw,2.4rem);border:1px solid rgba(13,12,15,.13);background:#fff;box-shadow:0 2rem 5rem rgba(21,17,27,.07)}
.contact-fields{display:grid;gap:1rem;margin-bottom:1rem}.contact-fields-two{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-fields-three{grid-template-columns:1fr 1.45fr .7fr}
.contact-field{display:flex;flex-direction:column;gap:.55rem}.contact-field>span,.contact-services legend{font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#5d5862}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid rgba(13,12,15,.16);border-radius:.2rem;background:#faf9f7;color:#111014;font:inherit;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}
.contact-field input,.contact-field select{min-height:3.4rem;padding:0 .95rem}.contact-field textarea{min-height:9rem;padding:.95rem;resize:vertical}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#6d50aa;background:#fff;box-shadow:0 0 0 3px rgba(109,80,170,.1)}
.contact-services{margin:1.7rem 0;padding:0;border:0}.contact-services legend{margin-bottom:.85rem}
.contact-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.contact-service-grid label{position:relative;cursor:pointer}.contact-service-grid input{position:absolute;opacity:0;pointer-events:none}.contact-service-grid span{display:flex;min-height:3.1rem;align-items:center;padding:.7rem .9rem;border:1px solid rgba(13,12,15,.14);background:#faf9f7;font-size:.78rem;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}
.contact-service-grid input:checked+span{border-color:#6d50aa;background:#151119;color:#fff}.contact-service-grid input:focus-visible+span{outline:2px solid #6d50aa;outline-offset:2px}
.contact-message{margin-top:.2rem}.contact-submit-row{display:flex;align-items:center;gap:1.1rem;margin-top:1.4rem}.contact-submit-row p{max-width:24rem;margin:0;color:#77717b;font-size:.72rem;line-height:1.5}.button-dark{background:#0d0c0f;color:#fff}.button-dark:hover{background:#211a29;box-shadow:0 .8rem 2rem rgba(20,15,25,.14)}
.contact-form-status{min-height:1.2rem;margin:.8rem 0 0;color:#645a70;font-size:.75rem}
.contact-direct{padding:clamp(5rem,9vw,8rem) 0;background:#09090a;color:#fff}.contact-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.6fr);gap:3rem;align-items:end}.contact-section-heading h2{margin-bottom:0}.contact-section-heading>p{color:#96919d;line-height:1.7}
.contact-direct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:3rem;background:rgba(255,255,255,.1)}
.contact-direct-card{display:flex;min-height:19rem;flex-direction:column;padding:1.5rem;background:#0d0d0f;transition:background var(--transition-fast),transform var(--transition-fast)}.contact-direct-card:hover{background:#151119;transform:translateY(-2px)}
.contact-direct-card>span{color:#7c7682;font-size:.62rem;letter-spacing:.14em}.contact-direct-card h3{margin:auto 0 .8rem;font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,2.3rem);letter-spacing:-.03em}.contact-direct-card p{margin:0 0 1.5rem;color:#96909c;line-height:1.6}.contact-direct-card strong{font-size:.76rem;font-weight:600;overflow-wrap:anywhere}
.contact-next{padding:clamp(5rem,10vw,9rem) 0;background:#f3f0ea}.contact-next-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(3rem,7vw,8rem)}.contact-next-copy p:last-child{max-width:30rem;color:#6d6771;line-height:1.7}
.contact-next-steps{border-top:1px solid rgba(13,12,15,.14)}.contact-next-steps article{display:grid;grid-template-columns:4rem 1fr;gap:1rem;padding:1.5rem 0;border-bottom:1px solid rgba(13,12,15,.14)}.contact-next-steps article>span{color:#8e8792;font-size:.7rem}.contact-next-steps h3{margin:0 0 .45rem;font-size:1.15rem}.contact-next-steps p{margin:0;color:#6e6872;line-height:1.65}
.contact-final{position:relative;overflow:hidden;padding:clamp(5rem,12vw,10rem) 0;background:radial-gradient(circle at 82% 20%,rgba(144,103,255,.18),transparent 28%),#070708;color:#fff}.contact-final-inner{max-width:76rem}.contact-final h2{max-width:14ch;margin:.5rem 0 2rem;font-family:var(--font-display);font-size:clamp(2.8rem,6vw,6.2rem);line-height:.98;letter-spacing:-.05em}.contact-final-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.contact-form-block{padding:0 0 1.7rem;margin:0 0 1.7rem;border-bottom:1px solid rgba(13,12,15,.12)}
.contact-form-block-last{padding-bottom:.4rem;margin-bottom:.4rem;border-bottom:0}
.contact-form-block-label{margin:0 0 1rem;color:#8a8290;font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.contact-field-note{justify-content:flex-end;padding:.75rem 0 .15rem}
.contact-field-note p{margin:0;color:#746e78;font-size:.76rem;line-height:1.55}
.contact-services{margin:1.45rem 0 0}
.contact-services legend{margin-bottom:.35rem}
.contact-services-help{margin:0 0 .9rem;color:#7b7480;font-size:.74rem;line-height:1.5}
.contact-service-grid span{min-height:4.55rem;flex-direction:column;align-items:flex-start;justify-content:center;gap:.25rem;padding:.75rem .9rem}
.contact-service-grid span strong{font-size:.79rem;font-weight:700}
.contact-service-grid span small{color:#77717b;font-size:.68rem;line-height:1.35}
.contact-service-grid input:checked+span small{color:#c9c3ce}
.contact-service-full{grid-column:1/-1}
.contact-submit:disabled{cursor:wait;opacity:.62;transform:none}
@media(max-width:73.75rem){.contact-form-layout,.contact-next-layout{grid-template-columns:1fr}.contact-form-intro{position:static}.contact-direct-grid{grid-template-columns:1fr 1fr}.contact-direct-card:last-child{grid-column:1/-1}.contact-section-heading{grid-template-columns:1fr}}
@media(max-width:60rem){.contact-hero{min-height:72svh}.contact-hero-inner{padding-top:calc(var(--header-height) + 6rem)}}
@media(max-width:48rem){.contact-hero-meta{grid-template-columns:1fr}.contact-fields-two,.contact-fields-three,.contact-service-grid{grid-template-columns:1fr}.contact-submit-row{align-items:stretch;flex-direction:column}.contact-submit{width:100%}.contact-direct-grid{grid-template-columns:1fr}.contact-direct-card:last-child{grid-column:auto}.contact-direct-card{min-height:15rem}.contact-hero h1{font-size:clamp(2.8rem,14vw,5.4rem)}.contact-form-block{padding-bottom:1.35rem;margin-bottom:1.35rem}.contact-field-note{padding:.15rem 0 .45rem}.contact-service-full{grid-column:auto}.contact-service-grid span{min-height:4.25rem}}
@media(max-width:30rem){.contact-hero-inner{padding-bottom:2.5rem}.contact-form{padding:1rem}.contact-final-actions{align-items:stretch;flex-direction:column}.contact-final-actions .button,.contact-final-actions .text-link{width:100%;justify-content:center}}
