/* ==========================================================
   PROYECTO BIK
   proyecto.css
========================================================== */

/* ==========================================================
   VARIABLES
========================================================== */

:root{

    --color-principal:#7b1fa2;
    --color-secundario:#c2185b;
    --color-acento:#8bc34a;

    --texto:#333333;
    --texto-claro:#666666;

    --fondo:#ffffff;
    --gris:#f5f5f5;
    --gris-oscuro:#dddddd;

    --radio:14px;

    --sombra:0 8px 24px rgba(0,0,0,.10);

    --transicion:.30s;

    --ancho:1200px;

}

/* ==========================================================
   RESET
========================================================== */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:Arial,Helvetica,sans-serif;
    color:var(--texto);
    background:#fff;
    line-height:1.7;

}

/* ==========================================================
   CONTENEDOR
========================================================== */

.container{

    width:92%;
    max-width:var(--ancho);
    margin:auto;

}

/* ==========================================================
   ENLACES
========================================================== */

a{

    color:var(--color-principal);
    text-decoration:none;
    transition:all .30s;

}

a:hover{

    color:var(--color-secundario);

}

/* ==========================================================
   TITULOS
========================================================== */

h1{

    font-size:3rem;
    line-height:1.15;
    margin-bottom:20px;

}

h2{

    font-size:2.1rem;
    margin-bottom:25px;

}

h3{

    font-size:1.35rem;
    margin-bottom:15px;

}

p{

    margin-bottom:20px;

}

/* ==========================================================
   HERO
========================================================== */

/* ==========================================================
   HERO DEL PROYECTO
========================================================== */

.hero-project{

    position:relative;

    min-height:75vh;

    display:flex;
    align-items:center;
    justify-content:center;

    overflow:hidden;

    background:#f8f8f8;

}

.hero-project picture{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

}

.hero-project img{

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center center;

    display:block;

}

.hero-overlay{

    position:absolute;
    inset:0;

    background:linear-gradient(
        to bottom,
        rgba(0,0,0,.08) 0%,
        rgba(0,0,0,.18) 35%,
        rgba(0,0,0,.38) 100%
    );

    z-index:1;

}
.hero-content{

    position:relative;
    z-index:2;

    text-shadow:
        0 2px 8px rgba(0,0,0,.40),
        0 6px 18px rgba(0,0,0,.25);

}
.hero-content h1,
.hero-content h2,
.hero-intro{

    text-shadow:
        0 3px 10px rgba(0,0,0,.45),
        0 8px 22px rgba(0,0,0,.25);

}

.hero-content h1{

    color:#ffffff;

    font-size:clamp(2.8rem,5vw,4.8rem);

    font-weight:700;

    line-height:1.1;

    margin-bottom:20px;

    text-shadow:
        0 3px 10px rgba(0,0,0,.45),
        0 8px 22px rgba(0,0,0,.25);

}

.hero-content h2{

    color:#ffffff;

    font-size:clamp(1.2rem,2vw,1.8rem);

    font-weight:400;

    line-height:1.5;

    max-width:800px;

    margin:0 auto;

    text-shadow:
        0 3px 10px rgba(0,0,0,.45),
        0 8px 22px rgba(0,0,0,.25);

}

.hero-intro{

    margin:30px auto 0;

    max-width:760px;

    font-size:1.15rem;

    line-height:1.8;

    color:#ffffff;

    text-shadow:
        0 3px 10px rgba(0,0,0,.45),
        0 8px 22px rgba(0,0,0,.25);

}

@media (max-width:900px){

    .hero-project{

        min-height:60vh;

    }

}
@media (max-width:768px){

    .hero-overlay{

        background:linear-gradient(
            to bottom,
            rgba(0,0,0,.18) 0%,
            rgba(0,0,0,.28) 35%,
            rgba(0,0,0,.50) 100%
        );

    }

}
@media (max-width:768px){

    .hero-project{

        min-height:55vh;

    }

    .hero-content{

        width:92%;

    }

}
/* ==========================================================
   ETIQUETA CAPITULO
========================================================== */

.chapter{

    display:inline-block;

    background:var(--color-acento);

    color:#fff;

    padding:8px 18px;

    border-radius:30px;

    margin-bottom:25px;

    font-size:.90rem;

    font-weight:bold;

    letter-spacing:1px;

}

/* ==========================================================
   BREADCRUMB
========================================================== */

.breadcrumb{

    list-style:none;

    display:flex;

    gap:10px;

    align-items:center;

    padding:20px 0;

    font-size:.90rem;

}

.breadcrumb li{

    color:#666;

}

.breadcrumb li::after{

    content:"›";

    margin-left:10px;

}

.breadcrumb li:last-child::after{

    display:none;

}

.breadcrumb a{

    color:#666;

}

.breadcrumb a:hover{

    color:var(--color-principal);

}
/* ==========================================================
   BARRA DE PROGRESO
========================================================== */

.chapter-progress{

    background:#fafafa;
    padding:35px 0;

}

.progress-header{

    display:flex;
    justify-content:space-between;
    align-items:center;

    font-weight:600;

    margin-bottom:12px;

}

.progress-bar{

    width:100%;
    height:12px;

    background:#e6e6e6;

    border-radius:20px;

    overflow:hidden;

}

.progress-value{

    height:100%;

    background:linear-gradient(
        90deg,
        var(--color-principal),
        var(--color-secundario)
    );

    border-radius:20px;

}

/* ==========================================================
   SECCIONES
========================================================== */

section{

    padding:80px 0;

}

.content-section{

    background:#ffffff;

}

.content-section p{

    font-size:1.08rem;

    color:var(--texto);

    max-width:900px;

}

.content-section strong{

    color:var(--color-principal);

}

/* ==========================================================
   VIDEO
========================================================== */

.video-section{

    background:var(--gris);

}

.video-section h2{

    text-align:center;

}

.video-section p{

    text-align:center;

    color:var(--texto-claro);

    margin-bottom:40px;

}

.video-wrapper{

    position:relative;

    width:100%;

    max-width:1000px;

    margin:auto;

    border-radius:var(--radio);

    overflow:hidden;

    box-shadow:var(--sombra);

}

.video-wrapper::before{

    content:"";

    display:block;

    padding-top:56.25%;

}

.video-wrapper iframe{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    border:0;

}

/* ==========================================================
   RESUMEN DEL CAPÍTULO
========================================================== */

.chapter-summary{

    background:#ffffff;

}

.chapter-summary h2{

    text-align:center;

    margin-bottom:40px;

}

.summary-list{

    max-width:850px;

    margin:auto;

    list-style:none;

}

.summary-list li{

    position:relative;

    padding-left:35px;

    margin-bottom:22px;

    font-size:1.08rem;

}

.summary-list li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    font-size:1.2rem;

    color:var(--color-acento);

    font-weight:bold;

}

/* ==========================================================
   LISTAS GENERALES
========================================================== */

.content-section ul{

    margin:25px 0 25px 25px;

}

.content-section li{

    margin-bottom:12px;

}

/* ==========================================================
   ESPACIADO ENTRE PÁRRAFOS
========================================================== */

.content-section p:last-child{

    margin-bottom:0;

}
/* ==========================================================
   TARJETAS DEL CAPÍTULO
========================================================== */

.chapter-data{

    background:var(--gris);

}

.chapter-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:25px;

}

.chapter-card{

    background:#fff;

    padding:35px 30px;

    border-radius:var(--radio);

    text-align:center;

    box-shadow:var(--sombra);

    transition:all .30s;

}

.chapter-card:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 35px rgba(0,0,0,.15);

}

.chapter-card h3{

    color:var(--color-principal);

    margin-bottom:15px;

}

.chapter-card p{

    margin:0;

    color:var(--texto-claro);

    font-size:1rem;

}

/* ==========================================================
   CITA DESTACADA
========================================================== */

.chapter-quote{

    background:linear-gradient(
        135deg,
        var(--color-principal),
        var(--color-secundario)
    );

    color:#fff;

    text-align:center;

}

.chapter-quote blockquote{

    max-width:900px;

    margin:auto;

    font-size:2rem;

    line-height:1.5;

    font-style:italic;

    font-weight:300;

}

.chapter-quote blockquote::before{

    content:"“";

    font-size:4rem;

    opacity:.35;

    display:block;

    margin-bottom:10px;

}

.chapter-quote blockquote::after{

    content:"”";

    font-size:4rem;

    opacity:.35;

    display:block;

    margin-top:10px;

}

/* ==========================================================
   BOTONES
========================================================== */

.btn{

    display:inline-block;

    padding:15px 34px;

    border-radius:40px;

    text-decoration:none;

    font-weight:600;

    transition:all .30s;

}

.btn-primary{

    background:var(--color-principal);

    color:#fff;

}

.btn-primary:hover{

    background:var(--color-secundario);

    color:#fff;

    transform:translateY(-3px);

}

.btn-secondary{

    background:#fff;

    color:var(--color-principal);

    border:2px solid var(--color-principal);

}

.btn-secondary:hover{

    background:var(--color-principal);

    color:#fff;

}

.next-btn{

    background:var(--color-acento);

    color:#fff;

}

.next-btn:hover{

    background:#76a92e;

    color:#fff;

}

/* ==========================================================
   PRÓXIMO CAPÍTULO
========================================================== */

.next-chapter{

    background:#fff;

    text-align:center;

}

.next-label{

    display:inline-block;

    margin-bottom:20px;

    color:var(--color-principal);

    font-weight:bold;

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:.9rem;

}

.next-chapter h2{

    margin-bottom:20px;

}

.next-chapter p{

    max-width:760px;

    margin:0 auto 40px auto;

    color:var(--texto-claro);

}

/* ==========================================================
   CTA FINAL
========================================================== */

.project-cta{

    background:linear-gradient(
        135deg,
        var(--color-principal),
        var(--color-secundario)
    );

    color:#fff;

    text-align:center;

}

.project-cta h2{

    color:#fff;

    margin-bottom:25px;

}

.project-cta p{

    max-width:850px;

    margin:0 auto 40px auto;

    font-size:1.15rem;

}

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

/* ==========================================================
   FOOTER DEL PROYECTO
========================================================== */

.footer{

    background:#222;

    color:#ddd;

    padding:70px 0 30px;

}

.footer-container{

    width:92%;

    max-width:1200px;

    margin:auto;

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:40px;

}

.footer h3{

    color:#fff;

    margin-bottom:20px;

}

.footer ul{

    list-style:none;

}

.footer li{

    margin-bottom:12px;

}

.footer a{

    color:#ccc;

}

.footer a:hover{

    color:#fff;

}

.footer-logo{

    max-width:180px;

    margin-bottom:20px;

}

.footer-bottom{

    border-top:1px solid rgba(255,255,255,.10);

    margin-top:50px;

    padding-top:25px;

    text-align:center;

    color:#999;

    font-size:.9rem;

}
/* ==========================================
   NAVEGACIÓN ENTRE CAPÍTULOS
========================================== */

.book-navigation{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;

    margin:25px auto 40px;
    padding:0 20px;
}

.book-navigation a{

    display:inline-block;

    padding:10px 18px;

    background:#f3f3f3;
    color:#444;

    text-decoration:none;

    border-radius:25px;

    font-size:15px;
    font-weight:600;

    transition:all .25s ease;
}

.book-navigation a:hover{

    background:#d81b60;
    color:#fff;

    transform:translateY(-2px);
}

.book-navigation a.active{

    background:#000;
    color:#fff;

    box-shadow:0 4px 10px rgba(0,0,0,.25);
}

/* MÓVIL */

@media (max-width:768px){

    .book-navigation{

        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;

        padding-bottom:10px;
    }

    .book-navigation a{

        white-space:nowrap;
        flex:0 0 auto;
    }

}
/* ==========================================
   CAPITAL VITAL - SOLO MÓVIL
========================================== */

@media (max-width:768px){

    .hero-capital .hero-content{

        display:none;

    }

    .hero-capital .hero-overlay{

        background:rgba(0,0,0,.28);

    }

}
@media (max-width:768px){

    .hero-capital .hero-content{

        display:none !important;

    }

}
.content-section h2,
.video-section h2,
.chapter-summary h2,
.chapter-data h2,
.next-chapter h2,
.project-cta h2{

    margin-top:0;
    margin-bottom:18px;

}
/* ==========================================
   AJUSTE DE ESPACIADO H3
========================================== */

.content-section h3,
.video-section h3,
.chapter-summary h3,
.chapter-data h3,
.next-chapter h3,
.project-cta h3{

    margin-top:0;
    margin-bottom:12px;

}
/* ==========================================
   VÍDEO FULL WIDTH SOLO EN MÓVIL
========================================== */

@media (max-width:768px){

    .video-section .container{
        width:92% !important;
        max-width:none !important;
    }

    .video-wrapper{
        width:calc(100vw - 20px) !important;
        max-width:none !important;
        margin-left:50%;
        transform:translateX(-50%);
    }

}