/*
 Theme Name: THK
 Theme URI: https://www.theodor-heuss-kolleg.de/
 Description: A custom child theme for THK
 Author: Alexander von Freeden
 Author URI: https://laikalaika.de/
 Template: generatepress
 Version: 1.0
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*
 * Colors
 * THK green: #37B34A
 * THK dark gray: #414042
 * THK purple: #5b2851
 * THK light gray: #e6e7e8
*/

/* 
 * Some general styles for browser functions
 */
 
/* Changing the color of selected text */

::selection {
  background: #5b2851;
  color: #fff;
}
::-moz-selection {
  background: #5b2851;
  color: #fff;
}


/* 
 * GeneratePress
 */
 
/* Page transition */
/* Source: https://generatepress.com/forums/topic/fade-in-on-page-load/ */
 
body {
    opacity: 1;
    transition: 1s opacity;
}
body.fade-out {
    opacity: 0;
    transition: none;
}

html {
        background-color: black;
    }

/* General Link Styles */
	
.entry-content p a, .inside-article p a{
		color: #37B34A;
		border-bottom: 1.5px solid #37B34A!important;
		background-color: transparent!important;
		transition: background-color 0.5s!important;
}

.entry-content p a:hover, .inside-article p a:hover {		
			color: #fff!important;
			background-color: #37B34A!important;
}	

/* Turning on Hyphenation */
/* @link http://clagnut.com/blog/2395/ */

p {
    -webkit-hyphens: auto;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 3;
    -webkit-hyphenate-limit-chars: 6 3 3;
    -webkit-hyphenate-limit-lines: 2;
    -webkit-hyphenate-limit-last: always;   
    -webkit-hyphenate-limit-zone: 8%;

    -moz-hyphens: auto;
    -moz-hyphenate-limit-chars: 6 3 3;
    -moz-hyphenate-limit-lines: 2;  
    -moz-hyphenate-limit-last: always;
    -moz-hyphenate-limit-zone: 8%;

    -ms-hyphens: auto;
    -ms-hyphenate-limit-chars: 6 3 3;
    -ms-hyphenate-limit-lines: 2;
    -ms-hyphenate-limit-last: always;   
    -ms-hyphenate-limit-zone: 8%;

    hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    hyphenate-limit-lines: 2;
    hyphenate-limit-last: always;   
    hyphenate-limit-zone: 8%;
}

.no-hyphenation {
	-webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

/* Removing round corners of the GeneratePress Back-to-top button */
.generate-back-to-top, .generate-back-to-top:visited {
	border-radius: 0;
}
 
 
/* Mobile Menu */

/* Initiating the mobile navigation at a different width  */
/* @link https://gist.github.com/generatepress/282078076cd8631c17717d5b8640c043*/

@media( max-width: 840px ) {
	.site-header,
	#site-navigation,
	#sticky-navigation {
		display: none !important;
		opacity: 0;
	}

	#mobile-header {
		display: block !important;
		opacity: 1;
		width: 100% !important;
	}

        #mobile-header .main-nav > ul {
            display: none;
        }

	#mobile-header.toggled .main-nav > ul,
        #mobile-header .menu-toggle,
        #mobile-header .mobile-bar-items {
            display: block;
        }
}

/* Mobile Menu */

.mobile-header-navigation .mobile-header-logo img {
    height: 86px!important;
	padding: 10px 10px 10px 0!important;
}

.mobile-header-navigation.navigation-stick .mobile-header-logo img {
    height: 60px!important;
	padding: 10px 10px 10px 0!important;
}

.main-navigation .main-nav ul ul li a {
    padding: 0 18px 0 10px!important;
}

/* Adding a Dash before sub-menu items on Mobile menu */
@media( max-width: 840px ) {
.main-navigation .main-nav ul ul li a::before {
  content: "—";
  padding-right: 8px;
}
}

.main-navigation .main-nav ul li a, .menu-toggle, .main-navigation .mobile-bar-items a {
    padding-left: 10px!important;
    padding-right: 18px;
}

@media ( max-width: 840px ) {
    .main-navigation.toggled .main-nav>ul {
        background-color: #37B34A !important;
    }
}

@media only screen and ( max-width: 840px ) and ( min-width: 480px )  {

.navigation-branding img, .site-logo.mobile-header-logo img {
    height: 90px!impmortant;
    width: auto;
}
}

/* Adjusting colors for Mobile Menu */
@media( max-width: 840px ) {
.main-navigation .main-nav ul li:hover > a, .main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a,.main-navigation .main-nav ul li[class*="current-menu-"] > a , .main-navigation .main-nav ul li[class*="current-menu-"] > a:hover, .main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a {
    color: #414042!important;
    background-color: rgba(63,63,63,0);
}
}

@media( max-width: 840px ) {.main-navigation .main-nav ul ul li[class*="current-menu-"] > a , .main-navigation .main-nav ul ul li[class*="current-menu-"] > a:hover, .main-navigation .main-nav ul ul li[class*="current-menu-"].sfHover > a {
    color: #fff!important;
}
}
 
/* Sticky Navigation Colors */
 
.main-navigation.navigation-clone {
    background-color: #37B34A;
}

.main-navigation.navigation-stick .main-nav ul li a:hover {
    color: #414042;
}

.main-navigation.navigation-stick .main-nav ul li[class*="current-menu-"] > a {
    color: #414042;
}

/*Changing color of parent item when hovering over submenu item in sticky navigation */
/* @link https://basicwp.com/menu-highlighted-sub-menus-hover/ */
/* @link https://generatepress.com/forums/topic/menu-colours/page/2/#post-592013 */

#sticky-navigation .main-nav ul li.sfHover > a, #sticky-navigation .main-nav ul li:hover > a {
	color: #414042!important;
}

#sticky-navigation .main-nav ul ul li.sfHover > a, #sticky-navigation .main-nav ul ul li:hover > a {
/*	color: #414042!important;*/
	color: #ffffff!important;
}


.main-navigation .main-nav ul ul li:hover > a, .main-navigation .main-nav ul ul li:focus > a, .main-navigation .main-nav ul ul li.sfHover > a {
    color: #ffffff!important;
    background-color: #5b2851;
}



/* Give transparent mobile navigation green background when menu is toggled */
.main-navigation.mobile-header-navigation.toggled {
background-color: #37B34A;
}

/* Reduce line height of menu items */

.main-navigation .main-nav ul li a
/*.menu-toggle, .main-navigation .mobile-bar-items a , */{
    line-height: 64px!important;
}


/* SUB-NAVIGATION CURRENT ITEMS */

.main-navigation.navigation-stick .main-nav ul ul li[class*="current-menu-"] > a {
	color: #FFFFFF!important;
	background-color: #5b2851;
}

.main-navigation.navigation-stick .main-nav ul ul li[class*="current-menu-"]:hover > a, 
.main-navigation.navigation-stick .main-nav ul ul li[class*="current-menu-"]:focus > a, 
.main-navigation.navigation-stick .main-nav ul ul li[class*="current-menu-"].sfHover > a {
	color: #FFFFFF!important;
	background-color: #5b2851;
}



/*@media( min-width: 841px ) {
.nav-float-right .is_stuck.main-navigation ul {
    padding-right: 40px;
}
}*/

.main-navigation .navigation-logo img {
    padding-left: 40px!important;
}




/* HEADER */
/* From GP Site template "Volume" */

.inside-header, .author-box, #post-nav a, #post-nav .post-nav-wrap, .section-box .generate-sections-inside-container, .flex-inner>div, .two-column .generate-sections-inside-container>div {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media (max-width: 840px) {
    .inside-header {
        padding: 25px 25px 15px 10px;
    }
}

/* Header for PROGRAMS */

.thk-programs-header-page-title {
padding-bottom: 0!important;
}

/* Footer */

.site-info {
    display: none;
}

.footer-widgets .widget {
    font-weight: bold;
	text-align: center;
	font-size: 16px;
	font-size: 1rem;
	text-transform: uppercase;
}


.Zebra_Tooltip .Zebra_Tooltip_Message {
    text-align: center;
	    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
	font-size: 16px;
font-size: 1rem;
line-height: 1.6;
}
/*
.Zebra_Tooltip {
    margin-top: -62px!important;
}

.Zebra_Tooltip .Zebra_Tooltip_Arrow_Bottom {
    bottom: -62px;
}*/


/*-----------------------------------------------------------------------------------*/
/* Overriding Bootstrap Styles for SEOpress breadcrumbs
/*-----------------------------------------------------------------------------------*/

.breadcrumb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 0 0 0.1rem;
    margin-bottom: 0;
    list-style: none;
    background-color: transparent;
    border-radius: 0;
	color: #fff!important;
font-size:12px;
	font-size:0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.025rem;
}

.breadcrumb a {
	color: #fff!important;
}

.breadcrumb a:hover {
	color: #37b34a;
}

.breadcrumb-item, .breadcrumb-item.active {
    color: #fff!important;
}

	
/* 
 * Font Awesome
 */
.fa, .fab, .fal, .far, .fas {
    font-weight: normal;
	padding-left: 5%;
}

.thk-footer-social {
	font-size:20px;
	font-size:1.25rem;
}

/* 
 * Caldera Forms
 */

select, option  {
	-moz-appearance: none; /* Gecko */
    -webkit-appearance: none; /* WebKit/Chromium */
    appearance: none;
    border: none;
    }

/* Internet Explorer 10–11 and Edge */
select::-ms-expand {
    display: none;
    }

select option {
    color: #414042;
    }
	
select option:hover,
select option:focus,
select option:active {
        background: linear-gradient(#5b2851, #5b2851);
        background-color: #5b2851 !important; /* for IE */
        color: #fff !important;
    }

select option:checked {
        background: linear-gradient(#5b2851, #5b2851);
        background-color: #5b2851 !important; /* for IE */
        color: #fff !important;
    }
	
select:focus::-ms-value {
    background-color: transparent;
    }	

select {
    cursor: pointer;
    }

.select-wrapper {
      width: 100%;
      position: relative;
    }

.select-wrapper::before {
    font-family: GeneratePress;
    content: "\f107";
	font-size: 16px;
	font-size: 1rem;
    position: absolute;
    right: 25px;
    top: 20px;
    color: #fff;
	pointer-events: none;
    }



/*** FIELD STYLING ***/
.caldera-grid .form-control {
    color: #fff !important;
    background: transparent!important;
	border: 2px solid #fff!important;
    height: auto!important;
    padding: 20px 25px!important;
	border-radius: 0!important;
}

/*** BUTTON STYLING ***/
.caldera-grid input[type=submit] {
    text-transform: uppercase;
    padding: 12px 15px;
    border-radius: 0!important;
    background: #fff;
    color: #37B34A;
	border: none;
	font-weight: bold;
	font-size: 16px;
	font-size: 1rem;
}

/*** BUTTON HOVER STYLING ***/
.caldera-grid input[type=submit]:hover {
    background: #414042;
	border: none;
    color: #fff;
}
	
/*** PLACEHOLDER STYLING ***/
input::-webkit-input-placeholder {
    color: #414042!important;
}
input:-moz-placeholder {
    color: #414042!important;
}
input::-moz-placeholder {
    color: #414042!important;
}
input:-ms-input-placeholder {
    color: #414042!important;
}
textarea::-webkit-input-placeholder {
    color: #414042!important;
}
textarea:-moz-placeholder {
    color: #414042!important;
}
textarea::-moz-placeholder {
    color: #414042!important;
}
textarea:-ms-input-placeholder {
    color: #414042!important;
}
/*** TEXTAREA TRANSITION ***/
.caldera-grid textarea.form-control {
    height: 10em;
    transition: height .3s ease-out;
}
/*** TEXTAREA FOCUS HEIGHT ***/
.caldera-grid textarea.form-control:focus {
    height: 25em;
}
/*** Applies border to field selected and disables shadow ***/
.caldera-grid .form-control:focus {
	border: 2px solid #414042;
    border-color: #414042!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
}

/* Caldera Alerts */

.caldera-grid .has-error .checkbox, .caldera-grid .has-error .checkbox-inline, .caldera-grid .has-error .control-label, .caldera-grid .has-error .form-control-feedback, .caldera-grid .has-error .help-block, .caldera-grid .has-error .radio, .caldera-grid .has-error .radio-inline, .caldera-grid .has-error.checkbox label, .caldera-grid .has-error.checkbox-inline label, .caldera-grid .has-error.radio label, .caldera-grid .has-error.radio-inline label {
    color: #5b2851!important;
	font-size: 16px!important;
	font-size:1rem!important;
line-height: 1.6!important;
}


.caldera-grid .has-error .form-control:focus {
	border: 2px solid #414042;
    border-color: #414042!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
}

.caldera-grid .alert-danger, .caldera-grid .alert-error, .caldera-grid .alert-info, .caldera-grid .alert-success, .caldera-grid .alert-warning {
    text-shadow: none!important;
}

.caldera-grid .alert-success {
    background-color: transparent!important;
	border: 2px solid #414042;
    border-color: #414042!important;
    color: #414042!important;
	text-align: center!important;
	line-height: 1.6!important;
    font-size: 20px!important;
    font-size: 1.25rem!important;
}



/* 
 * Home page background video
 * Source: https://docs.generatepress.com/article/page-hero-background-video/
 */

.background-video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
}

.page-hero {
    position: relative;
    overflow: hidden;
}

.background-video-content {
    position: relative;
    z-index: 1;
}

.background-video-content p {
	font-weight: 500;
	line-height: 1.7;
}

.background-video-content p a {
			border-bottom: 1px solid #37B34A;
			color: #37B34A;
		background-color: transparent;
		transition: background-color 0.5s;
}

.background-video-content p a:hover {		
			color: #fff;
			background-color: #37B34A;
}
	

video[poster] {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* 
 * Styling Co-Blocks Plugin
 */

.wp-block-coblocks-accordion-item__title {
    background: #e6e7e8;
    border-radius: 0;
color: #414042;
}
 
.wp-block-coblocks-accordion-item__title:hover,
.wp-block-coblocks-accordion-item__title:active,
.wp-block-coblocks-accordion-item__title:focus {
    background: #414042;
color: #fff;
}

.wp-block-coblocks-accordion-item details[open] summary {
    border-radius: 0;
}

.wp-block-coblocks-accordion-item__content {
    border: 0;
    border-radius: 0;
    margin-top: -1px;
    padding: 15px 20px;
    background-color: #e6e7e8;
}


/*-----------------------------------------------------------------------------------*/
/* THK Custom Styles
/*-----------------------------------------------------------------------------------*/
 
/* "Co-creators" sub-page: Aligning the logos with the drop-down/accordion tab using Flexbox for screen sizes when elements are not stacked */

@media( min-width: 600px ) {
.thk-vertical-center-flex {
  display: flex!important;
  flex-direction: column!important;
  justify-content: center!important;
} 


/* Pushing down the opened drop-down */
.wp-block-coblocks-accordion-item details[open] summary {
    margin-top: 38px;
}
}

/* Fixing a mobile issue of elements not aligning
@media( max-width: 598px ) {
.wp-block-coblocks-accordion-item details[open] summary {
    margin-top: 40px;
}
}*/

/* Styling the Contact Form on the Home page*/
.thk-home-contact-form {
font-size:28px;
font-size:1.75rem;
font-weight: 700;

}

@media( max-width: 840px ) {
.thk-home-contact-form {
		padding: 0 10px;
}
}

@media( min-width: 841px ) {
.thk-home-contact-form {
		padding: 0 10%;
}
}

.thk-button.ghost, .thk-button.ghost:visited {     
    background: transparent;     
    border: 2px solid #FFF; 
	padding:10px;
	color:#fff;
	font-weight: bold;
	text-transform: uppercase;
} 

.thk-button.ghost:hover, 
.thk-button.ghost:active {     
    background: #FFFFFF;     
border: 2px solid #FFF; 
    color: #37B34A;

}

.thk-img-fade  {
  -webkit-transition: opacity 2s ease-out;
  -moz-transition: opacity 2s ease-out;
  -o-transition: opacity 2s ease-out;
  transition: opacity 2s ease-out;
}

.thk-img-fade:hover img { 
opacity:.5;
  -webkit-transition: opacity 0.5s ease;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.thk-landing-tiles a {
	font-weight: 900;
	font-size:28px;
	font-size:1.75rem;
	border-bottom: 0!important;
	transition: color 0.5s;
}

.thk-landing-tiles a:hover {
	color: #37B34A!important;
	background-color: transparent!important;
}


.thk-button-small, .thk-button-small:visited {
font-size:16px!important;
font-size:1rem!important;
    background: transparent!important;     
    border: 2px solid #414042!important; 
	padding:10px!important;
	color:#414042!important;
	font-weight: bold!important;
	margin: 10px!important;
	border-radius: 0!important;
}

.thk-button-small:hover, 
.thk-button-small:active,
.thk-button-small:focus  {
	color:#fff!important;
	background: #37B34A!important; 
	border: 2px solid #37B34A!important; 
}


.thk-formercollabs-nolink p {
	margin-bottom: 0!important;
}

.thk-formercollabs-nolink {
background: #e6e7e8;
padding: 15px!important;
margin-bottom:1.6em!important;
}

/*-----------------------------------------------------------------------------------*/
/* Ultimate Addons for Gutenberg
/*-----------------------------------------------------------------------------------*/

/* Testimonial Slider*/

#slick-slide00 {
padding-top: 3rem!important;
}


/*hacky solution to fix jumping of first slide by forcing in into three lines of text */
/*@media( min-width: 841px ) {
	#slick-slide00 {
padding-left: 3rem;
padding-right: 3rem;
}
}*/

#slick-slide01 {
padding-top: 1.5rem!important;
}


.uagb-testimonial__wrap, .uagb-testimonial__wrap * {
    padding: 0 4%;
}

.uagb-tm__meta {
	display:none;
}


/*-----------------------------------------------------------------------------------*/
/* CSS modification for iubenda Privacy Policy
/*-----------------------------------------------------------------------------------*/
#iubenda_policy p, #iubenda_policy ul.styled li, #iubenda_policy ul li { 
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif!important;
    color: #414042!important;
	font-size: 1rem!important;
    line-height: 1.75!important;
	font-style: normal!important;
}

#iubenda_policy h1,#iubenda_policy h2,#iubenda_policy h3, #iubenda_policy h4 { 
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif!important;
	font-weight: bold!important; 
	font-style: normal!important;
	color: #414042!important;
}

#iubenda_policy h1 {
    display: none!important;
}
	
#iubenda_policy .iub_content {
    padding: 10px 0px!important;
}

#iubenda_policy h2 {
	font-variant: normal!important;
	text-align: left!important;
	font-size:36px!important;
	font-size:2.25rem!important;
    line-height: 1.4em!important;
}

#iubenda_policy p {
	font-size:22px!important;
	font-size:1.375rem!important;
    line-height: 1.75!important;
    margin-bottom: 12px!important;
}

#iubenda_policy h3, #iubenda_policy h4 {
	font-size:28px!important;
	font-size:1.75rem!important;
    line-height: 1.75!important;
}

#iubenda_policy ul.styled li, #iubenda_policy ul li {
	font-size:22px!important;
	font-size:1.375rem!important;
    line-height: 1.75!important;
    margin-bottom: 12px!important;
}

#iubenda_policy a:not(.btn) {
    color: #37B34A!important;
}

#iubenda_policy a:hover:not(.btn) {
    color: #fff!important;
    border-bottom-color: #37B34A!important;
}

#iubenda_policy .simple_pp > ul > li > ul .iconed {
    background-position: 2px 36px!important;
}

#iubenda_policy .box_10 > .w_icon_24, #iubenda_policy .box_10.expand > .w_icon_24, #iubenda_policy .box_10 > .w_icon_24.expand-click, #iubenda_policy .box_10.expand > .w_icon_24.expand-click {
    background-position: 10px 24px!important;
}

/*-----------------------------------------------------------------------------------*/
/* CSS modifications for Flipbox Plugin - PDF embed in publications
/*-----------------------------------------------------------------------------------*/
.thk-flipbook {
display:block;
}

p.thk-flipbook{
font-size:16px!important;
font-size:1rem!important;
line-height: 1.6!important;
padding-top: 10px!important;
padding-left: 10px!important;
transition: color 0.5s!important;
font-weight: 400!important;
}

p.thk-flipbook:hover {		
	color: #37B34A!important;
}	

/*-----------------------------------------------------------------------------------*/
/* Google Maps
/*-----------------------------------------------------------------------------------*/

/* 
 * Styling the ACF map for 'Programs'
 */

.acf-map {
	width: 100%;
	height: calc( 100vh - 12rem );
	border: 0;
	margin: 20px 0;
}

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

/* fixes potential theme css conflict */
.acf-map img {
   max-width: inherit !important;
}

#map-canvas {
	width:    100%;
	height:   500px;
	border: 0;
	margin: 0;
}
	

/* 
 * Styling the infowindow
 */

.gm-style .gm-style-iw-c {
    position: absolute;
    box-sizing: border-box;
    overflow: hidden;
    top: 0;
    left: 0;
    transform: translate(-50%,-100%);
    background-color: #fff;
    border-radius: 0;
    padding: 12px 36px;
    box-shadow: none;
}

.gm-style .gm-style-iw-t { 
    background-color: #fff;
	}

.gm-style .gm-style-iw-c, ._ffn_textNode {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-style: normal;
	color: #414042;
	text-align: center;
}

.gm-style .gm-style-iw-c .h3, .gm-style .gm-style-iw-c .h4 {
	font-weight:800!important;
}

.gm-style .gm-style-iw-d .h3, .gm-style .gm-style-iw-d .h4 {
	font-weight:800!important;
}

/* Hiding the "x" closing button in the infowindow */
button.gm-ui-hover-effect {display: none!important;}

/*-----------------------------------------------------------------------------------*/
/* Plugin Content Views - Publications Grid View
/*-----------------------------------------------------------------------------------*/

.pt-cv-ctf-publication_grid_image {
	padding: 0 5% 5%!important;
}

.pt-cv-view .pt-cv-readmore {
	margin-top: 2em;
}

.pt-cv-wrapper .btn {
    color: #414042; 
	border: 2px solid #414042; 
	padding: 8px;
	font-weight: 700!important; 
	border-radius:0;
	background-color: transparent;
	}


.pt-cv-wrapper .btn:hover,
.pt-cv-wrapper .btn:active,
.pt-cv-wrapper .btn:focus {
	color:#fff;
	background-color: #37B34A; 
	border: 2px solid #37B34A; 
	}
	
/* Custom Styles for Grids for Landing Pages */
.thk-cv-landing-tiles .pt-cv-title {
	font-size: 28px!important;
	font-size: 1.75rem!important;
}
	
.thk-cv-landing-tiles .pt-cv-title a {
	font-weight: 900!important;
}
