/*
Theme Name: TMHS
Theme URI: https://tmhs.nextab.biz
Author: nexTab – Oliver Gehrmann
Author URI: https://nextab.de
Description: Full Site Editing Block Theme für The Mobility House Solutions / Edenred E-Mobility.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 8.1
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tmhs
Tags: block-theme, fse, full-site-editing
*/
:root {
	--tmhs-section-y: var(--wp--preset--spacing--80, clamp(4.5rem, 6vw, 6.5rem));
	--tmhs-header-height: 72px;
}
:where(.wp-site-blocks) > *,
:root :where(.is-layout-constrained):not(section) > * {
	margin-block-start: 0;
}
.wp-block-buttons.is-content-justification-center.is-layout-flex {
	justify-content: center;
	width: 100%;
}
.entry-content > section > *:not(.alignfull, .wp-block-cover__background) {
	margin-left: auto;
	margin-right: auto;
	width: 90%;
}
.entry-content > section.wp-block-cover > img.wp-block-cover__image-background {
	width: 100%;
}
*, *::before, *::after {
	box-sizing: border-box;
}
*:not(dialog) {
	margin: 0;
}
html {
	font-size: 16px;
	scroll-behavior: smooth;
}
body {
	-webkit-font-smoothing: antialiased;
	background-color: var(--wp--preset--color--white, #ffffff);
	font-size: 100%;
	line-height: 1.6;
}
img, picture, video, canvas, svg {
	display: block;
	max-width: 100%;
}
p {
	text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	text-wrap: balance;
}
h1, h2 {
	margin-bottom: var(--wp--preset--spacing--50, 1.5rem);
}
.wp-block-button .wp-element-button,
.wp-block-button.is-style-default-button .wp-element-button {
	background-color: var(--wp--preset--color--primary, #0066ff);
	border: none;
	border-radius: 999px;
	color: var(--wp--preset--color--white, #ffffff);
	cursor: pointer;
	display: inline-block;
	font-family: "Outfit", Arial, sans-serif;
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.7;
	padding: var(--wp--preset--spacing--30, 0.625rem) var(--wp--preset--spacing--50, 1.5rem);
	position: relative;
	text-decoration: none;
	transition: all 300ms ease;
}
.wp-block-button .wp-element-button:hover,
.wp-block-button.is-style-default-button .wp-element-button:hover {
	background-color: var(--wp--preset--color--primary-dark, #0041a3);
}
.wp-block-button.is-style-white-button .wp-element-button {
	background-color: var(--wp--preset--color--white, #ffffff);
	color: var(--wp--preset--color--primary, #0066ff);
}
.wp-block-button.is-style-outline-button .wp-element-button {
	background-color: transparent;
	border: 2px solid var(--wp--preset--color--primary, #0066ff);
	color: var(--wp--preset--color--primary, #0066ff);
}
.wp-block-button.is-style-outline-light-button .wp-element-button {
	background-color: transparent;
	border: 2px solid rgba(255, 255, 255, 0.75);
	color: var(--wp--preset--color--white, #ffffff);
}
.wp-block-post-content {
	max-width: none;
}
.is-style-eyebrow,
.is-style-eyebrow-trenner {
	color: var(--wp--preset--color--muted, #5a5a6e);
	font-family: "Outfit", Arial, sans-serif;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
.is-style-eyebrow-trenner::after {
	background-color: var(--wp--preset--color--primary, #0066ff);
	content: "";
	display: block;
	height: 2px;
	margin-top: var(--wp--preset--spacing--40, 1rem);
	width: 45px;
}
.is-style-eyebrow-trenner.has-text-align-center::after {
	margin-inline: auto;
}
.tmhs-section--navy .is-style-eyebrow,
.tmhs-section--navy .is-style-eyebrow-trenner {
	color: var(--wp--preset--color--text-inverse, #e8e8ee);
}
.tmhs-section {
	padding-block: var(--tmhs-section-y);
}
.tmhs-section--paper {
	background: var(--wp--preset--color--paper, #fafafa);
}
.tmhs-section--canvas {
	background: var(--wp--preset--color--canvas, #f3f3f3);
}
.tmhs-section--navy {
	background: var(--wp--preset--color--black, #000022);
	color: var(--wp--preset--color--text-inverse, #e8e8ee);
	overflow: hidden;
	position: relative;
}
.tmhs-section--navy h1,
.tmhs-section--navy h2,
.tmhs-section--navy h3,
.tmhs-section--navy h4 {
	color: var(--wp--preset--color--white, #ffffff);
}
.tmhs-section--navy a {
	color: var(--wp--preset--color--white, #ffffff);
}
.is-style-tmhs-card,
.is-style-tmhs-step-card,
.is-style-tmhs-quote {
	border: 1px solid var(--wp--preset--color--line, #e4e4e4);
	border-radius: 16px;
	height: 100%;
}
.is-style-tmhs-ref-card {
	border: 1px solid var(--wp--preset--color--line, #e4e4e4);
	border-radius: 16px;
	overflow: hidden;
}
.is-style-tmhs-lozenge {
	max-width: 420px;
}
.is-style-tmhs-lozenge.wp-block-image,
.is-style-tmhs-lozenge figure {
	border-radius: 28px;
	overflow: hidden;
	transform: skewX(-10deg);
}
.is-style-tmhs-lozenge img {
	display: block;
	height: auto;
	object-fit: cover;
	transform: skewX(10deg) scale(1.12);
	width: 100%;
}
.tmhs-page-nav {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0);
	z-index: 20;
}
.tmhs-page-nav a {
	color: var(--wp--preset--color--black, #000022);
	text-decoration: none;
}
.tmhs-page-nav a:hover {
	color: var(--wp--preset--color--primary, #0066ff);
}
.tmhs-header {
	background: var(--wp--preset--color--white, #ffffff);
	border-bottom: 1px solid var(--wp--preset--color--line, #e4e4e4);
	left: 0;
	position: sticky;
	right: 0;
	top: var(--wp-admin--admin-bar--height, 0);
	z-index: 40;
}
.tmhs-header__bar {
	margin: 0 auto;
	max-width: var(--wp--style--global--wide-size, 1180px);
}
.tmhs-header__inner {
	min-height: var(--tmhs-header-height, 72px);
	padding-block: var(--wp--preset--spacing--30, 0.625rem);
}
.tmhs-header__logo a {
	display: flex;
}
.tmhs-header__logo img {
	height: auto;
	width: 180px;
}
.tmhs-header__nav .wp-block-navigation .wp-block-navigation-item__content {
	color: var(--wp--preset--color--black, #000022);
	font-family: "Outfit", Arial, sans-serif;
	font-size: 0.9375rem;
	font-weight: 500;
	text-decoration: none;
}
.tmhs-header__nav .wp-block-navigation .is-style-tmhs-nav-cta .wp-block-navigation-item__content {
	background-color: var(--wp--preset--color--primary, #0066ff);
	border-radius: 999px;
	color: var(--wp--preset--color--white, #ffffff);
	font-weight: 700;
	padding: var(--wp--preset--spacing--30, 0.625rem) var(--wp--preset--spacing--50, 1.5rem);
}
.tmhs-footer a {
	color: var(--wp--preset--color--text-inverse, #e8e8ee);
	text-decoration: none;
}
.tmhs-footer a:hover {
	color: var(--wp--preset--color--white, #ffffff);
}
.tmhs-footer .tmhs-footer__logo img {
	filter: invert(1);
	height: auto;
}
@media (max-width: 782px) {
	.tmhs-header__logo img {
		width: 140px;
	}
}
