:root{--contact-ink:#1d1d1f;--contact-paper:#f5f5f7;--contact-line:#d2d2d7;--contact-muted:#6e6e73}
html,body{min-height:100%;overflow-x:hidden}
body.contact-page{background:var(--contact-paper);color:var(--contact-ink)}
.contact-page .grain{display:none}
.contact-page .site-head{position:fixed;color:var(--contact-ink)}
.contact-page .coordinates{transform:none}
.contact-page .header-actions{color:inherit}
.contact-page .index-panel{z-index:160}
.contact-page .page-transition{z-index:300}

.contact-gateway{min-height:100svh;background:var(--contact-paper)}
.contact-form-panel{box-sizing:border-box;min-height:100svh;padding:clamp(118px,12vh,156px) var(--shell-edge) clamp(34px,5vh,64px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-content:start;column-gap:clamp(16px,2vw,32px)}
.contact-code{grid-column:1/4;margin:0;color:var(--contact-muted);font:600 11px/1.55 "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase}
.contact-form-panel h1{grid-column:1/-1;margin:clamp(58px,8vh,104px) 0 clamp(64px,9vh,112px);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif!important;font-size:clamp(76px,11.7vw,178px)!important;font-weight:680!important;line-height:.78!important;letter-spacing:-.082em!important;text-transform:none!important;color:var(--contact-ink)!important}
.contact-form-panel h1 em{font:inherit!important;font-style:normal!important;color:inherit!important}
.contact-lead{grid-column:1/6;max-width:520px;margin:0;color:var(--contact-muted);font:500 clamp(16px,1.35vw,21px)/1.45 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;letter-spacing:-.025em}

.contact-compose{grid-column:7/13;display:grid;grid-template-columns:1fr auto;gap:24px 20px;align-items:end;margin:0}
.contact-compose label{grid-column:1/-1;display:grid;gap:10px}
.contact-compose label span{color:var(--contact-muted);font:600 11px/1 "DM Mono",monospace;letter-spacing:.07em;text-transform:uppercase}
.contact-compose input,.contact-compose textarea{box-sizing:border-box;width:100%;min-height:48px;padding:8px 0;border:0;border-bottom:1px solid var(--contact-ink);border-radius:0;background:transparent;color:var(--contact-ink);font:500 17px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;outline:0;resize:none;transition:border-color .25s ease,padding-left .4s cubic-bezier(.16,1,.3,1)}
.contact-compose textarea{min-height:82px}
.contact-compose input:focus,.contact-compose textarea:focus{padding-left:12px;border-color:#1d1d1f;transform:none;box-shadow:none}
.contact-compose button{grid-column:2;min-width:174px;height:48px;padding:0 9px 0 18px;border:1px solid var(--contact-ink);border-radius:999px;background:var(--contact-ink);color:var(--contact-paper);display:flex;align-items:center;justify-content:space-between;gap:25px;font:650 10px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;box-shadow:none;transition:background-color .25s ease,color .25s ease,transform .35s cubic-bezier(.16,1,.3,1)}
.contact-compose button i{width:31px;height:31px;border:1px solid rgba(255,255,255,.45);border-radius:50%;display:grid;place-items:center;background:transparent;color:inherit;font:400 15px/1 sans-serif;font-style:normal}
.contact-compose button:hover,.contact-compose button:focus-visible{outline:0;background:#1d1d1f;border-color:#1d1d1f;transform:translateY(-3px);box-shadow:none}
.form-status{grid-column:1;margin:0;min-height:14px;color:var(--contact-muted);font:600 11px/1.4 "DM Mono",monospace;text-transform:uppercase}

.contact-methods{grid-column:1/-1;margin-top:clamp(72px,10vh,124px);display:grid;grid-template-columns:repeat(3,1fr);border:0!important;border-top:1px solid var(--contact-ink)!important;border-bottom:1px solid var(--contact-ink)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible}
.contact-methods a{box-sizing:border-box;min-height:clamp(112px,15vh,166px);padding:18px 20px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;background:transparent!important;color:var(--contact-ink)!important;text-decoration:none;border-right:1px solid var(--contact-ink);transition:padding .35s cubic-bezier(.16,1,.3,1)}
.contact-methods a:last-child{border-right:0}
.contact-methods span,.contact-methods i{font:600 10px/1 "DM Mono",monospace;font-style:normal;letter-spacing:.06em}
.contact-methods i{justify-self:end}
.contact-methods b{grid-column:1/-1;align-self:end;font:680 clamp(28px,3vw,46px)/.9 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.055em}
.contact-methods a:hover,.contact-methods a:focus-visible{outline:0;background:transparent!important;color:var(--contact-ink)!important;padding-left:28px}

.contact-page:not(.contact-ready) .contact-form-panel>*{opacity:0;transform:translateY(18px)}
.contact-page.contact-ready .contact-form-panel>*{animation:contact-rise .72s both}
.contact-page.contact-ready .contact-form-panel h1{animation-delay:.06s}.contact-page.contact-ready .contact-lead{animation-delay:.12s}.contact-page.contact-ready .contact-compose{animation-delay:.18s}.contact-page.contact-ready .contact-methods{animation-delay:.24s}
@keyframes contact-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media(max-width:900px){.contact-form-panel{padding-top:104px;grid-template-columns:repeat(6,minmax(0,1fr))}.contact-code{grid-column:1/4}.contact-form-panel h1{grid-column:1/-1;margin:52px 0 58px;font-size:clamp(66px,15vw,122px)!important}.contact-lead{grid-column:1/-1;max-width:620px}.contact-compose{grid-column:1/-1;margin-top:54px}.contact-methods{grid-column:1/-1;margin-top:74px}.contact-page .coordinates{display:none}.contact-page .site-head{grid-template-columns:1fr auto}.contact-page .header-actions{grid-column:2}}
@media(max-width:560px){.contact-form-panel{padding:90px 18px 30px}.contact-code{grid-column:1/-1}.contact-form-panel h1{margin:42px 0 44px;font-size:clamp(58px,17vw,86px)!important;line-height:.82!important}.contact-lead{font-size:16px}.contact-compose{grid-template-columns:1fr;margin-top:44px;gap:21px}.contact-compose button,.form-status{grid-column:1}.contact-compose button{width:100%}.contact-methods{grid-template-columns:1fr;margin-top:62px}.contact-methods a{min-height:94px;border-right:0;border-bottom:1px solid var(--contact-ink)}.contact-methods a:last-child{border-bottom:0}}
@media(prefers-reduced-motion:reduce){.contact-page:not(.contact-ready) .contact-form-panel>*{opacity:1;transform:none}.contact-page.contact-ready .contact-form-panel>*{animation:none}}
