/*
 Theme Name:        GeneratePress Child | Kagels Trading
 Theme URI:         https://generatepress.com/?ref=7960&campaign=GitHub
 Description:       A custom child theme for GeneratePress with Maintenance Mode and Login Branding features.
 Author:            Team OctaHexa
 Author URI:        https://octahexa.com
 Template:          generatepress
 Version:           3.14.28
 Text Domain:       gp-child
 GitHub Theme URI:  https://github.com/teamoctahexa/gp-kagels-trading
 Primary Branch:    main
*/

/**
 * Do not directly or manually make changes to this Theme, it is controlled by a GIT repository on GitHub.
 * IMPORTANT: Database entries related to this theme will remain after deletion. Use the "Cleanup Options" Theme Settings > Cleanup Options to remove them manually.
 */

/* ===========================================
 * Table of Contents:
 * ===========================================
 * 1. Dex Ado Additional Styles
 * 2. Header Styles
 * 3. Navigation Menus Styles
 * 4. Sidebar Styles
 * 5. Pagination Styles
 * 6. Medium Screen Styles
 *    - Fix Blog Coll in Tablet 
 *    - Regelt Abstand zur H2 nach dem Klick auf ToC 
 * 7. Small Screen Styles
 *    - Reduziert linke Margin in der ersten Aufzählung im Blog 
 *    - Prognosen mit farbigen Bullet Points
 *    - bullet points gestylt mit kleinem bild 
 * 8. FAQ Styles
 *    - FAQ Antwort wird eingerückt 
 * 9. Search Styles
 * 10. Stretch Link Styles
 * 11. Trading View Styles
 * 12. Cookie Banner Style
 * 13. Moved Backend CSS Content Style
 * 14. Additional Styling from Customizer
 * 15. Added Styles from OctaHexa
 */

/* ===========================================
 * 1.  Dex Ado Additional Styles
 * =========================================== */

/* Remove full width padding */
.full-width-content .site-content {
  padding: 0;
}

/* Customize loop item borders */
.border_loop .gb-loop-item {
  border-bottom: 1px solid #f1f1f1;
}

.border_loop .gb-loop-item:last-child {
  border: none;
}

/* 
* Set text color 
*/

h1.gb-text strong {
  color: var(--global-color-13);
}

h2.gb-text strong,
h3.gb-text strong {
  color: var(--primary-1);
}

/* Set Icon Z position */
.icn {
  z-index: 9;
}

/* 
 * Timeline Style 
 */
.tml > div {
  padding-bottom: 30px;
  position: relative;
}

.tml > div:last-child {
  padding-bottom: 0;
}

.tml > div:after {
  height: 100%;
  width: 1px;
  border-left: 1px dashed #fff;
  content: " ";
  display: block;
  position: absolute;
  bottom: 0;
  left: 27px;
}

.tml > div:last-child:after {
  display: none;
}

/* Customize CTA Button Style */
.cst-ctabutton {
  background-color: var(--primary-1);
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
  text-transform: uppercase;
  border-radius: 50px;
  padding: 15px 30px;
  margin-left: 20px;
}

.cst-ctabutton:hover {
  text-decoration: none;
  background-color: var(--global-color-13);
  color: #000000;
  font-weight: bold;
}

/* ===========================================
 * 2. Header Styles
 * =========================================== */

.site-header {
  background-color: #fff;
  position: static;
  top: 0;
  z-index: 91;
  box-shadow: 0px 0px 7px 2px rgba(171, 171, 171, 0.2);
}

.inside-header {
  position: relative;
}

.inside-navigation {
  position: static;
}

/* ===========================================
 * 3. Navigation Menus Styles
 * =========================================== */

.main-navigation ul ul {
  box-shadow: 0px 0px 7px 2px rgba(171, 171, 171, 0.15);
  padding-bottom: 15px;
}

/* ===========================================
 * 4. Sidebar Styles
 * =========================================== */

.is-left-sidebar,
.is-right-sidebar {
  position: sticky;
  top: 110px;
  align-self: flex-start;
}

.is-right-sidebar .wp-block-categories-list {
  margin: 0;
}

.is-right-sidebar .wp-block-categories-list li {
  list-style: none;
}

.is-right-sidebar .wp-block-categories-list li a {
  display: block;
  padding: 8px 0;
  color: #333333;
  line-height: 1.2em;
  font-size: 90%;
  border-bottom: 1px solid #e2e2e2;
}

.is-right-sidebar .wp-block-categories-list li a:hover {
  text-decoration: none;
  color: var(--primary-1);
}

.inside-right-sidebar {
  padding-left: 25px;
  padding-bottom: 60px;
}

/* Archive Mod 2 */
.blog .generate-columns.grid-33,
.grid-sizer.grid-33,
.archive .generate-columns.grid-33,
.grid-sizer.grid-33 {
  width: 100%;
}

/* ===========================================
 * 5. Pagination Styles
 * =========================================== */

.paging-navigation {
  margin: 0;
  background: none !important;
  text-align: center;
  font-size: 14px;
  padding: 25px 0 !important;
}

.nav-links {
  display: flex;
  gap: 10px;
  justify-content: center;
}

.paging-navigation span,
.paging-navigation a {
  padding: 0 !important;
  color: var(--contrast) !important;
  border-radius: 0;
  width: 40px;
  height: 40px;
  border: 0px solid #fff !important;
  border-radius: 50% !important;
  background: none !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
}

.paging-navigation span.current {
  border: 2px solid var(--primary-1) !important;
  background: var(--primary-1) !important;
  color: #fff !important;
}

.container.grid-container {
  width: auto;
  padding-left: 0;
  padding-right: 0;
}

a.prev,
a.next,
a.prev span,
a.next span {
  display: none !important;
}

/* ===========================================
 * 6. Medium Screen Styles
 * =========================================== */

@media only screen and (max-width: 1100px) {
  .cst-ctabutton {
    display: none;
  }

  /* Mega Menu */
  .inside-header {
    padding: 0;
  }

  .site-logo {
    padding-left: 50px;
  }

  .mobile-menu-control-wrapper {
    padding-right: 40px;
  }

  .main-navigation .menu-toggle {
    font-size: 22px;
    line-height: 85px;
  }

  .main-navigation.toggled .main-nav li {
    border-bottom: 1px solid #f1f1f1;
  }

  .main-navigation.toggled .main-nav li:last-child,
  .main-navigation.toggled .main-nav li.mega-menu.sfHover,
  .main-navigation.toggled .main-nav li.mega-menu ul li {
    border: none;
  }

  .main-navigation .main-nav ul li a {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .main-navigation .main-nav ul li.menu-item-has-children > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .dropdown-menu-toggle .gp-icon {
    display: unset;
  }

  .main-navigation.toggled
    .main-nav
    li.mega-menu
    ul
    li
    a
    .dropdown-menu-toggle {
    display: none !important;
  }

  .main-navigation.toggled .main-nav ul li.mega-menu ul.toggled-on {
    padding: 30px !important;
    box-shadow: 0px 0px 7px 2px rgba(171, 171, 171, 0.15);
  }

  nav .main-nav .mega-menu > ul > li > a {
    margin-bottom: 15px;
  }

  nav .main-nav .mega-menu > ul > li > a::after {
    height: 2px;
    width: 13%;
    position: absolute;
    bottom: -7px;
  }

  nav .main-nav .mega-menu > ul > li::after {
    display: none;
  }

  nav .main-nav .mega-menu > ul {
    border: 1px solid #f0f0f0;
    border-radius: 8px;
    margin-bottom: 15px;
  }

  .main-navigation ul li.no-mega > ul {
    padding-top: 0;
  }

  .main-navigation .main-nav ul li a svg {
    width: 25px;
  }

  .has-inline-mobile-toggle #site-navigation.toggled {
    padding: 15px 50px;
  /*  border-top: 3px solid var(--primary-1); */
    padding-bottom: 10px;
  }

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

  nav .main-nav .mega-menu > ul {
    padding: 5px 20px 20px;
  }

  nav .main-nav .mega-menu > ul > li {
    width: 48% !important;
    padding-bottom: 30px;
  }

  nav .main-nav .mega-menu > ul > li:nth-child(2) {
    padding-right: 0;
  }

  nav .main-nav .mega-menu > ul > li:nth-child(3),
  nav .main-nav .mega-menu > ul > li:nth-child(4) {
    padding-bottom: 0;
  }

  #toc-mobile-wrapper {
    top: 84px;
  }

  .lwptoc_header {
    border-bottom: 1px solid #eeeeee !important;
    border-top: 1px solid #eeeeee !important;
  }

  .lwptoc_header.active {
    margin-bottom: 10px !important;
  }

  /* Mega Mobile */
  .has-inline-mobile-toggle #site-navigation.toggled {
    padding: 15px 20px;
  }

  .main-navigation.toggled .main-nav ul li.mega-menu ul.toggled-on {
    padding: 10px 0 10px 5px !important;
    max-height: 250px;
    overflow: auto;
    position: relative;
    box-shadow: none;
    border: none;
    border-radius: 0;
  }

  .main-navigation.toggled .main-nav ul li.mega-menu ul.toggled-on:after {
    position: sticky;
    width: 100%;
    height: 25px;
    content: " ";
    bottom: -21px;
    left: 0;
    display: inline-block;
    background-image: linear-gradient(
      0deg,
      #ffffff 25%,
      rgba(255, 255, 255, 0) 100%
    );
  }

  nav .main-nav .mega-menu > ul > li.sgt {
    position: relative;
    border-left: 1px dotted #ccc !important;
    padding-left: 15px;
    padding-bottom: 0;
  }

  nav .main-nav .mega-menu > ul > li.sgt::before {
    content: " ";
    display: inline-block;
    width: 9px;
    position: absolute;
    left: -5px;
    box-shadow: 0px 0px 0 7px #fff;
    height: 9px;
    top: 16px;
    border-radius: 50px;
    background: var(--primary-1);
  }

  nav .main-nav .mega-menu > ul > li > a {
    font-size: 1em;
  }

  nav .main-nav .mega-menu > ul > li > a::after {
    height: 1px;
    width: 50%;
  }

  nav .main-nav .mega-menu > ul > li {
    width: 100% !important;
  }

  .main-navigation .main-nav ul ul li a {
    font-size: 14px;
  }

  .single-post .content-area,
  .single-post .is-left-sidebar,
  .single-post .is-right-sidebar,
  .category .content-area,
  .category .is-left-sidebar,
  .category .is-right-sidebar {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .is-right-sidebar {
    border-left: 0px solid #e2e2e2;
    padding-left: 0 !important;
    width: 100% !important;
  }

  .inside-right-sidebar {
    padding-left: 0 !important;
  }

  /* Moved this over from duplicated media screen call */
  .single .entry-content h2 span:before {
    height: 90px;
    margin: -90px 0 0;
  }
}

/* 
 * Fix Blog Coll in Tablet 
 */
@media (max-width: 1100px) {
  .gb-element-30adf174 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .single-post .site-content,
  .archive .site-content {
    flex-direction: column;
  }

  .container .site-content .content-area {
    width: auto;
  }

  .single-post .is-left-sidebar.sidebar,
  .single-post .is-right-sidebar.sidebar {
    width: auto;
    order: initial;
    display: none;
  }

  #toc-mobile-wrapper {
    position: sticky;
    z-index: 99999;
  }

  @media (max-width: 767px) {
    .gb-element-30adf174 {
      padding-left: 0;
      padding-right: 0;
    }
  }
}

/* Regelt Abstand zur H2 nach dem Klick auf ToC  */
.single .entry-content h2 span:before {
  content: "";
  display: block;
  height: 40px;
  margin: -40px 0 0;
}

/* ===========================================
 * 7. Small Screens
 * =========================================== */
@media only screen and (max-width: 767px) {
  .site-logo {
    padding-left: 20px;
  }

  .mobile-menu-control-wrapper {
    padding-right: 10px;
  }

  .main-navigation .menu-toggle {
    background: none !important;
  }
}

/* Reduziert linke Margin in der ersten Aufzählung im Blog */
.kk-blog_intro .wp-block-list {
  margin-left: 0.5em;
}

/* Prognosen mit farbigen Bullet Points */
.wp-block-list.bullet {
  margin-left: 0em;
}

/* bullet points gestylt mit kleinem bild */
.bullet li {
  list-style: none;
  /* Entfernt die Standard-Listenzeichen */
  position: relative;
  padding-left: 30px;
  /* Platz für das SVG-Symbol */
}

.bullet li::before {
  content: "";
  /* Kein Text, nur das Symbol */
  position: absolute;
  left: 0;
  top: 8px;
  width: 18px;
  /* Breite des SVG-Symbols */
  height: 18px;
  /* Höhe des SVG-Symbols */
  background-image: url("/wp-content/themes/gp-kagels/img/bulletpoint-blau-neongelb.svg");
  /* Pfad zur SVG-Datei */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* ===========================================
 * 8.  FAQ Styles
 * =========================================== */

#rank-math-faq .rank-math-list-item {
  position: relative;
}

#rank-math-faq .rank-math-list-item input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 41px;
  opacity: 0;
  cursor: pointer;
  z-index: 999;
}

#rank-math-faq .rank-math-list-item h3 {
  background: #fff;
  padding: 10px 12px 10px 18px;
  cursor: pointer;
  font-size: 18px !important;
  font-weight: normal !important;
  position: relative;
  margin-bottom: 0;
}

#rank-math-faq .rank-math-list-item h3:before {
  display: inline-block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 12px;
  border-color: transparent transparent transparent #000000;
  margin-right: 8px;
}

#rank-math-faq .rank-math-list-item input:checked + h3:before {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

#rank-math-faq .rank-math-answer {
  padding: 10px 10px 0px 10px;
  max-height: 0;
  overflow: hidden;
}

#rank-math-faq .rank-math-list-item input:checked + h3 ~ .rank-math-answer {
  max-height: 100vh;
  overflow: visible;
}

#rank-math-faq .rank-math-list-item h3 {
  margin-top: 0;
  padding: 10px;
}

/* FAQ Antwort wird eingerückt */
.rank-math-answer p {
  margin-left: 30px;
}

.kk-blog_faq h2 {
  margin-top: 0px !important;
}

/* ===========================================
 * 9.  Search Styles
 * =========================================== */

#gp-search input[type="search"] {
  background-color: rgb(255, 255, 255);
  border-width: 2px;
  border-style: solid;
}

#gp-search button {
  background-color: rgb(255, 255, 255);
}

a.gb-button {
  transition: unset;
}

/* Borrowed from Bootstrap */
/* Tutorial: https://youtu.be/HBriBrnRlQE?si=DLiSXEiBHt6lw91l */
/* Make sure you only have ONE link inside your card 😅 or this will not work!  */

/* ===========================================
 * 10.  Stretch Link Styles
 * =========================================== */

.stretch-link {
  position: relative;
}

.stretch-link a::after {
  content: "";
  position: absolute;
  inset: 0;
}

.stretch-link a:is(:focus-visible)::after {
  outline: 2px solid;
}

.stretch-link a:is(:hover, :focus) {
  outline: none;
}

/* ===========================================
 * 11.  Trading View Styles
 * =========================================== */

.tradingview-widget-container,
.tradingview-widget-container > div > div,
.tradingview-widget-container > div > div > div {
  max-width: 900px !important;
  width: auto !important;
}

/* ===========================================
 * 12.  Cookie Banner Style
 * =========================================== */
.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-description {
  line-height: var(--cmplz_text_line_height);
}

/* ===========================================
 * 13.  Moved Backend CSS Content
 * =========================================== */

body.post-type-post .editor-styles-wrapper .wp-block {
  max-width: 1120px;
}

/* ===========================================
 * 14. Additional Styling from Customizer
 * =========================================== */

/* 
 * ToC Styling mit Artjom 
 */

@media only screen and (max-width: 1100px) {
    #toc-mobile-wrapper {
     top: 0px; 
    }
 
   .generate-back-to-top {
       bottom: 130px;  
   }
}

.lwptoc .lwptoc_item a.curr {
    border-left: 3px solid #3175e4 !important;
    padding-left: 5px;
    margin-left: -8px;
}

.lwptoc_header {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #33333342;
}

.lwptoc_itemWrap {
    border-bottom: 1px solid #33333342;
    padding-bottom: 20px;
	   padding-top: 20px;
}

#toc-mobile-wrapper .lwptoc>div .lwptoc_items {
    height: auto!important;
    overflow-x: hidden!important;
}

.lwptoc>div .lwptoc_header.active:after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(51,51,51,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M8 8 L24 24 M8 24 L24 8'/%3E%3C/svg%3E")!important;
    background-size: 22px!important;
    width: 16px;
    height: 16px;
    transform: none!important;
}

/* add box shadow to header submenu, add border radius, move submenu below header */
.main-navigation ul ul {
    border-radius: 8px; 
    box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
    margin-top: 16px; /* Pushes dropdown lower below header border */
    padding: 12px 12px; 
}

.main-navigation ul ul::before { /* Creates invisible bridge between menu and submenu */
    content: '';
    position: absolute;
    top: -16px; /* Covers the gap created by margin-top */
    left: 0;
    right: 0;
    height: 16px; /* Same height as margin-top */
    background: transparent;
}

@media (min-width: 769px) {
  .main-navigation .menu > .menu-item > a {
    position: relative;
    overflow: visible; 
  }

  .main-navigation .menu > .menu-item > a::after {
    content: '';
    position: absolute;
    bottom: -7px; /* Pushes underline below text and header border */
    left: 0;
    width: 0;
    height: 4px; 
    background-color: var(--primary-1);
    transition: width 0.2s ease;
  }

  .main-navigation .menu > .menu-item > a:hover::after,
  .main-navigation .menu > .menu-item > a:focus::after,
  .main-navigation .menu > .menu-item:hover > a::after { /* Keeps underline when hovering over entire menu item including submenu */
    width: 100%;
  }
}

/* add border to bottom of header */
.site-header {
  border-bottom: 1px solid var(--hintergrund-blau);
}

/* ===========================================
 * 15. Added styles by OctaHexa
 * =========================================== */

.slideout-navigation.main-navigation .main-nav ul ul li a {
    font-weight: normal;
    line-height: 40px !important;
}

figure.gb-block-image.gb-block-image-1619f1b4 {
    margin: 0 auto;
}

.slideout-menu .toggled-on {
    border-radius: 0;
    box-shadow: none;
    margin-top: 0;
}
.slideout-navigation.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a {
    background: none !important;
}

.slideout-navigation.main-navigation .main-nav ul li a {
    padding: 5px 10px !important;
    border-bottom: 1px solid #f1f1f1;
}

.slideout-navigation.main-navigation .main-nav ul ul li a {
 	padding: 0;
  	font-weight: 500 !important;
 	border-bottom: 0px
}

.mobile-menu-control-wrapper .menu-toggle {
 background: none; 
}

.menu-item-has-children ul .dropdown-menu-toggle {
   margin-top:0; 
}

.off-canvas-search button.wp-block-search__button.has-icon.wp-element-button {
    background: var(--accent-4);
    color: white;
}

.off-canvas-search .wp-block-search__inside-wrapper {
	border-color: transparent;
}

.gb-block-image-1619f1b4 {
  padding-bottom: 10px !important;
}

@media (min-width: 769px) {
  .main-navigation .menu > .menu-item > a::after {
   bottom: -10px !important; 
   background-color: var(--accent) !important;
  }
}

/* remove animated underline on header for homepage */
.home .main-navigation .menu > .menu-item > a::after {
display: none;
}

@media (max-width: 768px) {
    .slideout-navigation.main-navigation .main-nav ul li a {
        line-height: 60px !important;
    }
}
