*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family: Arial, Helvetica, sans-serif;
line-height:1.6;
color:#333;
background:#f2f2f2;
position:relative;
z-index:-100;
}

a{
text-decoration:none;
color:#03a9f4;
}

a.no-color{
color:inherit;
}

.container{
width:90%;
max-width:1400px;
margin:auto;
}

section{
padding:80px 0;
}

h1,h2,h3{
font-weight:300;
margin-bottom:20px;
}

p{
margin-bottom:15px;
color:#666;
}

/* =========================
HEADER
========================= */

#site-header{
position:fixed;
top:0;
left:0;
width:100vw;
z-index:1000;
padding:22px 0;
transition:all .3s ease;
background:transparent;
}

#site-header.scrolled{
background:#fff;
box-shadow:0 2px 12px rgba(0,0,0,.08);
padding:14px 0;
}

.nav-container{
width:90%;
max-width:1200px;
margin:auto;
display:flex;
gap:1rem;
align-items:center;
justify-content:space-between;
flex-wrap:wrap;
}

.logo{
font-size:22px;
font-weight:300;
color:#fff;
transition:.3s;
}

#site-header.scrolled .logo{
color:#222;
}

nav{
display:flex;
gap:1rem;
flex-wrap:wrap;
}

nav a{
color:#fff;
font-size:14px;
letter-spacing:.5px;
transition:.3s;
overflow-wrap:anywhere;
}

#site-header.scrolled nav a{
color:#222;
}

nav a:hover{
opacity:.6;
}

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

.hero{
height:100vh;
padding-top:120px;
background-image: url(img/boog.webp);
background-position: center;
background-size: cover;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:#fff;
position:relative;
z-index:-2;
}

.hero-small{
height:50vh;
background-image: url(img/vlinder.webp);
}

.hero h1{
font-size:64px;
}

.hero p{
font-size:24px;
color:#fff;
}

.hero-cards .cards {
margin-top:-200px;
text-align:center;
}

/* SLANTED WHITE OVERLAY */
.hero::after{
content:"";

position:absolute;
left:0;
bottom:0;

width:100%;
height:220px;

background:#f2f2f2;

clip-path:polygon(
0 45%,
50% 100%,
100% 45%,
100% 110%,
0 110%
);

z-index:-1;
}

/* =========================
IMAGE
========================= */

.image{
width:100%;
height:300px;
margin-bottom:20px;
background-position:center;
background-size:cover;
background-repeat:no-repeat;
}

/* =========================
GRID / CARDS
========================= */

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
}

.card{
background:#fff;
padding:20px;
border:1px solid #ddd;
}

.split{
display:grid;
grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));;
gap:60px;
align-items:center;
}

.light{
background:#fafafa;
}

/* BENEFITS */
.benefits{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.box{
background:#fff;
padding:30px;
border:1px solid #ddd;
text-align:center;
}

.icon{
width:80px;
height:80px;
border-radius:50%;
background:#ddd;
margin:0 auto 20px;
background-size:70%;
background-position:center;
background-repeat:no-repeat;
}

/* CONDITIONS */
.conditions{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:25px;
margin-top:40px;
}

.condition{
background:#fff;
padding:30px;
text-align:center;
border:1px solid #ddd;
}

.condition .icon{
width:70px;
height:70px;
}

/* ARTICLES */
.articles{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(40%,500px));
gap:20px;
margin-top:20px;
margin-bottom:20px;
justify-content:center;
}

.article{
background:#fff;
border:1px solid #ddd;
display:flex;
}

.article-image{
flex:0 0 30%;
height:100%;
background-position:left;
}

.article-content{
flex:0 0 70%;
padding:20px;
}

/* ORGANIZATIONS */
.organizations{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,20%));
gap:20px;
}

.organization{
height:120px;
background-color:white;
background-size:contain;
background-position:center;
background-repeat:no-repeat;
border:1px solid #ddd;
}

/* CONTACT */
.contact-section {
padding: 80px 40px;
background: #f3f3f3;
}

.contact-container {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 360px 1fr;
gap: 80px;
align-items: start;
}

.contact-image img {
width: 100%;
display: block;
object-fit: cover;
}

.contact-info {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 70px 90px;
}

.info-box {
display: flex;
flex-direction: column;
gap: 18px;
}

.info-box i {
font-size: 48px;
color: #000;
}

.info-box h3 {
font-size: 22px;
font-weight: 500;
}

.info-box p {
font-size: 18px;
line-height: 1.7;
color: #333;
}

@media (max-width: 900px) {
.contact-container {
grid-template-columns: 1fr;
}

.contact-image {
max-width: 400px;
}

.contact-info {
grid-template-columns: 1fr;
}
}

/* MAP */
.map{
background:#b9d9eb;
color:#fff;
text-align:center;
}

/* FOOTER */
footer{
background:#111;
color:#fff;
text-align:center;
padding:30px;
}
