/* Briefing deck: Google Workspace / Education look. Palette and four-colour motif match the programme site (ges-single/shared/theme.css). */
:root{--blue:#4285f4;--red:#ea4335;--yellow:#fbbc04;--green:#34a853;--blue-d:#1967d2;--red-d:#b3261e;--yellow-d:#8a5700;--green-d:#137333;
--ink:#202124;--dim:#5f6368;--line:#dadce0;--bg:#fff;--card:#fff;--soft:#f1f3f4;--tint:#e8f0fe;
--bar:linear-gradient(90deg,#4285f4 0 25%,#ea4335 25% 50%,#fbbc04 50% 75%,#34a853 75%);
--e1:0 1px 2px rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);--e2:0 1px 2px rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);--e3:0 4px 8px 3px rgba(60,64,67,.15),0 1px 3px rgba(60,64,67,.3)}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{display:flex;flex-direction:column;background:#10131a;color:var(--ink);font-family:"Google Sans",Roboto,"Segoe UI",system-ui,sans-serif}
.ms{display:inline-flex;align-items:center;justify-content:center;line-height:0}
.svgi{width:1em;height:1em;fill:currentColor;display:block;flex:none}
.frame{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.stage{position:relative;width:1280px;height:720px;flex:none;transform-origin:center center;background:var(--bg);overflow:hidden;border-radius:6px}
.stage::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--bar);z-index:5}

/* section colour: --acc (bright), --accd (text), --acct (tint) */
.slide{--acc:var(--blue);--accd:var(--blue-d);--acct:#e8f0fe;position:absolute;inset:0 0 178px 0;padding:44px 290px 0 64px;display:flex;flex-direction:column;isolation:isolate}
.slide[data-sec=prog]{--acc:var(--red);--accd:var(--red-d);--acct:#fce8e6}
.slide[data-sec=journey]{--acc:var(--yellow);--accd:var(--yellow-d);--acct:#fef7e0}
.slide[data-sec=cert]{--acc:var(--green);--accd:var(--green-d);--acct:#e6f4ea}
.slide[data-sec=rec]{--acc:var(--blue);--accd:var(--blue-d);--acct:#e8f0fe}
.slide[data-sec=priv]{--acc:var(--red);--accd:var(--red-d);--acct:#fce8e6}
.slide[data-sec=next]{--acc:var(--green);--accd:var(--green-d);--acct:#e6f4ea}
.slide.enter{animation:rise .45s ease both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* soft corner shape and dots, the programme site's motif */
.slide:not(.hero)::before{content:"";position:absolute;z-index:-1;right:-150px;top:-150px;width:420px;height:420px;border-radius:50%;background:var(--acct)}
.slide:not(.hero)::after{content:"";position:absolute;z-index:-1;right:70px;top:34px;width:12px;height:12px;border-radius:50%;background:var(--blue);box-shadow:22px 0 0 var(--red),44px 0 0 var(--yellow),66px 0 0 var(--green)}

.kicker{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accd);background:var(--acct);border-radius:99px;padding:6px 14px 6px 10px}
.kicker::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--acc)}
h1,h2,h3{font-weight:500}
h1,h2{margin:8px 0 0;line-height:1.1;letter-spacing:-.02em}
h1{font-size:66px}
h2{font-size:42px;color:var(--ink)}
.lede{margin:14px 0 0;font-size:23px;line-height:1.4;color:var(--dim);max-width:900px}
.body{flex:1;min-height:0;display:flex;gap:28px;align-items:center;margin-top:14px}
.body.top{align-items:flex-start}
.col{flex:1;min-width:0}
.cards{display:flex;gap:20px;width:100%}
.cards.wrap{flex-wrap:wrap}
.card{flex:1;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px 26px;box-shadow:var(--e1);position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--acc)}
.card.c-red::before{background:var(--red)}.card.c-yellow::before{background:var(--yellow)}.card.c-green::before{background:var(--green)}
.card h3{margin:0 0 6px;font-size:25px;line-height:1.2}
.card p{margin:0;font-size:19px;line-height:1.4;color:var(--dim)}
.cards .card{min-height:190px}
.card .n{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--acc);color:#fff;font-weight:600;font-size:21px;margin-bottom:12px}
.card.c-red .n,.card.c-red .ico{background:var(--red)}.card.c-yellow .n,.card.c-yellow .ico{background:var(--yellow);color:#3c2e00}.card.c-green .n,.card.c-green .ico{background:var(--green)}
.ico,.ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--acct);color:var(--accd);font-size:30px;margin-bottom:10px}
.ico{background:var(--acc);color:#fff}
.shot{flex:1.55;min-width:0;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--e3);background:#fff;line-height:0}
.shot.narrow{flex:none;width:430px}
.shot img{width:100%;height:auto;max-height:372px;object-fit:cover;object-position:top;display:block}
.list{margin:0;padding:0;list-style:none;font-size:23px;line-height:1.35}
.list li{display:flex;gap:12px;margin:0 0 16px;align-items:flex-start}
.list li::before{content:"";flex:none;width:28px;height:28px;margin-top:3px;background:var(--acc);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='m421-389-98-98q-9-9-22-9t-23 10q-9 9-9 22t9 22l122 123q9 9 21 9t21-9l239-239q10-10 10-23t-10-23q-10-9-23.5-8.5T635-603L421-389Zm59 309q-82 0-155-31.5t-127.5-86Q143-252 111.5-325T80-480q0-83 31.5-156t86-127Q252-817 325-848.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 82-31.5 155T763-197.5q-54 54.5-127 86T480-80Zm0-60q142 0 241-99.5T820-480q0-142-99-241t-241-99q-141 0-240.5 99T140-480q0 141 99.5 240.5T480-140Zm0-340Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='m421-389-98-98q-9-9-22-9t-23 10q-9 9-9 22t9 22l122 123q9 9 21 9t21-9l239-239q10-10 10-23t-10-23q-10-9-23.5-8.5T635-603L421-389Zm59 309q-82 0-155-31.5t-127.5-86Q143-252 111.5-325T80-480q0-83 31.5-156t86-127Q252-817 325-848.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 82-31.5 155T763-197.5q-54 54.5-127 86T480-80Zm0-60q142 0 241-99.5T820-480q0-142-99-241t-241-99q-141 0-240.5 99T140-480q0 141 99.5 240.5T480-140Zm0-340Z'/%3E%3C/svg%3E") center/contain no-repeat}

/* hero slides */
.hero{--acc:var(--blue)}
.hero.title-slide{padding-right:520px;justify-content:center;background:#fff}
.hero.title-slide::before{content:"";position:absolute;z-index:-1;right:-170px;top:-120px;width:640px;height:640px;border-radius:50%;background:var(--blue)}
.hero.title-slide::after{content:"";position:absolute;z-index:-1;right:230px;top:300px;width:300px;height:300px;border-radius:50%;background:var(--yellow);box-shadow:-120px -240px 0 -70px var(--red),170px 190px 0 -40px var(--green)}
.hero.title-slide .kicker{background:var(--tint);color:var(--blue-d)}
.hero.title-slide h1{color:var(--ink)}
.hero.title-slide h1 .g1{color:var(--blue)}
.chips{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:8px;border-radius:99px;padding:10px 20px 10px 14px;font-size:22px;font-weight:500;color:#fff;box-shadow:var(--e1)}
.chip .ms{font-size:26px}
.chip.b{background:var(--blue)}.chip.r{background:var(--red)}.chip.g{background:var(--green)}
.logos{display:flex;gap:24px;align-items:center;margin-top:30px}
.logos img{height:62px;width:auto;background:#fff;border-radius:16px;padding:8px 14px;box-shadow:var(--e2)}
.hero.thanks{background:linear-gradient(135deg,#4285f4,#1967d2);color:#fff;padding-right:520px;justify-content:center}
.hero.thanks::before{content:"";position:absolute;z-index:-1;left:-90px;bottom:-130px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.1)}
.hero.thanks::after{content:"";position:absolute;z-index:-1;right:70px;top:34px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:22px 0 0 #fce8e6,44px 0 0 var(--yellow),66px 0 0 #a8dab5}
.hero.thanks .kicker{background:rgba(255,255,255,.18);color:#fff}.hero.thanks .kicker::before{background:var(--yellow)}
.hero.thanks h1{color:#fff}
.hero.thanks .lede{color:#d2e3fc}
.hero.thanks .contact{color:#fff}
.contact{font-size:30px;font-weight:500;color:var(--blue-d);margin-top:18px}

.strip{display:flex;align-items:stretch;gap:0;width:100%}
.strip .step{flex:1;background:var(--card);border:1px solid var(--line);padding:22px 20px;position:relative;font-size:20px;font-weight:500}
.strip .step:first-child{border-radius:18px 0 0 18px}.strip .step:last-child{border-radius:0 18px 18px 0}
.strip .step b{display:block;font-size:34px;color:var(--acc);margin-bottom:6px}
.strip .step span{display:block;margin-top:6px;font-size:16px;font-weight:400;color:var(--dim)}
.agenda{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%}
.agenda .card{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center;min-height:118px;padding:16px 20px}
.agenda .card .ic{grid-row:1/3;margin:0}
.agenda .card:nth-child(4n+1) .ic{background:#e8f0fe;color:var(--blue-d)}.agenda .card:nth-child(4n+2) .ic{background:#fce8e6;color:var(--red-d)}
.agenda .card:nth-child(4n+3) .ic{background:#fef7e0;color:var(--yellow-d)}.agenda .card:nth-child(4n) .ic{background:#e6f4ea;color:var(--green-d)}
.agenda .t{font-size:16px;font-weight:600;color:var(--accd)}
.agenda h3{font-size:23px;margin:2px 0 0}
.path{display:flex;align-items:center;gap:18px;width:100%}
.path .core{flex:none;width:260px;background:var(--blue);color:#fff;border-radius:22px;padding:38px 26px;font-size:32px;font-weight:500;line-height:1.2;box-shadow:var(--e3)}
.path .core small{display:block;font-size:17px;font-weight:400;margin-top:8px;color:#d2e3fc}
.arrow{font-size:40px;color:var(--dim);flex:none}
.four{display:grid;grid-template-columns:1fr 1fr;gap:14px;flex:1}
.four .card{min-height:118px;padding:18px 20px}.four .card h3{font-size:22px;margin:0}
.four .card:nth-child(1)::before{background:var(--blue)}.four .card:nth-child(2)::before{background:var(--red)}.four .card:nth-child(3)::before{background:var(--yellow)}.four .card:nth-child(4)::before{background:var(--green)}
.slide .big{font-size:60px;font-weight:500;line-height:1.1;letter-spacing:-.02em}
.slide .big em{font-style:normal;color:var(--acc)}
.slide .big span{display:block}.slide .big span:nth-child(1){color:var(--blue)}.slide .big span:nth-child(2){color:var(--red)}.slide .big span:nth-child(3){color:var(--green)}
.eq{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.eq .box{background:var(--card);border:1px solid var(--line);box-shadow:var(--e2);border-radius:20px;padding:22px 28px;font-size:26px;font-weight:500}
.eq .box.out{background:var(--green);border-color:var(--green);color:#fff}
.eq .op{font-size:38px;color:var(--dim);font-weight:500}
.mail,.verify{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 26px;box-shadow:var(--e3);width:100%}
.mail .row{display:flex;gap:10px;font-size:17px;padding:6px 0;border-bottom:1px solid var(--line)}
.mail .row b{width:70px;color:var(--dim);font-weight:500}
.pdf{display:inline-flex;gap:10px;align-items:center;margin-top:14px;border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:16px;background:var(--soft)}
.pdf i{font-style:normal;background:var(--red);color:#fff;border-radius:6px;padding:2px 7px;font-size:13px;font-weight:700}
.verify .field{border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:20px;font-family:ui-monospace,Consolas,monospace;color:var(--dim);background:var(--soft)}
.verify .ok{margin-top:16px;border-left:6px solid var(--green);background:#e6f4ea;border-radius:12px;padding:14px 18px;font-size:18px;line-height:1.5}
.verify .ok b{color:var(--green-d)}
.verify .kicker{margin-bottom:12px}
.seal{display:inline-flex;align-items:center;gap:8px;background:#e6f4ea;color:var(--green-d);border-radius:99px;padding:6px 14px;font-weight:500;font-size:16px}
.flow{display:flex;align-items:center;gap:16px;width:100%}
.flow .node{flex:1;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;font-size:22px;font-weight:500;text-align:center;box-shadow:var(--e2)}
.flow .node:nth-child(1){border-top:6px solid var(--blue)}.flow .node:nth-child(3){border-top:6px solid var(--yellow)}.flow .node:nth-child(5){border-top:6px solid var(--green)}
.flow .node small{display:block;margin-top:6px;font-weight:400;color:var(--dim);font-size:16px}
.flow .node.x{border-color:var(--red);background:#fce8e6}
.demo{width:100%;min-height:300px;border:3px dashed var(--line);border-radius:24px;display:grid;place-items:center;text-align:center;background:#fff;padding:30px}
.demo b{display:block;font-size:34px;margin-bottom:8px;font-weight:500}
.demo span{font-size:19px;color:var(--dim)}
.btn{display:inline-block;background:var(--blue);color:#fff;border-radius:99px;padding:14px 28px;font-size:22px;font-weight:500;box-shadow:var(--e1)}

/* captions and Cikgu */
.coach{position:absolute;left:0;right:0;bottom:0;height:178px;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center;gap:22px;padding:14px 300px 14px 64px;z-index:3}
.bubble{flex:1;min-width:0;position:relative;background:var(--tint);border-radius:20px;padding:12px 24px;font-size:18.5px;line-height:1.36;color:#0d2a57;height:140px;overflow:hidden;display:flex;align-items:center}
.bubble::after{content:"";position:absolute;right:-12px;top:50%;margin-top:-12px;border-left:14px solid var(--tint);border-top:12px solid transparent;border-bottom:12px solid transparent}
.bubble p{margin:0}
.coach.nocap .bubble{visibility:hidden}
.stage.big .slide{padding-right:520px}.stage.big .coach{padding-right:430px}.stage.big .bubble{font-size:17.5px;padding:10px 20px}
.avatar{position:absolute;right:-30px;bottom:0;width:calc(360px*var(--zs,1));height:calc(360px*var(--zs,1));border:0;padding:0;background:none;cursor:pointer;transform-origin:50% 100%;transition:width .3s,height .3s,right .3s,left .3s,bottom .3s;will-change:transform;z-index:4}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:bottom;display:block;filter:drop-shadow(0 6px 14px rgba(32,33,36,.2));transition:opacity .18s}
.avatar.failed{display:none}
.stage:has(.slide.presenter-large) .avatar{right:-90px}
.badge-download-guide{width:100%;max-width:820px;padding:20px 24px;border:1px solid #dadce0;border-radius:16px;background:#fff;text-align:left;color:#202124;box-sizing:border-box}
.badge-download-guide>small{display:block;color:#5f6368;font-size:14px;margin-bottom:14px}
.badge-download-route{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:18px;margin-bottom:18px}
.badge-download-route b{background:#1a73e8;color:white;padding:9px 15px;border-radius:6px}
.badge-download-menu{border:1px solid #dadce0;border-radius:8px;overflow:hidden;font-size:20px}
.badge-download-menu>div{padding:13px 18px;border-bottom:1px solid #eee}
.badge-download-menu>div:last-child{border-bottom:0}
.badge-download-choice{display:flex;justify-content:space-between;gap:12px;background:#e6f4ea;color:#137333;box-shadow:inset 0 0 0 2px #188038;font-weight:700}
.badge-download-choice strong{font-size:16px;white-space:nowrap}
.badge-download-guide>p{font-size:17px;margin:15px 0 0;color:#5f6368}
.walk-panel .badge-download-guide{max-width:100%;padding:16px}
.walk-panel .badge-download-route{font-size:16px;gap:8px;margin-bottom:12px}
.walk-panel .badge-download-menu{font-size:18px}
.walk-panel .badge-download-guide>p{font-size:17px;margin-top:12px}
.walk-panel .badge-download-choice span{color:#137333}
.foundation-demo{width:100%;padding:16px;background:white;border:1px solid #dadce0;border-radius:14px;text-align:left}
.foundation-demo>small,.foundation-drop small{display:block;font-size:13px;color:#5f6368}
.foundation-demo h3{font-size:23px;margin:10px 0 14px;line-height:1.2}
.foundation-demo h4{font-size:18px;margin:12px 0 8px}
.walk-panel .foundation-demo p{font-size:17px;line-height:1.35;margin:9px 0;font-weight:400}
.foundation-tabs{display:flex;gap:7px;font-size:14px}
.foundation-tabs b{padding:6px 9px;background:#f1f3f4;border-radius:5px}
.foundation-tabs .selected{background:#d2e3fc;color:#174ea6}
.foundation-demo blockquote{font-size:18px;line-height:1.35;margin:8px 0;padding:10px 13px;background:#f8fafd;border-left:3px solid #4285f4}
.foundation-status{font-size:16px;padding:9px 12px;margin-top:9px;background:#e6f4ea;color:#137333;border-radius:6px}
.foundation-drop{border:2px dashed #4285f4;padding:18px 12px;text-align:center;background:#f8fafd;font-size:17px;overflow-wrap:anywhere}
.foundation-action{font-size:17px;padding:10px 12px;border-radius:6px;background:#e8f0fe;color:#174ea6;margin-top:12px}
.foundation-certificate{border:2px solid #dadce0;padding:18px;text-align:center}
.foundation-certificate small{font-size:12px;color:#5f6368}
.badge-real-screen{position:relative;width:570px;max-width:100%;margin:0 auto}
.badge-real-screen img{display:block;width:100%;height:auto;border:1px solid #dadce0;border-radius:10px}
.badge-json-highlight{position:absolute;left:12.5%;top:50.5%;width:27%;height:7%;border:3px solid #fbbc04;border-radius:4px;box-shadow:0 0 0 2px white;pointer-events:none}
.stage.big .avatar{width:calc(620px*var(--zs,1));height:calc(620px*var(--zs,1));right:-60px}
.stage[data-pos=bottom-left] .avatar,.stage[data-pos=centre-left] .avatar{right:auto;left:-30px}
.stage[data-pos=bottom-left] .slide,.stage[data-pos=centre-left] .slide{padding:44px 64px 0 290px}
.stage[data-pos=bottom-left] .coach{padding:14px 64px 14px 300px}
.stage[data-pos=centre-right] .avatar,.stage[data-pos=centre-left] .avatar{bottom:178px}
.stage[data-pos=centre-right] .coach,.stage[data-pos=centre-left] .coach{padding:14px 64px}
.stage[data-pos=hidden] .avatar{display:none}
.stage[data-pos=hidden] .slide{padding-right:64px}.stage[data-pos=hidden] .coach{padding:14px 64px}

.bar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 16px;background:rgba(23,27,36,.94);color:#e8eaed;font-size:15px;transform:translateY(100%);transition:transform .25s ease}
body.ui .bar{transform:none}
body:not(.ui){cursor:none}
.bar button{font:inherit;display:inline-flex;align-items:center;gap:6px;background:#2a3140;color:#fff;border:0;border-radius:8px;padding:8px 14px;cursor:pointer}
.bar button .svgi{font-size:20px}
.bar button:hover{background:#3a4358}
.bar #play{background:var(--blue)}
.track{flex:1;height:8px;border-radius:4px;background:#2a3140;overflow:hidden;min-width:60px;cursor:pointer}
.track span{display:block;height:100%;width:0;background:var(--blue)}
.count{min-width:64px;text-align:right;color:#aab}
.chk{display:flex;gap:6px;align-items:center;white-space:nowrap}
@media(max-width:700px){.bar{flex-wrap:wrap}.track{order:9;flex-basis:100%}}

/* walkthrough */
.walk{flex:1;min-height:0;display:flex;gap:28px;margin-top:14px;align-items:flex-start}
.walk-screen{position:relative;flex:none;width:590px;height:372px;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--e3);background:#fff}
.walk-screen img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.walk-screen.in{animation:rise .35s ease both}
.walk-hi{position:absolute;border:4px solid var(--yellow);border-radius:12px;background:rgba(251,188,4,.14);box-shadow:0 0 0 9999px rgba(16,19,26,.2);animation:hi .8s ease .25s both}
@keyframes hi{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:none}}
.walk-panel{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--tint);text-align:center;padding:24px}
.walk-panel img{height:150px;width:auto}
.walk-panel p{margin:0;font-size:28px;font-weight:500}
.walk-panel span{font-size:18px;color:var(--dim)}
.walk-mail{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 22px;text-align:left;font-size:18px;line-height:1.9;box-shadow:var(--e2)}
.walk-mail b{display:inline-block;width:76px;color:var(--dim);font-weight:500}
.walk-mail .pdf{margin-top:8px;display:inline-flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:16px;background:var(--soft)}
.walk-mail .pdf i{font-style:normal;background:var(--red);color:#fff;border-radius:6px;padding:2px 7px;font-size:13px;font-weight:700}
.walk-side{flex:1;min-width:0}

.walk-steps{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.walk-steps li{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--dim);background:#fff;border:1px solid var(--line);border-radius:99px;padding:4px 12px 4px 5px}
.walk-steps li.done,.walk-steps li[hidden]{display:none}
.walk-steps b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--line);color:#fff;font-size:12px}
.walk-steps li.done b{background:var(--green)}.walk-steps li.now{border-color:var(--blue);color:var(--blue-d);background:var(--tint)}.walk-steps li.now b{background:var(--blue)}
.walk-cap h3{margin:0 0 8px;font-size:30px;line-height:1.15}
.walk-cap p{margin:0;font-size:21px;line-height:1.4;color:var(--dim)}
.walk-cap.in{animation:rise .35s ease both}
.count[data-step]::after{content:" · " attr(data-step);color:#8ab4f8}

/* icons used inline */
.ic.ms,.ico.ms{font-size:30px}
.card .n.ms{font-size:26px}
.strip .step b.ms{font-size:40px;line-height:0;margin-bottom:10px;display:flex;justify-content:flex-start}
.arrow.ms{font-size:44px}
.flow .node .ni{display:flex;font-size:40px;color:var(--acc);margin-bottom:8px}
.flow .node:nth-child(1) .ni{color:var(--blue)}.flow .node:nth-child(3) .ni{color:var(--yellow-d)}.flow .node:nth-child(5) .ni{color:var(--green)}
.kicker .ms{font-size:20px;color:var(--acc)}
.kicker.has::before{display:none}
.verify .ok b{display:inline-flex;align-items:center;gap:6px}.verify .ok b .svgi{font-size:22px}
.seal .svgi{font-size:22px}
.eq .box{display:inline-flex;align-items:center;gap:10px}
.chip .svgi{font-size:26px}
.promise{margin:0;font-size:38px;line-height:1.25;font-weight:500;letter-spacing:-.01em;color:var(--ink);max-width:880px}
.promise em{font-style:normal;color:var(--blue)}
.chain{display:flex;flex-wrap:wrap;gap:14px;max-width:880px}
.chain>span{display:inline-flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:99px;padding:12px 22px 12px 16px;font-size:23px;font-weight:500;box-shadow:var(--e1)}
.chain>span .svgi{font-size:28px;color:var(--acc)}
.hero.thanks .lede{font-size:26px;color:#fff;max-width:760px}
.hero.thanks .contact{font-size:28px}

/* reveals: content appears one piece at a time, timed to the narration (deck.js) */
.rv{opacity:0;transform:translateY(16px) scale(.96);transition:opacity .5s ease,transform .55s cubic-bezier(.2,.9,.3,1.2)}
.rv.in{opacity:1;transform:none}
.arrow.rv.in{animation:nudge 1.6s ease-in-out .5s infinite}
@keyframes nudge{50%{transform:translateX(7px)}}
.hero.title-slide::after{animation:drift 9s ease-in-out infinite}
@keyframes drift{50%{transform:translate(0,-16px)}}
@media(prefers-reduced-motion:reduce){.rv{transition:none}.hero.title-slide::after,.arrow.rv.in{animation:none}.slide.enter{animation:none}}

/* presenter cues: a small paused marker and a thin progress line, nothing else on the shared screen */
.cue{position:fixed;left:14px;top:12px;z-index:15;display:none;align-items:center;gap:8px;background:rgba(32,33,36,.82);color:#fff;border-radius:99px;padding:7px 14px 7px 10px;font-size:15px;font-weight:500;pointer-events:none}
.cue .svgi{font-size:20px}
body.paused .cue,body.fresh .cue{display:inline-flex}
.slim{position:fixed;left:0;bottom:0;height:3px;width:0;background:var(--blue);z-index:16;opacity:.9}
body.ui .slim{opacity:0}
.count[data-step]::after{content:" · " attr(data-step);color:#8ab4f8}
.hero.thanks .kicker .ms{color:#fff}
.cards.sm .card{min-height:150px;padding:16px 22px}.cards.sm .card h3{font-size:23px}.cards.sm .card p{font-size:18px}.cards.sm .ic{margin-bottom:6px;width:44px;height:44px}
.promise{font-size:35px}

/* part openers share the thank-you hero; each part has its own colour */
.hero.thanks.o1{background:linear-gradient(135deg,#4285f4,#1967d2)}
.hero.thanks.o2{background:linear-gradient(135deg,#34a853,#137333)}
.hero.thanks.o3{background:linear-gradient(135deg,#ea4335,#b3261e)}
.hero.thanks h1{font-size:88px}
.parts{display:flex;gap:10px;margin-top:30px}
.parts span{border:1.5px solid rgba(255,255,255,.55);border-radius:99px;padding:8px 20px;font-size:20px;font-weight:500;color:rgba(255,255,255,.8)}
.parts span.on{background:#fff;color:var(--ink);border-color:#fff}
.hero.thanks .soft{margin:14px 0 0;font-size:21px;color:#d2e3fc}
.agenda.two{grid-template-columns:repeat(2,1fr)}
.agenda .card p{grid-column:2;margin:2px 0 0;font-size:18px}
.agenda .card .ic{grid-row:1/4}
.cards.two{gap:20px}.cards.two .card.wide{flex:1.7}
.list.sm{font-size:19px;line-height:1.3}.list.sm li{margin:0 0 9px}.list.sm li::before{width:22px;height:22px;margin-top:2px}
/* use-case slides */
.ucs{display:flex;flex-direction:column;gap:12px;width:100%}
.uc{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--acc);border-radius:18px;padding:12px 18px;box-shadow:var(--e1)}
.uc .ic{margin:0;width:46px;height:46px}
.uc .ut{font-size:21px;font-weight:500;line-height:1.25}
.pri{display:inline-flex;align-items:center;gap:6px;background:var(--acct);color:var(--accd);border-radius:99px;padding:6px 14px 6px 10px;font-size:15px;font-weight:600;white-space:nowrap}
.pri .svgi{font-size:18px}
.eg,.quote{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;background:var(--soft);border-radius:18px;padding:12px 20px;margin:12px 0 14px;font-size:19px;line-height:1.35}
.eg .ic,.quote .ic{margin:0;background:#fff;width:46px;height:46px}
.eg small,.quote small{display:block;margin-top:4px;font-size:14px;color:var(--dim)}
.eg b{color:var(--accd)}
.quote{font-size:21px;font-weight:500}
.stats{display:flex;gap:18px;width:100%}
.stat{flex:1;background:var(--card);border:1px solid var(--line);border-top:6px solid var(--acc);border-radius:18px;padding:18px 22px;box-shadow:var(--e1)}
.stat b{display:block;font-size:52px;font-weight:500;color:var(--accd);letter-spacing:-.02em}
.stat span{font-size:18px;line-height:1.35;color:var(--dim)}
.stat:nth-child(2){border-top-color:var(--red)}.stat:nth-child(3){border-top-color:var(--green)}
.slide .body:has(.ucs){flex:none}
.uc{padding:9px 18px}.ucs{gap:10px}.eg,.quote{margin:10px 0 12px;padding:10px 18px}
.slide .body:has(.four){align-items:flex-start}
.path .four .card{min-height:96px;padding:12px 16px}.path .four .card .ic{width:38px;height:38px;margin-bottom:4px;font-size:24px}.path .four .card h3{font-size:20px}.path .four .card p{font-size:16px}
.cards .card{padding:20px 22px}
.cards.refs .card p{font-size:16.5px;line-height:1.35}.cards.refs .card h3{font-size:21px}.card p small{display:block;margin-top:8px;font-size:13.5px;color:var(--dim)}
.shot.inset{position:relative;line-height:0;overflow:visible}.shot.inset>img:first-child{border-radius:16px}
.shot.inset .in2,.walk-inset{position:absolute;right:-14px;bottom:-14px;width:46%;height:auto;border:1px solid var(--line);border-radius:12px;box-shadow:var(--e3);background:#fff}
.walk-screen .walk-inset{right:12px;bottom:12px;width:42%;height:auto;object-fit:initial}
.bubble.long{font-size:16.5px;line-height:1.32}

.bar #spar.on{background:#c5221f}
body.sparring .avatar{outline:3px solid #34a853;outline-offset:4px;border-radius:50%}
.bar #music.on{background:#188038}
.bar .vol{width:90px;accent-color:#8ab4f8}
@media(max-width:700px){.bar .vol{width:70px}}
