/* Motion follows the story: information converges, becomes useful, moves on. */
.hero{position:relative}
.hero-copy{position:relative;z-index:1}
.hero .hero-line{transform-origin:left center}
body[data-active-audience] .hero h1{letter-spacing:-.065em;font-weight:600}
.hero h1 em:last-child{font-family:var(--display);font-style:normal;font-weight:600;letter-spacing:-.065em}
.hero h1 em:last-child::after{content:'';height:4px;margin-top:18px;transform-origin:left;animation:line-arrive 1.2s cubic-bezier(.2,.8,.2,1) both}
.hero-promise{margin-top:20px}
.hero-experience{perspective:1100px}
.hero-motion-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border:1px solid #9ba6c1;border-radius:50%;background:transparent;color:#1c273f;font-size:18px;transition:background .25s}
.hero-motion-toggle:hover{background:#d1d8e8}
.hero #experience-panel .studio-stage{border:1px solid #b6bed2;border-radius:12px}
.hero #experience-panel .business-canvas{background:transparent;padding:12px 16px 18px}
.knowledge-engine{position:relative;border:1px solid #364057;border-radius:8px;padding:16px 16px 10px;overflow:hidden;color:#e1e6f0}
.hero #experience-panel .knowledge-sources{position:relative;z-index:1;gap:10px}
.hero #experience-panel .knowledge-sources>div{border-bottom:0;padding:0;gap:4px}
.hero #experience-panel .knowledge-sources strong{color:#ebeef5;font-size:14px}
.hero #experience-panel .knowledge-sources>div>span:last-child{color:#b8c0d3;font-size:12px;line-height:1.45}
.signal-field{position:relative;height:108px;margin:0 -16px;pointer-events:none}
#signal-canvas{display:block;width:100%;height:100%}
.hero #experience-panel .knowledge-bridge{display:none}
.hero #experience-panel .knowledge-core{position:relative;z-index:1;border:1px solid #5a6b93;border-radius:5px;padding:10px 14px;box-shadow:0 0 24px #a3b4db16;animation:core-breath 5s ease-in-out infinite}
.hero .knowledge-core .core-monogram{font-size:30px}
.hero .knowledge-core strong{font-size:16px}
.hero .knowledge-core>div>span{font-size:12px;color:#cfd6e6}
.hero .core-arrow{font-size:23px}
.hero #experience-panel .knowledge-outlet{height:14px}
.hero #experience-panel .business-tabs{gap:8px;border-bottom:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.hero #experience-panel .business-tabs button{text-align:center;font-size:13px;border:1px solid transparent;border-radius:4px;padding:9px 5px;transition:background .3s,color .3s,border-color .3s}
.hero #experience-panel .business-tabs button[aria-selected=true]{color:#eef0f6}
.hero #experience-panel .business-tabs button:hover:not([aria-selected=true]){background:#ced5e6}
.hero #experience-panel .business-result h2{font-size:clamp(24px,2.15vw,32px)}
.hero #experience-panel .business-deliverable{padding-top:12px}
.experience-tabs{gap:22px}.experience-tabs button::after{transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.hero .studio-prompt{padding:11px 0}.hero .studio-prompt p{font-size:13px}
.button,.header-cta{position:relative;overflow:hidden;transition:background .25s,box-shadow .3s,transform .3s}
.button:hover{box-shadow:0 8px 24px -12px #1c273faa;transform:translateY(-2px)}
.button:active{transform:translateY(0)}
.services{background:#eef0f6}
.service-card,.service-card+article{border-bottom-color:#a0abc5;transition:background .45s,opacity .7s,transform .7s}
.service-card::after{content:'';position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:#414e6b;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.service-card.is-focused::after,.service-card:focus-within::after{transform:scaleX(1)}
.service-card.is-focused{background:#dfe4ef}
.service-card .card-top>span{transition:color .4s,transform .6s;color:#55658b;font-family:var(--display)}
.service-card.is-focused .card-top>span{color:#23304f;transform:translateY(-3px)}
.service-card .service-title{transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.service-card.is-focused .service-title{transform:translateX(5px)}
.service-details summary>span{transition:transform .4s}.service-details summary:hover>span{transform:rotate(45deg)}
.approach{position:relative;overflow:hidden}
.process-step{position:relative;transition:border-color .5s,background .5s;padding-bottom:20px}
.process-step::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:2px;background:#a4b5de;transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.process-step.is-current::before{transform:scaleX(1)}
.process-step .step-index{transition:color .5s,transform .5s}
.process-step.is-current .step-index{transform:translateX(5px)}
.flow-connector i{position:relative;overflow:hidden}
.flow-connector i::after{content:'';position:absolute;top:-16px;left:50%;width:2px;height:16px;background:#425277;animation:flow-descend 3.6s linear infinite}
.flow-connector i:nth-child(2)::after{animation-delay:-1.2s}.flow-connector i:nth-child(3)::after{animation-delay:-2.4s}
.contact-entry{position:relative;overflow:hidden;box-shadow:0 18px 40px -28px #151c2e80}
.entry-options a{transition:padding .4s,background .4s}.entry-options a:hover{padding-left:12px}
.motion-ready .hero-line{animation:headline-arrive .85s cubic-bezier(.2,.8,.2,1) both}
.motion-ready .hero-line:nth-child(2){animation-delay:.12s}.motion-ready .hero-line:nth-child(3){animation-delay:.24s}
.site-header::after{content:'';position:absolute;bottom:-1px;left:0;height:2px;background:#a8b2ca;width:100%;transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
@keyframes headline-arrive{from{opacity:0;transform:translateY(20px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(-5% -5% -10% -5%)}}
@keyframes line-arrive{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes core-breath{0%,100%{border-color:#5a6b93;box-shadow:0 0 20px #a3b4db0c}50%{border-color:#9ba8c7;box-shadow:0 0 22px #a3b4db2b}}
@keyframes flow-descend{to{transform:translateY(100px)}}
@media(min-width:1101px){.hero-copy .eyebrow{max-width:430px;line-height:1.5}.hero h1{margin-top:25px;margin-bottom:24px}}
@media(max-width:760px){.hero h1 em:last-child::after{margin-top:12px;height:3px}.knowledge-engine{padding:14px 12px 9px}.signal-field{height:94px;margin:0 -12px}.hero #experience-panel .business-canvas{padding:10px 10px 15px}.hero #experience-panel .knowledge-sources>div>span:last-child{font-size:12px}.hero #experience-panel .knowledge-sources strong{font-size:13px}.hero #experience-panel .business-tabs button{font-size:12px}.service-card.is-focused .service-title{transform:none}.hero .studio-prompt p{font-size:13px}}
.motion-paused .hero-line,.motion-paused .hero h1 em:last-child::after{animation:none!important;opacity:1;transform:none;clip-path:none}
.motion-paused .knowledge-core,.motion-paused .flow-connector i::after,.page-hidden .knowledge-core,.page-hidden .flow-connector i::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.motion-ready .hero-line,.hero h1 em:last-child::after,.hero #experience-panel .knowledge-core,.flow-connector i::after{animation:none!important;opacity:1;transform:none;clip-path:none}.service-card .service-title,.process-step .step-index,.service-card .card-top>span{transform:none!important}.service-card::after,.process-step::before,.button,.entry-options a{transition:none!important}}
