/* Navigation and image presentation shared by all pages. */
.responsive-picture{display:block;width:100%;line-height:0}
.responsive-picture>img{display:block;width:100%;height:auto;object-fit:contain}
.work-image-link>.responsive-picture{height:100%}
.work-image-link>.responsive-picture>img{height:100%;padding:16px;object-fit:contain}
.work-image-link:has(>.desktop-project-visual){height:430px}
.work-image-link>.desktop-project-visual,.work-image-link>.desktop-project-visual>.rag-diagram{height:100%}
.project-screenshot>.responsive-picture{width:100%;height:100%}
.project-screenshot>.responsive-picture>img{height:100%;object-fit:contain;border-radius:3px}
.product-screen>.responsive-picture{height:100%}
.product-screen>.responsive-picture>img{height:100%;object-fit:contain}
.mobile-project-placeholder,.mobile-presentation-label,.mobile-gallery-note,.mobile-card-note{display:none}
.case-presentation-note{max-width:900px;font-size:14px;line-height:1.9;color:#9aabc7;margin:0 0 28px}
.screenshot-static{display:block;width:100%;padding:0;border:0;background:none;text-align:left;cursor:default}
.project-layout{display:flex;flex-direction:column;height:100%}
.project-featured>.project-layout{display:grid;grid-template-columns:.88fr 1.12fr}
.project-layout>.project-link{height:auto;flex:1}
.workbench-static-label{font:9px/1.7 var(--mono);letter-spacing:.7px;color:#a6b3cf}
.mobile-drawer{position:fixed;inset:0 0 0 auto;width:min(380px,calc(100vw - 24px));max-width:none;height:100dvh;max-height:none;margin:0;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) 24px;border:0;border-left:1px solid #343c57;background:linear-gradient(155deg,#1d2335,#111520 65%);color:var(--text);overflow:auto;overscroll-behavior:contain;box-shadow:-20px 0 80px #03050c66}
.mobile-drawer[open]{display:flex;flex-direction:column;animation:drawer-enter .32s cubic-bezier(.2,.8,.2,1)}
.mobile-drawer::backdrop{background:#040711a8;backdrop-filter:blur(8px)}
.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px;touch-action:pan-y}
.drawer-close{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;padding:11px;border:1px solid #46506a;border-radius:14px;background:#242c405e;color:#c7d0e9}
.drawer-close>.icon{width:22px;height:22px}
.drawer-eyebrow{font:10px/1.6 var(--mono);letter-spacing:1.1px;color:#929ebd;margin-bottom:16px}
.drawer-nav{display:grid;gap:5px}
.drawer-nav>a{display:grid;grid-template-columns:24px 1fr 20px;align-items:center;gap:16px;min-height:64px;padding:15px 12px;border-bottom:1px solid #333d5366;border-radius:10px;font-size:22px;line-height:1.3;letter-spacing:-.45px}
.drawer-nav>a>.icon:first-child{color:#a6adff;width:23px;height:23px}
.drawer-nav>a>.icon:last-child{width:18px;height:18px;color:#6b7999}
.drawer-nav>a:is(:hover,:focus-visible){background:#7278cf13;color:#c6bcff}
.drawer-contact{padding-top:40px;margin-top:auto}
.drawer-contact>p{display:flex;align-items:center;gap:9px;font-size:12px;color:#b0bdd9;margin-bottom:17px}
.drawer-contact>.button{width:100%;min-height:54px;font-size:15px;justify-content:space-between;border-radius:12px}
.drawer-contact>span{display:block;color:#8f9db9;font-size:12px;line-height:1.8;margin-top:14px}
.screen-viewport{min-width:0;max-width:100%;overflow:hidden}
.screen-viewport:focus-visible{outline:2px solid #a6adff;outline-offset:-3px}
.screen-preview-hint{display:none}
.case-cover .screenshot-static{display:block;width:100%}
.case-cover .screenshot-static>img{width:100%;height:auto;object-fit:contain}
.menu-toggle-line{display:block;width:20px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .25s}
@keyframes drawer-enter{from{transform:translateX(100%);opacity:.7}to{transform:translateX(0);opacity:1}}

@media(max-width:900px){
  .header{height:calc(72px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
  .header-inner{height:72px;width:auto;margin-left:max(20px,env(safe-area-inset-left));margin-right:max(20px,env(safe-area-inset-right));gap:18px}
  .header .desktop-nav,.header .header-contact{display:none}
  .header .brand>span:last-child{font-size:25px}
  .header .brand-studio{font-size:13px}
  .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:46px;height:46px;min-height:46px;padding:10px;border:1px solid #3b435c;border-radius:14px;background:#1b2233;color:#dae0f4}
  .menu-toggle[aria-expanded="true"] .menu-toggle-line:first-child{transform:translateY(3.75px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-toggle-line:last-child{transform:translateY(-3.75px) rotate(-45deg)}
  .mobile-drawer .brand>span:last-child{font-size:25px}
  .mobile-drawer .brand-studio{font-size:13px}
}

@media(max-width:760px){
  html{scroll-padding-top:92px}
  body{font-size:16px;line-height:1.7}
  .container{width:auto;margin-left:max(20px,env(safe-area-inset-left));margin-right:max(20px,env(safe-area-inset-right))}
  .section{padding-block:72px}
  h2{font-size:clamp(32px,9vw,44px);letter-spacing:-1.4px;line-height:1.14}
  .eyebrow{font-size:10px;letter-spacing:.9px}
  .section-head{display:block;margin-bottom:30px}
  .section-head .eyebrow{font-size:10px;margin-bottom:18px}
  .section-head h2{font-size:clamp(32px,9vw,44px);letter-spacing:-1.4px}
  .section-head>p{font-size:15px;line-height:1.8;max-width:100%;margin-top:20px}
  .button{min-height:54px;border-radius:12px;padding:14px 20px;font-size:15px}
  .button .icon{width:21px;height:21px}
  .tags{gap:8px}
  .tags>span{font-size:12px}
  .studio-intro{padding-top:30px}
  .intro-kicker{align-items:center;min-height:44px;font-size:9px;line-height:1.7;letter-spacing:.65px;gap:16px}
  .intro-kicker>span:first-child{max-width:235px}
  .intro-kicker>span.intro-kicker-extra{display:flex;flex-shrink:0}
  .intro-kicker-extra>span{display:none}
  .intro-motion-toggle{width:44px;height:44px;margin:0;border-radius:14px}
  .intro-motion-toggle>svg{width:20px;height:20px}
  .studio-intro h1{font-size:clamp(36px,9.3vw,65px);letter-spacing:-1.7px;line-height:1.12;margin:24px 0 26px;max-width:100%;overflow-wrap:normal}
  .intro-line{max-width:100%}
  .intro-lower{display:block;margin-bottom:34px}
  .intro-lower>p{font-size:16px;line-height:1.75;max-width:520px;color:#b2bdd5}
  .intro-lower>p>br{display:none}
  .intro-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:25px}
  .intro-actions>.button{min-height:56px;padding:15px 20px;font-size:16px;justify-content:space-between;gap:20px}
  .intro-actions>span{font-size:12px;line-height:1.8;text-align:left;color:#a2afc9}
  .intro-actions>span>br{display:none}
  .intro-actions>span>br:after{content:" "}
  .workbench{margin-inline:-12px;border-radius:14px;border-color:#3b435e}
  .workbench-bar{height:auto;min-height:62px;padding:0 12px;gap:0}
  .workbench-label,.workbench-corner{display:none}
  .work-tabs{width:100%;min-width:0;gap:22px;justify-content:flex-start;overflow-x:auto;margin:0;scrollbar-width:none;overscroll-behavior-x:contain}
  .work-tab{min-height:62px;flex-shrink:0;font-size:13px;gap:7px;white-space:nowrap}
  .work-tab-index{display:none}
  .work-panels,.capability-stage{min-height:0!important}
  .work-caption{display:grid;grid-template-columns:minmax(0,1fr);gap:15px;padding:22px 18px}
  .work-caption-label{font:9px/1.7 var(--mono);letter-spacing:.55px;margin-bottom:11px}
  .work-caption h2{font-size:26px;letter-spacing:-.7px;max-width:100%;line-height:1.2}
  .work-caption>p{display:block;font-size:14px;line-height:1.8;max-width:100%;color:#a5b3ce}
  .work-caption>a{font-size:14px;justify-content:space-between;min-height:46px;padding:10px 0;border-top:1px solid #35415a}
  .work-caption>a>.icon{width:19px;height:19px}
  .intro-foot{align-items:flex-start;gap:20px;padding-top:22px;font-size:9px;line-height:1.8;letter-spacing:.45px}
  .intro-foot>a{font-size:12px;line-height:1.5;gap:9px;white-space:normal;min-height:44px}
  .intro-foot>a>.icon{width:18px;height:18px}

  /* Dedicated portrait assets fit the phone without cropping or horizontal panning. */
  .screen-viewport{overflow:hidden;max-height:none;aspect-ratio:auto;touch-action:auto}
  .screen-viewport>.screenshot-static,.work-image-viewport>.work-image-link{width:100%;max-width:100%;height:auto;aspect-ratio:auto;min-height:0;padding:0}
  .screen-viewport .responsive-picture,.work-image-viewport .responsive-picture,.screen-viewport.product-screen .responsive-picture{width:100%;height:auto}
  .screen-viewport .responsive-picture>img,.work-image-viewport .responsive-picture>img,.screen-viewport.product-screen .responsive-picture>img{position:static;width:100%;max-width:100%;height:auto;padding:0;object-fit:contain;transform:none}
  .screen-viewport.product-screen{height:auto;aspect-ratio:auto;background:#111522}
  .screen-preview-hint{display:block;padding:11px 15px;margin:0;border-top:1px solid #34435e;background:#161e31;color:#9eafcf;font-size:11px;line-height:1.7}
  .screen-viewport:has([data-mobile-placeholder="true"])+.screen-preview-hint{display:none}
  .work-image-link:has(>.desktop-project-visual){width:100%;height:auto;aspect-ratio:auto}
  .screen-frame .image-zoom{display:none}
  .project-media,.project-media:has(.project-screenshot){aspect-ratio:4/5;min-height:0;height:auto;max-height:none}
  .project-media .project-screenshot,.project-featured .project-screenshot,.project-media.anime-love .project-screenshot{position:absolute;inset:58px 0 0;display:block;min-height:0;height:auto;width:100%;padding:0;transform:none;overflow:hidden}
  .project-screenshot>.responsive-picture{width:100%;height:100%}
  .project-screenshot>.responsive-picture>img{position:static;width:100%;min-width:0;max-width:100%;height:100%;object-fit:cover;object-position:top;border-radius:0}
  .mobile-project-placeholder{display:block;width:100%;background:#111522}
  .mobile-project-placeholder>img{display:block;width:100%;height:auto}
  .desktop-project-visual{display:none}
  .mobile-presentation-label,.mobile-gallery-note{display:inline}
  .desktop-presentation-label,.desktop-gallery-note{display:none}
  .case-presentation-note{font-size:13px;line-height:1.8;margin:0 0 24px;padding:0;color:#97a8c7}
  .project-media>.mobile-project-placeholder{position:absolute;inset:58px 0 0;overflow:hidden;height:auto}
  .project-media>.mobile-project-placeholder>img{height:100%;object-fit:cover;object-position:top}
  .mobile-card-note{display:block;position:absolute;left:16px;right:16px;bottom:16px;padding:9px 12px;border:1px solid #56617e55;border-radius:9px;background:#141b2ff0;color:#b9c7e0;font-size:12px;line-height:1.5;z-index:3;text-align:center}
  .gallery-mobile-placeholder{max-width:390px;margin-inline:auto;border:1px solid #35405b;border-radius:14px;overflow:hidden}
  .gallery-awaits-mobile{display:none}
  .screen-desktop-only{display:none}
  .product-demo:has(source[srcset$="anime-placeholder.svg"]) .product-screen-tabs{display:none}
  .gallery-index>a[aria-current="step"]{border-color:#8a86e2;background:#313358;color:#e5e1ff}
  .screen-stories[data-gallery-carousel]{position:relative;display:flex;align-items:flex-start;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#656ca4 transparent;padding-bottom:16px}
  .screen-stories[data-gallery-carousel]>.screen-story{display:flex;flex-direction:column;gap:20px;flex:0 0 100%;max-width:100%;scroll-snap-align:start;scroll-snap-stop:always}
  .screen-stories[data-gallery-carousel] .screen-frame{order:0;width:100%;margin-inline:0;max-width:100%}
  .screen-stories[data-gallery-carousel] .screen-story-note{order:1}
  .screen-stories[data-gallery-carousel] .screen-detail-link{display:none}
  .viewer-controls>.viewer-prev[hidden],.viewer-controls>.viewer-next[hidden]{display:none}
  .project-category{top:17px;left:17px;max-width:calc(100% - 34px);font-size:10px;line-height:1.7;padding:5px 9px}
  .project-view,.project-card:hover .project-view{height:44px;width:44px;right:15px;bottom:15px;background:#151c31e8}
  .project-view>.icon{width:20px;height:20px}
  .projects-grid{grid-template-columns:1fr;gap:28px}
  .project-featured>.project-link{display:flex;flex-direction:column}
  .project-featured>.project-layout{display:flex;flex-direction:column}
  .project-featured .project-media{order:1}
  .project-content,.project-featured .project-content{order:2;padding:24px}
  .project-heading,.project-featured .project-heading{display:flex;gap:10px;margin-bottom:15px}
  .project-heading h3,.project-featured .project-heading h3{font-size:26px;line-height:1.18;letter-spacing:-.6px;margin:0;max-width:100%}
  .project-heading>.icon,.project-featured .project-heading>.icon{display:block;width:20px;height:20px;flex-shrink:0}
  .project-number{font-size:10px}
  .project-content>p,.project-featured .project-content>p{font-size:15px;line-height:1.8;max-width:100%;color:#aab7ce}
  
  
  

  .capabilities-section{padding-top:72px}
  .capabilities-heading{display:block;margin-bottom:28px}
  .capabilities-heading>.eyebrow{display:block;font-size:10px;margin-bottom:18px}
  .capabilities-heading h2{font-size:clamp(34px,9vw,45px);letter-spacing:-1.5px}
  .capabilities-heading>p{font-size:15px;line-height:1.8;min-width:0;margin-top:18px}
  .capabilities-heading>p>br{display:none}
  .capabilities-layout{grid-template-columns:minmax(0,1fr);gap:26px}
  .capability-navigation{position:static;display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid #3b425a}
  .capability-tab{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;gap:13px;min-height:76px;padding:16px 0;border-top:0;border-bottom:1px solid #333c53}
  .capability-number{grid-column:auto;font-size:10px;margin:3px 0 0;align-self:start}
  .capability-tab>.capability-title{font-size:21px;line-height:1.2;letter-spacing:-.45px;align-self:center}
  .capability-tab>.capability-title>br{display:none}
  .capability-tab>.icon{width:18px;height:18px}
  .capability-description{font-size:16px;line-height:1.8;min-height:0;margin-bottom:24px;color:#b0bcd4}
  .demo-toolbar{min-height:58px;padding:12px 16px;gap:10px}
  .demo-toolbar>span:first-child{font-size:9px;line-height:1.7;letter-spacing:.5px}
  .demo-toolbar>a{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0}
  .demo-replay{min-height:44px;font-size:12px;gap:7px;white-space:normal;text-align:left;line-height:1.4}
  .demo-replay>.icon{width:16px;height:16px}
  .pipeline-list{padding:22px 16px 7px}
  .pipeline-step{grid-template-columns:36px minmax(0,1fr);min-height:105px;gap:0 14px;align-items:start}
  .pipeline-track{grid-row:span 2;width:36px;height:105px}
  .pipeline-node{height:36px;width:36px;border-radius:10px}
  .pipeline-node>.icon{height:17px;width:17px}
  .pipeline-wire{left:17px;top:36px;height:69px}
  .pipeline-step>div{min-width:0;padding-top:3px}
  .pipeline-step strong{font-size:15px;line-height:1.4}
  .pipeline-step small{font-size:12px;line-height:1.65;margin-top:6px}
  .pipeline-state{grid-column:2;font-size:10px;padding-top:6px;align-self:start}
  .pipeline-result{padding:16px;min-height:80px;gap:10px;align-items:flex-start}
  .pipeline-result-indicator{margin-top:8px;flex-shrink:0}
  .pipeline-result>p{font-size:13px;line-height:1.75}
  .capability-footer{align-items:flex-start;flex-direction:column;gap:15px;margin-top:22px}
  .capability-footer .tags>span{font-size:11px}
  .capability-footer>a{min-height:44px;font-size:14px;gap:16px}
  .product-screen-tabs{gap:0;justify-content:space-around;min-height:54px;padding-inline:10px}
  .product-screen-tabs>button{font-size:14px;min-height:54px}
  .knowledge-source{padding:20px 17px 17px}
  .knowledge-source-heading{font-size:13px;gap:9px;margin-bottom:15px}
  .knowledge-source-heading>.icon{height:17px;width:17px}
  .knowledge-source p{font-size:13px;line-height:1.8}
  .knowledge-source mark{padding:8px 10px;margin-bottom:5px}
  .knowledge-questions{padding:16px 16px 0;gap:8px}
  .knowledge-questions>button{font-size:12px;min-height:44px;padding:9px 12px;border-radius:10px}
  .knowledge-answer{padding:22px 17px;gap:13px;min-height:130px}
  .knowledge-answer-icon{width:31px;height:31px;border-radius:9px;flex-shrink:0}
  .knowledge-answer-label{font-size:9px;margin-bottom:9px}
  .knowledge-answer p{font-size:14px;line-height:1.8}
  .demo-disclosure{font-size:11px;line-height:1.8;padding:0 17px 18px}
  .demo-example{font-size:10px;padding:4px 7px}
  .agent-scenarios{padding:16px 17px 0}
  .agent-scenarios>button{font-size:13px;min-height:44px;padding:8px 12px}
  .agent-workflow{padding:20px 16px}
  .agent-workflow-row{grid-template-columns:30px minmax(0,1fr);gap:9px 12px;padding:13px;min-height:76px}
  .agent-workflow-row>span{grid-row:span 2;height:30px;width:30px;border-radius:8px}
  .agent-workflow-row .icon{height:17px;width:17px}
  .agent-workflow-row>p{font-size:14px;line-height:1.5}
  .agent-workflow-row>i{grid-column:2;font-size:9px}
  .agent-connector{margin-left:29px}

  .process-grid{grid-template-columns:1fr;gap:30px;margin-top:34px}
  .step-number>span{font-size:14px}
  .process-step h3{font-size:23px;margin-bottom:11px}
  .process-step p{font-size:15px;line-height:1.8}
  .process-note{padding:20px;gap:12px}
  .process-note p{font-size:13px;line-height:1.8}
  .process-note a{min-height:44px;font-size:13px;margin-left:0}
  .faq-layout{display:block}
  .faq-intro h2{font-size:40px}
  .faq-intro p{font-size:15px;line-height:1.8;margin-top:18px}
  .faq-list{margin-top:30px}
  .faq-item summary{font-size:16px;line-height:1.6;min-height:84px;gap:12px;padding:20px 0}
  .faq-number{font-size:10px;padding-top:5px}
  .faq-item summary>.icon{width:21px;height:21px}
  .faq-answer{padding:0 0 22px 25px}
  .faq-answer p{font-size:15px;line-height:1.8}
  .contact-section{padding-top:0;padding-bottom:50px}
  .contact-panel{padding:25px 22px;border-radius:16px}
  .contact-top .eyebrow{font-size:9px;line-height:1.8}
  .contact-index{display:none}
  .contact-body{padding-block:30px;align-items:flex-start;gap:16px}
  .contact-body h2{font-size:clamp(34px,9.4vw,48px);letter-spacing:-1.4px}
  .contact-body p{font-size:14px;line-height:1.8;margin-top:22px}
  .contact-body .desktop-break{display:none}
  .contact-circle{width:48px;height:48px;flex-shrink:0;margin:4px 0 0}
  .contact-circle>.icon{width:24px;height:24px}
  .contact-bottom{flex-wrap:wrap;gap:15px}
  .contact-handle{font-size:17px;min-height:44px;gap:9px}
  .copy-contact{font-size:12px;min-height:44px;padding:8px 12px;margin-left:auto;border:1px solid #ffffff2b;border-radius:10px}
  .contact-bottom>p{font-size:12px;line-height:1.8;flex-basis:100%;margin-left:0;gap:8px}
  .contact-bottom>p .icon{height:15px;width:15px}
  .contact-note{font-size:12px;line-height:1.8;max-width:100%;padding-top:20px}
  .footer{padding-block:30px max(24px,env(safe-area-inset-bottom))}
  .footer-main{gap:20px;flex-wrap:wrap}
  .footer-main>p{font-size:13px;line-height:1.8;flex-basis:100%;order:3}
  .footer-main>a:last-child{font-size:14px;min-height:44px;display:flex;align-items:center;margin-left:auto}
  .footer-bottom{font-size:11px;line-height:1.7;gap:14px;flex-wrap:wrap;margin-top:22px;padding-top:18px}
  .footer-bottom>a{min-height:44px;display:flex;align-items:center}

  .case-hero{padding-top:24px}
  .back-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center;margin-bottom:26px}
  .case-label{gap:12px;flex-wrap:wrap;margin-bottom:20px}
  .case-label .eyebrow{font-size:10px}
  .case-label>span:last-child{font-size:11px;padding:5px 9px;line-height:1.7}
  .case-hero h1{font-size:clamp(36px,10vw,52px);letter-spacing:-1.5px;line-height:1.12}
  .case-subtitle{font-size:17px;line-height:1.8;margin:24px 0}
  .case-meta{gap:14px;margin:24px 0 30px;flex-wrap:wrap}
  .case-meta>.tags{flex-basis:100%}
  .case-meta>.tags>span{font-size:12px}
  .case-meta>span,.case-meta>a{font-size:13px;line-height:1.8}
  .case-meta>a{margin-left:0;min-height:44px;flex-basis:100%}
  .case-access-note{font-size:13px;line-height:1.8;gap:11px;padding:15px 16px;margin:0 0 24px;border-radius:10px;align-items:flex-start}
  .case-access-note>.icon{height:19px;width:19px;flex-shrink:0;margin-top:3px}
  .case-cover{width:calc(100% + 24px);max-width:none;margin-inline:-12px;border-radius:14px}
  .case-image-chrome{height:auto;min-height:42px;padding:11px 13px;gap:15px;font-size:10px;line-height:1.5}
  .case-image-chrome>.icon{width:18px;height:18px}
  .case-story{display:block;padding-block:62px}
  .story-sidebar{margin-bottom:32px}
  .story-sidebar .eyebrow{font-size:10px}
  .story-sidebar h2{font-size:32px;max-width:100%;margin-top:17px}
  .story-sidebar>p{font-size:15px;line-height:1.8;margin-top:16px}
  .story-sidebar>p>br{display:none}
  .story-sidebar .button{font-size:14px;min-height:50px;padding:12px 18px;margin-top:20px}
  .story-content>article{margin-bottom:35px}
  .story-content>article .eyebrow{font-size:10px;margin-bottom:12px}
  .story-content h3{font-size:26px;line-height:1.2;margin-bottom:14px}
  .story-content p{font-size:16px;line-height:1.85;color:#abb6d0}
  .case-metrics{padding:23px 20px;gap:19px;border-radius:14px}
  .case-metrics>div>span{font-size:10px}
  .case-metrics strong{font-size:34px}
  .case-metrics strong small{font-size:12px;padding-left:5px}
  .case-metrics>p{font-size:12px;line-height:1.8;margin:0}
  .case-metrics>.icon{width:19px;height:19px}
  .case-features{padding-top:30px}
  .case-features>.eyebrow{font-size:10px}
  .case-features-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}
  .case-features-grid>article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 14px}
  .feature-check{grid-row:span 2;width:30px;height:30px;margin:0}
  .case-features-grid h3{font-size:20px;line-height:1.3;margin-bottom:9px}
  .case-features-grid p{font-size:15px;line-height:1.8;grid-column:2}
  .structured-gallery>.section-head{margin-bottom:28px}
  .gallery-index{top:calc(72px + env(safe-area-inset-top));gap:10px;padding:12px 0;margin-bottom:30px;scrollbar-width:none}
  .gallery-index>a{min-height:44px;gap:8px;font-size:13px;padding:8px 12px;border:1px solid #3b4765;border-radius:10px;background:#1b2439}
  .gallery-index>a>span{font-size:10px}
  .screen-story{grid-template-columns:minmax(0,1fr);gap:20px;scroll-margin-top:156px;min-width:0}
  .screen-story-note{position:static;padding:0}
  .screen-story-number{font-size:10px;margin-bottom:14px}
  .screen-story-note h3{font-size:29px;line-height:1.18;letter-spacing:-.6px;margin-bottom:13px}
  .screen-story-note>p{font-size:15px;line-height:1.8;max-width:100%}
  .screen-detail-link{min-height:46px;font-size:14px;margin-top:12px;gap:14px}
  .screen-detail-link>.icon{height:17px;width:17px}
  .screen-stories{gap:44px}
  .screen-frame{margin-inline:-12px;border-radius:14px;min-width:0;max-width:calc(100% + 24px)}
  .screen-frame-toolbar{min-height:46px;font-size:10px;line-height:1.7;padding:12px 14px;gap:12px}
  .screen-frame-toolbar>span:first-child{max-width:67%}
  .screen-frame-toolbar>span:last-child{font-size:8px;letter-spacing:.4px}
  .next-project{margin-bottom:62px;padding-top:30px}
  .next-project>.eyebrow{font-size:10px}
  .next-project>a{min-height:64px;gap:20px}
  .next-project>a h2{font-size:32px;max-width:85%;line-height:1.2}
  .next-project>a>.icon{width:27px;height:27px}
  .vectra-steps{grid-template-columns:1fr;gap:16px}
  .vectra-steps>article{padding:24px}
  .vectra-steps h3{font-size:26px}
  .vectra-steps p{font-size:16px;line-height:1.8}

  /* A full-screen image viewer with controls reachable by touch. */
  .image-viewer[open]{display:flex;flex-direction:column;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}
  .viewer-toolbar{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;gap:15px;height:auto;min-height:138px;flex-shrink:0;padding:calc(16px + env(safe-area-inset-top)) 16px 14px}
  .viewer-toolbar>p{flex-basis:100%;width:calc(100% - 58px);max-width:calc(100% - 58px);font-size:14px;line-height:1.5;white-space:normal;min-height:44px;display:flex;align-items:center;padding:0}
  .viewer-controls{display:flex;width:100%;gap:8px;flex-shrink:1}
  .viewer-controls>button{min-height:46px;min-width:46px;font-size:13px;padding:10px 12px;border-radius:12px}
  .viewer-controls>.viewer-zoom,.viewer-controls>.viewer-original{flex:1}
  .viewer-controls>.viewer-close{position:absolute;top:calc(14px + env(safe-area-inset-top));right:16px;margin:0;min-width:46px;width:46px;height:46px}
  .viewer-controls .icon{width:20px;height:20px}
  .viewer-stage{height:auto;flex:1;min-height:0;width:100%;padding:12px;touch-action:pan-x pan-y pinch-zoom}
  .viewer-stage.is-zoomed{padding:12px}
  .viewer-hint{height:auto;min-height:48px;flex-shrink:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));font:11px/1.7 var(--font);color:#a8b7d4}

  .rag-diagram,.rag-large{height:400px}
  .rag-nodes,.rag-large .rag-nodes{flex-direction:column;padding:48px 20px 50px;gap:0}
  .rag-node,.rag-large .rag-node{display:grid;grid-template-columns:45px 1fr;grid-template-rows:auto auto;min-width:220px;width:auto;gap:2px 16px;text-align:left;align-items:center}
  .node-icon,.rag-large .node-icon{grid-row:span 2;width:45px;height:45px;margin:0;border-radius:12px}
  .node-icon>.icon,.rag-large .node-icon>.icon{width:23px;height:23px}
  .rag-node strong,.rag-large .rag-node strong{font-size:15px;line-height:1.5}
  .rag-node small,.rag-large .rag-node small{font-size:12px;line-height:1.7;margin:0}
  .node-line,.rag-large .node-line{width:1px;height:29px;margin:0 174px 0 0;background:linear-gradient(#717ad3,#977ce4)}
  .diagram-label,.rag-large .diagram-label,.work-image-link>.rag-diagram .diagram-label{top:20px;left:20px;font-size:9px}
  .diagram-foot,.rag-large .diagram-foot{font-size:11px;bottom:19px}
}

@media(max-width:360px){
  .container,.header-inner{width:auto;margin-left:max(16px,env(safe-area-inset-left));margin-right:max(16px,env(safe-area-inset-right))}
  .studio-intro h1{font-size:36px;letter-spacing:-1.6px}
  .intro-kicker>span:first-child{max-width:205px}
  .workbench,.case-cover,.screen-frame{margin-inline:-8px}
  .case-cover{width:calc(100% + 16px)}
  .screen-frame{max-width:calc(100% + 16px)}
  .contact-body{display:block}
  .contact-circle{margin-top:22px}
  .contact-bottom{gap:10px}
  .contact-handle{font-size:16px}
  .copy-contact{margin-left:0}
  .case-metrics{gap:12px}
  .case-metrics strong{font-size:29px}
  .case-metrics strong small{font-size:11px}
  .screen-preview-hint>span:last-child:not(:nth-child(2)){margin-left:0}
  .drawer-heading{gap:10px}
  .mobile-drawer{padding-inline:20px}
  .drawer-nav>a{font-size:21px;gap:12px}
}
@media(prefers-reduced-motion:reduce){.mobile-drawer[open]{animation:none}.menu-toggle-line{transition:none}}
@media(max-height:700px){.drawer-heading{margin-bottom:20px}.drawer-nav>a{min-height:56px;padding-block:12px}.drawer-contact{padding-top:24px}.drawer-contact>span{font-size:11px}}

/* Keep the composition aligned after removing decorative labels and counters. */
.capability-tab{grid-template-columns:minmax(0,1fr) 23px}
.agent-workflow-row{grid-template-columns:32px minmax(0,1fr);min-height:54px}
.agent-workflow-row>span{grid-row:auto}
.faq-answer{padding-left:0}
.story-sidebar h2{margin-top:0}
.contact-body{padding-top:12px}
.capability-footer{justify-content:flex-end}
.demo-toolbar:has(>[data-pipeline-run]){justify-content:flex-end}
.intro-actions>span,.contact-note,.demo-disclosure,.case-meta>span,.case-meta>a,.mobile-card-note{font-size:14px;line-height:1.8}

/* Portfolio presentation: quiet image stages, native screen ratios, editorial captions. */
.projects-section .projects-grid{gap:56px 32px}
.projects-section .project-card{border:0;border-radius:0;overflow:visible;background:transparent;transform:none;transition:none}
.projects-section .project-layout,.projects-section .project-featured>.project-layout{display:flex;flex-direction:column;height:100%}
.projects-section .project-media,.projects-section .project-featured .project-media{grid-area:auto;order:0;min-height:0;max-height:none;height:auto;aspect-ratio:auto;border-radius:22px;background:transparent;overflow:hidden}
.projects-section .project-content,.projects-section .project-featured .project-content{grid-area:auto;order:1;padding:26px 2px 0;align-self:stretch}
.projects-section .project-heading,.projects-section .project-featured .project-heading{display:flex;align-items:flex-start;gap:20px;margin:0 0 13px}
.projects-section .project-heading h3,.projects-section .project-featured .project-heading h3{font-size:32px;line-height:1.15;letter-spacing:-1px;max-width:none;margin:0}
.projects-section .project-heading>.icon,.projects-section .project-featured .project-heading>.icon{display:block;width:26px;height:26px;margin-left:auto;flex-shrink:0;color:#a8aff3;transition:transform .25s}
.projects-section .project-content:is(:hover,:focus-visible) .icon{transform:translate(3px,-3px)}
.projects-section .project-content>p,.projects-section .project-featured .project-content>p{font-size:16px;line-height:1.75;max-width:550px;margin:0;color:#a5b1c8}
.projects-section .project-featured .project-content{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.projects-section .project-featured .project-heading{margin:0}
.project-stage{--stage-glow:#4d64e232;position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;width:100%;padding:clamp(24px,4vw,52px);border:1px solid #8998d525;border-radius:22px;background:radial-gradient(ellipse at 45% 30%,var(--stage-glow),transparent 70%),linear-gradient(135deg,#1b2439,#171c30 58%,#20203a)}
.project-stage-anime-love{--stage-glow:#7b55e53b;background:radial-gradient(ellipse at 70% 15%,#7450d833,transparent 60%),linear-gradient(140deg,#1b2a42,#1c2038 55%,#25213f)}
.project-stage-vectra{--stage-glow:#5b5ee23b;background:radial-gradient(ellipse at 50% 50%,#526ac22b,transparent 75%),linear-gradient(130deg,#1e293c,#1b2035 52%,#27213d)}
.project-stage.stage-card{aspect-ratio:1.2}
.project-featured .project-stage.stage-card{aspect-ratio:1.95}
.presentation-screens{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;gap:22px}
.presentation-screen{min-width:0;position:relative;width:100%;border:1px solid #a6b3d52e;border-radius:10px;overflow:hidden;background:#11151d;box-shadow:0 25px 65px #02061650,0 4px 14px #02061633}
.presentation-screen>.responsive-picture{width:100%;height:auto}
.presentation-screen>.responsive-picture>img{display:block;width:100%;height:auto;padding:0;object-fit:contain;transform:none}
.stage-portrait .presentation-screens{max-width:440px;align-items:flex-start}
.stage-portrait .presentation-screen{flex:1 1 0;width:0;padding:5px;border-radius:19px;background:#10131d;border-color:#a5b4d33b;box-shadow:0 22px 55px #03071066,0 0 0 4px #181d2c55}
.stage-portrait .presentation-screen>.responsive-picture{border-radius:13px;overflow:hidden}
.stage-portrait .presentation-screen-2{transform:translateY(26px)}
.portfolio-cover.case-cover{width:100%;max-width:none;margin-inline:0;border:0;border-radius:22px;background:transparent}
.project-stage.stage-cover{aspect-ratio:16/9;padding:clamp(28px,5.5vw,72px)}
.stage-cover.stage-portrait .presentation-screens{max-width:1000px;gap:36px}
.stage-cover.stage-portrait .presentation-screen{border-radius:23px;padding:6px}
.stage-cover.stage-portrait .presentation-screen>.responsive-picture{border-radius:16px}
.stage-cover.stage-portrait .presentation-screen-2{transform:translateY(28px)}
.portfolio-gallery>.section-head{margin-bottom:48px}
.portfolio-gallery .screen-stories{display:grid;grid-template-columns:minmax(0,1fr);gap:56px}
.portfolio-gallery .screen-story{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:0;margin:0;min-width:0}
.portfolio-gallery .screen-frame{display:grid;place-items:center;width:100%;min-width:0;max-width:100%;margin:0;padding:clamp(20px,3.5vw,44px);border:1px solid #8596cb26;border-radius:22px;background:radial-gradient(ellipse at 50% 0,#5263b726,transparent 75%),#181e30;box-shadow:none}
.portfolio-gallery .screen-frame>.responsive-picture{min-width:0;width:100%;overflow:hidden;border:1px solid #9eacce29;border-radius:9px;box-shadow:0 18px 40px #05091540}
.portfolio-gallery .screen-frame img{width:100%;height:auto;object-fit:contain}
.portfolio-gallery .screen-story-note{position:static;display:grid;grid-template-columns:.8fr 1.2fr;align-items:start;gap:28px;padding:25px 3px 0}
.portfolio-gallery .screen-story-note h3{font-size:27px;line-height:1.2;letter-spacing:-.7px;margin:0}
.portfolio-gallery .screen-story-note>p{font-size:16px;line-height:1.75;color:#a2afc8;max-width:560px;margin:0}
.gallery-portrait .screen-stories{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}
.gallery-portrait .screen-frame{padding:36px;background:radial-gradient(ellipse at 50% 30%,#6570c82b,transparent 80%),linear-gradient(140deg,#1c2738,#24213a)}
.gallery-portrait .screen-frame>.responsive-picture{max-width:400px;border-radius:15px}
.gallery-portrait .screen-story-note{grid-template-columns:minmax(0,1fr);gap:12px}
.gallery-portrait .screen-story-note>p{max-width:490px}
@media(max-width:1000px){
  .projects-section .projects-grid{grid-template-columns:minmax(0,1fr);gap:44px}
  .projects-section .project-featured{grid-column:auto}
  .project-stage.stage-card{aspect-ratio:1.6}
  .stage-card.stage-portrait .presentation-screens{max-width:470px;gap:32px}
  .stage-cover.stage-portrait .presentation-screens{max-width:600px;gap:32px}
  .stage-cover.stage-portrait .presentation-screen-3{display:none}
  .gallery-portrait .screen-frame{padding:24px}
}
@media(max-width:760px){
  .projects-section .projects-grid{gap:36px}
  .projects-section .project-media,.projects-section .project-featured .project-media{border-radius:18px}
  .projects-section .project-content,.projects-section .project-featured .project-content{display:block;padding:23px 2px 0}
  .projects-section .project-heading,.projects-section .project-featured .project-heading{margin:0 0 12px;gap:16px}
  .projects-section .project-heading h3,.projects-section .project-featured .project-heading h3{font-size:29px;letter-spacing:-.8px;line-height:1.2}
  .projects-section .project-content>p,.projects-section .project-featured .project-content>p{font-size:16px;line-height:1.75}
  .project-stage.stage-card,.project-featured .project-stage.stage-card,.project-stage.stage-cover{height:auto;min-height:0;aspect-ratio:auto;padding:22px;border-radius:18px}
  .project-stage .presentation-screens,.stage-card.stage-portrait .presentation-screens,.stage-cover.stage-portrait .presentation-screens{width:100%;max-width:420px;gap:0}
  .project-stage .presentation-screen{border-radius:12px;transform:none}
  .stage-portrait .presentation-screen,.stage-cover.stage-portrait .presentation-screen{width:100%;flex:0 1 100%;padding:5px;border-radius:17px}
  .stage-portrait .presentation-screen>.responsive-picture,.stage-cover.stage-portrait .presentation-screen>.responsive-picture{border-radius:11px}
  .stage-portrait .presentation-screen-2,.stage-portrait .presentation-screen-3{display:none}
  .portfolio-cover.case-cover{width:100%;max-width:100%;margin-inline:0;border-radius:18px}
  .portfolio-gallery>.section-head{margin-bottom:30px}
  .portfolio-gallery .screen-stories,.gallery-portrait .screen-stories{grid-template-columns:minmax(0,1fr);gap:40px}
  .portfolio-gallery .screen-frame,.gallery-portrait .screen-frame{width:100%;max-width:100%;padding:14px;margin:0;border-radius:17px}
  .portfolio-gallery .screen-frame>.responsive-picture{max-width:440px;border-radius:10px}
  .portfolio-gallery .screen-story-note{display:block;padding:21px 2px 0}
  .portfolio-gallery .screen-story-note h3{font-size:26px;line-height:1.2;margin-bottom:12px}
  .portfolio-gallery .screen-story-note>p{font-size:16px;line-height:1.75;max-width:none}
  .portfolio-gallery .screen-desktop-only{display:none}
}
@media(max-width:380px){
  .project-stage.stage-card,.project-featured .project-stage.stage-card,.project-stage.stage-cover{padding:14px}
  .portfolio-gallery .screen-frame,.gallery-portrait .screen-frame{padding:9px}
}
@media(prefers-reduced-motion:reduce){.projects-section .project-heading>.icon{transition:none}}

/* Vectra Mini App in a scalable iPhone frame; original screenshots stay intact. */
.iphone-frame{position:relative;container-type:inline-size;width:100%;aspect-ratio:71.6/147.6;padding:5px;border:1px solid #8d94a4;border-radius:14% / 6.8%;background:linear-gradient(125deg,#828997,#242832 22%,#13161d 70%,#69717f);box-shadow:0 25px 55px #02040b70,0 0 0 2px #07090f}
.iphone-frame:before,.iphone-frame:after{content:"";position:absolute;width:3px;border-radius:3px;background:linear-gradient(90deg,#777e8d,#222732)}
.iphone-frame:before{left:-3px;top:22%;height:12%}
.iphone-frame:after{right:-3px;top:29%;height:9%}
.iphone-display{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;border-radius:13% / 6.3%;background:#000;color:#fff}
.iphone-statusbar{position:relative;display:flex;flex:0 0 13.5cqw;align-items:center;justify-content:space-between;height:13.5cqw;padding:0 7cqw;background:#000;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1}
.iphone-time{font-size:4.2cqw;font-weight:600;letter-spacing:-.15px;font-variant-numeric:tabular-nums}
.iphone-island{position:absolute;left:50%;top:50%;width:27cqw;height:7.3cqw;border-radius:5cqw;background:#0b0b0e;box-shadow:inset 0 0 0 1px #16161a;transform:translate(-50%,-50%)}
.iphone-island:after{content:"";position:absolute;right:3cqw;top:50%;width:1.8cqw;height:1.8cqw;border-radius:50%;background:radial-gradient(circle at 40% 35%,#1c2540,#080b12 70%);transform:translateY(-50%)}
.iphone-status-icons{display:flex;align-items:center;gap:1.4cqw}
.iphone-status-icons>svg{display:block;width:4.6cqw;height:3.5cqw;flex-shrink:0}
.iphone-status-icons>svg.iphone-battery{width:6.7cqw;height:3.5cqw}
.iphone-display>.responsive-picture{display:block;flex:1 1 0;min-height:0;width:100%;overflow:hidden;line-height:0}
.iphone-display>.responsive-picture>img,.portfolio-gallery .iphone-display>.responsive-picture>img{display:block;width:100%;height:100%;object-fit:contain;object-position:top center}
.iphone-home-area{display:grid;flex:0 0 5.5cqw;place-items:center;height:5.5cqw;background:#000}
.iphone-home-area>span{width:34cqw;height:1.1cqw;border-radius:2cqw;background:#eee}
.stage-portrait .presentation-screen:has(>.iphone-frame){overflow:visible;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.project-stage-vectra.stage-card{aspect-ratio:1.1;padding:28px}
.project-stage-vectra.stage-card .presentation-screens{max-width:85%}
.project-stage-vectra.stage-cover{aspect-ratio:auto;padding-bottom:100px}
.project-stage-vectra.stage-cover .presentation-screens{max-width:1040px}
.gallery-portrait .screen-frame>.iphone-frame{max-width:440px}
@media(max-width:1000px){
  .project-stage-vectra.stage-card{aspect-ratio:1.3}
  .project-stage-vectra.stage-card .presentation-screens{max-width:440px}
  .project-stage-vectra.stage-cover .presentation-screens{max-width:620px}
}
@media(max-width:760px){
  .project-stage-vectra.stage-card,.project-stage-vectra.stage-cover{aspect-ratio:auto;padding:14px}
  .project-stage-vectra.stage-card .presentation-screens,.project-stage-vectra.stage-cover .presentation-screens{max-width:440px}
  .gallery-vectra .screen-frame{padding:8px}
  .gallery-portrait .screen-frame>.iphone-frame{max-width:440px}
}
@media(max-width:380px){.project-stage-vectra.stage-card,.project-stage-vectra.stage-cover{padding:14px}}

/* Studio copy: readable introduction, explicit contact action and brand promise. */
.studio-intro .intro-lower{align-items:flex-end;gap:48px}
.intro-description{flex:1;max-width:660px;min-width:0}
.intro-description>p{font-size:17px;line-height:1.8;color:#b0bdd6;margin:0}
.intro-description>p+p{margin-top:16px;font-size:16px;color:#97a9c7}
.studio-intro .intro-actions{flex-direction:column;align-items:flex-start;gap:16px;flex-shrink:0;max-width:330px}
.studio-intro .intro-actions>.button{min-height:54px;font-size:15px}
.studio-intro .intro-actions>span{font-size:14px;line-height:1.75;color:#a4b4d2;text-align:left}
.process-section .section-head h2{max-width:1040px}
.contact-body{display:block}
.contact-body>div{max-width:1060px}
.contact-body h2{font-size:clamp(40px,5.2vw,70px);line-height:1.1}
.contact-body p{max-width:780px;font-size:17px;line-height:1.8}
.contact-start{position:relative;display:flex;align-items:center;gap:30px;padding:0 0 30px}
.contact-start>.button{flex-shrink:0;min-height:54px;font-size:15px}
.contact-start>p{max-width:560px;margin:0;font-size:16px;line-height:1.8;color:#c4cbe6}
.contact-start>p>span{color:#eef0ff}
.footer-main>.footer-positioning{max-width:570px;font-size:16px;line-height:1.7;color:#98a9c7;margin:0}
@media(min-width:761px){.studio-intro h1{font-size:clamp(38px,5vw,68px);letter-spacing:-2.4px;margin-block:26px}}
@media(max-width:1050px){.studio-intro .intro-lower{gap:30px}.intro-description>p{font-size:16px}.intro-description>p+p{font-size:15px}.studio-intro .intro-actions{max-width:275px}.contact-start{flex-direction:column;align-items:flex-start;gap:20px}}
@media(max-width:760px){
  .studio-intro h1{font-size:clamp(25px,6.8vw,46px);letter-spacing:-.8px;line-height:1.16;margin-block:20px 24px}
  .intro-description{max-width:none}.intro-description>p,.intro-description>p+p{font-size:16px;line-height:1.8}
  .studio-intro .intro-actions{align-items:stretch;max-width:none;gap:15px}
  .studio-intro .intro-actions>.button{font-size:16px;min-height:56px}
  .studio-intro .intro-actions>span{font-size:14px}
  .studio-intro .intro-actions>span>br{display:block}
  .contact-body h2{font-size:clamp(32px,8.7vw,46px);letter-spacing:-1.2px;line-height:1.15}
  .contact-body p{font-size:16px;line-height:1.8}
  .contact-start{gap:21px;padding-bottom:27px}
  .contact-start>.button{width:100%;font-size:15px;min-height:56px;padding:14px 16px;gap:12px;justify-content:space-between;line-height:1.6}
  .contact-start>.button>.icon{flex-shrink:0}
  .contact-start>p{font-size:15px;line-height:1.8}
  .footer-main>.footer-positioning{max-width:none;font-size:15px;line-height:1.8;flex-basis:100%;order:3}
}
