/* ###############
##### Basic ######
############### */
@media all {
    :root {
        /* ###### Defining colors ###### */
        /* Text color */
        --color-white-rgb: 255, 255, 255;
        --color-white: rgb(var(--color-white-rgb));
        --color-white-darkened-rgb: 246, 246, 246;
        --color-white-darkened-rgb: 250, 250, 250;
        --color-white-darkened: rgb(var(--color-white-darkened-rgb));
        --color-gray-lightest-rgb: 238, 238, 238;
        --color-gray-lightest: rgb(var(--color-gray-lightest-rgb));
        --color-gray-light-rgb: 200, 200, 200;
        --color-gray-light: rgb(var(--color-gray-light-rgb));
        --color-gray-rgb: 128, 128, 128;
        --color-gray: rgb(var(--color-gray-rgb));
        --color-gray-dark-rgb: 51, 51, 51;
        --color-gray-dark: rgb(var(--color-gray-dark-rgb));
        --color-gray-darkest-rgb: 34, 34, 34;
        --color-gray-darkest: rgb(var(--color-gray-darkest-rgb));
        --color-black-rgb: 0, 0, 0;
        --color-black: rgb(var(--color-black-rgb));

        --texture-gray-dark: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkBAMAAACCzIhnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA4ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxNGZiOTU0NC05ZTJlLTRiY2ItOWU0MS03M2NhMzdmODkzMjUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkVDOERGN0UyQTJFMTFFQUEzMDJBMTFGNEQ1QjA1NjIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkVDOERGN0QyQTJFMTFFQUEzMDJBMTFGNEQ1QjA1NjIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NTg4MjQ1Mi0zMTE4LTRjOTItYTEyZi0zMDVkZGQ0YTk4N2QiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDoyYjg5MjQzNi1jNThkLTNjNDAtYTFi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');

        --color-1-rgb: 248, 170, 14;
        --color-1: rgb(var(--color-1-rgb));
        --color-1-hover-rgb: 181, 2, 100;
        --color-1-hover: rgb(var(--color-1-hover-rgb));

        --color-2-rgb: 34, 201, 237;
        --color-2: rgb(var(--color-2-rgb));
        --color-2-hover-rgb: 29, 172, 204;
        --color-2-hover: rgb(var(--color-2-hover-rgb));

        --color-3-rgb: 58, 80, 110;
        --color-3: rgb(var(--color-3-rgb));

        --color-ui-bg-rgb: 0, 0, 0;
        --color-ui-bg: rgba(var(--color-ui-bg-rgb), .86);

        --color-ui-border-rgb: 255, 255, 255;
        --color-ui-border: rgba(var(--color-ui-border-rgb), .15);

        /* ###### Defining styles ###### */
        --shadow-box: .125rem .125rem 1.375rem rgba(0, 0, 0, 0.1);
        --shadow-box-hover: .125rem calc(.125rem + var(--size-1)) 1.375rem rgba(0, 0, 0, 0.1);
        --border-radius: var(--size-1);

        /* ###### Defining sizes ###### */
        /* Defining Col-Start and Col-Width */
        --width-page: min(100vw, 120rem);

        /* Defining sizes */
        --width-content-xl: calc(87.5rem + 2 * var(--size-container-gap));
        --width-content-xxl: calc(102.5rem + 2 * var(--size-container-gap));

        --height-logo: clamp(1.5rem, 3.5vw, 3.125rem);
        --padding-logo: var(--size-6);

        /* MISC */
        /* Global Fonts */
        --font-family-body: "Open Sans", sanf-serif;
        --font-family-header: "Open Sans", sanf-serif;

        /* Backdrop filter */
        --backdrop-filter: .25rem;

        /* Transitions */
        --transition-default: all .2s ease-in-out;
        --transition-cubic: all .2s cubic-bezier(.5,.25,.25,1.5);

        /* Naigation variable */
        --padding-navigation-item-x: 1rem;
        --padding-navigation-item-y: .625rem;

        /* Page variables */
        --color-page-header-bg: var(--color-bg-light);
        --color-page-header-bg-scrolled: rgba(var(--color-bg-light-rgb),.8);

        --border-default-width: .125rem;
        --border-default-color: rgb(246,246,246);
        --border-default: var(--border-default-width) solid var(--border-default-color);

    }

    :root,
    body,
    .ce-header * {
        --dynamic-clamp-start: 48; /*rem*/
        --dynamic-clamp-end: 95; /*rem*/

        --dynamic-size-diff: calc(var(--dynamic-size-max) - var(--dynamic-size-min));
        --dynamic-clamp-diff: calc(var(--dynamic-clamp-end) - var(--dynamic-clamp-start));    
        --dynamic-size-clamp: calc((var(--dynamic-size-min) * 1rem) + var(--dynamic-size-diff) * ((100vw - (var(--dynamic-clamp-start) * 1rem)) / var(--dynamic-clamp-diff)));    
        --dynamic-size-scaler: clamp((var(--dynamic-size-min) * 1rem), var(--dynamic-size-clamp), (var(--dynamic-size-max) * 1rem));
    }

    :root {
        /* Defining spaces */
        --dynamic-size-min: .25; /*rem*/
        --dynamic-size-max: .5; /*rem*/

        --size-1: var(--dynamic-size-scaler); /* default-values 4 -> 8 */
        --size-2: calc(var(--size-1) * 2); /* default-values 8 -> 16 */
        --size-3: calc(var(--size-1) * 3); /* default-values 12 -> 24 */
        --size-4: calc(var(--size-1) * 4); /* default-values 16 -> 32 */
        --size-5: calc(var(--size-1) * 5); /* default-values 20 -> 40 */
        --size-6: calc(var(--size-1) * 6); /* default-values 24 -> 48 */
        --size-7: calc(var(--size-1) * 7); /* default-values 28 -> 56 */
        --size-8: calc(var(--size-1) * 8); /* default-values 32 -> 64 */
        --size-9: calc(var(--size-1) * 9); /* default-values 36 -> 72 */
        --size-10: calc(var(--size-1) * 10); /* default-values 40 -> 80 */

        --size-grid-gap: var(--size-8);
        --size-container-gap: var(--size-8);
        --size-vertical-gap: var(--size-10);
    }

    body {
        --dynamic-size-min: .875; /*rem*/
        --dynamic-size-max: 1.125; /*rem*/

        --font-size-smallest: calc(var(--dynamic-size-scaler) * 13 / 18);
        --font-size-small: calc(var(--dynamic-size-scaler) * 14 / 18);
        --font-size-medium: calc(var(--dynamic-size-scaler) * 16 / 18);
        --font-size-menu: calc(var(--dynamic-size-scaler) * 20 / 18);
    }

    body,
    .ce-header * ,
    .accordion-button {
        font-size: var(--dynamic-size-scaler);
    }

    .ce-header :is(h1, .h1) ,
    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.75; /*rem*/
        --dynamic-size-max: 5; /*rem*/ 
    }

    .ce-header .alternative:is(h1, .h1) {
        --dynamic-size-min: 2.5; /*rem*/
        --dynamic-size-max: 7.5; /*rem*/ 
    }

    .ce-header h2 ,
    .ce-header .h2 ,
    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 2.25; /*rem*/ 
    }

    .ce-header h3 ,
    .ce-header .h3 {
        --dynamic-size-min: 1; /*rem*/
        --dynamic-size-max: 1.75; /*rem*/ 
    }

    .ce-header h4 ,
    .ce-header .h4 {
        --dynamic-size-min: 1; /*rem*/
        --dynamic-size-max: 1.25; /*rem*/ 
    }

    .ce-header h5 ,
    .ce-header .h5 {
        --dynamic-size-min: 1; /*rem*/
        --dynamic-size-max: 1.125; /*rem*/ 
    }

    .ce-header h6 ,
    .ce-header .h6 {
        --dynamic-size-min: 1; /*rem*/
        --dynamic-size-max: 1; /*rem*/ 
    }

    .accordion-button {
        --dynamic-size-min: 1; /*rem*/
        --dynamic-size-max: 1.75; /*rem*/         
    }

    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.75; /*rem*/
        --dynamic-size-max: 5; /*rem*/ 
    }

    .ce-herobanner .ce-header > .alternative:not(.ce-header-subheader) {
        --dynamic-size-min: 2.5; /*rem*/
        --dynamic-size-max: 7.5; /*rem*/ 
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 2.25; /*rem*/ 
    }

}

@media(min-width: 36rem) {

    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.625; /*rem*/
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1; /*rem*/
    }

}


@media(min-width: 48rem) {

    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.75; /*rem*/
        --dynamic-size-max: 4.5; /*rem*/ 
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 2.25; /*rem*/ 
    }

}


@media(min-width: 75rem) {

    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 2; /*rem*/
        --dynamic-size-max: 2.75; /*rem*/ 
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 1.75; /*rem*/ 
    }

}


@media(min-width: 100rem) {



    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.75; /*rem*/
        --dynamic-size-max: 3.5; /*rem*/ 
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 2.25; /*rem*/ 
    }

}


@media(min-width: 112rem) {

    .ce-herobanner .ce-header > * {
        --dynamic-size-min: 1.75; /*rem*/
        --dynamic-size-max: 5; /*rem*/ 
    }

    .ce-herobanner .ce-header > .ce-header-subheader {
        --dynamic-size-min: 1.25; /*rem*/
        --dynamic-size-max: 2.25; /*rem*/ 
    }

}


/* ###################
##### Bootstrap ######
################### */
@layer bootstrap {
    :root {
        --bs-primary: var(--color-1);
        --bs-primary-rgb: var(--color-1-rgb);
        --bs-secondary: var(--color-2);
        --bs-secondary-rgb: var(--color-2-rgb);

        --bs-link-color-rgb: var(--color-gray-dark);
        --bs-link-hover-color-rgb: var(--color-1-rgb);
    }

    body {
        --bs-body-font-family: var(--font-family-body);
    }

    .dropdown-menu {
        --bs-dropdown-padding-y: var(--size-2);
        --bs-dropdown-bg:var(--color-gray-darkest);
        --bs-dropdown-border-color: none;
        --bs-dropdown-border-radius: 0;
        --bs-dropdown-border-width: 0;
        --bs-dropdown-link-color: rgba(var(--color-white-rgb), 1);
        --bs-dropdown-link-active-color:var(--color-white);
        --bs-dropdown-item-padding-x: var(--size-4);
        --bs-dropdown-item-padding-y: var(--size-2);
        --bs-dropdown-bg: rgba(var(--color-ui-bg-rgb), .75);
        --bs-dropdown-bg: var(--color-ui-bg);
        --bs-dropdown-link-hover-color: var(--color-1);
        --bs-dropdown-link-hover-bg: transparent;
        --bs-dropdown-link-active-color: var(--color-white);
        --bs-dropdown-link-active-bg: transparent;
    }

    .dropdown-mega .dropdown-menu {
        --bs-dropdown-padding-y: var(--size-4);
        --bs-dropdown-padding-x: var(--size-container-gap);
        --bs-dropdown-item-padding-x: 0;
        --bs-dropdown-bg: transparent;
    }

    .navbar {
        --bs-navbar-color: var(--color-white);
        --bs-navbar-hover-color: var(--color-1);
        --bs-navbar-nav-link-padding-x: var(--size-4);
        --bs-navbar-nav-link-padding-y: var(--size-4);
    }

    .navbar-nav {
        --bs-nav-link-padding-y: 0;
        --bs-nav-link-padding-x: var(--size-4);
    }

    .footer-menu .navbar-nav {
        --bs-nav-link-padding-y: var(--size-2);
        --bs-nav-link-padding-x: var(--size-4);
    }

    .navbar-toggler {
        --bs-navbar-color: var(--color-white);
        --bs-btn-hover-color: var(--color-1);
    }

    .page-header .btn {
        --bs-btn-color:  var(--color-white);
        --bs-btn-hover-color: var(--color-1);
    }

    .breadcrumb {
        --bs-breadcrumb-font-size: var(--font-size-small);
    }

    .page-header-searchbox-modal {
        --bs-modal-border-radius: 0;
        --bs-modal-inner-border-radius: 0;
    }

    .btn {        
        --bs-btn-box-shadow: var(--shadow-box);
        --bs-btn-border-width: 0;
        --bs-btn-line-height: unset;
        --bs-btn-border-radius: var(--border-radius);
        --bs-btn-padding-x: var(--size-2);
        --bs-btn-padding-y: calc(var(--size-1) * 1.5);
        --bs-btn-font-size: unset;
        --bs-btn-font-weight: 700;
        --bs-btn-hover-color: var(--color-white);
        --bs-btn-hover-bg: var(--color-gray-dark);
        --bs-btn-active-bg: var(--color-gray-dark);
    }

    .btn-primary {
        --bs-btn-bg: var(--color-1);
        --bs-btn-color: var(--color-white);
    }

    .btn-secondary {
        --bs-btn-bg: var(--color-white);
        --bs-btn-color: var(--color-gray-dark);
    }

    .pagination {
        --bs-pagination-color: var(--color-white);
        --bs-pagination-active-bg: var(--color-1);
        --bs-pagination-active-border-color: var(--color-1);
        --bs-pagination-bg: var(--color-gray-dark);
        --bs-pagination-border-color: var(--color-gray-dark);
        --bs-pagination-border-radius: 0;
    }

    .accordion {
        --bs-accordion-btn-padding-y: var(--size-4);
        --bs-accordion-btn-padding-x: var(--size-4);
        --bs-accordion-body-padding-y: var(--size-4);
        --bs-accordion-body-padding-x: var(--size-4);
        --bs-accordion-border-color: var(--border-default-color);
        --bs-accordion-border-width: var(--border-default-width);
        --bs-accordion-border-radius: 0;
        --bs-accordion-btn-focus-box-shadow: none;
        --bs-accordion-btn-focus-border-color: transparent;
    }

    .alert {
        --bs-alert-bg: var(--color-1);
        --bs-alert-color: var(--color-white);
        --bs-alert-border: var(--bs-border-width) solid var(--color-1);
    }

    .dropdown-menu {
        --bs-dropdown-min-width: 8rem;
    }

    @media(min-width: 75rem) {

        .footer-menu .navbar-nav {
            --bs-nav-link-padding-y: 0;
        }

    }

}

/* ##################
##### Elements ######
################## */
@media all {

    #mobileMainMenu {
        --mm-color-background: var(--color-ui-bg);
        --mm-color-border: var(--color-ui-border);
        --mm-color-icon: var(--color-white);
        --mm-color-text: var(--color-white);
        --mm-color-text-dimmed: var(--color-white);
    }

}

/* ##################
##### Elements ######
################## */
@media all {
    :root {
        --ce-color-fg: var(--color-gray-dark);
        --ce-color-bg: transparent;
        --ce-color-link: var(--color-gray-dark);
        --ce-spacer: var(--size-vertical-gap);
    }

    .ce-element {
        --ce-frame-inverted-color: var(--bs-body-bg);
        --ce-frame-inverted-bg: var(--bs-body-color);
        --ce-margin-extra-small: 1rem;
        --ce-margin-small: calc(0.5 * var(--ce-spacer));
        --ce-margin-medium: var(--ce-spacer);
        --ce-margin-large: calc(1.5 * var(--ce-spacer));
        --ce-margin-extra-large: calc(2 * var(--ce-spacer));
        --ce-layout-box-shadow: var(--shadow-box);
        --ce-layout-box-padding: calc(var(--size-container-gap) * .5);
        --ce-slider-padding: var(--ce-layout-box-padding);
    }
}

@media(min-width: 48rem) {
}

@media(min-width: 62rem) {
}

/* ###################
##### Textmedia ######
################### */
@media all {
    .ce-textmedia {
        --ce-textmedia-nowrap-wrap: wrap;
        --ce-gallery-margin-horizontal: 1rem
    }
}

@media(min-width: 48rem) {
    .ce-textmedia {
        --ce-textmedia-nowrap-wrap: nowrap;
    }

    .ce-textmedia {
        --ce-gallery-margin-horizontal: 1.5rem
    }
}

/* ###################
##### Container ######
################### */
@media all {
    .ce-grid-fullwidth-bg {
        --ce-color-bg: transparent;
    }
}

/* ###############
##### Slick ######
############### */
@media all {
    .ce-grid-slider,
    .ce-grid-carousel {
        --slick-padding: var(--ce-slider-padding, 0.625rem);
        --slick-dot-size: 0.625rem;
        --slick-dot-margin: 0.625rem
    }

    .ce-slider {
        --ce-slider-margin-bottom: var(--ce-spacer)
    }

    [class*="ce-type-grid-slick"] {
        --ce-carousel-margin-bottom: var(--ce-spacer)
    }
}

@media(min-width: 30rem) {
    [class*="ce-type-grid-slick"] {
        --ce-slider-padding: 1.25rem
    }
}


/* ######################
##### Content menu ######
###################### */
@media all {
    .ce-content-menu {
        --ce-content-menu-menu-offset: 5rem;
        --ce-content-menu-trigger-offset: -7.5rem
    }

    .ce-content-menu {
        --ce-content-menu-menu-offset: calc(var(--scroll-margin));
        --ce-content-menu-trigger-offset: calc(-1 * (var(--scroll-margin) + var(--ce-spacer)))
    }
}

/* ####################
##### Expandable ######
#################### */
@media all {
    .ce-expandable {
        --ce-expandable-button-color: var(--bs-body-color);
        --ce-expandable-button-bg: var(--bs-body-bg);
        --ce-expandable-button-border-color: var(--bs-gray);
        --ce-expandable-icon-color: var(--bs-body-bg);
        --ce-expandable-icon-bg: var(--bs-body-color);
        --ce-expandable-gradient-bg: var(--ce-color-bg)
    }
}

/* #################
##### Gallery ######
################# */
@media all {
    .ce-gallery {
        --ce-gallery-margin-vertical: 1rem;
        --ce-gallery-gutter: 0.75rem;
        --ce-gallery-width: 100%;
        --ce-gallery-icon-size: 1rem;
        --ce-gallery-column-width: 100%
    }

    .ce-intext .ce-gallery {
        --ce-gallery-width: calc(50% - (var(--ce-spacer) / 2))
    }

    .ce-nowrap .ce-gallery {
        --ce-gallery-width: 100%
    }

    .ce-gallery[data-ce-columns="2"] {
        --ce-gallery-column-width: calc(50% - (var(--ce-gallery-gutter) / 2))
    }

    .ce-gallery[data-ce-columns="3"] {
        --ce-gallery-column-width: calc(50% - (var(--ce-gallery-gutter) / 2))
    }

    .ce-gallery[data-ce-columns="4"] {
        --ce-gallery-column-width: calc(50% - (var(--ce-gallery-gutter) / 2))
    }
}

@media(min-width: 30rem) {
    .ce-gallery[data-ce-columns="3"] {
        --ce-gallery-column-width: calc(33.3333% - (var(--ce-gallery-gutter) * 2 / 3))
    }
}

@media(min-width: 48rem) {
    .ce-nowrap .ce-gallery {
        --ce-gallery-width: calc(50% - (var(--ce-spacer) / 2))
    }

    .ce-gallery[data-ce-columns="4"] {
        --ce-gallery-column-width: calc(25% - (var(--ce-gallery-gutter) * 3 / 4))
    }
}

@media(min-width: 62rem) {
    .ce-intext .ce-gallery {
        --ce-gallery-width: calc(33.3333% - (var(--ce-spacer) * 2 / 3))
    }

    .ce-nowrap .ce-gallery {
        --ce-gallery-width: calc(33.3333% - (var(--ce-spacer) * 2 / 3))
    }
}

@media all {

    .ce-layout-menu_products .ce-gallery ,
    .ce-frame-devices .ce-gallery {
        --ce-gallery-width: clamp(5rem, 32%, 8rem);
    }

    .ce-frame-features .ce-gallery ,
    .product-features .ce-gallery ,
    .product-features-collapsed-container .ce-gallery {
        --ce-gallery-width: clamp(4rem, 20%, 6rem);
        --size-grid-gap: var(--size-4);
    }

    .ce-layout-menu_products .ce-textmedia ,
    .ce-frame-features .ce-textmedia ,
    .ce-frame-devices .ce-textmedia ,
    .product-features .ce-textmedia ,
    .product-features-collapsed-container .ce-textmedia {
        --ce-gallery-margin-horizontal: var(--size-1);
        --ce-textmedia-nowrap-wrap: nowrap;
    }

}

/* ###############
##### Media ######
############### */
@media all {
    .ce-media {
        --ce-media-icon-size: 1rem;
        --ce-media-copyright-size: 0.5rem;
        --ce-media-overlay-offset: 0.5rem;
    }
}

/* ###############
##### Frame ######
############### */
@media all {
    .ce-frame-inverted {
        --ce-color-fg: var(--ce-frame-inverted-color, rgb(255, 255, 255));
        --ce-color-bg: var(--ce-frame-inverted-bg, rgb(102, 102, 102));
        --ce-color-link: var(--ce-frame-inverted-color, rgb(255, 255, 255))
    }

    .ce-element {
        --ce-frame-inverted-color: var(--bs-body-bg);
        --ce-frame-inverted-bg: var(--bs-body-color)
    }
}

/* ################
##### Layout ######
################ */
@media all {
    .ce-layout-box {
        --ce-color-fg: var(--color-gray-dark);
        --ce-color-bg: rgba(255, 255, 255, 0.75);
        --ce-color-link: var(--color-1);
    }

    .ce-layout-box.ce-frame-inverted {
        --ce-color-fg: var(--ce-frame-inverted-color, #fff);
        --ce-color-bg: var(--ce-frame-inverted-bg, #fff);
        --ce-color-link: var(--ce-frame-inverted-color, #fff);
    }
}

/* ################
##### Header ######
################ */
@media all {
    .page-header-sticky {
        --min-window-height-px: 460;
        --page-header-height: 3.75rem
    }

    .page-header-searchbox {
        --page-header-searchbox-width: 100%;
        --page-header-searchbox-height: 3.75rem;
    }
}

@media(min-width: 30rem) {

}

@media(min-width: 48rem) {
    .page-header-sticky {
        --page-header-height: 6.875rem;
        --min-window-height-px: 600
    }
}

@media(min-width: 62rem) {
    .page-header-sticky {
        --page-header-height: 9.375rem;
        --min-window-height-px: 760
    }
}

/* ##############
##### Page ######
############## */
@media all {

    [class*="container"] {
        --bs-gutter-x: calc(var(--size-container-gap)* 2);
    }

    .row {
        --bs-gutter-x: var(--size-grid-gap);
    }

}

@media(min-width: 30rem) {

}

@media(min-width: 48rem) {

}

@media(min-width: 62rem) {

}

/* ################
##### Footer ######
################ */
@media all {
    .page-footer-top {
        --ce-color-bg: #e9ecef;
        --ce-color-link: var(--ce-color-fg);
    }
}