﻿@font-face {
  font-family: 'nestle-condensed-font';
  src: url('../fonts/NES/NestleTextTF-BoldCnd.woff') format('woff');
}
@font-face {
  font-family: 'nestle-font';
  src: url('../fonts/NES/NestleTextTF-Book.woff') format('woff');
}
@font-face {
  font-family: 'nestle-brush';
  src: url('../fonts/NES/NestleBrush-Regular.woff') format('woff');
}

:root {
    --background: transparent;
    --color: #2d334a;
    --font-family-headlines: "nestle-font", Arial, sans-serif;
    --font-family-body: "nestle-font", Arial, sans-serif;
    --font-size-textboxes: 1.25rem;
    --color-textboxes: #F8FAF4;
    --textbox-outline: 0px;
    --textbox-radius: 40px;
    --checkbox-size: 25px;
    --checkbox-symbol: url(nes/martinique-tick.svg);
}

body.brand_nes {
    background: var(--background);
	font-family: var(--font-family-body);
	color: var(--color);
}

body.brand_nes-bmi-kinder {
    background: var(--background);
	font-family: var(--font-family-body);
	color: var(--color);
}

@media (min-width: 1200px) {
    .container {
        width: 100%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
        padding: 0 15px;
    }
}

@media (min-width: 768px) {
    .container {
        padding: 0 30px;
        margin: 50px auto;
    }
}

.header-text, .data-input-header-text, .confirm-data-input-header-text, .success-header-text {
    color: var(--color);
    margin-bottom: 10px;
    font-weight: bold;
    font-family: var(--font-family-headlines);
    font-size: 25px;
}

.consent-revocation {
	color: black;
}

.edit-div {
	outline-width: var(--textbox-outline);
	outline-color: var(--color);
	background-color: var(--color-textboxes);
	padding: 16px 30px 16px 15px;
	border-radius: var(--textbox-radius);
}

    .edit-div:hover, .edit-div:focus-within {
        outline: 2px solid #678a74;
    }

.editable-dll {
    background-color: var(--color-textboxes);
    font-size: var(--font-size-textboxes);
    color: #444;
}

.editable-input {
    background-color: var(--color-textboxes);
    font-size: var(--font-size-textboxes);
    color: var(--color);
}

.input-row {
    margin-left: 0px;
    margin-right: 0px;
	margin-bottom: 20px;
}

.mandatory-advice {
	margin-bottom: 10px;
}

.evk-label-div {
	font-size: unset;
	padding-left: var(--checkbox-size);
}

.consent-revocation, .confirm-consent-revocation {
	font-size: unset;
	margin-top: 10px;
}

.evk-div {
	margin-bottom: 15px;
}

.buttonrow {
	margin-top: 15px;
}

button:not(.accordion-button, .button-back) {
    padding: 21px 43px 21px 103px;
    border: 2px solid #91aa2b;
    border-radius: 34px;
    background-color: #91AA2B;
    background-image: url(nes/white-arrow.svg);
    background-size: 44px auto;
    background-position: left 44px center;
    background-repeat: no-repeat;
    font-weight: bold;
    color: #fff;
    transition: background-color .2s;
}

button:not(.accordion-button, .button-back):hover {
    background-color: #fff;
    background-image: url(nes/green-arrow.svg);
    background-position: left 48px center;
    color: #91aa2b;
}

.button-back {
    position: relative; /* For pseudo-element positioning */
    padding: 21px 43px 21px 103px;
    border: 2px solid #91aa2b;
    border-radius: 34px;
    background-color: #91AA2B;
    font-weight: bold;
    color: #fff;
    transition: background-color 0.2s ease;
    text-align: left; /* Ensure text alignment stays correct */
    background-image: none; /* Remove the default arrow */
}

/* Arrow pseudo-element */
    .button-back::before {
        content: "";
        position: absolute;
        width: 44px;
        height: 20px;
        left: 44px; /* Position arrow on the left */
        top: 50%;
        transform: translateY(-50%) scaleX(-1); /* Flip the arrow horizontally */
        background-image: url(nes/white-arrow.svg);
        background-size: 44px auto;
        background-repeat: no-repeat;
        z-index: 1; /* Ensure it appears on top */
    }

    .button-back:hover {
        background-color: #fff;
        color: #91aa2b;
    }

    .button-back:hover::before {
        content: "";
        position: absolute;
        width: 44px;
        height: 20px;
        left: 40px; /* Position arrow on the left */
        top: 50%;
        transform: translateY(-50%) scaleX(-1); /* Flip the arrow horizontally */
        background-image: url(nes/green-arrow.svg);
        background-size: 44px auto;
        background-repeat: no-repeat;
        z-index: 1; /* Ensure it appears on top */
    }

a {
    color: #91aa2b;
    text-decoration: none;
    transition: opacity .2s;
}

.confirm-input-line-div {
	color: black;
}

.row.confirm-header-div {
    font-size: 20px;
    font-weight: bold;
}

.confirm-evk-div {
	color: black;
	font-size: 16px;
	padding-top: 40px;
}

.confirm-consent-revocation {
	color: black;
}

.confirm-newsletter-list-item {
	color: black;
}

.data-input-header-div, .confirm-data-input-header-div {
	padding-top: 40px;
}

.success-header-text {
	color: var(--color);
}

label.disabled, a.disabled {
    opacity: 0.5;
    filter: grayscale(1);
    pointer-events: none;
}

.evk-checkbox:before {
    border: 3px solid var(--color);
    background-color: #fff;
    background-size: 15px 15px;
    content: "";
    position: absolute;
    width: var(--checkbox-size);
    height: var(--checkbox-size);
    border-radius: 8px;
    margin-top: -4px;
}

.evk-checkbox:disabled:before {
    border-color: gray;
}

.evk-checkbox:after {
    content: "";
    position: absolute;
    width: var(--checkbox-size);
    height: var(--checkbox-size);
    border-radius: 8px;
    background-image: var(--checkbox-symbol);
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: center center;
    opacity: 0; /* Unsichtbar im Standardzustand */
    transition: opacity 0.2s ease; /* Smooth transition */
    margin-top: -4px;
}

.evk-checkbox:checked:after {
    opacity: 1; /* Sichtbar bei Auswahl */
}

/* Standard-Checkbox bleibt sichtbar */
.newsletter-checkbox {
    position: relative;
    margin: 0;
}

/* Benutzerdefinierte Checkbox-Rahmen */
.newsletter-checkbox:before {
    content: "";
    position: absolute;
    width: var(--checkbox-size);
    height: var(--checkbox-size);
    border: 3px solid var(--color);
    border-radius: 8px;
    background-color: #fff;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/* Benutzerdefiniertes Häkchen */
.newsletter-checkbox:after {
    content: "";
    position: absolute;
    width: var(--checkbox-size);
    height: var(--checkbox-size);
    border-radius: 8px;
    background-image: var(--checkbox-symbol); /* Dein gewünschtes Häkchen-Bild */
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: center center;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    opacity: 0; /* Unsichtbar im Standardzustand */
    z-index: 0; /* Liegt unter der nativen Checkbox */
    transition: opacity 0.2s ease; /* Smooth transition */
}

/* Gecheckt-Zustand */
.newsletter-checkbox:checked:after {
    opacity: 1; /* Häkchen sichtbar */
}

.newsletter-checkbox-label-div {
    padding-left: 20px;
    height: 40px;
    font-family: var(--font-family-body);
    color: var(--color);
    font-size: 18px;
}

.row.header-div {
    margin-bottom: 20px;
}