/* =========================================
   EVENTS
========================================= */

.events{
    padding:120px 8%;
    background:#ffffff;
}

.events-grid{
    display:flex;
    flex-direction:column;
    gap:35px;
    margin-top:60px;
}

.event-card{
    display:grid;
    grid-template-columns:140px 1fr;
    gap:35px;
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.35s ease;
}

.event-card:hover{
    transform:translateY(-8px);
    box-shadow:0 30px 60px rgba(0,0,0,.12);
}

.event-date{
    background:#0D1B2A;
    color:#fff;
    border-radius:18px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    min-height:140px;
}

.event-date h3{
    font-size:48px;
    font-family:'Playfair Display',serif;
    line-height:1;
}

.event-date span{
    margin-top:8px;
    letter-spacing:3px;
    color:#D4AF37;
    font-weight:600;
}

.event-content h3{
    font-size:30px;
    font-family:'Playfair Display',serif;
    color:#0D1B2A;
    margin-bottom:12px;
}

.location{
    color:#D4AF37;
    font-weight:600;
    margin-bottom:18px;
}

.event-content p{
    color:#666;
    line-height:1.8;
    margin-bottom:25px;
}

.event-content .btn{
    display:inline-block;
}

/* Mobile */

@media(max-width:768px){

    .event-card{
        grid-template-columns:1fr;
        text-align:center;
    }

    .event-date{
        width:120px;
        margin:auto;
    }

}

/*=====================================
BOOK TOUR
=====================================*/

.book-tour{

    padding:120px 8%;

    background:#fff;

}

.tour-table{

    margin-top:70px;

}

.tour-row{

    display:grid;

    grid-template-columns:1fr 1fr 1fr auto;

    align-items:center;

    gap:25px;

    padding:28px 35px;

    background:#f8f6f2;

    margin-bottom:18px;

    border-radius:18px;

    transition:.35s;

}

.tour-row:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 35px rgba(0,0,0,.10);

}

.tour-row span{

    color:#444;

    font-weight:500;

}

@media(max-width:900px){

.tour-row{

    grid-template-columns:1fr;

    text-align:center;

}

}

/*=====================================
PAST EVENTS
=====================================*/

.past-events{

    padding:120px 8%;

    background:#f8f6f2;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

    margin-top:70px;

}

.gallery-grid img{

    width:100%;

    height:280px;

    object-fit:cover;

    border-radius:20px;

    cursor:pointer;

    transition:.4s;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.gallery-grid img:hover{

    transform:scale(1.05);

    box-shadow:0 25px 60px rgba(0,0,0,.18);

}

/*=====================================
SPEAKING
=====================================*/

.speaking{

    padding:120px 8%;

    background:#ffffff;

}

.speaking-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));

    gap:35px;

    margin-top:70px;

}

.speaking-card{

    background:#f8f6f2;

    padding:45px 35px;

    border-radius:20px;

    text-align:center;

    transition:.35s;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.speaking-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(0,0,0,.15);

}

.speaking-card i{

    font-size:55px;

    color:#D4AF37;

    margin-bottom:25px;

}

.speaking-card h3{

    font-family:'Playfair Display',serif;

    font-size:30px;

    color:#0D1B2A;

    margin-bottom:18px;

}

.speaking-card p{

    color:#666;

    line-height:1.8;

}

/*=====================================
INVITE AUTHOR
=====================================*/

.invite-author{

    padding:120px 8%;

    background:linear-gradient(135deg,#0D1B2A,#162B44);

    color:#fff;

    text-align:center;

}

.invite-content{

    max-width:900px;

    margin:auto;

}

.invite-content h2{

    font-family:'Playfair Display',serif;

    font-size:60px;

    margin:25px 0;

}

.invite-content p{

    color:#ddd;

    font-size:20px;

    line-height:1.9;

    margin-bottom:50px;

}

.invite-features{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:20px;

    margin-bottom:50px;

}

.invite-features div{

    background:rgba(255,255,255,.08);

    padding:22px;

    border-radius:12px;

    font-weight:600;

    backdrop-filter:blur(10px);

}

/* Book pages navbar */

.book-hero + * {
    position: relative;
}

.navbar{
    background:#0D1B2A;
}