/* About page only. Shared typography, navigation and other pages are unchanged. */
.comfy-about .about-hero-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:60px; align-items:center; }
.comfy-about .room-hero-copy > p { font-size:16px; line-height:1.7; }
.comfy-about .about-hero-media { min-width:0; margin:0; }
.comfy-about .about-hero-media img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:var(--comfy-radius); }
.comfy-about .about-hero-media figcaption { margin-top:12px; color:var(--comfy-muted); font-size:14px; line-height:1.6; }
.comfy-about .about-identity { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:36px 0 0; padding:23px 0 0; border-top:1px solid var(--comfy-line); }
.comfy-about .about-identity > div { min-width:0; }
.comfy-about .about-identity > div + div { border-left:1px solid var(--comfy-line); padding-left:28px; }
.comfy-about .about-identity dt { font-size:14px; font-weight:400; color:var(--comfy-muted); margin-bottom:5px; }
.comfy-about .about-identity dd { margin:0; font-size:16px; font-weight:600; color:var(--comfy-ink); }
.comfy-about .about-section-heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:60px; margin-bottom:32px; }
.comfy-about .about-section-heading h2 { margin-bottom:0; }
.comfy-about .about-section-heading > p { max-width:58ch; margin:0; font-size:16px; }
.comfy-about .about-timeline { list-style:none; padding:0; margin:0; border-top:1px solid var(--comfy-line); }
.comfy-about .about-stage { display:grid; grid-template-columns:200px minmax(0,1fr); gap:40px; padding:28px 0; border-bottom:1px solid var(--comfy-line); }
.comfy-about .about-year { font:700 32px/1.2 "Barlow",sans-serif; letter-spacing:-.025em; color:var(--comfy-ink); white-space:nowrap; }
.comfy-about .about-stage h3 { margin:0 0 7px; font-size:26px; line-height:1.25; }
.comfy-about .about-stage p { max-width:78ch; margin:0; font-size:16px; line-height:1.75; }
.comfy-about .about-stage .about-period { font-size:14px; margin-bottom:10px; }
.comfy-about .about-stage--divendoor { padding:30px 28px; background:var(--comfy-paper); border-left:3px solid var(--comfy-red); grid-template-columns:169px minmax(0,1fr); }
.comfy-about .about-stage--divendoor .about-year { color:var(--comfy-red); }
.comfy-about .about-history-note { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px 28px; padding-top:22px; }
.comfy-about .about-history-note p { max-width:73ch; margin:0; font-size:14px; line-height:1.7; }
.comfy-about .about-sources { display:flex; flex-wrap:wrap; gap:18px; font-size:14px; }
.comfy-about .about-sources a { color:var(--comfy-muted); text-decoration:underline; text-underline-offset:3px; }
.comfy-about .about-work { background:var(--comfy-paper); }
.comfy-about .about-process { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; padding:0; margin:0; }
.comfy-about .about-process li { min-width:0; border-top:1px solid var(--comfy-line); padding-top:22px; }
.comfy-about .about-step { display:block; font-size:14px; color:var(--comfy-red); margin-bottom:14px; }
.comfy-about .about-process h3 { font-size:22px; line-height:1.3; margin:0 0 12px; }
.comfy-about .about-process p { font-size:16px; line-height:1.75; margin:0; }
.comfy-about .about-locations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.comfy-about .about-location { padding:28px; border:1px solid var(--comfy-line); border-radius:var(--comfy-radius); min-width:0; }
.comfy-about .about-location h3 { margin:0 0 12px; font-size:24px; }
.comfy-about .about-location p { font-size:16px; margin-bottom:16px; }
.comfy-about .about-location address { font-size:16px; line-height:1.75; font-style:normal; margin-bottom:18px; }
.comfy-about .about-location a { color:var(--comfy-ink); overflow-wrap:anywhere; }
.comfy-about .about-location-links { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px 28px; font-size:16px; }
.comfy-about .about-location-links a { text-decoration:underline; text-underline-offset:4px; }
.comfy-about .about-final { background:var(--comfy-paper); }
.comfy-about .about-final-grid { display:grid; grid-template-columns:1fr auto; gap:44px; align-items:center; }
.comfy-about .about-final h2 { max-width:24ch; margin-top:0; }
.comfy-about .about-final p { font-size:16px; margin:16px 0 0; max-width:63ch; }
.comfy-about .about-final .room-actions { justify-content:flex-end; }
@media(max-width:1199px) {
 .comfy-about .about-hero-grid,.comfy-about .about-section-heading { gap:32px; }
 .comfy-about .about-stage { grid-template-columns:180px minmax(0,1fr); gap:28px; }
 .comfy-about .about-stage--divendoor { grid-template-columns:149px minmax(0,1fr); }
 .comfy-about .about-process { gap:26px; }
}
@media(max-width:991px) {
 .comfy-about .about-hero-grid,.comfy-about .about-section-heading,.comfy-about .about-final-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .comfy-about .about-hero-media { max-width:100%; }
 .comfy-about .about-identity { gap:16px; }
 .comfy-about .about-identity > div + div { padding-left:18px; }
 .comfy-about .about-process { grid-template-columns:minmax(0,1fr); gap:26px; }
 .comfy-about .about-process li { display:grid; grid-template-columns:44px minmax(0,1fr); column-gap:18px; }
 .comfy-about .about-step { grid-row:1/3; margin:4px 0 0; }
 .comfy-about .about-final .room-actions { justify-content:flex-start; }
}
@media(max-width:575px) {
 .comfy-about .about-identity { grid-template-columns:minmax(0,1fr); margin-top:26px; padding-top:20px; gap:14px; }
 .comfy-about .about-identity > div { display:flex; justify-content:space-between; gap:16px; }
 .comfy-about .about-identity > div + div { padding:0; border:0; }
 .comfy-about .about-identity dt { margin:0; }
 .comfy-about .about-identity dd { text-align:right; }
 .comfy-about .about-stage { grid-template-columns:minmax(0,1fr); gap:12px; padding:24px 0; }
 .comfy-about .about-year { font-size:28px; }
 .comfy-about .about-stage h3 { font-size:24px; }
 .comfy-about .about-stage--divendoor { padding:24px 20px; }
 .comfy-about .about-locations { grid-template-columns:minmax(0,1fr); gap:20px; }
 .comfy-about .about-location { padding:24px 20px; }
 .comfy-about .about-section-heading { margin-bottom:26px; gap:18px; }
 .comfy-about .about-process li { grid-template-columns:28px minmax(0,1fr); gap:0 14px; }
 .comfy-about .about-history-note { padding-top:20px; }
}
