/* Main-site IV therapy specialty page. Concept styles stay inside their demos. */
.iv-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:30px; font-size:14px; color:var(--muted); }
.iv-breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.iv-specialty-intro { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr); gap:64px; align-items:center; }
.iv-specialty-hero .display-title { font-size:clamp(42px,4.1vw,60px); }
.iv-specialty-intro .intro { max-width:720px; }
.iv-practice-models { padding:30px; border:1px solid #bfd4ed; border-top:4px solid var(--blue); border-radius:8px; background:#fff; }
.iv-practice-models>div { display:flex; align-items:baseline; gap:18px; padding-block:20px; border-bottom:1px solid var(--line); }
.iv-practice-models>div:last-child { padding-bottom:0; border-bottom:0; }
.iv-practice-models>div>span { color:var(--blue); font-size:13px; font-weight:700; }
.iv-practice-models h2 { font-size:22px; letter-spacing:-.6px; line-height:1.3; margin-bottom:8px; }
.iv-practice-models p:not(.eyebrow) { margin:0; font-size:16px; line-height:1.6; }
.iv-concept-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.iv-concept-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; }
.iv-concept-preview { display:block; background:#eff4fb; border-bottom:1px solid var(--line); }
.iv-concept-preview:hover { color:var(--blue); }
.iv-concept-preview:focus-visible { outline-offset:-4px; }
.iv-concept-preview-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 22px; font-size:12px; font-weight:600; color:var(--ink); }
.iv-concept-preview img { display:block; width:100%; height:auto; aspect-ratio:1.44; object-fit:cover; object-position:top; }
.iv-concept-copy { display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:32px; }
.iv-concept-copy .eyebrow { font-size:12px; letter-spacing:1px; margin-bottom:12px; }
.iv-concept-copy h3 { font-size:34px; line-height:1.2; margin-bottom:16px; }
.iv-concept-copy>p:not(.eyebrow) { font-size:17px; line-height:1.75; }
.iv-concept-features { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:4px 0 28px; list-style:none; }
.iv-concept-features li { padding:7px 10px; border-radius:4px; background:#edf4fe; color:#274c77; font-size:12px; font-weight:500; line-height:1.5; }
.iv-concept-copy>.button { margin-top:auto; }
.iv-concept-disclosure { max-width:970px; margin:28px auto 0; font-size:14px; line-height:1.7; text-align:center; }
.iv-specialty-faq { background:#f5f9fe; border-top:1px solid var(--line); }
@media(max-width:1100px) {
    .iv-specialty-intro { gap:32px; grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr); }
    .iv-practice-models { padding:24px; }
    .iv-concept-copy { padding:26px; }
}
@media(max-width:800px) {
    .iv-specialty-intro { grid-template-columns:1fr; }
    .iv-practice-models { margin-top:8px; }
    .iv-concept-grid { grid-template-columns:1fr; gap:30px; }
}
@media(max-width:520px) {
    .iv-specialty-hero { padding-block:34px 40px; }
    .iv-specialty-hero .display-title { font-size:40px; letter-spacing:-1.5px; }
    .iv-breadcrumb { margin-bottom:24px; }
    .iv-specialty-intro .button-row { align-items:flex-start; }
    .iv-practice-models { padding:22px; }
    .iv-practice-models h2 { font-size:21px; }
    .iv-concept-preview-bar { padding:13px 16px; flex-wrap:wrap; }
    .iv-concept-copy { padding:24px; }
    .iv-concept-copy h3 { font-size:30px; }
    .iv-concept-copy .button { width:100%; justify-content:space-between; }
    .iv-concept-disclosure { text-align:left; }
}
