/* Fany Calvo Postrería — Cinematic Story V9
   Progressive enhancement. Only body.v9-cinematic receives these rules. */

:root{
  --v9-ease:cubic-bezier(.16,1,.3,1);
  --v9-z-bg:1;
  --v9-z-media:2;
  --v9-z-overlay:4;
  --v9-z-copy:6;
  --v9-z-controls:8;
}

body.v9-cinematic{overflow-x:clip}
body.v9-cinematic .nav{padding:12px 0;background:transparent;box-shadow:none}
body.v9-cinematic .nav-inner{width:min(calc(100% - 32px),1180px);padding:8px 11px 8px 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(27,20,21,.48);backdrop-filter:blur(18px);box-shadow:0 14px 44px rgba(0,0,0,.12)}
body.v9-cinematic .nav.scrolled{padding:12px 0;background:transparent;box-shadow:none}
body.v9-cinematic .nav .brand-white,body.v9-cinematic .nav.scrolled .brand-white{opacity:1}
body.v9-cinematic .nav .brand-coral,body.v9-cinematic .nav.scrolled .brand-coral{opacity:0}
body.v9-cinematic .nav-links,body.v9-cinematic .nav.scrolled .nav-links{color:#fff}
body.v9-cinematic .nav-cta,body.v9-cinematic .nav.scrolled .nav-cta{color:#fff;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.7)}

.v9-progress{position:fixed;z-index:90;inset:0 0 auto;height:2px;pointer-events:none;background:rgba(255,255,255,.15)}
.v9-progress>i{display:block;width:100%;height:100%;transform-origin:left;background:var(--mint);transform:scaleX(var(--v9-doc,0))}

body.v9-cinematic .v9-story{position:relative!important;display:block!important;height:var(--v9-story-h)!important;min-height:0!important;padding:0!important;margin:0!important;overflow:clip!important;isolation:isolate;contain:paint;background:var(--v9-bg,var(--paper))}
body.v9-cinematic .v9-stage{position:sticky;top:0;width:100%;height:100svh;min-height:620px;overflow:hidden;isolation:isolate;background:inherit}
body.v9-cinematic .v9-stage *{box-sizing:border-box}

/* HERO */
body.v9-cinematic .v9-hero{--v9-bg:#181314;color:#fff}
body.v9-cinematic .v9-hero .hero-media{position:absolute;z-index:var(--v9-z-media);inset:0;clip-path:inset(var(--v9-hero-y,12svh) var(--v9-hero-x,24vw) round var(--v9-hero-r,56px));transition:none;background:#302628}
body.v9-cinematic .v9-hero .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(var(--v9-hero-scale,1.07));filter:saturate(.9) contrast(1.02)}
body.v9-cinematic .v9-hero .hero-media::after{background:linear-gradient(90deg,rgba(20,14,15,.76),rgba(20,14,15,.32) 58%,rgba(20,14,15,.08)),linear-gradient(0deg,rgba(20,14,15,.6),transparent 55%)}
body.v9-cinematic .v9-hero .hero-content{position:absolute;z-index:var(--v9-z-copy);inset:0;width:auto;max-width:none;margin:0;padding:0 clamp(34px,4vw,68px) clamp(42px,7svh,72px);display:flex;align-items:flex-end;pointer-events:none}
body.v9-cinematic .v9-hero .hero-copy{max-width:min(720px,58vw);opacity:var(--v9-hero-copy-o,1);transform:translateY(var(--v9-hero-copy-y,0));pointer-events:auto}
body.v9-cinematic .v9-hero .hero h1{font-size:clamp(3.8rem,min(6.4vw,9.4svh),6.6rem);line-height:.88;max-width:820px;margin:0;text-wrap:balance}
body.v9-cinematic .v9-hero .hero-sub{font-size:clamp(.94rem,1vw,1.08rem);max-width:560px;margin:20px 0 26px}
body.v9-cinematic .v9-hero .hero-note{display:none}
.v9-scroll-cue{position:absolute;z-index:var(--v9-z-controls);right:22px;bottom:22px;color:rgba(255,255,255,.72);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl}

/* MANIFESTO */
body.v9-cinematic .v9-philosophy{--v9-bg:var(--blush);color:var(--ink)}
body.v9-cinematic .v9-philosophy .philosophy-grid{position:absolute;z-index:var(--v9-z-copy);inset:0;width:auto;margin:0;padding:0;display:block}
body.v9-cinematic .v9-philosophy .philosophy-grid>div:first-child{position:absolute;inset:0}
body.v9-cinematic .v9-philosophy .eyebrow{position:absolute;left:5vw;top:10svh;margin:0}
body.v9-cinematic .v9-philosophy .philosophy-title{position:absolute;left:5vw;top:50%;width:39vw;margin:0;transform:translateY(-50%);font-size:clamp(3.4rem,min(6vw,8.7svh),6rem);line-height:.84;letter-spacing:-.055em}
.v9-manifest-state{position:absolute;left:0;top:50%;width:100%;transform:translateY(-50%) translateY(18px);opacity:0;visibility:hidden;transition:opacity .26s ease,transform .5s var(--v9-ease);text-wrap:balance}
.v9-manifest-state.is-active{opacity:1;visibility:visible;transform:translateY(-50%)}
.v9-manifest-state[data-state="1"]{color:var(--coral)}
body.v9-cinematic .v9-philosophy .philosophy-copy{position:absolute;z-index:var(--v9-z-copy);left:5vw;bottom:8svh;width:min(38vw,510px);max-width:none;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .28s ease,transform .5s var(--v9-ease)}
body.v9-cinematic .v9-philosophy[data-v9-phase="2"] .philosophy-copy{opacity:1;visibility:visible;transform:none}
body.v9-cinematic .v9-philosophy[data-v9-phase="2"] .philosophy-title{opacity:0;visibility:hidden}
body.v9-cinematic .v9-philosophy .philosophy-copy>p{font-size:.88rem;line-height:1.55;margin:0 0 10px}
body.v9-cinematic .v9-philosophy .brand-quote{font-size:clamp(1.45rem,min(2vw,3svh),2.05rem);margin:16px 0 0;padding-top:14px}
.v9-manifest-media{position:absolute;z-index:var(--v9-z-media);right:5vw;top:10svh;width:45vw;height:78svh;border-radius:34px;overflow:hidden;background:url('/assets/photos/image-09-f3756383f1.jpg') center/cover no-repeat;box-shadow:0 30px 90px rgba(70,42,48,.13);transform:scale(var(--v9-manifest-scale,1.04)) translateY(var(--v9-manifest-y,16px))}
.v9-manifest-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(34,22,24,.22),transparent 58%)}

/* EXPERIENCES */
body.v9-cinematic .v9-experiences{--v9-bg:#171313;color:#fff}
body.v9-cinematic .v9-experiences .section-head{position:absolute;z-index:var(--v9-z-copy);left:5vw;top:50%;width:min(58vw,760px);margin:0;display:block;transform:translateY(-50%);opacity:0;visibility:hidden}
body.v9-cinematic .v9-experiences[data-v9-intro="1"] .section-head{opacity:1;visibility:visible}
body.v9-cinematic .v9-experiences .section-head h2{font-size:clamp(3rem,min(5.4vw,8svh),5.6rem);line-height:.9;color:#fff;margin:0}
body.v9-cinematic .v9-experiences .section-head>p{display:none}
body.v9-cinematic .v9-experiences>.v9-stage>.experience{position:absolute;z-index:var(--v9-z-bg);inset:0;display:block!important;min-height:0!important;border:0!important;margin:0!important;background:#171313;opacity:0;visibility:hidden;pointer-events:none;transform:scale(1.025);transition:opacity .28s ease,transform .7s var(--v9-ease)}
body.v9-cinematic .v9-experiences>.v9-stage>.experience.is-active{z-index:var(--v9-z-overlay);opacity:1;visibility:visible;pointer-events:auto;transform:none}
body.v9-cinematic .v9-experiences .experience-media{position:absolute!important;inset:0;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;overflow:hidden}
body.v9-cinematic .v9-experiences .experience-media img{width:100%!important;height:100%!important;object-fit:cover;transform:scale(1.035)!important}
body.v9-cinematic .v9-experiences .experience-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,10,11,.06) 24%,rgba(15,10,11,.38) 52%,rgba(15,10,11,.92) 82%),linear-gradient(0deg,rgba(15,10,11,.4),transparent 55%)}
body.v9-cinematic .v9-experiences .experience-copy{position:absolute;z-index:var(--v9-z-copy);right:5vw;top:50%;width:min(36vw,480px);padding:0!important;transform:translateY(-50%);display:block!important}
body.v9-cinematic .v9-experiences .experience-num{display:block;font-size:clamp(4.6rem,min(9vw,15svh),9rem);line-height:.7;color:rgba(255,255,255,.14);margin:0 0 14px}
body.v9-cinematic .v9-experiences .experience h3{font-size:clamp(2.45rem,min(4vw,6svh),4.1rem);line-height:.92;color:#fff;margin:0 0 14px}
body.v9-cinematic .v9-experiences .experience p{font-size:.88rem;line-height:1.55;color:rgba(255,255,255,.78)}
body.v9-cinematic .v9-experiences .micro{font-size:.68rem;color:rgba(255,255,255,.82);border-color:rgba(255,255,255,.28);margin-top:18px;padding-top:13px}
.v9-scene-count{position:absolute;z-index:var(--v9-z-controls);right:22px;bottom:22px;color:rgba(255,255,255,.74);font-family:var(--serif);font-style:italic;font-size:.9rem}

/* MOMENTS */
body.v9-cinematic .v9-moments{--v9-bg:var(--ink);color:#fff}
body.v9-cinematic .v9-moments .moments-grid{position:absolute;inset:0;height:auto;display:block}
body.v9-cinematic .v9-moments .moment{position:absolute;overflow:hidden;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}
body.v9-cinematic .v9-moments .moment:nth-child(1){left:5vw;top:12svh;width:34vw;height:60svh;transform:translate3d(var(--v9-m1x,0),var(--v9-m1y,0),0) rotate(var(--v9-m1r,-3deg))}
body.v9-cinematic .v9-moments .moment:nth-child(2){left:34vw;top:21svh;width:31vw;height:61svh;margin:0;transform:translate3d(var(--v9-m2x,0),var(--v9-m2y,0),0) rotate(var(--v9-m2r,2deg))}
body.v9-cinematic .v9-moments .moment:nth-child(3){right:5vw;top:10svh;width:30vw;height:64svh;transform:translate3d(var(--v9-m3x,0),var(--v9-m3y,0),0) rotate(var(--v9-m3r,4deg))}
body.v9-cinematic .v9-moments .moment img{width:100%;height:100%;object-fit:cover}
body.v9-cinematic .v9-moments .moments-copy{position:absolute;z-index:var(--v9-z-copy);left:50%;top:52%;width:min(82vw,960px);margin:0;padding:0;background:none;transform:translate(-50%,-50%) translateY(var(--v9-m-copy-y,28px));opacity:var(--v9-m-copy-o,0);text-align:center}
body.v9-cinematic .v9-moments .moments-copy h2{font-size:clamp(3rem,min(5.6vw,8.2svh),5.7rem);line-height:.9;margin:0 auto 16px;text-shadow:0 10px 34px rgba(0,0,0,.34)}
body.v9-cinematic .v9-moments .moments-copy p{max-width:560px;margin:0 auto;color:rgba(255,255,255,.76)}

/* FLAVOR */
body.v9-cinematic .v9-flavor{--v9-bg:#8f5a5d;color:#fff}
body.v9-cinematic .v9-flavor .flavor-grid{position:absolute;inset:0;width:auto;margin:0;display:block;padding:0}
body.v9-cinematic .v9-flavor .flavor-media{position:absolute;z-index:var(--v9-z-media);inset:-3%;width:auto;height:auto;max-height:none;overflow:hidden}
body.v9-cinematic .v9-flavor .flavor-media img{width:106%;height:106%;object-fit:cover;opacity:.82;filter:saturate(.88) contrast(1.03);transform:scale(var(--v9-flavor-scale,1.08)) translateY(var(--v9-flavor-y,0))}
body.v9-cinematic .v9-flavor .flavor-copy{display:none}
.v9-flavor-tint{position:absolute;z-index:var(--v9-z-overlay);inset:0;background:var(--v9-flavor-tint,rgba(93,44,48,.52));mix-blend-mode:multiply;pointer-events:none}
.v9-flavor-ui{position:absolute;z-index:var(--v9-z-copy);inset:0;pointer-events:none}
.v9-flavor-kicker{position:absolute;left:5vw;top:10svh;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.v9-flavor-word{position:absolute;left:5vw;right:5vw;top:50%;margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(4.2rem,min(9.5vw,13svh),9.4rem);line-height:.76;letter-spacing:-.07em;text-transform:uppercase;text-wrap:balance;opacity:0;visibility:hidden;transform:translateY(-50%) translateY(18px);transition:opacity .25s ease,transform .5s var(--v9-ease)}
.v9-flavor-word.is-active{opacity:1;visibility:visible;transform:translateY(-50%)}
.v9-flavor-word small{display:block;margin-top:20px;font-family:var(--sans);font-size:.68rem;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.v9-flavor-count{position:absolute;right:5vw;bottom:7svh;font-family:var(--serif);font-style:italic}

/* HEIGHTS */
body.v9-cinematic .v9-heights{--v9-bg:var(--blush);color:var(--ink)}
body.v9-cinematic .v9-heights>.v9-stage>.wrap{position:absolute;inset:0;width:auto;margin:0}
body.v9-cinematic .v9-heights .section-head{position:absolute;z-index:var(--v9-z-copy);left:5vw;top:50%;width:min(56vw,720px);margin:0;display:block;transform:translateY(-50%);opacity:0;visibility:hidden}
body.v9-cinematic .v9-heights[data-v9-intro="1"] .section-head{opacity:1;visibility:visible}
body.v9-cinematic .v9-heights .section-head h2{font-size:clamp(3rem,min(5.2vw,7.8svh),5.4rem);line-height:.9}
body.v9-cinematic .v9-heights .section-head>p{max-width:520px;margin-top:22px}
body.v9-cinematic .v9-heights .height-grid{position:absolute;inset:0;display:block}
body.v9-cinematic .v9-heights .height-card{position:absolute;left:8vw;top:50%;width:min(35vw,440px);margin:0!important;opacity:0;visibility:hidden;transform:translateY(-50%) translateY(18px);transition:opacity .25s ease,transform .55s var(--v9-ease)}
body.v9-cinematic .v9-heights .height-card.is-active{opacity:1;visibility:visible;transform:translateY(-50%)}
body.v9-cinematic .v9-heights .height-photo{aspect-ratio:4/5;border-radius:26px;overflow:hidden;box-shadow:0 30px 90px rgba(73,43,48,.16)}
body.v9-cinematic .v9-heights .height-photo img{height:100%;object-fit:cover}
body.v9-cinematic .v9-heights .height-meta{position:absolute;left:calc(100% + 7vw);top:50%;width:min(37vw,470px);display:block;padding:0;transform:translateY(-50%)}
body.v9-cinematic .v9-heights .height-index{display:block;margin-bottom:18px;font-size:1rem}
body.v9-cinematic .v9-heights .height-meta h3{font-size:clamp(2.8rem,min(4.5vw,6.8svh),4.8rem);line-height:.88;color:var(--coral);margin:0 0 16px}
body.v9-cinematic .v9-heights .height-meta p{font-size:.9rem;line-height:1.55}
body.v9-cinematic .v9-heights .height-note{display:none}

/* PROCESS */
body.v9-cinematic .v9-process{--v9-bg:#f8f0f1;color:var(--ink)}
body.v9-cinematic .v9-process>.v9-stage>.wrap{position:absolute;inset:0;width:auto;margin:0}
body.v9-cinematic .v9-process .section-head{position:absolute;z-index:var(--v9-z-copy);left:5vw;top:50%;width:min(58vw,760px);margin:0;display:block;transform:translateY(-50%);opacity:0;visibility:hidden}
body.v9-cinematic .v9-process[data-v9-intro="1"] .section-head{opacity:1;visibility:visible}
body.v9-cinematic .v9-process .section-head h2{font-size:clamp(3rem,min(5.2vw,7.8svh),5.4rem);line-height:.9}
body.v9-cinematic .v9-process .section-head>p{max-width:520px;margin-top:22px}
body.v9-cinematic .v9-process .process-list{position:absolute;inset:0;border:0}
body.v9-cinematic .v9-process .process-row{position:absolute;left:5vw;right:5vw;top:50%;display:block;padding:0;border:0;opacity:0;visibility:hidden;transform:translateY(-50%) translateX(24px);transition:opacity .24s ease,transform .52s var(--v9-ease)}
body.v9-cinematic .v9-process .process-row.is-active{opacity:1;visibility:visible;transform:translateY(-50%)}
body.v9-cinematic .v9-process .process-num{display:block;margin:0 0 18px;font-size:1.05rem}
body.v9-cinematic .v9-process .process-row h3{font-size:clamp(4rem,min(8.5vw,12svh),8.4rem);line-height:.76;letter-spacing:-.065em;color:var(--coral);max-width:78vw}
body.v9-cinematic .v9-process .process-row p{position:absolute;right:0;bottom:-74px;width:min(30vw,420px);font-size:.9rem;line-height:1.55}
.v9-process-line{position:absolute;z-index:var(--v9-z-controls);left:5vw;right:5vw;bottom:5svh;height:2px;background:rgba(183,95,100,.17)}
.v9-process-line>i{display:block;width:100%;height:100%;background:var(--coral);transform-origin:left;transform:scaleX(var(--v9-process-p,0))}

/* FIT */
body.v9-cinematic .v9-fit{--v9-bg:var(--coral);color:#fff}
body.v9-cinematic .v9-fit>.v9-stage>.wrap{position:absolute;z-index:var(--v9-z-copy);inset:0;width:auto;margin:0;display:flex;align-items:center;justify-content:center;text-align:center}
.v9-fit-media{position:absolute;z-index:var(--v9-z-media);inset:var(--v9-fit-y,15svh) var(--v9-fit-x,28vw);border-radius:var(--v9-fit-r,50%);overflow:hidden;background:linear-gradient(rgba(25,16,18,.14),rgba(25,16,18,.46)),url('/assets/photos/image-08-8a1e83676e.jpg') center/cover no-repeat;box-shadow:0 34px 96px rgba(70,37,44,.25)}
body.v9-cinematic .v9-fit .fit-head{position:absolute;inset:0;max-width:none;margin:0;display:flex;align-items:center;justify-content:center;padding:0 6vw}
body.v9-cinematic .v9-fit .fit-head .eyebrow,body.v9-cinematic .v9-fit .fit-head p{display:none}
body.v9-cinematic .v9-fit .fit-head h2,.v9-fit-second{position:absolute;left:6vw;right:6vw;top:50%;margin:0;font-family:var(--serif);font-weight:400;letter-spacing:-.055em;line-height:.84;font-size:clamp(3.8rem,min(7vw,9.8svh),7rem);transform:translateY(-50%) translateY(18px);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .5s var(--v9-ease);text-wrap:balance}
body.v9-cinematic .v9-fit[data-v9-phase="0"] .fit-head h2,body.v9-cinematic .v9-fit[data-v9-phase="1"] .v9-fit-second{opacity:1;visibility:visible;transform:translateY(-50%)}
.v9-fit-second{z-index:var(--v9-z-copy);color:#fff}
body.v9-cinematic .v9-fit .fit-grid{display:none}
.v9-fit-cta{position:absolute;z-index:var(--v9-z-controls);left:50%;bottom:8svh;transform:translateX(-50%) translateY(14px);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .45s var(--v9-ease)}
body.v9-cinematic .v9-fit[data-v9-cta="1"] .v9-fit-cta{opacity:1;visibility:visible;transform:translateX(-50%)}

/* Keep conversion area calm and separate from spectacle. */
body.v9-cinematic .quote{position:relative;z-index:1;background:var(--paper);padding-top:104px}
body.v9-cinematic .quote-shell{box-shadow:0 30px 90px rgba(70,43,48,.08)}

@media (max-height:780px) and (min-width:1180px){
  body.v9-cinematic .v9-hero .hero h1{font-size:clamp(3.5rem,min(5.8vw,8.5svh),5.8rem)}
  body.v9-cinematic .v9-experiences .experience h3{font-size:clamp(2.25rem,min(3.7vw,5.5svh),3.7rem)}
  .v9-flavor-word{font-size:clamp(3.8rem,min(8.7vw,11.5svh),8rem)}
  body.v9-cinematic .v9-process .process-row h3{font-size:clamp(3.7rem,min(7.7vw,10.5svh),7.2rem)}
}
