/* Page-owned editorial composition. The inherited shell stays intact. */
.about-page { width:min(1280px,calc(100% - 40px)); margin-inline:auto; padding-block:56px 100px; }
.about-page * { min-width:0; }
.about-page h1,.about-page h2 { color:#202020; margin:0; font-weight:600; }
.about-page p { max-width:min(100%, 1100px); }
.about-page a { color:#a41e0b; text-underline-offset:4px; }
.about-page a:focus-visible { outline:3px solid #a41e0b; outline-offset:5px; }
.about-intro { padding-block:20px 44px; }
.about-eyebrow { margin:0 0 24px; color:#a41e0b; font-size:14px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.about-intro h1 { max-width:1050px; font-size:clamp(42px,6vw,88px); line-height:1.05; letter-spacing:-.045em; }
.about-lead { max-width:850px !important; font-size:clamp(21px,2.2vw,30px); line-height:1.45; margin:30px 0 40px; }
.about-edition { display:flex; flex-wrap:wrap; gap:12px 36px; color:#656565; font-size:14px; }
.about-contents { display:flex; flex-wrap:wrap; gap:10px; border-block:1px solid #cecec7; padding-block:24px; }
.about-contents a { display:inline-flex; align-items:center; min-height:44px; padding:10px 18px; border:1px solid #c4c4bd; border-radius:40px; text-decoration:none; font-size:15px; color:#202020; }
.about-contents a:hover { background:#e8e8e2; }
.about-article { max-width:960px; margin-inline:auto; }
.about-topic { padding-block:52px; border-bottom:1px solid #cecec7; scroll-margin-top:24px; }
.about-kicker { color:#a41e0b; text-transform:uppercase; font-size:13px; font-weight:700; letter-spacing:.1em; margin:0 0 14px; }
.about-page h2 { font-size:clamp(28px,3vw,40px); line-height:1.18; letter-spacing:-.025em; margin-bottom:24px; }
.about-topic p:not(.about-kicker),.about-contact p:not(.about-kicker) { font-size:19px; line-height:1.7; margin:0 0 20px; }
.about-topic > :last-child { margin-bottom:0; }
.about-method { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)); gap:0 32px; padding:0; list-style:none; counter-reset:method; margin:28px 0; }
.about-method li { counter-increment:method; border-top:2px solid #fe2301; padding:20px 0; font-size:18px; line-height:1.65; }
.about-method li::before { content:"0" counter(method); display:block; color:#a41e0b; font-size:14px; font-weight:700; margin-bottom:12px; }
.about-method strong { display:block; color:#202020; }
.about-contact { background:#eaeae4; border-radius:28px; padding:clamp(24px,4vw,48px); margin-top:52px; scroll-margin-top:24px; }
.about-contact strong { color:#202020; overflow-wrap:anywhere; }
.about-contact-link { display:inline-flex; flex-wrap:wrap; align-items:center; gap:12px; background:#fe2301; color:#111 !important; padding:14px 24px; min-height:48px; border-radius:40px; text-decoration:none; font-size:16px; font-weight:600; margin-top:8px; }
.about-contact-link:hover { background:#e92000; }
@media(max-width:600px) {
  .about-page { width:calc(100% - 32px); padding-block:20px 64px; }
  .about-intro { padding-block:12px 32px; }
  .about-lead { margin-block:24px 28px; }
  .about-topic { padding-block:36px; }
  .about-topic p:not(.about-kicker),.about-contact p:not(.about-kicker) { font-size:18px; }
  .about-contact { margin-top:36px; border-radius:20px; }
  .about-contents { gap:8px; padding-block:20px; }
  .about-contents a { font-size:14px; padding-inline:14px; }
}
