/* Interacciones del Home: microanimaciones sobrias y accesibles. */

/* CTA del header: vuelve al magenta sólido; el menú reducido le da el espacio necesario. */
.ccp-header__cta{
  min-height:46px!important;
  height:46px!important;
  padding:0 18px!important;
  gap:9px!important;
  border-radius:11px!important;
  font-size:13.5px!important;
  line-height:1!important;
  color:#fff!important;
  background:linear-gradient(135deg,#7900a7,#b000b8)!important;
  border:1px solid transparent!important;
  box-shadow:0 8px 18px rgba(176,0,184,.17)!important;
}
.ccp-header__cta span{font-size:17px;line-height:1;transition:transform .18s ease}
.ccp-header__cta:hover,.ccp-header__cta:focus-visible{transform:translateY(-1px)!important;box-shadow:0 11px 23px rgba(176,0,184,.22)!important;filter:brightness(1.035)}
.ccp-header__cta:hover span,.ccp-header__cta:focus-visible span{transform:translateX(2px)}

/* Tres accesos esenciales inmediatamente después del hero. */
.ccp-quick--three .ccp-quick__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));max-width:900px;margin:0 auto}
.ccp-quick__item{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.ccp-quick__item:after{content:"";position:absolute;inset:auto -30% -70% -30%;height:115%;border-radius:50%;background:radial-gradient(circle at center,rgba(116,22,154,.10),transparent 68%);opacity:0;transform:translateY(12px) scale(.96);transition:opacity .22s ease,transform .22s ease;pointer-events:none}
.ccp-quick__item:hover,.ccp-quick__item:focus-visible{transform:translateY(-4px);box-shadow:0 14px 30px rgba(8,31,88,.10);border-color:rgba(116,22,154,.18)!important}
.ccp-quick__item:hover:after,.ccp-quick__item:focus-visible:after{opacity:1;transform:translateY(0) scale(1)}
.ccp-quick__icon{transition:transform .2s ease,box-shadow .2s ease}
.ccp-quick__item:hover .ccp-quick__icon,.ccp-quick__item:focus-visible .ccp-quick__icon{transform:translateY(-1px) scale(1.05);box-shadow:0 7px 16px rgba(8,31,88,.08)}

/* Bloques visibles de Conferencistas y Sede y viaje. */
.ccp-home-info{padding:38px 0 16px;background:#fff}
.ccp-home-info .ccp-section__heading{margin-bottom:20px}
.ccp-home-info__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ccp-home-feature{position:relative;display:grid;grid-template-columns:68px 1fr;gap:18px;align-items:center;min-height:190px;padding:26px;border:1px solid rgba(8,31,88,.10);border-radius:17px;background:linear-gradient(135deg,#fff,#fbf9fd);box-shadow:0 8px 24px rgba(8,31,88,.045);text-decoration:none!important;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.ccp-home-feature:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--mk-purple),var(--mk-magenta));transform:scaleX(.3);transform-origin:left;transition:transform .22s ease}
.ccp-home-feature--venue:after{background:linear-gradient(90deg,var(--mk-blue),var(--mk-green))}
.ccp-home-feature:hover,.ccp-home-feature:focus-visible{transform:translateY(-4px);box-shadow:0 16px 34px rgba(8,31,88,.09);border-color:#d9cfe2}
.ccp-home-feature:hover:after,.ccp-home-feature:focus-visible:after{transform:scaleX(1)}
.ccp-home-feature__icon{width:60px;height:60px;border-radius:16px;display:grid;place-items:center;background:#f1e7f6;color:var(--mk-purple);transition:transform .2s ease,box-shadow .2s ease}
.ccp-home-feature--venue .ccp-home-feature__icon{background:#eaf5f8;color:var(--mk-blue)}
.ccp-home-feature__icon svg{width:30px;height:30px}
.ccp-home-feature:hover .ccp-home-feature__icon,.ccp-home-feature:focus-visible .ccp-home-feature__icon{transform:translateY(-2px) scale(1.04);box-shadow:0 8px 18px rgba(8,31,88,.08)}
.ccp-home-feature__eyebrow{display:block;margin-bottom:5px;color:var(--mk-magenta);font-size:11px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.ccp-home-feature--venue .ccp-home-feature__eyebrow{color:var(--mk-blue)}
.ccp-home-feature h3{margin:0 0 7px;color:var(--mk-navy);font-size:22px;line-height:1.15}
.ccp-home-feature p{margin:0 0 10px!important;color:var(--mk-muted)!important;font-size:14px!important;line-height:1.55!important}
.ccp-home-feature>div>strong:last-child{color:var(--mk-magenta);font-size:13px}
.ccp-home-feature--venue>div>strong:last-child{color:var(--mk-blue)}

/* Tarifas: tres categorías oficiales sin inventar valores. */
.ccp-home-rates{padding:34px 0 38px;background:linear-gradient(180deg,#fbfbfd,#fff)}
.ccp-home-rates .ccp-section__heading{margin-bottom:20px}
.ccp-home-rates__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ccp-rate-card{position:relative;min-height:210px;padding:23px 22px 21px;border:1px solid rgba(8,31,88,.10);border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(8,31,88,.04);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.ccp-rate-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--mk-purple),var(--mk-magenta));opacity:.82;transition:width .2s ease,opacity .2s ease}
.ccp-rate-card--member:before{background:linear-gradient(180deg,var(--mk-blue),#45a6ce)}
.ccp-rate-card--general:before{background:linear-gradient(180deg,var(--mk-green),#7abf5a)}
.ccp-rate-card:hover{transform:translateY(-4px);box-shadow:0 15px 32px rgba(8,31,88,.08);border-color:#d9ddea;background:#fefeff}
.ccp-rate-card:hover:before{width:6px;opacity:1}
.ccp-rate-card__icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#f1e7f6;color:var(--mk-purple);margin-bottom:14px;transition:transform .2s ease}
.ccp-rate-card--member .ccp-rate-card__icon{background:#eaf2fb;color:var(--mk-blue)}
.ccp-rate-card--general .ccp-rate-card__icon{background:#eef8e9;color:var(--mk-green)}
.ccp-rate-card__icon svg{width:24px;height:24px}
.ccp-rate-card:hover .ccp-rate-card__icon{transform:translateY(-2px) scale(1.04)}
.ccp-rate-card h3{margin:0 0 8px;color:var(--mk-navy);font-size:17px;line-height:1.3;text-transform:none}
.ccp-rate-card p{margin:0 0 15px!important;color:var(--mk-muted)!important;font-size:13.5px!important;line-height:1.5!important}
.ccp-rate-card>strong{display:inline-block;padding:6px 9px;border-radius:999px;background:#f7f3fa;color:var(--mk-magenta);font-size:11.5px;font-weight:850}
.ccp-rate-card--member>strong{background:#f0f6fc;color:var(--mk-blue)}
.ccp-rate-card--general>strong{background:#f1f8ee;color:#438d32}

/* Tarjetas principales de participación y modalidades. */
.ccp-card--participant,.ccp-card--modality{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.ccp-card--participant:after,.ccp-card--modality:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--mk-purple),var(--mk-magenta));transition:transform .24s ease}
.ccp-card--modality:nth-child(2):after{background:linear-gradient(90deg,var(--mk-blue),#45a6ce)}
.ccp-card--modality:nth-child(3):after{background:linear-gradient(90deg,var(--mk-green),#79be59)}
.ccp-card--participant:hover,.ccp-card--participant:focus-within,.ccp-card--modality:hover,.ccp-card--modality:focus-within{transform:translateY(-4px);box-shadow:0 16px 34px rgba(8,31,88,.09)!important;border-color:#ddd5e5!important}
.ccp-card--participant:hover:after,.ccp-card--participant:focus-within:after,.ccp-card--modality:hover:after,.ccp-card--modality:focus-within:after{transform:scaleX(1)}
.ccp-card__icon,.ccp-modality-icon{transition:transform .2s ease,box-shadow .2s ease}
.ccp-card--participant:hover .ccp-card__icon,.ccp-card--participant:focus-within .ccp-card__icon,.ccp-card--modality:hover .ccp-modality-icon,.ccp-card--modality:focus-within .ccp-modality-icon{transform:translateY(-2px) rotate(-2deg);box-shadow:0 8px 18px rgba(8,31,88,.08)}

/* Ejes transversales compactos del Home. */
.ccp-axis-lite{position:relative;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.ccp-axis-lite:hover{transform:translateY(-3px);background:#fbf9fd;box-shadow:0 10px 22px rgba(8,31,88,.06)}
.ccp-axis-lite svg{transition:transform .18s ease}
.ccp-axis-lite:hover svg{transform:scale(1.08) rotate(-2deg)}

/* Organizadores. */
.ccp-organizer{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.ccp-organizer:hover,.ccp-organizer:focus-within{transform:translateY(-4px);box-shadow:0 15px 32px rgba(8,31,88,.08);border-color:#d9ddea}
.ccp-organizer__logo{transition:transform .22s ease}
.ccp-organizer:hover .ccp-organizer__logo,.ccp-organizer:focus-within .ccp-organizer__logo{transform:scale(1.035)}

/* Botones. */
.ccp-btn{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,border-color .18s ease!important}
.ccp-btn:hover,.ccp-btn:focus-visible{transform:translateY(-2px);box-shadow:0 9px 20px rgba(8,31,88,.12)}
.ccp-btn--primary:hover,.ccp-btn--primary:focus-visible{filter:brightness(1.04)}
.ccp-btn--outline:hover,.ccp-btn--outline:focus-visible{border-color:#b991ce!important;background:#fbf7fd!important}

@media(max-width:900px){
  .ccp-home-info__grid{grid-template-columns:1fr}
  .ccp-home-rates__grid{grid-template-columns:1fr}
  .ccp-rate-card{min-height:0}
}
@media(max-width:700px){
  .ccp-quick--three .ccp-quick__grid{grid-template-columns:1fr}
  .ccp-quick--three .ccp-quick__item{border-right:0!important;border-bottom:1px solid var(--ccp-border)}
  .ccp-quick--three .ccp-quick__item:last-child{border-bottom:0}
  .ccp-home-info{padding-top:28px}
  .ccp-home-feature{grid-template-columns:52px 1fr;gap:14px;padding:20px;min-height:0}
  .ccp-home-feature__icon{width:50px;height:50px;border-radius:13px}
  .ccp-home-feature__icon svg{width:25px;height:25px}
  .ccp-home-feature h3{font-size:20px}
  .ccp-home-rates{padding-top:26px}
}

@media (prefers-reduced-motion:reduce){
  .ccp-header__cta,.ccp-header__cta span,.ccp-quick__item,.ccp-quick__item:after,.ccp-quick__icon,.ccp-home-feature,.ccp-home-feature:after,.ccp-home-feature__icon,.ccp-rate-card,.ccp-rate-card:before,.ccp-rate-card__icon,.ccp-card--participant,.ccp-card--participant:after,.ccp-card--modality,.ccp-card--modality:after,.ccp-card__icon,.ccp-modality-icon,.ccp-axis-lite,.ccp-axis-lite svg,.ccp-organizer,.ccp-organizer__logo,.ccp-btn{transition:none!important;transform:none!important}
}


/* Ejes transversales del Home: fotografía editorial + jerarquía elegante. */
.ccp-home-axes{
  padding-top:46px!important;
  padding-bottom:48px!important;
  background:linear-gradient(180deg,#fbfbfd 0%,#fff 100%);
}
.ccp-home-axes__heading{
  max-width:820px;
  margin:0 auto 28px!important;
}
.ccp-home-axes__eyebrow{
  display:block;
  margin-bottom:8px;
  color:var(--mk-magenta);
  font-size:12px;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.ccp-home-axes__heading h2{
  font-size:clamp(32px,3.4vw,46px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
  text-transform:none!important;
}
.ccp-home-axes__heading p{
  max-width:720px;
  margin:9px auto 0!important;
  line-height:1.6!important;
}
.ccp-home-axes__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ccp-home-axis-card{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(8,31,88,.10);
  border-radius:17px;
  background:#fff;
  box-shadow:0 8px 24px rgba(8,31,88,.055);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.ccp-home-axis-card:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:linear-gradient(90deg,var(--mk-purple),var(--mk-magenta));
}
.ccp-home-axis-card:nth-child(4n+2):after{background:linear-gradient(90deg,var(--mk-blue),var(--mk-cyan))}
.ccp-home-axis-card:nth-child(4n+3):after{background:linear-gradient(90deg,var(--mk-green),#79bf59)}
.ccp-home-axis-card:nth-child(4n+4):after{background:linear-gradient(90deg,var(--mk-magenta),#d45ab9)}
.ccp-home-axis-card:hover{
  transform:translateY(-5px);
  border-color:#d8cae1;
  box-shadow:0 18px 38px rgba(8,31,88,.11);
}
.ccp-home-axis-card__media{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  background:linear-gradient(135deg,#efe8f5,#edf5fb);
}
.ccp-home-axis-card__media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,29,87,0) 45%,rgba(7,29,87,.24) 100%);
  pointer-events:none;
}
.ccp-home-axis-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .42s ease;
}
.ccp-home-axis-card:hover .ccp-home-axis-card__media img{transform:scale(1.045)}
.ccp-home-axis-card__number{
  position:absolute;
  z-index:2;
  left:14px;
  top:14px;
  min-width:38px;
  height:38px;
  padding:0 9px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.65);
  border-radius:11px;
  background:rgba(255,255,255,.92);
  color:var(--mk-navy);
  box-shadow:0 7px 18px rgba(8,31,88,.13);
  font-size:12px;
  font-weight:900;
  letter-spacing:.05em;
}
.ccp-home-axis-card__media--fallback{
  display:grid;
  place-items:center;
}
.ccp-home-axis-card__fallback-icon{
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:rgba(255,255,255,.82);
  color:var(--mk-purple);
  box-shadow:0 8px 22px rgba(8,31,88,.07);
}
.ccp-home-axis-card__fallback-icon svg{width:34px;height:34px}
.ccp-home-axis-card__body{
  padding:19px 19px 23px;
}
.ccp-home-axis-card__body h3{
  margin:0 0 8px;
  color:var(--mk-navy);
  font-size:17px;
  line-height:1.28;
  letter-spacing:-.015em;
}
.ccp-home-axis-card__body p{
  margin:0!important;
  color:var(--mk-muted)!important;
  font-size:13.5px!important;
  line-height:1.55!important;
}
@media(max-width:1100px){
  .ccp-home-axes__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .ccp-home-axes{padding-top:36px!important;padding-bottom:38px!important}
  .ccp-home-axes__grid{grid-template-columns:1fr}
  .ccp-home-axis-card__media{aspect-ratio:16/8.5}
  .ccp-home-axis-card:hover{transform:none}
  .ccp-home-axis-card:hover .ccp-home-axis-card__media img{transform:none}
}


/* Modalidades del Home: reutilizan las imágenes administradas en Participación y documentos. */
.ccp-home-modalities__grid{align-items:stretch}
.ccp-home-modalities .ccp-card--modality{
  display:block!important;
  padding:0!important;
  min-height:0!important;
  overflow:hidden;
  border-radius:16px!important;
}
.ccp-home-modality__media{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#f3f5f8;
}
.ccp-home-modality__media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,29,87,0) 52%,rgba(7,29,87,.24) 100%);
  pointer-events:none;
}
.ccp-home-modality__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}
.ccp-home-modalities .ccp-card--modality:hover .ccp-home-modality__media img{
  transform:scale(1.04);
}
.ccp-home-modality__body{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  padding:20px;
  align-items:start;
}
.ccp-home-modality__body .ccp-modality-icon{
  width:50px!important;
  height:50px!important;
  margin:0!important;
}
.ccp-home-modality__body h3{
  margin:1px 0 7px!important;
  font-size:18px!important;
}
.ccp-home-modality__body p{
  margin:0 0 11px!important;
  font-size:14px!important;
  line-height:1.52!important;
  color:var(--mk-muted)!important;
}
.ccp-home-modality__body a{
  font-weight:800;
  text-decoration:none;
}
@media(max-width:640px){
  .ccp-home-modalities .ccp-card--modality:hover .ccp-home-modality__media img{transform:none}
}


/* Tarifas por periodos: tres cortes con valores por categoría. */
.ccp-home-rates__grid{align-items:stretch}
.ccp-rate-card--period-0:before{background:linear-gradient(180deg,var(--mk-purple),var(--mk-magenta))}
.ccp-rate-card--period-1:before{background:linear-gradient(180deg,var(--mk-blue),var(--mk-cyan))}
.ccp-rate-card--period-2:before{background:linear-gradient(180deg,var(--mk-green),#7abf5a)}
.ccp-rate-card__period{
  display:block;
  margin-bottom:7px;
  color:var(--mk-navy);
  font-size:18px;
  font-weight:850;
  line-height:1.2;
}
.ccp-rate-card__deadline{
  display:inline-flex!important;
  margin-bottom:18px;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#f6f1f9!important;
  color:var(--mk-purple)!important;
  font-size:12px!important;
  font-weight:850!important;
}
.ccp-rate-card--period-1 .ccp-rate-card__deadline{background:#eef6fb!important;color:var(--mk-blue)!important}
.ccp-rate-card--period-2 .ccp-rate-card__deadline{background:#f0f7ed!important;color:#438d32!important}
.ccp-rate-card__values{
  display:grid;
  gap:10px;
  margin-top:2px;
}
.ccp-rate-card__values>div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding-top:10px;
  border-top:1px solid rgba(8,31,88,.08);
}
.ccp-rate-card__values span{
  color:var(--mk-muted);
  font-size:12.5px;
  line-height:1.35;
}
.ccp-rate-card__values strong{
  color:var(--mk-navy);
  font-size:14px;
  white-space:nowrap;
}
