/* 
 Theme Name:   DigiSkill Child Theme
 Author:       Sebastian Lechmann
 Template:     astra
 Version:      1.0
--------------------------------------------*/

/* Resets */
p:last-child,
.elementor-widget:last-child,
.site-content ul:last-child,
.site-content ol:last-child,
.site-footer ul:last-child,
.site-footer ol:last-child {
  margin-bottom: 0 !important;
}

/* Fixing Google Search Console "mobile usability issues" */
:where(body, iframe, pre, img, svg, video, canvas, select) {
  max-width: 100%;
  overflow: auto;
  word-break: break-word;
}

/* Font settings */
body, p,
.elementor-widget-text-editor {
  font-family: 'Inter', sans-serif !important;
}

/* Headlines */
h1.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 80px;
  line-height: 1.2em;
  color: white;
}

h2.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 52px;
  line-height: 1.2em;
  color: white;
}

h3.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.2em;
  color: white;
}

h4.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.2em;
  color: white;
}

h5.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.2em;
  color: white;
}

h6.elementor-heading-title.elementor-size-default {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.2em;
  color: white;
}

@media only screen and (max-width: 600px) {
  h1.elementor-heading-title.elementor-size-default {
    font-size: 46px;
  }
	
  h2.elementor-heading-title.elementor-size-default {
    font-size: 38px;
  }
	
  h3.elementor-heading-title.elementor-size-default {
    font-size: 26px;
  }
	
  h4.elementor-heading-title.elementor-size-default {
    font-size: 22px;
  }
	
  h5.elementor-heading-title.elementor-size-default {
    font-size: 20px;
  }
	
  h6.elementor-heading-title.elementor-size-default {
    font-size: 16px;
  }
}

.h2-impressum h2 {
  font-size: 34px!important;
}

/* Headline Emphasize */
em {
  font-style: normal;
  color: #72b740;
  display: inline-block;
  width: fit-content;
  text-decoration: underline;
  transition: all 0.6s ease;
}

em:hover {
  transform: scale(1.02);
}

/* Footer styling */
.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner p,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner p,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner p,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner p {
  line-height: 28px;
}

/* Header styling */
.main-header-menu .menu-link {
  padding: 0;
}

.main-navigation ul {
  gap: 2rem;
}

#ast-desktop-header .site-header-primary-section-center li {
  line-height: 28px;
}

#ast-desktop-header .site-header-primary-section-center li::after {
  content: "";
  display: block;
  position: relative;
  background: #72b740;
  bottom: 0;
  width: 0%;
  height: 2px;
  margin-bottom: -4px;
  transition: width 0.3s ease;
}

#ast-desktop-header .site-header-primary-section-center li:hover::after {
  content: "";
  display: block;
  position: relative;
  background: #72b740;
  bottom: 0;
  width: 100%;
  height: 2px;
  margin-bottom: -4px;
  transition: width 0.3s ease;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner {
  max-width: 70%;
}

.ast-mobile-popup-drawer .ast-mobile-popup-header {
  -js-display: flex;
  display: flex;
  justify-content: flex-end;
  min-height: 80px;
}

.ahfb-svg-iconset svg {
  width: 20px;
  height: 20px;
}

.ast-mobile-popup-drawer .ast-mobile-popup-header .menu-toggle-close {
  align-items: center;
  padding: calc(0.5rem + 20px);
}

.ast-mobile-popup-content {
  display: flex !important;
  flex-direction: column;
  height: 100%;
  align-items: center;
  justify-content: space-between;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

/* Button styling */
.elementor-button.elementor-button-link.elementor-size-sm {
  border-radius: 6px;
  font-weight: 700;
  color: white;
}

.elementor-element.elementor-button-info .elementor-button {
  background-color: #72b740 !important;
}

.elementor-element.elementor-button-info .elementor-button:hover {
  background-color: #558830 !important;
}

.elementor-element.elementor-button-info .elementor-button .elementor-button-text {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 16px;
}

/* CF7 Styling */
.wpcf7 .zustimmung {
  padding-top: 0.5rem;
}

.wpcf7-list-item {
  margin: 0;
}

.wpcf7-list-item label {
  display: flex;
  flex-direction: row;
}

.wpcf7-acceptance input:not([type=submit]) {
  width: fit-content !important;
  top: 6px;
  display: inline-block;
  position: relative;
}

.wpcf7-acceptance .wpcf7-list-item-label {
  margin-left: 0.5rem;
}

.wpcf7-acceptance {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
  position: relative;
}

.ds-cf7 .wpcf7 input:not([type=submit]), .wpcf7 select, .wpcf7 textarea {
    width: 100%;
    padding: 0.5rem 1rem 0.5rem 1rem;
    border-radius: 16px;
    color: #18191b;
	border: none;
}

.ds-cf7 .wpcf7 input[type="submit"] {
  border-radius: 6px;
  background-color: #72b740 !important;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  color: white;
  border: none;
}

.ds-cf7 .wpcf7 input[type="submit"]:hover {
  border-radius: 6px;
  background-color: #558830 !important;
}

.ds-cf7 .wpcf7 .wpcf7-form-control-wrap textarea {
  height: 10rem;
}

.ds-cf7 .wpcf7 p {
  margin-bottom: 0;	
}

.wpcf7 form.invalid .wpcf7-response-output {
  border-color: #53a5d9;
  border-radius: 6px;
}

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #72b740;
  border-radius: 6px;
}

/* Image Carousel */
@media only screen and (min-width: 1140px) {
.ds-carousel .swiper .elementor-swiper-button-prev {
  left: 21.1rem !important;
}

.ds-carousel .swiper .elementor-swiper-button-prev:hover svg {
  transform: scale(1.1);
}

.ds-carousel .swiper .elementor-swiper-button-next {
  right: 21.1rem !important;
}

.ds-carousel .swiper .elementor-swiper-button-next:hover svg {
  transform: scale(1.1);
}
}

/* FAQ */
.ds-faq .elementor-accordion .elementor-accordion-item .elementor-accordion-icon.elementor-accordion-icon-right svg,
.ds-faq .elementor-accordion-icon-opened, 
.ds-faq .elementor-accordion-icon-closed {
  width: 2rem;
  height: 2rem;
}

.ds-faq .elementor-accordion .elementor-tab-title {
  line-height: 2rem;
}

.ds-faq .elementor-accordion .elementor-accordion-item {
  border-bottom: 2px solid #c4c5c850 !important;
  border-top: 0;
  border-left: 0;
  border-right: 0;
}

.ds-faq .elementor-accordion .elementor-tab-content {
  padding: 0rem 2rem 2rem 20px;
  border-top: none;
}

/* Featured Speech Bubble */
.ds_speech-bubble__icon .elementor-icon-wrapper {
  height: 25.6px;
}

.ds_speech-bubble__checkmark .elementor-icon-wrapper {
  height: 32px;
}

/* Loop Grid */
.ast-single-post .entry-content .ds-loop-grid a,
.ast-single-post .entry-content .ds-info-boxen a {
  text-decoration: none !important;
}