:root{--ink:#26312f;--muted:#68706c;--orange:#d95122;--line:#dddcd5;--paper:#faf9f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #dd5e25;outline-offset:5px}.skip{position:fixed;top:-60px;z-index:9;background:white;padding:15px}.skip:focus{top:0}header{padding:22px 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#faf9f5f5;position:sticky;top:0;z-index:5}.brand{font-size:20px;font-weight:850;letter-spacing:-1px}.brand span{display:block;font-size:10px;font-weight:500;letter-spacing:2px;margin-top:4px}nav{display:flex;gap:30px;align-items:center;font-size:13px}.contact-link{padding:10px 16px;border:1px solid var(--line);border-radius:30px}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1fr 1fr;padding:82px 5% 70px;gap:25px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:var(--orange);margin:0 0 20px}h1{font-size:clamp(36px,4.1vw,60px);letter-spacing:-3px;line-height:1.24;margin:0 0 24px}h1 em{font-style:normal;color:var(--orange)}.lead{font-size:17px;line-height:1.85;color:var(--muted)}.primary{display:inline-flex;gap:35px;background:var(--ink);color:white;padding:17px 24px;border-radius:6px;font-size:14px;margin-top:20px}.hero-note{font-size:11px;color:var(--muted);margin-top:24px}.hero-collage{position:relative;min-height:370px}.mini{position:absolute;border-radius:12px;padding:25px;box-shadow:0 14px 32px #35322b13}.mini small{font-size:9px;letter-spacing:1.5px;display:block}.mini b{display:block;line-height:1.35;font-size:25px;margin-top:16px}.paper-mini{background:#f8dda0;transform:rotate(-7deg);left:4%;top:0;width:49%;height:300px;color:#6c452d}.paper-mini span,.game-mini span{font-size:10px}.sun-face{font-size:95px;line-height:1.25;text-align:center}.game-mini{background:#dce8e0;transform:rotate(6deg);right:0;top:20px;width:48%;height:270px}.shapes{font-size:43px;color:#426655;letter-spacing:6px;margin:22px 0}.motion-mini{background:#3c385a;color:#f0edf9;left:20%;bottom:-5px;width:64%;display:grid;grid-template-columns:45px 1fr;gap:10px;transform:rotate(-2deg)}.motion-mini b{font-size:23px;margin:0}.motion-mini>span{font-size:27px;align-self:center}.motion-mini small{grid-column:2}.index-bar{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-block:1px solid var(--line);gap:20px;font-size:12px}.index-bar>span{font-size:9px;letter-spacing:1px;color:var(--muted)}.index-bar b{margin:0 18px;font-weight:600}.section{padding:75px 5%;max-width:1400px;margin:auto}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:20px}h2{font-size:30px;letter-spacing:-1.2px;line-height:1.4;margin:0 0 10px}.section-head p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:0}.section-aside{font-size:11px;color:var(--muted)}.grid{display:grid;gap:22px}.three{grid-template-columns:repeat(3,1fr)}.card{padding:0;border:0;background:none;text-align:left;color:inherit;width:100%;display:block}.art{height:230px;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;transition:transform .2s}.card:hover .art{transform:translateY(-4px)}.card-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:18px}.card h3{font-size:20px;margin:9px 0;letter-spacing:-.6px}.card p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.choice-art{background:#f5dca9;color:#775237}.order-art{background:#dce7f5;color:#304f88}.match-art{background:#e6dfef;color:#634c7f}.big-symbol{font-size:62px;letter-spacing:10px}.art-tag{position:absolute;left:18px;top:17px;font-size:10px;font-weight:650;letter-spacing:1px}.art-action{position:absolute;bottom:16px;right:16px;background:#ffffffd9;border-radius:30px;padding:8px 12px;font-size:11px}.video-section{border-block:1px solid var(--line)}.video-art{background:#f6dec8}.video-art.v1{background:#193f42;color:#d8eee7}.video-art.v2{background:#4540af;color:#fbf29b}.video-art .big-symbol{font-size:52px;font-weight:850;letter-spacing:-2px}.materials{grid-template-columns:repeat(5,1fr);gap:18px}.materials img{width:100%;display:block;aspect-ratio:3/4;object-fit:cover;border:1px solid #e4e1d9;border-radius:5px}.materials h3{font-size:16px}.materials .card-meta{font-size:9px}.bridge{text-align:center;padding:70px 20px;background:#e8eee7}.bridge h2{font-size:35px}.bridge p:not(.eyebrow){color:#59665c;line-height:1.9;font-size:14px}.bridge a{display:inline-block;border-bottom:1px solid;margin-top:20px;padding-bottom:5px;font-size:13px}.contact{padding:65px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}.contact p:not(.eyebrow){font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:28px 5%;display:flex;align-items:center;gap:20px;font-size:11px;color:var(--muted)}footer a{margin-left:auto}dialog{border:0;border-radius:16px;width:min(760px,94vw);max-height:90dvh;padding:25px;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#142221ad;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.dialog-head h2{font-size:20px;margin:0}.dialog-head button,.utility{border:1px solid #bbbeb5;border-radius:6px;background:transparent;padding:10px 15px}.game-panel{text-align:center;padding:28px 15px;background:#fff;border-radius:10px}.prompt{font-size:23px;line-height:1.6}.game-options{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:25px 0}.option{border:1px solid #c9cfc8;background:#f3f5ef;padding:20px;border-radius:10px;min-width:100px}.option:disabled{cursor:default;opacity:.6}.option[aria-pressed=true]{background:#344f47;color:white}.feedback{min-height:52px;line-height:1.6;color:#385b4e;font-size:14px}.enlarged{width:100%;max-height:68vh;object-fit:contain}.download{display:block;text-align:center;margin-top:16px;font-size:13px;text-decoration:underline}.motion-stage{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border-radius:10px}.motion-stage .orb{font-size:100px}.motion-stage h3{font-size:32px;margin:20px 0 0}.motion-stage p{font-size:14px}.motion-stage.m0{background:#f6dec8;color:#765033}.motion-stage.m1{background:#193f42;color:#d8eee7}.motion-stage.m2{background:#4540af;color:#fbf29b}.motion-controls{display:flex;gap:16px;align-items:center;margin-top:15px;font-size:12px}progress{flex:1;min-width:30px;accent-color:var(--orange)}@media(max-width:800px){header{padding:18px 5%}nav{gap:15px}nav .contact-link{display:none}.hero{padding-top:42px;grid-template-columns:1fr}.hero-collage{min-height:370px;max-width:460px;width:100%;margin:20px auto 0}.index-bar{flex-wrap:wrap}.index-bar>span{width:100%}.index-bar b{margin:0 6px}.section{padding:45px 5%}.section-head{display:block}.section-aside{display:block;margin-top:15px}.three{grid-template-columns:1fr}.art{height:240px}.materials{grid-template-columns:repeat(2,1fr)}h2{font-size:26px}.contact{display:block}.contact h2{font-size:26px}footer{flex-wrap:wrap}footer a{margin-left:0;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* App and tablet frames in the introduction only. */
.hero-collage.devices{min-height:400px;align-self:center}.tablet-device{position:absolute;top:34px;left:0;width:91%;border:9px solid #303937;border-radius:22px;background:#fff;box-shadow:0 22px 45px #26312f20;overflow:hidden;transform:rotate(-4deg)}.device-toolbar{display:flex;justify-content:space-between;padding:15px;font-size:8px;letter-spacing:1px}.tablet-device img{width:100%;display:block}.tablet-bottom{padding:13px;font-size:9px;color:#666}.tablet-bottom span{float:right;color:#c16a3c}.phone-device{position:absolute;right:0;top:142px;width:33%;border:6px solid #303937;border-radius:25px;background:#fff;overflow:hidden;box-shadow:0 18px 30px #26312f25;transform:rotate(6deg)}.phone-status{display:flex;justify-content:space-between;padding:10px 13px 5px;font-size:8px}.phone-appbar{display:flex;justify-content:space-between;padding:10px;font-size:10px;font-weight:700}.phone-device img{display:block;width:100%}.phone-bottom{display:flex;justify-content:space-around;padding:10px;font-size:13px}.phone-bottom span{color:#d95122}.device-caption{position:absolute;bottom:4px;left:8px;font-size:10px;color:var(--muted)}.material-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:34px 0 20px}.material-heading h3{margin:0;font-size:21px;letter-spacing:-.6px}.material-heading span{font-size:12px;color:var(--muted)}.cardnews-heading{margin-top:50px;padding-top:30px;border-top:1px solid var(--line)}.slides img{width:100%;aspect-ratio:16/9;display:block;border-radius:8px;border:1px solid var(--line)}.slides h3{font-size:18px}.materials img{aspect-ratio:auto}.materials .card{align-self:start}@media(max-width:800px){.hero-collage.devices{min-height:350px;max-width:460px}.tablet-device{top:20px}.phone-device{top:100px;width:35%}.device-caption{bottom:5px}.material-heading h3{font-size:19px}.material-heading span{font-size:10px}}@media(min-width:801px) and (max-width:1100px){.hero-collage.devices{min-height:340px}.phone-device{top:120px}.device-toolbar{padding:10px;font-size:7px}}

.source-note{font-size:11px;line-height:1.6;text-align:center;color:var(--muted);margin:14px 0 0}.source-note a{text-decoration:underline;text-underline-offset:3px}.slides img{object-fit:contain;background:#fff}.materials img{background:#fff}.phone-device{background:#fff}.tablet-device img{aspect-ratio:16/9;object-fit:contain;background:#fff}
dialog:has(.enlarged[src*="slide-"]){width:min(1180px,96vw)}.slides .card-meta{align-items:flex-start;gap:8px}.slides .card-meta>span:last-child{white-space:nowrap}.materials .card-meta{line-height:1.6;gap:6px}
.hero-collage.devices{min-height:470px}@media(min-width:801px) and (max-width:1100px){.hero-collage.devices{min-height:420px}}@media(max-width:800px){.hero-collage.devices{min-height:390px}}

/* Equal preview space preserves the original card ratios and aligns captions. */
.material-art{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center}
.materials .material-art img{width:100%;height:100%;object-fit:contain;border:0;border-radius:0;background:transparent}
.materials .card-meta{min-height:3.2em;align-items:flex-start}
.materials .card-meta>span:last-child{flex-shrink:0}

.game-card{text-decoration:none}.planned .art{opacity:.7}.planned:hover .art{transform:none}.tooth-art{background:#e2eed5;justify-content:flex-start}.tooth-cover{width:58%;height:100%;object-fit:contain}.tooth-title{font-size:32px;font-weight:800;line-height:1.2;letter-spacing:-1px}.puzzle-art{background:#f0dcca;color:#805736}.ready .art{border:2px solid #91ac78}.ready .art-action{background:#2e7164;color:white}

.market-cover{width:53%;height:100%;object-fit:contain}.game-card.ready .choice-art{background:#eee5cf;color:#594b32;gap:10px}

.game-card.ready .order-art{background:#cce9f7;color:#315f91;gap:10px;border-color:#97beda}

.game-card.ready .match-art{background:#213451;color:#ffdfab;border-color:#324b6b}.game-card.ready .puzzle-art{background:#e2d3ef;color:#715085;border-color:#bd9fd4}

.game-card.ready .nursing-art{background:#243b45;color:white;border-color:#8eaaae}.nursing-art .market-cover{width:100%;height:100%;object-fit:cover;opacity:.65}.nursing-art .tooth-title{z-index:1;text-shadow:0 2px 12px #10272f}.nursing-art .art-tag{z-index:1;color:white;text-shadow:0 1px 6px #000}.nursing-art .art-action{z-index:1}

.nursing-art .market-cover{position:absolute;inset:0;width:100%;height:100%;opacity:1}.nursing-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102c39f2 0%,#102c39bc 55%,#102c3930 100%)}.nursing-art .tooth-title{position:absolute;left:24px;top:65px;font-size:29px;line-height:1.35;color:#fff;letter-spacing:-.7px;text-shadow:none}.nursing-art .art-tag{color:#c8e3e8}.nursing-art .art-action{background:#fff;color:#183f48;font-weight:700}

.concept-cover{height:auto;aspect-ratio:16/9}.concept-cover img{width:100%;height:100%;object-fit:contain;display:block}

/* Final video examples: play directly in each thumbnail. */
.video-player{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#e8e4db}
.video-player video{display:block;width:100%;height:100%;object-fit:contain}
.video-trigger{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:transparent;color:white}
.video-trigger[hidden]{display:none}
.video-trigger img{display:block;width:100%;height:100%;object-fit:cover}
.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;padding-left:4px;border-radius:50%;background:#26312fd9;font-size:23px;box-shadow:0 3px 18px #0002}
.video-trigger:hover .play-icon{background:#d95122}.video-trigger:focus-visible{outline-offset:-4px;border-radius:10px}
.video-duration{position:absolute;right:12px;bottom:12px;padding:3px 8px;border-radius:5px;background:#26312fd9;font-size:12px}
.video-card h3{margin-top:9px}

.video-card .card-meta{align-items:center;gap:8px;min-height:26px}.audience-tag{display:inline-block;padding:4px 9px;border-radius:20px;background:#e8eee7;color:#415d4d;font-size:11px;white-space:nowrap;font-weight:600}

.bridge .sample-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:20px;padding:16px 24px;border:0;border-radius:6px;background:var(--ink);color:#fff;font-size:14px;font-weight:600;text-decoration:none}
.bridge .sample-cta:hover{background:#3c5149}

@media(max-width:600px){header{flex-wrap:wrap;gap:14px}header nav{width:100%;justify-content:space-between;gap:10px}header nav .home-link{font-size:11px}}
