/*
Theme Name: Fraunhofer
Theme URI: https://inside.fraunhofer.de/webapps
Author: Fraunhofer IESE
Author URI: https://www.iese.fraunhofer.de
Description: Fraunhofer is theme for wordpress based on Frost (https://frostwp.com/) by WP Engine
Requires at least: 6.6
Tested up to: 6.6
Requires PHP: 7.0
Version: 2.2.66
License: GNU General Public License v3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: fraunhofer

/* Defaults
---------------------------------------- */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

a,
button,
input:focus,
input[type="button"],
input[type="submit"],
textarea:focus,
.wp-element-button {
  transition: all 0.2s ease-in-out;
}

a,
a:focus,
a:hover,
a:not(.wp-element-button) {
  text-decoration-thickness: 1px;
}

b,
strong,
th {
  font-weight: var(--wp--custom--font-weight--bold);
}

mark {
  background: linear-gradient(
    90deg,
    var(--wp--preset--color--primary-1) 0%,
    var(--wp--preset--color--primary-1) 100%
  );
  background-position: 0 85%;
  background-repeat: repeat-x;
  background-size: 100% 15%;
}

/* -- Forms -- */

input,
select,
textarea {
  background-color: var(--wp--preset--color--base);
  border: 1px solid var(--wp--preset--color--contrast);
  border-radius: 0;
  color: var(--wp--preset--color--contrast);
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--wp--preset--font-size--medium);
  font-weight: var(--wp--custom--font-weight--light);
  line-height: var(--wp--custom--line-height--body);
  padding: 10px 20px;
  width: 100%;
}

input:focus,
textarea:focus {
  background-color: var(--wp--preset--color--neutral);
  outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
  width: auto;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
  -webkit-appearance: none;
}

::placeholder {
  color: var(--wp--preset--color--contrast);
  font-size: var(--wp--preset--font-size--small);
  opacity: 0.5;
}

li::marker {
  color: var(--wp--preset--color--secondary-1);
}

/* Blocks
---------------------------------------- */

/* -- Code -- */

*:not(.wp-block-code) > code {
  background-color: var(--wp--preset--color--neutral);
  font-size: var(--wp--preset--font-size--small);
  padding: 5px 8px;
}

/* -- Details -- */

/* Add a custom transition when opening/closing. */
.wp-block-details {
  transition: all 0.25s ease-in-out;
}

/* Add horizontal margin to nested blocks/elements. */
.wp-block-details > :where(:not(summary)) {
  margin-left: var(--wp--preset--spacing--x-small);
  margin-right: var(--wp--preset--spacing--x-small);
}

/* If open, add some bottom padding to avoid content butting against the bottom. */
.wp-block-details[open] {
  padding-bottom: var(--wp--custom--spacing--gap);
}

/* Base `summary` element styling. */
.wp-block-details summary {
  font-size: var(--wp--preset--font-size--medium);
  font-weight: 600;
  transition: all 0.25s ease-in-out;
  padding: var(--wp--preset--spacing--x-small);
}

/* Change the background of the `summary` element based on state. */
.wp-block-details[open] summary,
.wp-block-details summary:hover,
.wp-block-details summary:focus {
  background: var(--wp--preset--color--primary-1);
  color: #fff;
}

/* Remove default marker. */
.wp-block-details summary::marker,
summary::-webkit-details-marker {
  display: none;
}

/* Add custom markers */
.wp-block-details summary::after {
  content: " +";
  float: right;
  text-align: right;
  font-size: var(--wp--preset--font-size--medium);
}

.wp-block-details[open] summary::after {
  content: " -";
}

/* -- Navigation -- */
.fhg-secondary-menu a {
  text-decoration: none;
}

/* -- Navigation -- */

.wp-block-navigation__responsive-container.is-menu-open {
  padding: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content {
  padding-top: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
  border: 1px solid currentColor;
  padding: 2px;
}

.has-background .wp-block-navigation__responsive-container-open:focus,
.has-background .wp-block-navigation__responsive-container-open:hover {
  color: var(--wp--preset--color--base);
}

.fhg-menu-search .wp-block-search__button {
  padding: 10px;
}

/* -- Navigation Submenu -- */

.wp-block-navigation:not(.has-background)
  .wp-block-navigation__submenu-container {
  background-color: var(--wp--preset--color--primary-1);
  border: 0;
  color: var(--wp--preset--color--base);
  padding: 10px;
}

.wp-block-navigation :where(.wp-block-navigation__submenu-container) a {
  padding: 2px 10px;
}

.wp-block-navigation .wp-block-navigation__submenu-container li {
  padding: 8px 0;
}

.wp-block-navigation__submenu-container {
  min-width: 250px !important;
}

/* Utility
---------------------------------------- */

/* -- Box Shadow -- */

.is-style-shadow-light {
  box-shadow: var(--wp--preset--shadow--light);
}

.is-style-shadow-solid {
  box-shadow: var(--wp--preset--shadow--solid);
}

/* -- Misc -- */
.remove-underline a {
  text-decoration: none;
}

.remove-underline a:hover,
.remove-underline a:focus {
  text-decoration: underline;
}

/* Helper
---------------------------------------- */

/* Hide post meta div if no tags assigned */
.single .wp-block-columns:has(> .post-meta:empty) {
  display: none;
}

/* Show sticky post only on front page */
.paged .top-sticky-post {
  display: none;
}

/* Fix wrong aspect ratio in block Co-Author Avatar */
.wp-block-co-authors-plus-avatar :where(img) {
  height: 48px;
  object-fit: cover;
}

/* Animation
---------------------------------------- */

/* -- Featured Image -- */

.wp-block-post-featured-image {
  overflow: hidden;
}

.wp-block-post img {
  transition: all 0.5s;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
}

.wp-block-post:hover img {
  transform: scale(1.03, 1.03);
  -webkit-transform: scale(1.03, 1.03);
  -moz-transform: scale(1.03, 1.03);
  -ms-transform: scale(1.03, 1.03);
}

/* Media Queries
---------------------------------------- */

@media only screen and (max-width: 600px) {
  /* -- Utility -- */

  .is-style-hidden-mobile {
    display: none !important;
  }
}

@media only screen and (max-width: 782px) {
  /* -- Columns -- */

  .is-style-columns-reverse {
    flex-direction: column-reverse;
  }
}
