:root {
    color-scheme: light dark;
	interpolate-size: allow-keywords;

    @view-transition {
        navigation: auto;
    }

    --shadow-xs: 0 0.1px 0.3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12);
    --shadow-sm: 0 0.3px 0.4px rgba(0, 0, 0, 0.025), 0 0.9px 1.5px rgba(0, 0, 0, 0.05), 0 3.5px 6px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 0.9px 1.5px rgba(0, 0, 0, 0.03), 0 3.1px 5.5px rgba(0, 0, 0, 0.08), 0 14px 25px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 1.2px 1.9px -1px rgba(0, 0, 0, 0.014), 0 3.3px 5.3px -1px rgba(0, 0, 0, 0.038), 0 8.5px 12.7px -1px rgba(0, 0, 0, 0.085), 0 30px 42px -1px rgba(0, 0, 0, 0.15);
    --shadow-xl: 0 1.5px 2.1px -6px rgba(0, 0, 0, 0.012), 0 3.6px 5.2px -6px rgba(0, 0, 0, 0.035), 0 7.3px 10.6px -6px rgba(0, 0, 0, 0.07), 0 16.2px 21.9px -6px rgba(0, 0, 0, 0.117), 0 46px 60px -6px rgba(0, 0, 0, 0.2);

    --radius-sm: .1875em;
    --radius-md: .25em;
    --radius-xl: 100vw;

    --font-standard: 'Source Sans 3', Arial, sans-serif;
    --font-heading: 'Rubik', var(--font-standard);

    --color-goville-blue: hsl(202,83%,35%); /* #0f6da3 */
    --color-goville-green: hsl(148,41%,37%); /* #38855c */

    --color-goville-purple-200: hsl(324, 100%, 73%);
    --color-goville-purple-300: hsl(324, 98%, 42%); /* --color-goville-purple-light */
    --color-goville-purple-400: hsl(324, 98%, 34%); /* Basecolor */
    --color-goville-purple-700: hsl(324, 98%, 26%); /* --color-goville-purple-dark */
    --color-goville-purple-800: hsl(324, 45%, 32%);

    --color-goville-grey: hsl(198,18%,33%);  /* #445962 */
    --color-goville-grey-dark: hsl(198,18%,25%);
    --color-goville-grey-light: hsl(198,7%,83%);

    --color-primary: light-dark(var(--color-goville-purple-400), var(--color-goville-purple-800));
    --color-primary-hover: light-dark(var(--color-goville-purple-300), var(--color-goville-purple-400));
    --color-secondary: light-dark(var(--color-goville-grey), var(--color-goville-grey-dark));
    --color-secondary-hover: var(--color-goville-grey-light);

    --clr-neutral-100: hsl(198, 9%, 100%);
    --clr-neutral-150: hsl(198, 9%, 96%);
    --clr-neutral-200: hsl(198, 9%, 90%);
    --clr-neutral-300: hsl(198, 9%, 83%); /* --color-goville-grey-light */
    --clr-neutral-600: hsl(198, 9%, 53%);
    --clr-neutral-700: hsl(198, 18%, 33%); /* --color-goville-grey */
    --clr-neutral-750: hsl(198, 18%, 20%);
    --clr-neutral-800: hsl(198, 9%, 15%);
    --clr-neutral-900: hsl(198, 9%, 10%);

    accent-color: var(--color-goville-purple-400);

    /* Textfarben */
    --clr-text-default: light-dark( var(--clr-neutral-900), var(--clr-neutral-200) );
    --clr-text-muted:   light-dark( var(--clr-neutral-700), var(--clr-neutral-300) );
    --clr-text-more-muted: light-dark(var(--clr-neutral-700), var(--clr-neutral-600));
    --clr-text-inverse: light-dark( var(--clr-neutral-100), var(--clr-neutral-800) );

    --clr-text-footer:  light-dark( var(--clr-neutral-200), var(--clr-neutral-300) );

    --clr-text-error: light-dark(hsl(0, 100%, 40%), hsl(0, 100%, 70%));

    /* Links */
    --clr-link-default: light-dark( var(--color-goville-purple-400), var(--color-goville-purple-200) );
    --clr-link-hover:   light-dark( var(--clr-neutral-900), var(--clr-neutral-200) );
    --clr-link-active:  light-dark( var(--clr-neutral-900), var(--clr-neutral-200) );

    /* Tags */
    --clr-tag-text:         color-mix(in hsl, var(--clr-text-default), transparent 30%);
    --clr-tag-text-hover:   var(--clr-text-default);
    --clr-tag-text-active:  var(--clr-neutral-100);
    --clr-tag-bg:           var(--clr-bg-more-subtle);
    --clr-tag-bg-active:    light-dark(var(--color-goville-purple-400), var(--color-goville-purple-800));

    /* Hintergrundfarben */
    --clr-bg-default:     light-dark( var(--clr-neutral-100), var(--clr-neutral-800) );
    --clr-bg-more-subtle: light-dark( var(--clr-neutral-150), var(--clr-neutral-750) );
    --clr-bg-subtle:      light-dark( var(--clr-neutral-200), var(--clr-neutral-700) );
    --clr-bg-less-subtle: light-dark( var(--clr-neutral-300), var(--clr-neutral-900) );
    --clr-bg-inverse:     light-dark( var(--clr-neutral-800), var(--clr-neutral-100) );

    --clr-bg-active:      light-dark( var(--clr-neutral-700), var(--clr-neutral-300) );
    --clr-bg-footer:      light-dark( var(--clr-neutral-700), var(--clr-neutral-900) );

    /* Border */
    --clr-border-default: light-dark( var(--clr-neutral-700), var(--clr-neutral-300) );
    --clr-border-subtle:  light-dark( var(--clr-neutral-300), var(--clr-neutral-700) );
    --clr-border-inverse: light-dark( var(--clr-neutral-100), var(--clr-neutral-300) );

    --clr-border-footer:  light-dark( transparent, color-mix(in hsl, var(--clr-neutral-100), transparent 70%) );

    /* SwiperJS Overrides */
    --swiper-navigation-color: var(--clr-neutral-100);
    --swiper-theme-color: var(--clr-neutral-100);
    --swiper-pagination-color: light-dark(var(--color-goville-purple-400), var(--color-goville-purple-800));
    --swiper-pagination-bullet-inactive-color: var(--clr-neutral-100);
    --swiper-pagination-bullet-size: 12px;
    --swiper-pagination-bullet-border-radius: var(--radius-xl);
    --swiper-pagination-bullet-inactive-opacity: 1;

    /* Pageturner */
    .mod-pageturner {
        --_pageturner-color:        light-dark( var(--clr-neutral-900), var(--clr-neutral-200) );
        --_pageturner-border-color: light-dark(var(--clr-neutral-300), var(--clr-neutral-700));
    }

    /* =fixit
    --------------------------------------------------------------- */
    :where(.report) {
        --stepper-bullet-bg-current: var(--color-primary-hover);
        --stepper-step-unfinished: var(--clr-neutral-600);
    }
    .map-marker {
        color: var(--clr-text-default);
        background-color: var(--clr-bg-default);
    }
    .map-marker::after {
        --_map-triangle-color: var(--clr-bg-default);
    }

    &.tmpl--home {
        --reverse-gap: 1em;
    }
}

[data-colorscheme="light"] {
    color-scheme: light;
}
[data-colorscheme="dark"] {
    color-scheme: dark;
}

*,
*::before,
*::after,
input[type="search"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    font-size: 62.5%; /* 10/16 */
    scroll-behavior: smooth;
}
.translated-rtl {
    direction: rtl;
}
body {
    font-size: 18px; /* IE < 11 fallback */
    font: 1.8rem/1.611111 var(--font-standard);
    font-weight: 400;
    position: relative;
    color: var(--clr-text-default);
    background-color: var(--clr-bg-default);
    transition-property: color, background-color;
    transition-duration: .2s;
}
h1, h2, h3, h4, h5, h6, caption,
.h1, .h2, .h3, .h4, .h5, .h6 {
    margin: 0 0 0.75em;
    line-height: 1.25;
    font-weight: bold;
    text-wrap: pretty;
}
h1, .h1 {
    font-size: clamp(1.65em, 2.836879vw, 2.222222em); /* 40/1410 */
    font-family: var(--font-heading);
	-webkit-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars: 10 4 4;
}
h2, caption, .h2 {
    font-size: 1.388889em;
    font-family: var(--font-heading);
}
.tmpl--content .main h2, 
.tmpl--content .main .h2,
.editor h2 {
    margin-top: 3em
}

.tmpl--content .main .box h2,
.tmpl--content .main h1+h2,
.editor h2:first-of-type,
.tmpl--content .mod-entry-header h2,
.tmpl--content .mod-lst-company h2,
.tmpl--content .main table td h2,
.tmpl--content .main table th h2,
.tmpl--content .main hr + h2,
.tmpl--content .main .mod-lst h2,
.tmpl--content .main .accordion h2,
.tmpl--content .main h2.nmt,
.tmpl--content .mod-event__header + div h2:first-child,
.tmpl--content .main summary > :is(h1, h2, h3, h4, h5, h6) {
    margin-top: 0;
}
h3, .h3 {
    font-size: 1.222222em;
    color: var(--clr-text-muted);
}
h4, .h4 {
    font-size: 1em;
}
h5, .h5 {
    margin: 0 0 0.4em;
    font-size: 1em;
}
h6, .h6 {
    margin: 0 0 0.2em;
    font-size: 1em;
}
p, ul, ol, dl, blockquote, pre, fieldset, figure, address, table, details, iframe, video, audio,
.p, .box, .table-responsive, .media-responsive, .flex-search, .mb, .mod-wrapper, .accordion, [data-oembed-url], [class*="col-"],
.js-flip-book-embedded-wrapper {
    margin: 0 0 1.5em;
}
.box {
    margin-block: 3em;
}
.event-registration .box {
    margin-block: 1.5em;
}
p {}
.p {
    font-size: 1em;
    font-weight: normal;
}
.mod-entry-lead, .lead {
	font-weight: bold;
	font-size: 1.222222em;
}
main :where(p, blockquote) {
	hanging-punctuation: first;
}
li ul, li ol {
    margin: 0;
}
ul, ol {
    padding-inline-start: 0;
}
ul {
    list-style: outside disc;
}
ol {
    list-style-position: outside;
}
ol ol, ul ul {
    margin-block-end: 0;
}
li {
    margin: 0;
    margin-inline-start: 1.5em;
}
ol ol li, ul ul li {
    margin: 0;
    margin-inline-start: 3em;
}
li + li, ul ul li, ol ol li,
ul ol li, ol ul li  {
    margin-block-start: 0.25em;
}
dt {
    font-weight: bold;
}
dd {
    padding-inline-start: 1.5em;
}
abbr[title] {
    cursor: help;
}
b, strong {
    font-weight: bold;
}
hr {
    clear: both;
    block-size: 1px;
    margin-block: 1.5em;
    border: 0;
    color: var(--clr-border-default);
    background-color: var(--clr-border-default);
}
img, embed, object, video {
    max-inline-size: 100%;
    block-size: auto;
    vertical-align: middle;
}
video, audio {
    display: block;
}
figure {}
figcaption {
    margin-block-start: 0.75em;
}

blockquote {
    position: relative;
    margin-block: 3em;
    border-inline-start: 2px solid var(--clr-border-subtle);
    padding-inline: 1.5em;
    font-size: clamp(2rem, 1.694rem + 0.588vi, 2.4rem); /* https://chrisburnell.com/clamp-calculator/?font-size-root=10&size-min=20&size-max=24&viewport-min=520&viewport-max=1200&viewport-units=vi */
    font-style: italic;
    color: var(--clr-text-muted);
    text-wrap: balance;
    quotes: "«" "»" "‹" "›";
}
blockquote::before{
    content: open-quote;
    z-index: -1;
    color: currentColor;
    position: absolute;
    left: 1.5em;
    transform: translateX(-100%);
}
blockquote p:has(cite) {
    text-align: right;
    font-size: .83333333em; /* 20/24 */
}

address {}
cite {}
tt, code, kbd, samp, pre,
.monospace {
    font-family: "Courier New", Courier, monospace;
}
kbd {
    border-style: solid;
    border-width: 1px 2px 2px 1px;
    padding: 0 2px;
    border-radius: 3px;
    background-color: #f6f4f3;
}
figcaption,
small, .small,
:is(label, span).error,
.asset-meta,
.cookie-alert,
.form-hint, .form-hint-complex, .js-simple-uploader-dropzone,
.tag {
    font-size: 0.77777778em; /* 14/18 */
}
iframe {
	aspect-ratio: var(--aspect-ratio, 16 / 9);
	display: block;
	margin: 3em 0;
	border: 0;
	padding: 0;
	width: 100%;
	height: auto;
}
iframe[src^="https://www.google.com/maps"],
iframe[src^="https://www.google.ch/maps"] {
	--aspect-ratio: 1 / 1;
}
.grecaptcha-logo iframe { /* Google reCAPTCHA-Badge */
	aspect-ratio: auto;
	margin: 0;
}

details::details-content {
	overflow: hidden;
	block-size: 0;
	transition-property: block-size, content-visibility;
	transition-duration: 0.2s;
	transition-behavior: allow-discrete;
}
details[open]::details-content {
	block-size: auto;
	block-size: calc-size(auto, size);
}
summary {
	display: flex;
	align-items: baseline;
    gap: .5em;
	cursor: pointer;
	margin: -1.5em;
	padding: 1.5em;
	overflow: hidden;
	font-weight: bold;
}
summary::-webkit-details-marker,
summary::marker {
    display: none;
}
summary:focus-visible {
    position: relative;
    z-index: 1;
}
summary::before {
    --_summary-icon-size: .75em;
    --_summary-icon-mask: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik00NDEuOSAxNjcuM2wtMTkuOC0xOS44Yy00LjctNC43LTEyLjMtNC43LTE3IDBMMjI0IDMyOC4yIDQyLjkgMTQ3LjVjLTQuNy00LjctMTIuMy00LjctMTcgMEw2LjEgMTY3LjNjLTQuNyA0LjctNC43IDEyLjMgMCAxN2wyMDkuNCAyMDkuNGM0LjcgNC43IDEyLjMgNC43IDE3IDBsMjA5LjQtMjA5LjRjNC43LTQuNyA0LjctMTIuMyAwLTE3eiI+PC9wYXRoPjwvc3ZnPg==');
    content: "";
    flex: none;
    inline-size: var(--_summary-icon-size);
    block-size: var(--_summary-icon-size);
    -webkit-mask: var(--_summary-icon-mask) no-repeat center;
    mask: var(--_summary-icon-mask) no-repeat center;
    background-size: contain;
    background-color: currentColor;
    transform: rotate(-90deg);
    transition: transform .2s;
}
details[open] summary::before {
    transform: rotate(0);
}
summary > * {
    display: inline;
    margin-bottom: 0;
}
summary > :is(h1, h2, h3, h4, h5, h6) {
    font: 1.8rem/1.611111 var(--font-standard);
    font-weight: 700;
}
summary + * {
    margin-top: 1.5em;
}

details:has(+ details) {
	margin-block-end: 1.5em;
}
details + details {
	margin-block-start: 1.5em;
}

details[name]:has(+ details[name]) {
	margin-block-end: 0;
}
details[name]:has(+ details[name]) + details[name] {
	margin-block-start: .5em;
	border-block-start: 0;
}



dialog, [popover], ::backdrop {
    transition-property: display, translate, opacity;
    transition-duration: .2s;
    transition-behavior: allow-discrete;
    opacity: 0;
}
dialog,
.dialog-content.dialog-content {
    border: 0;
    padding: 1.5em;
    width: 600px;
    max-width: 100%;
    margin: auto !important;
    color: var(--clr-text-muted);
    background-color: var(--clr-bg-subtle);
    border-radius: max(0px, min(var(--radius-md), calc((100vw - 100%) * 9999)));
    box-shadow: var(--shadow-lg);
    translate: 0 1em;
}
dialog[open],
dialog[open]::backdrop,
:popover-open,
:popover-open::backdrop {
    opacity: 1;
    translate: 0 0;
}
@starting-style {
    dialog[open],
    dialog[open]::backdrop,
    :popover-open,
    :popover-open::backdrop {
        opacity: 0;
    }
    dialog[open] {
        translate: 0 1em;
    }
}

:is(dialog, [popover])::backdrop {
	background-color: rgba(0,0,0,.5);
}

/* =links
--------------------------------------------------------------- */
a {
    color: var(--clr-link-default);
}
a:focus, a:hover, a:active {
    color: var(--clr-link-hover)
}
:focus:not(:focus-visible) {
    outline: none;
}
a img {
    border: none;
}

[id] {
    scroll-margin-top: 2ex;
}

/* =skiplinks
--------------------------------------------------------------- */
.skiplinks__link:any-link {
    position: absolute;
    top: -9999px;
    left: 1.5em;
    z-index: 500;
    padding: 0.5em 1em;
    text-decoration: none;
    color: var(--clr-text-inverse);
    background-color: var(--clr-bg-inverse);
}
.skiplinks__link:is(:focus, :active) {
    top: 1.5em;
}

/* =doc-anchors font-awesome
--------------------------------------------------------------- */
[href^="https:"]::after, [href^="http:"]::after,
.show-icon[href^="/"]::after, .document-lst::after,
[href$=".csv" i]::before, [href*=".csv?" i]::before, [href*=".csv/" i]::before,
[href$=".doc" i]::before, [href*=".doc?" i]::before, [href*=".doc/" i]::before,
[href$=".docx" i]::before, [href*=".docx?" i]::before, [href*=".docx/" i]::before,
[href$=".dotx" i]::before, [href*=".dotx?" i]::before, [href*=".dotx/" i]::before,
[href$=".docm" i]::before, [href*=".docm?" i]::before, [href*=".docm/" i]::before,
[href$=".dot" i]::before, [href*=".dot?" i]::before, [href*=".dot/" i]::before,
[href$=".jpg" i]::before, [href*=".jpg?" i]::before, [href*=".jpg/" i]::before,
[href$=".jpeg" i]::before, [href*=".jpeg?" i]::before, [href*=".jpeg/" i]::before,
[href$=".gif" i]::before, [href*=".gif?" i]::before, [href*=".gif/" i]::before,
[href$=".eps" i]::before, [href*=".eps?" i]::before, [href*=".eps/" i]::before,
[href$=".mp3" i]::before, [href*=".mp3?" i]::before, [href*=".mp3/" i]::before,
[href$=".mp4" i]::before, [href*=".mp4?" i]::before, [href*=".mp4/" i]::before,
[href$=".pdf" i]::before, [href*=".pdf?" i]::before, [href*=".pdf/" i]::before,
[href$=".png" i]::before, [href*=".png?" i]::before, [href*=".png/" i]::before,
[href$=".potm" i]::before, [href*=".potm?" i]::before, [href*=".potm/" i]::before,
[href$=".potx" i]::before, [href*=".potx?" i]::before, [href*=".potx/" i]::before,
[href$=".pps" i]::before, [href*=".pps?" i]::before, [href*=".pps/" i]::before,
[href$=".ppsm" i]::before, [href*=".ppsm?" i]::before, [href*=".ppsm/" i]::before,
[href$=".ppsx" i]::before, [href*=".ppsx?" i]::before, [href*=".ppsx/" i]::before,
[href$=".ppt" i]::before, [href*=".ppt?" i]::before, [href*=".ppt/" i]::before,
[href$=".pptm" i]::before, [href*=".pptm?" i]::before, [href*=".pptm/" i]::before,
[href$=".pptx" i]::before, [href*=".pptx?" i]::before, [href*=".pptx/" i]::before,
[href$=".psd" i]::before, [href*=".psd? " i]::before, [href*=".psd/ " i]::before,
[href$=".rss" i]::before, [href*=".rss?" i]::before, [href*=".rss/" i]::before,
[href$=".rtf" i]::before, [href*=".rtf?" i]::before, [href*=".rtf/" i]::before,
[href$=".svg" i]::before, [href*=".svg?" i]::before, [href*=".svg/" i]::before,
[href$=".tif" i]::before, [href*=".tif?" i]::before, [href*=".tif/" i]::before,
[href$=".tiff" i]::before, [href*=".tiff?" i]::before, [href*=".tiff/" i]::before,
[href$=".txt" i]::before, [href*=".txt?" i]::before, [href*=".txt/" i]::before,
[href$=".vcf" i]::before, [href*=".vcf?" i]::before, [href*=".vcf/" i]::before,
[href$=".xlam" i]::before, [href*=".xlam?" i]::before, [href*=".xlam/" i]::before,
[href$=".xls" i]::before, [href*=".xls?" i]::before, [href*=".xls/" i]::before,
[href$=".xlt" i]::before, [href*=".xlt?" i]::before, [href*=".xlt/" i]::before,
[href$=".xlsb" i]::before, [href*=".xlsb?" i]::before, [href*=".xlsb/" i]::before,
[href$=".xlsm" i]::before, [href*=".xlsm?" i]::before, [href*=".xlsm/" i]::before,
[href$=".xlsx" i]::before, [href*=".xlsx?" i]::before, [href*=".xlsx/" i]::before,
[href$=".xltm" i]::before, [href*=".xltm?" i]::before, [href*=".xltm/" i]::before,
[href$=".xltx" i]::before, [href*=".xltx?" i]::before, [href*=".xltx/" i]::before,
[href$=".zip" i]::before, [href*=".zip?" i]::before, [href*=".zip/" i]::before,
[href^="mailto\3A"]::before, [data-email-link]::before,
[href^="tel\3A"]::before, [href^="skype\3A"]::before,
[href^="https://www.google.com/maps/"]::before,
[href^="http://www.google.com/maps/"]::before,
[href^="https://maps.google.com/"]::before,
[href^="http://maps.google.com/"]::before,
[href^="https://goo.gl/maps/"]::before,
.download-icn::before,
.facebook-icn::before,
.instagram-icn::before,
.linkedin-icn::before,
.twitter-icn::before,
.whatsapp-icn::before,
.xing-icn::before,
.youtube-icn::before {
    display: inline-block;
    padding-right: 0.25em;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
}
.facebook-icn::before,
.instagram-icn::before,
.linkedin-icn::before,
.twitter-icn::before,
.whatsapp-icn::before,
.xing-icn::before,
.youtube-icn::before {
    font-family: "FontAwesome Brands";
}
[href$=".doc" i]::before, [href*=".doc?" i]::before, [href*=".doc/" i]::before,
[href$=".docm" i]::before, [href*=".docm?" i]::before, [href*=".docm/" i]::before,
[href$=".docx" i]::before, [href*=".docx?" i]::before, [href*=".docx/" i]::before,
[href$=".dot" i]::before, [href*=".dot?" i]::before, [href*=".dot/" i]::before,
[href$=".dotx" i]::before, [href*=".dotx?" i]::before, [href*=".dotx/" i]::before,
[href$=".rtf" i]::before, [href*=".rtf?" i]::before, [href*=".rtf/" i]::before {
    content: "\f1c2";
}
[href$=".pdf" i]::before, [href*=".pdf?" i]::before, [href*=".pdf/" i]::before {
    content: "\f1c1";
}
[href$=".potm" i]::before, [href*=".potm?" i]::before, [href*=".potm/" i]::before,
[href$=".potx" i]::before, [href*=".potx?" i]::before, [href*=".potx/" i]::before,
[href$=".pps" i]::before, [href*=".pps?" i]::before, [href*=".pps/" i]::before,
[href$=".ppsm" i]::before, [href*=".ppsm?" i]::before, [href*=".ppsm/" i]::before,
[href$=".ppsx" i]::before, [href*=".ppsx?" i]::before, [href*=".ppsx/" i]::before,
[href$=".ppt" i]::before, [href*=".ppt?" i]::before, [href*=".ppt/" i]::before,
[href$=".pptm" i]::before, [href*=".pptm?" i]::before, [href*=".pptm/" i]::before,
[href$=".pptx" i]::before, [href*=".pptx?" i]::before, [href*=".pptx/" i]::before {
    content: "\f1c4";
}
[href$=".rss" i]::before, [href*=".rss?" i]::before, [href*=".rss/" i]::before {
    content: "\f09e";
}
[href$=".txt" i]::before, [href*=".txt?" i]::before, [href*=".txt/" i]::before {
    content: "\f15c";
}
[href$=".vcf" i]::before, [href*=".vcf?" i]::before, [href*=".vcf/" i]::before {
    content: "\f2bb";
}
[href$=".csv" i]::before, [href*=".csv?" i]::before, [href*=".csv/" i]::before,
[href$=".xlam" i]::before, [href*=".xlam?" i]::before, [href*=".xlam/" i]::before,
[href$=".xls" i]::before, [href*=".xls?" i]::before, [href*=".xls/" i]::before,
[href$=".xlt" i]::before, [href*=".xlt?" i]::before, [href*=".xlt/" i]::before,
[href$=".xlsb" i]::before, [href*=".xlsb?" i]::before, [href*=".xlsb/" i]::before,
[href$=".xlsm" i]::before, [href*=".xlsm?" i]::before, [href*=".xlsm/" i]::before,
[href$=".xlsx" i]::before, [href*=".xlsx?" i]::before, [href*=".xlsx/" i]::before,
[href$=".xltm" i]::before, [href*=".xltm?" i]::before, [href*=".xltm/" i]::before,
[href$=".xltx" i]::before, [href*=".xltx?" i]::before, [href*=".xltx/" i]::before {
    content: "\f1c3";
}
[href$=".zip" i]::before, [href*=".zip?" i]::before, [href*=".zip/" i]::before {
    content: "\f1c6";
}
[href^="https://www.google.com/maps/"]::before,
[href^="http://www.google.com/maps/"]::before,
[href^="https://maps.google.com/"]::before,
[href^="http://maps.google.com/"]::before,
[href^="https://goo.gl/maps/"]::before {
    content: "\f3c5";
}
[href$=".jpg" i]::before, [href*=".jpg?" i]::before, [href*=".jpg/" i]::before,
[href$=".jpeg" i]::before, [href*=".jpeg?" i]::before, [href*=".jpeg/" i]::before,
[href$=".gif" i]::before, [href*=".gif?" i]::before, [href*=".gif/" i]::before,
[href$=".eps" i]::before, [href*=".eps?" i]::before, [href*=".eps/" i]::before,
[href$=".png" i]::before, [href*=".png?" i]::before, [href*=".png/" i]::before,
[href$=".psd" i]::before, [href*=".psd?" i]::before, [href*=".psd/" i]::before,
[href$=".svg" i]::before, [href*=".svg?" i]::before, [href*=".svg/" i]::before,
[href$=".tif" i]::before, [href*=".tif?" i]::before, [href*=".tif/" i]::before,
[href$=".tiff" i]::before, [href*=".tiff?" i]::before, [href*=".tiff/" i]::before {
    content: "\f1c5";
}
[href$=".mp3" i]::before, [href*=".mp3?" i]::before, [href*=".mp3/" i]::before {
    content: "\f1c7";
}
[href$=".mp4" i]::before, [href*=".mp4?" i]::before, [href*=".mp4/" i]::before {
    content: "\f1c8";
}

.download-icn::before {
    content: "\f019";
}
.facebook-icn::before {
    content: "\f230";
}
.instagram-icn::before {
    content: "\f16d";
}
.linkedin-icn::before {
    content: "\f08c";
}
.twitter-icn::before {
    content: "\f081";
}
.whatsapp-icn::before {
    content: "\f232";
}
.xing-icn::before {
    content: "\f169";
}
.youtube-icn::before {
    content: "\f169";
}
[href^="mailto:"]::before,
[data-email-link]::before {
    content: "\f0e0";
}
[href^="tel:"]::before {
    content: "\f095";
}
[href^="skype:"]::before {
    content: "\f17e";
}
[href^="http:"]::after,
[href^="https:"]::after {
    padding-right: 0;
    padding-left: 0.25em;
    content: "\f08e";
}
[href*=".goville.ch"]::after,
[href*=".backslash.ch"]::after,
[data-email-link]::after,
.no-icon::after, .no-icon::before,
.popup-magnific::after, .popup-magnific::before,
.nav [href]::after,
.subnav [href]::after,
.footer [href]::after,
.mod-dam--gallery a::before,
.no-icon [href]::before, .no-icon [href]::after,
#chainlit-copilot-popover [href]::before, #chainlit-copilot-popover [href]::after,
.js-flip-book-embedded-wrapper .df-viewer-container [href]::after,
.js-flip-book-embedded-wrapper .df-viewer-container [href]::before {
    content: none;
    padding: 0;
}

.os-url .show-icon[href^="https://www.goville.ch"]::after,
.show-icon[href^="/"]::after { /* OSM-lst: interne Links mit anderem Icon */
    content: "\f0c1";
}
.document-lst::after { /* OSM-lst: mehrere Files pro Artikel zugewiesen */
    content: "\f0c5";
}

/* =link expanded
--------------------------------------------------------------- */
.link-expanded {
    position: relative;
}
.link-expanded a::after,
a.link-expanded__child::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
}
a.link-expanded__ignore::after,
.link-expanded a[tabindex="-1"]::after {
	content: none;
}

.link-expanded:has(a:focus-visible) {
    outline: 5px auto Highlight;
	outline: 5px auto -webkit-focus-ring-color;
    z-index: 1;

    & a:focus-visible {
        outline: none;
    }
}

.link-expanded:has(.tag-lst a) {
    outline: none;

    & a::before, 
    & a::after {
        content: none;
    }
    & a:focus-visible {
        outline: 5px auto Highlight;
        outline: 5px auto -webkit-focus-ring-color;
        z-index: 1;
    }
}

/* =forms
--------------------------------------------------------------- */
fieldset {
    clear: both;
    min-width: 0;
    border: 1px solid var(--clr-border-default);
    padding: 1.5em;
}
fieldset.reset {
    margin: 0;
    border: 0;
    padding: 0;
    background-color: transparent;
}
legend {
    display: table;
    color: inherit;
    font-weight: bold;
    font-size: 1.17em;
}
[type=date],
[type=datetime],
[type=datetime-local],
[type=email],
[type=file],
[type=month],
[type=number],
[type=password],
[type=search],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
[type=radio],
[type=checkbox],
select,
textarea,
button, [type="button"], [type="reset"], [type="submit"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    outline-offset: 0;
    border: 1px solid var(--clr-border-default);
    padding: 0.25em 0.5em;
	color: inherit;
    background-color: var(--clr-bg-subtle);
    border-radius: 0.125em;
    transition: box-shadow 0.2s;
}

@supports (-ms-ime-align: auto) { /* targets only legacy edge */
    [type=radio],
    [type=checkbox] {
        -webkit-appearance: checkbox;
    }
}

[type=radio],
[type=checkbox] {
    position: relative;
    height: 1.25em;
    width: 1.25em;
    display: inline-block;
    vertical-align: text-bottom;
}
[type=radio] {
    border-radius: 100%;
}

[type=radio]::before,
[type=checkbox]::before,
[type=checkbox]::after {
    content: "";
    position: absolute;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
[type=radio]::before {
    height: 0;
    width: 0;
}

[type=radio]:checked::before {
    border: 5px solid transparent;
    border-radius: 100%;
    outline-offset: -6px;
    background-color: var(--clr-text-default);;
}
[type=checkbox]:checked::before,
[type=checkbox]:checked::after {
    border-color: var(--clr-border-default);;
    border-width: 3px;
    border-top: 0;
    border-left: 0;
    height: 80%;
    width: 40%;
    transform: rotate(45deg) translateY(-10%) translateX(-10%);
}
[type=checkbox]:checked::before {
    border-right-style: solid;
}
[type=checkbox]:checked::after {
    border-bottom-style: solid;
}

textarea {
	resize: vertical;
}
textarea:not([rows]) {
	min-height: calc(3lh + .5em + 2px); /* lh + pad + border */
	field-sizing: content;
}
select:not([multiple]) {
    /* Icon: FontAwesome .fa-regular.fa-angle-down */
    --_dropdown-angle-light: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48cGF0aCBkPSJNMjQxIDM2OWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBMNDcgMjA5Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsMTQzIDE0M0wzNjcgMTc1YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUwyNDEgMzY5eiIvPjwvc3ZnPg==');
    --_dropdown-angle-dark: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48cGF0aCBmaWxsPSIjZmZmZmZmIiBkPSJNMjQxIDM2OWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBMNDcgMjA5Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsMTQzIDE0M0wzNjcgMTc1YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUwyNDEgMzY5eiIvPjwvc3ZnPg==');
    display: block;
    padding-inline-end: 1.5em;
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-image: var(--_dropdown-angle-light);
    background-repeat: no-repeat;
    background-position: right .75em top 50%;
    background-size: .75em .86em;
}
select::-ms-expand { /* Hide arrow icon in IE browsers */
    display: none;
}
::-webkit-date-and-time-value { /* fixes Safari Mobile Bug, where empty date fields colapses */
    min-height: 1.25em;
}
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}
[type=date]:focus,
[type=datetime]:focus,
[type=datetime-local]:focus,
[type=email]:focus,
[type=file]:focus,
[type=month]:focus,
[type=number]:focus,
[type=password]:focus,
[type=range]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=text]:focus,
[type=time]:focus,
[type=url]:focus,
[type=week]:focus,
[type=checkbox]:focus,
[type=radio]:focus,
select:focus,
textarea:focus,
button:focus, [type="button"]:focus, [type="reset"]:focus, [type="submit"]:focus,
summary:focus,
.form-builder__item--toggle [type="checkbox"]:focus ~ .form-builder__toggle::before {
    outline: 3px solid transparent;
    border-color: var(--clr-border-default);
    box-shadow: 0 0 0 5px rgba(21, 156, 228, 0.4);
}
summary:focus:not(:focus-visible),
[type=range]:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none;
}
[disabled], [readonly] {
    border-style: dotted;
    cursor: not-allowed;
}
[disabled], [aria-disabled=true] {
    opacity: 0.5;
}
button + button[type=reset] {
    margin-left: 1em;
}

/* =tables
--------------------------------------------------------------- */
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
caption {
    text-align: left;
}
table th,
table td {
    vertical-align: top;
    border-bottom: 1px solid var(--clr-border-subtle);
    padding: 0.25em 0.5em;
}
table th {
    text-align: left;
    font-weight: bold;
}
table:not(.calendar) thead th {
    vertical-align: bottom;
    border-bottom-width: 2px;
    padding: calc((1.6 / 1.2) * 0.25em) calc((1.6 / 1.2) * 0.5em); /* Faktor der Schriftgrösse * padding */
    font-size: 1.2rem;
    line-height: 1.3;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
table tbody th,
table tfoot th {
    border-right: 1px solid var(--clr-border-subtle);
}
table tr:first-child th,
table tr:first-child td {
    border-top: 1px solid var(--clr-border-subtle);
}
table:not(.calendar) thead tr:first-child th,
table:not(.calendar) thead tr:first-child td {
    border-top: 0;
}
table:not(.calendar) thead ~ tbody tr:last-child {
    border-bottom: 2px solid var(--clr-border-subtle);
}
table tfoot tr:first-child td {
    border-top: 2px solid var(--clr-border-subtle);
}
table tfoot tr:last-child th,
table tfoot tr:last-child td {
    border-top: 2px solid var(--clr-border-subtle);
    border-bottom: 6px double var(--clr-border-subtle);
    font-weight: bold;
}
table.auto {
    width: auto;
}
table.fixed,
.tbl-fixed {
    table-layout: fixed;
}
th[align="left"], th.left, td.left {
    float: none;
    text-align: left;
}
th[align="center"], th.center, td.center {
    text-align: center;
}
th[align="right"], th.right, td.right,
.tbl-no {
    float: none;
    text-align: right;
}
table.no-pad th:first-child,
table.no-pad td:first-child {
    padding-left: 0;
}
table.no-pad th:last-child,
table.no-pad td:last-child {
    padding-right: 0;
}

/* sortable Tables overrides */
.sortable {
    --border-color: var(--clr-border-default);
    --filter-bgc: var(--clr-bg-subtle);
}

/*=zebras & hover
--------------------------------------------------------------- */
table.zebra tbody tr:nth-child(even),
ul.zebra > li:nth-child(even) {
    background-color: color-mix(in oklab, var(--clr-bg-subtle), transparent 70%);
}
table.hover tbody tr:hover,
table.hover tfoot tr:hover,
ul.hover > li:hover {
    background-color: color-mix(in oklab, var(--clr-bg-subtle), transparent 70%);
}

/*=grid-tables
--------------------------------------------------------------- */
table.grid th,
table.grid td {
    border-left: 1px solid var(--clr-border-subtle);
}
table.grid th:last-child,
table.grid td:last-child {
    border-right: 1px solid var(--clr-border-subtle);
}

/*=presentation (layout-tables). don't forget role="presentation"
--------------------------------------------------------------- */
table.presentation,
table.presentation th,
table.presentation td,
table.presentation tr:first-child th,
table.presentation tr:first-child td,
table.presentation thead ~ tbody tr:last-child,
table.reset,
table.reset th,
table.reset td,
table.reset tr:first-child th, 
table.reset tr:first-child td,
table.reset thead ~ tbody tr:last-child {
    border: 0;
    padding: 0;
}

/*=responsive tables & media
--------------------------------------------------------------- */
.table-responsive {
    position: relative;
    z-index: 1;
}
.table-responsive > table {
    margin-bottom: 0;
}

.media-responsive {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.media-responsive iframe,
.media-responsive object,
.media-responsive embed,
.editor .media-responsive img.cke_iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@supports (animation-timeline: scroll()) {
	.table-responsive {
		--_indicator-inline-size: min(6vw, 3em);
		--_indicator-color: rgb(0 0 0 / .25);

		display: grid;
		grid-template-areas: "leftindicator content rightindicator";
		grid-template-columns: var(--_indicator-inline-size) maxcontent var(--_indicator-inline-size);

		&::before,
		&::after {
			content: "";
			block-size: 100%;
			inline-size: var(--_indicator-inline-size);
			display: block;
			z-index: 10;
			position: sticky;
			opacity: 0;
			pointer-events: none;

			animation-name: show-indicator;
			animation-fill-mode: both;
			animation-timeline: scroll(nearest inline);
		}
		&::before {
			grid-area: leftindicator;
			inset-inline-start: 0;
			background-image: radial-gradient(ellipse farthest-side at center left, var(--_indicator-color), transparent); /* runder verlauf */

			animation-direction: forwards;
			animation-range: 0 var(--_indicator-inline-size);
		}
		&::after {
			grid-area: rightindicator;
			inset-inline-end: 0;
			background-image: radial-gradient(ellipse farthest-side at center right, var(--_indicator-color), transparent); /* runder verlauf */

			animation-direction: reverse;
			animation-range: calc(100% - var(--_indicator-inline-size)) 100%;
		}

		table {
			grid-column: 1 / -1;
			grid-row: 1 / -1;
		}
	}

	@keyframes show-indicator {
		to {
			opacity: 1;
		}
	}
}

/*=scrollbars
--------------------------------------------------------------- */
pre,
.table-responsive, .visible-scrollbar {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
pre::-webkit-scrollbar,
.table-responsive::-webkit-scrollbar, .visible-scrollbar::-webkit-scrollbar {
    height: 8px;
    width: 8px;
}
pre::-webkit-scrollbar-track,
.table-responsive::-webkit-scrollbar-track, .visible-scrollbar:-webkit-scrollbar-track {
    background-color: #f6f4f3;
}
pre::-webkit-scrollbar-thumb,
.table-responsive::-webkit-scrollbar-thumb, .visible-scrollbar::-webkit-scrollbar-thumb {
    background-color: grey;
    border-radius: 20em;
}
pre::-webkit-scrollbar-thumb:hover,
.table-responsive::-webkit-scrollbar-thumb:hover, .visible-scrollbar::-webkit-scrollbar-thumb:hover {
    background-color: black;
}

/* =helper/utility classes
--------------------------------------------------------------- */
[hidden],
.none, .screenhidden, .printvisible {
    display: none;
}
.block,
.screenvisible, .printhidden {
    display: block;
}
.visuallyhidden,
.invis,
.sr,
.sr-only,
.tmpl--home .main__title,
.c-section--teaser .card__cta,
.c-section--projects .card__cta {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    overflow: hidden;
    background-color: transparent;
}
.nmb {
    margin-bottom: 0;
}
.right	{float: right;}
.left	{float: left;}
.clear	{clear: both;}
.clearfix::after,
.cf::after,
.row::after,
.js-accordion-content::after {
    content: "";
    display: table;
    clear: both;
}
.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}
.alignleft,
.alignright,
.aligncenter {
    max-width: 36.805556%; /* 318/864 */
    margin: 5.324074%; /* 46/864 */
}
.alignleft {
    float: left;
    margin-top: 0;
    margin-left: 0;
}
.aligncenter {
    clear: both;
    display: block;
    margin-right: auto;
    margin-left: auto;
}
.alignright {
    float: right;
    margin-top: 0;
    margin-right: 0;
}
.crisp {
    image-rendering: crisp-edges;
    image-rendering: pixelated;
}

.hyphens {
	overflow-wrap: break-word;
	word-break: break-word; /* Safari */
	-webkit-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars: 10 4 4;
	text-wrap: pretty;
}

.reverse {
	display: flex;
	flex-direction: column;
	row-gap: var(--reverse-gap, .5em);

	:is(.mod-entry-title, .mod-entry-meta, .mod-entry-desc) {
		margin-block: 0;
	}
	> :is(.reverse__child, .date, .visuallyfirst, .mod-entry-meta) {
		order: -1;
	}
	+ .mod-entry-desc {
		margin-block-start: var(--reverse-gap, .5em);
	}
}

.reset,
.reset > li,
nav ul,
nav ul li {
    list-style: none outside none;
    margin-top: 0;
    margin-right: 0;
    margin-left: 0;
    padding: 0;
}
nav ul {
    margin-bottom: 0;
}
.nobr {
    white-space: nowrap;
}
details,
.box {
    --_box-border-width: .25em;
    position: relative;
    display: flow-root;
    clear: both;
    padding: 1.5em;
    isolation: isolate;

    --_box-text-color: var(--clr-text-default);
    --_box-link-color: var(--clr-link-default);
    --_box-border-color: var(--clr-bg-more-subtle);
    --_box-bg-color: var(--clr-bg-more-subtle);

    border-radius: var(--radius-sm) 0 0 var(--radius-sm);
    color: var(--_box-text-color);
    background-color: var(--_box-bg-color);

    &::after {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        inset-inline-end: auto;
        block-size: 100%;
        inline-size: var(--_box-border-width);
        background-image: linear-gradient(to bottom, var(--_box-text-color), var(--_box-border-color));
        border-start-start-radius: var(--radius-sm);
        border-end-start-radius: var(--radius-sm);
    }
}
.box__icn {
    --_box-icon-size: calc(2rem + 10px);
    position: absolute;
    inset-block-start: calc(var(--_box-icon-size) / -2);
    inset-inline-start: calc((var(--_box-icon-size) / -2) + (var(--_box-border-width) / 2));
    background-color: var(--clr-bg-default);
    border-radius: var(--radius-xl);
    width: var(--_box-icon-size);
    height: var(--_box-icon-size);
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: var(--_box-text-color);
}

.box :is(h2, h3, h4, h5, h6) {
    color:  var(--_box-text-color);
}
:where(.box) a {
    color: var(--_box-link-color);
    text-decoration: underline;
}
.box--info {
    --_box-text-color: light-dark(#055160, #6edff6);
    --_box-link-color: light-dark(#055160, #6edff6);
    --_box-border-color: light-dark(#9eeaf9, #087990);
    --_box-bg-color: light-dark(#cff4fc, #032830);
}
.box--warning {
    --_box-text-color: light-dark(#664d03, #ffda6a);
    --_box-link-color: light-dark(#664d03, #ffda6a);
    --_box-border-color: light-dark(#ffe69c, #997404);
    --_box-bg-color: light-dark(#fff3cd, #332701);
}

.box--success {
    --_box-text-color: light-dark(#0a3622, #75b798);
    --_box-link-color: light-dark(#0a3622, #75b798);
    --_box-border-color: light-dark(#a3cfbb, #0f5132);
    --_box-bg-color: light-dark(#d1e7dd, #051b11);
}
.box--error {
    --_box-text-color: light-dark(#58151c, #ea868f);
    --_box-link-color: light-dark(#58151c, #ea868f);
    --_box-border-color: light-dark(#f1aeb5, #842029);
    --_box-bg-color: light-dark(#f8d7da, #2c0b0e);
}
.box--tipp {
    &::after {
        background-image: linear-gradient(to bottom, hsl(165,64%,69%),hsl(255,64%,69%),hsl(345,64%,69%),hsl(75,64%,69%)); /* Magic Rainbow */
    }
    .box__icn {
        color: light-dark(var(--color-primary), var(--color-goville-purple-200));
    }
}



blockquote > *:last-child,
details > *:last-child, summary ~ div > *:last-child,
dialog > *:last-child,
fieldset > *:last-child,
th > *:last-child, td > *:last-child,
.box > *:last-child,
.row > [class*="col-"] > *:last-child,
.lc-reset > *:last-child,
.katabox > *:last-child,
.js-accordion-content > *:last-child,
.faq__content > *:last-child,
.nmb-lastchild > *:last-child {
    margin-bottom: 0;
}

/* =buttons
--------------------------------------------------------------- */
.btn, .co-search__btn {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--color-primary);
    padding: .25em 1.5em;
    font-size: 0.888889em;
    color: var(--clr-neutral-100);
    text-decoration: none;
    text-align: center;
    line-height: inherit;
    background-color: var(--color-primary);
    background-image: linear-gradient(40deg, var(--color-primary-hover) 45%, var(--color-primary) 55% );
    background-size: 300% 100%;
    background-position: 99% 0;
    transition: background-position .2s, color .2s;
    border-radius: 4px;
    cursor: pointer;
}
.btn:has(svg) {
    gap: .5em;
}
.btn:is(:hover, :focus),
.co-search__btn:is(:hover, :focus) {
    border-color: transparent;
    background-position: -1px 0;
    text-decoration: none;
    color: var(--clr-neutral-100);
}
.btn:active {
    box-shadow: inset 0 1px 3px rgba(0,0,0,.3);
}
.btn svg {
    transition: .2s;
}
.btn--small, .btn--small {
    padding: .1em .5em;
}
.btn[type="reset"],
.btn--light, .btn--loadmore, .form-to-wizard-prev, .btn--secondary {
    color: var(--clr-text-muted);
    border-color: var(--clr-border-subtle);
    background-image: linear-gradient(40deg, var(--clr-bg-less-subtle) 45%, var(--clr-bg-default) 55%);
}
.btn[type="reset"]:is(:hover, :focus),
:is(.btn--light, .btn--loadmore, .form-to-wizard-prev, .btn--secondary):is(:hover, :focus) {
    color: var(--clr-text-default);
    border-color: var(--clr-border-subtle);
}
.btn--dark {
    border-color: var(--clr-border-default);
    background-image: linear-gradient(40deg, var(--color-goville-grey-dark) 45%, var(--clr-neutral-700) 55% );
}
.btn--invis,
.btn--ghost {
    border: 1px solid currentColor;
    color: var(--clr-text-muted);
    background-image: none;
    background-color: transparent;
}
.btn--ghost {
    border: 1px solid var(--clr-border-default);
}
:is(.btn--ghost):is(:hover, :focus) {
    border: 1px solid currentColor;
    color: var(--clr-text-default);
}
.btn--fullwidth {
    width: 100%;
}
.btn--reject {
    background-color: red;
}
.btn--accept {
    background-color: green;
}

/* =animations
--------------------------------------------------------------- */
@media screen and (prefers-reduced-motion: reduce), (update: slow) {
    html {
        scroll-behavior: auto;
    }
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}

/* =grid
--------------------------------------------------------------- */
.row {
    clear: both;
}
[class*="col-"] {
    position: relative;
    float: left;
    margin-left: 2.1276595745%; /* 30/1410 */
    min-height: 1px;
}
[class*="col-"]:first-child {
    margin-left: 0;
}
.col-1 {
    width: 6.3829787234%; /* 90/1410 */
}
.col-2 {
    width: 14.8936170213%; /* 210/1410 */
}
.col-3 {
    width: 23.4042553191%; /* 330/1410 */
}
.col-4 {
    width: 31.914893617%; /* 450/1410 */
}
.col-5 {
    width: 40.4255319149%; /* 570/1410 */
}
.col-6,
.col-half {
    width: 48.9361702128%; /* 690/1410 */
}
.col-7 {
    width: 57.4468085106%; /* 810/1410 */
}
.col-8 {
    width: 65.9574468085%; /* 930/1410 */
}
.col-9 {
    width: 74.4680851064%; /* 1050/1410 */
}
.col-10 {
    width: 82.9787234043%; /* 1170/1410 */
}
.col-11 {
    width: 91.4893617021%; /* 1290/1410 */
}
.col-12 {
    width: 100%;
}

/* =editor styles (backend)
--------------------------------------------------------------- */
.editor .accordion {
    position: relative;
    border: 1px dotted red;
}
.editor .accordion::before {
    content: 'Akkordeon';
    position: absolute;
    top: 0;
    right: 0;
    padding: 3px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    background-color: red;
}
.editor .accordion > *:is(h2, h3, h4, h5, h6) {
    clear: both;
}
.editor img.cke_iframe {
    width: 100% !important;
    height: 100% !important;
}


