.contact-row{grid-template-columns:1fr;display:grid;position:relative}@media (min-width:768px){.contact-row{grid-template-columns:clamp(64px,6.5vw,140px) 1fr auto;align-items:start}}.contact-num{font-size:var(--text-h2);color:var(--ink-faint);letter-spacing:-.02em;font-variant-numeric:lining-nums;line-height:1}@media (max-width:767px){.contact-num{font-size:var(--text-h3);margin-bottom:4px}}.contact-rowlink{color:inherit;text-decoration:none;display:contents}.contact-label{width:fit-content;color:var(--ink);font-size:var(--text-h2);text-transform:lowercase;line-height:.96;display:inline-block;position:relative}.contact-label:after{content:"";background:var(--red);transform-origin:0;width:100%;height:max(2px,.025em);transition:transform var(--dur) var(--ease-out);position:absolute;bottom:-.06em;left:0;transform:scaleX(0)}.contact-rowwrap:hover .contact-label:after,.contact-rowlink:focus-visible .contact-label:after{transform:scaleX(1)}.contact-rowwrap:active .contact-label{opacity:.85}.contact-email-label{color:var(--red);letter-spacing:var(--tracking-display);transition:text-shadow var(--dur) var(--ease-out);white-space:nowrap;font-size:clamp(32px,8.2vw,148px);line-height:.92}.contact-rowwrap:hover .contact-email-label{text-shadow:var(--glow-red)}.contact-arrow{color:var(--ink-faint);transition:color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);align-self:center}.contact-rowwrap:hover .contact-arrow{color:var(--red);transform:translate(2px,-2px)}.contact-rule{background:var(--hairline);width:100vw;height:1px;margin-left:calc(50% - 50vw);position:relative}.contact-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--red), transparent);opacity:0;width:120px;height:1px;position:absolute;top:0;left:-120px}@media (prefers-reduced-motion:no-preference){.contact-rule{transform-origin:0;animation:contact-rule-draw .64s var(--ease-out) forwards;animation-delay:var(--rule-delay,.3s);transform:scaleX(0)}.contact-rowwrap:hover .contact-rule:after,.contact-rule.ignite:after{animation:contact-rim-travel calc(var(--dur-slow) * 3) var(--ease-out) forwards}}@keyframes contact-rule-draw{to{transform:scaleX(1)}}@keyframes contact-rim-travel{0%{opacity:1;left:-120px}85%{opacity:1}to{opacity:0;left:100%}}
