
.light {  }

.dark {  }



@import ''https://fonts.googleapis.com/css?family=Inter:wght@300;400;700;900&display=swap'&display=swap';

html {
    overflow-y: scroll;
}
html, body {
    margin: 0px;
    padding: 0px;
    overflow-x: hidden;
    font-family: Inter, sans-serif;
}

* {
    box-sizing: border-box;
    transition: background 0ms ease-in, color 0ms ease-in;
}
*:focus {
    outline: none;
    border: none;
}

a {
    color: currentColor;
    text-decoration: none;
}

.inline {
    display: inline;
}

.gone {
    display: none !important;
}

.bold {
    font-weight: bold;
}

.italic {
    font-style: italic;
}

.underline {
    text-decoration: underline;
}

.no-scroll {
    position: fixed;
    overflow: hidden;
    left: 50%;
    transform: translateX(-50%);
}

:root {
    --color-light-page: color.light-page;
    --color-light-font-std: #000;
    --color-light-font-var: #092D3C;
    --color-light-font-slides: color.light-font-slides;
    --color-light-bg-std: #fff;
    --color-light-bg-var: #F8F8F8;
    --color-light-bg-slides: color.light-bg-slides;
    --color-light-link: color.light-link;
    --color-light-topbar-font: color.light-topbar-font;
    --color-light-topbar-bg: color.light-topbar-bg;
    --color-light-menu-backdrop-color: color.light-menu-backdrop-color;
    --color-light-footer-font: color.light-footer-font;
    --color-light-footer-bg: color.light-footer-bg;

    --color-light-form-label-font: #123;
    --color-dark-form-label-font: #abc;
    --color-light-input-simple-font: #123;
    --color-dark-input-simple-font: #abc;
    --color-light-input-simple-bg: #eef;
    --color-dark-input-simple-bg: #113;
    --color-light-input-checkbox-font: #123;
    --color-dark-input-checkbox-font: #abc;
    --color-light-input-checkbox-bg: #eef;
    --color-dark-input-checkbox-bg: #113;
    --color-light-input-select-font: #123;
    --color-dark-input-select-font: #abc;
    --color-light-input-select-bg: #eef;
    --color-dark-input-select-bg: #113;
    --color-light-btn-submit-font: #101217;
    --color-dark-btn-submit-font: #abc;
    --color-light-btn-submit-bg: #b18c40;
    --color-dark-btn-submit-bg: #113;
    
    --color-dark-page: color.dark-page;
    --color-dark-font-std: #cccac2;
    --color-dark-font-var: #d3d3d3;
    --color-dark-font-slides: color.dark-font-slides;
    --color-dark-bg-std: #242936;
    --color-dark-bg-var: #434253;
    --color-dark-bg-slides: color.dark-bg-slides;
    --color-dark-link: color.dark-link;
    --color-dark-topbar-font: color.dark-topbar-font;
    --color-dark-topbar-bg: color.dark-topbar-bg;
    --color-dark-menu-backdrop-color: color.dark-menu-backdrop-color;
    --color-dark-footer-font: color.dark-footer-font;
    --color-dark-footer-bg: color.dark-footer-bg;
}

.light {
    --color-page: var(--color-light-page);
    --color-font-std: var(--color-light-font-std);
    --color-font-var: var(--color-light-font-var);
    --color-font-slides: var(--color-light-font-slides);
    --color-bg-std: var(--color-light-bg-std);
    --color-bg-var: var(--color-light-bg-var);
    --color-bg-slides: var(--color-light-bg-slides);
    --color-link: var(--color-light-link);
    --color-topbar-font: var(--color-light-topbar-font);
    --color-topbar-bg: var(--color-light-topbar-bg);
    --color-menu-backdrop-color: var(--color-light-menu-backdrop-color);
    --color-footer-font: var(--color-light-footer-font);
    --color-footer-bg: var(--color-light-footer-bg);

    --color-form-label-font: var(--color-light-form-label-font);
    --color-input-simple-font: var(--color-light-input-simple-font);
    --color-input-simple-bg: var(--color-light-input-simple-bg);
    --color-input-select-font: var(--color-light-input-select-font);
    --color-input-select-bg: var(--color-light-input-select-bg);
    --color-input-checkbox-font: var(--color-light-input-checkbox-font);
    --color-input-checkbox-bg: var(--color-light-input-checkbox-bg);
    --color-btn-submit-font: var(--color-light-btn-submit-font);
    --color-btn-submit-bg: var(--color-light-btn-submit-bg);
}

.dark {
    --color-page: var(--color-dark-page);
    --color-font-std: var(--color-dark-font-std);
    --color-font-var: var(--color-dark-font-var);
    --color-font-slides: var(--color-dark-font-slides);
    --color-bg-std: var(--color-dark-bg-std);
    --color-bg-var: var(--color-dark-bg-var);
    --color-bg-slides: var(--color-dark-bg-slides);
    --color-link: var(--color-dark-link);
    --color-topbar-font: var(--color-dark-topbar-font);
    --color-topbar-bg: var(--color-dark-topbar-bg);
    --color-menu-backdrop-color: var(--color-dark-menu-backdrop-color);
    --color-footer-font: var(--color-dark-footer-font);
    --color-footer-bg: var(--color-dark-footer-bg);

    --color-form-label-font: var(--color-dark-form-label-font);
    --color-input-simple-font: var(--color-dark-input-simple-font);
    --color-input-simple-bg: var(--color-dark-input-simple-bg);
    --color-input-checkbox-font: var(--color-dark-input-checkbox-font);
    --color-input-checkbox-bg: var(--color-dark-input-checkbox-bg);
    --color-input-select-font: var(--color-dark-input-select-font);
    --color-input-select-bg: var(--color-dark-input-select-bg);
    --color-btn-submit-font: var(--color-dark-btn-submit-font);
    --color-btn-submit-bg: var(--color-dark-btn-submit-bg);
}

body {
    background: var(--color-page);
}


.top-bar {
    display: none !important;
    height: 70px;
    padding: 10px;
    font-size: 18px; 
    letter-spacing: 0.7px; 
    color: var(--color-topbar-font); 
    background: var(--color-topbar-bg);
    z-index: 1000;
}
.top-bar-content {
    width: clamp(0px, 100%, 85rem);
    height: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-content: space-between;
    margin: auto;
    z-index: 1000;
    font-family: top-bar.font-family;
}
.logo-img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}

.item-theme {
    position: relative;
    display: none !important;
}
.item-theme svg {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
    transition: all 800ms ease;
    transform: rotate(0deg) scale(1);
}

.theme-dark svg:first-of-type {
    opacity: 0;
    transform: rotate(45deg) scale(0.1);
}

.theme-light svg:last-of-type {
    opacity: 0;
    transform: rotate(-45deg) scale(0.1);
}

.item-menu {
    position: relative;
    display: block !important;
}

.item-menu svg {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
    transition: all 800ms ease;
    transform: rotate(0deg) scale(1);
}

.menu-open svg:first-of-type {
    opacity: 0;
    transform: rotate(45deg) scale(0.1);
}

.menu-closed svg:last-of-type {
    opacity: 0;
    transform: rotate(-45deg) scale(0.1);
}

.menu-icon {
    max-width: 100%;
    max-height: 100%;
}
.menu-icon path {
    stroke: var(--color-topbar-font); 
}

.item-home {
    height: 100%;
    display: flex !important;
}
.item-home a {
    height: 100%;
}

.wrapper-menu {
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-menu-backdrop-color);
    z-index: 10;
    overflow-y: auto;

    opacity: 0;
    transform: translateY(-100%);
    transition: all 800ms ease;
}

.wrapper-menu-open nav {
    opacity: 1;
    transform: translateY(0%);
    transition: all 800ms ease;
}

.wrapper-footer {
    display: block !important;
    width: clamp(0rem, 100%, 65rem);
    margin: 1rem auto;

    color: var(--color-footer-font) !important;
    background: var(--color-footer-bg) !important;
    font-family: Inter, sans-serif !important;
}
.wrapper-footer * {
    color: var(--color-footer-font) !important;
    background: var(--color-footer-bg) !important;
    font-family: Inter, sans-serif !important;
}

.wrapper-main {
    width: clamp(20rem, wrapper-main.width-med, 90%);
    margin: 0rem auto;

    display: flex;
    flex-direction: column; 

    font-size: 1.2 rem;
    font-weight: 400;
    line-height: 1.6;
    text-align: left;
    color: var(--color-font-std);
}

.wrapper-sections {
    width: clamp(0rem, 100%, 100%);
    margin: 0rem 0rem;

    display: flex;
    flex-direction: column;
    align-items: center;
}

.section {
    width: clamp(0rem, 100%, 65rem);
    margin: section.margin-ver section.margin-hor;
    padding: 0 1rem;
    color: var(--color-font-std);
    background: var(--color-bg-std);
}

.section-var {
    color: var(--color-font-var);
    background: var(--color-bg-var);
    padding: section-var.padding;
}

.section-responsive {
    width: clamp(0rem, 100%, 65rem);
    display: flex;
    justify-content: center;
    box-sizing: content-box;
}

.wrapper-blocks {
    width: clamp(wrapper-blocks-regular.width-min, wrapper-blocks-regular.width-med, wrapper-blocks-regular.width-max);
    margin: wrapper-blocks-regular.gap-ver wrapper-blocks-regular.gap-hor;
}

.section-responsive > .wrapper-blocks {
    width: clamp(wrapper-blocks-responsive.width-min, wrapper-blocks-responsive.width-med, wrapper-blocks-responsive.width-max);
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: wrapper-blocks-responsive.gap-ver wrapper-blocks-responsive.gap-hor;
}
@media screen and (max-width: 25rem) {
    .section-responsive > .wrapper-blocks {
        grid-template-columns: repeat(auto-fit, 100%) !important;
    }
}

.column > .wrapper-blocks {
    width: clamp(wrapper-blocks-regular.width-min, wrapper-blocks-regular.width-med, wrapper-blocks-regular.width-max);
    margin: wrapper-blocks-regular.gap-ver wrapper-blocks-regular.gap-hor;
    display: block;
}


.block {
    display: block;
    width: clamp(0rem, block.width-med, 0rem);
    margin: 0.5rem auto;
}

.section-responsive .wrapper-blocks .block {
   width: 100%;
   justify-self: stretch;
}


.block-text {
    width: clamp(0rem, 100%, 50rem);
    margin: 0rem 0rem;

    font-family: 'Inter', sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.6;
    text-align: left;
}

.block-heading-1 {
    width: clamp(0rem, 100%, 60rem);
    margin: 2rem auto;

    font-family: 'Inter', sans-serif;
    font-size: clamp(1px, 7vw, 4.2rem);
    font-weight: 900;
    line-height: 1.2;
    text-align: left;
}

.block-heading-2 {
    width: clamp(0rem, 100%, 60rem);
    margin: 2rem 0rem;

    font-family: 'Inter', sans-serif;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
}

.block-heading-3 {
    width: clamp(0rem, 100%, 60rem);
    margin: 2rem 0rem;

    font-family: block-heading-3.font-family;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
}

.block-image {
    width: clamp(65rem, 100%, 90%);
    margin: 0rem 0rem;
    text-align: center;
}
.block-image img {
    max-width: 100%;
    margin: auto;
}
.image-caption {
    font-family: block-image.caption-font-family;
    font-size: 0.7rem;
    font-weight: block-image.caption-font-weight;
    line-height: block-image.caption-font-height;
    text-align: block-image.caption-font-align;
}

.block-todo {
    width: clamp(0rem, 100%, 50rem);
    margin: 1rem 1rem;

    font-family: block-todo.font-family;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 2;
    text-align: left;
}

.block-bullet-list {
    width: clamp(0rem, 100%, 60rem);
    margin: 0.5rem auto;

    list-style: inside;
    font-family: 'Inter', sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
}
.block-bullet-list > ul {
    padding: 0px;
}

.block-numbered-list {
    width: clamp(0rem, 100%, 60rem);
    margin: 0.5rem auto;
    
    padding: 0px !important;
    list-style: inside;
    font-family: 'Inter', sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
}

.block-toggle-item {
    width: clamp(0rem, block-toggle-item.width-med, 50rem);
    margin: 0rem 1rem;
    
    cursor: pointer;
    padding: 0px !important;
    font-family: block-toggle-item.font-family;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
}
.block-toggle-item-on::before {
    content: 'block-toggle-item.toggle-icon-on';
}
.block-toggle-item-off::before {
    content: 'block-toggle-item.toggle-icon-off';
}
.block-toggle-item-child {
    width: clamp(0rem, block-toggle-item.width-med, 50rem);
    margin: 1rem 0.5rem;
    
    display: none;
    padding: 0px !important;
    font-family: block-toggle-item.hint-font-family;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
}

.block-quote {
    width: clamp(0rem, block-quote.width-med, 50rem);
    margin: 2.2rem 1rem;
    
    padding: 0px !important;
    font-family: block-quote.font-family;
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.7;
    text-align: left;
    font-style: italic;
}

.block-divider {
    width: clamp(65rem, block-divider.width-med, 90vw);
    margin: 2rem auto;
    border-top: 0.06rem solid var(--color-font-std);
}

.block-table {
    width: clamp(0rem, block-table.width-med, 50rem);
    margin: 0rem 1rem;
 
    border-collapse: collapse;
    font-family: block-table.font-family;
    text-align: left;
}
.block-table th {
    padding-top: 12px;
    padding-bottom: 12px;
}
.block-table td, .block-table th {
    border: 1px solid var(--color-font-std);
    padding: 8px;
}
.block-table tr:hover {
    background-color: #f2f2f2;
}

.block-link-to-page {
    width: clamp(0rem, block-link-to-page.width-med, 50rem);
    margin: 0rem 1rem;
    
    padding: 0px !important;
    font-family: block-link-to-page.font-family;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.4;
    text-align: left;
    font-style: regular;
    color: black;
}

.block-audio {
    width: 100%;
    margin: 1rem auto;
    text-align: center;
}

.block-video {
    width: 100%;
    margin: 1rem auto;
    text-align: center;
}
.block-video video {
    width: 100%;
}

.block-callout {
    width: 100%;
    display: flex;
    padding: 10px;
    gap: 10px;
    background-color: #D52C60-bg;
}
.callout-content {
    text-align: left;
}

.block-file {
    width: clamp(block-file.width-min, block-file.width-med, block-file.width-max);
    margin: block-file.gap-ver block-file.gap-hor;
}
.block-file a {
    color: var(--color-link);
    background: linear-gradient(to right, rgba(73,180,137, 0), rgba(73,180,137, 0)), linear-gradient(to right, rgba(73,180,137, 1), rgba(73,180,137, .9));
    background-size: 100% 0.2rem, 0 0.2rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat;
    transition: background-size 600ms;
}
.block-file a:hover,
.block-file a:focus {
    background-size: 0 0.2rem, 100% 0.2rem;
}
.block-file::before {
    content: '📁 ';
}

.block-icon {
    display: block-icon.display;
    width: clamp(block-icon.width-min, block-icon.width-med, block-icon.width-max);
    margin: block-icon.gap-ver block-icon.gap-hor;
}

.block-embed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    width: clamp(0rem, block-embed.width-med, 55rem);
}
iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.item-link {
    display: inline-table;
    width: fit-content !important;
    margin: auto;

    color: var(--color-link);
    background: linear-gradient(to right, rgba(73,180,137, 0), rgba(73,180,137, 0)), linear-gradient(to right, rgba(73,180,137, 1), rgba(73,180,137, .9));
    background-size: 100% 0.2rem, 0 0.2rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat;
    transition: background-size 600ms;
}
.item-link:hover,
.item-link:focus {
    background-size: 0 0.2rem, 100% 0.2rem;
}


.wrapper-form {
    width: clamp(0rem, 100%, 100%);
    margin: 1rem auto;

    display: flex;
    flex-direction: column;
    border: none;
    border-radius: 0;
}

/* 
    --color-form-label-font: var(--color-dark-form-label-font);
    --color-input-simple-font: var(--color-dark-input-simple-font);
    --color-input-simple-bg: var(--color-dark-input-simple-bg);
    --color-input-select-font: var(--color-dark-input-select-font);
    --color-input-select-bg: var(--color-dark-input-select-bg);
    --color-btn-submit-font: var(--color-dark-btn-submit-font);
    --color-btn-submit-bg: var(--color-dark-btn-submit-bg);
*/
.form-label {
    width: clamp(0rem, 100%, 20rem);
    margin: 0rem 0rem;

    color: var(--color-form-label-font);
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1.1rem;
    text-align: left;
}

.input-simple {
    width: clamp(0rem, 100%, 20rem);
    margin: 0rem 0rem;

    color: var(--color-input-simple-font);
    background: var(--color-input-simple-bg);
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.4rem;
    text-align: left;
    border: 5px solid #1C6EA4;
    border-radius: 5px;
}

.input-select {
    width: clamp(0rem, 100%, 20rem);
    margin: 0rem 0rem;

    color: var(--color-input-select-font);
    background: var(--color-input-select-bg);
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.4rem;
    text-align: left;
    border: 5px solid #1C6EA4;
    border-radius: 5px;
}

.input-checkbox-wrapper {
    width: clamp(10rem, 100%, 20rem);
    margin: 1rem 0rem;
    display: flex;
    align-items: center;

    color: var(--color-input-checkbox-font);
    background: var(--color-input-checkbox-bg);
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.4rem;
    text-align: left;
    border: 5px solid #1C6EA4;
    border-radius: 5px;
}
.input-checkbox {
    width: 20px;
    height: 20px;
    margin-right: calc(20px / 3);
}

.btn-submit {
    width: clamp(0rem, 100%, 20rem);
    margin: 1rem auto;

    color: var(--color-btn-submit-font);
    background: var(--color-btn-submit-bg);
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.4rem;
    text-align: left;
    border: 5px solid yellow;
    border-radius: 10px;
    cursor: pointer;
}


.column {
    padding: 0;
    margin: 0;
    background: none;
}

.column-wide {
    width: clamp(0px, column-wide.width-med, 80rem);
}
.column-wide * {
    width: 100%;
}

.column-medium {
    width: clamp(0px, column-medium.width-med, 60rem);
}
.column-medium * {
    width: 100%;
}

.column-narrow {
    width: clamp(0px, column-narrow.width-med, 30rem);
}
.column-narrow * {
    width: 100%;
}


.scroll-up-arrow {
    height: 0px;
    width: 75px;
    display: block;
    position: fixed;
    z-index: 5;
    top: calc(100% - 125px);
    margin-left: calc(25px);
    cursor: pointer;
}
.scroll-up-arrow img {
    width: 100%;
}

.robbo-lead {
                    width: clamp(10rem, 100%, 60rem);
                    margin: 0rem 0rem;
                }

.robbo-lead * {
                    width: 100%;
                    font-size: 1.45rem;
                    font-weight: 500;
                    line-height: 1.5;
                    text-align: left;
                }

.robbo-robboso {
                    width: clamp(20rem, 100%, 50rem);
                    margin: 1rem 1rem;
                }

.robbo-robboso * {
                    width: 100%;
                    font-size: 0.9rem;
                    font-weight: 300;
                    line-height: 1;
                    text-align: left;
                }

.robbo-menu-footer {
                    width: clamp(0rem, 100%, 85rem);
                    margin: 1rem auto;
                }

.robbo-menu-footer * {
                    width: 100%;
                    font-size: 0.92rem;
                    font-weight: 400;
                    line-height: 1.3;
                    text-align: center;
                }

.robbo-menu {
                    width: clamp(0rem, 100%, 40rem);
                    margin: 1.3rem auto;
                }

.robbo-menu * {
                    width: 100%;
                    font-size: 1.9rem;
                    font-weight: 400;
                    line-height: 1.7;
                    text-align: center;
                }