/*
Template Name: Pacifico
Author URI: 
Author Name: Epic Themes
Version: 1.0
*/

/* --- TABLE OF CONTENT

01. GENERAL LAYOUT
02. MENU-NAV
03. FOOTER
04. HOME
05. ABOUT
06. TEAM
07. SERVICES/FEATURES
08. PRICING
09. BLOG
10. CONTACT
11. OTHER ELEMENTS
		a. Newsletter
		b. Buttons
		c. Gallery Images Animation
		d. Testimonials
		e. Accordion Tabs
		f. Partners
		g. Fun Facts
		h. PopUp Video
		i. Features List
12. MEDIA QUERIES
*/
  /*========================================================================
  /* COLORS - GFR BRAND */
  /*=======================================================================
  */ 

   :root{

    --gfr-blue:#0b4a7c;
    --gfr-green:#a4cd39;
    --gfr-dark:#272834;

}

 /* ==========================================================


--- */

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

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

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

p {
	font-size: 15px;
	line-height: 24px;
	font-weight: 400;
	color: #7c8595;
	margin-bottom:15px;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Roboto', sans-serif;
  line-height: 1.2;
  margin-bottom:20px;
  color: #2F362F;
}

h1 {
	font-size: 42px;
}

h2 {
	font-size: 36px;
}

h3 {
	font-size: 28px;
}

h4 {
	font-size: 24px;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 18px;
}

h2.section-title{
	font-size: 36px;
    line-height: 40px;
    color: #292929;
    margin-bottom: 15px;
}

h2.section-title.grey{
	color:#ddd;
}

h2.section-title.white{
	color:#ffffff;
}

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

p.section-subtitle.grey{
	color:#bbb;
}

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

h3.medium-title {
	font-size: 32px;
	margin-top:10px;
}

ul {
	padding: 0;
}

ul li{
	list-style-type: none;
}

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

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

.white-text{ 
	color: #fff;
}

.blue {
    color: #3498db;
}

.lyla {
    color: #0f4c7c;
}

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

.section-grey{
	background: #f2f7f8;
	padding: 70px 0;
}

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

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

.section-gradient{
	background: #008aff; /* For browsers that do not support gradients */
  	
  	background: var(--gfr-dark);

 /* Standard syntax */
  	padding: 70px 0;
}

.section-dark{
	background-color:#272834;
	padding:70px 0;
}

.width-100{
	width: 100%;
}

/* margin and padding classes */

.margin-right-25 {
	margin-right: 25px !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-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-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-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-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;
}

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

.navbar-brand{
	font-family: 'Roboto', sans-serif;
	font-size: 28px;
	font-weight: 500;
	color: #fff!important;
}

.navbar-fixed-top.opaque .navbar-brand{
	font-family: 'Roboto', sans-serif;
	font-size: 28px;
	font-weight: 700;
	color: #353535!important;
}

.navbar-fixed-top #navbar-collapse-02 .current a {
    color:#008aff;
     -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-collapse-02 .current a {
    color:#4285f4!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 {
	padding-top: 20px;
	padding-bottom: 20px;
}

.navbar-fixed-top {
	position: absolute!important;
	background: rgba(0,0,0,0.25)!important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-bottom: 1px solid rgba(255,255,255,0.1);
	transition: all 0.3s ease;
}

.navbar-fixed-top.opaque {
	position: fixed!important;
	background: rgba(255,255,255,0.85)!important;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(0,0,0,0.05);
	padding: 18px 0;
	transition: all 0.3s ease;
}

.navbar-fixed-top .navbar-nav > li > a, .navbar-fixed-top .navbar-nav > li > a:hover{
	-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{
	color:#fff !important;
	font-size: 14px !important;
	line-height: 30px !important;
	text-transform: uppercase;
	padding: 10px 20px!important;
	font-family: 'Roboto', sans-serif;
	font-weight: 600;
}

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

.navbar-fixed-top .navbar-nav > li > a.discover-btn {
	background: transparent;
	border: 1px solid #fff;
	border-radius: 5px 5px;
	padding: 8px 24px!important;
	margin-left: 10px;
	margin-right: 15px;
	font-family: 'Roboto', sans-serif;
}

.navbar-fixed-top.opaque .navbar-nav > li > a.discover-btn{
color:#fff !important;
background: var(--gfr-dark);
border:2px solid var(--gfr-green);
}
	
	-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 {
	border: 1px solid #ffffff;
	color: #4285f4!important;
	background: #ffffff;
}

background: var(--gfr-green);
color: var(--gfr-dark) !important;
border-color: var(--gfr-green);

.navbar-fixed-top.opaque #navbar-collapse-02 .current a.discover-btn {
    color: #fff!important;
}

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

.footer {
	z-index:900;
	background-color: #2f3539;
    border-top: 1px solid #393f43;
	padding: 50px 0;
	font-weight: 300;
}

.footer p {
	font-size: 16px;
	color: #cecece;
}

.footer p a {
	font-size: 16px;
	color: #6B02FF;
	text-decoration:underline;
}

/* Footer Social Icons */
ul.footer_social{
	width:100%;
	max-width:1140px;
	display:block;
	margin:0 auto;
	padding-top:5px;
	text-align:center;
}

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: #8d8d8d;

  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:hover {
	color:#4285f4;
}

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

.home-section {
	background: url(http://placehold.it/1920X1080) top center no-repeat;
	background-size: cover;
	width: 100%;
	position: relative;
  	padding-top: 220px;
  	padding-bottom: 165px;
}

.home-section-overlay{
	background: #123457; /* fallback for old browsers */
	background: -webkit-linear-gradient(to left, #123457 , #123457); /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to left, #123457 , #123457); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	opacity: 0.7;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.home-section h1{
	font-size: 42px;
    line-height: 48px;
    font-weight: 500;
    color: #ffffff;
    letter-spacing: 1px;
}

.home-section p{
	font-size: 18px;
	line-height: 28px;
	font-weight: 400;
	color: #fff;
	margin-bottom: 30px;
}

a.hero-video-text{
	margin-left: 34px;
	font-size: 16px;
	line-height: 28px;
	color:#fff;
}

i.hero-video-icon {
	width: 34px;
	height: 34px;
	border:1px solid #fff;
	border-radius: 50% 50%;
	font-size: 20px;
	line-height: 34px;
	color:#fff;
	margin-top: 12px;
	margin-left: 5px;
	display: inline-block;
	transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

a.hero-video-text:hover .hero-video-icon{
	background: #fff;
	color: #4285f4;
}

/* ========================================================== */
/* 			               05. ABOUT                          */
/* ========================================================== */

.about-box {
	margin-top: 20px;
	text-align: center;
}

.about-box i{
	font-size: 58px;
	margin-bottom: 0;
	color:#4285f4;
	display: inline-block;
	line-height: 58px;
	cursor: pointer;
	border-radius: 50%;
}

.about-box h3{
	font-size: 20px;
	color: #292929;
	margin-bottom: 15px;
}

.about-box p{
	padding: 0 10px;
}

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

a.btn-download {
	color: #ffffff;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	background: #4285f4;
	border: 2px solid #4285f4;
	border-radius: 5px 5px;
	padding: 15px 25px;	
	display: inline-block;
	margin-top: 30px;
	margin-bottom: 60px;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

a.btn-download i{
	font-size: 16px;
	margin-right: 10px;
}

a.btn-download:hover {
	color: #4285f4;
	background: transparent;
	border:2px solid #4285f4;
}

ul.features-responsive{
	margin-bottom: 40px;
}

ul.features-responsive li {	
	font-size: 15px;
	line-height: 20px;
	font-weight: 400;
	color: #8f8f8f;
	display: block;
	margin-bottom: 10px;
}

ul.features-responsive li i {
	font-size: 18px;
	vertical-align: bottom;
	color: #4285f4;
	margin-right: 10px;
}

/* ========================================================== */
/* 			               06. TEAM                           */
/* ========================================================== */

.team-item{
	background: #f4f5f6;
	text-align:center;
	margin:20px 0;
	padding:50px 20px 40px 20px;
	border-radius: 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:hover{
	background: #1d1e2b;
}

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

.team-item:hover h3{
	color:#ddd;
}

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

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

.team-info::after {
    background: #008aff;
    background: -webkit-linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
    background: -o-linear-gradient(bottom right, #6B02FF, #985BEF);
    background: -moz-linear-gradient(bottom right, #008aff, #1ad2fd);
    background: linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 50px;
    height: 3px;
    margin-top: -20px;
}

.team-img{
	max-width: 140px;
	padding: 6px 6px;
    background-color: #dedede;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}

ul.team-icon {
	margin-top: 25px;
}

ul.team-icon li{
	display: inline-block;
	margin:0 3px;
	-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;
}

ul.team-icon li a{
	margin: 0;
	display: inline-block;
	padding: 8px 8px;
	width: 34px;
	height: 34px;
	font-size: 18px;
	line-height: 18px;
	background-color: #fff;
	border-radius: 50%;
	color:#fff;
}

ul.team-icon li a.twitter{
	background-color: #4099ff;
}

ul.team-icon li a.pinterest{
	background-color: #C92228;
}

ul.team-icon li a.facebook{
	background-color: #3b5998;
}

ul.team-icon li a.dribble{
	background-color: #ea4c89;
}

.team-icon li a:hover{
	color:#dedede;
	-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;
}

/* ========================================================== */
/* 			               07. SERVICES/FEATURES              */
/* ========================================================== */

.feature-box{
	overflow: hidden;
	margin: 10px 0 20px 0;	
}

.feature-box i{
	float:left;
	font-size:48px;
	color:var(--gfr-green);
	background:none;
	-webkit-background-clip:initial;
	-webkit-text-fill-color:var(--gfr-green);
}

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

.feature-box h4{
	font-size: 18px;
	color: #ddd;
	margin-bottom: 10px;
}

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

.feature-inner {
	float: left;
	width: 70%;
	margin-left: 30px;
}

.feature-inner h4, .feature-inner-left h4, .feature-inner-right h4{
	font-size: 18px;
	color: #282828;
	margin-top: 0;
	margin-bottom: 10px;
}

.feature-wrapper{
	overflow: hidden;
	margin: 30px 0;
}

.feature-wrapper i.lefts{
	float: right;
	margin-top: 10px;
	margin-right: 3px;
}

.feature-wrapper i.rights{
	float: left;
	margin-top: 10px;
	margin-left: 3px;
}

.feature-inner-left {
	float: right;
	width: 70%;
	text-align: right;
	padding-right: 30px;
}

.feature-inner-right{
	float: left;
	width: 70%;
	text-align: left;
	padding-left: 30px;
}

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

.price-box-white{
	text-align: center;
	border: 2px solid #f8f8f8;
	padding: 50px 0;
	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: #f4f5f6;
	border: 2px solid #f4f5f6;
	padding: 50px 0;
	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-blue{
	text-align: center;
	background: #008aff;
    background: -webkit-linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
    background: -o-linear-gradient(bottom right, #6B02FF, #985BEF);
    background: -moz-linear-gradient(bottom right, #008aff, #1ad2fd);
    background: linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
	padding: 50px 0 40px 0;
	color:#fff;
	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-blue:hover, .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,
.price-box-grey .price-title, .price-box-grey ul.pricing-list li.price-value{
	color: #292929;
}

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

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: #fff;
	background: #008aff;
    background: -webkit-linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
    background: -o-linear-gradient(bottom right, #6B02FF, #985BEF);
    background: -moz-linear-gradient(bottom right, #008aff, #1ad2fd);
    background: linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
	border-radius: 5px 5px;
	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: #008aff;
    background: -webkit-linear-gradient(135deg, #985BEF 0%, #6B02FF 100%);
    background: -o-linear-gradient(bottom right, #985BEF, #6B02FF);
    background: -moz-linear-gradient(bottom right, #985BEF, #6B02FF);
    background: linear-gradient(135deg, #6B02FF 0%, #6B02FF 100%);
}

.price-box-blue ul.pricing-list li.price-tag a{
	color: #fff;
	background: transparent;
	border: 2px solid #fff;
	border-radius: 5px 5px;
	padding: 15px 30px;
	display: inline-block;
	font-size: 14px;
	line-height: 24px;
	font-weight: 600;
	margin: 40px 0 30px 0;
}

.price-box-blue ul.pricing-list li.price-tag a:hover{
	color: #4285f4;
	border: 2px solid #fff;
	background: #fff;
}

/* ========================================================== */
/* 			                   09. BLOG                       */
/* ========================================================== */

.blog-item{
	-webkit-border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
    transition: all .50s ease-in-out;
    -moz-transition: all .50s ease-in-out;
    -webkit-transition: all .50s ease-in-out;
}

.blog-item img {
}

.blog-item-inner{
	padding:10px 0 20px 0;
}

.blog-item-inner p{
	margin:15px 0 20px 0;
}

h3.blog-title{
	margin-top:15px;
	margin-bottom:10px;
}

h3.blog-title a{
	font-size:21px;
	color:#454545;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

h3.blog-title a:hover{
	color:#228798;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

a.blog-icons{
	color:#858585;
	font-size:14px;
	font-style:italic;
	margin-right:10px;
	padding-right:10px;
	border-right:1px solid #aaa;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

a.blog-icons i{
	color:#656565;
	font-size:16px;
	line-height:16px;
	vertical-align: text-bottom;
}

a.blog-icons.last{
	border-right: none;
}

a.blog-icons:hover{
	color:#228798;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
}

a.button-blog{
	background-color: #34b1c4;
	border:1px solid #34b1c4;
	color:#fff;
	display:inline-block;
	font-weight:400;
	font-size:13px;
	padding:10px 20px;
	margin:0 0 20px 0;
	-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;
}

a.button-blog:hover{
	background-color: transparent;
	border:1px solid #34b1c4;
	color:#34b1c4;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

/* ========================================================== */
/* 						    10. CONTACT                       */
/* ========================================================== */

#contact-form{
	margin:0 auto;
	width:100%;
	max-width:960px;
	text-align:center;
	margin-bottom:10px;
}

input.contact-input{
	width:100%;
	height:55px;
    padding-left:2%;
    padding-right:2%;
	margin-bottom:20px;
	color: #aaa;
	border: 1px solid #757575;
	background-color: transparent;
    font-size:14px;
	-webkit-border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
}

textarea{
	height:205px;
	margin-bottom:20px;
	width:100%;
    padding-left:2%;
    padding-right:2%;
    padding-top:10px;
    padding-bottom:10px;
	color: #aaa;
	border: 1px solid #757575;
	background-color: transparent;
    font-size:14px;
	-webkit-border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
}

input.contact-submit{
background:#272834;
color:#ffffff;
border:2px solid #a4cd39;
cursor:pointer;
display:inline-block;
font-size:14px;
font-weight:600;
margin-top:10px;
padding:18px 32px;
text-transform:uppercase;
border-radius:5px;
transition:all .3s ease;
}

input.contact-submit:hover{
background:#a4cd39;
color:#272834;
border-color:#a4cd39;
box-shadow:0 8px 20px rgba(164,205,57,0.35);
}





input.white-input::-webkit-input-placeholder,
textarea.white-input::-webkit-input-placeholder { /* WebKit browsers */
    color:#aaa;
}
input.white-input:-moz-placeholder,
textarea.white-input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:#aaa;
}
input.white-input::-moz-placeholder,
textarea.white-input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:#aaa;
}
input.white-input:-ms-input-placeholder,
textarea.white-input:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:#aaa;
}

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

 .contact_success_box{
    display:none;
    margin:0 0 30px 0;
    padding:18px 22px;
    border-radius:14px;
    background:linear-gradient(135deg, rgba(164,205,57,0.15), rgba(164,205,57,0.05));
    border:1px solid rgba(164,205,57,0.5);
    color:#ffffff;
    font-size:16px;
    font-weight:500;
    line-height:1.5;
    box-shadow:0 10px 30px rgba(0,0,0,0.2);
    align-items:center;
    gap:12px;
}

.contact_success_box .icon{
    width:28px;
    height:28px;
    border-radius:50%;
    background:rgba(164,205,57,0.2);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    color:#a4cd39;
    flex-shrink:0;
}

.contact_success_box.show{
    display:flex;
    animation:successFade 0.4s ease;
}

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


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

.extra-image{
	position: relative;
	margin-top: 30px;
	margin-bottom: -200px;
	z-index: 200;
}

/* -----  a) Newsletter ----- */

.newsletter_form_wrapper{
	width:100%;
	text-align:center;
	margin-bottom:30px;
}

.newsletter_form_box{
	margin:0 auto;
	max-width:730px;
}

#newsletter-form #email_newsletter {
	width:100%;
	max-width:500px; 
	height:65px;
    padding:0 20px;
	border: 2px solid #6B02FF;
	background-color: #fff;
    -moz-border-radius: 5px 0 0 5px;
    -webkit-border-radius: 5px 0 0 5px;
    border-radius: 5px 0 0 5px;
	color:#757575;  
    font-size:16px;
    font-weight: 600;
	margin:0;
}

#newsletter-form #submit-button-newsletter {
    width: 165px;
	height:65px;
    background: #008aff;
    background: -webkit-linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
    background: -o-linear-gradient(bottom right, #6B02FF, #985BEF);
    background: -moz-linear-gradient(bottom right, #008aff, #1ad2fd);
    background: linear-gradient(135deg, #6B02FF 0%, #985BEF 100%);
	border: none;
    color:#fff;  
    display: inline;
	margin:0 0 0 -5px;
    -moz-border-radius: 0 5px 5px 0;
    -webkit-border-radius: 0 5px 5px 0;
    border-radius: 0 5px 5px 0;
	font-size:14px;
	font-weight:700;
	vertical-align: top;
	transition: background-color .25s ease-in-out;
   -moz-transition: background-color .25s ease-in-out;
   -webkit-transition: background-color .25s ease-in-out;
}

#newsletter-form #submit-button-newsletter:hover {
	color:#454545;
    background-color:#fff;
	transition: background-color .25s ease-in-out;
   -moz-transition: background-color .25s ease-in-out;
   -webkit-transition: background-color .25s ease-in-out;
}

input#email_newsletter::-webkit-input-placeholder { /* WebKit browsers */
    color:#757575;
}
input#email_newsletter:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:#757575;
}
input#email_newsletter::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:#757575;
}
input#email_newsletter:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:#757575;
}

.newsletter_success_box{
	font-size:18px;
	font-style:italic;
	color:#fff;
	margin:5px 0;
}

/* b) Buttons */

.btn-blue {
	color: #fff!important;
    background:#272834;
color: var(--gfr-dark);
border:2px solid #a4cd39;
cursor:pointer;
display:inline-block;
font-size:14px;
font-weight:600;
margin-top:10px;
padding:18px 32px;
text-transform:uppercase;
border-radius:5px;
transition:all .3s ease;
}


.btn-blue.small {
	padding: 14px 26px;
}

.btn-blue:hover{
	background:#a4cd39;
color:#272834;
border-color:#a4cd39;
box-shadow:0 6px 16px rgba(0,0,0,0.25);

}


.btn-white {
	   background:var(--gfr-green);
color:#ffffff;
border:2px solid var(--gfr-green);
cursor:pointer;
display:inline-block;
font-size:14px;
font-weight:600;
margin-top:10px;
padding:18px 32px;
text-transform:uppercase;
border-radius:5px;
transition:all .3s ease;
}


.btn-white:hover{
	background:var(--gfr-dark);
color: white;
border-color:var(var(--gfr-green))
box-shadow:0 6px 16px rgba(0,0,0,0.25);


}

}

.btn-white-border {
	color: #fff;
	background: transparent;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	line-height: 22px;
	font-weight: 500;
	border: 1px solid #fff;
	border-radius: 5px 5px;
	margin: 10px 10px;
	padding: 15px 30px;
	display: inline-block;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
}

.btn-white-border:hover{
	color: #008aff;
	background: #fff;
	border: 1px solid #fff;
}

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

/* -----  c) Gallery Images Animations ----- */

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

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

.first-gallery{
	margin-bottom:15px;
}

.popup-gallery img {
	position:relative;
	z-index:10;
	width: 100%;
	height: auto;
}

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

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

.popup-gallery-rounded a span.eye-wrapper, 
.popup-gallery-rounded a span.eye-wrapper2 {
	-webkit-border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
}

.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:38px;
	z-index: 3;
	top: 50%!important;
	margin-top: -19px!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-show {
	box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.3); 
	border: 8px solid rgba(255, 255, 255, 0.8);
	margin: 20px 10px 40px 10px;
}

.gallery-item-wrapper{
	float: left;
	width: 100%;
}

/* d) Testimonials */
.testim-inner{
	text-align: center;
}

.testim-inner img{
	max-width: 130px;
	border:1px solid #fff;
	border-radius: 50% 50%;
	padding: 6px 6px;
	background-color: #dedede;
	display: inline-block!important;
}

.testim-inner h6{
	margin-bottom: 5px;
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	line-height: 26px;
	color:#292929;
	font-weight: 700;
}

.testim-inner span.job-text{
	font-size: 18px;
	line-height: 26px;
	font-weight: 500;
	color: #656565;
}	

.testim-inner p{
	font-family: 'Roboto', sans-serif;
	font-size: 20px;
	line-height: 32px;
	font-weight: 300;
	font-style: italic;
	color: #454545;
	margin-top: 20px;
}

.testim-inner i{
	font-size: 70px;
	color: #7aa9f7;
	margin-top:20px;
	margin-bottom: 40px;
}

/* e) Accordion Tabs */

.panel-wrapper{
	margin-bottom: 25px;
}

.panel-icon{
	margin-right: 5px;
	font-size: 20px;
	vertical-align: middle;
}

.panel-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 500;
    color: #454545;
    font-family: 'Roboto', sans-serif;
}

.panel-title > a, .panel-title > small, .panel-title > .small, .panel-title > small > a, .panel-title > .small > a {
    color: #656565;
}

.panel-group {
	margin: 10px 0;
}

.panel-group .panel {
    margin-bottom: 0;
    background: transparent;
}

.panel-body {
    padding: 20px 10px 10px 10px;
}

.panel-heading {
    padding: 8px 10px 16px 10px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.panel-default {
    border-color: transparent;
}
.panel-default > .panel-heading {
  color: #959595;
  background-color: transparent;
  border: none;
}

.panel-group .panel-heading + .panel-collapse > .panel-body, .panel-group .panel-heading + .panel-collapse > .list-group {
    border-top: 3px solid #4285f4;
 }

 /* f) Partners */

.section-grey.sponsors-padding {
    padding: 25px 0 25px 0;
}

.sponsors{
	text-align: center;
}

.sponsors img.sponsor {
    opacity: 0.4;
    margin: 10px 25px;
    max-height: 28px;
    -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;
}

.sponsors img.sponsor:hover {
    opacity: 0.8;
}

.partners-title{
	display: inline-block;
	font-size: 18px;
	line-height: 26px;
	margin-right: 30px;
	color: #7c8595;
}

/* ----- g) Fun Facts ----- */

.fun-facts-box{
	display: inline-block;
	width:19%;
	padding:10px;
}

.fun-facts-title{
	font-size:16px;
	font-weight:400;
	color:#7c8595;
	font-style:italic;
}

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

.fun-facts-box i{
	font-size:45px;
	line-height:54px;
	color: #008aff;
	background: #008aff;
	background: -webkit-gradient(linear, left top, right bottom, from(#b580ff), to(#905ca4));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* h) PopUp Video */

.youtube-video-wrapper{
	background: url(http://placehold.it/600x500) top center no-repeat;
	background-size: initial;
	padding: 160px 0;
	position: relative;
	text-align: center;
}

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

.youtube-video-icon:hover{
	background: #6B02FF;
	border: 2px solid #6B02FF;
}

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

.youtube-video-icon i {
	font-size: 60px;
	line-height: 100px;
	color:#6B02FF;
	margin-left: 10px;
	transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

/* i) Features List */

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

ul.features-list-hero{
	display: inline-block;
	margin-bottom: 25px;
}

ul.features-list-hero li{
	float:left;
	margin:8px 0;
	color:#ffffff;
	font-size:16px;
	line-height:26px;
}

ul.features-list-hero li i{
	float:left;
	padding-right: 20px;
	color:#ffffff;
	font-size:42px;
	line-height: 46px;
	vertical-align: text-top;
}

/* ========================================================== */
/* 			             12. MEDIA QUERIES                    */
/* ========================================================== */

@media (max-width: 991px) {

	.hero-picture{
		margin-bottom:0;
	}

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

	.navbar-default .navbar-toggle {
	    border-color: #9f9f9f!important;
	}

	.navbar-default .navbar-toggle .icon-bar {
	    background-color: #9f9f9f!important;
	}

}

@media (max-width: 767px) {

	.home-section {
		padding-top: 150px;
	  	padding-bottom: 50px;
	}
    
    .home-title h1{	
		font-size: 40px;
		line-height: 50px;
		padding: 30px 35px;
	}

	.home-title span{
		font-size: 24px;
		line-height: 30px;
	}

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

}

@media (max-width: 375px) {

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

	.navbar-default .navbar-toggle {
	    border-color: #aeaeae!important;
	}

	.navbar-default .navbar-toggle .icon-bar {
	    background-color: #aeaeae!important;
	}
	
  	.owl-carousel .owl-item img{
  		width: 80%!important;
  		margin: 0 10%;
  	}

	.fun-facts-box{
		width:48%!important;
	}

	#newsletter-form #email_newsletter {
	    -moz-border-radius: 5px 5px 5px 5px!important;
	    -webkit-border-radius: 5px 5px 5px 5px!important;
	    border-radius: 5px 5px 5px 5px!important;
	}

	#newsletter-form #submit-button-newsletter {
	    display: inline-block;
		margin-top:10px!important;
	    -moz-border-radius: 5px 5px 5px 5px!important;
	    -webkit-border-radius: 5px 5px 5px 5px!important;
	    border-radius: 5px 5px 5px 5px!important;
	}

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

}

@media (max-width: 320px) {

	.newsletter-input {
		width: 60%;		
	}

	.btn-newsletter{
  		width: 38%;
  		margin-top: 12px;
  	}

}


/* ========================================================== */
/*               INNER PAGES (ABOUT / SERVICES / CONTACT)      */
/* ========================================================== */

.inner-hero{
	background: url(http://placehold.it/1920X600) top center no-repeat;
	background-size: cover;
	width: 100%;
	position: relative;
	padding-top: 170px;
	padding-bottom: 90px;
}

.inner-hero-overlay{
	background: #123457;
	opacity: 0.75;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.innerpage .navbar-fixed-top{
	position: fixed!important;
	background-color: #fff!important;
	border-bottom: 1px solid #eee;
	padding: 20px 0;
}

.innerpage .navbar-fixed-top .navbar-nav > li > a{
	color:#454545 !important;
}

.innerpage .navbar-brand{
	color:#353535!important;
	font-weight: 700;
}


/* Legal links in footer */
.footer-legal{margin-top:10px;margin-bottom:0;}
.footer-legal a{color:#cecece;text-decoration:underline;}
.footer-legal a:hover{color:#ffffff;}


#home_wrapper {
    padding: 0;
    position: relative;
}

#home_wrapper {
    padding: 0 !important;
    margin: 0 !important;
    position: relative;
}

#heroCarousel {
    height: 100vh;
    overflow: hidden;
    background: #000;
}

#heroCarousel .carousel-inner {
    height: 100vh;
    position: relative;
}

#heroCarousel .item {
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0 !important;
    width: 100%;
    display: block !important;
    opacity: 0;
    visibility: hidden;
    transition: opacity 1.2s ease-in-out, visibility 1.2s ease-in-out;
}

#heroCarousel .item.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

#heroCarousel .item.next,
#heroCarousel .item.prev {
    opacity: 0;
    visibility: visible;
    z-index: 1;
}

#heroCarousel .item img {
    display: block;
    width: 100%;
    height: 100vh !important;
    object-fit: cover;
    filter: contrast(1.05) brightness(0.95);
}


#heroCarousel .item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.75) 0%,
    rgba(0,0,0,0.35) 35%,
    rgba(0,0,0,0.15) 60%,
    rgba(0,0,0,0.55) 100%
);
    z-index: 1;
}

#heroCarousel .carousel-caption {
    position: absolute;
    top: 50%;
    left: 10%;
    right: 10%;
    bottom: auto;
    transform: translateY(-50%);
    z-index: 3;
    padding: 0;
    text-shadow: none;
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
}

#heroCarousel .item.active .carousel-caption {
    opacity: 1;
}

.hero-caption-inner {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

#heroCarousel .carousel-caption h1 {
    color: #fff;
    font-size: 56px;
    line-height: 1.2;
    margin-bottom: 20px;
}

#heroCarousel .carousel-caption p {
    color: #fff;
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 30px;
}

#heroCarousel .btn-blue,
#heroCarousel .btn-white {
    display: inline-block;
    margin: 8px 6px;
}

#heroCarousel .carousel-control.left,
#heroCarousel .carousel-control.right {
    background-image: none;
    z-index: 4;
}

#heroCarousel .carousel-indicators {
    bottom: 25px;
    z-index: 4;
}

/* Wyłączenie bootstrapowego przesuwania w bok */
.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev {
    left: 0 !important;
    transform: none !important;
}

@media (max-width: 991px) {
    #heroCarousel,
    #heroCarousel .carousel-inner,
    #heroCarousel .item,
    #heroCarousel .item img {
        height: 80vh !important;
    }

    #heroCarousel .carousel-caption h1 {
        font-size: 38px;
    }

    #heroCarousel .carousel-caption p {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    #heroCarousel,
    #heroCarousel .carousel-inner,
    #heroCarousel .item,
    #heroCarousel .item img {
        height: 70vh !important;
    }

    #heroCarousel .carousel-caption {
        left: 6%;
        right: 6%;
    }

    #heroCarousel .carousel-caption h1 {
        font-size: 28px;
    }

    #heroCarousel .carousel-caption p {
        font-size: 16px;
    }
}

/* --- HERO ZOOM --- */

#heroCarousel .item img {
    transform: scale(1);
}

#heroCarousel .item.active img {
    animation: heroZoom 8s ease-in-out forwards;
}

@keyframes heroZoom {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.12);
    }
}



@keyframes heroText {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- HERO STAGGER TEXT ANIMATION --- */

#heroCarousel .hero-caption-inner h1,
#heroCarousel .hero-caption-inner p,
#heroCarousel .hero-caption-inner .btn-blue,
#heroCarousel .hero-caption-inner .btn-white {
    opacity: 0;
    transform: translateY(40px);
}

#heroCarousel .item.active .hero-caption-inner h1 {
    animation: heroUp 0.9s ease forwards;
    animation-delay: 0.2s;
}

#heroCarousel .item.active .hero-caption-inner p {
    animation: heroUp 0.9s ease forwards;
    animation-delay: 0.5s;
}

#heroCarousel .item.active .hero-caption-inner .btn-blue,
#heroCarousel .item.active .hero-caption-inner .btn-white {
    animation: heroUp 0.9s ease forwards;
    animation-delay: 0.8s;
}

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

/* --- CTA GLOW EFFECT --- */

#heroCarousel .btn-blue {
    position: relative;
    box-shadow:0 6px 16px rgba(0,0,0,0.25);

    transition: transform 0.25s ease, box-shadow 0.35s ease;
}

#heroCarousel .btn-blue:hover {
    transform: translateY(-2px);
    box-shadow:0 6px 16px rgba(0,0,0,0.25);
}


/* subtelny puls (bardzo lekki) */
#heroCarousel .item.active .btn-blue {
    animation: heroGlow 2.5s ease-in-out infinite alternate;
}

@keyframes heroGlow {
    from {
        box-shadow:0 6px 16px rgba(0,0,0,0.25);

    }
    to {
        box-shadow:0 6px 16px rgba(0,0,0,0.25);

    }
}

.navbar-brand{
    padding:0;
    display:flex;
    align-items:center;
}

.navbar-brand img{
    height:60px;
    width:auto;
    filter: brightness(0) invert(1);
}

.section-white ~ header .navbar-brand img,
.section-white ~ * .navbar-brand img{
    filter:none;
}

/* transparent navbar on hero */

.navbar{
    background:transparent;
    border:none;
    transition:all 0.3s ease;
}

/* navbar after scroll */

.navbar.scrolled{
    background:#ffffff;
    box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

/* logo color change */

.navbar-brand img{
    height:60px;
    width:auto;
    filter:brightness(0) invert(1);
    transition:all 0.3s ease;
}

.navbar.scrolled .navbar-brand img{
    height:45px;
    filter:none;
}

/* menu kolor na hero */

.navbar-default .navbar-nav > li > a{
    color:#ffffff;
    transition:all 0.3s ease;
}

/* menu po scrollu */

.navbar.scrolled .navbar-nav > li > a{
    color:#333333;
}

.navbar-default .navbar-nav > li > a:hover{
    color:#3ed27a;
}

#heroCarousel h2,
#heroCarousel h3 {
    color: #ffffff;
}

#heroCarousel h1,
#heroCarousel h2,
#heroCarousel h3{
    color:#ffffff;
    text-shadow: 0 4px 18px rgba(0,0,0,0.55);
}

#heroCarousel p{
    text-shadow: 0 3px 12px rgba(0,0,0,0.5);
}

#heroCarousel h1{
    font-size:56px;
    font-weight:600;
}

#heroCarousel h2{
    font-size:46px;
    font-weight:600;
}

#heroCarousel p{
    font-size:20px;
    max-width:800px;
    margin:0 auto 30px;
}

.hero-caption-inner{
    max-width:900px;
}

.feature-box{
    padding: 20px 10px;
    transition: all .35s ease;
}

.feature-box:hover{
    transform: translateY(-6px);
}

.feature-box i{
    transition: all .35s ease;
}

.feature-box:hover i{
    color: #7f8cff;
    transform: translateY(-4px) scale(1.08);
    
}

.why-image{
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.14);
    overflow: hidden;
}

#features img{
    max-width: 100%;
    height: auto;
}


#features img{
    border-radius:12px;
    box-shadow:0 20px 40px rgba(0,0,0,0.15);
}

.why-photo{
    border-radius:14px;
    box-shadow:0 30px 60px rgba(0,0,0,0.18);
    transform:translateY(20px);
    transition:all .4s ease;
}

.why-photo:hover{
    transform:translateY(0);
    box-shadow:0 40px 80px rgba(0,0,0,0.22);
}


.panel-icon{
    font-size:22px;
    margin-right:10px;
}


.section-gradient img{
    border-radius:12px;
    box-shadow:0 20px 40px rgba(0,0,0,0.15);
}

.section-gradient .col-md-6:first-child{
    min-height:420px;
}

.section-gradient img{
    width:100%;
    height:420px;
    object-fit:cover;
    border-radius:14px;
}

.section-gradient .row{
    display:flex;
    align-items:center;
}


.section-gradient img{
    width:100%;
    border-radius:14px;
    box-shadow:0 25px 50px rgba(0,0,0,0.18);
}

.section-gradient{
    padding-top:80px;
    padding-bottom:80px;
}

/* GFR icons */
.feature-box i,
.services-box i,
.icon{
color:#a4cd39;
transition:0.3s;
}

.feature-box:hover i,
.services-box:hover i{
color:#ffffff;
}

.section-gradient [class^="pe-7s-"],
.section-gradient [class*=" pe-7s-"]{
    color: var(--gfr-green) !important;
}
.section-gradient h2{
color:#ffffff;
}

.section-gradient h2 span{
color: var(--gfr-green);
}

.panel-title i{
display:none;
}

.panel-title a{
position:relative;
padding-left:22px;
}

.panel-title a{
position:relative;
padding-left:22px;
}

.panel-title a::before{
content:"";
position:absolute;
left:0;
top:50%;
transform:translateY(-50%);
width:10px;
height:10px;
background:var(--gfr-green);
border-radius:50%;
}


.panel-title a::before{
width:12px;
height:12px;
background:var(--gfr-green);
border-radius:50%;
box-shadow:0 0 6px rgba(164,205,57,0.6);
}


.blog-item img{
    width:100%;
    height:220px;
    object-fit:cover;
}

/* ===== FOOTER PRO ===== */

.footer{
background:#1f212b;
padding:80px 0 40px;
color:#bfc4d1;
}

.footer-logo{
height:40px;
margin-bottom:20px;
filter:brightness(0) invert(1);
}

.footer-about{
font-size:14px;
line-height:24px;
max-width:260px;
}

.footer-title{
color:#ffffff;
font-size:16px;
margin-bottom:20px;
letter-spacing:0.5px;
}

.footer-links li{
margin-bottom:10px;
}

.footer-links a{
color:#bfc4d1;
transition:0.3s;
}

.footer-links a:hover{
color:var(--gfr-green);
}

.footer-contact{
margin-bottom:10px;
}

.footer-divider{
border-top:1px solid rgba(255,255,255,0.08);
margin:40px 0;
}

.footer-copy{
font-size:14px;
color:#bfc4d1;
margin-bottom:10px;
}

.footer-legal a{
color:#bfc4d1;
text-decoration:underline;
}

.footer-legal a:hover{
color:#ffffff;
}

/* top accent line above footer */

.footer{
position:relative;
}

.footer::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:2px;
opacity:0.8;
background:var(--gfr-green);
}

.footer-legal a,
.footer-legal a:visited{
color:#bfc4d1;
text-decoration:underline;
}

.footer-legal a:hover{
color:#ffffff;
}

.navbar.scrolled .discover-btn{
color:#ffffff !important;
background:var(--gfr-dark);
border:2px solid var(--gfr-green);
}

.navbar.scrolled .discover-btn:hover{
background:var(--gfr-green);
color:#272834 !important;
}

.navbar-nav > li.active > a.discover-btn,
.navbar-nav > li.active > a.discover-btn:focus,
.navbar-nav > li.active > a.discover-btn:hover{
color:#ffffff !important;
}

/* force Contact button text color when current/active */
.navbar-fixed-top #navbar-collapse-02 .current a.discover-btn,
.navbar-fixed-top #navbar-collapse-02 .current a.discover-btn:visited,
.navbar-fixed-top #navbar-collapse-02 .current a.discover-btn:hover,
.navbar-fixed-top #navbar-collapse-02 .current a.discover-btn:focus,
.navbar.scrolled #navbar-collapse-02 .current a.discover-btn,
.navbar.scrolled #navbar-collapse-02 .current a.discover-btn:visited,
.navbar.scrolled #navbar-collapse-02 .current a.discover-btn:hover,
.navbar.scrolled #navbar-collapse-02 .current a.discover-btn:focus,
.navbar-nav > li.active > a.discover-btn,
.navbar-nav > li.active > a.discover-btn:visited,
.navbar-nav > li.active > a.discover-btn:hover,
.navbar-nav > li.active > a.discover-btn:focus{
    color:#ffffff !important;
}

@media (max-width: 767px){

.section-gradient .row{
display:block;
}

.section-gradient .col-md-6{
width:100%;
float:none;
}

.section-gradient img{
width:100%;
height:auto;
margin-bottom:30px;
border-radius:14px;
}

.features-list-hero li{
display:block;
width:100%;
}

.features-list-hero li i{
display:block;
margin-bottom:10px;
}

}

@media (max-width: 767px){
.section-gradient h2{
font-size:34px;
line-height:1.2;
}
}

@media (max-width: 767px){

.section-gradient .col-md-6:first-child{
min-height:0 !important;
}

.section-gradient .row{
display:block !important;
}

.section-gradient .col-md-6{
width:100%;
float:none;
}

.section-gradient img{
width:100%;
height:auto !important;
margin-bottom:30px;
display:block;
}

}

@media (max-width: 767px){

.section-gradient{
padding-top:40px;
padding-bottom:40px;
}

.section-gradient .col-md-6 + .col-md-6{
margin-top:0;
}

}

@media (max-width: 767px){

  .navbar-brand img{
    height: 42px !important;
    width: auto;
  }

  .navbar-toggle{
    margin-top: 8px;
    margin-right: 15px;
  }

  #heroCarousel,
  #heroCarousel .carousel-inner,
  #heroCarousel .item,
  #heroCarousel .item img{
    height: 72vh !important;
    min-height: 520px;
  }

  #heroCarousel .carousel-caption{
    left: 7%;
    right: 7%;
    top: 52%;
    transform: translateY(-50%);
  }

  #heroCarousel .carousel-caption h1,
  #heroCarousel .carousel-caption h2{
    font-size: 26px !important;
    line-height: 1.18 !important;
    margin-bottom: 14px !important;
  }

  #heroCarousel .carousel-caption p{
    font-size: 16px !important;
    line-height: 1.5 !important;
    margin-bottom: 20px !important;
  }

  #heroCarousel .btn-blue,
  #heroCarousel .btn-white{
    display: inline-block;
    width: calc(50% - 8px);
    padding: 14px 10px !important;
    font-size: 13px !important;
    margin: 6px 4px !important;
    text-align: center;
  }

  #heroCarousel .carousel-indicators{
    bottom: 14px !important;
  }

  #about{
    padding-top: 45px !important;
  }

  #home_wrapper{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}

@media (max-width: 767px){
  #heroCarousel{
    margin-bottom: 0 !important;
  }

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

  .section-white{
    margin-top: 0 !important;
  }
}

@media (max-width: 767px){

  /* header / navbar */
  .navbar{
    margin-bottom: 0 !important;
  }

  .navbar-fixed-top,
  .navbar.scrolled{
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  /* hero */
  #home_wrapper,
  #heroCarousel,
  #heroCarousel .carousel-inner,
  #heroCarousel .item{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  #heroCarousel{
    height: 68vh !important;
    min-height: 520px;
  }

  #heroCarousel .item img{
    height: 68vh !important;
    min-height: 520px;
  }

  #heroCarousel .carousel-caption{
    top: 50%;
    left: 7%;
    right: 7%;
    transform: translateY(-50%);
  }

  #heroCarousel .carousel-caption h1,
  #heroCarousel .carousel-caption h2{
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin-bottom: 14px !important;
  }

  #heroCarousel .carousel-caption p{
    font-size: 15px !important;
    line-height: 1.45 !important;
    margin-bottom: 18px !important;
  }

  #heroCarousel .btn-blue,
  #heroCarousel .btn-white{
    width: 100%;
    margin: 6px 0 !important;
  }

  #heroCarousel .carousel-indicators{
    bottom: 12px !important;
  }

  /* section after hero */
  #about.section-white{
    padding-top: 40px !important;
    margin-top: 0 !important;
  }

  /* landowners section */
  .section-gradient{
    padding-top: 24px !important;
    padding-bottom: 40px !important;
  }

  .section-gradient .col-md-6:first-child{
    min-height: 0 !important;
    margin-bottom: 20px !important;
  }

  .section-gradient img{
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    display: block;
  }
}

@media (max-width: 767px){

#heroCarousel .btn,
#heroCarousel .btn-blue,
#heroCarousel .btn-white{
    width: auto !important;
    padding: 12px 22px !important;
    font-size: 14px !important;
    display: inline-block;
    margin: 6px 4px !important;
}

#heroCarousel .carousel-caption{
    text-align: center;
}

}

footer a{
color:#cfcfcf;
transition:all .25s ease;
}

footer a:hover{
color:#9ecb3c;
text-decoration:none;
}

.width-100{
width:100%;
height:auto;
display:block;
}

@media (max-width: 767px){

  #blog .container{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #blog .row{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #blog .col-sm-4{
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 35px;
  }

  #blog .blog-item{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #blog .popup-wrapper,
  #blog .popup-gallery,
  #blog .popup-gallery a,
  #blog .blog-item img{
    width: 100% !important;
    display: block;
  }

  #blog .blog-item img{
    height: auto !important;
    object-fit: cover;
  }

  #blog .blog-item-inner{
    padding: 20px 25px 0 25px;
  }
}

p.contact_success_box::before,
.contact_success_box::before {
    content: none !important;
    display: none !important;
}

/* DATA CENTRE SECTION */
#data-centre{
    padding:100px 0 80px;
    background:#ffffff;
}

#data-centre .section-title{
    margin-bottom:18px;
    color:#1b1f2a;
}

#data-centre .section-subtitle{
    max-width:850px;
    margin:0 auto 50px auto;
    color:#7a8191;
}

#data-centre .dc-box{
    background:#ffffff;
    border:1px solid rgba(164,205,57,0.28);
    border-radius:14px;
    padding:30px 28px;
    min-height:100%;
    box-shadow:0 8px 24px rgba(16,24,40,0.05);
}

#data-centre .dc-box h3{
    margin:0 0 22px 0;
    color:#1b1f2a;
    font-size:24px;
    font-weight:700;
}

#data-centre .dc-list{
    margin:0;
    padding:0;
    list-style:none;
}

#data-centre .dc-list li{
    position:relative;
    padding:0 0 0 34px;
    margin-bottom:18px;
    color:#7a8191;
    line-height:1.6;
    font-size:17px;
}

#data-centre .dc-list li:last-child{
    margin-bottom:0;
}

#data-centre .dc-list li i{
    position:absolute;
    left:0;
    top:2px;
    font-size:20px;
    color:#a4cd39;
}

#data-centre .dc-note{
    margin-top:18px;
    color:#8a92a3;
    font-size:15px;
    line-height:1.6;
}

@media (max-width:991px){
    #data-centre{
        padding:80px 0 60px;
    }

    #data-centre .dc-box{
        margin-bottom:25px;
    }
}

#data-centre .dc-box{
    transition: all 0.3s ease;
}

#data-centre .dc-box:hover{
    transform: translateY(-6px);
    border:1px solid rgba(164,205,57,0.5);
    box-shadow:0 12px 30px rgba(164,205,57,0.12);
}

#data-centre .dc-box:hover i{
    color:#a4cd39;
    transform:scale(1.1);
    transition: all 0.3s ease;
}

/* duże ikony (How it works) */
.how-it-works i,
.how-it-works svg {
    color: #a4cd39;
    stroke: #a4cd39;
}

.how-it-works i {
    color: #a4cd39 !important;
}

#about .about-box .hi-icon{
    color:#a4cd39 !important;
    opacity:1;
}

.features-list-hero li{
    display:flex;
    align-items:flex-start;
}

.features-list-hero li i{
    width:30px;
    min-width:30px;
    text-align:center;
    margin-right:12px;
}

.features-list-hero li{
    gap:12px;
}

.cookie-banner{
    position:fixed;
    left:20px;
    right:20px;
    bottom:20px;
    z-index:9999;
    background:#161a23;
    border:1px solid rgba(164,205,57,0.30);
    border-radius:16px;
    box-shadow:0 14px 40px rgba(0,0,0,0.24);
    padding:22px 24px;
    display:none;
}

.cookie-banner.show{
    display:block;
}

.cookie-banner__content{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
}

.cookie-banner__text strong{
    display:block;
    color:#ffffff;
    font-size:18px;
    margin-bottom:8px;
}

.cookie-banner__text p{
    margin:0;
    color:rgba(255,255,255,0.78);
    line-height:1.7;
    max-width:760px;
}

.cookie-banner__text a{
    color:#a4cd39;
}

.cookie-banner__actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.cookie-btn{
    border:none;
    border-radius:12px;
    padding:12px 18px;
    font-weight:600;
    transition:all .25s ease;
}

.cookie-btn--primary{
    background:#a4cd39;
    color:#11131b;
}

.cookie-btn--primary:hover{
    transform:translateY(-2px);
}

.cookie-btn--secondary{
    background:transparent;
    color:#ffffff;
    border:1px solid rgba(255,255,255,0.20);
}

.cookie-btn--secondary:hover{
    border-color:rgba(164,205,57,0.45);
    color:#a4cd39;
}

.cookie-modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.55);
    z-index:10000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.cookie-modal.show{
    display:flex;
}

.cookie-modal__box{
    width:100%;
    max-width:640px;
    background:#ffffff;
    border-radius:18px;
    padding:30px;
    box-shadow:0 16px 50px rgba(0,0,0,0.20);
}

.cookie-modal__box h3{
    margin-top:0;
    margin-bottom:24px;
}

.cookie-option{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:16px 0;
    border-top:1px solid rgba(16,24,40,0.08);
}

.cookie-option:first-of-type{
    border-top:none;
}

.cookie-option p{
    margin:6px 0 0 0;
    color:#667085;
}

.cookie-modal__actions{
    display:flex;
    gap:12px;
    justify-content:flex-end;
    margin-top:24px;
    flex-wrap:wrap;
}

.cookie-switch{
    position:relative;
    width:52px;
    height:30px;
    flex-shrink:0;
}

.cookie-switch input{
    opacity:0;
    width:0;
    height:0;
}

.cookie-switch span{
    position:absolute;
    inset:0;
    background:#d0d5dd;
    border-radius:999px;
    transition:.25s ease;
}

.cookie-switch span:before{
    content:"";
    position:absolute;
    width:22px;
    height:22px;
    left:4px;
    top:4px;
    background:#fff;
    border-radius:50%;
    transition:.25s ease;
}

.cookie-switch input:checked + span{
    background:#a4cd39;
}

.cookie-switch input:checked + span:before{
    transform:translateX(22px);
}

.cookie-manage-btn{
    position:fixed;
    left:20px;
    bottom:20px;
    z-index:9998;
    background:#11131b;
    color:#ffffff;
    border:1px solid rgba(164,205,57,0.30);
    border-radius:999px;
    padding:10px 16px;
    display:none;
}

.cookie-manage-btn.show{
    display:block;
}

@media (max-width:991px){
    .cookie-banner{
        left:14px;
        right:14px;
        bottom:14px;
        padding:18px;
    }

    .cookie-banner__content{
        flex-direction:column;
        align-items:flex-start;
    }

    .cookie-banner__actions{
        width:100%;
        justify-content:flex-start;
    }

    .cookie-manage-btn{
        left:14px;
        bottom:14px;
    }
}

#openCookiePrefs{
    display:none !important;
}

.director-card{
    background:#fff;
    border-radius:16px;
    padding:40px;
    box-shadow:0 10px 40px rgba(0,0,0,0.08);
    transition:all 0.3s ease;
}

.director-card:hover{
    transform:translateY(-5px);
    box-shadow:0 20px 60px rgba(0,0,0,0.12);
}

.director-img{
    width:100%;
    max-width:220px;
    border-radius:12px;
}

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

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

.director-role{
    display:block;
    color:#a4cd39;
    font-weight:600;
    margin-bottom:15px;
}

.linkedin-btn{
    display:inline-block;
    margin-top:15px;
    padding:10px 18px;
    border-radius:6px;
    border:1px solid #0b4a7c;
    color:#0b4a7c;
    text-decoration:none;
    transition:all 0.3s ease;
}

.linkedin-btn:hover{
    background:#0b4a7c;
    color:#fff;
}

@media (max-width: 768px){

    .director-card{
        padding:25px 20px;
        text-align:center;
    }

    .director-content{
        padding-left:0;
        margin-top:20px;
    }

    .director-img{
        max-width:180px;
        margin-bottom:15px;
    }

    .director-name{
        font-size:22px;
    }

    .director-role{
        margin-bottom:10px;
    }

    .linkedin-btn{
        display:inline-block;
        margin-top:15px;
    }
}

@media (max-width: 768px){

    .director-content{
        border-top:1px solid rgba(0,0,0,0.05);
        padding-top:15px;
    }

}

.director-role{
    display:block;
    color:#a4cd39;
    font-weight:600;
    margin-bottom:15px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-size:13px;
}

#mv p {
    color: #555;
}

#mv .section-subtitle {
    color: #777;
}

#mv {
    box-shadow: 0 -20px 40px rgba(0,0,0,0.05),
                0 20px 40px rgba(0,0,0,0.05);
    position: relative;
    z-index: 2;
}



#mv {
    padding: 80px 0 60px;
}

#mv .section-subtitle {
    margin-bottom: 15px;
}

#mv p {
    max-width: 700px;
    margin: 0 auto 40px;
    color: #555;
}
#mv .feature-box i {
    color: #a4cd39;
    font-size: 34px;
}

#mv {
    border-bottom: 1px solid #eee;
}

#mv .feature-box h4 {
    color: #888;
    font-weight: 500;
}

#mv .feature-box p {
    color: #555;
}

#mv .feature-box i {
    color: #a4cd39;
}

#mv .feature-box-text h4 {
    color: #888 !important;
    font-weight: 500;
}

#mv .feature-box-text p {
    color: #555;
}

#mv .feature-box i {
    color: #a4cd39;
}

#mv .feature-box-text h4 {
    color: #888 !important;
}

#mv .feature-box h4 {
    color: #888 !important;
}


.director-card{
    display: none !important;
}
