/* A direct contact surface in the collection's established visual language. */
.contact-page{min-height:100svh;display:flex;flex-direction:column}
.contact-page .site-header{position:relative;border-bottom:1px solid var(--line)}
.contact-page .site-header nav [aria-current=page]{color:var(--cream);text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:.5rem}
.contact-layout{width:calc(100% - var(--gutter)*2);max-width:92rem;margin:auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-areas:"intro methods" "portrait methods";column-gap:clamp(3rem,7vw,8rem);row-gap:2.5rem;padding:clamp(3rem,5vw,6rem) 0}
.contact-intro{grid-area:intro;min-width:0}
.contact-eyebrow{font-size:.875rem;color:var(--brass);letter-spacing:.16em;margin-bottom:1.2rem}
.contact-intro h1{font-size:clamp(4.5rem,7.6vw,9rem);line-height:1.02;letter-spacing:-.04em}
.contact-lead{font-size:1.0625rem;line-height:1.75;color:var(--muted);max-width:36ch;margin-top:1.25rem}
.contact-methods{grid-area:methods;align-self:center;min-width:0;font-style:normal;scroll-margin-top:2rem}
.contact-method{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;row-gap:.55rem;align-items:center;padding:clamp(1.5rem,2.5vw,2.5rem) 0;border-bottom:1px solid var(--line);transition:border-color .2s}
.contact-method:first-child{border-top:1px solid var(--line)}
.contact-label{grid-column:1;font-size:.8125rem;letter-spacing:.12em;color:var(--brass)}
.contact-value{grid-column:1;min-width:0;font-family:var(--serif);font-size:clamp(2rem,3.2vw,3.5rem);line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere;transition:color .2s}
.contact-email .contact-value{font-size:clamp(1.75rem,2.6vw,2.8rem)}
.contact-arrow{grid-column:2;grid-row:1 / span 2;align-self:center;font:2rem var(--serif);color:var(--brass);transition:transform .2s}
.contact-method:hover,.contact-method:focus-visible{border-color:var(--brass)}
.contact-method:hover .contact-value{color:#fff2da}
.contact-method:hover .contact-arrow{transform:translate(.2rem,-.2rem)}
.contact-method:focus-visible,#contact-methods:focus-visible{outline:2px solid var(--cream);outline-offset:.5rem}
.contact-portrait{grid-area:portrait;min-width:0}
.contact-portrait img{width:100%;height:auto;aspect-ratio:1668/943;object-fit:cover}
.contact-portrait figcaption{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5rem 1rem;padding-top:1rem}
.contact-portrait figcaption>span:first-child{font:clamp(1.5rem,2vw,2rem) var(--serif)}
.contact-portrait .mono{font-size:.75rem;letter-spacing:.04em;color:var(--brass)}
.contact-page .site-footer{font-size:.75rem;line-height:1.8}
@media(max-width:960px){.contact-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "methods" "portrait";max-width:42rem;row-gap:2.5rem;padding:2.5rem 0 3.5rem}.contact-intro h1{font-size:clamp(4rem,11vw,6rem)}.contact-lead{max-width:38ch}.contact-method{padding:1.5rem 0}.contact-value{font-size:clamp(2rem,7vw,3rem)}.contact-email .contact-value{font-size:clamp(1.6rem,5.4vw,2.5rem)}}
@media(max-width:380px){.contact-layout{row-gap:2rem}.contact-intro h1{font-size:3.7rem}.contact-method{column-gap:.65rem}.contact-arrow{font-size:1.6rem}.contact-page .site-footer{flex-direction:column;gap:.5rem}.contact-page .site-footer a{text-align:left}}
@media(prefers-reduced-motion:reduce){.contact-method,.contact-value,.contact-arrow{transition:none}.contact-method:hover .contact-arrow{transform:none}}
