html{scroll-behavior:smooth}.course-page{overflow:hidden}.bls-hero{background:#f8f7f3;padding:74px max(5vw,22px) 64px}.bls-hero-inner{max-width:1420px;margin:auto;display:grid;grid-template-columns:1fr .92fr;gap:5%;align-items:center}.crumb{display:inline-block;color:#657581;font-size:13px;text-decoration:none;margin-bottom:40px}.bls-eyebrow,.bls-kicker{display:block;color:#d71938;font-size:12px;font-weight:800;letter-spacing:.13em}.bls-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#d71938;margin-right:8px}.bls-copy h1{font-size:clamp(64px,8.5vw,138px);line-height:.93;letter-spacing:-.08em;color:#102b47;margin:22px 0}.bls-copy h1 em,.bls-section h2 em,.bls-topics h2 em,.bls-payment h2 em,.bls-final h2 em{font-style:normal;color:#d71938}.bls-lead{font-size:clamp(21px,2.3vw,33px);font-weight:800;color:#102b47;line-height:1.25;margin:0 0 18px}.bls-summary{max-width:550px;font-size:17px;color:#536573;line-height:1.7}.bls-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.bls-affil{border-left:3px solid #d71938;padding-left:14px;font-weight:800;color:#102b47;font-size:14px;line-height:1.5}.bls-affil small{font-size:12px;color:#637584;font-weight:500}.bls-image{height:620px;position:relative;border-radius:18px;overflow:hidden;box-shadow:0 26px 65px #102b4721}.bls-image img{width:100%;height:100%;object-fit:cover}.bls-image-label{position:absolute;bottom:22px;left:22px;background:#fff;padding:20px 25px;box-shadow:0 15px 30px #0002}.bls-image-label span{display:block;font-size:10px;letter-spacing:.15em;color:#d71938;font-weight:800;margin-bottom:8px}.bls-image-label strong{font-size:23px;line-height:1.12;color:#102b47}.bls-marquee{display:flex;justify-content:space-evenly;gap:12px;flex-wrap:wrap;background:#d71938;color:#fff;padding:16px 20px;font-size:12px;font-weight:800;letter-spacing:.12em}.bls-marquee b{font-size:15px}.bls-section{padding:105px max(5vw,22px);max-width:1500px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:8%}.bls-section h2,.bls-topics h2,.bls-payment h2,.bls-final h2{font-size:clamp(39px,5.2vw,78px);letter-spacing:-.065em;line-height:1.05;color:#102b47;margin:18px 0}.bls-intro-text p{font-size:17px;color:#526473;line-height:1.85;margin:0 0 20px}.bls-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.bls-pills span{border:1px solid #dce5eb;border-radius:99px;padding:10px 15px;font-size:12px;color:#102b47;font-weight:700}.bls-topics{background:#eaf2f5;padding:95px max(5vw,22px)}.bls-topics-intro{max-width:1400px;margin:auto}.bls-topics-intro p{color:#607483}.bls-topic-grid{max-width:1400px;margin:40px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.bls-topic-grid>div{background:#fff;padding:28px 23px;min-height:230px;border-radius:10px}.bls-topic-grid span{display:block;color:#d71938;font-weight:800;margin-bottom:40px}.bls-topic-grid strong{display:block;color:#102b47;font-size:20px}.bls-topic-grid p{color:#607483;line-height:1.6;font-size:14px}.bls-detail-panel{background:#f6f8f9;padding:22px 30px;border-radius:14px}.bls-detail-panel>div{padding:21px 0;border-bottom:1px solid #dce5eb}.bls-detail-panel>div:last-child{border:0}.bls-detail-panel span{display:block;color:#d71938;font-size:11px;letter-spacing:.1em;font-weight:800;margin-bottom:8px}.bls-detail-panel strong{color:#102b47;font-size:17px}.bls-payment{background:#102b47;padding:100px max(5vw,22px);display:grid;grid-template-columns:.8fr 1.2fr;gap:6%;align-items:start}.bls-payment h2{color:#fff}.bls-payment-title>p{color:#c5d5df;line-height:1.7;max-width:420px}.bls-help{display:flex;flex-direction:column;gap:12px;margin-top:38px}.bls-help span{color:#b5c7d2;font-size:13px}.bls-help a{color:#fff;text-decoration:none;font-size:14px}.bls-payment-panel{background:#fff;border-radius:16px;overflow:hidden}.bls-payment-panel-head{background:#eaf2f5;padding:20px 24px;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#102b47}.bls-payment-panel-head span{color:#d71938;font-weight:800}.bls-payment-option{display:grid;grid-template-columns:38px 1fr auto;gap:16px;align-items:center;padding:24px;border-bottom:1px solid #e5edf1}.bls-step{font-weight:800;color:#d71938}.bls-payment-option strong{color:#102b47;font-size:17px}.bls-payment-option p{color:#617583;font-size:13px;margin:6px 0 0;line-height:1.45}.bls-action{border-radius:6px;padding:12px 17px;font-size:12px;font-weight:800;white-space:nowrap;text-decoration:none}.bls-action.primary{background:#d71938;color:#fff}.bls-action.pending{background:#f0f3f5;color:#6b7d88}.bls-payment-note{padding:20px 24px;color:#637684;font-size:12px;line-height:1.6}.bls-final{text-align:center;padding:95px 20px 110px;background:#f8f7f3}.bls-final>span{font-size:12px;font-weight:800;letter-spacing:.15em;color:#d71938}.bls-final h2{margin:22px 0 32px}.bls-final .button{display:inline-flex}@media(max-width:900px){.bls-hero-inner,.bls-section,.bls-payment{grid-template-columns:1fr}.bls-image{height:430px}.bls-topic-grid{grid-template-columns:repeat(2,1fr)}.bls-hero{padding-top:45px}.crumb{margin-bottom:25px}}@media(max-width:550px){.bls-image{height:330px}.bls-topic-grid{grid-template-columns:1fr}.bls-payment-option{grid-template-columns:24px 1fr}.bls-action{grid-column:2;justify-self:start}.bls-section,.bls-topics,.bls-payment{padding-top:65px;padding-bottom:65px}.bls-marquee{font-size:10px}.bls-copy h1{font-size:58px}}
/* BLS Stripe checkout options and scan-to-pay codes */
.bls-payment-option:has(.bls-qr){grid-template-columns:38px minmax(0,1fr) auto 92px}
.bls-qr{display:flex;flex-direction:column;align-items:center;gap:5px}
.bls-qr img{display:block;width:88px;height:106px;object-fit:contain;border-radius:8px}
.bls-qr span{font-size:10px;font-weight:700;color:#617583}
.bls-payment-copy{min-width:0}
.bls-action.primary:hover{background:#a9102b}
@media(max-width:1100px){.bls-payment-option:has(.bls-qr){grid-template-columns:28px minmax(0,1fr) 90px}.bls-payment-option:has(.bls-qr) .bls-action{grid-column:2;justify-self:start}.bls-qr{grid-column:3;grid-row:1 / span 2}}
@media(max-width:550px){.bls-payment-option:has(.bls-qr){grid-template-columns:22px minmax(0,1fr) 76px;gap:10px;padding:18px 12px}.bls-qr img{width:74px;height:90px}.bls-payment-option:has(.bls-qr) .bls-action{grid-column:2}.bls-payment-option strong{font-size:15px}}

/* Course catalog */
.catalog-wrap{max-width:1250px;margin:auto;padding:72px 28px 96px}.catalog-wrap h2{font-size:clamp(36px,5vw,66px);letter-spacing:-.055em;color:#112b40;margin:0 0 8px}.catalog-wrap>p{color:#526273;margin-bottom:42px}.catalog-wrap h3{font-size:23px;margin:44px 0 18px;color:#112b40}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.catalog-card{min-height:205px;padding:28px;background:#f4f6f7;border:1px solid #e2e6ea;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:#112b40;transition:transform .2s,box-shadow .2s}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #112b401a}.catalog-card>span:first-child{font-size:11px;letter-spacing:.15em;color:#d71938;font-weight:800}.catalog-card strong{font-size:clamp(20px,2vw,28px);line-height:1.2}.catalog-card>span:last-child{font-weight:700;font-size:13px}@media(max-width:760px){.catalog-grid{grid-template-columns:1fr}.catalog-wrap{padding:48px 18px}}

/* ACLS / PALS precourse information */
.precourse{background:#f7f8f7;padding:clamp(52px,7vw,105px) max(24px,calc((100vw - 1220px)/2));color:#142d40}
.precourse-heading{max-width:780px;margin-bottom:30px}.precourse-heading h2{font-size:clamp(36px,5.5vw,72px);line-height:1.04;letter-spacing:-.055em;margin:16px 0}.precourse-heading h2 em{font-style:normal;color:#e51e43}.precourse-heading p{font-size:17px;color:#526575}
.precourse-alert{background:#fff;border:1px solid #f3b4c0;border-left:6px solid #e51e43;border-radius:16px;padding:clamp(22px,4vw,40px);margin:28px 0;box-shadow:0 12px 35px rgba(14,39,57,.06)}
.precourse-tag{display:inline-block;background:#ffebef;color:#a80b2c;padding:7px 11px;font-size:11px;font-weight:800;letter-spacing:.09em;border-radius:4px}.precourse-alert h3{font-size:clamp(23px,3vw,35px);margin:16px 0}.precourse-alert p,.precourse-card p,.precourse-card li,.precourse-alert li{line-height:1.7;color:#34495a}.precourse-alert ol{padding-left:24px}.precourse-alert ol>li{padding:6px 0}.precourse-alert ul,.precourse-card ul{padding-left:22px}.precourse-alert a{color:#c51238;overflow-wrap:anywhere;font-weight:700}.precourse-warning{padding:16px 18px;background:#fff0f2;border-radius:8px;color:#a80b2c!important;margin-top:20px}.precourse-time{font-size:15px}
.precourse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.precourse-card{background:#fff;border:1px solid #e0e7eb;border-radius:14px;padding:clamp(20px,3vw,32px)}.precourse-num{font-size:12px;color:#e51e43;font-weight:800;letter-spacing:.13em}.precourse-card h3{font-size:clamp(21px,2.4vw,28px);margin:10px 0 14px;letter-spacing:-.03em}.precourse-card li{margin:7px 0}.precourse-reminders{background:#142d40;border-color:#142d40}.precourse-reminders h3,.precourse-reminders li{color:#fff}.precourse-reminders .precourse-num{color:#ff8498}
@media(max-width:720px){.precourse-grid{grid-template-columns:1fr}.precourse{padding:54px 20px}.precourse-alert{padding:22px}}
