/*
Theme Name: Quality Care Academy — Professional
Author: Quality Care Training Academy
Description: Professional AHA training website with course guidance, instructor profile, pricing, and training inquiry forms.
Version: 2.1.2
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: quality-care-academy
*/
:root{--navy:#132e52;--navy-deep:#0d233f;--red:#ba2131;--red-dark:#9e1727;--muted:#5d6878;--line:#dee4eb;--paper:#f6f8fb;--warm:#f4f1ed;--serif:Georgia,'Times New Roman',serif;--radius:16px;--shadow:0 14px 45px #132e520b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:#fff;color:var(--navy);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #3975b7;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid #3975b7;outline-offset:2px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-weight:600}p{font-size:15px;line-height:1.8;color:var(--muted)}h1{font-size:clamp(48px,5.15vw,76px);line-height:1.08;letter-spacing:-3.4px;margin-bottom:25px}h2{font-size:clamp(31px,3.2vw,46px);line-height:1.14;letter-spacing:-1.8px;margin-bottom:24px}h3{font-size:23px;line-height:1.25;letter-spacing:-.5px}em{font-family:var(--serif);font-weight:400;color:var(--red)}.container{width:min(1180px,calc(100% - 80px));margin-inline:auto}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.skip-link{position:fixed;left:15px;top:-90px;background:white;padding:16px;z-index:100}.skip-link:focus{top:10px}.utility-bar{background:var(--navy);color:#e7edf6;font-size:11px}.utility-inner{display:flex;justify-content:space-between;gap:15px;padding-block:11px}.utility-inner>span,.utility-inner>a{display:flex;align-items:center;gap:8px}.utility-inner .icon{width:13px;height:13px}.site-header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-symbol{width:43px;height:43px;color:var(--navy)}.brand-symbol svg{width:100%;height:100%}.brand-name{font-family:var(--serif);color:var(--red);font-size:30px;line-height:1;font-weight:bold;letter-spacing:-1px}.brand-name>span{display:block;font:700 8px Arial,Helvetica,sans-serif;letter-spacing:2.8px;color:var(--navy);margin-top:8px}.brand-logo{display:block;max-width:245px;max-height:76px;width:auto;height:auto;object-fit:contain}#main-nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600}#main-nav>a:not(.button){padding-block:13px;border-bottom:2px solid transparent}#main-nav>a:hover,#main-nav>a[aria-current]{color:var(--red)}#main-nav>a[aria-current]{border-bottom-color:var(--red)}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;background:var(--red);color:white;padding:16px 22px;border:1px solid var(--red);border-radius:6px;font-size:12px;font-weight:700;line-height:1.4;transition:background .18s,transform .18s}.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-2px)}.button .icon{height:18px;width:18px}.button-small{min-height:44px;padding:12px 18px;font-size:11px;gap:16px}.button-outline{background:transparent;color:var(--navy);border-color:#b8c3d1}.button-outline:hover{background:var(--navy);border-color:var(--navy);color:white}.button-white{background:white;color:var(--navy);border-color:white}.button-white:hover{background:#edf1f6;color:var(--navy);border-color:#edf1f6}.text-link,.inline-link{font-size:13px;color:var(--navy);font-weight:700}.text-link{display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid #b5c1d0;padding-bottom:7px}.text-link .icon{width:17px;height:17px}.text-link:hover,.inline-link:hover{color:var(--red)}.inline-link{text-decoration:underline}.eyebrow{font-size:9px!important;line-height:1.6!important;letter-spacing:1.9px;font-weight:700;color:var(--red);margin-bottom:20px;display:flex;align-items:center;gap:9px}.red-line{display:inline-block;height:2px;width:24px;background:var(--red)}.hero{background:linear-gradient(110deg,#fff 55%,#f6f8fb 55%);padding:63px 0 70px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px}.hero-copy{padding-bottom:8px}.hero-intro{max-width:475px;margin-bottom:27px;font-size:15px}.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.hero-proof{display:flex;gap:13px;align-items:center;margin-top:32px}.proof-symbol{color:var(--red);width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.proof-symbol .icon{width:20px}.hero-proof p{font-size:10px;line-height:1.75;margin:0}.hero-proof strong{font-weight:600;color:var(--navy)}.hero-visual{min-width:0;position:relative;padding-bottom:22px}.training-illustration{background:#e9eef5;border-radius:90px 12px 12px 12px;position:relative;padding:28px 25px 65px;min-height:490px;overflow:hidden}.training-illustration:before{content:'';position:absolute;width:330px;height:330px;border:1px solid #132e5210;border-radius:50%;top:80px;left:50%;transform:translateX(-50%)}.training-illustration:after{content:'';width:80px;height:80px;border-radius:50%;border:22px solid #ba21310d;position:absolute;right:-30px;top:60px}.visual-top,.visual-bottom{display:flex;align-items:center;justify-content:space-between;font-size:8px;font-weight:600;letter-spacing:1.1px;position:relative;z-index:1}.visual-top{margin-left:30px}.visual-top>span:last-child{color:#8090a6;font-size:7px}.manikin{width:100%;height:350px;position:relative;z-index:1}.visual-bottom{font-size:9px;line-height:1.5;padding-inline:7px}.visual-bottom svg{width:85px;color:var(--red)}.instructor-card{position:absolute;bottom:0;left:-24px;right:24px;padding:19px 22px;display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:white;border-radius:10px;box-shadow:var(--shadow);z-index:2}.instructor-monogram{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;font-family:var(--serif);font-size:16px}.instructor-card strong{display:block;font-size:15px;margin-bottom:5px}.instructor-card div>span{font-size:10px;color:var(--muted)}.verified-icon{margin-left:auto;color:var(--red);border:1px solid #ba213122;border-radius:50%;height:28px;width:28px;display:grid;place-items:center}.verified-icon .icon{width:15px;height:15px}.instructor-hero-photo{height:490px;width:100%;display:block;object-fit:cover;border-radius:90px 12px 12px 12px;object-position:50% 20%}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.trust-strip>.container{display:grid;grid-template-columns:repeat(4,1fr);padding-block:24px;gap:25px}.trust-strip span{display:flex;align-items:center;gap:11px;font-size:10px;font-weight:600}.trust-strip .icon{color:var(--red);height:22px;width:22px}.section{padding:90px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;font-size:13px;margin-bottom:0}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.course-card{border:1px solid var(--line);border-radius:12px;padding:32px;position:relative;box-shadow:var(--shadow);display:flex;flex-direction:column;background:#fff}.course-card:before{position:absolute;content:'';top:0;left:30px;right:30px;height:3px;background:var(--red)}.course-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:29px}.icon-disc{display:inline-grid;place-items:center;flex-shrink:0;height:48px;width:48px;border-radius:50%;background:#f9edef;color:var(--red)}.icon-disc .icon{width:23px;height:23px}.course-tag{font-size:8px;letter-spacing:1.2px;font-weight:bold;color:var(--muted)}.course-card h3{font-size:31px;letter-spacing:-1px;margin-bottom:17px;line-height:1.13}.course-card>p{font-size:13px;max-width:440px}.clean-list{margin:3px 0 25px;padding-left:17px;color:var(--muted);font-size:12px;line-height:1.9}.clean-list li::marker{color:var(--red)}.course-price{margin-top:auto;display:flex;flex-direction:column;gap:7px;padding:19px 0;border-top:1px solid var(--line)}.course-price>span{font-size:10px;color:var(--muted)}.course-price strong{font-size:18px;font-weight:600}.card-link{font-size:12px;font-weight:700;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px}.card-link:hover{color:var(--red)}.card-link .icon{width:18px;height:18px}.course-guidance{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px;padding:19px 23px;border-radius:8px;background:var(--paper);font-size:11px}.course-guidance>span,.course-guidance>a{display:flex;align-items:center;gap:12px}.course-guidance>a{font-weight:bold}.course-guidance .icon{width:17px;height:17px}.audiences{background:var(--paper)}.audience-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:center}.audience-layout>div>p:not(.eyebrow){max-width:400px;font-size:13px}.audience-layout .text-link{margin-top:10px}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.audience-grid article{background:white;border:1px solid var(--line);border-radius:10px;padding:25px 22px}.audience-grid .icon{color:var(--red);width:27px;height:27px;margin-bottom:22px}.audience-grid h3{font-size:17px;letter-spacing:-.3px;line-height:1.3;margin-bottom:12px}.audience-grid p{font-size:11px;margin-bottom:0;line-height:1.8}.instructor-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}.instructor-layout>div>p:not(.eyebrow){font-size:13px}.instructor-layout .lead{font-size:16px!important;line-height:1.7;color:var(--navy)}.instructor-profile{border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--warm);position:relative;min-height:380px;display:flex;flex-direction:column;justify-content:end}.instructor-profile>img{width:100%;height:410px;object-fit:cover;display:block;object-position:50% 20%}.profile-identity{min-height:360px;padding:35px;position:relative;display:flex;flex-direction:column;justify-content:end;isolation:isolate}.profile-identity:before{content:'';position:absolute;width:280px;height:280px;border:1px solid #132e5212;border-radius:50%;top:25px;left:50%;transform:translateX(-50%);z-index:-1}.profile-initials{font-size:115px;font-family:var(--serif);color:#132e5220;line-height:1;margin-bottom:32px;letter-spacing:-9px;align-self:center}.profile-label{font-size:8px;color:var(--red);letter-spacing:1.8px;font-weight:bold;margin-bottom:14px}.profile-identity h3{font-size:31px;margin-bottom:10px}.profile-identity p{font-size:11px;letter-spacing:.3px}.profile-caption{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--navy);color:white;padding:21px;font-size:11px}.profile-caption .icon{color:#f0b7bf;width:18px;height:18px}.credential-list{list-style:none;padding:0;margin:24px 0 28px}.credential-list li{display:flex;align-items:center;gap:10px;margin:12px 0;font-size:12px}.credential-list .icon{height:17px;width:17px;color:var(--red)}.process{background:var(--navy);color:white}.process p,.process .eyebrow{color:#dbe3ef}.process .eyebrow{color:#f3b8c0}.process h2{color:#fff}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.process-grid article{border-top:1px solid #ffffff35;padding-top:24px}.process-grid article>span{font-family:var(--serif);font-size:31px;color:#eea9b3;display:block;margin-bottom:23px}.process-grid h3{font-size:18px;letter-spacing:-.3px;margin-bottom:12px}.process-grid p{font-size:12px;margin-bottom:0}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-layout>div>p{font-size:13px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;gap:25px;cursor:pointer;list-style:none;padding:24px 0;font-size:14px;font-weight:600;line-height:1.5}summary::-webkit-details-marker{display:none}summary>span{font-size:23px;font-weight:400;color:var(--red);transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>p{font-size:13px;margin:0 30px 24px 0;line-height:1.8}.contact-cta{background:var(--red);color:white;padding:55px 0}.contact-cta>.container{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-cta .eyebrow{color:#ffe2e5;margin-bottom:12px}.contact-cta h2{color:white;margin-bottom:14px;font-size:43px}.contact-cta h2 em{color:white}.contact-cta p:last-child{margin-bottom:0;color:#ffe2e5;font-size:13px}.cta-actions{display:flex;flex-direction:column;align-items:center;gap:17px}.cta-actions>a:last-child{font-size:11px}.site-footer{background:var(--navy-deep);color:white;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr .9fr 1.1fr;gap:35px;padding-bottom:45px}.footer-brand{display:block;font-family:var(--serif);font-size:27px;letter-spacing:-.5px;line-height:1}.footer-brand>span{display:block;font:700 7px Arial,Helvetica,sans-serif;letter-spacing:2.4px;margin-top:10px}.footer-grid p{font-size:10px;color:#bdc9da;margin-top:20px;line-height:1.9}.footer-grid h3{font-size:11px;letter-spacing:0;margin:3px 0 23px}.footer-grid>div>a:not(.footer-brand){display:block;font-size:10px;color:#d0d9e6;margin-bottom:14px;line-height:1.5}.footer-grid>div>a:hover{text-decoration:underline}.footer-email{overflow-wrap:anywhere}.footer-badge{display:inline-flex;align-items:center;gap:7px;font-size:9px;color:#d0d9e6}.footer-badge .icon{width:15px;height:15px}.footer-bottom{border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:25px;padding-top:21px;font-size:8px;color:#a8b7ca;line-height:1.7}.mobile-action-bar{display:none}.page-hero{padding:65px 0;background:var(--paper);position:relative;border-bottom:1px solid var(--line);overflow:hidden}.page-hero:after{content:'+';position:absolute;right:4%;bottom:-105px;font-size:420px;font-weight:bold;line-height:1;color:#132e5205;pointer-events:none}.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(44px,4.8vw,66px);max-width:850px}.page-hero p:not(.eyebrow){max-width:650px;margin-bottom:0}.back-link{display:inline-block;font-size:11px;color:var(--muted);margin-bottom:30px}.compare-heading{margin-top:70px}.comparison{overflow:auto;border:1px solid var(--line);border-radius:10px}.comparison table{width:100%;border-collapse:collapse;min-width:600px;text-align:left;font-size:12px;line-height:1.8}.comparison caption{text-align:left;padding:20px 25px;font-size:13px;font-weight:bold;background:var(--paper)}.comparison th,.comparison td{padding:20px 25px;border-top:1px solid var(--line);vertical-align:top}.comparison thead{background:var(--navy);color:white}.comparison tbody th{font-weight:600;width:24%}.comparison tbody td{width:38%;color:var(--muted)}.comparison a{color:var(--red);font-weight:bold}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.service-grid>article{border:1px solid var(--line);padding:30px;border-radius:10px}.service-grid>article>.icon{color:var(--red);margin-bottom:22px}.service-grid p{font-size:13px}.service-price{font-size:18px!important;font-weight:bold;color:var(--navy)}.detail-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:80px;align-items:start}.detail-layout h3{font-size:21px;margin-top:35px}.lead{font-size:18px;color:var(--navy);line-height:1.8}.detail-layout .lead{font-size:17px}.topic-list{list-style:none;margin:20px 0 35px;padding:0}.topic-list li{display:flex;align-items:start;gap:12px;font-size:13px;line-height:1.7;margin-bottom:15px}.topic-list .icon{color:var(--red);width:18px;height:18px;margin-top:2px}.booking-card{border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:28px;position:sticky;top:30px}.booking-card h3{font-size:23px;margin-top:23px}.price-row{display:flex;flex-direction:column;gap:9px;padding:18px 0;border-top:1px solid var(--line)}.price-row span{font-size:12px;color:var(--muted)}.price-row strong{font-size:24px}.small{font-size:11px;line-height:1.8}.booking-card>.button{width:100%;margin:12px 0 22px;gap:18px}.booking-card>.text-link{font-size:11px}.booking-card-contact{display:flex;align-items:center;gap:10px;margin-top:25px;padding-top:23px;border-top:1px solid var(--line);font-size:12px}.booking-card-contact .icon{width:16px;color:var(--red)}.note-card{background:var(--paper);border-left:3px solid var(--red);padding:23px;margin:28px 0}.note-card h3{font-size:18px;margin:0 0 10px}.note-card p{font-size:12px;margin-bottom:0}.form-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.form-layout>div>p{font-size:13px}.form-panel{border:1px solid var(--line);border-radius:12px;padding:32px;box-shadow:var(--shadow)}.form-panel>h2{font-size:26px;letter-spacing:-.7px}.form-panel .eyebrow{font-size:8px!important}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:19px}.form-field.full{grid-column:1/-1}.form-field label{display:block;font-size:11px;font-weight:600;line-height:1.6;margin-bottom:8px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #c6d0dc;border-radius:5px;background:white;color:var(--navy);padding:12px;min-height:45px;font-size:13px}.form-field textarea{min-height:110px;resize:vertical}.form-help{font-size:10px!important;color:var(--muted);line-height:1.8}.inquiry-form>.button{margin-top:20px}.form-notice{padding:17px;border-radius:6px;font-size:12px;line-height:1.8;margin-bottom:20px;border:1px solid}.form-notice.is-success{color:#17513d;background:#f1faf5;border-color:#b7d9c5}.form-notice.is-error{color:#921f2c;background:#fff5f6;border-color:#edc5cc}.booking-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:30px}.booking-flow>span{padding:15px 0;border-top:3px solid var(--line);font-size:10px;font-weight:600;color:var(--muted)}.booking-flow>.active{border-color:var(--red);color:var(--navy)}.booking-note{display:flex;gap:15px;border:1px solid var(--line);background:var(--paper);padding:22px;border-radius:8px;margin-bottom:28px}.booking-note>.icon{color:var(--red);margin-top:3px}.booking-note p{margin:0;font-size:12px}.booking-note strong{color:var(--navy)}.booking-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:55px}.choice-card{background:white;border:1px solid var(--line);border-radius:8px;text-align:left;padding:24px;color:var(--navy);display:flex;flex-direction:column;align-items:start;gap:13px}.choice-card>.icon{color:var(--red);height:25px;width:25px}.choice-card strong{font-size:15px}.choice-card>span{font-size:11px;color:var(--muted)}.choice-card.selected{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red);background:#fcf7f8}.choice-card:hover{border-color:var(--red)}.booking-connection{display:flex;gap:30px;align-items:center;justify-content:space-between;background:var(--paper);padding:30px;margin-bottom:35px}.booking-connection h2{font-size:28px}.booking-connection p{font-size:12px;margin-bottom:0}.booking-connection .button{flex-shrink:0}.large-phone{font-size:22px;font-weight:600;color:var(--navy);display:inline-block;margin:5px 0 12px}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.three-grid p{font-size:13px}.three-grid h3{font-size:20px}.number{font:36px var(--serif);color:var(--red);display:block;margin-bottom:20px}.light-section{background:var(--paper)}.contact-details{margin-top:35px;margin-bottom:30px}.contact-details>a,.contact-details>div{display:flex;align-items:start;gap:15px;padding:22px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.contact-details .icon{color:var(--red);width:21px;height:21px}.contact-details small{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted);margin-bottom:9px}.contact-details strong{font-size:14px;font-weight:600;line-height:1.8}.contact-details span{min-width:0}.document-content{min-height:50vh}.document-content img{max-width:100%;height:auto}.document-content a{text-decoration:underline}.screen-reader-text{clip-path:inset(50%);width:1px;height:1px;overflow:hidden;position:absolute;white-space:nowrap}.screen-reader-text:focus{clip-path:none;width:auto;height:auto;position:static;white-space:normal}
@media(min-width:1500px){.hero{padding:80px 0 85px}.training-illustration{min-height:520px}.manikin{height:380px}}
@media(max-width:1150px){.container{width:calc(100% - 60px)}#main-nav{gap:18px;font-size:11px}.brand-name{font-size:26px}.brand-name>span{font-size:7px}.brand-symbol{width:36px;height:36px}.hero-grid{gap:35px}.hero h1{font-size:60px}.hero-intro{font-size:14px}.hero-actions .button{padding:15px 17px;font-size:11px;gap:15px}.hero-proof p{font-size:9px}.instructor-card{left:-12px;right:12px}.audience-layout,.instructor-layout{gap:45px}.detail-layout,.form-layout{gap:45px}.footer-grid{gap:25px}.faq-layout{gap:45px}}
@media(max-width:980px){.header-inner{position:relative;min-height:90px}.menu-toggle{display:flex;gap:13px;align-items:center;border:1px solid var(--line);border-radius:5px;padding:12px 15px;background:white;color:var(--navy);font-size:12px}#main-nav{display:none;position:absolute;top:100%;left:-30px;right:-30px;background:white;padding:25px 30px;z-index:20;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch}#main-nav.is-open{display:flex;flex-direction:column;gap:12px}#main-nav>.button{align-self:start}#main-nav>a:not(.button){border-bottom:1px solid var(--line)}.hero h1{font-size:54px;letter-spacing:-2.7px}.hero .eyebrow{font-size:8px!important;letter-spacing:1.5px}.hero-proof{align-items:start}.hero-proof br{display:none}.training-illustration{min-height:440px;padding:25px 16px 65px}.manikin{height:300px}.visual-top{margin-left:15px;font-size:6px}.visual-top>span:last-child{font-size:6px}.visual-bottom{font-size:7px}.visual-bottom svg{width:70px}.instructor-card{padding:16px 14px;gap:10px}.instructor-card strong{font-size:13px}.instructor-card div>span{font-size:9px}.instructor-monogram{height:36px;width:36px;font-size:14px}.instructor-hero-photo{height:440px}.trust-strip>.container{grid-template-columns:1fr 1fr;gap:20px 35px}.section{padding:70px 0}.audience-layout{grid-template-columns:1fr;gap:30px}.audience-layout>div>p:not(.eyebrow){max-width:640px}.audience-grid{grid-template-columns:repeat(4,1fr);gap:15px}.audience-grid article{padding:22px 17px}.audience-grid h3{font-size:15px}.audience-grid p{font-size:10px}.instructor-layout{gap:40px;grid-template-columns:.9fr 1.1fr}.instructor-layout h2{font-size:35px}.profile-identity{padding:25px;min-height:345px}.profile-identity h3{font-size:26px}.profile-caption{font-size:9px;padding:18px}.process-grid{gap:25px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:first-child>p{margin-top:16px}.detail-layout{grid-template-columns:1.2fr .8fr;gap:30px}.booking-card{padding:22px}.form-layout{gap:35px;grid-template-columns:.8fr 1.2fr}.form-panel{padding:25px}.form-fields{gap:16px}.page-hero{padding:55px 0}}
@media(max-width:700px){.container{width:calc(100% - 40px)}.utility-bar{font-size:9px}.utility-inner{padding-block:10px;gap:10px}.utility-inner>span{font-size:8px;max-width:200px;line-height:1.5}.utility-inner .icon{width:12px;height:12px}.utility-inner>a{font-size:9px;white-space:nowrap}.header-inner{min-height:83px}.brand-name{font-size:26px}.brand-name>span{font-size:7px;letter-spacing:2px}.brand{gap:9px}.brand-symbol{width:34px;height:34px}.brand-logo{max-width:210px;max-height:63px}.menu-toggle{padding:10px;font-size:11px;gap:8px}#main-nav{left:-20px;right:-20px;padding:22px 20px;font-size:13px}.hero{background:linear-gradient(#fff 63%,#f6f8fb 63%);padding:38px 0 42px}.hero-grid{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(43px,9.8vw,65px);letter-spacing:-2.4px;line-height:1.08;margin-bottom:22px}.hero .eyebrow{font-size:7px!important;letter-spacing:1.2px;margin-bottom:20px}.red-line{width:18px}.hero-intro{font-size:13px;max-width:500px;line-height:1.8}.hero-actions{gap:10px}.hero-actions .button{min-height:48px;padding:14px 17px;font-size:10px;gap:14px}.hero-proof{margin-top:25px;gap:10px;align-items:center}.hero-proof p{font-size:9px;line-height:1.8}.hero-proof br{display:block}.proof-symbol{width:35px;height:35px;flex-shrink:0}.hero-visual{max-width:520px;width:100%;margin:auto;padding:0 0 18px 10px}.training-illustration{min-height:400px;padding:23px 20px 65px;border-radius:65px 10px 10px 10px}.manikin{height:290px}.visual-top{font-size:7px;margin-left:16px}.visual-top>span:last-child{font-size:6px}.visual-bottom{font-size:8px}.visual-bottom svg{width:80px}.instructor-card{left:0;right:20px;padding:15px 17px}.instructor-card strong{font-size:14px}.instructor-card div>span{font-size:9px}.instructor-hero-photo{height:420px;border-radius:65px 10px 10px 10px}.trust-strip>.container{gap:19px 14px;padding-block:23px}.trust-strip span{font-size:8px;gap:8px;line-height:1.5}.trust-strip .icon{width:18px;height:18px}.section{padding:55px 0}h2{font-size:33px;letter-spacing:-1.3px}h3{font-size:22px}.eyebrow{font-size:8px!important;letter-spacing:1.7px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:450px;margin-top:20px;font-size:12px}.course-grid{grid-template-columns:1fr;gap:20px}.course-card{padding:26px}.course-card h3{font-size:30px}.course-card>p{font-size:12px}.course-card-heading{margin-bottom:25px}.course-tag{font-size:7px;letter-spacing:1px}.course-price strong{font-size:20px}.course-guidance{align-items:start;flex-direction:column;gap:13px;padding:18px;font-size:10px}.course-guidance>a{gap:8px}.audience-layout{gap:28px}.audience-grid{grid-template-columns:1fr 1fr;gap:14px}.audience-grid article{padding:22px 18px}.audience-grid h3{font-size:16px}.audience-grid p{font-size:11px}.audience-layout>div>p:not(.eyebrow){font-size:12px}.instructor-layout{grid-template-columns:1fr;gap:30px}.instructor-layout h2{font-size:34px}.instructor-profile{max-width:500px;min-height:330px}.profile-identity{min-height:315px;padding:28px}.profile-initials{font-size:100px;margin-bottom:23px}.profile-identity h3{font-size:28px}.profile-caption{font-size:11px}.instructor-profile>img{height:440px}.instructor-layout>div>p:not(.eyebrow){font-size:12px}.instructor-layout .lead{font-size:15px!important}.credential-list li{font-size:11px}.process .section-heading .button{margin-top:25px}.process-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.process-grid article{padding-top:20px;display:grid;grid-template-columns:40px 1fr;gap:0 15px}.process-grid article>span{grid-row:1/3;font-size:29px;margin:0}.process-grid h3{font-size:18px;margin-top:3px}.process-grid p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:27px}summary{font-size:13px;padding-block:22px;gap:18px}details>p{font-size:12px;margin-right:15px}.contact-cta{padding:43px 0}.contact-cta>.container{display:block}.contact-cta h2{font-size:35px}.contact-cta p:last-child{font-size:12px}.cta-actions{margin-top:26px;align-items:start;gap:16px}.site-footer{padding:42px 0 90px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid h3{font-size:12px;margin-bottom:18px}.footer-grid>div>a:not(.footer-brand){font-size:11px;margin-bottom:12px}.footer-grid>div>p{font-size:11px}.footer-badge{font-size:10px}.footer-bottom{flex-direction:column;gap:11px;font-size:8px}.mobile-action-bar{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;background:white;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -3px 20px #132e520b}.mobile-action-bar>a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;font-weight:600;min-height:53px;padding:12px}.mobile-action-bar>a:last-child{background:var(--red);color:white}.mobile-action-bar .icon{height:17px;width:17px}.page-hero{padding:40px 0}.page-hero h1{font-size:clamp(38px,8.7vw,56px);letter-spacing:-1.9px}.page-hero p:not(.eyebrow){font-size:13px}.page-hero:after{font-size:300px;right:-50px;bottom:-90px}.back-link{font-size:10px;margin-bottom:23px}.compare-heading{margin-top:45px}.comparison table{font-size:11px;min-width:560px}.comparison th,.comparison td{padding:17px}.comparison caption{padding:17px;font-size:12px}.service-grid{grid-template-columns:1fr;margin-top:25px;gap:18px}.service-grid>article{padding:25px}.detail-layout{grid-template-columns:1fr;gap:30px}.detail-layout h2{font-size:32px}.detail-layout .lead{font-size:15px}.detail-layout>div>p{font-size:13px}.booking-card{position:static;padding:26px}.booking-card h3{font-size:24px}.price-row{flex-direction:row;justify-content:space-between;align-items:center;gap:20px}.price-row strong{font-size:25px}.topic-list li{font-size:12px}.form-layout{grid-template-columns:1fr;gap:25px}.form-layout>div>p{font-size:12px}.form-panel{padding:24px}.form-panel>h2{font-size:24px}.form-fields{grid-template-columns:1fr;gap:18px}.form-field.full{grid-column:auto}.form-field input,.form-field select,.form-field textarea{font-size:16px;min-height:46px}.form-field label{font-size:12px}.inquiry-form>.button{width:100%}.booking-flow{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:25px}.booking-flow>span{font-size:8px;padding-top:10px;line-height:1.7}.booking-note{padding:18px;gap:10px}.booking-note>.icon{height:19px;width:19px}.booking-note p{font-size:11px}.booking-choices{grid-template-columns:1fr;gap:12px;margin-bottom:35px}.choice-card{padding:20px;display:grid;grid-template-columns:30px 1fr;gap:7px 15px}.choice-card>.icon{grid-row:1/3;height:25px;width:25px;align-self:center}.choice-card strong{font-size:14px}.choice-card>span{font-size:11px}.booking-connection{display:block;padding:24px}.booking-connection h2{font-size:26px}.booking-connection .button{margin-top:20px}.three-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.three-grid article{border-top:1px solid var(--line);padding-top:20px}.three-grid h3{font-size:21px}.three-grid p{font-size:12px}.number{font-size:30px;margin-bottom:15px}.contact-details strong{font-size:13px}.contact-details small{font-size:8px}.document-content h1{font-size:38px;letter-spacing:-1.5px}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.brand-name{font-size:23px}.brand-name>span{font-size:6px;letter-spacing:1.9px}.brand-symbol{width:30px;height:30px}.menu-toggle{padding:9px;gap:6px}.menu-toggle>span{display:none}.utility-inner>span{font-size:7px;max-width:155px}.utility-inner>a{font-size:8px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{font-size:11px}.hero .eyebrow{font-size:6px!important;letter-spacing:1px}.hero-proof p{font-size:8px}.instructor-card{padding:13px 12px;right:10px}.instructor-card div>span{font-size:8px}.verified-icon{height:24px;width:24px}.audience-grid{gap:10px}.audience-grid article{padding:18px 15px}.audience-grid h3{font-size:14px}.form-panel{padding:20px}.brand-logo{max-width:195px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.button:hover{transform:none}}
.price-catalog{margin-top:65px}.price-catalog-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;margin-bottom:20px;border-top:1px solid var(--line)}.catalog-row{display:flex;align-items:center;gap:16px;padding:23px 0;border-bottom:1px solid var(--line)}.catalog-row>span{font-size:12px;line-height:1.7;flex:1}.catalog-row>strong{font-size:22px;font-weight:600;color:var(--red)}.catalog-row>.icon{width:15px;height:15px;color:var(--muted)}.catalog-row:hover>span{text-decoration:underline}.heartcode-panel{border:1px solid var(--line);border-radius:10px;padding:27px;margin-top:35px;background:var(--paper)}.heartcode-panel>h3{margin-top:0;font-size:27px}.heartcode-panel>p:not(.eyebrow){font-size:13px}.heartcode-price{color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--line);padding-block:16px}.heartcode-price strong{font-size:25px}.heartcode-panel .topic-list{margin-bottom:20px}.heartcode-panel .eyebrow{font-size:8px!important}.price-catalog>.small{max-width:800px}.booking-card .price-row{flex-direction:row;align-items:center;justify-content:space-between;gap:20px}.booking-card .price-row>span{max-width:170px;line-height:1.6}.booking-card .price-row>strong{font-size:24px;flex-shrink:0}
@media(max-width:700px){.price-catalog{margin-top:45px}.price-catalog-grid{grid-template-columns:1fr}.catalog-row{padding:20px 0}.catalog-row>span{font-size:12px}.catalog-row>strong{font-size:23px}.heartcode-panel{padding:22px}.heartcode-price{font-size:12px!important}.heartcode-panel .text-link{font-size:12px}}
.menu-toggle{min-height:44px;min-width:44px}.card-link{min-height:44px}

.request-flow{grid-template-columns:repeat(3,1fr)}
/* Supplied instructor portrait and flyer-derived logo. */
.brand-logo{width:270px;max-width:270px;max-height:94px;height:auto;object-fit:contain}.header-inner{min-height:116px}.hero-visual.has-photo:before{content:'';position:absolute;inset:-10px 14px 35px 20px;border:1px solid #d9e1eb;border-radius:90px 14px 14px 14px;transform:rotate(3deg);z-index:0}.hero-visual.has-photo .instructor-hero-photo{position:relative;z-index:1;object-position:50% 20%}.hero-visual.has-photo .instructor-card{z-index:2}.instructor-profile>img{object-position:50% 20%}
@media(max-width:980px){.brand-logo{width:245px;max-width:245px;max-height:86px}.header-inner{min-height:103px}}
@media(max-width:700px){.brand-logo{width:230px;max-width:calc(100vw - 120px);max-height:80px}.header-inner{min-height:94px}.hero-visual.has-photo:before{inset:-8px 13px 35px 18px;border-radius:65px 12px 12px 12px}}
.section-anchor{position:absolute}.all-classes-link{margin-top:25px;display:flex;justify-content:center}.training-practice{background:#f7f8fa;border-block:1px solid var(--line)}.training-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.training-story{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.training-photo{display:block;width:100%;aspect-ratio:1.5;overflow:hidden;position:relative;background:#e5e9ed}.training-photo img{position:absolute;max-width:none;height:auto;display:block}.training-photo--class img{width:207.62%;left:-107.62%;top:0}.training-photo--practice img{width:178.125%;left:-78.125%;top:0}.training-photo:focus-visible{outline-offset:-5px}.training-story-caption{padding:27px;display:flex;flex-direction:column;align-items:start}.training-story-caption .eyebrow{font-size:8px!important;margin-bottom:14px}.training-story-caption h3{font-size:26px;margin-bottom:12px}.training-story-caption p:not(.eyebrow){font-size:12px;margin-bottom:23px;max-width:380px}.training-story-caption .text-link{margin-top:auto;font-size:12px}.reviews{background:#f4f6fa}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.review-card{background:white;padding:29px;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:10px}.review-card blockquote{margin:0}.review-card blockquote p{font-family:var(--serif);font-size:20px;color:var(--navy);line-height:1.6}.review-card footer{border-top:1px solid var(--line);padding-top:20px;font-size:12px;font-weight:bold}.review-card footer span{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:6px}.reviews .text-link{margin-top:25px}
@media(max-width:980px){.review-grid{grid-template-columns:1fr 1fr}.training-story-caption{padding:23px}.training-photo{aspect-ratio:1.25}}
@media(max-width:700px){.training-gallery{grid-template-columns:1fr;gap:22px}.training-photo{aspect-ratio:1.3}.training-story-caption{padding:24px}.training-story-caption h3{font-size:25px}.training-story-caption p:not(.eyebrow){font-size:12px}.review-grid{grid-template-columns:1fr}.review-card{padding:25px}.review-card blockquote p{font-size:20px}.all-classes-link{justify-content:stretch}.all-classes-link .button{width:100%}}

/* Display the original logo artwork from the uploaded academy flyer. */
.brand-flyer-logo{display:block;position:relative;overflow:hidden;flex-shrink:0;width:270px;aspect-ratio:510/185}.brand-flyer-logo>img{position:absolute;left:0;top:0;width:245.882353%;height:auto;max-width:none;display:block}
@media(max-width:980px){.brand-flyer-logo{width:245px}}
@media(max-width:700px){.brand-flyer-logo{width:230px;max-width:calc(100vw - 120px)}}

/* Frame only the CPR practice photograph within the supplied flyer. */
.hero-visual.has-practice{padding-bottom:0}.hero-practice-photo{position:relative;width:100%;aspect-ratio:654/600;overflow:hidden;border-radius:90px 12px 0 0;background:#e9eef5}.hero-practice-photo>img{position:absolute;display:block;width:191.74312%;height:auto;max-width:none;left:-91.74312%;top:-8.33333%}.hero-training-caption{display:flex;align-items:center;gap:15px;background:var(--navy);color:#fff;padding:21px 24px;border-radius:0 0 12px 12px}.hero-training-caption>.icon{width:28px;height:28px;color:#f0b7bf}.hero-training-caption strong{display:block;font-size:15px;line-height:1.4;margin-bottom:5px}.hero-training-caption span{display:block;font-size:10px;line-height:1.6;color:#d6e0ed}.payment-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:35px;margin-top:48px;padding:32px;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:10px;background:var(--paper)}.payment-panel .eyebrow{margin-bottom:12px}.payment-panel h2{font-size:28px;letter-spacing:-.8px;margin-bottom:14px}.payment-panel p:last-child{max-width:650px;margin-bottom:0;font-size:13px}.payment-actions{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:100%;min-width:0}.payment-actions>.button{flex-shrink:0;max-width:100%}.payment-qr{width:226px;max-width:100%;margin:0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:8px}.payment-qr-image{width:200px;max-width:100%;aspect-ratio:1;background:#fff}.payment-qr-image>img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;border:0;border-radius:0;padding:0;margin:0;filter:none}.payment-qr figcaption{margin-top:12px;text-align:center;font-size:11px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.hero-practice-photo{border-radius:65px 10px 0 0}.hero-training-caption{padding:18px 20px;border-radius:0 0 10px 10px;gap:12px}.hero-training-caption strong{font-size:14px}.hero-training-caption span{font-size:9px}.payment-panel{grid-template-columns:1fr;gap:22px;margin-top:35px;padding:25px}.payment-panel h2{font-size:26px}.payment-panel p:last-child{font-size:12px}.payment-actions{justify-self:start;align-items:start}}

/* Dedicated equipment hero: no flyer crop offsets. */
.hero-equipment-photo>img{width:100%;height:100%;max-width:100%;left:0;top:0;object-fit:cover;object-position:center;}

/* Readable desktop-first type scale, approved review revision. */
body{font-size:19px;line-height:1.7}
.hero-intro,.lead{font-size:21px;line-height:1.7}
.section p,.course-card p,.audience-grid p,.process-grid p,.training-story-caption p,.faq-list p,.note-card p,.booking-note p,.payment-panel p:last-child{font-size:19px;line-height:1.7}
.clean-list,.topic-list,.credential-list,.course-guidance,.course-price,.price-row{font-size:18px;line-height:1.7}
.site-header nav>a,.button,.card-link,.text-link{font-size:17px;line-height:1.5}
.eyebrow,.course-tag,.utility-bar,.hero-proof p,.trust-strip,.small,.form-help{font-size:15px;line-height:1.65}
.course-tag{white-space:normal}
.hero-training-caption strong{font-size:19px}
.hero-training-caption span,.training-story-caption .eyebrow,.payment-qr figcaption{font-size:16px}
.faq-list summary{font-size:20px;line-height:1.5}
.site-footer p,.site-footer a,.site-footer h3,.footer-bottom,.footer-badge{font-size:16px;line-height:1.7}
.form-field label,.form-field input,.form-field select,.form-field textarea{font-size:18px}
.section{padding-block:88px}
@media(min-width:1280px){.container{max-width:1320px}.hero-grid{gap:64px}.course-card{padding:38px}.section h2{font-size:46px;line-height:1.18}.site-header nav{gap:24px}}
@media(max-width:700px){body{font-size:18px}.hero-intro,.lead{font-size:19px}.section p,.course-card p,.audience-grid p,.process-grid p,.training-story-caption p,.faq-list p,.note-card p,.booking-note p,.payment-panel p:last-child{font-size:18px}.section{padding-block:56px}.hero-training-caption strong{font-size:18px}.hero-training-caption span{font-size:16px}.site-header nav>a,.button{font-size:16px}.footer-email{overflow-wrap:anywhere}.course-card,.audience-grid>article{min-width:0}}

/* Equipment photographs replace the old flyer/photo layouts. */
.training-photo--class>img,.training-photo--practice>img{width:100%;height:100%;max-width:100%;left:0;top:0;object-fit:cover;object-position:center}
.instructor-profile-photo{aspect-ratio:1;object-fit:cover;object-position:center}

/* Complete the larger type scale on course, booking and contact pages. */
.page-hero p{font-size:21px;line-height:1.7;max-width:800px}
.section .eyebrow,.hero .eyebrow,.contact-cta .eyebrow,.page-hero .eyebrow{font-size:14px!important;line-height:1.6!important}
.catalog-row>span,.price-table th,.price-table td,.booking-flow,.choice-card span,.booking-card .small,.heartcode-panel>p:not(.eyebrow),.heartcode-price{font-size:18px!important;line-height:1.65}
.section .inline-link,.form-help,.form-notice,.contact-details strong,.contact-details small{font-size:17px;line-height:1.65}
.contact-details strong,.footer-email{overflow-wrap:anywhere}
.form-layout>* , .detail-layout>* , .instructor-layout>*{min-width:0}
.instructor-profile>img.equipment-profile-photo{object-position:center}
@media(max-width:700px){.page-hero p{font-size:19px}.catalog-row>span,.price-table th,.price-table td,.booking-flow,.choice-card span,.booking-card .small,.heartcode-panel>p:not(.eyebrow),.heartcode-price{font-size:16px!important}.contact-details strong{font-size:16px}.section .eyebrow,.hero .eyebrow,.page-hero .eyebrow{font-size:13px!important}}
/* Match legacy selectors that otherwise kept essential instructions too small. */
.page-hero .container>p:not(.eyebrow){font-size:21px;line-height:1.7}
.inquiry-form .form-help{font-size:16px!important;line-height:1.7!important}
.booking-flow>span{font-size:16px;line-height:1.6}
.site-footer .footer-grid>div>a:not(.footer-brand),.site-footer .footer-grid>div>p{font-size:16px;line-height:1.8}
.site-footer .footer-brand{font-size:30px}
@media(max-width:700px){.page-hero .container>p:not(.eyebrow){font-size:19px}.booking-flow{display:grid;grid-template-columns:1fr;gap:12px}.booking-flow>span{font-size:15px;padding-top:12px}.site-footer .footer-grid>div>a:not(.footer-brand),.site-footer .footer-grid>div>p{font-size:14px}}
