
:root{--bg:#100e19;--panel:#1c1528;--text:#fff8ff;--muted:#bcb0cd;--pink:#ff4ea4;--violet:#9b56ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}.container{max-width:1120px;padding:0 28px;margin:auto}.topbar{position:sticky;top:0;z-index:30;background:#100e19eb;border-bottom:1px solid #ffffff12;backdrop-filter:blur(16px)}.nav-inner{height:76px;display:flex;align-items:center;gap:32px}.brand{font-size:24px;font-weight:900;letter-spacing:-.05em;white-space:nowrap}.brand span{color:var(--pink)}.navlinks{display:flex;gap:25px;margin-left:auto}.navlinks a{font-size:13px;color:#d4c7e0;white-space:nowrap}.navlinks a:hover,.foot-links a:hover{color:#ff77bf}.lang{display:flex;border:1px solid #6c4b7b;border-radius:40px;padding:3px;gap:3px;flex-shrink:0}.lang button{background:none;color:#c6b7d4;border:0;border-radius:25px;font-size:12px;padding:7px 11px}.lang button.active{background:#ed4d9f;color:white}.hero{overflow:hidden;background:radial-gradient(ellipse at 76% 20%,#87255772,transparent 42%),radial-gradient(ellipse at 12% 70%,#47226b70,transparent 48%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;min-height:620px;align-items:center;padding-top:55px;padding-bottom:56px}.eyebrow{color:#ff92c9;letter-spacing:.17em;font-weight:850;font-size:11px}.hero-title{font-size:clamp(39px,4.9vw,65px);line-height:1.24;letter-spacing:-.07em;margin:21px 0}.hero-title::first-line{color:#fff}.lede{max-width:540px;color:#d8c8e1;font-size:15px;line-height:1.95}.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.btn{border:1px solid #75517a;border-radius:14px;padding:14px 23px;display:inline-flex;justify-content:center;align-items:center;font-weight:800;font-size:13.5px;min-height:50px}.btn-primary{border-color:transparent;background:linear-gradient(105deg,#ff4ea4,#8e51fb);box-shadow:0 12px 32px #a7369b45}.btn-outline{background:#ffffff0a}.fine,.store-note{font-size:11px;color:#998cab;margin-top:14px}.hero-visual{position:relative;min-height:510px;display:flex;align-items:center;justify-content:center}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-a{width:400px;height:400px;background:radial-gradient(circle,#b842bb35,transparent 67%)}.orb-b{width:250px;height:250px;border:1px solid #ff76c444}.device{width:204px;aspect-ratio:375/812;background:#050408;border:6px solid #302339;border-radius:29px;overflow:hidden;box-shadow:0 25px 55px #0009,0 0 0 1px #9c5b984d;flex:none}.device img{width:100%;height:100%;object-fit:cover}.hero-main{width:232px;position:relative;z-index:3;transform:rotate(3deg) translateX(38px)}.hero-side{width:164px;position:absolute;z-index:2;transform:rotate(-12deg) translateX(-115px) translateY(40px)}.star{position:absolute;color:#ff78c4;font-size:32px}.s1{top:75px;right:53px}.s2{bottom:53px;left:56px}.section{padding:74px 0}.sec-heading{text-align:center;margin-bottom:29px}.section h2,.download h2{font-size:clamp(28px,3.3vw,40px);letter-spacing:-.055em;line-height:1.38;margin:13px 0 17px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step-grid article{background:linear-gradient(135deg,#24172e,#1a1525);padding:24px;border:1px solid #5b356c;border-radius:21px}.step-grid b{color:#ff78bf;font-size:12px;letter-spacing:.1em}.step-grid h3{margin:10px 0 5px;font-size:17px}.step-grid p,.feature-copy p,.premium-grid p,.safety-box p{font-size:14px;line-height:1.85;color:var(--muted);margin:0}.feature-section.alt{background:#16111e}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.feature-art{height:415px;background:radial-gradient(circle at 50% 50%,#743d9370,transparent 61%),#201528;border:1px solid #543360;border-radius:30px;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.feature-art>.device{width:184px;transform:rotate(-3deg)}.collage>.device:first-child{transform:rotate(-8deg) translateX(35px)}.collage>.secondary-device{position:absolute;width:140px;transform:rotate(10deg) translateX(112px) translateY(38px)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.tags span{padding:6px 12px;border-radius:40px;border:1px solid #63436b;background:#2c1b35;color:#eed1ef;font-size:10px;letter-spacing:.05em}.safety-section{background:#171120}.safety-box{background:linear-gradient(120deg,#392046,#23172f);border:1px solid #764471;border-radius:26px;padding:33px 36px;display:flex;justify-content:space-between;align-items:center;gap:35px}.safety-box>div{max-width:710px}.text-link{white-space:nowrap;color:#ff99ca;font-size:13px;font-weight:750}.premium-grid{display:flex;align-items:center;justify-content:center;gap:100px}.premium-grid>div:first-child{max-width:530px}.premium-grid>.device{width:165px;transform:rotate(6deg)}.download{padding:70px 0;text-align:center;background:radial-gradient(ellipse at 50% 10%,#8c277c75,transparent 62%),#1a1125}.download h2{margin-top:8px}.download p{color:#d5bfdf}.store{margin-top:10px}.legal-short{display:flex;gap:25px;justify-content:center;margin-top:32px;font-size:12px;color:#e7cadd}.foot{display:flex;justify-content:space-between;gap:25px;align-items:start}.foot small{font-size:11px;color:#9688a3}.foot-links{display:flex;flex-wrap:wrap;gap:23px;font-size:12px;color:#c2b3cf}footer{padding:34px 0;background:#0b0910;border-top:1px solid #ffffff12}.legal-page{padding:60px 0 100px}.legal-page .container{max-width:900px}.legal-banner h1{font-size:clamp(28px,4vw,45px);margin:10px 0}.legal-banner p{color:var(--muted)}.back{color:#ff8cc8;font-size:13px}.notice{margin:32px 0 20px;padding:14px 20px;font-size:12px;color:#efd5e9;border:1px solid #704371;background:#33203b;border-radius:12px}.legal-document{background:#1b1424;border:1px solid #513455;border-radius:22px;padding:25px 39px}.legal-document section{padding:9px 0 17px;border-bottom:1px solid #44304b}.legal-document section:last-child{border:0}.legal-document h2{font-size:18px;color:#ff93cb}.legal-document p{color:#d6c9df;font-size:14px;line-height:2}html[lang=ja] .locale-en,html[lang=en] .locale-ja{display:none}@media(max-width:850px){.navlinks{display:none}.nav-inner{justify-content:space-between}.hero-grid{grid-template-columns:1fr;text-align:center;padding-top:48px;gap:5px}.lede{margin:auto}.cta{justify-content:center}.hero-visual{min-height:455px}.feature-grid{gap:35px}.safety-box{flex-direction:column;align-items:start}}@media(max-width:600px){.container{padding:0 20px}.hero-grid{padding-top:47px;padding-bottom:26px}.hero-title{font-size:39px}.lede{font-size:14px}.hero-visual{min-height:365px}.hero-main{width:173px;transform:rotate(3deg) translateX(29px)}.hero-side{width:116px;transform:rotate(-12deg) translateX(-82px) translateY(30px)}.section{padding:52px 0}.step-grid{grid-template-columns:1fr}.step-grid article{padding:20px}.feature-grid{display:flex;flex-direction:column;gap:27px}.feature-art{width:100%;height:350px}.feature-copy{width:100%}.alt .feature-copy{order:2}.alt .feature-art{order:1}.feature-art>.device{width:155px}.collage>.secondary-device{width:115px}.safety-box{padding:23px}.premium-grid{gap:24px}.premium-grid>.device{width:113px}.premium-grid>div:first-child{flex:1}.premium-grid h2{font-size:25px}.premium-grid p{font-size:12px}.download{padding:55px 0}.foot{flex-direction:column}.legal-page{padding:40px 0 70px}.legal-document{padding:17px 21px}}

/* Wide-screen redesign: expansive layout and larger in-device previews */
@media (min-width: 1100px){
  .container{max-width:1560px;width:94%;padding-left:28px;padding-right:28px}
  .nav-inner{gap:40px}
  .navlinks{gap:32px}
  .hero-grid{grid-template-columns:1fr 1.07fr;gap:50px;min-height:760px;padding-top:52px;padding-bottom:52px}
  .hero-title{font-size:clamp(52px,4.8vw,82px);max-width:740px}
  .lede{max-width:665px;font-size:17px;line-height:1.85}
  .hero-visual{min-height:665px}
  .hero-main{width:310px;transform:rotate(3deg) translateX(60px)}
  .hero-side{width:224px;transform:rotate(-11deg) translateX(-150px) translateY(46px)}
  .orb-a{width:600px;height:600px}.orb-b{width:410px;height:410px}
  .section{padding:88px 0}
  .section h2,.download h2{font-size:clamp(34px,3vw,49px)}
  .feature-grid{grid-template-columns:1.1fr 1fr;gap:68px}
  .feature-art{height:625px;border-radius:36px}
  .feature-art>.device{width:276px}
  .collage>.device:first-child{transform:rotate(-8deg) translateX(-54px)}
  .collage>.secondary-device{width:202px;transform:rotate(10deg) translateX(160px) translateY(76px)}
  .feature-copy p,.step-grid p,.premium-grid p,.safety-box p{font-size:16px;line-height:1.85}
  .step-grid{gap:24px}.step-grid article{padding:34px}
  .premium-grid{justify-content:space-between;gap:70px}
  .premium-grid>div:first-child{max-width:740px}
  .premium-grid>.device{width:265px}
  .safety-box>div{max-width:970px}
}
@media (min-width: 1600px){
  .container{max-width:1660px;width:94%}
  .hero-main{width:333px}.hero-side{width:238px}
  .feature-art{height:670px}.feature-art>.device{width:295px}
  .collage>.secondary-device{width:218px}
}
@media (min-width: 851px) and (max-width: 1099px){
  .container{max-width:100%;width:96%;padding:0 20px}
  .hero-grid{gap:24px}
  .hero-main{width:246px}.hero-side{width:165px}
  .feature-grid{gap:28px}
  .feature-art{height:475px}.feature-art>.device{width:212px}
}
@media (max-width: 850px){
  .container{width:100%;max-width:100%}
}

/* Fixed: keep complete 375x812 screenshots inside all device frames. */
.device{aspect-ratio:375/812;height:auto;overflow:hidden;flex-shrink:0}
.device img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
/* On desktop keep imagery large but entirely within its presentation area. */
@media(min-width:1100px){
 .feature-art{height:clamp(660px,54vw,760px);overflow:hidden;padding:28px}
 .feature-art>.device,.premium-grid>.device{width:min(280px,calc((clamp(660px,54vw,760px) - 80px)*375/812));transform:none}
 .feature-art.collage{display:flex;gap:24px;justify-content:center;align-items:center}
 .feature-art.collage>.device:first-child,.feature-art.collage>.secondary-device{position:relative;transform:none;inset:auto;width:min(235px,calc((clamp(660px,54vw,760px) - 80px)*375/812))}
 .hero-visual{min-height:680px;overflow:visible}
 .hero-main{width:295px;transform:translateX(45px)}
 .hero-side{width:208px;transform:translate(-150px,55px)}
}
@media(min-width:1600px){
 .feature-art>.device{width:300px;max-height:calc(100% - 32px);width:auto;aspect-ratio:375/812}
 .feature-art.collage>.device:first-child,.feature-art.collage>.secondary-device{width:245px;max-height:calc(100% - 48px)}
}
@media(min-width:851px) and (max-width:1099px){
 .feature-art{height:540px;overflow:hidden;padding:20px}
 .feature-art>.device{width:210px;transform:none}
 .feature-art.collage{display:flex;gap:10px}
 .feature-art.collage>.device:first-child,.feature-art.collage>.secondary-device{position:relative;transform:none;inset:auto;width:168px}
}
@media(max-width:850px){
 .feature-art{overflow:hidden}
 .feature-art>.device{transform:none}
 .feature-art.collage{display:flex;gap:12px}
 .feature-art.collage>.device:first-child,.feature-art.collage>.secondary-device{position:relative;inset:auto;transform:none;width:140px}
 .hero-main{transform:translateX(30px)}
 .hero-side{transform:translate(-75px,38px)}
}
@media(max-width:430px){
 .feature-art.collage>.device:first-child,.feature-art.collage>.secondary-device{width:132px}
}

/* Final fix: use full-bleed screenshots with no top/bottom letterboxing, and replace hero main image. */
@media(min-width:1100px){.hero-main{width:312px;transform:translateX(42px)}.hero-side{width:210px;transform:translate(-150px,58px)}.feature-art>.device{width:270px}.premium-grid>.device{width:250px}}
@media(max-width:850px){.hero-main{width:186px;transform:translateX(24px)}.hero-side{width:126px;transform:translate(-78px,34px)}}
