/* MAMA PATH / ママパ: supplied artwork, warm brown text and peach actions. */
.facility-card .facility-card-content>p{margin:6px 0;font-size:13px;line-height:1.65}
.facility-card .facility-card-content>details{margin:6px 0;font-size:13px;line-height:1.65}
.facility-card .facility-card-content>details summary{cursor:pointer}
:root{--ink:#59473e;--rose:#ad604b;--cream:#fffaf5;--line:#eadbd0;--sand:#f5ece2;--brand-brown:#735647;--brand-peach:#f1b6a1;--brand-green:#657458}
body{color:var(--ink);background:var(--cream)}
.site-header,.detail-header{background:#fffaf5;border-bottom:1px solid var(--line)}
.brand{display:block;position:relative;overflow:hidden;flex:0 0 180px;width:180px;height:48px;border-radius:4px;line-height:1;mix-blend-mode:multiply}
.brand .mamapa-wordmark{position:absolute;display:block;width:166.667%;max-width:none;height:auto;left:-33.333%;top:-225%;filter:contrast(1.15) brightness(1.04)}
.brand-copy{color:var(--brand-brown);line-height:1.7}
.site-header nav a:hover,.detail-header nav a:hover,footer a:hover{color:#95513e}
.hero{background:#fcf5ed;min-height:440px}
.hero-image{left:auto;right:0;width:46%;height:100%;object-fit:contain;object-position:center}
.hero-wash{display:none}
.hero-content{max-width:58%;padding-top:48px;padding-bottom:40px}
.hero h1{font-size:clamp(28px,2.7vw,42px);letter-spacing:.03em}
.eyebrow{color:var(--brand-brown)}
.hero-description{font-size:15px;line-height:1.9}
.hero-note{display:none}
.area-badge{background:#e8eddf!important;color:#526046!important;border-color:#ced8c1!important}
.promise-row span{background:#fffaf5;color:#9c5947;border:1px solid #ecd8c8}
.search-action,.primary-button{background:#a75b47;color:#fff;box-shadow:0 5px 12px #73564724}
.search-action:hover,.primary-button:hover{background:#8b4938}
.results-section,.subsidy-section{background:#f7efe6}
.subsidy-section{max-width:none;width:100%;margin:0;padding:70px max(40px,calc((100% - 1120px)/2))}
@media(max-width:700px){.subsidy-section{padding:50px 24px}}
.section-heading p,.section-kicker,.page-intro>p:first-child{color:#955c46}
.page-intro{background:#fffaf5}
.page-intro>p:last-child{color:#735d50}
.facility-card,.content-card,.filter-card{box-shadow:0 3px 14px #73564709}
.tag-list span,.detail-badges span{background:#edf0e7;color:#536049}
.eligible,.facility-name-link:hover,.card-bottom a,.official-link{color:#8d4f3b}
.facility-estimate{background:#fbefe6}
.estimate-row strong{color:#8d4835}
.benefit-grid span{background:#e8eddf;color:#5d6b50}
footer{background:#f1e6da;color:#655044}
footer .brand{margin-inline:auto}
.resident-search.search-panel{max-width:1160px;width:calc(100% - 48px);margin-inline:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:20px;padding:24px}
.resident-search.search-panel .field{min-width:0;padding:0;border:0}
.resident-search.search-panel select{width:100%;min-width:0}
.resident-search.search-panel .search-action{width:100%;transform:none}
.resident-search.search-panel .search-action-cell{min-width:0;align-self:center;margin:0;padding:0}
.list-filter .age-field{margin-top:18px}
.list-filter .field-note{display:block;font-size:11px;line-height:1.6;margin-top:8px;color:#76675e}
.basic-filter-heading{font-size:14px;margin:20px 0 8px}
.filter-explanation{font-size:12px;line-height:1.7;color:#735647;margin:16px 0}
.filter-group,.simulation-disclosure{border-top:1px solid var(--line);padding:14px 0}
.filter-group>summary,.simulation-disclosure>summary{font-size:14px;font-weight:700;cursor:pointer;line-height:1.6}
.filter-group>summary>span{font-size:11px;font-weight:400;margin-left:8px;color:#76675e;white-space:nowrap}
.list-filter .filter-group fieldset{border:0;margin:12px 0 0;padding:0;min-width:0}
.filter-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:8px}
.list-filter label.check-option{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px 8px;border:1px solid #eadbd0;border-radius:8px;font-size:13px;font-weight:400;line-height:1.6;cursor:pointer;min-width:0}
.list-filter label.check-option:has(input:checked){background:#edf0e7;border-color:#657458}
.list-filter .check-option input{appearance:auto;flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:#657458}
.check-option span{min-width:0;overflow-wrap:anywhere}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.list-filter #list-search>.primary-button,.list-filter #reset-search{width:100%}
.list-filter .simulation-disclosure .simulation-summary{margin-top:16px}
.matched-conditions{color:#526046;font-weight:700}
.filter-actions{position:sticky;bottom:0;z-index:2;display:grid;gap:8px;padding:12px 0 4px;background:#fff;border-top:1px solid var(--line)}
.list-filter .filter-actions .primary-button,.list-filter .filter-actions .reset-search{width:100%;margin:0}
#applied-filters{font-size:12px;line-height:1.7;overflow-wrap:anywhere}
@media(min-width:1001px){.search-with-simulation{grid-template-columns:320px minmax(0,1fr)}.list-filter{align-self:start;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;scrollbar-gutter:stable}}
@media(max-width:700px){.resident-search.search-panel{width:calc(100% - 32px);padding:20px;grid-template-columns:1fr;gap:16px}.list-filter{position:static;max-height:none}}
a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #667957;outline-offset:4px}
@media(max-width:1150px){.brand-copy{display:none}.site-header nav,.detail-header nav{gap:14px}.hero-content{max-width:60%}.hero-image{width:42%}.promise-row{flex-wrap:wrap}}
@media(max-width:800px){.site-header,.detail-header{height:auto;min-height:78px;flex-wrap:wrap;padding:14px 18px;gap:12px}.site-header nav,.detail-header nav{display:flex;order:3;width:100%;margin:0;flex-wrap:wrap;gap:10px 16px;font-size:13px}.login,.back-home{margin-left:auto}.hero{display:flex;flex-direction:column;min-height:0}.hero-content{max-width:100%;padding:28px 22px 12px;order:0}.hero-image{position:relative;inset:auto;width:min(100%,460px);height:auto;aspect-ratio:3/2;align-self:center;order:1}.hero h1{font-size:30px}.hero-description{font-size:14px}.promise-row{gap:8px}.promise-row span{width:calc((100% - 16px)/3);min-width:0}.promise-row b{font-size:11px}.brand{flex-basis:150px;width:150px;height:40px}}
@media(max-width:420px){.hero h1{font-size:27px}.hero-description .desktop-space{display:none}.promise-row span{padding:8px;font-size:18px}.promise-row b{font-size:10px}.login,.back-home{padding:9px;font-size:11px}}

/* Keep search clear of the hero boundary on desktop and mobile. */
.hero + .resident-search{margin-top:24px}
/* Keep the supplied artwork intact; fade its edges into the hero background. */
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:16px;padding:32px max(24px,calc((100% - 1160px)/2));min-height:440px}
.hero .hero-content{grid-column:1;grid-row:1;max-width:none;padding:12px 0 32px}
.hero .hero-image{grid-column:2;grid-row:1;position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse 64% 64% at center,#000 54%,transparent 82%);-webkit-mask-image:radial-gradient(ellipse 64% 64% at center,#000 54%,transparent 82%)}
.hero .hero-topline{flex-wrap:wrap;gap:12px}
.hero .eyebrow{font-size:clamp(18px,1.6vw,24px)}
.hero h1{font-size:clamp(28px,2.5vw,38px)}
.hero .hero-description{font-size:14px}
.list-page-results .facility-photo{position:relative;overflow:hidden}
.list-page-results .facility-photo .sample-photo-label{position:absolute;bottom:6px;left:6px;padding:3px 7px;border-radius:4px;background:#fffaf5ed;color:#59473e;font-size:10px;line-height:1.4}
@media(max-width:800px){.hero{grid-template-columns:minmax(0,1fr);padding:24px 22px 28px;gap:0}.hero .hero-content{grid-column:1;grid-row:1;max-width:560px;justify-self:center;width:100%;padding:0}.hero .hero-image{grid-column:1;grid-row:2;width:min(100%,460px);justify-self:center}.hero h1{font-size:clamp(26px,5vw,34px)}}
