:root{color-scheme:dark;--bg:#111116;--fg:#ececf1;--muted:#b2b2bd;--quiet:#92929f;--line:#393941;--accent:#b9a7dc;--ease:cubic-bezier(.22,.61,.36,1);font-family:Inter,Hiragino Kaku Gothic ProN,Noto Sans JP,Meiryo,system-ui,sans-serif;color:var(--fg);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;min-width:0;min-height:100vh;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--bg)}p,h1,h2{margin:0}svg{width:20px;height:20px;flex-shrink:0}.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:20;background:var(--accent);color:var(--bg);width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{width:auto;height:auto;clip-path:none;padding:12px}.header{height:112px;display:flex;align-items:center;gap:34px}.wordmark{font-size:28px;letter-spacing:-1.1px;font-weight:600;line-height:1.2}.desktop-nav{margin-left:auto;display:flex;gap:32px}.nav-link,.footer a:not(.wordmark){font-size:13px;color:var(--muted);transition:color .2s}.nav-link:hover,.footer a:hover{color:var(--fg)}.header-actions{display:flex;align-items:center;gap:28px}.language{display:flex;gap:18px;border-left:1px solid var(--line);padding-left:28px}.language button{min-width:28px;border:0;background:none;color:var(--muted);font-size:12px;padding:10px 2px;position:relative;min-height:44px}.language button:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .22s var(--ease)}.language button[aria-pressed=true]{color:var(--fg)}.language button[aria-pressed=true]:after{transform:scaleX(1)}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:0 25px;border-radius:3px;font-size:14px;font-weight:500;line-height:1.4;border:1px solid transparent;transition:background .18s,color .18s,border-color .18s,transform .12s var(--ease)}.button.primary{background:var(--accent);color:#15121c}.button.primary:hover{background:#c7b8e6}.button:active{transform:translateY(1px)}.button.outline{border-color:#73737f;background:none}.button.outline:hover{border-color:var(--fg);background:#19191f}.header-consult{min-height:42px;font-size:12px;padding:0 18px}.menu-toggle,.mobile-nav{display:none}.hero{min-height:662px;padding:117px 0 112px;display:flex;align-items:flex-start}.hero-content{max-width:760px}.eyebrow{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;letter-spacing:.15em;font-size:11px;font-weight:400;line-height:1.5;color:var(--muted)}.hero .eyebrow{color:var(--accent);margin-bottom:27px}h1{font-size:60px;font-weight:500;line-height:1.32;letter-spacing:-.045em}html[lang=en] h1{letter-spacing:-.045em;font-size:62px;line-height:1.13}.hero-description{font-size:16px;line-height:1.9;color:var(--muted);margin-top:27px}.hero-cta{margin-top:44px;display:flex;gap:40px;align-items:center}.text-link{position:relative;display:inline-flex;align-items:center;gap:22px;font-size:13px;line-height:1.5;padding:9px 0;border:0;background:none;color:var(--fg)}.text-link:after{content:"";position:absolute;bottom:2px;left:0;right:0;height:1px;background:var(--accent);transform:scaleX(.6);transform-origin:left;transition:transform .25s var(--ease)}.text-link:hover:after{transform:scaleX(1)}.text-link svg{width:18px;height:18px;transition:transform .2s var(--ease)}.text-link:hover svg{transform:translate(3px)}.section{border-top:1px solid var(--line);padding-top:65px}.section-heading{padding-bottom:40px}.section h2{font-size:34px;font-weight:500;line-height:1.55;letter-spacing:-.035em}.section-heading h2{margin-top:29px}.section-heading h2 span+span{margin-left:.25em}.service-row+.service-row{border-top:1px solid var(--line)}.service-toggle{display:grid;grid-template-columns:50px 1fr 1.18fr 32px;gap:32px;align-items:start;width:100%;border:0;padding:40px 0 42px;background:none;text-align:left}.index{font-family:SFMono-Regular,Consolas,monospace;font-size:12px;letter-spacing:.04em;color:var(--muted);padding-top:6px}.service-title{display:flex;flex-direction:column;gap:12px}.service-name{font-size:25px;line-height:1.4;font-weight:500;letter-spacing:-.02em}.service-subtitle{font-size:12px;font-family:SFMono-Regular,Consolas,monospace;letter-spacing:.055em;line-height:1.6;color:var(--quiet)}.service-summary{max-width:450px;font-size:15px;line-height:1.85;color:var(--muted);padding-left:55px;border-left:1px solid var(--line)}.row-icon{display:flex;align-items:center;justify-content:center;height:40px;color:var(--muted);transition:color .2s,transform .2s}.service-toggle:hover .row-icon{color:var(--accent);transform:rotate(90deg)}.service-toggle[aria-expanded=true] .row-icon{transform:rotate(0)}.service-toggle:hover .service-name{color:var(--accent)}.service-name{transition:color .2s}.service-detail{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--ease)}.service-detail.expanded{grid-template-rows:1fr}.detail-clip{overflow:hidden;min-height:0}.detail-content{padding:0 72px 37px 82px;max-width:920px;color:var(--muted);font-size:15px;line-height:1.9}.detail-content ul{list-style:none;display:flex;flex-wrap:wrap;gap:18px;padding:0;margin:18px 0;font-size:12px;color:var(--quiet)}.detail-content li+li{border-left:1px solid var(--line);padding-left:18px}.services{padding-bottom:32px}.about{padding-bottom:75px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:84px;margin-top:31px}.about h2{font-size:29px;line-height:1.75}.about-body p{font-size:15px;line-height:1.95;color:var(--muted);max-width:465px}.about-body .meta{font-family:SFMono-Regular,Consolas,monospace;font-size:11px;letter-spacing:.08em;color:var(--quiet);margin-top:32px}.contact{padding-bottom:80px}.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:100px;margin-top:32px}.contact h2{font-size:36px;line-height:1.4}.contact-grid p{font-size:15px;line-height:1.9;color:var(--muted);max-width:530px;margin-top:22px}.contact-actions{justify-self:end;display:flex;flex-direction:column;gap:24px;align-items:flex-start}.email-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;letter-spacing:.025em;color:var(--muted);padding:3px 0}.email-link:hover{color:var(--fg)}.email-link svg{color:var(--quiet)}.footer{padding:55px 0 45px;border-top:1px solid var(--line)}.footer-main{display:flex;gap:35px;align-items:center}.footer .wordmark{font-size:24px}.footer-main p{border-left:1px solid var(--line);padding-left:35px;color:var(--quiet);font-size:11px;line-height:1.8}.footer nav{margin-left:auto;display:flex;gap:30px}.footer-bottom{display:flex;justify-content:space-between;color:var(--quiet);font-size:11px;margin-top:45px}.footer-bottom small{font-size:11px}.hero-enter{animation:enter .4s var(--ease) both}.hero h1{animation-delay:.04s}.hero-description{animation-delay:.08s}.hero-cta{animation-delay:.12s}@keyframes enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.reveal{transition:opacity .5s var(--ease),transform .5s var(--ease)}.reveal:not(.is-visible){opacity:0;transform:translateY(6px)}.service-row.reveal{transform:none;transition:opacity .45s var(--ease)}.consult-dialog{padding:0;position:fixed;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--fg);width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;margin:auto}.consult-dialog::backdrop{background:#000000b8}.consult-dialog[open]{animation:enter .2s var(--ease)}.dialog-content{padding:48px;position:relative}.close-button{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:40px;height:40px;border:0;background:none;color:var(--muted)}.close-button:hover{color:var(--fg)}.dialog-content .eyebrow{color:var(--accent);margin-bottom:20px}.dialog-content h2 span{display:inline-block}.dialog-content h2:focus{outline:none}.dialog-content h2{font-size:27px;line-height:1.5;font-weight:500;letter-spacing:-.03em}.form-intro{font-size:14px;line-height:1.85;color:var(--muted);margin-top:17px}form{margin-top:30px;display:grid;gap:23px}form label{display:block;position:relative;font-size:13px;line-height:1.5;color:var(--fg)}.required{float:right;color:var(--quiet);font-size:10px}input,select,textarea{width:100%;padding:12px 13px;margin-top:9px;border:1px solid #494952;border-radius:2px;outline:none;background:#19191f;color:var(--fg);font-size:16px;line-height:1.5;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:1px solid var(--accent)}input::placeholder,textarea::placeholder{color:#92929f;font-size:14px}textarea{resize:vertical}form .button{width:100%;margin-top:6px}.review-panel dl{font-size:14px;line-height:1.75;margin:28px 0}.review-panel dt{font-size:11px;color:var(--quiet);margin-top:20px}.review-panel dd{margin:6px 0;overflow-wrap:anywhere}.review-message{white-space:pre-wrap}.mail-note{color:var(--muted);font-size:13px;line-height:1.85;margin-bottom:24px}.review-panel .button{width:100%}.back-button{display:block;margin:20px auto 0;background:none;border:none;font-size:13px;color:var(--muted);padding:8px}.back-button:hover{color:var(--fg)}@media(max-width:1080px){.wrap{width:calc(100% - 80px)}.desktop-nav{gap:20px}.header{gap:24px}.header-actions{gap:20px}.language{padding-left:20px}.header-consult{display:none}.hero{min-height:650px}.service-toggle{gap:23px;grid-template-columns:35px 1fr 1fr 28px}.service-summary{padding-left:28px}.service-name{font-size:23px}.about-grid{gap:50px}.contact-grid{gap:40px}.footer-main{gap:24px}.footer-main p{padding-left:24px}.footer nav{gap:20px}}@media(max-width:700px){.wrap{width:calc(100% - 48px)}.header{height:88px;gap:16px}.wordmark{font-size:25px}.desktop-nav{display:none}.header-actions{margin-left:auto;gap:22px}.language{padding-left:0;border:0;gap:16px}.language button{font-size:11px}.menu-toggle{display:block;border:0;background:none;padding:12px 0;font-size:11px;color:var(--fg);min-height:44px}.mobile-nav{display:grid;grid-template-rows:0fr;max-height:0;overflow:hidden;opacity:0;transition:max-height .25s var(--ease),opacity .25s var(--ease)}.mobile-nav.open{max-height:210px;opacity:1;grid-template-rows:repeat(3,1fr);margin-bottom:12px}.mobile-nav a{padding:18px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;justify-content:space-between}.hero{min-height:584px;padding:90px 0 96px}.hero .eyebrow{font-size:10px;margin-bottom:24px}h1{font-size:38px;line-height:1.5;letter-spacing:-.05em}html[lang=en] h1{font-size:42px;line-height:1.15}.hero-description{font-size:14px;line-height:1.9;margin-top:25px;max-width:370px}.hero-description br{display:none}.hero-cta{margin-top:34px;gap:26px;flex-wrap:wrap}.button{min-height:50px;padding:0 20px;gap:18px;font-size:13px}.text-link{font-size:12px;gap:10px}.section{padding-top:48px}.section-heading{padding-bottom:20px}.section h2{font-size:25px;line-height:1.55}.section-heading h2{margin-top:25px}.section-heading h2 span{display:block}.section-heading h2 span+span{margin-left:0}.service-toggle{grid-template-columns:25px 1fr 22px;gap:16px;padding:30px 0}.service-title{gap:9px}.service-name{font-size:22px}.service-subtitle{display:none}.service-summary{grid-column:2;grid-row:2;padding:0;border:0;font-size:14px;line-height:1.9}.row-icon{grid-column:3;grid-row:1;padding-top:0;height:34px}.index{font-size:11px}.detail-content{padding:0 0 26px 41px;font-size:14px}.detail-content ul{gap:10px;font-size:11px}.detail-content li+li{padding-left:10px}.services{padding-bottom:18px}.about-grid{grid-template-columns:1fr;gap:24px;margin-top:25px}.about h2{font-size:23px;line-height:1.75}.about-body p{font-size:14px}.about-body .meta{margin-top:25px;font-size:12px;letter-spacing:.025em}.about{padding-bottom:48px}.contact-grid{grid-template-columns:1fr;gap:30px;margin-top:25px}.contact h2{font-size:28px}.contact-grid p{font-size:14px;margin-top:20px}.contact-actions{justify-self:start;gap:21px}.contact{padding-bottom:50px}.eyebrow{font-size:11px;letter-spacing:.1em}.footer{padding-top:36px;padding-bottom:32px}.footer-main{flex-wrap:wrap;gap:20px}.footer-main p{padding-left:18px;font-size:10px;max-width:190px}.footer nav{width:100%;margin-left:0;gap:25px;margin-top:12px}.footer a:not(.wordmark){font-size:11px}.footer .wordmark{font-size:23px}.footer-bottom{margin-top:32px;font-size:12px}.footer-bottom small{font-size:12px}.dialog-content{padding:40px 25px 30px}.dialog-content h2{font-size:23px}.consult-dialog{max-height:calc(100dvh - 24px)}}@media(max-width:374px){h1{font-size:30px}.header-actions,.hero-cta{gap:15px}.service-name{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal:not(.is-visible){opacity:1;transform:none}}.hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.9fr);gap:56px;align-items:center}.hero-visual{width:100%;max-width:420px;justify-self:end;align-self:center;animation:graphic-enter .45s var(--ease) both;animation-delay:.12s}.hero-visual img{display:block;width:100%;height:300px;object-fit:cover;opacity:.88}@keyframes graphic-enter{0%{opacity:0}to{opacity:1}}.service-toggle{grid-template-columns:64px 1fr 1.18fr 32px}.service-symbol{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:3px;color:#a69cb8}.service-symbol svg{width:28px;height:28px;transition:color .2s var(--ease),transform .25s var(--ease)}.service-symbol .index{padding-top:0;font-size:10px;color:var(--quiet)}.service-toggle:hover .service-symbol svg,.service-toggle[aria-expanded=true] .service-symbol svg{color:var(--accent)}.service-row-0 .service-toggle:hover .service-symbol svg{transform:rotate(15deg)}.service-row-1 .service-toggle:hover .service-symbol svg{transform:translateY(-2px)}.service-row-2 .service-toggle:hover .service-symbol svg{transform:translate(2px)}@media(max-width:1080px)and (min-width:701px){.hero{gap:24px;grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr)}h1{font-size:clamp(44px,4.6vw,50px)}html[lang=en] h1{font-size:clamp(44px,4.8vw,52px)}.hero-visual img{height:260px}.service-toggle{grid-template-columns:48px 1fr 1fr 28px}}@media(max-width:700px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:32px;padding-bottom:64px}.hero-visual{width:270px;max-width:85%;align-self:center;margin:4px 0 0}.hero-visual img{height:180px;opacity:.9}.service-toggle{grid-template-columns:32px 1fr 22px;gap:16px}.service-symbol{gap:10px}.service-symbol svg{width:26px;height:26px}.service-symbol .index{font-size:10px}.detail-content{padding-left:48px}}@media(prefers-reduced-motion:reduce){.hero-visual{animation:none}.service-symbol svg{transition:none}.service-toggle:hover .service-symbol svg{transform:none}}.wordmark:lang(ja){letter-spacing:.12em;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}html{scroll-padding-top:88px}.desktop-nav{gap:24px}.header{gap:26px}.header-actions{gap:22px}.language{padding-left:22px}.reading-nav-shell{position:sticky;top:0;z-index:6;background:var(--bg);border-bottom:1px solid var(--line)}.reading-nav{display:flex;gap:35px;align-items:center;min-height:58px;overflow-x:auto;scrollbar-width:none}.reading-nav::-webkit-scrollbar{display:none}.reading-nav a{flex-shrink:0;position:relative;display:flex;align-items:center;min-height:58px;color:var(--quiet);font-size:12px;transition:color .2s}.reading-nav a:after{content:"";position:absolute;height:1px;bottom:0;left:0;right:0;background:var(--accent);transform:scaleX(0);transition:transform .2s var(--ease)}.reading-nav a[aria-current]{color:var(--accent)}.reading-nav a[aria-current]:after{transform:scaleX(1)}.reading-nav a:hover{color:var(--fg)}.rich-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:75px;padding-bottom:42px}.section-note{color:var(--muted);font-size:14px;line-height:1.9;max-width:450px;padding-bottom:5px}.services{border-top:0;padding-bottom:64px}.section h2{font-size:32px}.scenarios,.process,.faq{padding-bottom:75px}.catalogue-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px}.filter-buttons{display:flex;gap:9px;flex-wrap:wrap}.filter-buttons button{display:flex;align-items:center;gap:11px;border:1px solid transparent;border-radius:3px;padding:11px 14px;background:none;color:var(--muted);font-size:12px;min-height:42px;transition:border-color .2s,color .2s,background .2s}.filter-buttons button span{font-family:Consolas,monospace;color:var(--quiet);font-size:11px}.filter-buttons button[aria-pressed=true]{border-color:#595062;color:var(--accent);background:#18151e}.filter-buttons button:hover{color:var(--fg);border-color:var(--line)}.result-count{flex-shrink:0;color:var(--quiet);font-size:11px;letter-spacing:.03em}.catalogue-list{border-top:1px solid var(--line)}.catalogue-row{display:grid;grid-template-columns:44px minmax(230px,.95fr) minmax(0,1.3fr) 118px;gap:24px;align-items:center;width:100%;padding:31px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;transition:color .2s}.catalogue-icon{width:28px;height:28px;color:#a69cb8;transition:color .2s,transform .25s var(--ease)}.catalogue-name{display:flex;flex-direction:column;gap:9px}.catalogue-name strong{text-wrap:balance;font-size:24px;line-height:1.5;font-weight:500;letter-spacing:-.025em;transition:color .2s}.catalogue-name>span{font-family:Consolas,monospace;color:var(--quiet);font-size:11px;line-height:1.7;letter-spacing:.02em}.catalogue-summary{font-size:14px;line-height:1.85;color:var(--muted);max-width:440px}.catalogue-open{display:flex;justify-content:flex-end;align-items:center;gap:13px;color:var(--muted);font-size:11px;white-space:nowrap}.catalogue-open svg{width:19px;height:19px;transition:transform .2s}.catalogue-row:hover .catalogue-name strong,.catalogue-row:hover .catalogue-icon{color:var(--accent)}.catalogue-row:hover .catalogue-open svg{transform:translate(3px)}.content-tabs{display:flex;align-items:stretch;gap:28px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.content-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;border:0;min-height:61px;padding:12px 2px;background:none;color:var(--quiet);font-size:13px;transition:color .2s}.content-tabs button svg{width:20px;height:20px}.content-tabs button:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .2s var(--ease)}.content-tabs button[aria-selected=true]{color:var(--accent)}.content-tabs button[aria-selected=true]:after{transform:scaleX(1)}.content-tabs button:hover{color:var(--fg)}.scene-panel,.phase-panel{padding-top:38px;animation:panel-in .22s var(--ease)}@keyframes panel-in{0%{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.scene-grid{display:grid;grid-template-columns:.9fr 1.15fr;gap:95px}.small-heading{font-size:12px;line-height:1.7;font-weight:400;color:var(--quiet);letter-spacing:.015em;margin:0 0 16px}.scene-challenge{font-size:22px;line-height:1.9;letter-spacing:-.015em;max-width:420px}.scene-flow{display:flex;gap:28px;list-style:none;padding:0;margin:0 0 30px;counter-reset:flow}.scene-flow li{position:relative;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:17px;color:var(--muted);font-size:12px;line-height:1.75;padding-top:2px}.scene-flow li>svg:not(.flow-arrow){width:25px;height:25px;color:var(--accent)}.scene-flow .flow-arrow{position:absolute;top:4px;right:-20px;width:16px;height:16px;color:#64646f}.scene-aim-heading{margin-bottom:11px}.scene-aim{color:var(--muted);font-size:14px;line-height:1.9}.scene-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:38px;padding-top:27px;border-top:1px solid var(--line)}.scene-bottom .small-heading{margin-bottom:13px}.related-services{display:flex;gap:25px;flex-wrap:wrap}.related-services button{display:flex;align-items:center;gap:12px;background:none;border:0;padding:8px 0;font-size:13px;color:var(--fg);text-align:left}.related-services button svg{width:16px;height:16px;color:var(--accent);transition:transform .2s}.related-services button:hover svg{transform:translate(3px)}.phase-tabs{gap:0}.phase-tabs button{flex:1;justify-content:flex-start;gap:17px;padding:18px 14px;min-height:72px;font-size:13px}.phase-tabs button:first-child{padding-left:0}.tab-number{font-family:Consolas,monospace;color:var(--quiet);font-size:11px}.phase-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:95px;padding-top:42px}.phase-number{font-size:43px;font-weight:300;letter-spacing:-.04em;color:var(--accent);margin:0 0 20px}.phase-number span{font-size:13px;color:var(--quiet);letter-spacing:.025em}.phase-main h3{font-size:25px;line-height:1.5;font-weight:500;margin:0 0 20px;letter-spacing:-.025em}.phase-main>p:last-child{font-size:15px;line-height:1.9;color:var(--muted)}.phase-info{padding-top:13px}.phase-info ul{list-style:none;margin:0 0 30px;padding:0}.phase-info li{color:var(--muted);font-size:14px;line-height:1.9;padding:10px 0;border-bottom:1px solid #292931}.phase-info p{font-size:14px;line-height:1.9;color:var(--muted)}.company-info{display:grid;grid-template-columns:.6fr 1.6fr;gap:90px;margin-top:50px;padding-top:32px;border-top:1px solid var(--line)}.company-info dl{margin:0}.company-info dl>div{display:grid;grid-template-columns:120px 1fr;gap:26px;padding:17px 0;border-bottom:1px solid #292931;font-size:14px;line-height:1.9}.company-info dt{color:var(--quiet);font-size:12px}.company-info dd{margin:0;color:var(--muted)}.company-info a{display:inline-flex;gap:10px;align-items:center}.company-info a svg{width:15px;height:15px;color:var(--accent)}.company-info dd>a[href^=https]{display:flex;font-size:12px;margin-top:9px}.company-info a:hover{color:var(--fg)}.faq-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px}.faq-search{width:390px;max-width:100%;position:relative;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line)}.faq-search>svg{color:var(--quiet);width:18px;height:18px;flex-shrink:0}.faq-search input{margin:0;padding:12px 0;border:0;border-radius:0;background:none;font-size:14px;outline:none;min-width:0}.faq-search:focus-within{border-color:var(--accent)}.faq-search input:focus{outline:0;border:0}.faq-search button{display:grid;place-items:center;min-width:36px;min-height:42px;border:0;background:none;color:var(--muted)}.faq-search input::-webkit-search-cancel-button{display:none}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 0;list-style:none;font-size:16px;line-height:1.8;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::marker{content:""}.faq-item summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.faq-item summary:hover{color:var(--accent)}.faq-item .faq-minus{display:none}.faq-item[open] .faq-minus{display:inline-flex}.faq-item[open] .faq-plus{display:none}.faq-item summary>span{flex-shrink:0;color:var(--quiet)}.faq-item p{padding:0 45px 27px 0;color:var(--muted);font-size:14px;line-height:2;max-width:930px;animation:panel-in .2s var(--ease)}.faq-empty{font-size:14px;color:var(--muted);line-height:1.9;padding:25px 0}.footer nav{flex-wrap:wrap;gap:21px}.back-to-top{display:flex;align-items:center;gap:10px}.back-to-top svg{width:15px;height:15px}.detail-dialog{position:fixed;inset:0 0 0 auto;margin:0;padding:0;border:0;border-left:1px solid var(--line);width:min(880px,100vw);height:100dvh;max-width:none;max-height:none;background:var(--bg);color:var(--fg);overflow-y:auto;overscroll-behavior:contain}.detail-dialog::backdrop{background:#000000b3}.detail-dialog[open]{animation:reader-in .28s var(--ease)}@keyframes reader-in{0%{opacity:.5;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.detail-reader{min-height:100%;display:flex;flex-direction:column}.detail-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:10px 35px;background:var(--bg);border-bottom:1px solid var(--line)}.detail-top .eyebrow{font-size:10px}.detail-pager{display:flex;align-items:center;gap:14px;margin-left:auto}.detail-pager button,.detail-close{display:grid;place-items:center;width:38px;height:38px;border:0;background:none;color:var(--muted)}.detail-pager span{font-family:Consolas,monospace;font-size:11px;color:var(--quiet);white-space:nowrap}.detail-pager button:disabled{opacity:.25;cursor:default}.detail-pager button:hover:not(:disabled),.detail-close:hover{color:var(--fg)}.detail-intro{padding:40px 55px 32px}.detail-service-icon{color:var(--accent);width:37px;height:37px;margin-bottom:23px}.detail-intro .eyebrow{margin-bottom:15px;text-transform:none;letter-spacing:.035em;color:var(--quiet);font-size:12px}.detail-intro h2{font-size:34px;font-weight:500;letter-spacing:-.035em;line-height:1.45;margin-bottom:20px;text-wrap:balance}.detail-intro h2:focus{outline:none}.detail-intro>p:last-child{max-width:660px;font-size:15px;line-height:1.9;color:var(--muted)}.detail-tabs{position:sticky;top:72px;z-index:4;padding:0 55px;gap:36px;background:var(--bg)}.detail-tabs button{min-height:54px;font-size:13px}.detail-body{padding:32px 55px 35px;min-height:360px;animation:panel-in .2s var(--ease)}.detail-overview{font-size:16px;line-height:2;margin-bottom:32px;color:var(--muted);max-width:690px}.detail-body h3{font-size:18px;font-weight:500;line-height:1.6;margin:0 0 14px}.detail-body h3:not(:first-child){margin-top:30px}.detail-list{list-style:none;margin:0;padding:0}.detail-list li{font-size:14px;line-height:1.95;color:var(--muted);padding:12px 0;border-bottom:1px solid #292931}.deliverable-list{list-style:none;margin:0 0 35px;padding:0}.deliverable-list li{display:grid;grid-template-columns:34px 1fr;gap:24px;padding:21px 0;border-bottom:1px solid var(--line)}.deliverable-list li>span{font-family:Consolas,monospace;font-size:11px;color:var(--accent);padding-top:4px}.deliverable-list p{font-size:16px;line-height:1.85}.detail-scope-note{color:var(--quiet);font-size:13px;line-height:1.9;margin-top:27px}.detail-footer{position:sticky;bottom:0;z-index:4;margin-top:auto;background:var(--bg);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 55px}.detail-footer>a{font-size:13px;color:var(--muted)}.consultation-steps{display:flex;gap:30px;padding:0;margin:23px 0 0;list-style:none}.consultation-steps li{display:flex;align-items:center;gap:9px;color:var(--quiet);font-size:12px}.consultation-steps li>span{font-family:Consolas,monospace;font-size:10px}.consultation-steps li[aria-current]{color:var(--accent)}.information-use{font-size:12px;line-height:1.85;color:var(--quiet)}.copy-inquiry{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;margin:13px auto 0;padding:8px 14px;background:none;border:0;color:var(--muted);font-size:13px}.copy-inquiry:hover{color:var(--fg)}.copy-inquiry svg{width:15px;height:15px;color:var(--accent)}.copy-feedback{color:var(--accent);font-size:12px;line-height:1.8;text-align:center;min-height:20px;margin-top:3px}.back-button{margin-top:9px}@media(max-width:1100px){.desktop-nav{display:none}.header-actions{margin-left:auto}.header-consult{display:none}.menu-toggle{display:block;border:0;background:none;padding:12px 0;min-height:44px;font-size:12px;color:var(--fg)}.mobile-nav{display:flex;flex-direction:column;max-height:0;overflow:hidden;opacity:0;transition:opacity .2s var(--ease)}.mobile-nav.open{display:flex;max-height:450px;opacity:1;margin-bottom:15px}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;font-size:14px}.rich-heading{gap:45px;grid-template-columns:1.15fr 1fr}.catalogue-row{grid-template-columns:34px minmax(210px,.95fr) minmax(0,1.3fr) 20px;gap:22px}.catalogue-open>span{display:none}.catalogue-name strong{font-size:22px}.scene-grid,.phase-panel{gap:45px}.phase-tabs button{gap:10px;padding:16px 9px;font-size:12px}.company-info{gap:45px;grid-template-columns:.5fr 1.6fr}.reading-nav{gap:26px}}@media(min-width:1101px){.mobile-nav{display:none}}@media(max-width:700px){html{scroll-padding-top:72px}.section{padding-top:47px}.rich-heading{display:block;padding-bottom:30px}.section h2{font-size:25px}.section-note{font-size:14px;margin-top:23px;padding-bottom:0}.services,.scenarios,.process,.faq{padding-bottom:48px}.reading-nav{min-height:51px;gap:24px}.reading-nav a{min-height:51px;font-size:11px}.catalogue-controls{align-items:flex-start;flex-direction:column;gap:15px;padding-bottom:19px}.filter-buttons{gap:5px}.filter-buttons button{padding:10px 9px;font-size:11px;gap:7px}.filter-buttons button span{font-size:10px}.result-count{font-size:11px}.catalogue-row{grid-template-columns:30px 1fr 21px;gap:13px;padding:28px 0;align-items:start}.catalogue-icon{width:25px;height:25px;margin-top:5px}.catalogue-name strong{font-size:21px;line-height:1.6}.catalogue-name>span{display:none}.catalogue-summary{grid-column:2;grid-row:2;font-size:14px}.catalogue-open{grid-column:3;grid-row:1;align-self:start;padding-top:8px}.content-tabs{gap:24px}.content-tabs button{font-size:12px;min-height:57px;gap:8px}.content-tabs button svg{width:18px;height:18px}.scene-panel{padding-top:28px}.scene-grid{grid-template-columns:1fr;gap:30px}.scene-challenge{font-size:19px;line-height:1.9}.small-heading{font-size:12px;margin-bottom:14px}.scene-flow{gap:24px;margin-bottom:28px}.scene-flow li{font-size:11px;gap:13px}.scene-flow .flow-arrow{right:-18px}.scene-aim{font-size:14px}.scene-bottom{align-items:flex-start;flex-direction:column;gap:24px;margin-top:29px;padding-top:23px}.related-services{gap:18px}.related-services button{font-size:12px}.phase-tabs{gap:20px}.phase-tabs button{flex:0 0 auto;padding:14px 1px;gap:9px;min-height:57px;font-size:12px}.phase-panel{grid-template-columns:1fr;gap:29px;padding-top:29px}.phase-number{font-size:36px;margin-bottom:18px}.phase-main h3{font-size:22px}.phase-main>p:last-child{font-size:14px}.phase-info{padding-top:0}.company-info{display:block;margin-top:35px;padding-top:28px}.company-info dl>div{grid-template-columns:80px 1fr;gap:17px;font-size:13px}.company-info dt{font-size:11px}.company-info dd{overflow-wrap:anywhere}.faq-tools{gap:15px}.faq-search{width:100%}.faq-search input{font-size:14px}.faq-item summary{font-size:14px;padding:21px 0;gap:17px}.faq-item p{font-size:14px;padding:0 8px 24px 0}.footer nav{gap:14px 23px}.footer-bottom{gap:24px;flex-wrap:wrap;align-items:center}.back-to-top{order:3;width:100%;font-size:12px}.detail-dialog{width:100vw;border-left:0}.detail-top{padding:8px 17px;gap:10px;min-height:66px}.detail-top .eyebrow{font-size:9px;letter-spacing:.08em}.detail-pager{gap:5px}.detail-pager button{width:32px;height:40px}.detail-close{width:37px;height:42px}.detail-pager span{font-size:10px}.detail-intro{padding:30px 24px 26px}.detail-service-icon{width:32px;height:32px;margin-bottom:19px}.detail-intro h2{font-size:28px;line-height:1.5;margin-bottom:16px}.detail-intro>p:last-child{font-size:14px}.detail-tabs{top:66px;padding:0 24px;gap:29px}.detail-tabs button{font-size:12px;min-height:51px}.detail-body{padding:26px 24px 30px;min-height:350px}.detail-overview{font-size:14px;line-height:2}.detail-body h3{font-size:17px}.detail-list li{font-size:14px}.deliverable-list li{gap:17px;grid-template-columns:26px 1fr}.deliverable-list p{font-size:15px}.detail-footer{padding:18px 24px;align-items:flex-start;gap:13px;flex-direction:column}.detail-footer .button{width:100%}.detail-footer>a{font-size:12px}.consultation-steps{gap:25px}.consultation-steps li,.information-use{font-size:11px}}@media(max-width:374px){.catalogue-name strong{font-size:19px}.catalogue-row{grid-template-columns:25px 1fr 18px;gap:12px}.catalogue-icon{width:23px;height:23px}.catalogue-summary{font-size:13px}.filter-buttons button{font-size:10px;padding:9px 7px}.detail-top .eyebrow{max-width:95px}.scene-flow li{font-size:10px}}@media(prefers-reduced-motion:reduce){.detail-dialog[open],.scene-panel,.phase-panel,.detail-body,.faq-item p{animation:none}.catalogue-row:hover .catalogue-open svg,.related-services button:hover svg{transform:none}}.scene-challenge{text-wrap:balance}@media(max-width:374px){.detail-intro h2{font-size:24px}}.consult-dialog .close-button{position:sticky;top:8px;right:auto;float:right;margin:-30px -30px 0 0;z-index:6;background:var(--bg);border-radius:3px}@media(max-width:700px){.consult-dialog .close-button{margin:-24px -8px 0 0}.about h2{font-size:23px}}@media(max-width:374px){.about h2{font-size:19px;letter-spacing:-.035em}}.hero{position:relative;isolation:isolate;display:block;width:100%;margin:0;overflow:clip;min-height:662px;padding:117px 0 112px}.hero-content{position:relative;z-index:2;max-width:1120px}.hero-content h1{max-width:790px}.hero-visual{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;align-self:stretch;justify-self:stretch;max-width:none;margin:0;pointer-events:none;animation:graphic-enter .6s var(--ease) both;mask-image:linear-gradient(90deg,#0000,#0000002e 34%,#000 68%);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,0),rgba(0,0,0,.18) 34%,#000 68%)}.hero-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--bg),transparent 19%,transparent 76%,var(--bg));pointer-events:none}.hero-field{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.insight-atmosphere,.insight-fallback,.insight-gpu{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.insight-fallback,.insight-gpu{transition:opacity .6s ease}.insight-fallback{opacity:1}.insight-fallback[data-hidden=true]{opacity:0}.insight-gpu{display:block;opacity:0}.insight-gpu[data-ready=true]{opacity:1}.hero-glow{position:absolute;top:-15%;right:-10%;bottom:-15%;left:-10%;background:radial-gradient(ellipse at 72% 47%,rgba(145,120,183,.085),rgba(122,110,163,.03) 34%,transparent 65%);opacity:.8;animation:hero-breathe 16s ease-in-out infinite alternate;animation-play-state:paused}.hero[data-motion=running] .hero-glow{animation-play-state:running}@keyframes hero-breathe{0%{opacity:.65;transform:translate3d(-1%,0,0)}to{opacity:1;transform:translate3d(1%,2%,0)}}.hero-motion{position:absolute;z-index:3;right:max(48px,calc((100% - 1120px)/2));bottom:29px;display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:8px 0;border:0;background:none;color:var(--quiet);font-size:11px;line-height:1.5;transition:color .2s}.hero-motion svg{width:14px;height:14px}.hero-motion:hover{color:var(--fg)}@media(min-width:1441px){.hero{min-height:700px;padding-top:130px}}@media(max-width:1080px)and (min-width:701px){.hero{min-height:650px}.hero-content{max-width:none}.hero-content h1{max-width:690px}}@media(max-width:700px){.hero{display:block;min-height:640px;padding:90px 0 115px}.hero-content{max-width:none}.hero-visual{top:0;right:0;bottom:0;left:0;width:100%;max-width:none;mask-image:linear-gradient(90deg,#0000002e,#00000073 40%,#000);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.45) 40%,#000)}.hero-glow{background:radial-gradient(ellipse at 100% 66%,rgba(145,120,183,.08),transparent 68%)}.hero-motion{right:24px;bottom:24px;font-size:10px}}@media(prefers-reduced-motion:reduce){.hero-visual,.hero-glow{animation:none!important}.hero-motion{display:none}}@media(prefers-reduced-motion:reduce){.insight-fallback,.insight-gpu{transition:none}}@media(max-width:700px){.header .language{padding-left:0}.menu-toggle{white-space:nowrap;flex-shrink:0}}@media(max-width:374px){.header{gap:12px}.header .wordmark{font-size:23px}.header .header-actions{gap:12px}}
