/* Standalone public landing page: polished EMS educator experience. */
body.demo-public-page{background:#f7f9fb;color:#142739;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.demo-public-page *{box-sizing:border-box}
.demo-site-header{position:relative;z-index:10;background:#fff;border-bottom:1px solid #e4ebef}
.demo-site-nav{max-width:1240px;margin:auto;padding:0 28px;min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.demo-site-logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:#122b3f;font-size:1.16rem;font-weight:850;letter-spacing:-.025em}
.demo-site-logo-mark{width:38px;height:38px;border-radius:11px;background:#0d3049;color:#7fe3da;display:grid;place-items:center;font-size:27px;line-height:1;font-weight:750}
.demo-site-logo small{display:block;font-size:.72rem;letter-spacing:.14em;color:#647887;font-weight:750;margin-top:2px}
.demo-site-links{display:flex;align-items:center;gap:25px}
.demo-site-links a{color:#334a5b;font-size:.89rem;font-weight:700;text-decoration:none}
.demo-site-links a:hover{text-decoration:underline}
.demo-site-links a.demo-nav-cta{padding:11px 16px;border-radius:9px;background:#0d5c66;color:white}
.demo-public-page .free-demo{padding:0;background:transparent;border:0}
.demo-public-page .free-demo-wrap{max-width:1240px;padding:0 28px}
.demo-public-page .free-demo-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:55px;align-items:center;padding:72px 0 75px}
.demo-public-page .free-demo-head h1{font-size:clamp(2.8rem,5vw,4.9rem);line-height:1.04;letter-spacing:-.035em;max-width:720px;margin:16px 0 20px;color:#102b40}
.demo-public-page .free-demo-head .demo-hero-lead{font-size:1.13rem;line-height:1.7;color:#435a6c;max-width:610px;margin:0 0 22px}
.demo-public-page .eyebrow{color:#087b79;font-weight:850;letter-spacing:.15em;font-size:.76rem}
.demo-public-page .free-demo-head .demo-quickstart{margin:0;color:#516574;font-size:.91rem;line-height:1.65}
.demo-public-page .free-demo-proof{margin:23px 0 0;gap:10px}
.demo-public-page .free-demo-proof span{border:0;background:#e7f2f1;color:#225e63;padding:8px 12px;font-size:.78rem}
.demo-public-page .free-demo-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;margin-top:25px}
.demo-public-page .free-demo-actions .btn{flex:0 0 auto;white-space:normal;text-align:center}
.demo-public-page .btn{background:#086a72;border-radius:10px;padding:13px 19px;box-shadow:none;transition:transform .15s,background .15s}
.demo-public-page .btn:hover{background:#07535b;transform:translateY(-1px)}
.demo-public-page .btn.secondary{background:#fff;color:#16435a;border:1px solid #c8d8df}
.demo-public-page .btn.secondary:hover{background:#eff6f7}
.demo-public-page .free-demo-actions small{flex-basis:100%;font-size:.79rem;color:#60717c;max-width:650px}
.demo-public-page .free-demo-status{flex-basis:100%;font-size:.83rem;color:#365b62}
.demo-hero-visual{position:relative;padding:28px 0 25px 22px}
.demo-hero-visual:before{content:"";position:absolute;inset:3% 0 0 10%;border-radius:34px;background:linear-gradient(145deg,#d8f2ec,#dceaf3);transform:rotate(3deg)}
.demo-preview-window{position:relative;z-index:1;background:#fff;border:1px solid #d8e3e8;border-radius:18px;box-shadow:0 25px 65px rgba(20,54,76,.16);overflow:hidden}
.demo-preview-top{padding:15px 20px;border-bottom:1px solid #e5ecef;display:flex;align-items:center;justify-content:space-between;color:#486270;font-size:.74rem;font-weight:800;letter-spacing:.08em}
.demo-preview-top span:last-child{color:#087a71}
.demo-preview-body{padding:28px}
.demo-preview-label{color:#0a7973;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:850}
.demo-preview-body h2{font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.13;letter-spacing:-.035em;margin:10px 0 8px}
.demo-preview-body>p{font-size:.92rem;line-height:1.55;color:#526779;margin:0 0 20px}
.demo-preview-vitals{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.demo-preview-vitals div{padding:14px 8px;background:#f0f6f7;border-radius:10px;text-align:center}
.demo-preview-vitals strong{display:block;font-size:1.25rem;color:#173e51}
.demo-preview-vitals small{display:block;font-size:.75rem;font-weight:750;color:#4b6474;text-transform:uppercase;letter-spacing:.07em}
.demo-preview-note{margin-top:16px;background:#e7f5f0;border-left:1px solid #1b9b89;border-radius:6px;padding:12px 14px;font-size:.83rem;color:#27535a;line-height:1.5}
.demo-preview-foot{padding:13px 20px;background:#102d43;color:#fff;display:flex;justify-content:space-between;gap:10px;font-size:.75rem;font-weight:750}
.demo-trust-strip{background:#103149;color:#d8e7ee}
.demo-trust-strip-inner{max-width:1240px;margin:auto;padding:19px 28px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.demo-trust-strip strong{color:#fff;font-size:.92rem}
.demo-trust-strip span{font-size:.82rem}
.demo-public-page .demo-choose{margin:0;padding:70px 0 40px}
.demo-public-page .demo-choose h2{font-size:clamp(2rem,3.5vw,3rem);max-width:750px;line-height:1.1;margin:12px 0}
.demo-public-page .demo-choose>p{color:#526779}
.demo-public-page .demo-case-grid{gap:13px;margin-top:28px}
.demo-public-page .demo-case-grid button{min-height:170px;padding:21px 17px;border:1px solid #dbe5e9;border-radius:13px;box-shadow:0 4px 18px rgba(22,48,64,.04);transition:transform .16s,box-shadow .16s,border-color .16s}
.demo-public-page .demo-case-grid button:before{content:"0" attr(data-demo-case);font-size:1.4rem;color:#8aa5b0;font-weight:800;letter-spacing:-.04em;margin-bottom:4px}
.demo-public-page .demo-case-grid button:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(22,48,64,.1)}
.demo-public-page .demo-case-grid button.is-selected{background:#eaf7f4;border-color:#148f82}
.demo-public-page .free-demo-output{margin-top:10px;scroll-margin-top:25px}
.demo-public-page .free-demo-card{border-radius:16px;padding:34px;border-color:#d9e5e9;box-shadow:0 15px 35px rgba(18,50,68,.07)}
.demo-public-page .free-demo-card h3{font-size:1.65rem}
.demo-public-page .free-demo-card dl{grid-template-columns:190px 1fr}
.demo-public-page .demo-runsheet{background:#f6faf9;border-radius:13px;padding:25px;margin-top:30px;border:1px solid #d7e8e5}
.demo-public-page .demo-after-example{background:#e9f4f3;border:0;padding:28px}
.demo-public-page .free-demo-value{margin:0;padding:75px 0 70px}
.demo-public-page .free-demo-value h2{font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.1;max-width:650px}
.demo-public-page .free-demo-value>p{color:#526779;max-width:800px;line-height:1.7}
.demo-public-page .free-demo-value-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}
.demo-public-page .free-demo-value-grid article{padding:24px 20px;border-color:#dce6e9}
.demo-public-page .free-demo-value-grid article b{font-size:1.06rem}
.demo-public-page .free-demo-value-grid article span{font-size:.88rem;color:#526779}
.demo-public-page .free-demo-bottom-cta{background:#103149;color:#fff;padding:30px;border-radius:16px}
.demo-public-page .free-demo-bottom-cta span{color:#d5e3e9}
.demo-public-page .demo-review-note{margin:0;padding:0 0 55px;color:#566c7a}
.demo-site-footer{background:#0e293c;color:#d6e3e9;padding:38px 0}
.demo-site-footer-inner{max-width:1240px;margin:auto;padding:0 28px;display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap}
.demo-site-footer a{color:#d6e3e9;text-decoration:none}
.demo-site-footer a:hover{text-decoration:underline}
.demo-site-footer-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:.85rem}
.demo-site-footer small{color:#b3c6d1;font-size:.77rem;display:block;margin-top:8px}
@media(max-width:960px){.demo-public-page .free-demo-head{grid-template-columns:1fr;gap:16px;padding:50px 0}.demo-hero-visual{max-width:650px;margin:auto;width:100%}.demo-public-page .demo-case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-public-page .free-demo-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.demo-site-nav{min-height:68px;padding:12px 18px}.demo-site-links{gap:12px}.demo-site-links a:not(.demo-nav-cta){display:none}.demo-site-links a.demo-nav-cta{padding:10px;font-size:.8rem}.demo-public-page .free-demo-wrap{padding:0 19px}.demo-public-page .free-demo-head{padding:42px 0 45px}.demo-public-page .free-demo-head h1{font-size:clamp(2.5rem,10vw,3.7rem)}.demo-public-page .free-demo-actions{flex-direction:column;align-items:stretch}.demo-public-page .free-demo-actions .btn{width:100%}.demo-hero-visual{padding:15px 0 10px 7px}.demo-preview-body{padding:19px}.demo-preview-vitals strong{font-size:1rem}.demo-preview-foot{font-size:.75rem}.demo-trust-strip-inner{padding:18px 19px;gap:10px}.demo-public-page .demo-choose{padding:48px 0 25px}.demo-public-page .demo-case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.demo-public-page .demo-case-grid button{min-height:148px;padding:15px 12px}.demo-public-page .free-demo-card{padding:20px}.demo-public-page .free-demo-card dl{grid-template-columns:1fr;gap:6px}.demo-public-page .free-demo-card dd{margin:0 0 10px}.demo-public-page .demo-runsheet{padding:17px}.demo-public-page .free-demo-value{padding:50px 0}.demo-public-page .free-demo-value-grid{grid-template-columns:1fr}.demo-public-page .free-demo-bottom-cta{padding:22px}.demo-site-footer-inner{padding:0 19px}}
@media print{.demo-site-header,.demo-trust-strip,.demo-site-footer,.demo-hero-visual{display:none!important}.demo-public-page .free-demo-card{box-shadow:none;border:0;padding:0}.demo-public-page .demo-runsheet{background:white;border:0;padding:0}.demo-public-page .free-demo-output{margin:0}}


/* Direct sample use and optional colleague sharing. */
.demo-share-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0 0}.demo-share-actions span{font-size:.9rem;color:#365b62;overflow-wrap:anywhere}.demo-next-case{margin-top:18px}.demo-public-page .btn:focus-visible{outline:3px solid #247a82;outline-offset:3px}.demo-public-page #teaching-sample{scroll-margin-top:25px}
@media(prefers-reduced-motion:reduce){.demo-public-page .btn,.demo-public-page .demo-case-grid button{transition:none}.demo-public-page .btn:hover,.demo-public-page .demo-case-grid button:hover{transform:none}}
@media print{.demo-share-actions,.demo-next-case{display:none!important}}
/* Phones: the logo text may wrap, but the free-account CTA never leaves the screen (any font). */
@media(max-width:650px){.demo-site-nav{gap:10px}.demo-site-logo{min-width:0;flex:0 1 auto}.demo-site-logo>span:last-child{min-width:0}.demo-site-links{flex:0 0 auto}.demo-site-links a.demo-nav-cta{white-space:nowrap}}
/* Smallest phones (iPhone SE, 320px): keep the free-account CTA inside the screen. */
@media(max-width:380px){.demo-site-nav{padding:10px 12px;gap:8px}.demo-site-logo{gap:8px;font-size:1rem}.demo-site-logo-mark{width:32px;height:32px;font-size:22px}.demo-site-logo small{display:none}.demo-site-links a.demo-nav-cta{padding:9px 10px;font-size:.78rem;white-space:nowrap}}
