:root{--color-ink:#101c2c;--color-ink-soft:#344355;--color-muted:#667384;--color-line:#d7dde2;--color-line-dark:#3a4858;--color-paper:#fff;--color-surface:#f2f4f5;--color-surface-dark:#142235;--color-accent:#c65a31;--color-accent-dark:#9b3f1f;--color-sky:#b9ced8;--font-sans:"Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;--font-serif:"Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--space-section:clamp(6rem, 10vw, 11rem);--page-gutter:clamp(1.25rem, 4.2vw, 5rem);--page-width:1480px;--transition:.18s ease}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7.5rem}body{color:var(--color-ink);background:var(--color-paper);font-family:var(--font-sans);letter-spacing:.035em;-webkit-font-smoothing:antialiased;margin:0;font-size:clamp(.9375rem,.86rem + .2vw,1.0625rem);font-weight:500;line-height:1.9;overflow-x:hidden}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}::selection{color:var(--color-paper);background:var(--color-accent)}.page-shell{width:min(calc(100% - (var(--page-gutter) * 2)), var(--page-width));margin-inline:auto}.section{padding-block:var(--space-section)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;color:var(--color-paper);background:var(--color-ink);transition:transform var(--transition);padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--color-ink-soft);font-family:var(--font-mono);letter-spacing:.16em;align-items:center;gap:.8rem;font-size:.72rem;font-weight:700;line-height:1.4;display:flex}.eyebrow>span{background:var(--color-accent);width:2.8rem;height:1px}.eyebrow--light{color:#cbd3dc}.section-heading{grid-template-columns:minmax(18rem,.86fr) minmax(20rem,1fr);align-items:start;gap:1.75rem 7vw;margin-bottom:clamp(3.5rem,7vw,7rem);display:grid}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{max-width:13em;font-family:var(--font-serif);letter-spacing:.015em;font-size:clamp(2.25rem,4.2vw,4.9rem);font-weight:600;line-height:1.3}.section-heading__description{max-width:46rem;color:var(--color-ink-soft);padding-top:.7rem;font-size:clamp(1rem,1.2vw,1.22rem);line-height:2.05}.section-heading--narrow{margin:0;display:block}.section-heading--narrow .eyebrow{margin-bottom:2rem}.section-heading--narrow h2{margin-bottom:2rem;font-size:clamp(2.2rem,4vw,4.3rem)}.section-heading--narrow .section-heading__description{padding:0}.button{letter-spacing:.04em;min-height:3.8rem;transition:color var(--transition), background-color var(--transition), border-color var(--transition), transform var(--transition);border:1px solid #0000;justify-content:center;align-items:center;gap:1.6rem;padding:.9rem 1.35rem;font-size:.86rem;font-weight:700;line-height:1.4;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--accent{min-width:17rem;color:var(--color-paper);background:var(--color-accent)}.button--accent:hover{background:var(--color-accent-dark)}.button--dark{color:var(--color-paper);background:var(--color-ink)}.button--dark:hover{background:var(--color-accent)}.button--compact{min-height:2.9rem;padding-inline:1.45rem}.text-link{border-bottom:1px solid var(--color-ink);min-height:2.75rem;transition:color var(--transition), border-color var(--transition);align-items:center;gap:1.3rem;font-size:.84rem;font-weight:700;display:inline-flex}.text-link:hover{color:var(--color-accent);border-color:var(--color-accent)}.site-header{z-index:20;border-bottom:1px solid #101c2c26;width:100%;position:absolute;top:0;left:0}.site-header__inner{grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(1.5rem,4vw,4.5rem);min-height:6.2rem;display:grid}.brand{align-items:baseline;gap:.7rem;line-height:1;display:inline-flex}.brand__ja{font-family:var(--font-serif);letter-spacing:.12em;font-size:1.55rem;font-weight:700}.brand__en{color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.18em;font-size:.62rem}.global-nav ul,.footer-nav ul{justify-content:flex-end;align-items:center;gap:clamp(1.2rem,2.5vw,2.8rem);list-style:none;display:flex}.global-nav a,.footer-nav a{letter-spacing:.055em;transition:color var(--transition);font-size:.75rem;font-weight:700}.global-nav a:hover,.footer-nav a:hover{color:var(--color-accent)}.hero{background:linear-gradient(90deg,#0000 49.9%,#101c2c12 50%,#0000 50.1%),linear-gradient(#f7f8f8 0%,#edf1f2 100%);min-height:min(980px,100svh);padding-top:6.2rem;position:relative;overflow:hidden}.hero:before{content:"";background:#101c2c14;width:1px;height:100%;position:absolute;top:0;right:10vw}.hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(20rem,.96fr);align-items:center;gap:clamp(2rem,5vw,6rem);min-height:calc(min(980px,100svh) - 10rem);padding-block:clamp(4rem,9vh,8rem) 5rem;display:grid}.hero__content{z-index:2;max-width:54rem;position:relative}.hero__content .eyebrow{margin-bottom:clamp(2rem,5vh,4rem)}.hero h1{font-family:var(--font-serif);letter-spacing:.025em;font-size:clamp(3.2rem,5.35vw,7.3rem);font-weight:600;line-height:1.15}.hero h1 span{white-space:nowrap;display:block}.hero h1 span:last-child{padding-left:.7em}.hero__lead{max-width:48rem;color:var(--color-ink-soft);margin-top:clamp(2.2rem,5vh,4rem);font-size:clamp(1rem,1.15vw,1.17rem);line-height:2.15}.hero__actions{flex-wrap:wrap;align-items:center;gap:1.2rem 2rem;margin-top:clamp(2.5rem,6vh,4.5rem);display:flex}.hero-visual{aspect-ratio:1;justify-self:end;width:min(100%,42rem);position:relative}.hero-visual:before,.hero-visual:after{background:var(--color-ink);content:"";position:absolute}.hero-visual:before{opacity:.18;width:100%;height:1px;top:50%;left:0}.hero-visual:after{opacity:.18;width:1px;height:100%;top:0;left:50%}.hero-visual__orbit{border:1px solid #101c2c40;border-radius:50%;position:absolute}.hero-visual__orbit--outer{inset:7%}.hero-visual__orbit--inner{border-color:#c65a316b;inset:23%}.hero-visual__axis{z-index:2;background:var(--color-accent);width:.72rem;height:62%;position:absolute;top:19%;left:50%;transform:translate(-50%)}.hero-visual__wings{z-index:3;position:absolute;inset:19% 3%}.hero-visual__wings span{transform-origin:0;background:#ffffff54;border:1px solid #101c2cad;border-left:0;border-radius:0 100% 12% 0;width:48%;height:15%;position:absolute;top:43%;left:50%}.hero-visual__wings span:first-child{transform:rotate(-42deg)scaleX(.7)}.hero-visual__wings span:nth-child(2){transform:rotate(-22deg)scaleX(.9)}.hero-visual__wings span:nth-child(3){transform:rotate(0)}.hero-visual__wings span:nth-child(4){transform:rotate(22deg)scaleX(.9)}.hero-visual__wings span:nth-child(5){transform:rotate(42deg)scaleX(.7)}.hero-visual__wings:after{content:"";transform-origin:100%;background:#ffffff54;border:1px solid #101c2cad;border-right:0;border-radius:100% 0 0 12%;width:47%;height:15%;position:absolute;top:43%;right:50%;transform:rotate(-1deg)}.hero-visual__code{font-family:var(--font-mono);letter-spacing:.12em;writing-mode:vertical-rl;font-size:.62rem;position:absolute;bottom:13%;right:2%}.hero__rail{min-height:3.8rem;color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.12em;border-top:1px solid #101c2c2b;justify-content:space-between;align-items:center;font-size:.66rem;display:flex}.service-list{border-top:1px solid var(--color-line)}.service-item{border-bottom:1px solid var(--color-line);grid-template-columns:4rem minmax(18rem,.94fr) minmax(18rem,1.06fr);gap:clamp(1.5rem,4vw,5rem);padding-block:clamp(3rem,6vw,5.5rem);display:grid}.service-item__number{color:var(--color-accent);font-family:var(--font-mono);font-size:.76rem;font-weight:700}.service-item h3{max-width:16em;font-family:var(--font-serif);margin-bottom:2rem;font-size:clamp(1.65rem,2.35vw,2.7rem);font-weight:600;line-height:1.45}.service-item__content>p,.service-item__details>p{color:var(--color-ink-soft)}.service-item__emphasis{margin-bottom:1.65rem;font-size:1.1em;font-weight:700;color:var(--color-ink)!important}.feature-list{list-style:none;display:grid}.feature-list li{border-bottom:1px solid var(--color-line);color:var(--color-ink-soft);padding:.75rem 0 .75rem 1.5rem;font-size:.88rem;line-height:1.7;position:relative}.feature-list li:before{border:1px solid var(--color-accent);content:"";width:.45rem;height:.45rem;position:absolute;top:1.38rem;left:0;transform:rotate(45deg)}.cross-technology{color:var(--color-paper);background:var(--color-surface-dark);grid-template-columns:minmax(10rem,.45fr) minmax(20rem,1.1fr) 10rem;align-items:center;gap:2rem 5vw;margin-top:clamp(3rem,7vw,6rem);padding:clamp(2rem,4vw,4rem);display:grid;position:relative;overflow:hidden}.cross-technology__label{color:#cbd3dc;font-family:var(--font-mono);letter-spacing:.13em;font-size:.67rem;font-weight:700}.cross-technology h3{font-family:var(--font-serif);margin-bottom:.7rem;font-size:clamp(1.4rem,2vw,2.1rem);font-weight:600}.cross-technology div>p{color:#cbd3dc;font-size:.88rem}.cross-technology__mark{justify-self:end;width:8rem;height:5rem;position:relative}.cross-technology__mark span{background:var(--color-accent);transform-origin:100%;width:100%;height:1px;position:absolute;top:50%;right:0}.cross-technology__mark span:first-child{transform:rotate(-25deg)}.cross-technology__mark span:last-child{transform:rotate(25deg)}.cases{background:var(--color-surface)}.case-list{gap:clamp(6rem,12vw,12rem);display:grid}.case-item{grid-template-columns:minmax(19rem,.95fr) minmax(20rem,1.05fr);align-items:center;gap:clamp(2.5rem,7vw,8rem);display:grid}.case-item--reverse .case-visual{order:2}.case-item__meta{color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.1em;align-items:center;gap:1rem;margin-bottom:1.7rem;font-size:.66rem;font-weight:700;display:flex}.case-item__meta span{width:2.1rem;height:2.1rem;color:var(--color-paper);background:var(--color-ink);place-items:center;display:inline-grid}.case-item h3{max-width:17em;font-family:var(--font-serif);margin-bottom:1.5rem;font-size:clamp(1.8rem,3vw,3.45rem);font-weight:600;line-height:1.4}.case-item__emphasis{font-size:clamp(1rem,1.3vw,1.2rem);font-weight:700;color:var(--color-accent)!important;margin-bottom:1.4rem!important}.case-item__content>p{color:var(--color-ink-soft);margin-bottom:1.05rem}.feature-list--compact{grid-template-columns:1fr 1fr;gap:0 1.7rem;margin-top:1.7rem}.feature-list--compact li{font-size:.78rem}.case-visual{min-width:0;position:relative}.case-visual:before{z-index:0;border:1px solid var(--color-sky);content:"";width:72%;height:72%;position:absolute;bottom:-1.5rem;right:-1.5rem}.case-visual__frame{z-index:1;min-height:clamp(22rem,34vw,33rem);color:var(--color-paper);background:var(--color-surface-dark);justify-content:center;align-items:center;padding:clamp(1.5rem,4vw,4rem);display:flex;position:relative;overflow:hidden}.case-visual__frame:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:2rem 2rem;position:absolute;inset:0}.case-visual--rag .case-visual__frame{gap:clamp(.5rem,2vw,1.5rem)}.rag-source{gap:.65rem;display:grid}.rag-source span,.rag-answer,.rag-core{background:#ffffff0a;border:1px solid #ffffff57;position:relative}.rag-source span{font-family:var(--font-mono);padding:.5rem .7rem;font-size:.58rem}.diagram-arrow{color:var(--color-accent);font-family:var(--font-mono);position:relative}.rag-core{aspect-ratio:1;text-align:center;place-content:center;width:clamp(8.5rem,16vw,13rem);display:grid}.rag-core:before{content:"";border:1px solid #c65a3199;border-radius:50%;position:absolute;inset:14%}.rag-core__permission{color:var(--color-paper);background:var(--color-accent);white-space:nowrap;padding:.2rem .55rem;font-size:.58rem;position:absolute;top:-.8rem;left:50%;transform:translate(-50%)}.rag-core strong,.rag-core small{z-index:2;font-family:var(--font-mono);position:relative}.rag-core strong{font-size:clamp(.72rem,1.2vw,.96rem);line-height:1.4}.rag-core small{color:#9eabb9;margin-top:.45rem;font-size:.5rem}.rag-answer{text-align:center;place-content:center;width:4rem;height:6.5rem;display:grid}.rag-answer span{color:var(--color-accent);font-size:.55rem}.rag-answer strong{font-family:var(--font-serif);font-size:1rem}.workflow-diagram{grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;width:100%;display:grid;position:relative}.workflow-diagram span{aspect-ratio:1;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:clamp(3.2rem,6vw,5rem);font-size:.66rem;display:grid}.workflow-diagram i{background:var(--color-accent);height:1px}.workflow-diagram b{color:#cbd3dc;font-family:var(--font-mono);letter-spacing:.08em;border:1px solid #ffffff40;padding:.4rem .7rem;font-size:.56rem;position:absolute;bottom:-5rem;right:24%}.workflow-diagram b:before{content:"";background:#ffffff40;width:1px;height:4.9rem;position:absolute;bottom:100%;left:50%}.vision-screen{aspect-ratio:4/3;background:#0b1624;border:1px solid #ffffff59;width:100%;position:relative;overflow:hidden}.vision-screen__grid{background:radial-gradient(circle at 60% 45%,#b9ced847,#0000 30%),linear-gradient(115deg,#0000 0 52%,#b9ced814 53% 55%,#0000 56%);position:absolute;inset:0}.vision-screen__object{border:1px solid #b9ced8a6;width:42%;height:45%;position:absolute;top:28%;left:30%;transform:skewY(-8deg)}.vision-screen__box{border:1px solid var(--color-accent);position:absolute}.vision-screen__box span{color:var(--color-paper);background:var(--color-accent);font-family:var(--font-mono);padding:.12rem .35rem;font-size:.48rem;position:absolute;top:-1.25rem;left:-1px}.vision-screen__box--a{width:31%;height:51%;top:21%;left:22%}.vision-screen__box--b{width:19%;height:27%;top:37%;left:61%}.vision-screen__scan{background:var(--color-accent);width:100%;height:1px;position:absolute;top:54%;left:0;box-shadow:0 0 1rem #c65a31bf}.vision-screen>p{font-family:var(--font-mono);letter-spacing:.1em;font-size:.52rem;position:absolute;bottom:.7rem;right:1rem}.process{color:var(--color-paper);background:var(--color-surface-dark)}.process .eyebrow,.process .section-heading__description{color:#cbd3dc}.process__grid{grid-template-columns:minmax(18rem,.8fr) minmax(25rem,1.2fr);gap:clamp(4rem,10vw,10rem);display:grid}.process-list{border-top:1px solid var(--color-line-dark);list-style:none}.process-list li{border-bottom:1px solid var(--color-line-dark);grid-template-columns:3.5rem 1fr;gap:1.5rem;padding-block:1.75rem;display:grid}.process-list__number{color:var(--color-accent);font-family:var(--font-mono);font-size:.72rem}.process-list h3{margin-bottom:.45rem;font-size:1.02rem}.process-list p{color:#aeb9c5;font-size:.84rem;line-height:1.8}.company__grid{grid-template-columns:minmax(20rem,.92fr) minmax(23rem,1.08fr);gap:clamp(4rem,10vw,10rem);display:grid}.company__lead{color:var(--color-ink-soft);font-size:clamp(1rem,1.3vw,1.2rem);line-height:2.1}.company__origin{border-top:1px solid var(--color-line);border-left:2px solid var(--color-accent);margin-top:clamp(3rem,7vw,6rem);padding:2rem 0 0 2rem}.company__origin .eyebrow{margin-bottom:1.5rem}.company__origin>p:not(.eyebrow){color:var(--color-ink-soft);margin-bottom:1.5rem}.company__origin strong{font-family:var(--font-serif);font-size:clamp(1.3rem,2vw,2rem);line-height:1.6;display:block}.company-details{border-top:1px solid var(--color-ink)}.company-details>div{border-bottom:1px solid var(--color-line);grid-template-columns:7.5rem 1fr;gap:1.5rem;padding-block:1.25rem;display:grid}.company-details dt{color:var(--color-muted);font-size:.78rem;font-weight:700}.company-details dd{font-size:.9rem}.contact{color:var(--color-paper);background:var(--color-ink);padding-block:clamp(5rem,9vw,9rem)}.contact__grid{grid-template-columns:minmax(18rem,.75fr) minmax(22rem,1.25fr);gap:clamp(3rem,10vw,10rem);display:grid}.contact h2{max-width:8em;font-family:var(--font-serif);margin-top:2rem;font-size:clamp(2.5rem,5vw,5rem);font-weight:600;line-height:1.35}.contact__description{color:#cbd3dc;max-width:46rem;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(1rem,1.3vw,1.2rem);line-height:2.05}.contact__mail{border-top:1px solid var(--color-line-dark);border-bottom:1px solid var(--color-line-dark);font-family:var(--font-mono);transition:color var(--transition), border-color var(--transition);grid-template-columns:5rem 1fr auto;align-items:center;gap:1rem;padding:1.4rem 0;font-size:clamp(1rem,2vw,1.55rem);display:grid}.contact__mail span{color:var(--color-accent);letter-spacing:.12em;font-size:.66rem}.contact__mail i{font-style:normal}.contact__mail:hover{color:var(--color-accent);border-color:var(--color-accent)}.contact__caution{color:#8f9baa;max-width:43rem;margin-top:1.5rem;font-size:.7rem;line-height:1.8}.site-footer{border-top:1px solid var(--color-line);background:var(--color-paper);padding-block:4rem 2rem}.site-footer__top{justify-content:space-between;align-items:flex-start;gap:3rem;display:flex}.brand--footer{margin-bottom:1rem}.site-footer__tagline{color:var(--color-muted);font-family:var(--font-serif);font-size:.82rem}.site-footer__bottom{border-top:1px solid var(--color-line);color:var(--color-muted);justify-content:space-between;align-items:center;margin-top:4rem;padding-top:1.5rem;font-size:.68rem;display:flex}.error-page{background:linear-gradient(90deg,#0000 49.9%,#101c2c12 50%,#0000 50.1%),linear-gradient(#f7f8f8 0%,#edf1f2 100%);align-items:center;min-height:min(900px,100svh);padding-block:clamp(10rem,17vw,14rem) clamp(6rem,10vw,9rem);display:grid;overflow:hidden}.error-page__grid{grid-template-columns:minmax(18rem,.8fr) minmax(24rem,1.2fr);align-items:center;gap:clamp(3rem,9vw,9rem);display:grid}.error-page__code{color:var(--color-ink);font-family:var(--font-serif);grid-template-columns:auto 1fr auto;align-items:center;font-size:clamp(8rem,17vw,17rem);line-height:1;display:grid}.error-page__code i{background:var(--color-accent);min-width:4rem;height:.7rem;position:relative}.error-page__code i:before,.error-page__code i:after{background:var(--color-ink);content:"";transform-origin:50%;width:clamp(5rem,9vw,10rem);height:1px;position:absolute;top:50%;left:50%}.error-page__code i:before{transform:translate(-50%,-50%)rotate(28deg)}.error-page__code i:after{transform:translate(-50%,-50%)rotate(-28deg)}.error-page__content .eyebrow{margin-bottom:2rem}.error-page h1{font-family:var(--font-serif);margin-bottom:2rem;font-size:clamp(2.5rem,5vw,5rem);font-weight:600;line-height:1.35}.error-page__content>p{max-width:42rem;color:var(--color-ink-soft);font-size:clamp(1rem,1.25vw,1.16rem);line-height:2}.error-page__actions{flex-wrap:wrap;align-items:center;gap:1.2rem 2rem;margin-top:3rem;display:flex}@media (width<=1100px){.site-header__inner{grid-template-columns:auto 1fr}.global-nav{order:3;grid-column:1/-1;padding-bottom:.8rem}.global-nav ul{justify-content:flex-start}.header-contact{justify-self:end}.hero{padding-top:9.1rem}.hero__grid{min-height:auto}.hero h1{font-size:clamp(3.2rem,6vw,5.2rem)}.service-item{grid-template-columns:3rem 1fr 1fr}.case-item{gap:4rem}}@media (width<=820px){:root{--space-section:6.5rem}html{scroll-padding-top:9rem}.section-heading{grid-template-columns:1fr}.section-heading .eyebrow{grid-column:auto}.section-heading h2{max-width:15em}.section-heading__description{padding-top:0}.hero{min-height:auto}.hero__grid{grid-template-columns:1fr;padding-block:6rem 4rem}.hero__content{max-width:none}.hero-visual{justify-self:center;width:min(78vw,34rem);margin-top:1rem}.service-item{grid-template-columns:3rem 1fr}.service-item__details{grid-column:2}.cross-technology{grid-template-columns:1fr}.cross-technology__mark{opacity:.45;position:absolute;bottom:1rem;right:0}.case-item,.process__grid,.company__grid,.contact__grid,.error-page__grid{grid-template-columns:1fr}.case-item--reverse .case-visual{order:initial}.case-visual{width:min(100%,38rem)}.case-visual__frame{min-height:27rem}.process__grid{gap:4rem}.company__grid{gap:5rem}.contact__grid{gap:3rem}.contact h2{max-width:none}.error-page__code{max-width:32rem}.site-footer__top{display:grid}.footer-nav ul{flex-wrap:wrap;justify-content:flex-start}}@media (width<=560px){:root{--page-gutter:1.25rem;--space-section:5.5rem}body{line-height:1.85}.site-header__inner{min-height:4.8rem}.brand__ja{font-size:1.3rem}.header-contact{min-height:2.6rem;padding-inline:1rem}.global-nav{width:100%;padding-bottom:.75rem}.global-nav ul{justify-content:space-between;gap:.55rem;width:100%}.global-nav a{white-space:nowrap;font-size:.61rem}.hero{padding-top:8rem}.hero__grid{gap:1rem;padding-block:4.5rem 3rem}.hero__content .eyebrow{margin-bottom:2rem}.hero h1{font-size:clamp(2.1rem,9.6vw,3.5rem);line-height:1.22}.hero h1 span:last-child{padding-left:0}.hero__lead{margin-top:2.2rem;font-size:.94rem;line-height:2}.hero__actions{flex-direction:column;align-items:stretch}.button--accent{width:100%;min-width:0}.text-link{width:max-content}.hero-visual{width:90vw;max-width:26rem}.hero__rail span:nth-child(2n){display:none}.section-heading{gap:1.5rem;margin-bottom:3.5rem}.section-heading h2{font-size:clamp(2rem,10vw,3rem)}.service-item{grid-template-columns:1fr;gap:1.2rem;padding-block:3rem}.service-item__number,.service-item__details{grid-column:auto}.service-item h3{margin-bottom:1.3rem;font-size:1.65rem}.service-item__details{margin-top:.75rem}.cross-technology{padding:2rem 1.4rem 4rem}.case-list{gap:7rem}.case-item{gap:3rem}.case-visual:before{bottom:-.75rem;right:0}.case-visual__frame{min-height:20rem;padding:1.25rem}.case-item h3{font-size:1.85rem}.feature-list--compact{grid-template-columns:1fr}.rag-source span{padding:.4rem;font-size:.48rem}.diagram-arrow{font-size:.7rem}.rag-core{width:7rem}.rag-answer{width:3.2rem;height:5.3rem}.workflow-diagram span{width:3rem;font-size:.58rem}.workflow-diagram b{right:17%}.process-list li{grid-template-columns:2.5rem 1fr;gap:1rem}.company__origin{padding-left:1.25rem}.company-details>div{grid-template-columns:5.8rem 1fr;gap:.8rem}.contact__mail{overflow-wrap:anywhere;grid-template-columns:1fr auto}.contact__mail span{grid-column:1/-1}.site-footer__bottom{gap:.5rem;display:grid}.error-page{min-height:auto;padding-top:12rem}.error-page__grid{gap:2.5rem}.error-page__code{max-width:20rem;font-size:7rem}.error-page h1{font-size:2.3rem}.error-page__actions{flex-direction:column;align-items:stretch}}@media (width>=2000px){:root{--page-width:1680px}.hero__grid{min-height:min(1080px,100svh - 10rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
