
:root{
  --bg:#07151d; --bg2:#0b202b; --paper:#f5f3ee; --ink:#10191e;
  --gold:#d2aa55; --muted:#8fa0a7; --line:rgba(245,243,238,.17);
  --max:1380px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--paper);font-family:Inter,"Noto Sans JP",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.noise{position:fixed;inset:0;pointer-events:none;z-index:80;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
header{position:fixed;z-index:100;top:0;left:0;right:0;padding:24px 4vw;display:flex;justify-content:space-between;align-items:center;mix-blend-mode:difference}
.brand-link{display:flex;align-items:center;gap:11px}
.brand-mark{width:27px;height:27px;color:#fff}.brand-word{font-size:16px;font-weight:600;letter-spacing:.22em}
.header-right{display:flex;gap:10px;align-items:center;font-size:8px;letter-spacing:.18em}
.header-right .date{margin-left:22px}.lang{opacity:.45;transition:.25s}.lang.active,.lang:hover{opacity:1}
.menu-btn{background:none;border:0;width:34px;height:30px;padding:5px;cursor:pointer;margin-left:20px}.menu-btn i{display:block;height:1px;background:#fff;margin:6px 0;transition:.3s}
.menu-btn.active i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-btn.active i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.drawer{position:fixed;inset:0;z-index:90;background:#07151d;transform:translateY(-100%);transition:.65s cubic-bezier(.77,0,.18,1);display:grid;place-items:center}.drawer.open{transform:none}
.drawer-inner{width:min(920px,80vw);display:flex;flex-direction:column;gap:14px}.drawer small{font-size:9px;letter-spacing:.25em;color:var(--muted);margin-bottom:25px}
.drawer a{font-size:clamp(32px,6vw,80px);letter-spacing:-.06em;font-weight:500}
.hero{height:100svh;min-height:650px;position:relative;overflow:hidden;display:grid;place-items:center}
.hero-art{position:absolute;inset:0;background:linear-gradient(180deg,#284d5c 0%,#193640 42%,#0d252f 55%,#07151d 100%)}
.hero-art:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 40%,rgba(230,192,112,.38),transparent 23%)}
.orb{position:absolute;width:270px;height:270px;left:70%;top:39%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#ead09b 0 5%,rgba(234,208,155,.5) 7%,rgba(234,208,155,.08) 38%,transparent 68%)}
.ridge{position:absolute;bottom:23%;width:120%;height:34%;left:-10%;background:#102b35;clip-path:polygon(0 80%,12% 56%,21% 70%,34% 30%,45% 64%,57% 22%,68% 62%,78% 38%,89% 70%,100% 46%,100% 100%,0 100%);opacity:.88}
.r2{bottom:15%;opacity:.42;transform:scaleX(1.15)}.water{position:absolute;left:0;right:0;bottom:0;height:27%;background:repeating-linear-gradient(177deg,transparent 0 17px,rgba(165,190,195,.07) 18px,transparent 19px)}
.hero-copy{position:relative;text-align:center;margin-top:2vh}.micro{font-size:9px;letter-spacing:.3em;color:#bdc6c8}
.hero-logo{width:min(560px,74vw);color:#fff;margin:0 auto 20px}.hero-tag{font-size:clamp(11px,1.4vw,17px);letter-spacing:.34em}.hero-jp{font-size:11px;letter-spacing:.28em;color:#d0d4d2;margin-top:13px}
.hero-bottom{position:absolute;bottom:28px;left:4vw;right:4vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.2em;color:#b5c0c4}
.section{max-width:var(--max);margin:auto;padding:150px max(5vw,28px)}.label{font-size:9px;letter-spacing:.25em;color:var(--muted)}
.brand-section{min-height:720px;display:grid;grid-template-columns:1fr 2.4fr;gap:8vw;align-items:center}
.brand-main .overline{font-size:10px;letter-spacing:.2em;color:var(--muted)}
h2{font-size:clamp(48px,7.2vw,106px);line-height:.96;letter-spacing:-.065em;font-weight:500;margin:30px 0 42px}em{font-style:normal;color:var(--gold)}
.lead{font-size:14px;line-height:2.25;color:#b8c2c5}.signature{margin-top:55px;font-size:9px;letter-spacing:.24em;color:var(--gold)}
.visual-break{height:70vh;min-height:520px;position:relative;overflow:hidden;display:grid;place-items:center;background:linear-gradient(130deg,#142f39,#08151b)}
.visual-break:before{content:"";position:absolute;width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(205,169,102,.26),transparent 65%);left:50%;top:50%;transform:translate(-50%,-50%)}
.visual-word{position:relative;font-size:clamp(90px,21vw,310px);font-weight:600;letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1px rgba(242,240,234,.26)}
.visual-caption{position:absolute;bottom:38px;left:5vw;font-size:9px;line-height:1.7;letter-spacing:.22em;color:#a9b7bb}
.section-head{display:flex;justify-content:space-between;margin-bottom:65px}.section-head p{font-size:9px;letter-spacing:.18em;color:var(--muted);text-align:right}
.products-coming{position:relative;min-height:430px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;border:1px solid rgba(245,243,238,.13);padding:55px;background:linear-gradient(120deg,#0d2833,#09171e)}
.products-coming:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-130px;top:-220px;background:radial-gradient(circle,rgba(210,170,85,.22),transparent 66%)}
.products-copy{position:relative;z-index:1}.products-copy small{font-size:9px;letter-spacing:.22em;color:var(--muted)}.products-copy h3{font-size:clamp(42px,6vw,86px);font-weight:500;letter-spacing:.03em;margin:18px 0}
.products-copy p{font-size:13px;line-height:2;color:#b7c2c6;max-width:600px}.stay-tuned{position:relative;z-index:1;text-align:right}.stay-tuned .mark{width:70px;height:70px;margin-left:auto;color:var(--paper)}.stay-tuned strong{display:block;font-size:11px;letter-spacing:.35em;margin-top:20px}
.projects .project{display:grid;grid-template-columns:60px 1fr auto;gap:25px;align-items:center;border-top:1px solid var(--line);padding:45px 0}.projects .project:last-child{border-bottom:1px solid var(--line)}
.project h2{margin:0;font-size:clamp(40px,5.8vw,85px)}.project>span,.project>small{font-size:9px;letter-spacing:.18em;color:var(--muted)}
.support{background:var(--paper);color:var(--ink)}.support-inner{max-width:var(--max)}.support .label{color:#6e7779}
.support-head{display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;align-items:end;margin-top:85px}.support-head h2{margin:0}.support-intro{font-size:14px;line-height:2.1;color:#445057}
.strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:90px;border-top:1px solid #cdd0cf}
.strength{padding:35px 25px 25px 0;border-right:1px solid #d6d9d8}.strength:last-child{border-right:0;padding-left:25px}.strength .num{font-size:9px;letter-spacing:.18em;color:#7d8588}
.strength h3{font-size:18px;font-weight:600;line-height:1.45;margin:20px 0 13px}.strength p{font-size:12px;line-height:1.9;color:#5e686d;margin:0}
.company{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:100px;padding-top:60px;border-top:1px solid #d0d3d1}.company h3{font-size:11px;letter-spacing:.22em;margin:0 0 28px}.company dl{display:grid;grid-template-columns:140px 1fr;gap:14px 20px;font-size:12px}.company dt{color:#7a8387}.company dd{margin:0}
.partners{display:flex;flex-wrap:wrap;gap:10px}.partners span{border:1px solid #c9cecc;padding:10px 13px;font-size:9px;letter-spacing:.08em}
.cta{background:linear-gradient(125deg,#0a1a22,#173844);padding:85px 5vw;display:flex;justify-content:space-between;align-items:center}.cta h2{font-size:clamp(42px,6vw,84px);margin:0}.cta a,.button{border:1px solid rgba(245,243,238,.55);padding:15px 24px;font-size:9px;letter-spacing:.18em;transition:.25s}.cta a:hover,.button:hover{background:#f5f3ee;color:#07151d}
footer{border-top:1px solid var(--line);padding:45px 5vw 30px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-mark{width:24px;height:24px}.footer-word{font-size:16px;letter-spacing:.18em;font-weight:600}footer div.meta{display:flex;justify-content:space-between;margin-top:65px;color:var(--muted);font-size:8px;letter-spacing:.18em}
.contact-page{padding-top:190px;min-height:100vh}.contact-hero{max-width:var(--max);margin:auto;padding:0 5vw 100px}.contact-hero h1{font-size:clamp(58px,9vw,130px);line-height:.92;letter-spacing:-.06em;font-weight:500;margin:40px 0}.contact-hero p{max-width:680px;color:#aebbc0;line-height:2;font-size:14px}
.contact-layout{max-width:var(--max);margin:auto;padding:0 5vw 120px;display:grid;grid-template-columns:1.1fr .9fr;gap:9vw}
.form-card{border-top:1px solid var(--line);padding-top:35px}.form-row{margin-bottom:25px}.form-row label{display:block;font-size:9px;letter-spacing:.18em;color:var(--muted);margin-bottom:10px}.form-row input,.form-row textarea,.form-row select{width:100%;background:transparent;border:1px solid rgba(245,243,238,.2);color:var(--paper);padding:15px 14px;font:inherit;outline:none}.form-row textarea{min-height:170px;resize:vertical}.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--gold)}.form-row select option{background:#07151d}
.qr-card{border:1px solid rgba(245,243,238,.13);padding:35px;align-self:start}.qr-card h2{font-size:30px;margin:0 0 14px}.qr-card p{font-size:12px;line-height:1.9;color:#aebbc0}.qr-box{background:#fff;padding:18px;width:190px;margin:28px 0}.qr-box img{display:block;width:100%;height:auto}.qr-url{font-size:9px;letter-spacing:.08em;color:#7f9096;word-break:break-all}
.form-note{font-size:10px;color:#829198;line-height:1.7;margin:16px 0}.success{padding:18px;border:1px solid rgba(210,170,85,.4);color:#e0c98f;margin-bottom:25px}
@media(max-width:900px){
 header{padding:20px 22px}.header-right .date{display:none}.section{padding-top:105px;padding-bottom:105px}
 .brand-section{grid-template-columns:1fr;gap:55px;min-height:auto}.section-head{display:block}.section-head p{text-align:left;margin-top:25px}
 .products-coming{min-height:390px;padding:35px}.stay-tuned{display:none}.projects .project{grid-template-columns:30px 1fr}.project>small{grid-column:2}
 .support-head,.company,.contact-layout{grid-template-columns:1fr;gap:55px}.strength-grid{grid-template-columns:1fr 1fr}.strength{padding:28px 18px 28px 0}.strength:nth-child(2){padding-left:18px}.strength:nth-child(3){border-top:1px solid #d6d9d8}.strength:nth-child(4){border-top:1px solid #d6d9d8}
 .company{margin-top:70px}.cta{display:block}.cta a{display:inline-block;margin-top:30px}.hero-bottom{left:22px;right:22px}.hero-bottom span:last-child{display:none}
 .contact-page{padding-top:140px}.contact-layout{padding-bottom:80px}.qr-card{max-width:520px}
 footer div.meta{flex-direction:column;gap:12px}
}
@media(max-width:520px){.brand-word{font-size:13px}.brand-mark{width:23px}.hero-logo{width:86vw}.products-copy h3{font-size:43px}.strength-grid{grid-template-columns:1fr}.strength,.strength:nth-child(2),.strength:nth-child(3),.strength:nth-child(4){border-right:0;border-top:1px solid #d6d9d8;padding:28px 0}.strength:first-child{border-top:0}.company dl{grid-template-columns:105px 1fr}.qr-box{width:170px}}


/* GLOBAL GATEWAY / TRUST LAYERS */
.gateway{background:#07151d;color:#f5f3ee}
.gateway .section{padding-top:125px;padding-bottom:125px}
.gateway-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:9vw;align-items:end}
.gateway h2{margin:28px 0 0}
.gateway-copy{font-size:14px;line-height:2.15;color:#b7c3c7;max-width:680px}
.gateway-copy strong{color:#f5f3ee;font-weight:500}
.gateway-kicker{font-size:9px;letter-spacing:.26em;color:#d2aa55}
.gateway-steps{margin-top:70px;border-top:1px solid rgba(245,243,238,.16)}
.gateway-step{display:grid;grid-template-columns:70px 1fr 1fr;gap:25px;padding:29px 0;border-bottom:1px solid rgba(245,243,238,.12);align-items:start}
.gateway-step .n{font-size:9px;color:#d2aa55;letter-spacing:.18em}
.gateway-step h3{font-size:18px;margin:0;font-weight:500;line-height:1.45}
.gateway-step p{font-size:11px;line-height:1.85;color:#87979d;margin:0}
.trust-strip{background:#f5f3ee;color:#10191e;padding:22px 5vw;display:flex;justify-content:center;gap:38px;flex-wrap:wrap;font-size:9px;letter-spacing:.14em}
.trust-strip span{display:inline-flex;align-items:center;gap:9px}
.trust-strip b{width:5px;height:5px;background:#d2aa55;border-radius:50%;display:inline-block}
.support-link{display:inline-flex;align-items:center;gap:14px;margin-top:35px;border-bottom:1px solid rgba(245,243,238,.45);padding-bottom:12px;font-size:9px;letter-spacing:.2em}
.support-link:hover{color:#d2aa55}
.global-hero{padding-top:190px;min-height:68vh;display:flex;align-items:end;background:linear-gradient(120deg,#07151d 0%,#102b36 62%,#173e48 100%);position:relative;overflow:hidden}
.global-hero:after{content:"";position:absolute;width:50vw;height:50vw;right:-15vw;top:-15vw;border-radius:50%;background:radial-gradient(circle,rgba(210,170,85,.22),transparent 66%)}
.global-hero-inner{position:relative;z-index:1;max-width:var(--max);width:100%;margin:auto;padding:0 5vw 100px}
.global-hero h1{font-size:clamp(64px,11vw,160px);line-height:.87;letter-spacing:-.07em;font-weight:500;margin:30px 0 45px;max-width:1000px}
.global-hero p{max-width:700px;font-size:15px;line-height:2;color:#b8c5c9}
.support-page{padding-top:160px}
.support-page .intro{max-width:var(--max);margin:auto;padding:0 5vw 90px}
.support-page .intro h1{font-size:clamp(60px,9vw,125px);font-weight:500;line-height:.9;letter-spacing:-.07em;margin:35px 0}
.support-page .intro p{max-width:760px;color:#aebbc0;font-size:14px;line-height:2.1}
.service-grid{max-width:var(--max);margin:auto;padding:0 5vw 120px;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(245,243,238,.13)}
.service-card{background:#07151d;padding:45px;min-height:300px}.service-card .num{color:#d2aa55;font-size:9px;letter-spacing:.2em}.service-card h2{font-size:34px;margin:25px 0 18px}.service-card p{font-size:12px;line-height:2;color:#9eafb5}.service-card ul{margin:20px 0 0;padding-left:18px;color:#b8c4c8;font-size:11px;line-height:2}
.disclaimer{max-width:var(--max);margin:auto;padding:0 5vw 100px;color:#72838a;font-size:10px;line-height:1.9}
@media(max-width:900px){
 .gateway-grid{grid-template-columns:1fr;gap:55px}.gateway-step{grid-template-columns:45px 1fr}.gateway-step p{grid-column:2}
 .global-hero{padding-top:140px;min-height:72vh}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}
 .trust-strip{justify-content:flex-start;gap:18px 25px}
}
@media(max-width:520px){
 .gateway-step{grid-template-columns:35px 1fr}.gateway-step h3{font-size:16px}.service-card{padding:30px}
}
