.primary.svg-r:not(.icon-xxs):not(.icon-xs):not(.icon-s):not(.icon):not(.icon-l):not(.icon-xl) > svg{
	transition: margin var(--transition-default), transform var(--transition-default);
}
.primary:not(:disabled):hover.svg-r:not(.icon-xxs):not(.icon-xs):not(.icon-s):not(.icon):not(.icon-l):not(.icon-xl) > svg, .primary:not(:disabled):focus.svg-r:not(.icon-xxs):not(.icon-xs):not(.icon-s):not(.icon):not(.icon-l):not(.icon-xl) > svg {
	transform: rotate(45deg);
	margin-left: calc(var(--button-icon-gap) * 2);
}

.container-buttons.arrows .primary.bg-glass {
	padding: 1.25rem;
}
.container-buttons.arrows .primary.bg-glass svg {
	transform: rotate(-135deg);
}
.container-buttons.arrows .primary.bg-glass:disabled svg .stroke {
	stroke: var(--font-color-disabled);
}
.container-buttons.arrows .primary.bg-glass:disabled svg .fill {
	fill: var(--font-color-disabled);
}
.container-buttons.arrows .primary.bg-glass:first-child svg {
	transform: rotate(-135deg);
}
.container-buttons.arrows .primary.bg-glass:last-child svg {
	transform: rotate(45deg);
}

.accordion-toggle.primary.bg-glass {
	padding: 1rem;
}
.accordion-toggle.primary.bg-glass.icon-xxs svg {
	width: 0.5rem !important;
}
.accordion-item:not(.active) button .accordion-toggle {
	transform: rotate(135deg) !important;
}
.accordion-item.active button .accordion-toggle {
	transform: rotate(-45deg) !important;
}
button:not(:disabled):hover .accordion-toggle.primary.bg-glass:not(.border-glow)::before, .bg-light button:not(:disabled):hover .accordion-toggle.primary.bg-glass:not(.border-glow)::before, .bg-dark button:not(:disabled):hover .accordion-toggle.primary.bg-glass:not(.border-glow)::before, button:not(:disabled):focus .accordion-toggle.primary.bg-glass:not(.border-glow)::before, .bg-light button:not(:disabled):focus .accordion-toggle.primary.bg-glass:not(.border-glow)::before, .bg-dark button:not(:disabled):focus .accordion-toggle.primary.bg-glass:not(.border-glow)::before {
	--glass-border-angle: 210deg;
	--glass-border-color-start: #646CD9;
	--glass-border-color-start-middle: #FF4D00;
	--glass-border-color-end-middle: #8142C0;
	--glass-border-color-end: #60D2B2;
	--glass-border-stop-middle-start: 45%;
	--glass-border-stop-middle-end: 55%;
}
/* ----------------------------------------------------------------
	Content
-----------------------------------------------------------------*/

section[name="hero"] picture {
	left: 33.333%;
}
@media only screen and (max-width: 992px) and (orientation: portrait) {
	section[name="hero"] picture {
		left: 0px;
		width: 100%;
	}
}
@media only screen and (max-width: 688px) and (orientation: portrait) {
	section[name="hero"] .container-text {
		width: 100%;
	}
}


section[name="speaker"] .wrapper .container > picture:first-child {
	height: calc(100% - 6.25rem);
	transition: height var(--transition-l);
}
section[name="speaker"] .wrapper.has-image .container > picture:first-child {
	bottom: 1.25rem;
	height: calc(100% - 7.5rem);
}
section[name="speaker"] .wrapper.has-image button:hover > picture:first-child, section[name="speaker"] .wrapper.has-image button:focus > picture:first-child {
	height: calc(100% - 3.75rem);
}
section[name="speaker"] .wrapper.has-image button .container-buttons svg {
	transition: transform var(--transition-default), margin var(--transition-default);
}
section[name="speaker"] .wrapper.has-image button:hover .container-buttons svg, section[name="speaker"] .wrapper.has-image button:focus .container-buttons svg {
	transform: rotate(45deg);
	margin-left: var(--button-icon-gap);
}
@media only screen and (max-width: 688px) and (orientation: portrait) {
	section[name="speaker"] {
		gap: var(--section-gap) !important;
	}
}

@media only screen and (max-width: 992px) and (orientation: portrait) {
	section[name="faq"] .accordion.flex-h.flex-tm.gutter-2:not(.infinity) {
		gap: 0px !important;
	}
}

section[name="organizer"] .container > picture:first-child, section[name="organizer"] .container > div:last-child {
	height: calc(100% - var(--padding-l));
	transition: height var(--transition-l);
}
section[name="organizer"] a.container:hover > picture:first-child, section[name="organizer"] a.container:hover > picture:first-child, section[name="organizer"] a.container:hover > div:last-child, section[name="organizer"] a.container:hover > div:last-child > picture:first-child {
	height: 100%;
}
section[name="organizer"] a.container .container-buttons svg {
	transition: transform var(--transition-default), margin var(--transition-default);
}
section[name="organizer"] a.container:hover .container-buttons svg, section[name="organizer"] a.container:focus .container-buttons svg {
	transform: rotate(45deg);
	margin-left: var(--button-icon-gap);
}
@media only screen and (max-width: 992px) and (orientation: portrait) {
	section[name="organizer"] .container > picture:first-child, section[name="organizer"] .container > div:last-child {
		height: 100% !important;
	}
	section[name="organizer"] .wrapper.flex-h.flex-tm.gutter-1:not(.infinity) {
		gap: var(--gap-xs) !important;
	}
	section[name="organizer"] picture.abs-br, section[name="organizer"] picture.abs-br > img {
		width: auto !important;
	}
	section[name="organizer"] .abs-bl.padding-s {
		position: relative !important;
	}
	section[name="organizer"] .container-text.second {
		padding: 0px !important;
	}
}
@media only screen and (max-width: 688px) and (orientation: portrait) {
	section[name="organizer"] .abs-bl.padding-s {
		padding: var(--padding-s) !important;
	}
}

section[name="demonstrator"] .wrapper.nowrap h3 {
	text-wrap: wrap !important;
}
@media only screen and (max-width: 688px) and (orientation: portrait) {
	section[name="demonstrator"] .wrapper .container.gap-s, section[name="demonstrator"] .wrapper .container .gap-s {
		gap: var(--gap-xs) !important;
	}
}

@media only screen and (max-width: 688px) and (orientation: portrait) {
	section[name="cta"] .container-text.padding-l {
		padding: var(--padding-s) !important;
	}
}

footer picture, footer svg {
	width: 6.25rem;
}
@media only screen and (max-width: 992px) and (orientation: portrait) {
	footer > div:first-child {
		justify-content: flex-start !important;
	}
	footer > div:first-child > div {
		width: calc(50% - var(--gap-default) / 2) !important;
		justify-content: space-between !important;
	}
}
@media only screen and (max-width: 688px) and (orientation: portrait) {
	footer > div:first-child > div {
		width: 100% !important;
	}
}

/* ----------------------------------------------------------------
	Animations
-----------------------------------------------------------------*/

header, section[name="hero"] .container-text {
	opacity: 0;
}