.about-skip-link { position:fixed; top:10px; left:16px; z-index:60; padding:12px 18px; background:var(--ink); color:var(--paper); transform:translateY(-160%); }
.about-skip-link:focus { transform:none; }
.about-page a:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.about-hero { display:grid; grid-template-columns:1.1fr 1fr; min-height:660px; }
.about-hero-copy { align-self:center; padding:88px 5vw 92px 8vw; }
.about-hero-copy .eyebrow { margin-bottom:28px; }
.about-hero h1 { font-size:clamp(48px,5.4vw,78px); line-height:1.02; margin-bottom:28px; }
.about-hero-copy > p:not(.eyebrow) { max-width:470px; line-height:1.75; }
.about-hero-copy .about-lead { font-size:20px; line-height:1.55; }
.about-hero-image { position:relative; overflow:hidden; min-height:100%; background:#d4d8c9; }
.about-hero-image img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:60% center; }
.about-hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(38,59,36,.04),rgba(38,59,36,.38)); }
.about-image-caption { position:absolute; z-index:1; bottom:40px; left:40px; color:var(--paper); font:400 clamp(30px,3vw,46px) Amoret,"Times New Roman",serif; }
.about-text-link { display:inline-flex; align-items:center; gap:22px; margin-top:20px; padding-block:8px; border-bottom:1px solid var(--line); color:var(--ink); font-size:14px; text-decoration:none; }
.about-text-link:hover { border-color:var(--ink); }
.about-section { padding:100px 8vw; }
.about-editorial-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:9vw; }
.about-editorial-grid h2 { font-size:clamp(36px,3.8vw,55px); }
.about-prose { max-width:570px; }
.about-prose > p { margin:0 0 22px; line-height:1.8; }
.about-prose > p:last-child { margin-bottom:0; }
.about-philosophy { min-height:0; scroll-margin-top:100px; }
.about-philosophy .intro { max-width:590px; }
.about-prose .about-small-print { margin-top:28px; font-size:12px; color:var(--muted); }
.about-invitation { background:#e3e6da; text-align:center; }
.about-invitation img { display:block; margin:0 auto 30px; }
.about-invitation h2 { font-size:clamp(38px,4.5vw,62px); }
.about-invitation p:not(.eyebrow) { margin:24px auto; max-width:460px; line-height:1.7; }
.about-invitation .button { display:inline-block; margin-top:8px; background:var(--ink); color:var(--paper); }
.about-invitation .button:hover { background:transparent; color:var(--ink); }
@media (max-width:900px) {
  .about-hero { min-height:580px; }
  .about-hero-copy { padding-left:6vw; padding-right:4vw; }
  .about-editorial-grid { gap:6vw; }
}
@media (max-width:700px) {
  .about-hero { grid-template-columns:1fr; }
  .about-hero-copy { padding:62px 8.2vw 48px; }
  .about-hero h1 { font-size:clamp(42px,10vw,64px); }
  .about-hero-image { min-height:320px; }
  .about-image-caption { left:8.2vw; bottom:28px; }
  .about-section { padding:68px 8.2vw; }
  .about-editorial-grid { grid-template-columns:1fr; gap:18px; }
  .about-philosophy h2 { font-size:clamp(30px,9vw,46px); }
  .about-invitation h2 { font-size:clamp(24px,7vw,38px); }
  .about-philosophy .values { grid-template-columns:minmax(0,1fr); }
  .about-philosophy .values h3 { font-size:24px; overflow-wrap:break-word; }
}
@media (max-width:360px) { .about-philosophy .values h3 { font-size:20px; } }
