/*
Theme Name:   Goodin
Description:  Goodinc Child Theme
Author:       Markku Louhio / Pyramind Creative
Author URI:   https://pyramind.fi
Template:     divi
Version:      1.0.0
Text Domain:  goodinchild
*/

body {
	background-color: #f9f1ea !important;
}

/* FONTS */
h1, h2, h3, h4 {
  font-family: "Unbounded", sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/* FONTS DESKTOP */
@media screen and (min-width: 981px) {
	h1 {
	font-size: 75px !important;
	line-height: 1.1em;
	}
 	.hero-subpage h1 {
    font-size: 130px !important;
	}
	h2 {
  font-size: 55px !important;
  line-height: 1.1em;
	}
	h2.large {
  font-size: 75px !important;
  line-height: 1.1em;
	}
	h3 {
  font-size: 36px !important;
  line-height: 1.2em;
	}
	h4 {
  font-size: 36px !important;
	}
  	p {
    font-size: 18px;
  }
   	li {
    font-size: 17px;
    line-height: 1.5em !important;
  }
}

/* FONTS MOBILE L */
@media screen and (max-width: 980px) {
	h1 {
        font-size: 47px !important;
        line-height: 1.2em;
    }
	.home h1 {
        margin-top: -4vh;
    }
    .animated_text_wrapper h1 {
	    line-height: 1.8em !important;
    }
	h2 {
		font-size: 34px !important;
		line-height: 1.1em;
	}
	h2.large {
		font-size: 40px !important;
	}
	h3 {
		font-size: 28px !important;
		line-height: 1.2em;
	}
	h4 {
		font-size: 24px !important;
		line-height: 1.2em;
	}
	p {
		font-size: 18px !important;
		line-height: 1.5em;
	}
	li {
		font-size: 17px !important;
		line-height: 1.5em;
	}
}
@media screen and (min-width: 768px) and (max-width: 980px) {
    h1 {
        font-size: 50px !important;
    }
}
/* FONTS MOBILE S */
@media screen and (max-width: 767px) {
    h1 {
        font-size: 47px !important;
    }
}
/* FONTS END */


/* MENU */
.home #main-header .logo_container {
	opacity: 0;
}
.home #main-header.et-fixed-header .logo_container {
	opacity: 1;
}
#main-header {
    background-color: transparent;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0);
  }
#main-header.et-fixed-header {
    background-color: #fff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .1);
  }
.et_header_style_slide #et-top-navigation {
  padding: 11px 0 !important;
}
#top-menu li.current-menu-item>a, #top-menu a {
	font-size: 0.9vw;
	color: #5470ff;
}
#top-menu .menu-item {
	padding-right: 11.7% !important;
}
#et-top-navigation {
	width: 100% !important;
	padding-left: 0 !important;
}
#top-menu-nav {
	width: 100% !important;
	padding-left: 60.5%;
}
#top-menu {
	 width: 100%;
}
#top-menu .menu-item:last-child {
	padding-right: 0 !important;
}

/* MENU DESKTOP */
@media screen and (min-width: 981px) { 
	#main-header .logo_container {
	height: 70px;
	margin-top: 10px;
	margin-bottom: 0px;
	}
#main-header.et-fixed-header .logo_container {
	height: 56px;
	margin-top: 4px;
	margin-bottom: 0px;
	}
}

/* MENU MOBILE */
@media screen and (min-width: 981px) { 
	.sfm-rollback, #sfm-sidebar, #sfm-overlay-wrapper {
		display: none !important;
	}
}
@media screen and (max-width: 980px) { 
	#et_mobile_nav_menu {
	display: none !important;
	}
	.et_fixed_nav #main-header {
    position: fixed;
  	}
  	.logo_container {
    max-height: 59px;
  	}
  	#main-header {
	  height: 54px !important;
  	}
  	.logo_container img {
		min-height: 33px;
		margin-top: 13px;
	}
	.et_menu_container {
		width: 90%;
	}
}
.sfm-navicon-button {
	margin-right: calc(5vw - 11px);
}
.sfm-sidebar-close {
	display: block !important;
	float: right;
	margin-right: 7px;
}
/* MENU END */


/* LAYOUT */
#page-container {
	padding-top: 0 !important;
	margin-top: 0 !important;
}
.hero-subpage .et_pb_row:first-child {
	padding-top: 12vh !important;
	margin-top: 0 !important;
}

/* LAYOUT DESKTOP */
@media screen and (min-width: 981px) {
	.hero-blog-page, .hero-contact .hero-content-row.et_pb_row, .contact-info.et_pb_row {
	padding-bottom: 4vh !important;
	}
	.hero-contact .contact-people-row.et_pb_row {
	padding-top: 4vh !important;
	}
	.home-bi-title, .home-ai-title, .home-culture-title {
	padding-top: 8vh;
	}
}
/* LAYOUT MOBILE L */
@media screen and (max-width: 980px) {
	.home-hero-content-row {
	min-height: 0 !important;
	}
	.home-hero-content-row .et_pb_icon {
	margin-top: 0 !important;
	}
	.et_pb_row {        
	margin-left: auto;
    margin-right: auto;
    width: 90%;
	}
	.hero-subpage .et_pb_row:first-child {
	padding-top: 14vh !important;
	}
	.hero-subpage .et_pb_row {
	min-height: 0;
	}
	.hero-subpage {
	padding-bottom: 0 !important;
	}
	.hero-subpage .hero-content-row.et_pb_row {
	padding-bottom: 50px !important;
	}
	.hero-subpage .hero-content-row .et_pb_text_0 {
	margin-top: 0 !important;
	}
	.partner-logos-section {
	padding-top: 0 !important;
	}
	#about .et_pb_image_wrap {
	max-height: 35vh;
	}
	.bi-row, .culture-row {
		flex-direction: column;
		display: flex;
	}
	.bi-analytics-column-1, .culture-services-column-1 {
		order: 2;
	}
	.bi-row, .ai-agents-row, .culture-row, .bi-analytics-column-1, .bi-analytics-column-2, .ai-agents-column-1, .ai-agents-column-2, .culture-services-column-1, .culture-services-column-2 {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
	}
	.bi-analytics-column-1, .bi-analytics-column-2, .bi-analytics-column-2 .et_pb_text, .ai-agents-column-1, .ai-agents-column-2, .culture-services-column-1, .culture-services-column-2 {
		padding-top: 0 !important;
	}
	#bi-analytics .bi-row.et_pb_row, #ai-agents .ai-row.et_pb_row, #culture .culture-row.et_pb_row {
		padding-top: 0 !important;
	}
	.home-services-section {
		padding-bottom: 0 !important;
	}
	.culture-services-column-2 {
		.et_pb_module {
			padding-top: 0 !important;
		}
	}
	.bi-section .et_pb_image_wrap, .ai-section .et_pb_image_wrap, .culture-section .et_pb_image_wrap {
		margin-top: 50px !important;
		margin-bottom: 0 !important;
		height: 40vh;
	}
	#bi-analytics, #ai-agents, #culture {
		padding-top: 17vh !important;
	}
	.bi-section, .ai-section, .culture-section {
		padding-bottom: 0 !important;
	}
	.culture-section {
		margin-bottom: 12vh !important;
	}
	.home-service-detail-section h3 {
		margin-bottom: 30px;
	}
	.home-service-detail-section .et_pb_button {
		margin-top: 20px;
	}
}
.home-service-card-text.et_pb_text {
	min-height: 140px;
}
.home-service-cards p {
	line-height: 1.5em;
}
.home-service-detail-section ul {
	margin-top: 20px;
}
/* ANIMATED HERO TITLE JUMP FIX */
@media screen and (max-width: 980px) { 
  .et_pb_module.dipl_text_animator, .et_pb_module.dipl_text_animator .et_pb_module_inner, .animated_text_wrapper, .animated_text_wrapper h1, .animated_text.dipl_main_part  {
    height: 68px !important;
  }
  .animated_text_wrapper.dipl-wave {
    margin-top: -22px;
  }
}
@media screen and (min-width: 981px) { 
  .et_pb_module.dipl_text_animator, .et_pb_module.dipl_text_animator .et_pb_module_inner, .animated_text_wrapper, .animated_text_wrapper h1, .animated_text.dipl_main_part  {
    height: 143px !important;
  }
}
  .animated_text.dipl_main_part {
    vertical-align: baseline !important;
  }
 /* ANIMATED HERO TITLE JUMP FIX END */
/* LAYOUT END */


/* BUTTONS */
.et_pb_button {
  font-size: 18px !important;
}
.et_pb_button:hover {
	transform: scale(1.15,1.15);
}
.home-services-section .et_pb_column_1_3:hover {
	transform: scale(1.05,1.05);
	transition: all 0.2s ease-in-out;
}

/* BUTTONS END */


/* GOODIN TEXT ANIMATION */
.logo-word-roller__inner .word {
  font-size: 0.85em;
  margin-top: 2px;
}
.goodin-text-animation-2 .logo-roller-scope {
  --goodin_green: transparent;
}
.goodin-text-animation-2 .word {
  color: #fff;
}
/* GOODIN TEXT ANIMATION END */

/* LOGO GRID */
@media screen and (max-width: 980px) {
	.home .logo-grid .et_pb_column {
	width: 33% !important;
	}
	.partner-logos-section .et_pb_column_1_6 {
	width: calc(33% - 5px) !important;	
	margin-right: 9px !important;
	}
}
/* LOGO GRID END */


/* PEOPLE PAGE */
.et_pb_team_member_description h4 {
  font-size: 26px !important;
}
.et_pb_team_member_image {
  min-width: 100%;
}
@media screen and (min-width: 981px) and (max-width: 1500px) {
	.hero-people .et_pb_column:nth-child(1) {
		width: 70%;
		margin-right: 0;
		padding-right: 10px;
	}
	.hero-people .et_pb_column:nth-child(2) {
		width: 30%;
		margin-top: 40px;
	}
}
@media screen and (min-width: 981px) {	
	.people-grid .et_pb_row {
		padding-bottom: 40px;
	}
}
.people-grid.et_pb_section.et_section_regular {
	background-color: #f9f1ea !important;
}
/* PEOPLE PAGE END */


/* PARTNERS PAGE */
@media screen and (min-width: 981px) {
	.partner-logos-section h2 {
	font-size: 42px !important;
	}
	.partner-logos-section.et_pb_row .et_pb_column_1_2, .partner-logos-section.et_pb_row .et_pb_column_1_2 {
	width: 50%;
	margin-right: 0;
	}
	.partner-logos-section.et_pb_row .et_pb_column_1_6, .partner-logos-section.et_pb_row .et_pb_row .et_pb_column_1_6 {
    width: calc(16.6% - 6px);
  		margin: 0;
  		margin-right: 9px;
	}
}
@media screen and (max-width: 980px) {
	.partner-logos-section .et_pb_text_1, .partner-logos-section .et_pb_button_0_wrapper {
		margin-top: 0 !important;
	}
}
.partner-logos-section .et_pb_image {    
  background-color: rgba(0, 0, 0, 0.03);
  margin-bottom: 10px !important;
}
.partner-logos-section .et_pb_image img {
	filter: saturate(0%) brightness(0.2);
    backface-visibility: hidden;
 }  
 .partner-logos-section .et_pb_column:nth-child(4) .et_pb_image:nth-child(3) img {
	filter: saturate(0%) brightness(1);
 }
 .partner-text-arrows {
	 color: #8a9dff; 
	 font-size: 24px
 }
 
/* PARTNERS PAGE END */


/* BLOG */
.single-post .container {
	width: 90%;
}
.single-post #main-content {
	background-color: transparent;
	padding-top: 10vh;
}
.single-post .et_pb_section {
	background-color: transparent;
}
.et_right_sidebar #main-content .container:before {
	display: none;
}
@media screen and (max-width: 980px) {
	.et_pb_blog_0 .et_pb_post h2.entry-title {
		font-size: 32px !important;
		margin-bottom: 15px;
	}
}
/* BLOG END */

/* FOOTER */
.main-footer-logo-row img {
	filter: brightness(1.05) hue-rotate(3deg);
}
.main-footer {
	    background-color: #7780ff !important;
}
.main-footer .et_pb_image {
	filter: brightness(115%);
    backface-visibility: hidden;
    max-width: 34%;
    text-align: left;
    margin-left: 0;
}
.main-footer p, .main-footer h5 {
	color: #fff;
}
.main-footer a {
	color: rgba(255, 255, 255, 0.7) !important;
}
.main-footer h5 {
	line-height: 1.4em;
	}
.main-footer p, .main-footer a {
	line-height: 1.8em;
}
.main-footer .et_pb_text {
	margin-bottom: 0;
}
/* FOOTER END */

/* HERO TITLE ANIMATIONS */
.home-logo-transition {
	animation: zoomin 1s;
    -webkit-animation: zoomin 1s;
    -moz-animation: zoomin 1s;
    -ms-animation: zoomin 1s;
    
    transform: scale(0.6,0.6);    
    -webkit-transform: scale(0.6,0.6);
    -moz-transform: scale(0.6,0.6); 
    -ms-transform: scale(0.6,0.6); 
    
  	opacity: 1;

    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;

    -webkit-animation-timing-function: ease-out; 
    animation-timing-function: ease-out; 
    -moz-animation-timing-function: ease-out;
    -ms-animation-timing-function: ease-out;
    
    animation-delay: 0s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    }

.hero-home-h1 {
	animation: zoomin 1.1s;
    -webkit-animation: zoomin 1.1s;
    -moz-animation: zoomin 1.1s;
    -ms-animation: zoomin 1.1s;
    
    transform: scale(0.3,0.3);    
    -webkit-transform: scale(0.3,0.3);
    -moz-transform: scale(0.3,0.3); 
    -ms-transform: scale(0.3,0.3); 
    
  	opacity: 0;

    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;

    -webkit-animation-timing-function: ease-in-out; 
    animation-timing-function: ease-in-out; 
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    
    animation-delay: 0.2s;
    -webkit-animation-delay: 0.2s;
    -moz-animation-delay: 0.2s;
    -ms-animation-delay: 0.2s;
    }

.hero-blog-page h1, .hero-contact h1 {
	animation: zoomin 0.5s;
    -webkit-animation: zoomin 0.5s;
    -moz-animation: zoomin 0.5s;
    -ms-animation: zoomin 0.5s;
    
    transform: scale(0.5,0.5);    
    -webkit-transform: scale(0.5,0.5);
    -moz-transform: scale(0.5,0.5); 
    -ms-transform: scale(0.5,0.5); 
    
  	opacity: 0.05;

    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;

    -webkit-animation-timing-function: ease-in-out; 
    animation-timing-function: ease-in-out; 
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    
    animation-delay: 0s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    }

@-webkit-keyframes zoomin {
	100% {
		-webkit-transform: scale(1,1);
		opacity: 1;
		}
	}
@keyframes zoomin {
	100% {
	transform: scale(1,1);
	-moz-transform: scale(1,1); 
	-ms-transform: scale(1,1); 
    opacity: 1;
		}
	}
/* HERO TITLE ANIMATIONS END */


/* COOKIE YES */
@media screen and (min-width: 768px) {
	.cky-consent-bar {
	padding-left: 5% !important;
	padding-right: 5% !important;
	}
}

@media screen and (min-width: 981px) {
	.cky-notice {
	width: 80vw;
	max-width: 1680px;
	margin-left: auto;
	margin-right: auto;
	}
}
.cky-notice-des {
	max-width: 600px;
}
.cky-btn-revisit-wrapper {
	display: none !important;
}
@media screen and (max-width: 980px) {
.cky-notice-des p {
	font-size: 14px !important;
	line-height: 1.3em;
	}
    .cky-notice-btn-wrapper .cky-btn {
        padding-top: 4px !important;
        padding-bottom: 4px !important;
	}
	.cky-notice-btn-wrapper {
		margin-top: 0 !important;
	}
}
/* COOKIE YES END */