:root { --blue:#5273ff; --cyan:#6ee7ff; --ink:#080b13; --dark:#0b0f1a; --mid:#111827; --paper:#edf0f7; --muted:#8791a6; --line:rgba(237,240,247,.14); --orange:#ff8a3d; }
* { box-sizing:border-box; } html,html.lenis,html.lenis body { height:auto; scroll-behavior:auto!important; } html.home-playing { overflow:hidden; } body { margin:0; color:var(--paper); background:var(--dark); font-family:"DM Sans",sans-serif; } a { color:inherit; text-decoration:none; } button,input { font:inherit; } .page-noise { position:fixed; z-index:30; inset:0; opacity:.025; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"); }
.site-header { position:fixed; z-index:20; top:0; right:0; left:0; display:flex; align-items:center; justify-content:space-between; padding:23px 5vw; border-bottom:1px solid rgba(237,240,247,.12); background:rgba(8,11,19,.72); backdrop-filter:blur(16px); }
.brand { display:flex; align-items:center; gap:10px; font-size:15px; font-weight:600; letter-spacing:-.03em; }.brand-symbol { display:grid; width:30px; height:30px; place-items:center; border:1px solid var(--blue); border-radius:9px; color:var(--cyan); font-family:"Space Grotesk",sans-serif; }.brand-dot,.accent-dot { color:var(--cyan); }.main-nav { display:flex; gap:35px; margin-left:auto; margin-right:5vw; color:#aeb7ca; font-size:12px; }.main-nav a { position:relative; transition:color .25s ease; }.main-nav a:hover,.main-nav a.is-active { color:white; }.main-nav a::after { position:absolute; right:0; bottom:-10px; left:0; height:1px; background:var(--cyan); content:""; transform:scaleX(0); transform-origin:left; transition:transform .3s ease; }.main-nav a:hover::after,.main-nav a.is-active::after { transform:scaleX(1); }.menu-toggle { display:none; border:0; background:transparent; }.menu-toggle span { display:block; width:25px; height:1px; margin:6px; background:white; }
.section-dark { background:var(--dark); }.section-mid { background:var(--mid); }.section-light { color:var(--ink); background:var(--paper); }.hero { position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; padding:140px 9vw 100px; isolation:isolate; }.hero-grid { position:absolute; z-index:-2; inset:0; opacity:.34; background-image:linear-gradient(rgba(110,231,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(110,231,255,.07) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(90deg,#000,transparent 65%); }.hero::after { position:absolute; z-index:-3; top:10%; left:35%; width:650px; height:650px; border-radius:50%; background:radial-gradient(circle,rgba(82,115,255,.24),transparent 67%); filter:blur(8px); content:""; }.hero-orbit { position:absolute; z-index:-1; width:35vw; height:35vw; max-width:580px; max-height:580px; border:1px solid rgba(110,231,255,.16); border-radius:50%; transform:rotate(-25deg) skewX(-18deg); }.orbit-one { right:8vw; top:15%; }.orbit-two { right:14vw; top:23%; width:25vw; height:25vw; border-color:rgba(82,115,255,.22); transform:rotate(34deg) skewX(-20deg); }.hero-content { max-width:760px; }.eyebrow { display:flex; gap:9px; align-items:center; margin:0 0 28px; color:var(--cyan); font:500 10px "DM Mono",monospace; letter-spacing:.15em; text-transform:uppercase; }.eyebrow span { color:var(--blue); }.hero h1 { max-width:800px; margin:0 0 30px; font:600 clamp(57px,8.2vw,122px)/.86 "Space Grotesk",sans-serif; letter-spacing:-.075em; text-transform:uppercase; }.hero h1 em { color:transparent; -webkit-text-stroke:1px rgba(237,240,247,.75); font-style:normal; }.hero-description { max-width:515px; margin:0 0 34px; color:#abb5ca; font-size:16px; line-height:1.65; }.button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-width:220px; padding:16px 19px; border:1px solid transparent; border-radius:12px; font-size:11px; font-weight:700; letter-spacing:.02em; transition:transform .3s ease,box-shadow .3s ease,background .3s ease; cursor:pointer; }.button:hover { transform:translateY(-2px); }.button-primary { color:white; background:var(--blue); box-shadow:0 12px 35px rgba(82,115,255,.2); }.button-primary:hover { background:#6d88ff; box-shadow:0 16px 42px rgba(82,115,255,.3); }.hero-index { position:absolute; right:5vw; bottom:12vh; display:flex; gap:15px; align-items:center; color:var(--muted); font:10px "DM Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }.hero-index i { width:42px; height:1px; background:var(--blue); }.hero-scroll { position:absolute; bottom:30px; left:50%; color:var(--muted); font:10px "DM Mono",monospace; letter-spacing:.13em; text-transform:uppercase; transform:translateX(-50%); }.hero-scroll span { margin-left:12px; color:var(--cyan); font-size:18px; }
.home-sequence { position:relative; min-height:100vh; background:#000; }.home-sticky { position:relative; height:100vh; display:flex; align-items:center; justify-content:center; overflow:hidden; padding:0 6vw; background:#000; isolation:isolate; }.home-sticky .hero-content { position:absolute; z-index:3; top:50%; left:9vw; width:min(32vw,470px); max-width:none; transform:translateY(-50%); }.home-sticky h1 { max-width:520px; margin:0 0 20px; font:600 clamp(34px,4.2vw,62px)/.9 "Space Grotesk",sans-serif; letter-spacing:-.075em; text-transform:uppercase; }.home-sticky h1 em { color:transparent; -webkit-text-stroke:1px rgba(237,240,247,.75); font-style:normal; }.home-sticky .hero-description { max-width:370px; margin-bottom:24px; font-size:13px; line-height:1.5; }.home-sticky .button { min-width:185px; padding:13px 16px; }.home-frame { position:absolute; z-index:0; right:3vw; width:min(58vw,960px); aspect-ratio:16/9; background:#000; }.home-frame::before { position:absolute; z-index:4; inset:-1%; background:linear-gradient(90deg, #000 0%, rgba(0,0,0,.96) 5%, rgba(0,0,0,.62) 13%, rgba(0,0,0,.2) 22%, transparent 28%, transparent 72%, rgba(0,0,0,.2) 78%, rgba(0,0,0,.62) 87%, rgba(0,0,0,.96) 95%, #000 100%), linear-gradient(0deg, #000 0%, rgba(0,0,0,.96) 5%, rgba(0,0,0,.56) 13%, rgba(0,0,0,.16) 21%, transparent 28%, transparent 72%, rgba(0,0,0,.16) 79%, rgba(0,0,0,.56) 87%, rgba(0,0,0,.96) 95%, #000 100%); filter:blur(16px); opacity:.9; content:""; pointer-events:none; }.home-frame::after { display:none; }.home-video { position:relative; z-index:1; display:block; width:100%; height:100%; object-fit:contain; background:#000; -webkit-mask-image:radial-gradient(ellipse at center, #000 68%, rgba(0,0,0,.96) 79%, rgba(0,0,0,.54) 91%, transparent 100%); mask-image:radial-gradient(ellipse at center, #000 68%, rgba(0,0,0,.96) 79%, rgba(0,0,0,.54) 91%, transparent 100%); }
.section-padding { padding:135px 9vw; }.section-marker { display:flex; gap:15px; align-items:center; margin-bottom:52px; color:var(--muted); font:10px "DM Mono",monospace; letter-spacing:.15em; text-transform:uppercase; }.section-marker i { display:block; width:28px; height:1px; background:var(--blue); }.section-intro { display:grid; grid-template-columns:1fr 1fr; gap:6vw; align-items:end; margin-bottom:84px; }.section-intro .section-marker { grid-column:1/-1; margin-bottom:0; }.section-intro h2,.process h2,.capture h2,.positioning h2,.contact h2,.faq h2 { margin:0; font:600 clamp(47px,6vw,91px)/.9 "Space Grotesk",sans-serif; letter-spacing:-.07em; text-transform:uppercase; }.section-intro h2 { max-width:580px; }.section-intro h2 + p { align-self:end; margin:0; color:var(--cyan); font:500 18px/1.4 "DM Mono",monospace; }.section-intro > p:last-child { grid-column:2; max-width:430px; margin:0; color:var(--muted); font-size:14px; line-height:1.7; }.service-list { border-top:1px solid var(--line); }.service-item { padding:32px 0 38px; border-bottom:1px solid var(--line); }.service-head { display:grid; grid-template-columns:70px 1fr 28px; align-items:start; }.service-head span { color:var(--cyan); font:11px "DM Mono",monospace; }.service-head h3 { margin:0; font:500 clamp(28px,4vw,56px) "Space Grotesk",sans-serif; letter-spacing:-.06em; text-transform:uppercase; }.service-head b { color:var(--cyan); font-size:24px; font-weight:400; }.service-item > p { max-width:480px; margin:20px 0 0 70px; color:var(--muted); font-size:14px; line-height:1.6; }.service-item ul { display:flex; flex-wrap:wrap; gap:8px 30px; max-width:660px; margin:27px 0 0 70px; padding:0; list-style:none; color:#c7cede; font:11px "DM Mono",monospace; }.service-item li::before { margin-right:8px; color:var(--blue); content:"/"; }.service-item:hover h3 { color:var(--cyan); }
.process { position:relative; }.process-heading { display:flex; gap:7vw; align-items:end; margin-bottom:90px; }.process-heading h2 { max-width:520px; }.process-heading p { max-width:260px; margin:0 0 4px; color:var(--muted); font-size:14px; line-height:1.6; }.process-line { height:1px; margin:0 0 38px; background:linear-gradient(90deg,var(--blue),rgba(82,115,255,.1)); }.process-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:20px; }.process-grid article { position:relative; }.process-grid article::before { position:absolute; top:-44px; left:0; width:7px; height:7px; border:1px solid var(--cyan); border-radius:50%; background:var(--mid); content:""; }.process-grid span,.capture-steps span,.audience-grid article span { display:block; margin-bottom:20px; color:var(--cyan); font:11px "DM Mono",monospace; }.process-grid strong { display:block; min-height:40px; font-size:14px; }.process-grid p { max-width:180px; color:var(--muted); font-size:12px; line-height:1.65; }
.capture { display:grid; grid-template-columns:.7fr 1.3fr; gap:9vw; align-items:center; }.capture-visual { min-height:600px; }.media-placeholder { display:grid; place-items:center; border:1px dashed rgba(110,231,255,.38); background:radial-gradient(circle at 60% 30%,rgba(82,115,255,.2),transparent 35%),#0c1424; color:var(--muted); font:11px "DM Mono",monospace; text-align:center; }.media-placeholder span { padding:10px 16px; border:1px solid var(--line); }.capture-content > p { max-width:480px; margin:30px 0 45px; color:var(--muted); font-size:15px; line-height:1.7; }.capture-steps { display:grid; grid-template-columns:1fr 1fr; gap:30px; }.capture-steps strong { display:block; margin-bottom:9px; font-size:13px; }.capture-steps p { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.projects-heading { display:flex; gap:10vw; align-items:end; margin-bottom:75px; }.projects-heading h2 { max-width:640px; margin:0; font:600 clamp(48px,6.5vw,100px)/.87 "Space Grotesk",sans-serif; letter-spacing:-.08em; text-transform:uppercase; }.projects-heading h2 em,.contact h2 em,.capture h2 em { color:var(--blue); font-style:normal; }.projects-heading p { max-width:350px; margin:0 0 5px; color:#666f7d; font-size:14px; line-height:1.65; }.project-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:3px; }
.positioning { display:grid; grid-template-columns:.9fr 1.1fr; gap:11vw; }.positioning-copy > p { max-width:430px; color:var(--muted); font-size:15px; line-height:1.7; }.audience-grid { display:grid; grid-template-columns:1fr 1fr; gap:3px; }.audience-grid > p { grid-column:1/-1; margin:0 0 35px; color:#d0d7e5; font-size:16px; line-height:1.6; }.audience-grid article { min-height:260px; padding:26px; border:1px solid var(--line); }.audience-grid article h3 { margin:0 0 18px; font:500 20px/1.05 "Space Grotesk",sans-serif; letter-spacing:-.04em; text-transform:uppercase; }.audience-grid article p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.contact { display:grid; grid-template-columns:.8fr 1.2fr; gap:10vw; }.contact-heading > p { max-width:370px; margin-top:35px; color:var(--muted); font-size:14px; line-height:1.7; }.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:25px 18px; }.contact-form label,.contact-form legend { color:#a8b2c4; font:10px "DM Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }.contact-form input { display:block; width:100%; margin-top:9px; padding:15px 0; border:0; border-bottom:1px solid var(--line); outline:0; color:white; background:transparent; font-size:14px; }.contact-form input:focus { border-color:var(--cyan); }.contact-form fieldset { grid-column:1/-1; padding:0; border:0; }.contact-form legend { margin-bottom:15px; }.service-options { display:flex; flex-wrap:wrap; gap:10px; }.service-options label { display:flex; gap:9px; align-items:center; padding:11px 13px; border:1px solid var(--line); cursor:pointer; transition:border-color .2s,color .2s; }.service-options label:has(input:checked) { border-color:var(--cyan); color:white; }.service-options input { width:auto; margin:0; accent-color:var(--blue); }.contact-form button { grid-column:1/-1; justify-self:start; margin-top:12px; }.form-status { grid-column:1/-1; margin:0; color:var(--cyan); font-size:12px; }
.faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:10vw; }.faq-list { border-top:1px solid rgba(8,11,19,.2); }.faq details { border-bottom:1px solid rgba(8,11,19,.2); }.faq summary { display:flex; justify-content:space-between; gap:20px; padding:23px 0; color:var(--ink); font-size:14px; font-weight:600; cursor:pointer; list-style:none; }.faq summary::-webkit-details-marker { display:none; }.faq summary::after { color:var(--blue); content:"+"; font-size:20px; font-weight:400; }.faq details[open] summary::after { content:"−"; }.faq details p { max-width:600px; margin:0 35px 23px 0; color:#626a77; font-size:13px; line-height:1.6; }
.site-footer { display:grid; grid-template-columns:1fr 1fr auto; gap:50px; padding:60px 9vw 35px; color:var(--muted); background:#070a12; font-size:12px; }.site-footer .brand { color:white; }.site-footer p { line-height:1.6; }.site-footer > a { align-self:start; color:var(--cyan); font:11px "DM Mono",monospace; text-transform:uppercase; }.site-footer small { grid-column:1/-1; padding-top:24px; border-top:1px solid var(--line); font:10px "DM Mono",monospace; }
.service-item,.process-grid article,.project-card,.audience-grid article,.capture-steps > div { opacity:0; transform:translateY(22px); transition:opacity .7s var(--reveal-delay) ease,transform .7s var(--reveal-delay) cubic-bezier(.16,1,.3,1); }.is-visible { opacity:1!important; transform:translateY(0)!important; }
.reveal { opacity:0; transform:translateY(22px); animation:rise .8s cubic-bezier(.16,1,.3,1) forwards; }.delay-one { animation-delay:.12s; }.delay-two { animation-delay:.24s; }.delay-three { animation-delay:.36s; }@keyframes rise { to { opacity:1; transform:translateY(0); } }
@media (max-width:800px) { .site-header { padding:18px 6vw; }.main-nav { position:absolute; top:67px; right:0; left:0; display:none; flex-direction:column; gap:0; margin:0; padding:8px 6vw 20px; background:rgba(8,11,19,.98); }.main-nav a { padding:14px 0; border-bottom:1px solid var(--line); }.main-nav a::after { bottom:0; }.site-header.nav-open .main-nav { display:flex; }.menu-toggle { display:block; }.hero { padding:125px 6vw 90px; align-items:flex-end; }.hero h1 { font-size:clamp(48px,14vw,78px); }.hero-description { font-size:14px; }.hero-index { display:none; }.hero-scroll { left:6vw; transform:none; }.hero-orbit { right:-30vw; width:100vw; height:100vw; }.home-sequence { min-height:100vh; }.home-sticky { padding:0 4vw; align-items:flex-end; padding-bottom:8vh; }.home-sticky .hero-content { top:11vh; left:6vw; width:88vw; transform:none; }.home-sticky h1 { font-size:clamp(34px,10vw,55px); line-height:.9; }.home-sticky .hero-description { max-width:300px; font-size:12px; }.home-sticky .button { min-width:0; gap:12px; padding:12px 13px; }.home-frame { right:-12vw; width:70vw; }.section-padding { padding:90px 6vw; }.section-intro,.process-heading,.projects-heading,.capture,.positioning,.contact,.faq { display:block; }.section-intro h2,.process h2,.capture h2,.positioning h2,.contact h2,.faq h2 { font-size:clamp(48px,13vw,72px); }.section-intro h2 + p { margin-top:30px; }.section-intro > p:last-child { margin-top:30px; }.service-item > p,.service-item ul { margin-left:0; }.service-head { grid-template-columns:45px 1fr 20px; }.service-head h3 { font-size:29px; }.service-item ul { gap:8px 18px; }.process-heading p { margin-top:28px; }.process-line { display:none; }.process-grid { grid-template-columns:1fr; gap:29px; }.process-grid article { padding-left:48px; }.process-grid article::before { top:0; left:0; }.process-grid span { position:absolute; top:0; left:20px; }.process-grid strong { min-height:auto; }.process-grid p { max-width:100%; }.capture-visual { min-height:360px; margin-bottom:75px; }.capture-steps { grid-template-columns:1fr; }.projects-heading p { margin-top:30px; }.project-grid { grid-template-columns:1fr; }.project-placeholder { min-height:260px; }.audience-grid { grid-template-columns:1fr; margin-top:45px; }.audience-grid > p { margin-bottom:0; }.contact-heading { margin-bottom:65px; }.contact-form { grid-template-columns:1fr; }.contact-form fieldset,.contact-form button,.form-status { grid-column:auto; }.site-footer { display:block; padding:55px 6vw 30px; }.site-footer > div { margin-bottom:30px; }.site-footer small { display:block; margin-top:35px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; } }
@media (max-width:800px) { .home-frame { right:-2vw; width:84vw; } }
.site-header { top:18px; right:auto; left:50%; width:min(90vw,1400px); padding:12px 20px; border:1px solid rgba(110,231,255,.22); border-radius:18px; transform:translateX(-50%); }
.brand-logo { display:block; width:142px; height:auto; }
.header-domain { display:flex; align-items:center; gap:8px; margin-left:18px; padding:7px 10px; border:1px solid rgba(162,228,255,.18); border-radius:999px; color:#9db4c8; background:rgba(5,14,27,.25); font:500 8px "DM Mono",monospace; letter-spacing:.08em; white-space:nowrap; text-transform:uppercase; }
.header-domain i { width:6px; height:6px; border-radius:50%; background:#67dcff; box-shadow:0 0 10px rgba(103,220,255,.78); }
.home-sticky h1 em,.hero h1 em { color:transparent; -webkit-text-stroke:1px var(--blue); }
.footer-brand-block { min-width:0; }
.footer-logo-container { display:inline-flex; padding:12px 16px; border:1px solid rgba(110,231,255,.22); border-radius:16px; background:rgba(15,23,42,.58); }
.site-footer .brand-logo { width:190px; }
@media (max-width:800px) { .site-header { top:10px; width:calc(100vw - 20px); padding:10px 14px; border-radius:14px; }.brand-logo { width:122px; }.footer-logo-container { padding:10px 12px; }.site-footer .brand-logo { width:160px; } }
.site-header { overflow:hidden; isolation:isolate; border-color:rgba(170,235,255,.3); background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.045) 45%,rgba(19,126,190,.14)); -webkit-backdrop-filter:blur(24px) saturate(165%); backdrop-filter:blur(24px) saturate(165%); box-shadow:0 16px 36px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(110,231,255,.12); }
.site-header::before { position:absolute; z-index:-1; top:-90%; left:18%; width:55%; height:220%; border-radius:50%; background:rgba(255,255,255,.1); filter:blur(30px); content:""; transform:rotate(-18deg); pointer-events:none; }
.site-header > * { position:relative; z-index:1; }
.home-sticky h1 em,.hero h1 em { -webkit-text-stroke-color:#1189c7; }
.home-final-image { position:absolute; z-index:1; top:7%; left:18%; display:block; width:86%; height:86%; object-fit:contain; opacity:0; filter:blur(12px) brightness(.58) saturate(.72); transform:scale(1.04); will-change:opacity,filter,transform; pointer-events:none; transition:opacity 3.1s cubic-bezier(.37,0,.23,1) .15s,filter 3.1s cubic-bezier(.37,0,.23,1) .15s,transform 3.3s cubic-bezier(.22,1,.36,1); }
.home-frame { z-index:2; will-change:opacity,filter,transform; transition:opacity 3.1s cubic-bezier(.45,0,.2,1),filter 3.1s cubic-bezier(.45,0,.2,1),transform 3.1s cubic-bezier(.45,0,.2,1); }
.home-sticky::before,.home-sticky::after { position:absolute; z-index:2; opacity:0; content:""; pointer-events:none; }
.home-sticky::before { inset:-20%; background:radial-gradient(circle at 62% 50%,rgba(76,195,255,.38),rgba(17,137,199,.13) 22%,transparent 48%); filter:blur(24px); transform:scale(.78); }
.home-sticky::after { top:-20%; bottom:-20%; left:-42%; width:38%; background:linear-gradient(105deg,transparent 12%,rgba(152,227,255,.08) 35%,rgba(77,191,255,.42) 50%,rgba(17,137,199,.12) 64%,transparent 88%); filter:blur(18px); transform:skewX(-12deg); mix-blend-mode:screen; }
.home-sticky.home-final-state .home-final-image { opacity:1; filter:blur(0) brightness(1) saturate(1); transform:scale(1); }
.home-sticky.home-final-state .home-frame { opacity:0; filter:blur(12px) brightness(.42) saturate(.65); transform:scale(.97); }
.home-sticky.home-final-state::before { animation:home-transition-glow 3.3s cubic-bezier(.37,0,.23,1) both; }
.home-sticky.home-final-state::after { animation:home-transition-sweep 3s cubic-bezier(.37,0,.23,1) both; }
@keyframes home-transition-glow { 0%,100% { opacity:0; transform:scale(.78); } 40% { opacity:.7; transform:scale(1); } 65% { opacity:.28; transform:scale(1.08); } }
@keyframes home-transition-sweep { 0%,8% { left:-42%; opacity:0; } 34% { opacity:.72; } 72% { opacity:.18; } 100% { left:112%; opacity:0; } }
@media (prefers-reduced-motion:reduce) { .home-frame { transition-duration:3.1s!important; }.home-final-image { transition-duration:3.1s!important; transition-delay:.15s!important; }.home-sticky.home-final-state::before { animation-duration:3.3s!important; }.home-sticky.home-final-state::after { animation-duration:3s!important; } }
@media (max-width:800px) { .home-final-image { left:12%; } }
.home-frame { padding:0; border:0; appearance:none; color:inherit; cursor:zoom-in; -webkit-tap-highlight-color:transparent; }
.home-frame:focus-visible { outline:2px solid rgba(76,195,255,.85); outline-offset:6px; border-radius:8px; }
.home-frame::after { position:absolute; z-index:7; top:var(--touch-y,50%); left:var(--touch-x,50%); display:block; width:clamp(120px,18vw,280px); aspect-ratio:1; border:1px solid rgba(174,235,255,.72); border-radius:50%; background:radial-gradient(circle,rgba(148,228,255,.3),rgba(54,177,239,.12) 38%,transparent 68%); box-shadow:0 0 45px rgba(54,177,239,.28),inset 0 0 30px rgba(255,255,255,.16); opacity:0; content:""; transform:translate(-50%,-50%) scale(.08); pointer-events:none; }
.home-frame.is-touched { animation:home-touch-press .52s cubic-bezier(.2,.8,.2,1); }
.home-frame.is-touched::after { animation:home-touch-wave .72s cubic-bezier(.16,1,.3,1); }
.home-sticky.home-final-state .home-frame { pointer-events:none; }
@keyframes home-touch-press { 0%,100% { transform:scale(1); } 42% { transform:scale(.972); } 68% { transform:scale(.986); } }
@keyframes home-touch-wave { 0% { opacity:0; transform:translate(-50%,-50%) scale(.08); } 22% { opacity:.9; } 100% { opacity:0; transform:translate(-50%,-50%) scale(1.35); } }
.video-lightbox { width:100vw; max-width:none; height:100dvh; max-height:none; margin:0; padding:0; border:0; overflow:hidden; color:#fff; background:rgba(0,3,10,.96); opacity:0; transform:scale(.985); cursor:zoom-out; transition:opacity .38s ease,transform .48s cubic-bezier(.16,1,.3,1); }
.video-lightbox[open] { display:grid; place-items:center; }
.video-lightbox::backdrop { background:rgba(0,0,0,.76); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); }
.video-lightbox.is-open { opacity:1; transform:scale(1); }
.video-lightbox-content { position:relative; width:min(94vw,1720px); height:min(92dvh,980px); display:grid; place-items:center; cursor:default; isolation:isolate; }
.video-lightbox-content::before { position:absolute; z-index:-1; inset:8%; border-radius:50%; background:radial-gradient(circle,rgba(17,137,199,.2),transparent 66%); filter:blur(40px); content:""; }
.video-lightbox img { display:block; width:100%; height:100%; object-fit:contain; opacity:0; filter:blur(16px) brightness(.7); clip-path:inset(43% 47% round 999px); transform:scale(.82); transition:opacity .62s ease .08s,filter .7s ease .05s,clip-path .78s cubic-bezier(.16,1,.3,1),transform .78s cubic-bezier(.16,1,.3,1); }
.video-lightbox.is-open img { opacity:1; filter:blur(0) brightness(1); clip-path:inset(0 round 0); transform:scale(1); }
.video-lightbox-close { position:absolute; z-index:2; top:18px; right:18px; display:flex; gap:12px; align-items:center; padding:10px 12px 10px 15px; border:1px solid rgba(174,235,255,.28); border-radius:999px; color:#dff7ff; background:rgba(9,20,36,.56); opacity:0; transform:translateY(-8px); cursor:pointer; -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); transition:opacity .35s ease .28s,transform .45s cubic-bezier(.16,1,.3,1) .28s,background .2s ease; }
.video-lightbox.is-open .video-lightbox-close { opacity:1; transform:translateY(0); }
.video-lightbox-close:hover { background:rgba(17,137,199,.34); }
.video-lightbox-close span { font:500 10px "DM Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.video-lightbox-close b { font-size:20px; font-weight:400; line-height:.8; }
@media (prefers-reduced-motion:reduce) { .home-frame.is-touched { animation-duration:.52s!important; }.home-frame.is-touched::after { animation-duration:.72s!important; }.video-lightbox { transition-duration:.48s!important; }.video-lightbox img { transition-duration:.78s!important; }.video-lightbox-close { transition-duration:.45s!important; } }
@media (max-width:800px) { .video-lightbox-content { width:96vw; height:90dvh; }.video-lightbox-close { top:10px; right:10px; } }
.hero-cta { display:inline-block; }
.hero-project-button { position:relative; transform-origin:center; will-change:transform; transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s ease,filter .42s ease; }
@media (hover:hover) { .hero-project-button:hover { transform:translate3d(0,-5px,0) scale(1.075) rotate(-2deg); box-shadow:0 18px 38px rgba(37,120,255,.34); filter:brightness(1.08); } }
.hero-project-button:active { transform:translate3d(0,-1px,0) scale(.985) rotate(-1deg); }
.project-page-wipe { position:fixed; z-index:100; inset:0; overflow:hidden; visibility:hidden; pointer-events:none; }
.project-page-wipe.is-active { visibility:visible; pointer-events:auto; }
.project-page-wipe-panel { position:absolute; inset:-10vh -12vw; display:grid; place-items:center; overflow:hidden; background:linear-gradient(115deg,#063d83 0%,#086cb4 44%,#10a8d4 100%); box-shadow:0 0 80px rgba(0,0,0,.4); transform:translate3d(-115%,0,0) skewX(-4deg); transition:transform .72s cubic-bezier(.76,0,.24,1); }
.project-page-wipe-panel::before { position:absolute; inset:-30%; background:radial-gradient(circle at 62% 48%,rgba(151,232,255,.44),transparent 34%),radial-gradient(circle at 18% 72%,rgba(2,35,92,.42),transparent 38%); content:""; }
.project-page-wipe-panel::after { position:absolute; inset:0; opacity:.18; background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.42) 49%,transparent 63%); content:""; transform:translateX(-55%); transition:transform .9s cubic-bezier(.16,1,.3,1); }
.project-page-wipe-panel img { position:relative; z-index:1; width:clamp(210px,24vw,380px); height:auto; opacity:0; filter:drop-shadow(0 18px 30px rgba(0,0,0,.2)); transform:skewX(4deg) translateX(-25px) scale(.94); transition:opacity .3s ease .22s,transform .58s cubic-bezier(.16,1,.3,1) .15s; }
.project-page-wipe.is-covering .project-page-wipe-panel { transform:translate3d(0,0,0) skewX(-4deg); }
.project-page-wipe.is-covering .project-page-wipe-panel::after { transform:translateX(55%); }
.project-page-wipe.is-covering .project-page-wipe-panel img { opacity:1; transform:skewX(4deg) translateX(0) scale(1); }
.project-page-wipe.is-revealing .project-page-wipe-panel { transform:translate3d(115%,0,0) skewX(-4deg); }
.project-page-wipe.is-revealing .project-page-wipe-panel img { opacity:0; transform:skewX(4deg) translateX(25px) scale(1.04); transition-delay:0s; }
@media (prefers-reduced-motion:reduce) { .hero-project-button { transition-duration:.42s!important; }.project-page-wipe-panel { transition-duration:.72s!important; }.project-page-wipe-panel::after { transition-duration:.9s!important; }.project-page-wipe-panel img { transition-duration:.58s!important; } }
@media (max-width:800px) { .project-page-wipe-panel { inset:-8vh -24vw; }.project-page-wipe-panel img { width:min(62vw,300px); } }
.client-marquee { position:relative; overflow:hidden; padding:58px 0 64px; border-top:1px solid rgba(110,231,255,.14); border-bottom:1px solid rgba(110,231,255,.14); background:radial-gradient(circle at 15% 0,rgba(17,137,199,.13),transparent 34%),linear-gradient(180deg,#05080f,#090e19); isolation:isolate; }
.client-marquee::before { position:absolute; z-index:-1; inset:0; opacity:.22; background-image:linear-gradient(rgba(110,231,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(110,231,255,.05) 1px,transparent 1px); background-size:72px 72px; content:""; mask-image:linear-gradient(90deg,#000,transparent 70%); }
.client-marquee-heading { display:flex; gap:7vw; align-items:flex-end; justify-content:space-between; margin-bottom:38px; padding:0 9vw; }
.client-marquee-heading .eyebrow { margin-bottom:13px; }
.client-marquee-heading h2 { max-width:none; margin:0; font:600 clamp(32px,3.8vw,58px)/.88 "Space Grotesk",sans-serif; letter-spacing:-.07em; white-space:nowrap; text-transform:uppercase; }
.client-heading-accent { display:inline-block; color:#29c8ff; text-shadow:0 0 10px rgba(41,200,255,.62),0 0 28px rgba(17,137,199,.48); animation:client-heading-glow 2.4s ease-in-out infinite; }
.client-marquee-heading > p { max-width:380px; margin:0 0 4px; color:var(--muted); font-size:13px; line-height:1.65; }
.client-marquee-viewport { overflow:hidden; padding:12px 0; -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); }
.client-marquee-track { display:flex; width:max-content; will-change:transform; animation:client-marquee-scroll 34s linear infinite; }
.client-logo-set { display:flex; gap:14px; padding-right:14px; }
.client-logo-card { --logo-rx:0deg; --logo-ry:0deg; position:relative; width:clamp(160px,14vw,220px); height:112px; display:grid; flex:0 0 auto; place-items:center; overflow:hidden; border:1px solid rgba(174,235,255,.12); border-radius:18px; background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); transform-style:preserve-3d; transition:transform .42s cubic-bezier(.16,1,.3,1),border-color .35s ease,background .35s ease,box-shadow .35s ease; }
.client-logo-card::before { position:absolute; inset:-45%; border-radius:50%; background:radial-gradient(circle,rgba(31,170,226,.28),transparent 62%); opacity:0; content:""; transform:scale(.65); transition:opacity .35s ease,transform .5s cubic-bezier(.16,1,.3,1); }
.client-logo-card img { position:relative; z-index:1; width:auto; max-width:74%; height:auto; max-height:54px; object-fit:contain; opacity:.58; filter:grayscale(1) brightness(.9); transform:translateZ(18px); transition:opacity .35s ease,filter .35s ease,transform .42s cubic-bezier(.16,1,.3,1); }
.client-marquee-viewport:hover .client-marquee-track { animation-play-state:paused; }
.client-logo-card:hover { z-index:2; border-color:rgba(91,202,247,.55); background:linear-gradient(145deg,rgba(21,116,178,.22),rgba(255,255,255,.05)); box-shadow:0 18px 44px rgba(0,50,110,.32),inset 0 1px 0 rgba(255,255,255,.16); transform:perspective(700px) translateY(-7px) scale(1.06) rotateX(var(--logo-rx)) rotateY(var(--logo-ry)); }
.client-logo-card:hover::before { opacity:1; transform:scale(1); }
.client-logo-card:hover img { opacity:1; filter:grayscale(0) brightness(1.12); transform:translateZ(30px) scale(1.04); }
@keyframes client-marquee-scroll { to { transform:translate3d(-50%,0,0); } }
@keyframes client-heading-glow { 0%,100% { color:#29c8ff; text-shadow:0 0 8px rgba(41,200,255,.48),0 0 22px rgba(17,137,199,.36); } 50% { color:#80e8ff; text-shadow:0 0 14px rgba(79,219,255,.9),0 0 38px rgba(17,137,199,.7); } }
@media (prefers-reduced-motion:reduce) { .client-marquee-track { animation-duration:34s!important; }.client-logo-card,.client-logo-card::before,.client-logo-card img { transition-duration:.42s!important; } }
@media (max-width:800px) { .client-marquee { padding:46px 0 52px; }.client-marquee-heading { display:block; margin-bottom:28px; padding:0 6vw; }.client-marquee-heading h2 { font-size:clamp(26px,7.2vw,34px); }.client-marquee-heading > p { margin-top:20px; }.client-marquee-viewport { -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }.client-marquee-track { animation-duration:28s; }.client-logo-card { width:154px; height:94px; border-radius:15px; }.client-logo-card img { max-height:45px; } }
.scroll-letter-reveal { perspective:900px; }
.scroll-word { display:inline-block; white-space:nowrap; }
.scroll-letter { display:inline-block; opacity:0; filter:blur(7px); transform:translate3d(0,.78em,0) rotateX(-62deg); transform-origin:50% 100%; will-change:opacity,filter,transform; transition:opacity .68s cubic-bezier(.16,1,.3,1),filter .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1); transition-delay:calc(var(--letter-index) * 16ms); }
.scroll-letter-reveal.is-scroll-visible .scroll-letter { opacity:1; filter:blur(0); transform:translate3d(0,0,0) rotateX(0); }
.scroll-reveal { opacity:0; filter:blur(12px); transform:translate3d(0,36px,0); will-change:opacity,filter,transform; transition:opacity .82s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1); transition-delay:var(--scroll-delay,0ms); }
.scroll-reveal.scroll-reveal-right { transform:translate3d(54px,0,0); }
.scroll-reveal.scroll-reveal-scale { transform:translate3d(0,24px,0) scale(.94); }
.scroll-reveal.is-scroll-visible { opacity:1; filter:blur(0); transform:translate3d(0,0,0) scale(1); }
.scroll-line-reveal { opacity:.25; transform:scaleX(0); transform-origin:left; transition:opacity .8s ease,transform 1.15s cubic-bezier(.16,1,.3,1); }
.scroll-line-reveal.is-scroll-visible { opacity:1; transform:scaleX(1); }
.service-item,.process-grid article,.project-card,.audience-grid article,.capture-steps > div { filter:blur(8px); transition:opacity .78s var(--reveal-delay) ease,filter .85s var(--reveal-delay) ease,transform .85s var(--reveal-delay) cubic-bezier(.16,1,.3,1); }
.is-visible { filter:blur(0)!important; }
@media (prefers-reduced-motion:reduce) { .scroll-letter { transition-duration:.75s!important; }.scroll-reveal { transition-duration:.9s!important; }.scroll-line-reveal { transition-duration:1.15s!important; }.service-item,.process-grid article,.project-card,.audience-grid article,.capture-steps > div { transition-duration:.85s!important; } }
@media (prefers-reduced-motion:reduce) { .client-heading-accent { animation-duration:2.4s!important; } }
@media (max-width:1100px) { .client-marquee-heading { display:block; }.client-marquee-heading > p { margin-top:20px; } }
@media (max-width:800px) { .scroll-reveal { transform:translate3d(0,24px,0); }.scroll-reveal.scroll-reveal-right { transform:translate3d(28px,0,0); }.scroll-reveal.scroll-reveal-scale { transform:translate3d(0,18px,0) scale(.96); }.scroll-reveal.is-scroll-visible { transform:translate3d(0,0,0) scale(1); }.scroll-letter { transform:translate3d(0,.55em,0) rotateX(-48deg); } }
.site-header { visibility:hidden; opacity:0; filter:blur(12px); transform:translate3d(-50%,-24px,0) scale(.97); pointer-events:none; will-change:opacity,filter,transform; transition:opacity .8s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),visibility 0s linear .9s; }
html.home-sequence-complete .site-header { visibility:visible; opacity:1; filter:blur(0); transform:translate3d(-50%,0,0) scale(1); pointer-events:auto; transition-delay:0s; }
@media (prefers-reduced-motion:reduce) { .site-header { transition-duration:.9s!important; } }
.traffic-strategy { position:relative; min-height:100svh; display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:5vw; align-items:center; overflow:hidden; padding:130px 5vw 110px 9vw; background:radial-gradient(circle at 88% 28%,rgba(17,137,199,.2),transparent 32%),linear-gradient(145deg,#070a12 0%,#0a101d 58%,#06111e 100%); isolation:isolate; }
.traffic-strategy::before { position:absolute; z-index:-1; top:10%; left:43%; width:1px; height:80%; background:linear-gradient(transparent,rgba(110,231,255,.3),transparent); content:""; }
.traffic-strategy::after { position:absolute; z-index:-1; right:-12vw; bottom:-28vw; width:55vw; height:55vw; border:1px solid rgba(110,231,255,.1); border-radius:50%; content:""; box-shadow:0 0 0 7vw rgba(17,137,199,.025),0 0 0 14vw rgba(17,137,199,.018); }
.traffic-copy { position:relative; z-index:2; }
.traffic-copy h2 { max-width:690px; margin:0; font:600 clamp(48px,5.5vw,86px)/.87 "Space Grotesk",sans-serif; letter-spacing:-.075em; text-transform:uppercase; }
.traffic-copy h2 em { color:#29c8ff; font-style:normal; text-shadow:0 0 22px rgba(17,137,199,.32); }
.traffic-lead { max-width:590px; margin:34px 0 0; color:#c2cad9; font-size:clamp(17px,1.45vw,22px); line-height:1.48; }
.traffic-lead strong { color:#fff; font-weight:600; }
.traffic-statements { display:grid; grid-template-columns:1fr 1fr; gap:16px; max-width:650px; margin-top:34px; }
.traffic-statements p { min-height:130px; margin:0; padding:20px 20px 20px 22px; border:1px solid rgba(174,235,255,.12); border-radius:16px; color:#909bad; background:rgba(255,255,255,.025); font-size:13px; line-height:1.65; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.traffic-statements p::before { display:block; width:28px; height:2px; margin-bottom:18px; background:linear-gradient(90deg,#1189c7,#6ee7ff); content:""; }
.traffic-statements strong { color:#dff8ff; font-weight:600; }
.traffic-cta-wrap { display:inline-block; margin-top:30px; }
.traffic-visual { --traffic-rx:0deg; --traffic-ry:0deg; position:relative; width:100%; margin:0; border-radius:28px; transform-style:preserve-3d; }
.traffic-image-shell { position:relative; aspect-ratio:16/9; overflow:hidden; border:1px solid rgba(174,235,255,.22); border-radius:28px; background:#07101a; box-shadow:0 36px 90px rgba(0,0,0,.44),0 0 70px rgba(17,137,199,.13); transform:perspective(1200px) rotateX(var(--traffic-rx)) rotateY(var(--traffic-ry)); transform-style:preserve-3d; transition:transform .28s ease-out,box-shadow .35s ease; }
.traffic-image-shell::before { position:absolute; z-index:2; inset:0; border-radius:inherit; background:linear-gradient(90deg,rgba(3,8,16,.2),transparent 25%,transparent 75%,rgba(3,8,16,.3)),linear-gradient(0deg,rgba(3,8,16,.62),transparent 35%); content:""; pointer-events:none; }
.traffic-image-shell::after { position:absolute; z-index:3; top:-20%; bottom:-20%; left:-55%; width:32%; background:linear-gradient(105deg,transparent,rgba(134,226,255,.48),transparent); filter:blur(16px); opacity:0; content:""; transform:skewX(-14deg); pointer-events:none; }
.traffic-image-shell img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.traffic-visual figcaption { position:absolute; z-index:4; right:18px; bottom:18px; left:18px; display:flex; gap:20px; align-items:center; justify-content:space-between; padding:13px 16px; border:1px solid rgba(174,235,255,.18); border-radius:14px; color:#dff8ff; background:rgba(4,13,25,.62); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); }
.traffic-visual figcaption span { color:#68dcff; font:500 9px "DM Mono",monospace; letter-spacing:.13em; text-transform:uppercase; }
.traffic-visual figcaption strong { font-size:11px; font-weight:500; }
.traffic-visual.traffic-reveal-ready { opacity:0; transform:translate3d(70px,0,0) scale(.97); will-change:opacity,transform; transition:opacity .5s ease,transform 1.25s cubic-bezier(.16,1,.3,1); }
.traffic-visual.traffic-reveal-ready .traffic-image-shell { clip-path:inset(0 100% 0 0 round 28px); transition:clip-path 1.25s cubic-bezier(.16,1,.3,1),transform .28s ease-out,box-shadow .35s ease; }
.traffic-visual.traffic-reveal-ready .traffic-image-shell img { filter:blur(12px) saturate(.62); transform:scale(1.14); transition:filter 1.35s cubic-bezier(.16,1,.3,1) .12s,transform 1.55s cubic-bezier(.16,1,.3,1) .12s; }
.traffic-visual.traffic-reveal-ready figcaption { opacity:0; transform:translateY(18px); transition:opacity .55s ease .65s,transform .7s cubic-bezier(.16,1,.3,1) .65s; }
.traffic-visual.traffic-reveal-ready.is-scroll-visible { opacity:1; transform:translate3d(0,0,0) scale(1); }
.traffic-visual.traffic-reveal-ready.is-scroll-visible .traffic-image-shell { clip-path:inset(0 round 28px); }
.traffic-visual.traffic-reveal-ready.is-scroll-visible .traffic-image-shell img { filter:blur(0) saturate(1); transform:scale(1); }
.traffic-visual.traffic-reveal-ready.is-scroll-visible figcaption { opacity:1; transform:translateY(0); }
.traffic-visual.traffic-reveal-ready.is-scroll-visible .traffic-image-shell::after { animation:traffic-image-scan 1.7s cubic-bezier(.16,1,.3,1) .35s both; }
.traffic-visual:hover .traffic-image-shell { box-shadow:0 42px 110px rgba(0,0,0,.5),0 0 90px rgba(17,137,199,.2); }
@keyframes traffic-image-scan { 0% { left:-55%; opacity:0; } 24% { opacity:.72; } 100% { left:125%; opacity:0; } }
@media (prefers-reduced-motion:reduce) { .traffic-visual.traffic-reveal-ready { transition-duration:1.25s!important; }.traffic-visual.traffic-reveal-ready .traffic-image-shell { transition-duration:1.25s,.28s,.35s!important; }.traffic-visual.traffic-reveal-ready .traffic-image-shell img { transition-duration:1.55s!important; }.traffic-visual.traffic-reveal-ready figcaption { transition-duration:.7s!important; }.traffic-visual.traffic-reveal-ready.is-scroll-visible .traffic-image-shell::after { animation-duration:1.7s!important; } }
@media (max-width:1050px) { .traffic-strategy { min-height:auto; display:block; padding:110px 7vw 100px; }.traffic-strategy::before { display:none; }.traffic-copy h2 { max-width:820px; }.traffic-lead { max-width:700px; }.traffic-statements { max-width:760px; }.traffic-visual { max-width:900px; margin:58px auto 0; } }
@media (max-width:800px) { .traffic-strategy { padding:90px 6vw 82px; }.traffic-copy h2 { font-size:clamp(40px,12vw,64px); }.traffic-lead { margin-top:26px; font-size:16px; }.traffic-statements { grid-template-columns:1fr; gap:10px; margin-top:26px; }.traffic-statements p { min-height:auto; }.traffic-cta-wrap { margin-top:24px; }.traffic-visual { margin-top:42px; border-radius:18px; }.traffic-image-shell { border-radius:18px; }.traffic-visual figcaption { right:10px; bottom:10px; left:10px; display:block; padding:10px 12px; }.traffic-visual figcaption strong { display:block; margin-top:5px; }.traffic-visual.traffic-reveal-ready { transform:translate3d(35px,0,0) scale(.98); }.traffic-visual.traffic-reveal-ready .traffic-image-shell { clip-path:inset(0 100% 0 0 round 18px); }.traffic-visual.traffic-reveal-ready.is-scroll-visible .traffic-image-shell { clip-path:inset(0 round 18px); } }
.methodology { position:relative; min-height:100svh; overflow:hidden; padding:130px 9vw 115px; background:radial-gradient(circle at 18% 12%,rgba(82,115,255,.14),transparent 30%),linear-gradient(155deg,#111827,#0c1422 58%,#0a111d); isolation:isolate; }
.methodology::before { position:absolute; z-index:-2; inset:0; opacity:.22; background-image:linear-gradient(rgba(110,231,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(110,231,255,.055) 1px,transparent 1px); background-size:76px 76px; content:""; mask-image:linear-gradient(90deg,#000,transparent 80%); }
.methodology::after { position:absolute; z-index:-1; top:-27vw; right:-12vw; width:55vw; height:55vw; border:1px solid rgba(110,231,255,.1); border-radius:50%; content:""; box-shadow:0 0 0 7vw rgba(17,137,199,.025),0 0 0 14vw rgba(17,137,199,.018); }
.methodology-heading { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:6vw; align-items:end; }
.methodology-heading h2 { max-width:820px; margin:0; font:600 clamp(50px,6.4vw,98px)/.86 "Space Grotesk",sans-serif; letter-spacing:-.08em; text-transform:uppercase; }
.methodology-heading h2 em { color:#29c8ff; font-style:normal; text-shadow:0 0 24px rgba(17,137,199,.4); }
.methodology-equation { margin:0 0 8px; color:#c6d0df; font:500 clamp(13px,1.3vw,18px)/1.6 "DM Mono",monospace; letter-spacing:.03em; text-transform:uppercase; }
.methodology-equation span { color:#57d9ff; text-shadow:0 0 12px rgba(41,200,255,.55); }
.methodology-monogram { position:absolute; z-index:-1; top:70px; right:7vw; display:flex; gap:.03em; color:transparent; -webkit-text-stroke:1px rgba(110,231,255,.09); font:700 clamp(150px,22vw,380px)/1 "Space Grotesk",sans-serif; letter-spacing:-.13em; pointer-events:none; }
.methodology-monogram span { animation:methodology-letter-pulse 4.5s ease-in-out infinite; }
.methodology-monogram span:nth-child(2) { animation-delay:.35s; }
.methodology-monogram span:nth-child(3) { animation-delay:.7s; }
.methodology-grid { position:relative; z-index:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:78px; }
.methodology-grid::before { position:absolute; z-index:-1; top:58px; right:8%; left:8%; height:1px; background:linear-gradient(90deg,transparent,#1189c7 18%,#6ee7ff 50%,#1189c7 82%,transparent); content:""; box-shadow:0 0 14px rgba(41,200,255,.32); }
.methodology-grid article { --reveal-delay:0ms; position:relative; min-height:350px; overflow:hidden; padding:28px; border:1px solid rgba(174,235,255,.13); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.022)); opacity:0; filter:blur(8px); transform:translateY(30px); transition:opacity .8s var(--reveal-delay) ease,filter .85s var(--reveal-delay) ease,transform .85s var(--reveal-delay) cubic-bezier(.16,1,.3,1),border-color .35s ease,background .35s ease,box-shadow .35s ease; }
.methodology-grid article::before { position:absolute; right:-8px; bottom:-42px; color:rgba(110,231,255,.045); content:attr(data-dev); font:700 210px/1 "Space Grotesk",sans-serif; letter-spacing:-.12em; transition:color .4s ease,transform .55s cubic-bezier(.16,1,.3,1); }
.methodology-grid article::after { position:absolute; top:-35%; bottom:-35%; left:-55%; width:32%; background:linear-gradient(105deg,transparent,rgba(133,226,255,.18),transparent); content:""; transform:skewX(-14deg); transition:left .8s cubic-bezier(.16,1,.3,1); pointer-events:none; }
.methodology-card-index { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; margin-bottom:62px; }
.methodology-card-index span { color:#7f8da3; font:10px "DM Mono",monospace; letter-spacing:.12em; }
.methodology-card-index b { display:grid; width:56px; height:56px; place-items:center; border:1px solid rgba(87,217,255,.45); border-radius:50%; color:#67ddff; background:rgba(17,137,199,.09); box-shadow:0 0 28px rgba(17,137,199,.12); font:600 25px "Space Grotesk",sans-serif; }
.methodology-grid h3 { position:relative; z-index:1; max-width:330px; margin:0 0 18px; font:500 clamp(25px,2.3vw,36px)/.98 "Space Grotesk",sans-serif; letter-spacing:-.055em; text-transform:uppercase; }
.methodology-grid p { position:relative; z-index:1; max-width:390px; margin:0; color:#929db0; font-size:13px; line-height:1.68; }
.methodology-grid article.is-visible:hover { z-index:3; border-color:rgba(87,217,255,.48); background:linear-gradient(145deg,rgba(17,137,199,.16),rgba(255,255,255,.035)); box-shadow:0 24px 60px rgba(0,0,0,.3),0 0 55px rgba(17,137,199,.1); transform:translateY(-8px)!important; }
.methodology-grid article:hover::before { color:rgba(110,231,255,.09); transform:scale(1.06); }
.methodology-grid article:hover::after { left:125%; }
.methodology-cta-wrap { position:relative; z-index:2; display:flex; justify-content:center; margin-top:52px; }
.methodology-cta-wrap .button { width:min(100%,430px); }
@keyframes methodology-letter-pulse { 0%,100% { opacity:.45; filter:blur(0); } 50% { opacity:1; filter:drop-shadow(0 0 18px rgba(41,200,255,.18)); } }
@media (prefers-reduced-motion:reduce) { .methodology-monogram span { animation-duration:4.5s!important; }.methodology-grid article { transition-duration:.85s!important; } }
@media (max-width:1000px) { .methodology { min-height:auto; padding:110px 7vw 100px; }.methodology-heading { display:block; }.methodology-equation { margin-top:28px; }.methodology-grid { grid-template-columns:1fr; gap:12px; margin-top:58px; }.methodology-grid::before { display:none; }.methodology-grid article { min-height:auto; }.methodology-card-index { margin-bottom:40px; }.methodology-monogram { top:115px; right:4vw; opacity:.55; } }
@media (max-width:800px) { .methodology { padding:90px 6vw 82px; }.methodology-heading h2 { font-size:clamp(43px,13vw,67px); }.methodology-equation { font-size:12px; }.methodology-monogram { top:145px; font-size:43vw; }.methodology-grid { margin-top:45px; }.methodology-grid article { padding:23px; border-radius:17px; }.methodology-card-index { margin-bottom:30px; }.methodology-card-index b { width:48px; height:48px; font-size:21px; }.methodology-grid h3 { font-size:27px; }.methodology-cta-wrap { margin-top:38px; }.methodology-cta-wrap .button { gap:18px; font-size:9px; } }
.methodology { background-image:linear-gradient(90deg,rgba(6,11,19,.97) 0%,rgba(7,14,24,.87) 42%,rgba(5,12,21,.48) 100%),linear-gradient(0deg,rgba(7,13,23,.94) 0%,rgba(7,13,23,.34) 64%,rgba(7,13,23,.2) 100%),url("imagem3.webp"); background-position:center; background-size:cover; background-repeat:no-repeat; }
.methodology-grid article { background:linear-gradient(145deg,rgba(9,22,39,.86),rgba(7,15,27,.72)); -webkit-backdrop-filter:blur(14px) saturate(120%); backdrop-filter:blur(14px) saturate(120%); }
.methodology-grid article.is-visible:hover { background:linear-gradient(145deg,rgba(11,57,88,.82),rgba(7,20,35,.76)); }
@media (max-width:800px) { .methodology { background-image:linear-gradient(90deg,rgba(6,11,19,.96),rgba(7,14,24,.76)),linear-gradient(0deg,rgba(7,13,23,.96),rgba(7,13,23,.36)),url("imagem3.webp"); background-position:66% center; }.methodology-grid article { background:linear-gradient(145deg,rgba(9,22,39,.9),rgba(7,15,27,.82)); } }
.capture { position:relative; min-height:100svh; overflow:hidden; background-color:#050b13; background-image:linear-gradient(90deg,rgba(4,9,16,.08) 0%,rgba(5,11,19,.16) 34%,rgba(5,12,22,.84) 57%,rgba(5,11,20,.97) 100%),linear-gradient(0deg,rgba(5,10,18,.86),transparent 52%),url("fundo4.webp"); background-position:center,center,center; background-size:100% 100%,100% 100%,94% auto; background-repeat:no-repeat; isolation:isolate; }
.capture-spacer { min-height:600px; }
.capture-signal { position:absolute; z-index:3; top:18%; right:2vw; width:72px; height:64%; pointer-events:none; }
.capture-signal::before { position:absolute; top:0; right:8px; bottom:0; width:1px; background:linear-gradient(transparent,rgba(110,231,255,.62) 14%,rgba(17,137,199,.34) 86%,transparent); content:""; box-shadow:0 0 14px rgba(41,200,255,.22); }
.capture-signal::after { position:absolute; top:5%; right:5px; width:7px; height:48px; border-radius:999px; background:linear-gradient(transparent,#74e7ff,transparent); opacity:0; filter:blur(1px); content:""; box-shadow:0 0 18px rgba(73,213,255,.72); }
.capture-signal span { position:absolute; right:8px; width:48px; height:1px; background:linear-gradient(90deg,transparent,rgba(110,231,255,.82)); opacity:.25; transform:scaleX(.4); transform-origin:right; transition:opacity .55s ease,transform .75s cubic-bezier(.16,1,.3,1); }
.capture-signal span::before { position:absolute; top:50%; right:-3px; width:7px; height:7px; border:1px solid #6ee7ff; border-radius:50%; background:#07101c; content:""; transform:translateY(-50%); box-shadow:0 0 16px rgba(110,231,255,.68); }
.capture-signal span:nth-child(1) { top:18%; }
.capture-signal span:nth-child(2) { top:50%; transition-delay:.14s; }
.capture-signal span:nth-child(3) { top:82%; transition-delay:.28s; }
.capture-signal small { position:absolute; top:50%; left:0; color:#65d9ff; font:9px "DM Mono",monospace; letter-spacing:.16em; white-space:nowrap; text-transform:uppercase; writing-mode:vertical-rl; transform:translateY(-50%) rotate(180deg); }
.capture-signal.is-scroll-visible span { opacity:1; transform:scaleX(1); }
.capture-signal.is-scroll-visible::after { animation:capture-signal-scan 3.2s cubic-bezier(.45,0,.55,1) infinite; }
.capture-content { position:relative; z-index:2; padding:38px; border:1px solid rgba(174,235,255,.13); border-radius:22px; background:linear-gradient(145deg,rgba(7,18,32,.78),rgba(5,12,22,.66)); box-shadow:0 30px 80px rgba(0,0,0,.28); -webkit-backdrop-filter:blur(18px) saturate(120%); backdrop-filter:blur(18px) saturate(120%); }
@keyframes capture-signal-scan { 0% { top:4%; opacity:0; } 16%,84% { opacity:1; } 100% { top:88%; opacity:0; } }
@media (prefers-reduced-motion:reduce) { .capture-signal span { transition-duration:.75s!important; }.capture-signal.is-scroll-visible::after { animation-duration:3.2s!important; } }
@media (max-width:1050px) and (min-width:801px) { .capture { grid-template-columns:.85fr 1.15fr; gap:4vw; padding-right:6vw; padding-left:6vw; }.capture-content { padding:30px; } }
@media (max-width:800px) { .capture { min-height:auto; padding:0 6vw 82px; background-image:linear-gradient(0deg,#07101c 0%,rgba(7,16,28,.9) 40%,rgba(5,11,19,.12) 70%),linear-gradient(90deg,rgba(4,9,16,.08),rgba(5,12,22,.32)),url("fundo4.webp"); background-position:center,center,34% 0; background-size:100% 100%,100% 100%,auto 52vh; background-repeat:no-repeat; }.capture-spacer { min-height:52vh; }.capture-signal { top:5vh; right:4vw; width:58px; height:40vh; }.capture-signal span { width:38px; }.capture-signal small { font-size:8px; }.capture-content { padding:24px; border-radius:18px; background:linear-gradient(145deg,rgba(7,18,32,.9),rgba(5,12,22,.84)); }.capture-content > p { margin-bottom:34px; }.capture-steps { grid-template-columns:1fr; gap:22px; } }
.projects-heading { align-items:flex-start; gap:clamp(40px,8vw,130px); margin-bottom:44px; }
.projects-heading h2 { flex:1 1 auto; }
.positioning-copy,.audience-grid { position:relative; z-index:8; }
@media (max-width:1050px) and (min-width:801px) { .projects-heading { gap:4vw; } }
@media (max-width:800px) { .projects-heading { margin-bottom:38px; } }
.projects { position:relative; overflow:hidden; padding-top:145px; padding-bottom:190px; color:#f2f6ff; background:#07101d; isolation:isolate; }
.projects::before { position:absolute; z-index:0; top:0; right:0; left:0; height:clamp(760px,78vw,980px); background:url("projetos-fundo.webp") 50% top/100% auto no-repeat; filter:saturate(.82) contrast(1.04); content:""; }
.projects::after { position:absolute; z-index:0; inset:0; background:linear-gradient(180deg,rgba(4,9,17,.18) 0%,rgba(5,11,21,.56) 36%,#07101d 68%,#07101d 100%),linear-gradient(90deg,rgba(4,9,17,.9) 0%,rgba(4,10,19,.62) 45%,rgba(4,10,19,.25) 100%); content:""; pointer-events:none; }
.projects-heading,.project-grid { position:relative; z-index:2; }
.projects .projects-heading { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr); gap:clamp(40px,8vw,130px); align-items:end; margin-bottom:78px; }
.projects-heading h2 { color:#f7f9ff; text-shadow:0 8px 34px rgba(0,0,0,.32); }
.projects-heading h2 em { color:#62dcff; text-shadow:0 0 28px rgba(41,200,255,.3); }
.projects-heading p { color:#aab6c9; }
.projects-graphics { position:absolute; z-index:1; inset:0; overflow:hidden; pointer-events:none; }
.projects-graphics::before { position:absolute; inset:0; opacity:.22; background-image:linear-gradient(rgba(109,219,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(109,219,255,.08) 1px,transparent 1px); background-size:82px 82px; content:""; -webkit-mask-image:linear-gradient(180deg,#000,transparent 68%); mask-image:linear-gradient(180deg,#000,transparent 68%); }
.projects-graphics > strong { position:absolute; top:70px; right:7vw; color:transparent; -webkit-text-stroke:1px rgba(111,224,255,.14); font:700 clamp(150px,20vw,330px)/.75 "Space Grotesk",sans-serif; letter-spacing:-.12em; }
.projects-graphics > small { position:absolute; top:116px; right:8vw; color:rgba(158,225,247,.55); font:9px "DM Mono",monospace; letter-spacing:.18em; writing-mode:vertical-rl; }
.projects-graphic-orbit { position:absolute; top:54px; right:-120px; width:min(47vw,680px); aspect-ratio:1; border:1px solid rgba(103,220,255,.14); border-radius:50%; box-shadow:0 0 0 6vw rgba(65,190,244,.025),0 0 0 12vw rgba(65,190,244,.018); transform:rotate(-14deg) skewX(-8deg); }
.projects-graphic-orbit::before { position:absolute; inset:18%; border:1px dashed rgba(103,220,255,.17); border-radius:50%; content:""; }
.projects-graphic-axis { position:absolute; top:128px; bottom:160px; left:calc(9vw - 28px); width:1px; background:linear-gradient(transparent,rgba(99,218,255,.36) 18%,rgba(99,218,255,.08) 76%,transparent); }
.projects-graphic-axis::before,.projects-graphic-axis::after { position:absolute; left:50%; width:7px; height:7px; border:1px solid rgba(103,220,255,.58); border-radius:50%; background:#07101d; content:""; transform:translateX(-50%); box-shadow:0 0 13px rgba(82,216,255,.32); }
.projects-graphic-axis::before { top:18%; }
.projects-graphic-axis::after { top:63%; }
.projects .project-grid { display:grid; grid-template-columns:1.06fr 1fr .96fr; gap:18px; align-items:start; }
.project-card { --project-accent:#65dcff; position:relative; min-height:clamp(510px,45vw,680px); display:block; overflow:hidden; border:1px solid rgba(191,235,255,.18); border-radius:22px; color:#fff; background:#0b1725; box-shadow:0 30px 70px rgba(0,0,0,.28); opacity:0; filter:blur(8px); transform:translateY(22px); isolation:isolate; transition:opacity .78s var(--reveal-delay) ease,filter .85s var(--reveal-delay) ease,transform .85s var(--reveal-delay) cubic-bezier(.16,1,.3,1),border-color .35s ease,box-shadow .35s ease; }
.project-card:nth-child(1) { --project-accent:#ff9d55; }
.project-card:nth-child(2) { --project-accent:#bde6d1; margin-top:68px; }
.project-card:nth-child(3) { --project-accent:#69baff; margin-top:18px; }
.project-card::before { position:absolute; z-index:2; inset:0; background:linear-gradient(180deg,rgba(2,7,13,.1) 0%,transparent 38%,rgba(3,8,15,.3) 58%,rgba(3,8,15,.96) 100%); content:""; }
.project-card::after { position:absolute; z-index:3; inset:0; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.13),transparent 28%,transparent 72%,rgba(110,231,255,.08)); content:""; pointer-events:none; }
.project-card img { position:absolute; z-index:1; inset:0; display:block; width:100%; height:100%; object-fit:cover; transition:filter .6s ease,transform .8s cubic-bezier(.16,1,.3,1); }
.project-card:nth-child(1) img { object-position:50% 54%; }
.project-card:nth-child(2) img { object-position:50% 47%; }
.project-card:nth-child(3) img { object-position:50% 43%; }
.project-card-top { position:absolute; z-index:4; top:22px; right:22px; left:22px; display:flex; gap:12px; align-items:center; justify-content:space-between; }
.project-card-top span { display:grid; width:42px; height:42px; place-items:center; border:1px solid rgba(255,255,255,.38); border-radius:50%; color:#fff; background:rgba(4,11,20,.28); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); font:10px "DM Mono",monospace; box-shadow:inset 0 1px 0 rgba(255,255,255,.14); }
.project-card-top small { padding:8px 10px; border:1px solid rgba(255,255,255,.28); border-radius:999px; color:#eefaff; background:rgba(4,11,20,.3); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); font:9px "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.project-card-copy { position:absolute; z-index:4; right:26px; bottom:28px; left:26px; }
.project-card-copy::before { display:block; width:42px; height:2px; margin-bottom:17px; background:var(--project-accent); box-shadow:0 0 14px color-mix(in srgb,var(--project-accent) 55%,transparent); content:""; }
.project-card-copy small { display:block; margin-bottom:9px; color:#c6d2e2; font:9px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.project-card-copy strong { display:block; max-width:95%; font:600 clamp(27px,2.6vw,40px)/.92 "Space Grotesk",sans-serif; letter-spacing:-.065em; text-transform:uppercase; }
@media (hover:hover) { .project-card.is-visible:hover { border-color:color-mix(in srgb,var(--project-accent) 58%,transparent); box-shadow:0 38px 90px rgba(0,0,0,.42),0 0 50px color-mix(in srgb,var(--project-accent) 12%,transparent); }.project-card:hover img { filter:saturate(1.08) contrast(1.03); transform:scale(1.055); } }
@media (max-width:1050px) and (min-width:801px) { .projects { padding-right:6vw; padding-left:6vw; }.projects::before { background-size:auto 760px; }.projects .projects-heading { gap:4vw; }.projects .project-grid { gap:12px; }.project-card { min-height:570px; }.project-card-copy { right:20px; bottom:23px; left:20px; }.project-card-copy strong { font-size:29px; }.projects-graphic-axis { left:calc(6vw - 18px); } }
@media (max-width:800px) { .projects { padding:92px 6vw 108px; }.projects::before { height:720px; background-position:51% top; background-size:auto 720px; }.projects::after { background:linear-gradient(180deg,rgba(4,9,17,.24) 0%,rgba(5,11,21,.68) 34%,#07101d 62%,#07101d 100%),linear-gradient(90deg,rgba(4,9,17,.82),rgba(4,10,19,.3)); }.projects .projects-heading { display:block; margin-bottom:46px; }.projects-heading p { max-width:430px; margin-top:28px; }.projects-graphics > strong { top:52px; right:-3vw; font-size:42vw; }.projects-graphics > small { top:78px; right:4vw; }.projects-graphic-orbit { top:26px; right:-58vw; width:115vw; }.projects-graphic-axis { display:none; }.projects-graphics::before { background-size:58px 58px; }.projects .project-grid { grid-template-columns:1fr; gap:16px; }.project-card,.project-card:nth-child(2),.project-card:nth-child(3) { min-height:clamp(500px,132vw,650px); margin-top:0; }.project-card { border-radius:18px; }.project-card-top { top:17px; right:17px; left:17px; }.project-card-copy { right:21px; bottom:23px; left:21px; }.project-card-copy strong { font-size:clamp(29px,9vw,42px); } }
.contact { position:relative; min-height:100svh; grid-template-columns:minmax(0,.72fr) minmax(480px,1.28fr); gap:clamp(45px,7vw,120px); align-items:center; overflow:hidden; background-color:#030914; background-image:linear-gradient(90deg,rgba(2,7,14,.98) 0%,rgba(3,10,20,.9) 34%,rgba(3,10,20,.48) 68%,rgba(2,7,14,.24) 100%),linear-gradient(180deg,rgba(2,7,14,.16),rgba(2,8,16,.45)),url("contato-fundo.webp"); background-position:center; background-size:cover; isolation:isolate; }
.contact::before { position:absolute; z-index:0; inset:0; opacity:.24; background-image:linear-gradient(rgba(95,210,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(95,210,255,.055) 1px,transparent 1px); background-size:76px 76px; content:""; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,#000,transparent 76%); mask-image:linear-gradient(90deg,#000,transparent 76%); }
.contact::after { position:absolute; z-index:0; right:-22vw; bottom:-48vw; width:78vw; aspect-ratio:1; border:1px solid rgba(95,210,255,.08); border-radius:50%; content:""; box-shadow:0 0 0 8vw rgba(45,172,235,.018),0 0 0 16vw rgba(45,172,235,.012); pointer-events:none; }
.contact-heading,.contact-form { position:relative; z-index:3; }
.contact-heading { max-width:560px; }
.contact-heading h2 { color:#f7faff; text-shadow:0 12px 42px rgba(0,0,0,.44); }
.contact-heading h2 em { color:#64ddff; text-shadow:0 0 28px rgba(41,200,255,.35); }
.contact-heading > p { color:#a9b9cc; }
.contact-form { padding:clamp(27px,3vw,46px); border:1px solid rgba(164,226,255,.2); border-radius:26px; background:linear-gradient(145deg,rgba(5,16,31,.92),rgba(4,12,25,.82)); box-shadow:0 34px 90px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08),0 0 70px rgba(17,137,199,.08); }
.contact-form::before { position:absolute; top:-1px; left:10%; width:28%; height:1px; background:linear-gradient(90deg,transparent,#65ddff,transparent); content:""; box-shadow:0 0 16px rgba(101,221,255,.48); }
.contact-form-channel { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; margin-bottom:5px; padding-bottom:18px; border-bottom:1px solid rgba(164,226,255,.12); color:#7391ab; font:9px "DM Mono",monospace; letter-spacing:.14em; text-transform:uppercase; }
.contact-form-channel span { display:flex; gap:9px; align-items:center; }
.contact-form-channel i { width:7px; height:7px; border:1px solid #65ddff; border-radius:50%; background:rgba(101,221,255,.22); box-shadow:0 0 12px rgba(101,221,255,.68); animation:contact-channel-pulse 1.8s ease-in-out infinite; animation-play-state:paused; }
.contact-form-channel b { color:#a8dff1; font-weight:400; }
.contact-form label,.contact-form legend { color:#9fb1c5; }
.contact-form input { border-bottom-color:rgba(164,226,255,.16); }
.contact-form input::placeholder { color:#617083; }
.contact-form input:focus { border-color:#62dcff; box-shadow:0 8px 16px -15px rgba(98,220,255,.9); }
.contact-form .service-options label { border-color:rgba(164,226,255,.14); border-radius:10px; background:rgba(255,255,255,.025); }
.contact-form .service-options label:has(input:checked) { border-color:#62dcff; color:#effbff; background:rgba(17,137,199,.16); box-shadow:0 0 20px rgba(17,137,199,.1); }
.contact-form .button { box-shadow:0 16px 34px rgba(37,120,255,.2); }
.contact-motion { position:absolute; z-index:1; inset:0; overflow:hidden; pointer-events:none; }
.contact-motion > strong { position:absolute; left:5vw; bottom:3vw; color:transparent; -webkit-text-stroke:1px rgba(105,218,255,.09); font:700 clamp(170px,24vw,410px)/.72 "Space Grotesk",sans-serif; letter-spacing:-.12em; }
.contact-motion > small { position:absolute; right:3.4vw; top:50%; color:rgba(139,213,239,.5); font:9px "DM Mono",monospace; letter-spacing:.18em; writing-mode:vertical-rl; transform:translateY(-50%); }
.contact-motion-orbit { position:absolute; top:50%; aspect-ratio:1; transform:translateY(-50%); }
.contact-motion-orbit > i { position:absolute; inset:0; display:block; border-radius:50%; animation:contact-orbit-spin 18s linear infinite; animation-play-state:paused; }
.contact-motion-orbit > i::before { position:absolute; top:50%; left:-5px; width:9px; height:9px; border:1px solid #6ee7ff; border-radius:50%; background:#04101e; content:""; box-shadow:0 0 8px #6ee7ff,0 0 22px rgba(51,198,255,.7); transform:translateY(-50%); }
.contact-motion-orbit-outer { right:-10vw; width:min(62vw,930px); }
.contact-motion-orbit-outer > i { border:1px dashed rgba(108,220,255,.25); box-shadow:inset 0 0 55px rgba(17,137,199,.035); }
.contact-motion-orbit-inner { right:1vw; width:min(43vw,650px); }
.contact-motion-orbit-inner > i { border:1px solid rgba(145,230,255,.2); animation-duration:12s; animation-direction:reverse; }
.contact-motion-orbit-inner > i::after { position:absolute; inset:16%; border:1px dashed rgba(102,205,255,.14); border-radius:50%; content:""; }
.contact-motion-trace { position:absolute; top:68%; right:-4%; left:31%; height:1px; overflow:hidden; background:linear-gradient(90deg,transparent,rgba(95,214,255,.16) 20%,rgba(95,214,255,.42) 72%,transparent); transform:rotate(-8deg); transform-origin:right; }
.contact-motion-trace::after { position:absolute; top:0; left:-18%; width:18%; height:1px; background:linear-gradient(90deg,transparent,#9aeeff); content:""; box-shadow:0 0 9px #67dcff,0 0 22px rgba(82,205,255,.72); animation:contact-signal-travel 4.8s cubic-bezier(.45,0,.55,1) infinite; animation-play-state:paused; }
.contact-motion-core { position:absolute; top:50%; right:14.5vw; width:12px; height:12px; border:1px solid rgba(154,238,255,.9); border-radius:50%; opacity:.6; box-shadow:0 0 14px #67dcff,0 0 38px rgba(37,160,255,.75); transform:translate(50%,-50%); animation:contact-core-breathe 2.6s ease-in-out infinite; animation-play-state:paused; }
.contact.is-contact-active .contact-motion-orbit > i,.contact.is-contact-active .contact-motion-trace::after,.contact.is-contact-active .contact-motion-core,.contact.is-contact-active .contact-form-channel i { animation-play-state:running; }
.contact:focus-within .contact-motion-orbit-outer > i { border-color:rgba(133,233,255,.48); box-shadow:inset 0 0 80px rgba(17,137,199,.07),0 0 42px rgba(17,137,199,.08); }
.contact:focus-within .contact-motion-core { opacity:1; box-shadow:0 0 18px #8cedff,0 0 54px rgba(37,160,255,.9); }
.contact:focus-within .contact-motion-trace { background:linear-gradient(90deg,transparent,rgba(95,214,255,.25) 20%,rgba(95,214,255,.62) 72%,transparent); }
@keyframes contact-orbit-spin { to { transform:rotate(360deg); } }
@keyframes contact-signal-travel { 0% { opacity:0; transform:translateX(0); } 14%,78% { opacity:1; } 100% { opacity:0; transform:translateX(660%); } }
@keyframes contact-core-breathe { 0%,100% { opacity:.38; transform:translate(50%,-50%) scale(.72); } 50% { opacity:1; transform:translate(50%,-50%) scale(1.7); } }
@keyframes contact-channel-pulse { 0%,100% { opacity:.45; transform:scale(.8); } 50% { opacity:1; transform:scale(1.18); } }
@media (max-width:1050px) and (min-width:801px) { .contact { grid-template-columns:minmax(0,.75fr) minmax(430px,1.25fr); gap:4vw; padding-right:6vw; padding-left:6vw; }.contact-motion-orbit-outer { right:-20vw; width:78vw; }.contact-motion-orbit-inner { right:-6vw; width:54vw; }.contact-motion-core { right:14vw; } }
@media (max-width:800px) { .contact { min-height:auto; display:block; padding:92px 6vw 96px; background-image:linear-gradient(180deg,rgba(2,7,14,.42) 0%,rgba(3,10,20,.76) 38%,#030914 66%,#030914 100%),linear-gradient(90deg,rgba(2,7,14,.74),rgba(3,10,20,.22)),url("contato-fundo.webp"); background-position:center,center,82% top; background-size:100% 100%,100% 100%,auto 700px; background-repeat:no-repeat; }.contact-heading { max-width:500px; }.contact-heading > p { margin-top:28px; }.contact-form { margin-top:46px; padding:24px 20px; border-radius:20px; }.contact-form-channel { margin-bottom:1px; }.contact-motion > strong { left:-5vw; bottom:1vw; font-size:58vw; }.contact-motion > small { top:165px; right:4vw; }.contact-motion-orbit-outer { top:235px; right:-69vw; width:138vw; }.contact-motion-orbit-inner { top:235px; right:-43vw; width:96vw; }.contact-motion-core { top:235px; right:4vw; }.contact-motion-trace { top:430px; left:8%; }.contact::before { background-size:58px 58px; -webkit-mask-image:linear-gradient(180deg,#000,transparent 58%); mask-image:linear-gradient(180deg,#000,transparent 58%); }.contact::after { right:-72vw; bottom:-18vw; width:150vw; } }
@media (prefers-reduced-motion:reduce) { .contact-motion-orbit > i,.contact-motion-trace::after,.contact-motion-core,.contact-form-channel i { animation:none!important; }.contact-motion-trace::after { display:none; }.contact-motion-core { opacity:.65; transform:translate(50%,-50%); } }
.positioning { position:relative; min-height:100svh; align-items:center; overflow:hidden; background:radial-gradient(circle at 18% 48%,rgba(22,133,199,.17),transparent 30%),radial-gradient(circle at 82% 34%,rgba(82,115,255,.11),transparent 32%),linear-gradient(145deg,#070b13 0%,#09111d 56%,#06101b 100%); isolation:isolate; }
.positioning::before { position:absolute; z-index:0; inset:0; opacity:.34; background-image:linear-gradient(rgba(105,218,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(105,218,255,.055) 1px,transparent 1px); background-size:74px 74px; content:""; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.78) 54%,transparent 92%); mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.78) 54%,transparent 92%); }
.positioning::after { position:absolute; z-index:0; top:-24vw; left:-15vw; width:58vw; aspect-ratio:1; border:1px solid rgba(101,220,255,.08); border-radius:50%; content:""; box-shadow:0 0 0 7vw rgba(28,154,218,.018),0 0 0 14vw rgba(28,154,218,.012); pointer-events:none; }
.positioning-copy,.positioning .audience-grid { position:relative; z-index:8; }
.positioning-copy h2 { color:#f6f9ff; text-shadow:0 10px 38px rgba(0,0,0,.38); }
.positioning-copy h2 em { color:#62dcff; font-style:normal; text-shadow:0 0 26px rgba(41,200,255,.3); }
.positioning-copy > p { color:#99a8bb; }
.positioning .audience-grid > p { padding:0 0 24px 24px; border-left:1px solid rgba(100,218,255,.36); color:#d1dae8; }
.positioning .audience-grid article { position:relative; overflow:hidden; border-color:rgba(164,226,255,.14); border-radius:17px; background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015)); box-shadow:inset 0 1px 0 rgba(255,255,255,.045); }
.positioning .audience-grid article::before { position:absolute; right:-32px; bottom:-65px; width:150px; aspect-ratio:1; border:1px solid rgba(102,218,255,.08); border-radius:50%; content:""; box-shadow:0 0 0 24px rgba(65,185,235,.018),0 0 0 48px rgba(65,185,235,.012); transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .35s ease; }
.positioning .audience-grid article::after { position:absolute; top:-30%; bottom:-30%; left:-55%; width:28%; background:linear-gradient(105deg,transparent,rgba(132,229,255,.13),transparent); content:""; transform:skewX(-14deg); transition:left .8s cubic-bezier(.16,1,.3,1); pointer-events:none; }
.positioning .audience-grid article span,.positioning .audience-grid article h3,.positioning .audience-grid article p { position:relative; z-index:1; }
@media (hover:hover) { .positioning .audience-grid article.is-visible:hover { border-color:rgba(101,220,255,.38); background:linear-gradient(145deg,rgba(17,137,199,.13),rgba(255,255,255,.025)); box-shadow:0 22px 50px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.07); }.positioning .audience-grid article:hover::before { border-color:rgba(102,218,255,.18); transform:scale(1.12); }.positioning .audience-grid article:hover::after { left:125%; } }
.positioning-graphics { position:absolute; z-index:1; inset:0; overflow:hidden; pointer-events:none; }
.positioning-graphics > strong { position:absolute; top:4vw; right:4vw; color:transparent; -webkit-text-stroke:1px rgba(111,224,255,.1); font:700 clamp(180px,25vw,420px)/.74 "Space Grotesk",sans-serif; letter-spacing:-.12em; }
.positioning-graphics > small { position:absolute; right:3vw; bottom:10%; color:rgba(143,214,239,.47); font:9px "DM Mono",monospace; letter-spacing:.18em; writing-mode:vertical-rl; }
.positioning-radar { position:absolute; top:50%; right:3vw; width:min(46vw,670px); aspect-ratio:1; border:1px solid rgba(104,220,255,.14); border-radius:50%; transform:translateY(-50%); }
.positioning-radar::before,.positioning-radar::after { position:absolute; border-radius:50%; content:""; }
.positioning-radar::before { inset:17%; border:1px dashed rgba(104,220,255,.17); }
.positioning-radar::after { inset:38%; border:1px solid rgba(123,227,255,.25); box-shadow:0 0 34px rgba(41,200,255,.08); }
.positioning-radar > i { position:absolute; inset:43%; border:1px solid rgba(118,229,255,.66); border-radius:50%; box-shadow:0 0 12px rgba(95,218,255,.44); animation:positioning-radar-ping 3.4s cubic-bezier(.22,.61,.36,1) infinite; animation-play-state:paused; }
.positioning-route { position:absolute; top:66%; right:27%; left:-4%; height:1px; background:linear-gradient(90deg,transparent,rgba(95,214,255,.19) 13%,rgba(95,214,255,.54) 69%,transparent); transform:rotate(-8deg); transform-origin:right; }
.positioning-route::after { position:absolute; top:0; left:-16%; width:16%; height:1px; background:linear-gradient(90deg,transparent,#a1efff); content:""; box-shadow:0 0 8px #67dcff,0 0 20px rgba(82,205,255,.7); animation:positioning-route-travel 5.2s cubic-bezier(.45,0,.55,1) infinite; animation-play-state:paused; }
.positioning-route > i { position:absolute; top:50%; width:9px; height:9px; border:1px solid rgba(117,229,255,.72); border-radius:50%; background:#07101b; box-shadow:0 0 12px rgba(82,216,255,.42); transform:translate(-50%,-50%); }
.positioning-route > i:nth-child(1) { left:26%; }
.positioning-route > i:nth-child(2) { left:58%; }
.positioning-route > i:nth-child(3) { left:84%; }
.positioning.is-positioning-active .positioning-radar > i,.positioning.is-positioning-active .positioning-route::after { animation-play-state:running; }
@keyframes positioning-radar-ping { 0% { opacity:.8; transform:scale(.35); } 72%,100% { opacity:0; transform:scale(7.4); } }
@keyframes positioning-route-travel { 0% { opacity:0; transform:translateX(0); } 14%,78% { opacity:1; } 100% { opacity:0; transform:translateX(720%); } }
@media (max-width:1050px) and (min-width:801px) { .positioning { gap:5vw; padding-right:6vw; padding-left:6vw; }.positioning-radar { right:-14vw; width:62vw; }.positioning-route { right:18%; }.positioning-graphics > strong { right:-2vw; } }
@media (max-width:800px) { .positioning { min-height:auto; display:block; padding:96px 6vw 104px; background:radial-gradient(circle at 82% 30%,rgba(82,115,255,.15),transparent 28%),radial-gradient(circle at 10% 20%,rgba(22,133,199,.16),transparent 30%),linear-gradient(155deg,#070b13,#08121f 58%,#06101b); }.positioning::before { background-size:58px 58px; -webkit-mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.7) 60%,transparent); mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.7) 60%,transparent); }.positioning::after { top:-45vw; left:-58vw; width:135vw; }.positioning .audience-grid { grid-template-columns:1fr; gap:11px; margin-top:60px; }.positioning .audience-grid > p { margin-bottom:24px; padding:0 0 21px 17px; }.positioning .audience-grid article { min-height:auto; padding:24px; }.positioning-radar { top:30%; right:-65vw; width:138vw; }.positioning-route { top:46%; right:-8%; left:-24%; }.positioning-graphics > strong { top:auto; right:-8vw; bottom:3vw; font-size:58vw; }.positioning-graphics > small { display:none; } }
@media (prefers-reduced-motion:reduce) { .positioning-radar > i,.positioning-route::after { animation:none!important; }.positioning-route::after { display:none; } }
.hero-socials { --social-light-travel:128px; position:absolute; z-index:5; top:50%; right:clamp(16px,2.6vw,42px); display:grid; gap:13px; padding:17px 0; visibility:hidden; opacity:0; filter:blur(8px); transform:translate3d(18px,-50%,0); pointer-events:none; transition:visibility 0s linear .8s,opacity .7s cubic-bezier(.16,1,.3,1),filter .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1); }
.hero-socials::before { position:absolute; z-index:-1; top:-25px; bottom:-25px; left:50%; width:1px; background:linear-gradient(transparent,rgba(104,220,255,.15) 18%,rgba(104,220,255,.42) 50%,rgba(104,220,255,.15) 82%,transparent); content:""; transform:translateX(-50%); }
.hero-socials::after { position:absolute; z-index:2; top:-22px; left:50%; width:3px; height:20px; border-radius:999px; opacity:0; background:linear-gradient(transparent,#a9f2ff,transparent); content:""; box-shadow:0 0 8px #6ee7ff,0 0 20px rgba(70,199,255,.82); transform:translate3d(-50%,0,0); animation:hero-social-light 3.4s cubic-bezier(.45,0,.55,1) infinite; animation-play-state:paused; pointer-events:none; }
html.home-sequence-complete .hero-socials { visibility:visible; opacity:1; filter:blur(0); transform:translate3d(0,-50%,0); pointer-events:auto; transition-delay:.18s; }
html.home-sequence-complete .home-sequence.is-home-visible .hero-socials::after { opacity:1; animation-play-state:running; }
.hero-socials a { position:relative; display:grid; width:41px; aspect-ratio:1; place-items:center; border:1px solid rgba(136,225,255,.18); border-radius:50%; color:#8cdff7; background:rgba(4,13,25,.48); box-shadow:inset 0 1px 0 rgba(255,255,255,.07); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); transition:color .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease,transform .3s cubic-bezier(.16,1,.3,1); }
.hero-socials a::before { position:absolute; inset:5px; border:1px solid rgba(110,231,255,.08); border-radius:50%; opacity:.55; content:""; transition:opacity .3s ease,transform .3s ease; }
.hero-socials svg { display:block; width:17px; height:17px; }
.hero-socials a:first-child svg { fill:currentColor; }
.hero-socials a:last-child svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.hero-socials .hero-social-dot { fill:currentColor; stroke:none; }
@media (hover:hover) { .hero-socials a:hover { color:#effdff; border-color:rgba(143,234,255,.62); background:rgba(17,137,199,.18); box-shadow:0 0 18px rgba(74,207,255,.32),inset 0 0 14px rgba(110,231,255,.08); transform:scale(1.08); }.hero-socials a:hover::before { opacity:1; transform:scale(.78); } }
.hero-socials a:focus-visible { outline:1px solid #8cecff; outline-offset:4px; }
@keyframes hero-social-light { 0% { opacity:0; transform:translate3d(-50%,0,0); } 14%,84% { opacity:1; } 100% { opacity:0; transform:translate3d(-50%,var(--social-light-travel),0); } }
@media (max-width:800px) { .hero-socials { --social-light-travel:111px; top:auto; right:10px; bottom:24px; gap:10px; padding:13px 0; transform:translate3d(14px,0,0); }.hero-socials a { width:37px; }.hero-socials svg { width:16px; height:16px; } html.home-sequence-complete .hero-socials { transform:translate3d(0,0,0); } }
@media (prefers-reduced-motion:reduce) { .hero-socials::after { top:50%; height:12px; animation:none!important; opacity:.7; transform:translate(-50%,-50%); } }
.contact { background-image:linear-gradient(90deg,rgba(2,7,14,.98) 0%,rgba(3,10,20,.91) 34%,rgba(3,10,20,.66) 68%,rgba(2,7,14,.54) 100%),linear-gradient(180deg,rgba(2,7,14,.22),rgba(2,8,16,.58)),url("contato-fundo.webp"); }
.faq { position:relative; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:clamp(55px,8vw,130px); align-items:start; overflow:hidden; isolation:isolate; }
.faq-heading { position:relative; min-width:0; }
.faq-model-stage { position:relative; z-index:1; width:min(100%,440px); aspect-ratio:1; margin:clamp(44px,5vw,72px) 0 18px; opacity:0; filter:blur(14px); transform:translate3d(-5%,24px,0) scale(.88); transform-origin:center; pointer-events:none; isolation:isolate; transition:opacity 1.1s ease,filter 1.2s ease,transform 1.35s cubic-bezier(.16,1,.3,1); }
.faq-model-stage::before { position:absolute; z-index:0; inset:7%; border:1px solid rgba(29,171,225,.24); border-radius:50%; background:radial-gradient(circle at 47% 42%,#123652 0%,#0a2036 38%,#061321 66%,#030a12 100%); box-shadow:0 28px 70px rgba(4,35,60,.26),0 0 0 1px rgba(255,255,255,.22) inset,0 0 65px rgba(17,137,199,.16); content:""; }
.faq.is-faq-model-active .faq-model-stage { opacity:1; filter:blur(0); transform:translate3d(0,0,0) scale(1); }
.faq-model-aura { position:absolute; z-index:1; inset:4%; border-radius:50%; opacity:.72; background:radial-gradient(circle,rgba(143,234,255,.32) 0%,rgba(38,174,235,.2) 24%,rgba(71,99,255,.12) 45%,transparent 70%); filter:blur(20px) saturate(130%); animation:faq-model-aura-pulse 3.2s ease-in-out infinite; animation-play-state:paused; }
.faq-model-aura::after { position:absolute; inset:26%; border:1px solid rgba(118,225,255,.28); border-radius:50%; content:""; box-shadow:0 0 35px rgba(74,207,255,.4),inset 0 0 28px rgba(82,115,255,.22); }
.faq-model-viewer { position:absolute; z-index:3; inset:11%; display:block; width:78%; height:78%; border:0; outline:0; opacity:0; filter:drop-shadow(0 0 14px rgba(65,192,246,.58)) drop-shadow(0 0 38px rgba(37,122,255,.24)); pointer-events:none; --poster-color:transparent; --progress-bar-height:0px; transition:opacity .7s ease; }
.faq-model-viewer::part(default-progress-bar) { display:none; }
.faq-model-stage.is-model-loaded .faq-model-viewer { opacity:.94; }
.faq-model-orbit { position:absolute; z-index:2; top:50%; left:50%; display:block; width:104%; aspect-ratio:1; border:1px solid rgba(17,137,199,.32); border-radius:50%; transform-origin:center; }
.faq-model-orbit > i { position:absolute; inset:-1px; display:block; border-radius:50%; animation:faq-model-orbit-spin 9s linear infinite; animation-play-state:paused; }
.faq-model-orbit > i::before,.faq-model-orbit > i::after { position:absolute; top:50%; border-radius:50%; background:#d9faff; content:""; box-shadow:0 0 8px #38c9ee,0 0 24px rgba(17,137,199,.9); }
.faq-model-orbit > i::before { left:-5px; width:10px; height:10px; transform:translateY(-50%) scaleY(2.4); }
.faq-model-orbit > i::after { right:11%; width:5px; height:5px; opacity:.72; transform:translateY(-50%) scaleY(2.4); }
.faq-model-orbit-one { transform:translate(-50%,-50%) rotate(16deg) scaleY(.42); }
.faq-model-orbit-two { width:92%; border-style:dashed; border-color:rgba(17,137,199,.28); transform:translate(-50%,-50%) rotate(74deg) scaleY(.34); }
.faq-model-orbit-two > i { animation-duration:6.8s; animation-direction:reverse; }
.faq-model-orbit-two > i::before,.faq-model-orbit-two > i::after { transform:translateY(-50%) scaleY(2.9); }
.faq-model-orbit-three { z-index:4; width:84%; border-color:rgba(41,200,255,.25); transform:translate(-50%,-50%) rotate(-43deg) scaleY(.29); }
.faq-model-orbit-three > i { animation-duration:11.5s; }
.faq-model-orbit-three > i::before,.faq-model-orbit-three > i::after { transform:translateY(-50%) scaleY(3.45); }
.faq-model-particles { position:absolute; inset:0; display:block; pointer-events:none; }
.faq-model-particles-back { z-index:1; }
.faq-model-particles-front { z-index:5; }
.faq-model-particle { position:absolute; top:50%; left:50%; display:block; width:var(--particle-size); height:var(--particle-size); border-radius:50%; opacity:0; background:#48c8ed; box-shadow:0 0 7px #38c9ee,0 0 16px rgba(17,137,199,.72); animation:faq-model-particle-orbit var(--particle-duration) cubic-bezier(.45,0,.55,1) infinite; animation-delay:var(--particle-delay); animation-play-state:paused; will-change:transform,opacity; }
.faq-model-particles-front .faq-model-particle { background:#eafcff; box-shadow:0 0 8px #5ed9f8,0 0 22px rgba(17,137,199,.86); }
.faq.is-faq-model-active .faq-model-aura,.faq.is-faq-model-active .faq-model-orbit > i,.faq.is-faq-model-active .faq-model-particle { animation-play-state:running; }
.faq:not(.is-faq-model-active) .faq-model-aura,.faq:not(.is-faq-model-active) .faq-model-orbit > i,.faq:not(.is-faq-model-active) .faq-model-particle { animation-play-state:paused!important; }
.faq-model-loading { position:absolute; z-index:6; top:50%; left:50%; display:flex; align-items:center; gap:7px; color:#72ddff; white-space:nowrap; text-shadow:0 0 12px rgba(17,137,199,.55); transform:translate(-50%,-50%); transition:opacity .3s ease,visibility .3s ease; }
.faq-model-loading i { width:20px; height:20px; border:1px solid rgba(110,231,255,.24); border-top-color:#6ee7ff; border-radius:50%; animation:faq-model-loading-spin 1s linear infinite; }
.faq-model-loading span,.faq-model-loading b { display:none; font:500 8px "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.faq-model-stage.is-model-loaded .faq-model-loading { visibility:hidden; opacity:0; }
.faq-model-stage.has-model-error .faq-model-loading i { border-color:rgba(255,117,117,.28); border-top-color:#ff7575; animation:none; }
.faq-model-stage.has-model-error .faq-model-loading b { color:#ff8f8f; }
@keyframes faq-model-loading-spin { to { transform:rotate(360deg); } }
@keyframes faq-model-aura-pulse { 0%,100% { opacity:.5; transform:scale(.92); } 50% { opacity:.9; transform:scale(1.08); } }
@keyframes faq-model-orbit-spin { to { transform:rotate(360deg); } }
@keyframes faq-model-particle-orbit { 0% { opacity:0; transform:rotate(var(--particle-angle-start)) translate3d(var(--particle-radius),0,0) scale(.25); } 18%,70% { opacity:var(--particle-opacity); } 52% { transform:rotate(var(--particle-angle-mid)) translate3d(var(--particle-radius),0,0) scale(1); } 100% { opacity:0; transform:rotate(var(--particle-angle-end)) translate3d(var(--particle-radius),0,0) scale(.2); } }
@media (max-width:1050px) and (min-width:801px) { .faq { gap:5vw; padding-right:6vw; padding-left:6vw; }.faq-model-stage { width:min(100%,380px); margin-top:50px; } }
@media (max-width:800px) { .faq { overflow:hidden; }.faq-model-stage { width:min(84vw,340px); margin:42px 0 55px; }.faq-model-viewer { inset:13%; width:74%; height:74%; }.faq-list { margin-top:0; } }
@media (prefers-reduced-motion:reduce) { .faq-model-aura,.faq-model-orbit > i,.faq-model-particle { animation:none!important; }.faq-model-particles { display:none; }.faq-model-aura { opacity:.7; transform:none; } }
.results-wall { --dw-tile-w:220px; --dw-tile-h:292px; --dw-gap:18px; position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; padding:130px 8vw; background:radial-gradient(circle at 76% 45%,rgba(18,135,194,.16),transparent 36%),linear-gradient(135deg,#03070e 0%,#07101d 52%,#040914 100%); isolation:isolate; }
.results-wall::before { position:absolute; z-index:2; inset:0; background:linear-gradient(90deg,#040912 0%,rgba(4,9,18,.97) 24%,rgba(4,9,18,.78) 42%,rgba(4,9,18,.18) 70%,rgba(4,9,18,.48) 100%); content:""; pointer-events:none; }
.results-wall::after { position:absolute; z-index:2; inset:0; background:linear-gradient(180deg,#060d18 0%,transparent 16%,transparent 82%,#050b15 100%),radial-gradient(ellipse at center,transparent 48%,rgba(2,6,12,.62) 100%); content:""; pointer-events:none; }
.results-wall-copy { position:relative; z-index:4; width:min(47vw,650px); opacity:0; filter:blur(12px); transform:translate3d(-36px,0,0); transition:opacity .9s ease,filter 1s ease,transform 1.15s cubic-bezier(.16,1,.3,1); }
.results-wall.is-drift-active .results-wall-copy { opacity:1; filter:blur(0); transform:translate3d(0,0,0); }
.results-wall-kicker { display:flex; gap:10px; align-items:center; margin:0 0 28px; color:#78dffb; font:500 10px "DM Mono",monospace; letter-spacing:.16em; text-transform:uppercase; }
.results-wall-kicker i { width:28px; height:1px; background:linear-gradient(90deg,#1189c7,#78e4ff); box-shadow:0 0 11px rgba(52,202,243,.6); }
.results-wall-kicker span { color:#597589; }
.results-wall h2 { max-width:700px; margin:0; color:#f5f9ff; font:600 clamp(52px,6.2vw,96px)/.86 "Space Grotesk",sans-serif; letter-spacing:-.075em; text-transform:uppercase; text-shadow:0 16px 52px rgba(0,0,0,.48); }
.results-wall h2 em { color:#58d7fb; font-style:normal; text-shadow:0 0 28px rgba(41,200,255,.32); }
.results-wall-copy > p:last-child { max-width:460px; margin:34px 0 0; color:#9aabba; font-size:14px; line-height:1.7; }
.results-wall-meta { position:absolute; z-index:4; right:3vw; bottom:30px; display:flex; gap:16px; align-items:center; color:#6f8798; font:9px "DM Mono",monospace; letter-spacing:.14em; text-transform:uppercase; writing-mode:vertical-rl; }
.results-wall-meta b { color:#65daf9; font-weight:500; }
.drift-wall { position:absolute; z-index:1; inset:-12%; overflow:hidden; opacity:0; filter:blur(14px); perspective:1200px; transform:scale(.96); transition:opacity 1.1s ease,filter 1.2s ease,transform 1.4s cubic-bezier(.16,1,.3,1); -webkit-mask-image:linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent); mask-image:linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent); }
.results-wall.is-drift-active .drift-wall { opacity:.92; filter:blur(0); transform:scale(1); }
.drift-wall__plane { position:absolute; top:50%; left:66%; display:flex; gap:var(--dw-gap); width:max-content; height:145%; transform-style:preserve-3d; will-change:transform; }
.drift-wall__col { position:relative; width:var(--dw-tile-w); height:100%; flex:0 0 var(--dw-tile-w); overflow:hidden; transform-style:preserve-3d; }
.drift-wall__track { position:absolute; top:0; left:0; display:flex; flex-direction:column; gap:var(--dw-gap); width:100%; will-change:transform; }
.drift-wall__tile { position:relative; width:var(--dw-tile-w); height:var(--dw-tile-h); display:block; flex:0 0 var(--dw-tile-h); overflow:hidden; border:1px solid rgba(149,224,250,.18); border-radius:16px; background:#07101a; box-shadow:0 22px 48px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.08); opacity:.58; filter:grayscale(.18) brightness(.72); transform:translateZ(0); transform-style:preserve-3d; transition:opacity .35s ease,filter .35s ease,border-color .35s ease,box-shadow .35s ease; }
.drift-wall__tile::after { position:absolute; inset:0; border-radius:inherit; background:linear-gradient(135deg,rgba(117,220,255,.12),transparent 28%,transparent 68%,rgba(36,116,255,.1)); content:""; pointer-events:none; }
.drift-wall__tile img { display:block; width:100%; height:100%; object-fit:cover; object-position:top center; transform:scale(1.001); transition:transform .5s cubic-bezier(.16,1,.3,1); }
.drift-wall.has-hover .drift-wall__tile:not(.is-active) { opacity:.32; filter:grayscale(.7) brightness(.5); }
.drift-wall__tile.is-active { z-index:3; border-color:rgba(103,221,255,.72); opacity:1; filter:grayscale(0) brightness(1.05); box-shadow:0 28px 68px rgba(0,0,0,.52),0 0 36px rgba(34,174,226,.25),inset 0 1px 0 rgba(255,255,255,.16); }
.drift-wall__tile.is-active img { transform:scale(1.035); }
@media (max-width:1050px) and (min-width:801px) { .results-wall { --dw-tile-w:190px; --dw-tile-h:260px; --dw-gap:15px; padding-right:6vw; padding-left:6vw; }.results-wall-copy { width:min(49vw,540px); }.drift-wall__plane { left:70%; }.results-wall h2 { font-size:clamp(52px,7vw,74px); } }
@media (max-width:800px) { .results-wall { --dw-tile-w:150px; --dw-tile-h:215px; --dw-gap:12px; min-height:980px; display:block; padding:88px 6vw 70px; }.results-wall::before { background:linear-gradient(180deg,#040912 0%,rgba(4,9,18,.96) 23%,rgba(4,9,18,.48) 46%,rgba(4,9,18,.16) 72%,rgba(4,9,18,.74) 100%); }.results-wall-copy { width:100%; }.results-wall-kicker { margin-bottom:22px; font-size:9px; }.results-wall h2 { max-width:520px; font-size:clamp(45px,13vw,66px); }.results-wall-copy > p:last-child { max-width:370px; margin-top:25px; font-size:13px; }.drift-wall { inset:245px -24% -9%; perspective:900px; -webkit-mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent); }.drift-wall__plane { top:53%; left:50%; height:138%; }.drift-wall__tile { border-radius:13px; }.results-wall-meta { right:13px; bottom:24px; } }
@media (prefers-reduced-motion:reduce) { .drift-wall__plane { will-change:auto; }.drift-wall__track { will-change:auto; }.drift-wall__tile,.drift-wall__tile img { transition:none!important; }.drift-wall__tile.is-active img { transform:none; } }
.client-heading-accent,.client-marquee-track,.methodology-monogram span,.capture-signal.is-scroll-visible::after,.faq-model-loading i { animation-play-state:paused; }
.client-marquee-track,.drift-wall__plane,.drift-wall__track,.faq-model-particle,.hero-project-button { will-change:auto; }
.client-marquee.is-runtime-active .client-heading-accent,.client-marquee.is-runtime-active .client-marquee-track,.methodology.is-runtime-active .methodology-monogram span,.capture.is-runtime-active .capture-signal.is-scroll-visible::after,.faq.is-faq-model-active .faq-model-stage.is-model-loading .faq-model-loading i { animation-play-state:running; }
.client-marquee.is-runtime-active .client-marquee-viewport:hover .client-marquee-track { animation-play-state:paused; }
.client-marquee.is-runtime-active .client-marquee-track,.results-wall.is-drift-active .drift-wall__plane,.results-wall.is-drift-active .drift-wall__track,.faq.is-faq-model-active .faq-model-particle { will-change:transform; }
.faq.is-faq-model-active .faq-model-particle { will-change:transform,opacity; }
.scroll-letter-reveal.is-reveal-settled .scroll-letter,.scroll-reveal.is-reveal-settled,.traffic-visual.is-reveal-settled,html.home-sequence-settled .site-header,html.home-sequence-settled .home-frame,html.home-sequence-settled .home-final-image { will-change:auto; }
