@font-face{font-family:Satoshi;src:local("Satoshi"),local("Satoshi Variable");font-display:swap}
:root{--black:#050505;--white:#f5f5f2;--muted:#9b9b96;--line:rgba(255,255,255,.14);--titanium:#bfc3c7}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{margin:0;font-family:Satoshi,Inter,Helvetica,Arial,sans-serif;background:radial-gradient(circle at 50% 0%,#161616 0%,#050505 42%,#000 100%);color:var(--white);overflow-x:hidden}a{color:inherit;text-decoration:none}.section{min-height:100vh;position:relative;display:grid;place-items:center;padding:9vw 6vw}
.topbar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:26px 34px;background:linear-gradient(to bottom,rgba(0,0,0,.7),transparent)}
.brand-mini{display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:.35em;color:rgba(255,255,255,.82)}.mini-rings{position:relative;width:34px;height:18px;display:inline-block}.mini-rings span,.insignia span{position:absolute;border:1.7px solid var(--white);border-radius:50%;width:18px;height:18px}.mini-rings span:first-child,.insignia span:first-child{left:0}.mini-rings span:last-child,.insignia span:last-child{left:13px}.lang{display:flex;gap:10px}.lang button{background:transparent;border:0;color:rgba(255,255,255,.52);font-size:11px;letter-spacing:.22em;cursor:pointer;padding:8px}.lang button.active{color:#fff;border-bottom:1px solid #fff}.cursor-orbit{position:fixed;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:50%;pointer-events:none;z-index:50;transform:translate(-50%,-50%);display:none}@media(pointer:fine){.cursor-orbit{display:block}}
.hero{overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.08),transparent 33%);opacity:.65}.orbital-loader{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;gap:18px;animation:loaderFade 3.3s ease forwards;z-index:1}.orbital-loader span{width:90px;height:90px;border:2px solid rgba(255,255,255,.8);border-radius:50%;animation:merge 2.8s cubic-bezier(.7,0,.2,1) forwards}.orbital-loader span:first-child{transform:translateX(-70px)}.orbital-loader span:last-child{transform:translateX(70px)}@keyframes merge{60%{transform:translateX(0)}100%{transform:translateX(0);opacity:0}}@keyframes loaderFade{0%,72%{opacity:1}100%{opacity:0;visibility:hidden}}.hero-inner{text-align:center;position:relative;z-index:2;animation:heroIn 3.8s ease forwards;opacity:0}@keyframes heroIn{70%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}.logo{width:min(560px,82vw);margin-bottom:30px}.tagline{font-size:14px;letter-spacing:.36em;text-transform:uppercase;color:var(--muted);margin:0 0 36px}h1{font-size:clamp(35px,6.3vw,92px);line-height:.98;letter-spacing:-.055em;font-weight:500;margin:0 auto;max-width:1000px}.scroll-link{display:inline-grid;place-items:center;width:54px;height:54px;border:1px solid var(--line);border-radius:50%;margin-top:48px;color:var(--muted);font-size:25px}
.manifesto{overflow:hidden;background:#050505}.statement{text-align:center;z-index:2}.statement p{font-size:clamp(36px,7vw,112px);line-height:.92;letter-spacing:-.06em;margin:.12em 0;font-weight:500}.circle-mask{position:absolute;width:42vw;height:42vw;border:1px solid rgba(255,255,255,.09);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.035),transparent 65%)}.circle-left{left:-10vw;top:16vh}.circle-right{right:-8vw;bottom:12vh}
.cinematic-image{padding:0;overflow:hidden;background:#000}.cinematic-image img{width:100%;height:100vh;object-fit:cover;opacity:.68;filter:grayscale(10%) contrast(1.08)}.cinematic-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.66),transparent 42%,rgba(0,0,0,.45))}.image-caption{position:absolute;left:7vw;bottom:9vh;max-width:620px;z-index:2}.insignia{position:relative;display:block;width:42px;height:24px;margin-bottom:24px}.image-caption p{font-size:clamp(26px,4.5vw,64px);line-height:1;letter-spacing:-.055em;margin:0}
.craft{display:block;padding-top:15vh;background:linear-gradient(#050505,#090909)}.section-title{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.38em;margin-bottom:10vh;text-align:center}.service{min-height:82vh;border-top:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;gap:5vw;align-items:center}.service:last-child{border-bottom:1px solid var(--line)}.service-copy{display:grid;gap:22px}.service-number{color:var(--muted);letter-spacing:.25em}.service h2{font-size:clamp(46px,10vw,140px);letter-spacing:-.07em;font-weight:500;margin:0;text-transform:uppercase}.service p{font-size:clamp(22px,3.3vw,46px);line-height:1.05;letter-spacing:-.04em;margin:0;color:#e9e9e6;max-width:640px}.service img{width:100%;height:60vh;object-fit:cover;border-radius:40px;border:1px solid var(--line);filter:contrast(1.05);box-shadow:0 30px 90px rgba(0,0,0,.45)}.service:nth-of-type(odd) img{order:-1}.ai-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.ai-pills span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line);border-radius:999px;padding:10px 14px;color:var(--titanium)}
.details{display:block;padding-top:14vh;background:#060606}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:min(1320px,92vw);margin:auto}.details-grid img{width:100%;height:32vh;object-fit:cover;border-radius:28px;border:1px solid var(--line);opacity:.88;filter:contrast(1.07)}
.showreel{text-align:center;background:#060606}.showreel h2{font-size:clamp(46px,9vw,130px);font-weight:500;letter-spacing:-.07em;margin:0 0 38px;text-transform:uppercase}.video-wrap{width:min(1100px,88vw);aspect-ratio:16/9;border-radius:50px;overflow:hidden;border:1px solid var(--line);box-shadow:0 30px 100px rgba(0,0,0,.65)}.video-wrap iframe{width:100%;height:100%}
.why{background:#090909}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;width:min(1200px,90vw);border:1px solid var(--line);background:var(--line)}.why-grid div{background:#080808;padding:44px 34px;min-height:230px}.why-grid span{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--titanium)}.why-grid p{font-size:24px;line-height:1.15;letter-spacing:-.04em;margin:26px 0 0;color:#eee}
.contact{text-align:center;background:radial-gradient(circle at 50% 35%,#151515,#030303 62%)}.footer-logo{width:min(430px,78vw);margin-bottom:24px}.contact-lines{display:grid;gap:14px;color:var(--muted);font-size:17px;margin-top:40px}.contact-lines a:hover{color:#fff}footer{display:flex;justify-content:space-between;padding:24px 34px;border-top:1px solid var(--line);color:rgba(255,255,255,.45);font-size:11px;letter-spacing:.24em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(30px);transition:opacity 1.1s ease,transform 1.1s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:850px){.topbar{padding:18px}.brand-mini span:last-child{display:none}.section{padding:18vh 22px}.logo{width:92vw}.tagline{font-size:11px;letter-spacing:.24em}.service{grid-template-columns:1fr;gap:24px;padding:70px 0;min-height:0}.service img,.service:nth-of-type(odd) img{order:0;height:36vh;border-radius:24px}.service h2{font-size:54px}.service p{font-size:27px}.details-grid{grid-template-columns:1fr}.details-grid img{height:30vh}.why-grid{grid-template-columns:1fr}.image-caption{left:24px;right:24px}.video-wrap{border-radius:22px}footer{display:grid;gap:12px;text-align:center;justify-content:center}}

/* Final logo from approved model 5 */
.logo{object-fit:contain}.footer-logo{object-fit:contain}


/* Nueva home aprobada manteniendo el resto de la web */
.hero-approved {
  padding: 0 !important;
  min-height: 100vh;
  background: #050505;
  overflow: hidden;
}
.home-approved-img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  display: block;
}
.home-scroll {
  position: absolute;
  left: 50%;
  bottom: 28px;
  transform: translateX(-50%);
  z-index: 5;
  background: rgba(0,0,0,.25);
  backdrop-filter: blur(6px);
}
@media (max-width: 900px) {
  .home-approved-img {
    height: 100vh;
    object-fit: cover;
    object-position: center;
  }
}


/* Final showreel button on approved home */
.home-actions {
  position: absolute;
  left: 50%;
  bottom: 26px;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 18px;
}
.watch-showreel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  padding: 0 24px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  color: rgba(255,255,255,.88);
  background: rgba(0,0,0,.28);
  backdrop-filter: blur(8px);
  font-size: 11px;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.watch-showreel:hover {
  color: #fff;
  border-color: rgba(255,255,255,.52);
}
.home-actions .home-scroll {
  position: static;
  transform: none;
  margin: 0;
}
@media (max-width: 760px) {
  .home-actions {
    bottom: 18px;
    flex-direction: column;
    gap: 12px;
  }
  .watch-showreel {
    height: 46px;
    font-size: 10px;
    padding: 0 18px;
  }
}
