/* CLAUDIO KAPOBEL — COSTA DEL SOL CINEMATIC PRELOADER V2
   Prefijo aislado .ckp. Nada toca estilos globales salvo bloqueo de scroll explícito en JS.
   Assets, marca, fondo, porcentajes y luz son CAPAS REALES, no una captura como background.
   Cormorant Garamond y Manrope ya se cargan desde index.html: no se duplica el @import.
*/

.ckp{
  --ckp-navy:#091521;--ckp-gold:#e7bb79;--ckp-gold2:#ffe5b4;--ckp-white:#f3e7d4;
  position:fixed;inset:0;z-index:2147483000;isolation:isolate;overflow:hidden;
  color:var(--ckp-white);background:#081522;contain:paint;
  will-change:transform,opacity;transform:translate3d(0,0,0);
  font-synthesis:none;-webkit-font-smoothing:antialiased;
  /* Failsafe CSS: JS ausente/roto no deja el site bloqueado indefinidamente. */
  animation:ckp-failsafe 700ms 9000ms forwards;
}
@keyframes ckp-failsafe {to{opacity:0;visibility:hidden;pointer-events:none}}
.ckp,.ckp *{box-sizing:border-box}
.ckp__landscape{position:absolute;inset:0;display:block;overflow:hidden;}
.ckp__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1.06);animation:ckp-dolly 7s ease-out both;will-change:transform;}
@keyframes ckp-dolly{from{transform:scale(1.085)}to{transform:scale(1.035)}}
.ckp__colorwash{pointer-events:none;position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,9,19,.26),rgba(3,10,18,.08) 46%,rgba(2,9,17,.06) 75%,rgba(2,7,12,.19));}
.ckp__vignette{pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 42%,rgba(4,16,29,.08) 12%,rgba(1,8,17,.05) 40%,rgba(1,6,12,.24) 100%);}
.ckp__skyline{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;opacity:.9;pointer-events:none;}
.ckp__arc{stroke-dasharray:1450;stroke-dashoffset:1450;animation:ckp-arc 2.05s cubic-bezier(.2,.55,.23,.99) .13s forwards;}
.ckp__arc-glow{opacity:0;animation:ckp-arc-glow 2.35s ease-out .5s both;}
@keyframes ckp-arc{to{stroke-dashoffset:0}}
@keyframes ckp-arc-glow{0%{opacity:0}50%{opacity:.4}100%{opacity:.18}}
.ckp__center{position:absolute;left:50%;top:43.5%;transform:translate(-50%,-50%);width:min(90vw,760px);z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;text-shadow:0 2px 16px rgba(0,0,0,.15);}
.ckp__mark-wrap{height:clamp(90px,10vw,144px);display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 13px rgba(222,165,88,.16));opacity:0;transform:translateY(15px) scale(.975);animation:ckp-mark-in .8s cubic-bezier(.14,.64,.22,1) .18s forwards;}
.ckp__mark{width:clamp(113px,12vw,158px);height:auto;max-height:100%;object-fit:contain;display:block;}
@keyframes ckp-mark-in{to{opacity:1;transform:none}}
.ckp__wordmark{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(29px,3.95vw,56px);font-weight:400;letter-spacing:clamp(.15em,.65vw,.26em);white-space:nowrap;color:#e8bd82;background:linear-gradient(120deg,#b37b40 0%,#fff0c6 45%,#dcab6b 75%,#bd8f59 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1.25;margin-top:16px;margin-left:.24em;opacity:0;transform:translateY(12px);animation:ckp-mark-in .78s cubic-bezier(.2,.6,.28,1) .36s forwards;}
.ckp__descriptor{font-family:Manrope,Arial,sans-serif;font-size:clamp(9px,.82vw,12px);font-weight:500;letter-spacing:clamp(.28em,.45vw,.58em);line-height:1.9;color:#f3eadb;margin-top:14px;margin-left:.42em;white-space:nowrap;opacity:0;animation:ckp-text-in .7s ease .55s forwards;}
.ckp__descriptor span{color:#d9b37e;margin-inline:.65em;}
@keyframes ckp-text-in{to{opacity:.95}}
.ckp__loader{margin-top:clamp(40px,5.3vw,69px);width:min(560px,80vw);display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(10px);animation:ckp-mark-in .7s ease .65s forwards;}
.ckp__track{position:relative;height:7px;width:100%;border:1px solid rgba(207,215,228,.47);border-radius:20px;background:rgba(128,142,169,.25);box-shadow:inset 0 0 7px rgba(0,0,0,.25),0 1px 0 rgba(0,0,0,.23);overflow:visible;}
.ckp__fill{position:absolute;inset:-1px auto -1px -1px;width:var(--ckp-progress,0%);max-width:calc(100% + 2px);border-radius:20px;background:linear-gradient(90deg,#7a512b,#c48d4e 22%,#ffd391 61%,#e6aa60 98%);box-shadow:0 0 12px rgba(244,185,102,.22);will-change:width;}
.ckp__spark{position:absolute;right:-3px;top:50%;width:7px;height:7px;border-radius:50%;transform:translateY(-50%);background:#fff7d9;box-shadow:0 0 5px 2px rgba(255,245,201,.8),0 0 13px 4px rgba(250,184,89,.8),0 0 27px 9px rgba(255,184,83,.32);opacity:0;transition:opacity .2s;}
.ckp--started .ckp__spark{opacity:1}
.ckp__percent{display:flex;align-items:baseline;gap:.13em;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(25px,2.15vw,35px);font-weight:400;letter-spacing:.09em;margin-top:20px;color:#e0b177;font-variant-numeric:tabular-nums;}
.ckp__exit-edge{position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(246,195,124,.55) 50%,transparent 100%);opacity:0;}
.ckp--exit .ckp__center{opacity:0;transform:translate(-50%,-53%) scale(1.035);transition:opacity .34s ease,transform .48s ease;}
.ckp--exit .ckp__image{transform:scale(1.095);transition:transform 1s cubic-bezier(.16,.75,.22,1);animation:none}
.ckp--exit .ckp__exit-edge{opacity:1;}
.ckp--exit{animation:none;transform:translate3d(0,-101%,0);transition:transform 930ms cubic-bezier(.76,0,.24,1) 220ms;}
.ckp--done{display:none!important}
@media(max-width:700px){
  .ckp__center{top:44%;width:92vw}
  .ckp__wordmark{font-size:clamp(27px,6.7vw,42px);letter-spacing:.105em;white-space:normal;line-height:1.08;margin:20px 0 0;max-width:330px}
  .ckp__descriptor{font-size:9px;letter-spacing:.27em;margin:15px 0 0;}
  .ckp__mark-wrap{height:115px}
  .ckp__mark{width:125px}
  .ckp__loader{width:min(78vw,360px);margin-top:41px}
  .ckp__skyline{opacity:.64;}
  .ckp__image{object-position:53% center;}
  .ckp__vignette{background:linear-gradient(180deg,rgba(1,9,18,.15),rgba(2,8,17,.3) 70%,rgba(0,7,13,.45));}
}
@media(max-width:360px){.ckp__wordmark{font-size:26px}.ckp__descriptor{font-size:8px;letter-spacing:.21em}}
@media(prefers-reduced-motion:reduce){
  .ckp,.ckp *, .ckp *::before,.ckp *::after{animation-duration:.001ms!important;animation-delay:0ms!important;transition-duration:.001ms!important}
  .ckp__arc{stroke-dashoffset:0}
  .ckp__mark-wrap,.ckp__wordmark,.ckp__descriptor,.ckp__loader{opacity:1;transform:none}
}
