/** Variables */
:root {
    --color-pure-white: #FFFFFF;
    --color-pure-black: #000000;
    --color-white: #FBFAF6;
    --color-black: #0A0C06;
    --color-gray-100: #E5E4E2;
    --color-gray-200: #CAC9C5;
    --color-gray-300: #A8A7A0;
    --color-gray-400: #85847C;
    --color-gray-500: #6B6A61;
    --color-gray-600: #010101;
    --color-gray-700: #454540;
    --color-gray-800: #3A3935;
    --color-gray-900: #32322F;
    --color-sand: #A08E7A;
    --color-accent: #ED1C24;
    --color-primary: #ED1C24;
    --color-secondary: var(--color-sand);
    --color-success: var(--color-green);
    --color-info: var(--color-cyan);
    --color-warning: var(--color-yellow);
    --color-danger: var(--color-red);
    --color-light: var(--color-gray-100);
    --color-dark: var(--color-gray-800);

    --spacer-xxl: clamp(120px, calc(var(--navigation-height, 80px) * 1.05), 4.25em);
    --spacer-xl: clamp(100px, calc(var(--navigation-height, 80px) * 0.9), 4em);
    --spacer-lg: clamp(80px, calc(var(--navigation-height, 80px) * 0.75), 3em);
    --spacer-md: clamp(60px, calc(var(--navigation-height, 80px) * 0.5), 2.5em);
    --spacer-sm: clamp(40px, calc(var(--navigation-height, 80px) * 0.25), 2em);
    --spacer-xs: clamp(20px, calc(var(--navigation-height, 80px) * 0.15), 1.5em);
    --spacer-xxs: clamp(16px, calc(var(--navigation-height, 80px) * 0.05), 1em);
    --spacer-navigation: var(--navigation-height, 80px);
    --spacer-section: 1.6rem;

    --wp--preset--spacing--80: var(--spacer-xxl, 120px) !important;
    --wp--preset--spacing--70: var(--spacer-xl, 100px) !important;
    --wp--preset--spacing--60: var(--spacer-lg, 80px) !important;
    --wp--preset--spacing--50: var(--spacer-md, 60px) !important;
    --wp--preset--spacing--40: var(--spacer-sm, 40px) !important;
    --wp--preset--spacing--30: var(--spacer-xs, 20px) !important;
    --wp--preset--spacing--20: var(--spacer-xxs, 16px) !important;
}

/** Navigation */
body.block-builder nav.navigation--landing{
    position: sticky
}

body.block-builder nav.navigation--landing:not(:has([data-navigation-main])) .brand{
    top: unset;
    margin-top: 2rem
}

body.block-builder nav.navigation--landing .brand{
    display: block;
    position: relative;
    left: unset;
    translate: 0 0;
}

@media (min-width: 1200px) {
    body.block-builder nav.navigation--landing [data-navigation-main]{
        min-height: clamp(80px, 5vw, 90px);
    }
}

/* 
body.block-builder:has(nav[data-navigation] .navigation--landing) #app-viewport,
body.block-builder:not(:has(nav[data-navigation] nav[style*="position:fixed;"])) #app-viewport{
    padding-block-start: var(--navigation-height, 80px);
} */

/** Gutenberg Styles */
body .has-small-font-size{
    font-size: 14px !important;
}

@media (min-width: 768px) {
    body .has-small-font-size{
        font-size: clamp(14px, 3vw, 16px) !important;
    }
}

body .has-medium-font-size{
    font-size: 16px !important;
}

@media (min-width: 768px) {
    body .has-medium-font-size{
        font-size: clamp(18px, 5vw, 24px) !important;
    }
}

body .has-large-font-size{
    font-size: 24px !important;
}

@media (min-width: 768px) {
    body .has-large-font-size{
        font-size: clamp(24px, 10vw, 32px) !important;
    }
}

body .has-x-large-font-size{
    font-size: 32px !important;
}

@media (min-width: 768px) {
    body .has-x-large-font-size{
        font-size: clamp(32px, 15vw, 48px) !important;
    }
}

/** Core::Image */
body .is-layout-flow > figure.wp-block-image.size-full{
    width: 100%;
    max-width: 100%;
    margin-left: 0;
}

/** Core::Components */
.wp-block-list{
    font-size: 16px;
}

@media (min-width: 768px) {
    .wp-block-list{
        font-size: clamp(14px, 1vw, 16px);
    }
}

.wp-block-table{
    font-size: 16px;
}

@media (min-width: 768px) {
    .wp-block-table{
        font-size: clamp(14px, 1vw, 16px);
    }
}

/** Core::Image */
figure.wp-block-image.size-full{
    margin-left: 0;
    width: 100%;
    max-width: 100%;
}
