.about-opening { padding: 74px 0 88px; }
.about-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(44px, 7vw, 92px); align-items: center; }
.about-copy { max-width: 690px; }
.about-copy h1 { font: normal clamp(2.2rem, 3.6vw, 3rem)/1.2 Georgia, serif; letter-spacing: -.02em; margin: 0 0 24px; color: #243744; }
.about-copy p:not(.eyebrow) { font-size: 1.08rem; line-height: 1.82; margin: 0 0 22px; }
.about-copy .about-lead { font-size: 1.13rem; }
.about-divider { height: 38px; margin: 22px 0; }
.about-divider svg { width: 172px; height: 36px; fill: none; stroke: #859780; stroke-width: 1.1; stroke-linecap: round; stroke-linejoin: round; }
.about-photo-wrap { margin: 0; justify-self: center; width: min(100%, 390px); position: relative; isolation: isolate; }
.about-photo { position: relative; z-index: 0; display: block; width: 100%; height: auto; }
.about-photo-wrap::after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(90deg, #faf8f2 0%, rgba(250,248,242,.82) 10%, rgba(250,248,242,.42) 32%, rgba(250,248,242,0) 68%); }
.about-page .button { display: inline-block; border-radius: 999px; }
.about-page .notice-section { padding: 28px 0; background: #efeee7; }
.about-page .site-footer { padding: 16px 0; color: #566563; }
.about-page .site-footer p { margin: 0; font-size: .88rem; }
@media (max-width: 820px) { .about-grid { grid-template-columns: 1fr; gap: 38px; } .about-photo-wrap { width: min(82%, 340px); grid-row: 1; } .about-opening { padding: 50px 0 60px; } }
