/*
Theme Name: Archiv Stadt Friedrichstadt 2025
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Template: twentytwentyfive
Author: c2 agentur
Author URI: https://c2-agentur.de
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready,wide-blocks,block-styles,style-variations,accessibility-ready,blog,portfolio,news
Version: 1.2.1751973254
Updated: 2025-07-08 13:14:14

*/
/*
** ################################################################################################
** ############################################# GENERIC ##########################################
** ################################################################################################
*/
html,body{
	overflow-x: hidden;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
	}
body::-webkit-scrollbar {
  width: 1rem;
  }
body{
  color: #535C62;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 80, 152,1);
  }
body.modal-open {
  padding: 0!important;
  }
body::-webkit-scrollbar-track {
  background: #535C62;
  }
body::-webkit-scrollbar-thumb {
  background-color: #7086ba;
  border-radius: 0px;
  border: 0px solid rgba(0, 80, 152,1);
  }
h1,.h1,
h2,.h2,
h3,.h3,
h4,.h4,
h5,.h5 {
	font-weight: 600;
	color: #005098 !important;
  margin: .5rem 0;
	}
p,
li,
a,
.wc-block-components-checkout-step__description,
.wc-block-components-checkbox label{
	/*font-family: 'Roboto',sans-serif;*/
	/*font-size: 20px;*/
  /*font-size: 16px;*/
  font-size: clamp(18px, 2vw, 19.2px);
  font-weight: 300;
	color: #535C62 !important;
	}
.wc-block-components-order-summary .wc-block-components-order-summary-item__description p {
  font-size: clamp(16px, 2vw, 16px);
  }
a{
	color: #d32b0f !important;
	}
li.ext_white a:after {
  position: absolute;
  content: "";
  height: 23px;
  width: 15px;
  background-image: url(../../uploads/link_extern.png);
  background-size: contain;
  background-color: transparent;
  background-position: bottom;
  background-repeat: no-repeat;  
  margin-left: 5px;
  }
#to_top_scrollup {
	border: 1px solid #ffffff;
	}
.fa-box {
	color: #ffffff;
	margin: 0 auto;
	width: 100%;
	padding-bottom: 10px;
	}
.uppercase {
	text-transform: uppercase;
	}
.strong {
	font-weight: bold;
	}
.card {
	border-radius: 0;
	}
.prev-link,
.next-link {
	color: #fff;
	}
.prev-link a {
	margin-left: 5px;
	}
.next-link a {
	margin-right: 5px;
	}
.btn.btn-friedrichstadt {
	background-color: #005098;
	}
.btn.btn-friedrichstadt > a {
	color: #fff;
	}
a.mContainer {
	/*font-size: 14px;*/
	font-size: inherit;
	}
a:hover{
	}
button{
  outline: none!important;
  -webkit-box-shadow: none!important;
  box-shadow: none!important;
  }
button:hover,
button:focus,
button:visited {
  text-decoration: none!important;
  outline: none!important;
  -webkit-box-shadow: none!important;
  box-shadow: none!important;  
  }
.btn:focus,.btn:active:focus,.btn.active:focus,
.btn.focus,.btn:active.focus,.btn.active.focus,
.navbar-toggler,.navbar-toggler:active,.navbar-toggler:focus,
.wpcf7-text:focus, .wpcf7-textarea:focus,
.wpcf7-select:focus,.wpcf7-date:focus{
  outline: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  }
.wp-block-image img {
  height: auto;
  }
.congressblue_bgc{
  background-color: #005098;
  }
.tiamaria_bgc{
  background-color: #d32b0f;
  }
p.C2B_collapseParagraph {
  margin: 0;
  }
a.btn.C2B_btn_collapse {
  color: inherit;
  padding: 6px 0;
  font-size: 1.5rem;
  text-align: left;
  }
a.btn.C2B_btn_collapse:after,
a.btn.C2B_btn_collapse:after{
  position: relative;
  bottom: -5px;
  left: 0rem;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 15px;
  /* color: #d32b0f; */
  color: inherit;
  content: "\f0d7";
  font-size: 1rem;
  float: left;
  }
a.btn.C2B_btn_collapse[aria-expanded="true"]:after{
  content: "\f0d8";
  }
.scroll_action{
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  }
.rhfs_hero_caption{
  /*
  border: 2px solid #005098;
  color: #005098!important;
  */
  border: 2px solid #fff;
  color: #fff!important;
  text-shadow: 2px 2px 3px #535c62;
  padding: 1rem;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.2;
  margin: 0;
  }
.rhfs_side_caption{
  border: 2px solid white;
  padding: 1rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  }
.rhfs_hero_caption.wow,
.rhfs_side_caption.wow{
  visibility: hidden;
  }
.wp-block-image figcaption {
  font-weight: 300;
  margin:0;
  }
.elem_arch_btns {
  float: left;
  margin-right: 5px;
  }
a.rhfs_btn_tm{
  background-color: #d32b0f;
  color: #ffffff !important;
  padding: 0;
  border: 0px;
  border-radius: 0px;
  height: 30px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 70px;
  }
a.rhfs_btn_tm:hover{
  background-color:#006bcb;
  text-decoration: underline;
  }
ul.custom_list_icon {
  list-style: none;
  padding: 0;
  }
a#stabtn_link {
  width: 110px;
  display: inline;
  padding: 5px 10px;
  margin-right: 5px;
  font-size: inherit;
  }
a#stabtn_link:hover {
  text-decoration: none;
  }
/*
============================ NAVBAR ============================
*/
.col-header-navbar .wp-block-group {
  display: inline-block;
  }
.wp-block-site-logo.is-default-size img {
  /*display: none;*/
  height: auto;
  width: 50px;
  }
.fsa_navbar_custom a.wp-block-navigation-item__content{
  color: white !important;
  font-weight: 400;
  font-family: 'Poppins V15 Latin', sans-serif;
  }
.fsa_navbar_custom .wp-block-navigation__submenu-container a.wp-block-navigation-item__content,
.wp-block-woocommerce-customer-account a span.label {
  font-weight: 600;
  font-family: 'Poppins V15 Latin', sans-serif;
  font-size: .9rem;
  color: white !important;
  }
.col-header-sitetitle {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  }
.col-header-sitetitle .header-sitetitle {
  /*padding: 0 0 0 10rem;*/
  }
.col-header-sitetitle .header-sitetitle a {
  padding: 0 0 0 0rem;
  font-weight: 600;
  font-family: 'Poppins V15 Latin', sans-serif;
  font-size: .9rem;
  color: white !important;
  }

/* -----------------  SPECIAL ICONS */
/* —— Einstellungen (optional) —— */
:root{
  --ticket-icon-size: 2em;
  --ticket-icon-gap: 12px;
  --ticket-icon-rotate: -5deg;
  --ticket-icon-shift-y: 1px; /* feine Baseline-Korrektur */
}

/* Basis: Icon links vor dem Label */
.with-icon-tickets .wp-block-navigation-item__label,
.with-icon-documents .wp-block-navigation-item__label{
  display: inline-flex;
  align-items: center;
  gap: var(--ticket-icon-gap);
}

/* Fallback für ältere Browser ohne flex-gap */
@supports not (gap: 1rem){
  .with-icon-tickets .wp-block-navigation-item__label::before,
  .with-icon-documents .wp-block-navigation-item__label::before{
    margin-right: var(--ticket-icon-gap);
  }
}

li.wp-block-navigation-item.with-icon-tickets.wp-block-navigation-link a,
li.wp-block-navigation-item.with-icon-documents.wp-block-navigation-link a {
  display: inline-flex;
  align-items: center;
  }

/* Fallback: Icon als background-image */
.with-icon-tickets .wp-block-navigation-item__label::before{
  content: "";
  display: inline-block;
  width: var(--ticket-icon-size);
  height: var(--ticket-icon-size);
  background: url('/wp-content/themes/twentytwentyfive-child/images/Ticket-Friedrichstadt.svg')
            no-repeat center / contain;
  -webkit-transform: translateY(var(--ticket-icon-shift-y)) rotate(var(--ticket-icon-rotate));
        transform: translateY(var(--ticket-icon-shift-y)) rotate(var(--ticket-icon-rotate));
  -webkit-transform-origin: center;
        transform-origin: center;
  }

/* optional: schönes Spacing */
.with-icon-documents .wp-block-navigation-item__label{
  display:inline-flex; align-items:center; gap:.45ch;
  }

.with-icon-documents .wp-block-navigation-item__label::before{
  content:"";
  display:inline-block;
  width: var(--ticket-icon-size);
  height: var(--ticket-icon-size);
  background: url('/wp-content/themes/twentytwentyfive-child/images/play-solid-005098.svg')
              no-repeat center / contain;
  transform-origin: center;
  will-change: transform, filter, opacity;

  /* Animations-Parameter (kein rotate mehr) */
  --shift-y: var(--ticket-icon-shift-y, 0); /* z.B. 0 oder 1px */
  --bob-x:   6px;                           /* horizontale Amplitude */
  --dur:     1.6s;                          /* Geschwindigkeit */
  --ease:    ease-in-out;

  animation:
    doc-wiggle-x var(--dur) var(--ease) infinite,
    doc-pulse    var(--dur) var(--ease) infinite;
  }

@keyframes doc-wiggle-x {
  0%,100% { transform: translate(0, var(--shift-y)) scale(1); }
  50%     { transform: translate(var(--bob-x), var(--shift-y)) scale(1.06); }
}

@keyframes doc-pulse {
  0%,100% { filter: drop-shadow(0 0 0 rgba(0,80,152,0)); opacity:.95; }
  50%     { filter: drop-shadow(0 0 6px rgba(0,80,152,.45)); opacity:1; }
}

/* nur bei Hover abspielen (optional) */
/*
.with-icon-documents .wp-block-navigation-item__label::before { animation-play-state: paused; }
.with-icon-documents .wp-block-navigation-item__label:hover::before { animation-play-state: running; }
*/
@media (prefers-reduced-motion: reduce){
  .with-icon-documents .wp-block-navigation-item__label::before{ animation:none; }
}


/* -----------------  DOKUMENTE */
li.wp-block-navigation-item.with-icon-documents {
    background-color: #fff;
    padding: 5px 10px;
    }
li.wp-block-navigation-item.with-icon-documents a{
    color: #005098 !important;
    }
li.wp-block-navigation-item.with-icon-documents:hover{
    background-color: #005098;
    color: #005098;
    }
li.wp-block-navigation-item.with-icon-documents:hover a{
    color: #fff !important;
    }
li.wp-block-navigation-item.with-icon-documents:hover .wp-block-navigation-item__label::before{
  background: url('/wp-content/themes/twentytwentyfive-child/images/play-solid-fff.svg')
            no-repeat center / contain;
  }



/*
============================ NAVBAR : FIXED ============================
*/
/* klebt die Header-Leiste am oberen Rand */
/*
.fsa-sticky-header{
  position: fixed;
  top: 0;                 
  z-index: 2000;          
  inset-inline: 0;        
  isolation: isolate;     
}
*/

/* WordPress-Adminbar berücksichtigen (eingeloggte User) */
body.admin-bar .fsa-sticky-header{ top: 32px; }
@media (max-width: 782px){
  body.admin-bar .fsa-sticky-header{ top: 46px; }
}

/* (optional) dezenter Schatten, sobald gescrollt wird */
.fsa-sticky-header.has-shadow{
  box-shadow: 0 6px 18px rgba(0,0,0,.12);
}
.indicator-expiration {
  color: white;
  }
/*
============================ CONTENT ============================
*/
.content-cutom-fonts p,
.content-cutom-fonts p a,
.content-cutom-fonts p li,
button.btn.c2_files_btn_coll{
  font-size: clamp(18px, 2vw, 19.2px);
  }
a.pmpro_btn.pmpro_btn-select,
a.add_to_cart_button,
button.woocommerce-button,
button.single_add_to_cart_button,
button.wp-block-button__link,
button.wc-block-components-button.wp-element-button {
  background-color: #005098;
  border: none;
  border-radius: 0px;
  color: white !important;
  font-weight: 500;
  }
a.pmpro_btn.pmpro_btn-select:hover,
a.add_to_cart_button:hover,
button.woocommerce-button:hover,
button.single_add_to_cart_button:hover,
button.wp-block-button__link:hover,
button.wc-block-components-button.wp-element-button:hover {
  background-color: #006bcb;
  }
:is(.parent-pageid-473,
    .parent-pageid-557,
    .parent-pageid-592,
    .parent-pageid-527,
    .parent-pageid-537,
    .parent-pageid-565,
    .parent-pageid-602,
    .parent-pageid-529,
    .parent-pageid-478,
    .parent-pageid-572,
    .parent-pageid-613,
    .parent-pageid-533,
    .parent-pageid-18,
    .parent-pageid-13,
    .parent-pageid-682,
    .parent-pageid-516) .wp-site-blocks main {
  padding-top: 1vh;
}

:is(.parent-pageid-473,
    .parent-pageid-557,
    .parent-pageid-592,
    .parent-pageid-527,
    .parent-pageid-537,
    .parent-pageid-565,
    .parent-pageid-602,
    .parent-pageid-529,
    .parent-pageid-478,
    .parent-pageid-572,
    .parent-pageid-613,
    .parent-pageid-533,
    .parent-pageid-18,
    .parent-pageid-13,
    .parent-pageid-682,
    .parent-pageid-516) main .wp-block-group {
  padding-top: 0 !important;
}
a.bottom.back-btn {
  display: inline-block;
  margin: 10px 0;
  }
/*
============================ WOOCOMMERCE ============================
*/
:where(.wc-block-mini-cart__badge) {
  background-color: white !important;
  }
/*
.taxonomy-product_cat.wp-block-post-terms {
  display: none;
  }
*/
/* --- button: x in cart ---*/
button.wp-block-button__link.wp-element-button.add_to_cart_button.ajax_add_to_cart{
  background-color: #005098 !important;
  font-weight: bold;
  }
button.wp-block-button__link.wp-element-button.add_to_cart_button.ajax_add_to_cart:hover{
  background-color: #00386a !important;
  }

/* --- button: view product ---*/
a.view-product{
  background-color: #005098 !important;
  border-radius: 0px;
  font-weight: bold;  
  }
a.view-product:hover{
  background-color: #00386a !important;  
  }

/* --- weiterlesen ---*/
a.wp-block-button__link.wp-element-button.wc-block-components-product-button__button {
  background-color: rgba(0, 80, 152, .5) !important;
  border-radius: 0px;
  font-weight: bold;
  color: white !important;
  }
a.wp-block-button__link.wp-element-button.wc-block-components-product-button__button:hover {
  background-color: rgba(0, 80, 152, 1) !important;
  }
.wrap-btn-view-product {
  text-align: center;
  padding: 1vh 0;
  }

/* --- notices --- */
.wc-block-components-notice-banner.is-success {
  background-color: #005098;
  border-color: #00386a;
  color: white;
  border-radius: 0px;
  }
.wc-block-components-notice-banner.is-success>svg {
  background-color: #fff;
  fill: #005098;
  }
.wc-block-components-notice-banner a.button.wc-forward.wp-element-button {
  color: white !important;
  font-weight: bold;
  }
.wc-block-components-product-price .woocommerce-Price-amount {
  font-size: 2rem;
  font-weight: bold;
  }
/* --- mini cart checkout --- */
a.wc-block-components-button.wp-element-button.wp-block-woocommerce-mini-cart-checkout-button-block.wc-block-mini-cart__footer-checkout {
  background-color: #005098 !important;
  color: white !important;
  font-weight: bold;
  }
a.wc-block-components-button.wp-element-button.wp-block-woocommerce-mini-cart-checkout-button-block.wc-block-mini-cart__footer-checkout:hover {
  background-color: #00386a !important;
  }
a.wc-block-components-button.wp-element-button.wp-block-woocommerce-mini-cart-cart-button-block.wc-block-mini-cart__footer-cart.outlined:hover {
  background-color: #005098 !important;
  color: white !important;
  }
a.wc-block-components-button.wp-element-button.wp-block-woocommerce-mini-cart-cart-button-block.wc-block-mini-cart__footer-cart.outlined {
  color: #00386a !important;
  }
/* --- checkout --- */
.wc-gzd-checkout .wc-block-components-order-summary {
  background-color: #005098 !important;
  color: white;
  }
.wc-block-components-order-summary .wc-block-components-order-summary-item__description p {
  color: white;
  }

/* --- single --- */
.single-product a.woocommerce-product-gallery__trigger {
  display: none;
  }
.single-product .woocommerce-product-gallery__image a {
  pointer-events: none;
  cursor: default;
  }
.single-product ul.tabs.wc-tabs {
  border-bottom-width: 2px !important;
  border-bottom-color: #005098 !important;
  border-bottom-style: solid;
  }
.single-product ul.tabs.wc-tabs li.description_tab {
  border: 0px !important;
  }
.single-product ul.tabs.wc-tabs li.description_tab.active {
  background-color: #005098 !important;
  color: white !important;
  }
a.button.c2af-account-link {
  background-color: #005098;
  display: block;
  text-align: center;
  width: fit-content;
  margin: 15px auto;
  padding: 5px 10px;
  color: white !important;
  }
a.button.c2af-account-link:hover {
  background-color: #00386a;
  }

/* ---------------------------------------------------- PRODUKTKATALOG --- */
.fsa-product-template .wc-block-components-product-image {
  background-color: white;
  padding: 4rem 1rem;
  }

.fsa-product-template .wc-block-components-product-image img {
  /* Modern */
  transform: rotate(-5deg);
  transform-origin: 50% 50%;
  /* Legacy WebKit (old Safari/Android) */
  -webkit-transform: rotate(-5deg);
  -webkit-transform-origin: 50% 50%;
  /* Smoother rendering on some GPUs/WebKit */
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  display: block; /* avoids small inline gaps */
  }

/* Avoid clipping if a wrapper enforces aspect-ratio or overflow */
.fsa-product-template .wc-block-components-product-image,
.fsa-product-template .wc-block-components-product-image a,
.fsa-product-template .wc-block-components-product-image .wc-block-components-product-image__inner-container {
  overflow: visible;
  }

/* === Shiny Hover für Produktbilder ===================================== */
  .fsa-product-template .wc-block-components-product-image a {
    position: relative;
    display: block;
    overflow: visible;
    isolation: isolate; /* eigener Stacking-Context, damit ::after oben liegt */
  }

  /* weiche Übergänge fürs bereits gedrehte Bild */
  .fsa-product-template .wc-block-components-product-image img {
    transition: transform 300ms cubic-bezier(.2,.6,.2,1), filter 300ms;
    -webkit-transition: -webkit-transform 300ms cubic-bezier(.2,.6,.2,1), filter 300ms;
  }

  /* dezente Anhebung beim Hover/Focus */
  .fsa-product-template .wc-block-components-product-image a:hover img,
  .fsa-product-template .wc-block-components-product-image a:focus-visible img {
    transform: rotate(-5deg) scale(1.02);        /* Rotation beibehalten! */
    -webkit-transform: rotate(-5deg) scale(1.02);
    filter: drop-shadow(0 8px 16px rgba(0,0,0,.12));
  }

  /* die „Shine“-Bahn */
  .fsa-product-template .wc-block-components-product-image a::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: -20%;
    left: -60%;
    width: 40%;
    height: 140%;
    background: linear-gradient(
      120deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.55) 45%,
      rgba(255,255,255,0) 100%
    );
    transform: skewX(-20deg) translateX(-120%);
    -webkit-transform: skewX(-20deg) translateX(-120%);
    opacity: 0;
    pointer-events: none;
    will-change: transform, opacity;
    transition: transform 700ms cubic-bezier(.19,.84,.25,1), opacity 250ms ease;
    -webkit-transition: -webkit-transform 700ms cubic-bezier(.19,.84,.25,1), opacity 250ms ease;
    mix-blend-mode: screen; /* wirkt „glänzender“ auf Fotos/Dunkelheit */
  }

  /* Animation beim Hover/Focus */
  .fsa-product-template .wc-block-components-product-image a:hover::after,
  .fsa-product-template .wc-block-components-product-image a:focus-visible::after {
    opacity: 1;
    transform: skewX(-20deg) translateX(280%);
    -webkit-transform: skewX(-20deg) translateX(280%);
  }

  /* Barrierearmut: weniger Bewegung, wenn gewünscht */
  @media (prefers-reduced-motion: reduce) {
    .fsa-product-template .wc-block-components-product-image img {
      transition: none;
    }
    .fsa-product-template .wc-block-components-product-image a::after {
      transition: opacity 150ms linear;
      transform: none;
      -webkit-transform: none;
    }
  }
  /*
  button.add_to_cart_button.twtf-locked,
  .single_add_to_cart_button.twtf-locked {
    opacity: .45;
    cursor: not-allowed;
  }
  */
  /* Button, dessen Produkt im Warenkorb liegt */
  button.wp-block-button__link.wp-element-button.add_to_cart_button.ajax_add_to_cart.incart {
    border: 2px solid #005098 !important; 
    background: #fff !important;
    color: #005098 !important;
    pointer-events: none !important;
  }

  /* Alle anderen: „inaktiv“ (nur optisch) */
  button.add_to_cart_button.inactive { 
    opacity: .15; 
    pointer-events: none; /* falls wirklich un-klickbar gewünscht */
    /*visibility: hidden;*/
    }

  /* ------------------------------- wgm */
  .woocommerce-shop p.price,
  .woocommerce-shop .wgm-info.woocommerce-de_price_taxrate,
  .woocommerce-shop .wgm-info.woocommerce_de_versandkosten {
    display: none;
    }
  .product-image-link--disabled { cursor: default; }


  .wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button,
  .woocommerce-cart a.wp-element-button.wc-block-cart__submit-button,
  a.woocommerce-button.wp-element-button.button.view,
  .woocommerce-account a.button.wp-element-button,
  button.woocommerce-Button.button.wp-element-button{
    background-color: #005098 !important;
    color: white !important;
    font-weight: 500;  
    }
  .wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button:hover,
  .woocommerce-cart a.wp-element-button.wc-block-cart__submit-button:hover,
  a.woocommerce-button.wp-element-button.button.view:hover,
  .woocommerce-account a.button.wp-element-button:hover,
  button.woocommerce-Button.button.wp-element-button:hover{
    background-color: #00386a !important;
    }

  .wp-block-button.wc-block-components-product-button a.added_to_cart.wc_forward {
    background-color: #005098;
    padding: 15px 20px;
    text-decoration: none;
    color: white !important;
    font-weight: bold;
    }
  .wp-block-button.wc-block-components-product-button a.added_to_cart.wc_forward:hover {
    background-color: #00386a;
    }
  p.woocommerce-customer-details--phone,
  p.woocommerce-customer-details--email {
    font-size: inherit;
    }
  .woocommerce-customer-details--email a.mContainer.TEBtn {
    font-size: inherit;
    }

  /* ------------------------------- MITGLIEDSSTATUS */
  .mitgliedsstatus {
    padding: 1rem;
    margin-bottom: 1rem;
    background-color: #005098;
    width: fit-content;
    }
  .mitgliedsstatus p {
    margin: 0;
    color: white !important;
    }

  /* ------------------------------- DISABLE LINKS */
  .wc-block-mini-cart__drawer a.wc-block-components-product-name,
  .woocommerce-cart a.wc-block-components-product-name,
  .woocommerce-account td.woocommerce-table__product-name.product-name a,
  .woocommerce-cart a.wc-block-grid__product-link,
  .woocommerce-cart td.wc-block-cart-item__image a {
    pointer-events: none;
    }
  .woocommerce-checkout p.order-again,
  .woocommerce-cart .wgm-info.woocommerce_de_versandkosten {
    display: none;
    }

  /* ------------------------------- WOOC ACCOUNT */
    .woocommerce-account .woocommerce {
      min-width: 100%;
      }

/* ============================ FILES ============================ */

  /* Block-Rahmen */
  .c2_files_body {
    border-bottom: 1px solid #005098;
    }

  /* Card-Reset */
  .card.card-body.c2_files_crdbd {
    border: 0 !important;
    }

  /* Grundlayout/Fallback */
  .c2_files_crdbd p {
    margin: .5rem 0;
    text-align: left;
    white-space: normal;
    }

  a.presse_pdf {
    font-size: initial !important;
    background-color: #d32b0f;
    color: white !important;
    padding: 5px;
    margin: 2px 0;
    display: inline-block;
    }
  a.presse_pdf:hover {
    background-color: #9E200B;
    }
  p.button-pdf span.filesize_tag {
    font-size: small;
    }

  /* Button + Zusatzinfos nebeneinander */
  .c2_files_crdbd a.presse_pdf,
  .c2_files_crdbd .filesize_tag {
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2;
    }

  /* Button-Style */
  .c2_files_crdbd a.presse_pdf {
    background: #d32b0f;
    color: #fff !important;
    text-decoration: none;
    opacity: .9;
    position: relative;
    margin-right: 5px;
    padding: 7px 10px 7px 34px; /* Platz für Icon links */
    font-size: 16px;
    text-align: center;
    width: 105px;              /* optional: fixe Breite, s. Seite 916-Override */
    }

  /* Icon vor dem Button-Text (Font Awesome 5) */
  a.presse_pdf::before {
    content: "\f1c1";                       /* file-pdf */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;                        /* Solid; bei Bedarf 400 (Regular) */
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: .95em;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 10px;
    }
  .c2_files_crdbd a.presse_pdf::before {
    content: "\f1c1";                       /* file-pdf */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;                        /* Solid; bei Bedarf 400 (Regular) */
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: .95em;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    }

  /* Dateigrößen-Tag */
  .c2_files_crdbd .filesize_tag {
    font-size: 11px;
    }

  /* Seiten-spezifische Anpassung */
  .page-id-916 .c2_files_crdbd a.presse_pdf {
    width: max-content; /* auf dieser Seite ohne fixe Breite */
    }

  /* Abstand zwischen Texten (statt &nbsp;) */
  .c2_files_crdbd span.filesize_tag {
    margin-left: .5rem;
    font-size: 12px;
    }

  /* 2) Progressive Enhancement: Flexbox (mit Prefixes) */
  @supports (display: flex) {
    .c2_files_crdbd p {
      display: -webkit-box;             /* älteres iOS/Safari */
      display: -ms-flexbox;             /* IE10/11 */
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;      /* vertikal zentriert */
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: start;  /* horizontal zentriert */
      /* gap wird nicht überall unterstützt → wir lassen margin-left am Span */
    }
  }

  .btn.c2_files_btn_coll{ display:inline-flex; align-items:center; gap:.5rem; }
  .btn.c2_files_btn_coll[aria-expanded="false"]::before{ content:"\25BC"; } /* ▼ */
  .btn.c2_files_btn_coll[aria-expanded="true"]::before { content:"\25B2"; } /* ▲ */
/*
============================ FOOTER ============================
*/
  footer.wp-block-template-part {
    margin-top: 20vh;
    }  
  p.fsa-footer-navbarlinks a {
    color: white !important;
    text-decoration: none;
    }
  p.fsa-footer-navbarlinks a:hover {
    text-decoration: underline;
    }
  .fsa-footer-navbarlinks a.wp-block-navigation-item__content{
    color: white !important;
    }
  .fsa-footer-navbarlinks .external-link-icon{
    background-image: url('/wp-content/uploads/square-arrow-upright_fff.svg') !important;
    }
  span.external-link-icon.Right {
    margin-left: 10px;
    }
  span.external-link-icon.Custom {
    height: 16px;
    width: 14px;
    }
  footer a.mContainer {
    color: white !important;
    }
  .fsa-footer-navbarlinks.wp-block-navigation {
    gap: 0px;
    }
  .fsa-footer-navbarlinks.wp-block-navigation li a span {
    font-size: 16px;
    }
  .footer-link-rhfs p a {
    color: white !important;
    font-size: 1rem;
    text-decoration: none;
    font-weight: bold;
    }
  .footer-link-rhfs p a:hover {
    text-decoration: underline;
    }
  /*
  ####################################################
  ooo        ooooo                 .o8   o8o                   .oooooo.                                      o8o                     
  `88.       .888'                "888   `"'                  d8P'  `Y8b                                     `"'                     
   888b     d'888   .ooooo.   .oooo888  oooo   .oooo.        888      888    oooo  oooo   .ooooo.  oooo d8b oooo   .ooooo.   .oooo.o 
   8 Y88. .P  888  d88' `88b d88' `888  `888  `P  )88b       888      888    `888  `888  d88' `88b `888""8P `888  d88' `88b d88(  "8 
   8  `888'   888  888ooo888 888   888   888   .oP"888       888      888     888   888  888ooo888  888      888  888ooo888 `"Y88b.  
   8    Y     888  888    .o 888   888   888  d8(  888       `88b    d88b     888   888  888    .o  888      888  888    .o o.  )88b 
  o8o        o888o `Y8bod8P' `Y8bod88P" o888o `Y888""8o       `Y8bood8P'Ybd'  `V88V"V8P' `Y8bod8P' d888b    o888o `Y8bod8P' 8""888P' 
  ####################################################
  */
  
  /*
  ::::::::::::::::::::::::::::::::::::::::::::::::::::
  Bootstrap 4 breakpoints
  */
  /* 
  Extra small devices (portrait phones, less than 576px) 
  No media query since this is the default in Bootstrap because it is "mobile first"
  */
  /* 
    oooooooo  ooooooooo     .ooo   
   dP""""""" d"""""""8'   .88'     
  d88888b.         .8'   d88'      
      `Y88b       .8'   d888P"Ybo. 
        ]88      .8'    Y88[   ]88 
  o.   .88P     .8'     `Y88   88P 
  `8bd88P'     .8'       `88bod8' 
  Small devices (landscape phones, 576px and up) */
  @media (min-width: 576px) {
     
      }
  /* 
   ooooooooo     .ooo    .ooooo.   
  d"""""""8'   .88'     d88'   `8. 
        .8'   d88'      Y88..  .8' 
       .8'   d888P"Ybo.  `88888b.  
      .8'    Y88[   ]88 .8'  ``88b 
     .8'     `Y88   88P `8.   .88P 
    .8'       `88bod8'   `boood8'  
  Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
  @media (min-width: 768px) {



    /*
    ============================ NAVBAR ============================
    */
    header.wp-block-template-part {
      -webkit-box-shadow: 0px 0px 5px -2px #666;
      box-shadow: 0px 0px 5px -2px #666;
      border-bottom: 3px solid #fff;
      }
    .cols-fsarch-navigation {
      display: block !important;
      }
    .col-header-navbar .wp-block-group {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      /*
      -webkit-flex-direction: column;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      */
      }

  }
  /*
   ooooooooo  .ooooo.     .oooo.   
d"""""""8' d88'   `8. .dP""Y88b  
      .8'  Y88..  .8'       ]8P' 
     .8'    `88888b.      .d8P'  
    .8'    .8'  ``88b   .dP'     
   .8'     `8.   .88P .oP     .o 
  .8'       `boood8'  8888888888 
  */
    @media (min-width: 782px) {
    }
  /* 
    .oooo.    ooooooooo   oooooooo          .ooooo.     .o    .oooo.   
  .dP""Y88b  d"""""""8'  dP"""""""         d88'   `8. o888  .dP""Y88b  
        ]8P'       .8'  d88888b.           Y88..  .8'  888        ]8P' 
      <88b.       .8'       `Y88b           `88888b.   888      .d8P'  
       `88b.     .8'          ]88  8888888 .8'  ``88b  888    .dP'     
  o.   .88P     .8'     o.   .88P          `8.   .88P  888  .oP     .o 
  `8bd88P'     .8'      `8bd88P'            `boood8'  o888o 8888888888
  ----------- iPhone X ----------- */
  @media only screen 
    and (min-device-width: 375px) 
    and (max-device-width: 812px) 
    and (-webkit-min-device-pixel-ratio: 3)
    and (orientation: landscape) {
  }
  @media (min-width: 820px) {
  }
  /* 
   .ooooo.    .ooooo.     .oooo.   
  888' `Y88. 888' `Y88. .dP""Y88b  
  888    888 888    888       ]8P' 
   `Vbood888  `Vbood888     .d8P'  
        888'       888'   .dP'     
      .88P'      .88P'  .oP     .o 
    .oP'       .oP'     8888888888 
  Large devices (desktops, 992px and up) */
  @media (min-width: 992px) {

  }
  /*
    .o    .oooo.     .oooo.         .o   
  o888   d8P'`Y8b  .dP""Y88b      .d88   
   888  888    888       ]8P'   .d'888   
   888  888    888     .d8P'  .d'  888   
   888  888    888   .dP'     88ooo888oo 
   888  `88b  d88' .oP     .o      888   
  o888o  `Y8bd8P'  8888888888     o888o
  */
  @media (min-width: 1024px) { 
  .col-header-sitetitle .header-sitetitle a {
    padding: 0 0 0 0rem;
    }
  .wp-block-site-logo.is-default-size img {
    display: block;
    height: auto;
    width: 120px;
    }
  .fsa-sticky-header{
    position: fixed;
    top: 0;                 /* an den oberen Rand */
    z-index: 2000;          /* über Content/Overlays */
    inset-inline: 0;        /* volle Breite in LTR/RTL */
    isolation: isolate;     /* eigener Stacking-Context */
    -webkit-box-shadow: 0px 0px 5px -2px #666;
    box-shadow: 0px 0px 5px -2px #666;    
    border-bottom: 3px solid #fff;
    }
  }
  /* 
    .o    .oooo.     .oooo.     .oooo.   
  o888  .dP""Y88b   d8P'`Y8b   d8P'`Y8b  
   888        ]8P' 888    888 888    888 
   888      .d8P'  888    888 888    888 
   888    .dP'     888    888 888    888 
   888  .oP     .o `88b  d88' `88b  d88' 
  o888o 8888888888  `Y8bd8P'   `Y8bd8P'
  Extra large devices (large desktops, 1200px and up) */
  @media (min-width: 1200px) {
  }
  /* 
    .o    .oooo.       .ooo       .ooo   
  o888  .dP""Y88b    .88'       .88'     
   888        ]8P'  d88'       d88'      
   888      <88b.  d888P"Ybo. d888P"Ybo. 
   888       `88b. Y88[   ]88 Y88[   ]88 
   888  o.   .88P  `Y88   88P `Y88   88P 
  o888o `8bd88P'    `88bod8'   `88bod8'  
  */
  @media (min-width: 1336px) {
    .cols-fsarch-navigation {
      display: -webkit-box !important;
      display: -moz-box !important;
      display: -ms-flexbox !important;
      display: -webkit-flex !important;
      display: flex !important;
      }
  }
  /* 
    .o        .o         .o     .oooo.   
  o888      .d88       .d88    d8P'`Y8b  
   888    .d'888     .d'888   888    888 
   888  .d'  888   .d'  888   888    888 
   888  88ooo888oo 88ooo888oo 888    888 
   888       888        888   `88b  d88' 
  o888o     o888o      o888o   `Y8bd8P' 
  Extra large devices (large desktops, 1440px and up) */
  /* Extra large devices (large desktops, 1440px and up) */
  @media (min-width: 1440px) {

    /*
    ============================ NAVBAR ============================
    */
    .col-header-sitetitle .header-sitetitle a {
      padding: 0 0 0 10rem;
      }
    .fsa_navbar_custom a.wp-block-navigation-item__content{
      color: white !important;
      font-weight: 600;
      font-size: .9rem;
      }
    .fsa_navbar_custom .wp-block-navigation__submenu-container a.wp-block-navigation-item__content {
      color: black !important;
      font-weight: 600;
      font-size: .9rem;
      }    
    header .is-default-size.wp-block-site-logo {
      position: absolute;
      top: 0;
      left: unset;
      -webkit-box-shadow: 0 4px 8px -4px #000;
      box-shadow: 0 4px 8px -4px #000;      
      }
    .is-layout-constrained > .alignwide {
      max-width: 1600px !important;
      }

    /*
    ============================ CONTENT ============================
    */
    .wp-site-blocks main {
      padding-top: 5vh;
      }
  }
  /*
    .o      .ooo     .oooo.     .oooo.   
  o888    .88'      d8P'`Y8b   d8P'`Y8b  
   888   d88'      888    888 888    888 
   888  d888P"Ybo. 888    888 888    888 
   888  Y88[   ]88 888    888 888    888 
   888  `Y88   88P `88b  d88' `88b  d88' 
  o888o  `88bod8'   `Y8bd8P'   `Y8bd8P'                                      
  */
  @media (min-width: 1600px) {

    .col-header-sitetitle .header-sitetitle a {
      font-size: 1.5rem;
      }

  }
  /*
    .o   .ooooo.     .oooo.     .oooo.   
  o888  888' `Y88. .dP""Y88b   d8P'`Y8b  
   888  888    888       ]8P' 888    888 
   888   `Vbood888     .d8P'  888    888 
   888        888'   .dP'     888    888 
   888      .88P'  .oP     .o `88b  d88' 
  o888o   .oP'     8888888888  `Y8bd8P' 
  */
  @media (min-width: 1920px) {
  }
  /* ############################################## */
  /*
    .oooo.     oooooooo     .ooo     .oooo.   
  .dP""Y88b   dP"""""""   .88'      d8P'`Y8b  
        ]8P' d88888b.    d88'      888    888 
      .d8P'      `Y88b  d888P"Ybo. 888    888 
    .dP'           ]88  Y88[   ]88 888    888 
  .oP     .o o.   .88P  `Y88   88P `88b  d88' 
  8888888888 `8bd88P'    `88bod8'   `Y8bd8P'  
  */
  @media (min-width: 2560px) {

  }
  /*
    .oooo.    .ooooo.     .oooo.     .oooo.   
  .dP""Y88b  d88'   `8.  d8P'`Y8b   d8P'`Y8b  
        ]8P' Y88..  .8' 888    888 888    888 
      .d8P'   `88888b.  888    888 888    888 
    .dP'     .8'  ``88b 888    888 888    888 
  .oP     .o `8.   .88P `88b  d88' `88b  d88' 
  8888888888  `boood8'   `Y8bd8P'   `Y8bd8P'  
                                              
  */
  @media (min-width: 2800px) {

  }
  /*
    .oooo.     .oooo.     .oooo.     .oooo.   
  .dP""Y88b  .dP""Y88b   d8P'`Y8b   d8P'`Y8b  
        ]8P'       ]8P' 888    888 888    888 
      <88b.      .d8P'  888    888 888    888 
       `88b.   .dP'     888    888 888    888 
  o.   .88P  .oP     .o `88b  d88' `88b  d88' 
  `8bd88P'   8888888888  `Y8bd8P'   `Y8bd8P'  
                                              
  */
  @media (min-width: 3200px) {

  }
  /*
    .oooo.    .ooooo.         .o     .oooo.   
  .dP""Y88b  d88'   `8.     .d88    d8P'`Y8b  
        ]8P' Y88..  .8'   .d'888   888    888 
      <88b.   `88888b.  .d'  888   888    888 
       `88b. .8'  ``88b 88ooo888oo 888    888 
  o.   .88P  `8.   .88P      888   `88b  d88' 
  `8bd88P'    `boood8'      o888o   `Y8bd8P'  
  */
  @media (min-width: 3840px) {}
  /*
        .o     .oooo.    .ooooo.       .ooo   
      .d88    d8P'`Y8b  888' `Y88.   .88'     
    .d'888   888    888 888    888  d88'      
  .d'  888   888    888  `Vbood888 d888P"Ybo. 
  88ooo888oo 888    888       888' Y88[   ]88 
       888   `88b  d88'     .88P'  `Y88   88P 
      o888o   `Y8bd8P'    .oP'      `88bod8'  
  */
  @media (min-width: 4096px) {}