/*
    Landing Hyper4 css
*/


/* General Rules
----------------------------------------------------------------------------*/
	p {
		font-size: 18px;
	}

	h2 {
		font-size: 60px;
	}
	.xl-sp {
		padding-top: 350px;
		padding-bottom: 350px;
	}
	.red-divider {
	    width: 80px;
	    height: 2px;
	    background: #d55e74;
	    margin: auto;
	    margin-bottom: 2em;
	}
	.lf {
		margin-left: 0;
	}
	.separator {
		width: 100%;
		padding: 0 95px;
	}
	.line {
		height: 1px;
		background-color: #e8e8e8;
	}
	.stripe-container .text-container {
	    padding-left: 7.6em;
	    padding-right: 7.6em;
	}
    .stripe-container-exxsm {
        max-width: 400px;
    }
    .landing-hyper4 {
    	overflow: hidden;
    }
/* Header
----------------------------------------------------------------------------*/
	.landing-header {
		height: 95vh;
	    max-height: 890px;
	    overflow: hidden;
	    background: #e1e1e1;
	    background: linear-gradient(85deg, rgba(225,225,225,1) 0%, rgba(255,255,255,1) 100%);
	}

	/* Images & Circles
	---------------------------------*/
		.circle-img {
		    border-radius: 100%;
		}
		.sm-circle {
		    width: 800px;
		    height: 800px;
		    left: 35%;
		    bottom: -500px;
		    z-index: 2;
			background: rgb(188,188,188);
		    background: linear-gradient(120deg, rgba(188,188,188,1) 0%, rgba(226,226,226,1) 100%);
		}
		.bg-circle {
		    width: 1200px;
		    height: 1200px;
		    left: 41%;
		    top: -50px;
		    z-index: 1;
			background: #ddd;
		    background: linear-gradient(135deg, #ddd 0%, #ebebeb 100%);
		}
		.landing-img {
		    right: 0;
		    z-index: 2;
		    max-width: 52vw;
		}
		.landing-img img {
			object-fit: cover;
			object-position: left;
		}
	/* Header Content
	---------------------------------*/
		.landing-content {
			z-index: 4;
		}
		.landing-content-inner {
			max-width: 50%;
		}
		.landing-content h1 {
			color: #8d8d8d;
		}
		.landing-logo {
		    margin: 2em 0 2.5em 0;
		}
		.landing-description p {
			font-family: 'Lato-Bold', sans-serif;
			font-size: 24px;
			color: #3c3c3c;
			line-height: 1.2;
		}
		.landing-description p strong {
			color: #000;
		}
		.landing-buttons {
		    margin-top: 2.5em;
		}
		.landing-buttons .btn:first-child {
		    margin-right: 0.7em;
		}
		.landing-buttons .btn:last-child {
		    margin-left: 0.7em;
		}
		.landing-buttons .btn {
			font-size: 16px;
			padding: 1em 2em;
			font-family: 'Lato-Regular', sans-serif;
			font-weight: 400;
		}


	/* Objectives
	----------------------------------------------------------------------------*/
		body .cell.text-cell {
			width: 50%;
		}
		body .cell.img-cell {
		    height: 595px;
		}
		#hyper4_obj .red-divider {
		    height: 3px;
		}
		#hyper4_obj h2 {
		    font-size: 36px;
		}
		#hyper4_obj ul {
		    margin-top: 20px;
		}
		#hyper4_obj ul li {
		    line-height: 1.4;
		    font-size: 18px;
		    list-style: none;
		}
		#hyper4_obj ul li::before {
		  content: "\2022";
		  display: inline-block;
		  width: 1em;
		  margin-left: -10px;
		  color: #1e1e1e;
		  font-weight: bold;
		  font-size: 16px;
		}


	/* How
	----------------------------------------------------------------------------*/
		#hyper4_how {
		    height: 115vh;
		}
		#hyper4_how .stripe-description {
		    margin-top: 3em;
		}
		#hyper4_how * {
		    text-shadow: 3px 2px 2px black;
		}



	/* Book
	----------------------------------------------------------------------------*/
		#hyper4_book .text-cell {
		    width: 60%;
		    margin-top: -10em;
		    padding-right: 0;
		}
		#hyper4_book .img-cell {
		    width: 461px;
		    position: relative;
		    right: -4em;
		}

		/* Booking Grid
		---------------------------------*/
			#booking-grid {
			    margin-top: -13em;
			}
			#booking-grid .cell:first-child .cell-container-inner {
			    margin-right: 1.5em;
			}
			#booking-grid .cell:last-child .cell-container-inner {
			    margin-left: 1.5em;
			}
			#booking-grid .cell-content {
			    padding: 5em 5em 2em 8em;
			    min-height: 275px;
			}
			#booking-grid h2 {
			    font-size: 30px;
			    line-height: 1.1;
			}
			#booking-grid .cell-content p {
			    font-size: 16px;
			}
			.cell-icon {
			    top: 2em;
			    left: 2em;
			}

			/* Table
			---------------------*/
				#booking-grid .performance-table .col-price {
				    width: 180px;
				}
				#booking-grid .desc-table tr {
				    border-bottom: 0;
				}
				#booking-grid .desc-table td {
				    border-left: 1px solid #cbcbcb;
				    background-color: #fff;
				}
				#booking-grid .desc-table {
				    border: 1px solid #cbcbcb;
				}
				#booking-grid thead th:first-of-type {
				    border-left: 1px solid #cbcbcb;
				}


	/* Reviews
	----------------------------------------------------------------------------*/
		#hyper4_reviews {
		    background: rgb(65,118,118);
			background: radial-gradient(circle, rgba(65,118,118,1) 0%, rgba(76,142,142,1) 50%, rgba(98,185,185,1) 100%);
		}
		#hyper4_reviews:after, #hyper4_reviews:before {
		    content: '';
		    position: absolute;
		    top: 50%;
		    left: 50%;
		    -webkit-transform: translate(-50%, -50%);
		    -ms-transform: translate(-50%, -50%);
		    transform: translate(-50%, -50%);
		}
		#hyper4_reviews:after {
		    content: url(https://descovich.it/wp-content/uploads/2021/11/azure-line.png);
		}
		#hyper4_reviews:before {
		    content: url(https://descovich.it/wp-content/uploads/2021/11/red-line.png);
		}
		#hyper4_reviews .slick-slide {
		    margin: 0 6px;
		}
		.slick-track {
		    padding: 50px 0;
		}
		.review-container {
		    box-shadow: 0 0 7px 0 rgb(0 0 0 / 30%);
		}
		.review-container-inner {
		    margin: 6em 4em;
		}
		.review-date {
		    top: 2em;
		    right: 2em;
		}
		.review-date p {
		    font-size: 14px;
		    font-style: italic;
		}
		.avatar {
			margin-right: 1em;
		    width: 80px;
		    height: 80px;
		    background-color: #d55e74;
		    border-radius: 100%;
		}
		.review-content {
		    margin-top: 1.2em;
		}
		.name p {
		    font-family: 'Lato-Bold', sans-serif;
		    color: #3c3c3c;
		    -webkit-transform: matrix(1, 0, 0, 0.9, 0, 0);
		    transform: matrix(1, 0, 0, 0.9, 0, 0);
		}
		.review-content p {
		    font-size: 16px;
		}

		/* Slider dots
		---------------------------------*/
			body #hyper4_reviews .slick-dots {
			    position: relative;
			    bottom: 0;
			}
			body #hyper4_reviews li.slick-active {
			    width: 30px;
			    height: 27px;
			}
			body #hyper4_reviews .slick-dots .slick-active button {
			    width: 30px;
			    height: 27px;
			}
			body #hyper4_reviews .slick-dots .slick-active button:before {
			    font-size: 30px;
			    color: white !important;
			    line-height: 1;
			}
			body #hyper4_reviews .slick-dots button:before {
				font-size: 14px;
			}

/* NEW CF7 
----------------------------------------------*/
	input.wpcf7-submit {
	    border-radius: 30px;
	    min-width: 250px !important;
	    padding: 1.5em;
	}
	input[type="checkbox"] {
	    width: 50px;
	    position: relative;
	    background: #bdbdbd;
	    border: 2px solid #909090;
	    box-shadow: inset -2px 2px 10px rgb(0 0 0 / 40%);
	    transition: all 0.1s;
	    height: 25px;
	    width: 60px;
	}
	input[type="checkbox"]:after {
	    content: '';
	    position: absolute;
	    background: #ffffff;
	    border-radius: 30px;
	    top: 0;
	    left: 0;
	    height: 16px;
	    width: 30px;
	    height: 21px;
	}
	input[type="checkbox"]:checked {
	    border: 2px solid #d55e74;
	    background: #d55e74;
	}
	input[type="checkbox"]:checked {
	    opacity: 1;
	    background: #d55e74;
	}
	input[type="checkbox"]:checked:after {
	    left: unset;
	    right: 0px;
	}
	.acceptance-box {
	    padding: 1em 0;
	}
	.required {
	    margin: 2em 0 0;
	    font-style: italic;
	}
	.acceptance-box * {
	    font-size: 16px;
	}
	.acceptance-box p {
	    margin-left: 10px;
	}
	#contact-table input, #contact-table textarea, #contact-table select, #commentform input, #commentform textarea {
	    padding: 1.2em 1.5em;
	    font-size: 18px;
	    line-height: 1.2;
	    border: 1px solid #cdcdcd;
	    border-radius: 30px;
	}
	::placeholder {
	    font-size: 18px !important;
	    line-height: 1.2 !important;
	}
	#contact-table .form-fields > span:last-of-type {
	    padding-right: 0;
	}


        /* Error message
        --------------------------------------------*/
	        div.wpcf7 .ajax-loader {
	            display: none;
	        }
	        span.wpcf7-not-valid-tip {
	            display: none !important;
	        }
	        .wpcf7-not-valid::placeholder {
	            color: #ff1212 !important;
	        }
	        .wpcf7 form.invalid .wpcf7-response-output, 
	        .wpcf7 form.unaccepted .wpcf7-response-output,
	        .wpcf7 form.sent .wpcf7-response-output {
	            color: #eb0e0e;
	            margin: 0;
	            }
	        .wpcf7 form.sent .wpcf7-response-output {
	            color: #46b450;
	        }
	        .wpcf7-response-output {
	            border: 0 !important;
	            color: #c01515;
	            padding: 0 !important;
	        }
	        input.wpcf7-form-control.wpcf7-email.wpcf7-not-valid,
	        input.wpcf7-form-control.wpcf7-tel.wpcf7-not-valid {
	            color: #ff1212 !important;
	        }
			.wpcf7-not-valid {
			    border-color: #ff1212 !important;
			}
			.wpcf7-response-output {
			    margin-top: 2em !important;
			    color: #fff !important;
			    padding: 3em 2em !important;
			}
			.wpcf7 form.invalid .wpcf7-response-output {
			    background-color: #f11e45;
			}
			.wpcf7 form.sent .wpcf7-response-output {
			    background-color: #46b450;
			}