@charset "UTF-8";
/*
Theme Name: Tierarztpraxis Falkenseen 2025
Theme URI:
Author: Andreas Meier, Kentro Design
Author URI: https://www.kentro-design.de
Description: Kentro Design Theme für die Tierarztpraxis Falkensee
Version: 1.0
Tags: white, blue, red
Text Domain: tierarztpraxis-falkensee
*/

/*
	
	Inhalt:
	
	CSS RESET
	ACCESSIBILITY
	VARIABLES
	FONTS AND ICONS
	
	AREAS
	BASIC CONTAINERS
	GENERAL HTML TAGS
	CUSTOM CLASSES
	
	HEADER
	NAVIGATION
	
	CONTENT
	- layout allgemein
	- spalten
	- text
	- links
	- listen
	- buttons
	- icons
	- bilder
	- galerie-blöcke
	KD-Blöcke
	WORDPRESS PLUGINS
	
	SIDEBAR
	FOOTER
	
	RESPONSIVENESS 88 rem / 1408 px
	RESPONSIVENESS 72.5 rem / 1160 px
	RESPONSIVENESS 63 rem / 1008 px
	RESPONSIVENESS 52 rem / 832 px
	RESPONSIVENESS 40 rem / 640 px
	
	PRINT	
	
*/

/* ========================================================================== */
/* !CSS RESET ---------------------------------------- */
/* ========================================================================== */

/* normalize.css v1.0.1 | MIT License | git.io/normalize */

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

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html, button, input, select, textarea {
    font-family: sans-serif;
}

body {
    margin: 0;
}

a:focus {
    outline: thin dotted;
}

a:active, a:hover {
    outline: 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b, strong {
    font-weight: bold;
}

blockquote {
    margin: 1em 40px;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

p, pre {
    margin: 1em 0;
}

code, kbd, pre, samp {
    font-family: monospace,serif;
    _font-family: 'courier new',monospace;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}

q:before, q:after {
    content: '';
    content: none;
}

small {
    font-size: 80%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl, menu, ol, ul {
    margin: 1em 0;
}

dd {
    margin: 0 0 0 40px;
}

menu, ol, ul {
    padding: 0 0 0 40px;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

form {
    margin: 0;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em;
}

legend {
    border: 0;
    padding: 0;
    white-space: normal;
    *margin-left: -7px;
}

button, input, select, textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button, input {
    line-height: normal;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    *overflow: visible;
}

button[disabled], input[disabled] {
    cursor: default;
}

input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
    *height: 13px;
    *width: 13px;
}

input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

    
 
/* ========================================================================== */
/* ! ACCESSABILITY ---------------------------------------- */
/* ========================================================================== */

.screen-reader-text {
    position: absolute;
    top: -9999px;
    left: -9999px;
} 

 
    
/* ========================================================================== */
/* ! VARIABLES ---------------------------------------- */
/* ========================================================================== */

/* font sizes */

:root {
  --fs-xs: .8125rem; /* 13 px */
  --fs-s: 1rem; /* 16 px */
  --fs-base: 1.1875rem; /* 19 px */
  --fs-4: 1.25rem; /* 20 px */
  --fs-3: 1.375rem; /* 22 px */
  --fs-2: 1.75rem; /* 28 px */
  --fs-1: 2.25rem; /* 36 px */
}

/* < 1160 px */
@media screen and (max-width: 72.5rem) {
:root {
	--fs-xs: .8125rem; /* 13 px */
	--fs-s: 1rem; /* 16 px */
	--fs-base: 1.0625rem; /* 17 px */
	--fs-4: 1.125rem; /* 18 px */
	--fs-3: 1.1875rem; /* 19 px */
	--fs-2: 1.5625rem; /* 25 px */
	--fs-1: 2rem; /* 32 px */
  }
}

/* < 640 px */
@media screen and (max-width: 40rem) {
:root {
	--fs-xs: .8125rem; /* 13 px */
	--fs-s: 1rem; /* 16 px */
	--fs-base: 1.0625rem; /* 17 px */
	--fs-4: 1.0625rem; /* 17 px */
	--fs-3: 1.0625rem; /* 17 px */
	--fs-2: 1.375rem; /* 22 px */
	--fs-1: 1.75rem; /* 28 px */
  }
}



/* colors */

:root {
    --color-main: #234993; /* blau */
	--color-text: #555; /* dunkelgrau */
	--color-text-bold: #666; /* dunkelgrau */
	--color-text-light: #ccc; /* mittelgrau */
	--color-breadcrumb: #ccc; /* mittelgrau */
	--color-negative: #fff; /* weiß */
	
	--color-link: hsl(350, 87%, 58%); /* rot #f13656 */
	--color-link-visited: hsl(350, 87%, 80%); /* rot #f13656 */
	--color-link-hover: hsl(350, 87%, 40%); /* rot #f13656 */
    
    --color-bg-1: #fef5f6; /* hellrot #fef5f6 */
	--color-bg-2: #ccc; /* mittelgrau */
	--color-bg-3: hsl(350, 87%, 94%); /* rot #f13656 */
}



/* ========================================================================== */
/* ! FONTS UND ICONS ---------------------------------------- */
/* ========================================================================== */

/* Light */
@font-face {
  font-display: swap;
  font-family: 'Bree';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/Bree_Serif-Light.woff2') format('woff2');
}

/* Light Italic */
@font-face {
  font-display: swap;
  font-family: 'Bree';
  font-style: italic;
  font-weight: 300;
  src: url('fonts/Bree_Serif-Light_Italic.woff2') format('woff2');
}

/* Regular */
@font-face {
  font-display: swap;
  font-family: 'Bree';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/Bree_Serif-Regular.woff2') format('woff2');
}

/* Regular Italic */
@font-face {
  font-display: swap;
  font-family: 'Bree';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/Bree_Serif-Italic.woff2') format('woff2');
}





/* svg icons */
.icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
}

a.icon,
a.icon:visited,
a.icon:hover,
a.icon:active {
    border-bottom: none;
}

.icon svg {
    width: 28px;
    height: 28px;
}




/* ========================================================================== */
/* ! AREAS ---------------------------------------- */
/* ========================================================================== */

/* .site-header */
.site-header {
  	position: fixed;
	height: 230px;
	margin: 0 auto;
	width: 100%;
	z-index: 9999;    
}

/* .site-content */
.site-content,
.site-footer {
    display: flex;
    background-color: #fff;
    flex: 1 0 auto;
    padding: 2rem 0 3rem;
    width: 100%;
}

.site-content {
	margin-top: 200px;
	background-color: #fff;
	padding: 0;
}

/* .site-footer */
.site-footer {
    background-color: var(--color-main);
    padding: 6rem 0 2rem;
}

.site-header::after,
.site-content::after,
.site-footer::after {
    content: " ";
    display: block;
    height: 0;
    margin-top: 1.5em;
    visibility: hidden;
}

/* layout-basics */
.container {
    margin-right: auto;
    margin-left: auto;
    width: 80rem;
}

.row {
    display: flex;
    flex: 0 1 auto;
    flex-direction: row;
    flex-wrap: wrap;
    padding-left: -1rem;
    padding-right: -1rem;
}

.center {
    justify-content: center;
    text-align: center;
}

.middle {
    align-items: center;
}

.bottom {
    align-items: flex-end;
}

.around {
    justify-content: space-around;
}

.between {
    justify-content: space-between;
}

.first {
    order: -1;
}

.last {
    order: 1;
}
    


/* ========================================================================== */
/* ! BASIC CONTAINERS ---------------------------------------- */
/* ========================================================================== */

.row {
    /* margin-bottom: 1em; */
	/* strange: wenn bottom-wert gesetzt ist, zeigt safari (desktop und mobile) ein nach unten verschobenes logo und navbar */
}

.header-wrap,
.content-wrap,
.footer-wrap {
    padding: 0 1em;
}

.main-wrap {
    flex: 0 0 auto;
    flex-basis: 100%;
    max-width: 100%;
}

.container > header,
.container > footer {
    display: flex;
    flex: 0 1 auto;
}

.main {
    display: flex;
}

.footer-wrap {
    display: flex;
    flex-wrap: wrap;
}
    


/* ========================================================================== */
/* ! GENERAL HTML TAGS                     ---------------------------------------- */
/* ========================================================================== */

*,
*::after,
*::before {
    box-sizing: border-box;
}

/* glatteres scrollen */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 130px;
}

body {
    background-color: #fff;
    color: var(--color-text);
    font-family: "Bree", Arial, sans-serif;
    font-weight: 300;
	
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-smoothing: antialiased;
	font-smooth: always;
    text-rendering: optimizeLegibility;
	
	height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--color-main);
    font-size: var(--fs-3);
    font-family: "Bree", Arial, sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 2em 0 .4em;
    word-wrap: break-word;
}

h1 {
    font-size: var(--fs-1);
    -ms-hyphens: none;
	-webkit-hyphens: none;
	font-weight: 400;
	hyphens: none;
    line-height: 1.2;
    margin-bottom: 1em;
    margin-top: 2.5em;
}

h2 {
    font-size: var(--fs-2);
	-ms-hyphens: none;
	-webkit-hyphens: none;
	hyphens: none;
	line-height: 1.3;
    margin-bottom: 1em;
}

h1 + h2 {
    margin-top: 0;
	margin-bottom: 2em;
}

h2 + h3,
h2 + h4 {
    margin-top: 1em;
}

h3 {
    : var(--fs-3);
}

h4,
h5,
h6 {
	font-size: var(--fs-4);
	font-weight: 400;
}

h4 {
    margin-bottom: .2em;
    margin-top: 1.5em;
}

h5,
h6 {
    margin-bottom: 0;
    margin-top: 1.25em;
}

.site-content h1 a,
.site-content h2 a,
.site-content h3 a,
.site-content h4 a,
.site-content h5 a,
.site-content h6 a,
.site-content h1 a:hover,
.site-content h2 a:hover,
.site-content h3 a:hover,
.site-content h4 a:hover,
.site-content h5 a:hover,
.site-content h6 a:hover,
.site-content h1 a:visited,
.site-content h2 a:visited,
.site-content h3 a:visited,
.site-content h4 a:visited,
.site-content h5 a:visited,
.site-content h6 a:visited {
    background: transparent;
    border-bottom: none;
    color: var(--color-main);
    text-decoration: none;
}

p,
ul,
ol {
  font-size: var(--fs-base);
  line-height: 1.4;
  margin: 0 0 1.5em;
  width: 100%;
}

p:empty {
    display: none;
}

strong {
    color: var(--color-main);
    font-family: "Bree", Arial, sans-serif;
	font-weight: 400;
}

em {
    font-family: "Bree", Arial, sans-serif;
    font-style: italic;
}

ul,
ol,
dl,
menu {
    margin-left: 0;
    padding-left: 0;
}

ul li,
ol li {
    padding-bottom: .5em;
    padding-left: 1.2em;
}

ul li ul,
ol li ol,
ul li ol,
ol li ul {
	margin-bottom: 0;
	padding-bottom: 0;
	padding-top: .5em;
}

.site-content ul li::before {
	/* achtung: die farbe muss der einfachheit halber direkt im svg gesetzt werden */	
	content: '';
    display: inline-block;
    height: 14px;
    width: 8px;
    background-image: url('icons/icon-bullet-circle.svg');
    background-size: contain;
    background-repeat: no-repeat;
	background-position: 0 4px;
    margin-right: .6em;
    margin-left: -1.1em;
}
	
ol {
    list-style-position: inside;
}
    
ol li {
    text-indent: -1.2em;
    margin-left: .8em;
}

ul li {
    list-style-type: none;
}

dt {
    font-style: bold;
}

dd {
    font-style: italic;
    margin-left: 0;
    padding-left: 0;
}

sup {
    font-size: .65em;
}

address {
    font-style: normal;
}

table {
    border-collapse: collapse;
    border-spacing: 5px;
    color: #333;
    margin: 1em 0;
}

tr:nth-child(odd) {
    /* background-color: #ececec; */
}

tr:nth-child(even) {
    /* background-color: #fafafa; */
}

td,
th {
    border-top: 1px solid var(--color-text-light);
    padding-left: 0;
    text-align: left;
    vertical-align: top;
}

td {
    border-right: 0.5em solid #fff;
    padding: .3em .5em;
}

tr:last-of-type {
	border-bottom: 1px solid var(--color-text-light);
}

th {
    border-right: 0.3125em solid #fff;
    color: #333;
    padding: .2em .5em;
}
    
th.sub {
    font-weight: normal;
}

th.left,
td.left {
    padding-left: .625em;
    text-align: left;
}

fieldset {
    background-color: #fff;
}

legend {
    padding-top: 2em;
}

form label {
    cursor: pointer;
    display: block;
    margin: 1.25em 0 -0.625em;
}

textarea,
input,
select {
    font-size: var(--fs-base);
    background: #fff;
    border: #ccc solid 1px;
    border-radius: .4em;
    box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.3);
    color: #333;
    font-family: "Bree", Arial, sans-serif;
	font-weight: 400;
    padding: .15em .3em .05em;
}

input#reset,
input#submit {
    background: none;
    margin: 1.25em 1.25em 0 0;
    width: auto;
}

select {
    font-size: var(--fs-base);
    padding: .3em 0 .3em .5em;
}

optgroup {
    font-style: normal;
}

input[type="radio"],
input[type="checkbox"] {
    margin-right: .3125em;
}

img {
    font-size: var(--fs-xs);
    border: none;
    float: left;
    margin: .3125em 0 1.5625em;
    max-width: 100%;
    height: auto;
}

abbr[title] {
/*     cursor: help; */
    display: inline-block;
    line-height: 1;
    padding-bottom: 1px;
    text-decoration: none;
}

a,
a strong {
    border-bottom: 1px solid transparent);
    color: var(--color-link);
    -webkit-hyphens: none;
    -ms-hyphens: none;
	font-weight: 300;
    hyphens: none;
    line-height: 1;
    text-decoration: none;
/*     transition: all 0.3s ease-in-out; */
}
    
a:visited,
a:hover,
a:active {
	border-bottom: none;
	text-decoration: none;
}

a:visited,
a:visited strong {
	border-bottom: 1px solid var(--color-link);
	color: var(--color-link);
}
    
a:hover {
	border-bottom: 1px solid var(--color-text);
	color: var(--color-text);
}

a:active {
	
}

a[href^="clockto:"] {
    
}

a[href^="tel:"] {
    
}

a.thumb,
a.inline {
    display: inline;
}

a.svg-item:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

a.svg-item {
    border-bottom: none;
}

a:has(img) {
	border-bottom: none;
}

/* anker-links etwas verschieben, um verdecken durch fixed header zu vermeiden */
:target:before {
	content: "";
	display: block;
	height: 100px;
	margin: -100px 0 0;
}

::-moz-selection {
    background: #fdecd9;
    /* Auswahlfarbe Safari */
}

::selection {
    background: #fdecd9
};
    /* Auswahlfarbe Safari */
}

::-moz-selection {
    background: #fdecd9
};
    /* Auswahlfarbe Firefox */
}

.icon-alone {
    display: inline-block;
}

a.icon-alone:hover,
a.icon-alone:hover {
    border-bottom: none;
}

object {
    width: 100%;
}



/* ========================================================================== */
/* ! CUSTOM CLASSES ---------------------------------------- */
/* ========================================================================== */

/* kd wp-classes */
.kd-kein-abstand-oben,
.alignfull.kd-kein-abstand-oben,
.wp-block-group.kd-kein-abstand-oben
.wp-block-columns.kd-kein-abstand-oben {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.wp-block-image.kd-abstand-unten,
.kd-abstand-unten {
	margin-bottom: 3rem;
}

.kd-abstand-unten-gross {
	margin-bottom: 6rem;
}

.kd-kein-abstand-unten {
	margin-bottom: 0;
}

.kd-engerer-abstand-unten {
	margin-bottom: .3125em;
}

.kd-abstand-oben-gross {
	margin-top: 8rem;
}

.wp-block-image.kd-abstand-unten-gross,
.kd-abstand-unten-gross {
	margin-bottom: 8rem;
}

.kd-abstand-innen {
	padding: 6rem;
}

.kd-abstand-innen-gross {
	padding: 12rem;
}

.kd-keine-trennungen {
	display: inline-block;
	-ms-hyphens: none;
	-webkit-hyphens: none;
	hyphens: none;
}

.kd-trennungen {
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.kd-einzug {
	padding-left: 50px;
}

.kd-text-gross {
	font-size: var(--fs-4);
}

.kd-text-klein {
	font-size: var(--fs-xs);
}

p.kd-linkbutton {
	background-color: var(--color-bg-3);
	border-radius: .5em;
	padding: .5em 1em;
	width: fit-content !important;
}

p:has(+ p.kd-linkbutton) {
	margin-bottom: 1em;
}

/* block mit css in zwei spalten geteilt */
p.kd-aufgeteilt,
ul.kd-aufgeteilt {
	column-count: 2;
	column-gap: 60px; /* margin-right von .wp-block-column * 2 */
	margin-bottom: 4rem;
}

/* liste mit großem text, block mit css in zwei spalten geteilt */
ul.kd-liste-gross {
	column-count: 3;
	column-gap: 60px; /* margin-right von .wp-block-column * 2 */
	font-size: var(--fs-3);
	margin-bottom: 1rem;
}


    
/* ========================================================================== */
/* ! HEADER ---------------------------------------- */
/* ========================================================================== */

/* !Wrapper-Lösung für Sticky Footer bei wenig Content -------------------- */

.wrapper {
	min-height: 100vH;
    display: flex;
    flex-direction: column;
}

.site-header,
.site-footer {
	/* flex-shrink: 0;
	flex-grow: 0; */
}

.site-header {
	background-color: var(--color-negative);
}

.site-header .container {
	position: relative;
}

.site-content {
	flex: 1;
}
/* Ende Wrapper-Lösung für Sticky Footer bei wenig Content -------------------- */

.site-header .row {
    position: relative;
}

.logo {
	clip-path: rect(0 300px 150px 0);
	position: absolute;
	top: 50px;
	left: 0;
	transition: all 0.3s ease-in-out;
	z-index: 1000;
}

.logo svg {
	transition: all 0.3s ease-in-out;
	margin: 0;
	width: 300px;
}

/* sticky header */
.site-header.sticky {
	position: fixed;
	
	background-color: var(--color-negative);
	box-shadow: 0px 15px 15px rgba(0, 0, 0, 0.3);
	height: 90px; 
	transition: all 0.3s ease-in-out;
}

.site-header.sticky .logo {
	clip-path: rect(0 200px 70px 0);
	top: 10px;
	z-index: 1500;
}

.site-header.sticky .logo svg {	
	width: 200px;
	height: 100px;
}




/* ========================================================================== */
/* ! NAVIGATION ---------------------------------------- */
/* ========================================================================== */

/* smartphone-menu */
/* menu icon, wird dynamisch per js eingefügt */
#menu-icon {
    display: none;
}

ul.widget {
    margin-top: 0;
}

/* main navigation */
.nav-wrap {
    position: absolute;
    top: 120px;
    right: 0;
    transition: top 0.3s ease-in-out;
	z-index: 1100;
}

.nav-wrap ul {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.2;
    margin: 0;
}

ul.nav > li {
    display: inline-block;
    float: left;
    padding: .5em .75em;
    position: relative;
}

ul.nav li:before {
	background-image: none;
	content: '';
	display: none;
}

ul.nav a {
    border-bottom: 1px solid transparent;
    color: var(--color-link);
	font-weight: 300;
	padding-bottom: 3px;
    transition: all 0.2s ease-in-out;
}

ul.nav > li > a {
	
}

ul.nav > li:last-of-type > a {
    padding-right: 0;
}

.nav-main a:focus,
.nav-main .current-page-item > a,
.nav-main .current-page-ancestor > a {
    /* color: var(--color-link); */
}

.nav-main li:hover > a,
.nav-main .current-page-item > a:hover,
.nav-main .current-page-ancestor > a:hover {
    border-bottom: 1px solid var(--color-link);
    /* color: var(--color-link); */
}



.nav-main .current-menu-item > a,
.nav-main .current-page-ancestor > a {
	border-bottom: 1px solid var(--color-link);
}

.nav-main .current-menu-item > a:hover,
.nav-main .current-page-ancestor > a:hover,
ul.nav a:hover {
    border-bottom: 1px solid var(--color-link);
}

.sub-menu {
    position: absolute;
	top: 2.1em;
	left: -1em;
	
	background-color: var(--color-bg-2);
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.2);
    border-radius: 3px;
    opacity: 0;
    padding-top: .5em;
	padding-bottom: .7em;
    visibility: hidden;
    width: 200px;
    z-index: -1;
}

ul.nav li:hover .sub-menu {
    opacity: 1;
    pointer-events: all;
    visibility: visible;
    z-index: 1;
}

.sub-menu li {
    padding: .65em 1.5em;
}

.sub-menu li a {
    color: var(--color-main);
    letter-spacing: unset;
	padding: 0;
	text-transform: unset;
}

/* sticky header */
.site-header.sticky .nav-wrap {
	top: 30px;
}


/* !breadcrumb ---------------------------------------- */
.breadcrumb {
	margin-bottom: 1em;
}

.breadcrumb p {
	font-size: var(--fs-xs);
	color: var(--color-breadcrumb);
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	margin-bottom: .5em;
}

.breadcrumb span {
	color: var(--color-breadcrumb);
	font-size: var(--fs-xs);
}

.site-content .breadcrumb a {
	border-bottom: 1px solid #fff;
	color: var(--color-breadcrumb);
	padding-bottom: .05em;
}

.site-content .breadcrumb a:hover {
	border-bottom: 1px solid var(--color-breadcrumb);
}

.site-content .breadcrumb .current {
	color: var(--color-breadcrumb);
}

span.separator {
	margin-left: .2em;
	margin-right: .2em;
}

span.separator::before {
	font-size: var(--fs-base);
	content: '›'; 
	color: var(--color-breadcrumb);
}



/* ========================================================================== */
/* ! CONTENT ---------------------------------------- */
/* ========================================================================== */

/* layout allgemein  ------------------------------------------------------- */
.container-main {
	margin-top: 0;
	position: relative;
}

article {
    margin-bottom: 4em;
    width: 100%;
}


/* spalten ------------------------------------------------------- */   
.wp-block-group {
	display: flex;
}

.wp-block-group,
.wp-block-columns {
	margin-top: 6rem;
	margin-bottom: 6rem;
}

/* überschreiben der standard-abstände zwischen spalten */
:where(.wp-block-columns.is-layout-flex) {
	gap: 4em;
}

.wp-block-group__inner-container {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
}

.wp-block-columns {
	width: 100%;
}

.wp-block-columns.mittig {
	align-items: center;
}

.wp-block-column h1:first-of-type {
	margin-top: 0;
}

h2 + .wp-block-columns {
	margin-top: 2em;
}

h2 + .wp-block-group .wp-block-group__inner-container .wp-block-columns {
	margin-top: 0;
}

.wp-block-group h2:first-of-type {
	margin-top: 0;
	width: 100%;
}

.wp-block-column:not(:last-child) {
	margin-right: 30px;
}

.wp-block-column:nth-child(2n+1) {
	margin-right: 30px;
}

.wp-block-column:not(:first-child), 
.wp-block-column:nth-child(2n) {
	margin-left: 30px;
}

.wp-block-column:last-child {
	margin-right: 0;
}

.wp-block-column p:last-child {
	margin-bottom: 0;
}



/* wp flex ausschalten  ------------------------------------------------------- */
.no-flex .wp-block-group__inner-container {
	display: block;
}


/* text  ------------------------------------------------------- */
body.home h1 {
	text-wrap: balance;
}

body.home figure.kd-bild-feste-groesse {
	margin-left: -50px;
	transform: scale(1.2);
}

.kd-introtext {
	font-size: var(--fs-3);
}

.kd-text-klein {
	font-size: var(--fs-s);
}

.kd-text-blau {
	color: var(--color-main);
}

h3 + .wp-block-columns {
	margin-top: 1.5em;
}

.site-content p {
	/* -webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto; */
}

.site-content a {
	border-bottom: 1px solid transparent;
}

.site-content a:hover {
	color: var(--color-link-hover);
	border-bottom: 1px solid var(--color-link-hover);
}

.site-content figure a,
.site-content figure a:hover,
.site-content figure a:active {
	border-bottom: none;
}

p.mehr {
	margin-top: -.5em;
}

.kd-vertikal-mittig {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.kd-vertikal-mittig .wp-block-group .wp-block-group__inner-container {
	flex-direction: column;
}

.kd-spalte-schmaler {
	padding-right: 6rem;
}

.wp-block-column > h2,
.wp-block-column > h3 {
	margin-top: 2rem;
}

.wp-block-column > h4,
.wp-block-column > h5,
.wp-block-column > h6 {
	margin-top: 1rem;
}

.wp-block-column > h2:first-child,
.wp-block-column > h3:first-child,
.wp-block-column > h4:first-child,
.wp-block-column > h5:first-child,
.wp-block-column > h6:first-child {
	margin-top: 0;
}

/* blockquote */
.wp-block-quote {
	padding: 0;
	width: 100%;
}

.wp-block-quote p {
	color: var(--color-main);
	font-family: "Bree", Arial, sans-serif;
	font-style: italic;
	font-weight: 300;
	font-size: var(--fs-3);
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	line-height: 1.4;
	margin-bottom: .5em;
}

.wp-block-quote cite {
	font-size: var(--fs-s);
	line-height: 1.4;
}

blockquote.wp-block-quote {
	border: none;
	margin: 2em 0;
}

blockquote {
	position: relative;
}

.kd-zitat-block .wp-block-group__inner-container {
	justify-content: center;
}

.kd-zitat-block blockquote {
	margin-top: 1em;
}

.kd-zitat-block > * {
	text-align: center;
}

.kd-zitat-block h3 {
	margin-bottom: 0;
}

.kd-zitat-block p {
	font-size: var(--fs-1);
	line-height: 1.3;
}

.wp-block-pullquote p {
	font-size: var(--fs-3);
	line-height: 1.5;
	margin-bottom: .7em;
}

/* tabellen */
.wp-block-table table {
	color: var(--color-text);
	font-size: var(--fs-base);
}

.wp-block-table td, 
.wp-block-table th {
	background-color: transparent;
	border-top: 1px solid var(--color-main);
	border-bottom: 1px solid var(--color-main);
	border-left: unset;
	border-right: unset;
}

.wp-block-table td strong {
	color: var(--color-main);
}

.wp-block-table td:first-of-type {
	padding-left: 0;
}

.wp-block-table tr {
	
}

.wp-block-table tr:nth-child(2n) {
	/* background-color: #fafafa; */
}

.wp-block-table tr:nth-child(2n+1) {
	/* background-color: var(--color-bg-1); */
}

h2 + .wp-block-table table,
h3 + .wp-block-table table {
	margin-top: 7px;
}

.kd-tabelle-sprechzeiten {
	width: 400px;
}

.kd-tabelle-sprechzeiten td:first-of-type {
	width: 70px;
}




/* links  ------------------------------------------------------- */
/* .link-text a {
	border-bottom: 1px solid transparent;
	color: var(--color-text);
}

.link-text a:hover {
	border-bottom: 1px solid var(--color-text);
	color: var(--color-text);
} */



/* listen  ------------------------------------------------------- */
ul.kd-linkliste li {
	padding-left: 0;
	padding-bottom: .5em;
}

ul.kd-linkliste li::before {
	background-image: none;
}

ul.kd-linkliste li a::before {
	content: '» ';
}

ul.kd-liste-kleinbuchstaben {
	list-style-type: lower-latin;
}

ol.kd-farbnummern {
	list-style: none;
	counter-reset: my-counter;
}

ol {
	list-style-position: outside;
}

ol li {
  padding-left: .3em;
  margin-left: 1em;
  text-indent: 0;
}

ol.kd-farbnummern li {
	counter-increment: my-counter;
}
ol.kd-farbnummern li::before {
	content: counter(my-counter) ". ";
	color: var(--color-main);
	font-family: "Bree", Arial, sans-serif;
	font-weight: 400;
}



/* buttons ------------------------------------------------------- */
.wp-block-buttons {
	/* betrifft den gesamten block, den wp um den button herum erstellt, in gesamt-layout-breite */
	margin-bottom: 1.5em;
}

/* der eigentliche button */
a.wp-block-button__link {
	background-color: var(--color-link);
	border-radius: .5em;
	color: var(--color-negative);
	font-size: var(--fs-base);
	font-weight: 500;
	padding: .5em 1.3em;
	transition: all 0.2s ease-in-out;
}

a.wp-block-button__link:hover {
	background-color: var(--color-link-hover);
	border-bottom: 1px solid transparent;
	color: var(--color-negative);
}

a.wp-block-button__link:active,
a.wp-block-button__link:focus {
	color: var(--color-negative);
}

.kd-button-gross a.wp-block-button__link {
	font-size: var(--fs-3);
	padding: .65em 1.3em;
}

.kd-button-klein a.wp-block-button__link {
	font-size: var(--fs-s);
	padding: .5em 1em;
}

.kd-button-telefon a {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1em;
}

.kd-button-telefon a::before {
	/* achtung: die farbe muss der einfachheit halber direkt im svg gesetzt werden */	
	background-image: url('icons/icon-phone.svg');
	background-position: left bottom;
	background-size: contain;
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	height: 27px;
	width: 27px;
	margin-right: 10px;
	margin-top: 0;
	vertical-align: middle;
}

.kd-kontakt-inhalt .kd-abstand-innen {
	padding: 4rem 5% 4rem 20%;
}

.kd-kontakt-inhalt .wp-block-group__inner-container {
	flex-direction: column;
}



/* bilder ------------------------------------------------------- */
.kd-bild-nach-ueberschrift {
	margin-top: 6rem;
}

.wp-block-image .alignleft,
.main-with-sidebar .wp-block-image .alignleft {
    float: left;
    margin-right: 1.875em;
}

.wp-block-image .alignright,
.main-with-sidebar .wp-block-image .alignright {
    float: right;
    margin-left: 1.875em;
}

.wp-block-image {
	position: relative;
	margin-bottom: 1em;
}

.wp-block-image.kd-abstand-unten {
	margin-bottom: 2.5em;
}

.wp-block-image.kd-engerer-abstand-unten {
	margin-bottom: 1em;
}

.wp-block-image.kd-bild-feste-groesse {
	max-width: 420px;
}

.wp-block-image img {
	float: none;
	margin-bottom: 0;
}

.wp-block-image figcaption {
	color: var(--color-text);
	font-size: var(--fs-xs);
	line-height: 1.4; 
	margin-top: .3em;
	margin-bottom: 2.5em;
	padding: 0;
	text-align: left;
	width: 100%;
}

.wp-block-image.alignwide img {
	margin-left: 0;
	width: 100%;
}

.wp-block-image.size-full.kd-stretched img {
	max-width: unset;
	min-width: 100%;
}

.wp-block-image.kd-bild-kleiner img {
	width: 70%;
}

.wp-block-image.kd-logo-kleiner {
	text-align: center;
}

.wp-block-image.kd-logo-kleiner img {
	width: 60%;
}

/* weite und volle breite */
.alignfull {
	margin: 8rem calc(50% - 50vw); /* auf mac funktioniert das bestens */
	max-width: 100vw;
	width: 100vw;
}

.alignwide {
	margin-left: -100px;
	margin-right: -100px;
	max-width: calc( 100% + 200px);
}

/* cover image */
.wp-block-cover.alignwide, 
.wp-block-cover-image.alignwide {
	width: calc(100% + 200px);
}

.wp-block-cover__inner-container p {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 0;
} /* beschriftung stylen */


/* galerie ------------------------------------------------------- */
.wp-block-gallery {
	gap: 3rem !important;
}

.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
	width: calc(33.33% - 3rem * .66667);
}

.wp-block-gallery.has-nested-images figure.wp-block-image{ 
	flex-grow: 0; 
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	background: transparent;
	bottom: -33px;
	color: var(--color-text);
	font-size: var(--fs-xs);
	left: 0;
	margin-bottom: 0;
	max-height: 60%;
	overflow: auto;
	padding: 0 8px 8px;
	position: absolute;
	text-align: center;
	width: 100%;
}

/* galerie-plugin lightbox for gallery & image block (erweitert nur die normale wp-galerie um scrollbare lightbox) ------------------------------------------------------- */
#baguetteBox-slider img {
	float: none;
}

/* galerie-plugin simple lightbox ------------------------------------------------------- */
/* #slb_viewer_wrap .slb_theme_slb_default .slb_data_title, 
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-family: "Bree", Arial, sans-serif !important;
  font-weight: 300 !important;
  font-size: 1.1875rem !important;
  font-style: normal !important;
  margin-right: 1em !important;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
	font-size: .875rem !important;
	margin-right: 0 !important;
}

#slb_viewer_wrap .slb_theme_slb_baseline .slb_data_title {
	display: none !important;
} */


/* accordion blocks plugin ------------------------------------------------------- */
.wp-block-group__inner-container:has(.c-accordion__item) {
	display: block;
}

.c-accordion__title {
	border-top: 1px solid var(--color-text-light);
	color: var(--color-main);
	margin-top: 1em;
	padding-top: .4em;
}

.c-accordion__title::after {
	color: var(--color-link);
	font-size: 125%;
	font-weight: 400;
}

.c-accordion__content p {
	font-size: var(--fs-4);
}

.wp-block-pb-accordion-item:last-of-type {
	margin-bottom: 3rem;
}


/* highlight */
.wp-block-group.kd-highlight {
	background-color: var(--color-bg-1);
	border: 1px solid var(--color-link);
	border-radius: 10px;
	margin: 1rem 0;
}

.wp-block-group.kd-highlight .wp-block-group__inner-container > :first-child {
	margin-top: 0;	
}

.wp-block-group.kd-highlight .wp-block-group__inner-container > :last-child {
	margin-bottom: 0;	
}

.wp-block-group.kd-highlight .wp-block-group__inner-container {
	padding: 1.5em 2em;
}



/* ========================================================================== */
/* ! KD-Blöcke ---------------------------------------- */
/* ========================================================================== */

/* wordpress 6.5 reset */
/* body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto !important;
  margin-right: auto !important;
} */

body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.kd-inhalt-schmaler)) {
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* kd-3-spalten-flexibel ------------------------------------------------------- */
.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-columns {
	flex-wrap: wrap !important;
}

.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column {
	flex-basis: 29%;
	margin-bottom: 2em;
	margin-right: 3%;
	margin-left: 0;
}

.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column:nth-of-type(3n) {
	margin-right: 0;
}

.wp-block-group.kd-3-spalten-flexibel h2,
.wp-block-group.kd-3-spalten-flexibel h3 {
	margin-bottom: .4em;
}

.wp-block-group.kd-3-spalten-flexibel p {
	margin-bottom: .7em;
}

.wp-block-group.kd-3-spalten-flexibel p:last-of-type {
	margin-bottom: 0;
}


/* kd-3-spalten-grid ------------------------------------------------------- */
.wp-block-group.kd-3-spalten-grid {
	display: block;
	margin-top: 3em;
	margin-bottom: 3em;
}

.wp-block-group.kd-3-spalten-grid > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 3rem;
}

.wp-block-group.kd-3-spalten-grid .wp-block-group__inner-container {
	justify-content: flex-start;
	flex-direction: column;
}

.wp-block-group.kd-3-spalten-grid .wp-block-group__inner-container .wp-block-group {
	flex-direction: column;
}

.wp-block-group.kd-3-spalten-grid .wp-block-group,
.wp-block-group.kd-3-spalten-grid .wp-block-column {
	flex-direction: column;
	margin-top: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.wp-block-group.kd-3-spalten-grid .wp-block-group > :first-child,
.wp-block-group.kd-3-spalten-grid .wp-block-group .wp-block-group__inner-container > :first-child,
.wp-block-group.kd-3-spalten-grid .wp-block-column > :first-child,
.wp-block-group.kd-3-spalten-grid .wp-block-column .wp-block-group__inner-container > :first-child {
	margin-top: 0;
}

.wp-block-group.kd-3-spalten-grid .wp-block-group,
.wp-block-group.kd-3-spalten-grid .wp-block-group > :last-child,
.wp-block-group.kd-3-spalten-grid .wp-block-group .wp-block-group__inner-container > :last-child,
.wp-block-group.kd-3-spalten-grid .wp-block-column > :last-child,
.wp-block-group.kd-3-spalten-grid .wp-block-column .wp-block-group__inner-container > :last-child {
	margin-bottom: 0;
}

.wp-block-group.kd-3-spalten-grid h3 {
	margin-top: 2rem;
}

.wp-block-group.kd-3-spalten-grid .wp-block-image {
	margin-bottom: 0;
}


/* kd-4-spalten ------------------------------------------------------- */
.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 60px;
}

.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten .wp-block-column:not(:last-child) {
  margin-right: 0;
}

.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten .wp-block-column:not(:first-child), .wp-block-column:nth-child(2n) {
  margin-left: 0;
}

.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten .wp-block-column + .wp-block-column {
	margin-top: 0;
}


/* kd-hellrot ------------------------------------------------------- */

article > .alignfull.kd-hellrot:first-of-type  {
	margin-top: 0;
}

article > .alignfull.kd-hellrot:last-of-type  {
	margin-bottom: 0;
}

.kd-hellrot .wp-block-group__inner-container {
	margin: 6rem auto;
	width: 80rem;
}

.kd-hellrot .wp-block-group__inner-container > :first-child {
	margin-top: 0;
}

.kd-hellrot .wp-block-group__inner-container > :last-child {
	margin-bottom: 0;
}

.kd-hellrot .wp-block-group__inner-container .wp-block-group__inner-container {
	margin: 0;
}

.kd-hellrot .wp-block-group__inner-container h1 {
	margin-top: 0;
}

.kd-hellrot .wp-block-columns {
	margin: 2em 0 2em;
}


/* kd-hellrot */
.kd-hellrot {
	background-color: var(--color-bg-1);
}


/* kd-ganze-breite-halbiert ------------------------------------------------------- */
.kd-ganze-breite-halbiert :where(.wp-block-columns.is-layout-flex) {
	gap: 0 !important;
}

.kd-ganze-breite-halbiert .wp-block-group__inner-container,
.kd-ganze-breite-halbiert.kd-hellrot .wp-block-group__inner-container {
	margin: 0;
	width: 100%;
}

.kd-ganze-breite-halbiert .wp-block-group__inner-container .wp-block-columns,
.kd-ganze-breite-halbiert .wp-block-group__inner-container .wp-block-image,
.kd-ganze-breite-halbiert .wp-block-group__inner-container .wp-block-columns img,
.kd-ganze-breite-halbiert .wp-block-column {
	margin: 0 !important;
}

.kd-ganze-breite-halbiert .wp-block-column {
	flex-basis: 50%;
	width: 50%;
}

.kd-ganze-breite-halbiert .wp-block-group__inner-container .wp-block-columns figure {
	display: flex;
	width: 100%;
	height: 100%;
}

.kd-ganze-breite-halbiert .wp-block-group__inner-container .wp-block-columns figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/* kd-bild-ganze-breite ------------------------------------------------------- */
.kd-bild-ganze-breite.alignfull {
	margin-top: 0;
	margin-bottom: 0;
}

.kd-bild-ganze-breite .wp-block-group__inner-container figure {
	width: 100%;
	max-height: 100%;
	aspect-ratio: initial;
}

.kd-bild-ganze-breite .wp-block-group__inner-container img {
	margin: 0 !important;
	width: 100vw;
	max-height: 100%;
	object-fit: cover;
}

article:last-child:has(.kd-bild-ganze-breite) {
	margin-bottom: -80px;
	
}


/* kd-hero-text */
.kd-bild-ganze-breite.kd-hero-text figure.wp-block-image {
	margin-bottom: 0;
}

.kd-bild-ganze-breite.kd-hero-text {
	position: relative;	
}

.kd-bild-ganze-breite.kd-hero-text .kd-hero-text-banner {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin-top: 0;
	margin-bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
}

.kd-bild-ganze-breite.kd-hero-text .kd-hero-text-banner .wp-block-group__inner-container {
	justify-content: center;
}
	
.kd-bild-ganze-breite.kd-hero-text h1 {	
	background-color: rgb(0, 112, 187, .8);
	color: var(--color-negative);
	font-weight: 200;
	font-size: 32px;
	font-size: clamp(1.25rem, 5vw - 1rem, 3.25rem); /* Min value (20px) ends at 720 px. Max value (52px) starts at 1440 px. */
	margin: 0 auto;
	padding: 2rem 3rem;
	text-align: center;
}


/* kd-inhalt-schmaler ------------------------------------------------------- */
.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container .wp-block-columns,
.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container,
.wp-block-columns.kd-inhalt-schmaler,
.wp-block-gallery.kd-inhalt-schmaler {
	margin-left: auto;
	margin-right: auto;
	width: 75%;
}

.kd-inhalt-schmaler table {
	width: 75%;
}

.wp-block-group__inner-container:has(.kd-inhalt-schmaler) {
	justify-content: center;
}


.kd-hellrot h1 + .wp-block-columns,
.kd-hellrot h2 + .wp-block-columns {
	margin-top: 0;
}


/* kd-highlight (gruppe kd-highlight innnerhalb gruppe kd-inhalt-schmaler) ------------------------------------------------------- */
.wp-block-group.kd-inhalt-schmaler .wp-block-group.kd-highlight .wp-block-group__inner-container {
	width: 100%;
}


/* kd-rechtstext ------------------------------------------------------- */
.kd-rechtstext p,
.kd-rechtstext ul,
.kd-rechtstext ol {
	font-size: var(--fs-s);
	margin-bottom: 1em
}

.kd-rechtstext h2 {
	font-size: var(--fs-3);
	margin-bottom: .5em;
}

.kd-rechtstext h3 {
	font-size: var(--fs-4);
}


/* ========================================================================== */
/* ! WORDPRESS Plugins --------------------------------------------------- */
/* ========================================================================== */




/* ========================================================================== */
/* ! FOOTER ---------------------------------------- */
/* ========================================================================== */

.site-footer {
	flex: 0 0 auto;
	margin-top: 5em;
	position: relative;
	
	background-image: url('https://www.tierarzt-praxis-falkensee.de/wp-content/themes/tierarztpraxis-falkensee-2025/images/signet-bottom-line.svg');
	background-position: bottom 50px center;
	background-repeat: no-repeat;
	background-size: contain;
}

.site-footer .container {
	padding: 0 0 3em;
	position: relative;
	z-index: 10;
}

.site-footer .row {
	display: grid;
	gap: 1em;
	grid-template-columns: 3fr 1fr 1fr;
	word-break: break-word;
}

@media only screen and (max-width: 67rem) {
	.site-footer .row {
		grid-template-columns: 1fr 1fr;
	}
	
	.site-footer .row .footer-box:first-of-type {
		grid-column: span 2;
	}
}

@media only screen and (max-width: 40rem) {
	.site-footer .row {
		grid-template-columns: 1fr;
		gap: 0;
	}
	
	.site-footer .row .footer-box:first-of-type {
		grid-column: unset;
	}
}

.site-footer h3,
.site-footer p,
.site-footer ul {
    font-size: 1.0625rem;
	font-weight: 300;
    color: var(--color-negative);
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
	letter-spacing: 0.05em;
    line-height: 1.5;
}

.site-footer h3 {
	font-size: 1.25rem;
	font-weight: 500;
	margin-bottom: .5em;
	margin-top: 0;
	text-transform: uppercase;
}

.site-footer p {
	margin-bottom: .7em;
}

.site-footer strong {
	color: var(--color-negative);
	font-family: "Bree", Arial, sans-serif;
	font-weight: 400;
}

.site-footer ul.widget li {
	padding-left: 0;
}

.site-footer ul.widget li:before {
	content: '';
	display: none;
}

.site-footer ul.menu li {
	padding-left: 0;
}

.site-footer ul.menu li:before {
	content: '';
	display: none;
}

.site-footer p.small {
    font-size: 15px;
    font-size: 0.9375rem;
}

.site-footer ul {
    margin-top: 0;
}

.site-footer .wp-block-table table {
	color: var(--color-negative);
	font-size: 1rem;
	margin: 0;
	width: auto;
}

.site-footer .wp-block-table table td,
.site-footer .wp-block-table table th {
	background-color: transparent;
	border: unset;
	padding: .13em 2em .13em 0;
	width: fit-content;
}

.site-footer .wp-block-table table tr:first-of-type td {
	padding-top: 0;
}

.site-footer .wp-block-table tr,
.site-footer .wp-block-table tr:nth-child(2n) {
	background-color: transparent;
}

.site-footer .wp-block-table tr:last-of-type {
	border-bottom: none;
}

.site-footer a {
    border-bottom: 1px solid transparent;
    color: var(--color-negative);
/*     transition: all 0.3s ease-in-out; */
}

.site-footer a:hover {
    border-bottom: 1px solid var(--color-negative);
    color: var(--color-negative);
}

/* .site-footer ul.menu a::before {
	content: '› ';
} */

.site-footer strong a {
	color: var(--color-negative);
}

a[href^="tel:"] {
/* 	border-bottom: 1px solid #fff; */
}

a.to-top {
    cursor: pointer;
    display: block;
    margin-bottom: 1em;
    position: absolute;
    top: -60px;
	right: 0;
}

.site-footer a.to-top {
    font-size: 20px;
    font-size: 1.25rem;
    height: 40px;
    width: 40px;
}

a.to-top:link,
a.to-top:visited,
a.to-top:hover,
a.to-top:active {
    border-bottom: none;
}

a.to-top.icon svg {
	/* fill: var(--color-negative);
	width: 25px; */
}

a.to-top.icon svg:hover {
	/* fill: var(--color-negative); */
}



/* ========================================================================== */
/* ! RESPONSIVENESS 88 rem / 1408 px ---------------------------------------- */
/* ========================================================================== */

/* ab hier verändern sich die container flexibel */
@media only screen and (max-width: 88rem) {
    
    /* h1, h2 {color: blue;} */
    /* h1::after {content: '....';} */
	/* h2::after {content: '....';} */
	    
    
    /* header -------------------------- */
    .site-header .container,
	.site-content .container,
	.site-footer .container {
	    width: 86%;
	}

	
	/* content -------------------------- */	
	/* .wp-block-columns {
		margin-top: 4em;
	} */
	
	.alignwide {
		margin-right: 0;
		margin-left: 0;
		max-width: 100%;
	}
	
	.wp-block-image.size-full.kd-stretched img {
		max-width: 100%;
		min-width: unset;
	}
	
	.kd-spalte-schmaler {
		padding-right: 3rem;
	}
	
	
	/* kd-3-spalten-flexibel ------------------------------------------------------- */
	.kd-3-spalten-flexibel .wp-block-group__inner-container {
		width: 100%;
	}
	
	/* kd-hellrot ------------------------------------------------------- */
	.kd-hellrot .wp-block-group__inner-container {
		width: 86%;
	}
	
	/* kd-bild-ganze-breite ------------------------------------------------------- */
	
	/* kd-inhalt-schmaler ------------------------------------------------------- */
	.wp-block-group__inner-container .wp-block-columns.kd-inhalt-schmaler {
		width: 100%;
	}
	
	
	/* kd-block-logos ------------------------------------------------------- */
	.kd-logos .wp-block-group__inner-container {
		width: 86%;
	}
	
	.kd-logos .wp-block-group__inner-container {
		width: 86%;
	}
	
	.kd-logogrid .wp-block-group__inner-container {
		gap: 60px 6%;
	}

	
	/* text -------------------------- */

		
    
}
    


/* ========================================================================== */
/* ! RESPONSIVENESS 75 rem / 1200 px ---------------------------------------- */
/* ========================================================================== */

@media only screen and (max-width: 75rem) {
    
    /* h1, h2 {color: green;} */
    /* h1::after {content: '...';} */
	/* h2::after {content: '...';} */
    
    
    /* layout allgemein -------------------------- */
    .container-main {
	    width: 84.5%;
	}

	.site-header {
		height: 190px;
	}
	
	.logo {
		clip-path: rect(0 250px 140px 0);
		position: absolute;
		top: 40px;
		left: 0;
		transition: all 0.3s ease-in-out;
		z-index: 1500;
	}
	
	.logo svg {
		transition: all 0.3s ease-in-out;
		margin: 0;
		width: 250px;
	}
	
	/* sticky header */

	
	.nav-wrap {
		top: 102px;
	}
	
    
    /* open state */
    /* font-size für input-felder auf 16px setzen > verhindert skalieren auf dem iphone */
    input[type="color"],
    input[type="date"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="eclock"],
    input[type="month"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="text"],
    input[type="time"],
    input[type="url"],
    input[type="week"],
    select:focus,
    textarea {
        font-size: 16px;
	}
	
	
	/* spalten ------------------------------------------------------- */   	
	.wp-block-group,
	.wp-block-columns {
		margin-top: 5rem;
		margin-bottom: 5rem;
	}
	
   
    /* content -------------------------- */
    .main {
        flex-wrap: wrap;
	}
	
	.home h1 + h2 {
		width: 100%;
	}
	
	.wp-block-column {
		flex-basis: 47%;
	}
	
	.kd-pfeil a::before {
		content: url('icons/icon-arrow-right.svg');
		display: inline-block;
		margin-right: 5px;
		padding-bottom: 8px;
		transform: scale(0.6);
		vertical-align: baseline;
	}
	
	.kd-text-gross.kd-pfeil a::before {
		content: url('icons/icon-arrow-right.svg');
		display: inline-block;
		margin-right: 6px;
		transform: scale(0.75);
		vertical-align: baseline;
	}
	
	.kd-spalte-schmaler {
		padding-right: 1.5rem;
	}
	
	
	
	/* kd-3-spalten-flexibel ------------------------------------------------------- */
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column {
		flex-basis: 43%;
		margin-bottom: 2em;
		margin-right: 7%;
	}
	
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column:nth-of-type(3n) {
		margin-right: unset;
	}
	
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column:nth-of-type(3n) {
		margin-right: 7%;
	}
	
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column:nth-of-type(2n) {
		margin-right: 0;
	}
	
	/* kd-hellrot ------------------------------------------------------- */
	.alignfull.kd-hellrot .wp-block-columns {
		flex-wrap: wrap !important;
	}
	
	/* stellenangebote */
	.wp-block-group.kd-hellrot.kd-inhalt-schmaler .wp-block-group__inner-container {
		margin: 0;
		padding: 2em;
	}
	
	.wp-block-group.kd-hellrot.kd-inhalt-schmaler .wp-block-group__inner-container h3 {
		margin-top: 0;
	}
	
	
	
	/* kd-bild-ganze-breite ------------------------------------------------------- */
	
	/* kd-inhalt-schmaler ------------------------------------------------------- */
	.wp-block-group.kd-inhalt-schmaler {
		/* width: 100%; */
	}
	
	.kd-hellrot.kd-inhalt-schmaler .wp-block-group__inner-container {
		width: 100%;
	}
	
	.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container .wp-block-columns {
		width: 75%;
	}
	
	.wp-block-columns.kd-inhalt-schmaler {
		width: 100%;
	}
	
	/* kd-block-logos ------------------------------------------------------- */
	.kd-logogrid .wp-block-group__inner-container {
		grid-template-columns: repeat(3, 1fr);
		gap: 50px 8%;
	}
	
	
    /* footer -------------------------- */		
	
	
}



/* ========================================================================== */
/* ! RESPONSIVENESS 67 rem / 1072 px ---------------------------------------- */
/* ========================================================================== */

/* einspaltig */
@media only screen and (max-width: 67rem) {
    
    /* h1, h2 {color: red;} */
    /* h1::after {content: '..';} */
	/* h2::after {content: '..';} */
    
    
    /* layout allgemein -------------------------- */	
	.container-main {
		width: 90%;
	}
	
	body.home .site-content {
		margin-top: 180px;
	}
	
	body.site .site-content {
		margin-top: 160px;
	}
	
	.container .wp-block-columns {
		flex-wrap: wrap;
	}
	
	.container .wp-block-column {
    	flex-basis: 100% !important;
	}
	
	.wp-block-column {
		margin-bottom: 0;
	}
	
	.wp-block-column:nth-child(2n+1) {
		margin-right: 0;
	}
	
	.wp-block-columns {
		flex-wrap: wrap !important; 
	}
	
	.wp-block-columns .wp-block-column {
		margin-bottom: 1rem;
	}
	
	/* spalten ------------------------------------------------------- */   	
	.wp-block-group,
	.wp-block-columns {
		margin-top: 4rem;
		margin-bottom: 4rem;
	}
	
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child) {
		flex-basis: 100% !important;
	}
	
	.wp-block-column:not(:first-child) {
		margin-left: 0;
	}
	
	.wp-block-column ul li,
	.wp-block-column ol li {
		padding-bottom: .7em;
	}
	
	.alignwide {
		margin-left: 0;
		margin-right: 0;
		max-width: 100%;
	}
	
	.kd-einzug {
		padding-left: 0;
	}
	
	.kd-abstand-innen {
		padding: 4rem 7%;
	}
    
    
    /* header -------------------------- */    
    .site-header {
		height: 130px;
	}
	
	.logo {
		top: 20px;
	}
	
	/* sticky header */
	
	
	.site-header.sticky + .site-content {
		margin-top: 180px;
	}
	
	
	/* mobile navigation -------------------------- */
	#menu-icon {
		cursor: pointer;
		display: block;
		/* show menu icon */
		font-size: 1.2em;
		margin-top: -3px;
		padding: 0;
		text-align: right;
		width: 100%;
	}
	
	#menu-icon svg {
		stroke: var(--color-link);
	}
	
	#menu-icon:hover,
	#menu-icon.active {
		background: transparent;
	}
	
	#menu-icon.active svg {
	  fill: var(--color-main);
	}
	
	#menu-icon:hover svg {
		/* fill: var(--color-main); */
	}
	
	#menu-icon span {
		pointer-events: none;
	}
	
	.nav-main {
		box-shadow: 0px 25px 25px rgba(0, 0, 0, 0.3);
		border-radius: 5px;
		display: none;
		/* menu-icon-function: visibility will be toggled with jquery */
		float: none;
		margin-top: .3em;
	}
	
	.nav-wrap {
		position: absolute;
		right: 0;
		top: 85px;
		
		padding: 0;
		width: 50%;        
	}
	
	ul.nav {
		background-color: var(--color-negative);
		border-radius: 5px;
		display: block;
		float: none;
		margin-top: 0;
		padding: .2em 1.4em;
		position: relative;
		z-index: 1000;
	}
	
	ul.nav > li {
		border-top: 1px solid var(--color-link);
		display: block;
		float: none;
		margin-left: 0;
		padding: 1em;
	}
	
	ul.nav li:first-child {
		border-top: none;
	}
	
	ul.nav > li > a {
		color: var(--color-link);
		padding: 0;
	}
		
	.nav-main .current-menu-item > a, 
	.nav-main .current-page-ancestor > a, 
	.nav-main .current-menu-item > a:hover, 
	.nav-main .current-page-ancestor > a:hover {
		border-bottom: 1px solid transparent;
		color: var(--color-main);
		font-family: "Bree", Arial, sans-serif;
		font-weight: 400;
	
	}
	
	.nav-main li:hover > a, 
	.nav-main .current-page-item > a:hover, 
	.nav-main .current-page-ancestor > a:hover {
		border-bottom: 1px solid transparent;
		color: var(--color-main);
	}
	
	.nav-main a:focus, 
	.nav-main .current-page-item > a, 
	.nav-main .current-page-ancestor > a {
		color: var(--color-main);
	}
	
	.sub-menu {
		position: relative;
		top: 10px;
		
		box-shadow: none;
		margin: 0;
		opacity: 1;
		padding: .2em 0 .2em 1.2em;
		width: auto;
		z-index: 1;
	}
	
	ul.nav .sub-menu li:first-child {
		border-top: 1px solid rgba(255, 255, 255, 0.5);
	}
	
	.sub-menu li {
		border-top: 1px solid rgba(255, 255, 255, 0.5);
		padding: .5em 0 .5em 1em;
	}
	
	.sub-menu li a {
		padding: 0;
	}
	
	.sub-menu li a::before {
		/* content: '› '; */
	}
	
	/* open/close icon */
	/* ul.nav > li > a.mobile-toggle::before {
		background-image: url('icons/icon-down.svg');
		background-size: contain;
		background-repeat: no-repeat;
		content: '';
		display: inline-block;
		height: 20px;
		position: absolute;
		top: 18px;
		right: 0;
		width: 20px;
	}
	
	ul.nav > li.sub-menu-open > a.mobile-toggle::before {
		background-image: url('icons/icon-up.svg');
	} */
	
	/* hide submenu */
	/* .sub-menu {
		display: none !important;
		visibility: hidden !important;
	} */
	
	/* show submenu */
	/* .menu-item-has-children .sub-menu.visible {
		display: block !important;
		visibility: visible !important;
	} */
	/* ende mobile navigation */
	
        
    /* content -------------------------- */ 
    .site.home h1 {
	    margin-top: 1em;
	}
	
	h2 {
		margin-bottom: .5em;
	}
	
	h3 {
		margin-bottom: .2em;
	}
	
	table {
		width: 100%;
	}
	
	body.home figure.kd-bild-feste-groesse {
		margin-left: 0;
		transform: scale(1);
	}
	
	.kd-spalte-schmaler {
		padding-right: 0;
	}
	
	.wp-block-column > h2, 
	.wp-block-column > h3, 
	.wp-block-column > h4, 
	.wp-block-column > h5, 
	.wp-block-column > h6 {
		margin-top: 1.5em;
	}
	
	.wp-block-column:first-of-type h2:first-of-type,
	.wp-block-column:first-of-type h3:first-of-type,
	.wp-block-column:first-of-type h4:first-of-type {
		margin-top: 0;
	}
	
	.wp-block-column > h2:first-child, 
	.wp-block-column > h3:first-child,
	.wp-block-column > h4:first-child,
	.wp-block-column > h5:first-child,
	.wp-block-column > h6:first-child {
		margin-top: 3rem;
	}
	
	.wp-block-column + .wp-block-column {
		margin-top: 1.5rem;
	}
	
	.wp-block-group {
		/* margin-top: 0; */
		margin-top: 6rem;
		margin-bottom: 6rem;
	}
	
	:where(.wp-block-columns.is-layout-flex) {
		gap: 0 !important;
	}
	
	
	/* galerie ------------------------------------------------------- */
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
	  width: calc(50% - 3rem * .66667);
	}
	
	
	/* kd-3-spalten-flexibel ------------------------------------------------------- */
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column {
		flex-basis: 100%;
		margin-bottom: 1em;
	}
	
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column,
	.wp-block-group.kd-3-spalten-flexibel .wp-block-group__inner-container .wp-block-column:nth-of-type(3n) {
		margin-right: 0;
	}
	
	/* kd-3-spalten-grid ------------------------------------------------------- */	
	.wp-block-group.kd-3-spalten-grid > .wp-block-group__inner-container {
		grid-template-columns: 1fr 1fr;
		gap: 3rem;
	}
	
	
	/* kd-4-spalten ------------------------------------------------------- */
	.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten {
		grid-template-columns: 1fr 1fr;
		gap: 60px !important;
	}
	
	/* kd-hellrot ------------------------------------------------------- */
	.kd-hellrot .wp-block-group__inner-container .wp-block-group__inner-container {
	  width: 100%;
	}
	
	/* kd-bild-ganze-breite ------------------------------------------------------- */
	
	/* kd-inhalt-schmaler ------------------------------------------------------- */
	.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container .wp-block-columns,
	.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container,
	.wp-block-group.kd-inhalt-schmaler .wp-block-group__inner-container > h2,
	.wp-block-columns.kd-inhalt-schmaler,
	.wp-block-gallery.kd-inhalt-schmaler {
		width: 100%;
	}
	
	.kd-inhalt-schmaler table {
		width: 50%;
	}
	
	body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		width: 100%;
	}
	
	.wp-block-group.kd-hellrot .kd-inhalt-schmaler {
		margin-left: auto;
		margin-right: auto;
		width: 86%;
	}
	
	.kd-hellrot .wp-block-group__inner-container {
		margin: 4rem auto;
	}
	
	/* kd-block-logos ------------------------------------------------------- */
	.kd-logogrid .wp-block-group__inner-container {
		grid-template-columns: repeat(2, 1fr);
		gap: 50px 12%;
	}
	
	.kd-kontakt-inhalt .kd-abstand-innen {
	  padding: 4rem 7% 0;
	}
	
	/* kd wp-classes */
	p.kd-aufgeteilt,
	ul.kd-aufgeteilt {
		column-count: 1;
		column-gap: 0;
		margin-bottom: 2em;
	}
	
	
	/* text -------------------------- */
	
	.kd-bild-nach-ueberschrift {
		margin-top: 4rem;
	}
	
	/* buttons */
    .button-klein a.wp-block-button__link {
	  font-size: var(--fs-base);
	}
    
	
    /* footer -------------------------- */
	.site-footer {
		background-size: 180%;
		padding-top: 6rem;
	}
	
	.site-footer .container {
		padding: 0 0 6em;
	}
	
	
	/* liste mit großem text, block mit css in zwei spalten geteilt */
	ul.kd-liste-gross {
		column-count: 2;
		column-gap: 60px; /* margin-right von .wp-block-column * 2 */
	}
	
}



/* ========================================================================== */
/* ! RESPONSIVENESS 40 rem / 640 px ---------------------------------------- */
/* ========================================================================== */

/* einspaltig, iPhone6 */
@media only screen and (max-width: 40rem) {

    /* h1, h2 {color: black;} */
    /* h1::after {content: '.';} */
	/* h2::after {content: '.';} */
    
	
	/* layout allgemein -------------------------- */
    .container {
        margin-right: 7%;
        margin-left: 7%;
	}
	
	.container-main {
		width: 86%;
	}
	
	body.home .site-content {
	  margin-top: 100px;
	}
	
	body.site .site-content {
	  margin-top: 100px;
	}
	
	.wp-block-image .alignleft,
	.main-with-sidebar .wp-block-image .alignleft {
		float: none;
		margin-right: 0;
	}
	
	.wp-block-image .alignright,
	.main-with-sidebar .wp-block-image .alignright {
		float: none;
		margin-left: 0;
	}

	.wp-block-group, 
	.wp-block-columns {
		margin-top: 3rem;
		margin-bottom: 3rem;
	}
	
	.alignfull {
		margin: 4rem calc(50% - 50vw);
	}
	
		
	
	/* header -------------------------- */	
	.site-header {
		height: 100px;
	}
	
	.logo {
		clip-path: rect(0 250px 70px 0);
		position: absolute;
		top: 15px;
		left: 0;
		transition: all 0.3s ease-in-out;
		z-index: 1500;
	}
	
	.logo svg {
		transition: all 0.3s ease-in-out;
		margin: 0;
		width: 200px;
		height: 100px;
	}
	
	/* sticky header */
	.site-header.sticky {
		position: fixed;
		
		background-color: var(--color-negative);
		box-shadow: 0px 15px 15px rgba(0, 0, 0, 0.3);
		height: 100px; 
		transition: all 0.3s ease-in-out;
	}
	
	.site-header.sticky .logo {
		clip-path: rect(0 250px 70px 0);
		top: 15px;
		z-index: 1500;
	}
	
	.site-header.sticky .logo svg {	
		width: 200px;
		height: 100px;
	}
	
	.site-header.sticky + .site-content {
		margin-top: 100px;
	}
	

	.nav-wrap,
	.site-header.sticky .nav-wrap {
		top: 55px;
		width: 100%;
	}	
	
	
	
	/* content -------------------------- */
	.site-content {
		margin-top: 50px;
	}
	
	
	/* sorgt dafür, dass ein bild auch auf iphones die ganze breite ausfüllt */
	html {
		width: -webkit-fill-available;
	}
	
	/* galerie */
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
		width: 100%;
	}
	
	
	/* highlight */
	.wp-block-group.kd-highlight .wp-block-group__inner-container {
		padding: 1em 1.5em;
	}
	
	/* kd-3-spalten-flexibel ------------------------------------------------------- */
	
	/* kd-3-spalten-grid ------------------------------------------------------- */
	.wp-block-group.kd-3-spalten-grid > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}
	
	/* kd-4-spalten ------------------------------------------------------- */
	
	/* kd-hellrot ------------------------------------------------------- */
	.kd-hellrot .wp-block-group__inner-container {
		margin: 2.5rem auto;
	}
	
	/* kd-bild-ganze-breite ------------------------------------------------------- */
	.kd-bild-ganze-breite.kd-hero-text h1 {	
		background-color: rgb(0, 112, 187, .8);
		font-size: 1.5rem;
		padding: .5rem 1rem;
		width: 86%;
	}
	
	/* kd-inhalt-schmaler ------------------------------------------------------- */
	.kd-inhalt-schmaler table {
		width: 100%;
	}
	
	

	/* text -------------------------- */
	h1 + .wp-block-columns .wp-block-column:first-of-type h2:first-of-type {
		margin-top: 2em;
	}
	
	h3,
	p,
	ul,
	ol {
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	
	h1,
	h2 {
		/* word-break: break-all; */
	}
	
	h1 {
		line-height: 1.2;
	}
	
	ul.kd-linkliste li {
		padding-bottom: 1em;
	}
	
	strong,
	a {
		-ms-hyphens: none;
		-webkit-hyphens: none;
		hyphens: none;
	}
	
	.breadcrumb {
		margin-bottom: .75em;
	}
	
	.breadcrumb p,
	.breadcrumb a,
	.breadcrumb .current {
		line-height: 1.3;
	}
	
	table {
		word-break: break-word;
	}
	
	.wp-block-table td, 
	.wp-block-table th {
		padding: .5em 0 .5em .7em;
	}
	
	.wp-block-table td:first-of-type {
	  padding-left: 0;
	}
	
	
	/* bilder */
	.kd-bild-nach-ueberschrift {
		margin-top: 3rem;
	}
	
	
	.kd-tabelle-sprechzeiten {
		width: auto;
	}
	
	.kd-tabelle-sprechzeiten td:first-of-type {
		width: 70px;
	}
	
	/* liste mit großem text, block mit css in zwei spalten geteilt */
	ul.kd-liste-gross {
		column-count: 1;
		column-gap: 0;
	}
	

	/* footer -------------------------- */
	.site-footer {
		background-size: 300%;
		padding: 6rem 0 4rem;
	}
	
	.site-footer h3 {
		margin-bottom: 0;
	}
	
	.site-footer ul li {
		padding: .5rem 0;
	}
	
	.site-footer .footer-box {
		padding-top: 0;
		margin-bottom: 0;
	}
	
	.site-footer .footer-box:first-of-type {
		margin-bottom: 2rem;
	}
	
	.site-footer ul {
		margin-bottom: 0;
	}
	
	.site-footer .wp-block-table table {
		/* width: 100%; */
	}
	
	.site-footer .wp-block-button {
		padding: 0;
		width: 100%;
	}
	.site-footer .wp-block-button a {
		padding: 1.5em 1em;
		width: 100%;
	}
	
	a.to-top {
		top: -60px;
	}

}




/* ========================================================================== */
/* ! RESPONSIVENESS 27 rem / 432 px ---------------------------------------- */
/* ========================================================================== */

/* für porträtfotos */
@media only screen and (max-width: 27rem) {
	
	/* h1, h2 {color: orange;} */
	/* h1::after {content: '-';} */
	/* h2::after {content: '-';} */
	
	.logo svg {
		width: 95%;
	}
	
	.site-header .logo svg, .site-header.sticky .logo svg {
		width: 95%;
	}
	
	.wp-block-group, 
	.wp-block-columns {
		margin-top: 4rem;
		margin-bottom: 4rem;
	}
	
	
	/* kd-4-spalten ------------------------------------------------------- */
	.wp-block-columns:not(.is-not-stacked-on-mobile).kd-4-spalten {
		grid-template-columns: 1fr;
	}
	
}



/* ========================================================================== */
/* ! RESPONSIVENESS 22.5 rem / 360 px ---------------------------------------- */
/* ========================================================================== */

/* einspaltig, Samsung*/
@media only screen and (max-width: 22.5rem) {

    /* h1, h2 {color: purple;} */
    /* h1::after {content: '--';} */
	/* h2::after {content: '--';} */
	
	/* stellenangebote */
	.wp-block-group.kd-hellrot.kd-inhalt-schmaler .wp-block-group__inner-container {
		padding:1em;
	}
	
	.kd-tabelle-sprechzeiten td:first-of-type {
		width: auto;
	}
	
    
}



/* ========================================================================== */
/* ! PRINT STYLES ---------------------------------------- */
/* ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
	}
	
    pre,
    blockquote {
        border: 1px solid #000;
        page-break-inside: avoid;
	}
	
    tr,
    img {
        page-break-inside: avoid;
	}
	
    img {
        max-width: 100% !important;
	}
	
    @page {
        margin: 0.5cm;
	}
	
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
	}
	
    h2,
    h3 {
        page-break-after: avoid;
	}
    /* !eigene print-styles */
}

