/*
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:#000;
	font-size: 14px;
	line-height:24px;
	margin-bottom:20px;
}

ul li, ol li{
	font-size: 17px;
	line-height: 28px;
	font-family: 'Plus Jakarta 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: #000;
	margin-bottom:20px;
	font-family: 'Plus Jakarta Sans', sans-serif;
}

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

a:hover{
	color: #09d640;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Plus Jakarta Sans', sans-serif;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom:20px;
  color: #000;
  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(https://www.gfconsulting.it/wp-content/uploads/2025/09/temporary.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(https://www.gfconsulting.it/wp-content/uploads/2025/09/temporary.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(https://www.gfconsulting.it/wp-content/uploads/2025/09/temporary.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: #003a86;
	opacity: 0.95;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

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

.section-grey{
	background: #f0f0f0;
	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: 'Plus Jakarta Sans', 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 #fff;
}

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

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

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

.navbar-fixed-top.opaque {
	position: fixed!important;
	top: 0;
	margin-top: 0;
	background-color: #000!important;
	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:#fff;
	font-size: 17px !important;
	line-height: 30px !important;
	padding: 10px 15px!important;
	font-family: 'Plus Jakarta Sans', sans-serif;
	font-weight: 600;
}

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

.navbar-fixed-top .navbar-nav > li > a:hover{
	background-color: #003a86;
	-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 {
	background-color: #003a86;
     -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 #c00418;
	color: #fff!important;
	background:#c00418;
	border-radius: 5px;
	padding: 12px 18px!important;
	margin-left: 10px;
	margin-right: 15px;
	font-family: 'Plus Jakarta Sans', 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.opaque .navbar-nav > li > a.discover-btn {
	color: #fff!important;
	background: #c00418;
	border: 1px solid #c00418;
     -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}


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

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

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

.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(https://www.gfconsulting.it/wp-content/uploads/2025/09/temporary.jpg) top center no-repeat; /* 1920 x 1150 */
	background-size: cover;
}

.home-section-overlay{
	width: 100%;
	background: #000;
	opacity: 0.55;
	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: ;
	border-radius: 5px 5px;
}

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

.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;
    max-height: 100px;
    -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: #e52f37;
}

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

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

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: #50a0d2;
}

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

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

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

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

.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: 'Plus Jakarta Sans', sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: 500;
	letter-spacing: 1px;
}

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

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

ul.pricing-list li.price-text{
	font-family: 'Plus Jakarta 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: 'Plus Jakarta Sans', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 700;
	color: #c00418 !important;
	background-color: #ffffff;
	border: 1px solid #fff;
    box-shadow: 0px 8px 40px 0 rgba(0, 0, 0, 0.37);
	border-radius: 5px;
	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: #c00418!important;
	background:#f9f9f9;
}

.btn-white-border {
	color: #fff;
	background: transparent;
	font-family: 'Plus Jakarta Sans', 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: 'Plus Jakarta Sans', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	background-color: #1e90ff;
	border: 1px solid #1e90ff;
    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-blue:hover{
	box-shadow: 0px 4px 10px 0 rgba(0, 0, 0, 0.5);
	color: #fff!important;
	background:#1e90ff;
}

.btn-red {
	font-family: 'Plus Jakarta Sans', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	background-color: #c00418;
	border: 1px solid #c00418;
    box-shadow: 0px 5px 20px 0 rgba(0, 0, 0, 0.27);
    letter-spacing: 1px;
	border-radius: 5px;
	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:#c00418;
}

.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: 'Plus Jakarta Sans', sans-serif;
	font-size: 18px;
	line-height: 22px;
	font-weight: 600;
	color: #c00418;
	background-color: #fff;
	border: 1px solid #c00418;
	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:#c00418;
}

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 #003a86;
}

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

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

.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 #003a86;
    font-family: 'Plus Jakarta 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: #071e55;
}

/* 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: #003a86;
}

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 {
		position: relative;
		box-sizing: border-box;
	  }
	  
	  /* Basic Button Styles */
	  input[type="submit"].bottone {
		width: 100%;
		height: 60px; /* Set height to 60px */
		font-family: 'Plus Jakarta Sans', sans-serif;
		font-size: 17px; /* Adjust font size to 15px */
		font-weight: 700;
		text-align: center;
		color: #fff;
		background: #c00418;
		border: none;
		border-radius: 5px; /* Round the button edges */
		padding: 15px;
		transition: all 0.3s ease-in-out;
		cursor: pointer;
		outline: none;
		position: relative;
		box-sizing: border-box;
		letter-spacing: 3px;
		z-index: 1;
	  }

	  
	  /* 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: 10px; /* Round corners */
		border: 6px solid #ea051c; /* The animated border color */
		opacity: 0;
		transition: all 0.3s ease-in-out;
		transform: translateY(-5px); /* Slightly lift the button */
	  }
	  
	  /* Reveal the border animation on hover */
	  .button-wrapper:hover::after,
	  .button-wrapper:focus::after {
		opacity: 1;
		box-shadow: 0px 0px 12px 6px rgb(113, 23, 27); /* 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 #c00418;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		animation: ring 1.35s infinite;
	  }
	  
	  /* Ring animation keyframes */
	  @keyframes ring {
		0% {
		  width: 30px;
		  height: 30px;
		  opacity: 1;
		}
		100% {
		  width: 260px;
		  height: 260px;
		  opacity: 0;
		}
	  }

	  .logo{
		height: 75px;
	  }
	
/* ========================================================== */
/* 			             11. MEDIA QUERIES                    */
/* ========================================================== */

@media (max-width: 1200px) {
	
	input[type="submit"].bottone {
		width: 100%;
		font-size: 16px;
		
	  }
}

@media (max-width: 991px) {

	input[type="submit"].bottone {
		font-size: 8px; /* Adjust font size to 15px */
	  }

	.logo{
		height: 50px;
	  }


	.button-wrapper::after {
		top: 0px;
		left: -5px;
		width: calc(100% + 10px); /* Extends beyond the button */
		height: calc(60px + 10px);
	  }

	.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) {


	input[type="submit"].bottone{
		font-size: 16px;
	}

	.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;
	}

}



 /* ===== GF Consulting – Modern Section ===== */
    .gf-modern {
      --bg: #f6f7f9;
      --card: #ffffff;
      --muted: #6b7280;
      --text: #111827;
      --accent: #003a86;   /* rosso GF */
      --accent-2: #003a86;
      --radius-xl: 22px;
      --radius-lg: 16px;
      --shadow: 0 10px 30px rgba(0,0,0,.08);
      --shadow-hover: 0 18px 40px rgba(0,0,0,.12);
      background: radial-gradient(1200px 600px at 10% -10%, #ffffff 0%, var(--bg) 50%),
                  radial-gradient(1000px 500px at 110% 10%, #ffffff 0%, var(--bg) 60%);
      padding: 96px 0 72px;
      font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    }

    .gf-modern .container { max-width: 1180px; }

    /* Heading */
    .gf-modern .section-title {
      color: var(--text);
      font-weight: 800;
      font-size: clamp(28px, 3vw, 36px);
      letter-spacing: .2px;
      margin-bottom: 16px;
    }
    .gf-modern .section-title span { color: var(--accent); }

    .gf-modern .section-subtitle {
      max-width: 900px;
      margin: 0 auto;
      color: var(--muted);
      font-size: clamp(16px, 1.8vw, 18px);
      line-height: 1.75;
    }

    /* Divider pill */
    .gf-divider {
      width: max-content;
      margin: 14px auto 36px;
      padding: 6px 14px;
      font-size: 13px;
      color: var(--accent);
      background: rgba(181,31,31,.08);
      border: 1px solid rgba(181,31,31,.18);
      border-radius: 999px;
      letter-spacing: .4px;
      text-transform: uppercase;
      font-weight: 700;
    }

    /* Cards grid */
    .gf-grid {
      display: grid;
      gap: 26px;
      margin-top: 44px;
      grid-template-columns: 1fr;
    }
    @media (min-width: 768px) { .gf-grid { grid-template-columns: repeat(3, 1fr); } }

    .gf-card {
      position: relative;
      background: linear-gradient(180deg, var(--card), #f9fafb);
      border: 1px solid #eef0f3;
      border-radius: var(--radius-xl);
      box-shadow: var(--shadow);
      padding: 28px 26px;
      min-height: 260px;
      overflow: hidden;
      transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
      isolation: isolate;
    }
    .gf-card:before {
      content: "";
      position: absolute;
      inset: -30% -10% auto auto;
      height: 160px; width: 160px;
      background: radial-gradient(90px 90px at 70% 30%, rgba(181,31,31,.18), transparent 70%);
      filter: blur(8px);
      z-index: -1;
      transform: rotate(12deg);
    }
    .gf-card:hover {
      transform: translateY(-6px);
      box-shadow: var(--shadow-hover);
      border-color: rgba(181,31,31,.25);
    }

    .gf-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 52px; height: 52px;
      border-radius: 14px;
      background: linear-gradient(180deg, rgba(181,31,31,.12), rgba(181,31,31,.06));
      color: var(--accent);
      box-shadow: inset 0 -1px 0 rgba(255,255,255,.7), 0 6px 16px rgba(181,31,31,.18);
      margin-bottom: 14px;
      font-size: 22px;
    }

    .gf-card h4 {
      font-size: 20px;
      font-weight: 800;
      color: var(--text);
      margin: 8px 0 10px;
      letter-spacing: .2px;
    }
    .gf-card p {
      color: var(--muted);
      font-size: 16px;
      line-height: 1.7;
      margin: 0;
    }

    /* Sub copy under grid */
    .gf-copy {
      text-align: center;
      color: var(--muted);
      max-width: 960px;
      margin: 28px auto 0;
      font-size: 16px;
      line-height: 1.75;
    }



    .gf-feature{--text:#111827;--muted:#6b7280;--accent:#003a86;--pill:#fff0f0;--border:#eef0f3;--card:#ffffff}
    .gf-feature{padding:84px 0;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
    .gf-feature .container{max-width:1180px}
    .gf-feature h3{color:var(--text);font-weight:800;font-size:clamp(24px,2.6vw,30px);letter-spacing:.2px;margin:0 0 10px}
    .gf-kicker{display:inline-block;margin-bottom:12px;padding:6px 12px;border-radius:999px;background:var(--pill);color:var(--accent);border:1px solid rgba(181,31,31,.25);font-weight:700;font-size:12px;letter-spacing:.4px;text-transform:uppercase}
    .gf-lead{color:var(--muted);font-size:18px;line-height:1.75;margin:0 0 18px;max-width:620px}
    .gf-box{background:var(--card);border:1px solid var(--border);border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.06);padding:18px 18px 12px;margin:18px 0}
    .gf-box h4{margin:4px 0 10px;font-size:16px;font-weight:800;color:var(--text);letter-spacing:.2px}
    .benefits{list-style:none;padding:0;margin:0}
    .benefits li{display:flex;gap:10px;align-items:flex-start;margin:10px 0;color:var(--muted);font-size:16px;line-height:1.6}
    .benefits i{color:var(--accent);margin-top:2px}
    .gf-stats{display:flex;gap:18px;margin:18px 0 4px;flex-wrap:wrap}
    .gf-stat{flex:1 1 150px;background:#fafbfc;border:1px solid var(--border);border-radius:14px;padding:12px 14px}
    .gf-stat strong{display:block;color:var(--text);font-size:20px}
    .gf-stat span{color:var(--muted);font-size:13px}
    .btn-gf{display:inline-block;margin-top:14px;background:linear-gradient(180deg,#b51f1f,#c92a2a);color:#fff;padding:12px 22px;border-radius:12px;font-weight:800;letter-spacing:.2px;text-decoration:none;box-shadow:0 12px 28px rgba(185,39,39,.35);transition:transform .2s,box-shadow .2s}
    .btn-gf:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(185,39,39,.4);color:#fff}
    /* image */
    .gf-figure{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.12)}
    .gf-figure img{width:100%;height:auto;display:block}
    .gf-tag{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.92);backdrop-filter:saturate(140%) blur(6px);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--text);box-shadow:0 8px 22px rgba(0,0,0,.08)}
    @media (max-width:991.98px){.gf-feature{padding:64px 0}.gf-lead{max-width:none}}



	 .section-bg-1 .container {
      position: relative;
      z-index: 1;
    }
    .fun-facts-box {
      color: #fff;
      padding: 20px;
      transition: transform 0.3s ease;
    }
    .fun-facts-box:hover {
      transform: translateY(-5px);
    }
    .fun-facts-box i {
      font-size: 42px;
      margin-bottom: 10px;
      color: #fff;
    }
    .facts-numbers {
      font-weight: 800;
      font-size: 32px;
      display: block;
      color: #fff;
    }
    .fun-facts-title {
      font-size: 16px;
      line-height: 1.4;
      margin: 0;
      color: rgba(255, 255, 255, 0.9);
    }
    @media (max-width: 991.98px) {
      .fun-facts-box {
        margin-bottom: 30px;
      }
    }



	 /* ===== Mission & Valori – GF Group ===== */
   
    .mission-block .container{max-width:1180px}
    .mission-title{
      font-weight:800;
      font-size:clamp(28px,3vw,36px);
      color:#000;
      text-align:center;
      margin:0 0 20px;
      letter-spacing:.2px;
    }
    .mission-intro{
      max-width:1100px;
      margin:0 auto 36px;
      color:#4a4a4a;
      font-size:18px;
      line-height:1.75;
      column-gap:64px;
      text-align:left;
    }
    @media (min-width:992px){
      .mission-intro{column-count:2;}
    }

    /* Cards grid */
    .values-grid{
      display:grid;
      grid-template-columns:1fr;
      gap:24px;
      max-width:1100px;
      margin:0 auto;
    }
    @media (min-width:992px){
      .values-grid{grid-template-columns:repeat(3,1fr);}
    }

    .value-card{
      background:linear-gradient(180deg,#ffffff 0%,#c5c5c5 100%);
      border:1px solid #e6e7eb;
      border-radius:24px;
      padding:28px 24px;
      box-shadow:0 8px 22px rgba(0,0,0,.06);
      transition:transform .2s ease, box-shadow .2s ease;
      height:100%;
    }
    .value-card:hover{
      transform:translateY(-4px);
      box-shadow:0 14px 28px rgba(0,0,0,.09);
    }
    .value-card h3{
      margin:0 0 10px;
      font-size:24px;
      font-weight:800;
      color:#222;
      letter-spacing:.2px;
    }
    .value-card p{
      margin:0;
      font-size:17px;
      color:#4a4a4a;
      line-height:1.7;
    }


	 .gf-features {
      --accent: #003a86;
      --text: #111827;
      --muted: #6b7280;
      --card: #fff;
      --border: #e5e7eb;
      --shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
      padding: 96px 0 80px;
      font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      background: #f7f7f8;
    }

    .gf-features .container {
      max-width: 1180px;
    }

    .gf-features .section-title {
      font-weight: 800;
      font-size: clamp(28px, 3vw, 36px);
      color: var(--text);
      margin-bottom: 14px;
    }

    .gf-features .section-subtitle {
      color: var(--muted);
      max-width: 850px;
      margin: 0 auto 48px;
      font-size: 18px;
      line-height: 1.75;
    }

    /* Feature grid */
    .feature-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 24px;
    }

    .feature-box {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: 18px;
      box-shadow: var(--shadow);
      padding: 28px 24px;
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
      text-align: left;
    }

    .feature-box:hover {
      transform: translateY(-4px);
      box-shadow: 0 14px 34px rgba(0, 0, 0, 0.1);
      border-color: rgba(181, 31, 31, 0.3);
    }

    .feature-box i {
      font-size: 36px;
      color: var(--accent);
      margin-bottom: 16px;
    }

    .feature-box h4 {
      font-weight: 700;
      font-size: 20px;
      color: var(--text);
      margin-bottom: 10px;
    }

    .feature-box p {
      color: var(--muted);
      font-size: 16px;
      line-height: 1.65;
      margin: 0;
    }



	   .gf-faq {
      background: #ffffff;
      padding: 90px 0;
      font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    }

    .gf-faq .section-title {
      font-weight: 800;
      font-size: clamp(28px, 3vw, 36px);
      color: #111827;
      margin-bottom: 14px;
    }

    .gf-faq .section-subtitle {
      color: #6b7280;
      max-width: 800px;
      margin: 0 auto 50px;
      font-size: 18px;
      line-height: 1.75;
    }

    .faq-box {
      background: #f9fafb;
      border: 1px solid #e5e7eb;
      border-radius: 14px;
      box-shadow: 0 8px 18px rgba(0, 0, 0, 0.04);
      margin-bottom: 16px;
      padding: 18px 22px;
      transition: all 0.25s ease;
      cursor: pointer;
      position: relative;
    }

    .faq-box:hover {
      border-color: rgba(181, 31, 31, 0.4);
      box-shadow: 0 10px 26px rgba(0, 0, 0, 0.08);
    }

    .faq-box h5 {
      color: #111827;
      font-weight: 700;
      font-size: 18px;
      margin: 0;
      padding-right: 30px;
      position: relative;
    }

    .faq-box::after {
      content: "+";
      position: absolute;
      right: 18px;
      top: 18px;
      font-weight: 800;
      font-size: 20px;
      color: #b51f1f;
      transition: transform 0.25s ease;
    }

    .faq-box.active::after {
      content: "–";
      transform: rotate(180deg);
    }

    .faq-box p {
      color: #4b5563;
      font-size: 16px;
      line-height: 1.65;
      margin: 0;
      padding-top: 10px;
      display: none;
    }

    .faq-box.active p {
      display: block;
      animation: fadeIn 0.3s ease;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(-4px); }
      to { opacity: 1; transform: translateY(0); }
    }