.contact-page{--contact-ink:#111;--contact-charcoal:#1c1c1e;--contact-blue-grey:#7a8ba0;--contact-white:#fff;--contact-surface:#f5f5f5;--contact-border:#ebebeb;--contact-muted:#999;--contact-placeholder:#c8c8c8;--contact-grad-charcoal:#1c1c1e;--contact-grad-cool:#7a8ba0;--contact-lavender:#dad0f8;--contact-max:1080px;--contact-r:18px}.contact-page .contact-grad-text{background:linear-gradient(180deg, var(--contact-grad-charcoal) 0%, var(--contact-grad-cool) 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.contact-page .contact-grad-text em{font-style:italic;display:inline}.contact-page .contact-container{width:100%;max-width:var(--contact-max);margin:0 auto;padding:0 20px}@media (min-width:768px){.contact-page .contact-container{padding:0 32px}}@media (min-width:1024px){.contact-page .contact-container{padding:0 80px}}.contact-page .contact-section{padding:96px 0}@media (max-width:767px){.contact-page .contact-section{padding:64px 0}}.contact-page .contact-eyebrow{font-family:var(--font-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--contact-muted);margin-bottom:16px;font-size:12px;font-weight:700;display:block}.contact-page .contact-btn{font-family:var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:16px 32px;font-size:15px;font-weight:700;line-height:1;text-decoration:none;transition:transform .15s,background .2s,box-shadow .2s;display:inline-flex}.contact-page .contact-btn:active{transform:translateY(1px)}.contact-page .contact-btn:focus-visible{outline:3px solid var(--contact-lavender);outline-offset:3px}.contact-page .contact-btn-primary{background:var(--contact-ink);color:var(--contact-white)}.contact-page .contact-btn-primary:hover{background:var(--contact-charcoal);box-shadow:0 8px 24px -10px #1111118c}.contact-page .contact-btn-email{background:var(--contact-ink);color:var(--contact-white);font-family:var(--font-sans);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:16px 32px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .15s,background .2s,box-shadow .2s;display:inline-flex}.contact-page .contact-btn-email:hover{background:var(--contact-charcoal);box-shadow:0 8px 24px -10px #1111118c}.contact-page .contact-btn-email:active{transform:translateY(1px)}.contact-page .contact-btn-email svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}@media (max-width:767px){.contact-page .contact-btn,.contact-page .contact-btn-email{text-align:center;width:100%;padding:14px 28px;font-size:14px}}.contact-page .contact-img-ph{border-radius:var(--contact-r);background:var(--contact-surface);border:1px solid var(--contact-border);width:100%;position:relative;overflow:hidden}.contact-page .contact-img-ph:after{content:attr(data-label);font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--contact-placeholder);text-align:center;justify-content:center;align-items:center;padding:0 16px;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.contact-page .contact-img-ph img{z-index:1;object-fit:cover;width:100%;height:100%;display:block;position:relative}.contact-page .contact-ratio-4-3{aspect-ratio:4/3}@keyframes contactFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.contact-page .contact-fade-up{animation:.7s ease-out .1s both contactFadeUp}.contact-page .contact-fade-up-d1{animation:.7s ease-out .2s both contactFadeUp}@media (prefers-reduced-motion:reduce){.contact-page .contact-fade-up,.contact-page .contact-fade-up-d1{animation:none}}.contact-page .contact-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:120px 20px 80px;display:flex}.contact-page .contact-hero-content{flex-direction:column;align-items:center;gap:20px;max-width:700px;display:flex}.contact-page .contact-hero h1{font-family:var(--font-serif);letter-spacing:-.02em;padding-bottom:.08em;font-size:clamp(48px,8vw,100px);font-weight:400;line-height:1.08}.contact-page .contact-hero-sub{color:var(--contact-ink);max-width:580px;font-size:clamp(16px,2.2vw,18px);font-weight:400;line-height:1.65}@media (max-width:1023px){.contact-page .contact-hero{padding:100px 32px 64px}}@media (max-width:767px){.contact-page .contact-hero{padding:80px 20px 48px}.contact-page .contact-hero h1{font-size:clamp(36px,9vw,56px)}}.contact-page .contact-two-col .contact-container{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.contact-page .contact-two-col-content{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.contact-page .contact-two-col h2{font-family:var(--font-serif);letter-spacing:-.02em;padding-bottom:.06em;font-size:clamp(30px,4.5vw,52px);font-weight:400;line-height:1.1}.contact-page .contact-two-col-body{color:var(--contact-ink);font-size:16px;line-height:1.7}.contact-page .contact-two-col-image .contact-img-ph{max-width:500px}@media (max-width:1023px){.contact-page .contact-two-col .contact-container{grid-template-columns:1fr;gap:40px}.contact-page .contact-two-col-image{justify-self:start}.contact-page .contact-two-col-image .contact-img-ph{max-width:420px}}@media (max-width:767px){.contact-page .contact-two-col h2{font-size:clamp(28px,7vw,44px)}.contact-page .contact-two-col-body{font-size:15px}.contact-page .contact-two-col-image .contact-img-ph{max-width:100%}.contact-page .contact-two-col-content{align-items:stretch}}.contact-page .contact-two-col--flip .contact-two-col-image{order:-1}.contact-page .contact-steps{flex-direction:column;gap:16px;margin-top:4px;display:flex}.contact-page .contact-step{align-items:center;gap:16px;display:flex}.contact-page .contact-step-num{background:var(--contact-ink);width:40px;height:40px;color:var(--contact-white);font-family:var(--font-sans);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.contact-page .contact-step-text{color:var(--contact-ink);font-size:16px;line-height:1.5}.contact-page .contact-step-text strong{font-weight:700}@media (max-width:767px){.contact-page .contact-step-num{width:36px;height:36px;font-size:14px}.contact-page .contact-step-text{font-size:15px}}
