/*
Theme Name:   GeneratePress Child
Description:  GeneratePress Child Theme
Author:       Felix Zörb
Author URI:   https://felixzoerb.de
Template:     generatepress
Version:      1.0.0
Text Domain:  generatepresschild
*/

/* ============================================
   BASE STYLES
   ============================================ */

html {
  scroll-behavior: smooth;
}

html, body {
  color: var(--dark);
  font-family: 'BillCorpMed';
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
}

h1 span,
h2 span {
  color: #008751;
}

h1, h2, h3, h4, h5, h6,
p, a, span {
  hyphens: auto !important;
}

p.has-text-align-center,
.esab__container {
  max-width: 740px;
  margin: 0 auto !important;
}

/* ============================================
   LAYOUT
   ============================================ */

.one-container .site-content {
  padding: 0 2rem;
}

.entry-header {
  display: none;
}

.entry-content:not(:first-child) {
  margin-top: 0;
}

@media (max-width: 768px) {
  .one-container .site-content {
    padding: 0;
  }
}

/* ============================================
   HEADER & NAVIGATION
   ============================================ */

.site-header {
  position: relative;
  width: 100%;
  background: #fff;
  z-index: 999;
}

.inside-header {
  padding: 2rem;
}

.site-header .header-image {
  height: 3rem;
  width: 100%;
}

img.header-image {
  position: relative;
  z-index: 999;
}

.main-navigation,
.main-navigation ul ul {
  background-color: transparent;
}

.main-navigation .main-nav > ul {
  gap: .5rem;
}

.main-navigation .main-nav ul li a {
  padding: .5rem 2rem;
  line-height: normal;
}

.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a {
  color: #fff;
  background: #414042;
  border-color: #414042;
}

/* Mobile Menu */
.mobile-menu-control-wrapper .menu-toggle,
.mobile-menu-control-wrapper .menu-toggle:hover,
.mobile-menu-control-wrapper .menu-toggle:focus,
.has-inline-mobile-toggle #site-navigation.toggled {
  background-color: transparent;
}

@media (max-width: 768px) {
  .inside-header {
    padding: 1.5rem;
  }
}

/* ============================================
   BUTTONS
   ============================================ */

.wp-block-button .wp-block-button__link,
a.wp-block-button__link:not(.has-background) {
  padding: .5rem 2rem;
  border-radius: 0;
  background-color: #0038ca;
}

a.wp-block-button__link:not(.has-background):hover {
  background-color: #001a5b;
}

li.btn.btn-primary a {
  padding: .5rem 2rem;
  border-radius: 0;
  background-color: #008751;
  border: 2px solid #008751;
  color: #fff !important;
}

li.btn.btn-primary-outline a {
  padding: .5rem 2rem;
  border-radius: 0;
  background-color: transparent;
  border: 2px solid #008751;
}

li.btn.btn-primary:hover a {
  color: #fff;
  background: #414042;
  border-color: #414042;
}

.btn-white {
  background-color: #fff;
  color: #000;
}

.btn-yellow,
.btn-yellow.wp-block-button .wp-block-button__link,
.btn-yellow a.wp-block-button__link:not(.has-background) {
  background-color: #efd348;
  color: #000;
}

.btn-bottom {
  position: absolute;
  bottom: 2rem;
  top: 20rem;
  left: 0;
  right: 0;
}

/* ============================================
   WORDPRESS BLOCKS
   ============================================ */

/* Block Cover */
.wp-block-cover__inner-container {
  max-width: 1200px;
  padding: 6rem 2rem;
  margin: 0 auto;
}

.wp-cover-tkp .wp-block-cover__inner-container {
  padding: 0;
  bottom: 4rem;
  position: absolute;
  right: 4rem;
}

/* Block Group */
.site-main .wp-block-group__inner-container {
  padding: 6rem 2rem;
}

@media (max-width: 991px) {
  .site-main .wp-block-group__inner-container {
    padding: 3rem 1.5rem;
  }
}

@media (max-width: 768px) {
  .site-main .wp-block-group__inner-container {
    padding: 3rem 1.5rem;
  }
  
  .site-main .wp-block-group__inner-container .wp-block-group__inner-container {
    padding: 0;
  }

  .wp-block-group + .wp-block-group:not(.has-background) .wp-block-group__inner-container {
    padding-top: 0;
  }
}

/* Block Media Text */
.wp-block-media-text .wp-block-media-text__content {
  padding: 0 2rem;
}

/* ============================================
   COMPONENTS
   ============================================ */

/* Gradient Background */
.bg-gradient {
  background: linear-gradient(135deg, #00a0fe, #0038c9);
  color: #fff;
  width: fit-content;
  padding: 0.25rem 1rem;
}

@media (max-width: 768px) {
  .bg-gradient {
    padding: 1.5rem;
  }
}

/* Quote */
.quote {
  border-left: .25rem solid #0038ca;
  padding-left: 1.5rem;
  color: #0038ca;
  font-size: 1.5rem;
}

.quote-light {
  border-color: #fff;
  color: #fff;
}

@media (max-width: 768px) {
  .quote {
    margin-bottom: 0;
  }
}

/* Icons */
.icons .fas {
  color: #fff;
  border: 2px solid white;
  padding: 2rem;
  border-radius: 50rem;
  margin-bottom: 1.5rem;
  font-size: 2.5rem;
}

/* Cards */
.cards .wp-block-image {
  margin-bottom: 1.5rem;
}

.cards h3 {
  font-size: 1.75rem;
  font-weight: 900;
}

.cards-icon .wp-block-image img {
  max-height: 12rem;
}

.cards-center .wp-block-column {
  text-align: center;
}

/* ============================================
   SECTIONS
   ============================================ */

/* KI Assistent */
.ki-assistent .wp-block-group__inner-container {
  padding: 0 !important;
}

.ki-assistent .phone {
  color: #0038ca;
  background: #fff;
  text-align: center;
  border-radius: 50rem;
  padding: 1rem;
  font-size: 2rem;
  font-weight: 600;
  max-width: 48rem;
  margin: 3rem auto 1.5rem;
}

.ki-assistent .phone a {
  color: #0038ca;
  text-decoration: none;
}

.ki-assistent .small {
  max-width: 48rem;
  margin: 0 auto 3rem;
  font-size: .875rem;
}

/* Kontakt */
.kontakt {
  margin-bottom: 8rem;
}

@media (min-width: 992px) {
  .kontakt .wp-block-columns {
    gap: 15%;
  }
}

/* LinkedIn */
#linkedin .linkedin-inner {
  border: 2px solid white;
}

#linkedin .wp-block-button__link,
.wp-block-valnew-fonio-form .fonio-form__submit,
.has-white-background-color {
  padding: 1.25rem 5rem;
  line-height: normal;
  border-radius: 50rem;
  background-color: #469ff7 !important;
  border: 2px solid #469ff7;
  color: #fff !important;
  font-weight: 900;
  font-size: 1.5rem;
  font-family: 'BillCorpMed';
  transition: .4s;
}

#linkedin .wp-block-button__link:hover,
.wp-block-valnew-fonio-form .fonio-form__submit:hover {
  background: #0038ca !important;
  border-color: #0038ca !important;
}

@media (max-width: 991px) {
  #linkedin .wp-block-button__link {
    padding: 1rem;
    font-size: 1rem;
  }
  
  .site-main .wp-block-group__inner-container .linkedin-inner .wp-block-group__inner-container {
    padding: 1rem;
  }
  
  .site-main .wp-block-group__inner-container .linkedin-inner {
    margin: 1.5rem 1.5rem 3rem;
  }
}

/* ============================================
   FORMS
   ============================================ */

/* Everest Forms */
.everest-forms {
  background-color: transparent;
  padding: 2rem;
  border: 3px solid #fff;
}

.evf-container.default {
  margin-bottom: 0;
}

.evf-field-container {
  margin-bottom: 1.5rem;
}

.evf-submit-container {
  text-align: center;
}

.everest-forms input[type='text'],
.everest-forms input[type='date'],
.everest-forms input[type='datetime-local'],
.everest-forms input[type='email'],
.everest-forms input[type='file'],
.everest-forms input[type='image'],
.everest-forms input[type='month'],
.everest-forms input[type='number'],
.everest-forms input[type='password'],
.everest-forms input[type='range'],
.everest-forms input[type='search'],
.everest-forms input[type='tel'],
.everest-forms input[type='time'],
.everest-forms input[type='url'],
.everest-forms input[type='week'],
.everest-forms select,
.everest-forms textarea,
.everest-forms .StripeElement,
.everest-forms canvas.evf-signature-canvas {
  width: 100%;
  height: auto;
  font-size: 1rem;
  outline: none;
  box-shadow: none;
  padding: 0.5rem 1rem;
  color: #494D47;
  border: none;
  margin: 0 0 0.75rem 0;
  background: #f8f8f8;
}

.everest-forms button[type=submit],
.everest-forms button.button:not(.button-large) {
  padding: 1.25rem 5rem;
  line-height: normal;
  border-radius: 50rem;
  background: #469ff7;
  border: 2px solid #469ff7;
  color: #fff !important;
  font-weight: 900;
  font-size: 1.5rem;
  font-family: 'BillCorpMed';
  transition: .4s;
}

.everest-forms button[type=submit]:hover,
.everest-forms button.button:not(.button-large):hover {
  background: #0038ca;
  border-color: #0038ca;
  color: #fff !important;
  transition: .4s;
}

.evf-label,
.everest-forms label,
.wp-block-everest-forms-form-selector label {
  color: #fff;
  font-weight: 400;
}

.evf-label {
  font-size: 1.25rem;
}

@media (max-width: 768px) {
  .everest-forms button[type=submit],
  .everest-forms button.button:not(.button-large) {
    padding: 1.25rem 3rem;
  }
}

/* Fonio Forms */
.wp-block-valnew-fonio-form .fonio-form__submit span {
  color: #fff;
  font-weight: 900;
}

@media (max-width: 768px) {
  .wp-block-valnew-fonio-form .fonio-form__form {
    width: 100%;
    padding: 0;
  }
  
  .wp-block-valnew-fonio-form .fonio-form__submit {
    width: 100%;
    padding: 1rem 1.5rem;
  }
}

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

.site-info {
  background-color: #001a5b;
}

.inside-site-info {
  padding: 2rem;
}

.footer-bar {
  width: 100%;
}

.footer-bar .widget_nav_menu > div > ul {
  justify-content: space-between;
}

.site-info a {
  font-size: 1rem;
  font-weight: 900;
  text-decoration: none;
  color: #fff;
}

.copyright-bar {
  display: none !important;
}

/* ============================================
   FONTS
   ============================================ */

@font-face {
  font-display: swap;
  font-family: 'BillCorpMed';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/bill/billcorpmed-thin.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'BillCorpMed';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/bill/billcorpmed-roman.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'BillCorpMed';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/bill/billcorpmed-bold.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'BillCorpMed';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/bill/billcorpmed-extrabold.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'BillCorpMed';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/bill/billcorpmed-super.woff2') format('woff2');
}