/* Open Houses for a Cure (through Dec 1, 2026). Pink matched to openhousesforacure.com (--primary oklch(58% .155 355), accent oklch(92% .05 10)). */
:root{--ohfc:#bd4c7f;--ohfc-d:#5c2635;--ohfc-l:#ffd8dd;--ohfc-bg:#fff5f7}
@supports (color:oklch(58% .155 355)){:root{--ohfc:oklch(58% .155 355);--ohfc-d:oklch(35% .08 5);--ohfc-l:oklch(92% .05 10)}}
html.ohfc-off .ohfc,html.ohfc-off .ohfc-bar{display:none!important}
.ohfc-rib{width:14px;height:18px;flex:none;color:var(--ohfc);vertical-align:-3px}
.ohfc-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;max-width:880px;margin:0 auto;display:flex;align-items:center;gap:12px;background:var(--ohfc-bg);color:var(--ohfc-d);border:1px solid var(--ohfc-l);border-radius:14px;padding:10px 12px 10px 16px;box-shadow:0 10px 30px rgba(92,38,53,.16);font-size:.88rem;line-height:1.35;transform:translateY(140%);transition:transform .45s ease}
.ohfc-bar.on{transform:none}
.ohfc-bar p{margin:0;flex:1}.ohfc-bar b{color:var(--ohfc)}
.ohfc-bar a.go{flex:none;background:var(--ohfc);color:#fff;text-decoration:none;border-radius:999px;padding:8px 14px;font-weight:600;font-size:.8rem;white-space:nowrap}
.ohfc-bar button{flex:none;border:0;background:none;color:var(--ohfc-d);font-size:1.3rem;line-height:1;cursor:pointer;padding:4px 6px;opacity:.7}
.ohfc-bar button:hover{opacity:1}
@media(max-width:640px){.ohfc-bar{font-size:.8rem;gap:8px;padding:8px 8px 8px 12px}.ohfc-bar .long{display:none}}
.ohfc-sec{background:var(--ohfc-bg)}
.ohfc-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:center}
.ohfc-img img{width:100%;height:auto;border-radius:16px;box-shadow:0 14px 40px rgba(92,38,53,.14);display:block}
.ohfc-eye{display:inline-flex;gap:8px;align-items:center;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ohfc);font-weight:600}
.ohfc-txt h2{color:var(--ohfc-d);margin:12px 0 14px}
.ohfc-txt>p{font-size:1.05rem;line-height:1.6;color:#3d2a30}
.ohfc-dates{list-style:none;padding:0;margin:18px 0;display:grid;gap:8px}
.ohfc-dates li{border-left:3px solid var(--ohfc);padding:2px 0 2px 12px;color:#3d2a30}.ohfc-dates b{display:block;color:var(--ohfc-d)}
.ohfc-cta{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.ohfc-btn{display:inline-block;background:var(--ohfc);color:#fff!important;text-decoration:none;border-radius:999px;padding:12px 22px;font-weight:600;border:1.5px solid var(--ohfc)}
.ohfc-btn.ghost{background:transparent;color:var(--ohfc)!important}
.ohfc-foot{display:flex;gap:14px;align-items:center;font-size:.85rem;color:#5b4950}.ohfc-foot img{border-radius:8px;background:#fff;padding:4px;border:1px solid var(--ohfc-l)}
.ohfc-foot p{margin:0}.ohfc-foot a{color:var(--ohfc)}
@media(max-width:860px){.ohfc-grid{grid-template-columns:1fr;gap:28px}.ohfc-img{max-width:420px}}
.ohfc-line{display:flex;gap:8px;align-items:flex-start;justify-content:center;max-width:640px;margin:18px auto 6px;padding:10px 14px;background:var(--ohfc-bg);border:1px solid var(--ohfc-l);border-radius:12px;font-size:.82rem;line-height:1.45;color:var(--ohfc-d);text-align:left}
.ohfc-line a{color:var(--ohfc);font-weight:600}
.ohfc-txt h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.1}.ohfc-cap{font-size:.75rem;color:#7a6168;text-align:center;margin:10px 0 0}
.ohfc-prog{margin:18px 0 6px}.ohfc-meter{height:10px;border-radius:99px;background:rgba(214,92,140,.15);overflow:hidden}.ohfc-meter i{display:block;height:100%;background:#d65c8c;border-radius:99px}.ohfc-prog p{margin-top:8px;font-size:.92rem;font-weight:600}
