:root{
  --navy:#071b3f; --deep:#020d22; --blue:#0057ff; --blue2:#0b6bff; --sky:#dff0ff; --white:#fff; --ink:#07152f; --muted:#526174; --line:#dce6f5; --gold:#f8b63c; --red:#e53e3e;
}
.presenter-launch{position:fixed;right:16px;top:16px;z-index:1000;display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid rgba(199,221,244,.55);border-radius:12px;background:rgba(3,27,61,.94);box-shadow:0 12px 35px rgba(3,27,61,.3);color:#fff;font-size:12px}.presenter-launch a{padding:8px 10px;border-radius:8px;background:#0b5cff;color:#fff;text-decoration:none;font-weight:800}.presenter-launch a:last-child{background:#fff;color:#031b3d}@media(max-width:900px){.presenter-launch strong{display:none}}@media print{.presenter-launch{display:none}}
*,*::before,*::after{box-sizing:border-box}
html{width:100%;-webkit-text-size-adjust:100%}
html,body{height:100%;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#eef5ff;overflow:hidden}
body{overflow-wrap:break-word}
img,picture,video,canvas,svg{max-width:100%;display:block}
img,video{height:auto}
input,button,textarea,select{max-width:100%;font:inherit}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.app-shell{display:grid;grid-template-columns:300px 1fr;height:100vh;height:100dvh}.sidebar{background:linear-gradient(180deg,var(--deep),var(--navy));color:#fff;padding:24px 18px;display:flex;flex-direction:column;gap:18px;box-shadow:8px 0 30px rgba(2,13,34,.18);z-index:5}.brand-lockup{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.16)}.brand-lockup img{width:58px;height:58px;border-radius:50%;background:#fff;object-fit:cover}.brand-lockup strong{display:block;text-transform:uppercase;font-weight:900;letter-spacing:.01em}.brand-lockup span{font-size:12px;color:#b8d6ff}.sidebar nav{display:flex;flex-direction:column;gap:6px;overflow:auto;padding-right:4px}.sidebar button{border:0;background:transparent;color:#b8d6ff;text-align:left;border-radius:12px;padding:10px 12px;font-weight:700;cursor:pointer}.sidebar button.active,.sidebar button:hover{background:linear-gradient(90deg,var(--blue),#003ba6);color:#fff}.sidebar-footer{margin-top:auto;color:#9abce9;font-size:12px;border-top:1px solid rgba(255,255,255,.14);padding-top:18px}.deck{position:relative;overflow:hidden}.slide{position:absolute;inset:0;display:none;padding:clamp(28px,4vw,56px) clamp(20px,6vw,72px) clamp(56px,8vw,92px);overflow:hidden;background:#f7fbff}.slide.active{display:grid;animation:fade .35s ease}.pattern-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(1,13,34,.72),rgba(0,67,161,.55)),url('assets/cmf-pattern.png');background-size:cover;background-position:center;z-index:0}.pattern-bg.soft{opacity:.11;background-image:url('assets/cmf-pattern.png')}.pattern-bg.strong{opacity:1;background-image:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.78)),url('assets/cmf-pattern.png')}.slide>*:not(.pattern-bg){position:relative;z-index:1}.cover{align-items:center}.hero-visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.glass{border:1px solid rgba(255,255,255,.45);box-shadow:0 30px 90px rgba(3,21,52,.22);backdrop-filter:blur(14px)}.glass.dark{background:linear-gradient(135deg,rgba(2,13,34,.86),rgba(0,56,151,.54));color:#fff;border-color:rgba(255,255,255,.22)}.glass.light{background:rgba(255,255,255,.82)}.cover-content{max-width:750px;padding:clamp(22px,4vw,44px);border-radius:34px;margin-left:clamp(0px,3vw,24px)}.cover-logo,.closing-panel img{width:clamp(72px,14vw,110px);height:clamp(72px,14vw,110px);border-radius:50%;background:#fff;margin-bottom:22px;object-fit:cover}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:900;font-size:14px;margin:0 0 12px}.dark .eyebrow{color:#8cc6ff}h1,h2,h3,p{margin-top:0;overflow-wrap:anywhere}h1{font-size:clamp(2rem,5.5vw,4.5rem);line-height:.98;letter-spacing:-.05em;margin-bottom:22px;font-weight:900}h2{font-size:clamp(1.6rem,4vw,3.25rem);line-height:1.05;letter-spacing:-.045em;margin-bottom:20px;font-weight:900}h3{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.2}.theme,.lead{font-size:clamp(1.05rem,2.2vw,1.5625rem);line-height:1.45;color:inherit;opacity:.92}.motto-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.motto-row span,.pill-grid span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);font-weight:800}.split{grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}.split.reverse{grid-template-columns:.95fr 1.05fr}.split.reverse .content{order:2}.content{max-width:760px}.content p:not(.eyebrow){font-size:clamp(.95rem,1.6vw,1.25rem);line-height:1.65;color:#29405e}.image-stack{position:relative;height:clamp(280px,54vh,640px)}.image-stack img{position:absolute;border-radius:28px;box-shadow:0 30px 70px rgba(7,27,63,.22);object-fit:cover}.image-stack img:first-child{width:82%;height:68%;right:0;top:0}.image-stack img:last-child{width:62%;height:53%;left:0;bottom:0;border:8px solid #fff}.pill-grid{display:flex;gap:12px;flex-wrap:wrap}.pill-grid span{background:#fff;border:1px solid var(--line);color:var(--navy)}.center-wrap{max-width:1100px;margin:auto;text-align:center}.stat-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin:46px 0}.stat-band div,.benefit-grid div{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 15px 35px rgba(7,27,63,.08)}.stat-band strong{font-size:clamp(1.15rem,2.2vw,1.5625rem)}.stat-band span{display:block;color:var(--blue);font-weight:800;margin-top:8px}.quote{font-family:Playfair Display,serif;font-size:clamp(1.4rem,3.5vw,2.25rem)!important;line-height:1.25!important;color:var(--navy)!important}.checklist{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px;font-size:clamp(.95rem,1.4vw,1.1875rem);line-height:1.35}.checklist.two-col{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.checklist li{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px 16px 48px;font-weight:700;box-shadow:0 12px 30px rgba(7,27,63,.06)}.checklist li:before{content:'✓';position:absolute;left:18px;top:15px;color:var(--blue);font-weight:900}.checklist.red li:before{content:'!';color:#fff;background:var(--red);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;top:16px}.feature-card,.dark-card,.browser-frame,.emblem-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:0 30px 70px rgba(7,27,63,.12)}.dark-card{background:var(--navy);color:#fff}.feature-card img,.dark-card img{border-radius:20px;width:100%;height:clamp(220px,40vh,430px);object-fit:cover}.browser-frame img{border-radius:18px;box-shadow:inset 0 0 0 1px var(--line);width:100%;height:clamp(240px,58vh,650px);object-fit:contain;background:#fff}.wide-showcase{display:grid;grid-template-columns:minmax(280px,410px) 1fr;gap:36px;align-items:center}.wide-showcase img{width:100%;max-height:min(700px,62vh);object-fit:contain;border-radius:28px;box-shadow:0 30px 70px rgba(7,27,63,.16);background:#fff}.wide-showcase p{font-size:clamp(.95rem,1.6vw,1.25rem);line-height:1.55;color:#29405e}.topline{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px;flex-wrap:wrap}.topline h2{max-width:900px}.page-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.page-grid article{background:#fff;border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:0 16px 40px rgba(7,27,63,.09)}.page-grid img{height:clamp(200px,34vh,380px);width:100%;object-fit:cover;object-position:top;border-radius:17px}.page-grid p{font-size:15px;color:#526174;line-height:1.45}.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:28px}.timeline div{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}.timeline b{font-size:clamp(1.4rem,3vw,2rem);color:var(--blue);display:block}.timeline span{font-weight:700}.emblem-card{text-align:center;justify-self:center;background:rgba(255,255,255,.9);padding:clamp(20px,5vw,40px)}.emblem-card img{width:clamp(160px,30vw,320px);height:clamp(160px,30vw,320px);object-fit:contain;border-radius:50%;margin:auto}.emblem-card p{font-family:Playfair Display,serif;font-size:clamp(1.3rem,3vw,1.875rem);font-weight:800;margin:22px 0 0}.photo-mosaic{display:grid;grid-template-columns:1.1fr .9fr 1fr;grid-auto-rows:clamp(150px,24vh,210px);gap:18px}.photo-mosaic img{width:100%;height:100%;object-fit:cover;border-radius:22px;box-shadow:0 16px 40px rgba(7,27,63,.12)}.photo-mosaic img:nth-child(1){grid-row:span 2}.photo-mosaic img:nth-child(4){grid-column:span 2}.double-screens{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;align-items:center}.double-screens img{height:clamp(220px,52vh,650px);width:100%;object-fit:contain;object-position:top;background:#fff;border-radius:22px;box-shadow:0 18px 45px rgba(7,27,63,.12)}.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:34px}.benefit-grid div{font-weight:900;font-size:clamp(.95rem,1.8vw,1.25rem);color:var(--navy)}.closing{place-items:center;text-align:center}.closing-panel{max-width:1000px;padding:clamp(24px,5vw,50px);border-radius:38px}.closing-panel img{margin-left:auto;margin-right:auto}.closing-panel h2{font-size:clamp(2rem,6vw,3.875rem)}.closing-panel p{font-size:clamp(1rem,2vw,1.4375rem);line-height:1.55}.controls{position:fixed;left:300px;right:0;bottom:0;height:62px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px;padding:8px 14px;border-top:1px solid var(--line);z-index:10;overflow-x:auto}.controls button{flex:0 0 auto;white-space:nowrap;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:900;border-radius:12px;padding:10px 16px;min-height:44px;cursor:pointer}.controls span{flex:0 0 auto}.controls button:hover{background:var(--blue);color:#fff}.controls span{font-weight:900;color:var(--muted)}@keyframes fade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.membership-showcase{grid-template-rows:auto 1fr;gap:8px;padding-top:34px}.membership-showcase .topline{align-items:center;margin-bottom:8px}.membership-showcase .topline h2{font-size:clamp(1.5rem,4vw,2.375rem);margin-bottom:0}.membership-showcase .topline .eyebrow{margin-bottom:8px}.slide-summary{max-width:520px;margin:0;color:#29405e;font-size:clamp(.95rem,1.5vw,1.0625rem);line-height:1.45}.membership-screen{min-height:0;padding:12px}.membership-screen img{height:clamp(260px,55vh,520px);object-fit:contain;object-position:center top}
/* Nav toggle (hamburger) for the slide list: visible only below the
   collapse breakpoint, where the sidebar's slide list is off-canvas. */
.nav-toggle{display:none;width:100%;align-items:center;justify-content:center;gap:8px;padding:11px 12px;margin-top:2px;min-height:44px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.06);color:#fff;font-weight:800;font-size:13px;cursor:pointer}
.nav-toggle-bars,.nav-toggle-bars::before,.nav-toggle-bars::after{display:block;width:18px;height:2px;background:currentColor;border-radius:2px}
.nav-toggle-bars{position:relative}
.nav-toggle-bars::before,.nav-toggle-bars::after{content:'';position:absolute;left:0}
.nav-toggle-bars::before{top:-6px}
.nav-toggle-bars::after{top:6px}

@media(max-width:1100px){
  body{overflow:auto}
  .app-shell{display:block}
  .sidebar{position:sticky;top:0;max-height:45vh;overflow-y:auto}
  .deck{height:auto}
  .slide{position:relative;min-height:100vh;min-height:100dvh;padding:clamp(28px,7vw,40px) clamp(16px,5vw,22px) 90px}
  .slide:not(.active){display:none}
  .split,.split.reverse,.wide-showcase,.double-screens{grid-template-columns:1fr}
  .controls{left:0}
  .photo-mosaic{grid-template-columns:1fr;grid-auto-rows:clamp(180px,58vw,240px)}
  .photo-mosaic img:nth-child(n){grid-column:auto;grid-row:auto}
  .membership-showcase .topline{display:block}
  .slide-summary{margin-top:14px}
  .membership-screen img{height:auto;min-height:0}
  .nav-toggle{display:flex}
  .sidebar nav{display:none;max-height:50vh;margin-top:8px}
  .sidebar.nav-open nav{display:flex}
}

@media(max-width:560px){
  .stat-band,.benefit-grid,.checklist.two-col,.timeline,.double-screens{grid-template-columns:1fr}
  /* justify-content:flex-start so the (rarely needed, see below)
     overflow-x:auto fallback scrolls correctly if it ever triggers. */
  .controls{gap:6px;padding:8px 10px;justify-content:flex-start}
  .controls button{padding:9px 10px;font-size:13px}
  /* Compact glyphs instead of full labels so every control fits on one
     row without needing to scroll. aria-label (set in HTML/review.js)
     keeps the real, full label for assistive tech regardless of what's
     shown visually here. */
  #prevBtn,#nextBtn,#printBtn,#reviewModeBtn,#reviewDashboardBtn{font-size:0}
  #prevBtn::before{content:'‹';font-size:20px}
  #nextBtn::before{content:'›';font-size:20px}
  #printBtn::before{content:'Print';font-size:13px}
  #reviewModeBtn::before{content:'Review';font-size:13px}
  body.review-mode #reviewModeBtn::before{content:'Exit'}
  #reviewDashboardBtn::before{content:'Dashboard';font-size:13px}
}
@media print{html,body{overflow:visible;background:#fff}.sidebar,.controls{display:none}.app-shell{display:block}.deck{overflow:visible}.slide{position:relative;display:grid!important;width:100vw;height:100vh;page-break-after:always;padding:42px}.slide.active{animation:none}@page{size:16in 9in;margin:0}}
