@charset "utf-8";

/* Filter Grid Layout - Full Width with rem spacing */
.filters-row-1, 
.filters-row-2 {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1.6rem !important;
    margin-bottom: 1.3rem !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Force 3 columns for archived and expected pages */
body.archived-page .filters-row-1,
body.archived-page .filters-row-2,
body.expected-page .filters-row-1,
body.expected-page .filters-row-2 {
    grid-template-columns: repeat(3, 1fr) !important;
}

/* Force 4 columns for live occasions only */
body:not(.archived-page):not(.expected-page) .filters-row-1,
body:not(.archived-page):not(.expected-page) .filters-row-2 {
    grid-template-columns: repeat(4, 1fr) !important;
}

/* Ultrawide: more gap between filters */
@media (min-width: 1800px) {
    .filters-row-1, 
    .filters-row-2 {
        gap: 2.2rem !important;
    }
}

.filters-row-1 .filter-group,
.filters-row-2 .filter-group {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.filters-row-1 .filter-group label,
.filters-row-2 .filter-group label {
    font-size: clamp(13px, 1rem, 16px);
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #000000;
}

/* Responsive grid */
@media (max-width: 1200px) {
    .filters-row-1, 
    .filters-row-2 {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
}

/* Luxury Search Box Styling - with minimum font size */
.modern-search-input,
input[name="q"] {
    background: #e0dcd4 !important;
    border-radius: 0.75rem !important;
    padding: 1.2rem 3.2rem 1.2rem 1.6rem !important;
    font-size: clamp(16px, 1.2rem, 20px) !important;
    font-weight: 400 !important;
    color: #000000 !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
    letter-spacing: 0.3px !important;
    width: 100% !important;
}

.filter-search-section {
    margin-bottom: 2rem !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-left: auto;
    margin-right: auto;
}

.search-input-group {
    position: relative;
    width: 100% !important;
}

.search-icon {
    position: absolute !important;
    right: 1.6rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #000000 !important;
    font-size: 1.25rem !important;
    pointer-events: none !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
}

.filter-group label {
    font-weight: 600 !important;
    margin-bottom: 5px !important;
    color: #000000 !important;
    font-size: clamp(14px, 1rem, 16px) !important;
}

/* Bootstrap-Select Custom Styling */
.bootstrap-select .btn {
    width: 100% !important;
    background: #e0dcd4 !important;
    border-radius: 8px !important;
    padding: 12px 40px 12px 15px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 3px 12px rgba(0,0,0,0.12) !important;
    cursor: pointer !important;
    text-align: left !important;
    height: auto !important;
    min-height: 45px !important;
}

.bootstrap-select .btn:focus,
.bootstrap-select.open .btn {
    box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important;
    background: #e0dcd4 !important;
    outline: none !important;
}

.bootstrap-select .btn:hover {
    transform: translateY(-1px) !important;
}

/* REMOVED: Basic hover caret styling - handled by high-specificity rules */

/* Bootstrap-Select Active States */
.bootstrap-select .btn:active {
    transform: translateY(0px) scale(0.98) !important;
    transition: all 0.1s ease !important;
}

/* Bootstrap-Select Animation Effects */
@keyframes dropdownPulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.03); }
    100% { transform: scale(1.02); }
}

.bootstrap-select .btn:focus {
    animation: dropdownPulse 0.3s ease-out !important;
}

/* Bootstrap-Select Dropdown Menu Container - Outer DIV only */
.bootstrap-select > .dropdown-menu:not(.inner) {
    border-radius: 8px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
    background: #e0dcd4 !important;
    margin-top: 2px !important;
    padding: 0 !important;
    overflow: visible !important;
    /* Override Bootstrap's display behavior for animations */
    display: block !important;
    /* Animation setup */
    opacity: 0 !important;
    transform: translateY(-10px) scaleY(0.8) !important;
    transform-origin: top center !important;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    visibility: hidden !important;
}

/* Bootstrap-Select Inner Scrollable UL - Target only the inner list */
.bootstrap-select ul.dropdown-menu.inner.selectpicker {
    max-height: 280px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 4px 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Custom Scrollbar for Inner UL Only */
.bootstrap-select ul.dropdown-menu.inner.selectpicker::-webkit-scrollbar {
    width: 6px !important;
}

.bootstrap-select ul.dropdown-menu.inner.selectpicker::-webkit-scrollbar-track {
    background: transparent !important;
}

.bootstrap-select ul.dropdown-menu.inner.selectpicker::-webkit-scrollbar-thumb {
    background: #99958a8c !important;
    border-radius: 3px !important;
}

.bootstrap-select ul.dropdown-menu.inner.selectpicker::-webkit-scrollbar-thumb:hover {
    background: #99958a8c !important;
}

/* Dropdown open animation */
.bootstrap-select.open .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) scaleY(1) !important;
}

.bootstrap-select .dropdown-menu li a,
.bootstrap-select .dropdown-menu > li a {
    display: block !important;
    padding: 10px 20px !important;
    color: #000000 !important;
    font-size: 14px !important;
    background-image: none !important;
    border-left: 3px solid transparent !important;
    position: relative !important;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.bootstrap-select .dropdown-menu li,
.bootstrap-select .dropdown-menu > li,
.bootstrap-select .dropdown-menu li:hover,
.bootstrap-select .dropdown-menu > li:hover,
.bootstrap-select .dropdown-menu li.active,
.bootstrap-select .dropdown-menu li.selected,
.bootstrap-select .dropdown-menu li.highlighted,
.dropdown-menu li,
.dropdown-menu > li,
.dropdown-menu li:hover,
.dropdown-menu > li:hover,
.dropdown-menu li.active,
.dropdown-menu li.selected {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.bootstrap-select .dropdown-menu li a::before {
    content: '' !important;
    position: absolute !important;
    left: -2px !important;
    top: 0 !important;
    height: 100% !important;
    width: 0 !important;
    background: linear-gradient(90deg, #e0dcd4 0%, rgba(224, 220, 212, 0.3) 100%) !important;
    transition: width 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    opacity: 0 !important;
    z-index: -1 !important;
}

/* Nuclear option - override ALL possible hover states */
.bootstrap-select .dropdown-menu li:hover,
.bootstrap-select .dropdown-menu > li:hover,
.bootstrap-select .dropdown-menu li.active,
.bootstrap-select .dropdown-menu li.selected,
.bootstrap-select .dropdown-menu li a:hover,
.bootstrap-select .dropdown-menu li.selected a,
.bootstrap-select .dropdown-menu > li > a:hover,
.bootstrap-select .dropdown-menu > li > a:focus,
form .bootstrap-select div.dropdown-menu ul li a:hover,
form .bootstrap-select div.dropdown-menu ul li:hover,
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-menu > li:hover,
.bootstrap-select .dropdown-menu li.highlighted,
.bootstrap-select .dropdown-menu li a.highlighted,
.bootstrap-select .dropdown-menu .highlighted,
.bootstrap-select .dropdown-menu li a:active,
.bootstrap-select .dropdown-menu li:active {
    color: #000000 !important;
    border-left-color: #e0dcd4 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    font-weight: 600 !important;
    transform: scale(1.02) !important;
    text-shadow: none !important;
}

/* Force override any remaining white backgrounds */
.bootstrap-select .dropdown-menu * {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.bootstrap-select .dropdown-menu li a:hover::before,
.bootstrap-select .dropdown-menu li.selected a::before {
    width: 100% !important;
    opacity: 1 !important;
}

.modern-search-input::placeholder,
input[name="q"]::placeholder {
    color: #000000 !important;
    opacity: 0.5 !important;
}

.modern-filter-panel {
    transition: all 0.4s ease !important;
    width: 100% !important;
    max-width: 100% !important;
}

.filter-animation {
    animation: filterPulse 0.6s ease-out !important;
}

@keyframes filterPulse {
    0% { opacity: 0.8; }
    50% { opacity: 1; transform: scale(1.01); }
    100% { opacity: 1; transform: scale(1); }
}

/* Collection Title Styling */
.collection-title {
    color: #000000 !important;
    margin-bottom: 35px !important;
    margin-top: 0 !important;
    padding-top: 40px !important;
    text-align: center !important;
    font-size: 40px !important;
    font-weight: 400 !important;
    letter-spacing: -0.5px !important;
}

/* Clear Filters Button Positioning */
.clear-filters-container {
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 15px !important;
    width: 100% !important;
}

.modern-filter-button {
    background: linear-gradient(135deg, #c9c4b5 0%, #d3cec2 100%) !important;
    border: 2px solid #d4d0c4 !important;
    color: #333333 !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    font-size: clamp(14px, 1rem, 16px) !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 3px 12px rgba(0,0,0,0.12) !important;
}

.modern-search-input:hover,
input[name="q"]:hover {
    background: #e0dcd4 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.18) !important;
    color: #000000 !important;
}

/* MOBILE OCCASION FILTERS - COMPLETE OVERHAUL */
@media (max-width: 767px) {
    /* Filter container - FULL WIDTH */
    #listing-filter-container {
        padding: 25px 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .listing-filter {
        width: 100% !important;
        padding: 0 15px !important;
        margin: 0 !important;
    }
    
    /* Page title */
    .occasion-listing h1,
    .listing-filter + h1,
    #listing-filter-container h1 {
        font-size: 32px !important;
        text-align: center !important;
        margin: 25px 0 20px 0 !important;
        padding: 0 15px !important;
        color: #000000 !important;
        font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    }
    
    /* Search input */
    .search-container,
    .search-input-container {
        width: 100% !important;
        margin-bottom: 20px !important;
        padding: 0 !important;
    }
    
    input[type="search"],
    input[name="search"],
    .search-input {
        width: 100% !important;
        padding: 14px 40px 14px 16px !important;
        font-size: 16px !important;
        border-radius: 8px !important;
        border: 1px solid rgba(0, 0, 0, 0.15) !important;
        background: #e0dcd4 !important;
        color: #000000 !important;
    }
    
    /* Filter rows */
    .filters-row-1, 
    .filters-row-2 {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        padding: 0 !important;
		margin-bottom: 18px !important;
        width: 100% !important;
    }
    
    /* Filter groups */
    .filters-row-1 .filter-group, 
    .filters-row-2 .filter-group {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Filter labels */
    .filter-group label {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #000000 !important;
        margin-bottom: 8px !important;
        display: block !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    }
    
    /* Bootstrap select container */
    .filter-group .bootstrap-select,
    .filter-group .btn-group.bootstrap-select {
        width: 100% !important;
        display: block !important;
    }
    
    /* Bootstrap select button - FIX TEXT CUTOFF */
    .filter-group .bootstrap-select .btn,
    .filter-group .bootstrap-select button.btn,
    .filter-group .btn-group.bootstrap-select button {
        width: 100% !important;
        min-height: 52px !important;
        padding: 14px 50px 14px 16px !important;  /* Extra right padding for caret */
        font-size: 15px !important;
        text-align: left !important;
        border: 1px solid rgba(0, 0, 0, 0.15) !important;
        border-radius: 8px !important;
        color: #000000 !important;
        font-weight: 400 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    
    /* Filter option text */
    .filter-group .bootstrap-select .btn .filter-option,
    .filter-group .bootstrap-select .btn .filter-option-inner {
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        flex: 1 !important;
        text-align: left !important;
        padding-right: 10px !important;
    }
    
    /* Caret positioning - KEEP IT ON THE RIGHT */
    .filter-group .bootstrap-select .btn .caret {
        position: absolute !important;
        right: 16px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        border: none !important;
        width: auto !important;
        height: auto !important;
    }
    
    .filter-group .bootstrap-select.open .btn .caret {
        transform: translateY(-50%) rotate(180deg) !important;
    }
    
    /* Dropdown menu */
    .filter-group .bootstrap-select .dropdown-menu {
        width: 100% !important;
        max-height: 350px !important;
        overflow-y: auto !important;
        background: #e0dcd4 !important;
        border: 1px solid rgba(0, 0, 0, 0.15) !important;
        border-radius: 8px !important;
        margin-top: 4px !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    }
    
    /* Dropdown menu items */
    .filter-group .bootstrap-select .dropdown-menu li {
        width: 100% !important;
    }
    
    .filter-group .bootstrap-select .dropdown-menu li a {
        padding: 14px 16px !important;
        font-size: 15px !important;
        color: #000000 !important;
        min-height: 48px !important;
        display: flex !important;
        align-items: center !important;
        background: transparent !important;
        white-space: normal !important;
        word-wrap: break-word !important;
    }
    
    .filter-group .bootstrap-select .dropdown-menu li a:hover,
    .filter-group .bootstrap-select .dropdown-menu li a:focus,
    .filter-group .bootstrap-select .dropdown-menu li.active a,
    .filter-group .bootstrap-select .dropdown-menu li.selected a {
        background: rgba(224, 220, 212, 0.3) !important;
        color: #000000 !important;
        font-weight: 600 !important;
        transform: translateX(3px) !important;
        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }
    
    /* Clear filters button */
    .clear-filters-btn,
    button[type="reset"] {
        width: 100% !important;
        padding: 14px !important;
        font-size: 15px !important;
        min-height: 48px !important;
    }
    
    .filters-header {
        flex-direction: column !important;
        text-align: center !important;
    }
}

/*@import "../css/jquery.fancybox.css";*/
/*************************************/
/* LESS
/*************************************/
/*@b64_logo_VA:	data-uri('image/jpeg;base64', '../images/logo-white-no-border_180x180.png');
@b64_icon_user:	data-uri('image/jpeg;base64', '../images/icon-white-user.png');*/
/* Bootstrap select */
/*************************************/
/* Fonts
/*************************************/
@font-face {
	font-family: 'VAA';
	src: url('/assets/fonts/Corporate A Regular.eot');
	src: local('&#9786;'), url('/assets/fonts/Corporate A Regular.woff') format('woff'), url('/assets/fonts/Corporate A Regular.ttf') format('truetype'), url('/assets/fonts/Corporate A Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'VAA Italic';
	src: url('/assets/fonts/Corporate A Italic.eot');
	src: local('&#9786;'), url('/assets/fonts/Corporate A Italic.woff') format('woff'), url('/assets/fonts/Corporate A Italic.ttf') format('truetype'), url('/assets/fonts/Corporate A Italic.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'VAA Bold';
	src: url('/assets/fonts/Corporate A Bold.eot');
	src: local('&#9786;'), url('/assets/fonts/Corporate A Bold.woff') format('woff'), url('/assets/fonts/Corporate A Bold.ttf') format('truetype'), url('/assets/fonts/Corporate A Bold.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
/*************************************/
/* Animations / Keyframes
/*************************************/
/*@-webkit-keyframes some-animation {.mixi-frames;}
@-moz-keyframes some-animation {.mixi-frames;}
@-ms-keyframes some-animation {.mixi-frames;}
@-o-keyframes some-animation {.mixi-frames;}
@keyframes some-animation {.mixi-frames;}*/
@keyframes rotateanim {
	0% {
		transform: rotate(140deg);
	}
	100% {
		transform: rotate(500deg);
	}
}
@-webkit-keyframes rotateanim {
	0% {
		-webkit-transform: rotate(140deg);
	}
	100% {
		-webkit-transform: rotate(500deg);
	}
}
@-moz-keyframes rotateanim {
	0% {
		-moz-transform: rotate(140deg);
	}
	100% {
		-moz-transform: rotate(500deg);
	}
}
@-o-keyframes rotateanim {
	0% {
		-o-transform: rotate(140deg);
	}
	100% {
		-o-transform: rotate(500deg);
	}
}
@-ms-keyframes rotateanim {
	0% {
		-ms-transform: rotate(140deg);
	}
	100% {
		-ms-transform: rotate(500deg);
	}
}
.carousel-inner>.item>a>img,
.carousel-inner>.item>img,
.img-responsive,
.thumbnail a>img,
.thumbnail>img {
	display: block;
	max-width: 100%;
	height: auto !important;
}

/*************************************/
/* Icons / Font Awesome
/*************************************/
.fa.fa-circle-border {
	display: inline-block;
	text-align: center;
	border: 1px solid #e0dcd4;
	-webkit-border-radius: 300px;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 300px;
	-moz-background-clip: padding;
	border-radius: 300px;
	background-clip: padding-box;
}
@media (min-width: 768px) {
	.fa.fa-circle-border {
		padding: 4px 2px;
	}
}
.fa.fa-my-va {
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
.fa.fa-my-va:before {
	color: #e0dcd4;
	content: "MY";
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 10px;
}
.fa.fa-my-va.fa-2:before {
	font-size: 26px;
}
@media (max-width: 768px) {
	.fa.fa-my-va.fa-2:before {
		font-size: 22px;
		top: 8px;
	}
}
.fa.fa-my-va.fa-my-va-add:hover:before {
	content: "+";
	height: 47px;
	font-size: 2em !important;
}
.fa.fa-my-va.fa-my-va-remove {
/*&:hover:before{
content:		"-";
height: 		40px;
font-size:		3em !important;
line-height: 	0.5em;
}*/
}
.fa.fa-my-va.fa-my-va-remove:before {
	content: "-";
	height: 40px;
	font-size: 3em !important;
	line-height: 0.6em;
}
@media (max-width: 768px) {
	.fa.fa-my-va.fa-my-va-add:hover:before {
		top: 0;
	}
	.fa.fa-my-va.fa-my-va-remove:before {
		top: 0;
	}
}
.fa.fa-my-va.fa-my-va-remove:hover:before {
	margin: 2px 0 !important;
}
.fa-2 {
	font-size: 2em;
}
.fa-3 {
	font-size: 4em;
}
.fa-4 {
	font-size: 7em;
}
.fa-5 {
	font-size: 12em;
}
.fa-6 {
	font-size: 20em;
}
.fa-arrow-left:before {
	content: '';
	background: url('../images/custom-icon-set.png') no-repeat center;
	background-position: 60% -838px;
}
.fa-arrow-right:before {
	content: '';
	background: url('../images/custom-icon-set.png') no-repeat center;
	background-position: -20px -1244px;
}
.fa-th:before {
	content: '';
	background: url('../images/custom-icon-set.png') no-repeat center;
	background-position: -20px -1294px;
}
.fa-printer:before {
	content: '';
	background: url('../images/custom-icon-set.png') no-repeat center;
	background-position: -20px -1494px;
}
.fa-pdf:before {
	content: '';
	background: url('../images/custom-icon-set.png') no-repeat center;
	background-position: -20px -1444px;
}
.sprite {
	background: url("../images/custom-icon-set.png") top left no-repeat;
}
.sprite.bars_expanded {
	display: inline-block;
	width: 30px;
	height: 30px;
	background-position: -20px -428px;
}
.sprite.arrow_large_right_blue {
	width: 29px;
	height: 82px;
	background-position: -20px -20px;
}
.sprite.arrow_large_right_white {
	width: 29px;
	height: 82px;
	background-position: -20px -326px;
}
.sprite.bars {
	display: inline-block;
	width: 30px;
	height: 30px;
	background-position: -20px -478px;
}
.sprite.arrows_left_white {
	width: 32px;
	height: 32px;
	background-position: -20px -1140px;
}
.sprite.arrows_right_white {
	width: 32px;
	height: 32px;
	background-position: -20px -1192px;
}
.sprite.th {
	width: 30px;
	height: 30px;
	background-position: -20px -1294px;
}
.sprite.envelope {
	width: 30px;
	height: 30px;
	background-position: -20px -1394px;
}
.sprite.pdf {
	width: 30px;
	height: 30px;
	background-position: -20px -1444px;
}
.sprite.printer {
	width: 30px;
	height: 30px;
	background-position: -20px -1494px;
}
/*.sprite { background: url('../images/custom-icon-set.png') no-repeat top left; width: 30px; height: 30px;  } 
.sprite.arrow_down_blue { background-position: 0 0; } 
.sprite.arrow_down_white { background-position: 0 -50px; } 
.sprite.arrow_large_left_blue { background-position: 0 -100px; width: 35px; height: 102px; } 
.sprite.arrow_large_left_white { background-position: 0 -222px; width: 35px; height: 102px; } 
.sprite.arrow_large_right_blue { background-position: 0 -344px; width: 35px; height: 102px; } 
.sprite.arrow_large_right_white { background-position: 0 -466px; width: 35px; height: 102px; } 
.sprite.arrow_left_blue { background-position: 0 -588px; } 
.sprite.arrow_right_blue { background-position: 0 -638px; } 
.sprite.arrow_right_white { background-position: 0 -688px; } 
.sprite.arrow_up_blue { background-position: 0 -738px; } 
.sprite.arrow_up_white { background-position: 0 -788px; } 
.sprite.arrow_white_left { background-position: 0 -838px; } 
.sprite.arrows_down_blue { background-position: 0 -888px; width: 32px; height: 32px; } 
.sprite.arrows_down_white { background-position: 0 -940px; width: 32px; height: 32px; } 
.sprite.arrows_left_blue { background-position: 0 -992px; width: 32px; height: 32px; } 
.sprite.arrows_left_white { background-position: 0 -1044px; width: 32px; height: 32px; } 
.sprite.arrows_right_blue { background-position: 0 -1096px; width: 32px; height: 32px; } 
.sprite.arrows_right_white { background-position: 0 -1148px; width: 32px; height: 32px; } 
.sprite.arrows_up_blue { background-position: 0 -1200px; width: 32px; height: 32px; } 
.sprite.arrows_up_white { background-position: 0 -1252px; width: 32px; height: 32px; } 
.sprite.bars_expanded { background-position: 0 -1304px; } 
.sprite.bars { background-position: 0 -1354px; } 
.sprite.envelope { background-position: 0 -1404px; } 
.sprite.grid { background-position: 0 -1454px; } 
.sprite.pdf { background-position: 0 -1504px; } 
.sprite.printer { background-position: 0 -1554px; } */
.bootstrap-select {
	/*width: 220px\9; IE8 and below*/
	width: 220px \0;
	/*IE9 and below*/
}
.bootstrap-select > .btn {
	width: 100%;
	padding-right: 25px;
}
.error .bootstrap-select .btn {
	border: 1px solid #b94a48;
}
.control-group.error .bootstrap-select .dropdown-toggle {
	border-color: #b94a48;
}
.bootstrap-select.fit-width {
	width: auto !important;
}
.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
	width: 220px;
}
.bootstrap-select .btn:focus {
/*outline: thin dotted #333333 !important;
outline: 5px auto -webkit-focus-ring-color !important;
outline-offset: -2px;*/
}
.bootstrap-select.form-control {
	margin-bottom: 0;
	padding: 0;
	border: none;
}
.bootstrap-select.form-control:not([class*="col-"]) {
	width: 100%;
}
.bootstrap-select.btn-group:not(.input-group-btn),
.bootstrap-select.btn-group[class*="col-"] {
	float: none;
	display: inline-block;
	margin-left: 0;
}
.bootstrap-select.btn-group.dropdown-menu-right,
.bootstrap-select.btn-group[class*="col-"].dropdown-menu-right,
.row-fluid .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right {
	float: right;
}
.form-search .bootstrap-select.btn-group,
.form-inline .bootstrap-select.btn-group,
.form-horizontal .bootstrap-select.btn-group,
.form-group .bootstrap-select.btn-group {
	margin-bottom: 0;
}
.form-group-lg .bootstrap-select.btn-group.form-control,
.form-group-sm .bootstrap-select.btn-group.form-control {
	padding: 0;
}
.form-inline .bootstrap-select.btn-group .form-control {
	width: 100%;
}
.input-append .bootstrap-select.btn-group {
	margin-left: -1px;
}
.input-prepend .bootstrap-select.btn-group {
	margin-right: -1px;
}
.bootstrap-select.btn-group > .disabled {
	cursor: not-allowed;
}
.bootstrap-select.btn-group > .disabled:focus {
	outline: none !important;
}
.bootstrap-select.btn-group .btn .filter-option {
	display: inline-block;
	overflow: hidden;
	width: 100%;
	text-align: left;
}
/* REMOVED: Mid-level bootstrap-select caret styling - superseded by ULTRA HIGH SPECIFICITY rules */

/* Dropdown label hover effect with gradient underline */
.bootstrap-select.btn-group .btn .filter-option {
	position: relative !important;
	transition: all 0.15s ease !important;
}

/* Add gradient underline on hover */
.bootstrap-select.btn-group .btn:hover .filter-option:after {
	content: '' !important;
	position: absolute !important;
	bottom: -2px !important;
	left: 0 !important;
	width: 100% !important;
	height: 2px !important;
	background: linear-gradient(90deg, #e0dcd4 0%, #b8b3a6 50%, #e0dcd4 100%) !important;
	animation: gradientSlide 0.4s ease !important;
}

/* Gradient slide animation */
@keyframes gradientSlide {
	0% {
		width: 0% !important;
		left: 50% !important;
	}
	100% {
		width: 100% !important;
		left: 0% !important;
	}
}
.bootstrap-select.btn-group[class*="col-"] .btn {
	width: 100%;
}
.bootstrap-select.btn-group .dropdown-menu {
	min-width: 100%;
	z-index: 1035;
	box-sizing: border-box;
}
.bootstrap-select.btn-group .dropdown-menu.inner {
	position: static;
	border: 0;
	padding: 0;
	margin: 0;
	border-radius: 0;
	box-shadow: none;
}
.bootstrap-select.btn-group .dropdown-menu li {
	position: relative;
}
.bootstrap-select.btn-group .dropdown-menu li:not(.disabled) a:hover small,
.bootstrap-select.btn-group .dropdown-menu li:not(.disabled) a:focus small,
.bootstrap-select.btn-group .dropdown-menu li.active:not(.disabled) a small {
	color: rgba(224, 220, 212, 0.4);
}
.bootstrap-select.btn-group .dropdown-menu li.disabled a {
	cursor: not-allowed;
}
.bootstrap-select.btn-group .dropdown-menu li a {
	cursor: pointer;
}
.bootstrap-select.btn-group .dropdown-menu li a.opt {
	position: relative;
	padding-left: 2.25em;
}
.bootstrap-select.btn-group .dropdown-menu li a span.check-mark {
	display: none;
}
.bootstrap-select.btn-group .dropdown-menu li a span.text {
	display: inline-block;
}
.bootstrap-select.btn-group .dropdown-menu li small {
	padding-left: 0.5em;
}
.bootstrap-select.btn-group .dropdown-menu .notify {
	position: absolute;
	bottom: 5px;
	width: 96%;
	margin: 0 2%;
	min-height: 26px;
	padding: 3px 5px;
	background: #adae9c;
	border: 1px solid #e3e3e3;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
	pointer-events: none;
	opacity: 0.9;
	box-sizing: border-box;
}
.bootstrap-select.btn-group .no-results {
	padding: 3px;
	background: #adae9c;
	margin: 0 5px;
}
.bootstrap-select.btn-group.fit-width .btn .filter-option {
	position: static;
}
.bootstrap-select.btn-group.fit-width .btn .caret {
	position: static;
	top: auto;
	margin-top: -1px;
}
.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {
	position: absolute;
	display: inline-block;
	right: 15px;
	margin-top: 5px;
}
.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text {
	margin-right: 34px;
}
.bootstrap-select.show-menu-arrow.open > .btn {
	z-index: 1036;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle:before {
	content: '';
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-bottom-width: 7px;
	border-bottom-style: solid;
	border-bottom-color: #cccccc;
	border-bottom-color: rgba(204, 204, 204, 0.2);
	position: absolute;
	bottom: -4px;
	left: 9px;
	display: none;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle:after {
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 6px solid white;
	position: absolute;
	bottom: -4px;
	left: 10px;
	display: none;
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before {
	bottom: auto;
	top: -3px;
	border-bottom: 0;
	border-top-width: 7px;
	border-top-style: solid;
	border-top-color: #cccccc;
	border-top-color: rgba(204, 204, 204, 0.2);
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after {
	bottom: auto;
	top: -3px;
	border-top: 6px solid white;
	border-bottom: 0;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before {
	right: 12px;
	left: auto;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after {
	right: 13px;
	left: auto;
}
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:before,
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:after {
	display: block;
}
.bs-searchbox,
.bs-actionsbox {
	padding: 4px 8px;
}
.bs-actionsbox {
	float: left;
	width: 100%;
	box-sizing: border-box;
}
.bs-actionsbox .btn-group button {
	width: 50%;
}
.bs-searchbox + .bs-actionsbox {
	padding: 0 8px 4px;
}
.bs-searchbox input.form-control {
	margin-bottom: 0;
	width: 100%;
}
.mobile-device {
	position: absolute;
	top: 0;
	left: 0;
	display: block !important;
	width: 100%;
	height: 100% !important;
	opacity: 0;
}
/*************************************/
/*
- Global Elements
- Global Classes
- Bootstrap overwrites

- Forms
- Logo
- Navigation
- Carousel
- Image Links

- Content
- Home
- Occasion Listing
- Occasion Detail
- News
- Webshop
- My VA
- References
- Team

- Footer

- No CSS3
/*************************************/
/*************************************/
/* Global Elements
/*************************************/
html,
body {
	height: 100%;
	background: #adae9c;
}
.fotorama-homepage-caption {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
h1,
h2,
.fotorama-homepage-caption {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	color: #000000;
	display: block;
	font-weight: normal;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong,
h1 b,
h2 b,
h3 b,
h4 b,
h5 b,
h6 b {
	color: #e0dcd4;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.6);
	font-size: 1.1em;
}
@media (max-width: 992px) {
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		-ms-word-break: break-all;
		word-break: break-word;
		word-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
}
h1 {
	font-size: clamp(48px, 4rem, 68px);
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-weight: 400;
	color: #000000;
	text-align: center;
	margin-bottom: 2rem;
	letter-spacing: -0.5px;
}
h2,
.h2-placeholder {
	margin: 1.4rem 0 0.7rem 0;
	font-size: 1.7rem;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.h2-placeholder {
	background: none;
	margin: 1.5rem 0 0.7rem 0;
	border-bottom: 2px solid #e0dcd4;
}
p {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 14px;
	color: #000000;
}
p strong {
	color: #000000;
}
p a {
	color: #000000;
	font-style: italic;
}
p a.btn {
	font-style: normal;
}
em,
i {
	font-family: 'VAA Italic', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-style: normal;
}
.dl-horizontal dt,
.dl-horizontal dd {
	line-height: 1.5em;
	color: #000000;
}
.dl-horizontal dt strong,
.dl-horizontal dd strong {
	color: #000000;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.dl-horizontal dt {
	text-align: left;
	width: 110px;
	font-weight: normal;
}
@media (max-width: 768px) {
	.dl-horizontal dt {
		float: left;
		width: 120px;
		overflow: hidden;
		clear: left;
		text-align: left;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}
.dl-horizontal dt.prijs {
	display: none;
}
.dl-horizontal dd {
	margin-left: 100px;
}
.dl-horizontal dd.prijs {
	margin-left: 0;
}
ul li,
ol li {
	color: #000000;
}
ul li a,
ol li a {
	color: #000000;
}
ul li a:hover,
ol li a:hover,
ul li a:active,
ol li a:active,
ul li a:focus,
ol li a:focus,
ul li a.active,
ol li a.active {
	color: #e0dcd4;
}
img.bordered {
	border: 12px solid #1b1b1b;
}
section {
	position: relative;
}
/*************************************/
/* Global Classes
/*************************************/
.wrapper {
	overflow: visible;
	margin-bottom: 0;
	min-height: calc(100vh - 80px);
}
@media (max-width: 767px) {
	.wrapper {
		margin-bottom: 0;
		overflow: visible;
		min-height: calc(100vh - 80px);
		position: relative;
		z-index: 1;
		display: flex;
		flex-direction: column;
	}
}

@media (max-height: 767px) and (min-width: 992px) {
/*.wrapper {
overflow: inherit;
}*/
}

.wrapper:after {
	content: "";
	display: block;
}
@media (min-width: 992px) and (min-height: 480px) {
	.wrapper:after {
		height: 0;
	}
}
iframe.embed-responsive-item {
	border: none;
	outline: 0;
}
.ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.clear {
	clear: both;
}
.blinker {
	margin: 20px 0;
	content: "";
	display: table;
	position: relative;
	top: -4px;
	bottom: initial;
	width: 100%;
	height: 2px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: #e0dcd4;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
.blinker-after:after {
	content: "";
	display: table;
	position: absolute;
	top: initial;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
.raquo {
	color: #e0dcd4;
}
.print {
	display: none;
}
.no-padding {
	padding: 0;
}
.no-margin {
	margin: 0;
}
.fotorama {
	height: auto;
}
.centered-pills {
	text-align: center;
}
.centered-pills ul.nav-pills {
	display: inline-block;
}
.centered-pills li {
	display: inline-block;
	float: none;
}
.centered-pills a {
	float: left;
}
.alert p strong {
	color: #000000;
}
.alert ul li,
.alert ol li {
	color: inherit;
}
.alert ul li a,
.alert ol li a {
	color: #e0dcd4;
}
.alert ul li a:hover,
.alert ol li a:hover,
.alert ul li a:active,
.alert ol li a:active,
.alert ul li a:focus,
.alert ol li a:focus,
.alert ul li a.active,
.alert ol li a.active {
	color: #000000;
}
.gradient {
	height: 150px;
	z-index: 0;
	/* Gradient overlay disabled to show background color */
	background: transparent;
	/* All gradient definitions removed/disabled */
}
.gradient.bottom-gradient {
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 1;
}
.gradient.light-gradient {
	/* Light gradient overlay disabled to show background color */
	background: transparent;
	/* All gradient definitions removed/disabled */
}
.visible-loggedin {
	display: none;
}
.logged-in .visible-loggedin {
	display: block;
}
.logged-in .hidden-loggedin {
	display: none;
}
.dark-overlay {
	position: absolute;
	margin: 0;
	width: 100%;
	min-height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.7) !important;
	zoom: 1;
	filter: alpha(opacity=70);
	-webkit-opacity: 0.7;
	-moz-opacity: 0.7;
	opacity: 0.7 !important;
	pointer-events: none;
}
.dark-overlay.dark {
	zoom: 1;
	filter: alpha(opacity=10);
	-webkit-opacity: 0.1;
	-moz-opacity: 0.1;
	opacity: 0.1;
}
.dark-overlay.light {
	zoom: 1;
	filter: alpha(opacity=80);
	-webkit-opacity: 0.8;
	-moz-opacity: 0.8;
	opacity: 0.8;
}
.dark-overlay.overlay-relative-height {
	min-height: 0;
	height: auto;
}
.dark-overlay div.bg-img {
	position: absolute;
	top: 0;
	min-height: 100%;
	width: 100%;
	background-repeat: no-repeat;
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	background-size: 100%;
}
.dark-overlay img {
	width: 100%;
	user-drag: none;
	-webkit-user-drag: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.black-white-group {
	background: #adae9c;
	color: #e0dcd4;
	border: 1px solid #e0dcd4;
}
.black-white-group dl {
	padding: 10px;
}
@media (min-width: 768px) {
	.black-white-group dl {
		padding: 10px 20px;
	}
}
@media (max-width: 992px) {
	.black-white-group dt {
		width: 90px;
	}
}
@media (max-width: 992px) {
	.black-white-group dd {
		margin-left: 90px;
	}
}
@media (max-width: 992px) {
	.black-white-group dd strong {
		font-size: 16px;
	}
}
.black-white-group dl,
.black-white-group dl.dl-horizontal,
.black-white-group dl dt,
.black-white-group dl dd {
	color: #000000;
}
.black-white-group dl strong,
.black-white-group dl.dl-horizontal strong,
.black-white-group dl dt strong,
.black-white-group dl dd strong {
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-weight: normal;
}
.mix {
	display: none;
}
.popover {
	color: #000000;
}
.popover-title {
	font-size: 16px;
	background: #e0dcd4;
}
.btn.btn-primary {
	background: linear-gradient(135deg, #e0dcd4 0%, #d4d0c8 100%);
	border: none;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.btn.btn-primary::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
	transition: left 0.5s ease;
}

.btn.btn-primary:hover::before {
	left: 100%;
}

.btn.btn-primary:active,
.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn.btn-primary.active {
	background: linear-gradient(135deg, #d4d0c8 0%, #c8c4bc 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}
.container-fluid.container-1024 {
	max-width: 1024px;
}

/* Full-width layout improvements */
/* Full-width container-fluid - similar to occasions page */
.wrapper > .container-fluid {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

.detail .container-fluid,
.detail-information .container-fluid {
	padding-left: 30px;
	padding-right: 30px;
}

.listing .container-fluid {
	padding-left: 20px;
	padding-right: 20px;
}

@media (min-width: 1400px) {
	.detail .container-fluid,
	.detail-information .container-fluid {
		padding-left: 60px;
		padding-right: 60px;
	}
	
	.listing .container-fluid {
		padding-left: 40px;
		padding-right: 40px;
	}
}

@media (max-width: 767px) {
	.wrapper > .container-fluid {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}
.col-xs-15,
.col-sm-15,
.col-md-15,
.col-lg-15 {
	position: relative;
	min-height: 1px;
	padding-right: 10px;
	padding-left: 10px;
}
.col-xs-15 {
	width: 20%;
	float: left;
}
@media (min-width: 768px) {
	.col-sm-15 {
		width: 20%;
		float: left;
	}
}
@media (min-width: 992px) {
	.col-md-15 {
		width: 20%;
		float: left;
	}
}
@media (min-width: 1200px) {
	.col-lg-15 {
		width: 20%;
		float: left;
	}
}
/*************************************/
/* Bootstrap overwrites
/*************************************/
.tooltip.in {
	filter: alpha(opacity=100);
	opacity: 1;
}
.tooltip-inner {
	background-color: #e0dcd4;
/*
-ms-word-break:   break-all; 
word-break:       break-word;
word-wrap:        break-word; */
-webkit-hyphens: auto;
-moz-hyphens: auto;
hyphens: auto;
}
.tooltip.top .tooltip-arrow,
.tooltip.top-left .tooltip-arrow,
.tooltip.top-right .tooltip-arrow {
	border-top-color: #e0dcd4;
}
.tooltip.right .tooltip-arrow {
	border-right-color: #e0dcd4;
}
.tooltip.left .tooltip-arrow {
	border-left-color: #e0dcd4;
}
.tooltip.bottom .tooltip-arrow,
.tooltip.bottom-left .tooltip-arrow,
.tooltip.bottom-right .tooltip-arrow {
	border-bottom-color: #e0dcd4;
}
.nav-pills {
	margin: 0 auto;
	border-bottom: none;
}
@media (max-width: 768px) {
	.nav-pills > li {
		padding: 0;
	}
}
.nav > li > a:hover,
.nav > li > a:focus {
	background-color: transparent;
}
.nav-pills > li > a {
	margin-right: 2px;
	line-height: 1.42857143;
	border: 1px solid transparent;
	border-radius: 4px 4px 0 0;
	text-shadow: rgba(0, 0, 0, 0.3) 0px 0px 1px;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 18px;
}
@media (max-width: 768px) {
	.nav-pills > li > a {
		padding: 5px 10px;
	}
}
.nav-pills > li > a:hover,
.nav-pills > li > a:focus {
	border-color: transparent;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
	color: #e0dcd4;
	font-weight: bold;
	cursor: default;
	background-color: transparent;
	border: none;
	border-bottom-color: transparent;
}
/*************************************/
/* Forms
/*************************************/
form {
	color: #000000;
}
form legend {
	color: #000000;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-weight: normal;
}
form label {
	font-weight: normal;
}
form textarea {
	width: 100%;
	max-width: 100%;
}
form .radio-label {
	padding: 5px;
	font-size: 20px;
	font-weight: normal;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
form .radio-label:hover {
	color: #000000;
	background: #e0dcd4;
}
form .radio-label.active,
form .radio-label.activeTag {
	color: #000000;
	background: #e0dcd4;
}
form .radio-label.active:focus,
form .radio-label.activeTag:focus,
form .radio-label.active:hover,
form .radio-label.activeTag:hover,
form .radio-label.active:active,
form .radio-label.activeTag:active {
	color: #000000;
}
form .radio-label input[type="radio"] {
	display: none;
}
form .input-group-addon {
	color: #000000;
	border: 1px solid #cccccc;
	background: #adae9c;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
form .input-group-addon .control-label {
	padding-top: 0;
}
form .form-group {
	padding: 0px;
	border: 1px solid transparent;
}
form .form-control {
	color: #000000;
	background-color: transparent;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
form .bootstrap-select {
	width: 100% !important;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}
form .bootstrap-select * {
	outline: none !important;
}
form .bootstrap-select.open button,
form .bootstrap-select.open button span {
	color: #000000;
}
form .bootstrap-select button {
	color: #000000;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
form .bootstrap-select button:hover,
form .bootstrap-select button:active,
form .bootstrap-select button:focus {
	color: #000000;
	background: #adae9c;
}
form .bootstrap-select button.disabled {
	background: #adae9c;
	border: none;
}
form .bootstrap-select button.disabled .caret {
	display: none;
}
form .bootstrap-select button span {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}
form .bootstrap-select div.dropdown-menu {
	background: #adae9c;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
form .bootstrap-select div.dropdown-menu ul li {
	background: #adae9c;
}
form .bootstrap-select div.dropdown-menu ul li:hover {
	background: #EEE;
}
form .bootstrap-select div.dropdown-menu ul li a {
	color: #000000;
	outline: 0;
	border: none;
}
form .bootstrap-select div.dropdown-menu ul li a:hover {
	background: #333;
	border: none;
}
form .bootstrap-select div.dropdown-menu ul li a:focus {
	color: #e0dcd4;
	background: #adae9c;
}
form .bootstrap-select div.dropdown-menu ul li a:focus span {
	font-weight: bold;
}
form .bootstrap-select div.dropdown-menu ul li a span {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}
form input {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}
form input:focus {
	outline: 0 !important;
}
form input[type='text'],
form input[type='password'],
form input[type='search'],
form input textarea,
form input .form-control {
	position: relative;
	font-size: 14px;
	background: #e0dcd4;
	color: #000000;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 8px;
	background-clip: padding-box;
}
form input[type='text']:after,
form input[type='password']:after,
form input[type='search']:after,
form input textarea:after,
form input .form-control:after {
	content: '';
	position: relative;
	right: 0;
	width: 15px;
	height: 15px;
	background: url(../images/custom-icon-set.png) no-repeat center;
	background-position: 0 0;
}
form input[type='text']:focus,
form input[type='password']:focus,
form input[type='search']:focus,
form input textarea:focus,
form input .form-control:focus {
	outline: 0;
}
form input[type='text']::-webkit-input-placeholder,
form input[type='password']::-webkit-input-placeholder,
form input[type='search']::-webkit-input-placeholder,
form input textarea::-webkit-input-placeholder,
form input .form-control::-webkit-input-placeholder,
form input[type='text']:-moz-placeholder,
form input[type='password']:-moz-placeholder,
form input[type='search']:-moz-placeholder,
form input textarea:-moz-placeholder,
form input .form-control:-moz-placeholder,
form input[type='text']::-webkit-input-placeholder,
form input[type='password']::-webkit-input-placeholder,
form input[type='search']::-webkit-input-placeholder,
form input textarea::-webkit-input-placeholder,
form input .form-control::-webkit-input-placeholder,
form input[type='text']::-moz-placeholder,
form input[type='password']::-moz-placeholder,
form input[type='search']::-moz-placeholder,
form input textarea::-moz-placeholder,
form input .form-control::-moz-placeholder,
form input[type='text']:-ms-input-placeholder,
form input[type='password']:-ms-input-placeholder,
form input[type='search']:-ms-input-placeholder,
form input textarea:-ms-input-placeholder,
form input .form-control:-ms-input-placeholder {
	color: #000000;
	opacity: 1;
}

form.listing-filter {
	padding: 0;
	padding-bottom: 0;
	width: 100% !important;
	max-width: 100% !important;
}
form.listing-filter.shop input {
	margin-bottom: 15px !important;
}
form.listing-filter select,
form.listing-filter .bootstrap-select {
	margin-bottom: 12px !important;
}

form.listing-filter .form-group.primary-filters {
	margin-top: 10px;
	padding: 5px 15px 0 15px;
}
form.listing-filter .form-group.primary-filters a {
	color: #000000;
}
form.listing-filter .form-group.primary-filters a:active,
form.listing-filter .form-group.primary-filters a:hover,
form.listing-filter .form-group.primary-filters a:focus {
	color: #000000;
}
form.listing-filter .form-group.search-for-q {
	padding: 0 15px;
	margin-bottom: 20px;
}
form.listing-filter .form-group.search-for-q .input-group {
	border: 1px solid #e0dcd4;
	padding: 1px;
}
form.listing-filter .form-group.search-for-q input.form-control {
	border: none;
}
form.listing-filter .form-group.search-for-q input.form-control:focus {
	outline: 0;
	box-shadow: none;
}
form.listing-filter .form-group.search-for-q input[type='text'] {
	font-size: 18px;
	margin-left: 1px;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
form.listing-filter .form-group.search-for-q span.input-group-btn button.btn-zoek {
	padding: 0;
	margin-right: 5px;
	width: 20px;
	font-size: 18px;
	color: #000000;
	background: url('../images/custom-icon-set.png') no-repeat #adae9c 80% 50%;
	background-position: center -886px;
	text-indent: -200%;
	border-color: transparent;
	outline: 0 !important;
	box-shadow: none !important;
	z-index: 1;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
	-webkit-transition: background ease-out 0.5s;
	-moz-transition: background ease-out 0.5s;
	-o-transition: background ease-out 0.5s;
	transition: background ease-out 0.5s;
}
form.listing-filter ul.list-global-sort {
	padding-left: 0;
	overflow: overlay;
	margin-bottom: 0;
}
form.listing-filter ul.list-global-sort li {
	padding: 5px;
	float: left;
	list-style: none;
}
form.listing-filter ul.list-global-sort li:first-of-type:after {
	padding-left: 5px;
	content: "|";
	color: #e0dcd4;
}
form.listing-filter ul.list-global-sort li label,
form.listing-filter ul.list-global-sort li a {
	font-size: 18px;
}

form.occasion-alert #submit{
	margin: 10px 0;
}
form.occasion-alert .btn-group.bootstrap-select.form-control{
	margin: 0 0 5px 0;
}

form textarea[disabled].form-control,
form textarea.disabled.form-control{
	font-style: italic;
	font-size: 12px;
	color: rgb(170, 170, 170);
	border: none;
	margin: 0px;
	height: 97px;
	width: 355px;
	background-color: rgb(0, 0, 0);
}
/*************************************/
/* Logo
/*************************************/
.logo .logo-outer {
	position: relative;
	display: inline-block;
	background: transparent url(../images/logo-white-no-border_180x180.png) no-repeat center;
	-webkit-background-size: 90px;
	-moz-background-size: 90px;
	background-size: 90px;
	-webkit-border-radius: 300px;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 300px;
	-moz-background-clip: padding;
	border-radius: 300px;
	background-clip: padding-box;
}
.logo .logo-outer .logo-inner {
	width: 90px;
	height: 90px;
	background-color: transparent;
	border: 2px solid #e0dcd4;
	border-left: 2px solid rgba(0, 0, 0, 0);
	border-right: 2px solid rgba(0, 0, 0, 0);
	-webkit-border-radius: 300px;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 300px;
	-moz-background-clip: padding;
	border-radius: 300px;
	background-clip: padding-box;
	-webkit-transform: rotate(140deg);
	-moz-transform: rotate(140deg);
	-o-transform: rotate(140deg);
	-ms-transform: rotate(140deg);
	transform: rotate(140deg);
	-webkit-transition: -webkit-transform 1s ease;
	-moz-transition: -moz-transform 1s ease;
	-o-transition: -o-transform 1s ease;
	transition: -webkit-transform 1s ease,-moz-transform 1s ease,-o-transform 1s ease,transform 1s ease;
}
.logo .logo-outer .logo-inner span {
	display: none;
}
.logo.logo-small .logo-outer {
	-webkit-background-size: 48px;
	-moz-background-size: 48px;
	background-size: 48px;
}
.logo.logo-small .logo-outer .logo-inner {
	width: 50px;
	height: 50px;
}
.logo.logo-white .logo-outer .logo-inner {
	border: 2px solid #999999;
	border-left: 2px solid rgba(0, 0, 0, 0);
	border-right: 2px solid rgba(0, 0, 0, 0);
}
.logo.logo-loop .logo-outer .logo-inner {
	-webkit-animation: rotateanim 0.6s infinite linear;
	-moz-animation: rotateanim 0.6s infinite linear;
	-o-animation: rotateanim 0.6s infinite linear;
	animation: rotateanim 0.6s infinite linear;
}
.logo.logo-hover .logo-outer:hover .logo-inner,
.logo.logo-hover:focus .logo-outer .logo-inner {
	-webkit-transform: rotate(500deg);
	-moz-transform: rotate(500deg);
	-o-transform: rotate(500deg);
	-ms-transform: rotate(500deg);
	transform: rotate(500deg);
}
.logo:hover,
.logo:focus {
	text-decoration: none !important;
	border: none !important;
}
/*************************************/
/* Navigation
/*************************************/
.navbar {
	margin-bottom: 0;
}
.navbar-mobile {
	width: 100%;
	z-index: 10000;
}
.navbar-mobile .navbar-header {
	background: linear-gradient(135deg, rgba(185, 180, 170, 0.98) 0%, rgba(175, 170, 160, 0.95) 50%, rgba(160, 158, 148, 0.92) 100%);
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
	border-bottom: 1px solid rgba(224, 220, 212, 0.2);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* Transparent header with blur on homepage - Mobile */
body.home .navbar-mobile .navbar-header {
	background: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.05);
	border-bottom: 1px solid rgba(224, 220, 212, 0.1);
}
.navbar-mobile .navbar-brand {
	width: auto;
	height: auto;
}
.navbar-mobile .navbar-collapse {
	height: auto;
	border: none;
	border-top: none !important;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	max-height: calc(100vh - 55px);
	overflow-y: auto;
}
.navbar-mobile .navbar-collapse .navbar-nav {
	margin-top: 0;
	height: auto;
	background: linear-gradient(135deg, rgba(185, 180, 170, 0.95) 0%, rgba(175, 170, 160, 0.9) 50%, rgba(160, 158, 148, 0.92) 100%);
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* Transparent mobile menu with blur on homepage */
body.home .navbar-mobile .navbar-collapse .navbar-nav {
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.navbar-mobile .navbar-collapse .navbar-nav li {
	text-align: center;
}
.navbar-mobile .navbar-collapse .navbar-nav li.active a {
	color: #e0dcd4;
}
.navbar-mobile .navbar-collapse .navbar-nav li.social-media a {
	font-size: 14px;
	display: inline-block;
	padding: 10px;
}
.navbar-mobile .navbar-collapse .navbar-nav li a {
	font-size: 18px;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	color: #000000;
	padding: 15px 20px !important;
	min-height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.navbar-mobile .navbar-collapse .navbar-nav li a:hover,
.navbar-mobile .navbar-collapse .navbar-nav li a:active,
.navbar-mobile .navbar-collapse .navbar-nav li a:focus {
	background-color: rgba(224, 220, 212, 0.2) !important;
	color: #000000;
}

.navbar-mobile .dropdown-menu {
	background: #e0dcd4 !important;
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
	border: 1px solid rgba(224, 220, 212, 0.3);
	border-radius: 8px;
	margin-top: 8px;
	padding: 8px 0;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transform-origin: top center;
	transform: scaleY(0);
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.navbar-mobile .dropdown.open .dropdown-menu {
	max-height: 800px;
	opacity: 1;
	transform: scaleY(1);
}

/* Transparent mobile dropdowns with blur on homepage */
body.home .navbar-mobile .dropdown-menu {
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(224, 220, 212, 0.15);
}

.navbar-mobile .dropdown-menu li a {
	background: transparent !important;
	color: #000000 !important;
	padding: 12px 20px !important;
	min-height: 44px;
	display: block;
	transition: all 0.2s ease;
}

.navbar-mobile .dropdown-menu li a:hover,
.navbar-mobile .dropdown-menu li a:active {
	background-color: rgba(224, 220, 212, 0.3) !important;
}
.navbar-mobile .navbar-toggle {
	margin-top: 20px;
	padding: 10px;
	color: #000000;
}
.navbar-mobile a {
	color: #000000;
}
.navbar-mobile a:hover {
	border: none;
}
.detail-nav {
	padding: 0;
	margin: 30px 0;
}
.detail-nav li {
	padding: 5px;
	float: left;
	list-style-type: none;
	text-align: right;
}
.detail-nav li:after {
	margin-left: 10px;
	content: '|';
	color: #e0dcd4;
}
.detail-nav li:last-of-type {
	padding-right: 0;
}
.detail-nav li:last-of-type:after {
	content: '';
	margin: 0;
}
.detail-nav li.disabled {
	opacity: 0.2;
	filter: alpha(opacity=20);
}
.detail-nav li.disabled a:hover {
	border: none;
}
.detail-nav li span {
	color: #e0dcd4;
}
.navbar-default {
	color: #000000;
	background: transparent;
	border: none;
	box-shadow: none;
	position: relative;
	z-index: 3000;
	transition: all 0.3s ease;
}

/* Transparent header with blur on homepage - Desktop */
body.home .navbar-default {
	background: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.05);
}
@media (min-width: 1200px) {
	.navbar-default {
		height: 100px;
	}
}
.navbar-default .container-fluid {
	overflow: visible;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
	background-color: #adae9c;
}
/* Modern 3-Section Navigation */
.navbar-default .modern-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 82px;
	position: relative;
}

.navbar-default .nav-section {
	display: flex;
	align-items: center;
}

.navbar-default .nav-left {
	justify-content: flex-end;
	flex: 1;
	padding-right: 40px;
}

.navbar-default .nav-center {
	justify-content: center;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
}

.navbar-default .nav-right {
	justify-content: flex-start;
	flex: 1;
	padding-left: 40px;
}

.navbar-default .nav-item {
	position: relative;
	margin: 0 8px;
}

.navbar-default .nav-link {
	display: block;
	color: inherit;
	text-decoration: none;
	font-family: VAA, Arial, sans-serif;
	font-size: 20px;
	padding: 0 15px;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	outline: none;
}

.navbar-default .nav-link:hover {
	color: inherit;
	text-decoration: none;
	transform: translateY(-2px);
	text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Add hover line effect for nav items */
.navbar-default .nav-item:before {
	content: '';
	position: absolute;
	top: 0;
	width: 0;
	left: 50%;
	transform: translateX(-50%);
	max-height: 0;
	background: linear-gradient(90deg, transparent, #e0dcd4, transparent);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar-default .nav-item:hover:before {
	max-height: 5px;
	width: 80%;
}

/* Dropdown functionality with improved hover area */
.navbar-default .nav-item.dropdown:hover .dropdown-menu,
.navbar-default .nav-item.dropdown .dropdown-menu:hover {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
	pointer-events: auto;
}

.navbar-default .dropdown-menu {
	position: absolute;
	top: calc(100% - 5px);
	left: 50%;
	transform: translateX(-50%) translateY(-10px) scaleY(0.95);
	display: block;
	opacity: 0;
	visibility: hidden;
	transform-origin: top center;
	transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 1000;
	background: linear-gradient(135deg, #c9c4b5 0%, #d3cec2 100%) !important;
	border: 1px solid #ddd;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.15);
	min-width: 200px;
	overflow: hidden;
	pointer-events: none;
	padding-top: 5px;
	margin-top: 0;
}

.navbar-default .dropdown-menu li a {
	display: block;
	padding: 10px 20px;
	color: #000000 !important;
	text-decoration: none;
	font-size: 14px;
	line-height: 1.4;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	text-align: center;
}

.navbar-default .dropdown-menu li a:hover {
	color: #000;
	border-left-color: #e0dcd4;
	background: transparent;
	transform: translateX(3px);
	font-weight: 500;
}

.navbar-default .dropdown-menu li a::before {
	content: '' !important;
	position: absolute !important;
	left: -2px !important;
	top: 0 !important;
	height: 100% !important;
	width: 0 !important;
	background: linear-gradient(90deg, #e0dcd4 0%, rgba(224, 220, 212, 0.4) 100%) !important;
	transition: width 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
	opacity: 0 !important;
	z-index: -1 !important;
	box-shadow: 0 2px 8px rgba(224, 220, 212, 0.3) !important;
}

.navbar-default .dropdown-menu li a:hover::before {
	width: calc(100% + 4px) !important;
	opacity: 0.85 !important;
}

/* Logo styling for new nav-center structure */
.navbar-default .nav-center .logo-outer {
	-webkit-background-size: 60px;
	-moz-background-size: 60px;
	background-size: 60px;
}

@media (min-width: 1200px) {
	.navbar-default .nav-center .logo-outer {
		-webkit-background-size: 60px;
		-moz-background-size: 60px;
		background-size: 60px;
	}
}

.navbar-default .nav-center .logo-outer .logo-inner {
	width: 60px;
	height: 60px;
}

@media (min-width: 1200px) {
	.navbar-default .nav-center .logo-outer .logo-inner {
		width: 60px;
		height: 60px;
	}
}

.navbar-default .logo {
	display: inline-block;
	transition: all 0.3s ease;
}

/* Responsive adjustments */
@media (min-width: 992px) {
	.navbar-default .nav-item {
		margin: 0 12px;
	}
	.navbar-default .nav-left {
		padding-right: 50px;
	}
	.navbar-default .nav-right {
		padding-left: 50px;
	}
}

@media (min-width: 1200px) {
	.navbar-default .modern-nav {
		height: 100px;
	}
	.navbar-default .nav-item {
		margin: 0 15px;
	}
	.navbar-default .nav-left {
		padding-right: 60px;
	}
	.navbar-default .nav-right {
		padding-left: 60px;
	}
}

/* Bottom line effect */
.navbar-default .modern-nav:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
}
.navbar-default ul.navbar-nav.center-nav li:not(.logo):hover:before,
.navbar-default ol.navbar-nav.center-nav li:not(.logo):hover:before {
	max-height: 5px !important;
	width: 80% !important;
}
.navbar-default ul.navbar-nav.center-nav li:before,
.navbar-default ol.navbar-nav.center-nav li:before {
	content: '';
	position: absolute;
	top: 0;
	width: 0;
	left: 50%;
	transform: translateX(-50%);
	max-height: 0;
	background: linear-gradient(90deg, transparent, #e0dcd4, transparent);
	-webkit-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	-moz-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	-o-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.navbar-default ul.navbar-nav.center-nav li.active:before,
.navbar-default ol.navbar-nav.center-nav li.active:before {
	max-height: 5px;
	width: 60%;
}
.navbar-default ul.navbar-nav.center-nav li.active a,
.navbar-default ol.navbar-nav.center-nav li.active a {
	background-color: transparent;
}
.navbar-default ul.navbar-nav.center-nav li.logo:hover:before,
.navbar-default ol.navbar-nav.center-nav li.logo:hover:before {
	max-height: 0;
}
.navbar-default ul.navbar-nav.center-nav li.logo a.logo,
.navbar-default ol.navbar-nav.center-nav li.logo a.logo {
	margin: 25px 0 0 5px;
	line-height: 0;
}
.navbar-default ul.navbar-nav.center-nav li a,
.navbar-default ol.navbar-nav.center-nav li a {
	padding: 0;
	font-size: 16px;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	color: inherit;
	text-decoration: none;
	outline: none;
	position: relative;
	display: block;
	line-height: 4.125em;
	-webkit-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	-moz-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	-o-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 992px) {
	.navbar-default ul.navbar-nav.center-nav li a,
	.navbar-default ol.navbar-nav.center-nav li a {
		font-size: 18px;
		line-height: 4.55em;
	}
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav li a,
	.navbar-default ol.navbar-nav.center-nav li a {
		font-size: 20px;
		line-height: 3.5em;
	}
}
.navbar-default ul.navbar-nav.center-nav li a:hover,
.navbar-default ol.navbar-nav.center-nav li a:hover {
	color: #e0dcd4;
	transform: translateY(-2px);
	text-shadow: 0 6px 24px rgba(0, 0, 0, 0.6), 0 3px 12px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(0, 0, 0, 0.3);
}
.navbar-default ul.navbar-nav.center-nav li a:focus,
.navbar-default ol.navbar-nav.center-nav li a:focus {
	color: #e0dcd4;
}

/* Open dropdowns on hover (desktop) */
@media (min-width: 768px) {
  .navbar-default .navbar-nav.center-nav > li.dropdown:hover > .dropdown-menu,
  .navbar-default .navbar-nav.center-nav > li.dropdown:focus > .dropdown-menu {
    display: block;
  }
  
  /* Extend hover area to bridge gap - very generous */
  .navbar-default .navbar-nav.center-nav > li.dropdown:hover::after {
    content: '';
    position: absolute;
    top: 50%;
    left: -20px;
    right: -20px;
    height: 60px;
    z-index: 3049;
  }
}

/* Clean dropdown styling with enhanced animations */
.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu,
.navbar-default .nav-item.dropdown > .dropdown-menu,
.modern-nav .nav-item.dropdown > .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(-20px) scaleY(0.8);
  opacity: 0;
  visibility: hidden;
  transform-origin: top center;
  transition: all 0.35s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  background: #e0dcd4 !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(224, 220, 212, 0.3);
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
  padding: 12px 0;
  margin-top: 8px;
  width: auto;
  min-width: 140px;
  max-width: 220px;
  z-index: 1000;
  display: block !important;
}

/* Transparent desktop dropdowns with blur on homepage */
body.home .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu,
body.home .navbar-default .nav-item.dropdown > .dropdown-menu,
body.home .modern-nav .nav-item.dropdown > .dropdown-menu {
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(224, 220, 212, 0.2);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}


/* Show dropdown with fold-in animation */
@media (min-width: 768px) {
  .navbar-default .navbar-nav.center-nav > li.dropdown:hover > .dropdown-menu,
  .navbar-default .navbar-nav.center-nav > li.dropdown:focus > .dropdown-menu,
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu,
  .modern-nav .nav-item.dropdown:hover > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(-8px) scaleY(1);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
  }
  
  /* Stagger animation for dropdown items */
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li,
  .modern-nav .nav-item.dropdown:hover > .dropdown-menu > li {
    animation: dropdownSlideIn 0.3s ease forwards;
    opacity: 0;
  }
  
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li:nth-child(1) { animation-delay: 0.05s; }
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li:nth-child(2) { animation-delay: 0.1s; }
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li:nth-child(3) { animation-delay: 0.15s; }
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li:nth-child(4) { animation-delay: 0.2s; }
  .navbar-default .nav-item.dropdown:hover > .dropdown-menu > li:nth-child(5) { animation-delay: 0.25s; }
}

@keyframes dropdownSlideIn {
  from {
    opacity: 0;
    transform: translateX(-10px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a,
.navbar-default .nav-item.dropdown > .dropdown-menu > li > a,
.modern-nav .nav-item.dropdown > .dropdown-menu > li > a {
  color: #000000 !important;
  padding: 8px 20px !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-size: 14px;
  font-weight: 400;
  font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 !important;
  clear: both !important;
  position: relative;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  text-align: center !important;
}

@media (min-width: 992px) {
  .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a,
  .navbar-default .nav-item.dropdown > .dropdown-menu > li > a,
  .modern-nav .nav-item.dropdown > .dropdown-menu > li > a {
    font-size: 14px;
    padding: 8px 3px !important;
  }
}

@media (min-width: 1200px) {
  .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a,
  .navbar-default .nav-item.dropdown > .dropdown-menu > li > a,
  .modern-nav .nav-item.dropdown > .dropdown-menu > li > a {
    font-size: 14px;
    padding: 8px 3px !important;
  }
}

.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li:last-child > a {
  border-bottom: none;
}

/* Remove white stripe from dropdown items */
.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li:before,
.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li:after {
  display: none !important;
}

.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li.active > a {
  background: none !important;
  color: #e0dcd4 !important;
}

/* Override dropdown hover for homepage - dropdown text should be black */
html body.home .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a:hover,
html body.home .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li.active > a {
  color: #000000 !important;
}
.navbar-default ul.navbar-nav.center-nav li a.logo,
.navbar-default ol.navbar-nav.center-nav li a.logo {
	padding: 0;
}
.navbar-default ul.navbar-nav.center-nav .logo-outer,
.navbar-default ol.navbar-nav.center-nav .logo-outer {
	-webkit-background-size: 26px;
	-moz-background-size: 26px;
	background-size: 26px;
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav .logo-outer,
	.navbar-default ol.navbar-nav.center-nav .logo-outer {
		-webkit-background-size: 28px;
		-moz-background-size: 28px;
		background-size: 28px;
	}
}
.navbar-default ul.navbar-nav.center-nav .logo-outer .logo-inner,
.navbar-default ol.navbar-nav.center-nav .logo-outer .logo-inner {
	width: 26px;
	height: 26px;
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav .logo-outer .logo-inner,
	.navbar-default ol.navbar-nav.center-nav .logo-outer .logo-inner {
		width: 28px;
		height: 28px;
	}
}
.navbar-default ul.navbar-nav.center-nav .myVA,
.navbar-default ol.navbar-nav.center-nav .myVA {
	margin: 0;
	top: -13px;
}
@media (min-width: 768px) {
	.navbar-default ul.navbar-nav.center-nav .myVA,
	.navbar-default ol.navbar-nav.center-nav .myVA {
		top: 0.72em;
	}
}
@media (min-width: 992px) {
	.navbar-default ul.navbar-nav.center-nav .myVA,
	.navbar-default ol.navbar-nav.center-nav .myVA {
		top: -0.25em;
	}
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav .myVA,
	.navbar-default ol.navbar-nav.center-nav .myVA {
		position: absolute;
		top: 5px;
		width: 125px;
		height: 45px;
	}
}
.navbar-default ul.navbar-nav.center-nav .myVA:hover .logo-outer,
.navbar-default ol.navbar-nav.center-nav .myVA:hover .logo-outer {
	background: transparent url(../images/icon-white-user.png) no-repeat center center;
	-webkit-background-size: 52%;
	-moz-background-size: 52%;
	background-size: 52%;
}
.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer,
.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer {
	-webkit-background-size: 45px;
	-moz-background-size: 45px;
	background-size: 45px;
}
@media (min-width: 768px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer {
		-webkit-background-size: 20px;
		-moz-background-size: 20px;
		background-size: 20px;
		top: 5px;
	}
}
@media (min-width: 992px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer {
		-webkit-background-size: 35px;
		-moz-background-size: 35px;
		background-size: 35px;
		top: 10px;
		left: -5px;
	}
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer {
		-webkit-background-size: 50px;
		-moz-background-size: 50px;
		background-size: 50px;
		top: 14px;
	}
}
.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer .logo-inner,
.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer .logo-inner {
	width: 45px;
	height: 45px;
}
@media (min-width: 768px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer .logo-inner,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer .logo-inner {
		width: 20px;
		height: 20px;
		border-width: 1px;
	}
}
@media (min-width: 992px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer .logo-inner,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer .logo-inner {
		width: 40px;
		height: 40px;
	}
}
@media (min-width: 1200px) {
	.navbar-default ul.navbar-nav.center-nav .myVA .logo-outer .logo-inner,
	.navbar-default ol.navbar-nav.center-nav .myVA .logo-outer .logo-inner {
		width: 50px;
		height: 50px;
		border-width: 2px;
	}
}
.sub-nav-container {
	padding-top: 10px;
	width: 100%;
	/* Hide sub-nav pills since dropdown navigation is working */
	display: none;
}
@media (max-width: 768px) {
	.sub-nav-container {
		margin-top: 100px;
	}
}
/*************************************/
/* Carousel
/*************************************/
.carousel {
	height: 100%;
}
.carousel .carousel-inner {
	height: 100%;
}
.carousel .carousel-inner .item {
	height: 100%;
	background-repeat: no-repeat;
	background-position: center top;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
}
.carousel .item {
	-webkit-transition: opacity 3s;
	-moz-transition: opacity 3s;
	-ms-transition: opacity 3s;
	-o-transition: opacity 3s;
	transition: opacity 3s;
}
.carousel .active.left {
	left: 0;
	opacity: 0;
	z-index: 2;
}
.carousel .next {
	left: 0;
	opacity: 1;
	z-index: 1;
}
section.section-slider {
	height: 50%;
	padding: 0;
}
@media (max-width: 767px) {
	section.section-slider {
		height: 100vh;
		min-height: 100vh;
		position: relative;
	}
	
	/* Override for homepage */
	body.home section.section-slider {
		height: auto;
		min-height: auto;
	}
	
	section.section-slider .fotorama {
		display: none;
	}
}
@media (min-width: 768px) {
	section.section-slider {
		margin-top: -100px;
		height: 100%;
		min-height: 100%;
	}
}
@media (min-width: 1200px) {
	section.section-slider {
		margin-top: -100px;
	}
}
section.section-slider nav.navbar.navbar-default {
	position: absolute;
	top: 0;
	width: 100%;
}
section.section-slider .full-page-slide-caption {
	display: none;
}
section.section-slider .full-page-slide-caption p {
	margin: -20px 0 0;
	font-size: 21px;
	color: #e0dcd4;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-style: italic !important;
	text-align: center !important;
}
section.section-slider section.image-links {
	overflow: hidden;
	min-width: 300px;
	z-index: 1;
}
section.section-slider section.image-links .container:first-of-type:before {
	content: "";
	display: table;
	position: initial;
	top: initial;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
/*************************************/
/* Image links
/*************************************/
.image-links {
	width: 1130px;
	margin: 0 auto;
}
.image-links.image-links-open .image-container {
	padding: 0;
}
.image-links > .container-fluid .row > div {
	padding-left: 0;
	padding-right: 0;
}
.image-links .image-container {
	margin: 20px 0;
	width: 100%;
	height: 140px;
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;
}
.image-links .image-container:hover {
	padding: 0;
}
.image-links .image-container:before {
	content: "";
	display: table;
	position: relative;
	top: -2px;
	bottom: initial;
	width: 100%;
	height: 1px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
.image-links .image-container:after {
	content: "";
	display: table;
	position: relative;
	top: initial;
	bottom: -2px;
	width: 100%;
	height: 1px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
.image-links .image-container > div {
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
}
@media (min-width: 992px) {
	.image-links .image-container > div {
		background-position: center;
	}
}
.image-links .image-container a {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 100%;
	color: #000000;
	font-size: 17px;
	text-shadow: 0 1px rgba(0, 0, 0, 0.3);
	background: rgba(51, 51, 51, 0.42);
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;
}
.image-links .image-container a:hover {
	background: none;
	text-decoration: none;
	border: none;
}
.image-links .image-container a span {
	position: absolute;
	padding: 5px 10px;
	width: 100%;
	bottom: 0;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.image-links .image-container a span:after {
	content: "\00BB";
	padding: 0 0 0 5px;
	color: #e0dcd4;
	float: right;
}
/*************************************/
/* Content
/*************************************/
.content-padding {
	padding-top: 30px;
	padding-bottom: 60px;
}
div.p-attention p:first-of-type {
	color: #000000;
	font-size: 16px;
}

section.content h2 a {
	display: inline-block;
	color: #000000;
}
section.content h2 a:hover {
	text-decoration: none;
}
section.content iframe {
	width: 100%;
	min-width: 250px;
}
#contact_map {
	margin: 0;
	padding: 0;
	z-index: 99;
	height: 300px;
}
/*************************************/
/* Home
/*************************************/
@media (min-width: 992px) {
	.home {
		min-height: 640px;
	}
}
@media (min-width: 800px) {
	.home .wrapper {
		height: 100%;
	}
}

.home section.section-slider {
	position: relative;
}
.home section.section-slider .fotorama-homepage-caption {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}
@media (max-width: 767px) {
	/* MOBILE HOMEPAGE - SIMPLIFIED LAYOUT */
	body.home .wrapper {
		min-height: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding-top: 0;
		overflow: hidden;
	}
	
	.home section.section-slider {
		height: 100% !important;
		min-height: 100% !important;
		padding-bottom: 80px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: relative;
		overflow: hidden;
		flex-shrink: 0;
		width: 100%;
		text-align: center;
	}
	
	/* Hide empty Fotorama */
	.home section.section-slider .fotorama {
		display: none;
	}
	
	/* Center caption content */
	.home section.section-slider .fotorama-homepage-caption {
		position: relative !important;
		transform: none !important;
		top: auto !important;
		width: 100%;
		height: auto;
		z-index: 10;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	/* Hide footer on mobile homepage */
	body.home footer {
		display: none !important;
	}
	
	.home section.section-slider .fotorama-homepage-caption .container-fluid {
		height: auto;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	
	.home section.section-slider .fotorama-homepage-caption .row {
		margin: 0;
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	
	.home section.section-slider .fotorama-homepage-caption .col-md-12 {
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}
@media (max-width: 767px) {
	.home section.section-slider .fotorama-homepage-caption h1 {
		font-size: 52px;
		text-align: center;
		padding: 0 20px;
		margin: 0px auto 45px auto;
		color: #e0dcd4 !important;
		text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.9);
		word-wrap: break-word;
		font-weight: 700;
		letter-spacing: 2px;
	}
	
	/* Compact logo on mobile homepage */
	.home .fotorama-homepage-caption .logo {
		margin: 0 auto 25px auto;
		order: 1;
	}
	
	.home section.section-slider .fotorama-homepage-caption h1 {
		order: 2;
	}
	
	.home .fotorama-homepage-caption .logo .logo-outer {
		-webkit-background-size: 90px;
		-moz-background-size: 90px;
		background-size: 90px;
		width: 100px;
		height: 100px;
	}
	
	.home .fotorama-homepage-caption .logo .logo-outer .logo-inner {
		width: 100px;
		height: 100px;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.fotorama-homepage-caption h1 {
		font-size: 60px;
		padding: 0 30px;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.fotorama-homepage-caption h1 {
		font-size: 70px;
		padding: 0 40px;
	}
}

@media (min-width: 1200px) {
	.fotorama-homepage-caption h1 {
		font-size: 80px;
		padding: 0 50px;
	}
}
@media (max-width: 767px) {
	.home section.section-slider .fotorama-homepage-caption p {
		font-size: 17px;
		padding: 0 20px;
		margin: 20px auto 15px auto;
		color: #ffffff !important;
		text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.9);
		font-weight: 500;
		line-height: 1.4;
	}
	
	.fotorama-homepage-caption .full-page-slide-caption {
		font-size: 16px !important;
		color: #ffffff !important;
		text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.9);
		margin: 0 auto 0 auto !important;
		padding: 0 25px;
		line-height: 1.5;
		text-align: center;
		order: 3;
	}
}
.home section.section-slider .fotorama-homepage-caption p strong {
	color: #e0dcd4;
}
.home #full-page-carousel {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.home #full-page-carousel .fotorama__html > div {
	width: 100%;
	height: 100%;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	background-position: center top;
}
@media (max-width: 736px) {
	.home #full-page-carousel .fotorama__wrap {
		max-height: 440px;
	}
}
@media (max-width: 800px), (max-height: 680px) {
	.home #full-page-carousel {
		position: relative;
	}
}
.home .carousel h1 {
	font-family: 'VAA Bold', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.home .carousel h1 strong,
.home .carousel h1 b {
	font-style: normal;
	font-weight: normal;
}
.home .image-links {
	position: absolute;
	width: 100%;
	max-width: 1130px;
	left: 0;
	right: 0;
}
@media (min-width: 992px), (min-height: 720px) {
	.home .image-links {
		bottom: 100px;
	}
}
@media (max-width: 737px), (max-height: 720px) {
	.home .image-links {
		position: relative;
		bottom: inherit;
		margin-top: -20px;
	}
}
.home .blinker {
	margin: 20px 0 0 0;
}
/*************************************/
/* Occasion Listing
/*************************************/
section.listing {
	position: relative;
	margin-bottom: 40px;
	min-height: 450px;
	background-image: none;
}

section.listing .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

/* Use flexbox for proper grid layout - works with inline-block from JS filter */
section.listing .row.row-listing {
	display: flex !important;
	flex-wrap: wrap;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	justify-content: center;
	gap: 30px 30px;
}

/* Override Bootstrap clearfix for occasions grid to prevent interference */
section.listing .row.row-listing:before,
section.listing .row.row-listing:after {
	display: none !important;
}

section.listing .row.row-listing > div.mix {
	display: flex !important;
	flex-direction: column;
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 0;
}

/* Standard 3-column layout (col-md-4 = 33.33%) accounting for gap */
section.listing .row.row-listing > div[class*="col-md-4"] {
	flex: 0 0 calc(33.333% - 20px) !important;
	max-width: calc(33.333% - 20px) !important;
}

/* 2-column layout on tablets (col-sm-6 = 50%) */
@media (max-width: 991px) and (min-width: 768px) {
	section.listing .row.row-listing > div[class*="col-sm-6"] {
		flex: 0 0 calc(50% - 15px) !important;
		max-width: calc(50% - 15px) !important;
	}
}

/* Ensure no-results div can still be hidden */
section.listing .row.row-listing > div#no-results {
	display: none !important;
}

section.listing .row.row-listing > div#no-results[style*="display: block"],
section.listing .row.row-listing > div#no-results[style*="display: flex"] {
	display: flex !important;
	flex: 0 0 100% !important;
	max-width: 100% !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	padding: 60px 20px;
}

/* Override Bootstrap column classes on no-results */
section.listing .row.row-listing > div#no-results.col-md-8 {
	width: 100% !important;
	flex: 0 0 100% !important;
	max-width: 100% !important;
}

section.listing .row.row-listing > div#no-results.col-md-offset-2 {
	margin-left: 0 !important;
}

/* Maximum 3 columns on all screen sizes for better readability */

@media (max-width: 767px) {
	section.listing .container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	
	section.listing .row.row-listing {
		gap: 20px 20px;
	}
	
	/* Single column on mobile (col-xs-12 = 100%) */
	section.listing .row.row-listing > div[class*="col-xs-12"] {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
}

section.listing .dark-overlay {
	background-repeat: no-repeat;
}
section.listing .mobile-filter {
	display: none;
}
#listing-filter-container-sticky-wrapper {
	position: relative !important;
}
#listing-filter-container-sticky-wrapper.is-sticky #listing-filter-container {
	position: relative !important;
	padding-top: 30px;
	background-color: #adae9c;
	padding-bottom: 30px;
}
#listing-filter-container-sticky-wrapper.is-sticky #listing-filter-container h1 {
	display: block !important;
}
#listing-filter-container {
	padding-bottom: 30px;
	z-index: 1000;
	width: 100%;
	max-width: 100%;
	position: relative !important;
}

#listing-filter-container .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

@media (max-width: 767px) {
	#listing-filter-container .container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}
#listing-filter-container h1 {
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#listing-filter-container:after {
	content: "";
	display: table;
	position: absolute;
	top: initial;
	bottom: 30px;
	width: calc(100% - 30px);
	height: 1px;
	background: -moz-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(224, 220, 212, 0)), color-stop(50%, #e0dcd4), color-stop(100%, rgba(224, 220, 212, 0)));
	background: -webkit-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -o-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: -ms-linear-gradient(left, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00e0dcd4', endColorstr='#00e0dcd4', GradientType=1);
}
.row.row-listing > div {
	height: auto;
}
.row.row-listing form.listing-filter .black-white-group {
	padding: 0;
}
.row.row-listing .jumbotron {
	color: #000000;
	margin-top: 50px;
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0;
	background-clip: padding-box;
}
.row.row-listing .jumbotron p {
	font-size: 15px;
}
.row.row-listing .col-item {
	width: 100%;
	padding: 0;
	height: auto;
	overflow: hidden;
	background: transparent;
	transition: all 0.3s ease;
	position: relative;
}
.row.row-listing .col-item .blinker {
	margin: 1rem 0 1.3rem 0;
}
/* Consistent aspect ratio across ALL zoom levels and screen sizes */
.row.row-listing .col-item .image-container {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.row.row-listing .col-item .image-container,
.row.row-listing .col-item .image-container > div {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
	/* Better image quality for photos */
	image-rendering: -webkit-optimize-contrast;
	image-rendering: high-quality;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	transform: translateZ(0) scale(1.0, 1.0);
}
.row.row-listing .col-item .image-container a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	color: #e0dcd4;
	text-shadow: 0 1px rgba(0, 0, 0, 0.3);
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.row.row-listing .col-item .image-container a span {
	position: absolute;
	display: none;
	width: 100%;
	height: 18px;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	font-size: 24px;
	text-align: center;
}
.row.row-listing .col-item .item-summary a:hover {
	color: #e0dcd4;
}
.row.row-listing .col-item .item-summary a:hover h2 {
	color: #e0dcd4;
}

/* Consistent font sizing across all desktop sizes - much larger for readability */
.row.row-listing .col-item .item-summary h2 {
	font-size: clamp(18px, 1.2rem, 22px);
	overflow: hidden;
	text-overflow: ellipsis;
	margin-bottom: 0.75rem;
	font-weight: 600;
	line-height: 1.4;
	/* Fixed height for consistent alignment - allows 2 lines */
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2; /* Standard property for future compatibility */
	-webkit-box-orient: vertical;
	min-height: calc(1.4em * 2); /* 2 lines at 1.4 line-height */
	/* Force crisp text rendering - prevent blur from parent transforms/transitions */
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: auto;
	text-rendering: optimizeLegibility;
	transform: translateZ(0);
	backface-visibility: hidden;
	perspective: 1000px;
}

.row.row-listing .col-item .item-summary dl.dl-horizontal dt {
	font-size: clamp(14px, 1.05rem, 17px);
	font-weight: 500;
	width: 10.5rem;
	text-align: left;
}

.row.row-listing .col-item .item-summary dl.dl-horizontal dd {
	font-size: clamp(14px, 1.05rem, 17px);
	margin-left: 7rem;
	color: #000000;
	font-weight: 400;
}

.row.row-listing .col-item .item-summary .price {
	font-size: clamp(16px, 1.15rem, 20px);
	font-weight: 700;
	color: #000000;
}
/*************************************/
/* Occasion Detail
/*************************************/
.occasion-detail h1 {
	font-size: 40px;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-weight: 400;
	color: #000000;
	text-align: center;
	margin-top: 0;
	margin-bottom: 30px;
	letter-spacing: -0.5px;
}
.occasion-detail h1 strong {
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.occasion-detail img.no-image {
	margin-top: 20px;
	width: 100%;
}
section.detail {
	position: relative;
/*#wowslider-container1 .ws_images{
max-height: 		663px;
}*/
}

/* Max-width containers for occasion detail pages */
section.detail .container,
section.detail-information .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 10px auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

@media (max-width: 767px) {
	section.detail .container,
	section.detail-information .container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

section.detail h1 {
	margin: 30px 0px 30px 0;
	font-size: 54px;
	font-weight: 400;
	color: #000000;
	text-align: center;
	letter-spacing: -0.5px;
}
section.detail h2 {
	font-size: 24px;
}
@media (min-width: 992px) {
	section.detail .fotorama {
		height: 0px;
	}
}

/* Occasion detail image spacing optimization */
.occasion-detail .container-fluid.slide-show {
	margin-bottom: 0;
	padding-bottom: 0;
}
section.detail .slideshow-container {
	margin-bottom: 25px;
}
section.detail .occasion-video {
	margin: 25px auto 0 auto;
}

.occasion-features .description-container h2 {
	font-size: 18px;
	line-height: 36px;
	background-image: none;
	color: #000000;
}
.occasion-features .description-container p {
	color: #000000;
}
.occasion-features dl.dl-horizontal dt {
	width: 140px;
}
.occasion-features dl.dl-horizontal dd {
	margin-left: 165px;
	color: #000000;
}
@media (max-width: 992px) {
	.occasion-features dl.dl-horizontal dd {
		margin-left: 140px;
	}
}
.occasion-features ul {
	padding: 0 0 0 15px;
}
.occasion-features ul li {
	list-style-type: circle;
	font-size: 12px;
	color: #000000;
}
.black-white-group {
	margin: 0 0 20px 0;
}
.detail-specifications dl {
	margin-bottom: 0;
}
section.detail-information .blinker {
	margin: 5px 0px;
}

/* Features Columns Layout - 6 columns side by side */
.features-columns {
	display: flex;
	gap: 30px;
	margin: 30px 0;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.feature-column {
	flex: 1 1 calc(16.666% - 25px);
	min-width: 150px;
	background: transparent;
	border: none;
	padding: 0 15px;
	position: relative;
}

.feature-column h4 {
	font-size: 16px;
	line-height: 1.4;
	background-image: none;
	color: #000000;
	margin-bottom: 20px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding-bottom: 15px;
	border-bottom: 2px solid #e0dcd4;
	font-family: 'VAA', Arial, sans-serif;
	text-align: center;
}

.feature-column .options {
	margin: 0;
	padding: 0;
	list-style: none;
	max-height: 600px;
	overflow: hidden;
	position: relative;
	transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.feature-column.has-more .options:not(.expanded)::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 120px;
	background: transparent;
	pointer-events: none;
	transition: opacity 0.5s ease;
	opacity: 0;
}

.feature-column .options.expanded {
	max-height: 5000px;
	transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.feature-column .options.expanded::after {
	opacity: 0;
}

.feature-column .options li.occ-option {
	font-size: 14px;
	line-height: 1.8;
	margin-bottom: 8px;
	padding-left: 18px;
	position: relative;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.feature-column .options li.occ-option:before {
	content: "\2713";
	position: absolute;
	left: 0;
	top: 2px;
	color: #e0dcd4;
	font-weight: bold;
	font-size: 12px;
}

.feature-column .options li.occ-option abbr[title] {
	border-bottom: 1px dotted #e0dcd4;
	text-decoration: none;
	cursor: help;
}

.feature-column .expand-btn {
	display: none;
	text-align: center;
	margin-top: 15px;
	padding-top: 10px;
}

.feature-column.has-more .expand-btn {
	display: block;
}

.feature-column .expand-btn button {
	background: transparent;
	border: none;
	color: #000000;
	padding: 5px 10px;
	font-size: 12px;
	cursor: pointer;
	transition: all 0.3s ease, transform 0.2s ease;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-weight: 600;
	text-decoration: underline;
	position: relative;
}

.feature-column .expand-btn button:hover {
	color: #e0dcd4;
	transform: translateY(-2px);
}

.feature-column .expand-btn button:active {
	transform: translateY(0);
}

.feature-column-full {
	margin: 30px 0;
}

.feature-column-full h4 {
	font-size: 18px;
	line-height: 36px;
	background-image: none;
	color: #000000;
	margin-bottom: 20px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-family: 'VAA', Arial, sans-serif;
	padding-bottom: 15px;
	border-bottom: 2px solid #e0dcd4;
}

.feature-column-full .embed-responsive {
	max-width: 900px;
	margin: 0 auto;
}

@media (max-width: 1400px) {
	.features-columns {
		flex-wrap: wrap;
	}
	
	.feature-column {
		flex: 0 0 calc(33.333% - 20px);
	}
}

@media (max-width: 991px) {
	.features-columns {
		gap: 20px;
	}
	
	.feature-column {
		flex: 0 0 calc(50% - 10px);
		padding: 0 10px;
	}
	
	.feature-column h4 {
		font-size: 15px;
		margin-bottom: 15px;
		padding-bottom: 12px;
	}
}

@media (max-width: 767px) {
	.features-columns {
		flex-direction: column;
		gap: 30px;
	}
	
	.feature-column {
		flex: 0 0 100%;
		padding: 0;
	}
	
	.feature-column .options {
		max-height: 450px;
	}
	
	.feature-column .options li.occ-option {
		font-size: 14px;
	}
	
	.feature-column h4 {
		font-size: 14px;
	}
}

/* Legacy tab content (keeping for backwards compatibility) */
section.detail-information .tab-content {
	margin-top: 30px;
	min-height: 250px;
}
section.detail-information ul.row.options {
	/* padding-left: 0;*/
}
section.detail-information ul.row.options li.occ-option {
	color: #000000;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
section.detail-information ul.row.options li.occ-option abbr[title] {
	border-bottom: none;
}
.social-media {
	position: relative;
	padding: 7px 0 25px 0;
	text-align: center;
}
.social-media span.share {
	position: relative;
	top: -35px;
	display: inline-block;
	font-size: 28px;
	font-family: 'VAA Italic', Arial, "Helvetica Neue", Helvetica, sans-serif;
	color: #000000;
}
.social-media ul {
	display: inline-block;
}
.social-media ul li {
	margin: 0 7px;
	float: left;
	list-style-type: none;
}
.social-media a {
	display: block;
}
.social-media a:hover,
.social-media a:focus {
	border: none;
	outline: 0;
}
.social-media a:hover .fa,
.social-media a:focus .fa {
	color: #000000;
	background-color: #e0dcd4;
	border-color: transparent;
}
.social-media .fa {
	padding: 22px;
	border-width: 2px;
	position: relative;
	color: #e0dcd4 !important;
	-webkit-transition: background 0.5s ease;
	-moz-transition: background 0.5s ease;
	-o-transition: background 0.5s ease;
	transition: background 0.5s ease;
}
.social-media .fa:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 26px;
	margin: auto;
}
@media (min-width: 992px) {
	.social-media .sm-icons-list {
		float: left;
	}
}
.social-media .sm-icons-list .fa-my-va {
	font-size: 23px;
	line-height: 30px;
}
.social-media .sm-icons-list .fa-my-va:before {
	top: 0;
}
.social-media .sm-icons-list .fa-my-va:hover:before {
	margin-top: 11px;
}
.social-media .sm-icons-list .fa-printer:before {
	background-position: -12px -1496px;
}
.social-media .sm-icons-list .fa-pdf:before {
	background-position: -12px -1446px;
}
@media (min-width: 992px) {
	.social-media #detail-nav-prev-next {
		float: right;
	}
}
.social-media #detail-nav-prev-next .fa {
	color: #e0dcd4 !important;
}
.social-media #detail-nav-prev-next .fa-arrow-left:before {
	background-position: -12px -1346px;
}
.social-media #detail-nav-prev-next .fa-arrow-right:before {
	background-position: -12px -1246px;
}
.social-media #detail-nav-prev-next .fa-th:before {
	background-position: -12px -1296px;
}
.occasion-detail .slick-slide,
.occasion-detail .slick-slide img {
	outline: 0;
}
.occasion-detail .social-media ul {
	margin-left: -15px;
	margin-right: -15px;
}
.occasion-detail .slide-show .buttons-container {
	width: 33%;
	margin: 0 auto;
}
.occasion-detail .slide-show .slick-slider,
.occasion-detail .slide-show .slick-slider img {
	height: 65vh;
	max-height: 700px;
}
@media (min-width: 992px) {
	.occasion-detail .slide-show .slick-slider .span-container {
		display: inline-block;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.enter-fullscreen {
		position: absolute;
		bottom: 0;
		margin-left: -31px;
		width: 31px;
		height: 31px;
		background: transparent url(../images/icon-pluszoom.png) center center no-repeat;
		color: #000000;
		cursor: pointer;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.enter-fullscreen:hover {
		zoom: 1;
		filter: alpha(opacity=90);
		-webkit-opacity: 0.9;
		-moz-opacity: 0.9;
		opacity: 0.9;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.vos-slide-arrows {
		position: relative;
		display: block;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.vos-slide-arrows:before,
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.vos-slide-arrows:after {
		pointer-events: none;
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 35px;
		height: 85px;
		background: url('../images/custom-icon-set.png') no-repeat top left;
		z-index: 10;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.vos-slide-arrows:before {
		left: -85px;
		background-position: -20px -224px;
	}
	.occasion-detail .slide-show .slick-slider:hover .slick-current span.vos-slide-arrows:after {
		right: -85px;
		background-position: -20px -326px;
	}
}
.occasion-detail .slide-show .slick-slider .slick-slide {
	margin: 0 10px;
	zoom: 1;
	filter: alpha(opacity=60);
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}
.occasion-detail .slide-show .slick-slider .slick-slide.slick-current {
	zoom: 1;
	filter: alpha(opacity=100);
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
@media (min-width: 768px) {
	.occasion-detail .slide-nav {
		margin-top: 15px;
		margin-bottom: 30px;
	}
}
.occasion-detail .slide-nav .slick-slider {
	height: 60px;
}
.occasion-detail .slide-nav .slick-slider .slick-slide,
.occasion-detail .slide-nav .slick-slider .slick-slide img {
	margin: 0 3px;
	height: auto;
	width: auto;
	object-fit: cover;
}
.occasion-detail .slide-nav .slick-slider .slick-list {
	padding: 0 !important;
	overflow: hidden;
}
.occasion-detail .slide-nav .slick-slide {
	margin: 3px;
	transition: all 0.2s ease;
}
.occasion-detail .slide-nav .slick-slide.slick-current {
	border: 2px solid #e0dcd4;
	box-shadow: 0 0 8px rgba(224, 220, 212, 0.4);
	transform: scale(1.05);
}
.occasion-detail .slide-nav button {
	border: none;
	margin-top: 20px;
	outline: 0;
}
.occasion-detail .slide-nav button:hover,
.occasion-detail .slide-nav button:active {
	outline: 0;
}
/*************************************/
/* News
/*************************************/
/* Max-width news page container */
.news .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
	padding-top: 20px;
	padding-bottom: 40px;
}

/* Global page title styling (exclude homepage captions) */
body:not(.home) .container-fluid > .row > .col-md-12 > h1,
body:not(.home) .container > .row > .col-md-12 > h1 {
	font-size: 40px;
	font-weight: 400;
	color: #000000 !important;
	text-align: center;
	letter-spacing: -0.5px;
	margin-bottom: 50px;
	text-transform: uppercase;
	position: relative;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

body:not(.home) .container-fluid > .row > .col-md-12 > h1:after,
body:not(.home) .container > .row > .col-md-12 > h1:after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
	height: 2px;
	background: #e0dcd4;
}

/* Main page title - news specific */
.news h1 {
	font-size: 40px;
	font-weight: 400;
	color: #000000;
	text-align: center;
	letter-spacing: -0.5px;
	margin-bottom: 50px;
	text-transform: uppercase;
	position: relative;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.news h1:after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
	height: 2px;
	background: #e0dcd4;
}

/* News listing container */
.news .row-listing {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

/* Individual news item */
.news .row-listing .news-item {
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	overflow: hidden;
	transition: all 0.4s ease;
	border: none;
	margin-left: 3px;
	border-left: 3px solid #e0dcd4;
	position: relative;
	margin-bottom: 20px;
}

.news .row-listing .news-item:hover {
	transform: translateX(5px);
}

.news .row-listing .news-item:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(175, 177, 152, 0.2), transparent);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.news .row-listing .news-item:hover:before {
	opacity: 1;
}

/* News content wrapper */
.news .news-content {
	padding: 0 30px;
}

/* News title styling */
.news .row-listing h2 {
	font-size: 26px;
	font-weight: 400;
	margin: 0 0 20px 0;
	line-height: 1.4;
	letter-spacing: 0.5px;
	position: relative;
}

.news .row-listing h2 a {
	color: #000000;
	text-decoration: none;
	position: relative;
	display: block;
	transition: all 0.3s ease;
}

.news .row-listing h2 a:hover {
	color: #000000;
	text-decoration: none;
	transform: translateX(2px);
}

.news .row-listing h2::after {
	content: '';
	position: absolute;
	width: 200px;
	height: 2px;
	bottom: -5px;
	left: 0;
	background: #e0dcd4;
	transition: all 0.3s ease;
}

.news .row-listing h2:hover::after {
	width: 500px;
}

/* Lease Page Styling */
.tpl-lease h1 {
	font-size: 40px;
	font-weight: 400;
	color: #000000;
	text-align: center;
	letter-spacing: -0.5px;
	margin-bottom: 0;
	color: #000000;
}

/* Wide container for lease pages */
.container-wide {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 40px;
	padding-right: 40px;
	max-width: 1400px;
}

@media (min-width: 1600px) {
	.container-wide {
		max-width: 1600px;
		padding-left: 60px;
		padding-right: 60px;
	}
}

.lease-options {
	padding: 100px 0 80px 0;
	position: relative;
}

.lease-options::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" patternUnits="userSpaceOnUse" width="100" height="100"><circle cx="25" cy="25" r="0.5" fill="%23000000" opacity="0.02"/><circle cx="75" cy="75" r="0.3" fill="%23000000" opacity="0.015"/><circle cx="50" cy="10" r="0.4" fill="%23000000" opacity="0.01"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>') repeat;
	pointer-events: none;
}

.lease-option {
	padding: 0 30px 50px 30px;
	position: relative;
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.lease-option:hover {
	transform: translateY(-3px);
}


.lease-option h3 {
	color: #000000;
	font-size: 32px;
	margin-bottom: 25px;
	font-weight: 300;
	letter-spacing: 1px;
	position: relative;
	text-align: center;
}

.lease-option h3::after {
	content: '';
	position: absolute;
	bottom: -8px;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	max-width: 100%;
	height: 1px;
	background: #e0dcd4;
	transition: all 0.3s ease;
}

.lease-option:hover h3::after {
	width: 80px;
}

.lease-option p {
	color: #000000;
	font-size: 16px;
	margin-bottom: 30px;
	line-height: 1.7;
	text-align: center;
	min-height: 85px;
}

.lease-features {
	list-style: none;
	padding: 0;
	margin: 25px auto 0 auto;
	max-width: 200px;
}

.lease-features li {
	color: #000000;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0.3px;
	padding: 8px 0;
	transition: all 0.2s ease;
	text-align: center;
}

.lease-features li:hover {
	color: #000000;
}

.lease-features .fa-check {
	color: #e0dcd4;
	font-size: 11px;
	margin-right: 10px;
	opacity: 0.8;
}

.lease-services {
	padding: 100px 0;
	position: relative;
}


.lease-services h2 {
	color: #000000;
	font-size: 42px;
	margin-bottom: 80px;
	font-weight: 200;
	letter-spacing: 2px;
	text-align: center;
	position: relative;
}

.lease-services h2::after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 1px;
	background: #000000;
}

.service-item {
	padding: 0 40px 60px 40px;
	text-align: center;
	position: relative;
	transition: all 0.3s ease;
}

.service-item:hover {
	transform: translateY(-5px);
}

.service-item .fa {
	color: #000000;
	margin-bottom: 25px;
	font-size: 48px;
	transition: all 0.3s ease;
}

.service-item:hover .fa {
	color: #000000;
	transform: scale(1.1);
}

.service-item h4 {
	color: #000000;
	font-size: 22px;
	margin-bottom: 18px;
	font-weight: 300;
	letter-spacing: 0.5px;
}

.service-item p {
	color: #000000;
	font-size: 15px;
	line-height: 1.6;
}

.lease-contact {
	padding: 80px 0 100px 0;
	position: relative;
}

.contact-card {
	text-align: center;
	padding: 40px;
	position: relative;
}

.contact-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
}

.contact-card h3 {
	color: #000000;
	font-size: 36px;
	margin-bottom: 25px;
	font-weight: 200;
	letter-spacing: 1px;
}

.contact-card p {
	color: #000000;
	font-size: 17px;
	margin-bottom: 40px;
	line-height: 1.7;
}

.contact-buttons {
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.contact-buttons .btn {
	padding: 15px 35px;
	font-size: clamp(15px, 1.05rem, 18px);
	font-weight: 300;
	letter-spacing: 0.5px;
	border-radius: 0;
	transition: all 0.4s ease;
	text-transform: uppercase;
}

.contact-buttons .btn-primary {
	background: #000000;
	border: 2px solid #000000;
	color: #ffffff;
}

.contact-buttons .btn-primary:hover {
	background: transparent;
	color: #000000;
}

.contact-buttons .btn-outline {
	background: transparent;
	border: 2px solid #000000;
	color: #000000;
}

.contact-buttons .btn-outline:hover {
	background: #000000;
	color: #ffffff;
}

.contact-buttons .btn {
	margin: 0 10px 10px 10px;
	padding: 12px 30px;
	font-size: clamp(15px, 1.05rem, 18px);
	border-radius: 0;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 1px;
}

.btn-outline {
	background: transparent;
	border: 2px solid #000000;
	color: #000000;
}

.btn-outline:hover {
	background: #000000;
	color: #e0dcd4;
}

@media (max-width: 768px) {
	.container-wide {
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.lease-option {
		margin: 0 0 30px 0;
		padding: 40px 25px;
	}
	
	.lease-option h3 {
		font-size: 28px;
	}
	
	.lease-option p {
		font-size: 16px;
		min-height: auto;
	}
	
	.service-item {
		margin: 0 0 30px 0;
		padding: 40px 25px;
		min-height: auto;
	}
	
	.service-item .fa {
		font-size: 48px;
	}
	
	.service-item h4 {
		font-size: 22px;
	}
	
	.lease-card {
		min-height: auto;
		margin-bottom: 20px;
	}
	
	.contact-card {
		padding: 40px 25px;
	}
	
	.contact-buttons .btn {
		display: block;
		width: 100%;
		margin: 10px 0;
	}
	
	.lease-services h2 {
		font-size: 32px;
		margin-bottom: 40px;
	}
	
	.lease-options,
	.lease-services,
	.lease-contact {
		padding: 60px 0;
	}
}

/* END Content Styling */
.news .news-date {
	color: #000000;
	font-size: clamp(13px, 0.95rem, 15px);
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.news .news-date:before {
	content: '';
	width: 3px;
	height: 3px;
	background: #e0dcd4;
	border-radius: 50%;
	margin-right: 10px;
}

/* News excerpt */
.news .news-excerpt {
	font-size: clamp(15px, 1.05rem, 17px);
	line-height: 1.7;
	margin-bottom: 25px;
	font-weight: 400;
}

/* Read more link */
.news .read-more {
	display: inline-flex;
	align-items: center;
	color: #000000;
	font-weight: 500;
	text-decoration: none;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 1px;
	transition: all 0.3s ease;
	position: relative;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.news .read-more::before {
	content: '';
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 0;
	height: 1px;
	background: #e0dcd4;
	transition: width 0.3s ease;
}

.news .read-more:hover {
	color: #000000;
	text-decoration: none;
	transform: translateX(3px);
}

.news .read-more:hover::before {
	width: 100%;
}

.news .read-more:after {
	content: '\2192';
	margin-left: 6px;
	transition: transform 0.4s ease;
	font-size: 12px;
}

.news .read-more:hover:after {
	transform: translateX(2px);
}

/* Remove old blinker styling */
.news .blinker {
	display: none;
}

/* No results styling */
.news #no-results {
	text-align: center;
	padding: 60px 20px;
}

.news #no-results .jumbotron {
	background: linear-gradient(135deg, #f8f9fa, #ffffff);
	border: 2px dashed rgba(175, 177, 152, 0.3);
	border-radius: 12px;
	color: #666;
	font-size: 18px;
}

/* Manager controls styling */
.news .btn-primary {
	background: linear-gradient(135deg, #adae9c, #e0dcd4);
	border: none;
	border-radius: 6px;
	padding: 8px 15px;
	margin-left: 15px;
	transition: all 0.3s ease;
}

.news .btn-primary:hover {
	background: linear-gradient(135deg, #9da086, #d4d0c8);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* Responsive design */
@media (max-width: 768px) {
	.news .container {
		padding: 30px 15px;
	}
	
	.news h1 {
		font-size: 28px;
		margin-bottom: 30px;
	}
	
	.news .row-listing {
		gap: 25px;
	}
	
	.news .news-content {
		padding: 25px 20px;
	}
	
	.news .row-listing h2 {
		font-size: 24px;
	}
}
/*************************************/
/* Webshop
/*************************************/
.shop-listing .row.row-listing > div,
.shop-listing .row.row-listing .col-item {
	height: 450px;
}
section.shop-detail .slideshow-container {
	margin-bottom: 25px;
}
/*************************************/
/* My VA
/*************************************/
body.my-va .content h2 a:hover {
	text-decoration: underline;
}
/*************************************/
/* ========================================
   TESTIMONIALS SECTION - OVER ONS PAGE
   ======================================== */
.testimonials-section {
    margin-top: 80px;
    padding: 0;
    background: transparent;
}

.testimonials-section h2 {
    margin-bottom: 50px;
    color: #000000;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-weight: 300;
    font-size: 30px;
    line-height: 1.3;
    letter-spacing: 1px;
    text-align: center;
    position: relative;
}

.testimonials-section h2::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 1px;
    background: #e0dcd4;
}

.testimonials-container {
    margin: 0;
    padding: 0;
}

.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
    margin-bottom: 60px;
}

.testimonial-card {
    background: transparent;
    padding: 0;
    border: none;
    position: relative;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    min-height: 200px;
}

.testimonial-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 1px;
    height: 50px;
    background: #e0dcd4;
    transition: all 0.3s ease;
}

.testimonial-card:hover::before {
    height: 90px;
}

.testimonial-quote {
    display: none;
}

.testimonial-content {
    font-size: 16px;
    line-height: 1.6;
    color: #000000;
    font-style: italic;
    margin-bottom: 20px;
    margin-left: 20px;
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 400;
    position: relative;
    flex: 1;
}

.testimonial-content::before {
    content: '"';
    position: absolute;
    left: -15px;
    top: -5px;
    font-size: 28px;
    color: #e0dcd4;
    opacity: 0.6;
    font-family: Georgia, serif;
    line-height: 1;
}

.testimonial-author {
    margin-left: 20px;
    padding-top: 15px;
    border-top: 1px solid #e0dcd4;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
}

.author-info {
    flex: 1;
}

.author-name {
    font-weight: 600;
    color: #000000;
    font-size: 15px;
    margin-bottom: 3px;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
    letter-spacing: 0.3px;
}

.author-company {
    font-size: 13px;
    color: #666666;
    margin-bottom: 0;
    font-weight: 400;
}

.author-rating {
    font-size: 14px;
    color: #e0dcd4;
    letter-spacing: 1px;
    font-weight: normal;
}

.testimonials-footer {
    text-align: center;
    padding-top: 40px;
    border-top: 1px solid #e0dcd4;
    margin-top: 30px;
}

.reviews-count {
    color: #000000;
    font-size: 15px;
    margin-bottom: 20px;
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 300;
    letter-spacing: 0.5px;
}

.btn-reviews {
    display: inline-block;
    padding: 12px 25px;
    background: transparent;
    color: #000000;
    text-decoration: none;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    border: 1px solid #e0dcd4;
    position: relative;
    overflow: hidden;
}

.btn-reviews:hover {
    background: #000000;
    color: #ffffff;
    text-decoration: none;
    border-color: #000000;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.btn-reviews span,
.btn-reviews i {
    position: relative;
    z-index: 2;
}

.btn-reviews .fa-external-link {
    margin-left: 6px;
    font-size: 11px;
}

/* Responsive Design */
@media (max-width: 1199px) {
    .testimonials-grid {
        gap: 40px;
    }
}

@media (max-width: 991px) {
    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }
    
    .testimonials-section h2 {
        font-size: 26px;
        margin-bottom: 40px;
    }
}

@media (max-width: 768px) {
    .testimonials-section {
        margin-top: 60px;
    }
    
    .testimonials-section h2 {
        font-size: 24px;
        margin-bottom: 35px;
    }
    
    .testimonials-grid {
        gap: 30px;
    }
    
    .testimonial-content {
        font-size: 15px;
        margin-left: 15px;
    }
    
    .testimonial-author {
        margin-left: 15px;
    }
    
    .testimonial-content::before {
        left: -12px;
        font-size: 28px;
    }
}

@media (max-width: 480px) {
    .testimonials-section {
        margin-top: 50px;
    }
    
    .testimonials-section h2 {
        font-size: 22px;
        margin-bottom: 30px;
    }
    
    .testimonials-grid {
        gap: 25px;
    }
    
    .testimonial-content {
        font-size: 14px;
        margin-left: 12px;
    }
    
    .testimonial-author {
        margin-left: 12px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    
    .testimonial-content::before {
        left: -10px;
        font-size: 24px;
    }
    
    .btn-reviews {
        padding: 10px 20px;
        font-size: 12px;
    }
}

/* End of screen.css */*************************************/
/*************************************/
/* References
/*************************************/
.row.row-reference {
	margin-bottom: 50px;
}
.row.row-reference > div img {
	margin-top: 15px;
}
@media (max-width: 768px) {
	.row.row-reference > div img {
		display: block;
		margin: 0 auto;
	}
}
.row.row-reference dl dt {
	color: #000000;
}
.row.row-reference dl dd {
	color: #000000;
}
.row.row-reference .ref-content p {
	color: #000000;
}

/*************************************/
form.listing-filter .bootstrap-select:focus > .btn,
form.listing-filter .bootstrap-select .btn:focus,
.bootstrap-select:focus > .btn,
.bootstrap-select .btn:focus {
	border-color: #e0dcd4 !important;
	box-shadow: 0 0 0 0.2rem rgba(224, 220, 212, 0.25) !important;
}

/*************************************/
/* Arrow Color Transformations - All arrows to #e0dcd4 */
.arrow,
.btn-zoek,
form.listing-filter .form-group.search-for-q span.input-group-btn button.btn-zoek,
.fotorama__arr--prev,
.fotorama__arr--next,
a.next,
a.ws_prev {
	margin-top: 5px;
	margin-left: 10px;
	border: none;
	background: url("../images/arrow-blue-right.png") top left no-repeat;
}

/* Override bootstrap-select caret specifically - removed from above rule */
/* Specific targeting for background images */
[style*="blue-arrows.png"],
[style*="arrow-blue-right.png"],
[style*="white-arrows.png"] {
	filter: brightness(0) saturate(100%) invert(89%) sepia(9%) saturate(415%) hue-rotate(19deg) brightness(95%) contrast(93%);
	-webkit-filter: brightness(0) saturate(100%) invert(89%) sepia(9%) saturate(415%) hue-rotate(19deg) brightness(95%) contrast(93%);
}
/*************************************/
/* Homepage Car Carousel Improvements
/*************************************/
/* Better image positioning for car showcase */
.fotorama__img {
	background-position: center 30% !important;
	background-size: cover !important;
}

.section-slider .fotorama div[style*="background-image"] {
	background-position: center 30% !important;
	background-size: cover !important;
}

/* Improved text visibility on car images */
.fotorama-homepage-caption {
	z-index: 100;
	position: relative;
}

.fotorama-homepage-caption h1,
.fotorama-homepage-caption .full-page-slide-caption,
.fotorama-homepage-caption .logo {
	color: #e0dcd4 !important;
	text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
}

.fotorama-homepage-caption h1 {
	font-size: 80px;
	text-align: center;
	margin: 20px auto 0 auto;
	max-width: 100%;
	word-wrap: break-word;
}

.fotorama-homepage-caption .full-page-slide-caption {
	color: #ffffff !important;
	font-size: 18px;
	line-height: 1.6;
	text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.7);
	max-width: 800px;
	margin: 40px auto 40px auto;
}

.fotorama-homepage-caption .logo-inner {
	filter: brightness(0) invert(1);
}

body.home .header-nav a:hover,
body.home .header-nav .nav-link:hover,
body.home .header-top a:hover,
body.home .header-contact a:hover,
body.home nav a:hover,
body.home .navbar a:hover,
body.home .nav a:hover {
	color: #e0dcd4 !important;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8) !important;
}

/* Homepage logo visibility */
body.home .header-logo,
body.home .header-logo img,
body.home .logo,
body.home .logo img {
	filter: brightness(0) invert(1) !important;
}

/* Navigation menu visibility on homepage - Very specific */
body.home .navbar-nav .nav-item .nav-link,
body.home .navbar-brand,
body.home .navbar-text,
body.home .menu-item,
body.home .menu-item a,
body.home .navigation,
body.home .navigation a,
body.home ul.nav li a,
body.home .main-nav a {
	color: #e0dcd4 !important;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3) !important;
}

body.home .navbar-nav .nav-item .nav-link:hover,
body.home .navbar-nav .nav-item .nav-link:focus,
body.home .menu-item a:hover,
body.home .navigation a:hover,
body.home ul.nav li a:hover,
body.home .main-nav a:hover {
	color: #e0dcd4 !important;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8) !important;
}

/* Exception: dropdown menu links should be black */
html body.home .dropdown-menu a {
	color: #000000 !important;
	text-shadow: none !important;
}

/* Force white for common text elements */
html body.home header span,
html body.home nav span,
html body.home .navbar span,
html body.home .nav span,
html body.home header div,
html body.home nav div,
html body.home .navbar div,
html body.home .nav div {
	color: #e0dcd4 !important;
}

/*************************************/
/* Professional Bekijk Collectie Button
/*************************************/
.bekijk-aanbod-section {
	position: absolute;
	top: 58%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 200 !important;
	width: 100%;
	max-width: 280px;
	text-align: center;
	pointer-events: auto;
}

/* Ensure button is visible on homepage */
.home .bekijk-aanbod-section {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.bekijk-aanbod-btn {
	display: inline-block !important;
	padding: 16px 32px;
	background: linear-gradient(135deg, #e0dcd4 0%, #adae9c 100%);
	color: #000000 !important;
	font-family: 'VAA Bold', Arial, sans-serif;
	font-size: 16px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	border-radius: 50px;
	text-decoration: none !important;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.6);
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	position: relative;
	overflow: hidden;
	cursor: pointer;
	transform: translateY(0);
	width: 100%;
	max-width: 270px;
	visibility: visible !important;
	opacity: 1 !important;
}

.bekijk-aanbod-btn::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
	transition: left 0.6s;
}

.bekijk-aanbod-btn:hover {
	color: #000000 !important;
	transform: translateY(-5px) scale(1.05);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.8);
	border-color: rgba(255, 255, 255, 0.6);
	text-decoration: none !important;
}

.bekijk-aanbod-btn:hover::before {
	left: 100%;
}

.bekijk-aanbod-btn:active {
	transform: translateY(-2px) scale(1.02);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.bekijk-aanbod-btn .btn-text {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.bekijk-aanbod-btn .btn-text::after {
	content: '\2192';
	font-size: 20px;
	transition: transform 0.3s ease;
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.bekijk-aanbod-btn:hover .btn-text::after {
	transform: translateX(5px);
}

/* Responsive adjustments for button */
@media (max-width: 767px) {
	.bekijk-aanbod-section {
		position: relative !important;
		top: auto !important;
		bottom: auto !important;
		left: auto !important;
		transform: none !important;
		z-index: 20;
		margin-top: 30px;
		margin-bottom: 30px;
		padding: 0 20px;
		display: flex !important;
		justify-content: center;
		width: 100%;
		max-width: 100%;
		flex-shrink: 0;
		order: 4;
	}

	.bekijk-aanbod-btn {
		padding: 14px 28px;
		font-size: 15px;
		letter-spacing: 1.5px;
		border-radius: 28px;
		min-width: 160px;
		width: auto;
		max-width: 280px;
		display: inline-block;
		background: linear-gradient(135deg, #e0dcd4 0%, #adae9c 100%);
		color: #000000 !important;
		text-shadow: none;
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
		border: 2px solid rgba(255, 255, 255, 0.3);
		font-weight: 700;
		text-transform: uppercase;
	}
	
	.bekijk-aanbod-btn:hover {
		background: linear-gradient(135deg, #adae9c 0%, #e0dcd4 100%);
		transform: translateY(-3px) scale(1.02);
		box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
	}
}

@media (max-width: 737px), (max-height: 720px) {
	.bekijk-aanbod-section {
		position: relative;
		bottom: auto;
		margin-top: 20px;
	}
}

/* Adjust button position for medium height screens */
@media (min-width: 768px) and (max-height: 800px) {
	.bekijk-aanbod-section {
		top: 55%;
	}
}

/* Ensure adequate spacing on tall screens */
@media (min-width: 768px) and (min-height: 900px) {
	.bekijk-aanbod-section {
		top: 60%;
	}
}

/*************************************/
/* Professional Homepage Services Section
/*************************************/
.homepage-services {
	padding: 80px 0;
	background: #adae9c;
	position: relative;
}

.homepage-services::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent 0%, #e0dcd4 50%, transparent 100%);
}

.services-content {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.services-title {
	font-family: 'VAA Bold', Arial, sans-serif;
	font-size: 36px;
	color: #000000;
	margin-bottom: 15px;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight: bold;
}

.services-subtitle {
	font-family: 'VAA', Arial, sans-serif;
	font-size: 18px;
	color: #000000;
	margin-bottom: 60px;
	font-style: italic;
}

.services-row {
	margin-top: 40px;
}

.service-card {
	background: rgba(255, 255, 255, 0.9);
	border-radius: 12px;
	padding: 40px 30px;
	text-align: center;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
	border: 1px solid rgba(224, 220, 212, 0.3);
	margin-bottom: 30px;
	height: 320px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.service-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.95);
}

.service-icon {
	width: 80px;
	height: 80px;
	margin: 0 auto 25px auto;
	background: rgba(224, 220, 212, 0.2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.service-icon svg {
	color: #000000;
	transition: all 0.3s ease;
}

.service-card:hover .service-icon {
	background: #e0dcd4;
	transform: scale(1.1);
}

.service-card:hover .service-icon svg {
	color: #000000;
}

.service-card h3 {
	font-family: 'VAA Bold', Arial, sans-serif;
	font-size: 22px;
	color: #000000;
	margin: 0 0 15px 0;
	letter-spacing: 1px;
	font-weight: bold;
}

.service-card p {
	font-family: 'VAA', Arial, sans-serif;
	font-size: 15px;
	color: #000000;
	line-height: 1.6;
	margin: 0 0 25px 0;
	flex-grow: 1;
}

.service-cta {
	display: inline-block;
	padding: 12px 28px;
	background: #000;
	color: #ffffff;
	text-decoration: none;
	font-family: 'VAA', Arial, sans-serif;
	font-size: 14px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-radius: 6px;
	transition: all 0.3s ease;
	border: 2px solid #000;
	font-weight: 500;
}

.service-cta:hover {
	background: transparent;
	color: #000000;
	border-bottom: 2px solid #000;
	text-decoration: none;
}

@media (max-width: 767px) {
	.homepage-services {
		padding: 60px 0;
	}
	
	.services-title {
		font-size: 28px;
	}
	
	.services-subtitle {
		font-size: 16px;
		margin-bottom: 40px;
	}
	
	.service-card {
		padding: 30px 20px;
		height: auto;
		min-height: 280px;
	}
	
	.service-icon {
		width: 70px;
		height: 70px;
		margin-bottom: 20px;
	}
	
	.service-card h3 {
		font-size: 20px;
	}
	
	.service-card p {
		font-size: 14px;
	}
}

/*************************************/
/* Homepage Car Carousel Overlays
/*************************************/
.car-info-overlay {
	position: absolute;
	bottom: 80px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 20;
	text-align: center;
	color: #000000;
	max-width: 600px;
	width: 90%;
}

.car-details {
	background: rgba(224, 220, 212, 0.95);
	padding: 30px;
	border-radius: 8px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(224, 220, 212, 0.2);
}

.car-title {
	font-family: 'VAA Bold', Arial, sans-serif;
	font-size: 28px;
	color: #000000;
	margin: 0 0 8px 0;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.car-subtitle {
	font-family: 'VAA', Arial, sans-serif;
	font-size: 16px;
	color: #000000;
	margin: 0 0 20px 0;
	font-style: italic;
}

.car-stats {
	display: flex;
	justify-content: center;
	gap: 25px;
	margin: 20px 0;
	flex-wrap: wrap;
}

.car-stats span {
	font-family: 'VAA', Arial, sans-serif;
	font-size: 14px;
	color: #000000;
	padding: 8px 15px;
	background: rgba(255, 255, 255, 0.7);
	border-radius: 20px;
	border: 1px solid rgba(190, 189, 174, 0.3);
}

.car-price {
	font-family: 'VAA Bold', Arial, sans-serif !important;
	font-size: 16px !important;
	color: #000000 !important;
	background: rgba(255, 255, 255, 0.9) !important;
}

.car-cta {
	display: inline-block;
	margin-top: 20px;
	padding: 12px 30px;
	background: #2c2c2c;
	color: #e0dcd4;
	text-decoration: none;
	font-family: 'VAA', Arial, sans-serif;
	font-size: 14px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-radius: 4px;
	transition: all 0.3s ease;
	border: 2px solid #2c2c2c;
}

.car-cta:hover {
	background: transparent;
	color: #000000;
	border-bottom: 2px solid #2c2c2c;
	text-decoration: none;
}

@media (max-width: 768px) {
	.car-info-overlay {
		bottom: 60px;
		width: 95%;
	}
	
	.car-details {
		padding: 20px;
	}
	
	.car-title {
		font-size: 22px;
	}
	
	.car-stats {
		gap: 15px;
	}
	
	.car-stats span {
		font-size: 12px;
		padding: 6px 12px;
	}
}

/*************************************/
/* Modern Contact Page
/*************************************/
.modern-contact .wrapper {
    min-height: 0;
}

.contact-hero {
    position: relative;
    min-height: 86vh;
    padding: 120px 0 0 0;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(224, 220, 212, 0.1), rgba(255, 255, 255, 0.05));
}

.contact-hero-content {
    position: relative;
    z-index: 10;
    height: 100%;
}

.contact-hero .row {
    column-gap: 100px !important;
    row-gap: 60px !important;
    --bs-gutter-x: 100px;
    margin-left: 0;
    margin-right: 0;
}

.contact-hero .col-lg-6 {
    display: flex;
    align-items: stretch;
    flex-direction: column;
}

.contact-hero .col-lg-6:first-child {
    padding-right: 50px !important;
}

.contact-hero .col-lg-6:last-child {
    padding-left: 50px !important;
}

.contact-map-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    opacity: 0.3;
}

.contact-map-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(224, 220, 212, 0.8), rgba(255, 255, 255, 0.9));
    z-index: 2;
}

#contact_map {
    width: 100%;
    height: 100%;
}

/* Ensure contact section row has equal height columns */
.contact-hero-content .row {
    display: flex;
    align-items: stretch !important;
}

.contact-hero-content .col-lg-6 {
    display: flex;
    flex-direction: column;
}

.contact-hero-content .contact-form-container {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
}

/* Contact Info Card */
.contact-info-card {
    background: linear-gradient(135deg, #c9c4b5 0%, #d3cec2 100%) !important;
    backdrop-filter: blur(10px);
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(224, 220, 212, 0.3);
    margin: 0 0 0 auto;
    max-width: 520px;
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 100%;
}

.contact-info-card .contact-description {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.contact-title {
    font-size: 36px;
    font-weight: 300;
    color: #000000;
    margin-bottom: 20px;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
    letter-spacing: 1px;
}

.contact-description {
    font-size: 16px;
    color: #333333;
    line-height: 1.6;
    margin-bottom: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contact-details {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    max-width: 400px;
}

.contact-detail-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.contact-icon {
    height: 40px;
    background: #e0dcd4;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #000000;
    font-size: 16px;
}

.contact-detail-content h4 {
    font-size: 16px;
    font-weight: 600;
    color: #000000;
    margin: 0 0 5px 0;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.contact-detail-content p {
    font-size: 14px;
    color: #000000;
    margin: 0;
    line-height: 1.4;
}

.contact-detail-content a {
    color: #000000;
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-detail-content a:hover {
    color: #e0dcd4;
}

/* Contact Form */
.contact-form-container {
    height: 100%;
    display: flex;
    align-items: stretch;
    width: 100%;
}

.contact-form-card {
    background: linear-gradient(135deg, #c9c4b5 0%, #d3cec2 100%) !important;
    backdrop-filter: blur(10px);
    border-radius: 12px;
    padding: 40px;
    width: 100%;
    max-width: 520px;
    margin: 0 auto 0 0;
    color: #ffffff;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 100%;
}

.form-title {
    font-size: 28px;
    font-weight: 300;
    color: #ffffff;
    margin-bottom: 10px;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.form-subtitle {
    font-size: 14px;
    margin-bottom: 30px;
    line-height: 1.5;
}

.modern-contact-form {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.modern-contact-form .form-group-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

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

.modern-contact-form label {
    display: block;
    font-size: 14px;
    margin-bottom: 8px;
    font-weight: 500;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.required {
    color: #ff6b6b;
}

.modern-contact-form input,
.modern-contact-form select,
.modern-contact-form textarea {
    width: 100%;
    padding: 15px;
    border: 1px solid rgba(224, 220, 212, 0.3);
    border-radius: 8px;
    background: #e0dcd4;
    font-size: 14px;
    transition: all 0.3s ease;
    font-family: "Helvetica Neue", Arial, sans-serif;
}

.modern-contact-form textarea {
    resize: none;
    overflow: hidden;
    min-height: 120px;
}

.modern-contact-form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #e0dcd4;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cdefs%3E%3Cpattern id='grain' patternUnits='userSpaceOnUse' width='100' height='100'%3E%3Ccircle cx='25' cy='25' r='0.5' fill='%23000000' opacity='0.02'%3E%3C/circle%3E%3Ccircle cx='75' cy='75' r='0.3' fill='%23000000' opacity='0.015'%3E%3C/circle%3E%3Ccircle cx='50' cy='10' r='0.4' fill='%23000000' opacity='0.01'%3E%3C/circle%3E%3C/pattern%3E%3C/defs%3E%3Crect width='100' height='100' fill='url(%23grain)'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 12px;
    padding-right: 35px;
    color: #000000;
    height: auto;
}

.modern-contact-form input::placeholder,
.modern-contact-form textarea::placeholder {
    color: #999999;
    font-size: 13px;
    font-weight: 300;
}

.modern-contact-form input:focus,
.modern-contact-form select:focus,
.modern-contact-form textarea:focus {
    outline: none;
    border-color: #e0dcd4;
    box-shadow: 0 0 0 3px rgba(224, 220, 212, 0.1);
}

.btn-submit {
    background: #e0dcd4;
    color: #000000;
    border: none;
    padding: 15px 30px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    width: 100%;
    margin-top: 10px;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.btn-submit:hover {
    background: linear-gradient(135deg, #d4d0c8, #c8c4bc);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

/* Form Success Message */
.form-success-message {
    text-align: center;
    padding: 60px 40px;
    background: rgba(46, 125, 50, 0.9);
    border-radius: 12px;
    color: white;
}

.success-icon {
    font-size: 48px;
    color: #4caf50;
    margin-bottom: 20px;
}

.form-success-message h3 {
    font-size: 24px;
    margin-bottom: 15px;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

/* Form Errors */
.form-errors {
    background: rgba(244, 67, 54, 0.1);
    border: 1px solid rgba(244, 67, 54, 0.3);
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 25px;
}

.error-message {
    color: #ff6b6b;
    font-size: 14px;
    margin: 5px 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Team Section */
.team-section {
    padding: 100px 0;
    background: #ffffff;
}

.section-header {
    text-align: center;
    margin-bottom: 80px;
}

.section-title {
    font-size: 40px !important;
    font-weight: 400 !important;
    color: #000000 !important;
    margin-bottom: 35px !important;
    margin-top: 0 !important;
    text-align: center !important;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    letter-spacing: -0.5px !important;
    text-transform: uppercase !important;
    position: relative !important;
}

.section-underline {
    display: none !important;
}

.section-title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 2px;
    background: #e0dcd4;
}

.section-subtitle {
    font-size: 16px;
    color: #666666;
    margin: 0;
    font-weight: 300;
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.team-member-card {
    overflow: hidden;
    transition: all 0.4s ease;
}

.team-member-card:hover {
    transform: translateY(-10px);
}

.member-image {
    position: relative;
    height: 280px;
    overflow: hidden;
}

.member-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.team-member-card:hover .member-image img {
    transform: scale(1.05);
}

.member-quote-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(224, 220, 212, 0.95);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.4s ease;
    padding: 30px;
}

.team-member-card:hover .member-quote-overlay {
    opacity: 1;
}

.quote-content {
    text-align: center;
    color: #000000;
}

.quote-content i {
    font-size: 24px;
    color: #e0dcd4;
    margin-bottom: 15px;
}

.quote-content p {
    font-size: 16px;
    line-height: 1.5;
    font-style: italic;
    margin: 0;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.member-info {
    padding: 25px;
    text-align: center;
}

.member-name {
    font-size: 22px;
    font-weight: 600;
    color: #000000;
    margin: 0 0 8px 0;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.member-function {
    font-size: 14px;
    margin: 0 0 15px 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 500;
}

.member-contact {
    font-size: 14px;
    color: #666666;
}

.member-contact a {
    color: #000000;
    text-decoration: none;
    transition: color 0.3s ease;
}

.member-contact a:hover {
    color: #e0dcd4;
}

/* Responsive Design */
@media (max-width: 1199px) {
    .contact-hero {
        padding: 100px 0 60px 0;
    }
    
    .contact-hero .row {
        column-gap: 80px !important;
        row-gap: 50px !important;
        --bs-gutter-x: 80px;
    }
    
    .contact-info-card {
        padding: 30px;
    }
    
    .contact-form-card {
        padding: 30px;
    }
}

@media (max-width: 991px) {
    .contact-hero {
        min-height: auto;
        padding: 80px 0 60px 0;
    }
    
    .contact-hero .row {
        row-gap: 40px !important;
        column-gap: 40px !important;
        --bs-gutter-x: 40px;
    }
    
    .contact-hero .col-lg-6 {
        display: block;
    }
    
    .contact-hero .col-lg-6:first-child,
    .contact-hero .col-lg-6:last-child {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    
    .contact-title {
        font-size: 28px;
    }
    
    .contact-info-card {
        margin: 0 auto 40px auto;
        height: auto;
        flex: none;
    }
    
    .contact-form-card {
        margin: 0 auto;
        height: auto;
        flex: none;
    }
    
    .contact-details {
        flex-direction: column;
        gap: 20px;
    }
    
    .modern-contact-form .form-group-row {
        grid-template-columns: 1fr;
        gap: 0;
    }
    
    .team-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 30px;
    }
    
    .team-section {
        padding: 80px 0;
    }
    
    .section-header {
        margin-bottom: 60px;
    }
    
    .section-title {
        font-size: 32px;
    }
}

@media (max-width: 767px) {
    .contact-hero {
        padding: 40px 0 40px 0;
    }
    
    .contact-hero .container {
        width: 100% !important;
        padding: 0 !important;
    }
    
    .contact-hero .row {
        display: block !important;
        margin: 0 !important;
    }
    
    .contact-hero .row .col-lg-6,
    .contact-hero .row > div[class*="col-"] {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        padding: 0 15px !important;
        margin-bottom: 30px !important;
        position: relative !important;
        left: auto !important;
        right: auto !important;
    }
    
    .contact-hero .col-lg-6:last-child {
        margin-bottom: 0 !important;
    }
    
    /* FORCE CONTACT PAGE COLUMNS TO STACK - MAXIMUM SPECIFICITY */
    body.tpl-content .contact-hero .row .col-lg-6,
    .tpl-content .contact-hero .container .row .col-lg-6,
    section.contact-hero .row .col-lg-6 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        display: block !important;
        clear: both !important;
        margin-bottom: 30px !important;
    }
    
    .contact-info-card,
    .contact-form-card {
        padding: 30px 20px;
        min-height: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto;
        display: block !important;
    }
    
    .contact-info-card {
        text-align: center;
        margin-bottom: 0 !important;
    }
    
    .contact-info-card .contact-description {
        text-align: center;
    }
    
    .contact-info-card .contact-description p {
        font-size: 14px;
        line-height: 1.8;
        margin-bottom: 20px;
    }
    
    .contact-info-card h2 {
        font-size: 20px;
        margin-top: 25px;
        margin-bottom: 10px;
    }
    
    .contact-title {
        font-size: 36px !important;
        margin-bottom: 25px !important;
        text-align: center;
    }
    
    .contact-form-card {
        max-width: 100%;
    }
    
    .form-title {
        text-align: center;
    }
    
    .form-subtitle {
        text-align: center;
    }
    
    .form-title {
        font-size: 24px;
    }
    
    .team-grid {
        grid-template-columns: 1fr;
    }
    
    .member-image {
        height: 250px;
    }
}

/*************************************/
/* Team
/*************************************/
.team.listing .row.listing > div {
	height: 300px;
}
.team.listing .col-item .image-container.no-quote div {
	background-size: 100%;
}
.team.listing .col-item .image-container div {
	display: table;
	border-collapse: collapse;
	position: relative;
	width: 100%;
	height: 250px;
	color: #000000;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.team.listing .col-item .image-container div:hover {
	text-decoration: none;
	cursor: default;
}
.team.listing .col-item .image-container div:hover span,
.team.listing .col-item .image-container div:hover blockquote {
	padding: 10px;
	display: table-cell;
	vertical-align: middle;
	position: initial;
	top: initial;
	left: initial;
	right: initial;
	bottom: initial;
	margin: initial;
	height: auto;
	text-align: center;
	background: rgba(224, 220, 212, 0.8);
}
.team.listing .col-item .image-container div:hover span:before,
.team.listing .col-item .image-container div:hover blockquote:before,
.team.listing .col-item .image-container div:hover span:after,
.team.listing .col-item .image-container div:hover blockquote:after {
	font-size: 20px;
}
.team.listing .col-item .image-container div:hover span:before,
.team.listing .col-item .image-container div:hover blockquote:before {
	content: '&#65533;';
}
.team.listing .col-item .image-container div:hover span:after,
.team.listing .col-item .image-container div:hover blockquote:after {
	content: '&#65533;';
}
.team.listing .col-item .image-container div span,
.team.listing .col-item .image-container div blockquote {
	display: none;
	font-size: 20px;
	font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
	border: none;
}
/*************************************/
/* Footer
/*************************************/
footer {
	height: auto;
	color: #000000;
	font-size: clamp(13px, 0.95rem, 15px);
}

footer .container {
	max-width: 2560px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}

@media (max-width: 767px) {
	footer {
		height: auto;
		background: transparent;
		position: relative;
	}
	
	/* Ensure footer content stays horizontal */
	footer .container {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}
}

footer .row > div {
	z-index: 1;
}
footer .fa {
	width: 22px;
	height: 22px;
}
footer .fa.fa-phone {
	margin-right: 5px;
}
footer .fa.fa-my-va {
	margin-left: 5px;
}
footer .navigation {
	margin-bottom: 0;
}
@media (min-width: 768px) {
	footer .navigation {
		min-height: 24px;
	}
	footer .navigation.nav-2 {
		float: right;
	}
}
@media (max-width: 768px) {
	footer .navigation {
		text-align: center;
	}
}
/* Homepage Caption Styles */
.full-page-slide-caption {
    transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
	margin: 40px auto 23px auto;	
}

.full-page-slide-caption.active {
    opacity: 1;
    transform: translateY(-50%) translateY(-10px);
}

footer .navigation li {
    height: 100%;
    color: #000000;
    font-size: clamp(13px, 0.95rem, 15px);
	/*margin: auto;*/
	line-height: 4em;
}

@media (max-width: 767px) {
	footer .navigation li {
		line-height: 1.5;
		margin-bottom: 0;
		display: inline-block;
	}
	
	footer .navigation li:before {
		content: "|";
		padding: 0 10px 0 0;
	}
	
	footer .navigation li:first-child:before {
		content: "";
		padding: 0;
	}
}

@media (min-width: 768px) {
	footer .navigation li {
		float: left;
		min-height: 24px;
		padding: 0 5px;
	}
}
footer .navigation li:before {
	padding: 0 7px 0 0;
}
@media (min-width: 768px) {
	footer .navigation li:before {
		content: "|";
	}
}
footer .navigation li:first-of-type:before {
	content: "";
	padding: 0;
}
footer .navigation li a,
footer .navigation li span {
	color: #000000;
	font-size: clamp(13px, 0.95rem, 15px);
}
@media (max-width: 767px) {
	footer .navigation li a,
	footer .navigation li span {
		font-size: 12px;
		padding: 2px 0;
		display: inline-block;
	}
	
	footer .navigation {
		margin-bottom: 5px;
	}
	
	footer .navigation li:before {
		content: "";
		padding: 0;
	}
	
	footer .fa {
		width: 18px;
		height: 18px;
		font-size: 14px;
	}
}
footer .navigation li a.my-va,
footer .navigation li span.my-va {
	color: #000000;
}
@media (min-width: 768px) {
	footer .fa {
/*&.fa-phone:hover{
background: 		@vosWit;
border-color: 		@vosWit;
} */
}
footer .fa.fa-circle-border {
	margin-top: -4px;
}
footer a:hover {
	color: #000000;
	/*.fa.fa-phone{
	color: 			@vosZwart;
	background: 	@vosWit;
	}*/
}
}
/*************************************/
/* No CSS3
/*************************************/
/*************************************/
/* Touch specific
/*************************************/
.touch a.myVA.logo-hover:hover .logo-inner {
	-webkit-transform: rotate(140deg);
	-moz-transform: rotate(140deg);
	-o-transform: rotate(140deg);
	-ms-transform: rotate(140deg);
	transform: rotate(140deg);
}
.touch a.logo-hover .logo-outer:hover .logo-inner {
	-webkit-transform: rotate(140deg);
	-moz-transform: rotate(140deg);
	-o-transform: rotate(140deg);
	-ms-transform: rotate(140deg);
	transform: rotate(140deg);
}
/* Base state with transition */
.no-touch .row-listing .image-container > div {
	transition: all 0.5s ease-in-out;
}

/* Container styles for proper overflow handling */
.row-listing .image-container {
	overflow: hidden;
	position: relative;
}

/* Link hover styles */
.no-touch .row-listing .image-container a:hover {
	border: none;
	background: rgba(0, 0, 0, 0.3);
	text-shadow: 1px 1px rgba(0, 0, 0, 0.5);
	transition: all 0.3s ease;
}
.no-touch .row-listing .image-container a:hover span {
	display: block;
}
body.mobile .mix {
	display: block;
}
body.mobile .mobile-filter {
	display: block;
}
body.mobile input.input-arrow {
	border: 1px solid #FFF !important;
}

/* Improve occasion listing mobile layout */
@media (max-width: 767px) {
	.occasion-listing .col-item {
		margin-bottom: 30px;
	}
	
	.occasion-listing .item-summary h2 {
		font-size: 18px;
		line-height: 1.3;
		margin-bottom: 15px;
	}
	
	.occasion-listing .dl-horizontal dt {
		width: 90px;
		font-size: 12px;
	}
	
	.occasion-listing .dl-horizontal dd {
		margin-left: 100px;
		font-size: 13px;
	}
	
	.occasion-listing .price {
		font-size: 16px;
	}
	
	/* Occasion detail mobile improvements */
	.occasion-detail .fotorama {
		margin-bottom: 20px;
	}
	
	.occasion-detail .occasion-info h1 {
		font-size: 28px;
		line-height: 1.3;
		margin-bottom: 15px;
	}
	
	.occasion-detail .occasion-specs .dl-horizontal dt {
		width: 100px;
		font-size: 13px;
	}
	
	.occasion-detail .occasion-specs .dl-horizontal dd {
		margin-left: 110px;
		font-size: 14px;
	}
	
	.occasion-detail .occasion-price {
		font-size: 24px;
		margin: 20px 0;
		text-align: center;
	}
	
	.occasion-detail .btn-group-vertical .btn {
		margin-bottom: 10px;
		width: 100%;
	}
	
    /* Mobile occasion detail - separate gallery */
    .occasion-detail .fotorama {
        margin-bottom: 20px;
        width: 100% !important;
    }
    
    .occasion-detail .fotorama__wrap {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Hide desktop slider elements on mobile */
    .occasion-detail .slide-show,
    .occasion-detail .slide-nav {
        display: none !important;
    }
    
    /* Hide pagination dots completely */
    .occasion-detail .fotorama__nav {
        display: none !important;
    }
    
    /* Arrows for navigation */
    .occasion-detail .fotorama__arr {
        display: block !important;
        opacity: 0.7;
    }
	
	/* News pages mobile improvements */
	.news .row-listing h2 {
		font-size: 20px;
		line-height: 1.3;
		margin-bottom: 10px;
	}
	
	.news .row-listing .news-meta {
		font-size: 12px;
		margin-bottom: 15px;
	}
	
	.news .row-listing p {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 15px;
	}
	
	/* Contact and form pages mobile improvements */
	.contact-form .form-group {
		margin-bottom: 20px;
	}
	
	.contact-form .form-control {
		font-size: 16px;
		padding: 12px 15px;
	}
	
	.contact-form .btn {
		width: 100%;
		padding: 15px;
		font-size: 16px;
		margin-top: 10px;
	}
	
	/* Shop pages mobile improvements */
	.shop-listing .product-item {
		margin-bottom: 30px;
	}
	
	.shop-listing .product-title {
		font-size: 18px;
		line-height: 1.3;
		margin-bottom: 10px;
	}
	
	.shop-listing .product-price {
		font-size: 16px;
		font-weight: bold;
	}
	
	/* Member portal mobile improvements */
	.member-portal .nav-tabs {
		border-bottom: none;
	}
	
	.member-portal .nav-tabs > li {
		width: 100%;
		margin-bottom: 2px;
	}
	
	.member-portal .nav-tabs > li > a {
		border-radius: 4px;
		font-size: 14px;
		padding: 12px 15px;
		text-align: center;
	}
	
	.member-portal .tab-content {
		padding: 20px 0;
	}
	
	.member-portal .form-control {
		font-size: 16px;
		padding: 12px 15px;
	}
	
	.member-portal .btn {
		width: 100%;
		padding: 12px;
		margin-bottom: 10px;
	}
	
	/* General mobile typography improvements */
	body {
		font-size: 14px;
		line-height: 1.5;
	}
	
	h1 {
		font-size: 28px;
		line-height: 1.3;
	}
	
	h2 {
		font-size: 20px;
		line-height: 1.3;
	}
	
	h3 {
		font-size: 18px;
		line-height: 1.3;
	}
	
	/* Touch-friendly improvements */
	.btn, button, input[type="submit"] {
		min-height: 44px;
		padding: 12px 15px;
		font-size: 16px;
	}
	
	.nav a, .navbar-nav > li > a {
		min-height: 44px;
		display: flex;
		align-items: center;
	}
	
	/* Form improvements for mobile */
	.form-control {
		font-size: 16px; /* Prevents zoom on iOS */
		border-radius: 6px;
	}
	
	textarea.form-control {
		min-height: 120px;
	}
}
/* Video Background */
.video-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
}

@media (max-width: 767px) {
    .video-background {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        z-index: -1;
    }
}

.video-background video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

/* Universal box-sizing for proper width calculations */
*, *::before, *::after {
    box-sizing: border-box;
}

/* Prevent scrollbar issues + Viewport-responsive base font size with minimum */
html {
    width: 100%;
    height: 100%;
    /* Base font size that scales with viewport width but has a minimum */
    font-size: clamp(15px, calc(14px + 0.25vw), 20px);
    overflow-x: hidden;
    overflow-y: auto;
    margin: 0;
    padding: 0;
}

body {
	width: 100%;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	overflow-x: hidden;
	overflow-y: auto;
	position: relative;
}

/* Ensure body children don't cause overflow */
body > * {
	max-width: 100%;
}

/* OverlayScrollbars Custom Styling */
.os-scrollbar {
    --os-handle-bg: rgba(0, 0, 0, 0.35);
    --os-handle-bg-hover: rgba(0, 0, 0, 0.55);
    --os-handle-bg-active: rgba(0, 0, 0, 0.65);
}

.os-scrollbar-vertical {
    width: 10px !important;
    right: 0 !important;
}

.os-scrollbar-handle {
    border-radius: 5px !important;
    transition: background-color 0.2s ease !important;
}

/* Make sure scrollbar overlays content */
.os-scrollbar {
    pointer-events: auto !important;
}

.os-viewport {
    overflow: auto !important;
}

html, body {
	/* Rich darker champagne gradient with visible contrast and movement */
	background: 
		radial-gradient(ellipse 900px 700px at top left, rgba(185, 180, 170, 0.6) 0%, rgba(160, 155, 145, 0.36) 35%, transparent 60%),
		radial-gradient(ellipse 800px 800px at top right, rgba(175, 170, 160, 0.55) 0%, rgba(145, 142, 132, 0.3) 38%, transparent 58%),
		radial-gradient(ellipse 1000px 750px at bottom left, rgba(140, 138, 128, 0.65) 0%, rgba(120, 118, 108, 0.38) 40%, transparent 64%),
		radial-gradient(ellipse 900px 900px at bottom right, rgba(180, 175, 165, 0.54) 0%, rgba(150, 148, 138, 0.28) 36%, transparent 62%),
		linear-gradient(135deg, #b0ac9e 0%, #a5a193 12%, #82836f 28%, #9a9b89 45%, #888975 58%, #9d9a8c 72%, #9a9b89 85%, #b0ac9e 100%);
	background-attachment: fixed;
	background-color: #888975;
	background-size: 100% 100%, 100% 100%, 100% 100%, 100% 100%, 200% 200%;
	animation: champagneFlow 12s ease-in-out infinite;
}

/* Homepage only - prevent scrolling (DESKTOP ONLY) */
@media (min-width: 768px) {
	body.home {
		overflow: hidden !important;
		height: 100vh !important;
	}

	body.home section.section-slider {
		height: 100vh !important;
		overflow: hidden !important;
	}
}

/* Mobile homepage - lock to viewport */
@media (max-width: 767px) {
	html.home {
		height: 100vh;
		height: 100svh;
		min-height: 100vh;
		min-height: 100svh;
		overflow: hidden !important;
	}

	body.home {
		overflow: hidden !important;
		height: 100vh !important;
		height: 100svh !important;
		min-height: 100vh;
		min-height: 100svh;
		overflow-x: hidden !important;
		overscroll-behavior: none;
	}

	body.home section.section-slider {
		height: 100vh !important;
		height: 100svh !important;
		min-height: 100vh !important;
		min-height: 100svh !important;
		overflow: hidden !important;
	}
}

/* Elegant champagne flow animation */
@keyframes champagneFlow {
	0% {
		background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 50%;
	}
	33% {
		background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 50% 25%;
	}
	66% {
		background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 100% 75%;
	}
	100% {
		background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 50%;
	}
}

/* Darker champagne pearl overlay with visible highlights */
body::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	opacity: 0.14;
	background-image: 
		radial-gradient(circle 700px at 20% 25%, rgba(195, 190, 180, 0.42) 0%, rgba(170, 165, 155, 0.24) 42%, transparent 68%),
		radial-gradient(circle 800px at 80% 75%, rgba(185, 180, 170, 0.38) 0%, rgba(160, 155, 145, 0.21) 45%, transparent 70%),
		radial-gradient(circle 600px at 50% 50%, rgba(180, 175, 165, 0.3) 0%, transparent 62%);
	pointer-events: none;
	animation: champagneBreath 8s ease-in-out infinite;
}

/* Champagne breathing animation - more dramatic */
@keyframes champagneBreath {
	0%, 100% {
		opacity: 0.12;
	}
	50% {
		opacity: 0.2;
	}
}

/* Darker champagne vignette */
body::after {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	pointer-events: none;
	animation: champagneVignette 9s ease-in-out infinite;
}

/* Champagne vignette pulse - more visible */
@keyframes champagneVignette {
	0%, 100% {
		opacity: 0.85;
	}
	50% {
		opacity: 1;
	}
}

@media (max-width: 767px) {
    html {
        overflow-x: hidden !important;
        overflow-y: auto !important;
        height: auto;
        -webkit-text-size-adjust: 100%;
    }
    
    /* Ensure mobile background effects are visible and optimized */
    html, body {
        animation-duration: 25s !important; /* Slower = less CPU */
        background-attachment: scroll; /* Better mobile performance */
    }
    
    body::before {
        animation-duration: 12s !important;
        opacity: 0.1; /* Slightly more visible on mobile */
    }
    
    body::after {
        animation-duration: 18s !important;
        opacity: 0.92; /* Ensure vignette is visible */
    }
    
    body {
        overflow-x: hidden !important;
        width: 100%;
        position: relative;
        -webkit-overflow-scrolling: touch;
        touch-action: manipulation;
    }
    
    /* Mobile wrapper with champagne tones */
    .wrapper {
        background: transparent;
        position: relative;
    }
}

/* Ensure content is above video with subtle shadow */
.wrapper {
	position: relative;
	z-index: 1;
	background: transparent;
	width: 100%;
	min-height: 100vh;
	overflow-x: hidden;
}

/* Transparent sections - let background show through */
section:not(.section-slider):not(.video-background):not(.lease-calculator-section):not(.hero-banner) {
    background: transparent;
    position: relative;
    margin: 0;
}

/* Hero banners should have no extra padding */
section.hero-banner {
    padding: 0 !important;
    margin: 0 auto !important;
}

/* Transparent footer matching background */
footer {
    position: relative;
    z-index: 2;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000;
    background: transparent;
    box-shadow: none;
}

footer {
    will-change: transform;
    /* Text rendering improvements */
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* Force hardware acceleration */
    transform: scale(1.001);
    /* Slight contrast improvement */
    filter: brightness(1.02) contrast(1.05);
    /* Ensure text is crisp */
    -webkit-font-smoothing: subpixel-antialiased;
    text-shadow: 0 0 1px rgba(0,0,0,0.01);
}

/* Improve text clarity in footer - FORCE BLACK on non-home pages */
body:not(.home) footer,
body:not(.home) footer *,
body:not(.home) footer a,
body:not(.home) footer p,
body:not(.home) footer span,
body:not(.home) footer i,
body:not(.home) .modern-footer,
body:not(.home) .modern-footer *,
body:not(.home) .footer-copyright,
body:not(.home) .footer-links,
body:not(.home) .footer-links a,
body:not(.home) .footer-phone,
body:not(.home) .footer-hours {
    color: #000000 !important;
    opacity: 1 !important;
    -webkit-font-smoothing: none !important;
    -moz-osx-font-smoothing: unset !important;
    text-rendering: auto !important;
    filter: none !important;
}

.video-background-poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.wrapper {
    position: relative;
    z-index: 1;
}

@media (max-width: 768px) {
    .video-background video {
        /* On mobile, use a more aggressive approach to ensure visibility */
        position: fixed;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

@supports not (object-fit: cover) {
    .video-background {
        background: #000 url('/assets/images/fallback-bg.jpg') center/cover no-repeat;
    }
    .video-background video {
        display: none;
    }
}

/* FINAL OVERRIDE - Homepage dropdown hover text MUST be black */
html body.home .dropdown-menu li a:hover,
html body.home .dropdown-menu li.active a,
html body.home .navbar-default .dropdown-menu li a:hover,  
html body.home .navbar-default .dropdown-menu li.active a,
html body.home .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li > a:hover,
html body.home .navbar-default .navbar-nav.center-nav > li.dropdown > .dropdown-menu > li.active > a,
html body.home .navbar .dropdown-menu li a:hover,
html body.home nav .dropdown-menu li a:hover,
html body.home header .dropdown-menu li a:hover,
html body.home .nav .dropdown-menu li a:hover {
    color: #000000 !important;
    text-shadow: none !important;
}

.no-video .video-background {
    background: url('/assets/images/fallback-bg.jpg') no-repeat center center;
    background-size: cover;
}

.no-video .video-background #bg-video {
    display: none;
}

/* Ensure video is behind all content */
.wrapper {
    position: relative;
    z-index: 2;
}

/* Make icons black on occasions page */
.search-icon,
.fa-search,
.clear-filters-btn .fa-times,
.filter-search-section .fa-search {
    color: #000000 !important;
}

/* Additional black styling for filter icons */
.modern-filter-panel .fa {
    color: #000000 !important;
}

/* LUXURY HERO BANNER SECTION */
.hero-banner {
    position: relative;
    height: 400px;
    background-color: #2c2c2c;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.hero-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.2) 100%);
    z-index: 1;
}

.hero-banner-content {
    position: relative;
    z-index: 2;
    text-align: center;
    color: white;
    max-width: 900px;
    padding: 0 40px;
    margin: 0 auto;
}

.hero-banner-content h1 {
    font-size: 7.5rem;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    font-weight: 400 !important;
    margin-bottom: 25px;
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7) !important;
    letter-spacing: 2px;
    line-height: 1.1;
    color: #e0dcd4 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal !important;
}

.hero-banner-content .subtitle {
    font-size: 1.8rem;
    font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    font-weight: normal !important;
    opacity: 0.95;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.6);
    line-height: 1.4;
    color: #ffffff !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Responsive hero banner */
@media (min-width: 769px) and (max-width: 1024px) {
    .hero-banner-content h1 {
        font-size: 6.5rem;
        letter-spacing: 1.5px;
    }
}

@media (max-width: 768px) {
    .hero-banner {
        height: 300px;
    }
    
    .hero-banner-content {
        padding: 0 30px;
        margin: 0 auto;
    }
    
    .hero-banner-content h1 {
        font-size: 5rem;
        margin-bottom: 20px;
        letter-spacing: 1px;
    }
    
    .hero-banner-content .subtitle {
        font-size: 1.3rem;
    }
}

@media (max-width: 480px) {
    .hero-banner {
        height: 250px;
    }
    
    .hero-banner-content {
        padding: 0 20px;
        margin: 0 auto;
    }
    
    .hero-banner-content h1 {
        font-size: 4rem;
        letter-spacing: 1px;
    }
    
    .hero-banner-content .subtitle {
        font-size: 1.1rem;
    }
}

/* Individual Services Subpage Banners */
.hero-banner.banner-haal-breng {
    background-image: url('/assets/images/backgroundimages/23/-jcp5415.jpg');
    background-color: #2c2c2c;
}

.hero-banner.banner-vervangend-vervoer {
    background-image: url('/assets/images/backgroundimages/17/gtc-35.jpg');
    background-color: #1a1a1a;
}

.hero-banner.banner-onderhoud {
    background-image: url('/assets/images/backgroundimages/18/dsc-0304-2.jpg');
    background-color: #2c2c2c;
}

.hero-banner.banner-schadeherstel {
    background-image: url('/assets/images/backgroundimages/15/-dsc0239.jpg');
    background-color: #1a1a1a;
}

.hero-banner.banner-velgen-banden {
    background-image: url('/assets/images/backgroundimages/10/th.jpg');
    background-color: #2c2c2c;
}

.hero-banner.banner-alarmsystemen {
    background-image: url('/assets/images/bgvid-poster.jpg');
    background-color: #1a1a1a;
}

.hero-banner.banner-trekhaken {
    background-image: url('/assets/images/mercedes-benz-love.jpg');
    background-color: #2c2c2c;
}

/* Individual Over Ons Subpage Banners */
.hero-banner.banner-overzicht {
    background-image: url('/assets/images/backgroundimages/13/mb-vos-dsc-0302.jpg');
    background-color: #1a1a1a;
}

.hero-banner.banner-verzekeringen {
    background-image: url('/assets/images/backgroundimages/18/dsc-0304-2.jpg');
    background-color: #2c2c2c;
}

.hero-banner.banner-garantie {
    background-image: url('/assets/images/backgroundimages/17/gtc-35.jpg');
    background-color: #1a1a1a;
}

.hero-banner.banner-historie {
    background-image: url('/assets/images/backgroundimages/13/mb-vos-dsc-0302.jpg');
    background-color: #2c2c2c;
}

.hero-banner.banner-visie {
    background-image: url('/assets/images/mercedes-benz-love.jpg');
    background-color: #1a1a1a;
}

/* Section-wide fallback banners */
.hero-banner.services-banner {
    background-image: url('/assets/images/backgroundimages/18/dsc-0304-2.jpg');
    background-color: #2c2c2c;
}

.hero-banner.over-ons-banner {
    background-image: url('/assets/images/backgroundimages/13/mb-vos-dsc-0302.jpg');
    background-color: #1a1a1a;
}

/* Enhanced luxury styling */
.hero-banner-content h1 {
    font-family: "Helvetica Neue", Arial, sans-serif;
    color: #ffffff;
}

/* Breadcrumb styling for subpages with banners */
.content.content-padding .main-content {
    position: relative;
}

/* Remove default top margin when hero banner is present */
.hero-banner + .content.content-padding {
    margin-top: 0;
}

/* Animation for hero banner content */
.hero-banner-content {
    animation: heroFadeIn 0.6s ease-out;
}

@keyframes heroFadeIn {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ULTRA HIGH SPECIFICITY CARET OVERRIDE - ANIMATED BLACK CHEVRON ICONS */
/* Target the exact button structure with maximum specificity */

/* Maximum specificity override for dropdown carets */
html body.occasion-listing div.container div.row div#listing-filter-container form#filter-form.listing-filter div.modern-filter-panel div.btn-group.bootstrap-select.form-control button.btn.dropdown-toggle.selectpicker.btn-default span.caret,
html body.occasion-listing form#filter-form.listing-filter div.filters-row-1 div.filter-group div.select-wrapper div.btn-group.bootstrap-select.form-control button.btn.dropdown-toggle.selectpicker.btn-default span.caret,
html body.occasion-listing form#filter-form.listing-filter div.filters-row-2 div.filter-group div.select-wrapper div.btn-group.bootstrap-select.form-control button.btn.dropdown-toggle.selectpicker.btn-default span.caret,
html body form#filter-form.listing-filter .bootstrap-select.btn-group.form-control .btn.dropdown-toggle.selectpicker.btn-default .caret,
html body .bootstrap-select.btn-group.form-control .btn.dropdown-toggle.selectpicker.btn-default .caret,
html body .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker .caret {
    /* Remove all sprite backgrounds completely */
    background: none !important;
    background-image: none !important;
    background-position: initial !important;
    background-repeat: initial !important;
    background-size: initial !important;
    
    /* Reset dimensions for FontAwesome icon */
    width: 16px !important;
    height: 16px !important;
    
    /* Position */
    position: absolute !important;
    top: 50% !important;
    right: 15px !important;
    margin-top: -8px !important;
    margin-left: 0 !important;
    
    /* Remove all existing borders */
    border: none !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-left: none !important;
    
    /* FontAwesome chevron setup - thinner */
    font-family: FontAwesome !important;
    font-size: 12px !important;
    color: #000000 !important;
    line-height: 16px !important;
    text-align: center !important;
    font-weight: 300 !important;
    
    /* Reset text properties */
    font-size: 12px !important;
    line-height: 16px !important;
    text-indent: 0 !important;
    overflow: visible !important;
    
    /* Add smooth transition for flip animation */
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    transform: rotate(0deg) !important;
}

/* Add the chevron icon using :before pseudo-element with high specificity */
html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker .caret:before,
html body .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker .caret:before {
    content: "\f078" !important; /* FontAwesome chevron-down */
    color: #000000 !important;
    font-family: FontAwesome !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    display: inline-block !important;
    line-height: 16px !important;
}

/* Hover states - maintain black color */
html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker:hover .caret,
html body .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker:hover .caret {
    color: #000000 !important;
    background: none !important;
    background-image: none !important;
}

html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker:hover .caret:before,
html body .bootstrap-select.btn-group .btn.dropdown-toggle.selectpicker:hover .caret:before {
    color: #000000 !important;
}

/* Open states - flip chevron upward with smooth animation */
html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group.open .btn .caret,
html body .bootstrap-select.btn-group.open .btn .caret,
html body .bootstrap-select.btn-group.show .btn .caret,
html body.occasion-listing .bootstrap-select.form-control.open .btn .caret,
html body .bootstrap-select.form-control.open .btn .caret {
    transform: rotate(180deg) !important;
    background: none !important;
    background-image: none !important;
}

/* High specificity gradient underline for dropdown labels */
html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group .btn .filter-option,
html body .bootstrap-select.btn-group .btn .filter-option {
    position: relative !important;
    transition: all 0.15s ease !important;
}

/* High specificity gradient underline on hover */
html body.occasion-listing form#filter-form.listing-filter .bootstrap-select.btn-group .btn:hover .filter-option:after,
html body .bootstrap-select.btn-group .btn:hover .filter-option:after {
    content: '' !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 0 !important;
    width: 100% !important;
    height: 2px !important;
    background: linear-gradient(90deg, #e0dcd4 0%, #b8b3a6 50%, #e0dcd4 100%) !important;
    animation: gradientSlide 0.4s ease !important;
}

/* HEADER NAVIGATION DROPDOWN STYLING */
/* Replace header navigation caret icons with clean chevrons */
html body .nav-item.dropdown .nav-link .caret,
html body .navbar-default .nav-item.dropdown .nav-link .caret,
html body .modern-nav .nav-item.dropdown .nav-link .caret {
    /* Remove all sprite backgrounds completely */
    background: none !important;
    background-image: none !important;
    background-position: initial !important;
    background-repeat: initial !important;
    background-size: initial !important;
    
    /* Reset dimensions for FontAwesome icon */
    width: 16px !important;
    height: 16px !important;
    
    /* Position */
    position: relative !important;
    top: 0 !important;
    margin-top: 0 !important;
    margin-left: 8px !important;
    
    /* Remove all existing borders */
    border: none !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-left: none !important;
    
    /* FontAwesome chevron setup - thinner */
    font-family: FontAwesome !important;
    font-size: 12px !important;
    color: inherit !important;
    line-height: 16px !important;
    text-align: center !important;
    font-weight: 300 !important;
    
    /* Reset text properties */
    font-size: 12px !important;
    line-height: 16px !important;
    text-indent: 0 !important;
    overflow: visible !important;
    
    /* Add smooth transition for flip animation */
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    transform: rotate(0deg) !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

/* Add the chevron icon using :before pseudo-element for header nav */
html body .nav-item.dropdown .nav-link .caret:before,
html body .navbar-default .nav-item.dropdown .nav-link .caret:before,
html body .modern-nav .nav-item.dropdown .nav-link .caret:before {
    content: "\f078" !important; /* FontAwesome chevron-down */
    color: inherit !important;
    font-family: FontAwesome !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    display: inline-block !important;
    line-height: 16px !important;
}

/* Header dropdown flip animation on hover/open */
html body .nav-item.dropdown:hover .nav-link .caret,
html body .navbar-default .nav-item.dropdown:hover .nav-link .caret,
html body .modern-nav .nav-item.dropdown:hover .nav-link .caret {
    transform: rotate(180deg) !important;
}

/* Header navigation gradient underline on hover */
html body .nav-item.dropdown .nav-link,
html body .nav-section.nav-right .nav-item .nav-link {
    position: relative !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Header dropdown hover animations - similar to filter dropdowns */
html body .nav-item.dropdown:hover .nav-link,
html body .navbar-default .nav-item.dropdown:hover .nav-link,
html body .modern-nav .nav-item.dropdown:hover .nav-link {
    transform: translateY(-1px) !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Right navigation hover animations */
html body .nav-section.nav-right .nav-item:hover .nav-link,
html body .navbar-default .nav-section.nav-right .nav-item:hover .nav-link,
html body .modern-nav .nav-section.nav-right .nav-item:hover .nav-link {
    transform: translateY(-1px) !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Dropdown hover underlines - positioned closer to text */
html body .nav-item.dropdown:hover .nav-link:after,
html body .navbar-default .nav-item.dropdown:hover .nav-link:after,
html body .modern-nav .nav-item.dropdown:hover .nav-link:after {
    content: '' !important;
    position: absolute !important;
    bottom: -5px !important; /* Closer to text */
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 80% !important;
    height: 2px !important;
    background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%) !important;
    animation: gradientSlide 0.4s ease !important;
}

/* Right navigation hover underlines - positioned closer to text */
html body .nav-section.nav-right .nav-item:hover .nav-link:after,
html body .navbar-default .nav-section.nav-right .nav-item:hover .nav-link:after,
html body .modern-nav .nav-section.nav-right .nav-item:hover .nav-link:after {
    content: '' !important;
    position: absolute !important;
    bottom: -5px !important; /* Closer to text */
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 80% !important;
    height: 2px !important;
    background: linear-gradient(to right, rgba(224, 220, 212, 0) 0%, #e0dcd4 50%, rgba(224, 220, 212, 0) 100%) !important;
    animation: gradientSlide 0.4s ease !important;
}
/* CONTACT PAGE STYLING */
.contact-hero {
padding: 40px 0 20px 0;
text-align: center;
}

.contact-hero h1 {
font-size: 40px;
font-weight: 400;
color: #000000;
text-align: center;
letter-spacing: -0.5px;
margin-bottom: 25px;
letter-spacing: 2px;
text-transform: uppercase;
position: relative;
font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.contact-hero h1::after {
content: '';
position: absolute;
bottom: -15px;
left: 50%;
transform: translateX(-50%);
width: 80px;
height: 2px;
background: #e0dcd4;
}

.contact-main {
padding: 40px 0;
}

/* Max-width containers for contact pages */
.contact-hero .container,
.contact-main .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

@media (max-width: 767px) {
	.contact-hero .container,
	.contact-main .container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

.contact-info-card h3,
.contact-form-card h3 {
font-size: 24px;
font-weight: 400;
color: #000000;
margin-bottom: 25px;
position: relative;
font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.contact-info-card h3::after,
.contact-form-card h3::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 2px;
    background: #e0dcd4;
}

.contact-item {
display: flex;
align-items: flex-start;
margin-bottom: 20px;
padding: 15px 0;
border-bottom: 1px solid rgba(224, 220, 212, 0.3);
transition: all 0.3s ease;
}

.contact-item:hover {
transform: translateX(3px);
border-left: 3px solid #e0dcd4;
padding-left: 15px;
}

.contact-item i {
color: #e0dcd4;
font-size: 16px;
width: 20px;
margin-right: 12px;
margin-top: 2px;
}

.contact-item strong {
display: block;
font-weight: 500;
color: #000000;
margin-bottom: 5px;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.5px;
}

.contact-item p {
margin: 0;
color: #333333;
font-size: 15px;
line-height: 1.5;
}

.contact-form .form-control {
background: transparent;
border: none;
border-bottom: 1px solid rgba(224, 220, 212, 0.6);
border-radius: 0;
padding: 10px 0;
font-size: 15px;
color: #000000;
transition: all 0.3s ease;
box-shadow: none;
}

.contact-form .form-control:focus {
border-bottom: 2px solid #e0dcd4;
box-shadow: none;
outline: none;
}

.btn-contact-submit {
background: transparent;
border: 2px solid #e0dcd4;
color: #000000;
padding: 12px 30px;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 500;
transition: all 0.3s ease;
font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.btn-contact-submit:hover {
background: #e0dcd4;
color: #000000;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(224, 220, 212, 0.3);
}

.team-section {
padding: 40px 0;
background: #adae9c;
margin-top: 30px;
}

.team-section h2 {
text-align: center;
font-size: 32px;
font-weight: 300;
color: #000000;
margin-bottom: 40px;
letter-spacing: 1.5px;
text-transform: uppercase;
position: relative;
font-family: 'VAA', Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.team-section h2::after {
content: '';
position: absolute;
bottom: -12px;
left: 50%;
transform: translateX(-50%);
width: 200px;
height: 2px;
background: #e0dcd4;
}

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

.team-member {
text-align: center;
padding: 25px 15px;
transition: all 0.3s ease;
position: relative;
}

.team-member:hover {
transform: translateY(-3px);
}

.team-member::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 0;
height: 2px;
background: #e0dcd4;
transition: width 0.3s ease;
}

.team-member:hover::before {
width: 50px;
}

.team-member-photo img {
width: 100px;
height: 100px;
border-radius: 50%;
object-fit: cover;
border: 2px solid rgba(224, 220, 212, 0.3);
transition: border-color 0.3s ease;
margin-bottom: 15px;
}

.team-member:hover img {
border-color: #e0dcd4;
}

.team-member h4 {
font-size: 16px;
font-weight: 500;
color: #000000;
margin-bottom: 5px;
}

/* Duplicate hero-banner definition removed - using main definition above at line ~6880 */

/* Modern Content Sections - Ferrari-style layout */
.content-section {
  padding: 50px 0;
  overflow: hidden;
}

/* Max-width containers for content section pages */
.content-section .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
}

@media (max-width: 767px) {
	.content-section .container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

.content-section.dark-bg {
  background: #1a1a1a;
  color: #ffffff;
}

.content-section.dark-bg h2,
.content-section.dark-bg h3 {
  color: #ffffff;
}

.content-section-inner {
  display: flex;
  align-items: center;
  gap: 50px;
  margin-bottom: 40px;
}

.content-section-inner:last-child {
  margin-bottom: 0;
}

.content-section-inner.reverse {
  flex-direction: row-reverse;
}

.content-section-text {
  flex: 1;
  min-width: 0;
}

.content-section-image {
  flex: 1.2;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.content-section-image img {
  width: 100%;
  height: auto;
  max-width: 75%;
  display: block;
  border-radius: 5px;
  object-fit: contain;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.content-section-image img:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.content-section h2 {
  font-family: 'VAA', Arial, sans-serif;
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 18px;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.content-section h3 {
  font-family: 'VAA', Arial, sans-serif;
  font-size: 26px;
  font-weight: 600;
  margin-bottom: 14px;
  line-height: 1.3;
}

.content-section p {
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 14px;
  color: inherit;
}

.content-section ul {
  list-style: none;
  padding: 0;
  margin: 18px 0;
}

.content-section ul li {
  padding-left: 30px;
  position: relative;
  margin-bottom: 11px;
  font-size: 17px;
  line-height: 1.6;
}

.content-section ul li:before {
  content: "\2713";
  position: absolute;
  left: 0;
  color: #e0dcd4;
  font-weight: bold;
  font-size: 19px;
}

/* Ultra-wide screen adjustments for better image/text balance */
@media (min-width: 2400px) {
  .content-section-image {
    flex: 0.95;
  }
  
  .content-section-inner {
    gap: 70px;
  }
}

.btn-cta {
  display: inline-block;
  background: #c9c4b5;
  color: #000000 !important;
  padding: 14px 32px;
  border-radius: 4px;
  text-decoration: none !important;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  margin-top: 20px;
}

.btn-cta:hover {
  background: #b8b3a6;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.btn-cta i {
  margin-left: 8px;
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .content-section {
    padding: 40px 0;
  }
  
  .content-section-inner {
    flex-direction: column !important;
    gap: 30px;
    margin-bottom: 30px;
  }
  
  .content-section h2 {
    font-size: 28px;
  }
  
  .content-section h3 {
    font-size: 22px;
  }
}

@media (max-width: 767px) {
  .content-section {
    padding: 30px 0;
  }
  
  .content-section-inner {
    gap: 25px;
    margin-bottom: 25px;
  }
  
  .content-section h2 {
    font-size: 24px;
  }
  
  .content-section h3 {
    font-size: 20px;
  }
  
  .content-section p {
    font-size: 15px;
  }
  
  .content-section-image img {
    border-radius: 8px;
  }
}

.team-function {
font-size: 12px;
color: #666666;
text-transform: uppercase;
letter-spacing: 0.5px;
}

/* Force select styling to match inputs - MUST BE LAST */
select#preferred_time,
.modern-contact-form select {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-color: #e0dcd4 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 12px !important;
    padding-right: 35px !important;
    color: #000000 !important;
    height: auto !important;
    border: 1px solid rgba(224, 220, 212, 0.3) !important;
    padding: 15px !important;
    cursor: pointer !important;
    font-weight: 400 !important;
}

select#preferred_time:hover,
.modern-contact-form select:hover {
    border-color: rgba(224, 220, 212, 0.5) !important;
}

select#preferred_time:focus,
.modern-contact-form select:focus {
    outline: none !important;
    border-color: #e0dcd4 !important;
    box-shadow: 0 0 0 3px rgba(224, 220, 212, 0.1) !important;
}

/* Style the option elements - more specific */
select#preferred_time option,
select#service_type option,
.modern-contact-form select.no-bootstrap-select option {
    background: #e0dcd4;
    background-color: #e0dcd4;
    color: #000000;
    padding: 10px 15px;
    font-size: 14px;
    line-height: 1.5;
}

select#preferred_time option:hover,
select#service_type option:hover,
.modern-contact-form select.no-bootstrap-select option:hover {
    background: #d3cec2;
    background-color: #d3cec2;
}

select#preferred_time option:checked,
select#service_type option:checked,
.modern-contact-form select.no-bootstrap-select option:checked,
select#preferred_time option:active,
select#service_type option:active,
.modern-contact-form select.no-bootstrap-select option:active {
    background: #c9c4b5 !important;
    background-color: #c9c4b5 !important;
    font-weight: 500;
    color: #000000;
}

select#preferred_time option[value=""],
select#service_type option[value=""],
.modern-contact-form select.no-bootstrap-select option[value=""] {
    color: #999999;
    font-style: italic;
}

/* Firefox specific */
select#preferred_time,
select#service_type,
.modern-contact-form select.no-bootstrap-select {
    color-scheme: light;
}

/* Remove blue highlight */
select#preferred_time option:focus,
select#service_type option:focus,
.modern-contact-form select.no-bootstrap-select option:focus {
    background: #c9c4b5 !important;
    background-color: #c9c4b5 !important;
    outline: none;
}

/* ==========================================================================
   COMPREHENSIVE MOBILE OPTIMIZATIONS
   ========================================================================== */

@media (max-width: 767px) {
    /* MOBILE PERFORMANCE OPTIMIZATIONS */
    * {
        box-sizing: border-box !important;
    }
    
    html {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
    
    body {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        /* Optimize rendering */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
    
    /* Performance: Image optimization for mobile */
    img {
        max-width: 100%;
        height: auto;
    }
    
    /* Optimize background images */
    .hero-banner,
    .banner-vervangend-vervoer,
    .banner-haal-breng,
    .banner-onderhoud,
    .banner-schadeherstel,
    .banner-velgen-banden,
    section[style*="background-image"] {
        background-size: cover !important;
        background-attachment: scroll !important;
    }
    
    .wrapper {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        overflow-x: hidden !important;
    }
    
    /* Mobile container padding - Minimal for full width */
    .container,
    .container-fluid {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Sections use full width */
    section {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Main content wrapper for occasion listing */
    body.occasion-listing,
    body.occasion-listing .wrapper,
    body.occasion-listing section {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Universal Mobile Touch Targets - Minimum 44x44px for accessibility */
    button, 
    .btn,
    a.btn,
    input[type="submit"],
    input[type="button"],
    .nav-link,
    .dropdown-toggle {
        min-height: 44px;
        min-width: 44px;
        padding: 12px 16px !important;
        font-size: 16px;
    }
    
    /* Prevent Mobile Safari zoom on input focus */
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="number"],
    input[type="search"],
    input[type="url"],
    input[type="date"],
    textarea,
    select {
        font-size: 16px !important;
    }
    
    /* Improve mobile form spacing */
    .form-group {
        margin-bottom: 20px;
    }
    
    /* Mobile-friendly images */
    img {
        max-width: 100%;
        height: auto;
    }
    
    /* Mobile section spacing */
    section {
        padding-bottom: 40px;
    }
    
    /* Mobile headings */
    h1 {
        font-size: 40px !important;
        line-height: 1.3;
        margin-bottom: 20px;
    }
    
    h2 {
        font-size: 24px !important;
        line-height: 1.3;
        margin-bottom: 16px;
    }
    
    h3 {
        font-size: 20px !important;
        line-height: 1.4;
        margin-bottom: 12px;
    }
    
    /* Mobile paragraphs */
    p {
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 16px;
    }
    
    /* Mobile buttons - Full width option */
    .btn-block-mobile {
        width: 100%;
        display: block;
    }
    
    /* Ensure no horizontal scroll - FULL WIDTH ROWS */
    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1,
    .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2,
    .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3,
    .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4,
    .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5,
    .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6,
    .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7,
    .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8,
    .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9,
    .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10,
    .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11,
    .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        float: none !important;
        display: block !important;
    }
    
    /* Add small padding only to text content */
    .col-item .item-summary,
    .occasion-card .item-summary,
    p, h1, h2, h3, h4, h5, h6 {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* Mobile video background */
    .video-background,
    video {
        min-height: 100vh;
        object-fit: cover;
    }
    
    /* Mobile navbar fixes */
    .navbar-fixed-top {
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10000;
    }
    
    /* Mobile footer */
    footer {
        text-align: center;
    }
    
    footer .navigation li {
        display: inline-block;
        margin-bottom: 0;
    }
    
    footer .navigation li:before {
        content: "|";
        padding-right: 8px;
    }
    
    footer .navigation li:first-child:before {
        content: "";
        padding: 0;
    }
    
    /* Mobile occasion cards - FULL WIDTH NO CARDS */
    .occasion-listing .container,
    .occasion-listing .container-fluid {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    
    .occasion-listing .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .occasion-listing .col-xs-6,
    .occasion-listing .col-sm-6,
    .occasion-listing .col-md-6,
    .occasion-listing .col-lg-6,
    .occasion-listing [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        margin: 0 !important;
    }
    
    .occasion-card,
    .col-item {
        margin: 0 0 30px 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 0 !important;
        overflow: hidden !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
    }
    
    .occasion-card .item-image,
    .col-item .item-image,
    .occasion-card a,
    .col-item a {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }
    
    .occasion-card .item-image img,
    .col-item .item-image img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
        display: block !important;
    }
    
    .occasion-card .item-summary,
    .col-item .item-summary {
        width: 100% !important;
        max-width: 100% !important;
        padding: 15px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    .occasion-card h2,
    .col-item h2 {
        font-size: 20px !important;
        margin-bottom: 12px !important;
        line-height: 1.3 !important;
        padding: 0 !important;
    }
    
    .occasion-card .price,
    .col-item .price {
        font-size: 18px !important;
        font-weight: 700 !important;
        color: #000000 !important;
        margin-top: 12px !important;
    }
    
    .occasion-card img,
    .col-item img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }
    
    /* Horizontal dividers full width */
    .occasion-card hr,
    .col-item hr {
        width: 100% !important;
        margin: 20px 0 !important;
        border-color: rgba(0, 0, 0, 0.1) !important;
    }
    
    /* Mobile filters */
    .filters-container {
        padding: 20px 15px;
    }
    
    /* Mobile occasion listing header */
    .occasion-listing h1,
    .listing-filter h1,
    #listing-filter-container h1 {
        font-size: 26px !important;
        text-align: center;
        margin: 20px 0 !important;
        color: #000000 !important;
        padding: 0 15px;
    }
    
    /* Mobile search input */
    .search-input,
    input[type="search"],
    input[name="search"] {
        width: 100% !important;
        padding: 14px 16px !important;
        font-size: 16px !important;
        margin-bottom: 16px !important;
        border-radius: 8px !important;
        border: 1px solid rgba(0, 0, 0, 0.1) !important;
        background: #e0dcd4 !important;
    }
    
    /* Mobile custom dropdown */
    .custom-select-wrapper {
        touch-action: manipulation;
    }
    
    .custom-select-trigger {
        min-height: 48px;
        padding: 14px !important;
    }
    
    .custom-select-options {
        max-height: 60vh;
    }
    
    .custom-option {
        padding: 14px 16px;
        min-height: 48px;
    }
    
    /* Disable hover effects on mobile */
    * {
        -webkit-tap-highlight-color: rgba(224, 220, 212, 0.2);
    }
    
    a:hover,
    button:hover {
        -webkit-tap-highlight-color: rgba(224, 220, 212, 0.2);
    }
}

/*************************************/
/* Professional 404 Error Page
/*************************************/
.error-404-section {
	min-height: 80vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 80px 20px;
	background: linear-gradient(135deg, 
		rgba(224, 220, 212, 0.05) 0%, 
		rgba(140, 138, 128, 0.03) 50%, 
		rgba(224, 220, 212, 0.05) 100%);
	position: relative;
}

.error-404-content {
	text-align: center;
	position: relative;
	z-index: 2;
	max-width: 900px;
	margin: 0 auto;
}

.error-404-icon {
	margin-bottom: 40px;
	animation: float-404 3s ease-in-out infinite;
}

@keyframes float-404 {
	0%, 100% { transform: translateY(0px); }
	50% { transform: translateY(-10px); }
}

.error-404-icon .logo-large {
	margin: 0 auto;
}

.error-404-icon .logo-large .logo-outer {
	width: 120px;
	height: 120px;
	background-size: 100px;
	opacity: 0.9;
}

.error-404-icon .logo-large .logo-inner {
	width: 120px;
	height: 120px;
}

.error-404-title {
	font-size: 120px;
	font-weight: 700;
	color: #e0dcd4;
	margin: 0 0 20px 0;
	font-family: 'VAA Bold', Arial, sans-serif;
	letter-spacing: 10px;
	text-shadow: 2px 2px 20px rgba(224, 220, 212, 0.3);
	line-height: 1;
}

.error-404-subtitle {
	font-size: 32px;
	font-weight: 400;
	color: #000000;
	margin: 0 0 20px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.error-404-message {
	font-size: 18px;
	color: #2c2c2c;
	line-height: 1.8;
	margin: 0;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

/* Mobile responsive */
@media (max-width: 767px) {
	.error-404-section {
		min-height: 70vh;
		padding: 60px 15px;
	}
	
	.error-404-icon .logo-large .logo-outer {
		width: 80px;
		height: 80px;
		background-size: 70px;
	}
	
	.error-404-icon .logo-large .logo-inner {
		width: 80px;
		height: 80px;
	}
	
	.error-404-title {
		font-size: 80px;
		letter-spacing: 5px;
	}
	
	.error-404-subtitle {
		font-size: 24px;
	}
	
	.error-404-message {
		font-size: 16px;
	}
}

@media (max-width: 480px) {
	.error-404-title {
		font-size: 60px;
	}
	
	.error-404-subtitle {
		font-size: 20px;
	}
	
	.error-404-message {
		font-size: 15px;
	}
}

/*************************************/
/* Vacatures & Socials Pages
/*************************************/
.tpl-vacatures .hero-banner {
	max-width: 1920px !important;
	margin: 0 auto !important;
	background-position: center center !important;
}

.tpl-vacatures section.hero-banner {
	max-width: 1920px !important;
	overflow: hidden;
}

@media (max-width: 768px) {
	.tpl-vacatures section.hero-banner {
		margin: 0 auto !important;
		height: 180px !important;
	}
}

@media (min-width: 1921px) {
	.tpl-vacatures section.hero-banner {
		border-radius: 12px;
	}
}

.tpl-vacatures .container {
	max-width: 2560px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: 60px !important;
	padding-right: 60px !important;
	padding-top: 40px;
}

.vacatures-hero,
.socials-hero {
	padding: 60px 0 40px;
	text-align: center;
}

.tpl-vacatures .vacatures-hero {
	padding: 40px 0 20px;
}

.vacatures-kicker {
	font-size: 13px;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight: 500;
	color: #000000;
	display: inline-block;
	margin-bottom: 14px;
	opacity: 0.7;
}

.vacatures-hero .page-title,
.socials-hero .page-title {
	font-size: 42px;
	font-weight: 300;
	color: #000000;
	margin: 0 0 10px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.vacatures-hero .page-subtitle,
.socials-hero .page-subtitle {
	font-size: 18px;
	color: #2c2c2c;
	margin: 0;
	font-weight: 300;
}

.vacatures-hero-content {
	max-width: 720px;
	margin: 0 auto 24px;
}

.vacatures-status {
	margin-top: 18px;
	font-size: 14px;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 20px;
	border-radius: 999px;
	border: 1px solid rgba(0,0,0,0.12);
	background: rgba(255,255,255,0.75);
}

.vacatures-status-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #000000;
	box-shadow: 0 0 0 4px rgba(0,0,0,0.08);
}

.vacatures-content,
.socials-content {
	padding: 60px 0;
}

.vacatures-info {
	max-width: 520px;
	margin: 0 auto 30px;
}

.vacatures-info h2 {
	font-size: 26px;
	font-weight: 400;
	margin: 0 0 16px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.vacatures-info p {
	margin: 0 0 14px 0;
	font-size: 17px;
	line-height: 1.7;
	color: #2c2c2c;
}

.vacatures-list {
	margin: 0;
	padding-left: 20px;
	color: #2c2c2c;
	font-size: 17px;
	line-height: 1.7;
}

.vacatures-list li {
	margin-bottom: 10px;
}

.vacatures-values {
	padding: 10px 0 40px;
}

.vacatures-values-head {
	text-align: center;
	max-width: 640px;
	margin: 0 auto 26px;
}

.vacatures-values-head h2 {
	font-size: 26px;
	font-weight: 400;
	margin: 0 0 10px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.vacatures-values-head p {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: #2c2c2c;
}

.vacatures-values-grid {
	max-width: 1080px;
	margin: 0 auto;
}

.vacatures-values-grid .row {
	margin-left: 0;
	margin-right: 0;
}

.vacatures-values-grid .col-md-4 {
	padding-left: 20px;
	padding-right: 20px;
}

.vacatures-value {
	text-align: center;
	padding: 20px 10px;
}

.vacatures-value h3 {
	font-size: 20px;
	margin: 0 0 10px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.vacatures-value p {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: #2c2c2c;
}

.vacatures-process {
	padding: 30px 0 20px;
	text-align: center;
}

.vacatures-process-head {
	max-width: 640px;
	margin: 0 auto 24px;
}

.vacatures-process-head h2 {
	font-size: 26px;
	font-weight: 400;
	margin: 0 0 10px 0;
	font-family: 'VAA', Arial, sans-serif;
}

.vacatures-process-head p {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: #2c2c2c;
}

.vacatures-process-list {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 720px;
	display: grid;
	gap: 14px;
}

.vacatures-process-step {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 999px;
	background: rgba(255,255,255,0.7);
	font-size: 16px;
	color: #2c2c2c;
}

.vacatures-process-step span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #000000;
	color: #ffffff;
	font-size: 13px;
}

.vacatures-simple {
	text-align: center;
	padding: 60px 20px;
	max-width: 800px;
	margin: 0 auto;
}

.vacatures-simple .lead {
	font-size: 20px;
	color: #000000;
	margin-bottom: 20px;
	font-weight: 400;
	line-height: 1.6;
}

.vacatures-simple p {
	font-size: 17px;
	line-height: 1.7;
	color: #2c2c2c;
	margin: 0;
}

.vacatures-simple a {
	color: #000000;
	text-decoration: underline;
	font-weight: 500;
}

.vacatures-simple a:hover {
	color: #e0dcd4;
	text-decoration: none;
}

/*************************************/
/* Socials Page
/*************************************/
.tpl-socials .container-fluid {
	max-width: 1600px;
	margin: 0 auto !important;
}

.socials-intro {
	text-align: center;
	max-width: 800px;
	margin: 0 auto 60px;
	padding: 0 20px;
}

.socials-intro p {
	font-size: 17px;
	line-height: 1.7;
	color: #000000;
	font-weight: 300;
}

.socials-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1px;
	margin: 0 0 40px 0;
}

.social-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-decoration: none !important;
	padding: 50px 30px;
	transition: all 0.3s ease;
	position: relative;
}

.social-icon {
	margin-bottom: 20px;
}

.social-icon i {
	font-size: 48px;
	color: #000000;
	transition: all 0.3s ease;
}

.social-card:hover .social-icon i {
	color: #e0dcd4;
}

.social-name {
	font-size: 22px;
	font-weight: 400;
	color: #000000;
	margin: 0 0 8px 0;
	font-family: 'VAA', Arial, sans-serif;
	letter-spacing: 0.5px;
}

.social-handle {
	font-size: 15px;
	color: #000000;
	margin: 0;
	font-weight: 300;
	opacity: 0.6;
}

.instagram-feed {
	margin: 0 0 80px 0;
	padding: 0;
}

.instagram-feed h2 {
	font-size: 32px;
	font-weight: 400;
	color: #000000;
	text-align: center;
	margin: 0 0 40px 0;
	font-family: 'VAA', Arial, sans-serif;
	letter-spacing: 0.5px;
}

.socials-cta {
	text-align: center;
	max-width: 900px;
	margin: 80px auto 0;
	padding: 60px 40px;
}

.vacatures-cta {
	margin-top: 50px;
}

.socials-cta h2 {
	font-size: 32px;
	font-weight: 400;
	color: #000000;
	margin: 0 0 20px 0;
	font-family: 'VAA', Arial, sans-serif;
	letter-spacing: 0.5px;
}

.socials-cta p {
	font-size: 17px;
	line-height: 1.7;
	color: #000000;
	margin: 0 0 35px 0;
	font-weight: 300;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.cta-buttons {
	display: flex;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
}

.btn-socials-primary,
.btn-socials-secondary {
	display: inline-block;
	padding: 14px 35px;
	font-size: 15px;
	font-weight: 400;
	font-family: 'VAA', Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-decoration: none !important;
	transition: all 0.3s ease;
	border: 1px solid #000000;
}

.btn-socials-primary {
	background: #000000;
	color: #ffffff;
}

.btn-socials-primary:hover {
	background: transparent;
	color: #000000;
}

.btn-socials-secondary {
	background: transparent;
	color: #000000;
}

.btn-socials-secondary:hover {
	background: #000000;
	color: #ffffff;
}

/* Mobile Responsive */
@media (max-width: 767px) {
	.vacatures-hero,
	.socials-hero {
		padding: 40px 0 30px;
	}
	
	.vacatures-hero .page-title,
	.socials-hero .page-title {
		font-size: 32px;
	}
	
	.vacatures-hero .page-subtitle,
	.socials-hero .page-subtitle {
		font-size: 16px;
	}
	
	.vacatures-content,
	.socials-content {
		padding: 40px 0;
	}
	
	.tpl-vacatures .container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.vacatures-simple {
		padding: 40px 15px;
	}

	.vacatures-hero-highlights {
		grid-template-columns: 1fr;
	}

	.vacatures-section {
		padding-top: 50px;
	}

	.vacatures-section-head {
		margin-bottom: 30px;
	}

	.vacatures-grid,
	.vacatures-roles-grid {
		grid-template-columns: 1fr;
	}

	.vacatures-process-steps {
		grid-template-columns: 1fr;
	}

	.vacatures-card,
	.vacatures-role,
	.vacatures-step {
		padding: 22px;
	}

	.vacatures-cta {
		margin-top: 60px;
	}

	.vacatures-simple .lead {
		font-size: 18px;
	}
	
	.vacatures-simple p {
		font-size: 16px;
	}
	
	.tpl-socials .container-fluid {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
	
	body:not(.home) .container-fluid > .row > .col-md-12 > h1,
	body:not(.home) .container > .row > .col-md-12 > h1 {
		font-size: 32px;
		letter-spacing: 1px;
	}
	
	.socials-grid {
		grid-template-columns: repeat(2, 1fr);
		margin-bottom: 60px;
	}
	
	.social-card {
		padding: 40px 20px;
	}
	
	.social-icon i {
		font-size: 40px;
	}
	
	.social-name {
		font-size: 20px;
	}
	
	.social-handle {
		font-size: 14px;
	}
	
	.socials-intro {
		margin-bottom: 50px;
	}
	
	.socials-intro p {
		font-size: 16px;
	}
	
	.instagram-feed {
		margin-bottom: 60px;
	}
	
	.instagram-feed h2 {
		font-size: 28px;
		margin-bottom: 30px;
	}
	
	.socials-cta {
		margin-top: 60px;
		padding: 40px 25px;
	}
	
	.socials-cta h2 {
		font-size: 26px;
	}
	
	.socials-cta p {
		font-size: 16px;
	}
	
	.cta-buttons {
		gap: 15px;
	}
	
	.btn-socials-primary,
	.btn-socials-secondary {
		width: 100%;
		max-width: 300px;
	}
}

@media (max-width: 480px) {
	.socials-grid {
		grid-template-columns: 1fr;
		margin-bottom: 50px;
	}
	
	.social-card {
		padding: 40px 25px;
	}
	
	.instagram-feed h2 {
		font-size: 24px;
	}
	
	.tpl-socials h1 {
		font-size: 36px;
		padding: 0 15px;
	}
	
	.socials-intro {
		padding: 0 15px;
	}
	
	.socials-cta {
		padding: 40px 20px;
	}

	.vacatures-section-head h2 {
		font-size: 26px;
	}

	.vacatures-section-head p {
		font-size: 16px;
	}

	.vacatures-benefits li {
		font-size: 15px;
	}
	
	.social-icon i {
		font-size: 40px;
	}
}

/*************************************/
/* Global Page Loader
/*************************************/
#page-loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #adae9c;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	z-index: 99999;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

#page-loader.loaded {
	opacity: 0;
	visibility: hidden;
}

#page-loader .logo .logo-outer {
	background: transparent url(/assets/images/logo-white-no-border_180x180.png) no-repeat center;
	-webkit-background-size: 90px;
	-moz-background-size: 90px;
	background-size: 90px;
	width: 97px;
	height: 97px;
	border-radius: 300px;
	background-clip: padding-box;
	position: relative;
	display: inline-block;
}

#page-loader .logo .logo-outer .logo-inner {
	width: 90px;
	height: 90px;
	background-color: transparent;
	border: 2px solid #e0dcd4;
	border-left: 2px solid rgba(0, 0, 0, 0);
	border-right: 2px solid rgba(0, 0, 0, 0);
	border-radius: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -45px 0 0 -45px;
	-webkit-animation: rotateanim 0.8s infinite linear;
	-moz-animation: rotateanim 0.8s infinite linear;
	-o-animation: rotateanim 0.8s infinite linear;
	animation: rotateanim 0.8s infinite linear;
}

@keyframes rotateanim {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

@-webkit-keyframes rotateanim {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@-moz-keyframes rotateanim {
	0% { -moz-transform: rotate(0deg); }
	100% { -moz-transform: rotate(360deg); }
}

@-o-keyframes rotateanim {
	0% { -o-transform: rotate(0deg); }
	100% { -o-transform: rotate(360deg); }
}

/*************************************/
/* Occasion Listing Logo Overlay
/*************************************/
.occasion-logo-overlay {
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
	pointer-events: none;
}

/* Mobile fotorama wrapper helper */
.occasion-detail .fotorama-wrapper-mobile {
	position: relative;
}

/* Ensure mobile fotorama HTML frames span full width so the logo centers correctly */
@media (max-width: 991px) {
	.occasion-detail .fotorama.visible-xs.visible-sm .fotorama-item {
		position: relative;
		display: block;
		width: 100%;
	}
}

/* Elements that host a per-photo logo overlay (desktop slick + fotorama HTML frames) */
.occasion-detail .span-container,
.occasion-detail .fotorama-item {
	position: relative;
	display: inline-block;
}

/* Position logo in the center-top of each host element */
.occasion-detail .span-container > .occasion-logo-overlay,
.occasion-detail .fotorama-item > .occasion-logo-overlay {
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100;
	pointer-events: none;
}

/* Larger logo size for occasion detail images */
.occasion-detail .span-container > .occasion-logo-overlay .logo-outer-small,
.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-outer-small {
	background-size: 48px;
	width: 52px;
	height: 52px;
}

.occasion-detail .span-container > .occasion-logo-overlay .logo-inner-small,
.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-inner-small {
	width: 52px;
	height: 52px;
	border-width: 2px;
}

/* Prevent logo from appearing on thumbnail carousel */
.occasion-detail .slide-nav .occasion-logo-overlay {
	display: none !important;
}

.logo-outer-small {
	position: relative;
	display: inline-block;
	background: transparent url(../images/logo-white-no-border_180x180.png) no-repeat center;
	-webkit-background-size: 28px;
	-moz-background-size: 28px;
	background-size: 28px;
	width: 32px;
	height: 32px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}

.logo-inner-small {
	width: 32px;
	height: 32px;
	background-color: transparent;
	border: 1.5px solid rgba(224, 220, 212, 0.9);
	border-left: 1.5px solid rgba(0, 0, 0, 0);
	border-right: 1.5px solid rgba(0, 0, 0, 0);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	-webkit-transform: rotate(140deg);
	-moz-transform: rotate(140deg);
	-o-transform: rotate(140deg);
	transform: rotate(140deg);
	-webkit-transition: -webkit-transform 0.8s ease;
	-moz-transition: -moz-transform 0.8s ease;
	-o-transition: -o-transform 0.8s ease;
	transition: transform 0.8s ease;
}

/* Subtle rotation on hover of the occasion card */
.row.row-listing .col-item:hover .logo-inner-small {
	-webkit-transform: rotate(320deg);
	-moz-transform: rotate(320deg);
	-o-transform: rotate(320deg);
	transform: rotate(320deg);
}

/* Responsive sizing */
@media (min-width: 768px) {
	.occasion-logo-overlay {
		top: 12px;
	}
	
	/* Logo stays centered on tablet */
	.occasion-detail .span-container > .occasion-logo-overlay .logo-outer-small,
	.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-outer-small {
		background-size: 56px;
		width: 60px;
		height: 60px;
	}
	
	.occasion-detail .span-container > .occasion-logo-overlay .logo-inner-small,
	.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-inner-small {
		width: 60px;
		height: 60px;
	}
	
	.logo-outer-small {
		-webkit-background-size: 32px;
		-moz-background-size: 32px;
		background-size: 32px;
		width: 36px;
		height: 36px;
	}
	
	.logo-inner-small {
		width: 36px;
		height: 36px;
	}
}

@media (min-width: 1200px) {
	.occasion-logo-overlay {
		top: 15px;
	}
	
	/* Even larger logo on desktop */
	.occasion-detail .span-container > .occasion-logo-overlay .logo-outer-small,
	.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-outer-small {
		background-size: 64px;
		width: 70px;
		height: 70px;
	}
	
	.occasion-detail .span-container > .occasion-logo-overlay .logo-inner-small,
	.occasion-detail .fotorama-item > .occasion-logo-overlay .logo-inner-small {
		width: 70px;
		height: 70px;
	}
	
	.logo-outer-small {
		-webkit-background-size: 36px;
		-moz-background-size: 36px;
		background-size: 36px;
		width: 40px;
		height: 40px;
	}
	
	.logo-inner-small {
		width: 40px;
		height: 40px;
		border-width: 2px;
		border-left-width: 2px;
		border-right-width: 2px;
	}
}

/* ===============================================
   FOTORAMA FULLSCREEN IMPROVEMENTS
   Properly scale images to fit screen resolution
   =============================================== */

/* Fullscreen container */
.fotorama.fotorama--fullscreen {
	background: #000 !important;
}

.fotorama.fotorama--fullscreen .fotorama__stage {
	background: #000 !important;
}

/* The stage frame needs to center content */
.fotorama.fotorama--fullscreen .fotorama__stage__frame {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* The HTML container inside the frame */
.fotorama.fotorama--fullscreen .fotorama__html {
	position: relative !important;
	width: 100% !important;
	height: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* The fotorama-item wrapper */
.fotorama.fotorama--fullscreen .fotorama-item {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
}

/* THE ACTUAL IMAGE - this is the key fix */
.fotorama.fotorama--fullscreen .fotorama-item img {
	max-width: 100vw !important;
	max-height: 100vh !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	margin: auto !important;
}

/* Also handle direct fotorama__img elements */
.fotorama.fotorama--fullscreen .fotorama__img,
.fotorama.fotorama--fullscreen .fotorama__img--full {
	max-width: 100vw !important;
	max-height: 100vh !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	margin: auto !important;
}

/* Fullscreen arrows styling */
.fotorama.fotorama--fullscreen .fotorama__arr {
	opacity: 0.7;
	transition: opacity 0.3s ease;
}

.fotorama.fotorama--fullscreen .fotorama__arr:hover {
	opacity: 1;
}

/* Fullscreen close button */
.fotorama.fotorama--fullscreen .fotorama__fullscreen-icon {
	opacity: 0.7;
	transition: opacity 0.3s ease;
	z-index: 100;
}

.fotorama.fotorama--fullscreen .fotorama__fullscreen-icon:hover {
	opacity: 1;
}

/* Hide nav in fullscreen for cleaner look */
.fotorama.fotorama--fullscreen .fotorama__nav {
	display: none !important;
}
