:root{--black:#070707;--black-2:#0b0b0b;--ink:#090909;--white:#f2f2ef;--muted:#9d9d9d;--line:rgba(255,255,255,.16);--acid:#c9ff66;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{margin:0;background:var(--black);color:#fff;font-family:Inter,"Noto Sans JP",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.pc{display:block}
.scroll-progress{position:fixed;z-index:100;left:0;right:0;top:0;height:1px;background:transparent;pointer-events:none}.scroll-progress i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#fff,var(--acid));transform:scaleX(0);transform-origin:left}
.site-header{position:absolute;z-index:30;top:0;left:0;right:0;height:88px;padding:0 6.8vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#fff}.brand{font-size:15px;font-weight:600;letter-spacing:.12em;justify-self:start}.desktop-nav{display:flex;gap:52px;align-items:center;font-size:10px}.desktop-nav a{position:relative;opacity:.82;transition:.3s}.desktop-nav a:hover{opacity:1}.desktop-nav a.active::after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#fff;left:50%;transform:translateX(-50%);bottom:-13px}.menu-button{justify-self:end;width:34px;height:24px;border:0;background:none;padding:0;position:relative;cursor:pointer}.menu-button span{position:absolute;left:0;right:0;height:1px;background:#fff;transition:.3s}.menu-button span:first-child{top:7px}.menu-button span:last-child{bottom:7px}.menu-button.open span:first-child{top:11px;transform:rotate(45deg)}.menu-button.open span:last-child{bottom:12px;transform:rotate(-45deg)}.mobile-menu{position:fixed;z-index:25;inset:0;background:rgba(5,5,5,.97);backdrop-filter:blur(20px);display:flex;flex-direction:column;justify-content:center;padding:12vw;gap:24px;font-size:42px;font-weight:600;opacity:0;visibility:hidden;transition:.4s var(--ease)}.mobile-menu.open{opacity:1;visibility:visible}
.hero{position:relative;min-height:780px;background:#080808;overflow:hidden;padding:150px 6.8vw 0;isolation:isolate}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-4}.hero-noise,.philosophy-grain{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.hero-gridlines{position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(255,255,255,.017) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,#000,transparent 78%);opacity:.42}.hero-glow{position:absolute;z-index:-2;right:14%;top:7%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.10),rgba(255,255,255,.02) 35%,transparent 68%);filter:blur(22px)}
.hero-copy{position:relative;z-index:6;width:56%;max-width:780px}.eyebrow{font-size:8px;letter-spacing:.38em;color:#c7c7c7;margin-bottom:24px}.line-label{position:relative;padding-left:30px}.line-label::before{content:"";position:absolute;width:1px;height:44px;background:rgba(255,255,255,.4);left:0;top:-16px}.hero h1{font-family:"Noto Sans JP",sans-serif;font-size:clamp(58px,6vw,94px);line-height:1.16;letter-spacing:-.058em;margin:0 0 24px;font-weight:800;text-wrap:balance;text-shadow:0 6px 28px rgba(0,0,0,.32)}.hero-lead{font-family:"Noto Sans JP",sans-serif;font-size:13px;line-height:1.9;margin:0;color:#e7e7e7;font-weight:600}.hero-short-line{width:34px;height:1px;background:#fff;margin-top:20px;opacity:.74}
.hero-object-wrap{position:absolute;z-index:2;right:5.8%;top:62px;width:min(48vw,690px);height:580px;display:flex;align-items:center;justify-content:center;perspective:1100px;transform-style:preserve-3d;will-change:transform}.hero-object{position:relative;width:100%;height:100%;object-fit:contain;filter:contrast(1.08) saturate(.94) drop-shadow(0 35px 55px rgba(0,0,0,.55));mix-blend-mode:screen;animation:heroFloat 7.5s ease-in-out infinite;will-change:transform}.hero-object-glow{position:absolute;inset:14% 12% 16%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(215,225,255,.06) 33%,transparent 70%);filter:blur(34px);animation:pulseGlow 5s ease-in-out infinite}.hero-object-shine{position:absolute;inset:6% 8%;overflow:hidden;mask-image:radial-gradient(ellipse at center,#000 38%,transparent 72%);pointer-events:none}.hero-object-shine::before{content:"";position:absolute;top:-20%;left:-25%;width:25%;height:145%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);filter:blur(5px);transform:skewX(-18deg);animation:lightSweep 6.8s ease-in-out infinite}
@keyframes heroFloat{0%,100%{transform:translate3d(0,0,0) rotateZ(-1.2deg)}50%{transform:translate3d(0,-16px,0) rotateZ(1.2deg)}}@keyframes pulseGlow{0%,100%{opacity:.46;transform:scale(.95)}50%{opacity:.9;transform:scale(1.06)}}@keyframes lightSweep{0%,25%{left:-30%;opacity:0}45%{opacity:1}68%,100%{left:118%;opacity:0}}
.hero-fields{position:absolute;right:5.4%;top:94px;z-index:8;width:180px;padding-left:24px;font-size:10px;letter-spacing:.16em}.hero-fields .vertical-rule{position:absolute;left:0;top:0;width:1px;height:126px;background:rgba(255,255,255,.35)}.hero-fields p{margin:0 0 7px;color:#eee}.hero-fields span{display:block;margin-top:28px;font-family:"Noto Sans JP",sans-serif;letter-spacing:.06em;font-size:9px;line-height:1.7;color:#ddd}.scroll-cue{position:absolute;left:6.8vw;bottom:112px;z-index:6;display:flex;align-items:center;gap:14px}.mouse{width:27px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:20px;position:relative}.mouse i{position:absolute;left:50%;top:9px;width:2px;height:8px;background:#fff;transform:translateX(-50%);animation:mouseDot 1.8s ease-in-out infinite}.scroll-cue b{font-size:8px;letter-spacing:.14em}.scroll-cue em{display:block;width:20px;height:1px;background:#fff;opacity:.7}@keyframes mouseDot{0%{transform:translate(-50%,0);opacity:0}25%{opacity:1}70%{opacity:1}100%{transform:translate(-50%,16px);opacity:0}}
.capability-strip{position:absolute;z-index:7;bottom:0;left:0;right:0;height:88px;border-top:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:160px 1px 1fr 1px 125px;gap:26px;align-items:center;padding:0 5.6vw;background:linear-gradient(180deg,rgba(8,8,8,.08),rgba(8,8,8,.78));backdrop-filter:blur(8px)}.cap-copy,.cap-end{font-size:7px;line-height:1.45;letter-spacing:.18em;color:#bdbdbd}.cap-end{text-align:right}.cap-divider{height:38px;background:rgba(255,255,255,.25)}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;width:max-content;align-items:center;gap:48px;font-size:10px;font-weight:600;color:#f2f2f2;animation:marquee 22s linear infinite}.marquee-track span{opacity:.88;letter-spacing:.05em}@keyframes marquee{to{transform:translateX(-50%)}}
.ventures-section{position:relative;background:#f2f2f0;color:var(--ink);border-radius:8px 8px 0 0;padding:36px 3.3vw 72px;z-index:3}.section-number{font-size:10px;letter-spacing:.13em;margin:0 0 18px 2.8vw;color:#444}.section-number.light{color:#ddd}.ventures-heading{display:grid;grid-template-columns:1fr 170px;gap:40px;align-items:end;padding:0 2.8vw 28px}.ventures-heading h2{font-size:clamp(80px,10.5vw,160px);line-height:.9;letter-spacing:-.075em;margin:0;font-weight:800}.ventures-heading h3{font-family:"Noto Sans JP",sans-serif;margin:10px 0 4px;font-size:16px;font-weight:700}.ventures-heading p{font-family:"Noto Sans JP",sans-serif;margin:0;font-size:10px;line-height:1.75;font-weight:500}.heading-note{padding-bottom:4px}.heading-note span{font-size:8px;letter-spacing:.2em;line-height:1.5}.heading-note i{display:block;width:30px;height:1px;background:#777;margin:10px 0 18px}.heading-note p{font-size:10px;line-height:1.9}.venture-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.venture-card{position:relative;min-height:335px;background:#080808;border-radius:8px;color:#fff;overflow:hidden;padding:22px 28px;border:1px solid rgba(255,255,255,.13);isolation:isolate;transform-style:preserve-3d;will-change:transform;transition:box-shadow .45s var(--ease),border-color .45s}.venture-card:hover{border-color:rgba(255,255,255,.28);box-shadow:0 24px 60px rgba(0,0,0,.18)}.venture-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 45%,rgba(255,255,255,.085),transparent 34%);z-index:-1}.venture-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.055) 44%,transparent 63%);transform:translateX(-120%);transition:transform .85s var(--ease)}.venture-card:hover::after{transform:translateX(120%)}.card-no{font-size:13px;position:absolute;top:15px;left:15px;color:#f2f2f2}.card-copy{position:relative;z-index:5;width:54%;height:100%;padding:34px 0 10px;display:flex;flex-direction:column;align-items:flex-start;transform:translateZ(24px)}.card-kicker{font-size:8px;letter-spacing:.38em;color:#aaa;margin-bottom:14px}.card-copy h3{font-size:28px;line-height:.98;letter-spacing:-.04em;margin:0 0 11px}.card-copy h4{font-family:"Noto Sans JP",sans-serif;font-size:12px;line-height:1.5;margin:0 0 10px}.card-copy p{font-family:"Noto Sans JP",sans-serif;font-size:9px;line-height:1.75;color:#a9a9a9;margin:0;max-width:290px}.card-copy a{margin-top:auto;font-size:18px;transition:transform .25s}.card-copy a:hover{transform:translateX(6px)}.card-visual{position:absolute;right:0;top:0;width:48%;height:100%;transform:translateZ(12px);pointer-events:none}
.sales-visual{display:grid;place-items:center}.sales-panel{position:relative;width:86%;height:74%;padding:16px;border-radius:14px;background:linear-gradient(160deg,rgba(20,20,20,.88),rgba(7,7,7,.98));border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 70px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;animation:panelFloat 6s ease-in-out infinite}.sales-panel::before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 80% 10%,rgba(201,255,102,.12),transparent 30%);pointer-events:none}.panel-top{height:28px;display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.09);font-size:7px;letter-spacing:.12em;color:#ddd}.panel-top span{margin-right:auto}.panel-top i{width:4px;height:4px;border-radius:50%;background:#555}.metric-row{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-size:7px;color:#777}.metric-row strong{font-size:17px;color:#f4f4f4}.sales-line{position:absolute;left:16px;right:16px;top:82px;width:calc(100% - 32px);height:112px;overflow:visible}.line-shadow,.line-main{fill:none;stroke-width:2.2;vector-effect:non-scaling-stroke}.line-shadow{stroke:#fff;opacity:.15;filter:blur(5px)}.line-main{stroke:url(#lineG);stroke-dasharray:500;stroke-dashoffset:500;animation:drawLine 3.4s var(--ease) infinite alternate}.bars{position:absolute;left:16px;right:16px;bottom:34px;height:72px;display:flex;align-items:flex-end;gap:8px}.bars b{flex:1;height:var(--h);border-radius:3px 3px 0 0;background:linear-gradient(180deg,#c7c7c7,#333);animation:barPulse 2.9s ease-in-out infinite;animation-delay:calc(var(--h) * 7ms)}.mini-pills{position:absolute;left:16px;right:16px;bottom:10px;display:flex;gap:6px}.mini-pills span{font-size:5px;padding:4px 7px;border:1px solid rgba(255,255,255,.1);border-radius:99px;color:#999}.sales-orbit{position:absolute;width:76%;aspect-ratio:1;border:1px solid rgba(255,255,255,.07);border-radius:50%;filter:blur(.2px);animation:orbitSpin 12s linear infinite}.sales-orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 16px #fff;left:50%;top:-4px}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes barPulse{50%{filter:brightness(1.35)}}@keyframes panelFloat{50%{transform:translateY(-8px) rotateX(1deg)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}
.cube-stage{perspective:700px;display:grid;place-items:center}.cube{position:absolute;width:94px;height:94px;transform-style:preserve-3d}.cube i{position:absolute;inset:0;border:1px solid rgba(255,255,255,.29);background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.01));box-shadow:inset 0 0 28px rgba(255,255,255,.025)}.cube i:nth-child(1){transform:translateZ(47px)}.cube i:nth-child(2){transform:rotateY(90deg) translateZ(47px)}.cube i:nth-child(3){transform:rotateY(180deg) translateZ(47px)}.cube i:nth-child(4){transform:rotateY(-90deg) translateZ(47px)}.cube i:nth-child(5){transform:rotateX(90deg) translateZ(47px)}.cube i:nth-child(6){transform:rotateX(-90deg) translateZ(47px)}.cube-a{transform:rotateX(-20deg) rotateY(36deg) translate3d(-34px,18px,0);animation:cubeA 9s ease-in-out infinite}.cube-b{width:70px;height:70px;transform:rotateX(18deg) rotateY(-38deg) translate3d(48px,-28px,18px);animation:cubeB 11s ease-in-out infinite}.cube-b i:nth-child(1){transform:translateZ(35px)}.cube-b i:nth-child(2){transform:rotateY(90deg) translateZ(35px)}.cube-b i:nth-child(3){transform:rotateY(180deg) translateZ(35px)}.cube-b i:nth-child(4){transform:rotateY(-90deg) translateZ(35px)}.cube-b i:nth-child(5){transform:rotateX(90deg) translateZ(35px)}.cube-b i:nth-child(6){transform:rotateX(-90deg) translateZ(35px)}.cube-c{width:44px;height:44px;transform:rotateX(-28deg) rotateY(25deg) translate3d(53px,42px,48px);opacity:.55;animation:cubeC 7s ease-in-out infinite}.cube-c i:nth-child(1){transform:translateZ(22px)}.cube-c i:nth-child(2){transform:rotateY(90deg) translateZ(22px)}.cube-c i:nth-child(3){transform:rotateY(180deg) translateZ(22px)}.cube-c i:nth-child(4){transform:rotateY(-90deg) translateZ(22px)}.cube-c i:nth-child(5){transform:rotateX(90deg) translateZ(22px)}.cube-c i:nth-child(6){transform:rotateX(-90deg) translateZ(22px)}.cube-ring{position:absolute;width:82%;aspect-ratio:1;border:1px solid rgba(201,255,102,.16);border-radius:50%;transform:rotateX(68deg);box-shadow:0 0 28px rgba(201,255,102,.08);animation:orbitSpin 15s linear infinite}.cube-flare{position:absolute;width:180px;height:3px;background:radial-gradient(ellipse,#fff 0%,rgba(201,255,102,.5) 16%,transparent 72%);filter:blur(1px);transform:rotate(-24deg);animation:flare 4s ease-in-out infinite}@keyframes cubeA{50%{transform:rotateX(-12deg) rotateY(56deg) translate3d(-32px,12px,8px)}}@keyframes cubeB{50%{transform:rotateX(28deg) rotateY(-18deg) translate3d(44px,-34px,24px)}}@keyframes cubeC{50%{transform:rotateX(-14deg) rotateY(50deg) translate3d(47px,48px,58px)}}@keyframes flare{50%{opacity:.45;transform:rotate(-24deg) scaleX(1.3)}}
.digital-visual{display:grid;place-items:center}.digital-visual img{width:82%;height:82%;object-fit:contain;mix-blend-mode:screen;filter:contrast(1.12) saturate(.88) drop-shadow(0 20px 40px rgba(0,0,0,.5));animation:digitalFloat 8.5s ease-in-out infinite;z-index:2}.digital-halo{position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%;width:70%;aspect-ratio:1;transform:rotateX(72deg) rotateZ(12deg);animation:haloSpin 13s linear infinite}.halo-2{width:84%;opacity:.5;animation-duration:19s;animation-direction:reverse;transform:rotateX(62deg) rotateZ(-25deg)}.halo-3{width:58%;opacity:.32;animation-duration:10s}.digital-glint{position:absolute;width:120px;height:2px;background:radial-gradient(ellipse,#fff 0%,rgba(255,255,255,.35) 35%,transparent 75%);filter:blur(.4px);z-index:3;transform:rotate(-38deg);animation:glint 5s ease-in-out infinite}@keyframes digitalFloat{0%,100%{transform:translateY(3px) rotate(-2deg) scale(1)}50%{transform:translateY(-10px) rotate(2deg) scale(1.03)}}@keyframes haloSpin{to{transform:rotateX(72deg) rotateZ(372deg)}}@keyframes glint{50%{transform:rotate(-38deg) translateX(26px) scaleX(1.3);opacity:.4}}
.future-visual{display:grid;place-items:center}.future-visual canvas{width:100%;height:100%;display:block}.future-plus{position:absolute;z-index:2;font-size:34px;font-weight:200;color:#fff;text-shadow:0 0 24px #fff;animation:plusPulse 2.7s ease-in-out infinite}@keyframes plusPulse{50%{opacity:.45;transform:scale(.88)}}
.philosophy{position:relative;min-height:650px;background:#090909;color:#fff;padding:30px 6.8vw 0;overflow:hidden;isolation:isolate}.horizon-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.philosophy::before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 50% 82%,rgba(255,255,255,.075),transparent 40%)}.philosophy-inner{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;max-width:1120px;margin:35px auto 0}.philosophy-copy{max-width:560px}.philosophy-copy h2{font-family:"Noto Sans JP",sans-serif;font-size:clamp(32px,4.4vw,56px);line-height:1.25;margin:0 0 22px;letter-spacing:-.045em}.philosophy-copy p{font-family:"Noto Sans JP",sans-serif;font-size:10px;line-height:2;color:#bcbcbc;max-width:540px}.principles{list-style:none;margin:0;padding:14px 0 14px 46px;border-left:1px solid rgba(255,255,255,.3)}.principles li{font-family:"Noto Sans JP",sans-serif;font-size:11px;padding:9px 0;display:grid;grid-template-columns:46px 1fr;gap:10px}.principles span{font-family:Inter,sans-serif;font-size:9px;color:#bbb}.tomorrow-copy{position:absolute;z-index:4;left:50%;bottom:48px;transform:translateX(-50%);text-align:center;white-space:nowrap}.tomorrow-copy span{font-size:8px;letter-spacing:.45em;color:#d1d1d1}.tomorrow-copy p{font-family:"Noto Sans JP",sans-serif;font-size:9px;margin:8px 0 0;color:#ccc}.journal{background:#090909;color:#777;padding:0 6.8vw 32px}.journal-rule{height:1px;background:rgba(255,255,255,.1);margin-bottom:16px}.journal p{font-size:8px;letter-spacing:.3em;margin:0}.site-footer{min-height:92px;background:#070707;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1.2fr 1fr 1.2fr;align-items:center;padding:18px 5.2vw;color:#fff}.site-footer strong{font-size:14px;letter-spacing:.12em}.site-footer p{font-family:"Noto Sans JP",sans-serif;font-size:8px;color:#999;margin:5px 0 0}.site-footer nav{display:flex;justify-content:center;gap:38px;font-size:9px}.footer-meta{display:flex;justify-content:flex-end;align-items:center;gap:34px}.socials{display:flex;gap:15px;font-size:11px;align-items:center}.footer-meta small{font-size:8px;line-height:1.4;color:#aaa}.reveal{opacity:0;transform:translateY(22px);transition:opacity .95s var(--ease),transform .95s var(--ease);transition-delay:var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:980px){.site-header{padding:0 28px}.desktop-nav{display:none}.hero{padding:130px 28px 0;min-height:830px}.hero-copy{width:74%}.hero h1{font-size:clamp(50px,8.4vw,74px)}.hero-object-wrap{right:-1%;top:100px;width:48vw;height:500px;opacity:.92}.hero-fields{display:none}.capability-strip{padding:0 28px;grid-template-columns:1fr 1px 4fr}.cap-divider:last-of-type,.cap-end{display:none}.venture-grid{grid-template-columns:1fr}.venture-card{min-height:360px}.card-copy{width:54%}.ventures-heading{grid-template-columns:1fr}.heading-note{display:none}.philosophy-inner{grid-template-columns:1fr;gap:28px}.principles{max-width:620px}.site-footer{grid-template-columns:1fr 1fr}.site-footer nav{display:none}}
@media (max-width:680px){.pc{display:none}.site-header{height:72px;padding:0 20px}.brand{font-size:13px}.mobile-menu{font-size:36px}.hero{min-height:900px;padding:118px 20px 0}.hero-copy{width:100%;position:relative;z-index:6}.hero h1{font-size:clamp(43px,13vw,64px);line-height:1.15;margin-bottom:20px}.hero-lead{font-size:12px;line-height:1.85;max-width:315px}.line-label{font-size:7px;padding-left:20px}.line-label::before{height:34px;top:-12px}.hero-object-wrap{right:-22%;top:268px;width:95vw;height:500px;opacity:.78}.scroll-cue{left:20px;bottom:116px}.capability-strip{height:92px;padding:0 20px;grid-template-columns:1fr}.cap-copy,.cap-divider{display:none}.marquee-track{gap:28px;font-size:8px;animation-duration:15s}.ventures-section{padding:27px 14px 48px;border-radius:6px 6px 0 0}.section-number{margin-left:8px}.ventures-heading{padding:0 8px 24px}.ventures-heading h2{font-size:clamp(64px,22vw,94px)}.ventures-heading h3{font-size:14px}.ventures-heading p{font-size:9px}.venture-grid{gap:8px}.venture-card{min-height:390px;padding:20px}.card-copy{width:68%;padding-top:34px}.card-copy h3{font-size:25px}.card-copy h4{font-size:11px}.card-copy p{font-size:8.5px}.card-visual{right:-10%;width:62%;opacity:.85}.sales-panel{width:92%;height:62%}.cube-stage{transform:scale(.82);transform-origin:center right}.digital-visual{width:62%}.philosophy{min-height:720px;padding:28px 20px 0}.philosophy-inner{margin-top:30px}.philosophy-copy h2{font-size:34px}.principles{padding-left:22px}.principles li{font-size:10px;grid-template-columns:35px 1fr}.tomorrow-copy{bottom:44px;white-space:normal;width:90%}.tomorrow-copy span{font-size:7px}.tomorrow-copy p{font-size:8px}.site-footer{grid-template-columns:1fr;padding:24px 20px;gap:22px}.footer-meta{justify-content:space-between}.footer-meta small{text-align:right}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.marquee-track{transform:none}}

/* =========================================================
   v5 — realtime visual system
   ========================================================= */
.hero-webgl{position:absolute;z-index:1;right:0;top:0;width:62%;height:86%;pointer-events:none;filter:drop-shadow(0 36px 62px rgba(0,0,0,.5));opacity:.98}
.hero-copy,.hero-fields,.scroll-cue,.capability-strip{z-index:6}
.hero-glow{right:9%;top:2%;width:650px;height:650px;background:radial-gradient(circle,rgba(255,255,255,.12),rgba(190,210,255,.035) 34%,transparent 68%);filter:blur(30px)}
.hero h1 span{display:inline-block;transform-origin:left center;will-change:transform,filter,opacity}
.hero-copy.is-visible h1 span:first-child{animation:titleResolve 1.15s var(--ease) both .03s}
.hero-copy.is-visible h1 span:last-child{animation:titleResolve 1.15s var(--ease) both .13s}
@keyframes titleResolve{0%{opacity:0;transform:translateY(24px) skewY(2deg);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}

/* truly seamless marquee: two equal groups with the gap inside each group */
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.marquee-track{display:flex;width:max-content;gap:0;animation:marqueeLoop 24s linear infinite;will-change:transform}
.marquee-group{display:flex;flex:none;align-items:center;gap:48px;padding-right:48px;font-size:10px;font-weight:600;color:#f2f2f2;letter-spacing:.05em}
.marquee-group span{opacity:.88;white-space:nowrap}
@keyframes marqueeLoop{to{transform:translate3d(-50%,0,0)}}

/* Sales: keep the dashboard, remove the decorative orbit entirely */
.sales-visual{display:grid;place-items:center}
.sales-panel{width:88%;height:76%;animation:panelFloat 7s ease-in-out infinite}
.sales-panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.055) 48%,transparent 59%);transform:translateX(-130%);animation:panelScan 5.8s ease-in-out infinite}
@keyframes panelScan{45%,100%{transform:translateX(130%)}}

/* Digital / Brand: image-free generative visual */
.digital-visual{position:absolute;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 52% 50%,rgba(255,255,255,.035),transparent 52%)}
.digital-visual canvas{position:absolute;inset:0;width:100%;height:100%;display:block;filter:contrast(1.08)}
.digital-visual::before,.digital-visual::after{content:"";position:absolute;inset:12% 6%;border-radius:50%;pointer-events:none;mix-blend-mode:screen}
.digital-visual::before{border:1px solid rgba(255,255,255,.12);transform:rotateX(68deg) rotateZ(-18deg);animation:digitalRingA 13s linear infinite}
.digital-visual::after{inset:20% 12%;border:1px solid rgba(201,255,102,.13);transform:rotateX(74deg) rotateZ(34deg);animation:digitalRingB 18s linear infinite reverse}
.digital-core{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%);background:#fff;box-shadow:0 0 18px 4px rgba(255,255,255,.45),0 0 80px 12px rgba(201,255,102,.08);mix-blend-mode:screen;animation:corePulse 3.2s ease-in-out infinite}
@keyframes digitalRingA{to{transform:rotateX(68deg) rotateZ(342deg)}}
@keyframes digitalRingB{to{transform:rotateX(74deg) rotateZ(-326deg)}}
@keyframes corePulse{50%{transform:translate(-50%,-50%) scale(1.8);opacity:.58}}

/* Future sphere gets a little more depth without adding image assets */
.future-visual{background:radial-gradient(circle at 58% 50%,rgba(255,255,255,.03),transparent 48%)}
.future-visual::after{content:"";position:absolute;left:50%;top:50%;width:62%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 95px rgba(255,255,255,.035),inset 0 0 65px rgba(255,255,255,.018);pointer-events:none}

/* Restore the calmer horizon treatment from the previous design */
.philosophy{min-height:610px;padding:30px 6.8vw 0;background:#090909;overflow:hidden;isolation:isolate}
.philosophy::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 50% 88%,rgba(255,255,255,.115),transparent 35%);pointer-events:none}
.philosophy-grain{z-index:1}
.philosophy .section-number,.philosophy-inner,.tomorrow-copy{position:relative;z-index:4}
.horizon{position:absolute;z-index:2;left:-12%;right:-12%;bottom:-180px;height:360px;border:1px solid rgba(255,255,255,.34);border-radius:50% 50% 0 0/100% 100% 0 0;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.075),transparent 45%);box-shadow:0 -2px 22px rgba(255,255,255,.18),inset 0 28px 80px rgba(255,255,255,.025);animation:horizonBreathe 6s ease-in-out infinite}
.horizon::before{content:"";position:absolute;left:50%;top:-2px;width:160px;height:4px;transform:translateX(-50%);background:radial-gradient(ellipse,#fff 0%,rgba(255,255,255,.72) 24%,rgba(255,255,255,.20) 48%,transparent 72%);filter:blur(.2px);box-shadow:0 0 32px rgba(255,255,255,.8)}
.horizon::after{content:"";position:absolute;left:50%;top:-70px;width:1px;height:280px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.65) 24%,rgba(255,255,255,.18) 58%,transparent);box-shadow:0 0 18px rgba(255,255,255,.18)}
.horizon i{position:absolute;left:50%;top:-20px;width:360px;height:80px;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(255,255,255,.16),transparent 64%);filter:blur(12px)}
@keyframes horizonBreathe{50%{box-shadow:0 -2px 30px rgba(255,255,255,.24),inset 0 28px 90px rgba(255,255,255,.03)}}
.tomorrow-copy{position:absolute;z-index:5}

/* Slightly richer interaction on cards without decorative clutter */
.venture-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(420px circle at var(--mx,75%) var(--my,40%),rgba(255,255,255,.055),transparent 42%);opacity:0;transition:opacity .35s ease;pointer-events:none;z-index:0}
.venture-card:hover::before{opacity:1}
/* Layering is explicit: never change card-visual out of absolute positioning. */
.venture-card > .card-no{position:absolute;z-index:5}
.venture-card > .card-copy{position:relative;z-index:4}
.venture-card > .card-visual{position:absolute;z-index:2;right:0;top:0;width:48%;height:100%;min-height:0;overflow:hidden;contain:layout paint;pointer-events:none}

@media (max-width:980px){
  .hero-webgl{width:72%;height:74%;right:-14%;top:9%;opacity:.88}
}
@media (max-width:680px){
  .hero-webgl{width:118%;height:60%;right:-42%;top:25%;opacity:.68}
  .marquee-group{gap:28px;padding-right:28px;font-size:8px}
  .digital-visual{right:-12%;width:68%}
  .philosophy{min-height:690px}
  .horizon{bottom:-210px;height:340px;left:-45%;right:-45%}
}
@media (prefers-reduced-motion:reduce){
  .hero-copy.is-visible h1 span{animation:none!important}
  .marquee-track{animation:none!important}
  .horizon{animation:none!important}
}


/* v5.1 stability fallback: page remains visually complete even when WebGL is unavailable */
.hero-webgl.webgl-unavailable{display:none}
.hero.no-webgl::before,.hero.no-webgl::after{content:"";position:absolute;z-index:1;right:8%;top:17%;width:min(44vw,620px);height:min(28vw,380px);pointer-events:none}
.hero.no-webgl::before{
  background:
    radial-gradient(ellipse at 15% 54%,rgba(255,255,255,.38),transparent 18%),
    radial-gradient(ellipse at 42% 22%,rgba(255,255,255,.22),transparent 12%),
    linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02) 36%,rgba(255,255,255,.14) 52%,rgba(255,255,255,.03) 70%);
  filter:drop-shadow(0 24px 45px rgba(0,0,0,.5));
  -webkit-mask:
    linear-gradient(56deg,#0000 22%,#000 22% 33%,#0000 33% 44%,#000 44% 55%,#0000 55% 100%),
    linear-gradient(90deg,#0000 48%,#000 48% 58%,#0000 58% 68%,#000 68% 78%,#0000 78% 88%,#000 88% 98%,#0000 98%);
  mask:
    linear-gradient(56deg,#0000 22%,#000 22% 33%,#0000 33% 44%,#000 44% 55%,#0000 55% 100%),
    linear-gradient(90deg,#0000 48%,#000 48% 58%,#0000 58% 68%,#000 68% 78%,#0000 78% 88%,#000 88% 98%,#0000 98%);
  border-radius:40px;opacity:.92;animation:fallbackGlass 7s ease-in-out infinite;
}
.hero.no-webgl::after{
  background:
    linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent),
    radial-gradient(circle at 60% 42%,rgba(190,210,255,.14),transparent 36%);
  filter:blur(10px);opacity:.65;
}
@keyframes fallbackGlass{50%{transform:translateY(-8px) rotate(1deg)}}
@media(max-width:680px){.hero.no-webgl::before,.hero.no-webgl::after{right:-18%;top:34%;width:92vw;height:42vw;opacity:.72}}
@media(prefers-reduced-motion:reduce){.hero.no-webgl::before{animation:none}}


/* v5.2 layout guards */
.venture-grid{align-items:stretch}
.venture-card{height:335px;min-height:335px;max-height:335px}
.card-copy{height:100%;min-height:0}
.sales-visual,.cube-stage,.digital-visual,.future-visual{position:absolute!important;right:0!important;top:0!important;width:48%!important;height:100%!important;min-height:0!important;overflow:hidden!important}
.sales-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
@keyframes panelFloat{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-8px)}}
.digital-visual canvas,.future-visual canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.hero-canvas,.hero-webgl{display:block;max-width:none;max-height:none}
main{overflow:clip}
@media(max-width:980px){.venture-card{height:360px;min-height:360px;max-height:360px}}
@media(max-width:680px){.venture-card{height:390px;min-height:390px;max-height:390px}.sales-visual,.cube-stage,.digital-visual,.future-visual{right:-10%!important;width:62%!important}}


/* =========================================================
   v5.5 — liquid glass XIII as actual typography
   ========================================================= */
.hero-webgl,.hero.no-webgl::before,.hero.no-webgl::after{display:none!important}
.hero-liquid-mark{
  position:absolute;z-index:2;right:1.5%;top:9%;width:min(58vw,900px);height:auto;aspect-ratio:1120/520;
  pointer-events:none;transform-origin:56% 48%;will-change:transform;transform-style:preserve-3d;
  filter:drop-shadow(0 28px 42px rgba(0,0,0,.48));
}
.hero-liquid-mark::before{
  content:"";position:absolute;inset:7% 2% 5% 2%;z-index:-1;border-radius:50%;
  background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,45%),rgba(255,255,255,.12),rgba(143,170,210,.025) 30%,transparent 64%);
  filter:blur(28px);mix-blend-mode:screen;opacity:.9;
}
.liquid-svg{width:100%;height:100%;overflow:visible;display:block}
.liquid-text{font-family:Inter,Arial,sans-serif;font-size:390px;font-weight:800;letter-spacing:-.075em;paint-order:stroke fill}
.liquid-main{fill:url(#liquidFill);stroke:url(#liquidStroke);stroke-width:5.5px;stroke-linejoin:round}
.liquid-edge{fill:transparent;stroke:rgba(255,255,255,.24);stroke-width:2.2px;opacity:.9;mix-blend-mode:screen}
.liquid-shadow{fill:rgba(90,105,122,.055);stroke:rgba(255,255,255,.045);stroke-width:18px;filter:blur(10px);transform:translateY(8px);opacity:.88}
.liquid-aura{opacity:.7;mix-blend-mode:screen}
.hero-liquid-mark .liquid-main{animation:liquidBreath 7s ease-in-out infinite}
.hero-liquid-mark .liquid-edge{animation:liquidEdge 5.6s ease-in-out infinite}
@keyframes liquidBreath{50%{opacity:.82;filter:saturate(1.08) brightness(1.08)}}
@keyframes liquidEdge{50%{opacity:.58;stroke-width:3.2px}}
@media(max-width:980px){.hero-liquid-mark{right:-7%;top:13%;width:min(70vw,780px);opacity:.94}}
@media(max-width:680px){.hero-liquid-mark{right:-32%;top:31%;width:118vw;opacity:.56}.liquid-text{font-size:370px}}
@media(prefers-reduced-motion:reduce){.hero-liquid-mark .liquid-main,.hero-liquid-mark .liquid-edge{animation:none!important}}


/* =========================================================
   v5.6 — seamless marquee + cleaner oversized liquid XIII
   ========================================================= */
.marquee{overflow:hidden;position:relative;min-width:0;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.marquee-track{display:flex!important;flex-wrap:nowrap!important;width:max-content!important;gap:0!important;animation:none!important;will-change:transform;transform:translate3d(0,0,0)}
.marquee-group{display:flex!important;flex:0 0 auto!important;align-items:center;gap:54px;padding-right:54px;white-space:nowrap}
.marquee-group span{display:inline-block;flex:0 0 auto;white-space:nowrap}

.hero-liquid-mark{
  right:1.8%;top:12%;width:min(61vw,1050px);max-width:calc(100vw - 3.6vw);height:auto;
  opacity:.96;transform-origin:58% 49%;
  filter:drop-shadow(0 32px 54px rgba(0,0,0,.46));
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 8%,rgba(0,0,0,.82) 23%,#000 35%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 8%,rgba(0,0,0,.82) 23%,#000 35%,#000 100%);
}
.hero-liquid-mark::before{inset:10% 3% 8% 6%;opacity:.72;filter:blur(34px)}
.liquid-text{font-size:414px;font-weight:800;letter-spacing:-.082em}
.liquid-body{fill:rgba(190,205,222,.055);stroke:rgba(255,255,255,.085);stroke-width:12px;stroke-linejoin:round;opacity:.96}
.liquid-main{fill:url(#liquidFill);stroke:url(#liquidStroke);stroke-width:4.2px;stroke-linejoin:round;opacity:.96}
.liquid-sheen{fill:url(#liquidSheen);stroke:none;opacity:.74;mix-blend-mode:screen}
.liquid-edge{fill:transparent;stroke:rgba(255,255,255,.21);stroke-width:1.65px;opacity:.75;mix-blend-mode:screen}
.liquid-shadow{fill:rgba(42,54,68,.055);stroke:rgba(255,255,255,.025);stroke-width:14px;filter:blur(13px);transform:translateY(10px);opacity:.72}
.liquid-aura{opacity:.45}
.hero-liquid-mark .liquid-main{animation:liquidBreathClean 8s ease-in-out infinite}
.hero-liquid-mark .liquid-edge{animation:liquidEdgeClean 6.8s ease-in-out infinite}
@keyframes liquidBreathClean{50%{opacity:.86;filter:brightness(1.08)}}
@keyframes liquidEdgeClean{50%{opacity:.58}}

@media(max-width:1200px){.hero-liquid-mark{right:-1%;top:15%;width:min(62vw,860px)}}
@media(max-width:980px){.hero-liquid-mark{right:-8%;top:18%;width:min(76vw,800px);opacity:.86;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 16%,#000 36%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 16%,#000 36%)}}
@media(max-width:680px){.hero-liquid-mark{right:-30%;top:34%;width:120vw;max-width:none;opacity:.48}.liquid-text{font-size:400px}.marquee-group{gap:34px;padding-right:34px}}
@media(prefers-reduced-motion:reduce){.hero-liquid-mark .liquid-main,.hero-liquid-mark .liquid-edge{animation:none!important}}


/* =========================================================
   v5.7 — 3D glass typography for hero XIII
   ========================================================= */
.hero-liquid-mark{
  right:.4%;top:8.6%;width:min(64vw,1120px);max-width:calc(100vw - 2.2vw);aspect-ratio:1220/560;
  opacity:.97;transform-origin:61% 50%;
  filter:drop-shadow(0 34px 60px rgba(0,0,0,.48));
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.10) 8%,rgba(0,0,0,.76) 20%,#000 31%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.10) 8%,rgba(0,0,0,.76) 20%,#000 31%,#000 100%);
}
.hero-liquid-mark::before{inset:12% 5% 9% 8%;opacity:.78;filter:blur(38px)}
.liquid-svg{overflow:visible}
.liquid-text{font-family:Inter,Arial,sans-serif;font-size:430px;font-weight:800;letter-spacing:-.094em;text-rendering:geometricPrecision;paint-order:stroke fill}
.liquid-depth-stack{opacity:.98}
.liquid-depth-layer{fill:rgba(205,220,235,.060);stroke:rgba(255,255,255,.024);stroke-width:10px;stroke-linejoin:round}
.liquid-depth-layer.back{fill:rgba(150,168,190,.08);stroke:rgba(255,255,255,.02)}
.liquid-shadow{fill:rgba(26,34,44,.19);stroke:rgba(255,255,255,.018);stroke-width:16px;filter:blur(13px);transform:translate(-2px,12px);opacity:.76}
.liquid-body{fill:rgba(190,206,224,.070);stroke:rgba(255,255,255,.10);stroke-width:12px;stroke-linejoin:round;opacity:.98}
.liquid-main{fill:url(#liquidFill);stroke:url(#liquidStroke);stroke-width:4.4px;stroke-linejoin:round;opacity:.98}
.liquid-sheen{fill:url(#liquidSheen);stroke:none;opacity:.78;mix-blend-mode:screen}
.liquid-prism{fill:none;stroke-width:3px;opacity:.30;mix-blend-mode:screen}
.liquid-prism-a{stroke:rgba(96,180,255,.45);transform:translate(-1.5px,0)}
.liquid-prism-b{stroke:rgba(255,120,165,.36);transform:translate(1.5px,0)}
.liquid-edge{fill:transparent;stroke:rgba(255,255,255,.26);stroke-width:1.5px;opacity:.78;mix-blend-mode:screen}
.liquid-aura{opacity:.38}
.hero-liquid-mark .liquid-main{animation:liquidBreathV57 8.5s ease-in-out infinite}
.hero-liquid-mark .liquid-edge,.hero-liquid-mark .liquid-sheen{animation:liquidShimmerV57 7.2s ease-in-out infinite}
@keyframes liquidBreathV57{50%{opacity:.90;filter:brightness(1.05)}}
@keyframes liquidShimmerV57{50%{opacity:.60}}
@media(max-width:1200px){.hero-liquid-mark{right:-1.2%;top:11%;width:min(66vw,980px)}}
@media(max-width:980px){.hero-liquid-mark{right:-9%;top:18%;width:min(82vw,860px);opacity:.88;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 16%,#000 36%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 16%,#000 36%)}.liquid-text{font-size:412px}}
@media(max-width:680px){.hero-liquid-mark{right:-34%;top:35%;width:126vw;max-width:none;opacity:.52}.liquid-text{font-size:396px}.liquid-depth-layer{stroke-width:8px}}
@media(prefers-reduced-motion:reduce){.hero-liquid-mark .liquid-main,.hero-liquid-mark .liquid-edge,.hero-liquid-mark .liquid-sheen{animation:none!important}}


/* =========================================================
   v5.8 — real WebGL glass typography
   ========================================================= */
.hero-liquid-mark{display:none!important}
.hero-glass-word{
  position:absolute;z-index:3;right:-.5%;top:8.5%;width:min(63vw,1160px);height:min(58vh,590px);
  min-height:430px;pointer-events:none;overflow:hidden;transform-origin:64% 50%;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.62) 7%,#000 16%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.62) 7%,#000 16%,#000 100%);
  filter:drop-shadow(0 42px 64px rgba(0,0,0,.44));
}
.hero-glass-word canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero-glass-word::after{
  content:"";position:absolute;inset:10% 5% 8% 16%;pointer-events:none;
  background:radial-gradient(ellipse at 60% 48%,rgba(255,255,255,.07),rgba(150,180,220,.018) 38%,transparent 70%);
  filter:blur(28px);mix-blend-mode:screen;opacity:.7;
}
@media(max-width:1200px){.hero-glass-word{right:-3%;top:12%;width:min(67vw,980px);height:520px}}
@media(max-width:980px){.hero-glass-word{right:-11%;top:20%;width:82vw;height:470px;opacity:.88;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 14%,#000 34%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 14%,#000 34%)}}
@media(max-width:680px){.hero-glass-word{right:-35%;top:36%;width:132vw;height:380px;min-height:0;opacity:.58}.hero-glass-word::after{opacity:.42}}

.hero-glass-word.glass-fallback::before{
  content:"XIII";position:absolute;right:3%;top:50%;transform:translateY(-50%) perspective(900px) rotateY(-8deg);
  font:800 clamp(170px,20vw,390px)/.78 Inter,Arial,sans-serif;letter-spacing:-.09em;white-space:nowrap;
  color:rgba(214,224,236,.10);-webkit-text-stroke:2px rgba(255,255,255,.30);
  text-shadow:0 0 2px #fff,12px 14px 0 rgba(174,190,210,.055),24px 28px 0 rgba(130,150,175,.03),0 28px 70px rgba(255,255,255,.055);
}


/* =========================================================
   v5.9 — cool glass reflection + delayed custom cursor
   ========================================================= */
.hero-glass-word{
  filter:drop-shadow(0 42px 64px rgba(0,0,0,.46)) saturate(.92) contrast(1.06);
}
.hero-glass-word::after{
  background:radial-gradient(ellipse at 60% 48%,rgba(255,255,255,.095),rgba(156,184,230,.025) 38%,transparent 70%);
  opacity:.82;
}

@media (pointer:fine){
  html,body,a,button,input,textarea,select,[role="button"]{cursor:none!important}
  .xiii-cursor{
    position:fixed;left:0;top:0;z-index:99999;width:8px;height:8px;border:1px solid rgba(255,255,255,.92);
    border-radius:50%;pointer-events:none;opacity:0;
    box-shadow:0 0 10px rgba(255,255,255,.10);
    transition:opacity .18s ease,width .18s ease,height .18s ease,background-color .18s ease,border-color .18s ease;
    will-change:transform;
  }
  .xiii-cursor.is-visible{opacity:1}
  .xiii-cursor.is-active{width:11px;height:11px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.98)}
}
@media (pointer:coarse){.xiii-cursor{display:none!important}}


/* =========================================================
   v5.10 — colorless optical glass + adaptive cursor
   ========================================================= */
.hero-glass-word{
  filter:drop-shadow(0 42px 66px rgba(0,0,0,.48)) saturate(0) contrast(1.10) brightness(1.03);
}
.hero-glass-word::after{
  background:radial-gradient(ellipse at 60% 48%,rgba(255,255,255,.12),rgba(255,255,255,.018) 40%,transparent 72%);
  opacity:.90;
}

@media (pointer:fine){
  .xiii-cursor{
    width:9px;height:9px;
    border:0!important;
    background:#fff!important;
    box-shadow:none!important;
    mix-blend-mode:difference;
    transition:opacity .16s ease,width .18s ease,height .18s ease;
  }
  .xiii-cursor.is-active{
    width:13px;height:13px;
    background:#fff!important;
  }
}


/* =========================================================
   v5.11 — clearer glass + optical edge blur
   ========================================================= */
.hero-glass-word{
  filter:drop-shadow(0 42px 68px rgba(0,0,0,.48)) saturate(0) contrast(1.08) brightness(1.015);
}
.hero-glass-word::after{
  background:radial-gradient(ellipse at 60% 48%,rgba(255,255,255,.115),rgba(255,255,255,.014) 40%,transparent 72%);
  opacity:.88;
}

/* Lens-like blur only around the perimeter of the hero.
   Copy/navigation sit above it, so readability stays crisp. */
.hero::after{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:5;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 44%,transparent 0 50%,rgba(0,0,0,.015) 63%,rgba(0,0,0,.10) 84%,rgba(0,0,0,.20) 100%);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
  -webkit-mask-image:radial-gradient(ellipse at 50% 44%,transparent 0 51%,rgba(0,0,0,.20) 64%,#000 88%);
  mask-image:radial-gradient(ellipse at 50% 44%,transparent 0 51%,rgba(0,0,0,.20) 64%,#000 88%);
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .hero::after{
    background:radial-gradient(ellipse at 50% 44%,transparent 0 52%,rgba(0,0,0,.045) 68%,rgba(0,0,0,.22) 100%);
  }
}
@media(max-width:680px){
  .hero::after{
    -webkit-backdrop-filter:blur(4px);
    backdrop-filter:blur(4px);
    -webkit-mask-image:radial-gradient(ellipse at 50% 42%,transparent 0 45%,rgba(0,0,0,.18) 60%,#000 90%);
    mask-image:radial-gradient(ellipse at 50% 42%,transparent 0 45%,rgba(0,0,0,.18) 60%,#000 90%);
  }
}


/* =========================================================
   v5.12 — final reflection polish + responsive typography
   ========================================================= */
.hero h1 span{white-space:nowrap}
.hero-glass-word{
  filter:
    drop-shadow(0 0 18px rgba(255,255,255,.055))
    drop-shadow(0 0 42px rgba(255,255,255,.026))
    drop-shadow(0 42px 70px rgba(0,0,0,.50))
    saturate(0) contrast(1.095) brightness(1.025);
}
.hero-glass-word::before{
  content:"";
  position:absolute;
  inset:18% 8% 16% 14%;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 58% 48%,rgba(255,255,255,.105) 0%,rgba(255,255,255,.035) 30%,transparent 66%),
    radial-gradient(ellipse at 74% 38%,rgba(255,255,255,.060),transparent 35%);
  filter:blur(20px);
  mix-blend-mode:screen;
  opacity:.62;
}
.hero-glass-word::after{
  background:radial-gradient(ellipse at 60% 48%,rgba(255,255,255,.145),rgba(255,255,255,.020) 38%,transparent 72%);
  filter:blur(25px);
  opacity:.94;
}

/* Keep Japanese headlines intentional rather than letting the browser split them mid-phrase. */
.hero h1,.ventures-heading h3,.philosophy-copy h2{line-break:strict}
.ventures-heading h3,.philosophy-copy h2{text-wrap:balance}

@media(max-width:980px){
  .hero-copy{max-width:640px}
  .hero h1{line-height:1.13;letter-spacing:-.055em}
  .hero-glass-word{top:21%;right:-9%;width:80vw;height:455px;opacity:.86}
  .ventures-heading h2{max-width:100%;overflow-wrap:normal}
}

@media(max-width:680px){
  .site-header{padding-inline:18px}
  .hero{
    min-height:930px;
    padding:112px 18px 0;
  }
  .hero-copy{width:100%;max-width:none}
  .hero h1{
    font-size:clamp(36px,11.6vw,50px);
    line-height:1.14;
    letter-spacing:-.06em;
    margin-bottom:18px;
  }
  .hero h1 span{display:inline-block;white-space:nowrap}
  .hero-lead{
    width:min(100%,330px);
    max-width:330px;
    font-size:11.5px;
    line-height:1.82;
    text-wrap:pretty;
  }
  .hero-short-line{margin-top:18px}
  .hero-glass-word{
    right:-31%;
    top:37%;
    width:124vw;
    height:360px;
    min-height:0;
    opacity:.57;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.20) 17%,#000 38%);
    mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.20) 17%,#000 38%);
  }
  .hero-glass-word::before{inset:22% 10% 20% 18%;opacity:.42;filter:blur(17px)}
  .hero-glass-word::after{opacity:.48;filter:blur(20px)}
  .scroll-cue{left:18px;bottom:116px}
  .capability-strip{padding-inline:18px}

  .ventures-section{padding:26px 12px 46px}
  .ventures-heading{padding:0 7px 24px}
  .ventures-heading h2{
    font-size:clamp(58px,18vw,82px);
    line-height:.92;
    letter-spacing:-.07em;
    white-space:nowrap;
  }
  .ventures-heading h3{
    max-width:330px;
    font-size:13px;
    line-height:1.55;
    text-wrap:balance;
  }
  .ventures-heading p{font-size:9px;line-height:1.72;max-width:330px;text-wrap:pretty}

  .venture-card{height:388px;min-height:388px;max-height:388px;padding:20px 18px}
  .card-copy{width:66%;padding-top:35px}
  .card-copy h3{font-size:23px;line-height:1.0;max-width:220px}
  .future-card .card-copy h3{font-size:21px;white-space:nowrap}
  .card-copy h4{font-size:10.5px;line-height:1.55;max-width:205px}
  .card-copy p{font-size:8.3px;line-height:1.72;max-width:205px;text-wrap:pretty}
  .venture-card > .card-visual{
    right:-9%!important;
    width:59%!important;
    opacity:.72;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.36) 22%,#000 48%);
    mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.36) 22%,#000 48%);
  }
  .sales-panel{width:94%;height:58%}
  .cube-stage{transform:scale(.72);transform-origin:center right}

  .philosophy{min-height:700px;padding:28px 18px 0}
  .philosophy-inner{margin-top:26px;gap:22px}
  .philosophy-copy h2{
    font-size:clamp(28px,8vw,32px);
    line-height:1.28;
    letter-spacing:-.04em;
    word-break:keep-all;
    margin-bottom:18px;
  }
  .philosophy-copy p{font-size:9px;line-height:1.9;text-wrap:pretty}
  .principles{padding-left:18px}
  .principles li{font-size:9.5px;line-height:1.5;grid-template-columns:31px 1fr;gap:7px}
  .tomorrow-copy{bottom:40px;width:92%}
  .tomorrow-copy p{line-height:1.6}

  .site-footer{padding:22px 18px;gap:20px}
  .site-footer strong{font-size:13px}
}

@media(max-width:380px){
  .hero{padding-inline:16px}
  .site-header{padding-inline:16px}
  .hero h1{font-size:clamp(35px,11.4vw,43px)}
  .hero-lead{font-size:11px;max-width:310px}
  .hero-glass-word{right:-36%;top:38%;width:130vw;height:345px}
  .ventures-heading h2{font-size:clamp(55px,17.5vw,68px)}
  .venture-card{padding-inline:16px}
  .card-copy{width:68%}
  .card-copy h3{font-size:22px}
  .future-card .card-copy h3{font-size:19.5px}
  .philosophy-copy h2{font-size:28px}
}
