@charset "UTF-8";

@layer reset, grid, gridDefaults, userDefaults, elements;

@property --bg-overlay-opacity {
syntax: '<number>';
inherits: false;
initial-value: 0;
}


@layer reset{


    /*:where(:not(iframe, canvas, img, svg, video):not(svg *)) {
    all: unset;
    display: revert;
    }

    /* Box sizing rules */
    *,
    *::before,
    *::after {
    box-sizing: border-box;
    }

    *{margin:0;}

    /* Set core root defaults */
    html{
    line-height: 1.5;
    }

    html:focus-within {
    scroll-behavior: smooth;
    }

    /* Set core body defaults */
    body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    font-family:-apple-system, BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue", Arial,"Noto Sans",sans-serif,"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    }


    [type="checkbox"], [type="radio"] {box-sizing: border-box;padding: 0;}
    [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {height: auto;}
    [type="search"] {-webkit-appearance: textfield;}
    [type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
    ::-webkit-file-upload-button {-webkit-appearance: button;font: inherit;}
    [hidden], [type="hidden"] {display: none;}

    /* *:focus:not(:focus-visible), *:focus { outline: 0;}*/

    button[disabled]{
        pointer-events: none;
        opacity:.5;
        filter:grayscale(1);
    }

    article, 
    aside, 
    figcaption, 
    figure, 
    footer, 
    header, 
    hgroup, 
    main, 
    nav, 
    section {
    display: block; 
    }

    /* Remove default margin */
    body,
    h1,
    h2,
    h3,
    h4,
    p,
    figure,
    blockquote,
    dl,
    dd {
    margin: 0;
    }

    svg{vertical-align: top;}

    /*
    Remove list styles (bullets/numbers)
    in case you use it with normalize.css
    ol, ul {
    list-style: none;
    }*/

    /* A elements that don't have a class get default styles */
    a:not([class]) {
    text-decoration-skip-ink: auto;
    }

    /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
    ul[role='list'],
    ol[role='list'] {
    list-style: none;
    }

    /* For images to not be able to exceed their container */
    img,
    picture {
    max-width: 100%;
    height: auto;
    display: block;
    border-style: none;
    overflow: hidden;
    }


    pre, code {font-family: monospace, monospace;font-size: 1em;}
    b, strong{font-weight: bolder;}
    em{font-style:italic;}

    sub, sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
    sub {bottom: -0.25em;}
    sup {top: -0.5em;}

    /* h1{
    font-size:3.815rem;// 61.04px
    }
    h2{
    font-size:3.052rem;// 48.832px
    }
    h3{
    font-size:2.441rem;// 39.056px 
    }
    h4{
    font-size:1.953rem;// 31.248px 
    }
    h5{
    font-size:1.563rem;// 25.008px 
    }
    h6{
    font-size:1.25rem;// 20px 
    } */

    /* Removes spacing between cells in tables */
    table {
    border-collapse: collapse;
    }

    /* Inherit fonts for inputs and buttons */
    input,
    button,
    textarea,
    select {
    font: inherit;
    }

    button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    background-color: transparent;
    background-image: none;
    }

    textarea {
    overflow: auto;
    resize:vertical;
    }




    /* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
    @media (prefers-reduced-motion: reduce) {
        html:focus-within {
        scroll-behavior: auto;
        }
        
        *,
        *::before,
        *::after {
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
            scroll-behavior: auto !important;
        }
    }

}

@layer grid{
    :root{
        /* FLUID FONT SIZES */
        --fluid-min-width: 640;
        --fluid-max-width: 990;

        --base-font-size: 16;

        --fluid-screen: 100vw;
        --fluid-bp: calc(
        (var(--fluid-screen) - var(--fluid-min-width) / 16 * 1rem) /
        (var(--fluid-max-width) - var(--fluid-min-width))
        );

        /* SYSTEM DEFAULT FONT FAMILY STACK */
        --system-font-family: -apple-system, BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue", Arial,"Noto Sans",sans-serif,"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

        /* --font-family-general: var(--system-font-family);
        --font-family-headings: var(--font-family-general); */

        /* COLORS */
        /*--text-color: 0,0,0;*/
        --clr-background-contrast: 0,0,0;

        --text-color-alpha: .75;
        --bg-transparent: transparent;  
        --text-color: var(--clr-background-contrast );

        --text-color-auto: rgba( var(--text-color),var(--text-color-alpha,1) );

        color: var(--text-color-auto);
    }


    *{border-style:solid;border-width:0;}


    html::-webkit-scrollbar {
        display: none;
    }

    
    /* Hide scrollbar for IE, Edge and Firefox */
    html {
        scroll-behavior: smooth;
    }

    html, body, section{
        overflow-x: clip;
    }

    body,
    .gwe-body{
        scroll-behavior: smooth;
        min-height:100vh;
        display:flex;
        flex-direction:column;
        position:relative;
        font-family: var(--general-font-family,''), var(--system-font-family);
        background-color: var(--clr-background, #FFF);
        --default-contrast: 0,0,0;
        --text-color: var(--clr-background-contrast, var(--default-contast) );
        font-weight: 400;
    }

    /* FLUID FONT SIZE */
    h1,h2,h3,h4,h5,h6,p,blockquote,a,button, .gwe-p, .gwe-h1, .gwe-h2, .gwe-h3, .gwe-h4, .gwe-h5, .gwe-h6, .gwe-blockquote, .gwe-text, .gwe-label, summary, .gwe-dropdown, form{
        --min-font-size: min( ( var(--base-font-size) + ( ( var(--font-size) - var(--base-font-size) ) / 2.5) ), var(--font-size) );
        font-size: calc(((var(--min-font-size) / 16) * 1rem) + (var(--font-size) - var(--min-font-size)) * var(--fluid-bp));
    }

    @media (min-width: 990px) {
        h1,h2,h3,h4,h5,h6,p,blockquote,a,button, .gwe-p, .gwe-h1, .gwe-h2, .gwe-h3, .gwe-h4, .gwe-h5, .gwe-h6, .gwe-blockquote, .gwe-text, .gwe-label, summary, .gwe-dropdown, form{
            font-size: calc( (var(--font-size) / 16) * 1rem);
        }
    }

    @media (max-width: 640px) {
        h1,h2,h3,h4,h5,h6,p,blockquote,a,button, .gwe-p, .gwe-h1, .gwe-h2, .gwe-h3, .gwe-h4, .gwe-h5, .gwe-h6, .gwe-blockquote, .gwe-text, .gwe-label, summary, .gwe-dropdown, form{
            font-size: calc( (var(--min-font-size) / 16) * 1rem);
        }
    }
    /* END FLUID FONT SIZE */

    .gwe-p a,
    .gwe-text a,
    .gwe-label a,
    .gwe-blockquote a,
    .gwe-h1 a,
    .gwe-h2 a,
    .gwe-h3 a,
    .gwe-h4 a,
    .gwe-h5 a,
    .gwe-h6 a{
        color: var(--link-color);
    }

    h1,h2,h3,h4,h5,h6{
        --text-color-alpha: 1;
        text-wrap:balance;
    }

    .gwe-rich-text img{
        max-height: 90vmin;
        display:block;
        margin-inline: auto;
    }

    .gwe-rich-text iframe.ql-video{
        width:100%;
        aspect-ratio: 16 / 9;
        height:auto;
    }

    [data-animation-split]{
        font-kerning: none; 
        text-rendering: optimizeSpeed;
        text-wrap: wrap;
    }

    .gwe-has-js [data-animation-appear]:not([data-animation-appear-start]){
        visibility:hidden;
    }

    h1{
        font-family: var(--heading-1-font-family,''), var(--general-font-family,''),  var(--system-font-family);
    }
    h2{
        font-family: var(--heading-2-font-family,''), var(--heading-1-font-family,''), var(--general-font-family,''),  var(--system-font-family);
    }
    h3{
        font-family: var(--heading-3-font-family,''), var(--heading-2-font-family,''), var(--heading-1-font-family,''), var(--general-font-family,''),  var(--system-font-family);
    }
    h4{
        font-family: var(--heading-4-font-family,''), var(--heading-3-font-family,''), var(--heading-2-font-family,''), var(--heading-1-font-family,''), var(--general-font-family,''),  var(--system-font-family);
    }
    h5{
        font-family: var(--heading-5-font-family,''), var(--heading-4-font-family,''), var(--heading-3-font-family,''), var(--heading-2-font-family,''), var(--heading-1-font-family,''),var(--general-font-family,''),  var(--system-font-family);
    }
    h6{
        font-family: var(--heading-6-font-family,''), var(--heading-5-font-family,''), var(--heading-4-font-family,''), var(--heading-3-font-family,''), var(--heading-2-font-family,''), var(--heading-1-font-family,''),var(--general-font-family,''),  var(--system-font-family);
    }

    p, .gwe-p{
        font-family: var(--paragraph-font-family,''), var(--general-font-family,''), var(--system-font-family);
    }

    .gwe-list{}

    .gwe-list li{
        margin-left: calc(var(--list-level,0) * var(--list-margin,1em))
    }

    .gwe-text, .gwe-label{
        font-family: var(--general-font-family,''), var(--system-font-family);
    }

    .gwe-details-summary{
        --text-color-alpha: 1;
    }

    :where(p, h1, h2, h3, h4, h5, h6, blockquote, a, button, .gwe-text, .gwe-p, .gwe-h1, .gwe-h2, .gwe-h3, .gwe-h4, .gwe-h5, .gwe-h6, .gwe-blockquote, .gwe-label, .gwe-form-submit, .gwe-footer-text, .gwe-link, .gwe-dropdown, .gwe-legal-text,.gwe-form, .gwe-layout, .gwe-layout-item, .gwe-details-summary){
        --text-color-auto: rgba( var(--text-color),var(--text-color-alpha,1) );
        color: var(--text-color-auto);
    }

    main{
        flex-grow:1;
    }

    section{
        display:block;
        align-content:start;
    }

    header, section, footer, .gwe-container, .gwe-columns, .gwe-grid, .gwe-hr{
        clear:both;
    }

    details summary div{display: inline !important;}

    .skip-nav{
        position: absolute;
        padding: .5em;
        color: #FFF;
        background: #000;
        top: 0;
        left: 0;
        transform: translateY(-300%);
        transition: 0.3s;
        -moz-transition: 0.3s;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        z-index: 999;
        font-size: 1rem;
    }

    .skip-nav:focus{
        transform: translateY(0);
    }



        /* TODO REMOVE GRID */
        .gwe-grid{
            --grid-cols: 4;
            grid-template-columns: repeat(var(--grid-cols), 1fr);
        }

        .gwe-grid-cell{
            grid-column: span var(--col-span);
            grid-row: span var(--row-span);
        }

        .gwe-columns{
            --column-gap: 15;
            gap: calc(var(--column-gap,0) * 1px);
        }
        .gwe-column{
            --column-flex-basis: 1;
            flex-basis: calc( var(--column-flex-basis,1) * 100% );
        }
        /* END REMOVE GRID. */



    .gwe-nav{
        --nav-mode: block;
        --nav-display: block;
        --nav-mode-btn: none;

        display: var(--nav-display, block);
        justify-content: var(--nav-align, start);
    }

    .gwe-nav-menu-button{
        display: var(--nav-mode-btn,none);
        position:relative;
        z-index:999;
        width: var(--nav-btn-width, 48px);
        height: var(--nav-btn-height, 48px);
        --nav-menu-btn-final: var(--nav-menu-btn, url(/assets/img/menu.svg));
    }

    .gwe-nav-menu-button:after{
        content: "";
        display:block;
        width:100%;height:100%;
        
        --text-color-alpha: 1;
        background-color: var(--nav-icon-color, var(--text-color-auto));
        mask-image: var(--nav-menu-btn-final);
        mask-repeat: no-repeat;
        mask-position: center center;
        mask-size: 100%;
        -webkit-mask-image: var(--nav-menu-btn-final);
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center center;
        -webkit-mask-size: 100%;
    }

    .gwe-nav-menu{
        display: var(--nav-mode, block);
        align-items: center;
    }

    .gwe-nav[open] > .gwe-nav-menu{
        display:block;
        
        position:fixed;
        inset: 0;
        z-index:100;
        overflow-y:auto;
    }

    .gwe-nav[open] > .gwe-nav-menu-button{
        --nav-menu-btn-final: var(--nav-menu-btn-close, url(/assets/img/close.svg));
    }


    .gwe-nav[open] .gwe-dropdown{
        display:flex;
        flex-direction: column;
        align-items: center;
    }
    .gwe-nav[open] .gwe-dropdown > span{
        display:inline-flex;
    }
    .gwe-nav[open] .gwe-dropdown-content{
        position:static;
        width:auto;
    }



    .gwe-dropdown{
        position: relative;
        --btn-style: inline-block;
        display: var(--btn-style, inline-block);
        padding:10px;
    }

    .gwe-dropdown > span{
        display:flex;
        width:100%;
        align-items:center;
        gap:1ch;
        cursor:pointer;
    }



    .gwe-dropdown > span:after{
        content: "";
        width:0.4em;
        height:0.4em;
        border:1px solid currentColor;
        margin-left:auto;
        border-left:0;border-top:0;
        transform: scaleY(1) translateY(0) rotate(45deg);
        display:inline-block;
        transition: transform .2s ease-in-out;
    }



    .gwe-dropdown-content{
        --dropdown-absolute-top: 0;

        --dropdown-anchor: calc(100% + var(--dropdown-absolute-top) * 1px) auto auto 0;
        --dropdown-position: absolute;

        --dropdown-fixed-top: 0;
        --dropdown-fixed-width: 100%;

        --dropdown-backdrop: none;
        --dropdown-backdrop-opacity: 0.5;
        --dropdown-backdrop-blur: 0;

        --dropdown-fixed-anchor: calc((var(--dropdown-fixed-top,0) + var(--dropdown-absolute-top,0)) * 1px) 0 auto 0;
        display:none;
        position: var(--dropdown-position);
        inset: var(--dropdown-anchor);
        z-index: 100;
        background-color: var(--clr-header, var(--transparent));
        --text-color: var(--clr-header-contrast);
        min-width: 100%;
        width: max-content;
    }

    .gwe-dropdown[open]:after {

        content: var(--dropdown-backdrop,none);
        position: absolute;
        inset: -100vmax;
        background: rgba(0, 0, 0, var(--dropdown-backdrop-opacity, 0.5) );
        backdrop-filter: blur( calc(var(--dropdown-backdrop-blur,0) * 2px) );
        z-index: -1;
        display: block;
    }

    .gwe-dropdown-content:before{
        content: "";
        position: absolute;
        display: block;
        inset: calc(var(--dropdown-absolute-top) * -1px) 0 auto 0;
        height: calc(var(--dropdown-absolute-top) * 1px);
        background: transparent;
        opacity:0;
    }

    /* .gwe-dropdown-content:after{
        content: "";
        position: absolute;
        display: block;
        inset: var(--dropdown-extend);
        z-index: -1;
        background-color: var(--dropdown-bg-color);

        border-radius: inherit;
    } */

    .gwe-dropdown:not([data-behaviour="click"]):hover > .gwe-dropdown-content,
    .gwe-dropdown[data-behaviour="click"][open] > .gwe-dropdown-content,
    .gwe-dropdown[data-preview="true"] > .gwe-dropdown-content{
        display:block;
    }

    .gwe-dropdown:not([data-behaviour="click"]):hover > span:after,
    .gwe-dropdown[data-behaviour="click"][open] > span:after,
    .gwe-dropdown[data-preview="true"] > span:after{
        transform:  scaleY(-1)  translateY(-25%) rotate(45deg) ;
    }






    .gwe-div,
    .gwe-section,
    .gwe-text,
    .gwe-p,
    .gwe-h1,
    .gwe-h2,
    .gwe-h3,
    .gwe-h4,
    .gwe-h5,
    .gwe-h6,
    .gwe-blockquote,
    .gwe-line,
    .gwe-image,
    .gwe-form,
    .gwe-input-text,
    .gwe-label,
    .gwe-filter-title,
    .gwe-layout-item,
    .gwe-code{
        display: var(--visibility-block, block);
    }

    .gwe-form-recaptcha{
        opacity:.65;
    }

    .gwe-form-recaptcha, .gwe-form-recaptcha *{
        font-size: .75rem;
        /* opacity: .65; */
    }
    .gwe-form-recaptcha a{
        text-decoration: none;
    }
    .gwe-form-recaptcha a:hover{
        text-decoration: underline;
    }

    .gwe-button{
        --btn-style: inline-block;
        display: var(--btn-style, inline-block);
        --text-color-alpha: 1;
        text-decoration: none;
        /* width:fit-content; */
    }
    .gwe-button:empty{display:none;}
    .gwe-link{
        --btn-style: inline-block;
        display: var(--btn-style, inline-block);
        text-decoration:none;
        vertical-align: top;
    }
    .gwe-link:hover{
        text-decoration:underline;
    }
    .gwe-p a:hover{
        text-decoration:underline;
    }
    .gwe-link-block{
        text-decoration:none;
        display:block;
        --btn-style: block;
        display: var(--btn-style, block);
        --height-full:auto;
        height: var(--height-full, auto);
        vertical-align: top;
    }


    /* TODO REMOVE */
        .gwe-columns,
        .gwe-flex-container{
            display: var(--visibility-flex, flex);   
        }


        .gwe-column,
        .gwe-grid-cell{
            display: var(--visibility-flex, block);/*flex);*/
            flex-direction: column;
            min-width: 0;
            max-width: 100%;
        }

        .gwe-grid{
            display: var(--visibility-grid, grid);
        }
    /* END REMOVE */



    .gwe-video{
        display: var(--visibility-grid, grid);
    }

    .gwe-image{
        --img-responsive: 100%;
        max-width: var(--img-responsive,100%);
        width:auto;
        height:auto;
        object-fit: contain;
        overflow: hidden;
    }

    .gwe-image[data-lightbox],
    .glightbox{
        cursor:zoom-in;
    }

    .gwe-line{
        --text-color-alpha: 1;
        --hr-border: 12px;
        --text-color-auto: rgba( var(--text-color),var(--text-color-alpha) );
        --hr-color: var(--text-color-auto);
        max-width: var(--hr-width,100%);
        background-color:var(--hr-color, rgba(0,0,0,0.5) );
        height: calc( var(--hr-border,5px) + var(--hr-border,5px) + var(--hr-height, 1px) );
        border-top: var(--hr-border) solid transparent;
        border-bottom: var(--hr-border) solid transparent;
        border-left:0;
        border-right:0;
        background-clip: padding-box;
        margin-block: 16px;
    }

    

    .gwe-video{
        align-items: stretch;;
    }

    .gwe-video-iframe{
        width:100%;
    }   


    /* TODO dejar solo gwe-input */
    .gwe-input,
        .gwe-input-text,
        .gwe-input-email,
        .gwe-input-select,
        .gwe-input-textarea,
        .gwe-input-date,
        .gwe-input-number{
        width: 100%;
    }

    .gwe-input-textarea{
        resize: vertical;
        field-sizing: content;
        /* box-sizing: content-box; */
        min-height: 3lh;
        max-height: 10em;
    }

        /*TODO REMOVE */
        .gwe-form-submit{
            /* display: inline-block; */
            --text-color-alpha: 1;
        }
        /* END REMOVE */

    .gwe-input-container{
        display:block;
    }

    .gwe-input-container:has([required]) .gwe-label:not(:has([data-slate-leaf])):after,
    .gwe-input-container:has([required]) .gwe-label:has([data-slate-leaf]) [data-slate-leaf]:after{
        content:'*';
    }
    

        /* TODO REMOVE */
        .gwe-container{
            max-width: var(--container-width,960px);
            margin-left:auto;
            margin-right: auto;
        }
        /* END REMOVE */




    img[src*='img.svg']{
        display: none;
    }

    .gwe-video:has(img[src*='video.svg']){
        display: none;
    }


    section *{
        --transform-rotate-x: 0;
        --transform-rotate-y: 0;
        --transform-rotate-z: 0;

        --transform-translate-x: 0;
        --transform-translate-y: 0;
        --transform-translate-z: 0;

        --transform-scale: 1;

        --transform-skew-x: 0;
        --transform-skew-y: 0;

        /* transform-style: preserve-3d; */
        
        /* perspective: 1000px; ERROR WITH POSITION FIXED  */

        /* transform: scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y)) translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) translateZ(var(--transform-translate-z)) rotateX(var(--transform-rotate-x)) rotateY(var(--transform-rotate-y)) rotateZ(var(--transform-rotate-z)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)); */

        transform: scale(var(--transform-scale)) translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) translateZ(var(--transform-translate-z)) rotateX(var(--transform-rotate-x)) rotateY(var(--transform-rotate-y)) rotateZ(var(--transform-rotate-z)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)); 
    }

    section{
        /* perspective: 1000px; */
        max-width: 100%;
    }

    *{
        --bg-overlay-opacity: 0;
        --background-image: '';
        --background-repeat: no-repeat;
        --background-size: auto;
        --background-position: center center;
        --background-attachment: scroll;

        --custom-shadow: 0;

        --filter-blur: 0;
        --filter-brightness: 0;
        --filter-saturation: 0;

        --backdrop-filter-blur: 0;

        --transition: 0s;

        transition: --bg-overlay-opacity var(--transition), all var(--transition);
        

        box-shadow: 0 calc(var(--custom-shadow) * 1px) calc(var(--custom-shadow) * 5px) 0 rgba(0, 0, 0, 0.25);

        background-image: linear-gradient(rgba(0, 0, 0, var(--bg-overlay-opacity, 0) ), rgba(0, 0, 0, var(--bg-overlay-opacity, 0) )), var(--background-image,'');
        background-repeat: var(--background-repeat,no-repeat);
        background-size: auto, var(--background-size,auto);
        background-position: center center, var(--background-position,center center);
        background-attachment: scroll, var(--background-attachment,scroll);

        /* filter: brightness( calc(100% + ( var(--filter-brightness) * 5%) ) ) saturate( calc(100% + ( var(--filter-saturation) * 10%) ) ); */

        /* backdrop-filter: blur( calc(var(--backdrop-filter-blur) * 2px) ); */

        /* overflow: visible; */
    }


        




    .gwe-hidden{
        display: none !important;
    }

    .gwe-legal-text, .gwe-legal-text *{
        font-size:14px;
    }





    .gwe-gallery{
        --gallery-visible: var(--gallery-type, grid);
        --gallery-type: grid;
        --gallery-cols: 3;
        --gallery-gap: 10px;
        --carousel: grid;

        --gallery-img-height: 240;
        --gallery-justify-snap: 85%;

        --gallery-carousel-btns: none;

        --gallery-img-grid-aspect-ratio: 1 / 1;

        --gallery-img-aspect-ratio: var(--gallery-img-grid-aspect-ratio, 1 / 1);

        /* display:var(--gallery-type, grid); */

        display: var(--visibility-gallery, var(--gallery-type, grid));
        grid-template-columns: repeat(var(--gallery-cols,3), 1fr);
        gap: var(--gallery-gap,0px);


        flex-wrap: wrap;
        scrollbar-width: none;
        -ms-overflow-style: none;  /* IE and Edge */
        scroll-behavior: smooth;

        scroll-snap-type: x mandatory;
    }

    .gwe-gallery::after {
        content: '';
        flex-grow: 999999999;
        order: 999999999;
        min-width: calc(100% - var(--gallery-justify-snap,85%));
    }

    .gwe-gallery-item{
        overflow: hidden;
        flex-grow: calc(var(--w) * 100 / var(--h));
        flex-basis: calc(1px * var(--w) * var(--gallery-img-height) / var(--h));
        scroll-snap-align: center;
    }

    .gwe-gallery-item img{
        object-fit: cover;
        aspect-ratio: var(--gallery-img-aspect-ratio, 1);
    }



    .gwe-gallery-carousel-btns{
        display: var(--gallery-carousel-btns, none);
        pointer-events: none;
        position: sticky;
        left: 0;
        grid-column: 1;
        height:100%;
    }
        
    .gwe-gallery-carousel-btn{
        pointer-events: all;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 100;
        padding:15px 5px;
        border-radius: 6px;
        background: rgba(0,0,0,.5);
        margin:10px;
    }

    .gwe-gallery-carousel-prev{
        left: 0;
    }

    .gwe-gallery-carousel-next{
        right: 0;
    }

    .gwe-gallery-carousel-btn:hover{
        cursor: pointer;
        background-color: rgba(0,0,0,.65);
    }

    .gwe-gallery-carousel-btn svg{
        width:25px;
        fill: #FFF;
    }

    @media (min-width: 768px) {
        .gslide-description{
            background: transparent !important;
            color:#FFF !important;
            text-align:center !important;
        }
    }


    .gwe-slider{
        display:grid;
        aspect-ratio:  2 / 1;
        position:relative;
    }

    .gwe-slider-item{
        grid-row:1;
        grid-column:1;
        align-content: center;

        opacity:0;
        pointer-events: none;

        transition: opacity .5s ease-in-out;
        transition-delay: .5s;
    }


    .gwe-slider:not(:has(.gwe-selected)) .gwe-slider-item[data-active]
    {
        opacity:1;
        pointer-events: all;    
        z-index:2;
        
        transition-delay: 0s;
    }

    .gwe-slider:has(.gwe-selected) .gwe-slider-item.gwe-selected,
    .gwe-slider:has(.gwe-selected) .gwe-slider-item:has(.gwe-selected)
    {
        opacity:1;
        pointer-events: all;    
        z-index:2;
        
        transition-delay: 0s;
    }

    .gwe-slider-nav{
        
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        padding:20px;
        z-index:5;
        
        /* display: none; */
    }
        
    .gwe-slider-nav-btn{
        width: 12px;
        height: 12px;
        display:block;
        border-radius: 50%;
        background: rgba(255,255,255,1);
        box-shadow: 0 0 0 1px rgba(0,0,0,.1);
        cursor: pointer;
    }

    .gwe-slider-nav-btn[data-active]{
        scale:1.25
    }

    .gwe-slider-btn{
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 100;
        padding:15px 5px;
        border-radius: 6px;
        background: rgba(0,0,0,.5);
        margin:0 10px;
    }

    .gwe-slider-prev{
        left: 0;
    }

    .gwe-slider-next{
        right: 0;
    }

    .gwe-slider-btn:hover{
        cursor: pointer;
        background-color: rgba(0,0,0,.65);
    }

    .gwe-slider-btn svg{
        width:25px;
        fill: #FFF;
    }






        /* TODO REVISAR */
        .gwe-cookie-message{
            position:fixed;
            bottom:10px;
            left:10px;
            padding:15px;
            max-width:300px;
            background:var(--clr-header);
            color:var(--clr-header-contrast);
            z-index:100;
            border-radius: 6px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.1);
        }
        /* END REVISAR */


    .grecaptcha-badge {
        visibility: hidden;
    }


    .gwe-slider, .gwe-slider-item {
    transform: none !important;
    perspective: none !important;
    }

    form{font-size:1rem;font-weight:400;}

    .pointer-events-none{
        pointer-events: none;
    }

    .gwe-list {
        padding-left: var(--list-margin, 1.5em);
        list-style-position: outside;
    }

    ol.gwe-list {
        list-style-type: decimal;
    }

    ul.gwe-list {
        list-style-type: disc;
    }



    .gwe-table{
        width:100%;
        table-layout: var(--table-layout,fixed);
        border-collapse: collapse;
        min-width: var(--table-min-width,none);
    }

    .gwe-table-wrapper{
        max-width:100%;
        width:100%;
        min-width:0;
        overflow-x:auto;
        -webkit-overflow-scrolling: touch;
    }

    @media (max-width: 640px) {
        .gwe-table-wrapper {
            max-width: 100vw;
        }
    }

    .gwe-table-cell{
        border-width: var(--table-border-width, 1px);
        border-color: var(--table-border-color, currentColor);
        border-style: solid;
        padding: var(--table-gap, 10px);
    }

    .gwe-table th.gwe-table-cell{
        background-color: var(--table-heading-color, transparent);
        --text-color: var(--table-heading-text-color, currentColor);
        text-align:inherit;
        font-weight:inherit;
    }

    .gwe-table thead{
        position:var(--table-heading-position,static);
        top:0;
        z-index:2;
    }

    .gwe-table th:first-child{
        position:var(--table-heading-position,static);
        left:0;
        z-index:3;
    }


    .gwe-editor-mode-preview a:empty, .gwe-editor-mode-preview a:not([data-href]){
        display:none;
    }








    /* LAYOUTS */

    .gwe-layout{


        /* max-width: var(--container-width,960px); */
        margin-left:auto;
        margin-right: auto;

        --height-full:auto;
        height: var(--height-full, auto);



        --layout: flex;
        --visibility-layout: var(--layout);
        display: var(--visibility-layout,flex);

        gap: var(--layout-gap);

        --layout-cols: 4;
        grid-template-columns: repeat(var(--layout-cols), 1fr);

        --layout-flex-direction: row;
        flex-direction: var(--layout-flex-direction);

        --layout-flex-wrap: nowrap;
        flex-wrap: var(--layout-flex-wrap);

        --layout-align-items: stretch;
        align-items: var(--layout-align-items);
        
        --layout-justify-items: start;
        justify-content: var(--layout-justify-items);

        --layout-flex-overflow: visible;
        overflow-x:var(--layout-flex-overflow);

        --layout-flex-scroll-snap: none;
        scroll-snap-type: var(--layout-flex-scroll-snap);

        --layout-flex-scroll-padding: 0px;
        

        /* scroll-padding: var(--layout-gap); tambien podria ser gap / 2; o setear un padding especifico*/

        --layout-items-basis: 0%;
        --layout-flex-items: 1 1 var(--layout-items-basis,0%);
        --layout-flex-items-multiplier: 1;


        --layout-flex-items-min-width: 0px;

        --layout-items-min-width: var(--layout-flex-items-min-width);
        
    }

    @media (max-width: 640px) {
        .gwe-layout{
            --layout-flex-direction: column;
        }
    }

    .gwe-layout-item{

        flex: var(--layout-flex-items, 1 1 var(--layout-items-basis,0%));

        min-width: var(--layout-items-min-width,0);

        scroll-snap-align: start;

        --layout-item-col-span: 1;
        --layout-item-row-span: 1;
        grid-column: span var(--layout-item-col-span);
        grid-row: span var(--layout-item-row-span);

        --layout-item-flex-grow: 1;
        flex-grow: calc( var(--layout-item-flex-grow,1) * (var(--layout-flex-items-multiplier,1)) );

    }



    /* DYNAMIC LISTS */


    .gwe-dynamic-list{

        /* max-width: var(--container-width,960px); */
        margin-left:auto;
        margin-right: auto;

        --layout: grid;
        --visibility-layout: var(--layout);
        /* display: var(--visibility-layout,grid); */

        --layout-cols: 4;
        

        --layout-flex-direction: row;

        --layout-flex-wrap: nowrap;

        --layout-align-items: stretch;
        
        --layout-justify-items: start;

        --layout-flex-overflow: hidden;

        --layout-flex-scroll-snap: none;

        /* scroll-padding: var(--layout-gap); tambien podria ser gap / 2; o setear un padding especifico*/

        --layout-items-basis: 0%;
        --layout-flex-items: 1 1 var(--layout-items-basis,0%);
        --layout-flex-items-multiplier: 1;

        --layout-flex-items-min-width: 0px;

        --layout-items-min-width: var(--layout-flex-items-min-width);
    }


    .gwe-dynamic-list-content{ /* container de filters + items */
        gap: var(--grid-gap);
        display: flex;
        flex-wrap: wrap;
    }

    .gwe-dynamic-list-filter{
        /* span all implicit rows → full-height sidebar */
        /* grid-row: 1 / -1;  */

        /* grid-column: 2; */
        flex: 0 0 var(--filters-location, 25%);
    }

    .gwe-filter-group{
        display: flex;
        flex-direction: var(--filter-group-direction, column);
    }

    .gwe-filter-option{
        text-align: left;
    }

    .gwe-filter-option-active{
        color:var(--clr-primary);
        font-weight: bold;
    }

    .gwe-filter-option-active:hover:after{
        content: ' ×';
    }


    .gwe-dynamic-list-items-container{
        flex:1 1 0;
        min-width: 0;
    }

    .gwe-dynamic-list-items{
        /* display: grid;
        gap: var(--grid-gap);
        grid-template-columns: repeat(var(--grid-cols), 1fr); */

        display: var(--visibility-layout,grid);
        gap: var(--layout-gap);
        grid-template-columns: repeat(var(--layout-cols), 1fr);

        flex-direction: var(--layout-flex-direction);
        flex-wrap: var(--layout-flex-wrap);
        align-items: var(--layout-align-items);
        justify-content: var(--layout-justify-items);
        overflow-x:var(--layout-flex-overflow);
        scroll-snap-type: var(--layout-flex-scroll-snap);
        scroll-padding: var(--layout-flex-scroll-padding, 0px);
    }

    .gwe-dynamic-list:not(:has(div.gwe-dynamic-item)){
        display:flex;
        flex-direction: column;
    }

    /* .gwe-dynamic-item{
        --item-col-span: 1;
        --item-row-span: 1;

        grid-column: span var(--item-col-span);
        grid-row: span var(--item-row-span);
    } */

    .gwe-dynamic-item{
        flex: var(--layout-flex-items, 1 1 var(--layout-items-basis,0%));

        min-width: var(--layout-items-min-width,none);

        scroll-snap-align: start;

        --layout-item-col-span: 1;
        --layout-item-row-span: 1;
        grid-column: span var(--layout-item-col-span);
        grid-row: span var(--layout-item-row-span);

        --layout-item-flex-grow: 1;
        flex-grow: calc( var(--layout-item-flex-grow,1) * (var(--layout-flex-items-multiplier,1)) );
    }

    .gwe-filter-option{
        display:block;
        padding:0;
    }

    .gwe-dynamic-list-pagination{
        /* grid-column: span var(--grid-cols); */
        display:flex;
        justify-content: center;
        align-items: center;
    }
        

    .gwe-dynamic-placeholder{
        display:none;
    }


    footer a[target="_F960AFIPInfo"]{
        display: inline-block;
    }

    footer a[target="_F960AFIPInfo"] img{
        height:1.4em;
        width:auto;
        margin-right:.6ch;
        vertical-align: text-bottom;
        display: inline-block;
    }

    footer a[target="_F960AFIPInfo"]:after {
    content: "Data fiscal";
    }
}


[data-slate-placeholder]{
    display:none !important;
}

[data-slate-zero-width="n"][data-slate-length="0"]{
    display:none !important;
}