/* ═══════════════════════════════════════════════════════════════
   FORMACIONES — Elite Academy & Masterclasses Styles
   ═══════════════════════════════════════════════════════════════ */

/* ══════════ HERO ══════════ */
.form-hero{position:relative;width:100%;height:100vh;min-height:640px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.form-hero__bg{position:absolute;inset:0;z-index:0}
.form-hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:brightness(.45) saturate(.95);transform:scale(1.05)}
.form-hero__overlay{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(135deg,rgba(var(--clr-overlay-rgb),.9) 0%,rgba(var(--clr-overlay-rgb),.5) 40%,var(--clr-glass-b) 100%),
    linear-gradient(to top,rgba(var(--clr-overlay-rgb),.9) 0%,transparent 40%),
    radial-gradient(ellipse 80% 60% at 50% 50%,rgba(var(--clr-overlay-rgb),.3),transparent 70%)}

.form-hero__content{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.2rem;padding:2rem;max-width:860px}

/* Breadcrumb */
.form-hero__breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:300;color:var(--clr-white-dim);margin-bottom:.5rem}
.form-hero__breadcrumb a{color:var(--clr-white-dim);transition:color .3s}
.form-hero__breadcrumb a:hover{color:var(--clr-accent)}
.form-hero__breadcrumb-sep{color:rgba(255,255,255,.2)}

/* Title */
.form-hero__title{font-family:var(--ff-display);font-weight:300;font-size:clamp(2.8rem,7.5vw,6rem);line-height:1.08;display:flex;flex-direction:column;gap:0}
.form-hero__title em{font-style:italic;color:var(--clr-accent)}

/* Subtitle */
.form-hero__subtitle{font-weight:300;font-size:clamp(.9rem,1.5vw,1.15rem);color:var(--clr-white-dim);letter-spacing:.05em;max-width:620px;line-height:1.6}

/* Badges row */
.form-hero__badges{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;justify-content:center}
.form-hero__badge{display:flex;align-items:center;gap:.6rem;padding:.6rem 1.2rem;border:1px solid rgba(255,255,255,.08);border-radius:100px;background:rgba(255,255,255,.04);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.75rem;font-weight:300;letter-spacing:.08em;color:var(--clr-white-dim);transition:border-color .3s,background .3s}
.form-hero__badge:hover{border-color:var(--clr-accent);background:rgba(212,168,124,.08)}
.form-hero__badge-icon{width:18px;height:18px;flex-shrink:0;color:var(--clr-accent);display:flex;align-items:center;justify-content:center}

/* ══════════ AUTHORITY & PALMARÉS ══════════ */
.form-authority{padding:6rem 0;background:linear-gradient(180deg,transparent 0%,rgba(var(--clr-overlay-rgb),.4) 100%)}
.authority-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}
.authority-card{position:relative;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);transition:transform .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease);display:flex;flex-direction:column}
.authority-card:hover{transform:translateY(-6px);border-color:rgba(212,168,124,.4);box-shadow:0 24px 50px rgba(0,0,0,.5)}
.authority-card__img-box{position:relative;width:100%;height:420px;overflow:hidden}
.authority-card__img-box img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.authority-card:hover .authority-card__img-box img{transform:scale(1.06)}
.authority-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(var(--clr-overlay-rgb),.96) 0%,rgba(var(--clr-overlay-rgb),.4) 45%,transparent 100%)}
.authority-card__content{position:absolute;bottom:0;left:0;right:0;padding:2rem;z-index:2}
.authority-card__tag{display:inline-block;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--clr-accent);padding:.3rem .75rem;border:1px solid rgba(212,168,124,.35);border-radius:100px;margin-bottom:.7rem;background:rgba(0,0,0,.5);backdrop-filter:blur(6px)}
.authority-card__title{font-family:var(--ff-display);font-size:1.5rem;font-weight:400;line-height:1.2;margin-bottom:.5rem;color:var(--clr-white)}
.authority-card__desc{font-size:.85rem;font-weight:300;color:var(--clr-white-dim);line-height:1.55}

/* ══════════ INTRO FEATURES ══════════ */
.form-intro__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:start}
.form-intro__text .section__body + .section__body{margin-top:.75rem}
.form-intro__features{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.form-feature{display:flex;gap:1.2rem;align-items:flex-start;padding:1.6rem;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);transition:border-color .4s var(--ease),transform .4s var(--ease)}
.form-feature:hover{border-color:rgba(212,168,124,.3);transform:translateY(-3px)}
.form-feature__icon{flex-shrink:0;width:44px;height:44px;color:var(--clr-accent)}
.form-feature__icon svg{width:100%;height:100%}
.form-feature__title{font-family:var(--ff-display);font-size:1.15rem;font-weight:400;margin-bottom:.3rem}
.form-feature__desc{font-size:.82rem;font-weight:300;color:var(--clr-white-dim);line-height:1.55}

/* ══════════ COURSES CATALOG ══════════ */
.form-courses{background:var(--clr-surface);padding:7rem 0}

.courses-category{margin-bottom:5rem}
.courses-category:last-child{margin-bottom:0}
.courses-category__header{margin-bottom:2.5rem;display:flex;flex-direction:column;gap:.5rem}
.courses-category__title{font-family:var(--ff-display);font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:300;color:var(--clr-white)}
.courses-category__title em{font-style:italic;color:var(--clr-accent)}
.courses-category__sub{font-weight:300;font-size:.9rem;color:var(--clr-white-dim)}

/* Elite Grid (2 columns for highlighted master programs) */
.form-courses__grid--elite{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}

/* Specialty Grid (3 or 4 columns) */
.form-courses__grid--specialty{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}

/* Course Card */
.course-card{position:relative;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);overflow:hidden;display:flex;flex-direction:column;transition:border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}
.course-card:hover{border-color:rgba(212,168,124,.35);transform:translateY(-6px);box-shadow:0 20px 45px rgba(0,0,0,.45)}

/* Featured Card Glow */
.course-card--featured{border-color:rgba(212,168,124,.4);background:linear-gradient(160deg,rgba(212,168,124,.06) 0%,rgba(255,255,255,.02) 60%)}
.course-card--featured:hover{border-color:var(--clr-accent);box-shadow:0 24px 60px rgba(212,168,124,.2)}

.course-card__header{padding:2.2rem 2.2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}
.course-card__tags-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem}
.course-card__tag{display:inline-block;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--clr-accent);padding:.35rem .8rem;border:1px solid rgba(212,168,124,.3);border-radius:100px}
.course-card__badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:#fff;padding:.35rem .8rem;background:linear-gradient(135deg,#c79164,#d4a87c);border-radius:100px;font-weight:500}

.course-card__title{font-family:var(--ff-display);font-size:1.7rem;font-weight:400;margin-bottom:.35rem;line-height:1.2}
.course-card__subtitle{font-size:.85rem;font-weight:300;color:var(--clr-white-dim);line-height:1.5}

.course-card__body{padding:1.8rem 2.2rem;flex:1;display:flex;flex-direction:column;gap:1.5rem}
.course-card__desc{font-size:.88rem;font-weight:300;color:var(--clr-white-dim);line-height:1.6}

/* Checklist items */
.course-card__includes{list-style:none;display:flex;flex-direction:column;gap:.75rem}
.course-card__includes li{display:flex;align-items:flex-start;gap:.75rem;font-size:.82rem;font-weight:300;color:var(--clr-white);line-height:1.4}
.course-card__check{color:var(--clr-accent);flex-shrink:0;width:16px;height:16px;margin-top:2px}

.course-card__footer{padding:1.8rem 2.2rem;border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.course-card__duration{display:flex;flex-direction:column}
.course-card__duration-label{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--clr-white-dim)}
.course-card__duration-val{font-size:.9rem;font-weight:400;color:var(--clr-accent);margin-top:.2rem}

.course-card__btn{display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.4rem;border-radius:100px;background:var(--clr-glass);border:1px solid var(--clr-glass-b);color:var(--clr-white);font-family:var(--ff-sans);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:300;cursor:pointer;transition:all .3s var(--ease)}
.course-card__btn:hover{background:var(--clr-accent);border-color:var(--clr-accent);color:#050505;transform:translateY(-2px)}
.course-card--featured .course-card__btn{background:rgba(212,168,124,.15);border-color:rgba(212,168,124,.4);color:var(--clr-accent)}
.course-card--featured .course-card__btn:hover{background:var(--clr-accent);color:#050505}

/* ══════════ CONTACT CTA ══════════ */
.form-contact{padding:7rem 0}
.form-contact__card{text-align:center;padding:5rem 2.5rem;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(212,168,124,.08) 0%,rgba(255,255,255,.02) 100%);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.form-contact__actions{display:flex;gap:1.2rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}

/* Active link */
.nav__link--active{color:var(--clr-accent)!important}

/* ══════════ DEMOSTRACIÓN TÉCNICA SHOWCASE ══════════ */
.form-showcase{padding:5rem 0 6rem}
.form-showcase__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem;margin-top:3rem}
.form-showcase__card{border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);display:flex;flex-direction:column;transition:transform .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease)}
.form-showcase__card:hover{transform:translateY(-6px);border-color:rgba(212,168,124,.4);box-shadow:0 24px 60px rgba(0,0,0,.45)}
.form-showcase__img-box{position:relative;width:100%;height:320px;overflow:hidden}
.form-showcase__img-box img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.form-showcase__card:hover .form-showcase__img-box img{transform:scale(1.05)}
.form-showcase__badge{position:absolute;top:1.2rem;left:1.2rem;padding:.4rem .9rem;border-radius:100px;background:rgba(5,5,5,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,168,124,.35);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent);font-weight:400}
.form-showcase__info{padding:2.2rem;display:flex;flex-direction:column;gap:.85rem;flex:1}
.form-showcase__title{font-family:var(--ff-display);font-size:1.6rem;font-weight:400;color:var(--clr-white)}
.form-showcase__desc{font-size:.88rem;font-weight:300;color:var(--clr-white-dim);line-height:1.65}
.form-showcase__meta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:auto;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.06);font-size:.76rem;color:var(--clr-accent);letter-spacing:.05em}

/* ══════════ RESPONSIVE ══════════ */
@media(max-width:1200px){
  .form-courses__grid--specialty{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1024px){
  .authority-grid{grid-template-columns:repeat(2,1fr)}
  .form-intro__grid{grid-template-columns:1fr;gap:3rem}
  .form-courses__grid--elite{grid-template-columns:1fr}
  .form-showcase__grid{grid-template-columns:1fr}
  .form-showcase__img-box{height:300px}
}
@media(max-width:768px){
  .authority-grid{grid-template-columns:1fr}
  .authority-card__img-box{height:340px}
  .form-hero__title{font-size:clamp(2.4rem,9vw,3.8rem)}
  .form-hero__badges{gap:.6rem}
  .form-hero__badge{font-size:.7rem;padding:.5rem 1rem}
  .form-intro__features{grid-template-columns:1fr}
  .form-courses__grid--specialty{grid-template-columns:1fr}
  .form-showcase__img-box{height:260px}
  .form-showcase__info{padding:1.6rem}
  .form-contact__card{padding:3.5rem 1.5rem}
  .course-card__header, .course-card__body, .course-card__footer{padding:1.5rem}
}
@media(max-width:480px){
  .form-hero__title{font-size:clamp(2rem,11vw,2.8rem)}
  .form-hero__badges{flex-direction:column;align-items:stretch}
  .course-card__footer{flex-direction:column;align-items:stretch;text-align:center}
  .course-card__btn{justify-content:center}
}
