/* Interaction layer: shared typography, cards and restrained motion. */
:root{--surface-ink:#080d22;--surface-blue:#2445f5;--readable-muted:#526079;--ease-out:cubic-bezier(.22,1,.36,1)}
body{font-variant-numeric:lining-nums}
main p{line-height:1.75;text-wrap:pretty}
.section-label,.card-index,.value-index,.section-number,.legal-date{font-family:QixMono,monospace;font-variant-numeric:tabular-nums;font-size:11px;font-weight:400;letter-spacing:.09em;line-height:1.6}
.section-label{display:flex;align-items:baseline;gap:14px;color:#3c4b67}
.section-number{font-size:12px;color:#2445d9;white-space:nowrap;letter-spacing:.025em}
.section-label-text{letter-spacing:.1em}
.contact .section-label{color:#c7d6ff}.contact .section-number{color:#fff}
.section-heading{align-items:flex-end;gap:40px}
.section-heading p{font-size:16px;max-width:360px;color:var(--readable-muted)}
.hero-bottom{grid-template-columns:1fr 2fr 1fr}.hero-bottom>div{grid-column:2}
.showcase-foot{justify-content:space-between}
.scroll-progress{height:4px;background:#080d22;box-shadow:0 1px 0 #ffffff70;z-index:1100;pointer-events:none}
.scroll-progress::after{content:'';position:absolute;inset:0 0 0 auto;width:34px;background:#2445f5}
header#top{isolation:isolate}
.nav.wrap{transition:none}
.nav.wrap::before{content:'';position:absolute;inset:0;z-index:-1;border-bottom:1px solid #ffffff80;background:#eaf0f8db;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);pointer-events:none}
.nav .nav-links a{isolation:isolate;overflow:hidden;border-radius:28px;box-shadow:none;line-height:1.45;min-height:40px;display:flex;align-items:center}
.nav .nav-links a::before{content:'';position:absolute;inset:0;background:#080d22e8;z-index:-1;border-radius:inherit;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .3s var(--ease-out)}
.nav .nav-links a::after{display:none}
.nav .nav-links a:hover,.nav .nav-links a:focus-visible{color:white;background:transparent}
.nav .nav-links a:hover::before,.nav .nav-links a:focus-visible::before{opacity:1;transform:translateY(0)}
.nav .nav-links a[aria-current=page]{color:#183ac9;background:#fff;box-shadow:inset 0 0 0 1px #c9d4f4}
.nav .nav-links a[aria-current=page]:hover,.nav .nav-links a[aria-current=page]:focus-visible{color:white}
.wordmark{align-items:center}
.nav-logo{transform-origin:50% 50%;transition:transform .45s var(--ease-out)}
.wordmark:hover .nav-logo,.wordmark:focus-visible .nav-logo{transform:rotate(-12deg) scale(1.09)}
.wordmark:active .nav-logo{transform:rotate(10deg) scale(.9)}
.brand-name{transition:transform .3s var(--ease-out)}
.wordmark:hover .brand-name{transform:translateX(3px)}
.button{position:relative;isolation:isolate;overflow:hidden;box-shadow:none;transition:transform .25s var(--ease-out);border:1px solid transparent;min-height:48px;gap:20px}
.button.dark{background:#2445f5;color:#fff}
.button.dark:hover{background:#2445f5;color:#fff}
.button::before{content:'';position:absolute;inset:0;z-index:-1;background:#080d22;border-radius:inherit;transform:translateY(103%);transition:transform .35s var(--ease-out)}
.button:hover::before,.button:focus-visible::before{transform:translateY(0)}
.button:hover{transform:translateY(-3px)}
.button:active{transform:translateY(0) scale(.97)}
.button:disabled{cursor:wait;transform:none;opacity:.7}
.button-dot{transition:transform .35s var(--ease-out),opacity .3s}
.button:hover .button-dot{transform:scale(1.4);opacity:1}
.contact .button.dark,.detail-cta .button.dark{background:#fff;color:#080d22;border-color:#ffffff80}
.contact .button.dark::before,.detail-cta .button.dark::before{background:#dfe8ff}
.contact .button.dark:hover,.detail-cta .button.dark:hover{background:#fff;color:#080d22}
.button.light::before{background:#dce5ff}
.button.outline{border-color:#bac6e4}.button.outline:hover{color:#fff}
.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px}
.text-link span{display:inline-block;transition:transform .3s var(--ease-out)}
.text-link:hover span{transform:translate(3px,-3px)}
.interactive-card{position:relative;display:block;transition:transform .4s var(--ease-out);transform-origin:50% 65%;touch-action:manipulation}
.interactive-card:active{transform:scale(.985)}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.capability-card{background:#f9faff;border:1px solid #d2daed;border-radius:24px;overflow:hidden;color:#080d22;box-shadow:0 5px 20px #142b5006}
.capability-art{position:relative;aspect-ratio:3/2;overflow:hidden;background:#dee7ff}
.capability-art img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease-out)}
.card-open{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#ffffffec;color:#080d22;font:24px/1 var(--font);transition:transform .35s var(--ease-out);flex-shrink:0}
.capability-art>.card-open{position:absolute;right:22px;bottom:22px}
.capability-copy{padding:28px 30px 30px}
.card-index{display:block;color:#53627d}
.capability-copy h3{font-size:clamp(35px,3.6vw,49px);margin:14px 0 12px;letter-spacing:0;line-height:1.05}
.capability-copy p{font-size:16px;color:#526079;max-width:43ch;min-height:3.5em}
.card-action{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px;font-weight:600;margin-top:24px;color:#2445d9}
.card-action>span{font-size:20px}
.studio-card{padding:26px!important;display:flex;flex-direction:column;gap:22px;border:1px solid #cbd4ee;border-radius:24px;overflow:hidden;background:#e8eeff;color:#080d22;align-self:start}
.studio-image{border-radius:15px;overflow:hidden;aspect-ratio:3/2;background:#d8e4ff}
.studio-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease-out)}
.studio-caption{display:flex;justify-content:space-between;align-items:center;gap:20px}
.about .studio-caption p{font-family:var(--head);font-size:clamp(32px,3vw,45px);line-height:1.05;letter-spacing:0;color:#080d22;margin:0}
.studio-card>.card-action{margin-top:0}
.about-values{display:grid;gap:10px;margin-top:30px}
.value-card{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:start;gap:16px;padding:20px 18px;border:1px solid #d1daed;border-radius:14px;background:#ffffff75}
.value-index{padding-top:4px;color:#2445d9}
.value-card h3{font-family:var(--font)!important;font-size:18px;text-transform:none!important;font-weight:600!important;line-height:1.4;letter-spacing:-.015em!important}
.about .value-card p{margin:7px 0 0;font-size:14px;color:#526079;line-height:1.65}
.value-card b{font:22px/1.5 var(--font);color:#2445d9}
.team-profile,.home-product-card{transition:transform .35s var(--ease-out)}
.service-detail-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;padding-top:80px;padding-bottom:80px;align-items:start}
.service-detail-image{margin:0;position:sticky;top:calc(var(--nav-height) + 35px)}
.service-detail-image img{width:100%;height:auto;border-radius:22px}
.service-detail-image figcaption{font:10px/1.7 QixMono,monospace;margin-top:16px;letter-spacing:.07em;color:#526079}
.service-deliverables article{display:grid;grid-template-columns:26px minmax(0,1fr);gap:20px;padding:28px 0;border-top:1px solid #c5cfe4}
.service-deliverables h2{font-size:34px;margin-bottom:14px;line-height:1.1}
.service-deliverables p{font-size:16px;color:#526079}
.service-deliverables .tags{margin:14px 0 22px}
.studio-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.studio-principles>.section-label{grid-column:1/-1;margin-bottom:0}
.studio-principles article{padding:28px;border-top:1px solid #c5cfe4;scroll-margin-top:calc(var(--nav-height) + 24px)}
.studio-principles h2{font-size:36px;margin:18px 0}.studio-principles p{color:#526079}
.faq{gap:8%}.faq-list details{padding:24px 0;border-color:#c4cfe5;scroll-margin-top:calc(var(--nav-height) + 28px)}
.faq-list summary{align-items:center;gap:20px;font-size:17px;font-weight:500;line-height:1.6;min-height:44px;color:#111a33}
.faq-list summary>span{position:relative;display:block;width:34px;height:34px;flex:0 0 34px;border:1px solid #c1cce4;border-radius:50%;background:#f8faff}
.faq-list summary>span::before,.faq-list summary>span::after{content:'';position:absolute;left:10px;top:15px;width:12px;height:2px;background:#2445d9;transition:transform .35s var(--ease-out),opacity .25s;line-height:1}
.faq-list summary>span::after{transform:rotate(90deg)}
.faq-list details[open] summary>span::after{content:'';transform:rotate(0deg);opacity:0}
.faq-list details p{margin:12px 0 0;padding:0 50px 4px 0;color:#526079;font-size:15px;line-height:1.8;transform-origin:top}
.faq-list details[data-animating] summary>span{background:#edf2ff}
.faq-list details[data-closing=true] summary>span::after{opacity:1;transform:rotate(90deg)}
.faq-list summary>span{font-size:0}
.faq-list summary>span::before{content:"";transform:none}
.faq-answer{display:flow-root}
.form-help a{text-decoration:underline;text-underline-offset:3px}
.nav.wrap{background:#edf1fc;backdrop-filter:none;-webkit-backdrop-filter:none}
.nav.wrap::before{border-radius:inherit}
.nav.wrap:has(.nav-links a:hover)::before{background:#dae3f9e8}
.qbit-help-open{display:flex;gap:12px;align-items:center}
.qbit-shortcuts a{min-height:44px;display:inline-flex;align-items:center}
.qbit-panel{max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,720px);gap:8%;padding-top:70px;padding-bottom:100px;align-items:start}
.legal-nav{position:sticky;top:calc(var(--nav-height) + 32px);display:flex;flex-direction:column;gap:8px}
.legal-nav a{font-size:14px;min-height:44px;display:flex;align-items:center;padding:10px 14px;border-radius:10px;background:#ffffff60}
.legal-nav a:hover,.legal-nav a:focus-visible{background:#080d22;color:#fff}
.legal-date{margin-bottom:32px;color:#526079}
.legal-copy section{border-top:1px solid #c4cfe5;padding:32px 0}
.legal-copy h2{font-family:var(--font)!important;font-size:23px!important;line-height:1.4!important;text-transform:none!important;font-weight:600!important;letter-spacing:-.025em!important;margin:12px 0 16px}
.legal-copy p{font-size:16px;line-height:1.85;color:#45526e}.legal-copy a{color:#163cc9;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-contact{margin-top:30px}
footer{background:#e5ebfa;border-top:1px solid #c8d2ed;padding-top:24px}
.footer-wordmark{justify-content:flex-start;gap:28px;margin:40px 0!important}
.footer-wordmark>img{width:clamp(74px,12vw,150px)}
.footer-wordmark>.footer-brand-name{font-size:clamp(68px,12vw,164px);line-height:1;margin:0;letter-spacing:-.01em;flex:0 1 auto;min-width:0}
.footer-socials{justify-content:flex-start;gap:12px;margin-bottom:28px}
.footer-socials a{display:grid;place-items:center;min-width:44px;min-height:44px;background:#fff;border:1px solid #cbd6f0;border-radius:50%;transition:transform .25s var(--ease-out)}
.footer-socials a:hover{transform:translateY(-4px)}
.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-bottom:32px}
.footer-top>p{font-size:18px;line-height:1.7;color:#344563}
.footer-top>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 20px;justify-content:start}
.footer-top>div>a{display:flex;align-items:center;min-height:44px;font-size:14px}
.footer-legal{display:flex;flex-wrap:wrap;gap:6px 28px;padding:20px 0;border-top:1px solid #c1cde7}
.footer-legal a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#344563}
.footer-legal a:hover,.footer-top a:hover{color:#163cc9;text-decoration:underline;text-underline-offset:5px}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #c1cde7;padding:24px 0 38px;color:#526079;font-size:11px;line-height:1.8}
.footer-bottom>div:empty{display:none}
.qbit-fallback i{animation:qbit-blink 5.8s infinite;transform-origin:center}
.qbit-panel-bottom{justify-content:flex-end}
.qbit-help{display:flex;gap:6px;align-items:center;padding:6px 8px 6px 15px;background:#080d22;color:#fff;border:1px solid #354776;border-radius:16px;box-shadow:0 10px 30px #080d2220;margin-bottom:10px;max-width:250px}
.qbit-help[hidden]{display:none}
.qbit-help button{background:none;border:0;color:inherit;min-height:40px;padding:7px;font-size:13px;text-align:left}
.qbit-help .qbit-help-dismiss{font-size:22px;min-width:36px;text-align:center;color:#bbcfff}
.qbit-fallback{transition:transform .3s var(--ease-out)}
.qbit-launcher:hover .qbit-fallback{transform:rotate(-8deg) translateY(-3px)}
.qbit-launcher:active .qbit-fallback{transform:scale(.94)}
.site-loader{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;background:#080d22;color:white;pointer-events:none}
.site-loader[hidden]{display:none}
.loader-content{width:min(280px,70vw);display:flex;flex-direction:column;align-items:center;gap:24px}
.loader-logo{width:80px;height:80px;object-fit:contain;animation:loader-arrive .5s var(--ease-out) both}
.loader-wordmark{font:24px/1 QixMono,monospace;letter-spacing:.12em}
.loader-track{width:100%;height:3px;background:#39435c;overflow:hidden;border-radius:3px}
.loader-fill{display:block;width:100%;height:100%;background:#a4beff;transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease-out)}
.loader-caption{display:flex;justify-content:space-between;width:100%;font:10px/1.6 QixMono,monospace;letter-spacing:.1em;color:#b8c9ed}
.intro-comets{opacity:.65;display:block}
@keyframes qbit-blink{0%,44%,48%,93%,97%,100%{transform:scaleY(1)}46%,95%{transform:scaleY(.1)}}
@keyframes loader-arrive{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(hover:hover) and (pointer:fine){
 .interactive-card:hover,.interactive-card:focus-visible{transform:translateY(-7px) rotateX(1deg)}
 .capability-card:hover .capability-art img,.studio-card:hover .studio-image img{transform:scale(1.035)}
 .interactive-card:hover .card-open{transform:rotate(45deg)}
 .home-product-card:hover,.team-profile:hover{transform:translateY(-6px)}
}
@media(max-width:1100px){
 .nav .nav-links{background:#e8eeffec;border:1px solid #c3cfe9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 50px #080d2233}
 .nav .nav-links.open{display:flex;animation:menu-arrive .23s var(--ease-out) both;transform-origin:top}
 .nav .nav-links a{border-radius:12px;min-height:48px;font-size:15px}
 .nav .nav-links a[aria-current]{background:#fff;box-shadow:inset 3px 0 0 #2445f5}
 .capability-grid{gap:22px}.capability-copy{padding:24px}
 .about-grid{gap:36px}.legal-layout{grid-template-columns:190px minmax(0,1fr);gap:5%}
 .service-detail-body{gap:5%}.studio-principles{gap:15px}.studio-principles article{padding:22px 12px}
}
@keyframes menu-arrive{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){
 .hero-bottom{display:flex;flex-direction:column;align-items:center;gap:22px}
 .hero-location{text-align:center;order:2}.hero-bottom>div{width:100%}
 .hero h1{letter-spacing:0;line-height:1.04}
 .section-label{font-size:10px;gap:11px;margin-bottom:22px;letter-spacing:.07em}
 .section-number{font-size:11px;flex-shrink:0}.section-label-text{letter-spacing:.07em}
 .section-heading{align-items:start;gap:24px;margin-bottom:32px}.section-heading p{font-size:15px}
 .capability-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .capability-art{aspect-ratio:3/2}.capability-copy{padding:24px}.capability-copy h3{font-size:38px;margin-top:14px}
 .capability-copy p{min-height:0;font-size:15px;line-height:1.75}.card-action{margin-top:20px;min-height:24px}
 .capability-art>.card-open{right:18px;bottom:18px;width:44px;height:44px}
 .studio-card{padding:20px!important;gap:20px}.about .studio-caption p{font-size:36px}
 .value-card{padding:18px 14px;grid-template-columns:24px minmax(0,1fr) 18px;gap:12px}
 .about .value-card p{font-size:14px}.value-card h3{font-size:17px}
 .service-detail-body{grid-template-columns:minmax(0,1fr);padding:45px 0;gap:40px}
 .service-detail-image{position:static}.service-deliverables h2{font-size:32px}.service-deliverables article{gap:12px}
 .studio-principles{grid-template-columns:minmax(0,1fr)}.studio-principles article{padding:24px 0}
 .faq-list summary{font-size:16px;gap:16px;line-height:1.65}.faq-list details{padding:18px 0}
 .faq-list details p{padding-right:16px;font-size:15px;line-height:1.8}
 .legal-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding:35px 0 65px}
 .legal-nav{position:static;display:flex;flex-wrap:wrap;flex-direction:row;gap:8px}.legal-nav a{padding:10px 13px;font-size:12px}
 .legal-copy h2{font-size:22px!important}.legal-copy p{font-size:15px;line-height:1.9}.legal-copy section{padding:26px 0}
 .footer-wordmark{gap:14px;margin:32px 0!important}.footer-wordmark>img{width:clamp(54px,17vw,90px)}
 .footer-wordmark>.footer-brand-name{font-size:clamp(51px,15vw,96px)}
 .footer-socials{margin-bottom:24px}.footer-top{grid-template-columns:minmax(0,1fr);gap:24px}
 .footer-top>p{font-size:16px}.footer-top>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 10px}
 .footer-top>div>a{font-size:13px}.footer-legal{gap:0 20px;padding:16px 0}.footer-legal a{font-size:12px}
 .footer-bottom{padding-bottom:95px;gap:10px}.footer-bottom>span{width:100%}
 .qbit-help{max-width:230px;margin-left:auto}.qbit-help button{font-size:12px}
 .intro-comets{display:block!important;opacity:.45}
 .nav .wordmark .brand-name{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .site-loader{display:none}
 .interactive-card,.capability-art img,.studio-image img,.button,.button::before,.button-dot,.nav-logo,.brand-name,.nav .nav-links a::before,.card-open,.text-link span,.faq-list summary>span::before,.faq-list summary>span::after,.home-product-card,.team-profile,.qbit-fallback,.footer-socials a,.loader-fill{transition:none!important;animation:none!important}
 .qbit-fallback i,.nav .nav-links.open{animation:none!important}
 .interactive-card:hover,.home-product-card:hover,.team-profile:hover,.button:hover,.wordmark:hover .nav-logo,.qbit-launcher:hover .qbit-fallback{transform:none!important}
 .intro-comets{display:none!important}
}

/* Type, illustration alignment and pointer feedback. */
body{font-size:16px;line-height:1.7;letter-spacing:0}
#main p{line-height:1.8;letter-spacing:0}
#main h1,#main h2{letter-spacing:.005em;line-height:1.12;word-spacing:.035em}
#main .detail-hero h1{font-size:clamp(48px,6.4vw,92px);line-height:1.13;max-width:19ch;text-wrap:balance;margin:24px 0}
#main .section-heading h2,#main .about-copy>h2,#main .faq h2{font-size:clamp(42px,5vw,70px);line-height:1.13}
#main .team-profile h3,#main .home-product-info h3,#main .capability-copy h3,#main .value-card h3,#main .detail-card h2,#main .cms-card h2{font-family:var(--font)!important;font-weight:700!important;font-synthesis:weight;text-transform:none!important;letter-spacing:-.035em!important;line-height:1.22;word-spacing:.02em}
#main .team-profile h3{font-size:clamp(28px,3vw,40px);margin:14px 0}
#main .home-product-info h3{font-size:clamp(25px,2.9vw,36px);gap:14px}
#main .capability-copy h3{font-size:clamp(28px,3vw,40px);margin:15px 0}
#main .value-card h3{font-size:18px;letter-spacing:-.015em!important}
#main .detail-card h2,#main .cms-card h2{font-size:clamp(26px,3vw,38px)}
.section-label,.card-index,.value-index,.section-number,.team-profile-index{line-height:1.7;letter-spacing:.085em;font-variant-numeric:tabular-nums}
.section-label{gap:16px;flex-wrap:wrap;row-gap:4px;align-items:baseline}
.section-number{display:inline-block;min-width:34px;flex-shrink:0}
.card-index{margin-bottom:6px}.team-profile-index{display:block;margin-bottom:18px}
.capability-grid{align-items:stretch;gap:30px}.capability-card{display:flex;flex-direction:column;min-width:0;transform:none;transform-origin:center}
.capability-copy{display:flex;flex-direction:column;flex:1;padding:28px 30px 30px}.capability-copy p{min-height:0;margin-bottom:24px}.capability-copy .card-action{margin-top:auto;padding-top:12px}
.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:start;gap:6%}
.about .studio-card{min-height:0;padding:24px!important;display:flex;align-items:stretch;justify-content:flex-start;gap:24px;align-self:start}
.about .studio-card>div{font-size:inherit;line-height:inherit;letter-spacing:normal;align-self:stretch;width:100%;color:inherit}
.about .studio-card>.card-index{color:#40516f;margin:0}
.about .studio-image{width:100%;aspect-ratio:3/2;flex:0 0 auto;overflow:hidden;line-height:0}
.about .studio-image img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center;aspect-ratio:3/2}
.about .studio-caption{display:flex;align-items:center;justify-content:space-between;gap:18px}
.about .studio-caption p{font:400 clamp(30px,3.5vw,46px)/1.18 var(--head);letter-spacing:.01em;word-spacing:.03em;margin:0;color:#080d22}
.about .studio-caption .card-open{width:44px;height:44px;align-self:center}
.about .studio-card>.card-action{margin:0;min-height:44px}
.about-copy>p{margin-top:22px}.about-values{gap:12px;margin-top:28px}
.value-card{align-items:center}.value-index{align-self:start;padding-top:3px}.value-card>div{min-width:0}
.page-art{margin:0;min-width:0;width:100%;position:relative;align-self:center}
.page-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:22px;border:1px solid #d4ddee;transition:transform .55s var(--ease-out)}
.page-art figcaption{font:10px/1.7 QixMono,monospace;letter-spacing:.075em;color:#526079;margin:12px 0 0}
.detail-hero.has-page-art{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:7%;align-items:center;padding-top:52px;padding-bottom:60px}
.has-page-art>.section-label,.has-page-art>h1,.has-page-art>.detail-lead{grid-column:1;margin-right:0}
.has-page-art>.section-label{align-self:end;margin-bottom:0}
.has-page-art>.page-art{grid-column:2;grid-row:1/4}
.has-page-art>.detail-lead{font-size:18px;line-height:1.8;max-width:45ch}
.cms-content>article>.page-art{max-width:860px;margin:32px 0 48px}
.motion-card{transition:transform .32s var(--ease-out),box-shadow .32s var(--ease-out);transform-style:flat;touch-action:manipulation}
.motion-card:focus-visible{outline:3px solid #2445f5;outline-offset:5px}
.motion-card:active{transform:scale(.985)!important}
.scroll-progress,.page-curtain i{display:none!important}
.loader-logo{width:96px;height:96px;animation:loader-breathe 1.5s ease-in-out infinite}
.loader-wordmark{font:400 34px/1.15 var(--head);letter-spacing:.09em}
.loader-content{gap:28px}.loader-fill{transition:none}.loader-track{height:4px}
@keyframes loader-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.055)}}
@media(hover:hover) and (pointer:fine){
 .motion-card:hover,.interactive-card:hover{transform:perspective(1100px) translateY(-8px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));box-shadow:0 18px 40px #15265414}
 .motion-card:hover img{transform:scale(1.025)}
 .value-card:hover{background:#fff}
 .page-art:hover img{transform:translateY(-5px) scale(1.01)}
}
@media(max-width:1100px){.about-grid{gap:32px}.detail-hero.has-page-art{column-gap:5%}.has-page-art>.detail-lead{font-size:16px}.capability-copy{padding:24px}}
@media(max-width:760px){
 #main .detail-hero h1{font-size:clamp(42px,11.4vw,68px);line-height:1.15;margin:20px 0;letter-spacing:.005em}
 #main .section-heading h2,#main .about-copy>h2,#main .faq h2{font-size:clamp(38px,10.8vw,56px)}
 #main .capability-copy h3{font-size:30px}#main .home-product-info h3,#main .team-profile h3{font-size:28px;line-height:1.25}
 .section-label{gap:10px;flex-wrap:nowrap;font-size:10px;letter-spacing:.075em}.section-number{min-width:31px}
 .section-label-text{min-width:0;letter-spacing:.075em}
 .about-grid{grid-template-columns:minmax(0,1fr);gap:36px}.about .studio-card{padding:18px!important;gap:18px}
 .about .studio-image{aspect-ratio:3/2}.about .studio-caption p{font-size:34px;line-height:1.18}.about .studio-caption .card-open{width:40px;height:40px}
 .capability-grid{gap:24px}.capability-copy{padding:24px}.capability-copy p{margin-bottom:18px}
 .detail-hero.has-page-art{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:32px;padding-bottom:38px}
 .has-page-art>.page-art{margin-top:30px}.page-art img{border-radius:18px}.page-art figcaption{font-size:9px;margin-top:10px}
 .cms-content>article>.page-art{margin:28px 0 34px}
 .loader-logo{width:84px;height:84px}.loader-content{gap:24px}.loader-caption{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
 .motion-card,.page-art img{transition:none!important}.motion-card:hover,.interactive-card:hover,.motion-card:active,.page-art:hover img{transform:none!important;box-shadow:none}
 .loader-logo{animation:none!important}
}
.about .studio-caption>.card-open{position:static;inset:auto;font:22px/1 var(--font);animation:none;width:44px;height:44px;flex:0 0 44px;transform:none}
.about .studio-card>.card-action{color:#183ac9}
@media(max-width:760px){.about .studio-caption{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:14px}.about .studio-caption p{font-size:30px}.about .studio-caption>.card-open{width:40px;height:40px;flex-basis:40px}}
.site-loader{pointer-events:auto}
#main .studio-caption p{font-family:var(--font);font-size:clamp(23px,2.4vw,32px);font-weight:600;font-synthesis:weight;line-height:1.35;letter-spacing:-.025em;word-spacing:normal}
.comet-host{position:relative;isolation:isolate}
.comet-host>.intro-comets{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none;border-radius:20px}
@media(max-width:760px){#main .studio-caption p{font-size:22px}}
