/*
Homepage migration slice
Keep this in sync with the legacy homepage rules in style.css
until the old selectors are fully retired.
*/

.btv-homepage-hero{
display:grid;
grid-template-columns:minmax(0,55fr) minmax(0,45fr);
gap:40px;
align-items:start;
margin-bottom:60px;
}

.btv-homepage-hero h1{
    font-size:2.3rem;
    line-height:1.2;
    margin-bottom:24px;
    font-weight:700;
}

.btv-homepage-hero p{
font-size:1.05rem;
line-height:1.8;
margin-bottom:24px;
}

.btv-homepage-hero__image img{
    width:100%;
    display:block;
    aspect-ratio:16/9;
    object-fit:cover;

    border-radius:18px;
    border:1px solid #d8d2bf;

    box-shadow:0 12px 28px rgba(0,0,0,.08);
}

.btv-homepage-hero__image{
    position:relative;
	margin-top:0px; 
}

.btv-homepage-hero__image::after{
    content:"";
    position:absolute;
    inset:0;

    border-radius:18px;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.06),
        transparent 40%
    );

    pointer-events:none;
}

.btv-homepage-buttons{
    display:flex;
    gap:14px;
    margin-top:28px;
}

.btv-homepage-explore h2{
display:flex;
align-items:center;
justify-content:center;
gap:20px;
margin:0 0 35px;
}

.btv-homepage-explore h2 span{
height:1px;
background:#ddd;
width:120px;
display:block;
}

.btv-homepage-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.btv-homepage-card{
display:block;
text-decoration:none;
color:inherit;
background:#fff;
border-radius:14px;
overflow:hidden;
box-shadow:0 4px 16px rgba(0,0,0,.08);
transition:.2s;
}

.btv-homepage-card:hover{
transform:translateY(-4px);
box-shadow:0 10px 26px rgba(0,0,0,.12);
}

.btv-homepage-card img{
width:100%;
aspect-ratio:16/9;
object-fit:cover;
display:block;
}

.btv-homepage-card .icon{
width:84px;
height:84px;
border-radius:50%;
background:#f5f2e8;
margin:-42px auto 16px;
display:flex;
align-items:center;
justify-content:center;
font-size:2rem;
position:relative;
}

.btv-homepage-card h3{margin-bottom:12px;}
.btv-homepage-card span{font-weight:600;}

.btv-homepage-card-body{
    display:flex;
    flex-direction:column;
    align-items:center;
    height:100%;
    padding:0 22px 24px;
    text-align:center;
}

.btv-homepage-card p{
    color:#666;
    margin-bottom:12px;
}

.btv-homepage-card-meta{
    margin-top:10px;

    font-size:.9rem;
    font-style:italic;

    color:#999;
    line-height:1.4;
}

.btv-homepage-atlas{
margin-top:45px;
background:#fff;
border-radius:14px;
padding:30px;
display:flex;
justify-content:space-between;
align-items:center;
box-shadow:0 4px 16px rgba(0,0,0,.06);
gap:20px;
}

.btv-homepage-atlas__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 22px;
    border-radius:10px;
    background:#556B3B;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:.2s;
}

.btv-homepage-atlas__button:hover{
    background:#44572f;
    color:#fff;
}

@media(max-width:1024px){
.btv-homepage-grid{grid-template-columns:repeat(2,1fr);}
}

@media (max-width:768px){
    .btv-homepage-hero{
        grid-template-columns:1fr;
        text-align:center;
		gap:5px;
    }

    .btv-homepage-hero h1{
        font-size:1.7rem;
        line-height:1.2;
    }

    .btv-homepage-buttons{
        justify-content:center;
    }

    .btv-homepage-grid{
        grid-template-columns:1fr;
    }

    .btv-homepage-explore h2 span{
        width:50px;
    }

    .btv-homepage-hero__image{
        order:-1;
    }

}

@media (max-width:768px){

    .btv-homepage-atlas{
        flex-direction:column;
        align-items:center;
        text-align:center;
    }

}
