@media(max-width:1100px){
    .km-hero-stats{
        grid-template-columns:repeat(2,1fr);
    }

    .km-benefits{
        grid-template-columns:repeat(2,1fr);
    }

    .km-brasserie{
        grid-template-columns:1fr;
        text-align:center;
    }

    .km-brasserie-logo img{
        margin:0 auto;
    }

    .info-intro,
    .info-section{
        grid-template-columns:1fr;
    }

    .cards{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:820px){

    .top-bar-inner{
        flex-direction:column;
        text-align:center;
        gap:6px;
    }

    .header-inner{
        min-height:auto;
        padding:18px 0;
        flex-direction:column;
        text-align:center;
    }

    .logo img{
        height:82px;
    }

    .site-header nav{
        justify-content:center;
    }

    .km-hero{
        min-height:640px;
    }

    .km-hero-content{
        padding:72px 0 96px;
    }

    .km-hero-copy h1{
        font-size:48px;
    }

    .km-hero-copy p{
        font-size:18px;
    }

    .km-hero-stats{
        grid-template-columns:1fr;
    }

    .detail-main-photo{
        min-height:360px;
        height:360px;
    }

    .detail-hero{
        padding:24px 26px;
    }

    .detail-hero-top{
        grid-template-columns:1fr;
        gap:18px;
    }

    .detail-gallery{
        padding:16px;
    }

    .detail-description,
    .detail-features{
        padding:24px;
    }

    .contact-box{
        padding:34px 28px;
        border-radius:24px;
    }

    .contact-box h3{
        font-size:40px;
    }

    .km-footer-top{
        gap:28px;
        padding:36px 24px;
    }

    .km-footer-right{
        align-items:center;
    }

    .km-footer-contact{
        white-space:normal;
        justify-content:center;
        text-align:center;
    }

    .info-intro img,
    .info-image img{
        height:320px;
    }

    .info-intro,
    .info-section,
    .info-wide{
        border-radius:24px;
    }

    .contact-page{
        padding:34px 28px;
    }
}

@media(max-width:640px){

    .site-header nav{
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
        gap:10px;
    }

    .nav-button{
        grid-column:1 / -1;
    }

    .km-benefits,
    .cards{
        grid-template-columns:1fr;
    }

    .km-hero{
        min-height:520px;
    }

    .km-hero-content{
        padding:56px 0 82px;
        width:min(var(--wrap), calc(100% - 32px));
    }

    .km-hero-copy h1{
        font-size:38px;
        line-height:1.08;
        max-width:100%;
        word-break:normal;
    }

    .km-hero-copy p{
        max-width:100%;
    }

    .km-hero-buttons{
        flex-direction:column;
    }

    .km-hero-stat{
        padding:16px 18px;
    }

    .km-btn{
        width:100%;
    }

    .km-brasserie{
        padding:28px;
    }

    .km-brasserie-text h2{
        font-size:40px;
    }

    .detail-gallery{
        padding:12px;
        border-radius:18px;
    }

    .detail-main-photo{
        min-height:240px;
        height:240px;
        border-radius:14px;
    }

    .detail-thumbs{
        grid-template-columns:repeat(3,1fr);
    }

    .detail-thumbs img{
        height:75px;
    }

    .gallery-count{
        top:10px;
        right:10px;
        font-size:12px;
        padding:7px 10px;
    }

    .detail-hero{
        padding:22px 18px;
    }

    .detail-hero h1{
        font-size:36px;
        line-height:1.1;
    }

    .detail-address{
        font-size:15px;
        line-height:1.5;
    }

    .detail-description,
    .detail-features{
        padding:20px;
        border-radius:18px;
    }

    .detail-description h3,
    .detail-features h3{
        font-size:28px;
        margin-bottom:18px;
    }

    .feature-item{
        padding:12px 14px;
    }

    .detail-feature-grid{
        grid-template-columns:1fr;
    }

    .gallery-arrow{
        width:42px;
        height:42px;
        font-size:28px;
    }

    .gallery-prev{
        left:10px;
    }

    .gallery-next{
        right:10px;
    }

    .contact-box{
        padding:28px 20px;
        border-radius:22px;
    }

    .contact-box h3{
        font-size:40px;
        line-height:1.15;
    }

    .detail-inline-info{
        width:100%;
    }

    .contact-box form{
        padding:18px;
        border-radius:18px;
    }

    .contact-box input,
    .contact-box textarea{
        padding:16px;
    }

    .km-footer-top{
        padding:30px 20px;
        gap:22px;
    }

    .km-footer-left h3{
        font-size:20px;
    }

    .km-footer-left p{
        font-size:15px;
        line-height:1.6;
    }

    .km-footer-center img{
        width:108px;
    }

    .km-footer-right{
        width:100%;
        gap:12px;
    }

    .km-footer-contact{
        width:100%;
        display:grid;
        grid-template-columns:28px 1fr;
        gap:10px;
        align-items:start;
        text-align:left;
    }

    .km-footer-contact span{
        font-size:20px;
        line-height:1.2;
    }

    .km-footer-contact strong{
        display:block;
        font-size:15px;
        line-height:1.5;
        overflow-wrap:anywhere;
    }

    .km-footer-bottom{
        min-height:auto;
        padding:16px 20px;
        font-size:13px;
        line-height:1.6;
    }

    .kenmerk{
        flex-direction:column;
        gap:5px;
    }

    .info-section{
        padding:26px 22px;
    }

    .info-wide{
        padding:56px 24px;
    }

    .info-intro{
        padding:32px 22px;
    }

    .contact-page{
        padding:28px 20px;
        border-radius:22px;
    }

    .contact-page h2{
        font-size:40px;
    }

    .contact-page .admin-form{
        padding:18px;
        border-radius:18px;
    }

    .info-intro img,
    .info-image img{
        border-radius:18px;
    }

    .admin-header-inner{
        flex-direction:column;
        text-align:center;
    }

    .admin-header nav{
        justify-content:center;
    }
}
.footer-main{
    grid-template-columns:1fr;
    text-align:center;
}

.footer-right{
    align-items:center;
}

.footer-contact-item{
    justify-content:center;
    text-align:left;
}

.footer-bottom-inner{
    flex-direction:column;
    justify-content:center;
    padding:20px 0;
    text-align:center;
}
.form-honeypot {
    position: absolute;
    left: -9999px;
    visibility: hidden;
}

.privacy-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 18px 0;
    font-weight: 400;
}

.privacy-check input {
    width: auto;
    margin-top: 4px;
}

.privacy-check a {
    color: inherit;
    text-decoration: underline;
}
