@font-face {
  font-display: swap;
  font-family: "Ubuntu Sans";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/ubuntu-sans-v2-latin-300.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Ubuntu Sans";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/ubuntu-sans-v2-latin-regular.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Ubuntu Sans";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/ubuntu-sans-v2-latin-700.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Ubuntu Condensed";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/ubuntu-condensed-v16-latin-regular.woff2") format("woff2");
}
.img-position.ct img {
  -o-object-position: center top;
  object-position: center top;
}
.cms-element-twt-text-teaser .twt-text-teaser-content .title.none {
  font-size: 2.25rem;
}
.main-navigation-link.highlighted {
  margin: 0 5px;
}
.main-navigation-link.highlighted:first-child {
  margin-left: 12px;
}
.footer-main {
  margin-top: 0 !important;
}
.nav-main {
  padding-bottom: 20px;
}
.top-bar-nav {
  max-width: 1440px;
}
.cms-page {
  margin-top: 0px;
}

header.header-main
  .header-logo-col
  .header-logo-main
  .header-logo-main-link
  img:hover {
  opacity: 1;
}
figure {
  margin: 0;
}
header.header-main .header-search-toggle-icon svg,
header.header-main .header-wishlist-icon svg,
header.header-main .header-account-icon svg {
  height: 20px;
  width: 20px;
}
header.header-main .header-nav-main-toggle-label,
header.header-main .header-search-toggle-name,
header.header-main .header-account-name,
header.header-main .header-wishlist-name {
  display: none;
}
.bg-blur .cms-element-elysium-slide__content-box {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.border-radius-4 .cms-element-elysium-slide__content-box {
  border-radius: 4px;
}
h1,
h1.h1,
h2,
h3,
h4,
h5,
h6 {
  text-transform: uppercase;
  font-weight: 300 !important;
  line-height: 120%;
}
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p {
  color: #fff;
}
.display-heading h1 {
  font-size: 3rem;
}
@media all and (min-width: 475px) {
  .display-heading h1 {
    font-size: 4rem;
  }
}
.d-flex .twt-call-to-action-content {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  align-items: center;
}
.btn.btn-primary:hover {
  background-color: #4f617a;
  border-color: #4f617a;
}
.btn.btn-secondary:hover {
  background-color: #d1a566;
  border-color: #d1a566;
}
.grid-gap-0 .col-md-6 {
  padding: 0;
}
.grid-gap-0 .left-top.row {
  margin: 0;
}
.grid-gap-0 .left-top.row .left-top.left,
.grid-gap-0 .left-top.row .left-top.right {
  padding: 0;
  margin: 0;
}
.grid-gap-0 .right-top {
  margin: 0;
}
.text-padding .cms-element-alignment {
  padding: 40px;
}
.gallery-slider-thumbnails-image, 
.gallery-slider-image{
  max-height: unset;
  width:unset !important;
}

@media all and (min-width: 1024px) {
  .text-max-width {
    width: 50%;
    margin: 0 auto;
  }
  .float-wrapper {
    position: relative;
  }
  .float-wrapper .float-img .cms-block-container-row {
    height: 400px;
  }
  .float-wrapper .float-img.top-row .twt-column {
    position: absolute;
  }
  .float-wrapper .float-img.top-row .twt-column.left {
    width: 33%;
    top: 9vh;
    left: 3vw;
  }
  .float-wrapper .float-img.top-row .twt-column.right {
    width: 33%;
    top: 4vh;
    right: 6vw;
  }
  .float-wrapper .float-img.bot-row .twt-column {
    position: absolute;
  }
  .float-wrapper .float-img.bot-row .twt-column.left {
    position: absolute;
    bottom: -3vh;
    left: 33vw;
  }
  .float-wrapper .float-img.bot-row .twt-column.center {
    position: absolute;
    bottom: 12vh;
    right: 3vw;
  }
  .float-wrapper .float-img.bot-row .twt-column.right {
    position: absolute;
    bottom: 7vh;
    left: 3vw;
  }
}
.kategorieSection1 .cms-block-container-row,
.categorieSection2 .cms-block-container-row {
  align-items: center;
}
.kategorieSection1 img,
.categorieSection2 img {
  width: 100%;
  border-radius: 4px;
}
[data-flyout-menu-id="018d8cf5f6a47e42bf87256e42470c95"] {
  width: 30%;
  left: 70%;
}
[data-flyout-menu-id="018d8cf5f6a47e42bf87256e42470c95"]
  .row.navigation-flyout-categories.is-level-0 {
  flex-direction: column;
}
[data-flyout-menu-id="018d8cf5f6a47e42bf87256e42470c95"]
  .row.navigation-flyout-categories.is-level-0
  .col-3.navigation-flyout-col {
  width: 100%;
}
.product-detail-configurator-container,
.pflegeHinweise,
.zertifikate,
.product-detail-ordernumber-container,
.grammatur {
  margin-bottom: 1.25rem;
}
.product-detail .product-detail-content .product-detail-media .cms-element- {
  padding: 1rem;
  background-color: #fff;
}
.product-detail .product-detail-configurator-options,
.cms-element-product-listing .product-detail-configurator-options,
.cms-element-product-slider .product-detail-configurator-options {
  align-items: center;
}
.product-detail
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label,
.cms-element-product-listing
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label,
.cms-element-product-slider
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label {
  border-radius: 100px;
  width: 28px;
  height: 28px;
  min-width: unset;
}
.product-detail
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label
  img,
.cms-element-product-listing
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label
  img,
.cms-element-product-slider
  .product-detail-configurator-options
  .product-detail-configurator-option
  label.product-detail-configurator-option-label
  img {
  border-radius: 100px;
}
.product-detail
  .product-detail-configurator-options
  .product-detail-configurator-option
  [checked="checked"]
  + label.product-detail-configurator-option-label,
.cms-element-product-listing
  .product-detail-configurator-options
  .product-detail-configurator-option
  [checked="checked"]
  + label.product-detail-configurator-option-label,
.cms-element-product-slider
  .product-detail-configurator-options
  .product-detail-configurator-option
  [checked="checked"]
  + label.product-detail-configurator-option-label {
  height: 30px !important;
  min-width: 30px !important;
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.4) !important;
}
.product-detail
  .product-detail-configurator-options
  .product-detail-configurator-option
  .product-detail-configurator-option-label.is-combinable.is-display-color,
.cms-element-product-listing
  .product-detail-configurator-options
  .product-detail-configurator-option
  .product-detail-configurator-option-label.is-combinable.is-display-color,
.cms-element-product-slider
  .product-detail-configurator-options
  .product-detail-configurator-option
  .product-detail-configurator-option-label.is-combinable.is-display-color {
  height: 25px;
  min-width: 25px;
  border-radius: 100%;
  box-shadow: none;
}
.product-detail-properties .properties-value img {
  border-radius: 100px;
  margin-right: 4px;
}
.product-detail-list-price-wrapper {
  display: block;
}
.h3.twt-product-properties-description-title,
.h3.product-detail-description-title {
  padding-top: 0.5rem;
}
@media all and (min-width: 1024px) {
  .card.card-tabs {
    width: 70%;
  }
}
.product-info h2,
.product-info .product-price-info {
  margin: 0;
}
.product-info .product-price {
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
}
.product-info .product-name {
  height: 44px;
  font-weight: 300;
  margin: 0;
}
.property-icons {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  align-items: center;
}
.offcanvas.offcanvas-end.cart-offcanvas button.offcanvas-close {
  color: #fff;
}
.offcanvas.offcanvas-end.cart-offcanvas
  button.offcanvas-close
  .icon-arrow-head-left.icon-sm {
  color: #fff;
}
.checkout-main .card-actions {
  margin-top: 2rem;
}
.checkout-main .confirm-payment-shipping .payment-method-description p,
.checkout-main .confirm-payment-shipping .shipping-method-description p {
  color: #384353;
}
.cms-block.pos-0.cms-block-blur-elysium-slider-block.position-relative {
    display: none!important;
}
.cms-block.pos-0.cms-block-blur-elysium-slider-block.position-relative .cms-block-container{
 padding: 0!important;
}
.product-detail-configurator-option-label.is-display-color, .product-detail-configurator-option-label.is-display-media {
    --bs-btn-padding-x: 0.125rem;
    background-clip: content-box;
     min-width: unset;
     height: unset;
    border-radius: 100%;
}
.product-detail-configurator-option-image {
    border-radius: 100px;
    height: 20px;
    width: 20px;
}
.gallery-slider-thumbnails-image, .gallery-slider-image {
    width: 100%;
    height: auto;
}
.iconbox{
    display:flex;
    flex-direction:column;
    align-items:center;
}
.iconbox img {
    max-width: 45px;
}
.iconbox .headline {
    font-weight: 600;
    margin-bottom: 0.375rem;
    margin-top: 1.25rem;
    font-size: 115%;
    text-align: center;
    text-wrap-style: pretty;
}
.iconbox .value{
    text-align: center;
    text-wrap-style: pretty;
}
.iconbox .value a{
  text-decoration: none;
  font-weight: 600;
}
.text-padding .cms-element-alignment {
    padding-inline: 40px;
}
.text-white .cms-element-alignment h1,
.text-white .cms-element-alignment h2,
.text-white .cms-element-alignment h3,
.text-white .cms-element-alignment p{
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity));
}

.product-detail-configurator-container, 
.pflegeHinweise, .zertifikate, 
.product-detail-ordernumber-container, 
.grammatur{
margin-top:2rem;
}

/* ***********
Eintrittsseite 
************ */

/* Sektion als Container für das Overlay */
.tw-entrance {
  position: relative;
  min-height: 100vh; /* Vollbild-Effekt */
}

/* Die Zweispalten-Zeile */
.tw-entrance .tw-entrance__cols {
  height: 100vh; /* zieht die Zeile auf volle Höhe */
}

.tw-entrance .cms-block .cms-block-container .cms-block-container-row{
  --bs-gutter-y:0px!important;
}
.tw-entrance .cms-block .row{
  --bs-gutter-x:0px!important;
  height:100%
}
.tw-entrance h1{
  color:#fff;
  font-weight: bold;
  font-size: 4rem;
  transition: all 1s ease-in;
}

.tw-entrance .twt-hero-teaser-container:hover h1{
  transition: all 1s ease-in;
  transform: scale(1.05);
}

.tw-entrance .twt-hero-teaser-container:hover .text p {
    display: inline-block;
    background-color: #293364;
    padding-inline: 1.5rem;
    padding-block: 0.5rem;
    border-radius: 8px;
    transition: all 1s ease-in;
}
.tw-entrance .twt-hero-teaser-container .text p {
    display: inline-block;
    background-color: transparent;
    padding-inline: 1.5rem;
    padding-block: 0.5rem;
    border-radius: 8px;
    transition: all 1s ease-in;
}

/* Bild weiß färben */
.tw-entrance .cms-element-image .cms-image-container.is-stretch .cms-image{
  width:350px;
}

/* overlay animation */
.tw-entrance .twt-hero-teaser-container:hover .color-overlay{
  transition: all 0.3s ease-out;
  opacity: 0.5;
}
.tw-entrance .twt-hero-teaser-container.color-overlay{
  transition: all 0.3s ease-out;
}

/* Damit die Spalten-Inhalte mittig wirken (optional) */
.tw-entrance .tw-entrance__cols .cms-block-container,
.tw-entrance .tw-entrance__cols .cms-element {
  height: 100%;
}

.tw-entrance .tw-entrance__cols .cms-slot {
  height: 100%;
}

/* Weltnamen zentrieren */
.tw-entrance .align-items-end{
  align-items: center;
}

/* Weltnamen leicht nach unten verschieben */
.tw-entrance .twt-hero-teaser-text {
    transform: translateY(30%);
}

/* Logo-Block als Overlay zentriert über beiden Spalten */
.tw-entrance { position: relative; }

.tw-entrance .tw-entrance__logo-block{
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  transform: translate(-50%, -130%); /* echtes Zentrum */
  z-index: 5;
  pointer-events: none;
}

/* Logo-Größe steuerbar */
.tw-entrance .tw-entrance__logo-block img {
  width: clamp(220px, 35vw, 450px);
  height: auto;
  filter: drop-shadow(0px 0px 10px #00000080);
}

/*Texilien Seite */
body.textilien:has(.content-main .tw-entrance) .twt-usp-bar,
body.textilien:has(.content-main .tw-entrance) .header-main,
body.textilien:has(.content-main .tw-entrance) .nav-main,
body.textilien:has(.content-main .tw-entrance) .footer-main {
  display: none !important;
}


/* Responive */
@media (max-width:1024px){
  .tw-entrance .cms-block-container-row {
    flex-direction: column !important;
    --bs-gutter-y: 0 !important;
  }
  .tw-entrance .cms-block-container-row > .twt-column {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }
  /* Die Zweispalten-Zeile */
  .tw-entrance .twt-hero-teaser-image-container   {
    height: 50vh !important; /* zieht die Zeile auf 50 % Höhe */
}
 .tw-entrance {
    min-height: auto;
  }

  .tw-entrance .tw-entrance__cols {
    height: auto;
  }
  .tw-entrance .align-items-end{
    align-items: center;
  }
   .tw-entrance .tw-entrance__logo-block{
    transform: translate(-50%, -60%); /* ~10% nach oben, feinjustierbar */
  }
  .tw-entrance h1{
  color:#fff;
  font-weight: bold;
  font-size: 2.75rem;
  transition: all 1s ease-in;
}
  
}

@media (max-width:450px){
  .tw-entrance .tw-entrance__logo-block{
    transform: translate(-50%, -50%);
  }
}
