/*
Theme Name: Huon
Theme URI: https://huon.love/
Author: Daniel Kreth
Author URI: https://huon.love/
Description: A child theme of the Twenty Twenty-Five theme.
Tags:
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 5.2
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: huon

Huon WordPress Theme 2024
*/

/*
	Schwarz		#010102	rgba(1, 1, 2, 1.0)
	Dunkelgrau	#2C262D	rgba(44, 38, 45, 1.0)
	Grau		#49444E	rgba(73, 68, 78, 1.0)
	Hellgrau	#FAF8FB	rgba(250, 248, 251, 1.0)
	Weiß		#FCFCFC	rgba(252, 252, 252, 1.0)
	Rosa		#FCB2FF	rgba(252, 178, 255, 1.0)
	Blau		#9799FC	rgba(151, 153, 252, 1.0)
	Dunkelblau	#444067	rgba(68, 64, 103, 1.0)
	Lila		#684C72	rgba(104, 76, 114, 1.0)
	Rot			#DA4453	rgba(218, 68, 83, 1.0)
	Op. Blau	#9799FC1F	rgba(151, 153, 252, 1.0)

	#ffef00  rgb(255 239 0)

	#dbdcfc

	Gradient
	Background Blue		#444067	rgba(68, 64, 103, 1.0)
	Blau oben-rechts	#7e7fd3	rgba(126, 127, 211, 1.0)
	Rot unten-links		#b3344d	rgba(179, 52, 77, 1.0)
	Lila oben-links		#9c79b3	rgba(156, 121, 179, 1.0)

	Türkies		#8FF5D9	rgba(143, 245, 217, 1.0)
	Green		#9FFfbf	rgba(159, 255, 191, 1.0)
	Light Green	#E2FFFF	rgba(226, 255, 255, 1.0)
*/


/*
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}
*/
/*

1. Lokal definierte Variablen für spezifische Module
Wenn Variablen nur für ein Modul relevant sind, definiere sie lokal im Selektor.
css
Kopieren
Bearbeiten
.card {
    --card-padding: 20px;
    --card-border-radius: 8px;
}

.card {
    padding: var(--card-padding);
    border-radius: var(--card-border-radius);
}
2. Dynamisches Setzen von Variablen in JavaScript
CSS-Variablen können auch dynamisch über JavaScript geändert werden. Das ist hilfreich, wenn Variablen von Benutzerinteraktionen oder Themes abhängen.

javascript
Kopieren
Bearbeiten
// Ändere eine globale Variable
document.documentElement.style.setProperty('--primary-color', '#e74c3c');
// Ändere eine lokale Variable
document.querySelector('.card').style.setProperty('--card-padding', '15px');
*/

/* =======================================
	GENERAL
	------- */

/*
--------------
--- HEADER ---

<header class="huon huon-header">
    <div class="huon-header-group">
        <div class="huon-site-title">
        <div class="huon-navigation-group">
            <nav class="huon-navigation">

---------------
--- CONTENT ---

Layer 1: <body>
Layer 2: 	<main class="huon huon-content-container">
Layer 3: 		<div class="huon-content">
Layer 4: 			<div class="huon-content-section">
        				<h1 class="huon-post-title">
Layer 5: 				<div class="section-head">
						<div class="multi-column-container-grid">
		    				<div class="column-grid">
						<div class="multi-column-container">
							<div class="column">

--------------
--- FOOTER ---

<footer class="huon huon-footer">
	<div id="global-tooltip"></div>
    <div class="huon-footer-group">
        <div class="huon-site-information">
            <h2 class="huon-site-title">
            <p class="huon-site-tagline">
        <div class="huon-navigation-group">
            <nav class="huon-navigation">
            <nav class="huon-navigation">
        <div class="huon-footer-bottom">
            <p class="has-small-font-size">

*/

/* =======================================
	GLOBAL
	------- */
:root {
    --breakpoint-sm: 576px;   /* sm ≤ 576px Smartphones */
    --breakpoint-md: 768px;   /* md 577px - 768px Tablets im Hochformat */
    --breakpoint-lg: 992px;   /* lg 769px - 992px Tablets im Querformat, kleine Laptops */
    --breakpoint-xl: 1200px;  /* Extra Large */

    --text-color: #010102;
    --background-color: #FCFCFC;

    --background-admin: rgba(1, 1, 2, 1.0);
    --background-admin: rgba(44, 38, 45, 1.0);
    --background-admin: rgba(73, 68, 78, 1.0);
    --background-admin: rgba(104, 76, 114, 1.0);
    --background-admin: rgba(68, 64, 103, 1.0);
    --background-admin: #131B1F;
    --background-admin: #1d2327;

    --bg-alpha: 70%;

    --background-gradient-1: radial-gradient(circle at top left, rgba(156, 121, 179, 1.0), transparent var(--bg-alpha)), /* #9c79b3 */
			               radial-gradient(circle at top right, rgba(126, 127, 211, 1.0), transparent var(--bg-alpha)), /* #7e7fd3 */
			               radial-gradient(circle at bottom left, rgba(179, 52, 77, 1.0), transparent var(--bg-alpha)), /* #b3344d */
			               radial-gradient(circle at bottom right, rgba(68, 64, 103, 1.0), transparent var(--bg-alpha)); /* #444067 */

	--background-gradient-3: radial-gradient(circle at top left, rgba(222, 173, 255, 1.0), transparent var(--bg-alpha)), /* #DEADFF */
                       radial-gradient(circle at top right, rgba(153, 155, 255, 1.0), transparent var(--bg-alpha)), /* #999BFF */
                       radial-gradient(circle at bottom left, rgba(255, 163, 244, 1.0), transparent var(--bg-alpha)), /* #FFA3F4 */
                       radial-gradient(circle at bottom right, rgba(168, 158, 255, 1.0), transparent var(--bg-alpha)); /* #A89EFF */

	--background-gradient: radial-gradient(circle at top left, rgba(222, 173, 255, 0.0), transparent var(--bg-alpha)), /* #DEADFF */
                       radial-gradient(circle at top right, rgba(153, 155, 255, 0.0), transparent var(--bg-alpha)), /* #999BFF */
                       radial-gradient(circle at bottom left, rgba(255, 163, 244, 0.54), transparent var(--bg-alpha)), /* #FFA3F4 */
                       radial-gradient(circle at bottom right, rgba(168, 158, 255, 0.61), transparent var(--bg-alpha)); /* #A89EFF */


	--background-gradient-lin: linear-gradient(to bottom right, #DEADFF, #999BFF, #A89EFF);
	--background-gradient-lin-1: linear-gradient(to bottom right, rgba(255, 163, 244, 0.54), rgba(168, 158, 255, 0.61));

	--background-gradient-header: var(--background-gradient);
	--background-gradient-sidepanel: var(--background-gradient);

    --background-gradient-2: radial-gradient(circle at top left, rgba(156, 121, 179, 1.0), transparent var(--bg-alpha)), /* #9c79b3 */
			               radial-gradient(circle at top right, rgba(126, 127, 211, 1.0), transparent var(--bg-alpha)), /* #7e7fd3 */
			               radial-gradient(circle at bottom left, rgba(179, 52, 77, 1.0), transparent var(--bg-alpha)), /* #b3344d */
			               radial-gradient(circle at bottom right, rgba(68, 64, 103, 1.0), transparent var(--bg-alpha)); /* #444067 */

	--background-gradient-light: radial-gradient(circle at top left, rgba(247, 96, 74, 0.5), transparent var(--bg-alpha)), /* #F7604A */
	            radial-gradient(circle at top right, rgba(247, 156, 74, 0.5), transparent var(--bg-alpha)), /* #F79C4A */
	            radial-gradient(circle at bottom left, rgba(247, 126, 104, 0.5), transparent var(--bg-alpha)), /* #F77E4A */
	            radial-gradient(circle at bottom right, rgba(247, 183, 74, 0.5), transparent var(--bg-alpha)); /* #F7B74A */

	--background-gradient-basic: radial-gradient(circle at top left, rgba(74, 247, 171, 0.5), transparent var(--bg-alpha)), /* #4AF7AB */
	            radial-gradient(circle at top right, rgba(74, 209, 247, 0.5), transparent var(--bg-alpha)), /* #4AD1F7 */
	            radial-gradient(circle at bottom left, rgba(74, 230, 112, 0.5), transparent var(--bg-alpha)), /* #4AF770 */
	            radial-gradient(circle at bottom right, rgba(74, 154, 247, 0.5), transparent var(--bg-alpha)); /* #4A9AF7 */

	--background-gradient-pro: radial-gradient(circle at top left, rgba(124, 74, 247, 0.5), transparent var(--bg-alpha)), /* #7C4AF7 */
	            radial-gradient(circle at top right, rgba(238, 74, 247, 0.5), transparent var(--bg-alpha)), /* #EE4AF7 */
	            radial-gradient(circle at bottom left, rgba(181, 74, 247, 0.5), transparent var(--bg-alpha)), /* #B54AF7 */
	            radial-gradient(circle at bottom right, rgba(74, 81, 247, 0.5), transparent var(--bg-alpha)); /* #4A51F7 */

    --background-gradient-master: radial-gradient(circle at top left, rgba(74, 247, 171, 0.5), transparent var(--bg-alpha)), /* #4AF7AB */
                radial-gradient(circle at top right, rgba(238, 74, 247, 0.5), transparent var(--bg-alpha)),/* #EE4AF7 */
                radial-gradient(circle at bottom left, rgba(181, 74, 247, 0.5), transparent var(--bg-alpha)),/* #B54AF7 */
                radial-gradient(circle at bottom right, rgba(247, 183, 74, 0.5), transparent var(--bg-alpha));/* #F7B74A */

    --background-gradient-pricing: radial-gradient(circle at top left, rgba(74, 247, 171, 0.2), transparent 50%), /* #4AF7AB */
                radial-gradient(circle at top right, rgba(238, 74, 247, 0.2), transparent 50%),/* #EE4AF7 */
                radial-gradient(circle at bottom left, rgba(181, 74, 247, 0.2), transparent 50%),/* #B54AF7 */
                radial-gradient(circle at bottom right, rgba(247, 183, 74, 0.2), transparent 50%);/* #F7B74A */

    --background-gradient-footer: radial-gradient(circle at top left, rgba(222, 173, 255, 1.0), transparent var(--bg-alpha)), /* #DEADFF */
                       radial-gradient(circle at top right, rgba(153, 155, 255, 1.0), transparent var(--bg-alpha)), /* #999BFF */
                       radial-gradient(circle at bottom left, rgba(255, 74, 110, 1.0), transparent var(--bg-alpha)), /* #FF4A6E */
                       radial-gradient(circle at bottom right, rgba(168, 158, 255, 1.0), transparent var(--bg-alpha)); /* #A89EFF */

    --background-gradient-footer: var(--background-gradient-master);
/*    --background-gradient-footer: var(--background-gradient);*/
/*    --background-gradient-footer: var(--background-gradient-light);*/
/*    --background-gradient-footer: var(--background-gradient-basic);*/
/*    --background-gradient-footer: var(--background-gradient-pro);*/


    --section-gap: 80px;
    --max-width: 800;
    --alpha: 50%;
    --padding-left: 50px;
    --padding-right: 50px;

    --font-family: 'Manrope', sans-serif;
    --font-family-2: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;

    --font-size: 1.123rem; /*1.1rem*/
    --font-size-smaller: 1.123rem;
    --font-size-big: 1.38rem;

    --font-size-sm-1: 0.9rem;
    --font-size-sm-2: 1.0rem;

    --section-padding: 80px;

    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --border-radius-lg: 16px;
    --border-radius-xl: 32px;

    --margin-negative: calc(var(--padding) * -1);
}

:root {
	--hero-offset: 72px;
}

body.admin-bar {
	--hero-offset: 104px;
}

@media (max-width: 768px) {
    :root {
    	--font-size: 1.2rem;
    }
}

html {
    height: auto;
    min-height: 100%;
    overflow-x: hidden;
    overscroll-behavior: none;
/*    scroll-behavior: smooth;*/
}

@media (max-width: 768px) {
	html {
    	overscroll-behavior: initial;
    }
}
body {
    font-size: var(--font-size) !important;
    margin: 0;
    min-height: 100vh;
/*    overflow-y: auto;*/
}

body.huon-page {
    background: var(--background-gradient);
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
}

main {
    flex-grow: 1;
}

body.huon-page::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
    background: var(--background-gradient);
	background-size: cover;
	background-position: center;
	z-index: -1;
}

body.huon-area-studio {
    background: var(--background-gradient);
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
}
body.huon-area-hub {
    background: var(--background-gradient-basic);
}
body.huon-area-lab {
    background: var(--background-gradient-master);
}

@supports (-webkit-touch-callout: none) {
	/* Speziell für iOS */
	/*body {
    	background: var(--background-gradient);
		background-attachment: local;
	}*/
}

@media (max-width: 768px) {
	body {
/*        padding: 8px;*/
    }
}

[data-lastpass-root],
[data-lastpass-icon-root] {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
}
/* =======================================
	UTILITY
	------- */
.text-block, /* oder .content-area, .typography-group */
.typography-default {
    --heading-margin-top: 1em;
    --heading-font-weight: 600;
    --paragraph-margin: 0.5em;
}

.typography-default h1,
.typography-default h2,
.typography-default h3,
.typography-default h4 {
    margin-top: var(--heading-margin-top);
    font-weight: var(--heading-font-weight);
}

.typography-default h1 { font-size: 2rem; margin-top: 50px; }
.typography-default h2 { font-size: 1.5rem; }
.typography-default h3 { font-size: 1.4rem; }
.typography-default h4 { font-size: 1.2rem; }

.typography-default p {
    margin-top: var(--paragraph-margin);
    margin-bottom: var(--paragraph-margin);
}

.typography-default strong {
    font-weight: var(--heading-font-weight) !important;
}

.typography-default *:first-child {
    margin-top: 0;
    padding-top: 0;
    margin-block-start: 0;
}


/* =======================================
	ADMIN BAR
	------- */
@media screen and (max-width: 782px) {
    /*#wpadminbar {
        height: auto !important;
        min-height: 46px;
    }

    html {
        margin-top: 0 !important;
    }*/
}
#wp-admin-bar-my-account{
}

#wp-admin-bar-my-account{
/*	height: 46px;*/
}
/*#wpadminbar li#wp-admin-bar-my-account {
    display: flex;
    align-items: center;
    height: 46px;
}*/

/*#wpadminbar li#wp-admin-bar-my-account > a {
    display: flex;
    align-items: center;
    padding: 0 12px;
    height: 100%;
}*/

#wpadminbar {
    /*direction: ltr;
    color: #c3c4c7;
    font-size: 13px;
    font-weight: 400;
    font-family: var(--font-family);
    line-height: 2.46153846;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 600px;
    z-index: 99999;
    background: var(--background-admin);
    outline: 1px solid transparent;*/
/*    height: 32px;*/
}
#wpadminbar * {
    /*height: auto;
    width: auto;
    margin: 0;
    padding: 0;
    position: static;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    font-size: 13px;
    font-weight: 400;
    font-family: var(--font-family);
    font-style: normal;
    line-height: 2.46153846;
    border-radius: 0;
    box-sizing: content-box;
    transition: none;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;*/
}
#adminmenuback {
    background: var(--background-admin);
    /*position: fixed;
    top: 0;
    bottom: -120px;
    z-index: 1;
    outline: 1px solid transparent;*/
}
#adminmenuwrap {
    /*position: relative;
    float: left;
    z-index: 9990;*/
}
#adminmenu {
    /*clear: left;
    margin: 12px 0;
    padding: 0;
    list-style: none;*/
}

#wp-auth-check {
    background: var(--background-gradient);
}

.collapse-button-label {
	font-size: 0.8em;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;
}

.huon p {
	font-size: var(--font-size);
}


/* =======================================
	huon-notification
	------------ */
#huon-notification,
.huon-notification,
.huon .notification
{
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: auto;
/*	margin-top: 10px;*/
	padding: 0px;
    border-radius: var(--border-radius-md);
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    background-color: #f2dede;
    transition: all;
}

#huon-notification h2, #huon-notification h3,
.huon-notification h2, .huon-notification h3
{
	font-weight: 500;
	font-size: 25px;
	margin: auto;
	margin-bottom: 0px;
}

#huon-notification p,
.huon-notification p,
.huon .notification p
{
	padding: 10px !important;
	margin: 0 !important;
}

#huon-notification .notification-icon,
.huon-notification .notification-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 28px !important;
}

#huon-notification .check-circle-icon::before,
.huon-notification .check-circle-icon::before
{
	content: "\2713";
	/* content: "✓";*/
	color: #fcfcfc;
	font-size: 60px;
}

/*.huon .notice-error {
    background-color: #f2dede;
    color: #a94442;
    border: 1px solid #ebccd1;
}
.huon .huon-notice {
    padding: 15px;
    border-radius: 5px;
    font-size: 16px;
    margin-bottom: 20px;
}*/
/*#wpadminbar {
    background-color: #1d3557 !important;
    font-family: 'Arial', sans-serif !important;
}
#wpadminbar .ab-item {
    color: #f1faee !important;
}
#wpadminbar #wp-admin-bar-my-account .ab-item:before {
    content: "\f007";
    font-family: FontAwesome;
}*/


/* =======================================
	HEADER & FOOTER
	------- */
header.huon-header {
    font-family: var(--font-family);
    color: var(--text-color);
    padding: 20px 0;
}

#main-header {
    position: sticky;
    top: 0;
    padding: 0px;
    z-index: 999;
    transition: background 0.6s ease, backdrop-filter 0.6s ease;
/*    height: var(--hero-offset);*/

    /*background: transparent;
    backdrop-filter: none;*/
/*	opacity: 0.8;*/
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
body.admin-bar #main-header {
    top: 32px;
}

@media (max-width: 768px) {
	body.admin-bar #main-header {
	    top: 0;
	}
}

#main-header.scrolled {
/*    background: rgba(255, 255, 255, 0.85);*/
	/*background: var(--background-gradient-header);
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);*/
}



/* -------------------------------------------------- */
/* Hero */
/* Basic Reset */
/** {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}*/

/* Hero Section Layout */
.hero-section {
	min-height: calc(100vh - var(--hero-offset));
	display: flex;
	align-items: center;
	justify-content: center;
/*	padding: 30px;*/
	background: var(--background-gradient-header);
    border: 1px solid #D9D9D9;
	overflow: hidden;
	width: 100%;
/*    width: calc(100% - 60px);*/
    width: 100%;
}

.hero-inner {
	flex: 1;
	display: flex;
	flex-direction: row;
/*	align-items: center;*/
    align-items: flex-start;
/*    justify-content: space-around;*/
    justify-content: center;
    gap: 40px;
	max-width: 1200px;
	width: 100%;
/*	flex-wrap: wrap;*/
	flex-wrap: nowrap;
	padding: 0px 10px;
}

@media (max-width: 768px) {

	.hero-inner {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 30px;
		padding: 40px 10px 20px 10px;

		flex-wrap: wrap;
	}
}
/* Image Styling */
.hero-image {
    flex: 0 0 auto;
	max-width: 650px;
	padding: 8px 4px;
	border-radius: 48px !important;
	width: 100%;
/*    box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.2);*/
/*    border: 1px solid #666;*/
}

.hero-image img {
	display: block;             /* Safari fix gegen whitespace-gap */
	max-width: 350px;
	width: 100%;
	height: auto;
/*	object-fit: contain;*/
	object-fit: cover;
	object-position: center 50%;
	animation: fadeInUp 1s ease-out forwards;
}

@media (max-width: 768px) {
	.hero-image {
		order: 2;
    	max-width: 100%;
	}
}

/* Text Section */
.hero-text {
    flex: 1 1 0;
    min-width: 300px;
	max-width: 500px;
}

.hero-text h1 {
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
    margin-block-start: 0em;
    margin-block-end: 0em;
}

.hero-text h2 {
	font-size: 1.5rem;
	font-weight: 400;
	color: #666;
    margin-block-start: 0em;
    margin-block-end: 0em;
	margin-bottom: 0.5rem;
}

.hero-text p {
	font-size: 1.1rem;
	margin: 1rem 0;
	color: #333;
}

@media (max-width: 768px) {
	.hero-text {
		order: 1;
    	max-width: 100%;
	}

	.hero-features,
	.hero-button,
	.hero-note {
		order: 3;
	}

	.hero-text h1 {
		font-size: 2.5rem;
	}

	.hero-text h2 {
		font-size: 1.25rem;
	}

	.hero-features li {
		padding-left: 1.25rem;
	}

	.hero-image img {
		max-width: 250px;
	}
}

.hero-features {
	text-align: left;
	list-style: none;
	margin-top: 1rem;
	margin-bottom: 2rem;
}

.hero-features li {
	margin-bottom: 0.33rem;
	padding-left: 1.5rem;
	position: relative;
}

.hero-features li::before {
	content: "✔";
	position: absolute;
	left: 0;
	color: #70f0c2;
	color: #0d0f13;
}

/* Button */
.hero-button {
	display: inline-block;
	padding: 0.75rem 2rem;
	background-color: #70f0c2;
	color: #0d0f13;
	text-decoration: none;
	border-radius: 999px;
	font-weight: bold;
	transition: background 0.3s ease;
}

.hero-button:hover {
	background-color: #4bdca9;
}

.hero-note {
	font-size: 0.9rem;
	margin-top: 1rem;
	color: #bbbbbb;
}

/* Animations */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.fade-in {
	opacity: 0;
	animation: fadeInUp 0.8s ease forwards;
}

.delay-1 { animation-delay: 0.2s; }
.delay-2 { animation-delay: 0.4s; }
.delay-3 { animation-delay: 0.6s; }
.delay-4 { animation-delay: 0.8s; }
.delay-5 { animation-delay: 1.0s; }
.delay-6 { animation-delay: 1.2s; }
.delay-7 { animation-delay: 1.4s; }
.delay-8 { animation-delay: 1.6s; }
.delay-9 { animation-delay: 1.8s; }

/* Responsive Design */


/* -------------------------------------------------- */
/*  */
.sffm-open-menu-2 {
	padding: 2px;
	border-radius: 50%;
}
.sffm-open-menu-2:hover {
    color: #7e7fd3;
}

.huon .huon-hero {
    min-height: 70px;
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
    border-radius: var(--border-radius-sm);
}
.huon .huon-hero img {
	width: 100%;
	height: 250px;
	object-fit: cover;
	object-position: center 85%;
	border-radius: 8px;
}

@media (max-width: 768px) {
	.huon .huon-hero img {
		border-radius: 0px;
	}
}

/* Header Group Layout */
header .huon-top-header {
    padding: 15px 25px 15px 15px;

	background: var(--background-gradient-header);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    /*display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;*/
}

/*
	Schwarz		#010102	rgba(1, 1, 2, 1.0)
	Dunkelgrau	#2C262D	rgba(44, 38, 45, 1.0)
	Grau		#49444E	rgba(73, 68, 78, 1.0)
	Hellgrau	#FAF8FB	rgba(250, 248, 251, 1.0)
	Weiß		#FCFCFC	rgba(252, 252, 252, 1.0)
	Rosa		#FCB2FF	rgba(252, 178, 255, 1.0)
	Blau		#9799FC	rgba(151, 153, 252, 1.0)
	Dunkelblau	#444067	rgba(68, 64, 103, 1.0)
	Lila		#684C72	rgba(104, 76, 114, 1.0)
	Rot			#DA4453	rgba(218, 68, 83, 1.0)
	Op. Blau	#9799FC1F	rgba(151, 153, 252, 1.0)

	#ffef00  rgb(255 239 0)

	Gradient
	Background Blue		#444067	rgba(68, 64, 103, 1.0)
	Blau oben-rechts	#7e7fd3	rgba(126, 127, 211, 1.0)
	Rot unten-links		#b3344d	rgba(179, 52, 77, 1.0)
	Lila oben-links		#9c79b3	rgba(156, 121, 179, 1.0)

	Türkies		#8FF5D9	rgba(143, 245, 217, 1.0)
	Green		#9FFfbf	rgba(159, 255, 191, 1.0)
	Light Green	#E2FFFF	rgba(226, 255, 255, 1.0)
*/
header .huon-bottom-header {
    padding: 8px;
    background: rgba(44, 38, 45, 0.5);
    background: rgba(104, 76, 114, 0.5);
    background: rgba(68, 64, 103, 0.5);
    background: rgba(226, 255, 255, 0.2);
    background: rgba(151, 153, 252, 0.4);
    /*display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;*/
}

header .huon-top-actions {
    display: flex;
    gap: 15px;

    justify-content: flex-end;

	align-items: center;
	width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 0px;
    padding-right: 0px;
}

header .huon-header-group {
    display: flex;
    justify-content: space-between;
	align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    /*padding-left: var(--padding-left);
    padding-right: var(--padding-right);*/
    padding-left: 0px;
    padding-right: 0px;
    gap: 30px;
}

@media (max-width: 768px) {
	header .huon-header-group {
        flex-direction: row;
        gap: 20px;
	}
	header .huon-top-actions {
    	justify-content: center;
	}
}

/* -------------------------------------------------- */
/* Title & Tagline */
header .huon-site-title-group {
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: var(--font-size-big);
    font-weight: 700;
    letter-spacing: -.5px;
    margin: 0;
    text-align: left;

    gap: 20px;
}

@media (max-width: 768px) {
	header .huon-site-title-group
	{
    	gap: 15px;
	}
}

header .huon-site-title {
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: var(--font-size-big);
    font-weight: 700;
    letter-spacing: -.5px;
    margin: 0;
    text-align: left;

    gap: 15px;
}

header .huon-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin: 0 auto;
    margin-bottom: 30px;

	/*background: radial-gradient(circle at top left, rgba(156, 121, 179, 0.1), transparent 50%),
				radial-gradient(circle at top right, rgba(126, 127, 211, 0.1), transparent 50%),
				radial-gradient(circle at bottom left, rgba(179, 52, 77, 0.1), transparent 50%),
				radial-gradient(circle at bottom right, rgba(68, 64, 103, 0.1), transparent 50%);*/

    padding: 10px;
/*    width: fit-content;*/
}

/* Logo Image */
header .huon-site-title img,
header .huon-logo img
{
    width: 55px;
    height: auto;
    margin: 0;
    /*border-radius: var(--border-radius-md);
    border: 3px solid rgba(156, 121, 179, 0.1);*/
    object-fit: cover;
}

/*.huon-logo-icon*/
header .huon-site-title svg,
header .huon-logo svg {
    display: block;
    width: 60px;
    height: 60px;
    align-items: center;
    justify-items: center;
    /*max-width: 100%;
    max-height: 100%;
    overflow: hidden;
    object-fit: contain;*/
}

/*header .huon-logo svg path {
    stroke-width: 1px !important;
}*/

@media (max-width: 768px) {
	header .huon-site-title img,
	header .huon-logo img,
	header .huon-site-title svg,
	header .huon-logo svg
	{
/*        display: none;*/
	}
}


/* Logo Text */
header .huon-site-title span,
header .huon-logo span
{
    font-weight: 300;
    font-size: 1.5rem;

    font-weight: 700;
    letter-spacing: -.5px;
    margin: 0;
}


/* =======================================
	Navigation
	------- */
header .huon-navigation-group,
footer .huon-navigation-group
{
    display: flex;
/*    align-items: center;*/
    align-items: flex-start;
    gap: 30px;
    flex-direction: row;
/*    justify-content: flex-end;*/
/*    justify-content: center;*/
    justify-content: space-between;
/*    width: 100%;*/
}

@media (max-width: 768px) {
	header .huon-navigation-group,
	footer .huon-navigation-group
	{
        flex-direction: column;
    	gap: 20px;
/*    	margin-top: 40px;*/
    }
}

header .huon-header-navigation {
	align-content: center;
	justify-content: center;
}

@media (max-width: 768px) {
	header .huon-header-navigation {
    }
}

header .huon-navigation_container,
footer .huon-navigation_container
{
    display: flex;
    gap: 1rem;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: space-evenly;
    align-items: center;
}

@media (max-width: 768px) {
	header .huon-navigation_container,
	footer .huon-navigation_container
	{
        flex-direction: column-reverse;
        gap: 1rem;
        align-items: flex-end;
    }
}

header .huon-navigation_container li,
footer .huon-navigation_container li
{
	display: flex;
}

header .huon-navigation ul,
header .huon-navigation ul li,
footer .huon-navigation ul,
footer .huon-navigation ul li
{
    font-size: var(--font-size);
    list-style: none;
    padding: 0;
    margin: 0;
}

footer .huon-navigation ul,
footer .huon-navigation ul li
{
    font-size: var(--font-size-smaller);
}

/* -------------------------------------------------- */
/* =======================================
	Footer
	------- */
/* General Footer Styles */
.huon-footer {
    padding: 50px 30px;
    background: var(--gradient-footer);
    color: #111;
    font-size: 15px;
    line-height: 1.5;
}

.huon-footer-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: space-between;
    justify-content: space-around;
    max-width: 1200px;
    margin: 0 auto;
}

@media (max-width: 768px) {
    .huon-footer-inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

.footer-column {
    flex: 1 1 250px;
    min-width: 250px;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media (max-width: 768px) {
    .footer-column {
        flex: 1 1 auto;
/*        margin-bottom: 20px;*/
    }
}

.footer-title,
.footer-tagline {
    margin-block-start: 0em;
    margin-block-end: 0em;
}

.footer-title {
    font-size: var(--wp--preset--font-size--x-large);
}

.footer-tagline {
    font-size: var(--font-size-smaller);
    font-weight: 300;
    margin-bottom: 1rem;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

footer .huon-site-tagline {
    font-size: var(--font-size-smaller);
    font-weight: 300;
    margin-bottom: 1rem;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.footer-navigation .huon-navigation_container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: space-evenly;
    align-items: center;

}

@media (max-width: 768px) {
	.footer-navigation .huon-navigation_container
	{
        flex-direction: column;
        gap: 1rem;
    }
}

.huon-footer-bottom {
    margin-top: 20px;
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9rem;
    color: var(--text-color);
	/* text-align: center;*/
    gap: 1rem;
}
.huon-footer-bottom.navigation {
}

@media (max-width: 768px) {
	.huon-footer-bottom {
        flex-direction: column;
        gap: .33rem;
        margin-top: 33px;
        margin-bottom: 20px;
    }
	.huon-footer-bottom.navigation {
    	gap: 1rem;
    }
}

.huon-footer-bottom p {
	padding: 0;
	margin: 0;
}

.footer-copy,
.footer-powered
{
    font-size: var(--wp--preset--font-size--small) !important;
}

.footer-powered a {
    text-decoration: none;
}



footer.huon-footer {
    font-family: var(--font-family);
    color: var(--text-color);
    text-align: center;

    padding-top: 2.7rem;
    padding-bottom: 1rem;
    padding-left: var(--padding-left);
    padding-right: var(--padding-right);

    background: var(--background-gradient-footer);

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2),
                0 6px 20px rgba(0, 0, 0, 0.19);
    flex-shrink: 0; /* Verhindert, dass der Footer schrumpft */
}

footer .huon-footer-multi-column {
	display: flex;
	flex-direction: row;
    justify-content: space-around;
    gap: 1rem;
    flex-basis:100%
}

@media (max-width: 768px) {
	footer .huon-footer-multi-column {
        flex-direction: column;
    }
}

footer .huon-footer-group {
    gap: 1rem;
}


/* =======================================
	CONTENT
	------- */
.gold-text {
    background: linear-gradient(45deg, #FFD700, #FFC000, #FFB14E, #FFD700);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    font-weight: bold;
}

.gold-3d {
    color: #FFD700;
    text-shadow: 0 1px 0 #B8860B,
                 0 2px 0 #DAA520,
                 0 3px 0 #B8860B,
                 0 4px 0 #8B6508;
    font-weight: bold;
}


/* =======================================
	CONTENT
	------- */

/* This is the wrapper that starts with the header template and ends with the footer. */
.huon.huon-content-container
{
    display: flex;
    flex-direction: column;

/*	margin-top: 70px;*/
	margin-bottom: 70px;

    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 0px 0px 20px 0px;
}

.huon .huon-quote {
/*    padding: 80px 0px;*/
    min-height: 70px;
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
    /*background: url('https://huon.love/wp-content/uploads/huon/images/huon_header.jpg') no-repeat center center;
    background-size: cover;*/
/*    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);*/
    border-radius: var(--border-radius-sm);
}

@media (max-width: 768px) {
	.huon .huon-quote {
		min-height: 0px;
	}
}
/* Wenn das erste Kind KEINE huon-quote ist, bleibt margin-bottom: 70px */
/*.huon.huon-content-container:not(:has(:first-child.huon-quote)) {
    margin-bottom: 70px;
}*/

/* Falls das erste Kind .huon-quote ist, margin-bottom auf 0px setzen */
.huon.huon-content-container:has(:first-child.huon-quote) {
    margin-bottom: 0px;
}


@media (max-width: 768px) {
	.huon.huon-content-container {
		margin-top: 0px;
		margin-bottom: 0px;
		padding: 0 !important;
	}
}

/* This is the wrapper on any content pages that include the header and the footer. */
.huon .huon-content {
    padding: 80px 0px;
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
    background-color: rgba(252, 252, 252, 0.1);
/*    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);*/
    border-radius: var(--border-radius-sm);
}

@media (max-width: 768px) {
	.huon .huon-content {
		padding: 20px 0px !important;
		padding-bottom: 40px !important;
/*		box-shadow: none !important;*/
		background: initial !important;
	}
}

.huon img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: var(--border-radius-md);
}

.huon-content .huon-content-section {
    padding: 0px 80px;
}

@media (max-width: 768px) {
	.huon-content .huon-content-section {
		padding: 0px 20px !important;
	}
}

.huon-content .huon-content-section section:not(:last-child) {
    margin-bottom: 70px;
}

.huon-content .huon-content-section:not(:last-child) {
/*	margin-bottom:50px;*/
}


.huon-content .huon-content-section h1 {
    font-size: 2.8rem;
    margin-bottom: 1rem;
    font-weight: 400;
    letter-spacing: -0.1px;
    margin-top: 30px;
}

/*.huon-content .huon-content-section h1:not(:first-of-type)*/
.huon-content .huon-content-section h1:first-child,
.huon-content .huon-content-section h2:first-child,
.huon-content .huon-content-section h3:first-child,
.huon-content .huon-content-section p:first-child,
.huon-content .huon-content-section blockquote:first-child
{
    margin-top: 0;
}

/* Section Head  */
.huon-content .section-head {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 25px 20px 30px 20px;
    margin: 0px -80px;
    margin-top: 70px;
    margin-bottom: 60px;
	background: radial-gradient(circle at top left, rgba(156, 121, 179, 0.2), transparent 50%),
				radial-gradient(circle at top right, rgba(126, 127, 211, 0.2), transparent 50%),
				radial-gradient(circle at bottom left, rgba(179, 52, 77, 0.2), transparent 50%),
				radial-gradient(circle at bottom right, rgba(68, 64, 103, 0.2), transparent 50%);
}

@media (max-width: 768px) {
	.huon-content .section-head {
	    margin: 40px -20px 30px -20px;
	}
}

.huon-content .section-head h1 {
    font-size: 2.5em;
    font-weight: 200;
    margin: 0;
    letter-spacing: 1.5px;
}


.huon-content li {
	margin-bottom: 10px;
}

.huon-content a {
	color: rgba(68, 64, 103, 1.0);
	font-weight: 600;
/*	text-decoration: none;*/
}
.huon-content a:hover {
	text-decoration: underline;
	color: rgba(156, 121, 179, 1.0);
}

.huon-content hr {
	border-color: rgba(68, 64, 103, 1.0);
    margin: 50px 20px 40px 20px;
}
/* =======================================
	SECTION
	------- */
.huon-section {
    margin: 2rem auto;
    padding: 2rem;
    max-width: 600px;
	background: radial-gradient(circle at top left, rgba(156, 121, 179, 0.2), transparent 50%),
				radial-gradient(circle at top right, rgba(126, 127, 211, 0.2), transparent 50%),
				radial-gradient(circle at bottom left, rgba(179, 52, 77, 0.2), transparent 50%),
				radial-gradient(circle at bottom right, rgba(68, 64, 103, 0.2), transparent 50%);
    border-radius: var(--border-radius-md);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    text-align: center;

    animation: fadeIn 0.5s ease-in-out;
}

/* Title Styles */
.huon-section h1 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 1rem;
/*    margin-block-start: 0.67em;*/
}
.huon-section h2 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 1rem;
}

/* Subtitle Styles */
.huon-section p {
    font-size: 1rem;
    color: #6A6A6A;
    margin-bottom: 2rem;

    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

/* Form Input Styles */
.huon-section input[type="text"],
.huon-section input[type="email"] {
    width: calc(100% - 30px); /* Reduziert die Breite, um Padding gleichmäßig zu berücksichtigen */
    padding: 10px 15px;
    margin: 0 auto 1rem auto; /* Zentriert das Input-Feld und fügt unten einen Abstand ein */
    font-size: 1rem;
    color: #4A4A4A;
    border: 1px solid #D9D9D9;
    border-radius: var(--border-radius-md);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) inset;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    display: block; /* Stellt sicher, dass es blockweise zentriert wird */
    box-sizing: border-box; /* Inklusive Padding und Border für die Breite */
}

/* Input Focus Styles */
.huon-section input[type="text"]:focus,
.huon-section input[type="email"]:focus {
    border-color: #8FF5D9;
    box-shadow: 0 0 8px rgba(143, 245, 217, 0.7);
    outline: none;
}

/* Submit Button Styles (reuse gradient-button class) */
.heal_form_submit {
    margin-top: 1rem;
    font-size: 1.2rem;
    font-weight: 600;
}

/* Keyframe for Section Fade-in */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* This is the .huon page title. */
.huon .huon-post-title {
	margin-top: 0;
	margin-bottom: 50px;
}

/* -------------------------------------------------- */
/* General */
.subscription-tag {
    display: inline-block;
    border-radius: 4px;
    padding: 4px 8px;
    margin-right: 6px;
    font-size: 10px;
    cursor: help;
    font-weight: 500;
    color: #333;
}

.subscription-tag.light {
    background-color: #E0F7FA;
    color: #006064;
}

.subscription-tag.basic {
    background-color: #FFF3E0;
    color: #E65100;
}

.subscription-tag.pro {
    background-color: #E8EAF6;
    color: #3F51B5;
}

.has-small-font-size {
	font-size: 0.875rem;
}

.button-danger {
/*    border: 1px solid rgba(255, 90, 100, 1.0) !important;*/
color: rgba(255, 90, 100, 1.0) !important;
/*    font-size: 30px;*/
/*    box-shadow: 0 0px 12px rgba(255, 90, 100, 0.9) !important;*/
}

.huon-button {
    display: inline-block;
    text-decoration: none !important;
    padding: 12px 24px;
    font-size: 16px;
    font-weight: 500;
    color: rgba(1, 1, 2, 1.0) !important;
    border: 1px solid rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    border-radius: 8px;
    transition: background 0.3s ease-in-out, border-color 0.3s ease-in-out;
    text-align: center;
    cursor: pointer;
/*    width: calc(100% - 50px);*/
}

.huon-button-action {
/*    background: rgba(126, 127, 211, 1.0);*/
/*    background: rgba(220, 184, 243, 0.4);*/
/*    color: rgba(1, 1, 2, 1.0) !important;*/
/*	padding: 12px 24px;*/
/*	border-radius: 14px;*/
/*	font-weight: bold;*/
/*    border: none;*/
/*    border: 2px solid rgba(106, 107, 111, 1.0);*/
/*	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);*/
}
.huon-button-primary {
    background: rgba(255, 255, 255, 0.3);
}
.huon-button-secondary {
    background: rgba(255, 255, 255, 0.1);
}
.huon-button-small {
    padding: 2px 10px;
    font-size: 13px;
}

.huon-button:hover {
    text-decoration: none !important;
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.8);
    color: rgba(0, 0, 0, 0.99) !important;
}
.huon-button-action:hover {
/*    text-decoration: none !important;*/
    background: rgba(220, 184, 243, 0.8); /* #dcb8f3; */
/*    background: rgba(126, 127, 211, 1.0);*/
/*    border-color: rgba(255, 255, 255, 1.0);*/
/*    color: rgb(255, 239, 0) !important;*/
}

.huon-button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.3);
    color: rgba(0, 0, 0, 0.5) !important;
}



.huon-toggle-button {
    display: inline-flex;
    background: #f0e9f5;
    border: 1px solid #ccc;
    border-radius: var(--border-radius-md);
    overflow: hidden;
    font-size: 14px;
    margin: 0px auto 40px auto;
    padding: 2px;
    gap: 0;
}

.huon-toggle-button input[type="radio"] {
    display: none;
}

.huon-toggle-button label {
    padding: 8px 20px;
    cursor: pointer;
    background: transparent;
    transition: all 0.2s ease;
    color: #555;
    font-weight: 500;
    border-radius: var(--border-radius-md);
}



/* =======================================
    Toggle Buttons
	-------------- */
.huon-interval-toggle input[type="radio"]:checked + label {
    background-color: #dcb8f3;
    color: black;
    font-weight: 600;
    box-shadow: 0 0 4px rgba(0,0,0,0.1) inset;
}

.has-global-padding {
	padding-left: var(--padding-left);
	padding-right: var(--padding-right);
}

@media (max-width: 768px) {
	.has-global-padding {
		padding-left: 0px;
		padding-right: 0px;
	}
}

.huon blockquote {
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 40px;
    margin-inline-end: 40px;

    padding: 20px;
/*    padding-left: 20px;*/
/*    background-color: rgba(255, 255, 255, 0.1);*/
/*    border-left: 4px solid #010102;*/

/*    font-style: italic;*/
/*    color: #444;*/

/*    border-radius: 5px;*/
/*    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);*/

    font-size: 1.2em;
    line-height: 1.6;
    text-align: center;

    /*border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;*/
}

@media (max-width: 768px) {
	.huon blockquote {
	    margin-block-start: 0.5em;
	    margin-block-end: 0.5em;
	    margin-inline-start: 0px;
	    margin-inline-end: 0px;
	}
}

.huon-quote blockquote {
    margin-block-start: 0em;
    margin-block-end: 1em;
    margin-inline-start: 40px;
    margin-inline-end: 40px;
}

@media (max-width: 768px) {
	.huon-quote blockquote {
        margin-block-start: 0.5em;
	    margin-block-end: 0.5em;
	    margin-inline-start: 0px;
	    margin-inline-end: 0px;
	    padding-top: 0;
	}
}

/* Links */
header.huon-header a, footer.huon-footer a {
    text-decoration: none;
}

header.huon-header a:hover, footer.huon-footer a:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px !important;
    text-underline-offset: .1em;
}

/* -------------------------------------------------- */
/* Shortcodes */
.huon-shortcode {
    font-family: var(--font-family);
    color: var(--text-color);
    border-radius: var(--border-radius-md);
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05),
                0 6px 20px rgba(0, 0, 0, 0.025);
    margin: 15px 0;
}

/* =======================================
	GENERAL
	------- */
.centred {
    align-items: center !important;
}
.left-aligned {
    align-items: left !important;
}
.vertically-centred {
    align-items: center !important;
}
.top-aligned {
/*    align-items: center;*/
    align-items: start !important;
}
.row {
    flex-direction: row !important;
}

.has-shadow {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.huon-separator-70 {
    margin: 70px 0;
    border: none;
}
.huon-separator-line-70 {
    margin: 70px 0;
    border-color: rgba(1, 1, 2, 0.2);
}
.huon-separator-50 {
    margin: 50px 0;
    border: none;
}
.huon-separator-line-50 {
    margin: 70px 0;
    border-color: rgba(1, 1, 2, 0.2);
}
.huon-separator-30 {
    margin: 30px 0;
    border: none;
}
.huon-separator-line-30 {
    margin: 30px 0;
    border-color: rgba(1, 1, 2, 0.2);
}
.no-line {
    border: none !important;
}

#huon-notification {
	margin: 20px 0;
}

#huon-notification-ajax {
	margin: 20px 0;
}

/* Code Blocks  */
.huon-code-block
{
	width: 100%;
    display: block;
/*    font-family: inherit;*/
    overflow-wrap: break-word;
    white-space: pre-wrap;
	background-color: rgba(250, 248, 251, 0.5);
    color: #010102;
    font-size: 0.7rem;
    line-height: 0.8rem;
    font-weight: 300;
    padding: 10px;
    margin-top: 10px;
}

/* =======================================
	Feature Manager
	------- */
.huon-plan {
    border-radius: var(--border-radius-md);
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 60%;
    font-weight: 500;
/*    color: #fff;*/
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s, box-shadow 0.2s;
}

.huon-plan:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
}

.huon-plan span {
    display: block;
    line-height: 1.2;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.huon-plan-free {
    background: var(--background-gradient-light);
    border: 6px solid rgba(255, 255, 255, 0.5);
/*    color: rgba(247, 96, 74, 0.8);*/
}

.huon-plan-basic {
    background: var(--background-gradient-basic);
/*    border: 8px solid rgba(74, 209, 247, 0.1);*/
    border: 6px solid rgba(255, 255, 255, 0.5);
}

.huon-plan-pro {
    background: var(--background-gradient-pro);
/*    border: 8px solid rgba(124, 74, 247, 0.1);*/
    border: 6px solid rgba(255, 255, 255, 0.5);
}

.huon-plan-none {
    background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.5), transparent 50%),
                radial-gradient(circle at top right, rgba(255, 255, 255, 0.5), transparent 50%),
                radial-gradient(circle at bottom left, rgba(255, 255, 255, 0.5), transparent 50%),
                radial-gradient(circle at bottom right, rgba(255, 255, 255, 0.5), transparent 50%);
    color: #555;
    border: 4px solid rgba(255, 255, 255, 0.1);
}

@keyframes highlight {
    0% {
        box-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
    }
    100% {
        box-shadow: 0 0 0 rgba(255, 255, 255, 0);
    }
}


/* =======================================
	Language Switcher
	------- */
#huon-language-switcher-group {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 8px;
    font-size: 1rem;
    font-weight: 300;
}
#wpadminbar #huon-language-switcher-group {
    display: flex;
    align-items: center;
    padding: 0 8px;
    height: 100%;
}

#huon-language-switcher {
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid #ddd;
    border-radius: var(--border-radius-md) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    gap: 2px;
    color: var(--text-color) !important;
}
#wpadminbar #huon-language-switcher {
    background: #1d2327;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
}

.huon-lang-item {
    padding: 5px 10px !important;
    cursor: pointer;
    border-radius: var(--border-radius-md) !important;
    transition: background 0.3s ease, color 0.3s ease;
    text-align: center;
    min-width: 25px;
    line-height: 1rem !important;
}
#wpadminbar #huon-language-switcher .huon-lang-item {
    padding: 3px 5px;
    color: #fff;
    font-size: 12px;
    background: transparent;
    transition: background 0.2s;
    cursor: pointer;
}

.huon-lang-item:hover {
    background-color: rgba(255, 255, 255, 0.9) !important;
    font-weight: bold !important;
}

.huon-lang-item.active {
    background-color: rgba(255, 255, 255, 0.9) !important;
    font-weight: bold !important;
/*    color: var(--text-color) !important;*/
}
#wpadminbar #huon-language-switcher .huon-lang-item.active {
    background-color: #0073aa !important;
}



/* =======================================
	Area Switcher
	------- */
#huon-switcher-group {
    /*background-color: #f0f0f0;
    background: rgba(255, 255, 255, 0.1);*/
/*    border: 1px solid #ddd;*/
    /*border-radius: var(--border-radius-md);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);*/
    display: flex;
    flex-direction: row;
    gap: 8px;
    font-size: 1rem;
    font-weight: 300;
}

#huon-area-switcher {
    background-color: #f0f0f0;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ddd;
    border-radius: var(--border-radius-md);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    gap: 2px;
}

.huon-area-item {
    padding: 5px 10px;
    cursor: pointer;
    border-radius: var(--border-radius-md);
/*    background-color: #f0f0f0;*/
    transition: background 0.3s ease, color 0.3s ease;
    text-align: center;
/*    font-weight: bold;*/
    border: 2px solid transparent;

    min-width: 50px; /* Oder eine Breite passend zum Design */
    text-align: center;
}

.huon-area-item:hover {
    background-color: rgba(255, 255, 255, 0.9);
    font-weight: bold;
/*    transform: scale(1.05);*/
}

.huon-area-item.active {
    background-color: rgba(255, 255, 255, 0.9);
    font-weight: bold;
}


/* =======================================
	Role Switcher
	------- */
.role-switcher {
    position: fixed;
    bottom: 20px;
    right: 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(0, 0, 0, 0.8);
    margin: 0.5rem 0;
    padding: 10px 15px;
    border-radius: 8px;

    z-index: 1000;
}

.role-switcher:hover {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.role-switcher-normal {
    display: flex;
    justify-content: center;
    margin: 0.5rem 0;
}

.role-switcher-header {
    display: flex;
    justify-content: center;
    margin: 0;
}

#role-switcher-form {
    display: flex;
    align-items: center;
    justify-content: space-evenly; /* Gleichmäßige Verteilung */
    padding: 1rem;
    background-color: rgba(240, 240, 240, 0.9);
    background: radial-gradient(circle at top left, rgba(124, 74, 247, 0.5), transparent 50%),
                radial-gradient(circle at top right, rgba(238, 74, 247, 0.5), transparent 50%),
                radial-gradient(circle at bottom left, rgba(181, 74, 247, 0.5), transparent 50%),
                radial-gradient(circle at bottom right, rgba(74, 81, 247, 0.5), transparent 50%);
    border: 1px solid #ddd;
    border-radius: var(--border-radius-md);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    gap: 1rem;
    flex-direction: row;
    width: 100%; /* Form soll sich über die verfügbare Breite strecken */
}

.role-switcher-form-normal {
}

.role-switcher-form-header {
    display: flex;
    gap: 2px !important;
    align-items: center;
    justify-content: space-evenly;
    padding: 2px !important;
    background: initial !important;
}

#role-switcher-form label {
    font-size: 1rem;
    margin-right: 1rem;
}

#role-switcher-form select {
    padding: 5px 10px;
    padding: 0.5rem;
    font-size: 1rem;
    border: 1px solid #ddd;
    outline: none;
    border-radius: var(--border-radius-md);
    flex-grow: 1;
    max-width: 90px;
    cursor: pointer;
}

#role-switcher-form button {
    background-color: #0073aa;
    color: #fff;
    padding: 0.6rem 1rem;
    border: none;
    border-radius: var(--border-radius-md);
    cursor: pointer;
    transition: background-color 0.3s ease;
    flex-shrink: 0; /* Verhindert, dass der Button zu klein wird */
}

#role-switcher-form button:hover {
    background-color: #005a8c;
}



.upgrade-badge {
    flex-shrink: 0;
    margin-right: 1rem;
    align-self: flex-start; /* Vertikal oben ausgerichtet */
}

.upgrade-content {
    flex-grow: 1;
    font-size: 0.95rem;
    color: #333;
}

.upgrade-content p {
    margin: 0 0 0.1rem 0;
}

/* =======================================
	Tooltips
	------- */
#global-tooltip {
    max-width: 300px;
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;

    display: none;
    position: absolute;
    top: 0;
    left: 0;
/*    transform: translate(-50%, -100%);*/
    background-color: rgba(0, 0, 0, 0.75);
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: var(--border-radius-md);
    font-size: 0.85rem;
    z-index: 9999;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
/*    animation: fadeIn 0.3s ease-in-out;*/
    pointer-events: none;
}

#global-tooltip-static {
    display: flex;
    align-items: center;
    min-height: 50px;
/*    max-width: 400px;*/
    background-color: rgba(255, 255, 255, 0.4);
    padding: 0.5rem 1rem;
    border-radius: var(--border-radius-md);
    font-size: 0.85rem;
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    color: #333;
    z-index: 9999;
/*    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);*/
    /*position: fixed;
    bottom: 20px;
    right: 20px;*/
}

.tooltip-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    color: rgba(73, 68, 78, 0.5);
    font-size: 1.2rem;
    flex-shrink: 0;
}

.tooltip-text {
    flex-grow: 1;
    font-size: 0.9rem;
    line-height: 1.4;
    white-space: normal; /* Ensure multi-line support */
}


.info-icon {
    font-size: 1.0rem;
    color: rgba(73, 68, 78, 0.5) !important;
    cursor: pointer;
    vertical-align: -0.02rem;
    margin: 0px 3px;
}

/* =======================================
	Footnotes
	------- */
.footnote-container {
    display: flex;
    flex-direction: column;
    align-items: left;
    width: 100%;
    margin-top: 1rem;
    gap: 5px;
    margin-bottom: -30px;
}

.footnote-line {
    width: 80%;
    height: 1px;
    background-color: #555;
    margin-bottom: 0.5rem;
}

.footnote {
    color: #555;
    font-size: 0.875rem;
    line-height: 1.4;
    margin-top: 0.0rem;
    margin-bottom: 0.0rem;
    text-align: left;
}

.footnote-badge {
    display: inline-block;
    background-color: rgba(74, 247, 171, 0.5);
    color: #495057;
    font-size: 0.75rem;
    font-weight: bold;
    border-radius: var(--border-radius-md);
    padding: 0.2rem 0.2rem;
    line-height: 1;
    vertical-align: 0.03rem; /* oder -0.2em für einen Offset */
}
.green {
    background-color: rgba(74, 247, 171, 0.5);
}
.orange {
    background-color: rgba(247, 156, 74, 0.5);
}
.red {
    background-color: rgba(74, 154, 247, 0.5);
}
.add-ons {
    background-color: rgba(74, 154, 247, 0.5);
}
.studio {
    background-color: rgba(247, 74, 161, 0.5);
}

/* =======================================
	TABLE 1 - Main
	------- */
table.huon-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    overflow: hidden;
    margin-top: 20px;
    background-color: rgba(250, 248, 251, 0.2);
    /*overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;*/
}

@media (max-width: 768px) {
	table.huon-table {
/*        font-size: 12px;*/
    }
}

.huon-table h1 {
	margin: 0px;
}

.huon-table th,
.huon-table td {
    text-align: left;
    padding: 8px 12px; /* Kompaktere Zellen */
    vertical-align: top;
    border: 1px solid rgba(0, 0, 0, 0.1); /* Dezente Rahmen */

/*    white-space: nowrap;*/
    overflow: hidden; /* Schneidet Text ab, der nicht in die Zelle passt */
    text-overflow: ellipsis; /* Fügt "..." hinzu, wenn der Text abgeschnitten wird */
}

@media (max-width: 768px) {
	.huon-table th,
	.huon-table td {
        padding: 6px 8px;
    }
}

.huon-table th:first-child,
.huon-table td:first-child {
    text-align: left;
/*    text-align: center;*/
}

.huon-table th:not(:first-child),
.huon-table td:not(:first-child) {
/*    text-align: center;*/
}

td.check {
    background-color: rgba(143, 245, 217, 0.2);
    color: rgba(68, 64, 103, 1.0);
    font-weight: bold;
}

td.cross {
    background-color: rgba(250, 248, 251, 0.1);
    color: rgba(73, 68, 78, 0.5);
    font-weight: bold;
}

.huon-table th {
    background-color: rgba(68, 64, 103, 0.7);
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
}

@media (max-width: 768px) {
	.huon-table th {
        font-size: 12px;
    }
}

.huon-table tr:nth-child(even) {
    background-color: rgba(250, 248, 251, 0.1);
}

.huon-table tr:hover {
    background-color: rgba(143, 245, 217, 0.05);
}

.huon-table td a {
    color: #0073aa;
    text-decoration: none;
}

.huon-table td a:hover {
    text-decoration: underline;
}

/* =======================================
	MULTI COLUMN LAYOUT - GRID
	------------------- */
.content-grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    margin-top: 50px;
}
.content-box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
    background: rgba(255, 255, 255, 0.1);
    border-radius: var(--border-radius-md);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd;
    padding: 1.5em;
}
.content-box.featured {
    background: #eefaf3;
    border-color: #88d1aa;
}
.meta-list {
    list-style: none;
    padding: 0;
    margin: 1em 0;
}
.meta-list li {
    margin-bottom: 0.4em;
}
.price-tag {
    font-weight: bold;
    color: #444;
}
.primary-button {
    display: inline-block;
    margin-top: 1em;
	padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none;
    text-align: center;

    background: rgba(126, 127, 211, 1.0);
    color: rgba(255, 255, 255, 1.0) !important;
	font-weight: bold;
    border: none;
/*    border: 2px solid rgba(106, 107, 111, 1.0);*/
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}


/* =======================================
	MULTI COLUMN LAYOUT - GRID
	------------------- */
.multi-column-container-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* Responsive grid with equal column widths */
    gap: 20px;
    /*row-gap: 20px;
    column-gap: 30px;
    row-gap: 15px;  */
}

.column-grid {
	/*background: radial-gradient(circle at top left, rgba(156, 121, 179, 0.1), transparent 50%),
				radial-gradient(circle at top right, rgba(126, 127, 211, 0.1), transparent 50%),
				radial-gradient(circle at bottom left, rgba(179, 52, 77, 0.1), transparent 50%),
				radial-gradient(circle at bottom right, rgba(68, 64, 103, 0.1), transparent 50%);*/
/*    background-color: rgba(250, 248, 251, 0.1);*/
    border: 1px solid #ddd;
    padding: 20px;
    border-radius: var(--border-radius-md);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column; /* Ensure vertical layout */
}

/* Frequency Filter  */
#filter-container {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    padding: 1rem;
    background-color: rgba(250, 248, 251, 0.2);
    border: 1px solid rgba(250, 248, 251, 0.3);
    border-radius: var(--border-radius-md);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    gap: 1rem;
    flex-direction: row;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
	#filter-container {
		flex-direction: column !important;
	}
}

#filter-container-tags {
    padding: 8px;
    width: 100%;
    border: 1px solid #aaa;
    border-radius: var(--border-radius-md);
    box-sizing: border-box;
}

/* =======================================
	MULTI COLUMN LAYOUT
	------------------- */
.multi-column-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
    align-items: stretch;
}

.column {
    flex: 1;
    flex-grow: 1;
    min-width: calc(33.33% - 20px);
    box-sizing: border-box;
    transition: transform 0.2s, box-shadow 0.2s;
    cursor: pointer;

    display: flex;
    flex-direction: column;
/*    justify-content: center;*/
    align-items: center;
    border-radius: var(--border-radius-md);
    padding: 10px;
    background: radial-gradient(circle at top left, rgba(124, 74, 247, 0.2), transparent 50%),
                radial-gradient(circle at top right, rgba(238, 74, 247, 0.2), transparent 50%),
                radial-gradient(circle at bottom left, rgba(181, 74, 247, 0.2), transparent 50%),
                radial-gradient(circle at bottom right, rgba(74, 81, 247, 0.2), transparent 50%);
    background: radial-gradient(circle at top left, rgba(222, 173, 255, 0.1), transparent var(--bg-alpha)), /* #DEADFF */
               radial-gradient(circle at top right, rgba(153, 155, 255, 0.1), transparent var(--bg-alpha)), /* #999BFF */
               radial-gradient(circle at bottom left, rgba(255, 163, 244, 0.1), transparent var(--bg-alpha)), /* #FFA3F4 */
               radial-gradient(circle at bottom right, rgba(168, 158, 255, 0.1), transparent var(--bg-alpha)); /* #A89EFF */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

@media (max-width: 768px) {
	.column {
        min-width: calc(50% - 20px);
    }
}

@media (max-width: var(--breakpoint-sm)) {
	.column {
        min-width: 100%;
    }
}

.column h1:first-child,
.column h2:first-child,
.column h3:first-child,
.column h4:first-child
{
	padding-top: 0;
	margin-top: 0;
}
.column h2 {
	padding-left: 0;
	margin-left: 0;
}


.column:hover {
    transform: scale(1.02);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.column p {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
    margin-top: 10px;
}

.column a {
    margin-top: 20px !important;
}

/* Center the image vertically and horizontally */
.image-column {
    display: flex;
    justify-content: center; /* Centers the image horizontally */
    align-items: center; /* Centers the image vertically */
}

.image-column img {
    max-width: 100%; /* Ensures the image resizes within its column */
    height: auto;
    display: block; /* Removes extra space below the image */
}

.text-column {
    display: flex;
    flex-direction: column;
/*    justify-content: center;*/
    text-align: left;
/*    align-items: flex-start;*/
    gap: 0.5rem;
}

@media (max-width: 768px) {
	.text-column {
        text-align: center; /* Center aligns text */
    }
}

.text-column h2 {
    margin-top: 0px;
    margin-bottom: 10px;
    font-size: 1.8rem;
}

.text-column p {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
}

