.business-profile-hero{padding:52px 0;color:#fff}
.business-profile-hero .wrap{max-width:1180px}
.business-profile-back{display:inline-block;margin:0 0 14px;color:#fff;font-weight:700;text-decoration:none;opacity:.9}
.business-profile-back:hover{text-decoration:underline}
.business-profile-category,.business-profile-eyebrow{display:block;color:#b33b85;font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.business-profile-hero .kicker{display:flex;align-items:center;gap:10px;margin:0;color:#f5c0dc!important}
.business-profile-hero h1{margin:8px 0;font-size:clamp(35px,5vw,54px);line-height:1.1}
.verified-badge{display:inline-flex;vertical-align:-.06em;align-items:center;justify-content:center;width:18px;height:18px;margin-left:.28em;flex:none}.verified-badge img{display:block;width:100%;height:100%;object-fit:contain}
.business-profile-hero p{max-width:760px;margin:0;color:#eff4fa;font-size:1.08rem;line-height:1.65}
.business-profile-main{padding:32px 0 56px}
.business-profile-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px}
.business-profile-card,.business-profile-section{border:1px solid #e3e9ef;border-radius:20px;background:#fff;box-shadow:0 12px 36px #203e6510}
.business-profile-card{padding:24px}
.business-profile-card h2,.business-profile-section h2{margin:7px 0 14px;color:#203e65;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.2}
.business-profile-card p,.business-profile-section p{color:#5e6f82;line-height:1.65}
.business-profile-type{font-weight:700}
.business-profile-contact{display:grid;gap:9px;margin-top:22px;padding-top:18px;border-top:1px solid #e8edf2}
.business-profile-contact h3{margin:0 0 2px;color:#203e65;font-size:1.05rem}
.business-profile-contact a,.business-profile-event a,.business-profile-agenda-link{width:fit-content;color:#315b91;font-weight:700;text-decoration:underline;text-decoration-color:#c5d1df;text-underline-offset:3px;overflow-wrap:anywhere}
.business-profile-contact a:hover,.business-profile-event a:hover,.business-profile-agenda-link:hover{color:#a92f74;text-decoration-color:currentColor}
.business-profile-hours{display:grid;gap:0;margin:8px 0 12px}
.business-profile-hours>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #e1e7ee}
.business-profile-hours dt{color:#34495f!important;font-weight:750}
.business-profile-hours dd{margin:0;color:#34495f!important;text-align:right;font-weight:650}
.business-profile-hours-group{margin:12px 0 16px}
.business-profile-hours-group h3{margin:0;color:#203e65!important;font-size:1rem;line-height:1.35}
.business-profile-hours-status,.business-profile-hours-note{margin:10px 0;padding:12px 14px;border-radius:12px;background:#f4f7fa;color:#34495f!important;font-size:.95rem;line-height:1.55}
.business-profile-source,.business-profile-disclaimer,.business-profile-map-note{font-size:.875rem;color:#52647a!important}
.business-profile-section{margin-top:22px;padding:24px}
.business-profile-claim{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:24px;margin-top:22px;padding:24px;border:1px solid #e3e9ef;border-radius:20px;background:#f8fafd;box-shadow:0 12px 36px #203e6508}
.business-profile-claim h2{margin:7px 0;color:#203e65;font-size:clamp(1.35rem,2vw,1.8rem)}
.business-profile-claim>div>p{color:#5e6f82;line-height:1.6}
.business-claim-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.business-claim-form label{display:grid;gap:5px;color:#34495f;font-size:.88rem;font-weight:700}
.business-claim-form input,.business-claim-form textarea{width:100%;min-width:0;border:1px solid #ccd7e4;border-radius:10px;background:#fff;padding:10px 12px;color:#263a50;font:inherit;font-weight:400}
.business-claim-form input:focus,.business-claim-form textarea:focus{outline:3px solid #315b9120;border-color:#315b91}
.business-claim-message,.business-claim-status,.business-claim-consent{grid-column:1/-1}
.business-claim-form .business-claim-consent{display:flex;align-items:flex-start;gap:8px;font-weight:500;line-height:1.45}.business-claim-consent input{width:17px;height:17px;flex:none;margin:1px 0 0;padding:0;accent-color:#315b91}.business-claim-consent a{color:#315b91;text-decoration:underline;text-underline-offset:2px}.business-claim-form button{width:fit-content;border:0;border-radius:10px;background:#315b91;padding:11px 15px;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.business-claim-form button:disabled{opacity:.65;cursor:wait}
.business-claim-status{margin:0;color:#52647a;font-size:.84rem;line-height:1.5}
.business-claim-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.business-profile-section-heading{margin-bottom:18px}
.business-profile-section-heading p{margin:0}
.business-profile-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;margin:18px 0}
.business-profile-event{padding:18px;border:1px solid #e7ecf2;border-radius:15px;background:#f9fafc}
.business-profile-event h3{margin:6px 0;color:#203e65;font-size:1.12rem}
.business-profile-event p{margin:8px 0;font-size:.93rem}
.business-profile-event .business-profile-event-date{color:#a92f74;font-size:.82rem;font-weight:800}
.business-profile-event-location{font-weight:650}
.business-profile-empty{padding:14px 16px;border-radius:12px;background:#f7f9fc}
.business-profile-map-wrap{position:relative;overflow:hidden;border:1px solid #e3e9ef;border-radius:16px}
#business-profile-map{height:360px;width:100%;background:#eef2f5}
.business-profile-route{display:inline-flex;margin:12px 14px;padding:10px 14px;border-radius:10px;background:#315b91;color:#fff!important;font-weight:750;text-decoration:none!important}
.business-profile-route:hover{background:#234875}
.business-profile-map-note{margin:10px 2px 0}
.business-profile-map-note a{color:#315b91}
.business-profile-disclaimer{margin:20px 0 0}
.business-profile-card-link{font-weight:750!important}
@media(max-width:740px){.business-profile-grid{grid-template-columns:1fr}.business-profile-card,.business-profile-section{padding:19px;border-radius:16px}#business-profile-map{height:300px}}
@media(max-width:700px){.business-profile-hero{padding:38px 0 42px}}
@media(max-width:740px){.business-profile-claim{grid-template-columns:1fr;padding:20px}}
@media(max-width:480px){.business-claim-form{grid-template-columns:1fr}.business-claim-message,.business-claim-status,.business-claim-consent{grid-column:auto}}
