/* Fany Calvo Postrería — Cinematic Responsive V9.3
   One cinematic experience, responsively composed for every viewport.
   Loaded last so these rules can adapt V9 without duplicating content. */

/* Repair coral logo rendering using the healthy white logo as an exact mask. */
body:not(.v9-cinematic) .nav.scrolled .brand-coral{opacity:0!important}
body:not(.v9-cinematic) .nav.scrolled .brand::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--coral);
  -webkit-mask:url('/assets/brand/logo-blanco.png') left center/contain no-repeat;
  mask:url('/assets/brand/logo-blanco.png') left center/contain no-repeat;
  pointer-events:none;
}
footer .footer-logo{display:none!important}
.footer-main::before{
  content:"";
  display:block;
  flex:0 0 auto;
  width:min(260px,55vw);
  aspect-ratio:10/3;
  background:var(--coral);
  -webkit-mask:url('/assets/brand/logo-blanco.png') left center/contain no-repeat;
  mask:url('/assets/brand/logo-blanco.png') left center/contain no-repeat;
}

@media(max-width:1179px){
  body.v9-cinematic .nav{padding:10px 0}
  body.v9-cinematic .nav.scrolled{padding:10px 0}
  body.v9-cinematic .nav-inner{
    width:calc(100% - 20px);
    padding:7px 9px 7px 12px;
    gap:10px;
    border-color:rgba(255,255,255,.18);
    background:rgba(27,20,21,.58);
    backdrop-filter:blur(16px);
  }
  body.v9-cinematic .brand{width:104px;height:36px}
  body.v9-cinematic .nav-links a:not(.nav-cta){display:none}
  body.v9-cinematic .nav-links{gap:0}
  body.v9-cinematic .nav-cta{white-space:nowrap;padding:9px 12px;font-size:.66rem}

  body.v9-cinematic .v9-stage{height:100svh;min-height:560px}

  /* HERO */
  body.v9-cinematic .v9-hero .hero-content{
    padding:0 7vw max(44px,7svh);
    align-items:flex-end;
  }
  body.v9-cinematic .v9-hero .hero-copy{max-width:88vw}
  body.v9-cinematic .v9-hero .hero h1{
    font-size:clamp(3.25rem,min(10.5vw,8.7svh),6rem);
    line-height:.9;
    max-width:820px;
  }
  body.v9-cinematic .v9-hero .hero-sub{
    max-width:620px;
    margin:18px 0 22px;
    font-size:.94rem;
    line-height:1.5;
  }
  .v9-scroll-cue{right:14px;bottom:16px}

  /* MANIFESTO */
  body.v9-cinematic .v9-philosophy .eyebrow{left:7vw;top:9svh}
  body.v9-cinematic .v9-philosophy .philosophy-title{
    left:7vw;
    top:48%;
    width:86vw;
    font-size:clamp(3.2rem,min(10vw,8svh),5.5rem);
    line-height:.84;
    z-index:7;
  }
  .v9-manifest-media{
    left:6vw;
    right:6vw;
    top:9svh;
    width:auto;
    height:76svh;
    border-radius:30px;
    opacity:.48;
  }
  .v9-manifest-media::after{
    background:linear-gradient(0deg,rgba(252,244,245,.74),rgba(252,244,245,.16) 55%,rgba(252,244,245,.38));
  }
  body.v9-cinematic .v9-philosophy .philosophy-copy{
    left:7vw;
    right:7vw;
    bottom:6svh;
    width:auto;
    max-width:680px;
    padding:20px 22px;
    border:1px solid rgba(183,95,100,.16);
    border-radius:22px;
    background:rgba(252,244,245,.88);
    backdrop-filter:blur(10px);
  }
  body.v9-cinematic .v9-philosophy .philosophy-copy>p{font-size:.9rem;line-height:1.5}
  body.v9-cinematic .v9-philosophy .brand-quote{font-size:clamp(1.45rem,4vw,2rem)}

  /* EXPERIENCES */
  body.v9-cinematic .v9-experiences .section-head{
    left:7vw;
    top:50%;
    width:86vw;
  }
  body.v9-cinematic .v9-experiences .section-head h2{
    font-size:clamp(3rem,min(9vw,7.4svh),5rem);
    line-height:.9;
  }
  body.v9-cinematic .v9-experiences .experience-media::after{
    background:linear-gradient(0deg,rgba(15,10,11,.96) 0%,rgba(15,10,11,.78) 36%,rgba(15,10,11,.16) 72%),linear-gradient(90deg,rgba(15,10,11,.12),rgba(15,10,11,.38));
  }
  body.v9-cinematic .v9-experiences .experience-copy{
    left:7vw;
    right:7vw;
    top:auto;
    bottom:7svh;
    width:auto;
    max-width:720px;
    transform:none;
  }
  body.v9-cinematic .v9-experiences .experience-num{
    font-size:clamp(4.4rem,min(14vw,12svh),7.5rem);
    margin:0 0 8px;
  }
  body.v9-cinematic .v9-experiences .experience h3{
    font-size:clamp(2.7rem,min(8.6vw,6.3svh),4.6rem);
    margin:0 0 12px;
  }
  body.v9-cinematic .v9-experiences .experience p{
    max-width:640px;
    font-size:.86rem;
    line-height:1.5;
  }
  body.v9-cinematic .v9-experiences .micro{font-size:.65rem;margin-top:14px;padding-top:11px}
  .v9-scene-count{right:14px;bottom:16px}

  /* MOMENTS */
  body.v9-cinematic .v9-moments .moment{display:block!important;border-radius:22px}
  body.v9-cinematic .v9-moments .moment:nth-child(1){left:5vw;top:12svh;width:52vw;height:59svh}
  body.v9-cinematic .v9-moments .moment:nth-child(2){left:24vw;top:20svh;width:52vw;height:61svh;margin:0}
  body.v9-cinematic .v9-moments .moment:nth-child(3){right:5vw;top:10svh;width:52vw;height:60svh}
  body.v9-cinematic .v9-moments .moments-copy{
    top:53%;
    width:88vw;
  }
  body.v9-cinematic .v9-moments .moments-copy h2{
    font-size:clamp(3rem,min(9vw,7svh),5rem);
    line-height:.9;
    margin-bottom:14px;
  }
  body.v9-cinematic .v9-moments .moments-copy p{max-width:620px;font-size:.86rem}

  /* FLAVOR */
  .v9-flavor-kicker{left:7vw;top:9svh}
  .v9-flavor-word{
    left:7vw;
    right:7vw;
    font-size:clamp(4rem,min(12vw,9.5svh),7.6rem);
    line-height:.78;
  }
  .v9-flavor-word small{font-size:.64rem;margin-top:16px;max-width:520px}
  .v9-flavor-count{right:7vw;bottom:6svh}

  /* HEIGHTS */
  body.v9-cinematic .v9-heights .section-head{
    left:7vw;
    top:50%;
    width:86vw;
  }
  body.v9-cinematic .v9-heights .section-head h2{
    font-size:clamp(3rem,min(9vw,7svh),5rem);
  }
  body.v9-cinematic .v9-heights .height-card{
    left:8vw;
    top:9svh;
    width:84vw;
    max-width:none;
    transform:translateY(22px) scale(.97);
  }
  body.v9-cinematic .v9-heights .height-card.is-active{transform:none}
  body.v9-cinematic .v9-heights .height-photo{
    width:min(54vw,410px);
    height:min(49svh,510px);
    margin:0 auto;
    aspect-ratio:auto;
    border-radius:24px;
  }
  body.v9-cinematic .v9-heights .height-meta{
    position:static;
    width:min(84vw,680px);
    margin:18px auto 0;
    transform:none;
    text-align:center;
  }
  body.v9-cinematic .v9-heights .height-index{display:block;margin-bottom:8px}
  body.v9-cinematic .v9-heights .height-meta h3{
    font-size:clamp(2.45rem,min(7vw,5.5svh),4rem);
    margin:0 0 10px;
  }
  body.v9-cinematic .v9-heights .height-meta p{font-size:.84rem;line-height:1.45}

  /* PROCESS */
  body.v9-cinematic .v9-process .section-head{
    left:7vw;
    top:50%;
    width:86vw;
  }
  body.v9-cinematic .v9-process .section-head h2{
    font-size:clamp(3rem,min(9vw,7svh),5rem);
  }
  body.v9-cinematic .v9-process .section-head>p{font-size:.9rem;line-height:1.5}
  body.v9-cinematic .v9-process .process-row{
    left:7vw;
    right:7vw;
  }
  body.v9-cinematic .v9-process .process-row h3{
    max-width:86vw;
    font-size:clamp(3.7rem,min(11vw,9svh),7rem);
    line-height:.79;
  }
  body.v9-cinematic .v9-process .process-row p{
    position:static;
    width:min(76vw,620px);
    margin:24px 0 0;
    font-size:.88rem;
    line-height:1.5;
  }
  .v9-process-line{left:7vw;right:7vw;bottom:4svh}

  /* FIT */
  body.v9-cinematic .v9-fit>.v9-stage>.wrap{padding:0 4vw}
  body.v9-cinematic .v9-fit .fit-head{padding:0 7vw}
  body.v9-cinematic .v9-fit .fit-head h2,.v9-fit-second{
    left:7vw;
    right:7vw;
    font-size:clamp(3.3rem,min(9.5vw,7.8svh),5.8rem);
    line-height:.86;
  }
  .v9-fit-cta{bottom:7svh}
}

@media(max-width:700px){
  body.v9-cinematic .nav-inner{width:calc(100% - 14px);padding:6px 8px 6px 10px}
  body.v9-cinematic .brand{width:92px;height:32px}
  body.v9-cinematic .nav-cta{padding:8px 10px;font-size:.6rem}

  body.v9-cinematic .v9-stage{min-height:540px}

  body.v9-cinematic .v9-hero .hero-content{padding:0 6vw max(34px,5.5svh)}
  body.v9-cinematic .v9-hero .hero-copy{max-width:90vw}
  body.v9-cinematic .v9-hero .hero h1{
    font-size:clamp(2.8rem,min(13.5vw,7.2svh),4.5rem);
    line-height:.92;
  }
  body.v9-cinematic .v9-hero .hero-sub{font-size:.86rem;margin:15px 0 18px}
  body.v9-cinematic .v9-hero .hero-actions{width:100%;max-width:290px;gap:8px}
  body.v9-cinematic .v9-hero .hero-actions .btn{width:100%;padding:11px 14px}
  .v9-scroll-cue{display:none}

  body.v9-cinematic .v9-philosophy .eyebrow{left:6vw;top:9svh}
  body.v9-cinematic .v9-philosophy .philosophy-title{
    left:6vw;
    width:88vw;
    font-size:clamp(3rem,min(13vw,7.4svh),4.4rem);
  }
  .v9-manifest-media{left:4vw;right:4vw;top:10svh;height:72svh;border-radius:24px;opacity:.42}
  body.v9-cinematic .v9-philosophy .philosophy-copy{
    left:5vw;
    right:5vw;
    bottom:5svh;
    padding:16px 17px;
    border-radius:18px;
  }
  body.v9-cinematic .v9-philosophy .philosophy-copy>p{font-size:.8rem;line-height:1.45;margin-bottom:8px}
  body.v9-cinematic .v9-philosophy .brand-quote{font-size:1.3rem;margin-top:12px;padding-top:10px}

  body.v9-cinematic .v9-experiences .section-head{left:6vw;width:88vw}
  body.v9-cinematic .v9-experiences .section-head h2{
    font-size:clamp(2.8rem,min(12vw,7svh),4.2rem);
  }
  body.v9-cinematic .v9-experiences .experience-copy{
    left:6vw;
    right:6vw;
    bottom:6svh;
  }
  body.v9-cinematic .v9-experiences .experience-num{font-size:4.6rem}
  body.v9-cinematic .v9-experiences .experience h3{
    font-size:clamp(2.45rem,min(11vw,6.3svh),3.6rem);
    line-height:.92;
  }
  body.v9-cinematic .v9-experiences .experience p{font-size:.78rem;line-height:1.43}
  body.v9-cinematic .v9-experiences .micro{font-size:.58rem;margin-top:10px;padding-top:9px}

  body.v9-cinematic .v9-moments .moment:nth-child(1){left:2vw;top:13svh;width:61vw;height:56svh}
  body.v9-cinematic .v9-moments .moment:nth-child(2){left:20vw;top:22svh;width:61vw;height:58svh}
  body.v9-cinematic .v9-moments .moment:nth-child(3){right:2vw;top:10svh;width:61vw;height:57svh}
  body.v9-cinematic .v9-moments .moments-copy{width:90vw;top:53%}
  body.v9-cinematic .v9-moments .moments-copy h2{
    font-size:clamp(2.7rem,min(12vw,6.7svh),4rem);
    line-height:.92;
  }
  body.v9-cinematic .v9-moments .moments-copy p{font-size:.78rem;line-height:1.45}

  .v9-flavor-kicker{left:6vw;top:9svh;font-size:.58rem}
  .v9-flavor-word{
    left:6vw;
    right:6vw;
    font-size:clamp(3.7rem,min(15vw,8.2svh),5.8rem);
    line-height:.8;
  }
  .v9-flavor-word small{font-size:.58rem;line-height:1.4;margin-top:14px}
  .v9-flavor-count{right:6vw;bottom:5svh}

  body.v9-cinematic .v9-heights .section-head{left:6vw;width:88vw}
  body.v9-cinematic .v9-heights .section-head h2{
    font-size:clamp(2.8rem,min(11.5vw,6.8svh),4.1rem);
  }
  body.v9-cinematic .v9-heights .section-head>p{font-size:.82rem;line-height:1.45}
  body.v9-cinematic .v9-heights .height-card{left:6vw;top:9svh;width:88vw}
  body.v9-cinematic .v9-heights .height-photo{
    width:min(66vw,330px);
    height:min(43svh,390px);
    border-radius:20px;
  }
  body.v9-cinematic .v9-heights .height-meta{width:88vw;margin-top:15px}
  body.v9-cinematic .v9-heights .height-meta h3{font-size:2.25rem;margin-bottom:8px}
  body.v9-cinematic .v9-heights .height-meta p{font-size:.76rem;line-height:1.4}

  body.v9-cinematic .v9-process .section-head{left:6vw;width:88vw}
  body.v9-cinematic .v9-process .section-head h2{
    font-size:clamp(2.8rem,min(11.5vw,6.8svh),4.1rem);
  }
  body.v9-cinematic .v9-process .section-head>p{font-size:.82rem;line-height:1.45}
  body.v9-cinematic .v9-process .process-row{left:6vw;right:6vw}
  body.v9-cinematic .v9-process .process-row h3{
    font-size:clamp(3.1rem,min(13vw,8svh),5.2rem);
    line-height:.8;
  }
  body.v9-cinematic .v9-process .process-row p{width:86vw;margin-top:18px;font-size:.8rem;line-height:1.45}
  .v9-process-line{left:6vw;right:6vw}

  body.v9-cinematic .v9-fit .fit-head h2,.v9-fit-second{
    left:6vw;
    right:6vw;
    font-size:clamp(3rem,min(12.5vw,7.4svh),4.5rem);
    line-height:.88;
  }
  .v9-fit-cta{bottom:6svh;white-space:nowrap;padding:12px 17px}

  .footer-main::before{width:min(230px,62vw)}
}

@media(max-height:640px) and (max-width:1179px){
  body.v9-cinematic .v9-stage{min-height:500px}
  body.v9-cinematic .v9-hero .hero h1{font-size:clamp(2.7rem,min(10vw,7svh),4.4rem)}
  body.v9-cinematic .v9-experiences .experience p{font-size:.76rem}
  body.v9-cinematic .v9-heights .height-photo{height:39svh}
  body.v9-cinematic .v9-process .process-row h3{font-size:clamp(2.9rem,min(10vw,8svh),4.8rem)}
}

@media(prefers-reduced-motion:reduce){
  body:not(.v9-cinematic) .nav.scrolled .brand::after,
  .footer-main::before{transition:none!important}
}
