:root{--ease-studio:cubic-bezier(.16, 1, .3, 1);--dur-ui:.42s;--text-micro:.75rem;--track-micro:.18em;--track-display:-.055em;--ruby-glow:0 14px 36px -14px #d21736bf}html{font-synthesis-weight:none}h1,h2,h3{font-kerning:normal;text-rendering:optimizelegibility}.eyebrow{font-size:var(--text-micro);letter-spacing:var(--track-micro);gap:12px;font-weight:500}.micro-rule{background:linear-gradient(90deg, var(--red), #d1a64c8c);flex:none;width:28px;height:1px;display:inline-block}.section-index{gap:14px}.section-index-num{color:var(--red-ink);font-variant-numeric:tabular-nums}.contact-section .section-index-num{color:var(--red)}.accent-serif,.cinematic-home .about-copy h2 em{font-family:var(--display);letter-spacing:-.02em;font-style:italic;font-weight:400}.cinematic-home .about-copy h2 em{color:var(--red-ink)}.ab-signature{color:var(--paper);white-space:nowrap;align-items:baseline;gap:2px;line-height:1;display:inline-flex}.ab-signature b{font-family:var(--sans);letter-spacing:-.04em;font-size:1.05rem;font-weight:600}.ab-signature i{color:var(--red);font-family:var(--display);margin-inline:1px 8px;font-size:1.5rem;font-style:italic}.ab-signature small{color:var(--muted);font-family:var(--mono);font-size:var(--text-micro);letter-spacing:var(--track-micro);text-transform:uppercase}.icon-swap{vertical-align:-.15em;flex:none;width:16px;height:16px;display:inline-block;position:relative;overflow:hidden}.icon-swap svg{transition:transform var(--dur-ui) var(--ease-studio);position:absolute;inset:0}.icon-swap-up-right .icon-swap-in{transform:translate(-115%,115%)}.icon-swap-down-right .icon-swap-in{transform:translate(-115%,-115%)}.icon-swap-right .icon-swap-in{transform:translate(-115%)}.icon-swap-left .icon-swap-in{transform:translate(115%)}.icon-swap-up .icon-swap-in{transform:translateY(115%)}:is(a,button):is(:hover,:focus-visible) .icon-swap-in{transform:none}:is(a,button):is(:hover,:focus-visible) .icon-swap-up-right .icon-swap-out{transform:translate(115%,-115%)}:is(a,button):is(:hover,:focus-visible) .icon-swap-down-right .icon-swap-out{transform:translate(115%,115%)}:is(a,button):is(:hover,:focus-visible) .icon-swap-right .icon-swap-out{transform:translate(115%)}:is(a,button):is(:hover,:focus-visible) .icon-swap-left .icon-swap-out{transform:translate(-115%)}:is(a,button):is(:hover,:focus-visible) .icon-swap-up .icon-swap-out{transform:translateY(-115%)}.button,.site-nav .nav-cta,.footer-contact>a.footer-contact-cta{isolation:isolate;position:relative;overflow:hidden}.button{font-family:var(--sans);letter-spacing:.14em;transition:color var(--dur-ui) ease, border-color var(--dur-ui) ease, box-shadow var(--dur-ui) ease, transform var(--dur-ui) var(--ease-studio);gap:20px;padding:0 22px 0 26px;font-weight:600}.button:before,.site-nav .nav-cta:before,.footer-contact>a.footer-contact-cta:before{z-index:-1;content:"";transform-origin:100%;transition:transform .52s var(--ease-studio);position:absolute;inset:0;transform:scaleX(0)}.button:is(:hover,:focus-visible):before,.site-nav .nav-cta:is(:hover,:focus-visible):before,.footer-contact>a.footer-contact-cta:is(:hover,:focus-visible):before{transform-origin:0;transform:scaleX(1)}.button-primary:before,.site-nav .nav-cta:before,.footer-contact>a.footer-contact-cta:before{background:linear-gradient(100deg, var(--red-dark) 0%, #9e1029 60%, var(--red) 100%)}.button-primary{border-color:var(--red)}.button-primary:is(:hover,:focus-visible),.site-nav .nav-cta:is(:hover,:focus-visible),.footer-contact>a.footer-contact-cta:is(:hover,:focus-visible){background:var(--red);box-shadow:var(--ruby-glow);color:var(--white);border-color:#ffffff47;transform:translateY(-2px)}.button-ghost{border-color:var(--line-strong);color:var(--paper);background:0 0}.button-ghost:before{background:#ffffff0d}.button-ghost:after{background:var(--red);content:"";transform-origin:0;height:1px;transition:transform .52s var(--ease-studio);position:absolute;bottom:-1px;left:-1px;right:-1px;transform:scaleX(0)}.button-ghost:is(:hover,:focus-visible){color:var(--white);background:0 0;border-color:#ffffff80;transform:translateY(-2px)}.button-ghost:is(:hover,:focus-visible):after{transform:scaleX(1)}@media (min-width:721px){.button{white-space:nowrap;flex:none}}.button-primary:before,.site-nav .nav-cta:before,.button-primary:hover:before,.site-nav .nav-cta:hover:before{translate:none}.button-primary:after,.site-nav .nav-cta:after{z-index:-1;content:"";pointer-events:none;background:linear-gradient(105deg,#0000 30%,#efc96a4d 50%,#0000 70%);position:absolute;inset:0;translate:-120%}.button-primary:is(:hover,:focus-visible):after,.site-nav .nav-cta:is(:hover,:focus-visible):after{transition:translate .9s var(--ease-studio);translate:120%}.button .icon-swap,.button:hover .icon-swap{font-size:inherit;transform:none}.site-nav a:not(.nav-cta){letter-spacing:.16em;padding-left:12px;font-size:.8125rem;font-weight:500}.site-nav a:not(.nav-cta):before{background:var(--red);content:"";width:4px;height:4px;transition:transform var(--dur-ui) var(--ease-studio);border-radius:50%;margin-top:-2px;position:absolute;top:50%;left:0;transform:scale(0)}.site-nav a:not(.nav-cta):after{transition:transform var(--dur-ui) var(--ease-studio);bottom:6px;left:12px}.site-nav a:not(.nav-cta):is(:hover,:focus-visible,.is-active):before{transform:scale(1)}.site-nav a.is-active{color:var(--white)}.site-nav .nav-cta{font-family:var(--sans);letter-spacing:.14em;transition:box-shadow var(--dur-ui) ease, border-color var(--dur-ui) ease, transform var(--dur-ui) var(--ease-studio);gap:14px;font-weight:600}.hero-label{color:var(--paper-dim);flex-wrap:wrap;row-gap:6px}.hero-label-primary{color:var(--paper)}.hero-label-secondary{color:var(--muted)}.cinematic-home .hero-copy{container-type:inline-size}.cinematic-home .hero-title{letter-spacing:var(--track-display);font-size:clamp(1.9rem,10.6cqi,6rem);line-height:.98}.cinematic-home .hero-title-lead{font-weight:500}.cinematic-home .hero-title-accent{color:var(--paper);font-family:var(--display);letter-spacing:-.025em;padding-left:clamp(0px,5vw,1.15em);font-size:1.1em;font-style:italic;font-weight:400;line-height:.92}.cinematic-home .hero-title-close{font-weight:500}.cinematic-home .client-proof>span{font-family:var(--mono);font-size:var(--text-micro);letter-spacing:var(--track-micro);text-transform:uppercase}.hero-foot-sign{align-items:center;gap:22px;display:flex}.hero-foot-sign .hero-stack-note{border-left:1px solid var(--line);margin:0;padding-left:22px}.cinematic-home .hero-marquee-group span{font-family:var(--mono);letter-spacing:.22em;font-weight:500}.cinematic-home .hero-marquee-group i{font-family:var(--display);font-size:1.25rem;font-style:italic}.cinematic-home .showcase-meta{align-items:end;gap:24px}.showcase-caption{gap:8px;min-width:0;display:grid}.cinematic-home .showcase-meta .showcase-kicker{color:var(--red-ink);letter-spacing:var(--track-micro);align-items:center;gap:10px;font-weight:500;display:flex}.cinematic-home .showcase-meta .showcase-kicker:after{background:var(--line-strong);content:"";width:24px;height:1px}.cinematic-home .showcase-meta strong{font-family:var(--display);letter-spacing:-.02em;margin-top:4px;font-size:clamp(2rem,1.1rem + 2vw,3.1rem);font-weight:400;line-height:.95}.cinematic-home .showcase-meta .showcase-category{color:var(--paper-dim);letter-spacing:.14em}.cinematic-home .showcase-case-study{border-bottom:1px solid var(--red);letter-spacing:.16em;gap:12px;font-weight:500}.slider-controls{gap:6px}.slider-controls .icon-control{transition:background var(--dur-ui) ease, border-color var(--dur-ui) ease, box-shadow var(--dur-ui) ease, transform var(--dur-ui) var(--ease-studio);overflow:hidden}.slider-controls .icon-control svg{transition:transform var(--dur-ui) var(--ease-studio)}.slider-controls .icon-control:is(:hover,:focus-visible){border-color:var(--red);color:var(--white);background:#d2173624;transform:scale(1.04);box-shadow:0 0 0 4px #d2173614}.slider-controls .icon-control-prev:is(:hover,:focus-visible) svg{transform:translate(-4px)}.slider-controls .icon-control-next:is(:hover,:focus-visible) svg{transform:translate(4px)}.slider-controls .pause-control{font-size:var(--text-micro);letter-spacing:var(--track-micro);align-items:center;gap:8px;padding-inline:14px;font-weight:500;display:inline-flex}.cinematic-home .section-heading h2,.cinematic-home .process-intro h2,.cinematic-home .standard-statement h2,.cinematic-home .about-copy h2{letter-spacing:-.05em}.cinematic-home .section-heading h2 .accent-serif,.cinematic-home .process-intro h2 .accent-serif,.cinematic-home .standard-statement h2 .accent-serif{color:var(--paper-dim);font-size:1.06em}.contact-title-accent{font-family:var(--display);letter-spacing:-.025em;font-style:italic;font-weight:400}.cinematic-home .contact-title-accent{color:var(--red);font-size:1.08em}.cinematic-home .project-category-tag{font-family:var(--mono);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;font-weight:500;display:flex}.project-category-index{color:var(--red-ink);font-variant-numeric:tabular-nums}.project-category-index:after{vertical-align:middle;background:var(--line-strong);content:"";width:18px;height:1px;margin-left:12px;display:inline-block}.cinematic-home .project-details h3{font-family:var(--display);letter-spacing:-.02em;transition:transform var(--dur-ui) var(--ease-studio);font-size:clamp(2rem,1.3rem + 1.8vw,3rem);font-weight:400;line-height:1}.cinematic-home .project-card:is(:hover,:focus-visible) .project-details h3{transform:translate(4px)}.portfolio-browser-bar svg{color:var(--muted);flex:none}.cinematic-home .project-cta{letter-spacing:.14em;gap:12px;font-weight:500}.capability-card{position:relative}.capability-card:before{background:var(--red);content:"";transform-origin:0;height:1px;transition:transform .56s var(--ease-studio);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.capability-card:is(:hover,:focus-visible):before{transform:scaleX(1)}.capability-top>span:first-child{font-family:var(--mono);letter-spacing:var(--track-micro);font-weight:500}.capability-symbol{border:1px solid var(--line);width:48px;height:48px;transition:border-color var(--dur-ui) ease, background var(--dur-ui) ease;place-items:center;display:grid}.capability-symbol svg{transition:transform .56s var(--ease-studio)}.capability-card:is(:hover,:focus-visible) .capability-symbol{border-color:var(--red);background:#d217361a}.capability-card:is(:hover,:focus-visible) .capability-symbol svg{transform:rotate(-10deg)scale(1.08)}.capability-card h3{transition:transform var(--dur-ui) var(--ease-studio)}.capability-card:is(:hover,:focus-visible) h3{transform:translate(4px)}.capability-link{font-family:var(--mono);font-size:var(--text-micro);letter-spacing:var(--track-micro);text-transform:uppercase;font-weight:500}.service-card-top>.service-card-index{letter-spacing:.12em;align-items:center;gap:14px;font-weight:500;display:flex}.service-card-icon{color:var(--red-ink);transition:transform .56s var(--ease-studio);flex:none}.service-card:is(:hover,:focus-visible) .service-card-icon{transform:rotate(-10deg)translateY(-2px)scale(1.08)}.cinematic-home .service-card:is(:hover,:focus-visible) h3{transform:translate(4px)}.cinematic-home .service-card-arrow{transition:border-color var(--dur-ui) ease, background var(--dur-ui) ease}.cinematic-home .service-card:is(:hover,:focus-visible) .service-card-arrow{border-color:var(--red);background:#d2173624;transform:none}.cinematic-home .service-card:after{background:var(--red)}.process-list li>span:first-child{color:var(--red-ink);letter-spacing:.12em;font-weight:500}.process-list li>span:last-child{transition:color var(--dur-ui) ease}.process-list li:hover>span:last-child{color:var(--red-ink)}.contact-options a{grid-template-columns:124px minmax(0,1fr) auto}.contact-options a>span:first-child{align-items:center;gap:10px;font-weight:500;display:inline-flex}.contact-options a>span:first-child svg{color:var(--red)}.footer-statement{border-bottom:1px solid var(--line);margin-bottom:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}.footer-statement .eyebrow{margin-bottom:clamp(20px,2.4vw,32px)}.footer-statement-link{width:fit-content;max-width:100%;color:var(--paper);font-family:var(--sans);letter-spacing:-.06em;text-transform:uppercase;grid-template-columns:auto auto;column-gap:.18em;font-size:clamp(2.5rem,.6rem + 8vw,8.75rem);font-weight:500;line-height:.9;display:grid}.footer-statement-line{transition:transform .64s var(--ease-studio);grid-column:1}.footer-statement-accent{color:var(--red-ink);font-family:var(--display);letter-spacing:-.03em;text-transform:none;padding-left:.9em;font-size:1.04em;font-style:italic;font-weight:400}.footer-statement-arrow{border:1px solid var(--line-strong);width:.62em;height:.62em;transition:background var(--dur-ui) ease, border-color var(--dur-ui) ease, transform .64s var(--ease-studio);border-radius:50%;grid-area:3/2;align-self:center;place-items:center;display:grid}.footer-statement-arrow .icon-swap{width:36%;height:36%}.footer-statement-arrow .icon-swap svg{width:100%;height:100%}.footer-statement-link:is(:hover,:focus-visible) .footer-statement-accent{transform:translate(.12em)}.footer-statement-link:is(:hover,:focus-visible) .footer-statement-arrow{border-color:var(--red);background:var(--red);transform:rotate(-8deg)}.footer-location,.footer-contact>a.footer-contact-line{align-items:center;gap:10px;display:inline-flex}.footer-location svg,.footer-contact-line svg{color:var(--red-ink);flex:none}.footer-contact>a.footer-contact-line{margin-top:0}.footer-contact>a.footer-contact-cta{letter-spacing:var(--track-micro);margin-bottom:12px;font-weight:500}.footer-link-group>span,.footer-contact>span{letter-spacing:var(--track-micro);font-weight:500}.footer-bottom{letter-spacing:.12em;flex-wrap:wrap}.footer-bottom .ab-signature{margin-right:auto}.footer-top-link{gap:10px}.cursor-ring{border-color:#efc96a73}.cursor-ring.is-active{border-color:var(--red);background:#d217361a}.cursor-ring.has-label{border-color:var(--red);background:#070708db}.cursor-label{color:var(--paper);letter-spacing:var(--track-micro);font-size:.75rem;font-weight:500}@media (min-width:721px) and (prefers-reduced-motion:no-preference){.cinematic-home .hero-copy[data-reveal]{animation:none}.cinematic-home .hero-title .mask-line{margin:-.1em -.14em -.14em 0;padding:.1em .14em .14em 0;overflow:clip}.cinematic-home .hero-title-accent.mask-line{padding-left:clamp(0px,5vw,1.15em)}.cinematic-home .hero-title .mask-line>span{animation:ed-line 1.1s var(--ease-studio) calc(var(--intro-offset,0s) + .12s) backwards}.cinematic-home .hero-title .mask-line:nth-child(2)>span{animation-delay:calc(var(--intro-offset,0s) + .23s)}.cinematic-home .hero-title .mask-line:nth-child(3)>span{animation-delay:calc(var(--intro-offset,0s) + .34s)}.cinematic-home .hero-label{animation:ed-rise .8s var(--ease-studio) var(--intro-offset,0s) backwards}.cinematic-home .hero-intro{animation:ed-rise .9s var(--ease-studio) calc(var(--intro-offset,0s) + .5s) backwards}.cinematic-home .hero-actions{animation:ed-rise .9s var(--ease-studio) calc(var(--intro-offset,0s) + .6s) backwards}.cinematic-home .client-proof{animation:ed-rise .9s var(--ease-studio) calc(var(--intro-offset,0s) + .7s) backwards}.cinematic-home .hero .project-showcase[data-reveal]{animation:ed-showcase 1.2s var(--ease-studio) calc(var(--intro-offset,0s) + .65s) backwards}}@keyframes ed-rise{0%{opacity:0;filter:blur(6px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}@keyframes ed-line{0%{filter:blur(5px);transform:translateY(62%)}to{filter:none;transform:none}}@keyframes ed-showcase{0%{clip-path:inset(0 0 14%);transform:translateY(32px)}to{clip-path:inset(0);transform:none}}@media (max-width:960px){.site-nav a:not(.nav-cta){font-size:var(--type-action);padding-left:16px}.site-nav a:not(.nav-cta):after{left:16px}}@media (max-width:720px){.cinematic-home .hero-title-accent{padding-left:0}.hero-label .micro-rule{width:18px}.cinematic-home .showcase-meta{align-items:start}.cinematic-home .showcase-meta strong,.cinematic-home .project-details h3{font-size:2rem}.cinematic-home .service-card-top{grid-template-columns:64px minmax(0,1fr) 44px}.cinematic-home .service-card-reveal{grid-template-columns:64px minmax(0,1fr) 0;column-gap:12px;padding-left:0}.service-card-top>.service-card-index{gap:10px}.contact-options a{grid-template-columns:minmax(0,1fr) auto}.contact-options a>span:first-child{grid-column:1/-1}.footer-statement-accent{padding-left:.5em}.footer-bottom .ab-signature{width:100%}.button{letter-spacing:.12em;padding:0 18px 0 22px}}@media (prefers-reduced-motion:reduce){.icon-swap svg,.button,.button:before,.button:after,.site-nav a:before,.site-nav a:after,.site-nav .nav-cta:before,.footer-statement-line,.button-primary:after,.site-nav .nav-cta:after,.footer-statement-arrow{transition:none}}
