/* Refinement layer: preserve identity, layout and existing motion controls. */
:root{--ui-ease:cubic-bezier(.22,1,.36,1);--ui-edge:rgba(141,181,237,.2)}
.site-header .brand{min-width:0;flex-shrink:1}
.site-header .brand-logo{max-width:100%}
.site-header .header-cta{box-shadow:inset 0 1px 0 #ffffff18,0 4px 18px #124cc025}
.hero-copy{color:#b4c0d3}
.hero-proof{column-gap:clamp(2rem,4vw,4rem);row-gap:1.5rem}
.hero-proof>div{padding-left:1rem;border-left:1px solid #789fd738}
.hero-proof span{color:#94a3ba}
.hero-bottom{border-top-color:#8ab5ed26}
.button{border-radius:.75rem;transition:transform .25s var(--ui-ease),box-shadow .25s ease,border-color .25s ease}
.button:focus-visible,.text-link:focus-visible,.project-link:focus-visible{outline:2px solid #9fe7ff;outline-offset:5px}
.button:active,.header-cta:active,.audience-link:active{transform:translateY(1px)}
.text-link{line-height:1.6;text-underline-offset:.35em}
.text-link:hover{text-decoration:underline;text-decoration-color:#78bbff80}
.service-card{display:flex;flex-direction:column;border-color:var(--ui-edge);transition:transform .3s var(--ui-ease),border-color .3s ease}
.service-card h3{line-height:1.2;letter-spacing:-.035em}
.service-card ul{margin-top:auto;padding-top:1.5rem}
.service-card p{margin-bottom:2rem}
.case{border-color:var(--ui-edge)}
.project-link{transition:color .2s ease,border-color .2s ease}
.project-link:hover{color:#9fe1ff;border-color:#8ecbff88}
.project-link>span[aria-hidden]{transition:transform .25s var(--ui-ease)}
.project-link:hover>span[aria-hidden]{transform:translate(3px,-3px)}
.case-copy>p{max-width:36rem}
.project-tags{gap:.5rem}
.project-tags li{background:#ffffff03;border-color:#a1bde329}
.steps{border-top-color:var(--ui-edge)}
.step h3{line-height:1.25;letter-spacing:-.025em}
.step p{color:#9daac0}
.audience-copy h3{line-height:1.2}
.audience-meta{font-size:.875rem;letter-spacing:.08em;flex-wrap:wrap}
.audience-card:focus-within{border-color:#8dcfff88}
.contact h2{max-width:65rem;text-wrap:balance}
.contact .large{max-width:calc(100vw - 3rem);overflow-wrap:anywhere}
footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
footer p{color:#8c9eb8;line-height:1.6}
footer a{transition:color .2s ease}
footer small{color:#8292aa;letter-spacing:.08em}
@media(hover:hover) and (pointer:fine){
  .button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #267aff28}
  .service-card:hover{transform:translateY(-4px)}
}
@media(hover:none),(pointer:coarse){
  .service-card:hover,.audience-card:hover{transform:none}
  .cover-body{transform:none}
}
@media(min-width:1101px){.site-header nav a{transition:color .2s ease,background-color .2s ease}}
@media(max-width:1100px){
  .site-header{gap:1rem}
  .site-header .brand{max-width:calc(100% - 4.25rem)}
  .site-header .menu-button{flex-shrink:0}
}
@media(max-width:900px){footer{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
  .hero-actions .button{width:100%}
  .hero-proof{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:1.5rem}
  .hero-proof>div{padding-left:.625rem;min-width:0}
  .hero-proof strong{font-size:1.25rem}
  .hero-proof span{font-size:.9375rem;line-height:1.65}
  .statement,.work,.process{padding-top:6rem;padding-bottom:6rem}
  .work-heading{margin-bottom:3rem}
  .process-intro{margin-bottom:3.5rem;gap:1.25rem}
  .case-copy{padding:2rem 1.5rem}
  .contact{padding:6.5rem 1.5rem}
  .contact h2{font-size:clamp(2rem,7vw,3.25rem);line-height:1.25;margin-block:2rem 2.5rem}
  .audience-copy h3{font-size:clamp(1.875rem,7.8vw,2.75rem)}
  .audience-link{min-width:0;gap:1rem}
}
@media(prefers-reduced-motion:reduce){
  .button:hover,.service-card:hover,.audience-card:hover,.audience-link:hover{transform:none}
}
