/*  ==================================================================
	HIER KOMMEN DEINE AUSGELAGERTEN CSS BEFEHLE REIN =================
	==================================================================  */

/* Header Fix */
body #page-container .et-l--header #header_btn_dm {
    background-color: transparent;
    border-color: rgba(255, 255, 255, 0.2);
}


body #page-container .et-l--header #header_btn_dm:hover {
	background-color: hsl(from var(--gcid-u3xjk8j4ga) calc(h + 0) calc(s + 0) calc(l + 0) / 0.09) !important;
    border-color: rgba(255, 255, 255, 0.2);
}

body.safari #page-container .et-l--header #header_btn_dm:hover {
	background-color: rgba(var(--gcid-u3xjk8j4ga), 0.09) !important;
}
/* END Header Fix */
    

html { scroll-behavior: smooth; }

@media only screen and (max-width: 980px) {
	.steps-row .et_grid_column {
		display: grid;
		grid-template-rows: auto minmax(60px, auto) 1fr; /* image | heading | body */
		align-content: start;
	}
	
	/* First text module (your heading block) */
	.steps-row .et_grid_column > .et_pb_text:first-of-type {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	/* Last text module (your paragraph block) */
	.steps-row .et_grid_column > .et_pb_text:last-of-type {
		margin-top: 0 !important;
		align-self: start;
	}
}

.cta-row {
  position: relative;
  --row-radius: 10px;
  border-radius: var(--row-radius);
  overflow: hidden;
  transition: background-color 2000ms ease;
}

.cta-row > .et_pb_code_0,
.cta-row > .et_pb_code_0 .et_pb_code_inner,
.cta-row > .et_pb_code_0 .edge-glow {
  position: absolute !important;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  z-index: 0;
  pointer-events: none;
}

.cta-row > * { position: relative; z-index: 1; }

/* fallback for iOS */
.cta-row.edge-filled {
  background-color: rgba(204,153,255,0.22);
}

@supports (color: hsl(from #fff h s l / 1)) {
  .cta-row.edge-filled {
    background-color: hsl(from var(--gcid-vvr87kcj9a) h s l / 0.22);
  }
}

.edge-glow { width: 100%; height: 100%; display: block; }

.edge-glow .edge-path {
  rx: var(--row-radius);
  ry: var(--row-radius);
  fill: none;
  stroke: var(--gcid-vvr87kcj9a);
  stroke-width: 4;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 140 860;
  stroke-dashoffset: 0;
  filter: drop-shadow(0 0 20px rgba(204,153,255,.85));
  opacity: 0;
  transition: opacity 200ms ease;
}

.cta-row.edge-run .edge-glow .edge-path {
  opacity: 1;
  animation: dashTwoPhaseFill 3.2s cubic-bezier(.4,0,.2,1) 1 forwards;
}

@keyframes dashTwoPhaseFill {
  0%   { stroke-dasharray: 140 860; stroke-dashoffset: 0; }
  50%  { stroke-dasharray: 140 860; stroke-dashoffset: -1000; }
  100% { stroke-dasharray: 1000 0;  stroke-dashoffset: -1000; }
}

.cta-row.edge-filled .edge-glow .edge-path {
  opacity: 1;
  stroke-dasharray: 1000 0;
  stroke-dashoffset: -2000;
}

/* Complianz CSS */
div.cmplz-cookiebanner {
	border-width: 1px;
    border-color: var(--gcid-vvr87kcj9a);
    transition-property: background-color;
    transition-duration: 300ms;
}

div.cmplz-cookiebanner .cmplz-title, div.cmplz-cookiebanner .cmplz-close, div.cmplz-cookiebanner .cmplz-message {
	/*color: #fff;*/
}

div.cmplz-cookiebanner div.cmplz-buttons button.cmplz-btn {
	border-radius: 16px;
	background-color: #ffffff;
    font-family: 'Plus Jakarta Sans', Helvetica, Arial, Lucida, sans-serif;
    color: #050000;
    font-size: 16px ;
    border-width: 1px;
    border-color: #050000;
    border-style: solid;
    transition-property: background-color, border-color, color;
    transition-duration: 300ms;
    transition-timing-function: ease;
    transition-delay: 0ms;
	padding: 0em 1em;
	height: 40px;
}

div#cmplz-manage-consent {
    display: none;
}

/*END Complianz CSS */

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
}

blockquote {
    margin-bottom: 0px;
}

/* FluentForms Custom CSS */
.fluentform .ff-el-progress-bar {
    background-color: #cc99ff;
}

.ff-default .ff-el-form-control:focus {
	border-color: #cc99ff;
}

.flatpickr-months .flatpickr-prev-month:hover svg, .flatpickr-months .flatpickr-next-month:hover svg {
    fill: #cc99ff !important;
}

.ff-btn:hover {
	cursor: pointer;
}

.ff-btn-next, .ff-btn-prev {
	font-size: 14px;
	color: #050000 !important;
	padding: .3em 1em;
	font-size: 16px;
    background-color: #ffffff !important;
    border-width: 1px;
    border-color: #050000 !important;
    border-radius: 16px;
	transition-duration: .2s;
    transition-property: all !important;
}

.ff-btn-next:hover, .ff-btn-prev:hover {
	color: #ffffff !important;
    background-color: #050000 !important;
	transition-duration: .2s;
    transition-property: all !important;
}

.ff-message-success {
    border: 1px solid #050000;
    border-radius: 16px;
}

.fluentform .ff-saved-state-input .ff_input-group-text {
    background-color: #cc99ff;
    border-color: #cc99ff;
}

.fluentform .ff-saved-state-input .ff_input-group-text:hover {
    background-color: #050000;
    border-color: #050000;
    opacity: 1 !important;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
    background: #cc99ff !important;
    border-color: #cc99ff !important;
}

.fluentform .ff-text-center {
    text-align: center !important;
}

body blockquote {
    border-color: #cc99ff;
}

body blockquote ul {
	padding-bottom: 0 !important;
}

.frm-fluent-form h4 {
	font-size: 24px;
}

.frm-fluent-form .ff-t-container {
	margin-bottom: 30px;
}

.frm-fluent-form textarea, .frm-fluent-form input:not([type='checkbox']) {
	line-height: 1.6 !important;
	background-color: rgba(254, 254, 254, 1);
    padding: 11px 15px;
    border-style: solid;
    border-color: rgba(52, 73, 94, 1);
    border-width: 1px;
    border-radius: 6px !important;
    width: 100%;
}

@media only screen and (max-width: 767px) {
	.frm-fluent-form textarea, .frm-fluent-form input:not([type='checkbox']) {
		font-size: 16px;
	}
}

input[type=checkbox] {
    -webkit-appearance: checkbox;
    appearance: checkbox;
    accent-color: #cc99ff;
}
@supports (-webkit-touch-callout: none) {/* CSS specific to iOS devices */
	input[type=checkbox] {
		-webkit-transform: scale(0.5,0.5);
	}
}

.hidden {
	display: none;
}

.ff-el-input--content table, .ff_repeater_table tbody tr, .ff_repeater_table tbody tr td {
	border: 0 !important;
}

.ff_repeater_table thead, .ff-el-repeater .ff-el-input--label {
	display: none;
}

.frm-fluent-form .legend-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.frm-fluent-form .legend-item {
    background: white;
    padding: 15px;
    border-radius: 8px;
    border-left: 5px solid;
}

.frm-fluent-form .quadrant-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 2px solid;
}
.frm-fluent-form .quadrant-1 .quadrant-label {
    background: #dc3545;
}
.frm-fluent-form .quadrant-label {
    font-size: 0.9em;
    padding: 5px 12px;
    border-radius: 20px;
    font-weight: 600;
    color: white;
}

.ff_repeater_table td {
	padding-left: 0px !important;
	padding-right: 0px !important;
	display: block;
}

table.ff_repeater_table td {
	width: 100% !important;
}

.ff-el-repeat-buttons-list.js-repeat-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

@media (max-width: 767px) {
    table.ff_flexible_table tbody tr td.repeat_btn .ff-el-repeat-buttons-list {
        float: none;
        width: unset !important;
    }
	table.ff_repeater_table td {
		width: 98% !important;
	}
}

.et_pb_button:hover {
	cursor: pointer;
}

/* 10/10/10 Journal */

.date_container {
	border-bottom: 1px solid #ddd;
	margin-bottom: 40px !important;
}

input[data-name="date"] {
	pointer-events: none;
}
/* END FluentForms Custom CSS */