/* Credited photographs are complete images: no fixed image height, cover crop or masking. */
.site-photo{margin:0;min-width:0;align-self:start}
.site-photo img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;object-position:center;border-radius:0;clip-path:none;aspect-ratio:auto}
.site-photo figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:7px 20px;margin-top:12px;font-size:10px;line-height:1.7;color:var(--muted)}
.site-photo figcaption a{text-decoration:underline;text-underline-offset:3px}
.ian-section .site-photo figcaption{color:#c3c9bb}
.about-story{grid-template-columns:1fr 1.3fr;gap:64px}
.photo-story,.supplier-section{padding-block:70px 85px;border-top:1px solid var(--line)}
.photo-story h2{margin-top:19px}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}
.photo-moment,.social-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:65px;align-items:center;padding-block:70px 85px;border-top:1px solid var(--line)}
.photo-moment h2{margin:20px 0 24px}
.photo-moment .lead{margin-bottom:20px}
.supplier-card{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:32px;border-top:1px solid var(--line);margin-top:36px;max-width:950px}
.supplier-card h3{font:clamp(25px,3vw,36px)/1.15 var(--serif);margin:0 0 18px}
.supplier-card p:not(.eyebrow){max-width:600px;font-size:14px;margin-bottom:23px;color:var(--muted)}
.social-intro{border:0;padding-top:65px}
.social-intro h1{font-size:clamp(48px,5.3vw,76px);margin:23px 0 26px}
.social-intro .lead{margin-bottom:20px}
.social-intro .text-link{display:inline-block;margin-top:23px}
.social-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-bottom:85px}
.social-card{display:block;border:1px solid var(--line);padding:35px;transition:background .2s}
.social-card:hover,.social-card:focus-visible{background:#e9e3d8}
.social-card h2{font-size:clamp(25px,2.5vw,36px);overflow-wrap:anywhere;margin:35px 0 24px}
.social-card p{max-width:440px;font-size:14px;color:var(--muted);margin-bottom:28px}
.social-card .text-link{font-size:12px}
.social-note{grid-column:1/-1;font-size:11px;color:var(--muted);max-width:700px;margin-top:9px}
@media(max-width:760px){
 .site-photo figcaption{font-size:10px;gap:5px}
 .about-story,.photo-moment,.social-intro,.social-links,.photo-pair,.supplier-card{grid-template-columns:1fr;gap:28px}
 .photo-story,.supplier-section{padding-block:45px 55px}
 .photo-pair{margin-top:28px;gap:32px}
 .photo-moment,.social-intro{padding-block:45px 55px}
 .social-intro h1{font-size:clamp(44px,11vw,64px)}
 .supplier-card{padding-top:25px;margin-top:25px;gap:14px}
 .social-card{padding:26px}
 .social-card h2{margin-top:24px}
 .social-links{padding-bottom:55px;gap:20px}
}
@media(prefers-reduced-motion:reduce){.social-card{transition:none}}
