/* Editorial refinement: centered compositions, light surfaces, deliberate motion. */
:root{--paper:#faf9f6;--ink:#242433;--blue:#5552d9;--pink:#d761a7;--line:#e2dfeb;--lilac:#ece7fb}
.header{background:#faf9f6ed;border-color:#e9e6ee}.header .wordmark{background:transparent;align-items:center}.header .official-logo{width:55px;height:66px}.footer .official-logo{width:100px;height:120px}.header-cta{padding:16px 25px;background:#fff;border-color:#ddd9e8;box-shadow:0 3px 12px #30214805}.header-cta:hover{background:#eee9fb}.header nav{font-size:12px}
.partner{font-size:14px;letter-spacing:.01em;gap:12px;background:#fff;border:1px solid #e4deee;padding:11px 19px 11px 12px;border-radius:12px;box-shadow:0 4px 25px #61539d08}.partner>span{font-size:inherit;color:var(--ink)}.partner strong{color:#6150a4;font-weight:700}.partner .partner-seal{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#f0eafa;color:#7560b5}.partner-seal svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hero-stage{margin-top:34px}.hero-bottom{margin-top:35px}.hero-bottom p{line-height:1.8;max-width:100%;letter-spacing:.015em}.hero-bottom strong{display:block;font-size:clamp(18px,1.8vw,27px);font-weight:700;line-height:1.7}.hero-bottom p>span{display:block;font-size:15px;color:#656371;margin-top:12px;line-height:1.9}.hero-bottom strong:after{content:"";display:block;width:58px;height:3px;margin-top:14px;background:linear-gradient(90deg,#7870e2,#e58bbf)}
.sculpture{z-index:3;transform:rotateX(var(--my)) rotateY(var(--mx));transition:transform .35s var(--ease);--spin-kick:0deg;--star-scale:1}.sculpture-hit{position:absolute;inset:0;background:transparent;z-index:6;border-radius:50%;touch-action:pan-y;cursor:grab}.sculpture-hit:active{cursor:grabbing}.sculpture-hit:focus-visible{outline:2px solid #8076d5;outline-offset:5px}.orb{animation:float 9s ease-in-out infinite}.orb svg{animation:none;transform:rotate(calc(18deg + var(--spin-kick))) scale(var(--star-scale));transition:transform 1.8s cubic-bezier(.16,.7,.2,1);will-change:transform}.sculpture.engaged .orb svg{--star-scale:1.09}.sculpture.engaged .bars i{animation-duration:.22s}.sculpture.engaged .signal{box-shadow:0 0 28px #bfa9ec65}.sculpture .spark,.sculpture .orbit,.sculpture .signal,.sculpture .orbit-label,.orb{pointer-events:none}.star-hint{position:absolute;bottom:0;left:50%;transform:translate(-50%,26px);font-size:9px;font-weight:600;letter-spacing:.16em;color:#827c96;white-space:nowrap}.energy-ring{position:absolute;inset:19%;border:1px solid #a696d9;border-radius:50%;opacity:0;pointer-events:none}.energy-ring.burst{animation:energy-burst 1.1s var(--ease)}@keyframes energy-burst{0%{opacity:.75;transform:scale(.45)}100%{opacity:0;transform:scale(1.8)}}
.section{padding-block:115px}.section-kicker{font-size:13px;letter-spacing:.12em;color:#78678e}.section-title{justify-content:center;text-align:center;position:relative;margin-bottom:60px}.section-title .section-kicker{justify-content:center}.section-title h2{font-size:clamp(58px,7vw,94px);letter-spacing:-.07em;line-height:1.1;margin-top:15px}.section-title:after{content:"";position:absolute;bottom:-23px;width:32px;height:3px;border-radius:5px;background:linear-gradient(90deg,#9686d8,#e6a5cd)}
.campaign{position:relative;text-align:center;background:radial-gradient(ellipse at 50% 36%,#f0e7ff 0,transparent 56%),linear-gradient(180deg,#faf9f6,#fff8f5);isolation:isolate}.campaign:before,.campaign:after{content:"";position:absolute;border:1px solid #c4aed929;border-radius:50%;width:640px;height:640px;left:50%;top:47%;transform:translate(-50%,-50%);z-index:-1}.campaign:after{width:820px;height:820px;border-color:#d7c9e626}.campaign>.section-kicker{justify-content:center;display:table;margin:auto;border:1px solid #d8cce7;background:#ffffff99;border-radius:30px;padding:11px 25px;font-size:14px;color:#72608d;letter-spacing:.13em}.campaign-title{display:flex;flex-direction:column;justify-content:center;gap:0;margin:22px auto 42px}.amount{position:relative;justify-content:center;align-items:baseline;letter-spacing:-.075em;line-height:1}.amount>span:first-child{font-size:clamp(155px,19vw,260px);font-weight:800;color:transparent;background:linear-gradient(135deg,#786de0 5%,#a48add 42%,#cc86b7 73%,#b696d7);background-clip:text;-webkit-background-clip:text;text-shadow:0 15px 55px #9673c918;line-height:.98}.amount>span:last-child{font-size:clamp(28px,4vw,52px);margin:0 0 16px 15px;color:#5d5171;letter-spacing:-.05em}.campaign h2{font-size:clamp(24px,2.4vw,34px);line-height:1.7;letter-spacing:.01em;margin-top:16px}.campaign h2 br{display:none}.campaign h2 br:after{content:" "}.campaign-benefits{max-width:870px;margin:auto;background:#ffffffb8;border:1px solid #e8dfee;border-radius:18px;box-shadow:0 18px 45px #7b549608}.campaign-benefits p{padding:24px 15px;font-size:15px;gap:15px;color:#544c61}.campaign-benefits strong{font-size:39px;color:#7762a5}.campaign-benefits p+p:before{background:#e9deee}.note{margin:20px auto 0;max-width:850px;font-size:11px;color:#79717d}
.features{background:#fff;gap:8%;align-items:center;position:relative;isolation:isolate}.features:before{content:"";position:absolute;width:650px;height:650px;left:-180px;bottom:-250px;background:radial-gradient(circle,#f0eafb,transparent 66%);z-index:-1}.feature-heading{position:relative;padding-bottom:0}.feature-heading .section-kicker{gap:0}.feature-heading .section-kicker b{font-size:19px;line-height:1;margin-right:3px}.feature-heading h2{margin:28px 0 25px;line-height:1.2}.cost-intro{display:block;font-size:clamp(18px,1.9vw,27px);font-weight:600;letter-spacing:.03em;margin-bottom:15px}.cost-statement{display:block;font-size:clamp(37px,4vw,58px);letter-spacing:-.055em;white-space:nowrap}.cost-zero{font-size:1.37em;display:inline-block;margin-left:6px;color:transparent;background:linear-gradient(110deg,#6b5bb7,#b976ab);background-clip:text;-webkit-background-clip:text;position:relative}.cost-zero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;background:#eadbf3;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) .4s}.feature-heading.in-view .cost-zero:after{transform:scaleX(1)}.features .body-copy{font-size:14px;line-height:2.1;color:#706a78}.features .body-copy br{display:none}.zero-art{font-size:unset;letter-spacing:normal;line-height:1;width:220px;height:215px;margin:28px auto 0;position:relative;display:flex;align-items:baseline;justify-content:center;padding-top:24px;color:#9c89c0}.zero-digit{position:relative!important;font-size:170px!important;line-height:1!important;right:auto!important;bottom:auto!important;color:transparent!important;background:linear-gradient(145deg,#f1e6ff,#9c8cce 55%,#d1b7d6);background-clip:text;-webkit-background-clip:text;animation:none!important;font-weight:500;letter-spacing:-.04em;filter:drop-shadow(0 12px 12px #8f72aa13);transform:translateY(22px);opacity:0;transition:transform 1.4s var(--ease) .15s,opacity .9s}.zero-unit{position:relative!important;font-size:26px!important;right:auto!important;bottom:auto!important;animation:none!important;color:#9983ab!important;margin-left:6px;font-weight:500}.zero-art .zero-orbit{position:absolute;inset:0;border:1px solid #e6ddef;border-radius:50%;width:auto;height:auto;right:0;bottom:0;transform:rotate(-25deg) scaleY(.58);animation:none}.feature-heading.in-view .zero-digit{transform:translateY(0);opacity:1}.feature-list li{padding:0 14px;gap:27px;min-height:111px;border-color:#e6e1ed;position:relative;transition:background .4s}.feature-list li:last-child{border-color:#e6e1ed}.feature-list li:before{content:"";position:absolute;left:0;top:0;height:1px;background:linear-gradient(90deg,#a08dcc,#e5c2dd);width:100%;transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease) .2s}.feature-list li.in-view:before{transform:scaleX(1)}.feature-list li:hover{background:#fcfaff}.feature-list li>span{font-size:12px;color:#aa95bf;align-self:center;margin:0}.feature-list h3{font-size:23px;font-weight:600;letter-spacing:.02em}.feature-list b{color:#81709f;font-size:49px}.feature-list small{font-size:18px}
.partnership{background:radial-gradient(ellipse at 15% 30%,#f8e9f2,transparent 55%),radial-gradient(ellipse at 90% 65%,#e2eefb,transparent 55%),#f4f0fb;color:var(--ink)}.partnership-halo{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,#fff9,transparent 64%)}.official-partners{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);gap:0;padding:0 35px;max-width:800px;margin:auto;align-items:center;justify-items:center;background:#fff;border:1px solid #ffffff;border-radius:28px;box-shadow:0 30px 65px #7761960a;overflow:hidden}.official-partners .partner-starnest{width:330px;max-width:100%;grid-column:1}.official-partners .partner-dena{width:240px;max-width:86%;grid-column:3}.official-partners i{grid-column:2;font-size:23px;color:#b4a8c1;margin:0;font-weight:300}.partnership .section-kicker{color:#846d9e;margin-top:42px;font-size:13px}.partnership h2{font-size:clamp(30px,4.5vw,59px);line-height:1.7;font-weight:600;letter-spacing:.025em}.partnership-copy{color:#807088;font-size:14px;margin-top:22px;letter-spacing:.04em}
.support{background:#faf9fc}.support-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1060px;margin:auto}.support-row{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;position:relative;background:linear-gradient(145deg,#fff,#fdfbff);border:1px solid #e9e3f0!important;border-radius:26px;padding:40px 27px;box-shadow:0 14px 40px #4d376705;transition:transform .5s var(--ease),box-shadow .5s}.support-row:hover{transform:translateY(-6px)!important;box-shadow:0 22px 45px #76569612}.row-number{position:absolute;left:25px;top:23px;align-self:auto;padding:0;font-size:12px;letter-spacing:.12em;color:#a897b8}.support-icon{width:68px;height:68px;border-radius:20px;padding:12px;margin-bottom:23px;background:linear-gradient(135deg,#eee7f9,#f5eef9);color:#9580b1;box-shadow:inset 0 1px 0 #fff,0 6px 16px #b6a4ce18}.support-row:nth-child(2) .support-icon{background:linear-gradient(135deg,#e8edf8,#f1effa);color:#8096bb}.support-row:nth-child(3) .support-icon{background:linear-gradient(135deg,#f7e7ef,#faf0f5);color:#bc8eaa}.support-row:nth-child(4) .support-icon{background:linear-gradient(135deg,#ececde,#f6f5ed);color:#a0a181}.support-row h3{font-size:22px;letter-spacing:.02em}.support-row p{font-size:14px;line-height:2;color:#78717f;margin-top:18px;max-width:390px}.support-row p br{display:none}.support-row:hover .support-icon{transform:translateY(-3px);transition:transform .5s}
.voices{background:radial-gradient(ellipse at 0% 20%,#e9e7f9,transparent 65%),radial-gradient(ellipse at 100% 80%,#f9e7ef,transparent 70%),#f5f0f8}.voices .section-title{display:flex;justify-content:center}.voice-controls{position:absolute;right:0;bottom:10px;gap:10px}.voice-controls button{border-color:#d9cce3;color:#8c779f;background:#ffffff66}.voice-controls button:hover{background:#e8def4}.voice-track{gap:24px;max-width:1160px;margin:auto;padding:18px 0 25px}.voice-card{position:relative;min-width:calc((100% - 48px)/3);padding:34px 30px 29px;background:#fffdfef2;border:1px solid #fff;border-radius:24px;box-shadow:0 15px 40px #6a4c8808;overflow:hidden;transition:transform .6s var(--ease),box-shadow .6s}.voice-card:before{content:"";position:absolute;top:0;left:30px;right:30px;height:3px;border-radius:0 0 10px 10px;background:linear-gradient(90deg,#cbb4e4,#efdfef)}.voice-card:nth-child(2):before{background:linear-gradient(90deg,#abc2e4,#e1e6f5)}.voice-card:nth-child(3):before{background:linear-gradient(90deg,#e3b9cd,#f4e3eb)}.voice-mark{display:flex;align-items:center;justify-content:center;gap:5px;height:42px;width:58px;margin:0 auto 23px}.voice-mark span{display:block;width:4px;border-radius:4px;background:#bda6d6;height:12px;transition:height .5s var(--ease)}.voice-mark span:nth-child(2),.voice-mark span:nth-child(4){height:24px}.voice-mark span:nth-child(3){height:36px}.voice-card:nth-child(2) .voice-mark span{background:#a9bad6}.voice-card:nth-child(3) .voice-mark span{background:#d7afc2}.voice-card:hover .voice-mark span:nth-child(even){height:34px}.voice-card:hover .voice-mark span:nth-child(odd){height:17px}blockquote{font-size:14px;line-height:2.15;font-weight:500;color:#625b6a;margin-bottom:30px}figcaption{border-color:#eae4ed;justify-content:center;gap:12px;padding-top:23px;text-align:left}figcaption>span:last-child{margin-left:0}.avatar{width:45px;height:45px;background:linear-gradient(135deg,#e3d8f1,#f3eafa);color:#9b84b3;font-weight:500}.voice-card:nth-child(2) .avatar{background:linear-gradient(135deg,#dfe7f5,#eff3fa);color:#819abc}.voice-card:nth-child(3) .avatar{background:linear-gradient(135deg,#f1dfe9,#faf0f4);color:#b38da5}figcaption b{font-size:12px;color:#6b6174}figcaption p{font-size:11px;color:#9a8ea4}
.faq{display:block;background:#fff;position:relative}.faq .section-title{display:flex;justify-content:center;margin:0 0 65px}.faq-list{max-width:880px;margin:0 auto;display:grid;gap:12px}details{border:1px solid #eae3f0;border-radius:16px;background:#fcfaff;overflow:hidden;transition:background .3s,border-color .3s,box-shadow .3s}details:last-child{border-bottom:1px solid #eae3f0}details[open]{background:#fff;border-color:#d9c9ea;box-shadow:0 12px 30px #79608e08}summary{padding:25px 27px;gap:20px;font-size:14px;font-weight:500}summary>span{font-size:10px;color:#a28caf;letter-spacing:.04em;border-right:1px solid #e6ddec;padding-right:17px}summary i{background:#f1eaf8;border-radius:50%;width:27px;height:27px;min-width:27px}summary i:before,summary i:after{left:7px;top:13px;width:13px;background:#9b86ad}details[open] summary{color:#766084}.answer{padding:0 64px 27px 83px;color:#78717f;font-size:14px;line-height:2}.contact{background:radial-gradient(ellipse at 30% 10%,#ffeef5,transparent 65%),linear-gradient(125deg,#f4e7fa,#e7e9fa);color:var(--ink)}.contact-type{color:#dbcfe733}.contact .apply{background:#71608d;box-shadow:0 14px 34px #71608d22}.contact .apply:hover{background:#584575}.contact h2{font-weight:600}.marquee{background:#ebe5f6;border-color:#d2c5e0;color:#88709f;font-size:22px}.marquee span{font-size:16px}.motion-toggle{border-color:#e0d7e9;background:#fffdfce6;color:#9b8da7}
@media(min-width:761px){.voice-controls{display:none}}
@media(max-width:1100px){.header nav{gap:18px;font-size:11px}.header-cta{padding:14px 19px;font-size:11px}.support-row p{font-size:13px}.feature-list h3{font-size:20px}.feature-list b{font-size:42px}.voice-card{padding:30px 23px}.official-partners{max-width:720px}}
@media(max-width:760px){
 .header .official-logo{width:44px;height:53px}.header-cta{font-size:11px;padding:12px 19px}.header{padding-inline:6%}.footer .official-logo{width:80px;height:96px}
 .hero{padding-top:21px}.partner{font-size:10px;padding:9px 12px 9px 9px;gap:8px;border-radius:10px}.partner .partner-seal{width:28px;height:28px}.partner-seal svg{width:18px;height:18px}.partner strong{display:inline;font-size:10px}.hero-stage{padding-bottom:165px;margin-top:29px}.hero-bottom{margin-top:13px}.hero-bottom p{width:100%;max-width:100%}.hero-bottom strong{font-size:19px;line-height:1.8;letter-spacing:.015em}.hero-bottom strong:after{margin-top:14px;width:45px}.hero-bottom p>span{font-size:12px;margin-top:15px;max-width:330px;line-height:2}.sculpture{width:61%;right:-3%;top:39%}.star-hint{font-size:7px;transform:translate(-50%,22px);letter-spacing:.12em}.signal{right:-1%}.section{padding-block:76px}.section-kicker{font-size:12px}.section-title{margin-bottom:48px}.section-title h2{font-size:61px;margin-top:12px}.section-title:after{bottom:-18px;width:28px}.marquee{font-size:18px;padding:13px 0}
 .campaign{padding-top:69px;padding-bottom:65px}.campaign>.section-kicker{font-size:12px;padding:10px 22px}.campaign-title{margin-top:29px;margin-bottom:27px}.amount>span:first-child{font-size:165px}.amount>span:last-child{font-size:29px;margin:0 0 9px 9px}.campaign h2{font-size:21px;line-height:1.65;margin-top:17px}.campaign h2 br{display:block}.campaign-benefits{border-radius:16px;max-width:480px;grid-template-columns:1fr 1fr}.campaign-benefits p{font-size:11px;padding:19px 9px;gap:8px}.campaign-benefits p:first-child{font-size:13px;padding:14px}.campaign-benefits strong{font-size:32px}.campaign-benefits strong span{font-size:12px}.note{font-size:10px;line-height:1.85;max-width:350px}.campaign:before{width:470px;height:470px}.campaign:after{width:590px;height:590px}
 .features{display:block}.feature-heading{text-align:center}.feature-heading .section-kicker{justify-content:center}.feature-heading h2{margin:24px 0 23px}.cost-intro{font-size:19px;letter-spacing:.015em;margin-bottom:17px}.cost-statement{font-size:37px}.features .body-copy{font-size:13px;line-height:2.15;max-width:390px;margin:auto;text-align:left}.zero-art{position:relative;top:auto;right:auto;width:180px;height:185px;margin:18px auto 12px;opacity:1;padding-top:22px}.zero-digit{font-size:143px!important}.zero-unit{font-size:22px!important}.feature-list{max-width:500px;margin:auto}.feature-list li{padding-inline:8px;min-height:90px;gap:21px}.feature-list h3{font-size:19px}.feature-list li>span{margin:0;font-size:10px}.feature-list b{font-size:39px}.feature-list small{font-size:16px}
 .official-partners{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);padding:12px 8px;border-radius:19px;gap:0;max-width:480px}.official-partners .partner-starnest{width:210px;max-width:100%}.official-partners .partner-dena{width:140px;max-width:94%}.official-partners i{font-size:18px;margin:0}.partnership .section-kicker{font-size:10px;letter-spacing:.04em;margin:30px 0 19px}.partnership h2{font-size:29px;line-height:1.7;letter-spacing:0}.partnership-copy{font-size:12px;line-height:2;letter-spacing:0;margin-top:19px}
 .support-list{grid-template-columns:1fr;gap:16px;max-width:480px}.support-row{padding:32px 22px 30px;border-radius:21px}.row-number{left:22px;top:21px;font-size:11px}.support-icon{width:60px;height:60px;padding:10px;border-radius:18px;margin-bottom:18px}.support-row h3{font-size:20px}.support-row p{font-size:13px;line-height:2;margin-top:14px;max-width:325px;grid-column:auto}.support-row:last-child{border-bottom:1px solid #e9e3f0}
 .voices .section-title{margin-bottom:38px}.voice-controls{position:static;justify-content:center;margin:24px auto 0}.voices .section-title{flex-direction:column}.voices .section-title:after{display:none}.voice-controls button{width:40px;height:40px}.voice-track{gap:16px;max-width:none;padding:12px 6% 25px 0;margin:0 -6.8% 0 0}.voice-card{min-width:89%;padding:28px 25px 27px;border-radius:22px}.voice-mark{margin-bottom:20px;height:36px}.voice-mark span:nth-child(3){height:31px}.voice-mark span:nth-child(2),.voice-mark span:nth-child(4){height:22px}blockquote{font-size:14px;min-height:178px;line-height:2.1;margin-bottom:24px}figcaption{padding-top:21px}.avatar{width:42px;height:42px}
 .faq .section-title{margin-bottom:50px}.faq-list{gap:10px}details{border-radius:14px}summary{font-size:12px;padding:22px 15px;gap:11px;line-height:1.9}summary>span{font-size:9px;padding-right:10px}summary i{width:24px;height:24px;min-width:24px}summary i:before,summary i:after{left:6px;top:11px;width:12px}.answer{padding:0 20px 23px 58px;font-size:12px;line-height:2.1}.contact{padding-bottom:115px}.contact h2{font-size:34px}.footer-bottom{font-size:10px}
}
@media(max-width:360px){.hero-bottom strong{font-size:17px}.partner{font-size:9px}.partner strong{font-size:9px}.hero-stage{padding-bottom:144px}.section-title h2{font-size:52px}.campaign h2{font-size:20px}.campaign-benefits p{font-size:10px;gap:7px}.campaign-benefits strong{font-size:29px}.feature-list h3{font-size:17px}.feature-list b{font-size:34px}.cost-statement{font-size:34px}.partnership h2{font-size:25px}.support-row h3{font-size:18px}.voice-card{padding-inline:21px}.voice-card blockquote{font-size:13px}.header-cta{font-size:10px;padding:12px 16px}}
.motion-off .orb svg{transition:none}.motion-off .zero-digit{opacity:1;transform:none}.motion-off .cost-zero:after,.motion-off .feature-list li:before{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.zero-digit{opacity:1;transform:none}.cost-zero:after,.feature-list li:before{transform:scaleX(1)}}
.support-row p,.features .body-copy,blockquote{text-wrap:pretty}
@media(min-width:761px){.support-row p br{display:initial}}
.sculpture .spark,.sculpture .signal,.sculpture .orbit-label{user-select:none}
html.motion-off{scroll-behavior:auto}
.support-row:first-child p br,.support-row:nth-child(3) p br{display:initial}
.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}
.motion-off .answer{opacity:1;transform:none}

/* Third review: clearer Japanese hierarchy and stronger conversion sections. */
.hero-top{justify-content:flex-start;align-items:center}
.partner{padding:15px 22px;gap:0;border-radius:10px;font-size:15px;line-height:1.5}
.hero-bottom p>span{font-size:clamp(17px,1.45vw,22px);font-weight:650;line-height:1.85;color:#242433;margin-top:18px;letter-spacing:.025em}
.ticker-shell{padding:0;margin:24px 0 0;overflow:visible;background:linear-gradient(110deg,#e5dcfb,#f5dced,#e5e8fc,#e5dcfb);background-size:250% 100%;animation:ribbon-light 12s ease-in-out infinite;border-block:1px solid #cbbde2}
.steady-ticker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;text-align:center;width:min(100%,1200px);margin:auto;padding:23px 6%;gap:20px;font-size:clamp(20px,2.5vw,36px);font-weight:800;line-height:1.4;letter-spacing:-.04em;color:#635189}
.steady-ticker span{white-space:nowrap;display:block}
@keyframes ribbon-light{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.campaign{background:radial-gradient(ellipse at 50% 38%,#e9d9ff 0%,#f5e6ff 35%,#fff3f8 65%,#fffaf7 100%);padding-top:95px;padding-bottom:90px}
.campaign:before,.campaign:after{width:650px;height:650px;top:43%;border:1px solid #a380cf40;box-shadow:0 0 45px #bf92e51c,inset 0 0 45px #bf92e51c;animation:campaign-halo 8s ease-in-out infinite}
.campaign:after{width:850px;height:850px;animation-delay:-4s;border-color:#c68cce33}
@keyframes campaign-halo{0%,100%{transform:translate(-50%,-50%) scale(.97);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.07);opacity:1}}
.campaign>.section-kicker{background:#fff9;color:#5f3e8d;border-color:#b799d5;padding:12px 29px;font-size:16px;font-weight:700;box-shadow:0 6px 22px #8661ac0f}
.campaign-title{margin:22px auto 36px}
.amount>span:first-child{font-size:clamp(190px,22vw,315px);font-weight:900;letter-spacing:-.08em;background:linear-gradient(120deg,#5733ad 10%,#8953d6 37%,#b4449c 65%,#6840b7 90%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;animation:prize-light 7s ease-in-out infinite;text-shadow:0 14px 40px #9b59c51b}
@keyframes prize-light{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.amount>span:last-child{font-size:clamp(35px,4.4vw,65px);color:#4a326c;font-weight:800;margin-left:21px}
.campaign h2{font-weight:800;font-size:clamp(24px,2.6vw,39px);color:#382442;margin-top:17px}
.campaign-benefits{background:#fffdfef0;border-color:#d8bee8;box-shadow:0 22px 65px #8750a916;max-width:940px}
.campaign-benefits p{color:#3f304a;font-size:16px;padding:27px 15px}.campaign-benefits strong{color:#70409b;font-size:45px}.note{color:#645769}
.cost-lockup{display:flex;align-items:center;gap:24px;margin:22px 0 26px;position:relative}
.feature-heading .cost-lockup h2{margin:0;flex:1;min-width:0}.cost-intro{font-size:clamp(17px,1.65vw,24px)}.cost-statement{font-size:clamp(32px,3.2vw,46px)}
.cost-lockup .zero-art{flex:0 0 132px;width:132px;height:146px;margin:0;padding-top:17px;position:relative;top:auto;right:auto;opacity:1}
.cost-lockup .zero-digit{font-size:115px!important}.cost-lockup .zero-unit{font-size:22px!important;margin-left:2px}.cost-lockup .zero-orbit{inset:0 -8px}
.partnership-copy{display:table;margin:30px auto 0;padding:16px 27px;color:#292334;background:#ffffffa6;border:1px solid #ddd1e9;border-radius:12px;font-size:clamp(17px,1.75vw,24px);font-weight:700;line-height:1.8;letter-spacing:.02em}
.section-title h2.japanese-title{font-size:clamp(30px,3.65vw,53px);font-weight:750;line-height:1.5;letter-spacing:.045em;margin:0;color:#282133}
.support-row:last-child p{max-width:100%;text-wrap:pretty}
.faq-list summary{font-size:15px;padding:25px 28px}.faq-list .answer{padding-left:28px;padding-right:55px}
.contact{padding:110px 6% 125px;color:#fff;background:radial-gradient(ellipse at 12% 2%,#c981bb70,transparent 50%),radial-gradient(ellipse at 90% 100%,#6874ef99,transparent 60%),linear-gradient(125deg,#512f89,#8660c0 53%,#5c4ca7);isolation:isolate}
.contact:before,.contact:after{content:"";position:absolute;width:650px;height:650px;border:1px solid #ffffff26;border-radius:50%;left:-270px;top:-230px;box-shadow:0 0 70px #eac4ff15,inset 0 0 60px #eac4ff10;z-index:-1;animation:contact-orbit 11s ease-in-out infinite}
.contact:after{width:800px;height:800px;left:auto;right:-310px;top:auto;bottom:-430px;animation-delay:-5s}
@keyframes contact-orbit{0%,100%{transform:translate(0,0) scale(.95)}50%{transform:translate(35px,25px) scale(1.1)}}
.contact>.reveal{position:relative;z-index:2}
.contact .section-kicker{display:table;margin:auto;padding:10px 23px;border:1px solid #ffffff5c;border-radius:40px;color:#fff;font-size:15px;background:#ffffff0a;font-weight:600;letter-spacing:.08em}
.contact h2{font-size:clamp(37px,5vw,74px);font-weight:800;letter-spacing:.015em;line-height:1.5;margin:28px 0 40px;text-shadow:0 5px 25px #34215a24}
.contact .apply{justify-content:center;text-align:center;width:min(100%,470px);font-size:21px;font-weight:750;letter-spacing:.04em;padding:29px 30px;background:#fff;color:#57347f;border:1px solid #fff;border-radius:70px;box-shadow:0 12px 0 #35224c20,0 20px 55px #24103933;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),box-shadow .35s}
.contact .apply:after{content:"";position:absolute;inset:-100% -45%;background:linear-gradient(110deg,transparent 40%,#bb91ea36 49%,#ffffffb8 52%,transparent 60%);transform:translateX(-90%);animation:cta-shine 6s ease-in-out infinite;pointer-events:none;z-index:-1}
@keyframes cta-shine{0%,50%{transform:translateX(-90%)}85%,100%{transform:translateX(90%)}}
.contact .apply:hover{background:#fff;color:#452363;transform:translateY(-5px);box-shadow:0 17px 0 #35224c16,0 24px 60px #24103940}
.contact .apply:focus-visible{outline-color:#fff;outline-offset:8px}.contact-type{color:#fff;opacity:.055;font-size:clamp(140px,24vw,350px)}
@media(max-width:1100px){.cost-lockup{gap:14px}.cost-lockup .zero-art{flex-basis:102px;width:102px;height:124px}.cost-lockup .zero-digit{font-size:94px!important}.cost-lockup .zero-unit{font-size:19px!important}.cost-intro{font-size:17px}.cost-statement{font-size:33px}}
@media(max-width:760px){
 .partner{font-size:11px;padding:12px 17px;line-height:1.5}.partner strong{font-size:11px}.hero-bottom p>span{font-size:15px;line-height:1.95;margin-top:18px;max-width:none;font-weight:650;letter-spacing:0}
 .ticker-shell{margin-top:20px}.steady-ticker{font-size:19px;padding:18px 5%;gap:12px;line-height:1.5}
 .campaign{padding-block:70px}.campaign>.section-kicker{font-size:13px;padding:11px 23px}.campaign-title{margin:29px auto 30px}.amount>span:first-child{font-size:188px}.amount>span:last-child{font-size:33px;margin-left:13px}.campaign h2{font-size:24px;line-height:1.6;margin-top:22px}.campaign-benefits p{font-size:11px;padding:20px 10px;gap:9px}.campaign-benefits p:first-child{font-size:14px;padding:15px}.campaign-benefits strong{font-size:36px}.campaign:before{width:460px;height:460px}.campaign:after{width:600px;height:600px}.campaign .note{font-size:10px;color:#5f5364}
 .cost-lockup{max-width:410px;justify-content:center;gap:16px;margin:25px auto}.feature-heading .cost-lockup h2{flex:0 1 auto;text-align:left}.cost-intro{font-size:17px;margin-bottom:12px}.cost-statement{font-size:31px}.cost-lockup .zero-art{flex-basis:100px;width:100px;height:120px;padding-top:14px}.cost-lockup .zero-digit{font-size:93px!important}.cost-lockup .zero-unit{font-size:17px!important}.features .body-copy{margin-bottom:31px}
 .partnership-copy{padding:17px 15px;margin-top:26px;font-size:16px;line-height:1.8;border-radius:11px}.section-title h2.japanese-title{font-size:29px;letter-spacing:.025em;line-height:1.6}.voices .section-title{margin-bottom:25px}
 .faq-list summary{font-size:13px;padding:22px 18px;gap:14px}.faq-list .answer{padding:0 22px 24px;font-size:13px}.faq-list summary i{flex-shrink:0}
 .contact{padding:76px 6% 105px}.contact .section-kicker{font-size:12px;letter-spacing:.04em;padding:10px 18px}.contact h2{font-size:35px;line-height:1.6;margin:26px 0 31px;letter-spacing:0}.contact .apply{padding:24px 20px;font-size:18px;width:100%;letter-spacing:.02em}.contact:before{width:450px;height:450px;left:-280px;top:-180px}.contact:after{width:550px;height:550px;right:-330px;bottom:-300px}
}
@media(max-width:360px){.steady-ticker{font-size:17px;gap:8px}.hero-bottom p>span{font-size:14px}.amount>span:first-child{font-size:164px}.amount>span:last-child{font-size:29px}.campaign h2{font-size:21px}.campaign-benefits p{font-size:10px;padding-inline:8px}.cost-lockup{gap:10px}.cost-intro{font-size:14px}.cost-statement{font-size:28px}.cost-lockup .zero-art{flex-basis:86px;width:86px;height:105px;padding-top:13px}.cost-lockup .zero-digit{font-size:80px!important}.cost-lockup .zero-unit{font-size:15px!important}.partnership-copy{font-size:14px}.section-title h2.japanese-title{font-size:25px}.contact h2{font-size:30px}.contact .apply{font-size:17px}}

/* Fourth review: glyph-safe prize typography and a centered feature story. */
.amount{overflow:visible;letter-spacing:normal}
.amount>span:first-child{display:block;flex-shrink:0;letter-spacing:-.045em;line-height:1.12;padding:.025em .075em .035em .025em;overflow:visible}
.amount>span:last-child{margin-left:0}
.partner{display:inline-flex;align-items:stretch;gap:0;padding:0;border:1px solid #9d82c3;border-radius:11px;background:#fff;box-shadow:0 7px 22px #63409816;overflow:hidden;line-height:1.5}
.partner .partner-name{display:flex;align-items:center;padding:15px 21px;font-size:16px;font-weight:700;letter-spacing:.015em;color:#332447}
.partner>strong{display:flex;align-items:center;padding:15px 20px;background:linear-gradient(115deg,#7851ae,#554191);color:#fff;font-size:14px;font-weight:750;letter-spacing:.04em}
.steady-ticker{padding-block:27px}
.steady-ticker span{position:relative;animation:ticker-emphasis 9s ease-in-out infinite;transform-origin:center;--phrase-color:#6851b0}
.steady-ticker span:nth-child(2){animation-delay:-6s;--phrase-color:#514dd1}
.steady-ticker span:nth-child(3){animation-delay:-3s;--phrase-color:#b44d91}
.steady-ticker span:after{content:"";position:absolute;width:30px;height:3px;left:50%;bottom:-7px;border-radius:3px;background:var(--phrase-color);transform:translateX(-50%) scaleX(0);animation:ticker-underline 9s ease-in-out infinite;animation-delay:inherit}
@keyframes ticker-emphasis{0%,8%,33%,100%{transform:translateY(0) scale(1);color:#635189}15%,24%{transform:translateY(-4px) scale(1.06);color:var(--phrase-color)}}
@keyframes ticker-underline{0%,8%,33%,100%{transform:translateX(-50%) scaleX(0)}15%,24%{transform:translateX(-50%) scaleX(1)}}
.features{display:flex;flex-direction:column;align-items:center;gap:48px;text-align:center}
.feature-heading{width:100%;max-width:820px;text-align:center}
.feature-heading>.section-kicker{justify-content:center}
.features .cost-lockup{justify-content:center;gap:28px;max-width:620px;margin:27px auto}
.feature-heading .cost-lockup h2{flex:0 1 auto;text-align:center}
.features .body-copy{max-width:710px;margin:0 auto;text-align:center;font-size:15px;line-height:2.1}
.features .feature-list{width:100%;max-width:820px;margin:0 auto}
.feature-list li{justify-content:center;position:relative;text-align:center;padding:0 52px}
.feature-list li>span{position:absolute;left:20px;top:50%;transform:translateY(-50%)}
.feature-list h3{font-size:24px}
@media(max-width:760px){
 .partner .partner-name{font-size:11px;padding:12px 13px;letter-spacing:0}.partner>strong{font-size:10px;padding:12px 12px;letter-spacing:.02em}.partner{border-radius:9px;max-width:100%}
 .steady-ticker{padding-block:23px}.steady-ticker span:after{width:23px;height:2px;bottom:-6px}
 .features{gap:33px}.features .cost-lockup{gap:16px;margin:24px auto}.features .body-copy{font-size:13px;margin:0 auto;max-width:440px;text-align:center}.feature-list li{min-height:90px;padding-inline:30px}.feature-list li>span{left:6px}.feature-list h3{font-size:19px}
}
@media(max-width:360px){.partner .partner-name{font-size:10px;padding-inline:10px}.partner>strong{font-size:9px;padding-inline:10px}.features .cost-lockup{gap:10px}.feature-list h3{font-size:17px}.steady-ticker{padding-inline:4%}}

/* Pointer response: no layout shifts, no interception of links or scrolling. */
.pointer-stage{position:relative}
.pointer-aura{position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(260px circle at var(--pointer-x,50%) var(--pointer-y,50%),#b99aef38,#f7b5dc1c 45%,transparent 75%);opacity:0;transition:opacity .45s;mix-blend-mode:multiply;z-index:4}
.pointer-lit>.pointer-aura{opacity:1}
.contact>.pointer-aura{background:radial-gradient(310px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ffd6ff48,transparent 75%);mix-blend-mode:screen}
.pointer-follower{position:fixed;inset:0;pointer-events:none;z-index:90;opacity:0;transition:opacity .25s}
.pointer-follower.visible{opacity:1}
.pointer-follower span,.pointer-follower i{position:absolute;left:0;top:0;display:block;border-radius:50%;transform:translate(calc(var(--cursor-x,0px) - 18px),calc(var(--cursor-y,0px) - 18px));width:36px;height:36px;border:1px solid #9a68d6b0;background:#bc95ea0c;box-shadow:0 0 18px #b195df20;transition:transform .1s ease-out}
.pointer-follower i{width:7px;height:7px;border:0;background:#b38cda70;transform:translate(calc(var(--cursor-x,0px) - 3px),calc(var(--cursor-y,0px) - 3px));transition-duration:.19s}
.pointer-follower i:last-child{width:4px;height:4px;background:#db90c07a;transition-duration:.28s}
.pointer-follower.pressed span{animation:pointer-tap .55s ease-out}
@keyframes pointer-tap{0%{width:36px;height:36px;opacity:1}100%{width:65px;height:65px;margin:-14px;opacity:0}}
.pointer-reactive{--react-x:0px;--react-y:0px;--tilt-x:0deg;--tilt-y:0deg}
[data-reaction="text"]{translate:0 0;rotate:0deg;transition:translate .45s var(--ease),rotate .45s var(--ease),text-shadow .4s}
[data-reaction="text"].pointer-active{translate:var(--react-x) var(--react-y);rotate:calc(var(--tilt-y) * .28);text-shadow:2px 4px 22px #a676d74a}
h1 .line{padding:10px 15px 14px 12px;margin:-10px -15px -7px -12px}
.amount.pointer-active{rotate:0deg}
[data-reaction="card"]{position:relative;transition:transform .5s var(--ease),box-shadow .5s,border-color .4s}
[data-reaction="card"].pointer-active{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-4px)!important;box-shadow:0 18px 42px #9570bd24;border-color:#ba99d4!important;background-image:radial-gradient(200px circle at var(--shine-x,50%) var(--shine-y,50%),#eadcf9b8,transparent 85%)}
.feature-list li.pointer-active{background-color:#f9f4ff}
.partner.pointer-active{transform:translate(var(--react-x),var(--react-y))!important}
[data-reaction="button"]{translate:0 0;transition:translate .35s var(--ease),transform .35s var(--ease),box-shadow .35s,background .3s}
[data-reaction="button"].pointer-active{translate:var(--react-x) var(--react-y);box-shadow:0 8px 26px #a17ac638}
.header nav a.pointer-active,.footer nav a.pointer-active{box-shadow:none;color:#8654b4}
.steady-ticker span.pointer-active{animation-play-state:paused;color:var(--phrase-color)}
.motion-off .pointer-follower,.motion-off .pointer-aura{display:none}
.motion-off .pointer-reactive{translate:none!important;rotate:none!important}
@media(prefers-reduced-motion:reduce){.pointer-follower,.pointer-aura{display:none}.pointer-reactive{translate:none!important;rotate:none!important}}
@media(max-width:760px){.pointer-aura{background-size:auto}.pointer-follower{display:none}[data-reaction="text"].pointer-active{translate:calc(var(--react-x) * .5) calc(var(--react-y) * .5);rotate:0deg}[data-reaction="card"].pointer-active{transform:translateY(-3px)!important}}
.hero h1>.line{overflow:visible}
.official-partners{position:relative;z-index:5}

/* Low-latency pointer layers: move fixed-size textures instead of repainting gradients. */
.pointer-follower{inset:auto;left:0;top:0;width:36px;height:36px;will-change:transform;transition:opacity .12s;contain:layout style}
.pointer-follower span{inset:0;transform:none;transition:none;box-shadow:none;background:transparent;border-color:#9a68d699}
.pointer-aura{inset:auto;left:0;top:0;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#bb9aeb30, #f7b5dc16 42%,transparent 72%);mix-blend-mode:normal;transition:opacity .2s;contain:strict}
.pointer-lit>.pointer-aura{will-change:transform}
.contact>.pointer-aura{background:radial-gradient(circle,#ffd6ff30,transparent 72%);mix-blend-mode:normal}
[data-reaction="card"].pointer-active{background-image:radial-gradient(circle at 50% 40%,#eadcf966,transparent 85%);transition:transform .07s linear,box-shadow .2s,border-color .2s}
[data-reaction="text"].pointer-active{transition:translate .06s linear,rotate .06s linear,text-shadow .2s;text-shadow:1px 2px 12px #a676d72a}
[data-reaction="button"].pointer-active{transition:translate .05s linear,transform .15s,box-shadow .2s,background .2s}
.sculpture.engaged{transition:transform .08s linear}

/* Official partnership signature and illustrated profile identities. */
.hero .partner{align-items:center;gap:23px;padding:7px 25px 7px 14px;border:1px solid transparent;border-radius:17px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(115deg,#e5b3d8,#a38bda 50%,#b6d2ec) border-box;box-shadow:0 8px 28px #76539312;overflow:visible}
.partner-brand-logo{display:block;width:190px;height:auto;object-fit:contain;flex-shrink:0;filter:none;transform:none}
.hero .partner>strong{position:relative;display:block;padding:10px 0 10px 23px;border-left:1px solid #e2d6ee;background:none;color:#5c387e;border-radius:0;font-size:15px;letter-spacing:.07em;line-height:1.65;font-weight:750;white-space:nowrap}
.hero .partner>strong:after{content:"";display:block;height:3px;width:100%;margin-top:6px;background:linear-gradient(90deg,#c979bd,#8572d0,#a7c2e6);border-radius:3px}
.hero .partner.pointer-active{transform:none!important;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(115deg,#d18bbd,#8b6cbe 50%,#9bbadd) border-box;box-shadow:0 12px 32px #76539320}
.avatar.illustrated-avatar{display:block;flex-shrink:0;width:70px;height:70px;background-color:#f8f5fb!important;background-image:url('assets/creator-avatars-small.jpg')!important;background-repeat:no-repeat!important;background-size:300% 100%!important;border:2px solid #fff;box-shadow:0 3px 12px #71558912}
.illustrated-avatar.avatar-a{background-position:0% 50%!important}.illustrated-avatar.avatar-b{background-position:50% 50%!important}.illustrated-avatar.avatar-c{background-position:100% 50%!important}
.voices .avatar-note{text-align:center;font-size:10px;color:#766c81;margin:12px auto 0;line-height:1.7}
@media(max-width:1100px){.hero .partner{gap:18px;padding-right:21px}.partner-brand-logo{width:166px}.hero .partner>strong{font-size:13px;padding-left:18px}}
@media(max-width:760px){.hero .partner{gap:13px;padding:5px 16px 5px 9px;border-radius:13px}.partner-brand-logo{width:139px}.hero .partner>strong{font-size:11px;letter-spacing:.03em;padding-left:13px}.avatar.illustrated-avatar{width:65px;height:65px}.voices .avatar-note{margin-top:8px}}
@media(max-width:360px){.hero .partner{gap:10px;padding-right:13px}.partner-brand-logo{width:122px}.hero .partner>strong{font-size:10px;padding-left:10px}.avatar.illustrated-avatar{width:58px;height:58px}}
/* Balance the official partner signature around the visible logo artwork. */
.hero .partner{gap:15px;padding:6px 23px 6px 12px;border-radius:13px;box-shadow:0 5px 18px #7653930c}
.hero .partner-brand-logo{width:150px;height:auto}
.hero .partner>strong{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 0 0 20px;font-size:14px;line-height:1.5;letter-spacing:.025em;border-color:#e3dbea;color:#503c69;font-weight:650}
.hero .partner>strong:after{display:none}
@media(max-width:1100px){.hero .partner{gap:13px;padding:5px 20px 5px 10px}.hero .partner-brand-logo{width:140px}.hero .partner>strong{font-size:13px;padding-left:18px;min-height:35px}}
@media(max-width:760px){.hero .partner{gap:10px;padding:4px 17px 4px 8px;border-radius:11px}.hero .partner-brand-logo{width:124px}.hero .partner>strong{font-size:12px;padding-left:15px;min-height:31px}}
@media(max-width:360px){.hero .partner{gap:8px;padding-right:14px}.hero .partner-brand-logo{width:112px}.hero .partner>strong{font-size:11px;padding-left:13px;min-height:29px}}
/* Center the hero partner badge and introduction across all screen sizes. */
.hero .hero-top{justify-content:center}
.hero .hero-bottom{justify-content:center;text-align:center}
.hero .hero-bottom p{width:100%;margin-inline:auto}
.hero .hero-bottom strong:after{margin-inline:auto}
.hero .hero-bottom p>span{margin-inline:auto}
