/**
 * Big screens CSS
 * 
 * • 1180px
 * • 1280px
 * • 1366px
 * • 1920px
 * • Aspect Ratio adjustments
*/


/**
 * 1180px
 */

@media (min-width: 1180px) {
    /* Fluid Typography */
    :root {
        --wp--custom--border-radius: calc(10em / 3);
        --wp--custom--logo--sticky--height: 3em;
        --wp--custom--logo--full--height: 3.75em;
    }
    body {
        font-size: calc(13px + 3 * ((100vw - 1024px) / 896));
    }
    h1 {
        font-size: 4.625em;
    }
    h2,
    .has-h-two-font-size {
        font-size: calc(1em * 10 / 3);
    }
    h3 {
        font-size: calc(1em * 16 / 9);
    }
    .has-1822-font-size {
        font-weight: 300;
        line-height: 1.9;
    }
    label {
        padding-left: calc(1em / 18 * 4)
    }
    /* Navigation Bar */
    .nav-bar {
        align-items: stretch;
        grid-template-columns: var(--wp--custom--logo--full--width) 1fr;
        column-gap: 2em;
        margin-top: 2em;
        padding: 0 1.6em;
        width: calc(100% - (2 * var(--wp--style--block-gap)));
    }
    .nav-bar:has(.quick-links) {
        grid-template-columns: 1.5fr 2fr 1.5fr;
    }
    .site-logo img {
        margin-bottom: 1em;
        margin-top: 0.875em;
    }
    .menu-button-container {
        display: none;
    }
    .mobile-only,
    .menu-wrapper>li.mobile-only {
        display: none !important;
    }
    .mobile-only:first-child+* {
        margin-top: 0 !important;
    }
    .menu-wrapper>li {
        display: inline-block;
    }
    .menu-item_description {
        font-size: 1em;
    }
    .primary-navigation {
        display: flex;
    }
    .primary-menu-wrapper {
        width: 100%;
    }
    #primary-menu {
        display: flex;
        align-items: stretch;
        justify-content: center;
        height: calc(100% + 0.75rem);
    }
    #primary-menu>li {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2 18'%3E%3Cpath fill='%23fff' d='M0 0h2v18H0z'/%3E%3C/svg%3E");
        background-position: right calc(100% - 0.4em - 18px);
        background-repeat: no-repeat;
        background-size: 2px;
        display: flex;
        align-items: center;
        justify-content: end;
        flex-direction: column;
        margin-left: 0.45em;
        margin-right: 0;
        padding: 0 0.45em 0.75rem 0;
        position: relative;
    }
    #primary-menu>li:last-child,
    #primary-menu>li.no-divider {
        background-image: none;
    }
    #primary-menu > li li.menu-item-has-children a {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 14'%3E%3Cpath fill='%23fff' d='M9.038 5.272a2 2 0 0 1 0 3.455l-6.031 3.518A2 2 0 0 1 0 10.518V3.482a2 2 0 0 1 3.008-1.727Z'/%3E%3C/svg%3E");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: 0.8em;
        padding-left: 1.4em;
    }
    #primary-menu>li .link-wrapper {
        background-color: var(--wp--preset--color--accent);
        border-radius: 10em;
        color: var(--wp--preset--color--white);
        padding: 0.3em 1em 0.3em;
        margin-bottom: 0.3em;
    }
    #primary-menu>li.menu-item-has-children .link-wrapper {
        padding-right: 0;
    }
    .level-1 {
        font-size: 1.125em;
    }
    #primary-menu>li .link-wrapper a.level-1 {
        color: var(--wp--preset--color--white);
    }
    #primary-menu>li:hover .link-wrapper {
        background-color: var(--wp--preset--color--white);
        color: var(--wp--preset--color--accent);
    }
    #primary-menu .link-wrapper:has(.sub-menu-toggle) {
        display: grid;
        grid-template-columns: 1fr 0.8em;
        gap: 0.1em
    }
    #primary-menu li a.level-1,
    #primary-menu li span.level-1 {
        align-self: center;
        grid-column: 1 / 2;
        padding-right: 0;
        padding-left: 0;
        position: relative;
        text-align: center;
    }
    #primary-menu>li.current-page-ancestor a,
    #primary-menu>li:hover a.level-1 {
        color: var(--wp--preset--color--accent);
    }
    /* #primary-menu>li.current-page-ancestor a.level-1::before,
    #primary-menu>li.current-menu-item a.level-1::before,
    #primary-menu>li:hover a.level-1::before,
    .page-id-63 .menu-item-81 a.level-1::before,
    .page-id-65 .menu-item-81 a.level-1::before {
        background: var(--wp--preset--gradient--horizontal-accent-colors);
        color: var(--wp--preset--color--accent);
        content: " ";
        display: block;
        height: 3px;
        position: absolute;
        top: 100%;
        width: 100%;
    } */
    #primary-menu>li>.sub-menu {
        background-color: var(--wp--preset--color--accent);
        border-radius: 1.25em;
        display: none;
        position: absolute;
        left: -200%;
        opacity: 0;
        transition: opacity 0.2s ease-in;
    }
    .sub-menu-toggle {
        align-self: center;
        grid-column: 2 / 3;
        opacity: 0;
        background: transparent;
        border: 0;
        display: inline-block;
        padding: 0;
        margin: 0;
    }
    .menu-item-has-children.open .sub-menu-toggle,
    .sub-menu-toggle:focus {
        opacity: 1;
    }
    .sub-menu-toggle .icon-up,
    .menu-item-has-children.open .sub-menu-toggle .icon-down {
        display: none;
    }
    .menu-item-has-children.open .sub-menu-toggle .icon-up {
        display: block;
    }
    #primary-menu>li.menu-item-has-children.open>.sub-menu,
    #primary-menu>li.menu-item-has-children:hover>.sub-menu {
        display: block;
        left: 0;
        opacity: 1;
        top: 100%;
        min-width: 22.5em;
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu {
        padding-top: 1.5em;
        padding-bottom: 1.25em;
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu>li {
        padding: 0 2.5em 1.5em;
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu>li:not(:first-child) {
        padding-bottom: 0;
        padding-top: 1.5em;
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu>li li {
        padding: 0.25em 1.8em;
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu>li:not(:last-child) {
        border-bottom: 1px solid var(--wp--preset--color--white);
    }
    #primary-menu>li:not(.mega-menu)>.sub-menu>li a {
        color: var(--wp--preset--color--white);
    }
    #primary-menu > li li.menu-item-has-children > a {
        text-transform: uppercase;
    }
    #primary-menu>li>.sub-menu {
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
    }
    /* Mega Menu */
    .mega-menu>.sub-menu,
    #primary-menu>li.mega-menu.open>.sub-menu,
    #primary-menu>li.mega-menu:hover>.sub-menu {
        display: grid;
        grid-template-columns: 1fr 2fr 1fr;
        column-gap: 2em;
        left: 0;
        padding-left: 3.85em;
        padding-right: 3.85em;
        width: 100%;
    }
    .mega-menu.mini>.sub-menu,
    #primary-menu>li.mega-menu.mini.open>.sub-menu,
    #primary-menu>li.mega-menu.mini:hover>.sub-menu {
        display: flex;
        left: auto;
        width: auto;
    }
    .mega-menu.mini>.sub-menu>li {
        flex: 1 1 50%;
        max-width: 24em;
    }
    .mega-menu_column {
        padding-bottom: 3em;
        padding-top: 3em;
    }
    .mega-menu_column>a:first-child,
    .mega-menu_column>span {
        color: var(--wp--preset--color--accent);
        margin-bottom: 2em;
        padding-bottom: 1em;
    }
    .mega-menu_header>a:first-child,
    .mega-menu_header>span {
        color: var(--wp--preset--color--accent);
        font-size: 1em;
        padding-bottom: 1em;
    }
    #primary-menu>li.mega-menu.open>.sub-menu,
    #primary-menu>li.mega-menu:hover>.sub-menu {
        left: 0;
        margin-left: 0;
        opacity: 1;
        top: 100%;
    }
    #primary-menu>li.mega-menu.mini.open>.sub-menu,
    #primary-menu>li.mega-menu.mini:hover>.sub-menu {
        left: auto;
    }
    #primary-menu .sub-menu a:hover {
        text-decoration: underline;
        text-decoration-thickness: 1px;
    }
    #primary-menu .sub-menu li:not(.mega-menu_header) a {
        font-size: 1.2em;
    }
    #primary-menu .sub-menu li.menu-item_button a {
        font-size: 0.875em;
    }
    #primary-menu .sub-menu .sub-menu .menu-item_description {
        margin-bottom: 0;
    }
    .sub-menu_2-columns .sub-menu {
        column-count: 2;
        column-gap: 1em;
    }
    .sub-menu_2-columns .sub-menu li {
        break-inside: avoid-column;
        padding-right: 1em;
    }
    /* Page Header */
    .page-header:not(.alternative) {
        padding: 0 5% calc(1em / 18 * 90);
    }
    .page-header:not(.alternative) h1,
    .alignstandard {
        padding-left: 40px;
        padding-right: 40px;
    }
    .page-header:not(.alternative) h1::after {
        margin-left: 0.08em;
        margin-top: 0.3em;
    }
    .page-header.alternative h1 {
        margin-top: -6%;
        padding: 0.75em 1.5em 1em;
        position: relative;
        z-index: 10;
    }
    /* Quick Links */
    .quick-links {
        display: flex;
        gap: 0.9em;
        justify-content: end;
        align-items: flex-end;
        margin: 0;
        padding: 0 0 1em 0;
    }
    .quick-links a,
    .quick-links a:visited,
    .quick-links span {
        border: 2px solid var(--wp--preset--color--white);
        border-radius: 10em;
        color: var(--wp--preset--color--white);
        padding: 0.3em 1.4em;
        text-transform: uppercase;
    }
    .quick-links a:hover,
    .quick-links .pill-button span,
    .quick-links .pill-button a {
        background-color: var(--wp--preset--color--white);
        border-color: var(--wp--preset--color--white);
        color: var(--wp--preset--color--accent);
    }
    /* Footer */
    .site-footer {
        font-size: calc(1em / 18 * 16);
    }
    .site-footer_widgets {
        display: grid;
        gap: 3em;
        grid-template-columns: 1fr 15% 15% 15% auto;
        align-items: start;
        margin-left: auto;
        margin-right: auto;
        max-width: calc(1920px * 0.9);
        width: 90%;
    }
    .site-footer_widgets .widget:last-child {
        width: 100%;
    }
    /**
     * Blocks
     */
    /* Cover */
    .wp-block-cover {
        padding-bottom: 12.5em;
        padding-top: 8em;
    }
    /* Group */
    .mobile_max-width_140 {
        margin-left: auto;
        margin-right: auto;
        max-width: 180px;
    }
    .desktop_padding_slim,
    .wp-block-columns.is-style-shadow.desktop_padding_slim {
        padding-bottom: 2.44444em;
        padding-top: 2.44444em;
    }
    .desktop_padding_medium,
    .site-main .wp-block-group.alignwide.desktop_padding_medium {
        padding-bottom: 5em;
        padding-top: 4.75em;
    }
    .desktop_padding-left_1 {
        padding-left: 1em;
    }
    .desktop_grid_auto-1fr {
        --wp--style--block-gap: 0;
        align-items: center;
        display: grid;
        grid-template-columns: auto 1fr;
        grid-gap: 2em;
    }
    /* Helpers */
    .desktop_has-arrows .wp-block-column {
        position: relative;
    }
    .desktop_has-arrows .wp-block-column:not(:last-child)::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 37.953 30.211'%3E%3Cpath fill='%23e87724' d='M37.94 15.725a5.846 5.846 0 0 1-1.778 2.542c-3.626 3.6-7.224 7.224-10.849 10.835a3.328 3.328 0 1 1-4.751-4.654c1.792-1.806 3.6-3.6 5.4-5.4.167-.167.361-.32.542-.486-.014-.042-.028-.1-.042-.139H3.545a3.326 3.326 0 1 1-.4-6.64c.208-.014.417 0 .625 0h22.8c-.194-.208-.32-.347-.445-.472-1.861-1.861-3.737-3.709-5.584-5.584A3.315 3.315 0 0 1 22.069.101a3.249 3.249 0 0 1 3.223.972c1.6 1.611 3.209 3.209 4.82 4.82 2.028 2.028 4.029 4.056 6.071 6.057a5.927 5.927 0 0 1 1.778 2.542c-.021.403-.021.82-.021 1.233Z' data-name='Path 151'/%3E%3C/svg%3E");
        background-position: right 40%;
        background-repeat: no-repeat;
        background-size: 2em;
        content: " ";
        display: block;
        height: 2em;
        width: 2em;
        position: absolute;
        left: calc(100%);
        top: 30%;
    }
    .desktop_padding-left_list {
        padding-left: 2.5em;
    }
    .desktop_padding-left_list.has-1818-font-size {
        padding-left: calc(2.5em / 18 * 24);
    }
    .desktop_line-height_large {
        line-height: 2;
    }
    .desktop_margin-left_0,
    .wp-block-separator.desktop_margin-left_0 {
        margin-left: 0;
    }
    .desktop_font-weight_300 {
        font-weight: 300;
    }
    ol.is-style-blue-numbers .li_description {
        display: block;
        font-size: 0.75em;
        line-height: 1.5;
        margin-top: 0.25em;
    }
    .wp-block-group.is-nowrap .intesi-icon:first-child {
        margin-left: unset;
        margin-right: unset;
    }
}


/**
 * 1280px
 */

@media screen and (min-width: 1280px) {
    /* Navigation Bar */
    .nav-bar {
        max-width: 1740px;
        width: 90%;
    }
    #primary-menu>li {
        margin-left: 0.75em;
    }
    #primary-menu .link-wrapper {
        grid-template-columns: 1fr 0.65em;
    }
    /* Mega Menu */
    .mega-menu>.sub-menu {
        grid-template-columns: 17.2% 1fr 30.9%;
        column-gap: 2.9em;
    }
    .mega-menu_column:last-child {
        border-left: 1px solid #a1a1a1;
        padding-left: 30px;
    }
    .mini .mega-menu_column:last-child {
        border-left: 0;
        padding-left: 1em;
    }
    .sub-menu_2-columns .sub-menu {
        column-gap: 2em;
    }
    .wp-block-group.alignfull {
        padding-left: 5%;
        padding-right: 5%;
    }
}


/**
 * 1366px
 */

@media (min-width: 1366px) {
    h1 {
        font-size: 4.8em;
    }
    .mega-menu_column:last-child {
        padding-left: 2.9em;
    }
    ul.columnize-3 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1em 2em;
    }
}


/**
 * 1536px
 */

@media (min-width: 1536px) {
    h1 {
        font-size: 5.625em;
    }
}


/**
 * 1920px
 */

@media (min-width: 1921px) {
    body {
        font-size: 16px;
    }
    #primary-menu>li {
        margin-left: 1.125em;
    }
    #primary-menu .link-wrapper {
        grid-template-columns: 1fr 1.025em;
    }
    .page-header:not(.alternative) {
        height: 700px;
    }
}


/**
 * Aspect Ratio
 */

@media screen and (max-aspect-ratio: 16 / 9) and (min-width: 1536px) {
    body {
        font-size: 18px;
    }
    #primary-menu>li {
        font-size: 0.9em;
        margin-left: 1em;
    }
    #primary-menu .link-wrapper {
        grid-template-columns: 1fr 0.9em;
    }
}