@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,figure,blockquote{margin:0}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}ul{padding:0;list-style:none}[hidden]{display:none!important}}@layer base{:root{--paper:#f8f6f2;--ink:#101114;--muted:#5c6068;--blue:#254bd1;--blue-light:#e7edff;--line:#d2d1d0}html{scroll-behavior:smooth;scroll-padding-top:32px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica Neue,sans-serif;font-size:16px;line-height:1.6;overflow-x:clip}::selection{color:var(--ink);background:#ccd9ff}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.contact :focus-visible{outline-color:#fff}.header:focus{outline:none}h1,h2,h3{letter-spacing:-.065em;text-wrap:balance;font-weight:400;line-height:1.04}h1{font-size:clamp(3.5rem,6.6vw,6.7rem)}h2{font-size:clamp(2.7rem,4.8vw,4.8rem)}h3{letter-spacing:-.045em;font-size:1.9rem}p{text-wrap:pretty}a,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}}@layer layout{.container{width:min(1360px,100% - 120px);margin-inline:auto}.section-space{padding-block:100px}.header{z-index:20;background:var(--paper);position:relative}.header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:90px;display:flex}.brand{flex-shrink:0;align-items:center;display:inline-flex}.brand-wordmark{color:var(--blue);letter-spacing:-.085em;font-size:46px;font-weight:700;line-height:1}.desktop-nav{align-items:center;gap:34px;font-size:.85rem;display:flex}.desktop-nav>a{align-items:center;min-height:44px;display:flex;position:relative}.desktop-nav a:hover,.desktop-nav summary:hover,.footer-links a:hover{color:var(--blue)}.mobile-menu{display:none}.hero{isolation:isolate;background:#f7f4ef;position:relative;overflow:clip}.hero-scene{z-index:-1;transform:translate3d(var(--scene-x,0px), var(--scene-y,0px), 0) scale(1.025);transform-origin:72% 60%;position:absolute;inset:-18px}.hero-scene img{object-fit:cover;object-position:center 48%;width:100%;height:100%}.hero-inner{min-height:clamp(700px,100svh - 90px,900px);padding-top:clamp(48px,6.3vw,94px);position:relative}.hero-copy{max-width:680px}.hero .eyebrow{color:#2146c2;letter-spacing:.3em}.hero h1{letter-spacing:-.075em;white-space:nowrap;margin-block:25px 24px;font-size:clamp(4.8rem,7.35vw,7.6rem);line-height:.99}.hero h1 span{color:var(--blue);display:inline-block}.hero-description{letter-spacing:-.01em;max-width:560px;font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.5}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:30px;display:flex}.hero-actions .text-link{border-bottom:1px solid var(--ink)}.flight-path{align-items:center;gap:26px;min-height:84px;display:flex}.flight-path>a{letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:12px;min-height:44px;font:.68rem/1.5 monospace;display:flex;position:relative}.flight-path a span{color:var(--blue)}.flight-path a svg{opacity:0;width:15px;height:15px;transition:opacity .2s,transform .2s}.flight-path a:hover svg,.flight-path a:focus-visible svg{opacity:1;transform:translate(2px,-2px)}.path-line{background:var(--ink);flex:1;height:1px;position:relative;overflow:hidden}.path-line:after{content:"";background:#5d8cff;width:50px;height:1px;animation:5s linear infinite path-sweep;position:absolute}.path-note{color:var(--muted);letter-spacing:.06em;font:.64rem/1.5 monospace}.connections{border-block:1px solid var(--line)}.connections-inner{align-items:center;gap:30px;min-height:130px;padding-block:24px;display:flex}.clients-label{color:#41434a;flex:0 0 185px;font-size:.9rem}.client-logos{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;display:grid}.client-logo,.client-wordmark{border-left:1px solid var(--line);place-items:center;width:100%;height:52px;padding-inline:24px;display:grid}.client-logo img{object-fit:contain;filter:grayscale();width:100%;max-width:190px;height:auto;transition:filter .3s,transform .3s}.client-logo:hover img{filter:none;transform:translateY(-3px)}.client-logo.padded{overflow:hidden}.client-logo.padded img{width:160px;max-width:none;height:140px;margin-top:-44px}.client-logo.giro img{max-height:42px}.client-wordmark{letter-spacing:-.075em;justify-content:center;font-size:2rem;font-weight:600;display:flex}.client-wordmark span{align-self:flex-start;margin-left:3px;padding-top:9px;font-size:.5rem}.services{padding-bottom:80px}.services-intro{min-height:395px;position:relative;overflow:clip}.ribbon-art{object-fit:cover;object-position:center bottom;mix-blend-mode:multiply;width:100%;height:100%;position:absolute}.services-heading{padding-top:58px;position:relative}.services-heading h2{max-width:850px;margin-block:18px;font-size:clamp(2.7rem,4.6vw,4.8rem)}.section-lead{letter-spacing:-.015em;font-size:clamp(1.1rem,1.5vw,1.4rem);line-height:1.5}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.service-card{border-left:1px solid var(--line);padding:0 36px}.service-card:first-child{border-left:0;padding-left:0}.service-card:last-child{padding-right:0}.service-card-link{flex-direction:column;min-height:100%;display:flex}.card-top{border-bottom:1px solid #a9aaaf;justify-content:space-between;margin-bottom:24px;padding-block:0 12px;display:flex}.card-top svg{width:20px;color:var(--blue);transition:transform .25s;transform:rotate(-45deg)}.card-number{color:var(--blue);font:.9rem/1.4 monospace}.service-card h3{letter-spacing:-.045em;margin-bottom:18px;font-size:clamp(1.5rem,2vw,2rem)}.service-card p{color:#4d5057;max-width:360px;font-size:1rem;line-height:1.6}.service-card .text-link{color:var(--blue);margin-top:20px;font-size:.78rem}.service-card-link:hover .card-top svg{transform:translate(3px,-3px)rotate(-45deg)}.service-card-link:hover h3{color:var(--blue)}.section-tail{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:36px;margin-top:44px;padding-top:24px;display:flex}.section-tail p{max-width:540px;color:var(--muted);font-size:.84rem}.approach{background:#e9edf8;position:relative;overflow:clip}.approach:before{content:"";pointer-events:none;border:1px solid #b9c8ef;border-radius:50%;width:720px;height:720px;position:absolute;top:-380px;right:-190px;box-shadow:0 0 0 60px #bdcbed17,0 0 0 120px #bdcbed10}.approach-inner{grid-template-columns:1.1fr 1fr;align-items:center;gap:110px;display:grid;position:relative}.approach h2{margin-block:24px}.approach-heading>p:not(.eyebrow){color:#485367;max-width:550px;margin-top:14px;font-size:.95rem}.approach-heading .approach-belief{margin-top:28px}.approach-belief strong{color:var(--ink);font-weight:500}.steps{margin:0;padding:0;list-style:none}.steps li{border-top:1px solid #b8c4df;align-items:flex-start;gap:26px;padding-block:26px;display:flex}.steps li:last-child{border-bottom:1px solid #b8c4df}.steps h3{letter-spacing:-.04em;margin-bottom:10px;font-size:1.45rem}.steps p{color:#485367;font-size:.92rem}.step-number{color:var(--blue);flex-shrink:0;padding-top:5px;font:.75rem/1.5 monospace}.section-heading h2{margin-block:22px}.section-heading>p:last-child{color:var(--muted)}.quote-grid{grid-template-columns:1.1fr 1fr;gap:60px;margin-top:50px;display:grid}.quote{border-top:1px solid var(--line);flex-direction:column;padding-top:22px;display:flex}.quote-sign{color:var(--blue);height:60px;font-family:Georgia,serif;font-size:6rem;line-height:1}.quote blockquote{letter-spacing:-.025em;padding-block:12px 30px;font-size:clamp(1.15rem,1.55vw,1.5rem);line-height:1.55}.quote figcaption{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-top:16px;font-size:.8rem;display:flex}.quote figcaption strong{color:var(--ink);font-weight:600}.quote-brand{color:var(--ink);letter-spacing:-.06em;font-size:1.6rem;font-weight:600}.quote .text-link{color:var(--blue);align-self:flex-start;margin-top:12px;font-size:.75rem}.faq{border-top:1px solid var(--line);grid-template-columns:.9fr 1.1fr;gap:90px;padding-top:70px;display:grid}.faq h2{margin-block:24px}.faq>div>p:last-child{color:var(--muted)}.contact{background:var(--blue);color:#fff;isolation:isolate;padding-block:66px;position:relative;overflow:clip}.contact-inner{justify-content:space-between;align-items:center;gap:40px;display:flex}.contact h2{letter-spacing:-.06em;margin-top:20px;font-size:clamp(2.8rem,5vw,5rem)}.contact .eyebrow{color:#d6dfff}.contact-orbit{pointer-events:none;z-index:-1;aspect-ratio:1;border:30px solid #4a72ef52;border-radius:50%;width:110vw;animation:8s ease-in-out infinite alternate orbit-breathe;position:absolute;top:-95vw;left:25%;box-shadow:0 0 0 60px #4a72ef35,0 0 0 100px #4a72ef24,0 0 0 150px #4a72ef16}.contact-actions{flex-direction:column;align-items:center;gap:18px;min-width:285px;display:flex}.contact-actions .button{width:100%}.contact-email{font-size:.93rem}.contact-email:hover{text-underline-offset:5px;text-decoration:underline}.footer{background:var(--paper)}.footer-inner{justify-content:space-between;align-items:center;gap:36px;padding-block:38px 86px;display:flex}.footer p{color:var(--muted);font-size:.76rem}.footer-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 24px;font-size:.73rem;display:flex}.footer-links a{align-items:center;min-height:44px;display:inline-flex}.footer-links span{color:var(--muted)}.legal{max-width:1000px}.legal h1{margin-block:24px 40px}.legal h1 span{color:var(--blue)}.legal h2{margin-block:44px 20px;font-size:2rem}.legal p{color:var(--muted);max-width:790px}.legal p a{color:var(--blue);text-decoration:underline}.legal .button{margin-top:40px}.legal .quote blockquote p{color:var(--ink)}.solutions-intro{padding-bottom:56px}.solutions-intro .breadcrumb{margin-bottom:28px}.solutions-intro h1{max-width:1000px;margin-block:22px}.solutions-intro .section-lead{max-width:750px;color:var(--muted)}.solution-index{flex-wrap:wrap;gap:20px 34px;margin-top:42px;display:flex}.solution-index a{border-bottom:1px solid var(--line);align-items:center;gap:14px;min-height:48px;font-size:.85rem;display:inline-flex}.solution-index a:hover{color:var(--blue);border-color:var(--blue)}.solution-index span{color:var(--blue);font-family:monospace}.solution-detail{border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;gap:90px;padding-block:70px;display:grid}.solution-number{color:var(--blue);letter-spacing:-.1em;margin-top:22px;font-size:clamp(7rem,15vw,15rem);line-height:1.1}.solution-number span{vertical-align:top;margin-top:16px;margin-left:20px;font-size:.35em;display:inline-block}.solution-copy h2{margin-bottom:24px;font-size:clamp(2.5rem,3.5vw,3.7rem)}.solution-copy>p{color:var(--muted);margin-bottom:20px}.solution-copy .solution-summary{color:var(--ink);font-size:1.3rem}.solution-connection{border-left:2px solid var(--blue);margin-block:30px 16px;padding-left:24px}.solution-connection h3{letter-spacing:-.02em;margin-bottom:8px;font-size:1.05rem}.solution-connection p{color:var(--muted);font-size:.9rem}.solution-next{justify-content:space-between;align-items:center;gap:30px;padding-block:30px 70px;display:flex}.solution-next p{color:var(--muted);font-size:.9rem}.hero-inner{z-index:2}.hero-dragon-scene{z-index:1;pointer-events:none;position:absolute;inset:-18px}.perch-positioner{position:absolute;inset:0}.dragon-perch{transform-origin:82% 80%;width:100%;height:100%;animation:5.6s ease-in-out infinite dragon-breathe;position:relative}.dragon-perch>picture{position:absolute;inset:0}.dragon-perch img{object-fit:cover;width:100%;height:100%}.perch-body{opacity:1;transition:opacity .38s}.perch-breath{opacity:0;transition:opacity .38s}.hero.is-breathing .perch-body{opacity:0}.hero.is-breathing .perch-breath{opacity:1}.hero.is-breathing .dragon-mouth{top:31.4%;left:56%}.dragon-mouth{width:1px;height:1px;position:absolute;top:35.6%;left:58.6%}.elemental-canvas{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.music-toggle{z-index:32;color:var(--ink);backdrop-filter:blur(10px);background:#f8f6f2f2;border:1px solid #c7cde3;border-radius:999px;align-items:center;gap:10px;min-height:44px;padding:10px 17px;font-size:.72rem;display:flex;position:fixed;bottom:76px;left:18px}.music-toggle>span:first-child{color:var(--blue);font-size:1rem}.music-toggle:hover{border-color:var(--blue);background:#fff}.music-panel{z-index:35;background:var(--paper);border:1px solid #c7cde3;border-radius:18px;width:min(400px,100vw - 36px);padding:14px;position:fixed;bottom:132px;left:18px;box-shadow:0 16px 60px #10204830}.music-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.music-heading strong{font-size:.84rem;font-weight:600}.music-heading span{color:var(--muted);font-size:.68rem;display:block}.music-heading button{min-width:44px;min-height:44px;color:var(--ink);background:#fff;border:0;border-radius:50%;font-size:1.4rem}.music-panel iframe{border:0;border-radius:8px;width:100%;height:225px;min-height:200px;display:block}.music-panel>a{min-height:44px;color:var(--blue);align-items:center;font-size:.72rem;display:inline-flex}}@layer components{.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-family:monospace;font-size:.68rem;font-weight:400;line-height:1.8}.eyebrow.blue{color:var(--blue)}.button{background:var(--blue);color:#fff;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:22px;min-height:52px;padding:16px 28px;font-size:.88rem;font-weight:500;line-height:1.4;transition:background .2s,transform .25s,box-shadow .25s;display:inline-flex}.button:hover{background:#1739ae;transform:translateY(-3px);box-shadow:0 8px 24px #254bd126}.button.small{min-height:44px;padding:11px 24px;font-size:.8rem}.button.dark{background:#101114}.button.dark:hover{background:var(--blue)}.button.light{background:var(--paper);color:var(--ink)}.button.light:hover{background:#fff}.button svg,.text-link svg{flex-shrink:0;width:18px;height:18px;transition:transform .25s}.button:is(:hover,:focus-visible) svg,.text-link:is(:hover,:focus-visible) svg{transform:translate(3px,-2px)rotate(-12deg)}.text-link{align-items:center;gap:14px;min-height:44px;font-size:.86rem;line-height:1.5;display:inline-flex}.text-link:hover{text-underline-offset:6px;text-decoration:underline}.breadcrumb{color:var(--muted);font-size:.78rem}.tags{color:var(--muted);flex-wrap:wrap;gap:5px 10px;margin-top:22px;font-size:.76rem;display:flex}.tags li:not(:last-child):after{content:"·";margin-left:10px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;gap:22px;padding-block:24px;font-size:1rem;line-height:1.5;list-style:none;transition:color .2s;display:flex}summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--blue);font-size:1.4rem;line-height:1.1;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding-bottom:26px;font-size:.92rem}.faq-list summary:is(:hover,:focus-visible),.faq-list details[open] summary{color:var(--blue)}.faq-list details[open] p{animation:.3s ease-out disclosure-enter}.more-menu{position:relative}.more-menu summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;list-style:none;display:flex}.more-menu summary span{transition:transform .2s}.more-menu[open] summary span{transform:rotate(180deg)}.menu-panel{border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column;min-width:210px;padding:12px 24px;display:flex;position:absolute;top:48px;left:-24px;box-shadow:0 12px 35px #1c285912}.menu-panel a{min-height:44px;padding-block:11px}.more-menu[open] .menu-panel,.mobile-menu[open] nav{animation:.25s ease-out disclosure-enter}.desktop-nav>a:after{content:"";background:var(--blue);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.desktop-nav>a:is(:hover,:focus-visible,[aria-current=page]):after{transform:scaleX(1)}.header a[aria-current=page]{color:var(--blue)}.menu-close-label,.mobile-menu[open] .menu-open-label{display:none}.mobile-menu[open] .menu-close-label{display:inline}.back-to-top,.motion-toggle{z-index:30;bottom:max(18px, env(safe-area-inset-bottom));min-height:46px;color:var(--ink);backdrop-filter:blur(10px);background:#f8f6f2f2;border:1px solid #c7cde3;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:10px 17px;font-size:.72rem;line-height:1.4;display:inline-flex;position:fixed;box-shadow:0 4px 20px #15244b0d}.back-to-top{right:max(18px,env(safe-area-inset-right))}.motion-toggle{left:max(18px,env(safe-area-inset-left))}.motion-symbol{color:var(--blue);font-size:.9rem}.back-to-top:hover,.motion-toggle:hover{border-color:var(--blue);background:#fff}.back-to-top svg{transition:transform .2s}.back-to-top:hover svg{transform:translateY(-3px)}@supports (animation-timeline:scroll()) and (animation-range:0px 1px){.back-to-top{animation:1ms linear both top-link-reveal;animation-range:70vh 90vh}.has-back-to-top .back-to-top{animation-timeline:scroll(root)}}.skip-link{z-index:100;background:var(--blue);color:#fff;padding:14px 24px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.has-dialog{overflow:hidden}.idea-dialog{background:var(--paper);width:min(560px,100% - 28px);max-height:calc(100svh - 32px);color:var(--ink);border:1px solid #dce1ee;border-radius:24px;padding:38px;overflow-y:auto;box-shadow:0 24px 100px #15255b38}.idea-dialog::backdrop{backdrop-filter:blur(8px);background:#09163877}.dialog-close{border:1px solid var(--line);background:#fff;border-radius:50%;width:44px;height:44px;font-size:1.5rem;position:absolute;top:14px;right:14px}.idea-dialog h2{margin-block:18px;font-size:3.4rem}.idea-dialog h2 span{color:var(--blue)}.idea-dialog>p:not(.eyebrow){color:var(--muted);font-size:.9rem}.idea-dialog form{margin-top:24px}.idea-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.idea-dialog label{margin-bottom:16px;font-size:.78rem;display:block}.idea-dialog input,.idea-dialog textarea{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #bfc7d9;border-radius:10px;margin-top:6px;padding:12px;font:.85rem/1.5 Arial,sans-serif}.idea-dialog textarea{resize:vertical}.idea-hint{color:var(--muted);margin-block:2px 18px;font-size:.72rem}.idea-hint strong{color:var(--ink);font-weight:400}.idea-feedback{background:var(--blue-light);border-radius:10px;margin-top:18px;padding:14px;font-size:.78rem}.idea-feedback a,.idea-feedback button{color:var(--blue);text-decoration:underline}.idea-feedback button{background:0 0;border:0;padding:0}}@layer motion{.dragon-flight{z-index:24;opacity:0;visibility:hidden;pointer-events:none;will-change:transform;width:clamp(180px,26vw,420px);position:fixed;top:0;left:0}.dragon-flight.is-flying{visibility:visible;opacity:1}.dragon-body{transform-origin:38% 48%;filter:drop-shadow(0 20px 18px #1635a02b)}.dragon-body img{width:100%;height:auto}.flight-trail{z-index:23;pointer-events:none;position:fixed;inset:0;overflow:hidden}.flight-trail i{opacity:0;background:#6a9aff;border-radius:50%;width:5px;height:5px;position:absolute;top:0;left:0;box-shadow:0 0 16px 3px #4879f254}.motion-ready [data-reveal]{transition:opacity .8s,translate .8s cubic-bezier(.2,.7,.2,1)}.motion-ready [data-reveal]:not(.is-revealed){opacity:0;translate:0 24px}[data-wind]{transform:translate3d(var(--wind-x,0px),var(--wind-y,0px),0) rotate(var(--wind-r,0deg))}.hero-copy{animation:.9s cubic-bezier(.2,.7,.2,1) both hero-arrive}.hero h1 span{animation:5.5s ease-in-out 1.5s infinite word-lift}@keyframes hero-arrive{0%{opacity:0;translate:0 20px}to{opacity:1;translate:0}}@keyframes word-lift{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)rotate(-1deg)}}@keyframes icon-float{0%,to{transform:rotate(0)}50%{transform:rotate(-12deg)}}@keyframes path-sweep{0%{translate:-60px}to{translate:900px}}@keyframes orbit-breathe{to{transform:translate(-3%,3%)scale(1.06)}}@keyframes disclosure-enter{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes top-link-reveal{0%{opacity:0;visibility:hidden;translate:0 10px}to{opacity:1;visibility:visible;translate:0}}html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] :before,html[data-motion=off] :after{transition:none!important;animation:none!important}html[data-motion=off] .hero-scene,html[data-motion=off] [data-wind]{transform:none!important}html[data-motion=off] [data-reveal]{opacity:1!important;translate:none!important}html[data-motion=off] .back-to-top{opacity:1;visibility:visible;translate:none}.dragon-body{aspect-ratio:700/467;filter:drop-shadow(0 15px 14px #1635a022);position:relative}.dragon-body img{width:100%;height:100%;position:absolute;inset:0}.flight-wing-back{z-index:1;transform-origin:29%}.flight-torso{z-index:2}.flight-wing-front{z-index:3;transform-origin:44% 57%}.hero.is-breathing .dragon-perch{animation:3.2s ease-in-out both dragon-exhale}@keyframes dragon-exhale{0%,to{transform:translate(0,0)rotate(-.7deg)}18%{transform:translate(7px,-12px)rotate(1deg)}38%,72%{transform:translate(-6px,-4px)rotate(-1.3deg)}}@keyframes dragon-breathe{0%,to{transform:translate3d(var(--look-x,0px),var(--look-y,0px),0) rotate(-.7deg) scale(1)}50%{transform:translate3d(calc(var(--look-x,0px) - 10px),calc(var(--look-y,0px) - 15px),0) rotate(1deg) scale(1.018)}}.flight-wing-back{translate:5% 4%}.flight-wing-front{translate:-5% -2%}.flight-torso{mask-image:linear-gradient(90deg,#000 50%,#0000 65%)}.flight-tail{z-index:2;transform-origin:57% 76%;mask-image:linear-gradient(90deg,#0000 50%,#000 65%)}.is-flying .flight-tail{animation:2.8s ease-in-out infinite flight-tail-sway}.is-flying .flight-wing-front{animation:6.4s cubic-bezier(.4,.02,.35,1) infinite wingbeat-front}.is-flying .flight-wing-back{animation:6.4s cubic-bezier(.4,.02,.35,1) -.08s infinite wingbeat-back}@keyframes wingbeat-front{0%,22%,44%{transform:perspective(650px)rotate3d(1,-.18,0,-24deg)rotate(-13deg)}11%,33%,55%{transform:perspective(650px)rotate3d(1,-.18,0,72deg)rotate(18deg)}17%,39%,61%{transform:perspective(650px)rotate3d(1,-.18,0,18deg)rotate(2deg)}72%,92%{transform:perspective(650px)rotate3d(1,-.18,0,10deg)rotate(-3deg)}to{transform:perspective(650px)rotate3d(1,-.18,0,-24deg)rotate(-13deg)}}@keyframes wingbeat-back{0%,22%,44%{transform:perspective(650px)rotate3d(1,.12,0,-28deg)rotate(9deg)}11%,33%,55%{transform:perspective(650px)rotate3d(1,.12,0,65deg)rotate(-18deg)}17%,39%,61%{transform:perspective(650px)rotate3d(1,.12,0,12deg)rotate(-2deg)}72%,92%{transform:perspective(650px)rotate3d(1,.12,0,6deg)rotate(1deg)}to{transform:perspective(650px)rotate3d(1,.12,0,-28deg)rotate(9deg)}}@keyframes flight-tail-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}.contact:not(.is-inview) .contact-orbit{animation-play-state:paused}}@layer responsive{@media (width>=1600px){.hero-inner{min-height:900px}.services-intro{min-height:440px}}@media (width<=1150px){.container{width:calc(100% - 80px)}.desktop-nav{gap:20px;font-size:.76rem}.hero-inner{min-height:700px;padding-top:65px}.hero h1{font-size:7.6vw}.hero-description{max-width:440px;font-size:1.13rem}.clients-label{flex-basis:150px;font-size:.8rem}.client-logo,.client-wordmark{padding-inline:16px}.client-wordmark{font-size:1.65rem}.approach-inner{gap:60px}.service-card{padding-inline:24px}.contact-actions{min-width:240px}.path-note{display:none}.faq{gap:48px}}@media (width<=800px){.container{width:calc(100% - 40px)}.header-inner{flex-wrap:wrap;gap:0;min-height:76px;padding-block:14px}.header .brand{align-self:flex-start;margin-top:5px}.brand-wordmark{font-size:40px}.desktop-nav,.header-cta{display:none}.mobile-menu{margin-left:auto;display:block}.mobile-menu summary{cursor:pointer;align-items:center;gap:18px;min-height:44px;padding-left:16px;font-size:.88rem;list-style:none;display:flex}.menu-icon{color:var(--blue);font-size:1.4rem;transition:transform .2s}.mobile-menu[open]{flex-basis:calc(100% - 70px)}.mobile-menu[open] summary{justify-content:flex-end}.mobile-menu[open] .menu-icon{transform:rotate(45deg)}.mobile-menu nav{flex-direction:column;padding-block:18px 12px;display:flex}.mobile-menu nav a{border-bottom:1px solid var(--line);min-height:48px;padding-block:12px}.mobile-menu nav a:hover{color:var(--blue)}.hero{flex-direction:column;display:flex}.hero-inner{min-height:760px;padding-top:32px}.hero-copy{max-width:none}.hero .eyebrow{letter-spacing:.18em;font-size:.59rem}.hero h1{margin-block:20px 22px;font-size:clamp(3.1rem,8.7vw,5.5rem);line-height:1.03}.hero-description{max-width:480px;font-size:1.05rem}.hero-actions{gap:14px 24px;margin-top:24px}.hero-actions .button{padding-inline:22px;font-size:.83rem}.hero-actions .text-link{font-size:.8rem}.hero-scene{height:435px;inset:auto -12px -12px}.hero-scene:before{content:"";z-index:1;background:linear-gradient(#f7f4ef,#0000);height:80px;position:absolute;inset:-1px 0 auto}.hero-scene img{object-position:70% 55%}.flight-path{justify-content:space-between;gap:16px;min-height:76px}.flight-path>a{letter-spacing:.09em;gap:7px;font-size:.58rem}.flight-path a svg,.path-line,.path-note{display:none}.connections-inner{flex-direction:column;gap:24px;padding-block:28px}.clients-label{text-align:center;flex-basis:auto;font-size:.77rem}.clients-label br{display:none}.client-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0;width:100%}.client-logo:nth-child(odd){border-left:0}.client-logo.giro img{max-width:180px}.client-wordmark{font-size:1.8rem}.services{padding-bottom:52px}.services-intro{min-height:350px}.services-heading{padding-top:42px}.services-heading h2{max-width:600px;font-size:clamp(2.4rem,6.5vw,3.5rem)}.services-heading .section-lead{max-width:260px;font-size:1rem}.ribbon-art{object-position:60% bottom;opacity:.78;height:220px;bottom:0}.service-grid{grid-template-columns:1fr;gap:36px}.service-card,.service-card:first-child,.service-card:last-child{border:0;padding:0}.service-card h3{margin-bottom:14px;font-size:1.8rem}.service-card p{max-width:none;font-size:.94rem}.card-top{margin-bottom:20px}.card-number{font-size:.8rem}.service-card .text-link{margin-top:10px}.tags{margin-top:16px}.section-tail{flex-direction:column;align-items:flex-start;gap:12px;margin-top:32px}.section-space{padding-block:60px}.approach-inner{grid-template-columns:1fr;gap:36px}.approach h2{font-size:2.8rem}.quote-grid{grid-template-columns:1fr;gap:36px;margin-top:34px}.quote blockquote{font-size:1.2rem}.faq{grid-template-columns:1fr;gap:28px}.contact{padding-block:50px}.contact-inner{flex-direction:column;align-items:flex-start;gap:30px}.contact h2{font-size:clamp(2.7rem,7.8vw,4rem)}.contact-actions{align-items:flex-start;min-width:0}.contact-actions .button{min-width:250px}.contact-orbit{width:160vw;top:-75vw}.footer-inner{flex-wrap:wrap;gap:24px;padding-bottom:90px}.footer p{text-align:right;font-size:.67rem}.footer-links{border-top:1px solid var(--line);flex-basis:100%;justify-content:space-between;gap:6px 18px;padding-top:20px}.solution-detail{grid-template-columns:1fr;gap:30px;padding-block:44px}.solution-number{margin-top:12px;font-size:5.5rem}.solution-number span{margin-top:12px}.solution-copy h2{font-size:2.4rem}.solution-next{flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:50px}.solution-index{gap:10px 22px}.solutions-intro h1,.legal h1{font-size:clamp(2.8rem,8vw,4.5rem)}.motion-toggle,.back-to-top{min-height:44px;padding:9px 12px;font-size:.65rem;bottom:14px}.motion-toggle{left:12px}.back-to-top{right:12px}}@media (width<=380px){.hero h1{font-size:2.8rem}.hero-inner{min-height:780px}.hero-description{font-size:.98rem}.hero-actions{gap:10px}.hero-actions .button{min-height:46px;padding:12px 18px;font-size:.77rem}.hero-actions .text-link{gap:7px;font-size:.72rem}.services-heading h2{font-size:2.2rem}.services-intro{min-height:335px}.contact h2{font-size:2.4rem}.flight-path>a{font-size:.53rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}[data-reveal]{opacity:1!important;translate:none!important}[data-wind],.hero-scene{transform:none!important}.back-to-top{opacity:1;visibility:visible;translate:none}.dragon-flight,.flight-trail{display:none!important}}@media (width<=800px){.hero-dragon-scene{height:435px;inset:auto -12px -12px}.music-toggle{padding:9px 12px;font-size:.65rem;bottom:68px;left:12px}.music-panel{width:min(400px,100vw - 24px);bottom:120px;left:12px}}@media (width<=550px){.idea-dialog{padding:28px 22px}.idea-dialog h2{font-size:2.8rem}.idea-fields{grid-template-columns:1fr;gap:0}}.footer .motion-toggle{backdrop-filter:none;min-height:44px;font-size:inherit;background:0 0;border:0;padding:0;position:static}.music-toggle{bottom:18px}.music-panel{bottom:74px}.music-hint{color:var(--muted);margin-top:8px;font-size:.65rem}@media (width<=800px){.music-toggle{bottom:14px}.music-panel{bottom:68px}}.hero.is-outside .dragon-perch{animation-play-state:paused}.music-panel{width:300px;padding:12px;left:auto;right:18px}.music-panel iframe{height:200px}.music-heading{margin-bottom:8px}.music-panel>a{min-height:30px}@media (width<=800px){.music-panel{width:244px;right:12px}.music-heading strong{font-size:.74rem}.music-heading span{font-size:.6rem}}@media (prefers-reduced-motion:reduce){.dragon-perch{transform:none!important}.elemental-canvas{display:none}}html[data-motion=off] .dragon-perch{transform:none!important}}
