.business-main{background:#f4f7fb;padding:26px 0 56px;color:#172c43}.business-wrap{max-width:1140px}.business-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:14px;margin:0 0 28px;color:#465c71}.business-breadcrumb a{color:#264f76}.business-heading{display:flex;align-items:flex-start;gap:22px;padding:0 0 30px}.business-symbol{display:grid;place-items:center;flex:0 0 76px;width:76px;height:76px;border-radius:20px;background:#edf6ff;color:#1769b3;border:1px solid #bdd9f2}.business-symbol svg{width:34px;height:34px}.business-eyebrow{font-size:12px;letter-spacing:.1em;font-weight:700;color:#1769b3;margin:0 0 9px}.business-heading h1{font-size:clamp(30px,3.2vw,42px);font-weight:650;line-height:1.12;letter-spacing:-.7px;color:#102e50;margin:0 0 17px;overflow-wrap:anywhere;max-width:900px}.business-tags{display:flex;gap:8px;flex-wrap:wrap}.business-tags>span{display:inline-flex;gap:5px;align-items:center;border:1px solid #d8e3ec;border-radius:30px;background:#fff;padding:5px 12px;font-size:14px;font-weight:600;color:#34526b}.business-tags svg{width:16px;height:16px;color:#1769b3}.business-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;align-items:start}.business-presentation{min-width:0}.business-card{border:1px solid #dfe7ef;border-radius:18px;background:#fff;padding:30px;box-shadow:0 5px 20px #143d6310}.business-section-label{font-size:11px;letter-spacing:.11em;font-weight:700;color:#1769b3;margin:0 0 8px}.business-card h2{color:#102e50;font-size:26px;line-height:1.2;letter-spacing:-.4px;font-weight:650;margin:0 0 22px}.business-copy{font:400 18px/1.75 var(--font-ui);color:#24394d;overflow-wrap:anywhere}.business-copy>p:first-child{margin-top:0}.business-copy p:last-child{margin-bottom:0}.business-copy a{color:#1769b3;text-decoration:underline;text-underline-offset:3px}.business-copy h2{font-size:24px;margin:28px 0 14px}.business-copy h3{font-size:21px;color:#173d61}.business-copy img,.business-copy video,.business-copy iframe{max-width:100%;height:auto}.business-copy figure{margin:20px 0}.business-photo{margin:0 0 24px;background:#e8eef4;border:1px solid #dfe7ef;border-radius:18px;overflow:hidden}.business-photo img{display:block;width:100%;max-height:480px;object-fit:contain;height:auto}.business-photo figcaption{padding:12px 20px;font-size:14px;color:#3f5369;background:white}.business-contact{position:sticky;top:24px;border-top:4px solid #1769b3;padding:26px}.business-contact h2{font-size:24px;margin-bottom:24px}.business-info{margin:0}.business-info>div{padding:0 0 17px;margin:0 0 17px;border-bottom:1px solid #e7edf3}.business-info dt{font-size:13px;font-weight:600;color:#53677b;margin-bottom:5px}.business-info dd{font-size:17px;line-height:1.5;margin:0;font-weight:550;overflow-wrap:anywhere;color:#183650}.business-phone{font-size:22px;letter-spacing:.3px;color:#073d69}.business-contact .service-actions{display:flex;flex-direction:column;gap:10px;padding:0;margin:22px 0 18px}.business-contact .button{width:100%;border-radius:10px;font-size:16px;padding:13px 14px;min-height:48px;line-height:1.35;text-align:center;white-space:normal}.business-contact .button.secondary{color:#104d85;background:#edf6ff;border-color:#bdd9f2}.business-contact .button.secondary:hover{background:#edf6ff}.business-contact-note{font-size:14px;line-height:1.5;color:#4a6074;margin:0 0 18px}.business-updated{border-top:1px solid #e7edf3;padding-top:15px;font-size:13px;color:#52667a;margin-bottom:0}.business-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-top:24px;font-size:14px;color:#365b78}.business-bottom a{text-decoration:underline;text-underline-offset:4px}.single-f24_business .service-strip{margin-top:0}
@media(max-width:900px){.business-layout{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.business-card{padding:24px}.business-contact{padding:22px}.business-heading{gap:17px}}
@media(max-width:720px){.single-f24_business .desktop-nav,.single-f24_business .topics{display:none}.business-main{padding:20px 0 32px}.business-breadcrumb{font-size:13px;margin-bottom:24px;gap:8px}.business-heading{gap:13px;padding-bottom:24px}.business-symbol{width:46px;height:46px;flex-basis:46px;border-radius:13px}.business-symbol svg{width:24px;height:24px}.business-eyebrow{font-size:10px;letter-spacing:.07em;margin-bottom:8px}.business-heading h1{font-size:28px;line-height:1.15;letter-spacing:-.4px;margin-bottom:13px}.business-tags{gap:6px}.business-tags>span{font-size:12px;padding:4px 9px}.business-layout{display:flex;flex-direction:column;gap:20px}.business-contact{order:-1;position:static;width:100%;padding:22px}.business-presentation{width:100%}.business-card{border-radius:15px;padding:22px}.business-card h2{font-size:24px}.business-contact h2{font-size:23px}.business-info dd{font-size:17px}.business-copy{font-size:17px;line-height:1.7}.business-bottom{font-size:14px;gap:15px;padding-top:21px}.business-photo{border-radius:15px;margin-bottom:20px}.business-photo img{max-height:380px}}

/* Directory profile */
.business-heading {
    align-items: center;
    margin-bottom: 24px;
    padding: clamp(20px, 4vw, 44px);
    border-radius: 20px;
    background: linear-gradient(120deg, #0c2c4e, #193d60);
}
.business-heading h1 { color: #fff; }
.business-eyebrow { color: #8dcbff; }
.business-symbol {
    background: #ffffff15;
    border-color: #ffffff35;
    color: #8dcbff;
}
.business-tags > span {
    background: #ffffff12;
    border-color: #ffffff35;
    color: #fff;
}
.business-tags svg { color: #8dcbff; }
.business-layout {
    grid-template-areas: "photo contact" "about contact";
    grid-template-rows: auto 1fr;
}
.business-layout.business-no-photo {
    grid-template-areas: "about contact";
    grid-template-rows: auto;
}
.business-photo { grid-area: photo; margin: 0; }
.business-photo img { max-height: 420px; }
.business-contact { grid-area: contact; }
.business-presentation { grid-area: about; }
.business-info > div { padding-bottom: 12px; margin-bottom: 12px; }
.business-contact .service-actions { margin: 18px 0; }
.business-updated { margin-top: 14px; }
@media (max-width: 720px) {
    .business-heading { margin-bottom: 16px; padding: 20px 16px; border-radius: 16px; }
    .business-heading h1 { font-size: clamp(23px, 6.5vw, 28px); }
    .business-layout { gap: 16px; }
    .business-photo { width: 100%; margin: 0; }
    .business-photo img { max-height: 300px; }
    .business-contact { order: 0; }
    .business-card { padding: 18px; }
    .business-contact h2 { margin-bottom: 16px; }
}
