:root{--cream:#fff7e9;--paper:#fffdf7;--ink:#141c36;--soft:#3a4563;--blue:#5277ff;--blue-dark:#3156de;--pink:#ff6f9b;--yellow:#ffd84d;--green:#61d7aa;--purple:#9b78ff;--line:rgba(20,28,54,.14);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",system-ui,sans-serif}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}.app-page{min-width:0;overflow:clip}.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:10px 14px;color:#fff;background:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:absolute;inset:0 0 auto;z-index:100;height:92px;display:flex;align-items:center;gap:10px;padding:20px clamp(22px,4vw,64px)}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;color:var(--ink);background:var(--yellow);box-shadow:4px 4px 0 var(--ink);font:900 12px/1 Arial,sans-serif}.brand-copy{display:grid;gap:3px}.brand-copy b{font:900 13px/1.1 Arial,sans-serif;letter-spacing:.12em}.brand-copy small{color:var(--soft);font:800 9px/1.1 Arial,sans-serif;letter-spacing:.13em}.global-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(18px,2.6vw,42px)}.global-nav a{position:relative;color:var(--ink);font:800 12px/1 Arial,sans-serif;text-decoration:none}.global-nav a:after{content:"";position:absolute;inset:auto 0 -7px;height:3px;border-radius:3px;background:var(--pink);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.global-nav a:hover:after,.global-nav a:focus-visible:after{transform:scaleX(1)}.menu-button{display:none}
.hero{position:relative;min-height:max(760px,100svh);display:grid;grid-template-columns:minmax(0,.86fr) minmax(500px,1.14fr);align-items:center;gap:4vw;padding:132px clamp(24px,5vw,80px) 74px;overflow:hidden;background:radial-gradient(circle at 11% 73%,rgba(255,111,155,.2) 0 9%,transparent 9.3%),radial-gradient(circle at 92% 9%,rgba(82,119,255,.17) 0 12%,transparent 12.3%),linear-gradient(rgba(20,28,54,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,28,54,.045) 1px,transparent 1px),var(--cream);background-size:auto,auto,42px 42px,42px 42px,auto}.hero-copy{position:relative;z-index:3;max-width:680px}.hero-kicker{display:flex;align-items:center;gap:12px;margin:0 0 28px;color:var(--soft);font:850 10px/1.2 Arial,sans-serif;letter-spacing:.14em}.hero-kicker span{padding:9px 13px;border:2px solid var(--ink);border-radius:999px;color:var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.hero h1{margin:0;font:950 clamp(64px,8.7vw,140px)/.75 "Arial Black",Arial,sans-serif;letter-spacing:-.085em}.hero h1 span{display:block;white-space:nowrap}.hero h1 span:last-child{color:var(--blue);font-size:.62em;letter-spacing:-.065em;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}.hero-ja{margin:38px 0 17px;font-size:clamp(25px,2.7vw,42px);font-weight:900;line-height:1.35;letter-spacing:-.045em}.hero-ja em{color:var(--blue-dark);font-style:normal}.hero-lead{max-width:560px;margin:0 0 28px;color:var(--soft);font-size:14px;font-weight:700;line-height:1.9}.hero-cta{width:min(250px,100%);min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 16px 15px 25px;border:2px solid var(--ink);border-radius:999px;color:#fff;background:var(--ink);box-shadow:6px 6px 0 var(--pink);text-decoration:none;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}.hero-cta span{font-size:13px;font-weight:900}.hero-cta b{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:var(--yellow);font-size:20px}.hero-cta:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 var(--pink)}
.hero-playfield{position:relative;z-index:2;width:min(760px,100%);height:min(620px,68vw);min-height:520px;justify-self:center}.hero-screen{position:absolute;margin:0;padding:9px;border:2px solid var(--ink);border-radius:24px;background:#fff;box-shadow:8px 10px 0 var(--ink);overflow:hidden}.hero-screen img{width:100%;height:100%;border-radius:14px;object-fit:cover}.hero-screen figcaption{position:absolute;inset:auto 18px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px)}.hero-screen figcaption span{color:var(--blue-dark);font:850 9px/1 Arial,sans-serif;letter-spacing:.12em}.hero-screen figcaption b{font-size:11px}.hero-screen-main{width:72%;height:52%;top:25%;left:4%;transform:rotate(-4deg)}.hero-screen-top{width:49%;height:34%;top:2%;right:0;transform:rotate(5deg)}.hero-screen-bottom{width:49%;height:34%;right:2%;bottom:0;transform:rotate(3deg)}.hero-sticker{position:absolute;z-index:5;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;font:950 13px/1 Arial,sans-serif;box-shadow:5px 5px 0 var(--ink)}.hero-sticker-a{width:92px;height:92px;right:36%;top:14%;background:var(--yellow);transform:rotate(-12deg)}.hero-sticker-b{width:100px;height:100px;left:1%;bottom:2%;color:#fff;background:var(--pink);transform:rotate(8deg)}.spark{position:absolute;z-index:5;font-style:normal;font-weight:950}.spark-a{top:2%;left:26%;color:var(--pink);font-size:38px}.spark-b{right:7%;top:45%;color:var(--green);font-size:30px}.spark-c{left:41%;bottom:0;color:var(--blue);font-size:34px}.hero-note{position:absolute;right:clamp(22px,4vw,60px);bottom:25px;margin:0;color:var(--soft);font:850 9px/1 Arial,sans-serif;letter-spacing:.16em}
.section-rail{min-height:72px;display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,48px);padding:16px 24px;border-block:2px solid var(--ink);color:#fff;background:var(--blue)}.section-rail span,.section-rail a{font:850 10px/1 Arial,sans-serif;letter-spacing:.1em}.section-rail span{padding:8px 12px;border-radius:999px;color:var(--ink);background:var(--yellow)}.section-rail a{text-decoration:none}.section{padding:clamp(68px,7.5vw,112px) clamp(22px,6vw,92px)}.section-index{margin:0;color:var(--blue-dark);font:900 12px/1 Arial,sans-serif;letter-spacing:.14em}.intro{display:grid;grid-template-columns:100px 1fr;gap:clamp(24px,3vw,48px);background:var(--paper)}.intro-copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.72fr);gap:clamp(32px,4vw,64px);align-items:center}.intro h2{margin:0;font-size:clamp(36px,3.7vw,60px);line-height:1.14;letter-spacing:-.045em}.intro h2 em{color:var(--pink);font-style:normal}.intro-copy>div>p{margin:0 0 28px;color:var(--soft);font-size:17px;font-weight:650;line-height:1.85}.text-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:6px;border-bottom:2px solid var(--ink);font-size:14px;font-weight:900;text-decoration:none}.text-link span{color:var(--pink)}
.apps{background:var(--cream)}.section-heading{display:grid;grid-template-columns:minmax(120px,.16fr) minmax(360px,.72fr) minmax(320px,.52fr);gap:clamp(30px,3vw,54px);align-items:center;margin-bottom:clamp(36px,4.5vw,62px)}.eyebrow{margin:0 0 14px;color:var(--pink);font:900 12px/1 Arial,sans-serif;letter-spacing:.15em}.section-heading h2{margin:0;font-size:clamp(40px,4.6vw,72px);line-height:1.08;letter-spacing:-.06em}.section-lead{margin:0;color:var(--soft);font-size:16px;font-weight:650;line-height:1.8}.featured-app{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.68fr);margin-bottom:18px;border:2px solid var(--ink);border-radius:28px;background:#fff;box-shadow:10px 12px 0 var(--ink);overflow:hidden}.featured-media{position:relative;min-height:560px;overflow:hidden;background:#ff9c70}.featured-media img{width:100%;height:100%;object-fit:contain;transition:transform .65s var(--ease)}.featured-media>span,.app-card__media>span{position:absolute;right:18px;top:18px;padding:10px 13px;border:2px solid var(--ink);border-radius:999px;background:var(--yellow);font:900 9px/1 Arial,sans-serif;box-shadow:3px 3px 0 var(--ink)}.featured-media:hover img,.app-card__media:hover img{transform:scale(1.035)}.featured-copy{padding:clamp(34px,5vw,70px)}.app-meta{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:var(--blue-dark);font:900 9px/1 Arial,sans-serif;letter-spacing:.13em}.app-meta span{width:32px;height:32px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;color:var(--ink);background:var(--yellow)}.featured-copy h3{margin:0 0 8px;font-size:clamp(36px,4.5vw,66px);line-height:1.1;letter-spacing:-.06em}.app-catch{margin:0 0 24px!important;color:var(--pink)!important;font-size:19px!important;font-weight:900!important}.featured-copy>p{margin:0;color:var(--soft);font-size:14px;font-weight:650;line-height:1.9}.featured-copy ul{display:grid;gap:9px;margin:26px 0 30px;padding:0;list-style:none}.featured-copy li{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800}.featured-copy li:before{content:"✓";width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--blue);font-size:11px}.app-button{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 13px 12px 23px;border:2px solid var(--ink);border-radius:999px;color:#fff;background:var(--ink);text-decoration:none}.app-button span{font-size:12px;font-weight:900}.app-button b{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:var(--yellow);font-size:17px}
.app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.app-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(270px,.72fr);min-height:390px;border:2px solid var(--ink);border-radius:24px;background:#fff;overflow:hidden}.app-card__media{position:relative;min-height:340px;overflow:hidden}.app-card__media img{width:100%;height:100%;object-fit:contain;transition:transform .65s var(--ease)}.app-card__copy{display:flex;flex-direction:column;align-items:flex-start;padding:34px 30px}.app-card__copy h3{margin:0 0 16px;font-size:clamp(26px,2.45vw,40px);line-height:1.12;letter-spacing:-.05em}.app-card__copy>p:not(.app-meta){margin:0;color:var(--soft);font-size:12px;font-weight:650;line-height:1.85}.app-card__copy>a{display:inline-flex;align-items:center;gap:12px;margin-top:auto;padding-top:25px;border-bottom:2px solid var(--ink);font-size:11px;font-weight:900;text-decoration:none}.app-card__copy>a span{color:var(--blue-dark);font-size:17px}.app-card-pink .app-card__media{background:#ffb6cf}.app-card-blue .app-card__media{background:#f8ddea}.app-card-yellow .app-card__media{background:#ffeab1}.app-card-purple .app-card__media{background:#25163f}.app-card-green .app-card__media{background:#1d2e35}.app-card-wide{grid-column:1/-1;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}
.process{color:#fff;background:var(--ink)}.section-heading-dark .section-index{color:var(--yellow)}.section-heading-dark .eyebrow{color:var(--green)}.section-heading-dark .section-lead{color:rgba(255,255,255,.65)}.process-list{margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2);list-style:none}.process-list li{display:grid;grid-template-columns:90px 1fr auto;gap:30px;align-items:center;min-height:190px;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.2)}.process-list>li>span{color:var(--yellow);font:950 clamp(36px,5vw,72px)/1 Arial,sans-serif}.process-list li>div>p:first-child{margin:0 0 8px;color:var(--green);font:900 9px/1 Arial,sans-serif;letter-spacing:.16em}.process-list h3{margin:0 0 10px;font-size:clamp(25px,3vw,42px);line-height:1.2;letter-spacing:-.04em}.process-list li>div>p:last-child{max-width:680px;margin:0;color:rgba(255,255,255,.63);font-size:13px;font-weight:600;line-height:1.85}.process-list li>b{width:72px;height:72px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.7);border-radius:50%;color:var(--ink);background:var(--pink);font-size:25px}
.play-guide{display:grid;grid-template-columns:minmax(300px,.56fr) minmax(0,1fr);gap:clamp(50px,8vw,130px);align-items:center;background:var(--paper)}.guide-art{position:relative;width:min(480px,100%);aspect-ratio:1;display:grid;place-items:center;justify-self:center;border:3px solid var(--ink);border-radius:48% 52% 57% 43%/47% 40% 60% 53%;background:var(--yellow);box-shadow:16px 18px 0 var(--blue)}.guide-art>span{width:36%;aspect-ratio:1;display:grid;place-items:center;border:3px solid var(--ink);border-radius:50%;color:#fff;background:var(--pink);font:950 70px/1 Arial,sans-serif;box-shadow:7px 7px 0 var(--ink)}.guide-art i{position:absolute;width:23px;height:23px;border:3px solid var(--ink);border-radius:50%;background:var(--green)}.guide-art i:nth-of-type(1){top:19%;left:17%}.guide-art i:nth-of-type(2){right:14%;bottom:23%;width:32px;height:32px;background:var(--purple)}.guide-art i:nth-of-type(3){right:21%;top:17%;width:15px;height:15px;background:#fff}.guide-copy .eyebrow{margin-top:28px}.guide-copy h2{margin:0 0 25px;font-size:clamp(40px,5vw,72px);line-height:1.15;letter-spacing:-.06em}.guide-copy>p:not(.section-index):not(.eyebrow){max-width:720px;margin:0;color:var(--soft);font-size:14px;font-weight:650;line-height:1.95}.guide-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:40px}.guide-points article{padding:24px 20px;border:2px solid var(--ink);border-radius:18px;background:#fff}.guide-points span{color:var(--blue-dark);font:900 10px/1 Arial,sans-serif}.guide-points h3{margin:13px 0 9px;font-size:15px}.guide-points p{margin:0;color:var(--soft);font-size:11px;font-weight:650;line-height:1.75}
.faq{background:var(--cream)}.faq .section-heading{grid-template-columns:.22fr 1fr}.faq-list{margin-left:22%;border-top:2px solid var(--ink)}.faq details{border-bottom:2px solid var(--ink)}.faq summary{position:relative;display:flex;align-items:center;gap:18px;min-height:94px;padding:24px 62px 24px 4px;cursor:pointer;font-size:clamp(16px,2vw,24px);font-weight:850;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--blue-dark);font:950 20px/1 Arial,sans-serif}.faq summary b{position:absolute;right:12px;top:50%;width:36px;height:36px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);transform:translateY(-50%);transition:transform .22s ease}.faq details[open] summary b{transform:translateY(-50%) rotate(45deg)}.faq details>p{max-width:820px;margin:-5px 0 0;padding:0 62px 28px 42px;color:var(--soft);font-size:13px;font-weight:650;line-height:1.9}
.closing{position:relative;min-height:590px;display:grid;place-content:center;justify-items:center;padding:100px 24px;text-align:center;overflow:hidden;color:#fff;background:var(--blue)}.closing>p{margin:0 0 18px;color:var(--yellow);font:900 10px/1 Arial,sans-serif;letter-spacing:.18em}.closing h2{position:relative;z-index:2;margin:0 0 34px;font-size:clamp(48px,7.5vw,108px);line-height:1.03;letter-spacing:-.075em}.closing a{position:relative;z-index:2;min-width:250px;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 13px 12px 22px;border:2px solid var(--ink);border-radius:999px;color:var(--ink);background:#fff;box-shadow:6px 6px 0 var(--ink);text-decoration:none}.closing a span{font-size:12px;font-weight:900}.closing a b{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--yellow)}.closing-word{position:absolute;left:50%;bottom:-8%;color:rgba(255,255,255,.09);font:950 clamp(180px,30vw,520px)/.7 "Arial Black",sans-serif;letter-spacing:-.1em;transform:translateX(-50%);white-space:nowrap}
.site-footer{display:grid;grid-template-columns:auto 1fr;gap:34px 60px;padding:64px clamp(22px,6vw,92px);color:#fff;background:var(--ink)}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand>span{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:var(--yellow);font:950 12px/1 Arial,sans-serif}.footer-brand div{display:grid;gap:4px}.footer-brand b{font:900 13px/1 Arial,sans-serif;letter-spacing:.1em}.footer-brand small{color:rgba(255,255,255,.55);font:800 9px/1 Arial,sans-serif;letter-spacing:.12em}.site-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 26px;align-items:center}.site-footer nav a{color:rgba(255,255,255,.8);font-size:11px;font-weight:800;text-decoration:none}.site-footer>p{margin:0;color:rgba(255,255,255,.5);font-size:10px;line-height:1.7}.site-footer>small{justify-self:end;color:rgba(255,255,255,.42);font:800 9px/1 Arial,sans-serif}.back-top{position:fixed;right:22px;bottom:22px;z-index:80;width:50px;height:50px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;color:var(--ink);background:var(--yellow);box-shadow:4px 4px 0 var(--ink);font-size:20px;font-weight:950;text-decoration:none}.js-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s var(--ease)}.js-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1180px){.hero{grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr)}.app-card{grid-template-columns:1fr}.app-card__media{min-height:300px}.app-card__copy{min-height:300px}.app-card-wide{grid-template-columns:minmax(0,1.2fr) minmax(300px,.68fr)}}
@media(max-width:1100px){.intro{grid-template-columns:.18fr 1fr}.intro-copy{grid-template-columns:1fr}}@media(max-width:980px){.site-header{height:78px;padding:16px 22px}.brand-copy{display:none}.menu-button{order:4;width:46px;height:46px;display:grid;place-items:center;padding:0;border:2px solid var(--ink);border-radius:50%;background:#fff;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.menu-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.menu-button i,.menu-button i:before,.menu-button i:after{width:20px;height:2px;display:block;border-radius:2px;background:var(--ink)}.menu-button i{position:relative}.menu-button i:before,.menu-button i:after{content:"";position:absolute;left:0}.menu-button i:before{top:-6px}.menu-button i:after{top:6px}.global-nav{position:fixed;inset:0;z-index:-1;display:flex;flex-direction:column;justify-content:center;gap:30px;margin:0;padding:100px 30px;color:#fff;background:rgba(20,28,54,.98);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.global-nav.is-open{z-index:1;opacity:1;visibility:visible}.brand,.menu-button{position:relative;z-index:2}.global-nav a{color:#fff;font-size:25px}.hero{min-height:1040px;grid-template-columns:1fr;align-content:start;gap:30px;padding:122px 24px 52px}.hero-copy{max-width:720px}.hero h1{font-size:clamp(67px,15vw,120px)}.hero h1 span:last-child{font-size:.56em}.hero-playfield{height:570px;min-height:570px}.section-heading{grid-template-columns:.18fr 1fr}.section-heading .section-lead{grid-column:2}.intro{grid-template-columns:.18fr 1fr}.intro-copy{grid-template-columns:1fr}.featured-app{grid-template-columns:1fr}.featured-media{min-height:480px}.app-card-wide{grid-template-columns:1fr}.play-guide{grid-template-columns:1fr}.guide-art{width:min(400px,80%)}.faq-list{margin-left:18%}}
@media(max-width:720px){.brand-mark{width:42px;height:42px;box-shadow:3px 3px 0 var(--ink)}.hero{min-height:900px;padding-inline:18px}.hero-kicker{flex-wrap:wrap;margin-bottom:20px}.hero h1{font-size:clamp(54px,17vw,90px)}.hero h1 span:last-child{-webkit-text-stroke-width:1px}.hero-ja{margin-top:25px;font-size:25px}.hero-lead{font-size:12px}.hero-playfield{width:100%;height:410px;min-height:410px}.hero-screen{padding:5px;border-radius:16px;box-shadow:5px 6px 0 var(--ink)}.hero-screen img{border-radius:9px}.hero-screen figcaption{inset:auto 9px 9px;padding:8px}.hero-screen figcaption span{display:none}.hero-screen figcaption b{font-size:9px}.hero-screen-main{width:78%;height:46%;top:27%;left:0}.hero-screen-top{width:54%;height:31%}.hero-screen-bottom{width:55%;height:30%;right:1%}.hero-sticker-a{width:66px;height:66px;right:34%;top:17%;font-size:10px}.hero-sticker-b{width:70px;height:70px;left:2%;font-size:8px}.hero-note{display:none}.section-rail{justify-content:flex-start;overflow-x:auto}.section-rail>*{flex:0 0 auto}.section{padding:76px 18px}.intro{grid-template-columns:1fr;gap:30px}.intro-copy{gap:30px}.section-heading,.faq .section-heading{grid-template-columns:1fr;gap:22px}.section-heading .section-lead{grid-column:auto}.featured-app{border-radius:20px;box-shadow:6px 7px 0 var(--ink)}.featured-media{min-height:330px}.featured-copy{padding:34px 24px}.app-grid{grid-template-columns:1fr}.app-card-wide{grid-column:auto}.app-card__media{min-height:250px}.app-card__copy{min-height:290px}.process-list li{grid-template-columns:58px 1fr;gap:15px;min-height:0;padding:34px 0}.process-list li>b{display:none}.process-list>li>span{font-size:34px}.guide-art{width:80%;box-shadow:10px 11px 0 var(--blue)}.guide-points{grid-template-columns:1fr}.faq-list{margin-left:0}.faq summary{min-height:82px;padding-left:0;font-size:15px}.faq details>p{padding-left:0;padding-right:10px}.closing{min-height:500px}.site-footer{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start}.site-footer>small{justify-self:start}.back-top{right:14px;bottom:14px;width:46px;height:46px}}
@media(max-width:420px){.hero{min-height:870px}.hero h1{font-size:clamp(50px,16vw,70px)}.hero-playfield{height:365px;min-height:365px}.hero-cta{min-height:62px}.section-heading h2{font-size:39px}.intro h2{font-size:32px}.featured-media{min-height:270px}.featured-copy h3{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js-reveal{opacity:1;transform:none}}








/* 2026-07-20: compact content rhythm — shorter app copy and tighter sections. */
@media (min-width: 721px) {
  .section { padding-block: 64px; }
  .intro { grid-template-columns: 90px minmax(0, 1fr); gap: 28px; }
  .intro-copy { grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr); gap: 46px; }
  .intro h2 { font-size: 3.2rem; line-height: 1.12; }
  .section-heading h2 br, .closing h2 br { display: none; }
  .intro-copy > div > p, .section-lead { line-height: 1.65; }
  .section-heading { grid-template-columns: 100px minmax(360px, .85fr) minmax(300px, .62fr); gap: 28px; margin-bottom: 38px; }
  .section-heading h2 { font-size: 3.15rem; line-height: 1.08; }
  .featured-media { min-height: 460px; }
  .featured-copy { padding-block: 42px; }
  .featured-copy > p { line-height: 1.7; }
  .app-card { min-height: 340px; }
  .app-card__media { min-height: 300px; }
  .app-card__copy { padding: 28px 26px; }
  .app-card__copy h3 { font-size: 2rem; line-height: 1.15; }
  .process-list li { min-height: 145px; padding-block: 23px; }
  .guide-copy h2 { font-size: 3.2rem; }
  .closing { min-height: 470px; padding-block: 72px; }
  .closing h2 { font-size: 4rem; line-height: 1; }
}
@media (max-width: 720px) {
  .section { padding-block: 56px; }
  .section-heading { margin-bottom: 30px; }
  .intro-copy { gap: 24px; }
  .intro-copy > div > p { line-height: 1.7; }
}

/* 2026-07-25: latest topics for app playground. */
.topics{background:#fff}.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.topic-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.72fr);border:2px solid var(--ink);border-radius:26px;background:#fff;box-shadow:8px 9px 0 var(--ink);overflow:hidden}.topic-media{position:relative;min-height:300px;display:block;background:var(--cream);overflow:hidden}.topic-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}.topic-media:hover img{transform:scale(1.035)}.topic-media span{position:absolute;right:16px;top:16px;padding:9px 12px;border:2px solid var(--ink);border-radius:999px;background:var(--yellow);font:900 9px/1 Arial,sans-serif;box-shadow:3px 3px 0 var(--ink)}.topic-copy{display:flex;flex-direction:column;align-items:flex-start;padding:30px 26px}.topic-copy h3{margin:0 0 14px;font-size:clamp(25px,2.6vw,40px);line-height:1.15;letter-spacing:-.05em}.topic-copy>p:not(.app-meta){margin:0 0 24px;color:var(--soft);font-size:12px;font-weight:650;line-height:1.85}.topic-card-music .topic-media span{background:var(--green)}
@media(max-width:1180px){.topic-grid{grid-template-columns:1fr}.topic-card{grid-template-columns:minmax(0,1.12fr) minmax(300px,.76fr)}}
@media(max-width:720px){.topic-card{grid-template-columns:1fr;border-radius:20px;box-shadow:6px 7px 0 var(--ink)}.topic-media{min-height:0;aspect-ratio:16/9}.topic-copy{padding:26px 22px}.topic-copy .app-button{width:100%}.topics .section-heading h2 br{display:none}}