/*
Theme Name: Alfa Vloeren
Description: A Theme for the Alfa Vloeren website.
Version: 1.0
Author: Mark Otte
Author URI: https://markotte.nl
Text Domain: ALFA
*/

:root {
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
} 
html{
	font-family: 'Switzer', sans-serif;
	overflow-x: hidden;
	overflow-y: auto;
	box-sizing: border-box;
}
a{ 
	color:#EA2B2B;
}
a:hover, a:focus {
    text-decoration:none !important;
    color:#fff;
}
body{
	overflow-x: hidden;
	overflow-y: auto;
	box-sizing: border-box;
	min-height: 100vh;
}

/* Prevent background scroll when overlay is open */
body.no-scroll{
	overflow: hidden;
}

*, *::before, *::after {
	box-sizing: border-box;
}
.container{
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
	padding-left: 15px;
	padding-right: 15px;
}

/* Remove Bootstrap grid overrides - let Bootstrap handle responsive grid */
.col-md-2,
.col-md-4,
.col-md-6 {
	/* Remove float override to let Bootstrap handle responsive behavior */
}
p{
	line-height:22px;
}
strong {
  font-weight: 500;
  line-height:24px;
}
h2{
	font-size: 32px;
	line-height:40px;
	font-weight:700;
}
#pre-header-top{
	height:39px;
	background: #F7F4EF;
	display: flex;
	justify-content: center;
	align-items: center;
}
#wrapper{
	background:url('img/header-logo-bg.svg') no-repeat;
	background-position: calc(50% + -712px) 130px;
}
#header-top{
	margin-top:84px;
	margin-bottom:84px;	
}
#mobile-nav{
	display:none;	
}
#header-logo{	
	height: 58px;
	width: 363px;
	background:url('img/logo-alfa.svg') no-repeat;
	float:left;
	margin-right:40px;
	background-size: contain;  
}
#desktop-nav{
	height: 71px;
	width: 50%;
	float: right;
	margin-left: 0;
	margin-top: 12px;
}
#desktop-nav .menu li{
	margin: 0 0px 0 0;
	display: inline-block;
	height: auto;
	vertical-align: middle;
} 
#desktop-nav .menu li a{
	color: #908376;
	text-align: center;
	font-family: Poppins;
	font-size: 22px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-decoration:none;
	margin: 0 33px;
}
#desktop-nav .menu li.header-contact{
	background:#5e4632;
	border-radius:24px;
}
#desktop-nav .menu li.header-contact a{
	color: #FFF;
	text-align: center;
	font-family: Poppins;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}
#desktop-nav .menu li.header-contact a:hover{
	color:#fff;
	text-align: center;
	font-family: Poppins;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}
#desktop-nav .menu li a:hover{
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 22px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
ul#menu-header-menu{
	float:right;
}
.pre-header-top-wrapper-block{
	float:left;
	position:relative;
	color: #908376;
	text-align: center;
	font-family: Poppins;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.pre-header-top-wrapper-block a{
	text-decoration:none;
	color: #908376;
	text-align: center;
	font-family: Poppins;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.block-left, .block-middle{
	margin-right:76px;
}
.pre-header-top-wrapper-block #left{
	width: 9px;
	height: 12px;
	fill: #908376;
	background: url(img/map.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
}
.pre-header-top-wrapper-block #middle{
	width: 6.551px;
	height: 12px;
	flex-shrink: 0;
	fill: #908376;
	background: url(img/mobile.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
}
.pre-header-top-wrapper-block #right{
	width: 12px;
	height: 8.99px;
	fill: #908376;
	background: url(img/mail.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
}
#content-header {
	padding-bottom: 64px;
	background: url(img/content-header-bg.svg) no-repeat;
	background-position: 92% 100%; 
	max-width: 2000px;
	margin: 0 auto;
	position: relative;
}

#content-header h1{
	color: #5E4632;
	font-family: Poppins;
	font-size: 36px;
	font-style: normal;
	font-weight: 500;
	line-height: 44px; /* 122.222% */
	margin-bottom: 36px;
}
#content-header-img{
	background-size: cover;
	height: 426px;
}
#content-about-us-left{
	color: #171716;
	text-align: justify;
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px; /* 125% */
	padding-left:67px;
	padding-right: 15px;
}
#content-about-us-left span{
	color: #171716;
	font-family: "Reenie Beanie";
	font-size: 34px;
	font-style: normal;
	font-weight: 500;
	line-height: 42px;
} 
#content-floors{
	margin-top:12px;
	background:url('img/bg-vloer.svg') no-repeat;
	background-position: -55px 148px;
	max-width: 2110px;
	margin: 0 auto;
	position: relative;
}
.vloer-block{
	
}
h2#subtitle{
	margin-bottom: 36px; 
}
h2#subtitle span{
	color: #908376;
	font-family: Corinthia;
	font-size: 52px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px; /* 38.462% */	
}
#product-select{
	padding-bottom:22px;
}
#content-floors-left{
	padding-left:67px;
	margin-bottom:44px;
	padding-right: 15px;
	color: #171716;
	text-align: justify;
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 21px; /* 131.25% */
}

#content-floors-left ul{
	margin-top:26px; 
}
#content-floors-left ul li::marker{
	color:#BFCAB3;
}
#content-floors-large-images .content-floors-img{
	height: 368px;
	background-size: cover;
	margin-right: 38px;
}
.content-floors-large-img{
	margin-top:18px;
}
.content-floors-small-img .content-floors-img{
	padding-left:38px;
}
#content-floors-small-images .content-floors-img{
	height: 123px;
	background-size: cover;
	margin-bottom: 21px; 
    border-radius: 22px;
}
.vloer-select-intro{
	float:left;
	color: #5E4632;
	text-align: right;
	font-family: Lato;
	font-size: 18.322px;
	font-style: normal;
	font-weight: 400;
	line-height: 32px;
	margin-right:29px;
}
.vloer-select{
	float:left;
	border-radius: 18px;
	border: 1.145px solid #5E4632;
	display: flex;
	padding: 5.725px 12.596px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 11.451px;
	margin-right:29px;
	background:#fff;
	
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
#content-usp{
	height: 20px;
	text-align: center;
	position: relative;
	width: 100%;
	max-width: 972px;
	margin: 84px auto;
}
.usp-wrapper{
	float:left;	
	color: #908376;
	text-align: center;
	font-family: Poppins;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-right: 50px;
}
.usp-wrapper .last{
	margin-right: 0px !important;
}
.usp-wrapper .first{
	width: 25px;
	height: 26px;
	fill: #908376;
	background: url(img/hart.svg) no-repeat; 
	display: inline-block;
	margin-right: 5px;
	top: 8px;
	position: relative;
}
.usp-wrapper .second{
	width: 32px;
	height: 26px;
	fill: #908376;
	background: url(img/meetlat.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
	top: 8px;
	position: relative;
}
.usp-wrapper .third{
	width: 32px;
	height: 26px;
	fill: #908376;
	background: url(img/bus.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
	top: 8px;
	position: relative;
}
.usp-wrapper .fourth{
	width: 32px;
	height: 26px;
	fill: #908376;
	background: url(img/hamer.svg) no-repeat;
	display: inline-block;
	margin-right: 5px;
	top: 4px;
	position: relative;
}
#content-external{
	background: url(img/content-external-bg.svg) no-repeat;
	background-position: 20% 100%; 
	padding-bottom: 30px;
	max-width: 2000px;
	margin: 0 auto;
	position: relative;
}
#content-external-img{
	height: 450px;
	margin-left: 0;
	background-repeat: no-repeat; 
}
#content-external-content{
	margin-left:16px;
}
#content-situations-title{
	color: #5E4632;
	font-family: Poppins;
	font-size: 30px;
	font-style: normal;
	font-weight: 500;
	line-height: 44px; /* 146.667% */
	margin-bottom:30px;
}
#content-situations-title h2{
	font-size:30px;
}
#content-situations-intro{
	color: #171716;
	text-align: justify;
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 21px; /* 131.25% */
	margin-bottom:30px;
	padding-right: 15px; 
}
#content-situations-intro span{
	color: #171716;
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 21px; 
}
#content-external-content button{
	display: flex;
	width: 446px;
	padding: 10px 26px;
	justify-content: center;
	align-items: center;
	gap: 11px;
	border-radius: 52px;
	background: #F3A279;
	color: #FFF;
	text-align: center;
	font-family: Poppins;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	border:none;
} 
#content-external-content button span{
	width: 26px;
	height: 22px;
	background: url(img/camera.svg) no-repeat;
	flex-shrink: 0;
	fill: #FFF;
}
#content-review-title h3{
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 37px; /* 264.286% */
}
#content-review{
	color: #171716;
	text-align: center;
	font-family: Poppins;
	font-size: 22px;
	font-style: italic;
	font-weight: 300;
	line-height: 37px; /* 168.182% */
}
#content-review p{
	line-height: 37px; /* 168.182% */
}
#content-review-name{
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 19px;
	font-style: normal;
	font-weight: 400;
	line-height: 37px; /* 194.737% */
}
#content-reviews{
	margin-top:84px;
	margin-bottom:84px;
}

/* Review Slider Styles */
.review-slider-container {
	position: relative;
	min-height: 200px;
}

.review-item {
	display: none;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
	text-align: center;
}

.review-item.active {
	display: block;
	opacity: 1;
}

.review-content {
	position: relative;
	margin-bottom: 30px;
}





.review-content p {
	color: #171716;
	text-align: center;
	font-family: Poppins;
	font-size: 22px;
	font-style: italic;
	font-weight: 300;
	line-height: 37px;
	margin: 0;
	padding: 0 20px;
}

.review-name {
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 19px;
	font-style: normal;
	font-weight: 400;
	line-height: 37px;
	margin-top: 20px;
}

/* Bullet Navigation */
.review-bullets {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin-top: 40px;
}

.review-bullet {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #D9D9D9;
	cursor: pointer;
	transition: all 0.3s ease;
	border: 2px solid transparent;
}

.review-bullet:hover {
	background-color: #BFCAB3;
	transform: scale(1.1);
}

.review-bullet.active {
	background-color: #F3A279;
	border-color: #F3A279;
	transform: scale(1.2);
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.review-content p {
		font-size: 18px;
		line-height: 28px;
		padding: 0 10px;
	}
	
	.review-content::before,
	.review-content::after {
		font-size: 40px;
	}
	
	.review-content::before {
		top: -15px;
		left: -5px;
	}
	
	.review-content::after {
		bottom: -30px;
		right: -5px;
	}
	
	.review-bullets {
		margin-top: 30px;
		gap: 10px;
	}
	
	.review-bullet {
		width: 10px;
		height: 10px;
	}
}
#content-brands-title h3{
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 37px; /* 264.286% */
}
#content-brands-logos{	
	height: 140px;
	margin-bottom: 140px;
}  
#content-brands-logos .logo{
	height: 75px;
	width: 16%;
	float: left;
	margin-bottom: 15px;
	background-size: contain;
	margin-right: 5%;
	background-repeat: no-repeat;
	background-position-y: center;
}
#content-brands-logos .logo:nth-child(5),
#content-brands-logos .logo:nth-child(10),
#content-brands-logos .logo:nth-child(15),
#content-brands-logos .logo:nth-child(20){
	margin-right: 0;
}
#footer-logo{
	width: 247px;
	height: 39px;
	background:url('img/logo-alfa-small.svg') no-repeat;
	float:left;
	background-size: contain;   
}
#footer-wrapper{
	height: 58px;
	z-index: 11;
	position: relative;
}
#footer-wrapper-bg{
	height:120px;
	width:70%;
	background: #F7F4EF; 
	margin: auto;
	position: relative;
	z-index: 10; 
}
#footer-openingstijden{
	float: left;
	margin-top: 55px;
}
#footer-openingstijden span{
	color: #5E4632;
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 26px; /* 162.5% */
}
#footer-openingstijden a{
	color: #5E4632;
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 26px;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-color: #BFCAB3;
	text-decoration-thickness: 7.5%;
	text-underline-offset: auto;
	text-underline-position: from-font;
}
#footer-openingstijden a:hover{
	text-decoration:none;
	color:  #5E4632;
}

.menu-footer-menu-container{
	height: 140px; 
}
#footer-nav-1,
#footer-nav-2,
#footer-nav-3,
#footer-nav-4{
	float:left;
}
ul#menu-footer-menu-1 li,
ul#menu-footer-menu-2 li,
ul#menu-footer-vloeren-menu-1 li,
ul#menu-footer-vloeren-menu-2 li{
	text-decoration:none;
	list-style:none;
	padding-bottom: 21px;
	
}
ul#menu-footer-menu-1 li a,
ul#menu-footer-menu-2 li a,
ul#menu-footer-vloeren-menu-1 li a,
ul#menu-footer-vloeren-menu-2 li a{
	color: #5E4632;
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 26px; /* 162.5% */
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-color: #BFCAB3;
	text-decoration-thickness: 7.5%; /* 1.2px */
	text-underline-offset: auto;
	text-underline-position: from-font;
}
ul#menu-footer-menu-2 li.footer-contact a{
	border-radius: 32px;
	background: #F3A279;

	display: flex;
	width: 100px;
	height: 32px;
	padding: 4px 16px;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	flex-shrink: 0;
	text-decoration:none !important;
	margin-top: 10px;
}
#footer ul{
	padding-left:3rem;
}
.opening-hours {
	border: 1px solid #e4ded6;
	border-radius: 10px;
	background: #fff;
	padding: 16px 20px;
	display: inline-block;
}

/* Contact button styling */
.contact-btn{
	border-radius: 35px;
	border: 2px solid #5E4632;
	background: #FFF;
}

.btn-outline-primary.contact-btn {
	border-color: #5e4632;
	color: #5E4632;
	text-align: center;
	font-family: Poppins;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	border-radius: 35px;
	border: 2px solid #5E4632;
	padding: 4px 23px;
}

.btn-outline-primary.contact-btn:hover {
	background: #5e4632;
	color: white;
}

.btn-primary.contact-btn {
	background: #5e4632;
	border-color: #5e4632;
	color: white;
	border-radius: 35px;
	border: 2px solid #5E4632;
	padding: 5px 23px;
}

.btn-primary.contact-btn:hover {
	background: #4a3728;
	border-color: #4a3728;
	color: white;
	border-radius: 35px;
	border: 2px solid #5E4632;
}
.contact-info-section h1{
	color: #5E4632;
	font-family: Poppins;
	font-size: 36px;
	font-style: normal;
	font-weight: 500 !important;
	line-height: 44px; /* 122.222% */
}
.contact-info-section p{
	color: #171716;
	text-align: justify;
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px; /* 125% */
	margin-left: 40px;
	margin-right: 34px;
}

/* Full-bleed map */
.map-section {
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

/* Override Bootstrap gutter for map section */
.map-section .row {
	margin-left: 0;
	margin-right: 0;
}

.map-section .col-12 {
	padding-left: 0;
	padding-right: 0;
}
.map-wrapper {
	border-radius: 0;
	box-shadow: none;
}
.map-container { 
	height: 520px; 
	width: 100%;
	overflow: hidden;
}
#content-brands{
	margin-bottom:80px;
}

#home-fullwidth-map{
	margin-bottom:80px !important;
}
	

/* ========================================
   RESPONSIVE MEDIA QUERIES
   ======================================== */

/* Extra Small devices (phones, less than 768px) */
@media (max-width: 767px) {
    .container {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }
	.pre-header-top-wrapper-block{ 
		width:100%; 
	}
	#pre-header-top {
		height: 100px;
	}
    
    #header-top {
        margin-top: 20px;
        margin-bottom: 20px;
        padding: 0 15px;
    }
    
    #header-logo {
        height: 40px;
        width: 200px;
        float: none;
        margin: 0 auto 20px;
        display: block;
    }
    
    #desktop-nav {
        display: none;
    }
    
    #mobile-nav {
        display: block;
        width: 100%;
        text-align: center;
        padding: 20px 0;
    }
    
    /* Mobile menu styling - vertical layout like desktop */
    #mobile-nav .mobile-menu-items {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    #mobile-nav .mobile-menu-items li {
        margin: 0;
        display: block;
        width: 100%;
        text-align: center;
    }
    
    #mobile-nav .mobile-menu-items li a {
        color: #908376;
        text-align: center;
        font-family: Poppins;
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
        text-decoration: none;
        display: block;
        padding: 0px 20px;
        transition: color 0.3s ease;
    }
    
    #mobile-nav .mobile-menu-items li.header-contact {
        background: #5e4632;
        border-radius: 24px;
        margin: 10px 0;
    }
    
    #mobile-nav .mobile-menu-items li.header-contact a {
        color: #FFF;
        font-family: Poppins;
        font-size: 16px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
    }
    
    #mobile-nav .mobile-menu-items li a:hover {
        color: #5E4632;
    }
    
    #mobile-nav .mobile-menu-items li.header-contact a:hover {
        color: #fff;
    }
    
    /* Hide hamburger on mobile */
    #hamburger {
        display: none !important;
    }
    
    /* Mobile menu header */
    .mobile-menu-header {
        display: none;
    }
    
    /* Additional mobile menu refinements */
   
    
    #mobile-nav .mobile-menu-items li:last-child {
        border-bottom: none;
    }
    
    #mobile-nav .mobile-menu-items li.header-contact {
        border-bottom: none;
        margin: 15px 0;
    }
    
    /* Improve mobile layout for content sections */
    .row {
        margin-left: -15px;
        margin-right: -15px;
    }
    
    .row > [class*="col-"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* Better spacing for mobile */
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* Improve button layout on mobile */
    .vloer-select {
        display: block;
        width: 100%;
        margin-bottom: 10px;
        text-align: center;
    }
    
    /* Better image handling on mobile */
    #content-header-img,
    #content-external-img,
    .content-floors-img {
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    
    /* Improve text readability on mobile */
    #content-about-us-left,
    #content-floors-left,
    #content-situations-intro {
        text-align: left;
        hyphens: auto;
        word-wrap: break-word;
    }
    
    /* Better touch targets for mobile */
    .vloer-select,
    #content-external-content button,
    #mobile-nav .mobile-menu-items li a {
        min-height: 25px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* Improve scrolling on mobile */
    html, body {
        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
    }
    
    /* Better image loading on mobile */
    img {
        max-width: 100%;
        height: auto;
    }
    
    #content-header {
        padding-bottom: 30px;
        background-size: cover;
        background-position: center;
    }
    
    #content-header h1 {
        font-size: 24px;
        line-height: 30px;
        margin-bottom: 20px;
    }
    
    #content-header-img {
        height: 250px;
    }
    
    #content-about-us-left {
        padding-left: 15px;
        padding-right: 15px;
        font-size: 14px;
        line-height: 18px;
    }
    
    #content-about-us-left span {
        font-size: 24px;
        line-height: 30px;
    }
    
    #content-floors-left {
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 30px;
        font-size: 14px;
        line-height: 18px;
    }
    
    #content-floors-large-images .content-floors-img {
        height: 200px;
        margin-right: 0;
        margin-bottom: 20px;
    }
    
    #content-floors-small-images .content-floors-img {
        height: 80px;
        margin-bottom: 15px;
    }
    
    .content-floors-small-img .content-floors-img {
        padding-left: 15px;
    }
    
    #content-usp {
        width: 100%;
        height: auto;
        margin: 40px auto;
        text-align: center;
    }
    
    .usp-wrapper {
        float: none;
        margin-right: 0;
        margin-bottom: 20px;
        font-size: 16px;
    }
    
    #content-external-img {
        height: 250px;
        margin-left: 0;
        margin-bottom: 20px;
    }
    
    #content-external-content {
        margin-left: 0;
        padding: 0 15px;
    }
    
    #content-situations-title {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 20px;
    }
    
    #content-situations-title h2 {
        font-size: 24px;
    }
    
    #content-situations-intro {
        padding-right: 0;
        margin-bottom: 20px;
        font-size: 14px;
        line-height: 18px;
    }
    
    #content-external-content button {
        width: 100%;
        max-width: 300px;
        padding: 12px 20px;
        font-size: 16px;
        border-radius: 40px;
        gap: 8px;
        margin: 0 auto;
        display: block;
        box-sizing: border-box;
    }
    
    #content-external-content button span {
        width: 20px;
        height: 18px;
        background-size: contain;
    }
    
    /* Mobile map adjustments */
    .map-section {
        width: 100vw;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    
    .map-section .row {
        margin-left: 0;
        margin-right: 0;
    }
    
    .map-section .col-12 {
        padding-left: 0;
        padding-right: 0;
    }
    
    .map-container {
        height: 300px;
    }
    
    #content-review {
        font-size: 18px;
        line-height: 28px;
    }
    
    #content-brands-logos {
        height: auto;
        margin-bottom: 60px;
    }
    
    #content-brands-logos .logo {
        width: 48%;
        margin-right: 2%;
        margin-bottom: 20px;
		margin-left: 2px;
    }
    
    #content-brands-logos .logo:nth-child(2n) {
        margin-right: 0;
    }
    
    #footer-wrapper-bg {
        width: 100%;
        height: auto;
        padding: 20px 15px;
    }
    
    #footer-logo {
        float: none;
        margin: 0 auto 20px;
        display: block;
    }
    
    #footer-openingstijden {
        float: none;
        margin-top: 20px;
        text-align: center;
        margin-bottom: 20px;
    }
    ul#menu-footer-menu-2 li.footer-contact a {
        margin: 0 auto;
    }
    #footer-nav-1,
    #footer-nav-2,
    #footer-nav-3,
    #footer-nav-4 {
        float: none;
        margin-bottom: 20px;
        text-align: center;
    }
    
    .menu-footer-menu-container {
        height: auto;
        min-height: 140px;
    }
    
    #footer ul {
        padding-left: 0;
    }
    
    h2 {
        font-size: 24px;
        line-height: 30px;
    }
    
    h2#subtitle span {
        font-size: 36px;
        line-height: 16px;
    }
    
    .vloer-select-intro {
        float: none;
        text-align: center;
        margin-right: 0;
        margin-bottom: 15px;
        font-size: 16px;
        line-height: 24px;
    }
    
    .vloer-select {
        float: none;
        margin-right: 0;
        margin-bottom: 15px;
        display: inline-block;
    }
    
    .block-left, .block-middle {
        margin-right: 20px;
    }
    
    .pre-header-top-wrapper-block {
        font-size: 12px;
    }
    
    .pre-header-top-wrapper-block a {
        font-size: 12px;
    }
    .contact-form-wrapper {
        margin-right: 0px !important;
    }
    .contact-form-section .col-5 {
        width: 100%;    
        padding-left: 0px !important;
        margin-left: 0px !important;
    }
    .store-info-section {
        margin-top: 50px;
    }
    #contact-top {
        background-position: 110% 100%;
    }
    .contact-main-section .offset-1 {
        margin-left: 0;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991px) {
    .container {
        width: 750px;
    }
	.pre-header-top-wrapper-block{ 
		width:100%; 
	}
    #pre-header-top {
		height: 100px;
	}
    #header-top {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    
    #header-logo {
        height: 50px;
        width: 280px;
        margin-right: 20px;
    }
    
    #desktop-nav {
        width: 50%;
        margin-left: 20px;
        margin-top: 8px;
    }
    
    #desktop-nav .menu li a {
        font-size: 16px !important; 
        margin: 0 15px;
    }
    
    #content-header h1 {
        font-size: 30px;
        line-height: 38px;
        margin-bottom: 30px;
    }
    
    #content-header-img {
        height: 350px;
    }
    
    #content-about-us-left {
        padding-left: 40px;
        padding-right: 60px;
        font-size: 15px;
        line-height: 19px;
    }
    
    #content-about-us-left span {
        font-size: 28px;
        line-height: 36px;
    }
    
    #content-floors-left {
        padding-left: 40px;
        padding-right: 50px;
        margin-bottom: 35px;
        font-size: 15px;
        line-height: 20px;
    }
    
    #content-floors-large-images .content-floors-img {
        height: 280px;
        margin-right: 20px;
    }
    
    #content-floors-small-images .content-floors-img {
        height: 100px;
        margin-bottom: 15px;
    }
    
    .content-floors-small-img .content-floors-img {
        padding-left: 20px;
    }
    
    #content-usp {
        width: 100%;
        margin: 60px auto;
    }
    
    .usp-wrapper {
        margin-right: 30px;
        font-size: 16px;
    }
    
    #content-external-img {
        height: 350px;
        margin-left: 20px;
    }
    
    #content-external-content {
        margin-left: 10px;
    }
    
    #content-situations-title {
        font-size: 26px;
        line-height: 38px;
        margin-bottom: 25px;
    }
    
    #content-situations-title h2 {
        font-size: 26px;
    }
    
    #content-situations-intro {
        padding-right: 80px;
        margin-bottom: 25px;
        font-size: 15px;
        line-height: 20px;
    }
    
    #content-external-content button {
        width: 350px;
        font-size: 18px;
    }
    
    #content-review {
        font-size: 20px;
        line-height: 32px;
    }
    
    #content-brands-logos {
        height: auto;
        margin-bottom: 80px;
    }
    
    .menu-footer-menu-container {
        height: auto;
        min-height: 140px;
    }
    
    #content-brands-logos .logo {
        width: 20%;
        margin-right: 4%;
    }
    
    #content-brands-logos .logo:nth-child(4n) {
        margin-right: 0;
    }
    
    #footer-wrapper-bg {
        width: 85%;
    }
    
    h2 {
        font-size: 28px;
        line-height: 36px;
    }
    
    h2#subtitle span {
        font-size: 44px;
        line-height: 18px;
    }
    
    .vloer-select-intro {
        margin-right: 20px;
        font-size: 17px;
        line-height: 28px;
    }
    
    .vloer-select {
        margin-right: 20px;
        font-size: 14px;
    }
    
    .block-left, .block-middle {
        margin-right: 40px;
    }
    .contact-form-wrapper {
        margin-right: 0px !important;
    }
    .store-details {
        padding: unset !important;
      }
      .store-info-section {
        margin-top: 122px;
      }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199px) {
    .container {
        width: 970px;
    }
	
	#desktop-nav .menu li.header-contact a {
		font-size: 16px;
	}
	#desktop-nav .menu li a {
		font-size: 16px; 
	}
	#header-top {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    
    #header-logo {
        height: 55px;
        width: 320px;
        margin-right: 30px;
    }
    
    #desktop-nav {
        width: 50%;
        margin-left: 80px;
        margin-top: 10px;
    }
    
    #desktop-nav .menu li a {
        font-size: 20px;
        margin: 0 25px;
    }
    
    #content-header h1 {
        font-size: 32px;
        line-height: 40px;
        margin-bottom: 32px;
    }
    
    #content-header-img {
        height: 380px;
    }
    
    #content-about-us-left {
        padding-left: 50px;
        padding-right: 80px;
    }
    
    #content-about-us-left span {
        font-size: 30px;
        line-height: 38px;
    }
    
    #content-floors-left {
        padding-left: 50px;
        padding-right: 70px;
        margin-bottom: 40px;
    }
    
    #content-floors-large-images .content-floors-img {
        height: 320px;
        margin-right: 30px;
    }
    
    #content-floors-small-images .content-floors-img {
        height: 110px;
        margin-bottom: 18px;
    }
    
    .content-floors-small-img .content-floors-img {
        padding-left: 30px;
    }
    
    #content-usp {
        width: 90%;
        margin: 70px auto;
    }
    
    .usp-wrapper {
        margin-right: 40px;
        font-size: 17px;
    }
    
    #content-external-img {
        height: 400px;
        margin-left: 40px;
    }
    
    #content-external-content {
        margin-left: 12px;
    }
    
    #content-situations-title {
        font-size: 28px;
        line-height: 40px;
        margin-bottom: 28px;
    }
    
    #content-situations-title h2 {
        font-size: 28px;
    }
    
    #content-situations-intro {
        padding-right: 120px;
        margin-bottom: 28px;
    }
    
    #content-external-content button {
        width: 400px;
        font-size: 19px;
    }
    
    #content-review {
        font-size: 21px;
        line-height: 34px;
    }
    
    #content-brands-logos {
        height: auto;
        margin-bottom: 100px;
    }
    
    .menu-footer-menu-container {
        height: auto;
        min-height: 140px;
    }
    
    #content-brands-logos .logo {
        width: 18%;
        margin-right: 3.5%;
    }
    
    #content-brands-logos .logo:nth-child(5n) {
        margin-right: 0;
    }
    
    #footer-wrapper-bg {
        width: 80%;
    }
    
    h2 {
        font-size: 30px;
        line-height: 38px;
    }
    
    h2#subtitle span {
        font-size: 48px;
        line-height: 19px;
    }
    
    .vloer-select-intro {
        margin-right: 25px;
        font-size: 17.5px;
        line-height: 30px;
    }
    
    .vloer-select {
        margin-right: 25px;
        font-size: 14.5px;
    }
    
    .block-left, .block-middle {
        margin-right: 50px;
    }
    .contact-form-wrapper {
        margin-right:0px !important;
    }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
    
    /* Default styles are already set for large screens */
    /* Additional large screen optimizations can be added here */
    
    #content-usp {
        width: 100%;
        max-width: 972px;
    }
    
    #content-about-us-left {
        padding-right: 60px;
    }
    
    #content-floors-left {
        padding-right: 45px;
    }
    
    #content-situations-intro {
        padding-right: 90px;
    }
    
    #content-brands-logos {
        height: auto;
        margin-bottom: 120px;
    }
    
    .menu-footer-menu-container {
        height: auto;
        min-height: 140px;
    }
    
    #content-brands-logos .logo {
        width: 16%;
        margin-right: 5%;
    }
    
    #content-brands-logos .logo:nth-child(5n) {
        margin-right: 0;
    }
}
@media (max-width: 1400px) {       
    #footer-wrapper {
        height: 200px;
    }
}
/* Extra Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
    .container {
        width: 1440px;
    }
    
    #header-top {
        margin-top: 84px;
        margin-bottom: 84px;
    }
    
    #header-logo {
        height: 58px;
        width: 363px;
        margin-right: 40px;
    }
    
    #desktop-nav {
        width: 50%;
        margin-left: 130px;
        margin-top: 12px;
    }
    
    #desktop-nav .menu li a {
        font-size: 22px;
        margin: 0 33px;
    }
    
    #content-header h1 {
        font-size: 36px;
        line-height: 44px;
        margin-bottom: 36px;
    }
    
    #content-header-img {
        height: 426px;
    }
    
    #content-about-us-left {
        padding-left: 67px;
        padding-right: 123px;
        font-size: 16px;
        line-height: 20px;
    }
    
    #content-about-us-left span {
        font-size: 34px;
        line-height: 42px;
    }
    
    #content-floors-left {
        padding-left: 67px;
        padding-right: 90px;
        margin-bottom: 44px;
        font-size: 16px;
        line-height: 21px;
    }
    
    #content-floors-large-images .content-floors-img {
        height: 368px;
        margin-right: 38px;
    }
    
    #content-floors-small-images .content-floors-img {
        height: 123px;
        margin-bottom: 21px;
    }
    
    .content-floors-small-img .content-floors-img {
        padding-left: 38px;
    }
    
    #content-usp {
        width: 972px;
        margin: 84px auto;
    }
    
    .usp-wrapper {
        margin-right: 50px;
        font-size: 18px;
    }
    
    #content-external-img {
        height: 450px;
        margin-left: 53px;
    }
    
    #content-external-content {
        margin-left: 16px;
    }
    
    #content-situations-title {
        font-size: 30px;
        line-height: 44px;
        margin-bottom: 30px;
    }
    
    #content-situations-title h2 {
        font-size: 30px;
    }
    
    #content-situations-intro {
        padding-right: 184px;
        margin-bottom: 30px;
        font-size: 16px;
        line-height: 21px;
    }
    
    #content-external-content button {
        width: 446px;
        font-size: 20px;
    }
    
    #content-review {
        font-size: 22px;
        line-height: 37px;
    }
    
    #content-brands-logos .logo {
        width: 16%;
        margin-right: 5%;
    }
    
    #content-brands-logos .logo:nth-child(5n) {
        margin-right: 0;
    }
    
    #footer-wrapper-bg {
        width: 70%;
    }
    
    h2 {
        font-size: 32px;
        line-height: 40px;
    }
    
    h2#subtitle span {
        font-size: 52px;
        line-height: 20px;
    }
    
    .vloer-select-intro {
        margin-right: 29px;
        font-size: 18.322px;
        line-height: 32px;
    }
    
    .vloer-select {
        margin-right: 29px;
        font-size: 15px;
    }
    
    .block-left, .block-middle {
        margin-right: 76px;
    }
}

/* Extra small mobile devices (phones, less than 480px) */
@media (max-width: 479px) {
    #content-external-content button {
        width: 100%;
        max-width: 280px;
        padding: 10px 16px;
        font-size: 14px;
        border-radius: 35px;
        gap: 6px;
    }
    
    #content-external-content button span {
        width: 18px;
        height: 16px;
    }
    
    /* Extra small screen improvements */
    #content-header h1 {
        font-size: 20px;
        line-height: 36px;
    }
    
    #content-about-us-left {
        font-size: 13px;
        line-height: 16px;
        padding-left: 10px;
        padding-right: 10px;
    }
    
    #content-about-us-left span {
        font-size: 20px;
        line-height: 24px;
    }
    
    #content-floors-left {
        font-size: 13px;
        line-height: 16px;
        padding-left: 10px;
        padding-right: 10px;
    }
    
    .vloer-select {
        font-size: 14px;
        padding: 8px 12px;
    }
    
    #content-situations-title h2 {
        font-size: 20px;
        line-height: 26px;
    }
    
    #content-situations-intro {
        font-size: 13px;
        line-height: 16px;
    }
}

/* Landscape orientation for mobile devices */
@media (max-width: 767px) and (orientation: landscape) {
    #header-top {
        margin-top: 15px;
        margin-bottom: 15px;
    }
    
    #content-header-img {
        height: 200px;
    }
    
    #content-external-img {
        height: 200px;
    }
}

/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    #header-logo {
        background-image: url('img/logo-alfa.svg');
        background-size: contain;
    }
    
    #footer-logo {
        background-image: url('img/logo-alfa-small.svg');
        background-size: contain;
    }
    
    .pre-header-top-wrapper-block #left {
        background-image: url(img/map.svg);
        background-size: contain;
    }
    
    .pre-header-top-wrapper-block #middle {
        background-image: url(img/mobile.svg);
        background-size: contain;
    }
    
    .pre-header-top-wrapper-block #right {
        background-image: url(img/mail.svg);
        background-size: contain;
    }
    
    .usp-wrapper .first {
        background-image: url(img/hart.svg);
        background-size: contain;
    }
    
    .usp-wrapper .second {
        background-image: url(img/meetlat.svg);
        background-size: contain;
    }
    
    .usp-wrapper .third {
        background-image: url(img/bus.svg);
        background-size: contain;
    }
    
    .usp-wrapper .fourth {
        background-image: url(img/hamer.svg);
        background-size: contain;
    }
    
    #content-external-content button span {
        background-image: url(img/camera.svg);
        background-size: contain;
    }
}

/* Print styles */
@media print {
    #pre-header-top,
    #mobile-nav,
    #desktop-nav,
    #footer-wrapper-bg {
        display: none !important;
    }
    
    .container {
        width: 100% !important;
        max-width: none !important;
    }
    
    body {
        font-size: 12pt;
        line-height: 1.4;
        color: #000;
        background: #fff;
    }
    
    h1, h2, h3, h4, h5, h6 {
        color: #000;
        page-break-after: avoid;
    }
    
    a {
        color: #000;
        text-decoration: underline;
    }
    
    img {
        max-width: 100% !important;
        height: auto !important;
    }
}

/* =========================================
   HOME PAGE MODAL & GALLERY STYLES
   ========================================= */

/* Modal Styles */
.modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.9);
}

/* Full-screen external iframe overlay */
#external-iframe-overlay{
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.85);
	z-index: 10000;
	display: none;
}
#external-iframe-overlay iframe{
	width: 100%;
	height: 100%;
	border: 0;
	background: #fff;
}
#external-iframe-overlay .external-iframe-close{
	position: absolute;
	right: 16px;
	top: 10px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255,255,255,0.9);
	border: none;
	cursor: pointer;
	padding: 0;
	font-size: 0; /* hide original × text */
	line-height: 0;
	text-align: center;
	color: #333;
	z-index: 10001;
}
#external-iframe-overlay .external-iframe-close::before,
#external-iframe-overlay .external-iframe-close::after{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 2px;
	background: #333;
	transform-origin: center;
	transform: translate(-50%, -50%) rotate(45deg);
}
#external-iframe-overlay .external-iframe-close::after{
	transform: translate(-50%, -50%) rotate(-45deg);
}
#external-iframe-overlay .external-iframe-close:hover{
	background: #fff;
}

.modal-content {
    position: relative;
    margin: 5% auto;
    width: 90%;
    max-width: 800px;
    background: white;
    border-radius: 8px;
    padding: 20px;
}

.close {
    position: absolute;
    right: 20px;
    top: 15px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    z-index: 1000;
}

.close:hover {
    color: #999;
}

.modal-body {
    padding: 20px 0;
}

.image-gallery-container {
    text-align: center;
}

.gallery-main-image {
    margin-bottom: 20px;
}

.gallery-main-image img {
    max-width: 100%;
    max-height: 400px;
    object-fit: contain;
}

.gallery-thumbnails {
    position: relative;
}

.gallery-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 10;
}

.gallery-prev, .gallery-next {
    position: absolute;
    background: rgba(255,255,255,0.8);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 20px;
    cursor: pointer;
    transition: background 0.3s;
}

.gallery-prev:hover, .gallery-next:hover {
    background: rgba(255,255,255,1);
}

.gallery-prev {
    left: -20px;
}

.gallery-next {
    right: -20px;
}

.gallery-thumbnails-container {
    display: flex;
    overflow-x: auto;
    gap: 10px;
    padding: 10px 0;
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

.gallery-thumbnails-container::-webkit-scrollbar {
    height: 6px;
}

.gallery-thumbnails-container::-webkit-scrollbar-track {
    background: transparent;
}

.gallery-thumbnails-container::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}

.gallery-thumbnail {
    flex-shrink: 0;
    width: 80px;
    height: 60px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.3s;
}

.gallery-thumbnail.active {
    border-color: #007cba;
}

.gallery-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* White box for image scrolling */
.content-floors-small-img {
    cursor: pointer;
    transition: transform 0.3s ease;
}

.content-floors-small-img:hover {
    transform: scale(1.05);
}

.content-floors-img {
    cursor: pointer;
}

/* =========================================
   CONTACT PAGE STYLES
   ========================================= */

.contact-page {
    padding: 60px 0;
}
#contact-top{
	background-image:url('img/contact_top_bg.svg');
	background-repeat:no-repeat;
	background-position: 65% 65%;
	max-width: 2000px;
	margin: 0 auto;
	position: relative;
}
#contact-middle{
	background-image:url('img/contact_middle_bg.svg');
	background-repeat:no-repeat;
	background-position: 0% 4%;
	max-width: 1900px;
	margin: 0 auto;
	position: relative;
}  

.contact-main-section {
    padding-bottom: 84px; 
}
.contact-form-wrapper{
	margin-right: 80px;
}
.contact-info-section h1 {
    color: #5e4632;
    margin-bottom: 30px;
    font-size: 2.5rem;
    font-weight: 700;
}

.contact-info-section p {
    color: #6c757d;
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 40px;
}

.contact-buttons {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
	margin-left: 40px;
}

/* Contact button styling */
.contact-btn {
    padding: 12px 24px;
    border-radius: 6px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    font-size: 14px;
    border: 2px solid;
}

.btn-outline-primary.contact-btn {
    border-color: #5e4632;
    color: #5e4632;
    background: white;
}
.btn{
	--bs-btn-border-width: 0px !important;
}
.btn-outline-primary.contact-btn:hover {
    background: #5e4632;
    color: white;
}

.btn-primary.contact-btn {
    background: #5e4632;
    border-color: #5e4632;
    color: white;
	text-decoration: underline;
	font-weight: 600;
}

.btn-primary.contact-btn:hover {
    background: #4a3728;
    border-color: #4a3728;
    color: white;
}
.contact-info-section .btn:hover {
	border-color: #5e4632;
}
.store-info-section {
	height:426px;
}

.store-image img {
    width: 100%;
    height: 426px;
    object-fit: cover;
}

.store-details {
    padding: 30px;
}

.store-details h2 {
    color: #5e4632;
    margin-bottom: 47px;
    font-size: 2rem;
    font-weight: 700;
}

.store-details h3 {
    color: #171716;
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 15px;
	text-align:center;
}
.store-details .address h3{
	text-align:left;
}

.opening-hours {
    border: 1px solid #e4ded6;
    border-radius: 10px;
    background: #fff;
    padding: 16px 20px;
    display: inline-block;
    margin-bottom: 47px;
}
.opening-hours tr td:first-child{
	text-align:right;
}
.opening-hours tr td:nth-child(2){
	color: #9A9A9A;
}
.opening-hours span{
	color:#9A9A9A;
}


.opening-hours table {
    margin-bottom: 0;
	color: #171716;
	font-family: Lato;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 35px;
}

.opening-hours td {
    padding: 8px 0;
    color: #6c757d;
}

.opening-hours td:first-child {
    font-weight: 500;
}

.address p {
	color: #171716;
	font-family: Lato;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 35px;
}
.contact-form{
	background: #fff;
	padding: 41px 33px;
}

.contact-form-section {
    margin-bottom: 84px;
}

.contact-form-wrapper {
	border-radius: 50px;
	background-color: #F7FBF2;
	box-shadow: 6px 4px 15.6px 0 rgba(0, 0, 0, 0.11);
}

.contact-form .form-group {
    margin-bottom: 25px;
}

.contact-form label {
	color: #171716;
	font-family: Lato;
	font-size: 17px;
	font-style: normal;
	font-weight: 400;
	line-height: 35px; /* 205.882% */
}

.contact-form .form-control {
    border: 2px solid #e9ecef;
    padding: 12px 15px;
    font-size: 1rem;
    transition: border-color 0.3s ease;
	border-radius: 8px;
	background: #EFECE9;
	box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.05) inset;
	color: #B7B2AD;
	font-family: Lato;
	font-size: 17px;
	font-style: normal;
	font-weight: 400;
	line-height: 35px; 
}
.contact-form .form-control::placeholder{
	color: #B7B2AD;
	font-family: Lato;
	font-size: 17px;
	font-style: normal;
	font-weight: 400;
	line-height: 35px; 
}
.contact-form .form-control:focus {
    border-color: #5e4632;
    box-shadow: 0 0 0 0.2rem rgba(94, 70, 50, 0.25);
}

.submit-btn {
	border-radius: 50px !important;
    border: none;
    color: white;
    padding: 15px 30px;
    border-radius: 50px;
	background: #F3A279;
	background-color: #F3A279 !important;
	border-color: #F3A279 !important;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
	width:100% !important;
	color: #FFF !important;
	font-family: Lato !important;
	font-size: 23px !important;
	font-style: normal !important;
	font-weight: 700 !important;
	line-height: 35px !important; /* 152.174% */
}

.submit-btn:hover {
    background: #e55a2b;
    color: white;
    border:0px;
}
.arrow-right{
	display:block;
	width: 50px;
	height: 50px;
	float:left;
	background-image: url('img/arrow-right.svg');  
}
.fa-arrow-right::before{	 
	font-family: none !important; /* verwijdert standaard icoon */
}
.submit-btn span{
	position: relative;
	right: 22px;
	top: 5px;
}

/* Full-bleed map */
.map-section {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    --bs-gutter-x: 0 !important;
}

/* Override Bootstrap gutter for map section */
.map-section .row {
    margin-left: 0;
    margin-right: 0;
}

.map-section .col-12 {
    padding-left: 0;
    padding-right: 0;
}

.map-wrapper {
    background: white;
    border-radius: 0;
    overflow: hidden;
    box-shadow: none;
}

.map-container {
    height: 520px;
    width: 100%;
    overflow: hidden;
}

.service-icons-section {
    background: white;
    padding: 40px 0;
    border-top: 1px solid #e9ecef;
}

.service-icons-wrapper {
    height: 20px;
    text-align: center;
    position: relative;
    width: 972px;
    margin: 84px auto;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.service-icon {
    float: left;
    color: #908376;
    text-align: center;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-right: 50px;
    display: flex;
    align-items: center;
}

.service-icon:last-child {
    margin-right: 0px !important;
}

.service-icon .icon-wrapper.first {
    width: 25px;
    height: 26px;
    fill: #908376;
    background: url(img/hart.svg) no-repeat;
    display: inline-block;
    margin-right: 5px;
    top: 8px;
    position: relative;
    border-radius: 0;
    background-color: transparent;
}

.service-icon .icon-wrapper.second {
    width: 32px;
    height: 26px;
    fill: #908376;
    background: url(img/meetlat.svg) no-repeat;
    display: inline-block;
    margin-right: 5px;
    top: 8px;
    position: relative;
}

.service-icon .icon-wrapper.third {
    width: 32px;
    height: 26px;
    fill: #908376;
    background: url(img/bus.svg) no-repeat;
    display: inline-block;
    margin-right: 5px;
    top: 8px;
    position: relative;
}

.service-icon .icon-wrapper.fourth {
    width: 32px;
    height: 26px;
    fill: #908376;
    background: url(img/hamer.svg) no-repeat;
    display: inline-block;
    margin-right: 5px;
    top: 4px;
    position: relative;
}

.service-icon span {
    color: #908376;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
body.page-template-page-contact .service-icon span{
	margin-top:12px;
}

.alert {
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 25px;
    border: none;
    display: flex;
    align-items: center;
    gap: 10px;
}

.alert-success {
    background-color: #d4edda;
    color: #155724;
}

.alert-danger {
    background-color: #f8d7da;
    color: #721c24;
}

.alert i {
    font-size: 1.2rem;
}

/* Responsive Design for Contact Page */
@media (max-width: 768px) {
    .contact-buttons {
        flex-direction: column;
    }
    
    .contact-btn {
        width: 100%;
        justify-content: center;
    }
    
    .service-icons-wrapper {
        width: 100%;
        height: auto;
        margin: 40px auto;
        text-align: center;
        flex-direction: column;
        gap: 20px;
    }
    
    .service-icon {
        float: none;
        margin-right: 0;
        margin-bottom: 20px;
        font-size: 16px;
    }
    
    .contact-form-wrapper {
        padding: 25px;
    }
    
    .store-details {
        padding: 20px;
    }
    
    .contact-form-section .col-6 {
        width: 100%;
        margin-bottom: 30px;
    }
    #footer-wrapper {
        height: unset;
    }
	#content-floors{
		padding-top:38px;
	}
	#content-floors-small-images .content-floors-img {
		background-size: auto;
	}
}

@media (max-width: 576px) {
    .contact-page {
        padding: 40px 0;
    }
    
    .contact-info-section h1 {
        font-size: 2rem;
    }
    
    .store-details h2 {
        font-size: 1.5rem;
    }
    #footer-wrapper {
        height: unset;
    }
}

