:root{--ink:#201b27;--paper:#f5f3ef;--purple:#713c97;--lavender:#ceace6;--night:#141019}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3{font-family:Syne,sans-serif;font-weight:500;line-height:1.06;letter-spacing:-.055em;margin:0}h1{font-size:clamp(58px,8.5vw,132px)}h2{font-size:clamp(36px,4.7vw,72px)}h3{font-size:28px;letter-spacing:-.035em}em{font-style:normal;color:var(--purple)}p{max-width:630px}header{position:absolute;top:0;left:0;width:100%;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:28px 4%;color:white;border:0;gap:30px}.brand{flex-shrink:0}nav{display:flex;gap:25px;align-items:center;font-size:13px}.small-cta{border:1px solid #ffffff60;border-radius:40px;padding:11px 19px}#menu-toggle{display:none}.hero{background:#18151f;position:relative;color:white;min-height:830px;overflow:hidden}.hero-back,.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#110d18cc,#110d1830),linear-gradient(0deg,#110d18dd,transparent)}.hero-inner{position:relative;z-index:1;padding:190px 6% 55px}.eyebrow{font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:600;margin:0 0 30px}.service-label{font-size:14px;margin:0 0 18px}.hero em{color:var(--lavender)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:46px;gap:25px}.hero-bottom p{max-width:560px;font-size:15px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:27px}.cta{display:inline-block;background:var(--purple);color:white;padding:15px 23px;border-radius:3px;font-size:13px;transition:background .2s}.cta:hover{background:#502969}.text-link{font-size:13px;border-bottom:1px solid;padding:8px 0;display:inline-block}#motion{background:transparent;border:1px solid #ffffff60;color:white;border-radius:25px;padding:10px 16px;font-size:11px;white-space:nowrap}.section{padding:100px 6%}.section-head{margin-bottom:55px}.section-head>p:last-child{margin-top:28px;color:#736a79;max-width:560px}.showcase{display:grid;grid-template-columns:1.55fr 1fr;gap:6%;align-items:center}.show-image{position:relative;background:#e9e5e9;padding:25px}.show-image img{width:100%;height:400px;object-fit:contain}.show-image>span{display:block;font-size:11px;margin-top:15px;color:#5b5262}.step{display:block;width:100%;background:none;border:0;border-top:1px solid #d6d0da;padding:24px 0;text-align:left;color:#746d79}.step small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.step strong{display:block;font-family:Syne;font-size:25px;font-weight:500;letter-spacing:-.035em;margin:7px 0}.step span{display:block;font-size:13px}.step.active{color:var(--purple)}.cinema{position:relative;min-height:620px;color:white;display:flex;align-items:end;isolation:isolate}.cinema>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.cinema:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111018da,transparent 90%);z-index:-1}.cinema>div{padding:70px 6%}.dashboard{text-align:center;background:radial-gradient(ellipse at 50% 40%,#422454,#141019 65%);color:#fff}.dashboard .section-head p{margin-left:auto;margin-right:auto;color:#c3b7cb}.dashboard em{color:var(--lavender)}.dashboard-visual{margin:0 auto 50px;max-width:1000px}.dashboard-visual img{width:100%;height:auto;border-radius:20px}.dashboard-visual figcaption{font-size:11px;color:#bcaec6;margin-top:15px}.features{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;gap:40px;max-width:1100px;margin:0 auto 40px}.features article{border-top:1px solid #ffffff30;padding-top:25px}.features span{font-size:11px;color:var(--lavender)}.features h3{font-size:25px;margin-top:14px}.features p{color:#bcaec6;font-size:14px}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 40px}.project:nth-child(even){padding-top:65px}.project img{width:100%;height:350px;object-fit:cover;transition:filter .3s}.project:hover img{filter:brightness(1.08)}.project>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.project h3{font-size:28px}.project span{font-size:11px;white-space:nowrap}.clients{margin-top:95px;padding-top:45px;border-top:1px solid #d6d0da}.logos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:30px;align-items:center}.logos img{width:100%;max-height:65px;object-fit:contain}.about{background:#eae5ee;display:grid;grid-template-columns:1fr 1fr;gap:9%}.about h2{font-size:clamp(34px,3.6vw,52px)}.about p{font-size:14px;color:#6b5d74}.faq h3{margin-bottom:25px}details{border-top:1px solid #c9bfce;padding:16px 0}summary{cursor:pointer;font-size:14px;padding-right:15px}details p{padding:0 15px;line-height:1.8}.contact{background:#382642;color:white}.contact h2{font-size:clamp(48px,7vw,110px)}.contact em{color:var(--lavender)}.contact-row{display:flex;justify-content:space-between;gap:60px;margin-top:30px}.contact-row p{max-width:460px;color:#d8c9e2}.contact .actions{align-items:start;flex-direction:column;margin-top:16px;gap:12px}.contact .cta{background:#eee5f4;color:#382642}footer{display:flex;justify-content:space-between;align-items:center;background:var(--night);color:#b5a9bd;padding:30px 6%;font-size:12px}.skip{position:absolute;top:-100px;left:10px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a771c7;outline-offset:5px}
@media(max-width:760px){header{padding:23px 6%}.brand img{width:145px;height:auto}#menu-toggle{display:block;background:none;border:0;color:white;font-size:14px}header nav{display:none;position:absolute;top:83px;left:0;width:100%;background:#201726;padding:25px 6%;flex-direction:column;align-items:start}header nav.open{display:flex}.hero{min-height:780px}.hero-inner{padding-top:170px}h1{font-size:clamp(53px,11vw,80px)}.hero-bottom{align-items:start;flex-direction:column;gap:30px}.hero-bottom p{font-size:14px}.section{padding:65px 6%}.showcase,.about{grid-template-columns:1fr;gap:35px}.show-image{padding:15px}.show-image img{height:260px}.cinema{min-height:480px}.cinema>div{padding:45px 6%}.features{grid-template-columns:1fr;gap:20px}.projects{gap:35px 20px}.project:nth-child(even){padding-top:0}.project img{height:220px}.project>div{align-items:start;flex-direction:column}.project h3{font-size:23px}.logos{grid-template-columns:repeat(3,1fr);gap:30px}.clients{margin-top:55px}.contact-row{flex-direction:column;gap:10px}footer{flex-wrap:wrap;gap:20px}.dashboard-visual{margin-left:-3%;margin-right:-3%}.dashboard-visual img{border-radius:8px}}
@media(max-width:440px){.projects{grid-template-columns:1fr}.project img{height:270px}.hero .actions{gap:14px}.eyebrow{font-size:10px}.features h3{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}body.paused{scroll-behavior:auto}

/* Comfortable tablet navigation and short landscape menus. */
@media (min-width:761px) and (max-width:1000px){
 header{padding:23px 6%}.brand img{width:145px;height:auto}
 #menu-toggle{display:block;background:none;border:0;color:white;font-size:14px;min-height:44px}
 header nav{display:none;position:absolute;top:100%;left:0;width:100%;background:#201726;padding:20px 6%;flex-direction:column;align-items:stretch;gap:12px}
 header nav.open{display:flex}
}
@media(max-width:1000px){header nav{max-height:calc(100dvh - 90px);overflow-y:auto}header nav a{padding-block:10px}#menu-toggle{min-width:64px;min-height:44px}}
.film-screen:focus-visible{outline:3px solid var(--purple);outline-offset:6px}

/* Clip fractional overflow of the full-bleed project strip, preserving sticky scroll. */
#proyectos{overflow-x:clip}
