.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:80px 100px;align-items:start}
.contact-intro h1{font-size:clamp(42px,4.2vw,62px);line-height:1.12;max-width:15ch}.contact-intro h1 em{color:var(--purple)}
.contact-intro>p{max-width:47ch;color:var(--muted);margin-top:24px;font-size:15px;line-height:1.85}.contact-intro>.eyebrow{color:var(--purple);margin:0 0 22px}.contact-intro .contact-lead{font:400 24px/1.5 var(--serif);color:var(--ink)}.contact-intro .contact-note{font-size:13px}.contact-intro .text-link{margin-top:24px}
.contact-panel{border-top:2px solid var(--purple);padding-top:28px;min-width:0}.contact-form{display:grid;gap:23px;position:relative}.contact-form label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.contact-form input:not([type=hidden]),.contact-form select,.contact-form textarea{width:100%;min-height:48px;border:1px solid #a894b3;border-radius:0;padding:12px;font:15px/1.6 var(--sans);background:#fff;color:var(--ink)}.contact-form textarea{resize:vertical;min-height:190px}.contact-form [aria-invalid=true]{border:2px solid #a53040}.contact-form .contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}.contact-form .contact-required{font-size:12px;color:var(--muted);margin:0}.contact-help,.contact-privacy{font-size:12px;color:var(--muted);line-height:1.7;margin:8px 0 0}.contact-form .button{justify-self:start;gap:30px}.contact-form .button:disabled{opacity:.65;cursor:not-allowed}.contact-alert{border-left:3px solid #a53040;background:var(--soft-lavender);padding:20px;margin-bottom:26px}.contact-alert h2{font-size:25px;line-height:1.3}.contact-alert p,.contact-alert li{font-size:14px;margin-top:12px}.contact-alert ul{padding-left:20px}.contact-alert a{text-decoration:underline}.field-error{font-size:13px;line-height:1.6;color:#962838;margin-top:8px}.contact-test{font-size:12px;background:var(--soft-lavender);padding:13px 16px;margin:0 0 24px}.contact-receipt{background:var(--soft-lavender);padding:35px}.contact-receipt h2{font-size:36px;line-height:1.2}.contact-receipt p:not(.eyebrow){margin-top:22px}.contact-reference{font-size:12px}.contact-receipt .text-link{margin-top:25px}
@media(max-width:1100px){.contact-page{gap:50px}}@media(max-width:800px){.contact-page{grid-template-columns:1fr;gap:45px;padding-block:45px 60px}.contact-intro h1{max-width:17ch}.contact-intro>p{max-width:60ch}}@media(max-width:360px){.contact-intro h1{font-size:38px}.contact-panel{padding-top:22px}.contact-receipt{padding:24px}.contact-receipt h2{font-size:30px}}

/* Keep the correspondence scene within the site's plum palette. */
.contact-photo-hero .hero-scene{background:var(--deep)}
.contact-photo-hero .hero-scene img{opacity:.8;filter:saturate(.45);mix-blend-mode:luminosity}

/* Match the line-art backgrounds used throughout the site. */
.contact-intro{position:relative;isolation:isolate;align-self:stretch}
.contact-intro::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:160px -12px auto;height:350px;background:url('../images/contact-envelope.svg') center/100% auto no-repeat;opacity:.28}
@media(max-width:800px){.contact-intro::before{inset:-18px 0;height:100%;background-position:center;background-size:100% auto;opacity:.12}}
