/* Housing release only. Original archival images remain uncropped and unaltered. */
.housing-release { --housing-paper:#faf6ec; --housing-green:#174f45; --housing-red:#76271f; background:var(--housing-paper); color:#282c29; }
.housing-release * { box-sizing:border-box; }
.housing-release .housing-wide { width:calc(100% - 80px); max-width:1160px; margin-inline:auto; }
.housing-release .housing-measure { width:calc(100% - 48px); max-width:720px; margin-inline:auto; }
.housing-release p { font:400 19px/1.75 var(--font-body, sans-serif); margin:0 0 24px; }
.housing-release a { color:inherit; text-decoration:underline; text-underline-offset:4px; }
.housing-release a:focus-visible { outline:3px solid #b45635; outline-offset:6px; }
.housing-release blockquote { padding:0; margin:0; border:0; background:none; color:inherit; box-shadow:none; font-style:normal; }
.housing-release blockquote::before,.housing-release blockquote::after { content:none; }
.housing-release blockquote p { color:inherit; font-style:normal; }
.housing-hero { background:var(--housing-green); color:var(--housing-paper); padding:110px 0 54px; }
.housing-back { font-size:14px; }
.housing-hero-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:56px; align-items:center; margin-top:38px; }
.housing-release .housing-kicker { font-size:12px; text-transform:uppercase; letter-spacing:.13em; font-weight:700; margin:0 0 22px; }
.housing-kicker span { display:inline-block; padding-left:18px; font-weight:400; }
.housing-release h1 { color:inherit; font:900 clamp(48px,5.5vw,80px)/.98 var(--font-display, sans-serif); letter-spacing:-.04em; margin:0; }
.housing-release h1 span { display:block; font:500 23px/1.35 var(--font-body,sans-serif); letter-spacing:0; margin-top:24px; max-width:340px; }
.housing-spokesperson { display:flex; align-items:center; gap:16px; margin-top:32px; }
.housing-spokesperson img { border-radius:50%; object-fit:cover; width:56px; height:56px; }
.housing-release .housing-spokesperson p { font-size:14px; line-height:1.5; margin:0; }
.housing-spokesperson span { display:block; opacity:.85; margin-top:4px; }
.housing-release figure { margin:0; }
.housing-hero-image img { display:block; width:100%; height:auto; }
.housing-release figcaption { font:400 12px/1.65 var(--font-body,sans-serif); }
.housing-hero-image figcaption { padding-top:14px; opacity:.85; }
.housing-intro { padding-top:72px; }
.housing-intro > p { font-size:21px; line-height:1.7; }
.housing-download p { margin:28px 0 0; font-size:15px; font-weight:600; }
.housing-download a { display:inline-flex; align-items:center; gap:20px; padding:18px 24px; border:2px solid var(--housing-red); border-radius:3px; background:var(--housing-red); color:var(--housing-paper); text-decoration:none; box-shadow:4px 4px 0 #76271f22; line-height:1.5; transition:background .15s,box-shadow .15s; }
.housing-download a::after { content:'↓'; font-size:26px; line-height:1; }
.housing-download a:hover { background:#582019; border-color:#582019; box-shadow:2px 2px 0 #76271f22; }
.housing-principle { padding:52px 0 64px; }
.housing-principle blockquote { border-top:2px solid var(--housing-green); padding-top:30px; }
.housing-principle blockquote p { color:var(--housing-green); font:500 clamp(26px,2.6vw,34px)/1.5 var(--font-serif,Georgia,serif); }
.housing-building { display:grid; grid-template-columns:.85fr 1.15fr; gap:76px; align-items:center; padding:34px 0 76px; }
.housing-rule-quote { border-left:3px solid var(--housing-red); padding-left:24px; margin-top:32px; }
.housing-rule-quote blockquote p { font-size:21px; color:var(--housing-red); }
.housing-paper { display:block; padding:10px; background:#fffcf3; box-shadow:0 18px 32px -17px #30261980,0 2px 5px #30261930; transform:rotate(2deg); }
.housing-paper img { display:block; width:100%; height:auto; }
.housing-album figcaption { margin:28px 12px 0; }
.housing-archive-label { display:block; text-transform:uppercase; letter-spacing:.1em; color:var(--housing-red); font-weight:700; font-size:11px; margin-bottom:6px; }
.housing-caption-note { display:block; color:#5a6059; }
.housing-economy { padding:30px 0 18px; }
.housing-editorial-quote { padding-top:20px; }
.housing-editorial-quote blockquote p { font-size:23px; line-height:1.65; color:var(--housing-green); }
.housing-release .housing-plan { max-width:970px; margin:54px auto 68px; }
.housing-plan .housing-paper { transform:rotate(-1.5deg); padding:16px; }
.housing-plan figcaption { max-width:680px; margin:32px auto 0; }
.housing-reset { padding:10px 0 50px; }
.housing-reset blockquote p { font-size:21px; }
.housing-closing { padding:64px 0; background:var(--housing-red); color:var(--housing-paper); position:relative; }
.housing-closing blockquote { max-width:940px; margin:0 auto; }
.housing-closing blockquote p { font:600 clamp(30px,3.8vw,50px)/1.25 var(--font-serif,Georgia,serif); letter-spacing:-.015em; margin:0; }
.housing-contact { padding:52px 0 64px; }
@media(max-width:800px) {
 .housing-release .housing-wide { width:calc(100% - 48px); }
 .housing-hero-grid { gap:30px; grid-template-columns:1fr; }
 .housing-hero-image { max-width:600px; }
 .housing-release h1 { font-size:64px; }
 .housing-building { grid-template-columns:1fr; gap:30px; max-width:720px; }
 .housing-album { max-width:560px; justify-self:center; }
 .housing-release .housing-plan { width:calc(100% - 64px); }
}
@media(max-width:480px) {
 .housing-release p { font-size:17px; }
 .housing-hero { padding:100px 0 36px; }
 .housing-release h1 { font-size:56px; }
 .housing-release h1 span { font-size:20px; }
 .housing-kicker span { display:block; padding:4px 0 0; }
 .housing-intro { padding-top:40px; }
 .housing-intro > p { font-size:19px; }
 .housing-principle { padding:36px 0; }
 .housing-principle blockquote p { font-size:26px; }
 .housing-building { padding:24px 0 32px; }
 .housing-paper { transform:rotate(1deg); padding:5px; }
 .housing-plan .housing-paper { transform:rotate(-.8deg); padding:6px; }
 .housing-rule-quote blockquote p,.housing-editorial-quote blockquote p,.housing-reset blockquote p { font-size:20px; }
 .housing-release .housing-plan { margin:32px auto 38px; }
 .housing-closing { padding:44px 0; }
 .housing-closing blockquote p { font-size:32px; }
 .housing-contact { padding:36px 0; }
}
@media print { .housing-paper,.housing-plan .housing-paper { transform:none; box-shadow:none; } .housing-closing,.housing-hero { background:white; color:black; } }
