/*
Template Name: LaunchPage
Author URI: https://themeforest.net/user/epic-themes
Author Name: Epic Themes
Version: 1.0
*/

/* --- TABLE OF CONTENT

01. GENERAL LAYOUT
02. MENU-NAV
03. FOOTER
04. HOME
05. TEAM
06. FEATURES
07. GALLERY
08. PRICING
09. CONTACT
10. OTHER ELEMENTS
		a. Buttons
		b. Testimonials
		c. Benefits List
		d. Fun Facts
		e. Dropcaps Features
11. MEDIA QUERIES

--- */

/* ========================================================== */
/* 			               01. GENERAL LAYOUT                 */
/* ========================================================== */

ul {
	padding: 0;
}

ul,
ol {
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
	color: #000000;
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 20px;
}

ul li,
ol li {
	font-size: 17px;
	line-height: 28px;
	font-family: 'Open Sans', sans-serif;
	list-style-type: none;
}

ul li i {
	vertical-align: middle;
	padding-right: 5px;
}

p {
	font-size: 17px;
	line-height: 28px;
	font-weight: 400;
	color: #000000;
	margin-bottom: 20px;
	font-family: 'Open Sans', sans-serif;
}

a,
a:hover,
a:focus,
a:active,
a:visited {
	text-decoration: none;
	outline: 0;
}

a:hover {
	color: #00a800;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Nunito', sans-serif;
	line-height: 1.2;
	margin-top: 0;
	margin-bottom: 20px;
	color: #000000;
	font-weight: 700;
}

h1 {
	font-size: 45px;
}

h2 {
	font-size: 38px;
}

h3 {
	font-size: 32px;
}

h4 {
	font-size: 26px;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 18px;
}

h2.section-title {
	margin-bottom: 10px;
}

p.section-subtitle {
	font-size: 18px;
}

p.section-subtitle.white {
	color: #ffffff;
}

p.section-subtitle.black {
	color: #252525;
}

iframe {
	max-width: 100%;
	border: none;
}

.iframe-youtube {
	position: relative;
	margin-top: 30px;
	z-index: 100;
}

.iframe-youtube iframe {
	padding: 10px 10px;
	box-shadow: 0 15px 36px rgba(0, 0, 0, 0.20);
	background-color: #fff;
	webkit-border-radius: 8px 8px;
	-moz-border-radius: 8px 8px;
	border-radius: 8px 8px;
	z-index: 100;
}

.popup-gallery:hover .video-popup-image {
	opacity: 1;

}

.video-play-icon {
	position: absolute;
	z-index: 100;
	top: 50%;
	left: 50%;
	margin-top: -45px;
	margin-left: -45px;
	width: 90px;
	height: 90px;
	line-height: 90px;
	text-align: center;
	font-size: 40px;
	color: #007bff;
	background-color: rgba(0, 123, 255, 0.70);
	border-radius: 50% 50%;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.video-play-icon:hover {
	background-color: rgba(0, 123, 255, 0.99);
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.video-play-icon i {
	color: #fff;
}

.white-text {
	color: #fff;
}

.red {
	color: #e52f37;
}

.strong {
	font-weight: bold;
}

.section-bg-1 {
	background: url(../images/bg10.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	width: 100%;
	position: relative;
	padding: 110px 0;
}

.section-bg-2 {
	background: url(../images/bg10.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	width: 100%;
	position: relative;
	padding: 120px 0;
}

.section-bg-3 {
	background: url(../images/bg10.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	width: 100%;
	position: relative;
	padding: 140px 0;
}

.section-bg-overlay {
	width: 100%;
	background: #ce2d1f;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.section-white {
	background: #fff;
	padding: 90px 0 100px 0;
}

.section-grey {
	background: #f8f8f8;
	padding: 90px 0 100px 0;
}

.section-red {
	background: #e52f37;
	padding: 90px 0 100px 0;
}

.section-white.no-padding,
.section-grey.no-padding,
.section-red.no-padding {
	padding: 0;
}

.section-white.medium-paddings,
.section-grey.medium-paddings,
.section-red.medium-paddings {
	padding: 60px 0;
}

.section-white.small-paddings,
.section-grey.small-paddings,
.section-red.small-paddings {
	padding: 30px 0;
}

.section-white.xsmall-paddings,
.section-grey.xsmall-paddings,
.section-red.xsmall-paddings {
	padding: 10px 0;
}

.section-white.small-padding-top,
.section-grey.small-padding-top,
.section-red.small-padding-top {
	padding: 30px 0 90px 0;
}

.section-white.small-padding-bottom,
.section-grey.small-padding-bottom,
.section-red.small-padding-bottom {
	padding: 90px 0 70px 0;
}

.section-white.no-padding-bottom,
.section-grey.no-padding-bottom,
.section-red.no-padding-bottom {
	padding: 90px 0 0 0;
}

.small-col-inside {
	margin: 90px 0;
	max-width: 575px;
	padding-left: 55px;
}

.width-100 {
	width: 100%;
}

.box-shadow {
	border-radius: 8px;
	box-shadow: 0px 8px 40px 0 rgba(0, 0, 0, 0.15);
}

.image-shadow {
	border-radius: 8px 8px;
	box-shadow: 10px 12px 40px rgba(0, 0, 0, 0.2);
}

/* margin and padding classes */

.margin-right-15 {
	margin-right: 15px;
}

.margin-left-15 {
	margin-left: 15px;
}

.margin-right-25 {
	margin-right: 25px !important;
}

.margin-left-25 {
	margin-left: 25px !important;
}

.margin-left-20 {
	margin-left: 20px !important;
}

.margin-top-120 {
	margin-top: 120px !important;
}

.margin-top-110 {
	margin-top: 110px !important;
}

.margin-top-100 {
	margin-top: 100px !important;
}

.margin-top-90 {
	margin-top: 90px !important;
}

.margin-top-80 {
	margin-top: 80px !important;
}

.margin-top-70 {
	margin-top: 70px !important;
}

.margin-top-60 {
	margin-top: 60px !important;
}

.margin-top-50 {
	margin-top: 50px !important;
}

.margin-top-40 {
	margin-top: 40px !important;
}

.margin-top-35 {
	margin-top: 35px !important;
}

.margin-top-30 {
	margin-top: 30px !important;
}

.margin-top-20 {
	margin-top: 20px !important;
}

.margin-top-10 {
	margin-top: 10px !important;
}

.margin-top-5 {
	margin-top: 5px !important;
}

.margin-bottom-0 {
	margin-bottom: 0px !important;
}

.margin-bottom-5 {
	margin-bottom: 5px;
}

.margin-bottom-10 {
	margin-bottom: 10px !important;
}

.margin-bottom-20 {
	margin-bottom: 20px !important;
}

.margin-bottom-30 {
	margin-bottom: 30px !important;
}

.margin-bottom-40 {
	margin-bottom: 40px !important;
}

.margin-bottom-50 {
	margin-bottom: 50px !important;
}

.margin-bottom-60 {
	margin-bottom: 60px !important;
}

.margin-bottom-70 {
	margin-bottom: 70px !important;
}

.margin-bottom-80 {
	margin-bottom: 80px !important;
}

.margin-bottom-100 {
	margin-bottom: 100px !important;
}

.margin-bottom-120 {
	margin-bottom: 120px !important;
}

.margin-bottom-130 {
	margin-bottom: 120px !important;
}

.margin-bottom-140 {
	margin-bottom: 140px !important;
}

.padding-top-0 {
	padding-top: 0px !important;
}

.padding-top-10 {
	padding-top: 10px !important;
}

.padding-top-20 {
	padding-top: 20px !important;
}

.padding-top-25 {
	padding-top: 25px !important;
}

.padding-top-30 {
	padding-top: 30px !important;
}

.padding-top-35 {
	padding-top: 35px !important;
}

.padding-top-40 {
	padding-top: 40px !important;
}

.padding-top-45 {
	padding-top: 45px !important;
}

.padding-top-50 {
	padding-top: 50px !important;
}

.padding-top-60 {
	padding-top: 60px !important;
}

.padding-top-70 {
	padding-top: 70px !important;
}

.padding-top-80 {
	padding-top: 80px !important;
}

.padding-top-100 {
	padding-top: 100px !important;
}

.padding-top-120 {
	padding-top: 120px !important;
}

.padding-top-150 {
	padding-top: 150px !important;
}

.padding-bottom-70 {
	padding-bottom: 70px !important;
}

.padding-bottom-60 {
	padding-bottom: 60px !important;
}

.padding-bottom-50 {
	padding-bottom: 50px !important;
}

.padding-bottom-40 {
	padding-bottom: 40px !important;
}

.padding-bottom-30 {
	padding-bottom: 30px !important;
}

.padding-bottom-20 {
	padding-bottom: 20px !important;
}

.padding-bottom-10 {
	padding-bottom: 10px !important;
}

.padding-bottom-0 {
	padding-bottom: 0px !important;
}

.margin-top-0 {
	margin-top: 0px !important;
}

.padding-left-20 {
	padding-left: 20px;
}

/* ========================================================== */
/* 			               02. MENU-NAV                       */
/* ========================================================== */

.navbar-brand {
	font-family: 'Nunito', sans-serif;
	font-size: 28px;
	font-weight: 700;
	color: #e52f37;
}

.navbar-brand:hover {
	color: #e52f37;
}

.navbar-fixed-top.opaque .navbar-brand {
	color: #e52f37;
}

.navbar-fixed-top.opaque .navbar-brand:hover {
	color: #e52f37;
}

.navbar {
	width: 100%;
	z-index: 9999;
	padding-top: 20px;
	padding-bottom: 20px;
}

.navbar-toggler {
	border: 1px solid #e52f37;
}

.navbar-toggler:focus {
	border: 2px solid #e52f37;
	outline: none;
}

.navbar-toggler-icon {
	width: 1.3em;
	height: 1.3em;
}

.navbar-toggler-icon i {
	color: #e52f37;
	vertical-align: middle;
}

.navbar-fixed-top {
	position: absolute !important;
	background-color: #fff;
	border-bottom: none;
	transition: background-color 0.25s ease 0s;
}

.navbar-fixed-top.opaque {
	position: fixed !important;
	top: 0;
	margin-top: 0;
	background-color: #fff !important;
	border-bottom: 1px solid #efefef;
	box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.04) !important;
	transition: all 0.25s ease-in-out 0s;
}

.navbar-fixed-top .navbar-nav>li>a {
	color: #000000;
	font-size: 17px !important;
	line-height: 30px !important;
	padding: 10px 15px !important;
	font-family: 'Nunito', sans-serif;
	font-weight: 600;
}

.navbar-fixed-top.opaque .navbar-nav>li>a {
	color: #000000;
}

.navbar-fixed-top .navbar-nav>li>a:hover {
	color: #e52f37 !important;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.navbar-fixed-top.opaque .navbar-nav .current a {
	color: #e52f37 !important;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.navbar-fixed-top .navbar-nav>li>a.discover-btn {
	border: 1px solid #e52f37;
	color: #fff !important;
	background: linear-gradient(90deg, #e52f37, rgb(255, 0, 13));
	border-radius: 23px 23px;
	padding: 12px 18px !important;
	margin-left: 10px;
	margin-right: 15px;
	font-family: 'Nunito', sans-serif;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.navbar-fixed-top .navbar-nav>li>a.discover-btn:hover {
	color: #e52f37 !important;
	background: transparent;
	border: 1px solid #e52f37;
}

.navbar-fixed-top.opaque .navbar-nav>li>a.discover-btn {
	color: #fff !important;
	background: #e52f37;
	border: 1px solid #e52f37;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.navbar-fixed-top.opaque .navbar-nav>li>a.discover-btn:hover {
	border: 1px solid #e52f37;
	color: #e52f37 !important;
	background: transparent;
}

/* ========================================================== */
/* 			                03. FOOTER                        */
/* ========================================================== */

.footer {
	position: relative;
	overflow: hidden;
	display: block;
	padding: 40px 0 20px 0;
	background-color: #000000;
}

.footer p {
	margin-bottom: 5px;
	line-height: 24px;
	color: #fff;
}

.footer p>a {
	font-size: 17px;
	color: #e52f37;
	text-decoration: underline;
}

.footer p>a:hover {
	color: #e52f37;
	text-decoration: underline;
}

span.template-name {
	font-weight: bold;
}

a.footer-links {
	display: block;
	font-size: 17px;
	margin-bottom: 2px;
	color: #454545;
}

a.footer-links:hover {
	color: #e52f37;
	text-decoration: underline;
	transition: all .5s ease-in-out;
}

/* Footer Social Icons */
ul.footer_social {
	float: right;
}

ul.footer_social li {
	display: inline-block;
	margin: 0;
	line-height: 100% !important;
}

ul.footer_social li a i {
	display: inline-block;
	margin: 0 8px;
	padding: 0;
	font-size: 26px !important;
	line-height: 26px !important;
	color: #1e90ff;
	transition: all .5s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

ul.footer_social li a i.fa-twitter {
	color: #4099ff;
}

ul.footer_social li a i.fa-pinterest {
	color: #C92228;
}

ul.footer_social li a i.fa-facebook-square {
	color: #3b5998;
}

ul.footer_social li a i.fa-instagram {
	color: #8a3ab9;
}

ul.footer_social li a i.fa-skipe {
	color: #00aff0;
}

ul.footer_social li a i.fa-dribble {
	color: #ea4c89;
}

ul.footer_social li a i:hover {
	color: #e52f37 !important;
}

/* ========================================================== */
/* 			               04. HOME                           */
/* ========================================================== */

.home-section {
	position: relative;
	z-index: 999;
	padding-top: 140px;
	padding-bottom: 110px;
	background: url(../images/bg10.jpg) top center no-repeat;
	background-size: cover;
}

.home-section-overlay {
	width: 100%;
	background: #000;
	opacity: 0.6;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.home-section h1 {
	margin-bottom: 20px;
	line-height: 1.2;
	color: #fff;
	text-shadow: 1px 1px #373737;
}

.home-section p.hero-text {
	margin-bottom: 35px;
	font-size: 20px;
	line-height: 30px;
	font-weight: 400;
	color: #fff;
	text-shadow: 1px 1px #373737;
}

/* -----  Hero Video PopUp ----- */
.popup-gallery-wrapper {
	position: relative;
	margin-top: 25px;
}

.hero-gallery {
	float: left;
}

.video-icon {
	float: left;
	width: 60px;
	height: 60px;
	background: #fff;
	border: 2px solid #fff;
	border-radius: 50% 50%;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.video-icon:before {
	content: '';
	width: 60px;
	height: 60px;
	position: absolute;
	border: 1px solid #fff;
	border-radius: 100%;
	left: 50%;
	margin-left: -30px;
	bottom: 10%;
	margin-bottom: -6px;
	-webkit-animation: doublePulsation 1.9s ease infinite;
	animation: doublePulsation 1.9s ease infinite;
	z-index: 0;
}

@-webkit-keyframes doublePulsation {
	0% {
		-webkit-transform: scale(1.0, 1.0);
		opacity: 0.0;
	}

	50% {
		opacity: 0.55;
	}

	100% {
		-webkit-transform: scale(1.3, 1.3);
		opacity: 0.0;
	}
}

@keyframes doublePulsation {
	0% {
		-webkit-transform: scale(1.0, 1.0);
		opacity: 0.0;
	}

	50% {
		opacity: 0.55;
	}

	100% {
		-webkit-transform: scale(1.3, 1.3);
		opacity: 0.0;
	}
}

.video-icon:hover {
	background: transparent;
}

.video-icon i {
	font-size: 26px;
	line-height: 56px;
	color: #e52a3d;
	margin-left: 18px;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.video-icon:hover i {
	color: #fff;
}

.popup-video-text {
	float: left;
	padding-top: 15px;
	padding-left: 20px;
	font-size: 18px;
	line-height: 28px;
	color: #fff;
	text-decoration: underline;
	text-shadow: 1px 1px #656565;
}

/* -----  Register ----- */
.register-form-wrapper {

	margin-top: 25px;
	padding: 40px 40px;
	background: rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2);
	border-radius: 20px;
}

.register-form-wrapper h3 {
	margin-bottom: 5px;
	font-size: 22px;
	font-weight: 700;
}

.register-form-wrapper p {
	margin-bottom: 25px;
	font-size: 17px;
}

input.register-input,
select.register-input {
	width: 100% !important;
	height: 52px !important;
	padding-left: 11% !important;
	padding-right: 5% !important;
	margin-bottom: 15px !important;
	color: #555 !important;
	border: 1px solid #f1f1f1 !important;
	background-color: #f9f9f9 !important;
	font-size: 16px !important;
	border-radius: 5px 5px 5px 5px !important;
}

input.name-input {
	background: url('../images/input-user.png') no-repeat 12px 15px;
}

input.name-email {
	background: url('../images/input-envelope.png') no-repeat 12px 15px;
}

select.register-input {
	background: url('../images/input-select.png') no-repeat 12px 15px;
}

input.register-submit {
	background: #e52f37;
	border: none;
	color: #fff;
	letter-spacing: 1px;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	width: 100%;
	max-width: 535px;
	padding: 16px 0;
	text-transform: uppercase;
	-webkit-border-radius: 3px 3px;
	-moz-border-radius: 3px 3px;
	border-radius: 3px 3px;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

input.register-submit:hover {
	background: #2745B3;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

#register-form input.register-input:focus,
#register-form select.register-input:focus {
	border-color: #656565 !important;
	color: #454545 !important;
	outline: none;
}

#register-form input.register-input:focus,
#register-form select.register-input:focus {
	border-color: #656565 !important;
	color: #454545 !important;
	outline: none;
}

p.register_success_box {
	display: inline-block;
	color: #2745B3;
	border: 1px solid #2745B3;
	padding: 25px 25px;
	font-size: 19px;
	text-shadow: none;
	font-style: italic;
	border-radius: 8px 8px;
	margin: 15px 0;
}

p.register-form-terms {
	margin: 10px 0 5px 0;
	font-size: 14px;
	color: #7c8595;
	text-shadow: none;
}

input.white-input::-webkit-input-placeholder,
select.white-input::-webkit-input-placeholder {
	/* WebKit browsers */
	color: #656565;
}

input.white-input:-moz-placeholder,
select.white-input:-moz-placeholder {
	/* Mozilla Firefox 4 to 18 */
	color: #656565;
}

input.white-input::-moz-placeholder,
select.white-input::-moz-placeholder {
	/* Mozilla Firefox 19+ */
	color: #656565;
}

input.white-input:-ms-input-placeholder,
select.white-input:-ms-input-placeholder {
	/* Internet Explorer 10+ */
	color: #656565;
}

/* Pertners */
.partners-section {
	padding: 40px 0 20px 0;
	background-color: #fff;
}

.partners img.partners {
	opacity: 0.4;
	margin: 10px 15px;
	max-height: 55px;
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.partners img.partners:hover {
	opacity: 0.8;
}

.partners-title {
	font-size: 18px;
	line-height: 78px;
	display: inline-block;
	margin-right: 15px;
}

/* ========================================================== */
/* 			               05. TEAM                           */
/* ========================================================== */

.team-item {
	padding: 10px 25px 30px 25px;
	background-color: #fff;
	border: 1px solid #e5efff;
	border-top: none;
	text-align: center;
	transition: all 1s;
	border-radius: 0 0 8px 8px;
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.team-item h3 {
	margin: 20px 0 1px 0 !important;
	color: #454545;
	font-size: 18px;
	text-transform: uppercase;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

.team-info {
	display: block;
	margin-bottom: 0;
}

.team-info p {
	color: #acacac;
	font-style: italic;
}

.team-info::after {
	background: #e52f37;
	display: inline-block;
	vertical-align: middle;
	content: "";
	width: 50px;
	height: 3px;
	margin-top: -20px;
}

.team-img {
	border-radius: 8px 8px 0 0;
}

/* ========================================================== */
/* 			                06. FEATURES                      */
/* ========================================================== */

.services-wrapper {
	position: relative;
}

.main-services {
	position: relative;
	margin: 10px 5px;
	overflow: hidden;
	text-align: center;
	transition: all 1s;
}

.main-services:hover {
	transform: scale(1.025);
	transition: all 1s;
}

.main-services img {
	width: 100%;
	max-width: 200px;
	margin-bottom: 10px;
	border-radius: 50%;
}

.main-services h3 {
	margin-bottom: 5px;
}

.main-services h3 a {
	font-size: 22px;
	font-weight: 700;
	color: #e52f37;
}

.main-services h4 {
	margin-bottom: 10px;
	font-size: 21px;
	font-weight: 700;
}

.main-services p {
	padding: 0 10px;
	margin-bottom: 15px;
}

.main-services i {
	margin-bottom: 15px;
	display: inline-block;
	padding: 16px 16px;
	font-size: 40px;
	line-height: 46px;
	width: 75px;
	height: 75px;
	text-align: center;
	color: #fff;
	border-radius: 20px;
	background-color: #e52f37;
}

.main-services.red i {
	background-color: #000000;
}

.main-services.blue i {
	background-color: #000000;
}

.main-services.green i {
	background-color: #000000;
}

blockquote {
	font-size: 16px;
	color: #4285f4;
	border-left: 2px solid #4285f4;
}

.faq-box {
	margin: 30px 0 0 0;
	transition: all 1s;
}

.faq-box h4 {
	font-size: 22px;
	margin-bottom: 10px;
}

.faq-box h5 {
	margin-bottom: 7px;
}

.faq-box p {
	color: #7c8595;
}

/* Features */
.feature-box {
	overflow: hidden;
	margin: 40px 0 0 0;
}

.feature-box i {
	float: left;
	font-size: 50px;
	line-height: 50px;
	width: 55px;
	height: 55px;
	text-align: center;
	color: #50a0d2;
}

.feature-box.light-blue i {
	color: #ce2d1f;
}

.feature-box.dark-blue i {
	color: #3473b8;
}

.feature-box.light-green i {
	color: #ce2d1f;
}

.feature-box.dark-green i {
	color: #87ac34;
}

.feature-box.orange i {
	color: #ce2d1f;
}

.feature-box.light-red i {
	color: #fc6a3f;
}

.feature-box.pink i {
	color: #ea4c89;
}

.feature-box-text {
	float: left;
	width: 75%;
	margin-left: 30px;
}

.feature-box h4 {
	font-size: 20px;
	margin-bottom: 10px;
}

.feature-box p {
	color: #7c8595;
}

/* ========================================================== */
/* 						   07. PORTFOLIO                      */
/* ========================================================== */

.gallery-insta {
	margin: 0 !important;
}

.gallery-insta img {
	border-radius: 0 !important;
	padding: 5px 5px;
}

p.follow-instagram a {
	color: #e52f37;
}

.popup-wrapper {
	display: block;
	position: relative;
	overflow: hidden;
}

.popup-gallery {
	display: inline-block;
	position: relative;
}

.popup-gallery img {
	position: relative;
	z-index: 10;
	width: 100%;
	height: auto;
	-webkit-border-radius: 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0;
	border-radius: 5px 5px 0 0;
}

.popup-gallery:hover img {
	opacity: 0.25;
}

.popup-gallery a span.eye-wrapper,
.popup-gallery a span.eye-wrapper2 {
	background-color: #e52f37;
	position: absolute;
	display: block;
	overflow: hidden;
	z-index: 2;
	width: 90%;
	height: 90% !important;
	top: 5%;
	left: 5%;
	font-size: 22px;
	color: #fff;
	text-align: center;
	font-weight: 300;
	opacity: 0;
}

.popup-gallery a span.eye-wrapper i.eye-icon,
.popup-gallery a span.eye-wrapper2 i.eye-icon {
	position: absolute;
	display: inline-block;
	font-size: 36px;
	z-index: 3;
	top: 50% !important;
	margin-top: -18px !important;
	left: 0%;
	right: 0%;
}

.popup-gallery a:hover span {
	opacity: 1;
}

.popup-gallery img,
.popup-gallery a span {
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.gallery-item {
	margin-bottom: 37px;
}

/* ========================================================== */
/* 			               08. PRICING                        */
/* ========================================================== */

.price-box-white {
	text-align: center;
	background-color: #fff;
	border: 1px solid #dde9fb;
	box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05);
	padding: 50px 20px;
	width: 90%;
	margin-top: 30;
	margin-bottom: 20px;
	margin-left: 20px;
	border-radius: 8px 8px;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
}

.price-box-grey {
	text-align: center;
	background: #e52f37;
	border: 2px solid #e52f37;
	box-shadow: 10px 12px 40px rgba(0, 0, 0, 0.2);
	padding: 50px 20px;
	width: 90%;
	margin-top: 30;
	margin-bottom: 20px;
	margin-left: 20px;
	border-radius: 8px 8px;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
}

.price-box-grey:hover,
.price-box-white:hover {
	transform: scale(1.03, 1.03);
	-ms-transform: scale(1.03, 1.03);
	/* IE 9 */
	-webkit-transform: scale(1.03, 1.03);
	/* Safari */

	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
}

.price-box-white .price-title,
.price-box-white ul.pricing-list li.price-value {
	color: #292929;
}

.price-box-grey .price-title,
.price-box-grey ul.pricing-list li.price-value {
	color: #fff;
}

.price-box-white .price-subtitle,
.price-box-white .price-text {
	color: #6a6a6a;
}

.price-box-grey .price-subtitle,
.price-box-grey .price-text {
	color: #fff;
}

ul.pricing-list li.price-title {
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: 500;
	letter-spacing: 1px;
}

ul.pricing-list li.price-value {
	font-family: 'Roboto', sans-serif;
	font-size: 70px;
	line-height: 70px;
	display: block;
	margin-top: 20px;
	margin-bottom: 10px;
}

ul.pricing-list li.price-subtitle {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
}

ul.pricing-list li.price-text {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	line-height: 28px;
	font-weight: 400;
	margin-bottom: 5px;
}

ul.pricing-list li.price-tag a {
	color: #e52f37;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 23px 23px;
	padding: 15px 30px;
	display: inline-block;
	font-size: 14px;
	line-height: 24px;
	font-weight: 600;
	margin: 40px 0 30px 0;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
}

ul.pricing-list li.price-tag a:hover {
	background: transparent;
	border: 1px solid #fff;
	color: #fff;
}

/* ========================================================== */
/* 			                 09. CONTACT                      */
/* ========================================================== */

.contact-form-wrapper {
	margin-top: 25px;
}

.contact-form-wrapper h3 {
	margin-bottom: 5px;
	font-size: 24px;
	font-weight: 500;
}

.contact-form-wrapper p {
	margin-bottom: 25px;
	font-size: 17px;
}

input.contact-input,
select.contact-input {
	width: 100%;
	height: 56px;
	padding-left: 2%;
	padding-right: 2%;
	margin-bottom: 15px;
	color: #fff;
	border: 2px solid #fff;
	background-color: transparent;
	font-size: 16px;
	-webkit-border-radius: 5px 5px;
	-moz-border-radius: 5px 5px;
	border-radius: 5px 5px;
}

textarea {
	height: 145px;
	margin-bottom: 12px;
	width: 100%;
	padding-left: 2%;
	padding-right: 2%;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #fff;
	background-color: transparent;
	border: 2px solid #fff;
	font-size: 16px;
	-webkit-border-radius: 5px 5px;
	-moz-border-radius: 5px 5px;
	border-radius: 5px 5px;
}

input.contact-submit {
	background: #fff;
	border: none;
	color: #e52f37;
	letter-spacing: 1px;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	width: 100%;
	max-width: 300px;
	padding: 20px 0;
	text-transform: uppercase;
	-webkit-border-radius: 3px 3px;
	-moz-border-radius: 3px 3px;
	border-radius: 3px 3px;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

input.contact-submit:hover {
	background: #eaeaea;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

input.contact-input::-webkit-input-placeholder,
textarea.contact-input::-webkit-input-placeholder {
	/* WebKit browsers */
	color: #fff;
}

input.contact-input:-moz-placeholder,
textarea.contact-input:-moz-placeholder {
	/* Mozilla Firefox 4 to 18 */
	color: #fff;
}

input.contact-input::-moz-placeholder,
textarea.contact-input::-moz-placeholder {
	/* Mozilla Firefox 19+ */
	color: #fff;
}

input.contact-input:-ms-input-placeholder,
textarea.contact-input:-ms-input-placeholder {
	/* Internet Explorer 10+ */
	color: #fff;
}

#contact-form input.contact-input:focus,
#contact-form textarea:focus {
	border-color: #fff !important;
	color: #fff !important;
	outline: none;
}

#contact-form select.contact-input:focus {
	border-color: #fff !important;
	color: #454545 !important;
	outline: none;
}

p.contact_success_box {
	display: inline-block;
	color: #fff;
	border: 1px solid #eee;
	padding: 25px 25px;
	font-size: 19px;
	text-shadow: none;
	font-style: italic;
	border-radius: 8px 8px;
	margin: 15px 0;
}

/* ========================================================== */
/* 			               11. OTHER ELEMENTS                 */
/* ========================================================== */

/* a) Buttons */
.btn-white {
	font-family: 'Nunito', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 700;
	color: #1e90ff;
	background-color: #ffffff;
	border: 1px solid #fff;
	box-shadow: 0px 8px 40px 0 rgba(0, 0, 0, 0.37);
	border-radius: 23px 23px;
	margin: 10px 10px;
	padding: 16px 26px;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.btn-white:hover {
	box-shadow: 0px 4px 10px 0 rgba(0, 0, 0, 0.5);
	color: #1e90ff !important;
	background: #f9f9f9;
}

.btn-white-border {
	color: #fff;
	background: transparent;
	font-family: 'Nunito', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 700;
	border: 1px solid #fff;
	border-radius: 23px 23px;
	margin: 10px 10px;
	padding: 16px 26px;
	display: inline-block;
	box-shadow: 0px 8px 40px 0 rgba(0, 0, 0, 0.37);
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.btn-white-border:hover {
	box-shadow: 0px 4px 10px 0 rgba(0, 0, 0, 0.5);
	color: #e52f37 !important;
	background: #f9f9f9;
}

.btn-white i,
.btn-white-border i {
	font-size: 22px;
	line-height: 22px;
	margin-right: 10px;
	vertical-align: text-top;
}

.btn-blue {
	font-family: 'Nunito', sans-serif;
	font-size: 17px;
	background: linear-gradient(90deg, #1e90ff, #4facfe);
	color: #fff !important;
	padding: 15px 40px;
	border-radius: 50px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
	box-shadow: 0 5px 15px rgba(30, 144, 255, 0.3);
	transition: all 0.3s ease;
	border: none;
	display: inline-block;
}

.btn-blue:hover {
	transform: scale(1.05);
	box-shadow: 0 8px 25px rgba(30, 144, 255, 0.5);
	color: #fff;
}

.btn-red {
	font-family: 'Nunito', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	background-color: #ec1d25;
	border: 1px solid #ec1d25;
	box-shadow: 0px 5px 20px 0 rgba(0, 0, 0, 0.27);
	letter-spacing: 1px;
	border-radius: 23px 23px;
	margin: 5px 10px 10px 0;
	padding: 18px 25px;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.btn-red:hover {
	box-shadow: 0px 4px 10px 0 rgba(0, 0, 0, 0.5);
	color: #fff !important;
	background: #e52f37;
}

.btn-blue.small,
.btn-blue-line.small,
.btn-red.small,
.btn-red-line.small,
.btn-white.small,
.btn-white-border.small {
	font-size: 16px;
	padding: 14px 20px;
}

.btn-red-line {
	font-family: 'Nunito', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 600;
	color: #e52f37;
	background-color: #fff;
	border: 1px solid #e52f37;
	border-radius: 23px 23px;
	margin: 15px 10px 0 0;
	padding: 20px 30px;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.btn-red-line:hover {
	color: #fff !important;
	background: #e52f37;
}

a.btn-red:visited,
a.btn-red:focus {
	color: #fff !important;
}


/* b) Testimonials - Accordion Tabs */
.card {
	position: relative;
	margin: 20px 0;
	border: none;
	background-color: #fff !important;
	box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
}

.card-header {
	max-width: 100%;
	position: relative;
	padding: 15px 25px;
	margin-bottom: 0;
	background-color: transparent;
	border-bottom: none;
	border-left: 6px solid #ce2d1f;
}

.card-header h5 .btn-link p {
	font-family: 'Nunito', sans-serif;
	margin-top: 15px;
	padding: 0;
	font-size: 18px;
	font-weight: 700;
	color: #000000;
	text-align: left !important;
	background-color: transparent;
}

.card-header h5 .btn-link p span {
	font-size: 17px;
	color: #ce2d1f;
}

.card-header h5 .btn-link:hover,
.card-header h5 .btn-link:focus {
	text-decoration: none;
}

.card-body {
	padding: 20px 25px 5px 25px;
	border-top: none;
	border-left: 6px solid #ce2d1f;
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	color: #7c8595;
	font-style: italic;
}

img.testim-img {
	float: left;
	margin-right: 15px;
	max-width: 65px;
	border-radius: 50%;
}

p.testim-name {
	display: inline-block;
}

.testim-rating {
	margin-bottom: 30px;
}

.testim-rating i {
	color: #fdcc28;
}

.testim-platform.first {
	display: block;
	border-right: 1px solid #cecece;
}

.testim-platform p {
	margin-bottom: 5px;
	font-weight: bold;
	color: #000000;
}

/* c) Benefits List */
ul.benefits {
	margin-bottom: 20px;
}

ul.benefits li {
	font-size: 17px;
	line-height: 26px;
	margin-bottom: 8px;
}

ul.benefits.white li {
	color: #fff;
}

ul.benefits li i {
	font-size: 18px;
	line-height: 18px;
	margin-right: 1px;
	color: #e52a3d;
}

ul.benefits.white li i {
	color: #fff;
}

.no-padding-bottom {
	padding-bottom: 0;
}

/* ----- d) Fun Facts ----- */
.fun-facts-boxs {
	display: inline-block;
	width: 19%;
	padding: 10px 10px;
}

.fun-facts-title {
	font-size: 16px;
	font-weight: 400;
	color: #fff;
}

.fun-facts-title span {
	font-size: 28px;
	line-height: 40px;
	font-weight: 600;
	font-style: normal;
	color: #fff;
}

.fun-facts-box i {
	font-size: 45px;
	line-height: 60px;
	color: #fff;
}

/* ----- e) Dropcaps Features ----- */
.nav-pills .nav-link {
	margin-bottom: 10px;
}

.nav-pills .nav-link,
.nav-pills .show>.nav-link {
	border: none !important;
	transition: all 1s;
}

.nav-pills .nav-link:hover {
	color: #fff;
	background-color: #fff;
	border: none !important;
	border-radius: 8px !important;
	box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	-moz-box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	-webkit-box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	transition: all 1s;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
	color: #fff;
	background-color: #fff;
	border: 1px solid #f4f5f6 !important;
	border-radius: 8px !important;
	box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	-moz-box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	-webkit-box-shadow: 0 12px 55px 0 rgba(0, 0, 0, .05) !important;
	transition: all 1s;
}

.features-second {
	margin: 10px 0;
}

.features-second h4 {
	margin-top: 10px;
	font-size: 21px;
}

.features-second p {
	margin-bottom: 10px;
}

.dropcaps-circle {
	float: left;
	margin: 1px 25px 10px 0;
	background-color: #fcfcfc;
	border: 1px solid #eaeaea;
	width: 80px;
	height: 80px;
	text-align: center;
	vertical-align: middle;
	color: #017df7;
	font-size: 40px;
	line-height: 80px;
	position: relative;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

.dropcaps-circle.blue {
	color: #1e90ff;
}

.dropcaps-circle.red {
	color: #e52f37;
}

.dropcaps-circle.green {
	color: #2745B3;
}

input[type="submit"] {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

form {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="submit"] {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.button-wrapper {
	display: inline-block;
	position: relative;
	box-sizing: border-box;
}

/* Basic Button Styles */
input[type="submit"].bottone {
	width: 360px;
	height: 60px;
	/* Set height to 60px */
	font-family: 'Nunito', sans-serif;
	font-size: 17px;
	/* Round the button edges */
	padding: 15px;
	transition: all 0.3s ease-in-out;
	z-index: 5;
	position: relative;
	background: linear-gradient(90deg, #1e90ff, #4facfe);
	color: #fff !important;
	padding: 15px 40px;
	border-radius: 50px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
	box-shadow: 0 5px 15px rgba(30, 144, 255, 0.3);
	transition: all 0.3s ease;
	border: none;
	display: inline-block;
	cursor: pointer;
}


/* Pseudo-element for the border effect */
.button-wrapper::after {
	content: '';
	position: absolute;
	top: 0px;
	left: -5px;
	width: calc(100% + 10px);
	/* Extends beyond the button */
	height: calc(60px + 10px);
	border-radius: 55px;
	/* Round corners */
	border: 6px solid #4ba1f7;
	/* The animated border color */
	opacity: 0;
	transition: all 0.3s ease-in-out;
	transform: translateY(-5px);
	/* Slightly lift the button */
	pointer-events: none;
}

/* Reveal the border animation on hover */
.button-wrapper:hover::after,
.button-wrapper:focus::after {
	opacity: 1;
	box-shadow: 0px 0px 12px 6px #004283;
	/* Add border-like shadow on hover */
}

/* Optionally, we can add an additional ring animation to the button using a pseudo-element */
.button-wrapper::before {
	content: '';
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 6px solid #2994ff;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation: ring 1.2s infinite;
	pointer-events: none;
}

/* Ring animation keyframes */
@keyframes ring {
	0% {
		width: 30px;
		height: 30px;
		opacity: 1;
	}

	100% {
		width: 300px;
		height: 300px;
		opacity: 0;
	}
}

.logo {
	height: 75px;
}

/* ========================================================== */
/* 			             11. MEDIA QUERIES                    */
/* ========================================================== */

@media (max-width: 991px) {

	.navbar-fixed-top.opaque {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.navbar-fixed-top .navbar-nav>li.discover-link {
		margin-top: 10px;
	}

	.navbar-fixed-top .navbar-nav>li>a.discover-btn {
		padding: 8px 12px !important;
		margin-left: 20px;
		font-size: 17px !important;
	}

	.home-section {
		padding-top: 170px;
		padding-bottom: 70px;
		background-attachment: inherit;
	}

	.home-section h1 {
		font-size: 38px;
		line-height: 44px;
	}

}

@media (max-width: 768px) {

	.navbar-fixed-top {
		background-color: #fff;
	}

	.home-section {
		padding-top: 65px;
		padding-bottom: 90px;
		background-attachment: inherit;
	}



	.footer {
		padding-top: 40px;
		text-align: center;
	}

	.footer-top i {
		display: block;
		margin-top: 50px !important;
	}

	ul.footer_social {
		margin-top: 15px;
		float: none;
	}

	ul.footer_social li a i {
		margin: 0 8px !important;
	}

	.partners-section {
		padding: 40px 0;
	}

	.partners {
		text-align: center;
	}

	.partners-title {
		font-size: 18px;
		line-height: 30px;
		float: none !important;
		margin-right: 30px;
	}

	.testim-inner {
		margin-top: 40px;
		margin-bottom: 40px;
	}

	.top-margins-images {
		margin-top: 50px;
	}

	.bottom-margins-images {
		margin-bottom: 50px;
	}

	.section-bg-1,
	.section-bg-2,
	.section-bg-3 {
		background-attachment: inherit;
	}

}

@media (max-width: 375px) {

	.navbar-toggle {
		border: 1px solid #9f9f9f !important;
	}

	.home-section {
		padding-top: 65px;
		padding-bottom: 70px;
	}

	.home-section h1 {
		font-size: 38px;
		line-height: 44px;
	}

	.card {
		box-shadow: none;
	}

	.card-header h5 .btn-link {
		font-size: 16px;
		clear: left;
	}

	.card-header h5 .btn-link p {
		margin-top: 7px;
	}

	.card-header h5 .btn-link p span {
		display: block;
		font-size: 15px;
	}

	.section-white {
		padding: 60px 0 70px 0 !important;
	}

	.section-white.small-padding-bottom,
	.section-grey.small-padding-bottom {
		padding: 60px 0 50px 0 !important;
	}

	.margin-left-20 {
		margin-left: 1px !important;
	}

	.services-wrapper {
		margin-top: 30px;
	}

	.small-col-inside {
		margin: 50px 0;
		padding-right: 25px;
		padding-left: 25px;
	}

	.partners img.partners {
		margin: 10px 25px 10px 0;
		max-height: 40px;
	}

	.feature-box {
		text-align: center;
	}

	.feature-box i {
		display: inline-block;
		float: none;
		margin-bottom: 25px;
	}

	.feature-box-text {
		width: 100%;
		margin-left: 0;
	}

}

/* ========================================================== */
/* 			         12. PREMIUM REDESIGN (NEW)               */
/* ========================================================== */

/* Keeping original background, so we just reset positioning context */
.premium-section {
	position: relative;
	overflow: hidden;
	/* Removed dark gradient and text color overrides */
}

/* Removed abstract shapes ::before to keep it clean as requested */

.premium-section .section-title,
.premium-section .section-subtitle {
	/* Revert to default/dark colors since background is light */
	color: inherit !important;
}

.premium-section .section-title span {
	color: #e52f37 !important;
}

.premium-card {
	background: #ffffff;
	/* White card for contrast on grey */
	border: 1px solid #eaeaea;
	/* Light border */
	border-radius: 24px;
	padding: 40px 30px;
	text-align: center;
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	/* Soft, clean shadow */
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: 30px;
}

.premium-card:hover {
	transform: translateY(-15px);
	border-color: rgba(229, 47, 55, 0.3);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1),
		0 0 15px rgba(229, 47, 55, 0.1);
}

/* Icon Container */
.premium-icon-box {
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: linear-gradient(135deg, #ffffff, #f9f9f9);
	border: 1px solid #eaeaea;
	margin-bottom: 25px;
	font-size: 36px;
	color: #e52f37;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
	transition: all 0.4s ease;
}

.premium-card:hover .premium-icon-box {
	background: linear-gradient(135deg, #e52f37, #ff6b6b);
	color: #fff;
	transform: rotateY(180deg) scale(1.1);
	box-shadow: 0 10px 20px rgba(229, 47, 55, 0.3);
}

.premium-icon-box i {
	transition: all 0.3s;
}

.premium-card:hover .premium-icon-box i {
	transform: rotateY(-180deg);
}

.premium-card h4 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 15px;
	color: #252525;
	/* Dark text */
	letter-spacing: 0.5px;
	text-transform: uppercase;
}

.premium-card p {
	font-size: 16px;
	line-height: 1.6;
	color: #555555;
	/* Medium dark text */
	margin-bottom: 0;
}

/* Button Update */
.btn-premium-glow {
	background: linear-gradient(90deg, #1e90ff, #4facfe);
	color: #fff !important;
	padding: 15px 40px;
	border-radius: 50px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
	box-shadow: 0 5px 15px rgba(30, 144, 255, 0.3);
	transition: all 0.3s ease;
	border: none;
	display: inline-block;
}

.btn-premium-glow:hover {
	transform: scale(1.05);
	box-shadow: 0 8px 25px rgba(30, 144, 255, 0.5);
	color: #fff;
}

/* ========================================================== */
/* images         13. COMPANY SECTION REDESIGN             */
/* ========================================================== */

.premium-video-frame {
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
	border: 5px solid #fff;
	transition: transform 0.4s ease;
}

.premium-video-frame:hover {
	transform: scale(1.02);
	box-shadow: 0 25px 60px rgba(229, 47, 55, 0.2);
}

.premium-headline {
	font-size: 36px;
	font-weight: 800;
	margin-bottom: 25px;
	background: -webkit-linear-gradient(45deg, #333, #e52f37);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	text-transform: uppercase;
	letter-spacing: -1px;
}

.premium-list {
	margin: 25px 0;
	padding-left: 0;
}

.premium-list li {
	position: relative;
	padding-left: 45px;
	margin-bottom: 15px;
	font-size: 18px;
	color: #555;
	font-weight: 600;
	list-style: none;
}

.premium-list li i {
	position: absolute;
	left: 0;
	top: 2px;
	width: 30px;
	height: 30px;
	background: linear-gradient(135deg, #e52f37, #ff6b6b);
	color: #fff;
	border-radius: 50%;
	text-align: center;
	line-height: 30px;
	font-size: 14px;
	box-shadow: 0 4px 10px rgba(229, 47, 55, 0.3);
}

.content-lead {
	font-size: 18px;
	line-height: 1.8;
	color: #444;
	margin-bottom: 30px;
}

/* ========================================================== */
/* images         14. ARTICLE SECTION REDESIGN             */
/* ========================================================== */

.premium-article-box {
	background: #fff;
	padding: 60px;
	border-radius: 20px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05);
	border: 1px solid #eee;
	text-align: left;
	/* Ensure text is left aligned */
	transition: transform 0.3s ease;
}

.premium-article-box:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
}

.premium-article-title {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #222;
	position: relative;
	padding-bottom: 15px;
}

.premium-article-title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 60px;
	height: 4px;
	background: #e52f37;
	border-radius: 2px;
}

.premium-article-subtitle {
	font-size: 24px;
	font-weight: 600;
	margin-top: 30px;
	margin-bottom: 15px;
	color: #333;
}

.premium-article-text {
	font-size: 17px;
	line-height: 1.8;
	color: #555;
	margin-bottom: 20px;
}

.premium-related-links {
	margin-top: 50px;
	padding-top: 25px;
	border-top: 1px solid #eee;
	font-size: 16px;
	color: #777;
	font-style: italic;
}

.premium-related-links a {
	color: #e52f37;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.2s;
}

.premium-related-links a:hover {
	color: #333;
	text-decoration: underline;
}

@media (max-width: 768px) {
	.premium-article-box {
		padding: 30px;
	}

	.premium-article-title {
		font-size: 26px;
	}
}

/* ========================================================== */
/* images         15. FUN FACTS REDESIGN                   */
/* ========================================================== */

.premium-facts-box {
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 16px;
	padding: 30px 20px;
	margin-bottom: 30px;
	transition: all 0.3s ease;
	text-align: center;
}

.premium-facts-box:hover {
	background: rgba(255, 255, 255, 0.2);
	transform: translateY(-10px);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}

.premium-facts-icon {
	font-size: 42px;
	color: #fff;
	margin-bottom: 15px;
	display: inline-block;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.premium-facts-number {
	font-size: 48px;
	font-weight: 800;
	color: #fff;
	display: block;
	line-height: 1;
	margin-bottom: 5px;
	text-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.premium-facts-title {
	font-size: 16px;
	color: rgba(255, 255, 255, 0.9);
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 1px;
	margin-bottom: 0;
}

/* Specific styling for overlay to ensure contrast */
.section-bg-overlay {
	background: linear-gradient(135deg, rgba(206, 45, 31, 0.95), rgba(0, 0, 0, 0.8));
}

/* ========================================================== */
/* images         16. PORTFOLIO / PRODUCTS REDESIGN        */
/* ========================================================== */

.premium-gallery-item {
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
	border-radius: 15px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
	transition: all 0.4s ease;
	cursor: pointer;
}

.premium-gallery-item img {
	transition: transform 0.6s cubic-bezier(0.2, 1, 0.2, 1);
	width: 100%;
	display: block;
}

.premium-gallery-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(229, 47, 55, 0.9), rgba(229, 47, 55, 0.4));
	opacity: 0;
	transition: all 0.4s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.premium-gallery-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 35px rgba(229, 47, 55, 0.2);
}

.premium-gallery-item:hover img {
	transform: scale(1.1);
}

.premium-gallery-item:hover .premium-gallery-overlay {
	opacity: 1;
}

.premium-eye-icon {
	font-size: 30px;
	color: #fff;
	transform: scale(0);
	transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.1s;
}

.premium-gallery-item:hover .premium-eye-icon {
	transform: scale(1);
}

/* Specific button override if needed for this section */
#portfolio .btn-premium-glow {
	margin-top: 20px;
}

/* Adjustments for images with white backgrounds */
.premium-gallery-item {
	background: #fff;
	/* Ensure white background behind image */
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	/* Add some padding to frame the product */
	aspect-ratio: 1 / 1;
	/* Force square aspect ratio for grid consistency */
}

.premium-gallery-item img {
	width: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	/* Ensure detailed product is fully visible */
}

/* Update column spacing for the masonry-like layout */
.gallery-column {
	padding: 0 15px;
}

/* Specialized height for the central tall item */
.premium-gallery-item.tall-item {
	aspect-ratio: auto;
	/* Remove the square constraint */
	height: 96%;
	/* Take full available height of the column/container */
	min-height: 500px;
	/* Ensure it is significantly taller */
}

/* Ensure images in tall items fit well */
.premium-gallery-item.tall-item img {
	height: auto;
	max-height: 90%;
	width: auto;
	max-width: 100%;
}

/* ========================================================== */
/* images         17. REMAINING SECTIONS REDESIGN          */
/* ========================================================== */

/* FEATURES SECTION */
.premium-feature-box {
	background: #fff;
	border-radius: 12px;
	padding: 30px 20px;
	margin-bottom: 30px;
	border: 1px solid #f0f0f0;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	height: 100%;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.premium-feature-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0%;
	height: 100%;
	background: #e52f37;
	z-index: -1;
	transition: width 0.3s ease;
}

.premium-feature-box:hover::before {
	width: 100%;
}

.premium-feature-box:hover {
	transform: translateY(-8px);
	box-shadow: 0 15px 30px rgba(229, 47, 55, 0.2);
	border-color: #e52f37;
}

.premium-feature-icon-wrapper {
	width: 70px;
	height: 70px;
	background: #f9f9f9;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	color: #e52f37;
	margin-bottom: 20px;
	transition: all 0.3s ease;
}

.premium-feature-box:hover .premium-feature-icon-wrapper {
	background: #fff;
	color: #e52f37;
	transform: scale(1.1) rotate(10deg);
}

.premium-feature-box:hover h4,
.premium-feature-box:hover p {
	color: #fff;
}

.premium-feature-box h4 {
	font-weight: 700;
	margin-bottom: 15px;
	transition: color 0.3s ease;
}

.premium-feature-box p {
	color: #666;
	font-size: 15px;
	line-height: 1.6;
	transition: color 0.3s ease;
}

/* TEAM SECTION */
.premium-team-item {
	background: #fff;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
	overflow: hidden;
	transition: transform 0.3s ease;
}

.premium-team-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.premium-team-img {
	transition: filter 0.3s ease;
}

.premium-team-item:hover .premium-team-img {
	filter: contrast(1.1);
}

.premium-team-info {
	padding: 20px;
	text-align: center;
}

.premium-team-info h3 {
	margin: 0 0 5px 0;
	font-size: 20px;
	font-weight: 700;
	color: #333;
}

.premium-team-role {
	color: #e52f37;
	font-weight: 600;
	font-size: 14px;
	text-transform: uppercase;
}

/* FAQ SECTION */
.premium-faq-box {
	background: #fff;
	border: 1px solid #eee;
	padding: 25px;
	margin-bottom: 20px;
	border-radius: 10px;
	border-left: 4px solid #e52f37;
	transition: all 0.3s ease;
}

.premium-faq-box:hover {
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
	transform: translateX(5px);
}

.premium-faq-box h5 {
	font-weight: 700;
	color: #222;
	margin-bottom: 15px;
}

.premium-faq-box p {
	color: #555;
	font-size: 15px;
	margin-bottom: 0;
}

/* Call to Action Sections (bg-2) */
.premium-cta-text h2.white-text {
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.btn-white.premium-cta-btn {
	border-radius: 50px;
	font-weight: 700;
	padding: 15px 40px;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease;
}

.btn-white.premium-cta-btn:hover {
	transform: scale(1.05);
	background: #f0f0f0;
	color: #e52f37;
}