/* ############################################################################################################ */
/* ##  name: Custom CSS                                                                                      ## */
/* ############################################################################################################ */

/*••••• Fonts •••••*/

/* grand-hotel-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Grand Hotel';
  font-style: normal;
  font-weight: 400;
  src: url('/project/nureinshop/pub/font/grand-hotel-v21-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/grand-hotel-v21-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* encode-sans-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 200;
  src: url('/project/nureinshop/pub/font/encode-sans-v23-latin-200.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/encode-sans-v23-latin-200.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* encode-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/project/nureinshop/pub/font/encode-sans-v23-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/encode-sans-v23-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* encode-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 600;
  src: url('/project/nureinshop/pub/font/encode-sans-v23-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/encode-sans-v23-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* encode-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/project/nureinshop/pub/font/encode-sans-v23-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/encode-sans-v23-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* encode-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 800;
  src: url('/project/nureinshop/pub/font/encode-sans-v23-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/project/nureinshop/pub/font/encode-sans-v23-latin-800.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}


/*••••• Colors •••••*/

:root {
    /* Farben */
    --maincolor: #bfe347;
    --red: #e30019;
    --lightcolor: color-mix(in srgb, var(--maincolor) 20%, white);
    
    /* Border-Radius */
    --br: 10px;
}


/*••••• Cookie Window •••••*/

[data-ref="nureinshop/plugin/cookie_message"] .cookie-message--btn {
    background-color: var(--maincolor);
    color: #000;
}

.cookie-message--p {
color: #000;
}

.cookie-message-details td {
color: #000;
}

/*••••• Webseite •••••*/

html {
    background-color: #FFF;
}

body {
    font-family: 'Encode Sans', Arial, Sans-serif;
    font-size: 16px;
	font-size: clamp(14px, 4vw, 18px);
    font-weight: 400;
    color: #000;
    letter-spacing: 0.04em;
    line-height: 1.65;
    background-color: #F1F6D8;
}


/*••••• Headings & Co. •••••*/

h1, h2, h3, h4 {
   	margin-bottom: 0;
	line-height: 1.2;
	font-weight: 400;
	color: #000;
	margin-top: 1em;
	font-family: 'Grand Hotel', Arial, Sans-serif;
}

h1 {
    font-size: clamp(230%, 4.5vw, 380%);
    font-weight: 400;
    margin-top: 0.5em;
    text-transform: lowercase;
}

.page-nureinshop-home h1 {
	padding-top: 0;
	margin-top: -1.27em;
	z-index: 1;
	position: relative;
	color: #000;
	text-shadow: 0 0 0 var(--maincolor), 0.04em 0 var(--maincolor);
}

@media (max-width: 990px) {
    .page-nureinshop-home h1 {
        margin-top: 0;
        text-shadow: none;
    }
}

h2 {
    font-size: clamp(180%, 4.5vw, 270%);
    font-weight: 400;
    text-transform: lowercase;
}

.page-nureinshop-home h2 {
    text-align: center;
}

.lbluete h2,
.rbluete h2 {
    width: fit-content;
    padding-left: 30px;
    padding-right: 30px;
}

h2.lbluete {
    padding-left: 30px!important;
}

.rbluete h2 {
    padding-right: 30px;
}

h1 {
    width: fit-content;
    padding-right: 30px;
}

h1::after,
.lbluete::before,
.rbluete::after {
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	background-size: contain;
	background-repeat: no-repeat;
	width: 35px;
	height: 35px;
	content: '';
	display: inline-block;
	position: absolute;
}

h1::after {
	margin-left: 0.3em;
}

.lbluete::before {
    margin-left: -40px;
    margin-right: 15px;
}

.rbluete::after {
    margin-left: 15px;
}

h3 {
	font-weight: 400;
	font-size: clamp(150%, 4.5vw, 180%);
}

h4 {
	font-weight: 400;
	font-size: clamp(115%, 4.5vw, 140%);
}

p {
    margin-top: 10px;
    margin-bottom: 0;
}

strong {
    font-weight: 700;
}

main p a,
main ul a {
    text-decoration: underline;
    text-underline-offset: 3px;
    color: #000;
}

.page-nureinshop-home main p a {
    color: var(--maincolor);
}

main p a:hover,
main ul a:hover {
	text-shadow: 0 0 0 #000, 0.03em 0 #000;
	color: #000;
}

a:hover {
    color: #000;
}

.page-nureinshop-home main p a:hover {
	text-shadow: 0 0 0 var(--maincolor), 0.03em 0 var(--maincolor);
	color: var(--maincolor);
}

.btn {
	color: #000;
	background-color: var(--maincolor);
	border-radius: var(--br);
	text-decoration: none;
	font-family: inherit;
	letter-spacing: inherit;
	text-transform: lowercase;
}

.btn:hover {
    color: #000;
}

blockquote {
	margin-top: 25px;
	background-color: var(--maincolor);
	color: #000;
	padding: 20px;
	border-radius: var(--br);
	/*
	background-image: url('/pub/media/8d4cf8f85426bae9b10a42fcb45c337d/apg-blockquote-dekor.svg');
    	background-repeat: no-repeat;
    	background-position: bottom 8px right 8px;
    	background-size: auto 60%;
	*/
}

blockquote h1, blockquote h2, blockquote h3, blockquote h4, blockquote a {
	color: #000;
}

blockquote .btn, blockquote .btn:hover {
    background-color: #fff;
    color: var(--maincolor);
}

blockquote a:hover {
    color: inherit;
    text-shadow: 0 0 0 #fff, 0.03em 0 #fff;
}

blockquote > *:first-child {
    margin-top: 0;
}

.nureinshop-block-accordion--item,
.nureinshop-block-subpages-accordion--item {
	background-color: transparent;
}

.nureinshop-block-subpages-accordion--head,
.nureinshop-block-accordion--head {
	background-color: var(--maincolor);
	color: #000!important;
    text-decoration: none;
    border-radius: var(--br);
}

.nureinshop-block-subpages-accordion--head:hover,
.nureinshop-block-subpages-accordion--head:active {
    color: #000!important;
}

.is-open .nureinshop-block-subpages-accordion--head,
.is-open .nureinshop-block-accordion--head {
    border-radius: var(--br) var(--br) 0 0;
}

.nureinshop-block-accordion--head::after,
.nureinshop-block-subpages-accordion--head::after {
    filter: invert(1);
}

.nureinshop-block-subpages-accordion--body,
.nureinshop-block-accordion--body {
    border-radius: 0 0 var(--br) var(--br);
}

.nureinshop-block-subpages-accordion--body > *:first-child,
.nureinshop-block-subpages-accordion--body .subpages-intro > *:first-child, 
.nureinshop-block-accordion--body > *:first-child {
	margin-top: 0;
}

.nureinshop-block-subpages-accordion--body::after,
.nureinshop-block-accordion--body::after {
    content: "";
    display: table;
    clear: both;
}

#region-breadcrumb {
    padding-top: 0;
}

#region-breadcrumb ul li a {
	color: #000;
	font-size: clamp(8px, 2.5vw, 12px)!important;
}

#region-content .block ul:not(.pagination),
#region-content .block ol {
    margin-top: 5px;
    margin-left: 25px;
}

#region-content ul li::marker {
	color: var(--maincolor)
}

.block:not(.hero-slider) img {
    border-radius: var(--br);
}

img.float-right, 
img.float-left {
    max-width: 40vw;
}

#plugin_emotion_image {
	position: relative;
	margin-bottom: -85px;
	z-index: 0;
	padding-top: 180px;
	overflow-x: clip;
}

@media (max-width: 1280px) {
    #plugin_emotion_image {
        margin-bottom: -2em;
    }
}

@media (max-width: 990px) {
    #plugin_emotion_image {
        padding-top: 0;
    }
}

@media (max-width: 720px) {
    #plugin_emotion_image {
        margin-bottom: -1em;
    }
}

#plugin_emotion_image::before {
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	content: '';
	aspect-ratio: 1;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	bottom: -1em;
	background-size: contain;
	right: 0;
	height: 30%;
	opacity: 0.5;
	transform: rotate(15deg);
	right: 30px;
	z-index: 2;
}

#plugin_emotion_image::after {
	background-image: url('/pub/media/09b08363807f905ee7bb25ecb180f75b/element-rundung-emotion.svg');
	content: '';
	width: 102%;
	aspect-ratio: 15/1;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	bottom: -1px;
	background-size: cover;
	z-index: 1;
	left: 0;
	background-position-x: -3px;
}

/*••••• Tabelle •••••*/

.block-nureinshop-table table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.block-nureinshop-table table tbody th {
	text-align: left;
	background-color: var(--maincolor);
	border-top: 20px solid #F1F6D8;
	padding: 10px 10px 10px 20px;
	border-inline: none;
}

.block-nureinshop-table table td {
    padding-left: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: #fff;
}

.block-nureinshop-table table tr:has(+ tr th) td:first-child,
.block-nureinshop-table table tr:last-child td:first-child {
    border-bottom-left-radius: var(--br);
}

.block-nureinshop-table table tr:has(+ tr th) td:last-child,
.block-nureinshop-table table tr:last-child td:last-child {
    border-bottom-right-radius: var(--br);
}

.nureinshop-block-accordion td,
.block-nureinshop-table td {
  border: 1px solid #000;
}

.nureinshop-block-accordion thead th,
.block-nureinshop-table thead th {
  background-color: var(--maincolor);
  font-weight: bold;
  color: #fff;
}

.nureinshop-block-accordion tbody tr:nth-child(2n+1),
.block-nureinshop-table tbody tr:nth-child(2n+1) {
  background-color: transparent;
}

.nureinshop-block-accordion tbody tr:nth-child(2n+2),
.block-nureinshop-table tbody tr:nth-child(2n+2) {
	background-color: var(--lightcolor);
}

/*••••• Header •••••*/

header {
    background-color: var(--maincolor);
    border: none;
    position: fixed;
    width: 100%;
}

header .container {
    position: relative; 
    display: flex;
    justify-content: center;
}

#region-logo {
    width: unset;
}

#region-logo a {
	display: inline-block;
	padding: 15px 0 14px 0;
}

.page-nureinshop-home #region-logo a::after {
	content: 'die Klinik für Mutter-/Vater-Kind-Kuren';
	color: #333333;
	display: block;
	text-align: center;
	width: 100%;
	text-shadow: -1px -1px 2px #ffffffde, 1px -1px 2px #ffffffde, -1px 1px 2px #ffffffde, 1px 1px 2px #ffffffde;
}

#region-logo a img {
    height: 100px;
    transition: 0.15s ease;
}

.page-nureinshop-home #region-logo a img {
	height: 190px;
	margin-top: 40px;
	max-width: 30vw;
}

.page-nureinshop-home header.is-visible #region-logo a img {
    height: 100px;
    margin-top: 0;
}

#region-search {
    display: none;
}

.nureinshop-plugin-search--input {
	background-color: transparent;
}
.page-nureinshop-search .search-form label {
    color: #000;
}

#region-header-buttons {
	float: none;
	margin-top: 0;
	position: absolute;
	right: 0;
	top: 30px;
}

.header-button {
	margin: 0 0 0 15px;
}

.header-button-title {
    display: none;
}

.header-button:first-of-type {
	padding-right: 15px;
	border-right: 3px solid #fff;
}

.header-button:first-of-type .header-button-icon {
	margin: 0 auto -6px auto;
}

.header-button-icon {
	display: block;
	height: auto;
	background-size: 100% auto;
	margin: 0 auto 3px auto;
	width: auto;
}

.header-button-icon img {
	position: relative;
	top: 0;
	transform: none;
	filter: drop-shadow(0px 0px 3px #00000087);
	width: auto;
	height: 28px;
}

.header-button:hover .header-button-icon img {
    filter: invert(1);
}

/* [data-id="search"] {
    display:none!important;
} */

#header-menu-button {
    position: absolute;
    left: 0;
    top: 25px;
    filter: drop-shadow(0px 0px 3px #00000087);
}

@media (max-width: 1170px) {
    #header-menu-button {
        left: 10px;
    }
    #region-header-buttons {
        right: 10px;
    }
}

#header-menu-button a img {
    width: 100px;
}

body:not(.page-nureinshop-home) #header-menu-button {
    display: none;
}

.page-nureinshop-home header {
    background-color: transparent;
	transition: background-color 0.3s ease;
}

.page-nureinshop-home header #region-nav {
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.page-nureinshop-home header.is-visible {
	background-color: var(--maincolor);
}

.page-nureinshop-home header.is-visible #header-menu-button {
    display: none;
}

.page-nureinshop-home header.is-visible #region-nav {
    opacity: 1;
    pointer-events: auto;
}

.page-nureinshop-home header.is-visible #region-logo a::after {
    display: none;
}

/*••••• Navigation •••••*/

#region-nav {
    position: fixed;
    top: 136px;
    z-index: 3;
    width: 100%;
    filter: drop-shadow(-1px 11px 5px #0000003b);
}

#region-nav .container {
    width: 100%;
}

#region-nav nav {
    background-color: var(--maincolor);
    border: none;
}

#region-nav::after {
	width: 100vw;
	height: calc(100vw / 30 + 1px);
	background-color: var(--maincolor);
	content: '';
	display: block;
	mask-image: url("/pub/media/c1d54db5ba4bc75c0f48f5389dee0adc/mask.svg");
	mask-size: 104% 100%;
	mask-repeat: no-repeat;
	mask-position: top;
	position: fixed;
	z-index: 3;
	pointer-events: none;
}

#region-nav ul.level-1 {
    display: flex;
    justify-content: center;
}

#region-nav ul li a {
    text-decoration: none;
    color: #000;
    font-weight: 300;
}

#region-nav .level-1 > li:hover > a {
	background-color: transparent;
	color: #000;
	text-decoration: underline;
}

#region-nav ul.level-1 > li > a {
    text-transform: lowercase;
    border: none!important;
    text-underline-offset: 5px;
}

#region-nav ul.level-1 > li.active > a::before {
	content: '';
	width: 20px;
	height: 20px;
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	position: absolute;
	left: -5px;
	z-index: 3;
	top: 50%;
	transform: rotate(-22deg);
}

#region-nav ul.level-1 > li.active > a,
#region-nav ul.level-1 > li.inpath > a {
    text-decoration: underline;
}

#region-nav .level-1 ul {
    background-color: #fff;
}

#region-nav .level-1 ul li a {
    color: #000;
    font-size: 85%;
}

#region-nav .level-1 ul li a:hover {
    background-color: var(--maincolor);
    color: #000;
}

#region-nav .level-1 ul.level-2 li.active a {
	color: #fff;
	background-color: var(--red);
	font-weight: 400;
}

#region-nav .level-2 {
    margin-left: 15px;
    border-radius: var(--br);
    overflow: clip;
}
    
    
@media only screen and (max-width: 1290px) {
    #region-nav li:last-of-type .level-2 {
        right: 0;
    }
}

/*••••• Mobiles Nav •••••*/

#region-mobile-nav {
    position: relative;
    border: none;
    background-color: var(--maincolor);
    overflow-x: clip;
}

#region-mobile-nav::after {
	width: 101%;
	background-color: var(--maincolor);
	content: '';
	display: inline-block;
	mask-image: url("/pub/media/c1d54db5ba4bc75c0f48f5389dee0adc/mask.svg");
	aspect-ratio: 65/2;
	margin-top: 0;
	position: fixed;
	z-index: 3;
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 100%;
	mask-size: cover;
}

.offcanvas-header {
	background-color: var(--maincolor);
	margin-bottom: 15px;
}

.offcanvas-nav li a {
    color: #000;
    text-underline-offset: 5px;
}

.offcanvas-menu li.active > a {
	background-color: transparent;
	font-weight: 600;
}

.offcanvas-menu li.active  {
    padding-left: 25px;
}

.offcanvas-menu li.active > a::before {
	content: '';
	width: 20px;
	height: 20px;
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	position: absolute;
	left: -10px;
	z-index: 3;
	top: 25%;
	transform: rotate(-22deg);
	background-repeat: no-repeat;
}

.offcanvas-menu .level-2 li.active > a::before {
    left: 5px;
}

.offcanvas-menu li.active .level-2 > li > a {
    padding-left: 15px;
}

.offcanvas-closer {
    opacity: 1;
}

.offcanvas-nav .btn-toggle {
	filter: brightness(0);
}

/*••••• Slideshow •••••*/

.hero-slider .container {
    width: 100%;
}

.hero-slider .owl-carousel .owl-dots {
	position: absolute;
	bottom: 10%;
	transform: translateY(-50%);
	margin-left: auto;
	right: 10%;
	left: 0;
	margin-right: 0;
	width: fit-content;
}

.hero-slider .owl-carousel .owl-dots .owl-dot {
	height: 30px;
	width: 30px;
	background-color: transparent;
	border-radius: 20px;
	margin: 0 5px 0 5px;
	background-image: url('/pub/media/60b10999e0c08a1b7142f45d4a5ab3bd/gesundheitszentrum-bluete-weiss.svg');
	background-size: 100%;
	background-repeat: no-repeat;
}

.hero-slider .owl-carousel .owl-dots .owl-dot.active {
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	background-color: transparent;
}

.hero-slider .owl-nav {
    display: none;
}

@media (max-width: 990px) {
    .hero-slider .owl-dots {
        display: none!important;
    }
}

/*••••• Content Grid •••••*/

.page-nureinshop-home .block-nureinshop-contentgrid {
	background-color: #fff;
	position: relative;
	padding-top: clamp(20px, 3.5vw, 60px);
	padding-bottom: clamp(30px, 3.5vw, 65px);
	margin-top: -1.8em;
	overflow: clip;
}

@media (max-width: 1200px) {
    .page-nureinshop-home .block-nureinshop-contentgrid {
        margin-top: -0.5em;
    }
}

.page-nureinshop-home .block-nureinshop-contentgrid::before {
	width: 106%;
	content: '';
	background-image: url('/pub/media/654dd19917cd797d24cb78b04424514a/element-oben.svg');
	display: block;
	background-color: #fff;
	position: absolute;
	aspect-ratio: 41.665 / 1;
	top: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0;
}

.page-nureinshop-home .block-nureinshop-contentgrid::after {
	width: 102%;
	content: '';
	background-image: url('/pub/media/9802626f99ae367c84399369c2699434/element-unten.svg');
	display: block;
	background-color: #fff;
	position: absolute;
	aspect-ratio: 47.59 / 1;
	bottom: 0;
	background-position-y: 1px;
	background-repeat: no-repeat;
	background-size: cover;
}

.nureinshop-block-contengrid--item {
	background-color: var(--maincolor);
	color: #000;
	border-radius: var(--br);
	padding: 50px 40px;
	text-align: center;
	position: relative;
	transition: 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.nureinshop-block-contengrid--item:hover {
    transform: scale(1.05);
}

.nureinshop-block-contengrid--item::before {
	background-image: url('/pub/media/60b10999e0c08a1b7142f45d4a5ab3bd/gesundheitszentrum-bluete-weiss.svg');
	width: 55px;
	height: 55px;
	background-repeat: no-repeat;
	background-size: 100%;
	filter: drop-shadow(0px 0px 3px #00000087);
	position: absolute;
	content: '';
}

.nureinshop-block-contengrid > *:nth-child(3n+1)::before {
	top: -15px;
	right: -10px;
}

.nureinshop-block-contengrid > *:nth-child(3n+2)::before {
    right: 5%;
    bottom: -10%;
}

.nureinshop-block-contengrid > :nth-child(3n+3)::before {
	left: 10px;
	top: 6px;
}

.nureinshop-block-contengrid--item h2 {
    color: #000;
    font-size: clamp(160%, 4.5vw, 200%);
}

.nureinshop-block-contengrid--item > *:first-child {
    margin-top: 0;
}

.nureinshop-block-contengrid--item:hover::before {
	animation: drehen 6s linear infinite;
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
}

@keyframes drehen {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 1024px) {
    .nureinshop-block-contengrid--3 {
        grid-template-columns: minmax(0,1fr);
    }
}

.block-nureinshop-contentgrid.grid2 {
    background-color: var(--maincolor);
}

.block-nureinshop-contentgrid.grid2::before {
	width: 106%;
	content: '';
	background-image: url('/pub/media/654dd19917cd797d24cb78b04424514a/element-oben.svg');
	display: block;
	background-color: var(--maincolor);
	position: absolute;
	aspect-ratio: 41.665 / 1;
	top: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0;
}

.block-nureinshop-contentgrid.grid2::after {
	width: 102%;
	content: '';
	background-image: url('/pub/media/9802626f99ae367c84399369c2699434/element-unten.svg');
	display: block;
	background-color: var(--maincolor);
	position: absolute;
	aspect-ratio: 47.59 / 1;
	bottom: 0;
	background-position-y: 1px;
	background-repeat: no-repeat;
	background-size: cover;
}

.block-nureinshop-contentgrid.grid2 .nureinshop-block-contengrid--item {
	background-color: #fff;
	color: #000;
	border-radius: var(--br);
	padding: 50px 40px;
	text-align: center;
	position: relative;
	transition: 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.block-nureinshop-contentgrid.grid2 .nureinshop-block-contengrid--item::before,
.block-nureinshop-contentgrid.grid2 .nureinshop-block-contengrid--item::after {
    display: none;
}

/*••••• Beitragsliste •••••*/

.subpages-grid article {
	background-color: var(--maincolor);
	color: #000;
	border-radius: var(--br);
	padding: 50px 40px;
	text-align: center;
	position: relative;
	transition: 0.3s ease;
	display: flex;
	justify-content: center;
	align-items: center;
}

.subpages-grid article h2 {
    margin-top: 0;
    font-size: clamp(160%, 4.5vw, 200%);
}

.subpages-grid article:hover {
    transform: scale(1.05);
}

.subpages-grid article:before {
	background-image: url('/pub/media/60b10999e0c08a1b7142f45d4a5ab3bd/gesundheitszentrum-bluete-weiss.svg');
	width: 55px;
	height: 55px;
	background-repeat: no-repeat;
	background-size: 100%;
	filter: drop-shadow(0px 0px 3px #00000087);
	position: absolute;
	content: '';
}

.subpages-grid> *:nth-child(3n+1)::before {
	top: -15px;
	right: -10px;
}

.subpages-grid > *:nth-child(3n+2)::before {
    right: 5%;
    bottom: -10%;
}

.subpages-grid > :nth-child(3n+3)::before {
	left: 10px;
	top: 6px;
}

.subpages-grid article:hover::before {
	animation: drehen 6s linear infinite;
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
}

@keyframes drehen {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.block-nureinshop-subpages {
    position: relative;
    z-index: 2;
}

.block-nureinshop-subpages:has(.subpages-carousel) {
    background: linear-gradient(
	to bottom,
	#fff 0,
	#fff 2px,
	#BFE347 2px,
	#BFE347 calc(100% - 2px),
	#fff calc(100% - 2px),
	#fff 100%
);
    padding-top: 70px;
    padding-bottom: 60px;
    position: relative;
    overflow-x: clip;
    margin-top: -30px;
}

@media (max-width: 1060px) {
    .block-nureinshop-subpages:has(.subpages-carousel) {
        margin-top: -15px;
    }
}

.block-nureinshop-subpages:has(.subpages-carousel) .owl-carousel .owl-stage-outer {
	padding: 10px 10px;
	margin-left: -10px;
	margin-right: -10px;
}

.block-nureinshop-subpages:has(.subpages-carousel)::before {
	width: 106%;
	content: '';
	background-image: url('/pub/media/654dd19917cd797d24cb78b04424514a/element-oben.svg');
	display: block;
	background-color: var(--maincolor);
	position: absolute;
	aspect-ratio: 41.665 / 1;
	top: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0;
}

.block-nureinshop-subpages:has(.subpages-carousel)::after {
	width: 102%;
	content: '';
	background-image: url('/pub/media/9802626f99ae367c84399369c2699434/element-unten.svg');
	display: block;
	background-color: var(--maincolor);
	position: absolute;
	aspect-ratio: 47.59 / 1;
	bottom: 0;
	background-position-y: 1px;
	background-repeat: no-repeat;
	background-size: cover;
}

.block-nureinshop-subpages .subpages-carousel article {
    background-color: #fff;
	color: #000;
	border-radius: var(--br);
	padding: 50px 40px;
	text-align: center;
	position: relative;
	transition: 0.3s ease;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.3s ease;
}

.block-nureinshop-subpages .owl-item.active {
    transition: 0.3s ease;
}

.block-nureinshop-subpages .owl-item.active:hover {
    transform: scale(1.05);
}
    
.block-nureinshop-subpages .subpages-carousel article h2 {
    margin-top: 0;
    font-size: clamp(160%, 4.5vw, 200%);
}

.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled {
	display: block;
}

.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-prev.disabled,
.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-next.disabled {
    display: block!important;
}

.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-prev {
	left: -100px;
	background-image: url('/pub/media/620f8a56967a0468f23058c628aff7e0/gesundheitszentrum-pfeil.svg');
	opacity: 1;
	transform: scale(-1);
}

.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-next {
	right: -100px;
	background-image: url('/pub/media/620f8a56967a0468f23058c628aff7e0/gesundheitszentrum-pfeil.svg');
}

.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-prev,
.block-nureinshop-subpages .owl-carousel .owl-nav button.owl-next {
	width: 60px;
	height: 60px;
	opacity: 1;
}

.subpages-list article {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	column-gap: 20px;
	padding: 20px;
	border-radius: var(--br);
	background-color: #fff;
}

/*••••• Galerie •••••*/

@media (min-with: 1024px) {
    .tinygallery .owl-item {
	    transform: translateX(-50%);
    }
}

.nureinshop-block-image-gallery--list .quadrat {
    margin-top: 10px;
}

.block-nureinshop-image-gallery .owl-carousel .owl-nav.disabled {
	position: absolute;
	top: 0;
	width: 100%;
	/* max-width: 1340px; */
	max-width: 90%;
	display: flex;
	justify-content: space-between;
	right: 0;
	left: 0;
	margin-left: auto;
	margin-right: auto;
	height: 100%;
	align-items: center;
}

.block-nureinshop-image-gallery .owl-carousel .owl-nav button.owl-prev,
.block-nureinshop-image-gallery .owl-carousel .owl-nav button.owl-next {
    width: 60px;
    height: 60px;
    background-image: url('/pub/media/620f8a56967a0468f23058c628aff7e0/gesundheitszentrum-pfeil.svg');
    background-size: 100%;
    background-repeat: no-repeat;
}

.block-nureinshop-image-gallery .owl-carousel .owl-nav button.owl-prev {
    transform: scale(-1);
}

@media (max-width: 460px) {
    .block-nureinshop-image-gallery .owl-carousel .owl-nav.disabled {
        display: none;
    }
}

.tinygallery .owl-prev span,
.tinygallery .owl-next span {
    opacity: 0;
}

/*••••• Produkte •••••*/

.productpage-variant-selectors {
	background-color: rgba(255,255,255,0.6);
	padding: 20px 0;
}

.productpage-pricewrapper {
	background-color: #efebe4;
	padding: 1px 20px 20px 25px;
}

/*••••• Footer & Copyright •••••*/

footer {
    margin-top: 60px;
}

footer::before {
	content: 'so erreichen Sie uns:';
	color: #000;
	font-size: clamp(180%, 4.5vw, 270%);
	width: fit-content;
	text-align: center;
	font-family: 'Grand Hotel', Arial, Sans-serif;
	display: flex;
	justify-content: center;
	background-image: url('/pub/media/92956f5505fb8ef3476b966c72b495bd/gesundheitszentrum-bluete-rot.svg');
	background-size: 30px 30px;
	background-repeat: no-repeat;
	padding-left: 35px;
	padding-right: 35px;
	background-position: right bottom 5px;
	margin-left: auto;
	margin-right: auto;
	font-weight: 300;
	line-height: 1.15;
}

#region-footer {
    background-color: var(--maincolor);
	color: #000;
	font-weight: 300;
}

#region-footer .row::before {
	content: 'Gesundheitszentrum an der Höhle';
	color: var(--red);
	font-size: clamp(200%, 4.5vw, 300%);
	width: 100%;
	text-align: center;
	font-family: 'Grand Hotel', Arial, Sans-serif;
	padding-top: 55px;
	padding-bottom: 25px;
}

#region-footer a {
    color: #000;
    text-decoration: underline;
    text-underline-offset: 5px;
}


#region-footer h2 {
	color: #000;
}

@media (max-width: 960px) {
    #region-footer .col-4 {
        width: 100%;
    }
}
        

#region-copyright {
    background: #fff;
    font-size: 75%;
}

#region-copyright a {
    color: #000;
    text-decoration: underline;
}

/*••••• Suchseite •••••*/

.search-form .input-wrapper::before {
  display: block;
  position: absolute;
  height: 20px;
  width: 20px;
  opacity: 1;
  background-image: url('/pub/media/c97f64839b348aa3371a0db7209c9a97/gvv-hardheim-wallduern-suche.svg');
  background-size: 20px 20px;
  z-index: 40;
  content: '';
  margin-top: 18px;
  margin-left: 15px;
}

.search-form .input-wrapper input[type="text"] {
    color: #000;
    border-radius: var(--br);
    padding: 15px 0 15px 50px;
}

.input-wrapper input::placeholder {
    color: #000;
}

.search-item-header h2 {
    font-size: 120%;
    hyphens: none;
}

.productgrid .row {
    display: flex;
    flex-wrap: wrap;
}

.productgrid .search-item {
    padding: 10px;
    hyphens: auto;
    border-radius: var(--br);
    padding-bottom: 25px;
}

@media only screen and (min-width: 960px) {
  .productgrid .col-3 {
    width: 49.9%;
    align-items: stretch;
    display: flex;
  }
  .productgrid .search-item {
    display: flex;
    flex-direction: column;
    padding: 20px;
  }
  .search-item-header h2 {
    margin-top: 5px;
  }
  .search-item-more-btn {
    margin-top: auto;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
 .search-item-short {
     margin-bottom: 20px;
 }
}


/** generated: 2026-09-09 12:03:48 **/