/* Editorial pages and motion shared throughout Apartment Savers. */
.origin-hero{background:#dcecff;overflow:hidden;border-top:1px solid #c5d9f5}.origin-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-top:65px;padding-bottom:75px}.origin-grid h1{font-size:clamp(48px,5.4vw,77px);line-height:1.04;letter-spacing:-3.8px;margin:25px 0}.origin-grid h1 em{font-style:normal;color:var(--red)}.origin-grid p{font-size:15px;line-height:1.9;color:#405875;margin-bottom:22px;max-width:570px}.origin-grid .lede{font-size:20px;line-height:1.6;font-weight:600;color:var(--navy)}.origin-scene{position:relative;padding:25px 0 36px}.origin-scene>img{display:block;width:100%;transform:rotate(2deg);border:2px solid var(--navy);border-radius:55px 15px;box-shadow:10px 10px 0 #a9c7ee}.floating-token{display:inline-block;background:#fff;color:var(--navy);border:2px solid var(--navy);padding:12px 18px;border-radius:12px;box-shadow:4px 4px 0 var(--red);font-size:10px;font-weight:800;letter-spacing:1px;animation:opportunity-float 5.6s ease-in-out infinite}.token-a{position:absolute;top:2px;left:-15px}.token-b{position:absolute;bottom:35px;right:-15px;animation-delay:-2.6s;background:#fff0ed}.scene-caption{display:block;text-align:center;position:absolute;bottom:-8px;width:100%;font-size:9px;color:#526784}.chapter-nav{display:flex;justify-content:space-between;gap:15px;padding-top:23px;padding-bottom:23px;border-bottom:1px solid #cbd9ee;flex-wrap:wrap}.chapter-nav a{font-size:12px;font-weight:700;padding:9px 12px;border-radius:8px;transition:background .2s}.chapter-nav a:hover,.chapter-nav a[aria-current]{background:#dcecff}.chapter{padding:80px 0;scroll-margin-top:20px}.chapter-grid{display:grid;grid-template-columns:220px 1fr;gap:60px}.chapter-number{font:800 104px/.9 Manrope,sans-serif;color:var(--red);letter-spacing:-8px}.chapter-number span{display:block;font:700 9px/1.8 'DM Sans',sans-serif;letter-spacing:1.4px;max-width:180px;margin-top:18px;color:var(--navy)}.chapter h2{font-size:44px;margin:0 0 28px}.chapter p{font-size:16px;line-height:1.95;margin-bottom:20px;max-width:800px;color:#405875}.chapter-blue{background:#edf4ff}.chapter-white{background:white}.chapter-navy{background:var(--navy);color:#fff}.chapter-navy p{color:#d4e1f4}.chapter-navy .chapter-number,.chapter-navy .chapter-number span{color:#ffb1bd}.story-facts{display:flex;gap:30px;margin-top:30px;flex-wrap:wrap}.story-facts span{font-size:12px;display:flex;align-items:center;gap:12px}.story-facts strong{font:800 42px/1 Manrope,sans-serif;color:var(--red)}.origin-benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0 35px}.benefit-ticket{padding:26px;background:#fff;border:1px solid #b6cbe9;border-top:5px solid var(--red);border-radius:12px;box-shadow:5px 5px 0 #c7d9f4}.benefit-ticket>span{display:block;font-size:9px;letter-spacing:1px;font-weight:700}.benefit-ticket>strong{display:block;font:800 65px/1.3 Manrope,sans-serif;color:var(--red);letter-spacing:-3px}.benefit-ticket>p{font-size:12px;margin:0}.editorial-note{font-size:11px!important;line-height:1.85!important;color:#61748f}.lesson-note{background:#fff0ed;border-left:4px solid var(--red);padding:24px;margin-top:28px;border-radius:6px}.lesson-note p{font-size:13px;margin:10px 0 0}.article-note{padding-top:25px;padding-bottom:25px;font-size:11px;color:#61748f}.detail-hero,.legal-hero{background:#dcecff;padding:45px 0 58px}.detail-hero h1,.legal-hero h1{font-size:55px;letter-spacing:-2.5px;max-width:1000px;margin:25px 0;line-height:1.12}.detail-hero h1 span{display:block;font-size:24px;font-weight:600;color:#45648d;letter-spacing:-.5px;margin-top:16px}.detail-hero h1 em{font-style:normal;color:var(--red)}.breadcrumb{display:block;font-size:12px;margin-bottom:25px;text-decoration:underline;text-underline-offset:3px}.detail-location{font-size:14px;line-height:1.8}.research-label{display:inline-block;margin-top:22px;padding:10px 15px;background:#fff;border:1px solid #bfd1eb;border-radius:8px;font-size:11px}.research-detail{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:65px;padding-top:60px;padding-bottom:70px}.research-detail article h2{font-size:29px;letter-spacing:-1px;margin:30px 0 18px}.research-detail article h2:first-child{margin-top:0}.research-detail p{font-size:14px;line-height:1.9;color:#405875;margin-bottom:17px}.published-reward{background:#fff0ed;border:1px solid #e3c6c0;border-left:5px solid var(--red);padding:28px;border-radius:10px}.published-reward>span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.published-reward>strong{display:block;color:var(--red);font-size:29px;line-height:1.4;margin:13px 0}.published-reward p{margin-bottom:0}.source-box{background:#edf4ff;padding:25px;border-radius:10px;margin:25px 0}.source-box h3{font-size:21px;margin-bottom:20px;letter-spacing:-.5px}.source-box .text-link{display:block;text-decoration:underline;margin:20px 0;font-size:12px}.source-box p{font-size:11px;margin:22px 0 0}.leasing-list{padding-left:22px;font-size:14px;line-height:1.9;color:#405875}.leasing-list li{margin-bottom:10px}.next-move{align-self:start;position:sticky;top:35px;background:#dcecff;padding:28px;border-radius:18px;margin-top:25px;border:1px solid #bcd2ef}.next-move>.floating-token{margin-top:-47px;margin-bottom:27px;font-size:9px;padding:11px}.next-move h3{font-size:27px;letter-spacing:-1px;line-height:1.2;margin-bottom:18px}.next-move .button{font-size:11px;width:100%}.next-move>a:not(.button){display:block;margin:24px 0;font-size:12px;text-decoration:underline}.next-move small{font-size:10px;line-height:1.8;display:block;color:#526784}.related-pages{background:#fff0ed;padding:45px 0}.related-pages h2{font-size:32px;margin-bottom:25px}.related-pages .wrap>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.related-pages a,.index-links a{padding:23px;background:white;border:1px solid #cbd9ec;border-radius:12px;display:block;transition:transform .2s,box-shadow .2s}.related-pages a:hover,.index-links a:hover{transform:translateY(-4px);box-shadow:0 6px 0 #cbd9ec}.related-pages strong,.index-links strong{display:block;font-size:18px;line-height:1.4}.related-pages span,.index-links span{display:block;font-size:12px;line-height:1.8;color:#5c708d;margin-top:12px}.community-index{padding-top:35px;padding-bottom:60px}.community-index section{padding:25px 0}.community-index h2{font-size:33px}.index-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.index-links small{display:block;font-size:10px;color:var(--red);margin-top:15px}.detail-hero .lede{font-size:16px;line-height:1.8;max-width:800px;margin-bottom:22px}.legal-hero p{font-size:16px;max-width:800px}.legal-copy{max-width:960px;padding-top:35px;padding-bottom:65px}.legal-copy h2{font-size:27px;letter-spacing:-.8px;margin:34px 0 16px}.legal-copy p,.legal-copy li{font-size:14px;line-height:1.95;color:#405875;margin-bottom:16px}.legal-copy a:not(.button){text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.privacy-settings{padding:25px;background:#edf4ff;border:1px solid #cbd9ec;border-radius:12px;margin:30px 0}.privacy-settings h3{font-size:23px;letter-spacing:-.5px;margin-bottom:16px}.privacy-settings>div{display:flex;gap:15px;flex-wrap:wrap}.privacy-settings .plain{color:var(--red);text-decoration:underline;padding:12px}#correction-form{padding:28px;border:1px solid #cbd9ec;background:#edf4ff;border-radius:12px;margin:28px 0}#correction-form label{display:block;font-size:12px;font-weight:700;margin-bottom:20px}#correction-form input,#correction-form textarea{display:block;width:100%;margin-top:10px;padding:13px;background:white;border:1px solid #bacce5;border-radius:6px;color:var(--navy)}#correction-form .editorial-note{margin:20px 0 0}.footer-links{display:flex;gap:15px 24px;flex-wrap:wrap;padding-top:22px;padding-bottom:25px;border-top:1px solid #dce5f1}.footer-links a,.footer-links button{font-size:11px;text-decoration:underline;text-underline-offset:4px;background:none;color:var(--navy);padding:0}.fair-footer{display:flex;gap:20px;align-items:start;padding-top:20px;padding-bottom:25px;border-top:1px solid #dce5f1}.fair-footer svg{width:43px;flex-shrink:0}.fair-footer strong{font-size:12px}.fair-footer p{font-size:11px;line-height:1.8;color:#5c708d;max-width:850px;margin-top:5px}.fair-footer a{text-decoration:underline}.privacy-banner{position:fixed;z-index:1000;bottom:18px;left:18px;right:18px;margin:auto;max-width:860px;padding:22px 25px;background:#fff;border:2px solid var(--navy);border-radius:16px;box-shadow:6px 6px 0 #122d5833;display:flex;gap:25px;align-items:center}.privacy-banner h2{font-size:20px;letter-spacing:-.5px;margin:0 0 7px}.privacy-banner p{font-size:11px;color:#405875;line-height:1.7;max-width:490px}.privacy-banner a{text-decoration:underline}.privacy-banner>div:last-child{display:flex;gap:12px;flex-shrink:0;flex-wrap:wrap}.privacy-banner .button{font-size:10px;padding:11px 13px}.privacy-banner button:disabled{opacity:.6}.motion-toggle{position:fixed;right:14px;top:14px;z-index:100;background:#fff;border:1px solid #cbd9ec;color:var(--navy);border-radius:30px;padding:7px 12px;font-size:10px;box-shadow:0 2px 8px #122d5815}.reading-progress{position:fixed;top:0;left:0;height:4px;z-index:101;background:var(--red);width:0;pointer-events:none}.program-card{transition:transform .25s,box-shadow .25s}.program-card:hover{transform:translateY(-4px);box-shadow:0 10px 0 #efd8d3}.story-receipt{animation:opportunity-float 7s ease-in-out infinite}.card-art .art-number{animation:gentle-bob 7s ease-in-out infinite}.card:nth-child(2n) .art-number{animation-delay:-3s}.motion-off *, .motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important}.motion-off .reveal-ready{opacity:1;transform:none}.motion-off{scroll-behavior:auto}
@keyframes opportunity-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(1deg)}}@keyframes gentle-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(max-width:1000px){.origin-grid{gap:30px}.origin-grid h1{font-size:58px}.chapter-grid{grid-template-columns:140px 1fr;gap:35px}.research-detail{grid-template-columns:minmax(0,1fr) 260px;gap:35px}.privacy-banner{display:block}.privacy-banner>div:last-child{margin-top:16px}.index-links{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.origin-grid{grid-template-columns:1fr;gap:30px;padding-top:40px;padding-bottom:45px}.origin-grid h1{font-size:53px;letter-spacing:-2.5px}.origin-grid p{font-size:14px}.origin-grid .lede{font-size:18px}.origin-scene{margin:0 8px}.token-a{left:-12px;font-size:8px}.token-b{right:-12px;font-size:8px}.chapter-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chapter-nav a{font-size:10px;padding:8px}.chapter{padding:45px 0}.chapter-grid{grid-template-columns:1fr;gap:24px}.chapter-number{font-size:66px;letter-spacing:-4px;display:flex;align-items:center;gap:22px}.chapter-number span{margin:0;font-size:8px;max-width:150px}.chapter h2{font-size:34px;letter-spacing:-1.6px}.chapter p{font-size:14px}.story-facts{gap:20px}.story-facts strong{font-size:32px}.story-facts span{font-size:10px;gap:8px}.origin-benefits{gap:14px}.benefit-ticket{padding:18px}.benefit-ticket>strong{font-size:47px}.benefit-ticket>span{font-size:7px}.benefit-ticket>p{font-size:11px}.detail-hero,.legal-hero{padding:30px 0 38px}.detail-hero h1,.legal-hero h1{font-size:36px;letter-spacing:-1.5px;overflow-wrap:anywhere}.detail-hero h1 span{font-size:19px;line-height:1.5}.research-detail{grid-template-columns:1fr;padding-top:35px;gap:35px}.research-detail article h2{font-size:26px}.next-move{position:relative;top:0;margin-top:15px}.published-reward{padding:22px}.published-reward>strong{font-size:25px}.research-label{font-size:10px}.related-pages .wrap>div,.index-links{grid-template-columns:1fr}.related-pages h2{font-size:28px}.legal-copy p,.legal-copy li{font-size:13px}.privacy-banner{padding:18px;bottom:10px;left:10px;right:10px}.privacy-banner p{font-size:10px}.privacy-banner>div:last-child{gap:10px}.motion-toggle{top:auto;bottom:12px;right:12px}.fair-footer{gap:15px}.footer-bottom>span:nth-child(2){display:block;font-size:9px}.privacy-settings{padding:20px}.privacy-settings .button{font-size:11px}.origin-grid .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}.reading-progress{display:none}}
.motion-toggle{top:auto;bottom:12px;right:12px}
.origin-grid h1{font-size:clamp(48px,4.5vw,64px)}
@media(max-width:760px){.origin-grid h1{font-size:clamp(34px,9.7vw,50px);letter-spacing:-1.8px}}
@media(max-width:760px){.header>.button{font-size:9px;padding:10px 12px;gap:8px;margin-left:auto}}
@media(max-width:760px){header.header>a.button{font-size:9px;padding:10px 12px;gap:8px;margin-left:auto}}
/* Dedicated finder: search comes before the editorial content. */
.nav-search svg{flex-shrink:0}.header>a.nav-search{gap:10px;padding:14px 22px;font-size:13px}.search-page-inner{padding-top:30px;padding-bottom:55px}.search-page h1{font-size:42px;letter-spacing:-1.7px;line-height:1.15;margin:13px 0 12px}.search-page-intro{font-size:14px;color:#4e617c;margin-bottom:23px}.search-page .program-filters{border:2px solid var(--red);box-shadow:0 7px 0 #efd8d3}.search-page .program-filters label:first-child{font-size:12px}.search-page .program-filters input{font-size:14px}.search-page .program-results{font-weight:600}.search-page .program-filters:focus-within{box-shadow:0 7px 0 #e3bdb6}.search-page .program-filters .button{min-width:180px}
@media(max-width:760px){header.header>a.nav-search{font-size:12px;padding:12px 17px;gap:8px}.search-page-inner{padding-top:25px;padding-bottom:38px}.search-page h1{font-size:30px;letter-spacing:-1.2px;margin:13px 0}.search-page .eyebrow{font-size:8px;letter-spacing:1.2px}.search-page-intro{font-size:12px;line-height:1.7;margin-bottom:18px}.search-page .program-filters{padding:17px;gap:13px}.search-page .program-filters input{font-size:16px;padding:13px 10px}.search-page .program-filters select{font-size:12px}.search-page .program-filters .button{font-size:12px;padding:14px}.search-page .program-results{margin-top:24px}}

@media(max-width:760px){.header nav{gap:8px;flex-wrap:wrap}.header nav .plain{white-space:nowrap}}
