.contact-main{min-height:calc(100svh - var(--header-h) - 124px);align-items:center;padding:clamp(32px,6vw,88px) 0 clamp(72px,9vw,128px);display:grid}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,96px);display:grid}.contact-intro h1{font-size:var(--contact-size);letter-spacing:-.062em;font-weight:640;line-height:1}.contact-intro>p{max-width:26em;color:var(--mist);margin-top:clamp(22px,2.6vw,34px);font-size:clamp(1.0625rem,1.45vw,1.3125rem)}.letter{isolation:isolate;border-radius:var(--sheet-r);background:var(--paper);color:var(--ink);padding:clamp(26px,3.6vw,48px);position:relative;overflow:clip;box-shadow:0 60px 100px -50px #000c,0 0 0 1px #ffffff0a}.letter:before{content:"";z-index:-1;background:radial-gradient(380px circle at var(--mx) var(--my), #7c8fe024, #8ac97d12 42%, transparent 70%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.letter :focus-visible{outline-color:var(--blue)}.letter-address{min-height:44px;font-family:var(--heading);letter-spacing:-.045em;overflow-wrap:anywhere;background:var(--grad-mark) left bottom / 26% 3px no-repeat;transition:background-size .3s var(--spring);align-items:flex-end;padding-bottom:10px;font-size:clamp(1.375rem,3vw,2.625rem);font-weight:650;line-height:1.15;display:inline-flex}.letter-actions{flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,36px);display:flex}.letter-actions .btn{min-height:52px;font-size:.9375rem}.copy-status{color:#2f6b3a;min-height:1.6em;margin-top:12px;font-size:.9375rem;font-weight:600}.copy-status.is-error{color:var(--ink);font-weight:500}.letter-hint{border-top:1px solid var(--paper-line);color:#393c45;margin-top:10px;padding-top:22px;font-size:1rem}.letter-hint,.letter-privacy{overflow-wrap:break-word;hyphens:auto}.letter-privacy{color:var(--muted);margin-top:12px;font-size:.875rem}.letter-privacy a{text-underline-offset:3px;text-decoration:underline}@media (hover:hover) and (pointer:fine){.letter:hover:before{opacity:1}.letter-address:hover{background-size:100% 3px}}@media (prefers-reduced-motion:no-preference){.letter{animation:letter-in .42s var(--spring) .12s both}.contact-intro .h1-line>span{animation:line-up .46s var(--spring) 40ms both}.contact-intro .h1-line:nth-child(2)>span{animation-delay:.11s}.is-settled .letter,.is-settled .contact-intro .h1-line>span{animation:none}}@keyframes letter-in{0%{transform:translateY(40px)rotate(1.5deg)}}@media (width<=899px){.contact-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=380px){.letter-actions .btn{justify-content:space-between;width:100%}}@media (width<=359px){.letter-address{font-size:1.25rem}}@media (forced-colors:active){.letter{border:1px solid canvastext}.letter:before{display:none}.letter-address{background:0 0;text-decoration:underline}}@media print{.letter:before,.letter-actions{display:none}.letter{border:1px solid #000}}
