* {
    box-sizing: border-box;
}
body, header {
    max-width: 1000px;
    margin: auto;
    font-family: Arial, Verdana, Helvetica, sans-serif;
    color: black;
    line-height: 1.4;
    text-align: center; 

    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;
}
section {
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;
    gap: 50px;
    max-width: 95vw;
}
img {
    width:100%;
    border-radius: 5px;
}
header img {
    height:375px;
    overflow: hidden;
    object-fit: cover; 
    margin: 10px 0px; 
}
header img:hover {
    transition: transform .3s ease; 
    transform: scale(1.025);
}
.title {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;

    justify-content: center;
    flex-wrap: wrap;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
}
.subtitle {
    padding: 0px 5px;
    font-size:1.4rem; 
    font-weight: normal;
    border: 1px solid black;
}
a:link {
    color: black;
}
a:visited, a:hover, a:active {
    color: #0084b2;
}
hr.bdiv {
    border: 1px solid #eeeeee;
    border-radius: 0px; 
    width: 100%;
    max-width: 600px;
}
.grey-hl {
    background-color: #fafafa;
    box-shadow: 0 0 0 100vmax #fafafa;
    border: solid #fafafa;
    border-width: 15px 0px; 
    clip-path: inset(0 -100vmax); 
}
.bipanel {
    display: flex;
    flex-direction:row;
    flex-wrap: wrap;
    text-align: left;
    align-items: center;
    justify-content: center;
    gap: 0px 5%;
    width:100%;
}
.bipanel-text{
    flex: 1 1 20rem;
}
.bipanel-img {
    width:375px;
    max-width: 100%;
    flex: 0 1 auto;
    position: relative;
}
.text-overlay {
    width: 375px;
    width: 100%;
    position: absolute; 
    bottom: 6px; 
    opacity:0;
    background: rgba(0, 132, 178, .9);
    color: white; 
    padding: 0px 10px;
    text-align: left;
    border-radius: 5px;
    line-height: 0.25;
    list-style: none;
}
.bipanel-img:hover .text-overlay {
    transition: .5s ease;
    opacity: 1;
}
.info-overlay {
    position: absolute;
    bottom: 16px;
    right: 10px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    background: rgba(0, 132, 178, 1);
    color: white; 
    border-radius: 5px;
    text-align: center;
    opacity:1;
}
.bipanel-img:hover .info-overlay {
    transition: .25s ease;
    opacity: 0;
}
.image-overlay {
    width: 375px;
    width: 100%;
    position: absolute; 
    bottom: 5px; 
    left: 0px;
    opacity:0;
}
.bipanel-img:hover .image-overlay {
    transition: .5s ease;
    opacity: 1;
}
.contact {
    font-weight: bold;
}