/* ==========================================================================
   Home IT Abo Core – Frontend-Stile der dynamischen Blöcke
   Helle Identität: Weiss, Mint, frisches Grün, Navy als Akzent.
   ========================================================================== */

:root {
	--color-white: #FFFFFF;
	--color-warm-white: #FCFEFC;
	--color-background: #F6F8F7;
	--color-mint-50: #F2FBF5;
	--color-mint-100: #E5F7EA;
	--color-mint-200: #D6F1DE;
	--color-mint-300: #A9DDB9;

	--color-green-primary: #3F9D69;
	--color-green-hover: #2F7F55;
	--color-green-dark: #245F43;
	--color-green-light: #63B982;

	--color-navy: #173F73;
	--color-blue-muted: #547A9E;
	--color-blue-surface: #EEF5FA;

	--color-text: #1D2B25;
	--color-text-muted: #5F7067;
	--color-heading: #173F73;
	--color-heading-green: #245F43;

	--color-border: #DCE9E0;
	--color-border-strong: #C6D8CC;
	--color-border-blue: #D7E4ED;

	--color-success: #2F8A59;
	--color-success-surface: #E8F7ED;
	--color-warning: #B7791F;
	--color-error: #B74242;
	--color-whatsapp: #25D366;

	--shadow-small: 0 8px 24px rgba(36, 95, 67, .08);
	--shadow-card: 0 16px 45px rgba(36, 95, 67, .12);
	--shadow-floating: 0 22px 60px rgba(23, 63, 115, .14);
}

/* --- Angebotskarte ------------------------------------------------------- */

.hita-offer-card {
	position: relative;
	max-width: 470px;
	margin-inline: auto;
	background: var(--color-white);
	color: var(--color-text);
	border: 2px solid var(--color-mint-300);
	border-radius: 24px;
	padding: clamp(1.6rem, 3vw, 2.35rem);
	box-shadow: 0 20px 60px rgba(36, 95, 67, .12);
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease;
}

.hita-offer-card:hover { transform: translateY(-3px); box-shadow: 0 26px 70px rgba(36, 95, 67, .16); }

.hita-offer-card__accent {
	position: absolute;
	inset: 0 0 auto 0;
	height: 5px;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
}

.hita-offer-card__badge {
	display: inline-block;
	background: var(--color-mint-200);
	color: var(--color-green-dark);
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: .02em;
	border-radius: 999px;
	padding: .35rem .85rem;
	margin-bottom: .85rem;
}

.hita-offer-card__name {
	margin: 0;
	font-weight: 800;
	font-size: 1.25rem;
	color: var(--color-navy);
}

.hita-offer-card__price {
	margin: .35rem 0 1.35rem;
	display: flex;
	align-items: baseline;
	gap: .4rem;
	flex-wrap: wrap;
}

.hita-offer-card__amount {
	white-space: nowrap;
	font-size: clamp(2.1rem, 4.5vw, 2.9rem);
	font-weight: 800;
	color: var(--color-green-dark);
	line-height: 1.1;
}

.hita-offer-card__period { color: var(--color-text-muted); font-size: 1.0625rem; }

.hita-offer-card__list {
	list-style: none;
	margin: 0 0 1.6rem;
	padding: 0;
	display: grid;
	gap: .9rem;
}

.hita-offer-card__list li {
	display: flex;
	align-items: center;
	gap: .8rem;
	font-size: 1.0625rem;
	line-height: 1.45;
}


.hita-offer-card__cta { margin-bottom: 1rem; }
.hita-offer-card__cta .wp-block-button__link { width: 100%; }

.hita-offer-card__note { margin: 0; font-size: .95rem; color: var(--color-text-muted); }

.hita-offer-card--compact { max-width: 430px; }

/* --- Fakten, Vertrauen, Chips ------------------------------------------- */

.hita-hero-facts {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
	list-style: none;
	padding: 0;
	margin: 1.5rem 0;
}

.hita-hero-facts li {
	background: var(--color-white);
	border: 1px solid var(--color-mint-300);
	border-radius: 999px;
	padding: .6rem 1.1rem;
	font-weight: 700;
	color: var(--color-green-dark);
	box-shadow: var(--shadow-small);
}

.hita-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.hita-trust li {
	display: flex;
	align-items: center;
	gap: .8rem;
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 18px;
	padding: 1.05rem 1.2rem;
	font-weight: 700;
	color: var(--color-navy);
	box-shadow: var(--shadow-small);
}


.hita-chips { display: flex; flex-wrap: wrap; gap: .6rem; list-style: none; padding: 0; margin: 1.25rem 0 1.75rem; }

.hita-chips li {
	background: var(--color-white);
	border: 1px solid var(--color-border-blue);
	border-radius: 999px;
	padding: .55rem 1rem;
	color: var(--color-navy);
}

/* --- Persönliche Vertrauenszeile ---------------------------------------- */

.hita-person-line {
	display: inline-flex;
	align-items: center;
	gap: .75rem;
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 999px;
	padding: .4rem 1.1rem .4rem .4rem;
	font-weight: 700;
	color: var(--color-navy);
	box-shadow: var(--shadow-small);
	margin-top: .5rem;
}

.hita-person-line__avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	object-fit: cover;
	object-position: 40% 20%;
	border: 2px solid var(--color-mint-200);
}


/* --- Icons aus dem Icon-Paket -------------------------------------------- */

.hita-icon-badge { transition: transform .2s ease, background-color .2s ease; }
.hita-trust li:hover .hita-icon-badge,
.hita-contact-links a:hover .hita-icon-badge { transform: scale(1.06); background: var(--color-mint-200); }

.hita-icon-list {
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
	display: grid;
	gap: .9rem;
}

.hita-icon-list li {
	display: flex;
	align-items: flex-start;
	gap: .85rem;
	line-height: 1.6;
}

.hita-icon-list .hita-icon {
	flex: 0 0 auto;
	width: 1.75rem;
	height: 1.75rem;
	margin-top: .1rem;
}

.hita-icon--check { color: var(--color-green-hover); }
.hita-icon--note { color: var(--color-text-muted); }

.hita-offer-card__list .hita-icon-badge { align-self: flex-start; }

/* --- Listen -------------------------------------------------------------- */


.hita-service-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: .85rem 2rem;
	margin-top: 2rem;
}

.hita-small-note { font-size: .95rem; color: var(--color-text-muted); margin-top: 1.25rem; }

/* --- FAQ ----------------------------------------------------------------- */

.hita-faq { display: grid; gap: .75rem; margin-top: 2rem; }

.hita-faq__item {
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 18px;
	overflow: hidden;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.hita-faq__item:hover { border-color: var(--color-mint-300); box-shadow: var(--shadow-small); }
.hita-faq__item[open] { border-color: var(--color-mint-300); box-shadow: var(--shadow-small); }

.hita-faq__item summary {
	cursor: pointer;
	list-style: none;
	padding: 1.2rem 3.25rem 1.2rem 1.35rem;
	font-weight: 700;
	font-size: 1.0625rem;
	color: var(--color-navy);
	position: relative;
	min-height: 52px;
}

.hita-faq__item summary::-webkit-details-marker { display: none; }

.hita-faq__item summary::after {
	content: "";
	position: absolute;
	right: 1.35rem;
	top: 50%;
	width: 12px;
	height: 12px;
	border-right: 2.5px solid var(--color-green-primary);
	border-bottom: 2.5px solid var(--color-green-primary);
	transform: translateY(-70%) rotate(45deg);
	transition: transform .2s ease;
}

.hita-faq__item[open] summary::after { transform: translateY(-30%) rotate(-135deg); }

.hita-faq__answer { padding: 0 1.35rem 1.35rem; color: var(--color-text); }
.hita-faq__answer p { margin: 0; }

/* --- Individuelle Lösungen ---------------------------------------------- */

.hita-individual {
	background: var(--color-white);
	border: 1px solid var(--color-border-blue);
	border-left: 5px solid var(--color-blue-muted);
	border-radius: 22px;
	padding: clamp(1.5rem, 3.5vw, 2.5rem);
	box-shadow: var(--shadow-small);
}

.hita-individual__title { margin-top: 0; color: var(--color-navy); }

/* --- Profil -------------------------------------------------------------- */

.hita-profile {
	display: grid;
	grid-template-columns: minmax(200px, 330px) 1fr;
	gap: clamp(1.5rem, 4vw, 3rem);
	align-items: start;
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 26px;
	padding: clamp(1.35rem, 3vw, 2.25rem);
	box-shadow: var(--shadow-card);
}

.hita-profile__image {
	border-radius: 20px;
	box-shadow: var(--shadow-small);
	width: 100%;
	height: auto;
	border: 1px solid var(--color-mint-200);
}

.hita-profile__placeholder {
	display: grid;
	place-items: center;
	aspect-ratio: 4 / 5;
	border-radius: 20px;
	background: var(--color-mint-50);
	border: 1px dashed var(--color-border-strong);
	color: var(--color-green-hover);
}

.hita-profile__placeholder svg { width: 64px; height: 64px; }

.hita-profile__content h2 { margin-top: 0; color: var(--color-navy); }
.hita-profile__role { font-weight: 700; color: var(--color-green-hover); margin-top: -.5rem; }

.hita-profile__trust {
	background: var(--color-mint-100);
	border-radius: 16px;
	padding: 1rem 1.15rem;
	color: var(--color-green-dark);
	border: 1px solid var(--color-mint-200);
}

@media (max-width: 781px) {
	.hita-profile { grid-template-columns: 1fr; }
	.hita-profile__media { max-width: 300px; }
}

/* --- Kontaktlinks / Kontaktkarte ---------------------------------------- */

.hita-contact-links { list-style: none; padding: 0; margin: 1.25rem 0; display: grid; gap: .5rem; }

.hita-contact-links a {
	display: inline-flex;
	align-items: center;
	gap: .75rem;
	min-height: 52px;
	font-weight: 700;
	text-decoration: none;
	color: var(--color-navy);
}

.hita-contact-links a:hover { text-decoration: underline; color: var(--color-green-hover); }


.hita-contact-card {
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 24px;
	padding: clamp(1.35rem, 3vw, 2rem);
	box-shadow: var(--shadow-small);
}

.hita-contact-card__title { margin-top: 0; font-size: 1.35rem; color: var(--color-navy); }

/* --- Formular ------------------------------------------------------------ */

.hita-form-wrap {
	background: var(--color-white);
	border: 1px solid var(--color-border);
	border-radius: 26px;
	padding: clamp(1.35rem, 3.5vw, 2.5rem);
	box-shadow: var(--shadow-card);
	scroll-margin-top: 100px;
}

.hita-form-title { margin-top: 0; color: var(--color-navy); }

.hita-field { margin-bottom: 1.35rem; }
.hita-field label, .hita-field legend { display: block; font-weight: 700; margin-bottom: .4rem; color: var(--color-navy); }
.hita-field fieldset { border: 0; padding: 0; margin: 0; }

.hita-req { color: var(--color-error); }
.hita-optional { font-weight: 400; color: var(--color-text-muted); }

.hita-form input[type="text"],
.hita-form input[type="email"],
.hita-form input[type="tel"],
.hita-form textarea {
	font: inherit;
	width: 100%;
	min-height: 54px;
	padding: .9rem 1rem;
	border: 1.5px solid var(--color-border-strong);
	border-radius: 12px;
	background: var(--color-white);
	color: var(--color-text);
	transition: border-color .18s ease, box-shadow .18s ease;
}

.hita-form textarea { min-height: 150px; }

.hita-form input:focus, .hita-form textarea:focus {
	border-color: var(--color-green-primary);
	outline: 3px solid rgba(23, 63, 115, .28);
	outline-offset: 1px;
}

.hita-choices { display: flex; flex-wrap: wrap; gap: .6rem; }

.hita-choice {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	min-height: 52px;
	padding: .55rem 1rem;
	border: 1.5px solid var(--color-border-strong);
	border-radius: 12px;
	font-weight: 500;
	cursor: pointer;
	background: var(--color-white);
	transition: border-color .18s ease, background-color .18s ease;
}

.hita-choice input { width: 20px; height: 20px; accent-color: var(--color-green-primary); }
.hita-choice:hover { border-color: var(--color-green-primary); background: var(--color-mint-50); }
.hita-choice:has(input:checked) { border-color: var(--color-green-primary); background: var(--color-mint-100); }

.hita-field--consent .hita-choice { align-items: flex-start; border: 0; padding: 0; font-weight: 400; background: transparent; }
.hita-field--consent .hita-choice:hover { background: transparent; }

.hita-note { display: block; font-size: .95rem; color: var(--color-text-muted); margin-top: .5rem; }
.hita-note--legal { margin-top: 1rem; }

.hita-submit .hita-button {
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
	color: #FFFFFF;
	border: 2px solid var(--color-green-primary);
	border-radius: 14px;
	padding: 1rem 2rem;
	min-height: 58px;
	font: inherit;
	font-weight: 700;
	font-size: 1.0625rem;
	cursor: pointer;
	width: 100%;
	box-shadow: 0 8px 20px rgba(47, 127, 85, .24);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.hita-submit .hita-button:hover {
	background: var(--color-green-hover);
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(47, 127, 85, .3);
}

.hita-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.hita-alert { border-radius: 16px; padding: 1rem 1.25rem; margin-bottom: 1.5rem; }
.hita-alert--success { background: var(--color-success-surface); color: var(--color-green-dark); border: 1px solid var(--color-mint-300); }
.hita-alert--error { background: #FBEEEE; color: #7A2A2A; border: 1px solid #EAC5C5; }
.hita-alert ul { margin: .5rem 0 0 1.25rem; }

.hita-placeholder {
	background: #FDF6E7;
	border: 1px solid #EBD6A6;
	border-radius: 14px;
	padding: 1rem 1.15rem;
}

@media (min-width: 782px) {
	.hita-submit .hita-button { width: auto; }
}

/* --- Persönliches Widget ------------------------------------------------- */
/* Aufbau wie eine echte Visitenkarte: grosses Foto oben, dann Ansprache,
   dann der grüne WhatsApp-Button. Kein Chatbot-Look. */

.hita-widget {
	position: fixed;
	bottom: 1.5rem;
	z-index: 900;
	width: 340px;
	max-width: calc(100vw - 2rem);
}

.hita-widget--right { right: 1.5rem; }
.hita-widget--left { left: 1.5rem; }

.hita-widget--inline {
	position: static;
	width: 100%;
	max-width: 380px;
	margin: 1rem 0;
}

.hita-widget__card {
	position: relative;
	background: var(--color-white);
	border: 1px solid var(--color-border-strong);
	border-radius: 28px;
	box-shadow: 0 20px 55px rgba(36, 95, 67, .18);
	overflow: hidden;
	animation: hita-widget-in .32s ease-out;
}

@keyframes hita-widget-in {
	from { opacity: 0; transform: translateY(14px) scale(.985); }
	to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	.hita-widget__card { animation: none; }
}

.hita-widget__media {
	position: relative;
	background: var(--color-mint-100);
	line-height: 0;
}

.hita-widget__photo {
	position: relative;
	display: block;
	line-height: 0;
}

a.hita-widget__photo::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(23, 63, 115, 0) 60%, rgba(23, 63, 115, .16) 100%);
	opacity: 0;
	transition: opacity .2s ease;
}

a.hita-widget__photo:hover::after { opacity: 1; }

.hita-widget__media img {
	width: 100%;
	height: 250px;
	object-fit: cover;
	object-position: 45% 25%;
	display: block;
}

.hita-widget__close {
	position: absolute;
	top: .75rem;
	right: .75rem;
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .92);
	color: var(--color-text);
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(23, 63, 115, .18);
	transition: background-color .18s ease, transform .18s ease;
}

.hita-widget__close:hover { background: #FFFFFF; transform: scale(1.05); }

.hita-widget__body { padding: 1.35rem 1.35rem 1.4rem; }

.hita-widget__title {
	margin: 0 0 .35rem;
	font-weight: 800;
	font-size: 1.3125rem;
	line-height: 1.3;
	color: var(--color-navy);
}

.hita-widget__person { margin: 0 0 .6rem; font-size: 1rem; color: var(--color-text-muted); }
.hita-widget__person strong { color: var(--color-green-dark); }

.hita-widget__text { margin: 0 0 1.1rem; font-size: 1rem; color: var(--color-text-muted); }

.hita-widget__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	min-height: 58px;
	border-radius: 16px;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
	color: #FFFFFF !important;
	font-weight: 800;
	font-size: 1.0625rem;
	text-decoration: none;
	padding: .9rem 1rem;
	text-align: center;
	box-shadow: 0 8px 20px rgba(47, 127, 85, .26);
	transition: transform .2s ease, box-shadow .2s ease;
}

.hita-widget__button:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(47, 127, 85, .32); }
.hita-widget__button svg { width: 24px; height: 24px; }

.hita-widget__secondary {
	display: block;
	text-align: center;
	margin-top: .85rem;
	font-size: .95rem;
	font-weight: 600;
	color: var(--color-navy);
	min-height: 44px;
	line-height: 44px;
}

.hita-widget[hidden],
.hita-widget-pill[hidden] { display: none !important; }

.hita-widget-pill {
	position: fixed;
	right: 1rem;
	bottom: calc(80px + env(safe-area-inset-bottom, 0px));
	z-index: 899;
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	border: 1px solid var(--color-border-strong);
	background: var(--color-white);
	color: var(--color-navy);
	font-weight: 700;
	font-size: .95rem;
	border-radius: 999px;
	padding: .35rem 1rem .35rem .35rem;
	min-height: 48px;
	box-shadow: var(--shadow-floating);
	cursor: pointer;
}

.hita-widget-pill img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; object-position: 40% 20%; }

/* Sanfter Hinweis-Puls: läuft bewusst nur dreimal und bleibt dann ruhig. */
@keyframes hita-pulse {
	0% { box-shadow: 0 8px 20px rgba(47, 127, 85, .26), 0 0 0 0 rgba(63, 157, 105, .38); }
	70% { box-shadow: 0 8px 20px rgba(47, 127, 85, .26), 0 0 0 14px rgba(63, 157, 105, 0); }
	100% { box-shadow: 0 8px 20px rgba(47, 127, 85, .26), 0 0 0 0 rgba(63, 157, 105, 0); }
}

.hita-widget__button { animation: hita-pulse 2.4s ease-out .6s 3; }

@keyframes hita-pill-in {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: none; }
}

.hita-widget-pill { animation: hita-pill-in .3s ease-out; }
.hita-widget-pill:hover { border-color: var(--color-mint-300); transform: translateY(-2px); }
.hita-widget-pill { transition: transform .2s ease, border-color .2s ease; }

@media (prefers-reduced-motion: reduce) {
	.hita-widget__button, .hita-widget-pill { animation: none !important; }
}

/* --- Mobile Aktionsleiste ------------------------------------------------ */

.hita-mobile-bar {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 950;
	gap: .5rem;
	padding: .55rem .75rem calc(.55rem + env(safe-area-inset-bottom, 0px));
	background: rgba(255, 255, 255, .98);
	border-top: 1px solid var(--color-border);
	box-shadow: 0 -6px 20px rgba(36, 95, 67, .1);
}

.hita-mobile-bar__primary {
	flex: 1 1 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	border-radius: 14px;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
	color: #FFFFFF !important;
	font-weight: 800;
	text-decoration: none;
	padding: 0 1rem;
}

.hita-mobile-bar__whatsapp,
.hita-mobile-bar__phone {
	flex: 0 0 auto;
	display: inline-grid;
	place-items: center;
	width: 54px;
	height: 54px;
	border-radius: 14px;
	border: 1px solid var(--color-border-strong);
	color: var(--color-green-hover);
	background: var(--color-mint-50);
}

.hita-mobile-bar__whatsapp { color: var(--color-green-hover); background: var(--color-mint-50); }

@media (max-width: 781px) {
	.hita-mobile-bar { display: flex; }
	.hita-widget { bottom: calc(78px + env(safe-area-inset-bottom, 0px)); }
	.hita-widget--right, .hita-widget--left { right: 1rem; left: 1rem; width: auto; max-width: none; }
	.hita-widget__media img { height: 190px; }
	.hita-widget__title { font-size: 1.1875rem; }
}

/* Tastatur geöffnet: feste Leisten ausblenden, damit Felder frei bleiben. */
body.hita-keyboard-open .hita-mobile-bar,
body.hita-keyboard-open .hita-widget-pill,
body.hita-keyboard-open .hita-widget:not([data-inline]) { display: none !important; }

/* Geöffnetes Overlay-Menü: nichts darf darüber liegen. */
body.has-modal-open .hita-mobile-bar,
body.has-modal-open .hita-widget-pill,
body.has-modal-open .hita-widget:not([data-inline]) { display: none !important; }

/* --- Rechtstexte ---------------------------------------------------------- */

.hita-legal { max-width: 760px; }

.hita-legal h2 {
	margin-top: 2.25rem;
	font-size: 1.4rem;
	color: var(--color-navy);
}

.hita-legal h2:first-child { margin-top: 0; }

.hita-legal p { margin-block: .85rem; }

.hita-legal-list {
	margin: .85rem 0 1.25rem;
	padding-left: 1.35rem;
	display: grid;
	gap: .4rem;
}

.hita-legal-address {
	background: var(--color-mint-50);
	border-left: 4px solid var(--color-green-primary);
	border-radius: 0 12px 12px 0;
	padding: .9rem 1.15rem;
	line-height: 1.6;
}

.hita-legal-form {
	background: var(--color-white);
	border: 1px solid var(--color-border-strong);
	border-radius: 16px;
	padding: 1.25rem 1.35rem;
	margin: 1rem 0 1.5rem;
}

.hita-legal-form p { margin-block: .6rem; }

.hita-legal-stand {
	margin-top: 2.5rem;
	padding-top: 1rem;
	border-top: 1px solid var(--color-border);
	font-size: .95rem;
	color: var(--color-text-muted);
}

/* --- Fernwartungs-Download ------------------------------------------------ */
/* Ruhige, freundliche Karte. Sie steht bewusst nicht in Konkurrenz zum
   Haupt-Handlungsaufruf der Website, ist aber sofort auffindbar. */

.hita-remote {
	position: relative;
	max-width: 620px;
	background:
		radial-gradient(120% 120% at 100% 0%, rgba(229, 247, 234, .9) 0%, rgba(255, 255, 255, 0) 55%),
		var(--color-white);
	border: 2px solid var(--color-mint-300);
	border-radius: 24px;
	padding: clamp(1.5rem, 3.5vw, 2.25rem);
	box-shadow: 0 18px 50px rgba(36, 95, 67, .12);
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease;
}

.hita-remote:hover { transform: translateY(-3px); box-shadow: 0 24px 60px rgba(36, 95, 67, .16); }

.hita-remote::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 5px;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
}

.hita-remote__head {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1rem;
}

.hita-remote__title {
	margin: 0;
	font-size: clamp(1.3rem, 2.4vw, 1.5rem);
	font-weight: 800;
	color: var(--color-navy);
	line-height: 1.25;
}

.hita-remote__tool {
	margin: .15rem 0 0;
	font-size: 1rem;
	font-weight: 600;
	color: var(--color-green-hover);
}

.hita-remote__text { margin: 0 0 1.25rem; color: var(--color-text); }

.hita-remote__steps {
	counter-reset: hita-remote-step;
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: grid;
	gap: .6rem;
}

.hita-remote__steps li {
	counter-increment: hita-remote-step;
	position: relative;
	padding-left: 2.6rem;
	min-height: 2rem;
	display: flex;
	align-items: center;
	font-weight: 600;
	color: var(--color-navy);
}

.hita-remote__steps li::before {
	content: counter(hita-remote-step);
	position: absolute;
	left: 0;
	top: 0;
	width: 2rem;
	height: 2rem;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--color-mint-100);
	border: 1px solid var(--color-mint-300);
	color: var(--color-green-dark);
	font-weight: 800;
	font-size: .95rem;
}

.hita-remote__action { margin: 0 0 .85rem; }

.hita-remote__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .7rem;
	width: 100%;
	min-height: 60px;
	padding: 1rem 1.75rem;
	border-radius: 16px;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
	color: #FFFFFF !important;
	font-weight: 800;
	font-size: 1.0625rem;
	text-decoration: none;
	box-shadow: 0 10px 24px rgba(47, 127, 85, .26);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.hita-remote__button:hover {
	background: var(--color-green-hover);
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(47, 127, 85, .32);
}

.hita-remote__button:active { transform: translateY(0); }

.hita-remote__button:focus-visible {
	outline: 3px solid var(--color-navy);
	outline-offset: 3px;
}

.hita-remote__button .hita-icon { width: 26px; height: 26px; }

.hita-remote__note { margin: 0 0 1.1rem; font-size: .95rem; color: var(--color-text-muted); }

.hita-remote__trust {
	display: flex;
	align-items: flex-start;
	gap: .65rem;
	margin: 0;
	padding-top: 1rem;
	border-top: 1px solid var(--color-border);
	font-size: .95rem;
	color: var(--color-green-dark);
}

.hita-remote__trust .hita-icon { flex: 0 0 auto; width: 22px; height: 22px; color: var(--color-green-hover); margin-top: .1rem; }

@media (min-width: 560px) {
	.hita-remote__button { width: auto; min-width: 320px; }
}


/* --- Zwei Handlungsaufrufe ----------------------------------------------- */
/* Der direkte Abschluss ist deutlich hervorgehoben, die Anfrage bleibt als
   ruhige Alternative sichtbar. Zwei gleich laute Buttons würden lähmen. */

.hita-cta-pair {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: center;
	margin: 1.5rem 0;
}

.hita-cta-pair--center { justify-content: center; }

.hita-cta-primary .wp-block-button__link {
	position: relative;
	font-size: 1.125rem;
	font-weight: 800;
	min-height: 60px;
	padding-inline: 2rem;
	background: linear-gradient(135deg, #4BAA72 0%, #2F7F55 100%);
	border-color: var(--color-green-primary);
	box-shadow: 0 10px 26px rgba(47, 127, 85, .3);
}

.hita-cta-primary .wp-block-button__link::after {
	content: "→";
	font-weight: 700;
	transition: transform .2s ease;
}

.hita-cta-primary .wp-block-button__link:hover::after { transform: translateX(3px); }

.hita-cta-primary .wp-block-button__link:hover {
	box-shadow: 0 14px 32px rgba(47, 127, 85, .38);
}

/* Ruhiger Zweitweg: gleiche Höhe, aber ohne Fläche. */
.hita-cta-secondary .wp-block-button__link {
	min-height: 60px;
	font-weight: 600;
	background: transparent;
	border-color: var(--color-border-strong);
	color: var(--color-navy);
	box-shadow: none;
}

.hita-cta-secondary .wp-block-button__link:hover {
	background: var(--color-white);
	border-color: var(--color-green-primary);
	color: var(--color-green-dark);
}

.hita-offer-card__cta .hita-cta-pair { flex-direction: column; align-items: stretch; margin: 0 0 1rem; }
.hita-offer-card__cta .wp-block-button__link { width: 100%; }

@media (max-width: 560px) {
	.hita-cta-pair { flex-direction: column; align-items: stretch; }
	.hita-cta-pair .wp-block-button__link { width: 100%; }
}
