/*
Theme Name: ELPATO
Theme URI: https://www.elpato.de
Author: ELPATO Medien GmbH
Author URI: https://www.elpato.de
Description: Ein Block-Theme für ELPATO
Tags: blog, block-theme, one-column, custom-colors, custom-logo, custom-menu, editor-style, featured-images, full-width-template, sticky-post, theme-options, translation-ready, block-styles, wide-blocks, accessibility-ready
Version: 1.9.0
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: elpato
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

a {
  color: currentColor;
  cursor: pointer;
}

/* Default Line Height */
.has-x-large-font-size {
  line-height: 97%;
}

.has-large-font-size {
  line-height: 116%;
}

.has-medium-font-size {
  line-height: 116%;
}

.has-regular-font-size {
  line-height: normal;
}

.has-small-font-size {
  line-height: 116%;
}

main.wp-block-template-part ol,
main.wp-block-template-part ul {
  padding-left: 1.25rem;
}

main.wp-block-template-part ol li,
main.wp-block-template-part ul li {
  margin-bottom: 0.75rem;
  margin-top: 0.75rem;
}

main.wp-block-template-part ul {
  list-style: none;
}

main.wp-block-template-part ul li {
  position: relative;
}

main.wp-block-template-part ul li::before {
  border: 1.5px solid currentColor;
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.35rem;
  left: -1.25rem;
  position: absolute;
  top: 0.75rem;
  translate: 0 -50%;
  width: 0.35rem;
}

.wp-site-blocks {
  padding-top: var(--wp--preset--spacing--25);
}

/* Header */
header.wp-block-template-part {
  background-color: var(--wp--preset--color--black);
  margin-bottom: var(--wp--preset--spacing--50);
  transition:
    opacity 0.25s ease-in-out,
    translate 0.25s ease-in-out;
  position: relative;
  z-index: 200;
}
header.wp-block-template-part::before {
  box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
  content: "";
  opacity: 0;
  position: absolute;
  inset: 0;
  transition: opacity 0.25s ease-in-out;
  z-index: -1;
}

header.wp-block-template-part.is-sticky {
  position: sticky;
  opacity: 1;
  top: 0px;
}

header.wp-block-template-part.is-sticky::before {
  opacity: 1;
}

header.wp-block-template-part.is-hidden {
  opacity: 0;
  translate: 0% -100%;
}

header.wp-block-template-part.is-hidden::before {
  opacity: 0;
}

@media screen and (min-width: 601px) {
  header.wp-block-template-part.is-sticky {
    top: var(--wp-admin--admin-bar--height, 0px);
  }
}

/* Footer */
footer.wp-block-template-part p > a {
  position: relative;
  text-decoration: none;
}
footer.wp-block-template-part p > a::before {
  background-color: var(--wp--preset--color--white);
  bottom: 0;
  content: "";
  position: absolute;
  height: 1px;
  left: 0;
  opacity: 0;
  right: 0;
  transition: opacity 0.25s ease-in-out;
}

footer.wp-block-template-part p > a:hover::before {
  opacity: 1;
}

footer.wp-block-template-part .wp-block-column:has(.wp-block-social-links) {
  bottom: 2rem;
  left: 0;
  position: absolute;
  right: 0;
}

@media screen and (max-width: 781px) {
  footer.wp-block-template-part .wp-block-columns {
    display: grid;
    gap: 4rem 1.5rem;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
  }

  footer.wp-block-template-part .wp-block-column:not(:has(.wp-block-navigation)) {
    grid-column: span 2;
  }

  footer.wp-block-template-part .wp-block-column:has(.wp-block-social-links) {
    bottom: unset;
    position: relative;
  }

  footer.wp-block-template-part .wp-block-navigation:has(.wp-block-social-links) {
    justify-content: flex-start;
  }

  footer.wp-block-template-part .wp-block-social-links {
    flex-direction: column;
    gap: 0.3125rem;
  }
}

/* Admin Bar */
#wpadminbar {
  background-color: var(--wp--preset--color--black);
  box-shadow: 0 0.125rem 0.125rem 0 rgba(0, 0, 0, 0.25);
}
#wpadminbar .ab-top-menu > li.hover > .ab-item,
#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus,
#wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus,
#wpadminbar .menupop .ab-sub-wrapper,
#wpadminbar .shortlink-input,
#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,
#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu {
  background-color: var(--wp--preset--color--black);
  filter: brightness(150%);
}

#wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label,
#wpadminbar > #wp-toolbar li.hover span.ab-label,
#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a,
#wpadminbar .quicklinks .menupop ul li a:focus,
#wpadminbar .quicklinks .menupop ul li a:focus strong,
#wpadminbar .quicklinks .menupop ul li a:hover,
#wpadminbar .quicklinks .menupop ul li a:hover strong,
#wpadminbar .quicklinks .menupop.hover ul li a:focus,
#wpadminbar .quicklinks .menupop.hover ul li a:hover,
#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:focus,
#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:hover,
#wpadminbar li #adminbarsearch.adminbar-focused:before,
#wpadminbar li .ab-item:focus .ab-icon:before,
#wpadminbar li .ab-item:focus:before,
#wpadminbar li a:focus .ab-icon:before,
#wpadminbar li.hover .ab-icon:before,
#wpadminbar li.hover .ab-item:before,
#wpadminbar li:hover #adminbarsearch:before,
#wpadminbar li:hover .ab-icon:before,
#wpadminbar li:hover .ab-item:before,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover,
#wpadminbar .ab-top-menu > li.hover > .ab-item,
#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus,
#wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus {
  color: var(--wp--preset--color--white);
}
