/*
Theme Name: TV Lemgo (2024)
Theme URI: https://wordpress.org/themes/twentytwentyfour
Author: Kaeding Anderson + the WordPress team
Author URI: https://wordpress.org
Description: Theme für TV Lemgo (2024). 
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: rp

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* #################################################################################################### */

/* variables & colors */

:root {
	--primary: #d72d22;
	--secondary: #303b7c;
	--red: #d72d22;
	--redhover: #b6261d;
	--blue: #303b7c;
	--bluehover: #252e60;
	--darkblue: #22294f;
	--darkbluehover:#161b34;
	--grey: #f5f5f5;
	--greyhover: #e2e2e2;
	--darkgrey: #eeeeee;
	--darkgreyhover: #dbdbdb;
	--lightgrey: #fafafa;
	--lightgreyhover: #e7e7e7;
	--black: #2e2f33;
	--white: #ffffff;
}

/* #################################################################################################### */

/* cookie plugin */

body.ka-cookies-visible #page {
    margin-bottom: 440px;
}

@media screen and (min-width: 992px) {
    body.ka-cookies-visible #page {
        margin-bottom: 380px;
    }    
}

/* multisite */

#header-brand {
	position: relative;
	font-family: 'Exo 2', sans-serif;
	text-transform: uppercase;
	font-size: 80%;
	font-weight: 400;
	padding: 5px 0;
	width: 100%;
	height: 50px;
	text-align: right
}

#header-brand a {
	color: var(--white);
	text-decoration: none;
}

#header-brand .brand-col {
	display: inline-block;
	border-left: 1px solid #22294F;
	margin: 0 0 0 1rem;
	padding: 0 0 0 2rem;
}

#header-brand .brand-logo img {
	width: 30px;
	height: 40px;
	margin: 0;
}

#header-brand .brand-menu {
	line-height: 40px;
	font-size: 130%
}

#header-brand #brand-nav {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: opacity ease .3s;
}

#header-brand #brand-nav.show {
	opacity: 1;
}

#header-brand .benefit-icon {
	width: 25px;
	height: 30px;
	margin-right: 10px;
}

#header-brand .benefit-icon img {
	width: 25px;
	height: 25px;
	display: block;
	margin-top: 5px;
}

#header-brand .benefit-text {
	text-align: left;
	font-size: 0.8rem;
}


/* #################################################################################################### */

body .is-layout-constrained>.alignextrawide {
	max-width: 100%;
}

/* typo */

body {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
}

.has-intro-font-size {
	font-size: 1.2rem;
	line-height: 1.6;
}

.has-h-1-font-size,
.h1, h1 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: clamp(1.75rem, calc(1.375rem + 1.5vw), 3rem) !important;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	margin-bottom: 0;
}

.has-h-2-font-size,
.h2, h2 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: clamp(1.5rem, calc(1.325rem + .9vw), 2.2rem) !important;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	margin-bottom: 0;
}

.has-h-3-font-size,
.h3, h3 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: clamp(1.3rem, calc(1.3rem + .6vw), 1.8rem) !important;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	margin-bottom: 0;
}

.has-h-4-font-size,
.h4, h4 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: clamp(1.275rem, calc(1.275rem + .3vw), 1.5rem) !important;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0;
}

.has-h-5-font-size,
.h5, h5 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: 1.25rem !important;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0;
}

.has-h-6-font-size,
.h6, h6 {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: 1rem !important;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0;
}

h1 + ul:not([class]), .h1 + ul:not([class]), .has-h-1-font-size + ul:not([class]),
h2 + ul:not([class]), .h2 + ul:not([class]), .has-h-2-font-size + ul:not([class]),
h3 + ul:not([class]), .h3 + ul:not([class]), .has-h-3-font-size + ul:not([class]),
h4 + ul:not([class]), .h4 + ul:not([class]), .has-h-4-font-size + ul:not([class]),
h5 + ul:not([class]), .h5 + ul:not([class]), .has-h-5-font-size + ul:not([class]),
h6 + ul:not([class]), .h6 + ul:not([class]), .has-h-6-font-size + ul:not([class]),
p + ul:not([class]),
p + ol:not([class]) {
	margin-top: 1.5rem;
}

h1 + .wp-block-buttons, .h1 + .wp-block-buttons, .has-h-1-font-size + .wp-block-buttons,
h2 + .wp-block-buttons, .h2 + .wp-block-buttons, .has-h-2-font-size + .wp-block-buttons,
h3 + .wp-block-buttons, .h3 + .wp-block-buttons, .has-h-3-font-size + .wp-block-buttons,
h4 + .wp-block-buttons, .h4 + .wp-block-buttons, .has-h-4-font-size + .wp-block-buttons,
h5 + .wp-block-buttons, .h5 + .wp-block-buttons, .has-h-5-font-size + .wp-block-buttons,
h6 + .wp-block-buttons, .h6 + .wp-block-buttons, .has-h-6-font-size + .wp-block-buttons,
p + .wp-block-buttons {
	margin-top: 1.5rem !important;
}

h1 + .wp-block-table, .h1 + .wp-block-table, .has-h-1-font-size + .wp-block-table,
h2 + .wp-block-table, .h2 + .wp-block-table, .has-h-2-font-size + .wp-block-table,
h3 + .wp-block-table, .h3 + .wp-block-table, .has-h-3-font-size + .wp-block-table,
h4 + .wp-block-table, .h4 + .wp-block-table, .has-h-4-font-size + .wp-block-table,
h5 + .wp-block-table, .h5 + .wp-block-table, .has-h-5-font-size + .wp-block-table,
h6 + .wp-block-table, .h6 + .wp-block-table, .has-h-6-font-size + .wp-block-table {
	margin-top: 1.5rem !important;
}

p + .wp-block-columns {
	margin-top: 1.5rem !important;
}

/* notice */ 

#notice {
	font-family: 'Exo 2', sans-serif;
	font-size: 1rem;
	text-transform: uppercase;
}

/* header */

#header {
	transition: all ease .3s;
	border-bottom: 8px solid rgba(255, 255, 255, .5);
	padding-top: 10px;
}

header.is-sticky {
	box-shadow: 0 3rem 3rem rgba(0, 0, 0, .15) !important;
}

.sticky.is-sticky {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 1000;
	width: 100%;
}

#header .header-content {
	position: relative;
	font-family: "Exo 2", sans-serif;
}

#header a {
	color: var(--white);
}

#header .logo-link {
	width: 50px;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 600;
}

.site-triathlon #header .logo-link,
.site-tevita #header .logo-link {
	width: 106px;
	top: -10px
}

#header .logo {
	width: 50px;
	height: auto;
	transition: all ease .3s;
}

.site-triathlon #header .logo,
.site-tevita #header .logo {
	width: 106px;
}

/* search */

#header .search input {
	background: none;
	border: none;
	outline: none;
	display: inline;
	color: var(--white);
	width: 100px;
	text-transform: uppercase;
}

#header .search input::placeholder {
	text-transform: uppercase;
}

#header .search .button-search {
	background: none;
	border: none;
	appearance: none;
	-webkit-appearance: none;
	color: var(--white);
	opacity: .8;
	transition: opacity .2s;
}

#header .search .button-search:hover {
	opacity: 1;
}

/* nav */

#header #main-nav {
	font-size: 1.1rem;
	text-transform: uppercase;
}

#header #main-nav ul  li {
	position: relative;
}

#header #main-nav ul li a:focus {
	outline: none !important;
}

#header #main-nav ul#main-nav-navbar > li:first-child > a {
	padding-left: 0;
}

#header #main-nav ul#main-nav-navbar > li:last-child > a {
	padding-right: 0;
}

#header #main-nav ul#main-nav-navbar > li:hover:after,
#header #main-nav ul#main-nav-navbar > li.current-menu-item:after,
#header #main-nav ul#main-nav-navbar > li.current-menu-parent:after {
	position: absolute;
	left: -1.5rem;
	content: "";
	width: calc(100% + 3rem);
	height: 8px;
	background: rgba(255, 255, 255, 0.8);
}

#header #main-nav ul#main-nav-navbar > li.current-menu-item > a,
#header #main-nav ul#main-nav-navbar > li.current-menu-parent > a {
	font-weight: 600;
}

#header #main-nav .dropdown:hover > .dropdown-menu {
	display: block;
}

#header #main-nav ul.dropdown-menu {
	background-color: transparent;
	margin-top: 8px;
}

#header #main-nav ul.dropdown-menu > li:hover > a,
#header #main-nav ul.dropdown-menu > li > a:active,
#header #main-nav ul.dropdown-menu > li > a.active,
#header #main-nav ul.dropdown-menu > li.current-menu-item > a {
	color: var(--red);
	background-color: transparent;
	border: 0;
}

#header #main-nav .dropdown-toggle:after {
	display: none;
}

.navbar-toggler,
.navbar-toggler:focus {
	border: none;
	background-color: transparent !important;
	padding: 0;
	margin-bottom: 0.5rem;
}

.navbar-toggler .icon-bar {
	transform: rotate(0deg) translate(0px, 0px);
	transition: ease all .2s;
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 1px;
	background-color: var(--white)
}

.navbar-toggler .icon-bar+.icon-bar {
	margin-top: 4px;
}

.icon-bar:nth-child(2) {
	width: 16px;
	margin-left: 6px;
	transition: ease all .2s;
}

.navbar-toggler:hover .icon-bar:nth-child(2) {
	width: 22px;
	margin-left: 0;
	transition: ease all .2s;
}

.navbar-toggler:active .icon-bar:nth-child(2) {
	width: 22px;
	transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(1) {
	transform: rotate(45deg) translate(5px, 4px);
	transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(2) {
	opacity: 0;
	transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(3) {
	transform: rotate(-45deg) translate(4px, -4px);
	transition: ease all .2s;
}

.navbar-toggler-helper,
.navbar-toggler:active .navbar-toggler-helper {
	font-size: 1.1rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--white);
	margin-left: .5rem;
}

/* Stage */

#stage.stage-slider {
	border-bottom: 8px solid var(--darkblue)
}

#stage.stage-slider:after {
	content: "";
	width: 60%;
	background: var(--red);
	height: 8px;
	display: block;
	position: absolute;
	bottom: -8px;
	z-index: 100;
}

#stage.stage-slider .carousel-item {
	height: 160px;
}

#stage.stage-slider .carousel-item img {
	object-fit: cover;
}

#stage .carousel-caption,
#stage .image-caption {
	position: absolute;
	width: 100%;
	height: auto;
	left: auto;
	right: auto;
	bottom: 0px;
	padding-top: .5rem;
	padding-bottom: .5rem;
	padding-right: var(--wp--style--root--padding-right);
	padding-left: var(--wp--style--root--padding-left);
	background-color: rgba(0, 0, 0, 0.3);
	color: var(--white);
	text-align: left;
}

#stage .carousel-caption .headline,
#stage .image-caption .headline {
	font-family: 'Exo 2', sans-serif;
	font-size: 130%;
	font-weight: 300;
}

#stage .carousel-caption b,
#stage .carousel-caption strong,
#stage .image-caption b,
#stage .image-caption strong {
	font-weight: 700;
}

#stage .stopper {
	font-family: 'Exo 2', sans-serif;
	text-transform: uppercase;
	text-align: center;
	background-color: var(--red);
	color: var(--white);
	border-radius: 50%;
	display: flex;
	flex: 1 0 auto;
	aspect-ratio: 1 / 1;
	align-items: center;
	vertical-align: middle;
	position: absolute;
	right: .5rem;
	bottom: 2.3rem;
	padding: .5rem;
	z-index: 560;
	transform: rotate(10deg);
	max-width: 80px;
	cursor: pointer;
}

.stage-benefits {
	flex-wrap: wrap;
	background: var(--darkblue);
	color: var(--white);
	padding: 1.5rem;
	align-items: center;
}

.stage-benefits a {
	color: var(--white);
	text-decoration: none;
}

.stage-benefits a:hover {
	color: var(--white);
}

.stage-benefits .brand-benefit {
	width: 50%;
	padding: 0.5rem 0 !important;
	text-align: left;
}

.stage-benefits .brand-benefit .benefit-icon img {
	width: 25px;
	height: 25px;
	display: block;
}

.stage-benefits .brand-benefit .benefit-text {
	hyphens: auto;
}

/* footer */

#footer {
	background: var(--darkblue);
	background-image: url(assets/images/bg_blue_line_footer.png);
	background-repeat: no-repeat;
	background-size: 100% 8px;
	background-position: left top;
}

#footer .footer-content:before {
	width: 150px;
	height: 8px;
	background: var(--white);
	display: block;
	content: " ";
	margin: -3rem 0 0 0;
	position: absolute;
}

#footer .footer-content a {
	color: var(--white);
}

#footer .col-contact #footer-nav ul li > a {
	padding-bottom: 0
}

#footer .col-contact #footer-nav ul li:first-child > a {
	padding-left: 0;
}

#footer .col-contact #footer-nav ul li:last-child > a {
	padding-right: 0;
}

#footer .col-youth img {
	width: 150px;
	height: auto;
}

#footer .col-social #footer-social ul li > a {
	padding-left: 0;
	padding-top: .2rem;
	padding-bottom: .2rem;
	font-size: 150%;
}

/* list */

ul:not([class]) {
	list-style-type: none;
	padding-left: 1.5rem;
}

ul:not([class]) li:not([class]):before {
	font-size: 1rem;
	content: "+";
	color: var(--red);
	margin-left: -1.5rem;
	margin-right: 1rem;
}

ol:not([class]) {
	padding-left: 1.5rem;
}

/* quote */

.wp-block-quote {
	color: #666;
	border-left: 2px solid var(--red);
	padding-left: 1rem;
}

.wp-block-quote cite {
	margin-top: 0;
}

/* details */

.wp-block-details {
	padding: .8rem 0;
	border-top: 2px solid var(--red);
	border-bottom: 2px solid var(--red);
}

.wp-block-details ~ .wp-block-details {
	border-top: none;
}

.wp-block-details + .wp-block-details {
	margin-top: 0;
}

.wp-block-details > * {
	font-size: 1rem !important;
}

.wp-block-details > h1, .wp-block-details > .has-h-1-font-size,
.wp-block-details > h2, .wp-block-details > .has-h-2-font-size,
.wp-block-details > h3, .wp-block-details > .has-h-3-font-size,
.wp-block-details > h4, .wp-block-details > .has-h-4-font-size,
.wp-block-details > h5, .wp-block-details > .has-h-5-font-size,
.wp-block-details > h6, .wp-block-details > .has-h-6-font-size {
	font-size: 1.2rem !important;
}

.wp-block-details[open] {
	padding-bottom: 2rem;
}

@keyframes details-show {
	from {
		opacity: 0;
		transform: var(--details-translate, translateY(-0.5em));
	}
}

.wp-block-details[open] > *:not(summary) {
	animation: details-show 300ms ease-in-out;
}

.wp-block-details summary::-webkit-details-marker {
	display: none;
}

.wp-block-details summary {
	display: flex;
	align-items: center;
	font-size: 1.3rem !important;
	color: var(--blue);
}

.wp-block-details summary:after {
	content: "\e82f";
	font-family: "tvlemgo_iconfont";
	margin-left: auto;
	margin-right: .5rem;
	transition: all ease .3s;
}

.wp-block-details[open] summary:after {
	transform: rotate(180deg);
}

/* cover */

.wp-block-cover.alignfull + .wp-block-group.has-background {
	margin-top: 0 !important;
}

/* media text */

.wp-block-media-text.has-text-color h1, .wp-block-media-text.has-text-color .h1, .wp-block-media-text.has-text-color .has-h-1-font-size,
.wp-block-media-text.has-text-color h2, .wp-block-media-text.has-text-color .h2, .wp-block-media-text.has-text-color .has-h-2-font-size,
.wp-block-media-text.has-text-color h3, .wp-block-media-text.has-text-color .h3, .wp-block-media-text.has-text-color .has-h-3-font-size,
.wp-block-media-text.has-text-color h4, .wp-block-media-text.has-text-color .h4, .wp-block-media-text.has-text-color .has-h-4-font-size,
.wp-block-media-text.has-text-color h5, .wp-block-media-text.has-text-color .h5, .wp-block-media-text.has-text-color .has-h-5-font-size,
.wp-block-media-text.has-text-color h6, .wp-block-media-text.has-text-color .h6, .wp-block-media-text.has-text-color .has-h-6-font-size,
.wp-block-media-text.has-text-color a {
	color: inherit !important;
}

/* file */

.wp-block-file {
	clear: both
}

.wp-block-file:before {
	font-family: 'tvlemgo_iconfont';
	content: "\e824";
	font-size: 5rem;
	color: var(--blue);
	margin: 0;
	padding: 0;
	float: left;
	margin-top: -1.2rem;
	margin-right: 1rem;
}

.wp-block-file a:not(.wp-block-file__button) {
	display: block;
}

.wp-block-file a:not(.wp-block-file__button):before {
	content: "Download: ";
	font-weight: 600;
	text-decoration: none;
	color: var(--black);
}

.wp-block-file a.wp-block-file__button {
	display: inline-block;
}

/* button */

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
	color: var(--red) !important;
	border-color: var(--red) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link:not(.has-text-color) {
	color: var(--red) !important;
	border-color: var(--redhover) !important;
	background-color: var(--redhover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background-color) {
	border-color: var(--red) !important;
	background-color: var(--red) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link:not(.has-background-color) {
	color: var(--white) !important;
	border-color: var(--redhover) !important;
	background-color: var(--redhover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-red-color {
	color: var(--red) !important;
	border-color: var(--red) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-red-color {
	color: var(--white) !important;
	border-color: var(--redhover) !important;
	background-color: var(--redhover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-red-background-color {
	border-color: var(--red) !important;
	background-color: var(--red) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-red-background-color {
	border-color: var(--redhover) !important;
	background-color: var(--redhover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-blue-color {
	color: var(--blue) !important;
	border-color: var(--blue) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-blue-color {
	color: var(--white) !important;
	border-color: var(--blueluehover) !important;
	background-color: var(--bluehover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-blue-background-color {
	border-color: var(--blue) !important;
	background-color: var(--blue) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-blue-background-color {
	border-color: var(--bluehover) !important;
	background-color: var(--bluehover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-darkblue-color {
	color: var(--darkblue) !important;
	border-color: var(--darkblue) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-darkblue-color {
	color: var(--white) !important;
	border-color: var(--darkbluehover) !important;
	background-color: var(--darkbluehover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-darkblue-background-color {
	border-color: var(--darkblue) !important;
	background-color: var(--darkblue) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-darkblue-background-color {
	border-color: var(--darkbluehover) !important;
	background-color: var(--darkbluehover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-grey-color {
	color: var(--grey) !important;
	border-color: var(--grey) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-grey-color {
	color: var(--black) !important;
	border-color: var(--greyhover) !important;
	background-color: var(--greyhover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-grey-background-color {
	border-color: var(--grey) !important;
	background-color: var(--grey) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-grey-background-color {
	color: var(--black) !important;
	border-color: var(--greyhover) !important;
	background-color: var(--greyhover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-darkgrey-color {
	color: var(--darkgrey) !important;
	border-color: var(--darkgrey) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-darkgrey-color {
	color: var(--black) !important;
	border-color: var(--darkgreyhover) !important;
	background-color: var(--darkgreyhover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-darkgrey-background-color {
	border-color: var(--darkgrey) !important;
	background-color: var(--darkgrey) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-darkgrey-background-color {
	color: var(--black) !important;
	border-color: var(--darkgreyhover) !important;
	background-color: var(--darkgreyhover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-lightgrey-color {
	color: var(--lightgrey) !important;
	border-color: var(--lightgrey) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-lightgrey-color {
	color: var(--black) !important;
	border-color: var(--lightgreyhover) !important;
	background-color: var(--lightgreyhover) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-lightgrey-background-color {
	border-color: var(--lightgrey) !important;
	background-color: var(--lightgrey) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-lightgrey-background-color {
	color: var(--black) !important;
	border-color: var(--lightgreyhover) !important;
	background-color: var(--lightgreyhover) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-black-color {
	color: var(--black) !important;
	border-color: var(--black) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-black-color {
	color: var(--white) !important;
	border-color: var(--black) !important;
	background-color: var(--black) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-black-background-color {
	border-color: var(--black) !important;
	background-color: var(--black) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-black-background-color {
	color: var(--white) !important;
	border-color: var(--black) !important;
	background-color: var(--black) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link.has-white-color {
	color: var(--white) !important;
	border-color: var(--white) !important;
}
.wp-block-button.is-style-outline:hover .wp-block-button__link.has-white-color {
	color: var(--black) !important;
	border-color: var(--white) !important;
	background-color: var(--white) !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link.has-white-background-color {
	border-color: var(--white) !important;
	background-color: var(--white) !important;
}
.wp-block-button:not(.is-style-outline):hover .wp-block-button__link.has-white-background-color {
	color: var(--black) !important;
	border-color: var(--white) !important;
	background-color: var(--white) !important;
}

/* columns */

.wp-block-columns .wp-block-column > *:first-child {
	margin-top: 0 !important;
}

.wp-block-columns .wp-block-column > *:last-child {
	margin-bottom: 0 !important;
}

/* group */

.wp-block-group.has-text-color h1, .wp-block-group.has-text-color .h1, .wp-block-group.has-text-color .has-h-1-font-size,
.wp-block-group.has-text-color h2, .wp-block-group.has-text-color .h2, .wp-block-group.has-text-color .has-h-2-font-size,
.wp-block-group.has-text-color h3, .wp-block-group.has-text-color .h3, .wp-block-group.has-text-color .has-h-3-font-size,
.wp-block-group.has-text-color h4, .wp-block-group.has-text-color .h4, .wp-block-group.has-text-color .has-h-4-font-size,
.wp-block-group.has-text-color h5, .wp-block-group.has-text-color .h5, .wp-block-group.has-text-color .has-h-5-font-size,
.wp-block-group.has-text-color h6, .wp-block-group.has-text-color .h6, .wp-block-group.has-text-color .has-h-6-font-size,
.wp-block-group.has-text-color a {
	color: inherit !important;
}

.wp-block-group > *:last-child {
	margin-bottom: 0;
}

.wp-block-group.alignfull.has-background + .wp-block-group.has-background,
.wp-block-group.alignwide.has-background + .wp-block-group.has-background,
.wp-block-group.alignfull.has-background + .wp-block-cover {
	margin-top: 0 !important;
}

.wp-block-group.alignfull:not(.has-background) + .wp-block-group.alignfull:not(.has-background) {
	padding-top: 0 !important;
}

/* post */

.wp-block-post {
	transition: all ease .3s;
}

.wp-block-post:hover {
	transition: all ease .3s;
	transform: scale(1.025);
}

.wp-block-post .wp-block-post-date {
	font-size: .875em;
	color: #6c757d !important;
}

.wp-block-post .wp-block-post-title {
	color: var(--blue);
	font-family: 'Exo 2', sans-serif;
	font-size: clamp(1.275rem, calc(1.275rem + .3vw), 1.5rem) !important;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0;
}

.wp-block-post .wp-block-post-excerpt {
	margin: 1rem 0 !important;
}

.wp-block-post .wp-block-post-excerpt__excerpt,
.wp-block-post .wp-block-post-excerpt__more-text {
	display: inline;
}

.wp-block-post .wp-block-post-excerpt__more-link {
	color: var(--blue);
	text-decoration: none;
}

.wp-block-post .wp-block-post-excerpt__more-link:after {
	content: "›";
	margin-left: .5rem;
}

/* sports */

.single-sport .sport-groups .accordion .accordion-button {
	color: var(--white);
	border-color: var(--blueluehover);
	background-color: var(--bluehover);
	padding: 0.5rem 1rem;
	font-size: 1rem;
}

.single-sport .sport-groups .accordion .accordion-button:after {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.single-sport .sport-groups .acf-map {
	width: 100%;
	height: 320px;
	margin: 0;
}

.single-sport .sport-groups .acf-map img {
	max-width: inherit !important;
}

.single-sport .sport-groups .dropdown .dropdown-menu {
	position: relative;
}

.single-sport .sport-groups > hr {
	margin: 4rem 0rem !important;
}

.single-sport .sponsors {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.5rem;
}

.single-sport .sponsors figure {
	flex-basis: 45%;
	margin: 0;
}

.single-sport .sponsors figure img {
	box-sizing: border-box;
	height: auto;
	max-width: 100%;
}

/* form */

.form {
	background: var(--darkgrey);
}

.form legend {
	border: 0;
	margin: 0;
	position: relative;
	padding: 15px;
	display: block !important;
	float: none;
	color: var(--white);
	font-weight: 600;
	font-size: 105%;
	background: var(--red);
	min-width: 125px;
}

.form .form-item {
	padding: 15px 0 15px 12px;
	border-bottom: 1px solid #ddd;
	border-left: 3px solid var(--red);
	min-height: 30px;
}

.form .row-secure {
height: 0;
visibility: hidden;
overflow: hidden;
margin: 0!important;
}

/* WPForms */

.wpforms-container {
	border-left: 3px solid var(--red)!important;
}

.wpforms-field.wpforms-field-content .wpforms-field-row h3,
div.wpforms-container-full .wpforms-form .wpforms-field-divider h3 {
	color: var(--blue)!important;
	font-family: 'Exo 2', sans-serif!important;
	font-size: clamp(1.3rem, calc(1.3rem + .6vw), 1.8rem) !important;
	font-weight: 400!important;
	line-height: 1.2!important;
	text-transform: uppercase!important;
	margin-bottom: 0!important;
}

div.wpforms-container-full .wpforms-form .wpforms-field-divider h3 {
	font-size: clamp(1.275rem, calc(1.275rem + .3vw), 1.5rem) !important;
}

div.wpforms-container.wpforms-container-full .wpforms-form .wpforms-field-repeater .wpforms-field-repeater-display-blocks-buttons[data-button-type="buttons_with_icons"] button {
	background-color: var(--darkblue)!important;
	border-color: var(--darkblue)!important;
	color: var(--white)!important;
	transition: all ease .4s;
	opacity: 1!important;
}

div.wpforms-container.wpforms-container-full .wpforms-form .wpforms-field-repeater .wpforms-field-repeater-display-blocks-buttons[data-button-type="buttons_with_icons"] button:hover {
	background-color: var(--darkbluehover)!important;
	border-color: var(--darkbluehover)!important;
	color: var(--white)!important;
	opacity: 1!important;
}

div.wpforms-container-full input[type=submit]:not(:hover):not(:active), div.wpforms-container-full button[type=submit]:not(:hover):not(:active), div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
	transition: all ease .4s!important;
	background-color: var(--red)!important;
	border-color: var(--red)!important;
}

div.wpforms-container-full input[type=submit]:hover, div.wpforms-container-full input[type=submit]:active, div.wpforms-container-full button[type=submit]:hover, div.wpforms-container-full button[type=submit]:active, div.wpforms-container-full .wpforms-page-button:hover, div.wpforms-container-full .wpforms-page-button:active, .wp-core-ui div.wpforms-container-full input[type=submit]:hover, .wp-core-ui div.wpforms-container-full input[type=submit]:active, .wp-core-ui div.wpforms-container-full button[type=submit]:hover, .wp-core-ui div.wpforms-container-full button[type=submit]:active, .wp-core-ui div.wpforms-container-full .wpforms-page-button:hover, .wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
	background-color: var(--redhover)!important;
	border-color: var(--redhover)!important;
}

div.wpforms-container-full input[type=date]:focus, div.wpforms-container-full input[type=datetime]:focus, div.wpforms-container-full input[type=datetime-local]:focus, div.wpforms-container-full input[type=email]:focus, div.wpforms-container-full input[type=month]:focus, div.wpforms-container-full input[type=number]:focus, div.wpforms-container-full input[type=password]:focus, div.wpforms-container-full input[type=range]:focus, div.wpforms-container-full input[type=search]:focus, div.wpforms-container-full input[type=tel]:focus, div.wpforms-container-full input[type=text]:focus, div.wpforms-container-full input[type=time]:focus, div.wpforms-container-full input[type=url]:focus, div.wpforms-container-full input[type=week]:focus, div.wpforms-container-full select:focus, div.wpforms-container-full textarea:focus, .wp-core-ui div.wpforms-container-full input[type=date]:focus, .wp-core-ui div.wpforms-container-full input[type=datetime]:focus, .wp-core-ui div.wpforms-container-full input[type=datetime-local]:focus, .wp-core-ui div.wpforms-container-full input[type=email]:focus, .wp-core-ui div.wpforms-container-full input[type=month]:focus, .wp-core-ui div.wpforms-container-full input[type=number]:focus, .wp-core-ui div.wpforms-container-full input[type=password]:focus, .wp-core-ui div.wpforms-container-full input[type=range]:focus, .wp-core-ui div.wpforms-container-full input[type=search]:focus, .wp-core-ui div.wpforms-container-full input[type=tel]:focus, .wp-core-ui div.wpforms-container-full input[type=text]:focus, .wp-core-ui div.wpforms-container-full input[type=time]:focus, .wp-core-ui div.wpforms-container-full input[type=url]:focus, .wp-core-ui div.wpforms-container-full input[type=week]:focus, .wp-core-ui div.wpforms-container-full select:focus, .wp-core-ui div.wpforms-container-full textarea:focus {
	border-color: var(--blue)!important;
	box-shadow: 0 0 0 1px var(--blue),0px 1px 2px rgba(0,0,0,0.15)!important;
}

/* pagination */

.pagination {
	white-space: nowrap;
}

.pagination .nav-links {
	display: flex;
}

.pagination .page-numbers {
	width: 25px;
	height: 25px;
	padding: .125rem .5rem;
	display: flex;
	margin-right: .25rem;
	color: var(--black);
	background-color: var(--white);
	text-decoration: none;
	font-size: .9rem;
	justify-content: center;
	align-content: center;
	transition: all ease .3s;
}

.pagination .current,
.pagination .page-numbers:hover {
	background-color: var(--grey);
}

.pagination .next,
.pagination .prev {
	width: auto;
}

/*  utilities */

.hyphens {
	hyphens: auto;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
}

.icon:before,
[class^="icon-"]:before,
[class*=" icon-"]:before {
	padding: 0 !important;
	margin: 0 !important;
}

a,
.wp-block-button__link {
	transition: all ease .3s;
}

a {
	font-weight: 400;
	text-underline-offset: 2px;
}

a:hover {
	color: var(--bluehover);
}

/* Success Hotfix */
.alert.alert-success {
	--bs-alert-bg: #b3ee3d;
	--bs-alert-border-color: rgb(155, 205, 55);
}



/* #################################################################################################### */

/* Small devices (tablets, 768px and less) */
@media (max-width: 768px) {

	/* multisite */

	#header-brand {
		display: none;
	}

	/* header */

	#header {
		height: 60px;
		border-bottom: 4px solid rgba(255, 255, 255, .5);
	}

	.navbar-toggler {
		margin-top: 0.7rem;
		margin-bottom: 0rem;
	}
	
	#main-nav {
		position: absolute;
		background: var(--blue);
		width: 100%;
		height: 0;
		left: 0;
		padding-top: 2rem;
		z-index: 550;
		overflow-x: hidden;
		overflow-y: auto;
	}

	#main-nav.collapsing {
		position: fixed;
		display: block;
		transition: none;
		opacity: 0;
	}

	#main-nav.collapse:not(.show) {
		overflow: hidden;
	}

	#main-nav.show {
		height: 100vh;
		opacity: 1;
		position: fixed;
		top: 50px;
	}

	/* nav */

	#header #main-nav ul:not(.dropdown-menu) > li {
		border-bottom: 1px solid var(--white);
		width: calc(100% + 1.5rem);
		padding: .5rem 1.5rem;
	}

	#header #main-nav ul.dropdown-menu > li > a {
		padding-left: 0;
		padding-right: 0;
	}

	/* typo */

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		hyphenate-limit-chars: 10 5 5;
		-webkit-hyphenate-limit-chars: 10 5 5;
	}

	/* stage */

	#stage .stopper {
		font-size: .5rem;
	}


}


/* #################################################################################################### */

/* Medium devices (tablets, 992px and less) */
@media (max-width: 991.98px) {

}


/* #################################################################################################### */

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

	/* header */

	#header .logo-link {
		width: 85px;
	}

	.site-triathlon #header .logo-link,
	.site-tevita #header .logo-link {
		width: 176px;
	}

	#header .logo {
		width: 85px;
	}

	.site-triathlon #header .logo,
	.site-tevita #header .logo {
		width: 176px;
	}

	/* nav */ 

	#header #main-nav ul.dropdown-menu {
		background-color: var(--bs-dropdown-bg);
		box-shadow: 0 3rem 3rem rgba(0, 0, 0, .15) !important;
		padding: 0.5rem 0 0.625rem 0;
	}

	#header #main-nav ul#main-nav-navbar > li:hover:after,
	#header #main-nav ul#main-nav-navbar > li.current-menu-item:after,
	#header #main-nav ul#main-nav-navbar > li.current-menu-parent:after {
		left: 16px;
		width: calc(100% - 32px);
	}

	#header #main-nav ul#main-nav-navbar > li:first-child:hover:after,
	#header #main-nav ul#main-nav-navbar > li:first-child.current-menu-item:after,
	#header #main-nav ul#main-nav-navbar > li:first-child.current-menu-parent:after {
		left: 0px;
		width: calc(100% - 16px);
	}

	#header #main-nav ul#main-nav-navbar > li:last-child:hover:after,
	#header #main-nav ul#main-nav-navbar > li:last-child.current-menu-item:after,
	#header #main-nav ul#main-nav-navbar > li:last-child.current-menu-parent:after {
		left: 16px;
		width: calc(100% - 16px);
	}

	/* stage */

	#stage.stage-slider .carousel-item {
		height: 600px;
	}

	#stage .carousel-caption,
	#stage .image-caption {
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
	}

	#stage .carousel-caption .headline,
	#stage .image-caption .headline {
		font-size: 250%;
	}

	#stage .carousel-caption .subheadline,
	#stage .image-caption .subheadline {
		font-family: 'Exo 2', sans-serif;
		font-size: 140%;
		font-weight: 400;
	}

	#stage .stopper {
		right: 0rem;
		bottom: 2rem;
		padding: 2rem;
		max-width: 200px;
	}

}


/* #################################################################################################### */

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

}


/* #################################################################################################### */

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

	/* Stage */

	#stage.stage-slider .carousel-item {
		height: 750px;
	}

	#stage .carousel-caption .headline,
	#stage .image-caption .headline {
		font-size: 280%;
	}

}









/* BUGFIX WP */

.wp-block-media-text .wp-block-media-text__content {
	padding: 8%;
}

.wp-block-media-text.has-media-on-the-right:not(.has-background) .wp-block-media-text__content {
	padding-left: 0;
}

.wp-block-media-text:not(.has-media-on-the-right):not(.has-background) .wp-block-media-text__content {
	padding-right: 0;
}

@media (max-width: 600px) {

	/* media text */

	.wp-block-media-text .wp-block-media-text__media {
		margin-bottom: 1rem;
	}

	.wp-block-media-text:not(.has-background) .wp-block-media-text__content {
		padding: 0;
	}

}