/*#page-header .page-header-inner .ph-image .overlay-gradient {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, #0a0a0a 0%, #0a0a0a20 45%);
}

.tt-section .tt-section-inner .overlay-gradient {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, #0a0a0a 0%, #0a0a0a20 30%, #0a0a0a 100%)
}

.tt-section.linear-gradient {
	background: linear-gradient(0deg, #0a0a0a 0%, #0a0a0a20 30%, #0a0a0a 100%);
}*/

.nf-field-label .nf-label-span,
.nf-field-label label {
	font-weight: 500 !important;
}

.nf-form-fields-required,
.nf-error-msg.nf-error-field-errors {
	display: none !important;
}

.nf-error-msg {
	font-size: 16px !important;
	color: var(--tt-main-color) !important;
}

.nf-error .ninja-forms-field {
	border-color: var(--tt-main-color) !important;
}

.ninja-forms-req-symbol {
	color: inherit !important;
}


.nf-field-container .checkbox-wrap input[type=checkbox],
.nf-field-container .list-radio-wrap input[type=radio] {
	-webkit-appearance: none;
	background-color: #d1d1d1;
	padding: 9px;
	border-radius: 4px;
	display: inline-block;
	position: relative;
}


.nf-field-container .checkbox-wrap .nf-field-label {
	padding-left: 0 !important;
}

.nf-field-container .checkbox-wrap label {
	display: inline-block;
	margin-left: 32px;
	margin-bottom: 0;
	cursor: pointer !important;
	font-weight: 800 !important;
	color: #840d7a !important;

}

.nf-field-container .checkbox-wrap input[type=checkbox]:checked:after {
	content: ' ';
	left: 6px;
	top: 3px;
	width: 5px;
	height: 10px;
	position: absolute;
	border: solid #000;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.nf-field-container .checkbox-wrap input[type=checkbox] {
	margin-top: 0;
}

#ninja_forms_required_items,
.nf-field-container {
	margin-bottom: 30px !important;
}

.nf-field-container .checkbox-wrap input[type=checkbox]:checked {
	color: #99a1a7;
	/*box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1), inset 0px 0px 10px rgba(0,0,0,0.1);*/
}

.nf-field-container .checkbox-wrap input[type=checkbox]:active,
.label-right .checkbox-wrap input[type=checkbox]:checked:active {
	/*box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);*/
}

.cta-btns-wrapper {
	display: flex;
	flex-wrap: wrap;
}

.cta-btns-wrapper.right:not(.overlapping) {
	justify-content: flex-end;
}

.cta-btns-wrapper.overlapping {
	flex-direction: column;
}

.cta-btns-wrapper.overlapping.left .tt-btn {
	margin-right: auto;
}

.cta-btns-wrapper.center {
	align-items: center;
	justify-content: center;
}

.cta-btns-wrapper.right .tt-btn {
	margin-left: auto;
	margin-right: 0;
}

.cta-btns-wrapper.right:not(.overlapping) .tt-btn {
	margin-left: 15px;
	margin-right: 0;
}

.cta-btns-wrapper.overlapping.right .tt-btn {
	margin-right: 0;
}

.cta-btns-wrapper .tt-btn {
	flex-grow: 0
}

.img-wrapper img {
	display: block;
}

.img-wrapper.center img {
	margin-left: auto;
	margin-right: auto;
}

.img-wrapper.left img {
	margin-left: 0;
	margin-right: auto;
}

.img-wrapper.right img {
	margin-left: auto;
	margin-right: 0;
}

/*@media (min-width: 1024px) and (max-width: 1109px) {
	.tt-main-menu-list > li	{
		padding: 0 10px;
	}
	
	.tt-main-menu-list > li > a {
		padding: 20px 3px;
		font-size: 13px;
	}
}*/

textarea {
	resize: none !important;
}

.margin-top-neg-20 {
	margin-top: -20px !important;
}

.tt-section.text-white,
.tt-section.text-white p,
.tt-section.text-white ul,
.tt-section.text-white ol,
.tt-section.text-white li,
.tt-section.text-white h1,
.tt-section.text-white h2,
.tt-section.text-white h3,
.tt-section.text-white h4,
.tt-section.text-whiteh h5,
.tt-section.text-white h6 {
	color: #fff;
}

/*
.tt-section.fixed-bg .tt-section-image > img,
.tt-section.fixed-bg .anim-image-parallax-inner img {
	height: 100%;
	object-fit: cover;
}*/

.tt-blog-post-tags a {
	pointer-events: none;
	user-select: none;
}

ul.ttgr-cat-classic-list,
ul.ttgr-cat-classic-list>li,
ul.ttgr-cat-classic-list>li>a {
	user-select: none;
}

.tt-submenu-trigger.no-arrow>a::after {
	display: none;
}

@media (min-width: 1025px) {
	.tt-submenu {
		width: auto;
		padding-right: 20px;
	}

	.tt-submenu.lang-selection {
		left: -20px;
	}
}

.lang-menu>a {
	pointer-events: none;
}

.tt-m-menu-toggle-btn span.change-color::before,
.tt-m-menu-toggle-btn span.change-color::after {
	background-color: #0b1519 !important;
}

@media (max-width: 1024px) {
	#content-wrap>.tt-section:first-child {
		padding-top: 120px;
	}
}

/*.tt-btn.tt-btn-primary .tt-btn-icon {
	display: none !important;
}*/


.car_info {
	margin: 20px;
	color: #455560;
	/* Set text color to white */
	display: flex;
	flex-wrap: wrap;
}

.word_wrap {
	word-wrap: break-word;
}

.car_info .acc_block {
	border-radius: 5px;
	flex: 1 0 calc(33.33% - 10px);
	/* Allow each column to take up one-third space with margin */
	margin-right: 10px;
	/* Add some space between columns */

}

.car_info ul {
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.car_info li {
	margin-bottom: 40px;
	flex: 1;
	margin-right: 20px;
}

.car_info h2 {
	color: #fff;
	/* Set header text color to white */
	font-size: 18px;
	margin-bottom: 10px;
	/* Add some space between headline and content */
}

.car_info .acc_det {
	flex: 1;
}

.car_info .acc_det div {
	padding: 8px;
	padding-left: 0;
	/* Remove left padding */
	font-size: 16px;
	/* Set content font size to 16px */
	border-bottom: 1px solid #45556020;
}

.car_info .clear {
	clear: both;
}

/* Iso otsiko (kursiiviversio) */
.tt-heading.title_italic .tt-heading-title {
	font-style: italic;
	text-transform: none;
}



.pgi-title::before,
.vehicle-list-title::before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	margin-right: 5px;
	background-image: url('/wp-content/uploads/auto_maranello_icon_color-1.svg');
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}

.vehicle-list-title::before {
	width: 32px;
	height: 32px;
}

.vehicle-list-title {
	font-size: calc(16px + 0.3vw);
}







/*@media (min-width: 1024px) and (max-width: 1109px) {*/

.ttgr-item-inner {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.pgi-caption {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

@media (min-width: 1200px) {
	.tt-grid-items-wrap .portfolio-grid-item .pgi-caption {
		min-height: 15vw;
	}
}


@media (max-width: 1199px) {
	.tt-grid-items-wrap .portfolio-grid-item .pgi-caption {
		min-height: 20vw;
	}
}

@media (max-width: 990px) {
	.tt-grid-items-wrap .portfolio-grid-item .pgi-caption {
		min-height: 25vw;
	}
}


@media (max-width: 790px) {
	.tt-grid-items-wrap .portfolio-grid-item .pgi-caption {
		min-height: 28vw;
	}
}

@media (max-width: 767px) {
	.tt-grid-items-wrap .portfolio-grid-item .pgi-caption {
		min-height: auto;
	}
}


@media (min-width: 1025px) {
	.project-carousel.tt-content-carousel .swiper-slide-next,
	.project-carousel.tt-content-carousel .swiper-slide-prev {
		cursor: grab !important;
		opacity: 0.5;
	}

	.project-carousel.tt-content-carousel .swiper-slide-next a,
	.project-carousel.tt-content-carousel .swiper-slide-prev a {
		pointer-events: none;
	}

	.project-carousel.tt-content-carousel {
		position: relative;
		overflow: hidden; /* Häivytettävä alue rajataan */
	}

	.project-carousel.tt-content-carousel::before,
	.project-carousel.tt-content-carousel::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		width: 15vw; /* Häivytyksen leveys */
		z-index: 10;
		pointer-events: none; /* Ei estä käyttäjän vuorovaikutusta */
	}

	.project-carousel.tt-content-carousel::before {
		left: 0;
		background: linear-gradient(to right, 
			rgba(255, 255, 255, 1) 0%, 
			rgba(255, 255, 255, 1) 20%, /* Pidennä täysin valkoista aluetta */
			rgba(255, 255, 255, 0) 100% /* Häivytys loppuu reunan kohdalla */
		);
	}

	.project-carousel.tt-content-carousel::after {
		right: 0;
		background: linear-gradient(to left, 
			rgba(255, 255, 255, 1) 0%, 
			rgba(255, 255, 255, 1) 20%, /* Pidennä täysin valkoista aluetta */
			rgba(255, 255, 255, 0) 100% /* Häivytys loppuu reunan kohdalla */
		);
	}

	.project-carousel.tt-content-carousel .swiper-slide.swiper-slide-visible.swiper-slide-active a {
		cursor: zoom-in !important;
	}
}

.tt-cc-nav-prev.disabled,
.tt-cc-nav-next.disabled {
	opacity: 0;             /* Piilotetaan visuaalisesti */
	pointer-events: none;   /* Estetään käyttäjän toiminta */
}

.tt-cc-nav-prev,
.tt-cc-nav-next {
	opacity: 1;             /* Näytetään oletuksena */
	pointer-events: auto;   /* Oletusarvoisesti toimiva */
	transition: opacity 0.3s ease; /* Sulava animaatio */
}
