@charset "UTF-8";
/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Variablen (Farben, Spacing, Radius, Shadow)
\* =============================================================== */
:root {
  /* Theme Colors */
  --ud-theme-100: #f4f5f3;
  --ud-theme-200: #e3e5e0;
  --ud-theme-300: #c8cbc4;
  --ud-theme-400: #a4a8a0;
  --ud-theme-500: #7a7f77;
  --ud-theme-600: #51564f;
  --ud-theme-700: #2e312c;
  --ud-theme-750: #1D1D1D;
  --ud-theme-800: #161714;
  --ud-theme-850: #151613;
  --ud-theme-900: #0E0E0E;
  /* Highlight Colors */
  --ud-highlight-100: #e6f7f8;
  --ud-highlight-200: #c8eef1;
  --ud-highlight-300: #9fe0e6;
  --ud-highlight-400: #63cdd8;
  --ud-highlight-500: #1fb6c9;
  --ud-highlight-600: #1695a5;
  --ud-highlight-700: #117580;
  --ud-highlight-800: #0b555c;
  --ud-highlight-900: #06373b;
  /* Shadows */
  --ud-shadow-100: 0 1px 2px rgba(0, 0, 0, 0.06);
  --ud-shadow-200: 0 1px 3px rgba(0, 0, 0, 0.08);
  --ud-shadow-300: 0 2px 4px rgba(0, 0, 0, 0.1);
  --ud-shadow-400: 0 3px 6px rgba(0, 0, 0, 0.12);
  --ud-shadow-500: 0 4px 8px rgba(0, 0, 0, 0.14);
  --ud-shadow-700: 0 6px 12px rgba(0, 0, 0, 0.18);
  --ud-shadow-900: 0 8px 16px rgba(0, 0, 0, 0.22);
  /* =============================================================== *\
         UI-Farbschema

         Übersicht und Varianten:
         ulrichdigital_block_theme > color_system.html
     \* =============================================================== */
  /* Positive (Green) */
  --ud-positive-100: #fbfefc;
  --ud-positive-200: #e6f9ec;
  --ud-positive-300: #d1f3da;
  --ud-positive-400: #b0ebc6;
  --ud-positive-500: #30a46c;
  --ud-positive-600: #299764;
  --ud-positive-700: #18794e;
  --ud-positive-800: #193b2d;
  --ud-positive-900: #0d1912;
  /* Warning (Amber) */
  --ud-warning-100: #fefdfb;
  --ud-warning-200: #fef6e7;
  --ud-warning-300: #ffedc7;
  --ud-warning-400: #ffd386;
  --ud-warning-500: #f5a623;
  --ud-warning-600: #e08d00;
  --ud-warning-700: #ad5700;
  --ud-warning-800: #5f2a00;
  --ud-warning-900: #341500;
  /* Error (Red) */
  --ud-error-100: #fffcfc;
  --ud-error-200: #fef0ef;
  --ud-error-300: #fdd8d7;
  --ud-error-400: #fbb5b4;
  --ud-error-500: #e5484d;
  --ud-error-600: #d93d42;
  --ud-error-700: #cd2b31;
  --ud-error-800: #381316;
  --ud-error-900: #1f0a0a;
  /* Info (Blue) */
  --ud-info-100: #fbfdff;
  --ud-info-200: #edf6ff;
  --ud-info-300: #e1f0ff;
  --ud-info-400: #cee7fe;
  --ud-info-500: #0091ff;
  --ud-info-600: #0880ea;
  --ud-info-700: #0b68cb;
  --ud-info-800: #113264;
  --ud-info-900: #0a0e1c;
  /* Neutral (Gray) */
  --ud-neutral-100: #fcfcfc;
  --ud-neutral-200: #f8f9fa;
  --ud-neutral-300: #f1f3f5;
  --ud-neutral-400: #e6e8eb;
  --ud-neutral-500: #9ba1a6;
  --ud-neutral-600: #6c7278;
  --ud-neutral-700: #464b50;
  --ud-neutral-800: #11181c;
  --ud-neutral-900: #0d0f11;
  /* =============================================================== *\
      Layout & Spacing
  \* =============================================================== */
  /* Radius */
  --ud-radius-100: 8px;
  --ud-radius-200: 10px;
  --ud-radius-300: 12px;
  --ud-radius-400: 18px;
  --ud-radius-500: 24px;
  --ud-radius-600: 36px;
  --ud-radius-700: 42px;
  --ud-radius-800: 48px;
  --ud-radius-900: 1000px;
  /* Theme Layout */
  --ud-site-inline-spacing: 60px;
}

/* =============================================================== *\
   Anpassungen für Mobile (Variablen)
\* =============================================================== */
@media screen and (max-width: 800px) {
  :root {
    --ud-site-inline-spacing: 30px;
  }
}
/* =============================================================== *\
   CSS-Reset
\* =============================================================== */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
  -webkit-font-smoothing: subpixel-antialiased; /* Safari, Chrome */
  -moz-osx-font-smoothing: auto; /* Firefox (kein subpixel support, aber auto ≈ subpixel) */
  text-rendering: optimizeLegibility; /* Optional: bessere Kerning/Lesbarkeit */
  text-size-adjust: 100%;
  line-height: 1.5;
}

body {
  line-height: inherit;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

button,
input,
textarea,
select {
  font: inherit;
  margin: 0;
}

textarea {
  resize: vertical;
}

button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

a {
  text-decoration: none;
  color: inherit;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, figure, blockquote, dl, dd {
  margin: 0;
  padding: 0;
}

strong {
  font-weight: bold;
}

hr {
  border: none;
  height: 1px;
  background-color: currentColor;
}

blockquote {
  margin: 0;
  padding-left: 1.5rem;
  border-left: 4px solid currentColor;
}

:focus {
  outline: 2px solid #000;
  outline-offset: 2px;
}

:focus:not(:focus-visible) {
  outline: none;
}

/* =============================================================== *\ 
   Input-Elemente
\* =============================================================== */
/* Entfernt die Autofill-Hintergrundfarbe und -Textfarbe, um den Stil des Inputs zu übernehmen */
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 30px transparent inset !important; /* Setzt den Autofill-Hintergrund auf transparent */
  -webkit-text-fill-color: inherit !important; /* Vererbt die Textfarbe */
}

/* Entfernt die Pfeile (Spinners) in WebKit-basierten Browsern (Chrome, Safari, Edge) */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Entfernt die Pfeile in Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Dropdown-Pfeil bei select-Elementen */
/* Entfernt den Standard-Pfeil in WebKit-basierten Browsern */
select::-webkit-inner-spin-button,
select::-webkit-appearance {
  -webkit-appearance: none;
}

/* Entfernt den Standard-Pfeil in Firefox */
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  /*font-size: 100%;"*/
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  /*line-height: 1;*/
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* =============================================================== *\ 
   Form-Reset
\* =============================================================== */
input,
select,
textarea,
button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  font-family: inherit;
  font-size: 100%;
}

/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Basis HTML-Elemente
\* =============================================================== */
body {
  background: var(--ud-theme-800);
  font-family: "Inter", sans-serif;
  font-size: var(--wp--preset--font-size--base);
  color: var(--ud-theme-100);
  font-optical-sizing: auto;
  font-kerning: normal;
  font-feature-settings: "kern" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* =============================================================== *\
   Formularfelder
\* =============================================================== */
input,
textarea {
  margin: 10px 20px;
  border: none;
  padding: 10px 16px;
  line-height: 1em;
}

input:focus,
textarea:focus {
  border: none;
  outline: none;
}

input[type=submit] {
  cursor: pointer;
  border: 1px solid;
  border-radius: 100px;
  padding: 0.7rem 1.4rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

strong {
  font-weight: 500;
}

/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Layout
\* =============================================================== */
.entry-content {
  padding-right: var(--ud-site-inline-spacing);
  padding-left: var(--ud-site-inline-spacing);
}

.entry-content > .ud-hero-video-block {
  margin-right: calc(var(--ud-site-inline-spacing) * -1);
  margin-left: calc(var(--ud-site-inline-spacing) * -1);
}

body.page-template-default .wp-site-blocks .wp-block-post-title,
body.page-template-default .wp-site-blocks .entry-content {
  max-width: 1800px;
  margin-left: auto;
  margin-right: auto;
}

/* =============================================================== *\
   Seitentitel und Content-Abstand
\* =============================================================== */
body .wp-site-blocks .wp-block-post-title {
  margin-top: clamp(200px, 10vw, 180px);
  margin-right: auto;
  margin-bottom: 5.5rem;
  margin-left: auto;
  padding-right: var(--ud-site-inline-spacing);
  padding-left: var(--ud-site-inline-spacing);
  max-width: var(--wp--style--global--content-size);
}
body .wp-site-blocks > .entry-content.wp-block-post-content {
  margin-top: clamp(200px, 10vw, 180px);
}
body .wp-site-blocks > .wp-block-post-title + .entry-content.wp-block-post-content {
  margin-top: 0;
}
@media screen and (max-width: 800px) {
  body .wp-site-blocks .wp-block-post-title,
  body .wp-site-blocks > .entry-content.wp-block-post-content {
    margin-top: 100px;
  }
}

/* =============================================================== *\
   Überschriften im Content
\* =============================================================== */
.entry-content > .wp-block-heading {
  margin-top: 2.75rem;
  margin-bottom: 5.5rem;
}
@media screen and (max-width: 800px) {
  .entry-content > .wp-block-heading {
    margin-top: 1.75rem;
    margin-bottom: 2.5rem;
  }
}

.entry-content > h3.wp-block-heading {
  margin-top: 2rem;
  margin-bottom: 3.5rem;
}

.entry-content > .wp-block-heading:first-child {
  margin-top: 0;
}

/* =============================================================== *\
   Listen im Content
\* =============================================================== */
.entry-content ul {
  margin-left: 1.25rem;
  list-style: disc;
}

/* =============================================================== *\
   Animationen
\* =============================================================== */
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) {
  /* grosse Bilder (ohne Lightbox) */
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-image:not(.wp-lightbox-overlay *) img,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-cover:not(.wp-lightbox-overlay *) img,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-post-featured-image:not(.wp-lightbox-overlay *) img {
  opacity: 0;
  transform: scale(1.04);
  transition: opacity 1s ease, transform 1.2s ease;
  will-change: opacity, transform;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-image.is-in-view:not(.wp-lightbox-overlay *) img,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-cover.is-in-view:not(.wp-lightbox-overlay *) img,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-post-featured-image.is-in-view:not(.wp-lightbox-overlay *) img {
  opacity: 1;
  transform: scale(1);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) {
  /* Überschriften */
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .entry-content > .wp-block-heading {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.7s ease, transform 0.7s ease;
  will-change: opacity, transform;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .entry-content > .wp-block-heading.is-in-view {
  opacity: 1;
  transform: translateY(0);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) {
  /* Editorial Items */
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.7s ease, transform 0.7s ease;
  will-change: opacity, transform;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-in-view {
  opacity: 1;
  transform: translateY(0);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-left {
  transform: translateX(-32px);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-right {
  transform: translateX(32px);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-center {
  transform: translateY(32px);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-left.is-in-view,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-right.is-in-view,
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item.is-position-center.is-in-view {
  transform: translate(0, 0);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item:nth-child(1) {
  transition-delay: 0s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item:nth-child(2) {
  transition-delay: 0.12s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-editorial-item:nth-child(3) {
  transition-delay: 0.24s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) {
  /* Card Grid Items */
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.7s ease, transform 0.7s ease;
  will-change: opacity, transform;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item.is-in-view {
  opacity: 1;
  transform: translateY(0);
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item:nth-child(1) {
  transition-delay: 0s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item:nth-child(2) {
  transition-delay: 0.12s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item:nth-child(3) {
  transition-delay: 0.24s;
}
body:not(.page-template-rechtliches):not(.page-template-rechtliches-en) .wp-block-ud-card-grid-item:nth-child(4) {
  transition-delay: 0.36s;
}

/* reduced motion bleibt global */
@media (prefers-reduced-motion: reduce) {
  .entry-content > .wp-block-heading,
  .wp-block-ud-editorial-item,
  .wp-block-ud-card-grid-item,
  .wp-block-image img,
  .wp-block-cover img,
  .wp-block-post-featured-image img {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Header
\* =============================================================== */
header.wp-block-template-part {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  z-index: 1000;
  box-sizing: border-box;
  padding-right: 64px;
  padding-left: 64px;
  width: 100%;
  height: 100px;
  background-color: rgba(0, 0, 0, 0.8);
  transition: transform 0.28s ease;
}
header.wp-block-template-part > .wp-block-group {
  width: 100%;
}
header.wp-block-template-part {
  /* Hauptnavigation */
}
header.wp-block-template-part li a {
  text-transform: uppercase;
  letter-spacing: 0.25rem;
  font-size: 18px;
  color: var(--ud-neutral-300);
  transition: all 0.2s ease;
  display: inline-block;
}
header.wp-block-template-part li a:hover {
  color: var(--ud-neutral-100);
  transform: scale(1.05);
}

header.wp-block-template-part.is-hidden {
  transform: translateY(-100%);
}

@media screen and (max-width: 800px) {
  header.wp-block-template-part {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    height: fit-content;
  }
  header.wp-block-template-part > .wp-block-group {
    flex-direction: column;
    align-items: flex-start;
  }
  header.wp-block-template-part > .wp-block-group > .wp-block-group {
    align-self: flex-end;
  }
  header.wp-block-template-part > .wp-block-group > .wp-block-group ul {
    line-height: 1;
  }
  header.wp-block-template-part > .wp-block-group > .wp-block-group ul a {
    font-size: 13px;
    letter-spacing: 0.025rem;
  }
  header.wp-block-template-part > .wp-block-group > .wp-block-group .ud-language-switcher {
    right: 20px;
  }
}
/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Footer
\* =============================================================== */
footer {
  margin-top: 25vw;
  padding: 7vw 60px 10px;
  background: var(--ud-theme-900);
  color: var(--ud-theme-400);
}
@media screen and (max-width: 800px) {
  footer {
    padding: 5px;
  }
}
footer h2 {
  font-size: var(--wp--preset--font-size--h-2);
  font-weight: 300;
}
@media screen and (max-width: 800px) {
  footer .row_01 {
    padding: 60px;
    flex-direction: column-reverse;
    gap: 20vw;
  }
}
footer a.social_media.instagram {
  font-size: 40px;
  font-size: var(--wp--preset--font-size--h-1);
  color: var(--ud-theme-600);
  transition: all 0.2s;
}
@media screen and (max-width: 800px) {
  footer a.social_media.instagram {
    align-self: flex-end;
  }
}
footer a.social_media.instagram:hover {
  transform: scale(1.05);
}
footer .row_02 {
  margin-top: 15vw;
  font-size: calc(0.8 * var(--wp--preset--font-size--base));
}
footer .row_02 p,
footer .row_02 a {
  opacity: 0.7;
  transition: opacity 0.2s;
}
footer .row_02 a:hover {
  opacity: 1;
}

/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Page-Styles
\* =============================================================== */
body.page-template-rechtliches > .wp-site-blocks > .wp-block-post-title,
body.page-template-rechtliches .wp-block-post-title,
body.page-template-rechtliches .entry-content,
body.page-template-rechtliches-en > .wp-site-blocks > .wp-block-post-title,
body.page-template-rechtliches-en .wp-block-post-title,
body.page-template-rechtliches-en .entry-content {
  max-width: 1000px;
  margin-inline: auto;
}
body.page-template-rechtliches > .wp-site-blocks > .wp-block-post-title h2.wp-block-heading,
body.page-template-rechtliches .wp-block-post-title h2.wp-block-heading,
body.page-template-rechtliches .entry-content h2.wp-block-heading,
body.page-template-rechtliches-en > .wp-site-blocks > .wp-block-post-title h2.wp-block-heading,
body.page-template-rechtliches-en .wp-block-post-title h2.wp-block-heading,
body.page-template-rechtliches-en .entry-content h2.wp-block-heading {
  font-size: 2rem;
  margin-bottom: 1rem;
  margin-top: 3rem;
}

/* =============================================================== *\
   Frontend Entry Point

   Einstiegspunkt für alle Frontend-Styles.

   Wird nach build/style.css kompiliert
   und im Frontend geladen.
\* =============================================================== */
/* =============================================================== *\
   Polylang
\* =============================================================== */
.ud-language-switcher {
  position: absolute;
  top: 12px;
  right: 12px;
  font-size: 13px;
  display: flex;
  align-items: center;
}
.ud-language-switcher__link {
  display: inline-flex;
  color: var(--ud-theme-400);
  text-decoration: none;
  transition: all 0.2s ease;
}
.ud-language-switcher__link:hover, .ud-language-switcher__link:focus {
  color: var(--ud-theme-200);
}

/* =============================================================== *\
   Hero-Video Block
\* =============================================================== */
@media screen and (max-width: 800px) {
  .ud-hero-video-block {
    min-height: 75vh;
  }
  .ud-hero-video-block .ud-hero-video-block__content {
    min-height: 75vh;
  }
  .ud-hero-video-block .ud-hero-video-block__content .ud-hero-video-block__headline {
    font-variation-settings: "wght" 200, "opsz" 14;
  }
}
/* =============================================================== *\
   Editorial-Layout
\* =============================================================== */
@media screen and (max-width: 800px) {
  .wp-block-ud-editorial-layout {
    margin: 1rem auto;
  }
  .wp-block-ud-editorial-layout .wp-block-ud-editorial-item {
    margin-top: 1rem;
  }
}
/* =============================================================== *\
   Card-Grid
\* =============================================================== */
.wp-block-ud-card-grid {
  margin-top: 5vw;
  margin-bottom: 5vw;
}
@media screen and (max-width: 800px) {
  .wp-block-ud-card-grid {
    grid-template-columns: repeat(auto-fit, 100%);
    gap: 18px;
  }
}
.wp-block-ud-card-grid .ud-card-grid-item {
  box-shadow: var(--ud-shadow-900);
}

/* =============================================================== *\
   Team-Cards
\* =============================================================== */
@media screen and (max-width: 800px) {
  .wp-block-ud-team-cards {
    grid-template-columns: repeat(auto-fit, 100%);
  }
}
.wp-block-ud-team-cards .wp-block-ud-team-card {
  background-color: var(--ud-theme-750);
  box-shadow: var(--ud-shadow-900);
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__name {
  font-size: calc(1.5 * var(--wp--preset--font-size--base));
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__role {
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__email {
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__email a {
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__email a::before {
  content: "\f1d8";
  font-family: "Font Awesome 7 Sharp";
  font-weight: 100;
  font-size: calc(0.8 * var(--wp--preset--font-size--base));
  line-height: 1;
  padding-right: 0.35rem;
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__phone {
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__phone a {
  font-size: var(--wp--preset--font-size--base);
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__content .ud-team-card__phone a::before {
  content: "\f10b";
  font-family: "Font Awesome 7 Sharp";
  font-weight: 100;
  font-size: calc(0.8 * var(--wp--preset--font-size--base));
  line-height: 1;
  padding-left: 0.25rem;
  padding-right: 0.6rem;
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__actions a {
  background: transparent;
  width: fit-content;
  padding: 0;
  padding: 0.6rem 1rem;
  background: var(--ud-theme-700);
  border-radius: 100px;
  font-size: 1rem;
}
.wp-block-ud-team-cards .wp-block-ud-team-card .ud-team-card__actions a::after {
  content: "\f061";
  font-family: "Font Awesome 7 Sharp";
  font-weight: 100;
  line-height: 1;
  padding-left: 0.5rem;
}

/* =============================================================== *\
   Formular Overlay
\* =============================================================== */
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__trigger {
  position: fixed;
  top: calc(100% - 80px);
  right: 0;
  padding: 18px 24px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  background-color: var(--ud-theme-750);
  font-size: 24px;
  text-transform: uppercase;
}
@media screen and (max-width: 800px) {
  .wp-block-ud-form-overlay-addon .ud-form-overlay-addon__trigger {
    padding: 12px 18px;
    padding: 12px 18px;
    font-size: 18px;
    bottom: unset;
  }
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__overlay {
  transition: opacity 0.32s ease;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__backdrop {
  background-color: rgba(0, 0, 0, 0.6);
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel {
  width: calc(100% - 20px);
  max-width: 485px;
  border-radius: 24px;
  background-color: var(--ud-theme-850);
  filter: drop-shadow(6px 6px 12px rgba(0, 0, 0, 0.3));
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.96);
  transition: opacity 0.28s ease, transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ff-el-group {
  margin-bottom: 0;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel h3 {
  margin-top: 0;
  margin-bottom: 2rem;
  padding-top: 0;
  font-size: 24px;
  font-weight: 200;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel input,
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel textarea,
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel input.ff-el-form-control,
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel textarea.ff-el-form-control {
  margin-bottom: 28px;
  border: none;
  border-radius: 12px;
  color: var(--ud-theme-100);
  background-color: var(--ud-theme-750);
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel textarea,
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel textarea.ff-el-form-control {
  height: 15rem;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ud-form-overlay-addon__close {
  width: 24px;
  height: 24px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ud-form-overlay-addon__close:hover {
  opacity: 0.9;
  transform: scale(1.06);
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ud-form-overlay-addon__close .ud-form-overlay-addon__close-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ud-form-overlay-addon__close .ud-form-overlay-addon__close-icon svg {
  display: none;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ud-form-overlay-addon__close .ud-form-overlay-addon__close-icon::before {
  content: "\f057";
  font-family: "Font Awesome 7 Sharp";
  font-size: 24px;
  font-weight: 100;
  line-height: 1;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ff-btn-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 12px;
  background-color: transparent !important;
  font-size: 24px;
  font-weight: 200;
  transition: background-color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ff-btn-submit::before {
  content: "\f1d8";
  font-family: "Font Awesome 7 Sharp";
  font-size: 0.9em;
  font-weight: 100;
  line-height: 1;
}
.wp-block-ud-form-overlay-addon .ud-form-overlay-addon__panel .ff-btn-submit:hover {
  background-color: var(--ud-theme-900) !important;
  color: inherit !important;
  opacity: 0.9 !important;
  transform: translateY(-1px);
}
.wp-block-ud-form-overlay-addon .ff-message-success {
  border: 0px solid #ced4da;
  box-shadow: none;
  padding: 15px;
  border-radius: 15px;
  background: var(--ud-theme-750);
  margin-top: 0;
}
.wp-block-ud-form-overlay-addon.is-open .ud-form-overlay-addon__panel {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
