.housing{--green:#238053;--ink:#303030;--text:#4a4a4a;--line:#e4e2dc;--sage:#eaf5ef;--blue:#e3f6fc;--yellow:#fffbc9;font:400 17px/1.65 Montserrat,Arial,sans-serif;color:var(--text);background:#fff}
.housing *{box-sizing:border-box;min-width:0}.housing .wrap{width:calc(100% - 80px);max-width:1200px;margin:auto}.housing .section{padding:36px 0}.housing h1,.housing h2,.housing h3,.housing h4{font-family:Montserrat,Arial,sans-serif;color:var(--ink);font-weight:800;letter-spacing:-.035em;text-transform:none;margin:0 0 20px;line-height:1.22}.housing h1{font-size:52px;line-height:1.1}.housing h2{font-size:34px}.housing h3{font-size:23px}.housing h4{font-size:20px}.housing p{margin:0 0 18px}.housing p:last-child{margin-bottom:0}.housing a{color:var(--green);text-decoration:underline;text-underline-offset:4px}.housing a:hover{color:#195b3b}.housing :is(a,button,summary):focus-visible{outline:3px solid #238053;outline-offset:5px}.housing .cta{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 28px;border-radius:99px;background:var(--green);color:white;font-weight:700;text-decoration:none;text-align:center;line-height:1.4}.housing .cta:hover{background:#195b3b;color:#fff}
.housing #hero{padding-top:52px}.housing .hero-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px}.housing .hero-art{width:100%;height:auto;border-radius:24px}.housing #hero p{font-size:18px}.housing .surface{padding:32px 38px;border-radius:28px}.housing #audience{padding:14px 0}.housing #audience .surface{background:var(--blue)}.housing #audience h2{font-size:26px;margin-bottom:12px}.housing #scope .surface{background:var(--sage)}.housing #scope strong{display:block;color:#196e45;font-size:21px;line-height:1.5}.housing #scope p:last-child{font-size:15px;max-width:900px}.housing .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.housing .step{padding:26px;border:1px solid var(--line);border-radius:24px}.housing .step-number{display:block;font-size:30px;font-weight:700;letter-spacing:-.04em;color:var(--green);margin-bottom:20px}.housing .step h3{font-size:22px}.housing .step p{font-size:16px}.housing #price .surface{background:var(--yellow);padding:38px}.housing #price p{max-width:950px}.housing #price p:last-child{font-size:15px}.housing .type-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.housing .type-card{grid-column:span 2;padding:25px;border-radius:22px;background:#f6f7f4;border:1px solid var(--line)}.housing .type-card:nth-last-child(-n+2){grid-column:span 3}.housing .type-card h3{font-size:21px}.housing .type-card p,.housing .operator-card p{font-size:15px}.housing .compare{border-top:1px solid #d4ddd5;padding-top:14px}.housing #types .type-grid+p{margin-top:20px;font-size:15px}
.housing #guide{margin-top:26px;padding:48px 0;background:#f5f8f4}.housing #guide>.wrap>h2{max-width:700px;font-size:40px}.housing #guide>.wrap>p{max-width:900px}.housing .guide-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.housing .guide-part{margin-top:36px}.housing .guide-intro-grid .guide-part{margin:0;padding:28px;background:white;border-radius:24px}.housing .operator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.housing .operator-card{padding:24px;background:white;border:1px solid var(--line);border-radius:22px}.housing .operator-card h4 a{display:inline-block;min-height:44px;padding:5px 0;line-height:1.35}.housing summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:18px 22px;border:1px solid #b7d2c2;border-radius:16px;font-weight:700;color:#196e45;min-height:56px}.housing summary::-webkit-details-marker{display:none}.housing summary:after{content:'+';font-size:24px;line-height:1}.housing details[open] summary:after{content:'−'}.housing #guide-6{padding:30px;border-radius:24px;background:#e5f1f7}.housing ul{margin:0;padding:0;list-style:none}.housing #guide-7 li{padding:16px 18px 16px 42px;position:relative;background:white;margin-bottom:10px;border-radius:16px}.housing #guide-7 li:before{content:'✓';position:absolute;left:17px;color:var(--green);font-weight:700}.housing #guide-7 li strong{font-weight:700}.housing .faq-item{border-bottom:1px solid var(--line)}.housing .faq-item h3{margin:0}.housing .faq-item button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:66px;border:0;background:none;color:var(--ink);font:700 18px/1.45 Montserrat,Arial,sans-serif;text-align:left;padding:20px 5px;white-space:normal}.housing .faq-item button:after{content:'+';color:var(--green);font-size:26px}.housing .faq-item button[aria-expanded=true]:after{content:'−'}.housing .faq-answer{padding:0 5px 24px;max-width:1000px}.housing [hidden]{display:none!important}.housing #contact{padding-bottom:56px}.housing #contact .surface{background:var(--sage);text-align:center}.housing #contact p{max-width:780px;margin-left:auto;margin-right:auto}
@media(max-width:1100px){.housing .wrap{width:calc(100% - 48px)}.housing h1{font-size:42px}.housing .hero-layout{gap:22px}.housing .steps{grid-template-columns:repeat(2,1fr)}.housing .operator-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.housing .hero-layout{grid-template-columns:1fr}.housing .hero-art{max-width:660px;justify-self:center}.housing h1{max-width:700px}.housing .type-grid{grid-template-columns:1fr 1fr}.housing .type-card,.housing .type-card:nth-last-child(-n+2){grid-column:auto}.housing .type-card:last-child{grid-column:1/-1}.housing .guide-intro-grid{grid-template-columns:1fr}.housing #guide>.wrap>h2{font-size:34px}}
@media(max-width:600px){.housing{font-size:16px}.housing .wrap{width:calc(100% - 36px)}.housing .section{padding:24px 0}.housing #hero{padding-top:32px}.housing h1{font-size:35px}.housing h2{font-size:28px}.housing h3{font-size:22px}.housing .surface,.housing #price .surface{padding:25px 22px;border-radius:22px}.housing #hero p{font-size:17px}.housing .cta{width:100%;padding:15px 20px}.housing .steps,.housing .type-grid,.housing .operator-grid{grid-template-columns:1fr}.housing .step{padding:24px}.housing .step-number{margin-bottom:12px}.housing #guide>.wrap>h2{font-size:30px}.housing .guide-intro-grid .guide-part{padding:22px}.housing .operator-card{padding:22px}.housing #guide-6{padding:24px}.housing .faq-item button{font-size:17px}.housing .hero-art{border-radius:18px}}
@media(prefers-reduced-motion:reduce){body:has(#stan-housing-content){scroll-behavior:auto!important}.housing *{animation:none!important;transition:none!important}}
.housing .faq-item button{text-transform:none;letter-spacing:0}
.housing :is(a,button,summary):focus-visible{outline:3px solid #238053!important;outline-offset:5px!important}

/* Approved provider-section replacement only. */
.housing .gallery-title{margin-top:30px;font-size:25px}
.housing .housing-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:22px}
.housing .housing-photo-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}
.housing .housing-photo-placeholder{aspect-ratio:3/2;width:100%;display:grid;place-items:center;padding:22px;background:#eaf0e8;border-bottom:1px solid #d5ddd2;text-align:center;color:#52604f;font-size:12px;font-weight:600;letter-spacing:.055em;line-height:1.8}
.housing .housing-photo-card:nth-child(3n+2) .housing-photo-placeholder{background:#e9f3f7}
.housing .housing-photo-card:nth-child(3n) .housing-photo-placeholder{background:#f4f1e6}
.housing .housing-photo-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.housing .photo-caption{padding:24px}.housing .photo-caption h5{font:800 21px/1.3 Montserrat,Arial,sans-serif;letter-spacing:-.035em;text-transform:none;color:var(--ink);margin:0 0 12px}.housing .photo-caption p{font-size:15px}
@media(max-width:1100px){.housing .housing-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.housing .housing-photo-grid{grid-template-columns:1fr}.housing .photo-caption{padding:22px}}
/* Approved photo gallery */
.housing figure.housing-photo-card{margin:0}
.housing .photo-open{display:block;position:relative;color:inherit}
.housing .photo-zoom{position:absolute;right:12px;bottom:12px;background:#fff;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;color:#247a49;font-size:24px}
.housing figcaption.photo-caption{font:600 16px/1.5 Montserrat,Arial,sans-serif;padding:18px 20px}
.housing .gallery-note{font-size:13px;line-height:1.65;color:#606760;margin-top:20px}
.housing .photo-open:focus-visible,.housing dialog button:focus-visible{outline:3px solid #247a49;outline-offset:3px}
.housing dialog{width:min(1100px,94vw);max-width:94vw;max-height:94vh;border:0;border-radius:18px;padding:52px 16px 16px;background:#fff;color:#28362d;overflow:auto}
.housing dialog::backdrop{background:rgba(12,22,18,.85)}
.housing .gallery-large{display:block;width:100%;height:65vh;object-fit:contain;touch-action:pan-y}
.housing .gallery-close{position:absolute;right:12px;top:8px}
.housing .gallery-controls{display:flex;align-items:center;gap:16px;justify-content:space-between;margin-top:12px}
.housing dialog button{border:1px solid #d5ddd2;background:white;color:#247a49;border-radius:50%;min-width:44px;min-height:44px;font-size:22px;cursor:pointer;flex-shrink:0}
.housing .gallery-status{margin:0;text-align:center;font-size:14px}
@media(max-width:600px){.housing .gallery-large{height:56vh}.housing dialog{padding:50px 10px 12px}.housing .gallery-controls{gap:8px}}

/* Compact approved watercolor illustrations */
.housing .section-illustration{display:block;width:100%;max-width:300px;height:auto;margin:0;border-radius:16px}
.housing .illustrated-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:24px}.housing .illustrated-heading h2{max-width:700px;margin:0}.housing .illustrated-heading img{flex:0 0 300px}
.housing .housing-room-illustrations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:948px;margin:0 auto 28px}.housing .housing-room-illustrations figure{margin:0}.housing .housing-room-illustrations figcaption{text-align:center;font-size:14px;margin-top:8px}
.housing .housing-contact-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px;align-items:center;text-align:left}
@media(max-width:700px){.housing .illustrated-heading{flex-direction:column;align-items:flex-start;gap:18px}.housing .illustrated-heading img{flex:auto;align-self:center}.housing .section-illustration{max-width:260px;margin-left:auto;margin-right:auto}.housing .housing-room-illustrations{grid-template-columns:1fr;gap:20px}.housing .housing-contact-layout{grid-template-columns:1fr;gap:22px;text-align:center}}
