/** Shopify CDN: Minification failed

Line 1827:0 Unexpected "<"
Line 2389:0 Unexpected "<"

**/
/* =========================================================
   REHACOMFORT – CUSTOM CSS (CLEANED & STRUCTURED)
   ========================================================= */

/* =========================================================
   1) ROOT / BASE
   ========================================================= */

:root {
  --border-radius-10: 10px;
}

* {
  -webkit-tap-highlight-color: transparent; /* Entfernt blauen Tap-Highlight bei Mobilgeräten */
}

html {
  padding-bottom: 0 !important;
}

.shopify-pc__banner__btn-decline {
  display: none;
}

article,
aside,
details,
figcaption,
figure,
footer-section,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

.sr-only,
.rhct_cat_sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  border-width: 0;
}

[v-cloak] {
  display: none;
}

.w-100 { width: 100%; }
.h-100 { height: 100%; }


/* =========================================================
   2) Z-INDEX / OVERLAYS / WIDGETS
   ========================================================= */

#trustbadge-container-98e3dadd90eb493088abdc5597a70810 {
  z-index: 900000 !important;
}

.site-nav__dropdown {
  z-index: 100000;
}

.site-footer {
  z-index: 5;
  position: relative;
}

.faq-tab-wrapper {
  z-index: 3;
  position: relative;
}

.predictive__screen {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  background: #00000080;
  display: none;
}


/* =========================================================
   3) NAV / BADGES / MICRO-ANIMATIONS
   ========================================================= */

/* Nav-Collection Beliebt */
.nav-badge-popular {
  position: absolute;
  display: inline-block;
  font-weight: 600;
  font-size: 0.75rem;
  padding-left: 6px;
  padding-top: 1px;
  text-transform: uppercase;
  color: #c10505;
  overflow: hidden;
}

.countdown__display:hover {
  text-decoration: underline;
}

.slide-nav__item.sale_link a {
    display: flex;
    justify-content: flex-start;
    color: #ff5050;
    font-weight: bold;
}


.slide-nav__item.sale_link a svg {
    margin-right: 5px;
}

/* Shiny Effekt */
.nav-badge-popular::after {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;
  width: 150%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.6) 50%,
    transparent 100%
  );
  animation: shine 2.8s ease-in-out infinite;
}

@keyframes shine {
  0% { left: -150%; }
  60% { left: 150%; }
  100% { left: 150%; }
}


/* Phone Ring Animation */
@keyframes jump-shaking {
  0% { transform: translateY(0) rotate(0); }
  6.25% { transform: translateY(-3px); }
  8.75% { transform: translateY(-3px) rotate(17deg); }
  13.75% { transform: translateY(-3px) rotate(-17deg); }
  16.25% { transform: translateY(-3px) rotate(17deg); }
  18.75% { transform: translateY(-3px) rotate(-17deg); }
  25% { transform: translateY(0) rotate(0); }
  100% { transform: translateY(0) rotate(0); }
}

.icon.icon-phone {
  animation: jump-shaking 4s infinite;
}

.icon.icon-phone path {
  fill: black;
}

.icon.icon-circle-checkmark {
  color: #55b4e6;
}


/* =========================================================
   4) THIRD-PARTY / APPS (Boost, Judge.me, Upsell, Safebadge, TPO)
   ========================================================= */

.upsell_brand {
  display: none !important; /* Hide Upsell Powered */
}

.boost-sd__suggestion-queries-item-link .jdgm-prev-badge__text {
  display: none;
}

a.jdgm-medal {
  pointer-events: none !important;
  cursor: default !important;
}

/* Safebadge Position */
#safebadge-widget {
  left: 1rem;
  right: 0 !important;
}

/* TPO (Options / Radio) */
.tpo_popup-modal-button {
  font-family: inherit !important;
  position: relative;
  padding: 4px 5px !important;
  color: rgba(0, 0, 0, 0.87) !important;
  font-size: 0.875rem !important;
  min-width: 64px;
  box-sizing: border-box;
  border-radius: 4px;
  transition:
    background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,
    box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,
    border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
  font-weight: 500 !important;
  line-height: 1.75 !important;
  letter-spacing: 0.02857em !important;
}

.tpo_radio {
  height: 18px !important;
  width: 35px !important;
  margin-bottom: 0;
}

.tpo_slider:before {
  bottom: 1px !important;
  height: 13px !important;
  width: 13px !important;
}

.tpo_radio-container .form__label {
  font-size: 15px !important;
}

.tpo_radio-container .form__label > span {
  font-size: 13px !important;
}

.tpo_radio-button-wrapper label,
.tpo_radio-button-wrapper label .tpo_next_option_type {
  position: relative;
  width: 100%;
}

.tpo_url_wrapper {
  width: 100%;
}

.tpo_option_type_label {
  width: 100% !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  text-align: left !important;
  color: black !important;
  font-weight: normal !important;
  font-size: 1rem !important;
}

.tpo_radio-button[type="radio"] + div:before,
.tpo_radio-button[type="radio"]:checked + div:after {
  display: none;
}

.tpo_radio-button[type="radio"] + div {
  padding-left: 12px !important;
}

.tpo_option-label-container span.form__label {
  font-weight: 700;
  font-size: 18px !important;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  font-family: var(--typeBasePrimary), var(--typeBaseFallback);
  letter-spacing: var(--typeBaseSpacing);
  line-height: var(--typeBaseLineHeight);
  text-rendering: optimizeSpeed;
}


/* =========================================================
   5) PRODUCT PAGE / PDP FIXES
   ========================================================= */

.product--description figure {
  margin-left: 0;
}

.product--description figcaption {
  margin-top: 1rem;
}

.template-product .product-single__meta {
  padding-top: 0;
}

.template-product .section-header__title {
  text-align: left;
}

.product__photos img,
.grid__image-ratio img {
  opacity: 1;
}

/* Product Sticky Images Default */
.product-single__sticky {
  top: 100px;
}

/* Fix Configurator */
.js-qty__wrapper {
  max-width: 80px !important;
}

.rio-product-option-title {
  font-size: 1rem !important;
  line-height: calc(1.5 / 1);
}

.template-product .collapsible-trigger {
  display: flex;
  align-items: center;
  font-size: 1rem;
  padding: 10px 0;
}

.collapsible-content--all.is-open {
  height: auto !important;
}

.page-content--product {
  background: #eeeeee;
}

.page-content--product > .page-width {
  background: white;
  border-radius: 2rem;
  padding-top: 1rem;
}

.rio-options {
  padding-bottom: 0 !important;
}


/* PDP Badge */
.discount_badge {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1rem;
  border-radius: var(--border-radius-10);
}

.discount_badge__title {
  font-weight: 700;
}

.discount_badge__category_title {
  font-size: calc(var(--typeBaseSize) + 0.063rem);
  font-weight: 700;
  margin-bottom: 0.938rem;
}


/* =========================================================
   6) ADD TO CART / QUANTITY / STICKY
   ========================================================= */

.add-to-cart-lab {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.add-to-cart {
  z-index: 100;
  position: relative;
  padding: 14px 20px;
}

.feature-row__text .btn,
.add-to-cart {
  box-shadow: 2px 2px 10px #0003;
}

/* Sticky Buy Button */
.sticky-add-to-cart-wrapper {
  z-index: 999;
  box-shadow: 0 -2px 5px #0000001a;
  transition: top 0.5s ease-in-out;
}


/* =========================================================
   7) TABLES / TECHNICAL INFO
   ========================================================= */

.technical-info-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
  background: none;
}

.technical-info-table caption {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.technical-info-table thead tr {
  border-bottom: 1px solid #ddd;
}

.technical-info-table tr {
  padding: 0.5rem;
  border-bottom: 1px solid #ddd;
}

.technical-info-table tr th,
.technical-info-table tr td {
  background: none;
}

.technical-info-table tbody th {
  font-weight: 600;
}

.technical-info-table tbody td:first-child {
  font-weight: 600;
  width: 40%;
}

.technical-info-table tbody tr:nth-child(even) {
  background-color: #ededed;
}


/* =========================================================
   8) COLLECTION / CATEGORY / GRID
   ========================================================= */

.collection-grid > .grid-item {
  margin-bottom: var(--indexSectionPadding);
  padding-inline: 10px;
}

.grid-product__tags {
  top: 10px;
  bottom: unset;
}

.grid__item--sidebar {
  padding-left: 0;
}

.product-grid-item {
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  padding: 0 0.5rem;
}


/* =========================================================
   9) MEGA MENU
   ========================================================= */

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level) {
  padding-left: 6px;
  transition: padding-left 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-left: 1px solid #55b3e6;
  line-height: 16.5px;
  margin: 0.75rem 0;
  text-decoration: none;
}

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level):hover {
  padding-left: 4px;
  border-left: 1px solid #104b75;
}


/* =========================================================
   10) FOOTER
   ========================================================= */

.footer__blocks {
  display: flex;
  justify-content: center;
  gap: 0;
}

.footer__blocks .footer__blocks--image__html {
  flex-direction: column;
}

.footer__block {
  max-width: 400px;
}

.footer__block + .footer__block {
  margin-top: 2rem;
}

.footer__block--image div {
  max-width: 18.75rem;
  margin-inline: auto;
}

.footer__block--image .footer__image--desktop {
  display: none;
}

.footer--contact .footer__menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.footer__block--menu .footer__menu a:hover {
  opacity: 1;
}

.footer--contact img {
  aspect-ratio: 1;
  min-width: 2.5rem;
  width: 2.5rem;
  border-radius: 50%;
}

.footer--contact .contact--container {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
}

.footer--contact .contact {
  display: flex;
  flex-direction: column;
  text-align: start;
}

.footer--contact .contact a {
  padding: 0;
}

.footer--contact .contact a:hover {
  font-weight: 600;
}

.footer--contact .chat {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  border-radius: 0.5rem;
  text-decoration: none;
  border: 1px solid transparent;
  background: #d9d9dd1f;
  transition: border-color 0.2s;
}

.footer--contact .chat:hover {
  border-color: currentColor;
}

.footer--contact .chat div {
  text-align: start;
}

.footer--contact .chat small {
  font-size: 0.8125rem;
}

.footer--contact .footer__menu .icon {
  margin-right: 0.25rem;
}

.footer--contact .contact--label {
  font-weight: 600;
}

.footer--divider {
  width: 3.875rem;
  border-top-color: #ffffff66;
}

.footer__block--copyright {
  margin-top: 2rem;
  text-align: center;
  opacity: 0.4;
}

.footer__block--mobile + .footer__block--mobile {
  margin-top: 2rem;
}

.footer__social {
  width: fit-content;
  margin-inline: auto;
}

.footer__social li {
  margin: 0 15px 15px 0;
}

.footer__social a {
  border: none;
  border-color: none;
  border-radius: 0;
  display: block;
  line-height: 0;
  padding: 0;
}

.footer__social .icon {
  height: 21px;
  width: 21px;
}

.footer__block--menu a {
  font-size: 1rem;
  opacity: 0.4;
}

.payment-icons {
  justify-content: center;
}

.icon--payment.custom {
  width: 2.375rem;
  height: 1.875rem;
}

.icon--payment img {
  width: 2.25rem;
  height: 1.375rem;
  object-fit: cover;
  border-radius: 0.125rem;
  background: white;
}


/* =========================================================
   11) HEADER / ANNOUNCEMENT / HERO
   ========================================================= */

.site-header,
.site-header__element--sub {
  box-shadow: 0 0 25px rgb(0 0 0 / 10%);
}

.announcement-slider__content p {
  display: inline-flex;
}

.contact-icon {
  margin-right: 14px;
}

.hero__text-wrap .hero__text-shadow:after {
  margin: -150px 0;
}

/* Set Header z-index to 0 if Modal Open */
.modal-open .header-section {
  z-index: 0;
}

/* Custom Hero Video */
.hero__media-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* Header Block */
.header-block {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.header-block.left {
  text-align: start;
  align-items: flex-start;
}

.header-block.center {
  text-align: center;
  align-items: center;
}

.header-block.right {
  text-align: end;
  align-items: flex-end;
}

.header-block .h4 {
  margin-bottom: 0;
  font-weight: normal;
}

.header-block .h1 strong {
  color: #37d779;
}

.header-block .caption__container {
  gap: 10px;
  display: flex;
  align-items: center;
}

.header-block .caption__icon--wrapper {
  max-height: 25px;
  max-width: 30px;
}


/* =========================================================
   12) LAB MODAL
   ========================================================= */

lab-modal.modal--is-closing,
lab-modal.modal--is-active {
  display: grid !important;
}

lab-modal .modal__inner {
  align-items: center;
  display: none;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 12;
  background: transparent;
  max-width: 100%;
  margin: 0;
}

lab-modal .modal__centered {
  margin: 15px;
  height: 60%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 20px 18px;
  background: white;
  border-radius: var(--border-radius-10);
  box-shadow: 0 12px 25px #00000026;
  overflow: hidden;
}

lab-modal .modal__centered-content {
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  color: black;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
  padding-inline: 2px;
}

lab-modal.modal--is-active .modal__inner {
  display: flex;
  animation: slideUpDown 0.55s forwards;
}

lab-modal .modal__centered-content::-webkit-scrollbar {
  width: 7px;
  height: 90%;
}

lab-modal .modal__centered-content::-webkit-scrollbar-thumb {
  background: #7e7e7e;
  border-radius: var(--border-radius-10);
}

lab-modal .modal__centered-content::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: var(--border-radius-10);
}

lab-modal button.btn.btn--circle.btn--icon.modal__close.js-modal-close {
  top: 20px;
  right: 20px;
  background: #e9e9e9;
}

lab-modal button.btn.btn--circle.btn--icon.modal__close.js-modal-close .icon {
  color: #000000;
}

lab-modal button.btn.btn--circle.btn--icon.modal__close.js-modal-close:hover {
  background: #000000;
}

lab-modal button.btn.btn--circle.btn--icon.modal__close.js-modal-close:hover .icon {
  color: #e9e9e9;
}

@keyframes slideUpDown {
  0% {
    transform: translateY(100%);
    background: transparent;
  }
  35% { transform: translateY(0); }
  100% { background: #878787d4; }
}

lab-modal.custom--is-inactive .modal__inner {
  animation: slideDown 0.35s forwards;
}

@keyframes slideDown {
  0% {
    transform: translateY(0);
    display: flex;
  }
  100% {
    transform: translateY(100%);
    display: none;
    background: transparent;
  }
}


/* =========================================================
   13) PRODUCT HIGHLIGHTS (rhct_cat_*)
   ========================================================= */

.product_highlights svg {
  width: 0.75rem;
  height: 0.75rem;
  fill: rgb(17 75 117 / 1);
  flex: none;
}

.product_highlights svg.rhct_cat_ico_sm {
  width: 0.6rem;
  height: 0.6rem;
}

.rhct_cat_absolute { position: absolute; }
.rhct_cat_relative { position: relative; }

.rhct_cat_my-2 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.rhct_cat_mr-4 { margin-right: 1rem; }

.rhct_cat_block { display: block; }
.rhct_cat_flex { display: flex; }
.rhct_cat_grid { display: grid; }

.rhct_cat_size-2\.5 { width: 0.625rem; height: 0.625rem; }
.rhct_cat_size-5 { width: 1.25rem; height: 1.25rem; }
.rhct_cat_size-full { width: 100%; height: 100%; }

.rhct_cat_h-fit { height: fit-content; }
.rhct_cat_w-full { width: 100%; }

.rhct_cat_items-center { align-items: center; }
.rhct_cat_justify-center { justify-content: center; }

.rhct_cat_gap-1 { gap: 0.25rem; }

.rhct_cat_space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.rhct_cat_space-x-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1.25rem * var(--tw-space-x-reverse));
  margin-left: calc(1.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.rhct_cat_rounded { border-radius: 0.25rem; }
.rhct_cat_rounded-full { border-radius: 9999px; }

.rhct_cat_bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

.rhct_cat_bg-green-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1));
}

.rhct_cat_bg-green-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}

.rhct_cat_bg-yellow-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}

.rhct_cat_bg-yellow-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(202 138 4 / var(--tw-bg-opacity, 1));
}

.rhct_cat_p-1 { padding: 0.25rem; }
.rhct_cat_p-px { padding: 1px; }

.rhct_cat_text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.rhct_cat_font-medium { font-weight: 500; }

.rhct_cat_text-\[\#114b75\] {
  --tw-text-opacity: 1;
  color: rgb(17 75 117 / var(--tw-text-opacity, 1));
}


/* =========================================================
   14) ADDITIONAL COMPONENTS / SLIDERS / MISC
   ========================================================= */

.section--divider {
  border-top: 1px solid;
  border-top-color: var(--colorBorder);
  padding-top: 0;
}

.slider_current_num {
  position: absolute;
  bottom: 10px;
  left: 10px;
  display: inline-block;
  background-color: #fff;
  border-radius: 6px;
  padding: 1px 5px;
  font-size: 14px;
}

.cart__remove.tpo a {
  color: #e9444d;
}

.slide-nav__link {
  border-bottom: 1px solid #ddd;
  padding: 10px 0;
}

li.slide-nav__item {
  padding-left: 15px;
  padding-right: 15px;
}

li.slide-nav__item:last-child .slide-nav__link {
  border-bottom: none;
}

.footer__section.footer__section--menus {
  margin-top: 0;
}


/* Flickity gallery buttons */
.flickity-prev-next-button {
  border-radius: 5px;
}

.flickity-button {
  color: #000;
  background: #f4f6f8;
}

.product__main-photos .product-slideshow .flickity-page-dots {
  display: none;
}


/* =========================================================
   15) REVIEWS (RBN)
   ========================================================= */

.reviews-rbn-outer-container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.reviews-rbn-custom-container {
  display: flex;
  gap: 30px;
  align-items: center;
}

.reviews-rbn-text-container {
  flex: 1;
  text-align: right;
}

.reviews-rbn-image-container {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  text-align: left;
}

.reviews-rbn-lazyload {
  width: auto;
  height: auto;
  max-height: 30px;
}


/* =========================================================
   16) HC (Legacy Blocks)
   ========================================================= */

.hc-campaign-wrapper {
  background-repeat: no-repeat;
  background-size: cover;
  width: 200px;
  height: 200px;
  position: absolute;
  bottom: 50px;
  right: 50px;
  border-radius: 50%;
  text-align: center;
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: opacity 1s ease-in-out;
}

.hc-save-text {
  font-size: 24px;
  font-weight: bold;
}

.hc-save {
  font-weight: bold;
  font-size: 40px;
}

.hc-campaign-banner img {
  border-radius: var(--border-radius-10);
}

.hc-campaign-banner {
  position: relative;
  margin-bottom: 20px;
}

.hc-campaign-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.hc-campaign-title {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.hc-campaign-text {
  text-align: center;
}

.hc-dropdown-icon img {
  width: 20px;
  margin-right: 5px;
}

.hc-arrow-left.slick-arrow,
.hc-arrow-right.slick-arrow {
  position: absolute;
  top: 40%;
  z-index: 9;
  cursor: pointer;
}

.hc-arrow-left.slick-arrow { left: -45px; }
.hc-arrow-right.slick-arrow { right: -45px; }

.hc-arrow-left.slick-arrow .fa,
.hc-arrow-right.slick-arrow .fa {
  font-size: 20px;
}

.hc-teknik-slider .slick-arrow {
  width: 40px;
  height: 40px;
  background: #fff;
  border: solid;
  border-color: #f3f4f0;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

.hc-teknik-slider .slick-arrow:hover {
  transform: translateY(-50%) scale(1.12);
}

/* HC Table */
.hc-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.hc-table {
  border: 1px solid #f6f6f6;
}

.hc-cell {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  border: 1px solid #cdcdcd;
}

.hc-cell img {
  width: 40px;
}

.hc-cell.hc-grey {
  background: #f6f6f6;
  flex-direction: column;
}

.hc-cell.hc-grey:first-of-type { border-right: none; }
.hc-cell.hc-grey:nth-of-type(2) { border-left: none; }

.hc-title { font-size: 16px; }
.hc-subtitle { font-size: 12px; }

.hc-cell.hc-grey img {
  margin-bottom: 10px;
}

.hc-cell.hc-image-header img {
  width: 90%;
}

.hc-teknik-slider .slick-dots {
  position: initial;
}

.hc-teknik-slider .slick-dots li button:before {
  font-size: 20px;
}

.hc-teknik-slider .slick-dots li.slick-active button:before {
  opacity: 1;
  font-size: 35px;
}

.hc-teknik-slider .slick-dots li button {
  margin: 0 5px;
}

.hc-teknik-slider .slick-dots li {
  padding: 0;
  margin: 0;
}

.collapsible-content.hc-sammenlign.is-open {
  height: 100% !important;
}

.div-l2 {
  width: 25%;
  display: flex;
  align-items: center;
  margin-right: 10px;
}

.div-r2 {
  width: 75%;
  padding-left: 5px;
}

.div-l {
  width: 15%;
  display: flex;
  align-items: center;
  margin-right: 10px;
}

.guarantee {
  display: flex;
  padding: 15px;
  align-items: center;
  font-size: calc(var(--typeBaseSize));
  border-radius: 5px;
  object-fit: fill;
  margin-bottom: 15px;
  background-color: #e2f5ff;
  font-weight: 500;
  line-height: 1.8;
}


/* =========================================================
   17) BASE COMPONENTS (TYPO)
   ========================================================= */

.h5,
h5 {
  font-size: calc(var(--typeHeaderSize) * 0.35);
}

.h6,
h6 {
  font-size: calc(var(--typeHeaderSize) * 0.3);
}


/* =========================================================
   18) CONFIGURATOR IMAGE ZOOM (cfg-prev-*)
   ========================================================= */

.cfg-prev-absolute { position: absolute; }
.cfg-prev-left-\[55px\] { left: 55px; }
.cfg-prev-top-0 { top: 0; }
.cfg-prev-h-\[25px\] { height: 25px; }
.cfg-prev-w-\[25px\] { width: 25px; }
.cfg-prev-w-full { width: 100%; }
.cfg-prev-cursor-pointer { cursor: pointer; }


/* =========================================================
   19) RESPONSIVE: BREAKPOINTS
   ========================================================= */

/* ---------- 480px ---------- */
@media screen and (max-width: 480px) {
  .btn:not(.tool-tip__close),
  .feature-row__text .btn,
  .add-to-cart {
    width: 100%;
  }

  .rich-text .btn,
  .hero__link .btn,
  .custom-content .btn {
    width: auto;
  }

  button.btn.btn--circle.btn--icon.modal__close.js-modal-close,
  button.btn.btn--secondary.btn--circle.js-photoswipe__zoom.product__photo-zoom {
    width: auto;
  }

  .feature-row__item.feature-row__images {
    padding: 0;
  }

  .hc-campaign-title {
    font-size: 22px;
  }

  ul.hc-product\.page.inline-list.payment-icons {
    margin-bottom: 20px;
  }

  .hero__link a {
    width: auto;
  }

  .page-width.feature-row-wrapper {
    padding: 0;
  }

  .hc-campaign-wrapper {
    width: 100px;
    height: 100px;
    right: 20px;
  }

  .hc-save-text { font-size: 14px; }
  .hc-save { font-size: 19px; }
}


/* ---------- <= 768px ---------- */
@media only screen and (max-width: 768px) {
  .nav-badge-popular {
    position: relative;
    padding: 0;
    word-break: keep-all;
    margin-top: 1px;
    font-size: 0.8rem;
  }

  .tpo_add-to-cart {
    height: 62px;
  }

  html {
    overflow-y: hidden !important;
  }

  .footer__block,
  .footer__block--mobile {
    flex: 1 1 100%;
    max-width: none;
  }

  .product__main-photos .flickity-button {
    display: block;
  }

  .flickity-button {
    display: none;
  }

  .hc-campaign-wrapper {
    bottom: unset;
    top: 20px;
    width: 200px;
    height: 200px;
  }

  .hc-save-text { font-size: 24px; }
  .hc-save { font-size: 35px; }

  .hero__link .btn {
    margin: 10px 0;
  }

  .template-product [data-view="scrollable-5"] .grid-item,
  .template-product [data-view="medium"] .grid-item {
    flex: 0 0 70%;
  }

  .quick-add-btn .btn--icon {
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .quick-add-btn .icon {
    width: 25px;
    height: 25px;
  }

  .feature-row__text .btn {
    margin: 30px 10px 0 0;
    box-shadow: 2px 2px 10px #0003;
    padding: 12px 25px;
  }

  .feature-row__text {
    padding: 30px;
    margin-bottom: -15px;
  }

  .header-wrapper [data-nav="below"] .js-search-header {
    display: none;
  }

  .add-to-cart {
    padding: 18px 20px;
  }

  .faq-tab-content {
    width: 100%;
    padding: 15px 0 !important;
  }

  .featured-collection .new-grid {
    display: flex;
    flex-direction: column;
  }

  .boost-sd__header-title,
  .section-header__title {
    word-break: break-word;
  }

  .header-section {
    padding-bottom: calc(var(--header-padding-bottom) - 1px);
  }

  .collection-filter {
    top: 90px;
    z-index: 5;
  }

  .collection-mobile-filters .filter-wrapper.is-active {
    padding-bottom: 10rem;
  }

  .site-header__drawer {
    z-index: 1000 !important;
  }

  /* Sticky Buy Button (Mobile) */
  .sticky-add-to-cart-wrapper {
    position: fixed;
    bottom: 0 !important;
    top: unset !important;
    right: 0;
    left: 0;
    width: 100%;
    margin: 0 auto;
    background-color: white;
    padding: 0.5rem 4.5rem 1rem 3.5rem;
    border-radius: 5px;
  }

  /* Lock scroll helper */
  .lock-scroll body {
    overflow: hidden;
  }
}

.whatsapp-connect-container {
  bottom: 5px !important;
    left: 5px !important;
    width: fit-content;
}


/* ---------- <= 769px (Valentines Fix) ---------- */
@media only screen and (max-width: 769px) {
  .hero__sidebyside-image {
    min-height: 195px;
  }

  #Slideshow-template--24633936675161__slideshow_split_r4q4ta {
    display: inline;
  }

  #shopify-section-sections--24633939493209__pl_countdown_ngRnyx {
    position: relative;
  }
}


/* ---------- >= 640px ---------- */
@media (min-width: 640px) {
  .sm\:rhct_cat_w-fit {
    width: fit-content;
  }
}


/* ---------- >= 750px ---------- */
@media (min-width: 750px) {
  /* Shimmer Overlay */
  #shopify-section-sections--24633939493209__pl_countdown_ngRnyx::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      90deg,
      rgba(233, 68, 77, 0) 0%,
      rgba(255, 255, 255, 0.3) 50%,
      rgba(233, 68, 77, 0) 100%
    );
    animation: shimmer 1.6s infinite;
    background-size: 200% 100%;
  }

  .loaded #shopify-section-sections--24633939493209__pl_countdown_ngRnyx::before {
    animation: none;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  @keyframes shimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
  }

  lab-modal .modal__centered {
    padding: 25px;
    width: 100%;
    max-width: 1000px;
    margin: 40px;
    border-radius: var(--border-radius-10);
    height: 100%;
    max-height: 560px;
  }

  lab-modal .modal__centered-content {
    row-gap: 30px;
  }

  /* Sticky Buy Button (Desktop baseline) */
  .sticky-add-to-cart-wrapper {
    position: fixed;
    bottom: 2rem !important;
    top: unset !important;
    right: 7rem;
    left: unset !important;
    width: fit-content;
    background-color: #aff0ff;
    padding: 12px 0;
    border-radius: 5px;
  }

  #shopify-section-template--24633936675161__slideshow_split_r4q4ta .hero__image {
    object-fit: scale-down !important;
  }

  .hero__sidebyside-content-inner {
    padding: 3vw !important;
  }

  .hero__sidebyside-text--right .hero__sidebyside-content {
    max-width: 45% !important;
  }

  #shopify-section-sections--24633939493209__pl_countdown_ngRnyx {
    top: unset;
    position: unset;
  }
}


/* ---------- >= 768px ---------- */
@media (min-width: 768px) {
  .md\:rhct_cat_grid-flow-row {
    grid-auto-flow: row;
  }
}


/* ---------- >= 769px ---------- */
@media only screen and (min-width: 769px) {
  .qty_num_lab {
    height: 56px;
  }

  .product-block > .rte img {
    max-width: 80%;
  }

  .whatsapp-connect-container {
    bottom: 220px !important;
  }

  .add-to-cart-lab {
    align-items: end;
  }

  .product__quantity label {
    margin-bottom: 5px !important;
  }

  .footer__blocks {
    flex-wrap: nowrap;
    gap: 2rem;
  }

  .footer__block--image {
    order: 1;
    border-right: 1px solid #ffffff57;
  }

  .footer__block--contact { order: 2; }
  .footer__block--payment { order: 3; }
  .footer__block--menu { order: 4; }

  .footer__block--image .footer__image--mobile { display: none; }
  .footer__block--image .footer__image--desktop { display: flex; }

  #footer_privacy_setting {
    margin-top: 100%;
  }

  .footer__block--image div {
    display: flex;
    align-items: center;
  }

  .footer--contact .footer__menu {
    align-items: start;
    gap: 2rem;
  }

  .footer__block--menu .footer__menu {
    text-align: start;
  }

  .footer__social {
    margin-inline: 0;
  }

  .payment-icons {
    justify-content: start;
  }

  .template-product .product-single__meta {
    padding-left: 25px;
  }

  .footer__block--mobile .payment-icons {
    grid-gap: 10px;
    display: inline-grid;
    grid-template-columns: repeat(4, 1fr);
    transform: scale(1.3);
    transform-origin: left top;
  }

  .footer__block--mobile .payment-icons .icon--payment {
    margin: 0;
    display: flex;
  }

  .page-width .footer__blocks {
    gap: 3rem;
  }

  .footer__blocks .footer__block {
    max-width: max-content;
  }

  .footer__blocks .footer__block--image image-element {
    margin-right: 3rem;
  }

  .footer__block:nth-child(3) {
    margin-inline: 3rem;
  }

  /* Fix Sticky Areas Desktop */
  .boost-sd-container {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 var(--pageWidthPadding);
  }

    .boost-sd__filter-option-heading {
    z-index: -1;
    position: relative;
  }
  .boost-sd__filter-option-title {
    width: 100% !important;
  }
}

/* ---------- 901px–1200px ---------- */
@media only screen and (min-width: 901px) and (max-width: 1200px) {
  html {
    width: 100vw !important;
  }
}


/* ---------- 901px–1400px ---------- */
@media only screen and (min-width: 901px) and (max-width: 1400px) {
  .medium-up--three-fifths {
    padding-right: 6.5rem;
  }

  .product-single__title {
    font-size: 20px;
  }
}


/* ---------- <= 920px ---------- */
@media screen and (max-width: 920px) {
  .header-layout[data-logo-align="center"] .header-item--icons,
  .header-layout[data-logo-align="center"] .header-item--navigation,
  .header-layout[data-logo-align="center"] .header-item--search {
    flex: 1 auto;
  }
}


/* ---------- <= 991px ---------- */
@media screen and (max-width: 991px) {
  .reviews-rbn-custom-container {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .reviews-rbn-text-container,
  .reviews-rbn-image-container {
    width: 100%;
    text-align: center;
  }

  .reviews-rbn-lazyload {
    max-height: 25px;
  }
}


/* ---------- <= 1200px ---------- */
@media only screen and (max-width: 1200px) {
  .hc-campaign-wrapper {
    width: 150px;
    height: 150px;
    bottom: 30px;
    right: 30px;
  }

  .hc-save-text { font-size: 18px; }
  .hc-save { font-size: 24px; }
}


/* ---------- >= 1024px ---------- */
@media (min-width: 1024px) {
  .phone-link {
    cursor: pointer;
  }
}


/* ---------- >= 1400px ---------- */
@media only screen and (min-width: 1400px) {
  #shopify-section-template--24633936675161__slideshow_split_r4q4ta .hero__image {
    object-fit: cover !important;
  }

  .hero__sidebyside-content-inner {
    padding: 5vw !important;
  }

  .hero__sidebyside-text--right .hero__sidebyside-content {
    max-width: 40% !important;
  }
}

/* START Sticky Timer */
/* Einblenden bei laufender Aktion ansonten auskommentieren */


@media only screen and (max-width: 768px) {
  .collection-filter {
    position: sticky;
    top: 127px;
    z-index: 100;
  }
}

@media only screen and (max-width: 749px) {
  .countdown__heading { width: 100%; }

  .pl-countdown-wrapper .countdown__heading .countdown_campaign_text,
  .pl-countdown-wrapper .countdown_campaign_text,
  .pl-countdown-timer div span.countdown_campaign_text {
    font-size: 12px !important;
  }

  .pl-countdown-wrapper .countdown_timer_data,
  .pl-countdown-wrapper .time_string {
    font-size: 12px;
  }

  .header-section { top: 38px; }

  .pl-countdown-wrapper .countdown__display--visible { padding: 0.4rem; }
  .pl-countdown-wrapper .countdown_separator { display: none !important; }
}

@media only screen and (min-width: 750px) {
  .product-single__sticky { top: 150px !important; }

  #shopify-section-sections--24633939493209__custom_header_4KHgVC.header-section {
    top: 40px;
  }
}


/* END Sticky Timer */

#shopify-section-sections--24633939493209__pl_countdown_ngRnyx {
  position: sticky !important;
  top: 0 !important;
  z-index: 7 !important;
  overflow: hidden;
  background-color: #e9444d;
}

/* START CUSTOM VAROMED SCHUH SELECTOR */
<style>
/* ============================================================
   Zusammengeführte CSS-Datei
   Enthält beide getrennten Komponenten: gf-* und gfk2-*
   Hinweis: Selektoren wurden bewusst nicht umbenannt, damit bestehendes HTML/JS weiter funktioniert.
   ============================================================ */

/* ============================================================
   CSS-Datei 1 – gfk2
   ============================================================ */
#gfk2-root,#gfk2-root *,#gfk2-overlay,#gfk2-overlay *,#gfk2-video-overlay,#gfk2-video-overlay * {
  box-sizing:border-box;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
}
#gfk2-root p,#gfk2-root h2,#gfk2-root h3,#gfk2-root h4{margin:0}

/* ── Banner ── */
.gfk2-banner {
  display:grid; grid-template-columns:340px 1fr;
  background:#fff; border:1px solid #dde3ea; border-radius:8px;
  overflow:hidden; margin-bottom:32px; box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.gfk2-banner-visual { display:flex; align-items:stretch; border-right:1px solid #e4eaf0; overflow:hidden; }
.gfk2-banner-img    { width:100%; height:100%; object-fit:cover; display:block; }
.gfk2-banner-content { padding:32px 36px; }
.gfk2-banner-tag {
  display:inline-block; background:#e8f4fb; color:#114b75;
  border:1px solid #aad6ef; border-radius:4px;
  font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; padding:3px 9px; margin-bottom:12px;
}
.gfk2-banner-title { font-size:22px; font-weight:700; color:#111827; margin-bottom:10px; line-height:1.3; }
.gfk2-banner-desc  { font-size:14px; color:#6B7280; line-height:1.65; margin-bottom:20px; max-width:500px; }
.gfk2-banner-checks { display:flex; flex-direction:column; gap:9px; margin-bottom:24px; }
.gfk2-check-item   { display:flex; align-items:center; gap:10px; font-size:13.5px; color:#374151; }
.gfk2-check-icon   {
  width:20px; height:20px; background:#a9edc1; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:#16a34a; flex-shrink:0;
}
.gfk2-banner-cta   { display:flex; align-items:center; gap:16px; }
.gfk2-open-btn {
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 22px; background:#114b75; color:#fff;
  border:none; border-radius:6px; font-size:14px; font-weight:600;
  cursor:pointer; white-space:nowrap; transition:background .15s;
}
.gfk2-open-btn:hover { background:#0d3a5c; }
.gfk2-banner-sub { font-size:12px; color:#9CA3AF; }

/* ── Overlay / Modal ── */
#gfk2-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.65); z-index:2147483647;
  overflow-y:auto; padding:20px 12px;
}
#gfk2-overlay.gfk2-open { display:flex; align-items:flex-start; justify-content:center; }
#gfk2-modal {
  background:#fff; border-radius:14px; width:100%; max-width:900px;
  box-shadow:0 24px 60px rgba(0,0,0,.3); animation:gfk2Slide .22s ease;
  display:flex; flex-direction:column; max-height:calc(100vh - 40px);
}
@keyframes gfk2Slide{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}

/* ── Modal Header ── */
.gfk2-mhead {
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px; border-bottom:1px solid #e8ecf0; background:#fff; flex-shrink:0;
}
.gfk2-mhead-left { display:flex; align-items:center; gap:10px; }
.gfk2-mhead h2   { font-size:17px; font-weight:700; color:#1a1a1a; }
.gfk2-close-x {
  background:#f0f2f5; border:none; border-radius:50%;
  width:34px; height:34px; display:flex; align-items:center; justify-content:center;
  cursor:pointer; flex-shrink:0; transition:background .15s;
}
.gfk2-close-x:hover { background:#e0e4ea; }

/* ── Fortschritt ── */
.gfk2-progress {
  display:flex; align-items:center; padding:14px 24px;
  border-bottom:1px solid #e8ecf0; background:#f8f9fb; flex-shrink:0;
}
.gfk2-ps         { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:#114b75; white-space:nowrap; }
.gfk2-ps-off     { color:#bbb; }
.gfk2-ps-num     { width:24px; height:24px; border-radius:50%; background:#114b75; color:#fff; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:800; flex-shrink:0; }
.gfk2-ps-off .gfk2-ps-num { background:#ddd; color:#aaa; }
.gfk2-ps-line    { flex:1; height:1px; background:#ddd; margin:0 10px; }

/* ── Panels ── */
.gfk2-panel        { padding:24px; overflow-y:auto; }
.gfk2-step-head    { margin-bottom:18px; }
.gfk2-step-head h3 { font-size:16px; font-weight:700; color:#1a1a1a; margin-bottom:5px; }
.gfk2-step-head p  { font-size:13.5px; color:#666; line-height:1.55; }
.gfk2-section-title { font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:#999; margin-bottom:14px; }

/* ── Messanleitung ── */
.gfk2-measure-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:14px; }
.gfk2-mstep        { border:1px solid #e8ecf0; border-radius:10px; overflow:hidden; }
.gfk2-mstep-img    { position:relative; background:#f0f6fb; aspect-ratio:4/3; overflow:hidden; }
.gfk2-mstep-img img { width:100%; height:100%; object-fit:cover; display:block; }
.gfk2-mstep-num {
  position:absolute; top:8px; left:8px;
  width:24px; height:24px; background:#114b75; color:#fff;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:800;
}
.gfk2-mstep-body    { padding:12px; }
.gfk2-mstep-body h4 { font-size:13px; font-weight:700; margin-bottom:5px; color:#1a1a1a; }
.gfk2-mstep-body p  { font-size:12.5px; color:#555; line-height:1.55; }

/* ── Video-Button ── */
.gfk2-video-row { display:flex; justify-content:center; margin-bottom:4px; }
.gfk2-video-btn {
  display:inline-flex; align-items:center; gap:7px;
  padding:7px 16px; background:transparent; color:#114b75;
  border:1.5px solid #114b75; border-radius:20px;
  font-size:13px; font-weight:600; cursor:pointer; transition:background .15s, color .15s;
}
.gfk2-video-btn:hover { background:#114b75; color:#fff; }

/* ── Eingaben ── */
.gfk2-inputs { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:18px; }
.gfk2-field label { display:block; font-size:13px; font-weight:600; color:#2d2d2d; margin-bottom:6px; }
.gfk2-hint        { font-weight:400; color:#aaa; }
.gfk2-field-sub   { font-size:12px; color:#bbb; margin-top:5px; }
.gfk2-input-wrap  { position:relative; }
.gfk2-input-wrap input {
  width:100%; padding:10px 40px 10px 12px;
  border:1.5px solid #cdd4da; border-radius:7px;
  font-size:15px; color:#1a1a1a; outline:none;
  transition:border-color .15s, box-shadow .15s; -moz-appearance:textfield;
}
.gfk2-input-wrap input::-webkit-inner-spin-button { display:none; }
.gfk2-input-wrap input:focus { border-color:#114b75; box-shadow:0 0 0 3px rgba(17,75,117,.12); }
.gfk2-unit { position:absolute; right:12px; top:50%; transform:translateY(-50%); font-size:13px; color:#aaa; pointer-events:none; }
.gfk2-calc-btn {
  display:flex; align-items:center; justify-content:center; gap:8px;
  margin:0 auto; padding:13px 36px;
  background:#114b75; color:#fff; border:none; border-radius:7px;
  font-size:15px; font-weight:700; cursor:pointer; transition:background .15s;
}
.gfk2-calc-btn:hover { background:#0d3a5c; }

/* ── Maß-Zusammenfassung ── */
.gfk2-meas-summary {
  display:flex; align-items:center; gap:8px;
  background:#e8f4fb; border:1px solid #aad6ef; border-radius:8px;
  padding:10px 14px; font-size:13px; color:#114b75; margin-bottom:14px;
}
.gfk2-meas-summary button {
  margin-left:auto; background:transparent; border:1px solid #114b75;
  color:#114b75; border-radius:4px; padding:3px 10px;
  font-size:12px; font-weight:600; cursor:pointer; transition:background .15s, color .15s;
}
.gfk2-meas-summary button:hover { background:#114b75; color:#fff; }

/* ── Suche ── */
.gfk2-search-wrap {
  display:flex; align-items:center; gap:10px;
  border:1.5px solid #cdd4da; border-radius:8px;
  padding:9px 14px; margin-bottom:16px; background:#fff;
}
.gfk2-search-wrap:focus-within { border-color:#114b75; box-shadow:0 0 0 3px rgba(17,75,117,.1); }
#gfk2-search { border:none; outline:none; font-size:14px; color:#1a1a1a; flex:1; background:transparent; }

/* ── Produkt-Grid ── */
.gfk2-product-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px; }
.gfk2-product-card {
  border:1.5px solid #e8ecf0; border-radius:10px; overflow:hidden;
  transition:border-color .15s, box-shadow .15s; background:#fff;
  display:flex; flex-direction:column; cursor:pointer;
}
.gfk2-product-card:hover { border-color:#114b75; box-shadow:0 4px 14px rgba(17,75,117,.12); }
.gfk2-pc-img   { background:#f5f7fa; aspect-ratio:1; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.gfk2-pc-img img { width:100%; height:100%; object-fit:contain; padding:8px; }
.gfk2-pc-body  { padding:12px; display:flex; flex-direction:column; flex:1; }
.gfk2-pc-name  { font-size:13px; font-weight:600; color:#1a1a1a; line-height:1.35; margin-bottom:6px; }
.gfk2-pc-meta  { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:8px; }
.gfk2-artbadge { display:inline-flex; background:#f0f2f5; border-radius:4px; padding:2px 7px; font-size:11px; color:#555; font-weight:500; font-family:monospace; }
.gfk2-formbadge { display:inline-flex; background:#d6eaf5; border-radius:4px; padding:2px 7px; font-size:11px; color:#114b75; font-weight:600; }

/* Größen-Badge auf der Karte */
.gfk2-size-badge {
  display:flex; align-items:center; gap:8px;
  background:#f0fdf4; border:1.5px solid #a9edc1; border-radius:8px;
  padding:8px 10px; margin-bottom:10px;
}
.gfk2-size-badge-num { font-size:28px; font-weight:800; color:#16a34a; line-height:1; }
.gfk2-size-badge-label { font-size:11px; color:#15803d; line-height:1.35; font-weight:600; }

.gfk2-pc-select {
  display:block; width:100%; margin-top:auto; padding:8px;
  background:#114b75; color:#fff; border:none; border-radius:4px;
  font-size:13px; font-weight:600; cursor:pointer; transition:background .15s; text-align:center;
}
.gfk2-pc-select:hover { background:#0d3a5c; }

/* Kein Match */
.gfk2-no-match {
  text-align:center; padding:40px 20px; color:#aaa;
  display:flex; flex-direction:column; align-items:center; gap:14px;
}
.gfk2-no-match p { font-size:14px; color:#666; line-height:1.6; }

/* ── Schritt 3: Ausgewähltes Modell ── */
.gfk2-selected-bar {
  display:flex; align-items:center; gap:14px;
  background:#f0f7ff; border:1.5px solid #d6eaf5; border-radius:10px;
  padding:14px 16px; margin-bottom:22px;
}
.gfk2-selected-bar img { width:60px; height:60px; object-fit:contain; border-radius:6px; background:#fff; flex-shrink:0; }
.gfk2-sel-info  { flex:1; }
.gfk2-sel-name  { font-size:14px; font-weight:700; color:#1a1a1a; margin-bottom:5px; }
.gfk2-sel-meta  { display:flex; gap:6px; flex-wrap:wrap; }
.gfk2-change-btn {
  background:transparent; border:1.5px solid #114b75; color:#114b75;
  border-radius:6px; padding:7px 14px; font-size:12.5px; font-weight:600;
  cursor:pointer; white-space:nowrap; transition:background .15s, color .15s; flex-shrink:0;
}
.gfk2-change-btn:hover { background:#114b75; color:#fff; }

/* ── Ergebnis-Karte ── */
.gfk2-result-card   { border-radius:12px; border:1.5px solid #a9edc1; overflow:hidden; margin-bottom:12px; animation:gfk2FadeIn .3s ease; }
@keyframes gfk2FadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.gfk2-result-top    { display:flex; align-items:center; padding:20px 22px; background:#fff; gap:18px; }
.gfk2-result-num    { font-size:68px; font-weight:800; color:#16a34a; line-height:1; flex-shrink:0; }
.gfk2-result-info   { flex:1; }
.gfk2-result-label  { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#16a34a; margin-bottom:3px; }
.gfk2-result-model  { font-size:14px; font-weight:500; color:#2d2d2d; margin-bottom:4px; }
.gfk2-result-detail { font-size:11.5px; color:#bbb; }
.gfk2-result-check  { flex-shrink:0; width:42px; height:42px; background:#f0fdf4; border-radius:50%; display:flex; align-items:center; justify-content:center; }
.gfk2-result-warn   { display:none; align-items:flex-start; gap:10px; padding:13px 22px; background:#fffbea; border-top:1px solid #f0e080; font-size:13px; color:#5c4000; line-height:1.5; }
.gfk2-result-warn svg { flex-shrink:0; margin-top:1px; }
.gfk2-contact-hint  { display:flex; align-items:center; gap:10px; background:#fef2f2; border:1.5px solid #f0a0a0; border-radius:10px; padding:14px 16px; font-size:13px; color:#7a1a1a; }
.gfk2-link-wrap     { display:flex; justify-content:center; margin-top:14px; }
.gfk2-product-link  { display:inline-flex; align-items:center; gap:8px; padding:12px 28px; background:#16a34a; color:#fff; border-radius:7px; font-size:14px; font-weight:700; text-decoration:none; transition:background .15s; }
.gfk2-product-link:hover { background:#15803d; }
.gfk2-reset-row     { display:flex; justify-content:center; margin-top:12px; }
.gfk2-reset-btn     { display:inline-flex; align-items:center; gap:6px; padding:8px 18px; background:transparent; color:#999; border:1.5px solid #ddd; border-radius:20px; font-size:13px; font-weight:500; cursor:pointer; transition:color .15s, border-color .15s; }
.gfk2-reset-btn:hover { color:#114b75; border-color:#114b75; }

/* ── Footer-Button ── */
#gfk2-close-bottom {
  display:flex; align-items:center; justify-content:center; gap:7px;
  width:100%; padding:14px; background:#f5f7fa;
  border:none; border-top:1px solid #e0e5ea;
  font-size:14px; font-weight:600; color:#555; cursor:pointer;
  flex-shrink:0; transition:background .15s, color .15s;
}
#gfk2-close-bottom:hover { background:#e8ecf2; color:#1a1a1a; }

/* ── Video-Lightbox ── */
#gfk2-video-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,.88); z-index:2147483647; align-items:center; justify-content:center; padding:20px; }
#gfk2-video-overlay.gfk2-open { display:flex; }
#gfk2-video-box { position:relative; width:100%; max-width:780px; animation:gfk2Slide .2s ease; }
#gfk2-video-player { width:100%; border-radius:10px; display:block; background:#000; }
#gfk2-video-close { position:absolute; top:-14px; right:-14px; width:36px; height:36px; background:#fff; border:none; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 2px 10px rgba(0,0,0,.3); z-index:1; transition:background .15s; }
#gfk2-video-close:hover { background:#f0f0f0; }

/* ── Responsive ── */
@media (max-width:680px) {
  .gfk2-banner            { grid-template-columns:1fr; }
  .gfk2-banner-visual     { display:none; }
  .gfk2-banner-content    { padding:20px; }
  .gfk2-banner-cta        { flex-direction:column; align-items:flex-start; }
  .gfk2-open-btn          { width:100%; justify-content:center; }
  .gfk2-measure-grid      { grid-template-columns:1fr; }
  .gfk2-inputs            { grid-template-columns:1fr; }
  .gfk2-product-grid      { grid-template-columns:1fr 1fr; }
  .gfk2-result-num        { font-size:52px; }
  .gfk2-panel             { padding:16px; }
  .gfk2-mhead             { padding:12px 16px; }
  .gfk2-progress          { padding:12px 16px; }
  .gfk2-progress span     { display:none; }
  .gfk2-selected-bar      { flex-wrap:wrap; }
  .gfk2-change-btn        { width:100%; justify-content:center; }
}
@media (max-width:400px) {
  .gfk2-product-grid { grid-template-columns:1fr; }
}

/* ============================================================
   CSS-Datei 2 – gf
   ============================================================ */
#gf-root, #gf-root *, #gf-overlay, #gf-overlay *, #gf-video-overlay, #gf-video-overlay * {
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
}
#gf-root p, #gf-root h2, #gf-root h3, #gf-root h4 { margin: 0; }

/* ── Trigger-Area ── */
.gf-trigger-area {
  display: flex; align-items: center; gap: 0;
}
.gf-trigger-divider {
  width: 1px; height: 36px; background: #d0d7de; margin: 0 16px; flex-shrink: 0;
}
.gf-btn-tip {
  display: flex; align-items: center; gap: 8px;
  font-size: 12.5px; color: #555; line-height: 1.4; max-width: 260px;
}
.gf-btn-tip-icon {
  flex-shrink: 0; width: 28px; height: 28px; background: #d6eaf5;
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
}
.gf-btn-tip strong { color: #1a1a1a; display: block; font-size: 12.5px; margin-bottom: 1px; }
.gf-btn-tip span   { color: #777; font-size: 11.5px; }

/* ── Trigger-Button ── */
#gf-trigger {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 20px; background: transparent; color: #114b75;
  border: 2px solid #114b75; border-radius: 6px; font-size: 14px; font-weight: 600;
  cursor: pointer; transition: background .15s, color .15s; letter-spacing: .01em;
  white-space: nowrap;
}
#gf-trigger:hover { background: #114b75; color: #fff; }

/* ── Haupt-Overlay ── */
#gf-overlay {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.65); z-index: 2147483647;
  overflow-y: auto; padding: 0 12px 20px;
}
#gf-overlay.gf-open { display: flex; align-items: flex-start; justify-content: center; }

#gf-modal {
  background: #fff; border-radius: 14px;
  box-shadow: 0 24px 60px rgba(0,0,0,.3);
  width: 100%; max-width: 820px;
  animation: gfSlideIn .22s ease;
  overflow-y: auto; max-height: calc(100vh - 40px);
}
@keyframes gfSlideIn {
  from { opacity:0; transform:translateY(14px) scale(.98); }
  to   { opacity:1; transform:translateY(0) scale(1); }
}

/* ── Modal Header ── */
.gf-mhead {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 24px; border-bottom: 1px solid #e8ecf0;
  position: sticky; top: 0; background: #fff; z-index: 1;
}
.gf-mhead-text { display: flex; align-items: center; gap: 10px; }
.gf-mhead h2   { font-size: 17px; font-weight: 700; color: #1a1a1a; }
.gf-close {
  background: #f0f2f5; border: none; border-radius: 50%;
  width: 34px; height: 34px; display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background .15s; flex-shrink: 0;
}
.gf-close:hover { background: #e0e4ea; }

.gf-mbody { padding: 24px; }

/* ── Abschnittstitel ── */
.gf-section-title {
  font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .07em; color: #999; margin-bottom: 14px;
}

/* ── Schritt-Karten ── */
.gf-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 16px; }
.gf-step  { border: 1px solid #e8ecf0; border-radius: 10px; overflow: hidden; }
.gf-step-img {
  position: relative; background: #F0F6FB;
  aspect-ratio: 4/3; overflow: hidden;
}
.gf-step-svg {
  display: flex; width: 100%; height: 100%;
  align-items: center; justify-content: center; padding: 6px;
}
.gf-step-svg svg { width: 100%; height: 100%; }
.gf-step-badge {
  position: absolute; top: 10px; left: 10px;
  width: 26px; height: 26px; background: #114b75; color: #fff;
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 800; box-shadow: 0 2px 6px rgba(0,0,0,.2);
}
.gf-step-body    { padding: 14px; }
.gf-step-body h4 { font-size: 13px; font-weight: 700; color: #1a1a1a; margin-bottom: 6px; }
.gf-step-body p  { font-size: 12.5px; color: #555; line-height: 1.55; }

/* ── Video-Button (im Modal) ── */
.gf-video-row { display: flex; justify-content: center; margin-bottom: 4px; }
.gf-video-btn {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 18px; background: transparent; color: #114b75;
  border: 1.5px solid #114b75; border-radius: 20px;
  font-size: 13px; font-weight: 600; cursor: pointer;
  transition: background .15s, color .15s;
}
.gf-video-btn:hover { background: #114b75; color: #fff; }

/* ── Formular ── */
.gf-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 18px; }
.gf-field-full { grid-column: 1 / -1; }
.gf-field label {
  display: block; font-size: 13px; font-weight: 600;
  color: #2d2d2d; margin-bottom: 6px;
}
.gf-label-hint  { font-weight: 400; color: #999; }
.gf-field-hint  { font-size: 12px; color: #aaa; margin-top: 5px; }
.gf-input-wrap  { position: relative; }
.gf-input-wrap input {
  width: 100%; padding: 10px 40px 10px 12px;
  border: 1.5px solid #cdd4da; border-radius: 7px;
  font-size: 15px; color: #1a1a1a; background: #fff; outline: none;
  transition: border-color .15s, box-shadow .15s;
  -moz-appearance: textfield;
}
.gf-input-wrap input::-webkit-inner-spin-button { display: none; }
.gf-input-wrap input:focus { border-color: #114b75; box-shadow: 0 0 0 3px rgba(17,75,117,.12); }
.gf-input-unit {
  position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  font-size: 13px; color: #aaa; pointer-events: none;
}
.gf-field select {
  width: 100%; padding: 10px 12px; border: 1.5px solid #cdd4da;
  border-radius: 7px; font-size: 14px; color: #1a1a1a;
  background: #fff; outline: none; cursor: pointer;
}
.gf-field select:focus { border-color: #114b75; }
.gf-radio-group { display: flex; gap: 10px; }
.gf-radio {
  flex: 1; display: flex; align-items: center; gap: 8px;
  border: 1.5px solid #cdd4da; border-radius: 7px; padding: 10px 14px;
  cursor: pointer; font-size: 14px; transition: border-color .15s, background .15s;
}
.gf-radio input { accent-color: #114b75; }
.gf-radio:has(input:checked) { border-color: #114b75; background: #d6eaf5; }
.gf-radio span  { font-weight: 600; color: #1a1a1a; line-height: 1.2; }
.gf-radio span small { display: block; font-weight: 400; font-size: 11.5px; color: #888; }

/* ── Berechnen-Button ── */
.gf-calc-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  margin: 0 auto 20px; padding: 13px 36px;
  background: #114b75; color: #fff; border: none; border-radius: 7px;
  font-size: 15px; font-weight: 700; cursor: pointer;
  transition: background .15s, box-shadow .15s; white-space: nowrap;
}
.gf-calc-btn:hover { background: #0d3a5c; box-shadow: 0 4px 14px rgba(17,75,117,.3); }

/* ── Ergebnis ── */
#gf-result { animation: gfFadeIn .3s ease; }
@keyframes gfFadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }

.gf-result-card { border-radius: 12px; border: 1.5px solid #a9edc1; overflow: hidden; margin-bottom: 12px; }
.gf-result-top  { display: flex; align-items: center; padding: 20px 22px; background: #fff; gap: 18px; }
.gf-result-number { font-size: 68px; font-weight: 800; color: #16a34a; line-height: 1; flex-shrink: 0; }
.gf-result-info   { flex: 1; }
.gf-result-label  { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #16a34a; margin-bottom: 3px; }
.gf-result-sub    { font-size: 14px; color: #2d2d2d; font-weight: 500; margin-bottom: 4px; }
.gf-result-detail { font-size: 11.5px; color: #bbb; line-height: 1.5; }
.gf-result-check  {
  flex-shrink: 0; width: 42px; height: 42px; background: #f0fdf4;
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
}
.gf-result-warn {
  display: none; align-items: flex-start; gap: 10px;
  padding: 13px 22px; background: #fffbea; border-top: 1px solid #f0e080;
  font-size: 13px; color: #5c4000; line-height: 1.5;
}
.gf-result-warn svg { flex-shrink: 0; margin-top: 1px; }

.gf-contact-hint {
  display: flex; align-items: center; gap: 10px;
  background: #fef2f2; border: 1.5px solid #f0a0a0; border-radius: 10px;
  padding: 14px 16px; font-size: 13px; color: #7a1a1a;
}

/* ── Zurück-zum-Produkt Button (Desktop + Mobile) ── */
#gf-close-bottom {
  display: flex; align-items: center; justify-content: center; gap: 7px;
  width: 100%; padding: 14px; background: #f5f7fa;
  border: none; border-top: 1px solid #e0e5ea;
  font-size: 14px; font-weight: 600; color: #555; cursor: pointer;
  position: sticky; bottom: 0; transition: background .15s, color .15s;
}
#gf-close-bottom:hover { background: #e8ecf2; color: #1a1a1a; }

/* ── Reset-Button ── */
.gf-reset-row { display: flex; justify-content: center; margin-top: 14px; }
.gf-reset-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 18px; background: transparent; color: #999;
  border: 1.5px solid #ddd; border-radius: 20px;
  font-size: 13px; font-weight: 500; cursor: pointer;
  transition: color .15s, border-color .15s;
}
.gf-reset-btn:hover { color: #114b75; border-color: #114b75; }

@media (max-width: 620px) {
  .gf-steps        { grid-template-columns: 1fr; }
  .gf-form-grid    { grid-template-columns: 1fr; }
  .gf-field-full   { grid-column: auto; }
  .gf-mbody        { padding: 14px; }
  .gf-mhead        { padding: 12px 14px; }
  .gf-mhead h2     { font-size: 15px; }
  .gf-result-number{ font-size: 52px; }
  .gf-trigger-area { flex-direction: column; align-items: flex-start; gap: 12px; }
  .gf-trigger-divider { display: none; }
  .gf-btn-tip      { max-width: 100%; padding-top: 0; }
}

/* ── Video-Lightbox ── */
#gf-video-overlay {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.88); z-index: 2147483647;
  align-items: center; justify-content: center; padding: 20px;
}
#gf-video-overlay.gf-open { display: flex; }
#gf-video-box {
  position: relative; width: 100%; max-width: 780px;
  animation: gfSlideIn .2s ease;
}
#gf-video-player {
  width: 100%; border-radius: 10px; display: block;
  background: #000;
}
#gf-video-close {
  position: absolute; top: -14px; right: -14px;
  width: 36px; height: 36px; background: #fff; border: none; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; box-shadow: 0 2px 10px rgba(0,0,0,.3); z-index: 1;
  transition: background .15s;
}
#gf-video-close:hover { background: #f0f0f0; }

/* ── Tooltip ── */
.gf-tooltip-wrap { position:relative; display:inline-flex; align-items:center; margin-left:5px; cursor:pointer; }
.gf-tooltip {
  display:none; position:absolute; left:0; top:calc(100% + 6px); width:260px;
  background:#1a1a1a; color:#fff; font-size:12px; font-weight:400; line-height:1.5;
  border-radius:7px; padding:10px 12px; z-index:10; box-shadow:0 4px 14px rgba(0,0,0,.25);
  pointer-events:none;
}
.gf-tooltip::before {
  content:''; position:absolute; top:-5px; left:10px; width:10px; height:10px;
  background:#1a1a1a; transform:rotate(45deg); border-radius:2px;
}
.gf-tooltip-wrap.gf-tip-open .gf-tooltip { display:block; }

/* ── Größen-Hint unter Trigger ── */
.gf-sh-inner {
  display:inline-flex; align-items:center; gap:10px;
  background:#f0fdf4; border:1.5px solid #a9edc1; border-radius:8px;
  padding:9px 14px; font-size:13.5px; color:#1a1a1a;
}
.gf-sh-check {
  width:22px; height:22px; background:#a9edc1; border-radius:50%;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.gf-sh-text strong { color:#16a34a; font-size:15px; }
.gf-sh-reopen {
  background:transparent; border:1.5px solid #16a34a; color:#16a34a;
  border-radius:5px; padding:4px 11px; font-size:12px; font-weight:600;
  cursor:pointer; margin-left:6px; transition:background .15s, color .15s; white-space:nowrap;
}
.gf-sh-reopen:hover { background:#16a34a; color:#fff; }
</style>
/* END CUSTOM VAROMED SCHUH SELECTOR */