/*!
Theme Name: DAH NOWEDA
Theme URI: https://www.noweda-apothekenberatung.de
Author: NOWEDA ApothekenBeratung GmbH
Author URI: https://www.noweda-apothekenberatung.de
Description: Design- und Entwicklungstheme für die DAH-Website der NOWEDA Apothekergenossenschaft eG.
Version: 1.0.0
License: Not for redistribution
Text Domain: dah
*/

:root {
	--base-url: url('http://www.die-apotheke-hilft.de/');
	--image-url: url('assets/images');

	--font: #1e90ff;
	--link: #ffffff;
	--link-hover:;
	--noweda-blue: #004f9f;
	--noweda-red: #e3051b;
  }

/*
-----------------------------
Hausschrift: Lexend Deca
----------------------------- 
*/

/* Lexend Deca Light */
@font-face {
	font-display: swap;
	font-family: 'Lexend Deca';
	font-style: normal;
	font-weight: 200;
	src: url('assets/fonts/lexend-deca-v21-latin-200.woff2') format('woff2'),
		 url('assets/fonts/lexend-deca-v21-latin-200.ttf') format('truetype');
  }

  /* Lexend Deca Medium */
  @font-face {
	  font-display: swap;
	  font-family: 'Lexend Deca';
	  font-style: normal;
	  font-weight: 300;
	  src: url('assets/fonts/lexend-deca-v21-latin-300.woff2') format('woff2'),
		   url('assets/fonts/lexend-deca-v21-latin-300.ttf') format('truetype');
	}

  /* Lexend Deca Normal */
  @font-face {
	font-display: swap;
	font-family: 'Lexend Deca';
	font-style: normal;
	font-weight: 500;
	src: url('assets/fonts/lexend-deca-v21-latin-500.woff2') format('woff2'),
		 url('assets/fonts/lexend-deca-v21-latin-500.ttf') format('truetype');
  }
  
  /* Lexend Deca Bold */
  @font-face {
	  font-display: swap;
	  font-family: 'Lexend Deca';
	  font-style: normal;
	  font-weight: 700;
	  src: url('assets/fonts/lexend-deca-v21-latin-700.woff2') format('woff2'),
		   url('assets/fonts/lexend-deca-v21-latin-700.ttf') format('truetype');
	}
  
  /* Lexend Deca ExtraBold */
  @font-face {
	  font-display: swap;
	  font-family: 'Lexend Deca';
	  font-style: normal;
	  font-weight: 800;
	  src: url('assets/fonts/lexend-deca-v21-latin-800.woff2') format('woff2'),
		   url('assets/fonts/lexend-deca-v21-latin-800.ttf') format('truetype');
	}


/*
-----------------------------
Basislayout
----------------------------- 
*/

.logo { margin-top:4.2rem; margin-right:3rem; }
.logo img { width:9.4rem; }
.logo-sticky img { width:10rem; margin-top:0.1rem; }

html { font-size: 15px; background-color: #ffffff; }
		@media only screen and (min-width: 1260px) { html { font-size: 15px; } .logo { margin-top:4.2rem; margin-right:3rem; } .logo img { width:9.4rem; } }
		@media only screen and (min-width: 1340px) { html { font-size: 16px; } .logo { margin-top:4.0rem; margin-right:3rem; } .logo img { width:10.4rem; } }
		@media only screen and (min-width: 1630px) { html { font-size: 17px; } .logo { margin-top:3.8rem; margin-right:3rem; } .logo img { width:11.4rem; } }
		@media only screen and (min-width: 1800px) { html { font-size: 17px; } .logo { margin-top:3.8rem; margin-right:3rem; } .logo img { width:11.4rem; } }


body {                                                         
	margin: 0;
	font-family: Lexend Deca, sans-serif;
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.4rem;
	color: #202020;
	display: flex;
	justify-content: center;
}
b, strong { 
	font-weight: 500; 
}
.container {
	display: flex;
	flex-direction: column;
	width: calc(100% - 8rem);
	max-width: 81rem;
	min-height: 100vh;
}
h1 {
	font-family: Lexend Deca, sans-serif;
	font-weight: 800;
	font-size: 3.4rem;
	line-height:3.8rem;
	margin-top: 0;
	color: #004f9f;
}
h2 {
	font-family: Lexend Deca, sans-serif;
	font-weight: 700;
	font-size: 2.2rem;
	line-height:2.4rem;
	margin-top: 0;
	color: #004f9f;
}
h3 {
	font-family: Lexend Deca, sans-serif;
	font-weight: 700;
	font-size: 1.4rem;
	line-height:1.6rem;
}
h4 {
	font-family: Lexend Deca, sans-serif;
	font-weight: 700;
	font-size: 1.1rem;
	margin: 0 0 1rem 0;
}
footer .head {
	font-family: Lexend Deca, sans-serif;
	font-weight: 700;
	font-size: 1rem;
	margin: 0 0 .7rem 0;
}
header {
	height: 11rem;
	display: flex;
	margin:0 4rem 0 4rem;
}
.stickyheader {
	position: fixed;
	top: -6rem;
	width: 100%;
	background-color: #ffffff;
	transition: top 0.4s;
	z-index: 1000;
	height:5rem;
	box-shadow: rgba(26, 26, 26, 0.25) 0 0 0.8rem;
} 
.stickyheader_inner {
	display: flex;
	padding:1.8rem 4rem 0 4rem;
	max-width: 73rem;
	margin: 0 auto;
}
div.sticky-navigation > div#mega-menu-wrap-max_mega_menu_1 > ul#mega-menu-max_mega_menu_1 > li.mega-menu-item > a.mega-menu-link {
	line-height: 2.2rem !important;

} 

footer {
	background-color: #e8edf7;
	margin:0px;
	border-radius: 1.2rem 1.2rem 0 0;
	padding:3rem 4rem 2rem 4rem;
	color: #004f9f;
}
.footer {
	display: flex;
	font-size: 0.9rem;
	font-weight: 300;
	justify-content: flex-start;
	gap: 2rem;
}   
.footer .col1, .footer .col2, .footer .col3, .footer .col5 { flex: 0 1 13rem; }
.footer .col4 { flex: 0 1 28rem; text-align:right; }
.footer .col6 { flex: 0 1 58rem; }

.content {
	flex: 1;
	margin:0px;
}
.content_inner {
	margin:0 4rem 8rem 4rem;
}

.slider {
	margin:0px;
	width:calc(100% + 8rem);
	margin-left:-4rem;
}

.depicter {
	background-color: bisque;
}

.depicter-primary-container {
	border-radius: 1.2rem;
	margin-bottom:4.75rem;
}
.navigation {
	position: relative;
	width: 100%;
	display: flex;
	gap:2rem;
	margin-top:3.7rem;
}
.sticky-navigation {
	position: relative;
	width: 100%;
	display: flex;
	gap:2rem;
	margin-top:-.45rem;
	margin-left:2.6rem;
}
.main-nav { 
	font-size: 1.1rem;
	font-weight: 500;
}
.sub-nav { 
	position: absolute;
	font-size: 0.8rem;
	flex-grow: 1;
	white-space: nowrap; 
	text-align: right;
	right: 0;
}


.sub-nav a:link { 
	text-decoration: none;
}

.wp-post-image {
	width: 100%;
	height: auto;
	border-radius: 1.2rem;
	margin-bottom:4.75rem;
}


.wp-block-columns {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
}

.wp-block-columns.smallgap { 
	gap: 1rem; }

.wp-block-columns.small_margin { 
	margin-bottom:0; }

.flexcol10 { flex: 1 1 10% !important; }
.flexcol15 { flex: 1 1 15% !important; }
.flexcol20 { flex: 1 1 20% !important; }
.flexcol25 { flex: 1 1 25% !important; }
.flexcol30 { flex: 1 1 30% !important; }
.flexcol35 { flex: 1 1 35% !important; }
.flexcol40 { flex: 1 1 40% !important; }
.flexcol45 { flex: 1 1 45% !important; }
.flexcol50 { flex: 1 1 50% !important; }
.flexcol55 { flex: 1 1 55% !important; }
.flexcol60 { flex: 1 1 60% !important; }
.flexcol65 { flex: 1 1 65% !important; }
.flexcol70 { flex: 1 1 70% !important; }
.flexcol75 { flex: 1 1 75% !important; }
.flexcol80 { flex: 1 1 80% !important; }
.flexcol85 { flex: 1 1 85% !important; }
.flexcol90 { flex: 1 1 90% !important; }

.wp-block-column {
	margin-bottom: 3rem;
}

div#breadcrumbs {
	font-size: .8rem;
	margin: 3rem 0 3rem 0;
}

div#breadcrumbs > span > span > a:link, div#breadcrumbs > span > span > a:visited {
	color: #202020;
	text-decoration: none;
}

.wp-block-media-text>.wp-block-media-text__content {
	padding: 0 1.4rem 0 1.8rem !important;
}

.bcseperator {
	font-size: .65rem;
	margin-left: .2rem;
	margin-right: -.3rem;
}

figure.wp-block-video > video {
	border-radius: 1.2rem;
}

.wp-block-video > div#image-overlay > img {
	-webkit-filter: brightness(1.1);
	filter: brightness(1.1);
}

video.video {
	max-width: inherit;
	border-radius: 1.2rem;
}

p { font-size: 1.1rem; line-height: 1.5rem; margin: 0 0 .75rem 0; }

p.has-small-font-size { font-size: .8rem; line-height: 1.1rem; margin: 0 0 .4rem 0; }
p.has-medium-font-size { font-size: 1.3rem; line-height: 1.5rem; margin: 0 0 .6rem 0; }
p.has-large-font-size { font-size: 1.7rem; line-height: 1.9rem; margin: 0 0 .75rem 0; }
p.has-x-large-font-size { font-size: 2.0rem; line-height: 2.2rem; margin: 0 0 .9rem 0; }

.plichttexte_box {
	max-width: 860px;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 2rem;
}

.ptxt { }

.pflichttext.small { 
	margin-top:4rem;
	margin-bottom: -6rem;
}

.pflichttext > h3 { 
	max-width: 90%;
}

@media only screen and (min-width: 1200px) {         
	.pflichttext > .med_hinweis { max-width: 85%; }
}

.pflichttext.small, .pflichttext.small > p { 
	font-size: 0.8rem;
	line-height: 1.1rem;
}

.pflichttext.small > p { 
	margin: 0 0 .25rem 0;
}

.pflichttext.small > h3 { 
	font-size: 0.9rem;
	line-height: 1.1rem;
}

.pflichttext > .urls { 
	margin-top:1.4rem;
}


div.warnhinweis { 
	background-image: url('assets/images/hinweis.svg');
	background-size: 1.6rem 1.6rem;
	background-repeat: no-repeat;
	background-position: top 0 left .1rem;
	position:relative;;
	content:"";
	top: .8rem;
	padding-top: .1rem;
	padding-bottom: 1.2rem;
	padding-left: 2.4rem;
	padding-right: 1rem;
	font-size: 1.1rem;
	overflow: visible;
}

ul.wp-block-list {
	list-style: none;
	margin-top:1.2rem;
}

ul.dah-pack-list {
	list-style-position: outside;
	padding-inline-start: 1.3rem;
}

ul.wp-block-list > li, 
ul.wp-block-list > li.link {
	font-size: 1.1rem; 
	line-height: 1.5rem;
	font-weight: 300;
	margin-top:.2rem;
}

ul.wp-block-list.doubleline > li, 
ul.wp-block-list.doubleline > li.link {
	font-size: 1.1rem; 
	line-height: 1.5rem;
	font-weight: 300;
	margin-top:.5rem;
}

ul.wp-block-list > li::before { 
	background-image: url('assets/images/check.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	position:relative;
	width: 1.2rem; 
	height: 1.2rem;
	margin-right:.8rem;
	top:.2rem;
	margin-left:-2rem;
	content:"";
}

ul.wp-block-list > li.link::before { 
	background-image: url('assets/images/pfeil.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: center;
	width: 1.2rem; 
	height: 1.2rem;
	margin-right:.8rem;
	top:.2rem;
	margin-left:-2rem;
	content:"";
}


.related {
	display: flex;
	position: relative;
	width: 90%;
	height: auto;
	aspect-ratio: auto 4/3;
	text-align: center;
}
.related img {
	position: absolute; bottom: 0;
	max-height:100%;
	width: auto;
}

.related.box {
	border-radius: 1.2rem;
	background-color: #f3f9fa;
}
.related.box img {
	padding: 3rem 2rem 2rem 2rem;
	max-height:100%;
	width: auto;
}

.related img:hover {
	transform: scale(1.05);
	transition: all 0.4s;
}


.wp-block-post-featured-image {
	width: calc(100% + 8rem);
	height: auto;
	border-radius: 1.2rem;
	left:-4rem;
}

.blowup {
	position: relative;
	width: calc(100% + 8rem) !important;
	height: auto !important;
	left:-4rem !important;
}



@media only screen and (min-width: 1200px) {      
	.blowup-on-big-screen {
		position: relative;
		width: calc(100% + 8rem) !important;
		height: auto !important;
		left:-4rem !important;
	}
}

.rounded, figure.rounded img {
	border-radius: 1.2rem;
}

figure.compose.picture1 img { width:88%; } 
figure.compose.picture2 img { width:72%; } 
figure.compose.picture1 { z-index:20; }
figure.compose.picture2 { margin-top:-30%; z-index:10; }

.t10 { margin-top:-10% !important; }
.t15 { margin-top:-15% !important; }
.t20 { margin-top:-20% !important; }
.t25 { margin-top:-25% !important; }
.t30 { margin-top:-30% !important; }
.t35 { margin-top:-35% !important; }
.t40 { margin-top:-40% !important; }
.t45 { margin-top:-45% !important; }
.t50 { margin-top:-50% !important; }
.t55 { margin-top:-55% !important; }
.t60 { margin-top:-60% !important; }
.t65 { margin-top:-65% !important; }
.t70 { margin-top:-70% !important; }

figure.compose.left { text-align: left; } 
figure.compose.right { text-align: right; }

.w70 > img { width:70% !important; } 
.w65 > img { width:65% !important; } 
.w60 > img { width:60% !important; } 
.w55 > img { width:55% !important; } 
.w50 > img { width:50% !important; } 
.w45 > img { width:45% !important; } 
.w40 > img { width:40% !important; } 
.w35 > img { width:35% !important; } 
.w25 > img { width:25% !important; } 

.pl { padding-left:10%; }

.neu { 
	position:absolute; 
	bottom:-.4rem; 
	right:-1rem;
	text-align:right;
	height: auto;
	z-index:500;
}

img.neu { 
	width: 5rem;
}

.info-of-use {
	display: flex;
	justify-content: center;
	gap: 1.2rem;
	max-width: 100%;
	flex-wrap: wrap;
}
.info-of-use img {
	filter: opacity(0.4);
	height: 8rem;
}

.info-of-use img:hover {
	transform: scale(1.05);
	filter: opacity(1.0);
	transition: all 0.4s;
}

#use-hover-text {
	display: block;
	font-size: 1.1rem;
	font-weight: 300;
	margin-top:2rem;
	width:100%;
	text-align: center;
}

@media only screen and (max-width: 769px) {         
	.info-of-use img {
		height: 5rem;
	}
}

.wp-element-caption, .footnote {
	font-size: 0.8rem;
	line-height: 1.1rem;
	margin-top: 0.5rem;
}

.footnote {
	color: #b9b9b9;
}

/*
-----------------------------
Links
----------------------------- 
*/

a, a:link, a:visited, a:active { 
	color: #004f9f; 
	text-decoration: underline;
	text-underline-offset: .15rem; 
	text-decoration-thickness: 1px; 
}
a:hover { 
	color: #e3051b; 
}

ul.dah-pack-list { 
	font-size: 1.1rem;
}

a.download:link, a.download:visited, a.download:active { 
	color: #004f9f; 
	text-decoration: underline;
	text-underline-offset: .15rem; 
	text-decoration-thickness: 1px; 
	font-weight: 300;
	display: inline-block;
	margin-bottom: 0.25rem;
	margin-left:2.4rem;
}
a.download:hover { 
	color: #e3051b; 
}

a.pdf::before { 
	background-image: url('assets/images/pdf.svg');
    background-size: 1.8rem 1.8rem;
	background-repeat: no-repeat;
	background-position: center;
    display: inline-block;
	position:relative;
    width: 1.8rem; 
    height: 1.8rem;
	margin-right:.5rem;
	top:.45rem;
	margin-left:-2.4rem;
    content:"";
}

a.png::before { 
	background-image: url('assets/images/png.svg');
    background-size: 1.8rem 1.8rem;
	background-repeat: no-repeat;
	background-position: center;
    display: inline-block;
	position:relative;
    width: 1.8rem; 
    height: 1.8rem;
	margin-right:.5rem;
	top:.45rem;
	margin-left:-2.4rem;
    content:"";
}

a.zip::before { 
	background-image: url('assets/images/zip.svg');
    background-size: 1.8rem 1.8rem;
	background-repeat: no-repeat;
	background-position: center;
    display: inline-block;
	position:relative;
    width: 1.8rem; 
    height: 1.8rem;
	margin-right:.5rem;
	top:.45rem;
	margin-left:-2.4rem;
    content:"";
}

a.video::before { 
	background-image: url('assets/images/video_play.svg');
    background-size: 1.8rem 1.8rem;
	background-repeat: no-repeat;
	background-position: center;
    display: inline-block;
	position:relative;
    width: 1.8rem; 
    height: 1.8rem;
	margin-right:.5rem;
	top:.55rem;
	margin-left:-2.4rem;
    content:"";
}


span.bcseperator {	
	content:url('assets/images/sep.svg');
	height: .8rem;
	width: auto;
	padding: 0 .4rem 0 0rem;
	vertical-align: middle;
}


/*
-----------------------------
Schaltflächen
----------------------------- 
*/

button, a.cta, .wp-block-button > a { 
	all: unset;
	display: inline-block;
	font-size: .9rem;
	font-weight: 500;
	padding: .8em 1.8rem .7rem 1.8rem;
	white-space: nowrap;
	border-radius: .5rem;
	text-decoration: none;
	background-color: #004f9f;
	color: #ffffff;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.sub-nav .cta.small { 
	font-size: .8rem;
	font-weight: 500;
	padding: .65em 1.6rem .45rem 1.6rem;
	background-color: #004f9f;
	color: #ffffff;
}


button.light, .wp-block-button.light > a { 
	background-color: #e8edf7;
	color: #004f9f;
}

.sub-nav .cta { 
	margin-left:1.4rem;
}

.wp-block-button > a { 
	margin-top: .75rem;
}

button:hover, .sub-nav .cta:hover, .wp-block-button > a:hover, a.cta:hover { 
	cursor: pointer;
	color: #ffffff;
	-webkit-filter: brightness(1.1);
	filter: brightness(1.1);
	transform: scale(1.025);
	transition: all 0.2s;
}

button.light:hover, .wp-block-button.light > a:hover { 
	color: #004f9f;
	-webkit-filter: brightness(.9);
	filter: brightness(.9);
}

.wp-block-buttons .wp-block-button__link {
    width:auto !important;
}


/*
-----------------------------
Formulare
----------------------------- 
*/

form > h3 {
    margin-top: 2em;
}
.error-message-global {
	width:auto;
    color: rgb(235, 52, 52);
    margin: 1em 0;
    display: none;
}

@keyframes shake {
    0% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    50% { transform: translateX(5px); }
    75% { transform: translateX(-5px); }
    100% { transform: translateX(0); }
}
.error-message-global.shake { 
	animation: shake 0.3s ease; }

.form-group { 
	position: relative; 
	margin-bottom: 1.5em; 
}

input[type="text"],
input[type="email"],
select {
    width: 100%;
    padding: 1.2em 0.5em 0.5em 0.5em;
    font-size: 1em;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    background-color: white;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'><path d='M0 0l5 6 5-6z' fill='%23666'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.75em center;
    background-size: 0.65em auto;
    padding-right: 2em;
}

input:focus,
select:focus {
    outline: none;
    border-color: #666;
}

.form-group label {
    position: absolute;
    top: 0.85em;
    left: 0.5em;
    pointer-events: none;
    transition: all 0.2s ease;
    background: white;
    padding: 0 0.25em;
    color: #666;
}

input:focus + label,
input:not(:placeholder-shown) + label,
select:focus + label,
select:valid + label {
    top: -0.5em;
    left: 0.4em;
    font-size: 0.8em;
    color: #333;
}

.form-row {
    display: flex;
    gap: 1em;
}

.plz-group { flex: 0 0 calc((100% - 1em) * 0.3); }
.ort-group { flex: 0 0 calc((100% - 1em) * 0.7); }

.error-input { border: 2px solid red !important; }

.field-error {
    font-size: 0.9em;
    margin-top: 0.25em;
    display: block;
}

.warning-icon {
	height:0.8em;
    display: inline-block;
    color: #f0ad4e;
    margin-right: 0.35em;
	margin-top:-0.2em;
}

.checkbox-group {
    display: flex;
    align-items: center;
    margin-bottom: 1.5em;
	font-size:1.1rem;
}
    
.checkbox-group input[type="checkbox"] {
    margin-right: 0.5em;
    transform: scale(1.2);
}

input[type="checkbox"] {
	all: unset;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	width: 1.25em;
	height: 1.25em;
	margin-left: 0.2rem;
	vertical-align: middle;
	cursor: pointer;
	box-sizing: border-box;
	border: 1px solid #ccc;
    border-radius: 4px;
	background-color: white;
	position: relative;
	transition: background-color 0.2s ease, border-color 0.2s ease;
  }
  
  input[type="checkbox"]::after {
	content: "";
	position: absolute;
	top: 0.15em;
	left: 0.35em;
	width: 0.25em;
	height: 0.5em;
	border: solid white;
	border-width: 0 0.2em 0.2em 0;
	transform: rotate(45deg);
	opacity: 0;
	transition: opacity 0.2s ease;
  }
  
  input[type="checkbox"]:checked {
	background-color: #a3d6de;
	border-color: #a3d6de;
  }
  
  input[type="checkbox"]:checked::after { opacity: 1; }
  input[type="checkbox"]:hover { border-color: #333; }
  input[type="checkbox"]:focus { outline: none; box-shadow: 0 0 0 2px #333; }
  
  input[type="checkbox"]:disabled {
	background-color: #eee;
	border-color: #ccc;
	cursor: not-allowed;
  }
  
  input[type="checkbox"]:disabled::after { border-color: #ccc; }



/*
-----------------------------
Max Mega Menu
----------------------------- 
*/

#mega-menu-wrap-max_mega_menu_1 { 
    width:100% !important;
}

#mega-menu-max_mega_menu_1 { 
    width:100% !important;
}

li#mega-menu-524-0 > ul.mega-sub-menu > li.mega-menu-column > ul.mega-sub-menu > .mega-menu-item.mega-menu-item-type-widget.widget_custom_html {
	padding-bottom: 0 !important;
}

li#mega-menu-524-0 > ul.mega-sub-menu > li.mega-menu-column > ul.mega-sub-menu > .mega-menu-item.mega-menu-item-type-widget.widget_nav_menu {
	padding-top: .4rem !important;
}

ul.menu {
	display: block;
	list-style: none;
	margin-block-start: 0;
	margin-block-end: 0;
	padding-inline-start: 0;
}

ul#menu-subnavigation-1 > li.menu-item.menu-item-type-post_type.menu-item-object-page {
	display: inline-block;
	margin-left:.6rem;
}

div.menu-subnavigation-container, ul#menu-subnavigation > li.menu-item {
	display: inline-block;
	padding-left:.7rem;
}

li.mega-menu-item > ul.mega-sub-menu:first-of-type {
	margin-top:2.6rem !important;
}

div.sticky-navigation > div#mega-menu-wrap-max_mega_menu_1 > ul#mega-menu-max_mega_menu_1 > li.mega-menu-item > ul.mega-sub-menu:first-of-type {
	margin-top:1.3rem !important;
}

li.mega-menu-item {
	font-size: .9rem;
	font-weight: 300;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu {
	width:calc(100% + 4rem);
	margin-left:-2rem;
	padding-top:.2rem;
	padding-bottom:1rem;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {
	width:100%;
	margin: .2rem 0rem .2rem 0rem;
	padding: 0rem .9rem 0rem .9rem;
}

h4.mega-block-title {
	font-size: .95rem !important;
	line-height: 1.1rem !important;
	margin: 0 !important;
}

h4.mega-block-title > a:link, 
h4.mega-block-title > a:hover, 
h4.mega-block-title > a:visited, 
h4.mega-block-title > a:active { 
	color: #202020;
	text-decoration: none;
}

li.mega-menu-item.widget_custom_html {
	padding-bottom:0;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item {
	font-size: .95rem;
	line-height: 1.2rem;
	margin: .4rem 0 .4rem 0;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item a, 
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item a:link, 
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item a:visited, 
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item a:active {
	color: #202020 !important;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li.menu-item a:hover {
	color: #202020 !important;
}

#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
	padding-right: 0 !important;
}

/*
-----------------------------
Mobile Navigation
----------------------------- 
*/

.mobilemenu-icon {
	position: fixed;
	cursor: pointer;
	width: 32px;
	height: 26px;
	right:24px;
	margin-top:4px;
	z-index: 1001;
}

.mobilemenu-icon div {
	width: 100%;
	height: 2px;
	background-color: #202020;
	position: absolute;
	transition: all 0.3s ease;
}

.mobilemenu-icon div:nth-child(1) { top: 0; }
.mobilemenu-icon div:nth-child(2) { top: 8px; }
.mobilemenu-icon div:nth-child(3) { top: 16px; }
.mobilemenu-icon.open div:nth-child(1) {
	transform: rotate(45deg);
	top: 8px; }
.mobilemenu-icon.open div:nth-child(2) { opacity: 0; }
.mobilemenu-icon.open div:nth-child(3) {
	transform: rotate(-45deg);
	top: 8px; }

.mobilemenu {
	position: fixed;
	display: flex;
	justify-content: left;
	align-items: start;
	top: 0;
	right: -100%;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
	transition: right 0.5s ease;
	z-index: 1000;
}
.mobilemenu_inner {
	padding: 2.6rem 2.6rem 2.6rem 2.6rem;
}
.mobilemenu.show {
	right: 0;
}

.mmlogo {
	width:220px;
	margin-bottom:40px;
}

.mobilemenu ul.menu, .mobilemenu_subnav .mobilemenu ul.menu {
	display: block;
	list-style: none;
	margin-block-start: 0;
	margin-block-end: 0;
	padding-inline-start: 0;
}

.mobilemenu_subnav .menu-subnavigation-container {
	padding: 1rem 0 2rem 0;
}

.mobilemenu_subnav {
	margin-top:5rem;
}

.mobilemenu ul.menu > li {
	font-size: 1.5rem;
	line-height: 1.7rem;
	margin-top: .8rem;
	margin-bottom: .8rem;
}

.mobilemenu_subnav > .menu-subnavigation-container > ul.menu > li {
	font-size: 1.1rem;
	line-height: 1.2rem;
	margin-top: .6rem;
	margin-bottom: .6rem;
}

.mobilemenu ul.menu > li > a, 
.mobilemenu ul.menu > a:link {
	color:#202020;
	text-decoration: none;
}

.mobilemenu_subnav > .menu-subnavigation-container > ul.menu > li > a, 
.mobilemenu_subnav > .menu-subnavigation-container > ul.menu > li > a:link {
	color: #004f9f;
	text-decoration: none;
}

.mobilemenu_subnav > .menu-subnavigation-container a.cta, 
.mobilemenu_subnav > .menu-subnavigation-container a:link.cta {
	color:#ffffff;
}

/*
-----------------------------
Carousel Slider
----------------------------- 
*/

.cslider {
	display: flex;
	gap: 3.5%;
	overflow-x: scroll;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
  
div.cslider > .wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex, .citem {
	flex-shrink: 0;
	width: 31%;
	height:auto;
	scroll-snap-align: center;
	margin-bottom:2rem;
}

@media only screen and (max-width: 1200px) {      
	div.cslider > .wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex, .citem { width: 48.25%; }
}

@media only screen and (max-width: 768px) {
	.cslider { gap:0; }   
	div.cslider > .wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex, .citem { width: 100%; }
}
.cslider::-webkit-scrollbar {
	display: none;
}

div.sliderButtonContainer.top {
	margin: 2rem 0 2rem 0;
}

div.sliderButton {
	display: inline-block;
	position: relative;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: .5rem;
	border: 1.65px solid #202020;
	cursor: pointer;
	margin-right:0.45rem;
}

div.sliderButton.prevButton {
	background-image: url('assets/images/next.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: center center;
	transform: rotate(180deg);
}

div.sliderButton.nextButton {
	background-image: url('assets/images/next.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: center center;
}

div.sliderButton.disabled {
	cursor: auto;
	opacity: .2;
}

div.sliderButton:not(.disabled):hover {
	background-color: #a3d6de;
	transition: ease-in-out 0.2s;
}

div.cslider > div.wp-block-columns > div.wp-block-column > ul.wp-block-list > li {
	font-size: 1.1rem; 
	line-height: 1.3rem;
	font-weight: 300;
	margin-top:.1rem;
}

div.cslider > div.wp-block-columns > div.wp-block-column > ul.wp-block-list > li::before { 
	background-image: url('assets/images/pfeil.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	position:relative;
	width: 1.2rem; 
	height: 1.2rem;
	margin-right:.8rem;
	top:.2rem;
	margin-left:-2rem;
	content:"";
}

div.cslider > div.wp-block-columns > div.wp-block-column > div > ul.menu {
	list-style: none;
	margin-top:1.2rem;
	max-width: 90%;
}

div.cslider > div.wp-block-columns > div.wp-block-column > div > ul.menu > li {
	font-size: 1.1rem; 
	line-height: 1.4rem;
	font-weight: 300;
	margin-top:.4rem;
	display: block;
	background-image: url('assets/images/pfeil.svg');
	background-size: 1.2rem 1.2rem;
	background-repeat: no-repeat;
	background-position: top 0 left .2rem;
	padding-left:2rem;
}


div.cslider > div.wp-block-columns > div.wp-block-column > figure > img, 
div.cslider > div.wp-block-columns > div.wp-block-column > figure > a:link > img {
	border-radius: 1.2rem;
}


/*
-----------------------------
Responsives Design 
----------------------------- 
*/

.sub-nav a.cta::before { content:"Jetzt bei meiner Apotheke kaufen!"; }    
@media only screen and (max-width: 1060px) { 
	.sub-nav a.cta::before { content:"Jetzt Vor-Ort kaufen!"; }    
}
@media only screen and (max-width: 960px) { 
	.sub-nav a.cta::before { content:"Jetzt kaufen!"; }    
}

@media only screen and (max-width: 900px) { 
	#menu-subnavigation-1 { display:none; } 
	div.menu-subnavigation-container { display:none; }
}

@media only screen and (max-width: 1260px) {
	.logo { margin-right:2rem; }         
	.container { width: 100%; } 
	.slider, footer, .wp-post-image, .depicter-primary-container { border-radius: 0; }	
}

@media only screen and (max-width: 980px) {         
	.wp-block-columns { display: block !important; }
}

@media only screen and (min-width: 769px) { 
	.smallmargin { margin-bottom: -1rem; }  
}

@media only screen and (max-width: 768px) {         
	.nom, .not-on-mobile { display:none !important; } 
	footer { margin:0px; padding:0 1rem 2rem 1rem; }
	header { margin:0 1rem 0 1rem; height:100px; }
	html { font-size: 14px; }
	.footer { display: block; }
	.footer .col { margin-top:2rem; }
	.footer .col.col4 { text-align: left; }
	.slider { margin-left:-1rem; width:calc(100% + 2rem); margin-bottom: -2.5rem; }
	.featured_image { margin-bottom: -2.5rem; }
	.wp-block-columns { gap: 0rem; }
	.content_inner { margin:0 1rem 4rem 1rem; }
	.logo { margin-top:2.6rem; }
	.navigation { margin-top:2.6rem; margin-right: .4rem; }
	.logo img { width:16rem; }
	.blowup {
		position: relative;
		width: calc(100% + 2rem) !important;
		height: auto !important;
		left:-1rem !important;
	}
	h1 { font-size: 2.2rem; line-height:2.2rem; }
	h2 { font-size: 1.8rem; line-height:1.8rem; }
	.pflichttext.small { margin-top:0rem; margin-bottom: -1rem; }
	}

@media only screen and (min-width: 769px) {         
	.only-on-mobile, .on-mobile { display:none !important; } 
}