	:root {
		--color-text: #000;
		--color-accent: #0b71ff;
		--color-background: #fff265;
		--color-white: #fff;
		--color-gray: #4b4947;
		--gradient: linear-gradient(90deg, #c79966, #dcb368);
		--radius: 10em;
	}

	* {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}
	body {
		font-family: "Outfit", sans-serif;
		font-optical-sizing: auto;
		font-style: normal;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	img {
		height: auto;
		max-width: 100%;
	}
	/* Preserve the declared ratio when height:auto overrides the HTML height.
	   Typed attr() is progressive enhancement; older browsers retain HTML sizing. */
	@supports (aspect-ratio: attr(width type(<number>)) / attr(height type(<number>))) {
		img[width][height] {
			aspect-ratio: attr(width type(<number>)) / attr(height type(<number>));
		}
	}
	img,
	svg {
		vertical-align: middle;
	}
	a {
		color: var(--color-accent);
		text-decoration: none;
	}
	table {
		border-collapse: collapse;
		width: 100%;
	}

	.u-inner {
		max-width: 1440px;
		margin-inline: auto;
		padding-inline: 20px;
	}
	.u-sr-only,
	.wpcf7 .screen-reader-response {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0,0,0,0);
		border: 0;
	}

	.header {
		background-color: var(--color-background);
		border-bottom: 1px solid #ede04b;
		position: sticky;
		top: var(--wp-admin--admin-bar--height, 0);
		z-index: 1000;
		transition: 0.3s transform;
	}
	body:not(.nav-visible) .header.scrolled {
		transform: translateY(-100%);
	}
	.header__inner {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 18px;
	}

	.footer {
		margin-top: 40px;
		border-top: 1px solid #e0ddd9;
		padding-block: 40px;
	}

	.app-store-badges {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px;
	}
	.app-store-badges a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
	.app-store-badges img {
		display: block;
		height: 40px;
		width: auto;
	}
	.half-half__group > .app-store-badges {
		margin-top: 20px;
	}
	.footer__downloads {
		margin-top: 16px;
		font-size: 14px;
	}
	.footer__downloads p {
		margin: 0 0 4px;
		color: var(--color-gray);
	}

	.footer__address {
		font-size: 14px;
		color: #908d8a;
		margin-top: 12px;
	}

	.logo {
		background: url(tenato-logo.svg) 0 0 / 100% 100%;
		width: 90px;
		height: 18px;
		overflow: hidden;
		text-indent: -9999px;
		text-align: left;
		display: inline-block;
		vertical-align: middle;
	}
	.logo--small {
		width: 76px;
		height: 15px;
	}

	.nav__list {
		list-style: none;
		font-weight: 700;
	}
	.nav__link {
		color: inherit;
		display: block;
		padding-block: 16px;
	}

	.hamruger {
		position: relative;
		border: 0;
		background: transparent;
		cursor: pointer;
		width: 60px;
		height: 60px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
	}
	.hamruger__inner,
	.hamruger::before,
	.hamruger::after {
		height: 2px;
		width: 20px;
		border-radius: 10em;
		background-color: #0d52b3;
		display: block;
		transition: 0.3s all;
	}
	.hamruger__inner {
		text-indent: -9999px;
		overflow: hidden;
	}
	.hamruger::before,
	.hamruger::after {
		content: '';
	}

	.vertical-nav__list {
		list-style: none;
	}
	.vertical-nav__link {
		color: inherit;
		display: inline-block;
		padding-block: 10px;
	}

	.main {
		overflow: hidden;
	}

	.section--hero,
	.section--cta {
		background-color: var(--color-background);
	}
	.section--background-yellow {
		background-color: var(--color-background);
	}
	.section--hero-type-simple {
		background-color: var(--color-white);
	}
	.section--hero-type-default.section--hero--negative + .section,
	.section--hero-type-demo.section--hero--negative + .section {
		margin-top: 300px;
	}
	.section--hero-type-background.section--hero--negative + .section {
		margin-top: 200px;
	}
	.section--usp,
	.section--persons,
	.section--highlights,
	.section--half-half,
	.section--faq-type-category,
	.section--features-type-large {
		margin-top: 40px;
		/* border-top: 1px solid #e0ddd9; */
		padding-top: 41px;
		position: relative;
	}

	.section--usp::before,
	.section--persons::before,
	.section--highlights::before,
	.section--half-half::before,
	.section--faq-type-category::before,
	.section--features-type-large::before,
	.section--features-type-default + .section--features-type-default::before {
		content: '';
		background: #e0ddd9;
		max-width: 1400px;
		height: 1px;
		position: absolute;
		top: 0;
		left: 20px;
		right: 20px;
		margin-inline: auto;
	}

	.section--hero + .section--usp,
	/* The carousel already has top padding; a table hero needs no overlap clearance. */
	.section--hero-type-table + .section--features-type-large,
	.section--background-yellow + .section,
	.section--cta + .section,
	.section--no-seaparator {
		margin-top: 0 !important;
		/* border-top: 0 !important;*/
	}
	.section--hero + .section--usp::before,
	.section--hero + .section--features::before,
	.section--background-yellow + .section::before,
	.section--cta + .section::before,
	.section--no-seaparator::before,
	.section--background-yellow::before {
		display: none !important;
	}
	.section__text {
		margin-top: 20px;
	}
	.section__body,
	.section__button {
		margin-top: 20px;
	}
	/*.section--hero + .section--features-type-default {
		padding-top: 40px;
	}*/
	/* Give a demo/poster room before a Default Features block, without
	   changing other hero transitions or spacing between Features blocks. */
	.section--hero-type-demo + .section--features-type-default {
		padding-top: 60px;
	}
	.section--features-type-default + .section--features-type-default {
		margin-top: 50px;
		/* border-top: 1px solid #e0ddd9;*/
		position: relative;
		padding-top: 50px;
	}
	.section--cta {
		margin-top: 40px;
	}
	.section--usp-addon-price .section__inner,
	.section--usp-addon-table .section__inner,
	.section--usp-addon-form .section__inner {
		display: flex;
		gap: 40px;
	}
	.section--usp-addon-price .section__addon,
	.section--usp-addon-form .section__addon {
		flex: 1 0 calc(50% - 60px);
	}

	.cta__main {
		padding-block: 40px;
	}
	.cta--default {
		display: flex;
		align-items: flex-end;
		margin-inline: -40px;
	}
	.cta--default .cta__main {
		padding-inline: 40px;
		flex: 0 0 75%;
		position: relative;
	}
	.cta--default .cta__media {
		flex: 0 0 33.33333%;
		padding-inline: 40px;
	}
	.cta--default .cta__image {
		margin-left: -200px;
		margin-right: -200px;
	}
	.cta--centered {
		text-align: center;
		max-width: 920px;
		margin-inline: auto;
	}

	.cta__text {
		margin-top: 20px;
	}
	.cta__button {
		margin-top: 40px;
	}

	.grid {
		display: flex;
		flex-wrap: wrap;
		margin: -20px -40px;
	}
	.grid--center {
		align-items: center;
	}
	.grid__item {
		padding: 20px 40px;
		width: 33.33333%;
	}
	.grid__item--wide {
		width: 66.66667%;
	}
	.grid--full .grid__item {
		width: 100%;
	}

	.button {
		border-radius: var(--radius);
		background-color: var(--color-accent);
		border: 2px solid var(--color-accent);
		color: var(--color-white);
		display: inline-block;
		font-weight: 700;
		font-family: inherit;
		font-size: 14px;
		padding: 16px 28px;
		cursor: pointer;
		text-align: center;
		line-height: 1;
	}
	.button--arrow {
		display: inline-flex;
		gap: 10px;
		align-items: center;
		padding-right: 18px;
	}
	.button--ghost {
		background-color: transparent;
		color: var(--color-accent);
	}
	.button--medium {
		font-size: 12px;
		padding: 7px 13px;
	}
	.button--small {
		font-size: 12px;
		padding: 6px 12px;
	}
	.button--arrow svg {
		margin-block: -4px;
	}
	.button--small.button--arrow {
		gap: 5px;
	}

	.headline {
		font-weight: 700;
		font-size: 14px;
		text-transform: uppercase;
	}

	.title {
		line-height: 1.1;
		font-weight: 600;
	}
	.title--fat {
		font-weight: 700;
	}
	.title--xsmall {
		font-size: 16px;
	}
	.title--small {
		font-size: 18px;
	}
	.title--medium {
		font-size: 24px;
	}
	.title--large {
		font-size: 36px;
	}
	.title strong {
		font-weight: inherit;
		color: var(--color-accent);
	}

	.static {
		max-width: 920px;
		margin-inline: auto;
	}

	.text {
		line-height: 1.5;
		font-size: 16px;
	}
	.text--large {
		font-size: 18px;
	}
	.text a {
		text-decoration: underline;
	}
	.text > * + * {
		margin-top: 24px;
	}
	.text h2 {
		font-size: 24px;
		line-height: 1.2;
	}
	.text * + h2 {
		margin-top: 48px;
	}
	.text h3 {
		font-size: 18px;
		line-height: 1.2;
	}
	.text h3 + * {
		margin-top: 16px;
	}
	.text ul {
		margin-left: 20px;
	}
	.text li + li {
		margin-top: 12px;
	}

	.usp {
		display: flex;
		gap: 20px;
	}
	.usp__icon {
		padding: 13px;
		border-radius: 50%;
		background-color: var(--color-background);
		width: 80px;
	}
	.usp__check {
		width: 22px;
		flex-shrink: 0;
	}
	.usp__number {
		width: 24px;
		height: 24px;
		border-radius: 50%;
		background-color: var(--color-accent);
		color: var(--color-white);
		text-align: center;
		line-height: 24px;
		font-weight: 700;
		font-size: 14px;
	}
	.usp_head {
		display: flex;
		gap: 8px;
		align-items: center;
	}
	.usp__title {
		color: var(--color-accent);
	}
	.usp__text {
		margin-top: 2px;
		color: var(--color-gray);
	}
	.usp--default .usp__text {
		margin-top: 10px;
	}
	.usp__button {
		margin-top: 5px;
	}

	.highlight {
		position: relative;
		border-radius: 12px;
		padding: 20px 25px;
	}
	.highlight--green {
		background-color: #e5fff5;
	}
	.highlight--blue {
		background-color: #ebf3ff;
	}
	.highlight--yellow {
		background-color: #fffbd3;
	}
	.highlight__icon {
		position: absolute;
		top: -10px;
		right: -10px;
		border-radius: 50%;
		height: 48px;
		width: 48px;
		padding: 12px;
	}
	.highlight--green .highlight__icon {
		background-color: #26d08f;
	}
	.highlight--blue .highlight__icon {
		background-color: #0b71ff;
	}
	.highlight--yellow .highlight__icon {
		background-color: #fff265;
	}
	.highlight__title + .highlight__text {
		margin-top: 5px;
	}
	.highlight__button {
		margin-top: 20px;
	}
	.highlight--small.highlight--green .highlight__title {
		color: #10a970;
	}

	.table {
		background-color: #0b71ff;
		border-radius: 12px;
		color: #fff;
		padding: 60px;
		position: relative;
	}
	.table--usp {
		padding: 40px 60px;
	}
	.table td,
	.table th {
		padding: 20px;
		text-align: left;
		line-height: 1.5;
	}
	.table tr:not(:first-child) td,
	.table--comparison tr td {
		border-top: 1px solid rgba(0,0,0,0.15);
	}
	.table td:first-child,
	.table th:first-child {
		padding-left: 0;
	}
	.table__featured {
		background-color: #0762e1;
	}
	.table__icon {
		background-color: #26D08F;
		position: absolute;
		border-radius: 50%;
		width: 64px;
		height: 64px;
		padding: 8px;
		right: -20px;
		top: -20px;
	}
	.table--small {
		padding: 40px 40px 20px 40px;
	}
	.table--small .table__icon {
		left: auto;
		top: -32px;
		right: 20px;
	}
	.table--small tr:last-child td {
		border-top: 0;
	}
	.table--small .table__featured {
		background-color: #0762e1;
		border-radius: 8px;
		padding: 12px 15px;
		margin: -15px -15px 0 0;
	}
	.table--comparison table {
		margin-block: -80px;
	}
	.table--comparison thead th {
		vertical-align: bottom;
	}
	.table--comparison tbody td {
		vertical-align: top;
	}
	.table--comparison tbody td + td {
		font-weight: 600;
	}
	.table--comparison thead th.table__featured {
		border-radius: 12px 12px 0 0;
		padding-top: 100px;
	}
	.table--comparison tbody tr:last-child td.table__featured {
		border-radius: 0 0 12px 12px;
		padding-bottom: 100px;
	}
	.table--comparison th:first-child,
	.table--comparison td:first-child {
		width: 20%;
	}
	.table__text {
		margin-top: 5px;
	}

	.carousel__toggle {
        appearance: none;
        border: 0;
        background: none;
        color: inherit;
        font: inherit;
        text-align: inherit;
        cursor: pointer;
        width: 100%;
    }
    .carousel__toggle:focus-visible,
    .accordion__expand:focus-visible,
    .js-hamburger:focus-visible {
        outline: 3px solid var(--color-accent);
        outline-offset: 5px;
    }
    .carousel__item {
		padding-block: 20px;
		cursor: pointer;
	}
	.carousel__item + .carousel__item {
		border-top: 1px solid #e0ddd9;
	}
	.carousel__title {
		color: var(--color-accent);
		transition: 0.3s color;
	}
	.carousel__text {
		transition: 0.3s color;
	}
	.carousel__title + .carousel__text {
		margin-top: 24px;
	}
	.carousel__item:not(.is-active) .carousel__title {
		color: #908d8a;
	}
	.carousel__item:not(.is-active) .carousel__text {
		color: var(--color-gray);
	}
	.carousel__image img {
		width: 100%;
	}

	.features:not(.features--large) {
		display: flex;
		gap: 20px;
	}
	.features__button {
		margin-top: 5px;
	}
	.features__group {
		flex: 1 0 1%;
	}
	.features__text {
		color: var(--color-gray);
		margin-top: 10px;
	}


	/* Image sections follow the same reading order in markup and stacked layouts. */
	.features.features--with-image:not(.features--large) {
		display: grid;
		grid-template-areas: "intro" "media" "details" "button";
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}
	.features--with-image .features__intro { grid-area: intro; }
	.features--with-image .features__media { grid-area: media; min-width: 0; }
	.features--with-image .features__details { grid-area: details; min-width: 0; }
	.features--with-image .features__button { grid-area: button; margin-top: 0; }
	.features__image {
		display: block;
		width: 100%;
		height: auto;
	}
	@media (min-width: 1024px) {
		.features.features--with-image:not(.features--large) {
			grid-template-areas: "intro media" "details media" "button media";
			grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
			grid-template-rows: auto auto 1fr;
			column-gap: clamp(32px, 4vw, 64px);
			align-items: start;
		}
	}

	.list {
		list-style: none;
		color: var(--color-gray);
	}
	.list--white {
		color: #fff;
	}
	.list__item {
		display: flex;
		gap: 5px;
	}
	.list__item + .list__item {
		margin-top: 10px;
	}
	.list__icon {
		width: 16px;
		margin-top: -2px;
	}
	.list--half {
		display: flex;
		flex-wrap: wrap;
		margin: -5px;
	}
	.list--half .list__item {
		width: 50%;
		margin-top: 0;
		padding: 5px;
	}

	.functionalities__title {
		color: var(--color-accent);
	}
	.functionalities__list {
		margin-top: 20px;
	}

	.hero {
		display: flex;
		gap: 40px;
		align-items: center;
		padding-block: 40px;
	}
	.hero__main {
		width: 100%;
		max-width: 920px;
	}
	.hero__headline + .hero__title {
		margin-top: 2px;
	}
	.hero__text {
		margin-top: 15px;
	}
	.hero__buttons {
		margin-top: 20px;
	}
	.hero__buttons--large {
		margin-top: 30px;
	}
	.hero--default {
		flex-direction: column;
	}
	.hero--default .hero__main {
		text-align: center;
		max-width: none;
	}
	.hero--default .hero__text,
	.hero--demo .hero__text {
		max-width: 920px;
		margin-inline: auto;
	}
	.hero--default .hero__image {
		margin: 0 -260px -480px -20px;
	}
	.hero--default .hero__buttons {
		display: flex;
		justify-content: center;
		gap: 10px;
	}
	.hero--background {
		position: relative;
		padding-block: 150px;
	}
	.hero--background .hero__main {
		flex: 0 0 40%;
		position: relative;
		z-index: 1;
	}
	.hero--background .hero__media {
		position: absolute;
		left: 50%;
		width: 50vw;
		top: 0;
		bottom: -100px;
		display: flex;
	}
	.hero--table .hero__media {
		flex: 0 0 40%;
	}
	.hero--simple {
		flex-direction: column;
	}
	.hero--demo {
		flex-direction: column;
	}
	.hero--demo .hero__main {
		text-align: center;
		max-width: none;
	}
	.hero--demo .hero__media {
		width: 100%;
	}
	.hero__demo {
		position: relative;
		width: 100%;
		aspect-ratio: 1440/900;
		overflow: hidden;
		border-radius: 12px;
		box-shadow: 0 40px 30px rgba(124, 110, 95, 0.3);
		transition: opacity 600ms ease-out, transform 600ms ease-out;
	}
	@media (hover: hover) and (pointer: fine) {
		.hero__demo:hover {
			outline: 2px solid var(--color-accent);
			outline-offset: 3px;
		}
	}
	.hero__demo.js-loading {
		opacity: 0;
		transform: translateY(16px);
		/* No transition into the hidden state — the class is applied before
		   first paint, so animating in would show the panel dropping away. */
		transition: none;
	}
	@media (prefers-reduced-motion: reduce) {
		.hero__demo {
			transition: none;
		}
	}
	.hero__demo iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 1440px;
		height: 900px;
		border: 0;
		transform: scale(var(--demo-scale, 1));
		transform-origin: top left;
	}
	.hero__poster {
		display: none;
	}

	.copyright {
		font-size: 14px;
		color: #908d8a;
	}

	.embed {
		padding-block: 40px;
	}
	.embed > * {
		vertical-align: middle;
		width: 100%;
		height: auto;
		aspect-ratio: 16/9;
		box-shadow: 0 40px 30px rgba(124, 110, 95, 0.3);
		border-radius: 12px;
		overflow: hidden;
	}

	.intro__title + .intro__text {
		margin-top: 20px;
	}

	.person {
		max-width: 360px;
		margin-inline: auto;
		text-align: center;
	}
	.person__main {
		margin-top: 20px;
	}
	.person__name {
		font-size: 20px;
		font-weight: 700;
	}
	.person__title {
		font-size: 18px;
		margin-top: 2px;
	}
	.person__contact {
		font-size: 18px;
		margin-top: 15px;
	}

	.half-half {
		align-items: center;
		display: flex;
		gap: 120px;
	}
	.half-half__group {
		flex: 1 0 1%;
	}
	.half-half--image-text {
		flex-direction: row-reverse;
	}
	.half-half__text {
		margin-top: 10px;
	}
	.half-half:not(.half-half--yellow) .half-half__text {
		color: var(--color-gray);
	}
	.half-half__button {
		margin-top: 30px;
	}
	.half-half__highlight {
		margin-top: 60px;
	}
	.half-half--comparison .half-half__group:nth-child(1) {
		flex: 0 0 33.33333%;
	}
	.half-half--table.half-half--yellow .half-half__group:nth-child(1) {
		flex: 0 0 40%;
	}

	.wpcf7,
	.wpcf7-response {
		padding: 60px;
		background-color: #ebf3ff;
		border-radius: 12px;
		max-width: 920px;
		margin-inline: auto;
	}
	.wpcf7:has(.tenato-newsletter-notice) {
		margin-inline: auto;
		max-width: none;
	}
	.wpcf7 .hidden-fields-container {
		display: none;
	}
	.wpcf7-text,
	.wpcf7-textarea,
	.wpcf7-select,
	.wpcf7 span[data-name="your-attachment"] {
		width: 100%;
		font-family: inherit;
		font-size: 16px;
		border: 1px solid #bdd8ff;
		border-radius: 8px;
		background-color: var(--color-white);
		padding: 15px 18px;
		outline: none;
	}
	.wpcf7-select {
		appearance: none;
		-webkit-appearance: none;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: right 12px center;
		background-size: 16px;
		padding-right: 36px;
	}
	.wpcf7-text:focus,
	.wpcf7-textarea:focus,
	.wpcf7-select:focus {
		border-color: var(--color-accent);
	}
	.wpcf7-text.wpcf7-not-valid,
	.wpcf7-textarea.wpcf7-not-valid,
	.wpcf7-select.wpcf7-not-valid {
		border-color: #FF9292;
		color: #c82d2d;
	}
	.wpcf7-not-valid-tip {
		display: none;
	}
	.wpcf7-textarea {
		resize: vertical;
		height: 120px;
	}
	.wpcf7-head + .wpcf7-body {
		margin-top: 40px;
	}
	.wpcf7-row {
		position: relative;
	}
	.wpcf7-row + .wpcf7-row {
		margin-top: 20px;
	}
	.wpcf7 span[data-name="newsletter-consent"] {
		display: block;
		margin-block: 20px;
		line-height: 1.4;
	}
	.wpcf7 .wpcf7-acceptance label {
		display: flex;
		align-items: flex-start;
		gap: 8px;
	}
	.wpcf7 .wpcf7-acceptance .wpcf7-list-item-label {
		min-width: 0;
	}
	.wpcf7 .wpcf7-acceptance input[type="checkbox"] {
		width: 16px;
		height: 16px;
		flex: 0 0 16px;
		margin: 0.2em 0 0;
		accent-color: var(--color-accent);
		vertical-align: middle;
	}
	.wpcf7-label {
		position: absolute;
		z-index: 10;
		left: 19px;
		top: 16px;
		pointer-events: none;
		transition: 0.3s
	}
	.wpcf7-row.is-dirty .wpcf7-label {
		color: #908d8a;
		top: 8px;
		font-size: 13px;
	}
	.wpcf7-row.is-dirty .wpcf7-text,
	.wpcf7-row.is-dirty .wpcf7-textarea,
	.wpcf7-row.is-dirty .wpcf7-select,
	.wpcf7-row.is-dirty span[data-name="your-attachment"] {
		padding: 22px 18px 8px;
	}
	/* Keep labels above controls that already display a prompt. Long labels can wrap. */
	.wpcf7-row:has(select) .wpcf7-label,
	.wpcf7-row:has([placeholder]:not([placeholder=""])) .wpcf7-label {
		position: static;
		display: block;
		margin-bottom: 8px;
		font-size: 13px;
		line-height: 1.4;
		color: inherit;
		pointer-events: auto;
	}
	.wpcf7-row:has(select) .wpcf7-select,
	.wpcf7-row:has([placeholder]:not([placeholder=""])) :is(.wpcf7-text, .wpcf7-textarea) {
		padding: 16px 18px;
	}
	.wpcf7-req {
		color: var(--color-accent);
	}
	.wpcf7 span[data-name="your-attachment"] {
		position: relative;
		display: block;
		height: 52.5px;
	}
	.wpcf7 span[data-name="your-attachment"]::before {
		content: var(--before-text);
	}
	.wpcf7-file {
		opacity: 0;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}
	.wpcf7 span[data-name="your-attachment"]::after {
		position: absolute;
		right: 10px;
		top: 10px;
		content: 'Odaberite';
		border: 2px solid var(--color-accent);
		color: var(--color-accent);
		border-radius: 10em;
		padding: 8px 10px;
		font-size: 12px;
		font-weight: 700;
		line-height: 1;
	}
	.wpcf7-row.is-dirty span[data-name="your-attachment"]::after {
		content: 'Zamijenite';
	}
	.tenato-submit-wrap {
        display: inline-block;
        position: relative;
        max-width: 100%;
    }
    .tenato-submit-wrap > :is(button, input) {
        color: transparent;
        cursor: wait;
    }
    .tenato-submit-progress {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 4px 8px;
        text-align: center;
        pointer-events: none;
    }
    .tenato-submit-spinner {
        flex: 0 0 12px;
        height: 12px;
        border: 2px solid currentColor;
        border-right-color: transparent;
        border-radius: 50%;
        animation: tenato-spin .8s linear infinite;
    }
    @keyframes tenato-spin { to { transform: rotate(360deg); } }
    @media (prefers-reduced-motion: reduce) {
        .tenato-submit-spinner { animation: none; }
    }
    .tenato-form-status:not(:empty) { margin-top: 12px; }
    /* Keep the pending live announcement accessible without repeating the button label. */
    .wpcf7 form[aria-busy="true"] .tenato-form-status {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }
    .wpcf7 form[aria-busy="true"] .wpcf7-spinner { display: none; }
	.wpcf7-response-output {
		display: none;
	}
	.wpcf7-response {
		display: none;
	}
	.wpcf7-fail {
		background-color: #fff265;
	}
	.wpcf7-response__text,
	.wpcf7-response__button {
		margin-top: 20px;
	}

	.gscf7-frontend-gdpr-notice {
		display: none;
	}

	.faq__list {
		list-style: none;
		margin-top: -25px;
	}
	.faq__item {
		padding-block: 25px;
	}
	.faq__item + .faq__item {
		border-top: 1px solid #e0ddd9;
	}
	.faq__text {
		margin-top: 5px;
		color: var(--color-gray);
	}
	/*.faq__button {
		margin-top: 25px;
	}*/

	.accordion {
		max-width: 920px;
		background-color: #ebf3ff;
		padding: 30px 20px;
		margin-inline: -20px;
	}
	.accordion + .accordion {
		margin-top: 20px;
	}
	.accordion__title {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-block: 20px;
		gap: 20px;
	}
	.accordion__expand {
		height: 30px;
		width: 30px;
		overflow: hidden;
		text-indent: -9999px;
		background: none;
		border: 0;
	}
	.accordion__expand::before {
		content: '';
		display: block;
		height: 100%;
		width: 100%;
		background: url(accordion-arrow.svg) 0 0 / 100% 100%;
		transition: 0.3s transform;
	}
	.accordion__expand::after {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
		content: "";
		cursor: pointer;
	}
	.accordion__item.is-active .accordion__expand::before {
		transform: rotate(-180deg);
	}
	.accordion__text {
		margin-top: 12px;
		padding-bottom: 20px;
		margin-top: -10px;
		display: none;
	}
	.accordion__item.is-active .accordion__text {
		display: block;
	}
	.accordion__list {
		margin-top: 20px;
		margin-bottom: -20px;
		list-style: none;
	}
	.accordion__item + .accordion__item {
		border-top: 1px solid #cde0fb;
	}

	.price {
		font-weight: 400;
	}
	.price strong {
		font-weight: 600;
		font-size: 36px;
	}

	@media screen and (max-width: 600px) {
		.header {
			top: 0;
		}
	}

	@media screen and (max-width: 1023px) {
		/* The illustration is decorative; keep mobile CTA copy at full width. */
		.cta--default {
			display: block;
			margin-inline: 0;
		}
		.cta--default .cta__main {
			padding-inline: 0;
		}
		.cta--default .cta__media {
			display: none;
		}

		.u-hide-down {
			display: none;
		}

		.header {
			border-bottom: 0;
		}
		.header__inner {
			flex-direction: column;
			align-items: initial;
			gap: 24px;
		}
		.header__top {
			display: flex;
			gap: 18px;
			justify-content: space-between;
			align-items: center;
			margin-inline: -20px;
			padding-left: 20px;
			border-bottom: 1px solid #ede04b;
		}
		.header__logo {
			flex-grow: 1;
		}
		.header__nav {
			display: none;
			color: #fff;
		}
		.header__button--main {
			display: none;
		}
		.header__hamburger {
			border-left: 1px solid #ede04b;
		}
		body.nav-visible {
			overflow: hidden;
		}
		body.nav-visible .header {
			background-color: var(--color-accent);
		}
		body.nav-visible .header__inner {
			height: 100vh;
			padding-bottom: 20px;
			overflow-y: auto;
		}
		body.nav-visible .header__top {
			border-bottom: 1px solid #0762e1;
		}
		body.nav-visible .header__logo .logo {
			background-image: url("data:image/svg+xml,%3Csvg fill='none' height='24' viewBox='0 0 120 24' width='120' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff'%3E%3Cpath d='m0 5.42966v-5.110268h19.95v5.110268h-6.9041v18.25094h-6.14187v-18.25094z'/%3E%3Cpath d='m21.0327 23.6806v-23.361208h16.5428v5.110268h-10.3112v4.01521h9.4594v5.11023h-9.4594v4.0152h10.2664v5.1103z'/%3E%3Cpath d='m58.9483.319392v23.361208h-5.2004l-8.2938-12.2738h-.1345v12.2738h-6.2316v-23.361208h5.2901l8.1593 12.228108h.1794v-12.228108z'/%3E%3Cpath d='m66.5961 23.6806h-6.7247l7.5765-23.361208h8.518l7.5765 23.361208h-6.7248l-5.0211-16.92775h-.1793zm-1.2553-9.2167h12.6425v4.7452h-12.6425z'/%3E%3Cpath d='m78.4409 5.42966v-5.110268h19.9499v5.110268h-6.904v18.25094h-6.1419v-18.25094z'/%3E%3Cpath d='m120 12c0 2.6008-.497 4.7947-1.491 6.5817-.993 1.7795-2.335 3.1293-4.023 4.0495-1.689.9125-3.572 1.3688-5.649 1.3688-2.092 0-3.983-.4601-5.671-1.3802-1.681-.9278-3.019-2.2814-4.0126-4.0609-.9863-1.787-1.4794-3.9733-1.4794-6.5589 0-2.60076.4931-4.79087 1.4794-6.57034.9936-1.78707 2.3316-3.13688 4.0126-4.04943 1.688-.920154 3.579-1.38023 5.671-1.38023 2.077 0 3.96.460076 5.649 1.38023 1.688.91255 3.03 2.26236 4.023 4.04943.994 1.77947 1.491 3.96958 1.491 6.57034zm-6.411 0c0-1.3992-.183-2.57795-.549-3.53612-.359-.96578-.893-1.69582-1.603-2.19012-.702-.5019-1.569-.75285-2.6-.75285s-1.902.25095-2.611.75285c-.703.4943-1.237 1.22434-1.603 2.19012-.359.95817-.538 2.13692-.538 3.53612s.179 2.5817.538 3.5475c.366.9582.9 1.6882 1.603 2.1901.709.4943 1.58.7415 2.611.7415s1.898-.2472 2.6-.7415c.71-.5019 1.244-1.2319 1.603-2.1901.366-.9658.549-2.1483.549-3.5475z'/%3E%3C/g%3E%3C/svg%3E");
		}
		body.nav-visible .header__button--main {
			display: block;
		}
		body.nav-visible .header__button .button {
			background-color: var(--color-background);
			color: #0d52b3;
		}
		body.nav-visible .header__hamburger {
			border-color: #0762e1;
		}
		body.nav-visible .header__hamburger .hamruger__inner {
			opacity: 0;
		}
		body.nav-visible .header__hamburger .hamruger::before,
		body.nav-visible .header__hamburger .hamruger::after {
			top: 50%;
			position: absolute;
			background-color: #fff;
		}
		body.nav-visible .header__hamburger .hamruger::before {
			transform: rotate(45deg);
		}
		body.nav-visible .header__hamburger .hamruger::after {
			transform: rotate(-45deg);
		}
		body.nav-visible .header__nav {
			display: block;
		}

		.nav {
			text-align: center;
			font-size: 24px;
		}

		.half-half {
			flex-direction: column;
			gap: 40px;
		}

		.grid {
			margin: -10px 0;
		}
		.grid__item {
			width: 100%;
			padding: 10px 0;
		}

		.carousel__top {
			position: relative;
			padding-right: 40px;
		}
		.carousel__top::before {
			position: absolute;
			width: 24px;
			height: 24px;
			content: "";
			background: url(chevron.svg) 0 0 / 100% 100%;
			right: 0;
			top: 50%;
			margin-top: -12px;
			transition: 0.3s transform;
		}
		.carousel__item.is-active .carousel__top::before {
			transform: rotate(-180deg);
		}
		.carousel__image {
			margin-top: 10px;
			display: none;
		}
		.carousel__item.is-active .carousel__image {
			display: block;
		}

		.footer__group:nth-child(1) {
			display: flex;
			flex-wrap: wrap;
			gap: 30px;
		}
		.footer__vertical-nav {
			flex: 0 0 calc(50% - 15px);
		}
		.footer__vertical-nav:nth-child(3) {
			flex: 0 0 100%;
			border-top: 1px solid #e0ddd9;
			padding-top: 30px;
		}
		.footer__group + .footer__group {
			margin-top: 30px;
		}
		.footer__row + .footer__row {
			margin-top: 12px;
		}

		.vertical-nav--horitonzal-down .vertical-nav__list {
			display: flex;
			gap: 20px;
		}

		.button--wide-down {
			display: block;
			font-size: 14px;
			padding: 18px 28px;
		}

		.person {
			display: flex;
			text-align: left;
			align-items: center;
			gap: 20px;
		}
		.person__media {
			flex: 0 0 120px;
		}
		.person__main {
			margin-top: 0;
		}
		.person__name {
			font-size: 18px;
		}
		.person__title,
		.person__contact {
			font-size: 16px;
		}

		.wpcf7 {
			margin-inline: -20px;
			border-radius: 0;
			padding: 30px 20px;
		}

		.hero {
			flex-direction: column;
		}
		.section--hero-type-default.section--hero--negative + .section,
		.section--hero-type-demo.section--hero--negative + .section {
			margin-top: 276px;
		}
		.home .section--hero + .section--text {
			text-align: center;
		}
		.section--hero-type-background + .section--half-half {
			padding-top: 80px;
		}
		.section--hero-type-demo + .section--features-type-default {
			padding-top: 20px;
		}
		.hero--background {
			padding-top: 40px;
			padding-bottom: 0;
		}
		.hero--background .hero__media {
			position: static;
			width: calc(100% + 20px);
			align-self: flex-start;
			margin-bottom: -20px;
		}
		.hero--table {
			padding-bottom: 0;
		}
		.hero--default .hero__image {
			margin-bottom: -340px;
		}
		.hero--demo .hero__demo {
			display: none;
		}
		.hero--demo .hero__poster {
			display: block;
			/* Mirrors .hero--default .hero__image above: bleeds 20px left / 260px
			   right past the u-inner gutter, and 340px down into the next section.
			   Width is explicit because that rule targets an auto-width div, and
			   this is the img itself. */
			width: calc(100% + 280px);
			max-width: none;
			margin: 0 -260px -340px -20px;
		}

		.features:not(.features--large) {
			flex-direction: column;
		}

		.section--usp-addon-price .section__inner {
			flex-direction: column-reverse;
		}
		.section--usp-addon-table .section__inner,
		.section--usp-addon-form .section__inner {
			flex-direction: column;
		}
		.section--usp-addon-price,
		.section--no-seaparator-down {
			margin-top: 0 !important;
			/* border-top: 0 !important; */
		}
		.section--usp-addon-price::before,
		.section--no-seaparator-down::before {
			display: none !important;
		}

		.table {
			border-radius: 0;
			margin-inline: -20px;
			padding: 0 20px;
		}
		.table--small {
			font-size: 14px;
			padding: 15px 20px;
		}
		.table__head {
			padding-top: 30px;
			padding-right: 60px;
		}
		.table--small .table__head {
			padding-top: 15px;
		}
		.table__icon {
			right: 20px;
		}
		.table td,
		.table th {
			padding: 30px;
		}
		.table--small td,
		.table--small th {
			padding: 15px;
		}
		.table--price {
			padding: 13px 25px;
		}
		.table--price td,
		.table--price th {
			padding: 12px;
		}
		.table--comparison {
			padding: 60px 0;
		}
		.table--comparison th:first-child,
		.table--comparison td:first-child {
			display: none;
		}
		.table--comparison th,
		.table--comparison td {
			padding: 20px;
		}
		.table--comparison thead th.table__featured {
			padding-top: 40px;
			border-radius: 12px 0 0 0;
		}
		.table--comparison tbody tr:last-child td {
			padding-bottom: 40px !important;
		}
		.table--comparison tbody tr:last-child td.table__featured {
			border-radius: 0 0 0 12px;
		}
		.table__mobile-label {
			font-weight: 400;
			margin-bottom: 8px;
		}
		.table--comparison tbody td {
			vertical-align: bottom;
		}

		.list--half .list__item {
			width: 100%;
			font-size: 14px;
		}

		.price {
			font-size: 14px;
		}
		.price strong {
			font-size: 24px;
		}

		.highlight__text {
			font-size: 14px;
		}
	}
	@media screen and (min-width: 1024px) {
		.u-hide-up {
			display: none;
		}

		.nav__list {
			display: flex;
		}
		.nav__item {
			position: relative;
			transition: 0.3s color;
		}
		.nav__item::before {
			height: 3px;
			position: absolute;
			bottom: -1px;
			left: 20px;
			background-color: var(--color-accent);
			content: '';
			width: calc(100% - 40px);
			transform: scaleX(0);
			transform-origin: left;
			transition: transform var(--tenato-motion-interaction, 180ms) ease-out;
		}
		.nav__item:hover,
		.nav__item.is-active {
			color: var(--color-accent);
		}
		.nav__item:hover::before,
		.nav__item:focus-within::before,
		.nav__item.is-active::before {
			transform: scaleX(1);
		}
		.nav__link {
			padding: 40px 20px;
		}
		.vertical-nav {
			margin: -10px -16px;
		}
		.vertical-nav__link {
			transition: 0.3s all;
			position: relative;
			border-radius: 8px;
			padding-inline: 16px;
		}
		.vertical-nav__link:hover {
			background-color: #f0f0f0;
		}

		.header__button--alt,
		.header__hamburger {
			display: none;
		}
		.header__button--main {
			display: flex;
			gap: 10px;
		}

		.logo {
			width: 120px;
			height: 24px;
		}
		.logo--small {
			width: 102px;
			height: 20px;
		}

		.button {
			font-size: 16px;
			padding: 20px 48px;
			transition: 0.3s all;
		}
		.button--arrow {
			padding-right: 38px;
		}
		.button:hover,
		a.content-card__inner:is(:hover, :focus-visible) .button {
			border-color: #0d52b3;
		}
		.button:not(.button--ghost):hover,
		a.content-card__inner:is(:hover, :focus-visible) .button:not(.button--ghost) {
			background-color: #0d52b3;
		}
		.button--small {
			font-size: 13px;
			padding: 7px 13px;
		}
		.button--ghost:hover {
			color: #0d52b3;
		}
		.button--medium {
			font-size: 14px;
			padding: 9px 18px;
		}

		.title--xsmall {
			font-size: 18px;
		}
		.title--small {
			font-size: 20px;
		}
		.title--medium {
			font-size: 36px;
		}
		.title--large {
			font-size: 56px;
		}

		.text {
			font-size: 18px;
		}
		.text--large {
			font-size: 24px;
		}
		.text a {
			transition: 0.3s color;
		}
		.text a:hover {
			color: #0d52b3;
		}
		.text h2 {
			font-size: 36px;
			font-weight: 600;
		}
		.text h3 {
			font-size: 20px;
			font-weight: 600;
		}

		.hero__text {
			margin-top: 20px;
		}
		.hero__buttons {
			margin-top: 40px;
		}
		.hero__buttons--large {
			margin-top: 60px;
		}
		.hero--default .hero__buttons {
			gap: 20px;
		}
		.hero {
			gap: 80px;
			padding-block: 80px;
		}
		.hero--default .hero__image {
			margin: 0 0 -480px 0;
		}
		.hero--demo .hero__demo {
			margin-bottom: -480px;
		}

		.section--hero-type-default.section--hero--negative + .section,
		.section--hero-type-demo.section--hero--negative + .section {
			margin-top: 460px;
		}
		.section--usp,
		.section--persons,
		.section--highlights,
		.section--half-half,
		.section--faq-type-category,
		.section--features-type-large {
			margin-top: 120px;
			padding-top: 121px;
		}
		.section--cta {
			margin-top: 120px;
		}
		/*.section--hero + .section--features-type-default {
			padding-top: 120px;
		}*/
		.section--usp-addon-price .section__inner,
		.section--usp-addon-table .section__inner,
		.section--usp-addon-form .section__inner {
			align-items: center;
			gap: 120px;
		}
		.section__body,
		.section__button {
			margin-top: 40px;
		}

		.static--centered {
			max-width: 1160px;
			text-align: center;
		}

		.half-half__text {
			margin-top: 30px;
		}
		.half-half--comparison {
			align-items: initial;
		}
		.half-half--comparison .half-half__group:nth-child(1) {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
		}
		.half-half--comparison .half-half__text {
			flex-grow: 1;
		}

		.usp__icon {
			padding: 18px;
			width: 100px;
		}
		.usp__text {
			margin-top: 5px;
		}
		.usp__button {
			margin-top: 10px;
		}


		.carousel {
			position: relative;
			padding-right: calc(50% + 40px);
		}
		.carousel__image {
			position: absolute;
			right: 0;
			top: 50%;
			width: 50%;
			transform: translateY(-50%);
			opacity: 0;
			transition: 0.3s opacity;
			pointer-events: none;
		}
		.carousel__item.is-active .carousel__image {
			opacity: 1;
		}
		.carousel__item:hover .carousel__title {
			color: var(--color-accent);
		}
		.carousel__item:hover .carousel__text {
			color: var(--color-text);
		}

		.usp__check {
			width: 24px;
		}

		.footer {
			margin-top: 120px;
			padding-block: 80px;
		}
		.footer__downloads .app-store-badges {
			justify-content: flex-end;
		}
		.footer__inner {
			display: flex;
			justify-content: space-between;
		}
		.footer__group {
			display: flex;
			gap: 120px;
		}
		.footer__group:nth-child(2) {
			flex-direction: column;
			gap: 12px;
			justify-content: flex-start;
			text-align: right;
		}

		.features:not(.features--large) {
			gap: 120px;
		}
		.features--default:not(.features--with-image):has(> .features__button) {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			grid-template-rows: auto 1fr;
			row-gap: 0;
		}
		.features--default:not(.features--with-image) > .features__intro {
			grid-row: span 2;
		}
		.features__text {
			margin-top: 30px;
		}

		.accordion {
			margin-inline: auto;
			border-radius: 12px;
			padding: 60px;
		}
		.accordion + .accordion {
			margin-top: 40px;
		}

		.highlight {
			padding: 40px;
		}
		.highlight--small {
			padding: 25px;
		}

		.embed {
			padding-block: 120px;
		}

		.headline {
			font-size: 16px;
		}

		.cta__main {
			padding-block: 80px;
		}
		.cta--default {
			flex-direction: row-reverse;
			align-items: center;
		}
		.cta--default .cta__image {
			margin-left: -180px;
			margin-right: -40px;
		}
		.cta--default .cta__main {
			flex: 0 0 66.66667%;
		}

		.list {
			font-size: 18px;
		}
		.list__icon {
			width: 20px;
		}

		.grid--half .grid__item {
			width: 50%;
		}

		.table__mobile-label {
			display: none;
		}
		.table--small .table__icon {
			left: -32px;
			bottom: 30px;
			top: auto;
			right: auto;
		}
		.table--small .table__featured {
			margin: -20px -70px -20px -40px;
			padding: 20px 70px 20px 40px;
			border-radius: 0 8px 8px 0;
		}

		.section--background-yellow {
			padding-block: 120px;
		}

		.features__carousel {
			margin-top: 20px;
		}
		.features__button {
			margin-top: 25px;
		}

		.image--contain-right {
			height: 100%;
			object-fit: contain;
			object-position: right;
			width: 100%;
		}
	}
	@media screen and (min-width: 1024px) and (max-width: 1199px) {
		.nav__link {
			padding: 40px 14px;
			font-size: 14px;
		}
		.nav__item::before {
			left: 14px;
		}
		.nav__item:hover::before, .nav__item.is-active::before {
			width: calc(100% - 28px);
		}
	}
	@media screen and (max-width: 1279px) {
		.u-hide-1279 {
			display: none;
		}
	}

.skip-link { position: fixed; top: 12px; left: 12px; z-index: 100000; padding: 12px 20px; color: #fff; background: #000; transform: translateY(-200%); }
.skip-link:focus { transform: none; outline: 3px solid var(--color-accent); outline-offset: 3px; }

/* Keep the skip-link destination focusable without outlining the whole page.
   Interactive descendants retain their own keyboard focus indicators. */
#main-content:focus { outline: none; }

/* Curated events and guides: one destination and one keyboard stop per card. */
.half-half__headline { margin-bottom: 14px; }
.half-half__title-link { color: inherit; }
.half-half__title-link:hover, .half-half__title-link:focus-visible { text-decoration: underline; text-underline-offset: .15em; }
.section--content-overview { padding-block: 56px 88px; }
.content-overview { display: grid; gap: 48px; }
.content-overview__events, .content-overview__guides { min-width: 0; scroll-margin-top: 48px; }
.content-overview__heading { margin-bottom: 20px; }
.content-overview__title { font-size: clamp(30px, 3vw, 42px); line-height: 1.15; }
.content-overview__heading > p { margin-top: 12px; color: var(--color-gray); font-size: 18px; line-height: 1.5; }
.content-card + .content-card { border-top: 1px solid #e0ddd9; }
.content-card__inner { display: block; padding-block: 36px; color: var(--color-text); border-radius: 4px; }
.content-card__media { margin-top: 16px; }
.content-card__image { width: 100%; height: auto; border-radius: 8px; }
.content-card__body { display: grid; min-width: 0; }
.content-card__eyebrow { font-size: 14px; line-height: 1.5; color: var(--color-text); margin-bottom: 3px; }
.content-card__status { display: inline-block; background: var(--color-background); color: var(--color-text); padding: 2px 8px; border-radius: 4px; }
.content-card__title { font-size: 24px; line-height: 1.2; overflow-wrap: anywhere; }
.content-card__summary { margin-top: 12px; font-size: 16px; line-height: 1.55; color: var(--color-gray); }
.content-card__cta { margin-top: 18px; }
a.content-card__inner .content-card__title { color: var(--color-accent); }
a.content-card__inner:hover .content-card__title, a.content-card__inner:focus-visible .content-card__title { text-decoration: underline; text-underline-offset: .15em; }
a.content-card__inner:focus-visible, .half-half__title-link:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 5px; }
@media (min-width: 1024px) {
    .content-card__summary { font-size: 18px; }
    .section--content-overview { padding-block: 64px 100px; }
    .content-overview--columns { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; }
}
@media (min-width: 1400px) {
    .content-overview--columns { gap: 64px; }
}

/* Featured gathering, equal archive columns and the shared newsletter. */
.stories-next { padding: 32px 24px; margin-bottom: 64px; background: #ebf3ff; border-radius: 16px; }
.stories-next__label { margin-bottom: 2px; }
.stories-next__content { display: grid; column-gap: 28px; row-gap: 0; align-items: start; }
.stories-next__content > .stories-next__label { grid-column: 1 / -1; }
.stories-next__media, .stories-next__details { margin-top: 24px; }
.stories-next__title { font-size: clamp(28px, 3vw, 40px); line-height: 1.15; }
.stories-next__summary { max-width: 100%; margin-top: 16px; font-size: 18px; line-height: 1.55; color: var(--color-gray); }
.stories-next__action { margin-top: 28px; }

.stories-next__media { min-width: 0; max-width: 560px; }
.stories-next__date { display: flex; flex-direction: column; background: var(--color-background); padding: 28px 20px; text-align: center; border-radius: 12px; }
.stories-next__date time { display: block; order: -1; margin-bottom: 24px; }
.stories-next__date strong { display: block; font-size: 72px; line-height: 1; color: var(--color-accent); }
.stories-next__date time span { display: block; margin-top: 4px; font-size: 24px; }
.stories-next__format, .stories-next__location { font-size: 18px; font-weight: 700; line-height: 1.5; color: var(--color-text); }
.stories-newsletter { margin-top: 64px; padding: 32px 24px; background: #ebf3ff; border-radius: 16px; scroll-margin-top: 160px; }
.stories-newsletter__copy > .wpcf7 { max-width: 68ch; margin-inline: 0; font-size: 18px; padding: 0; background: transparent; border-radius: 0; }
.stories-newsletter .wpcf7-head > p { margin-top: 10px; font-size: 18px; line-height: 1.55; color: var(--color-gray); }
.tenato-newsletter-notice { font-size: 14px; line-height: 1.5; }
@media (min-width: 768px) {
    .stories-next { padding: 48px; }
}
@media (min-width: 1024px) {
    .stories-newsletter { padding: 48px; }
}

/* DOM order follows mobile reading order; desktop shares the title row with the image. */
.stories-newsletter--top { margin-top: 0; margin-bottom: 64px; }
@media (min-width: 768px) {
    .content-card:last-child .content-card__inner { padding-bottom: 0; }
    .content-overview + .stories-newsletter { margin-top: 80px; }
    .content-card__body:has(> .content-card__media) { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); column-gap: 20px; }
    .content-card__body > .content-card__title, .content-card__body > .content-card__summary, .content-card__body > .content-card__cta { grid-column: 1; }
    .content-card__body > .content-card__media { grid-column: 2; grid-row: 1 / span 3; margin: 0; align-self: start; }
}

.section--stories-gathering:has(.stories-newsletter):last-child { padding-bottom: 80px; }
.main:has(> .section--stories-gathering:last-child) + .footer { margin-top: 0; }

a.content-card__inner:is(:hover, :focus-visible) .content-card__title,
a.content-card__inner:is(:hover, :focus-visible) .content-card__title strong { color: #0d52b3; }
.stories-newsletter .tenato-newsletter-notice { color: #73706d; }
.stories-newsletter .wpcf7-body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.stories-newsletter .wpcf7-row { margin: 0; min-width: 0; }
.stories-newsletter .wpcf7-row:has(.tenato-newsletter-notice) { grid-column: 1 / -1; }
.stories-newsletter .wpcf7-text,
.stories-newsletter button[type="submit"] { height: 56px; }
.stories-newsletter button[type="submit"] { white-space: nowrap; }
.stories-newsletter .wpcf7-head .title { font-size: clamp(28px, 3vw, 40px); line-height: 1.15; }
.stories-newsletter .wpcf7-head + .wpcf7-body { margin-top: 28px; }
@media (max-width: 599px) {
    .stories-newsletter .wpcf7-row:has(input[type="email"]) { grid-row: 1; }
    .stories-newsletter .wpcf7-row:has(button[type="submit"]) { grid-row: 2; }
    .stories-newsletter .wpcf7-row:has(.tenato-newsletter-notice) { grid-row: 3; margin-top: 8px; }
}
@media (min-width: 600px) {
    .stories-newsletter .wpcf7-body { grid-template-columns: minmax(0, 1fr) auto; align-items: start; }
    .stories-newsletter .wpcf7-row:has(input[type="email"]) { grid-column: 1; grid-row: 1; }
    .stories-newsletter .wpcf7-row:has(button[type="submit"]) { grid-column: 2; grid-row: 1; }
    .stories-newsletter .wpcf7-row:has(.tenato-newsletter-notice) { grid-row: 2; }
}

.stories-newsletter__copy { min-width: 0; }
.stories-newsletter__art { display: none; }
@media (min-width: 1024px) {
    .stories-next__content { grid-template-columns: minmax(0, 1fr); }
    .stories-next__content:has(.stories-next__details) { grid-template-columns: minmax(0, 1fr) 220px; }
    .stories-next__content:has(.stories-next__media) { grid-template-columns: minmax(0, 1fr) auto; }
    .stories-next__content:has(.stories-next__media):has(.stories-next__details) { grid-template-columns: minmax(0, 1fr) auto 220px; }
    .stories-next__title { grid-column: 1; grid-row: 2; }
    .stories-next__content:not(:has(.stories-next__media)) > :is(.stories-next__title, .stories-next__summary) { max-width: min(100%, calc(50% + 340px)); }
    /* Half the spare width goes to copy; 248px reserves the 220px date card and 28px gap. */
    .stories-next__content:has(.stories-next__details):not(:has(.stories-next__media)) { grid-template-columns: minmax(0, min(calc(100% - 248px), calc(50% + 216px))) 220px; justify-content: center; }
    .stories-next__content:has(.stories-next__details):not(:has(.stories-next__media)) > :is(.stories-next__title, .stories-next__summary) { max-width: none; }
    .stories-next__summary { grid-column: 1; grid-row: 3; }
    .stories-next__action { grid-column: 1; grid-row: 4; }
    .stories-next__media { grid-column: 2; grid-row: 2 / span 3; margin: 0; }
    .stories-next__media img { display: block; width: auto; height: 240px; max-width: 34vw; object-fit: contain; object-position: left top; }
    .stories-next__details { grid-column: -2; grid-row: 2 / span 3; margin: 0; }
    .stories-newsletter { overflow: hidden; }
    .stories-newsletter__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 248px; gap: 28px; width: min(100%, calc(50% + 464px)); margin-inline: auto; }
    .stories-newsletter__copy { position: relative; z-index: 1; }
    .stories-newsletter__copy > .wpcf7 { max-width: none; }
    .stories-newsletter .wpcf7-body { grid-template-columns: minmax(0, 450px) max-content minmax(0, 1fr); }
    .stories-newsletter__art { display: block; position: absolute; right: 0; bottom: -24px; width: clamp(240px, 28vw, 334px); height: auto; }
}

@media (max-width: 1023px) {
    .stories-next__content { display: flex; flex-direction: column; }
    .stories-next__media { margin: 20px 0 0; width: 100%; max-width: none; }
    .stories-next__media img { display: block; }
    .stories-next__summary { margin-top: 20px; font-size: 16px; }
    .stories-next__details { margin-top: 20px; }
    .stories-next__date { display: block; background: none; padding: 0; text-align: left; font-size: 14px; font-weight: 700; line-height: 1.5; }
    .stories-next__date time, .stories-next__date strong, .stories-next__date time span,
    .stories-next__format, .stories-next__location { display: inline; margin: 0; font-size: inherit; line-height: inherit; color: var(--color-text); }
    .stories-next__date > :not(:first-child)::before { content: ", "; }
    .stories-next__date time span::before { content: " "; }
    .stories-next__action { margin-top: 24px; }
}
@media (max-width: 767px) {
    .section--content-overview { padding-top: 40px; }
    .stories-next, .stories-newsletter { padding: 28px 24px; }
    .stories-next, .stories-newsletter--top { margin-bottom: 40px; }
    .stories-newsletter { margin-top: 40px; }
    .stories-newsletter--top { margin-top: 0; }
    .content-overview { gap: 40px; }
    .content-overview__heading { margin-bottom: 24px; }
    .content-overview__heading > p { font-size: 16px; }
    .content-card__inner { padding-block: 28px; }
    .content-overview__heading + .content-card .content-card__inner { padding-top: 0; }
    .content-card:last-child .content-card__inner { padding-bottom: 0; }
    .content-card__summary { margin-top: 16px; }
    .content-card__cta { margin-top: 20px; }
    .stories-newsletter .wpcf7-head > p { font-size: 16px; }
    .stories-newsletter .wpcf7-head + .wpcf7-body { margin-top: 24px; }
    .section--stories-gathering:has(.stories-newsletter):last-child { padding-bottom: 48px; }
}

/* Text layout controls are opt-in: legacy blocks keep their original geometry. */
.section--text-space-top-none { --text-space-top: 0px; }
.section--text-space-top-small { --text-space-top: 24px; }
.section--text-space-top-standard { --text-space-top: 40px; }
.section--text-space-top-large { --text-space-top: 64px; }
.section--text-space-bottom-none { --text-space-bottom: 0px; }
.section--text-space-bottom-small { --text-space-bottom: 24px; }
.section--text-space-bottom-standard { --text-space-bottom: 40px; }
.section--text-space-bottom-large { --text-space-bottom: 64px; }
.section--text > .section__inner {
    padding-top: var(--text-space-top, 0px);
    padding-bottom: var(--text-space-bottom, 0px);
}
/* A standalone newsletter spans the content frame even inside a narrow article. */
.section--text > .u-inner:has(.tenato-newsletter-notice) { container-type: inline-size; }
.section--text .wpcf7:has(.tenato-newsletter-notice) {
    width: 100cqw;
    margin-inline: calc(50% - 50cqw);
}
.section--text-width-standard .static { max-width: 920px; }
.section--text-width-wide .static { max-width: 1160px; }
.section--text-width-full .static { max-width: none; }
.section--text-separator > .section__inner { position: relative; }
.section--text-separator > .section__inner::before {
    content: '';
    position: absolute;
    inset: 0 20px auto;
    height: 1px;
    background: #e0ddd9;
}
@media (min-width: 1024px) {
    .section--text-space-top-small { --text-space-top: 40px; }
    .section--text-space-top-standard { --text-space-top: 80px; }
    .section--text-space-top-large { --text-space-top: 120px; }
    .section--text-space-bottom-small { --text-space-bottom: 40px; }
    .section--text-space-bottom-standard { --text-space-bottom: 80px; }
    .section--text-space-bottom-large { --text-space-bottom: 120px; }
}

/* Two-column comparison has independent headers and retains both columns on mobile. */
.table--comparison-two { padding: 40px 24px; }
.table--comparison-two table { table-layout: fixed; margin-block: -60px; }
.table--comparison-two th,
.table--comparison-two td { width: 50%; vertical-align: top; overflow-wrap: anywhere; }
.table--comparison-two th { vertical-align: bottom; padding-top: 80px; }
.table--comparison-two td { border-top: 1px solid rgba(0,0,0,0.15); }
.table--comparison-two th.table__featured { border-radius: 12px 12px 0 0; }
.table--comparison-two tbody tr:last-child td { padding-bottom: 80px; }
.table--comparison-two tbody tr:last-child td.table__featured { border-radius: 0 0 12px 12px; }
@media (min-width: 1024px) {
    .half-half--comparison-two { align-items: flex-start; }
    .half-half--comparison-two .half-half__group:first-child { flex: 0 0 33.33333%; }
}
@media (max-width: 1023px) {
    .table--comparison-two { padding: 0 16px; margin-inline: 0; border-radius: 12px; }
    .table--comparison-two table { margin-block: 0; }
    .table--comparison-two th,
    .table--comparison-two td { padding: 20px 12px; font-size: 16px; }
    .table--comparison-two tbody tr:last-child td { padding-bottom: 24px; }
    .table--comparison-two th.table__featured { position: relative; border-radius: 0; }
    .table--comparison-two th.table__featured::before {
        content: '';
        position: absolute;
        inset: -16px 0 100%;
        background: inherit;
        border-radius: 12px 12px 0 0;
    }
}
/* Feature siblings: white surface, blue rules and yellow direction markers. */
.section--feature-navigation { background: #fff; padding: 80px 0 40px; }
.section--feature-navigation + .section--cta { margin-top: 0; }
.main:has(> :last-child .story-navigation__header) + .footer { margin-top: 0; }
.section--feature-navigation:last-child:has(.story-navigation__header) .feature-navigation__link { padding-bottom: 0; }
.story-navigation__header { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 12px 24px; margin-bottom: 28px; }
.story-navigation__header a { color: var(--color-accent); font-size: 20px; font-weight: 700; text-decoration: none; text-underline-offset: .2em; }
.story-navigation__header a:hover { text-decoration: underline; }
.story-navigation__header a:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 5px; }
.story-navigation__header + .feature-navigation .feature-navigation__eyebrow { color: var(--color-accent); font-weight: 700; text-transform: uppercase; }
.feature-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.feature-navigation__link { position: relative; display: flex; flex-direction: column; align-items: flex-start; --arrow-space: 88px; gap: 6px; padding: 28px var(--arrow-space) 30px 0; border-top: 2px solid var(--color-accent); color: var(--color-text); text-decoration: none; }
.feature-navigation__link--previous { align-items: flex-end; text-align: right; padding-inline: var(--arrow-space) 0; }
.feature-navigation__link--previous .feature-navigation__arrow { left: 0; right: auto; }
.feature-navigation__eyebrow { color: var(--color-gray); font-size: 16px; line-height: 1.5; }
.feature-navigation__title { font-size: clamp(24px, 2.4vw, 36px); line-height: 1.2; font-weight: 500; overflow-wrap: anywhere; }
.feature-navigation__arrow { position: absolute; right: 0; top: 28px; display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: var(--color-background); color: #000; font-size: 32px; transition: background-color .2s, color .2s; }
.feature-navigation__link:hover .feature-navigation__title { color: var(--color-accent); }
.feature-navigation__link:hover .feature-navigation__arrow { background: var(--color-accent); color: var(--color-background); }
.feature-navigation__link:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 8px; }
@media (max-width: 767px) {
    .feature-navigation { grid-template-columns: 1fr; gap: 24px; }
    .feature-navigation__link { --arrow-space: 74px; padding-block: 22px 24px; }
    .feature-navigation__arrow { top: 22px; width: 48px; height: 48px; font-size: 28px; }
}

/* Structured feature index; card content flows independently within each pair. */
.section--feature-pairs { margin: 0; padding: 0; }
.feature-pairs { max-width: 1240px; margin: 0 auto; padding: 0 clamp(16px, 3.5vw, 52px); }
.section--feature-pairs:first-of-type .feature-pairs,
.section--hero + .section--feature-pairs .feature-pairs { padding-top: 52px; }
.feature-pairs > h2 { font-size: 36px; line-height: 1.08; letter-spacing: -.055em; margin: 0 0 24px; }
.feature-pairs__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 3.5vw, 48px); }
.feature-pairs__card { min-width: 0; }
.feature-pairs__card h3 { font-size: 30px; font-weight: 650; line-height: 1.08; letter-spacing: -.045em; text-wrap: balance; margin: 0 0 16px; }
.feature-pairs__intro { font-size: 17px; line-height: 1.45; margin-bottom: 16px; }
.feature-pairs__intro p { margin: 0; }
.feature-pairs__intro p + p { margin-top: 16px; }
.feature-pairs__media { padding: 16px 1px 16px 16px; border-radius: 12px; background: #f4f5f7; overflow: hidden; }
.feature-pairs__media img { display: block; width: 100%; height: auto; }
.feature-pairs__action { margin-top: 20px; }
.feature-pairs__action .button { margin: 0; min-height: 44px; }
.feature-pairs__action .button svg { width: 18px; height: 18px; }
.section--feature-pairs + .section--feature-pairs { padding-top: clamp(46px, 6vw, 78px); }
.section--feature-pairs-separator .feature-pairs > h2 { position: relative; }
.section--feature-pairs-separator .feature-pairs > h2::before { content: ''; position: absolute; top: calc(clamp(46px, 6vw, 78px) / -2); left: 0; right: 0; height: 1px; background: #e0ddd9; }
.section--feature-pairs + .section--cta { margin-top: 88px; }
@media (max-width: 600px) {
    .feature-pairs__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
    .feature-pairs { padding-inline: 20px; }
    .feature-pairs > h2 { font-size: 32px; }
    .feature-pairs__card h3 { font-size: 26px; }
    .feature-pairs__intro { font-size: 16px; line-height: 1.5; }
    .section--feature-pairs + .section--cta { margin-top: 72px; }
}

@media (max-width: 1023px) {
    /* Separate feature groups with the same 40px breathing room on each side. */
    .section--hero + .section--feature-pairs .feature-pairs { padding-top: 24px; }
    .section--feature-pairs + .section--feature-pairs { padding-top: 80px; }
    .section--feature-pairs-separator .feature-pairs > h2::before { top: -40px; }
}
