/* Black is the canvas. Motion and artwork carry the story; service detail stays on detail routes. */
body.optiens-home{--surface:#000;--text:#f3f3f5;--muted:#acaeb7;--line:#27272c;--electric:#748eff;--pink:#e48a95;background:#000;color:var(--text);font-family:Arial,'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}
.optiens-home *{box-sizing:border-box}.optiens-home h1,.optiens-home h2,.optiens-home h3,.optiens-home p{margin:0}.optiens-home a{color:inherit;text-decoration:none}.optiens-home button{font:inherit;cursor:pointer}.optiens-home a:focus-visible,.optiens-home button:focus-visible{outline:2px solid #b5c2ff;outline-offset:6px}.optiens-home ::selection{background:#4966f0;color:#fff}
body.optiens-home .mn-header{position:absolute;inset:0 0 auto;z-index:30;background:#000;border-bottom:0;height:92px;padding:18px 4.8vw}.optiens-home .mn-logo{width:150px}.optiens-home .mn-logo img{filter:none!important}.optiens-home .mn-header nav{gap:34px}.optiens-home .mn-header nav a{font-size:12px;letter-spacing:.035em}.optiens-home .mn-header .mn-cta{background:transparent!important;border:1px solid #5a5b65;border-radius:30px;padding:14px 24px}.optiens-home .mn-header .mn-cta:hover{background:#1f3a93!important}.optiens-home .mn-menu{border:1px solid #46464e;border-radius:30px;font-size:12px}
.cinema{position:relative;height:100svh;min-height:740px;max-height:1300px;isolation:isolate;overflow:hidden;background:#000}.cinema-art{position:absolute;inset:40px 0 0;z-index:-1;pointer-events:none}.cinema-art canvas{display:block;position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.2s ease}.cinema-art[data-ready=true] canvas{opacity:1}.cinema-art[data-ready=true] .cinema-poster{opacity:0}.cinema-poster{height:100%;width:100%;object-fit:cover;object-position:center;transition:opacity 1.2s ease}.cinema-art[data-static=true] canvas{opacity:0}.cinema-art[data-static=true] .cinema-poster{opacity:1}
.cinema-heading{position:absolute;left:4.8vw;top:25%;z-index:2;pointer-events:none}.kicker{font-size:12px;letter-spacing:.12em;font-weight:400;color:#b3b5bf}.cinema h1{font-size:clamp(88px,10.8vw,174px);font-weight:400;letter-spacing:-.085em;line-height:.92;margin:35px 0 30px;max-width:8em}.cinema h1 span{display:block}.cinema h1 span+span{color:#edf0ff}.hero-jp{font-size:15px;font-weight:400;letter-spacing:.08em;line-height:1.8}.cinema-bottom{position:absolute;inset:auto 4.8vw 33px;display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.08em;color:#bec1cb}.explore{display:flex;align-items:center;gap:20px;min-height:44px}.scroll-stroke{display:block;width:60px;height:1px;background:#777b8e;transform-origin:left}.art-controls{position:absolute;right:0;bottom:44px}.art-controls button{min-height:44px;min-width:64px;background:transparent;border:0;color:#c2c5d1;font-size:12px;letter-spacing:.08em}.cinema-bottom>p{font-size:12px}
.capabilities{padding:132px 4.8vw 80px;background:#000;position:relative}.section-top{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:start;gap:30px;margin-bottom:72px}.section-top>.kicker{padding-top:15px}.section-top h2,.free-check h2{font-size:clamp(56px,7.5vw,110px);font-weight:400;line-height:1.02;letter-spacing:-.065em}.section-top h2 span,.free-check h2 span{color:#9399b3}.section-summary{font-size:17px;line-height:1.85;align-self:end;padding-bottom:4px;color:#ced0d8}.visual-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.visual-service{display:block;position:relative;min-width:0;overflow:hidden;background:#08080c;aspect-ratio:3/4;border-radius:4px}.service-art{position:absolute;inset:0;overflow:hidden}.service-art img{width:100%;height:100%;object-fit:cover;object-position:60% center;transform:scale(1.55);transition:transform 1s cubic-bezier(.22,1,.36,1)}.art-business img{object-position:82% center}.art-web img{object-position:48% center;transform:scale(1.9) rotate(180deg)}.art-ai img{object-position:97% center;transform:scale(2.3) rotate(90deg)}.visual-service:hover .art-business img{transform:scale(1.7)}.visual-service:hover .art-web img{transform:scale(2.05) rotate(180deg)}.visual-service:hover .art-ai img{transform:scale(2.45) rotate(90deg)}.service-label{position:absolute;inset:auto 0 0;padding:66px 28px 28px;background:linear-gradient(transparent,rgba(0,0,0,.97) 80%)}.service-number{font-size:12px;display:block;margin-bottom:16px;color:#a9b3e1}.service-label h3{font-weight:400;font-size:clamp(24px,2.8vw,46px);letter-spacing:-.05em;line-height:1.1;margin-bottom:12px}.service-label p{font-size:14px;line-height:1.5;color:#d2d5e0}.service-end{display:flex;justify-content:space-between;gap:30px;padding-top:30px;font-size:13px;line-height:1.8;color:#a8abb5}.quiet-link{min-height:44px;display:inline-flex;align-items:flex-start;font-size:12px;letter-spacing:.07em;border-bottom:1px solid #777}.quiet-link:hover{color:#fff}
.studio-feature{position:relative;min-height:730px;height:88svh;max-height:1100px;overflow:hidden;background:#000;margin:50px 0 70px}.studio-media{position:absolute;inset:0 0 0 28%;overflow:hidden}.studio-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.8)}.studio-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000 0%,transparent 55%)}.studio-copy{position:relative;padding:130px 4.8vw}.studio-copy h2{font-size:clamp(82px,12vw,180px);font-weight:400;line-height:.93;letter-spacing:-.07em;margin:40px 0}.studio-copy>p:last-child{font-size:15px;line-height:1.9;letter-spacing:.04em}
.free-check{padding:100px 4.8vw 140px;display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;border-bottom:1px solid #23232a}.free-check .kicker{margin-bottom:36px}.free-check h2{font-size:clamp(62px,7.7vw,116px)}.free-check-action>p{font-size:16px;line-height:1.8}.pill-cta{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;min-height:58px;padding:18px 36px;background:#c4ceff;color:#070810!important;font-size:15px;margin:28px 0 18px;transition:background .2s}.pill-cta:hover{background:#e48a95}.free-check-action .small-note{font-size:12px;color:#b1b3be}.cinema-contact{padding:110px 4.8vw 120px}.cinema-contact>a{display:block;padding-top:24px}.cinema-contact h2{font-size:clamp(70px,12.5vw,200px);font-weight:400;line-height:1.12;letter-spacing:-.075em;transition:color .35s}.cinema-contact a:hover h2{color:#a5b7ff}.contact-caption{font-size:14px;line-height:1.8;color:#b7bac5;display:block;margin-top:28px}.optiens-home .mn-footer{background:#000;border-top:1px solid #23232a;padding:50px 4.8vw}.optiens-home .mn-footer nav{gap:18px}.optiens-home .mn-footer .mn-logo{width:135px}
@media(min-width:1600px){.cinema-heading{top:28%}}@media(max-width:1000px){.section-top{grid-template-columns:.7fr 1.4fr}.section-summary{grid-column:2}.visual-services{gap:12px}.service-label{padding:60px 18px 22px}.free-check{gap:30px}.studio-feature{min-height:620px}}
@media(max-width:700px){body.optiens-home .mn-header{height:78px;padding:14px 6vw}.optiens-home .mn-logo{width:122px}.optiens-home .mn-header nav{background:#000;gap:10px}.optiens-home .mn-header nav a{font-size:15px}.cinema{height:94svh;min-height:720px;max-height:none}.cinema-art{inset:65px -55% 135px -30%}.cinema-poster{object-position:62% center}.cinema-heading{left:6vw;top:auto;bottom:142px}.cinema h1{font-size:clamp(70px,16.6vw,110px);letter-spacing:-.073em;margin:24px 0 22px}.cinema-heading>.kicker{font-size:10px;letter-spacing:.1em}.hero-jp{font-size:13px}.cinema-bottom{left:6vw;right:6vw;bottom:25px}.cinema-bottom>p{font-size:10px}.art-controls{bottom:38px}.capabilities{padding:72px 6vw 34px}.section-top{display:block;margin-bottom:38px}.section-top h2{font-size:68px;margin:25px 0}.section-summary{font-size:15px}.visual-services{display:block}.visual-service{aspect-ratio:4/3;margin-bottom:16px}.service-label h3{font-size:38px}.service-label{padding:60px 24px 25px}.service-number{position:absolute;right:24px;bottom:28px;margin:0}.service-art img{object-position:65% center}.service-end{display:block;padding-top:6px;font-size:12px}.service-end .quiet-link{margin-top:20px}.studio-feature{margin:36px 0;min-height:650px;height:80svh}.studio-media{inset:0 -30% 0 8%}.studio-media img{object-position:60% center;filter:brightness(.66)}.studio-media:after{background:linear-gradient(90deg,#000 0%,transparent 80%)}.studio-copy{padding:100px 6vw}.studio-copy h2{font-size:92px}.free-check{display:block;padding:50px 6vw 70px}.free-check h2{font-size:clamp(48px,12.5vw,72px)}.free-check-action{margin-top:40px}.free-check-action>p{font-size:14px}.cinema-contact{padding:66px 6vw 78px}.cinema-contact h2{font-size:clamp(48px,12vw,88px);letter-spacing:-.065em}.optiens-home .mn-footer{padding:36px 6vw}.kicker{font-size:11px}.service-label p{font-size:13px}}
.art-controls button{border:1px solid #555966;border-radius:24px;background:rgba(0,0,0,.78);color:#f3f3f5;padding:0 18px}.cinema-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.24),transparent 45%,transparent 90%,rgba(0,0,0,.12));pointer-events:none}
@media(max-width:700px){.cinema-art:after{background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.12) 45%,rgba(0,0,0,.78) 100%)}.cinema-heading>.kicker{display:none}}
@media(prefers-reduced-motion:reduce){.optiens-home *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.cinema-art canvas{display:none}.cinema-art[data-ready=true] .cinema-poster{opacity:1}.service-art img{transform:none!important}}
/* The document scroll controls a real 3D scene. Touch keeps native vertical scrolling. */
.cinema{height:100svh;min-height:700px;max-height:none;overflow:visible;isolation:auto}.cinema-stage{position:relative;height:100svh;min-height:700px;overflow:hidden;isolation:isolate;background:#000}.cinema.is-interactive{height:300svh;min-height:2100px}.is-interactive .cinema-stage{position:sticky;top:0}.cinema-art{inset:0;z-index:0;pointer-events:auto}.cinema-art canvas{touch-action:pan-y;cursor:grab;outline-offset:-8px!important}.cinema-art canvas[data-dragging=true]{cursor:grabbing}.cinema-art:after{display:none}.cinema-art .cinema-poster{position:absolute;inset:0;pointer-events:none}.cinema-heading{z-index:2}.cinema-bottom{z-index:3;pointer-events:none}.cinema-bottom a,.cinema-bottom button{pointer-events:auto}.cinema .art-controls{display:flex;gap:8px}.cinema .art-controls button{font-size:12px}.scene-word{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font-size:clamp(72px,10.5vw,160px);font-weight:400;letter-spacing:-.075em;line-height:.94;text-align:center;z-index:2;pointer-events:none;opacity:0;color:#fff;text-shadow:0 2px 34px #0008}.scene-readout{position:absolute;top:112px;right:4.8vw;display:none;align-items:center;gap:16px;font-size:12px;letter-spacing:.08em;color:#b9c4e7;z-index:2;pointer-events:none}.is-interactive .scene-readout{display:flex}.scene-progress{display:block;width:86px;height:1px;background:#2a3454}.scene-progress i{display:block;height:100%;background:#e48a95;transform:scaleX(0);transform-origin:left}.cinema .interaction-hint{font-size:11px;letter-spacing:.08em}.cinema:not(.is-interactive) .interaction-hint{visibility:hidden}
@media(max-width:700px){.cinema,.cinema-stage{min-height:700px;height:100svh}.cinema.is-interactive{height:260svh;min-height:1820px}.cinema-art{inset:0}.cinema-heading{bottom:154px}.scene-readout{top:106px;right:6vw;font-size:11px;gap:12px}.scene-progress{width:54px}.scene-word{font-size:clamp(64px,16vw,110px);width:95%;top:43%}.cinema .interaction-hint{font-size:10px;max-width:140px;text-align:right;line-height:1.8}.cinema .art-controls{bottom:62px}.cinema-bottom{bottom:22px}.cinema h1{font-size:clamp(66px,16.6vw,110px)}}
@media(prefers-reduced-motion:reduce){.cinema.is-interactive{height:100svh;min-height:700px}.cinema-stage{position:relative!important}.scene-readout,.scene-word,.interaction-hint{display:none!important}}
.cinema:not(.is-interactive) .cinema-heading{opacity:1!important;transform:none!important}.cinema:not(.is-interactive) .scene-word{display:none}.cinema:not(.is-interactive) .cinema-art canvas{pointer-events:none}
/* Living service diagrams: one scissored WebGL canvas, native links and native scroll. */
.section-top{grid-template-columns:.65fr 1.7fr .85fr}.section-top h2{font-size:clamp(54px,6.8vw,104px)}
.services-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:46px;margin-bottom:12px;color:#a9adc0;font-size:10px;letter-spacing:.12em}
.services-toolbar button{font-size:10px;letter-spacing:.08em;border:0;border-bottom:1px solid #5b6072;background:transparent;color:#c5c9d7;min-height:44px;padding:8px 0}.services-toolbar button[hidden]{display:none}
.visual-services{position:relative;gap:18px}.service-scenes{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.visual-service{aspect-ratio:auto;height:560px;background:linear-gradient(155deg,#0b0e1a,#030305 72%);border:1px solid #292d3b;border-radius:14px;transition:border-color .35s,background .35s}
.visual-service:hover,.visual-service:focus-visible{border-color:#7a8ccb;background:linear-gradient(155deg,#10172b,#030305 72%)}
.visual-services[data-scenes=ready] .service-art{visibility:hidden}.visual-services[data-scenes=fallback] .service-scenes{visibility:hidden}
.service-eyebrow{position:absolute;inset:27px 26px auto;z-index:2;display:flex;gap:19px;color:#b8bed0;font-size:10px;letter-spacing:.1em}.service-eyebrow>span{color:#e48a95}
.service-label{z-index:2;inset:auto 0 0;padding:70px 26px 24px;background:linear-gradient(transparent,#030305 38%)}
.service-label h3{font-size:clamp(31px,3.3vw,53px);font-weight:400;letter-spacing:-.058em;line-height:1.06;margin-bottom:18px}.service-label h3>span{color:#a8b8ff;transition:color .3s}.visual-service:hover h3>span,.visual-service:focus-visible h3>span{color:#e9a4b0}
.service-label>p{font-size:13px;color:#d1d3dc;letter-spacing:.025em}.service-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #272c3a;margin-top:24px;padding-top:18px;font-size:10px;color:#aeb5c9;letter-spacing:.025em}
.service-arrow{display:grid;place-items:center;font-size:20px;width:32px;height:32px;border:1px solid #434c69;border-radius:50%;color:#d9e0ff;transition:transform .4s,background .4s,color .4s}.visual-service:hover .service-arrow,.visual-service:focus-visible .service-arrow{transform:rotate(45deg);background:#d4ddff;color:#101525}
.studio-copy h2{font-size:clamp(74px,10.7vw,164px)}
@media(min-width:1600px){.visual-service{height:660px}}
@media(min-width:701px) and (max-width:1000px){.section-top{grid-template-columns:.6fr 1.4fr}.section-summary{grid-column:2}.visual-services{gap:10px}.visual-service{height:500px}.service-eyebrow{inset:24px 18px auto;font-size:9px;gap:12px}.service-label{padding:65px 18px 20px}.service-label h3{font-size:clamp(24px,3.6vw,34px)}.service-label>p{font-size:11px}.service-meta{font-size:9px;gap:5px}.service-arrow{flex-shrink:0;width:28px;height:28px}}
@media(max-width:700px){.section-top h2{font-size:clamp(49px,12.7vw,72px)}.visual-service{height:475px;aspect-ratio:auto;margin-bottom:18px}.service-eyebrow{inset:25px 24px auto}.service-label{padding:64px 24px 23px}.service-label h3{font-size:clamp(34px,10.5vw,48px)}.service-label>p{font-size:13px}.service-meta{margin-top:20px;padding-top:16px;font-size:10px}.studio-copy h2{font-size:clamp(50px,12.5vw,88px)}.studio-copy>.kicker{font-size:9px}.services-toolbar{font-size:9px}}
@media(prefers-reduced-motion:reduce){.visual-service:hover .service-arrow,.visual-service:focus-visible .service-arrow{transform:none}}
