:root{--bg:#f7f5ef;--ink:#292924;--muted:#77766d;--line:#d9d7ce;--accent:#b8674b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{max-width:1320px;margin:auto;padding:28px 50px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-size:20px;font-weight:600;letter-spacing:-.7px;display:flex;align-items:center;gap:15px}.spark{color:var(--accent);font-size:32px;font-weight:400}nav{display:flex;gap:30px;font-size:13px}nav a:hover{color:var(--accent)}main{max-width:1220px;margin:auto;padding:0 34px}.hero{padding:90px 0 0}.eyebrow,.tag,.project-meta{font-size:10px;letter-spacing:1.6px;font-weight:500}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:8px}h1,h2,h3,p{margin:0}h1,h2,h3,.contact{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(64px,7.7vw,104px);line-height:1.04;letter-spacing:-5px;margin:30px 0}em{font-weight:400;color:var(--accent)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:35px}.hero-bottom p{max-width:455px;font-size:17px;line-height:1.7}.hero-aside{font-size:12px;border-left:1px solid var(--line);padding-left:22px;line-height:1.9;color:var(--muted);min-width:195px}.hero-footer{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding:48px 0 24px;border-bottom:1px solid var(--line);margin-bottom:72px}.section-top{display:flex;justify-content:space-between;margin-bottom:25px;align-items:center}.muted{font-size:12px;color:var(--muted)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:46px 28px}.project{display:block;min-width:0}.project-meta{display:flex;justify-content:space-between;padding:16px 22px 0;position:absolute;top:0;left:0;width:100%;z-index:2;font-size:9px;letter-spacing:1px}.project{position:relative}.art{height:382px;position:relative;overflow:hidden;transition:transform .35s;background:#e9e8df}.project:hover .art{transform:translateY(-4px)}.art-note{position:absolute;top:58px;left:26px;font:23px/1.2 Georgia;z-index:1;letter-spacing:-.4px}.art img{width:100%;height:100%;object-fit:contain}.bite .art{background:#e8e9df}.bite .art img{position:absolute;left:16%;top:28%;width:77%;height:59%;mix-blend-mode:multiply;transform:rotate(-8deg)}.award{position:absolute;bottom:20px;left:23px;font-size:9px;letter-spacing:.35px}.circuit .art{background:#ebe0d6}.circuit .art img{width:66%;height:65%;position:absolute;top:28%;left:28%;mix-blend-mode:multiply;transform:rotate(-14deg)}.project-caption{display:flex;align-items:center;justify-content:space-between;padding-top:16px}.project-caption h2{font-size:30px;letter-spacing:-.8px}.project-caption p{font-size:12px;color:var(--muted);margin-top:3px}.circle{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.carry .art{background:#e6e1ed;display:grid;place-items:center;padding:60px 28px 30px}.memory{width:100%;background:#faf9f6;padding:22px;box-shadow:0 15px 35px #51436012;transform:rotate(-3deg);border-radius:7px}.memory-top{font:15px Georgia;display:flex;justify-content:space-between;align-items:center}.memory-top span{font:6px sans-serif;letter-spacing:1px;color:var(--muted)}.memory-line{font:25px Georgia;margin:22px 0}.snippet{font-size:9px;margin:10px 0;padding:10px;background:#eeeedf;display:flex;gap:8px;align-items:center}.snippet i{width:6px;height:6px;background:#9a9a70;border-radius:50%}.snippet b{margin-left:auto;font-weight:400;font-size:8px}.faded{opacity:.5}.memory-foot{font-size:7px;color:var(--muted);margin-top:17px}.forest .art{background:#0c1512}.forest .art>img{object-fit:cover;object-position:58% center;transform:scale(1.13)}.forest .project-meta{color:#eee}.forest-label{position:absolute;left:24px;bottom:25px;color:#f6f3e8;font:29px/1.15 Georgia;background:#0c1512cc;padding:12px}.forest-label em{color:#cbdac4}.research,#experience{padding-top:110px}.research-intro{display:flex;justify-content:space-between;align-items:end;margin:45px 0} .research-intro h2,.experience-grid h2{font-size:42px;line-height:1.17;letter-spacing:-1.5px}.research-intro p{max-width:290px;font-size:13px;color:var(--muted)}.paper{display:grid;grid-template-columns:45px 1fr 25px;gap:20px;padding:30px 0;border-top:1px solid var(--line)}.paper-number{font:18px Georgia;color:var(--muted)}.tag{font-size:8px;color:var(--accent)}.paper h3{font-size:27px;margin:5px 0}.paper p{font-size:13px;color:var(--muted)}.paper small{display:block;font-size:10px;margin-top:10px;color:var(--muted)}.paper:hover h3{color:var(--accent)}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:35px 0}.job{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.job h3{font-size:27px;margin:7px 0}.job p{font-size:12px;color:var(--muted)}.job small{font-size:10px;color:var(--muted)}.about{margin-top:65px;background:#ece9df;padding:45px}.about h2{font-size:37px;line-height:1.2;letter-spacing:-1px;margin:20px 0}.about>div{display:flex;justify-content:space-between;gap:45px;align-items:end}.about p{font-size:13px;max-width:610px;color:#65645c}.button{display:inline-block;border:1px solid var(--line);padding:11px 18px;font-size:12px;white-space:nowrap;background:var(--bg)}footer{padding:100px 0 25px}.contact{display:block;font-size:85px;letter-spacing:-4px;margin:10px 0 55px}footer>div{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.detail{padding:55px 0}.back{font-size:12px}.detail h1{font-size:70px;margin-top:35px;max-width:950px}.detail .lead{font-size:21px;max-width:690px;color:var(--muted)}.detail-meta{display:flex;gap:45px;margin:35px 0;font-size:12px}.detail-meta span{display:block;color:var(--muted);font-size:9px;letter-spacing:1px;margin-bottom:6px}.detail-visual{background:#e8e6de;height:500px;display:grid;place-items:center;margin:45px 0}.detail-visual img{width:85%;height:85%;object-fit:contain}.detail-columns{display:grid;grid-template-columns:1fr 1.7fr;gap:70px;margin:65px 0}.detail-columns h2{font-size:36px;line-height:1.15}.detail-columns p{font-size:15px;color:#63635b;margin-bottom:20px}.detail-columns h3{font-size:24px;margin:25px 0 10px}.detail video{width:100%;max-height:640px;background:#171815;display:block;margin:25px 0}.evidence-image{width:100%;height:auto;margin:20px 0}.evidence-links{display:flex;gap:15px;flex-wrap:wrap}.detail .note{font-size:11px;color:var(--muted)}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(max-width:760px){header{padding:18px 22px;flex-wrap:wrap;gap:15px}nav{gap:18px;font-size:11px}main{padding:0 22px}.hero{padding-top:55px}h1{font-size:62px;letter-spacing:-3px}.hero-bottom{align-items:start;gap:25px}.hero-aside{display:none}.hero-footer{gap:25px;margin-bottom:45px;font-size:9px}.projects{grid-template-columns:1fr;gap:32px}.art{height:370px}.section-top{gap:20px}.muted{font-size:10px}.research,#experience{padding-top:70px}.research-intro,.about>div{display:block}.research-intro p{margin-top:25px}.research-intro h2,.experience-grid h2{font-size:35px}.experience-grid,.detail-columns{grid-template-columns:1fr;gap:30px}.about{padding:28px;margin-top:35px}.about h2{font-size:29px}.about .button{margin-top:25px}.contact{font-size:65px}footer>div{flex-wrap:wrap;gap:12px}.detail h1{font-size:48px}.detail-meta{flex-wrap:wrap;gap:20px}.detail-visual{height:310px}.detail .lead{font-size:18px}.paper{gap:10px;grid-template-columns:25px 1fr 15px}}
.circuit .art img{clip-path:ellipse(47% 44% at 50% 50%)}.bite .art img{clip-path:polygon(5% 4%,82% 0%,100% 76%,40% 100%,0% 58%)}
/* Refined imagery and technical content */
.bite .art img{width:47%;height:77%;top:19%;left:47%;object-fit:cover;object-position:center;mix-blend-mode:normal;transform:rotate(-9deg);clip-path:none;border:7px solid #f7f5ef;box-shadow:0 10px 24px #24271b19}.bite .art-note{max-width:42%;font-size:21px}.carry .art{padding:55px 23px 24px}.carry .art>img{width:100%;height:100%;object-fit:contain;transform:rotate(-3deg);box-shadow:0 15px 30px #51436015;background:#fff}.forest .art>img{transform:none;object-position:center}.forest .project-meta{color:#f7f5ef;background:linear-gradient(#111b13b0,transparent);padding-bottom:20px}.tennis .art{background:#e1e5dc}.tennis .art>img{width:55%;height:86%;position:absolute;right:3%;bottom:-4%;object-fit:cover;object-position:50% 68%;transform:rotate(-8deg);border:7px solid #f7f5ef}.tennis .art-note{font-size:26px;max-width:41%;top:80px}.tennis{grid-column:1 / -1}.tennis .art{height:345px}.tennis .art>img{width:48%;height:115%;top:10%;right:10%}.research-feature{display:grid;grid-template-columns:1fr 1.4fr;gap:45px;padding:38px;background:#eeebe2;align-items:center}.research-feature h3{font-size:50px;line-height:1.08;letter-spacing:-1.5px;margin:18px 0}.research-feature p{font-size:13px;max-width:300px}.research-feature>img{width:100%;background:#fff;padding:15px}.study-stats{display:flex;gap:28px;margin:25px 0}.study-stats span{font-size:9px;color:var(--muted)}.study-stats b{font:33px Georgia;display:block;color:var(--ink)}.research-note{font-size:11px;color:var(--muted);margin-top:20px;max-width:830px}.research-note a{color:var(--accent)}.role-detail{margin:20px 0}.role-detail b{font-size:12px;font-weight:500}.role-detail p{margin:7px 0 17px;line-height:1.7}.company-media{margin:24px 0 0}.company-media img{width:100%;display:block}.company-media figcaption{font-size:9px;color:var(--muted);margin-top:8px}.company-media a{text-decoration:underline}.skills{padding-top:75px}.skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.skill-grid article{padding:27px 0;border-top:1px solid var(--line)}.skill-no{font:13px Georgia;color:var(--accent)}.skill-grid h3{font-size:27px;margin:8px 0 15px}.skill-grid p{font-size:12px;color:var(--muted);margin:10px 0;max-width:440px}.skill-grid .tag{display:block;margin-top:20px}.detail-visual:has(img[src$="bite-photo.png"]){background:#e8e9df}.detail-visual img[src$="bite-photo.png"]{width:auto;height:90%;box-shadow:0 10px 25px #24271b16}.detail-visual img[src$="carry-cover.png"],.detail-visual img[src$="research-results.png"]{width:92%;height:92%;background:#fff}.detail-visual:has(img[src$="forest.png"]){height:560px;background:#0c1512}.detail-visual img[src$="forest.png"]{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.research-feature{grid-template-columns:1fr;gap:30px;padding:26px}.research-feature h3{font-size:41px}.skill-grid{grid-template-columns:1fr}.tennis .art{height:350px}.tennis .art>img{width:53%;right:4%;top:25%;height:80%}.tennis .art-note{font-size:23px}.detail-visual:has(img[src$="forest.png"]){height:330px}header nav{flex-wrap:wrap;gap:15px}.bite .art-note{font-size:23px}}
.circuit .art img{clip-path:none;width:55%;height:61%;left:40%;top:34%;object-fit:cover;mix-blend-mode:normal;transform:rotate(-7deg);border:7px solid #f7f5ef;box-shadow:0 12px 28px #3d281514}.bite .art img{top:20%;height:72%}

.carry .art{padding:38px 0 0;background:#e9e3ef}.carry .art>img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none;box-shadow:none;background:transparent}.detail-visual:has(img[src$="carry-hero.svg"]){height:auto;aspect-ratio:1600/1100;background:#e9e3ef}.detail-visual img[src$="carry-hero.svg"]{width:100%;height:100%;object-fit:contain}

/* Reading order: cognition → sensing → affective action → motor learning → immersive experience. */
.tennis{grid-column:auto}.tennis .art{height:382px}.tennis .art>img{width:53%;height:79%;top:27%;right:5%}.tennis .art-note{font-size:24px;top:65px}.forest{grid-column:1 / -1}.forest .art{height:430px}.forest .art>img{object-position:center 61%}.forest .project-meta{padding-top:20px}@media(max-width:760px){.tennis .art{height:370px}.forest .art{height:370px}.forest{grid-column:auto}}
/* Shared cover geometry: preserve the full subject inside a consistent frame. */
.projects .project{grid-column:auto}.projects .art{height:382px}.project-meta{padding:18px 22px 0;gap:12px}.project-meta span:first-child{max-width:80%}.carry .art{padding:48px 12px 12px;background:#e9e3ef}.carry .art>img{object-fit:contain;object-position:center;width:100%;height:100%;transform:none}.tennis .art{padding:90px 28px 30px;display:flex;justify-content:center;align-items:center}.tennis .art-note{top:53px;left:26px;font-size:22px;max-width:none;line-height:1.1}.tennis .art-note br{display:none}.tennis .art>img{position:static;width:auto;max-width:85%;height:100%;max-height:245px;object-fit:contain;transform:none;border:5px solid #f7f5ef;box-shadow:0 10px 25px #2b352415}.bite .art-note{top:54px;font-size:22px;max-width:none}.bite .art-note br{display:none}.bite .art img{width:215px;height:265px;left:50%;top:101px;transform:translateX(-50%) rotate(90deg);object-fit:contain;border:5px solid #f7f5ef;box-shadow:0 8px 24px #24271b16}.forest .art>img{object-fit:cover;object-position:center 56%}.detail h1{margin-bottom:20px}.detail-visual{margin:30px 0 0;height:440px;overflow:hidden;border:1px solid #e4e0d7}.detail-meta{padding:24px 0;border-bottom:1px solid var(--line);margin:0;gap:35px;justify-content:space-between}.detail-visual:has(img[src$="bite-photo.png"]){height:410px}.detail-visual img[src$="bite-photo.png"]{width:280px;height:340px;transform:rotate(90deg);object-fit:contain;box-shadow:none}.detail-visual:has(img[src$="forest.png"]){height:440px}.detail-visual img[src$="tennis.jpg"]{width:auto;height:88%;object-fit:contain}.story-section{margin:65px 0;padding-top:30px;border-top:1px solid var(--line)}.story-section h2{font-size:36px;margin-bottom:10px}.story-section p{font-size:14px;color:var(--muted);max-width:690px;margin-bottom:25px}.story-section img{width:100%;height:auto;display:block}.story-section .story-medium{max-width:850px;margin:auto}.detail-visual:has(img[src$="carry-hero.svg"]){height:auto;aspect-ratio:1600/1100}@media(max-width:760px){.projects .art{height:360px}.project-meta{font-size:8px;letter-spacing:.7px;padding:16px 18px 0}.carry .art{padding:43px 7px 10px}.tennis .art{padding-top:95px}.tennis .art-note,.bite .art-note{font-size:19px;left:20px;top:53px}.tennis .art>img{max-width:90%;height:100%;max-height:230px}.bite .art img{width:195px;height:240px;top:99px}.detail-meta{display:grid;grid-template-columns:1fr;gap:15px;padding:20px 0}.detail-visual,.detail-visual:has(img[src$="forest.png"]){height:300px}.detail-visual:has(img[src$="bite-photo.png"]){height:300px}.detail-visual img[src$="bite-photo.png"]{width:205px;height:250px}.detail-visual:has(img[src$="carry-hero.svg"]){height:auto}.story-section{margin:40px 0}.story-section h2{font-size:29px}}
.carry .art{display:flex;align-items:center;justify-content:center}.carry .art>img{display:block;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;flex:1}

/* Recognition sits with project metadata; prototypes have their own visual space. */
.project-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.award-tag{display:inline-flex;align-items:center;border:1px solid #d6c8b6;border-radius:30px;padding:5px 11px;background:#ede6d9;color:#786044;font-size:10px;letter-spacing:.15px;line-height:1.5}.tennis .art{display:block;padding:0;background:#e1e5dc}.tennis .art-note{left:27px;top:55px;font-size:27px;line-height:1.12;max-width:80%;z-index:2}.tennis .art-note br{display:block}.tennis .art>img{position:absolute;left:50%;top:145px;width:72%;height:211px;max-width:none;max-height:none;transform:translateX(-50%);object-fit:cover;object-position:center 72%;border:6px solid #f7f5ef;box-shadow:0 10px 24px #2b352411}.circuit .art>img{top:37%;height:57%;left:38%;width:55%}@media(max-width:760px){.tennis .art-note{font-size:25px;top:52px;left:24px}.tennis .art>img{top:139px;height:196px;width:77%}.award-tag{font-size:10px}}

/* Forest Jar shares the light editorial cover system. */
.forest .art{background:#e2e7df;position:relative}.forest .project-meta{color:var(--ink);background:none;padding:18px 22px 0}.forest .art-note{top:55px;left:27px;color:var(--ink);font-size:27px;line-height:1.12}.forest .art>img{position:absolute;left:50%;top:148px;width:78%;height:208px;object-fit:cover;object-position:center 63%;transform:translateX(-50%) rotate(-3deg);border:6px solid #f7f5ef;box-shadow:0 10px 25px #28352616}@media(max-width:760px){.forest .project-meta{padding:16px 18px 0}.forest .art-note{font-size:25px;top:52px;left:24px}.forest .art>img{top:141px;height:195px;width:79%}}
/* Personal portrait, software marks and readable CV. */
.software-icons{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin:30px 0 40px}.software-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:23px 8px;background:#eeece5;border:1px solid #e4e1d8;border-radius:3px}.software-icon img{width:35px;height:35px;object-fit:contain}.software-icon span{font-size:11px;color:var(--muted)}.about{position:relative;padding-right:38%;min-height:440px;overflow:hidden}.about>.portrait{position:absolute;right:0;bottom:-8px;width:39%;height:420px;display:block;z-index:0}.portrait:before{content:'';position:absolute;width:285px;height:285px;background:#dfdacb;border-radius:50%;left:50%;top:75px;transform:translateX(-50%)}.portrait img{position:relative;width:100%;height:100%;object-fit:contain;object-position:center bottom}.about>div:not(.portrait){display:block;position:relative}.about .cv-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.about h2{font-size:34px}.carry .art{display:block;padding:0;background:#e9e3ef}.carry .art-note{top:55px;left:27px;font-size:27px;line-height:1.12}.carry .art>img{position:absolute;left:50%;top:145px;width:88%;height:211px;max-width:none;max-height:none;object-fit:contain;transform:translateX(-50%);border:6px solid #f7f5ef;background:#eeeaf3;box-shadow:0 10px 25px #46395e10}.cv-page{max-width:1080px}.cv-intro{padding:80px 0 55px;display:flex;justify-content:space-between;align-items:end;gap:30px}.cv-intro h1{font-size:72px;letter-spacing:-3px;margin:20px 0}.cv-intro p{font-size:15px;color:var(--muted);margin-bottom:15px}.cv-intro>div>a{font-size:12px}.cv-section{display:grid;grid-template-columns:210px 1fr;gap:45px;padding:40px 0 15px;border-top:1px solid var(--line)}.cv-section>h2{font-size:30px;line-height:1.15}.cv-entry{margin-bottom:35px}.cv-entry h3{font-size:25px;line-height:1.25;margin:6px 0 10px}.cv-date{font-size:10px;color:var(--muted);letter-spacing:.4px}.cv-entry p{font-size:14px;color:#64635c;line-height:1.8;margin:10px 0}.cv-entry .tag{font-size:9px}.cv-entry ul{list-style:none;margin:15px 0;padding:0}.cv-entry li{font-size:13px;color:#64635c;padding:8px 0;border-bottom:1px solid #e6e3da}.cv-entry li b{font-size:11px;display:inline-block;min-width:47px;font-weight:400;color:var(--accent)}.cv-end{display:flex;justify-content:space-between;gap:20px;margin:25px 0 70px}nav [aria-current=page]{color:var(--accent)}@media(max-width:760px){.software-icons{grid-template-columns:repeat(4,1fr);gap:8px}.software-icon{padding:17px 5px}.software-icon img{width:30px;height:30px}.about{padding:28px 28px 350px}.about>.portrait{height:330px;width:100%}.portrait:before{width:240px;height:240px;top:55px}.about h2{font-size:29px}.carry .art-note{font-size:25px;top:52px;left:24px}.carry .art>img{top:139px;height:196px;width:89%}.cv-intro{padding:50px 0 35px;display:block}.cv-intro h1{font-size:54px}.cv-intro>.button{margin-top:25px}.cv-section{grid-template-columns:1fr;gap:20px;padding-top:30px}.cv-section>h2{font-size:29px}.cv-section>h2 br{display:none}.cv-entry h3{font-size:24px}.cv-end{flex-wrap:wrap}}
.about>.portrait{bottom:0;height:410px}@media(max-width:760px){.about>.portrait{height:325px}}

.internship-card{display:block;padding:0 0 24px}.internship-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.internship-card h3{font-size:35px;margin:10px 0}.internship-card>p{font-size:14px}.internship-tags{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.internship-tags span{font-size:10px;padding:4px 10px;border:1px solid var(--line);border-radius:30px;color:var(--muted)}.internship-card>img{width:100%;display:block;max-height:220px;object-fit:cover;object-position:center}.internship-link{display:block;font-size:11px;color:var(--accent);margin-top:13px}.internship-card:hover h3{color:var(--accent)}.internship-detail{border-top:1px solid var(--line)}.internship-detail>div{padding:40px 0;border-bottom:1px solid var(--line)}.internship-detail h2{font-size:35px;margin:10px 0 20px}.internship-detail p{max-width:760px;font-size:15px;color:var(--muted);margin:15px 0}.gesture-flow{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:28px 0}.gesture-flow span{padding:18px 22px;background:#eeebe2;border:1px solid var(--line);font-size:13px}.gesture-flow b{font-weight:400;color:var(--accent)}.internship-detail .note{font-size:11px}.detail-visual:has(img[src$="mythlink.jpg"]){background:#111;height:auto;aspect-ratio:1123/763}.detail-visual img[src$="mythlink.jpg"]{width:100%;height:100%;object-fit:contain}

/* Keep the complete racket-mounted product in view, including its base. */
.detail-visual:has(img[src$="tennis.jpg"]){display:flex;align-items:center;justify-content:center;height:520px;padding:24px;background:#e7e9e1}.detail-visual img[src$="tennis.jpg"]{display:block;min-height:0;min-width:0;width:auto;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;border:6px solid #f7f5ef}.technical-section{padding:35px 0 10px;border-top:1px solid var(--line)}.technical-section h2{font-size:38px;line-height:1.15;letter-spacing:-1px;margin:15px 0 22px}.tech-intro{max-width:800px;font-size:15px;color:var(--muted);margin-bottom:30px}.tech-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;margin:25px 0 60px;align-items:start}.tech-grid figure,.training-evaluation figure,.runtime-figure{margin:0}.tech-grid img{width:100%;height:330px;object-fit:contain;background:#fff;padding:16px;border:1px solid var(--line)}.hardware-grid img{height:360px}.technical-section figcaption{font-size:11px;color:var(--muted);margin-top:10px;line-height:1.6}.training-evaluation{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:35px;background:#edeae1;margin-bottom:65px;align-items:center}.training-evaluation h3{font-size:38px;margin:20px 0}.training-evaluation p{font-size:14px;line-height:1.8;color:var(--muted);margin:15px 0}.training-evaluation img{width:100%;max-height:580px;object-fit:contain}.runtime-figure img{width:100%;height:auto;border:1px solid var(--line)}.runtime-figure{margin:20px 0 50px}@media(max-width:760px){.detail-visual:has(img[src$="tennis.jpg"]){height:390px;padding:18px}.tech-grid,.training-evaluation{grid-template-columns:1fr;gap:25px}.tech-grid img{height:auto;max-height:420px}.training-evaluation{padding:24px}.technical-section h2{font-size:30px}.technical-section .eyebrow{font-size:9px;line-height:1.7}}
.case-content{border-top:1px solid var(--line);padding-top:10px}.case-heading{margin:55px 0 28px}.case-heading h2{font-size:43px;line-height:1.14;letter-spacing:-1.2px;margin:15px 0 22px}.case-heading>p{max-width:820px;color:var(--muted);font-size:15px;line-height:1.85}.case-two{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:25px 0 40px;align-items:start}.case-two article{border-top:1px solid var(--line);padding-top:22px}.case-two h3,.mapping-table h3{font-size:26px;line-height:1.25;margin-bottom:15px}.case-two p{font-size:14px;line-height:1.85;color:var(--muted)}.case-figure{margin:30px 0 45px}.case-figure img{display:block;width:100%;height:auto;background:#fff;border:1px solid #e2ded5}.case-figure figcaption{font-size:11px;color:var(--muted);line-height:1.7;margin-top:12px;max-width:950px}.case-figure figcaption span{color:var(--accent);white-space:nowrap;margin-left:7px}.case-two .case-figure{margin:0}.case-two .case-figure img{height:330px;object-fit:contain}.game-step-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 25px;margin:35px 0 55px}.game-step-grid img{display:block;width:100%;height:230px;object-fit:contain;background:#111714;margin-bottom:16px}.game-step-grid h3{font-size:27px;margin:8px 0 12px}.game-step-grid p{font-size:13px;line-height:1.8;color:var(--muted);max-width:450px}.story-panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 55px}.story-panel-grid figure{margin:0}.story-panel-grid img{width:100%;display:block}.story-panel-grid figcaption{font-size:11px;color:var(--muted);margin-top:8px}.mapping-table{margin:35px 0 50px;overflow-x:auto}.mapping-table table{width:100%;border-collapse:collapse;font-size:13px}.mapping-table th{text-align:left;font-size:10px;letter-spacing:.6px;color:var(--accent);font-weight:500}.mapping-table td,.mapping-table th{padding:15px 16px;border-bottom:1px solid var(--line);vertical-align:top}.mapping-table th:first-child,.mapping-table td:first-child{padding-left:0}.mapping-table .note{margin-top:15px;max-width:800px}.findings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:35px 0}.findings-grid article{background:#edeae1;padding:25px}.findings-grid article>span{font:24px Georgia;color:var(--accent)}.findings-grid h3{font-size:25px;line-height:1.2;margin:18px 0}.findings-grid p{font-size:13px;color:var(--muted);line-height:1.8}.result-numbers{display:flex;gap:45px;flex-wrap:wrap;background:#edeae1;padding:27px 30px;margin:30px 0}.result-numbers b{font:35px Georgia;display:block;margin-bottom:8px}.result-numbers span{font-size:10px;color:var(--muted)}.case-reading{font-size:15px;line-height:1.85;color:var(--muted);max-width:850px;margin:25px 0 50px}.discussion-list article{display:grid;grid-template-columns:55px 1fr;gap:25px;border-top:1px solid var(--line);padding:30px 0}.discussion-list article>span{font:22px Georgia;color:var(--accent)}.discussion-list h3{font-size:28px;line-height:1.2;margin-bottom:15px}.discussion-list p{font-size:15px;line-height:1.85;color:var(--muted);max-width:830px}.research-appendix{margin:45px 0;border-top:1px solid var(--line);padding:25px 0}.research-appendix summary{cursor:pointer;font-size:14px;color:var(--accent)}.case-source{display:flex;gap:15px;flex-wrap:wrap;margin:35px 0 65px}.case-source p{width:100%;font-size:11px;color:var(--muted);margin-top:10px}.research-content .case-figure img{padding:16px}@media(max-width:760px){.case-heading{margin-top:40px}.case-heading h2{font-size:32px}.case-two,.findings-grid,.game-step-grid{grid-template-columns:1fr;gap:25px}.story-panel-grid{grid-template-columns:1fr 1fr;gap:12px}.case-two .case-figure img{height:auto;max-height:430px}.game-step-grid img{height:auto;max-height:300px}.mapping-table table{font-size:11px;min-width:420px}.discussion-list article{grid-template-columns:35px 1fr;gap:12px}.discussion-list h3{font-size:25px}.result-numbers{gap:25px}.result-numbers b{font-size:29px}.research-content .case-figure img{padding:6px}}
/* Flip the horizontal wearing photo by a further 180 degrees. */
.bite .art img{transform:translateX(-50%) rotate(270deg)}.detail-visual img[src$="bite-photo.png"]{transform:rotate(270deg)}
