
:root{color-scheme:dark;--bg:#070f20;--panel:#101b31;--line:#2c3855;--text:#f5f0f4;--muted:#b8b7cb;--accent:#ffa45b;--max:1080px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.85;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #f3b86e;outline-offset:4px}button{font:inherit}
.site-bg{position:fixed;inset:-70px;z-index:-3;pointer-events:none;background:linear-gradient(180deg,rgba(5,11,29,.2),rgba(6,13,30,.9)),url('./approved-design-reference.webp') center top/cover no-repeat;filter:blur(54px) saturate(.8);opacity:.55}
.site-wash{position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 50% 14%,rgba(58,51,111,.25),transparent 45%),linear-gradient(180deg,rgba(5,12,27,.45),#070f20 90%)}
.stars{position:absolute;inset:0;pointer-events:none;opacity:.35;z-index:-1;background-image:radial-gradient(1px 1px at 12% 16%,#fff 95%,transparent),radial-gradient(1px 1px at 28% 5%,#fff 95%,transparent),radial-gradient(1px 1px at 46% 22%,#c4dbff 95%,transparent),radial-gradient(1px 1px at 71% 7%,#fff 95%,transparent),radial-gradient(1px 1px at 87% 30%,#fff 95%,transparent),radial-gradient(1px 1px at 17% 49%,#fff 95%,transparent),radial-gradient(1px 1px at 79% 50%,#fff 95%,transparent);background-size:440px 340px}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.site-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;min-height:92px;border-bottom:1px solid rgba(194,199,231,.10)}
.brand{display:inline-flex;align-items:center;min-width:166px}.brand img{display:block;width:205px;max-width:100%;height:auto;mix-blend-mode:screen;object-fit:contain;object-position:left center}
.site-nav{display:flex;gap:25px;align-items:center;font-size:13px;color:#c7cada}.site-nav a:hover,.footer-links a:hover,.back a:hover{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.mobile-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.25);border-radius:8px;color:white;padding:7px 11px;cursor:pointer}
.hero{position:relative;text-align:center;padding:90px 0 14px;overflow:hidden;isolation:isolate}.hero:before{content:'';position:absolute;inset:17% -15% auto;z-index:-1;height:550px;background:radial-gradient(ellipse,rgba(246,113,70,.18),transparent 58%)}
.eyebrow{font-size:13px;letter-spacing:.18em;color:#f7ac7c;margin:0 0 22px}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN", "Noto Serif JP",serif;font-weight:400;line-height:1.5;letter-spacing:.1em;font-size:clamp(38px,6.6vw,76px);margin:0}
.subcopy{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(16px,2.5vw,24px);letter-spacing:.17em;margin:18px 0 8px}.tiny-rule{display:block;width:42px;border-top:1px solid #aeb6cc;margin:14px auto}.lead{margin:20px 0 27px;color:#ede1e8;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;letter-spacing:.09em;line-height:2}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 40px;border-radius:14px;font-size:17px;letter-spacing:.07em;min-width:287px;background:linear-gradient(105deg,#483dff 0%,#b349b9 51%,#ff9c4a 100%);border:1px solid #d6a0b8;box-shadow:0 0 26px rgba(178,88,201,.25);transition:transform .2s,box-shadow .2s}.cta:hover{transform:translateY(-2px);box-shadow:0 0 34px rgba(178,88,201,.42)}.cta span{font-size:23px}.launch-note{font-size:13px;letter-spacing:.12em;color:#d5c3cc;margin:17px 0 12px}
.phone-art{display:block;width:min(100%,1010px);margin:0 auto;position:relative}.phone-art img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 97%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 97%,transparent 100%)}
.section{padding:24px 0 75px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature{background:linear-gradient(165deg,rgba(22,35,62,.94),rgba(9,20,42,.82));border:1px solid rgba(143,150,196,.23);padding:34px 21px 36px;border-radius:17px;text-align:center;min-height:240px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.feature-icon{font-size:37px;line-height:1.1;display:block;margin-bottom:22px}.feature:first-child .feature-icon{color:#a4d85b}.feature:nth-child(2) .feature-icon{color:#ffab68}.feature:nth-child(3) .feature-icon{color:#c877f4}.feature h2{font-size:17px;font-weight:500;letter-spacing:.05em;margin:0 0 15px}.feature p{color:#bfc4d2;font-size:14px;margin:0;line-height:1.9}
.launch-box{border-top:1px solid rgba(255,255,255,.14);text-align:center;padding:45px 0 77px}.launch-box h2{font-size:21px;font-weight:500;letter-spacing:.1em}.launch-box p{font-size:14px;color:var(--muted);max-width:650px;margin:8px auto}
.site-footer{background:rgba(4,12,26,.85);border-top:1px solid rgba(176,174,210,.17);padding:37px 0 21px}.footer-top{display:grid;grid-template-columns:minmax(155px,1.2fr) 1fr 1.2fr;gap:30px;align-items:start}.footer-brand strong{font-family:Georgia,serif;font-size:24px;letter-spacing:.23em;font-weight:400}.footer-brand p{color:#9da8bf;font-size:12px;margin:8px 0}.footer-links{display:grid;gap:6px}.footer-links a{font-size:12px;color:#b8c1d4}.footer-bottom{margin-top:28px;padding-top:15px;border-top:1px solid #2c3850;color:#7888a4;text-align:center;font-size:11px;letter-spacing:.06em}
.page-title{padding:67px 0 38px;border-bottom:1px solid var(--line)}.page-title .kicker{font-size:12px;color:#eeaa83;letter-spacing:.21em;text-transform:uppercase;margin:0 0 16px}.page-title h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:clamp(29px,4.5vw,49px);line-height:1.35;margin:0 0 16px;letter-spacing:.08em}.page-title p{color:#afb9cb;font-size:14px;max-width:760px;margin:0}
.document{padding:40px 0 80px;max-width:850px}.panel{background:rgba(13,27,51,.66);border:1px solid #2c3a56;border-radius:14px;padding:28px 32px;margin-bottom:24px}.panel h2,.doc-section h2{font-size:18px;font-weight:500;letter-spacing:.05em;margin:0 0 16px}.panel p,.doc-section p,.doc-section li{font-size:14px;color:#cad0dc}.panel p:last-child,.doc-section p:last-child{margin-bottom:0}.doc-section{padding:27px 4px;border-bottom:1px solid rgba(153,166,197,.16)}.doc-section h2{margin-bottom:13px}.doc-section ul,.doc-section ol{margin:8px 0;padding-left:23px}.doc-section li{padding:2px 0}.kv{display:grid;grid-template-columns:160px 1fr;gap:0}.kv dt,.kv dd{border-bottom:1px solid rgba(164,174,202,.17);padding:13px 0;margin:0;font-size:14px}.kv dt{color:#aeb9d0}.kv dd{color:#eef0f5}.inline-link{color:#e3bcd7;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.status-box{border:1px solid #8e694d;border-radius:12px;padding:15px 18px;background:rgba(79,55,39,.35);color:#f4dac6;font-size:13px;margin:0 0 30px;line-height:1.75}.status-box strong{display:block;margin-bottom:4px}.mini-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.mini-cards .panel{margin:0}.back{display:inline-flex;align-items:center;gap:10px;color:#c7b5ca;font-size:13px;margin-top:32px}.note{color:#a9b4c9;font-size:12px}.contact-link{display:block;font-size:clamp(17px,3vw,25px);color:#e8c9e4;font-weight:500;letter-spacing:.04em;overflow-wrap:anywhere}.page-hero-orb{width:48px;height:48px;border-radius:50%;border:2px solid transparent;background:linear-gradient(#091226,#091226) padding-box,linear-gradient(125deg,#68c8d7,#7d60d1,#f4a153) border-box;margin-bottom:22px}
@media(max-width:730px){.wrap{width:min(100% - 30px,var(--max))}.site-header{min-height:70px}.brand img{width:167px}.mobile-toggle{display:inline-flex}.site-nav{display:none;position:absolute;left:0;right:0;top:70px;background:rgba(7,15,32,.98);border:1px solid #293857;border-radius:10px;padding:16px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 25px rgba(0,0,0,.4)}.site-nav.open{display:flex}.site-nav a{padding:9px 5px;font-size:15px}.hero{padding:62px 0 14px}.hero h1{font-size:clamp(34px,9.2vw,50px)}.subcopy{font-size:17px;margin-top:15px}.lead{font-size:14px;line-height:1.9}.cta{min-width:255px;font-size:16px}.phone-art{width:calc(100% + 30px);margin-left:-15px}.feature-grid{grid-template-columns:1fr;gap:13px}.feature{min-height:0;padding:22px 18px}.feature-icon{font-size:29px;margin-bottom:10px}.feature h2{margin-bottom:8px}.section{padding:5px 0 44px}.footer-top{grid-template-columns:1fr 1fr;gap:21px}.footer-brand{grid-column:1/-1}.footer-links a{font-size:11px;line-height:1.8}.page-title{padding:40px 0 25px}.document{padding-top:22px}.panel{padding:22px 17px}.kv{grid-template-columns:1fr}.kv dt{border-bottom:0;padding-bottom:1px}.kv dd{padding-top:0}.mini-cards{grid-template-columns:1fr}.status-box{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta{transition:none}}


/* v0.2: tightened mobile composition while preserving approved copy and actual UI. */
:root{--max:1040px}
.site-bg{background:linear-gradient(180deg,rgba(5,10,27,.15),rgba(6,12,28,.52) 58%,rgba(6,12,28,.82)),url('./approved-design-reference.webp') center 44%/cover no-repeat;filter:blur(47px) saturate(1.24);opacity:.72}
.site-wash{background:radial-gradient(ellipse at 78% 33%,rgba(255,137,76,.20),transparent 35%),radial-gradient(ellipse at 30% 48%,rgba(90,57,129,.12),transparent 42%),linear-gradient(180deg,rgba(5,12,27,.25) 2%,rgba(5,13,29,.27) 48%,#070f20 89%)}
.site-header{min-height:84px;border-bottom:1px solid rgba(194,199,231,.075)}
.site-nav{gap:21px}
.hero{padding:56px 0 0}
.hero:before{inset:25% -10% auto;height:500px;background:radial-gradient(ellipse at 68% 56%,rgba(255,126,78,.27),transparent 60%);opacity:.82}
.hero h1{line-height:1.45;font-size:clamp(39px,6.2vw,73px)}
.subcopy{margin:13px 0 7px}
.tiny-rule{margin:13px auto}
.lead{margin:18px 0 26px}
.cta{min-height:65px}
.launch-note{margin:14px 0 7px;color:#e3d3e0}
.launch-note .separator{color:#aebbd0;padding:0 5px}
.phone-art{margin-top:13px;width:min(100%,985px);isolation:isolate}
.phone-art:before{content:'';position:absolute;z-index:-1;inset:-38px -8% 12%;background:radial-gradient(ellipse at 63% 22%,rgba(249,121,87,.47),transparent 62%),radial-gradient(ellipse at 17% 22%,rgba(124,50,108,.23),transparent 62%);filter:blur(39px)}
.phone-art img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 4%,#000 92%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 4%,#000 92%,transparent 100%)}
.section{padding:0 0 64px}
.feature-grid{gap:14px}
.feature{min-height:214px;padding:27px 18px 25px;border:1px solid rgba(153,168,204,.19);background:linear-gradient(160deg,rgba(21,33,57,.87),rgba(11,23,44,.75));box-shadow:0 12px 35px rgba(2,7,22,.17),inset 0 1px 0 rgba(255,255,255,.03)}
.feature-icon{height:52px;width:56px;display:flex;align-items:center;justify-content:center;color:#f4a65f;margin:0 auto 14px}
.feature-icon svg{width:49px;height:49px}
.feature:first-child .feature-icon{color:#ec9551}
.feature:nth-child(2) .feature-icon{width:74px}
.feature:nth-child(2) .feature-icon svg{width:74px;height:48px}
.feature:nth-child(3) .feature-icon{color:#b577df}
.feature h2{font-weight:500;margin:0 0 12px;line-height:1.55}
.feature p{line-height:1.75}
.launch-box{padding:29px 0 37px;border-top:1px solid rgba(161,173,204,.13);background:linear-gradient(180deg,rgba(18,27,51,.31),rgba(7,15,32,0))}
.launch-box h2{margin:0 0 6px;font-size:17px;font-weight:500}
.launch-box p{margin:0 auto;font-size:13px}
.site-footer{padding:31px 0 18px;background:rgba(5,12,26,.88)}
.footer-top{grid-template-columns:minmax(155px,1.1fr) minmax(140px,1fr) minmax(170px,1.2fr);gap:20px}
.footer-brand strong{font-size:21px}
.footer-brand p{margin:5px 0}
.footer-links{gap:5px}
.footer-bottom{margin-top:21px;padding-top:10px}
.page-title{padding:47px 0 31px}
.page-hero-orb{width:34px;height:34px;margin-bottom:13px}
.document{padding-top:31px}
@media(max-width:730px){
 .wrap{width:min(100% - 32px,var(--max))}
 .site-header{min-height:64px}
 .brand img{width:154px}
 .site-nav{top:64px}
 .hero{padding:42px 0 0}
 .hero h1{font-size:clamp(33px,9.3vw,45px);letter-spacing:.075em;line-height:1.42}
 .subcopy{font-size:clamp(15px,4.05vw,18px);letter-spacing:.09em;margin:15px 0 6px}
 .lead{font-size:14px;margin:17px 0 22px}
 .tiny-rule{width:34px;margin:11px auto}
 .cta{min-width:264px;width:min(82%,340px);min-height:61px;padding:12px 23px;border-radius:13px}
 .launch-note{margin:12px 0 0;font-size:12px}
 .phone-art{width:calc(100% + 32px);margin-left:-16px;margin-top:9px}
 .phone-art:before{inset:-18px -10% 13%;filter:blur(27px)}
 .phone-art img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 6%,#000 93%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 6%,#000 93%,transparent 100%)}
 .section{padding:0 0 35px}
 .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .feature{min-height:188px;padding:17px 11px 18px;border-radius:12px}
 .feature-icon{height:39px;width:45px;margin-bottom:10px}
 .feature-icon svg{width:40px;height:40px}
 .feature:nth-child(2) .feature-icon{width:59px;height:39px}
 .feature:nth-child(2) .feature-icon svg{width:59px;height:38px}
 .feature h2{font-size:13px;letter-spacing:0;line-height:1.5;margin-bottom:9px}
 .feature p{font-size:11.5px;line-height:1.65}
 .feature:last-child{grid-column:1/-1;display:flex;min-height:92px;align-items:center;justify-content:center;gap:18px;text-align:left;padding:14px 22px}
 .feature:last-child .feature-icon{flex:0 0 51px;width:51px;height:51px;margin:0}
 .feature:last-child .feature-icon svg{width:47px;height:47px}
 .feature:last-child h2{margin-bottom:4px}
 .feature:last-child p br{display:none}
 .launch-box{padding:23px 0 30px}
 .launch-box h2{font-size:16px}
 .launch-box p{max-width:290px;font-size:12px;line-height:1.7}
 .site-footer{padding-top:25px}
 .footer-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px}
 .footer-brand{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(166,175,202,.13)}
 .footer-brand strong{font-size:20px;white-space:nowrap}
 .footer-brand p{display:none}
 .footer-brand p:last-child{display:block;margin:0;font-size:11px}
 .footer-links{gap:8px}
 .footer-links a{font-size:11px;line-height:1.5}
 .footer-bottom{margin-top:20px;padding-top:12px}
 .page-title{padding:34px 0 23px}
 .page-title h1{font-size:clamp(26px,7vw,38px)}
 .page-title p{font-size:13px}
 .document{padding-top:21px;padding-bottom:52px}
 .panel{padding:19px 16px}
}
@media(min-width:731px) and (max-width:1050px){.hero{padding-top:72px}}

.skip-link{position:fixed;z-index:99;top:-120px;left:20px;background:#f6e8e9;color:#081327;padding:9px 16px;border-radius:8px;font-size:14px}.skip-link:focus{top:10px}.site-nav a[aria-current="page"]{color:#f1cfb6}.feature-copy{min-width:0}
