/*
Theme Name: Base
Theme URI: https://www.invbit.com
Author: Base
Author URI: https://www.invbit.com
Description: Base para Betheme
Template: betheme
Version: 1.6.2
*/

@import './css/variables.css';

@view-transition {
    navigation: auto;
}

:root {
    --sempre-celta-bold: "Sempre Celta Bold", serif;
    --sempre-celta-regular: "Sempre Celta Regular", serif;
    --sempre-celta-semibold: "Sempre Celta Semibold", serif;

    --primary: #6BABE3;
    --shadow: #232323;
    --alternative-red: #D50032;

    --box-shadow-red: 4px 4px 0 0 var(--alternative-red);
}

.text-low-opacity {
    opacity: .3;
}

#Subheader {
    --py: 2rem;
    padding-top: var(--py) !important;
    padding-bottom: var(--py) !important;

    @media (width > 1024px) {
        --py: 5rem;
    }

    .breadcrumbs,
    h1 {
        text-align: left !important;
    }

    h1 {
        font-size: clamp(1.5rem, 5vw, 5rem) !important;
        line-height: 1.2 !important;
    }
}

/* WPML Languange Switcher */
.wpml-ls-display {
    font-size: 0.9rem;
}

.wpml-ls-menu-item .sub-menu.mfn-submenu {
    max-width: 128px;
    background-color: #06131B;
    box-shadow: 0px 0px 3px 1px #ffffff5e;
}

.wpml-ls-display {
    font-size: 0.9rem;
    font-family: 'Sempre Celta Semibold';
    color: var(--primary);
}

footer .wpml-ls-menu-item {
    display: none;
}

/* Blog List (BEM) */
.c-blog-list {
    display: block
}

.c-blog-list__featured {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 32px
}

.c-post-featured {
    display: flex;
    flex-direction: column;
    background: white;
    overflow: hidden;
}

.c-post-featured__media {
    --padding: 1rem 1rem 0 1rem;
    padding: var(--padding);
    display: block;
    aspect-ratio: 16/11;
    overflow: hidden
}

.c-post-featured__img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block
}

.c-post-featured__body {
    --padding: 1.5rem;
    padding: var(--padding);
}


.c-post-featured__categories {
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    margin-bottom: 12px;
}

.c-post-featured__category {
    position: relative;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: clamp(0.7rem, 1vw, 0.875rem);
    ;
    font-weight: 600;
    letter-spacing: 0.5px;

    &::before {
        --size: 6px;
        width: var(--size);
        height: var(--size);
        background: var(--primary);
        border-radius: 50%;
        content: '';
        position: relative;
    }
}

.c-post-featured__date {
    display: block;
    font-size: 0.875rem;
    color: #666;
    margin: 8px 0 12px;
    font-weight: 500
}

.c-post-featured__divider {
    border: none;
    height: 1px;
    background: #e0e0e0;
    margin: 12px 0;
}

.c-post-featured__title {
    font-size: clamp(1.2rem, 2vw, 1.8rem);
    font-family: var(--sempre-celta-semibold);
    line-height: 1.3;
    margin: 0 0 8px
}

.c-post-featured__excerpt {
    margin: 0 0 12px
}


.c-blog-list__grid {
    margin-top: 8px
}

.c-blog-list__grid-inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.c-post-card {
    display: flex;
    flex-direction: column;
    background: white;
    overflow: hidden;
}

.c-post-card__media {
    --padding: .75rem .75rem 0 .75rem;
    display: block;
    aspect-ratio: 16/11;
    overflow: hidden;
    padding: var(--padding);
}

.c-post-card__img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block
}

.c-post-card__body {
    --padding: 1.5rem;
    padding: var(--padding);
}


.c-post-card__categories {
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    margin-bottom: 12px;
}

.c-post-card__category {
    position: relative;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.70rem;
    font-weight: 600;
    letter-spacing: 0.5px;

    &::before {
        --size: 4px;
        width: var(--size);
        height: var(--size);
        background: var(--primary);
        border-radius: 50%;
        content: '';
        position: relative;
    }
}

.c-post-card__date {
    display: block;
    font-size: 0.75rem;
    color: #666;
    margin: 8px 0 12px;
    font-weight: 500
}

.c-post-card__divider {
    border: none;
    height: 1px;
    background: #e0e0e0;
    margin: 12px 0;
}

.c-post-card__title {
    font-size: clamp(1rem, 2vw, 1.2rem);
    font-family: var(--sempre-celta-semibold);
    line-height: 1.3;
    margin: 0 0 12px
}


.c-blog-list__actions {
    display: flex;
    justify-content: center;
    margin-top: 24px
}

.c-blog-list__loadmore {
    display: inline-block;
    background: #fff;
    font-family: var(--sempre-celta-semibold);
    box-shadow: var(--box-shadow-red);
    color: var(--shadow);
    text-decoration: none;
    font-weight: 700;
    font-size: 0.875rem;
    margin-top: 12px;
    transition: background-color 0.3s ease;
}

.c-blog-list__loadmore.is-loading {
    opacity: .6;
    cursor: wait
}

/* Related Posts */
.c-related-posts {
    margin: 2rem 0
}

.c-related-posts__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

@media (max-width: 900px) {
    .c-related-posts__grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 600px) {
    .c-related-posts__grid {
        grid-template-columns: 1fr
    }
}

@media (max-width: 959px) {
    .c-blog-list__featured {
        grid-template-columns: 1fr
    }

    .c-blog-list__grid-inner {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 600px) {
    .c-blog-list__grid-inner {
        grid-template-columns: 1fr
    }
}

.validate_email_against_bot {
    display: none;
}

body #cmplz-manage-consent .cmplz-manage-consent {
    background-image: url(imagenes/fondo-ajustes.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    right: unset !important;
    left: 0px;
    font-size: 0px;
    color: var(--negro) !important;
    width: 140px;
    background-color: transparent !important;
    box-shadow: unset !important;
    bottom: -2px !important;
    padding: 0 !important;
}

body #cmplz-manage-consent .cmplz-manage-consent:before {
    content: "";
    background-image: url(imagenes/icono-ajustes.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 28px;
    height: 28px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.8s ease;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover:before {
    transform: translate(-50%, -54%);
    -webkit-transform: translate(-50%, -54%);
    -moz-transform: translate(-50%, -54%);
    -ms-transform: translate(-50%, -54%);
    -o-transform: translate(-50%, -54%);
}

/* Arregla padding al abrir popup deshabilitando scroll de la web */
html.mfn-popup-browser-scroll-disabled {
    padding-right: 0;
}


/*********************************\
            COPYRIGHT
\*********************************/
body #Footer .copyright a:hover {
    text-decoration: none;
}

body #Footer .footer_copy {
    border: 0;
    background: black;
    color: white;
}

body #Footer .footer_copy a {
    color: white;
}

body #Footer .footer_copy a:hover {
    color: var(--primary);
}

body #Footer .footer_copy .one {
    --mfn-column-gap-bottom: 15px;
    padding-top: 15px;
    margin-bottom: 0;
}

body #Footer .footer_copy .mcb-column-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

body #Footer .menu {
    list-style: none;
    padding: 0;
    background: none;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

body #Footer .copyright .menu {
    gap: 0 10px;
    flex-direction: row;
}

body #Footer .menu li:after {
    content: none;
}

body #Footer .menu a {
    padding: 5px 0;
}

body #Footer .footer_copy .copyright {
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: .02em;
    float: none;
    text-align: left;
}

body #Footer .footer_copy .copyText {
    margin: 0 0 5px;
}

body #Footer .footer_copy .social {
    line-height: 0;
}

body #Footer .footer_copy .social li a {
    font-size: 22px;
    line-height: 1;
}

@media only screen and (max-width: 959px) {
    body .animate {
        animation-delay: 0ms !important;
    }

    body #Footer .footer_copy .mcb-column-inner {
        flex-direction: column;
    }

    body #Footer .copyright .menu {
        justify-content: center;
    }

    body #Footer .footer_copy .copyright {
        text-align: center;
    }

    body #Footer .footer_copy .social {
        margin-top: 15px;
    }
}


/*********************************\
            KIT DIGITAL
\*********************************/
body #Footer .footer_action {
    background: none;
}

body #Footer .footer_action .one {
    margin-bottom: 0;
}

body #Footer .footer_action .financiacion {
    display: grid;
    grid-template-columns: 1fr 1fr 5fr;
    gap: 20px;
    text-align: left;
    align-items: center;
}

body #Footer .footer_action .financiacion>div {
    line-height: 0;
}

body #Footer .footer_action .financiacion>div img {
    max-height: 50px;
    width: auto;
}

body #Footer .footer_action .financiacion>div p {
    font-size: 13px;
    line-height: 15px;
    margin-bottom: 0;
}

@media only screen and (max-width: 959px) {
    body #Footer .footer_action .financiacion {
        grid-template-columns: 1fr 1fr;
        text-align: center;
        gap: 5px;
    }

    body #Footer .footer_action .financiacion>div:last-child {
        grid-column: 1 / span 2;
    }
}

@media only screen and (max-width: 767px) {
    body #Footer .footer_action .financiacion>div img {
        max-height: unset;
        width: 100%;
    }
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    line-height: 1.2;
}

.text-primary {
    color: var(--primary);
}

:is(h1, h2, h3, h4, h5, h6) {
    strong {
        font-family: var(--sempre-celta-bold);
    }
}

.title-big {
    font-family: var(--sempre-celta-bold);
    font-size: 200%;
}

/*Cover*/
#section-valores-cover,
.section-valores-cover {
    --left-bg: 4% 3%;
    --right-bg: 96% 3%;
    --left-bottom-bg: 4% 97%;
    --right-bottom-bg: 96% 97%;
    --center-bg: 90% 97%;
    background-color: var(--primary);
    background-image:
        url("data:image/svg+xml,%3Csvg width='40' height='38' viewBox='0 0 40 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_4341_4710)'%3E%3Cpath d='M10 21.655C7.755 21.655 6.255 23.26 6.255 25.56C6.255 27.055 6.895 28.66 8.395 30.905C3.42 29.405 0 25.505 0 21.335C0 17.165 3.37 13.53 7.59 13.53C10.05 13.53 12.295 14.76 14.005 17.11L14.755 18.125C15.345 18.875 15.61 19.14 15.88 19.14C16.2 19.14 16.36 18.875 16.36 18.23L16.465 13.79C16.465 12.99 16.305 12.56 15.61 12.025C14.595 11.17 14.005 10.1 14.005 8.87C14.005 7.96 14.325 7.105 15.02 6.305C15.875 5.29 17.105 4.54 18.07 3.685C19.3 2.51 19.89 1.225 19.94 -0.00500488C19.995 1.225 20.58 2.51 21.81 3.685C22.77 4.54 24 5.29 24.86 6.305C25.555 7.105 25.875 7.96 25.875 8.87C25.875 10.1 25.285 11.17 24.27 12.025C23.575 12.56 23.415 12.985 23.415 13.79L23.52 18.23C23.52 18.87 23.68 19.14 24 19.14C24.265 19.14 24.535 18.875 25.125 18.125L25.875 17.11C27.585 14.755 29.83 13.53 32.29 13.53C36.515 13.53 39.88 17.005 39.88 21.335C39.88 25.665 36.46 29.41 31.485 30.905C32.98 28.66 33.625 27.055 33.625 25.56C33.625 23.26 32.13 21.655 29.88 21.655C26.405 21.655 23.945 24.97 23.945 29.675V37.96H15.925V29.675C15.925 24.97 13.465 21.655 9.99 21.655H10Z' fill='%2306131B'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4341_4710'%3E%3Crect width='39.885' height='37.96' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg width='39' height='39' viewBox='0 0 39 39' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 19.25C0 8.61 8.61 0 19.25 0C29.89 0 38.34 8.66 38.34 19.25C38.34 29.84 30 38.5 19.25 38.5C8.5 38.5 0 29.89 0 19.25ZM35.235 19.25C35.235 10.48 28.015 3.265 19.25 3.265C10.485 3.265 3.155 10.425 3.155 19.25C3.155 28.075 10.375 35.235 19.25 35.235C28.125 35.235 35.235 28.015 35.235 19.25ZM4.115 18.395C4.115 16.79 4.65 15.185 5.61 13.905C5.555 14.28 5.555 14.385 5.555 14.76C5.555 18.77 9.03 22.14 13.145 22.14C15.5 22.14 17.155 21.34 19.08 19.09C18.65 23.1 15.5 25.985 11.65 25.985C7.585 25.985 4.11 22.51 4.11 18.395H4.115ZM15.345 12.67C15.345 8.445 18.605 5.13 22.83 5.13C25.665 5.13 28.175 6.68 29.405 9.195C28.12 8.445 27 8.125 25.66 8.125C21.595 8.125 18.175 11.545 18.175 15.665C18.175 16.895 18.495 18.125 19.085 19.085C16.73 17.855 15.34 15.505 15.34 12.67H15.345ZM27.11 26.575C27.11 23.58 25.345 20.96 22.565 19.73C21.605 19.3 20.425 19.09 19.09 19.09C20.425 18.18 22.03 17.7 23.58 17.7C27.805 17.7 31.065 20.96 31.065 25.08C31.065 29.2 27.965 32.46 24.115 32.725C26.04 31.015 27.11 28.77 27.11 26.575Z' fill='%2306131B'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_4341_4707)'%3E%3Cpath d='M9.57 29.62C3.85 22.565 0.375 11.765 0 0H37.96L37.8 3.155H3.315C4.01 11.55 6.525 19.57 10.21 25.13C12.935 29.245 17.055 33.205 21.65 36.035L18.975 37.96C15.395 35.66 12.025 32.665 9.565 29.62H9.57ZM11.495 19.41C9.785 15.99 8.395 11.55 7.75 7.115H37.315L36.835 10.27H11.6C12.935 15.83 15.13 20.375 18.07 23.745C19.995 25.935 23.255 28.555 27.16 31.07L24.915 33.315C18.715 29.625 14.38 25.135 11.495 19.415V19.41Z' fill='%2306131B'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4341_4707'%3E%3Crect width='37.96' height='37.96' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg width='39' height='39' viewBox='0 0 39 39' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 19.25C0 8.61 8.61 0 19.25 0C29.89 0 38.34 8.66 38.34 19.25C38.34 29.84 30 38.5 19.25 38.5C8.5 38.5 0 29.89 0 19.25ZM35.235 19.25C35.235 10.48 28.015 3.265 19.25 3.265C10.485 3.265 3.155 10.425 3.155 19.25C3.155 28.075 10.375 35.235 19.25 35.235C28.125 35.235 35.235 28.015 35.235 19.25ZM4.115 18.395C4.115 16.79 4.65 15.185 5.61 13.905C5.555 14.28 5.555 14.385 5.555 14.76C5.555 18.77 9.03 22.14 13.145 22.14C15.5 22.14 17.155 21.34 19.08 19.09C18.65 23.1 15.5 25.985 11.65 25.985C7.585 25.985 4.11 22.51 4.11 18.395H4.115ZM15.345 12.67C15.345 8.445 18.605 5.13 22.83 5.13C25.665 5.13 28.175 6.68 29.405 9.195C28.12 8.445 27 8.125 25.66 8.125C21.595 8.125 18.175 11.545 18.175 15.665C18.175 16.895 18.495 18.125 19.085 19.085C16.73 17.855 15.34 15.505 15.34 12.67H15.345ZM27.11 26.575C27.11 23.58 25.345 20.96 22.565 19.73C21.605 19.3 20.425 19.09 19.09 19.09C20.425 18.18 22.03 17.7 23.58 17.7C27.805 17.7 31.065 20.96 31.065 25.08C31.065 29.2 27.965 32.46 24.115 32.725C26.04 31.015 27.11 28.77 27.11 26.575Z' fill='%2306131B'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg width='472' height='406' viewBox='0 0 472 406' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M128.279 291.599C142.499 281.219 133.469 281.219 121.499 280.469C115.439 280.049 106.499 279.869 99.1494 279.779C103.079 287.879 107.429 295.889 112.229 303.749C115.019 301.079 118.109 298.679 121.439 296.669L128.309 291.569L128.279 291.599Z' fill='%236BABE3'/%3E%3Cpath d='M318.45 132.3C308.82 128.37 295.32 134.1 303.72 150.33C312.87 168.21 307.86 180.81 289.74 182.61C275.01 184.05 254.85 181.08 244.74 146.7C235.98 117.15 249 105.3 273.84 85.4397H62.1001C61.8301 123.84 64.1701 170.34 76.3201 217.32C80.0101 219.42 83.1601 222.36 85.5001 225.87C87.6601 229.11 91.4401 230.88 95.3101 230.85C103.14 230.79 114.33 230.61 121.5 230.13C133.47 229.38 142.5 229.38 128.28 219L121.41 213.9C111.96 208.2 104.43 199.59 100.08 189.48C99.5101 188.07 98.9101 186.63 98.3401 185.13C97.5901 183.03 97.0801 180.87 96.7501 178.68C96.0901 175.26 95.7601 171.75 95.7601 168.15C95.7601 139.62 118.17 116.31 146.34 114.78C149.85 114.45 153.54 114.63 157.2 115.2C158.46 115.44 159.72 115.71 160.95 115.95C166.47 117.3 171.57 119.37 177.6 122.82L179.1 123.75C205.95 140.49 218.49 173.67 218.49 173.67C209.73 168.15 200.64 162.69 190.5 160.08C180.84 157.59 170.97 158.52 163.08 164.94C156.39 170.4 152.28 178.68 152.85 187.38C152.91 188.22 153 189.06 153.15 189.9C155.34 203.22 164.64 212.07 174.24 217.74C184.89 224.07 197.25 226.95 209.64 226.95H268.23V283.65H209.64C197.25 283.65 184.89 286.53 174.24 292.86C164.67 298.56 155.34 307.38 153.15 320.7C153 321.54 152.91 322.38 152.85 323.22C152.25 331.92 156.39 340.23 163.08 345.66C170.94 352.08 180.84 353.04 190.5 350.52C200.61 347.91 209.73 342.42 218.49 336.93C218.49 336.93 207.72 365.34 184.86 382.83C195.6 390.75 207.24 398.22 219.93 405.18C295.29 363.93 335.19 304.02 356.04 242.55H329.73C329.67 194.94 337.89 140.28 318.45 132.33' fill='%236BABE3'/%3E%3Cpath d='M62.73 213.66C55.71 213.66 49.35 216.33 44.49 220.59C36.72 226.77 31.95 235.89 26.1 242.07C19.23 249.27 10.62 255.21 0 255.27C10.62 255.36 19.23 261.3 26.1 268.47C31.95 274.65 36.72 283.77 44.49 289.98C49.35 294.24 55.68 296.91 62.73 296.91C72.24 296.91 80.64 292.08 85.53 284.7C87.69 281.46 91.47 279.69 95.34 279.72C96.54 279.72 97.83 279.72 99.15 279.75C89.16 259.29 81.75 238.23 76.32 217.26C72.3 214.95 67.68 213.63 62.7 213.63' fill='%236BABE3'/%3E%3Cpath d='M112.231 303.75C107.101 308.64 102.931 314.55 100.111 321.12C99.5405 322.53 98.9405 323.97 98.3705 325.47C97.6205 327.57 97.1105 329.73 96.7805 331.92C96.1205 335.34 95.7905 338.85 95.7905 342.45C95.7905 370.98 118.201 394.29 146.371 395.82C149.881 396.15 153.571 395.97 157.231 395.4C158.491 395.16 159.751 394.89 160.981 394.65C166.501 393.3 171.601 391.23 177.631 387.78L179.131 386.85C181.141 385.59 183.031 384.24 184.891 382.83C153.391 359.64 129.781 332.61 112.231 303.78' fill='%236BABE3'/%3E%3Cpath d='M405.57 56.8198C365.37 19.7398 356.7 -0.000244141 356.7 -0.000244141C356.7 -0.000244141 348.03 19.7398 307.86 56.8198C295.08 68.6398 283.59 77.6098 273.87 85.3798H377.82C378.12 130.68 374.82 187.2 356.07 242.49H383.67C383.73 194.88 375.51 140.22 394.95 132.27C404.58 128.34 418.08 134.07 409.68 150.3C400.53 168.18 405.54 180.78 423.66 182.58C438.39 184.02 458.55 181.05 468.66 146.67C480.84 105.54 450.96 98.7898 405.57 56.8198Z' fill='%236BABE3'/%3E%3C/svg%3E");
    background-position: var(--left-bg), var(--right-bg), var(--left-bottom-bg), var(--right-bottom-bg), var(--center-bg);
    background-repeat: no-repeat;
    background-blend-mode: normal, normal, normal, normal, screen;
    background-size: 1.5rem, 1.5rem, 1.5rem, 1.5rem, 60%;

    @media (width > 1024px) {
        background-size: 3rem, 3rem, 3rem, 3rem, auto;
    }

    &::after {
        --width: 30rem;
        --height: 60%;
        content: "";
        position: absolute;
        bottom: 0;
        left: 60%;
        width: var(--width);
        height: var(--height);
        background-color: rgba(255, 255, 255, 0.8);
        filter: blur(4rem);
        mix-blend-mode: overlay;
        z-index: 0;
    }
}

#section-programas-cover {
    &::after {
        --height: 10rem;
        content: "";
        position: absolute;
        display: block;
        height: var(--height);
        width: 1px;
        background-color: #fff;
        mix-blend-mode: difference;
        left: 50%;
        transform: translateX(-50%);
        top: calc(var(--height) * -1 /2);
    }
}

/*Shortcode: Proyectos Relacionados*/
.proyectos-relacionados__title {
    font-size: 14px;
    font-family: "Inter", sans-serif;
    font-weight: 500;
    margin: 0 0 1.5rem 0;
    color: var(--alternative-red);
    text-transform: uppercase;
    letter-spacing: 20%;
}

ul.proyectos-relacionados__list {
    --gap: 1.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap);
}

li.proyectos-relacionados__item {
    margin: 0 !important;
}

.proyectos-relacionados__item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.proyectos-relacionados__proyecto-title {
    font-size: clamp(16px, 1.5vw, 18px);
    font-family: "Inter", sans-serif;
    font-weight: 600;
    margin: 0 0 0.3rem 0;
}

.proyectos-relacionados__proyecto-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.proyectos-relacionados__proyecto-title a:hover {
    color: var(--primary);
}

.proyectos-relacionados__descripcion {
    color: var(--shadow);
    line-height: 1.6;
    margin: 0;
    font-size: clamp(14px, 1.2vw, 1rem);
}

.proyectos-relacionados .error,
.proyectos-relacionados .no-projects {
    padding: 1rem;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    color: #6c757d;
    margin: 1rem 0;
}

.proyectos-relacionados .error {
    background: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

/* Proyectos Relacionados - Orientación Horizontal */
.proyectos-relacionados--horizontal .proyectos-relacionados__grid {
    --columns: 1;
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    gap: 24px;
    margin-top: 1.5rem;

    @media (width >=1024px) {
        --columns: 3;
    }
}

.proyectos-relacionados--horizontal .proyectos-relacionados__proyecto-title {
    font-size: 1.1rem;
    margin: 0 0 8px;
}

.proyectos-relacionados--horizontal .proyectos-relacionados__descripcion {
    font-size: 0.9rem;
    margin: 0;
}

/* Gallery Carousel */
.c-gallery-carousel {
    --max-width: 100%;
    max-width: var(--max-width);
    width: 100%;
    margin: 0 auto;

    .glide__slides {
        list-style: none;
        margin: 0;
        padding: 0;
    }
}

.c-gallery-carousel__item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}

.c-gallery-carousel__link {
    display: block;
    text-decoration: none;
    transition: transform 0.3s ease;
}

.c-gallery-carousel__link:hover {
    transform: scale(1.02);
}

.c-gallery-carousel__image {
    width: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 16/11;
    object-fit: cover;
}

.glide__track {
    overflow: hidden;
}

.glide__slide {
    width: 100%;
    height: auto;
}

button.glide__arrow {
    --size: 48px;
    --distance: .8rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 1);
    color: var(--shadow);
    border: none;
    border-radius: 9999px;
    width: var(--size);
    height: var(--size);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 2;
}

button.glide__arrow:hover {
    background: var(--shadow);
    color: var(--primary);
}

button.glide__arrow--left {
    left: var(--distance);
}

button.glide__arrow--right {
    right: var(--distance);
}

.title-picas .title {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 12px;
}

.picas {
    min-width: 13rem;
    display: inline-block;
    width: auto;
    height: 5rem;
    background-image: url("data:image/svg+xml,%3Csvg width='461' height='123' viewBox='0 0 461 123' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M77.1593 122.119H51.342V95.4527C51.342 89.8247 50.0467 84.1967 47.1433 79.328C44.5527 74.9507 40.5326 70.7073 34.5026 69.7247C34.1155 69.6651 33.7284 69.6204 33.3413 69.5907C29.366 69.3227 25.614 71.1987 23.1126 74.236C20.2093 77.854 19.7626 82.3207 20.924 86.7427C22.0853 91.3433 24.5867 95.4973 27.088 99.4727C27.088 99.4727 11.9907 93.7553 4.35265 81.5167L3.95065 80.8467C2.38732 78.122 1.44932 75.7993 0.823984 73.2533C0.704872 72.6876 0.585761 72.1218 0.46665 71.556C0.19865 69.8587 0.139094 68.206 0.287983 66.598C0.957983 53.7787 11.5887 43.5947 24.5867 43.5947C26.2244 43.5947 27.8175 43.7436 29.366 44.0413C30.3784 44.1902 31.3611 44.4284 32.314 44.756C32.9989 45.024 33.654 45.292 34.2793 45.56C38.88 47.5253 42.8107 50.9647 45.4013 55.2527L47.724 58.3793C52.4587 64.856 52.4587 60.7467 52.816 55.2973C52.9947 52.0367 53.084 46.9447 53.1287 43.3713C53.1287 41.6293 52.3247 39.8873 50.8507 38.9047C47.5007 36.6713 45.312 32.8747 45.312 28.542C45.312 25.326 46.518 22.4673 48.4387 20.234C51.2527 16.7053 55.4067 14.5167 58.2207 11.8813C61.526 8.75467 64.206 4.824 64.2506 0C64.2953 4.824 66.9753 8.75467 70.2806 11.8813C73.0946 14.5167 77.2487 16.7053 80.0627 20.234C81.9833 22.4673 83.234 25.326 83.234 28.542C83.234 32.8747 81.0007 36.6713 77.6507 38.9047C76.1767 39.8873 75.3727 41.6293 75.3727 43.3713C75.4173 46.9447 75.5067 52.0367 75.73 55.2973C76.0427 60.7467 76.0426 64.856 80.7773 58.3793L83.1 55.2527C85.6906 50.9647 89.6213 47.5253 94.222 45.56C94.8473 45.292 95.5024 45.024 96.1873 44.756C97.1402 44.4284 98.1229 44.1902 99.1353 44.0413C100.684 43.7436 102.277 43.5947 103.915 43.5947C116.913 43.5947 127.543 53.7787 128.213 66.598C128.362 68.206 128.303 69.8587 128.035 71.556C127.916 72.1218 127.796 72.6876 127.677 73.2533C127.052 75.7993 126.114 78.122 124.551 80.8467L124.149 81.5167C116.511 93.7553 101.413 99.4727 101.413 99.4727C103.915 95.4973 106.416 91.3433 107.622 86.7427C108.739 82.3207 108.292 77.854 105.389 74.236C102.887 71.1987 99.1353 69.3227 95.16 69.5907C94.7729 69.6204 94.4007 69.6651 94.0433 69.7247C87.9687 70.7073 83.9487 74.9507 81.358 79.328C78.4547 84.1967 77.1593 89.8247 77.1593 95.4527V122.119Z' fill='black'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M243.159 122.119H217.342V95.4527C217.342 89.8247 216.047 84.1967 213.143 79.328C210.553 74.9507 206.533 70.7073 200.503 69.7247C200.116 69.6651 199.728 69.6204 199.341 69.5907C195.366 69.3227 191.614 71.1987 189.113 74.236C186.209 77.854 185.763 82.3207 186.924 86.7427C188.085 91.3433 190.587 95.4973 193.088 99.4727C193.088 99.4727 177.991 93.7553 170.353 81.5167L169.951 80.8467C168.387 78.122 167.449 75.7993 166.824 73.2533C166.705 72.6876 166.586 72.1218 166.467 71.556C166.199 69.8587 166.139 68.206 166.288 66.598C166.958 53.7787 177.589 43.5947 190.587 43.5947C192.224 43.5947 193.818 43.7436 195.366 44.0413C196.378 44.1902 197.361 44.4284 198.314 44.756C198.999 45.024 199.654 45.292 200.279 45.56C204.88 47.5253 208.811 50.9647 211.401 55.2527L213.724 58.3793C218.459 64.856 218.459 60.7467 218.816 55.2973C218.995 52.0367 219.084 46.9447 219.129 43.3713C219.129 41.6293 218.325 39.8873 216.851 38.9047C213.501 36.6713 211.312 32.8747 211.312 28.542C211.312 25.326 212.518 22.4673 214.439 20.234C217.253 16.7053 221.407 14.5167 224.221 11.8813C227.526 8.75467 230.206 4.824 230.251 0C230.295 4.824 232.975 8.75467 236.281 11.8813C239.095 14.5167 243.249 16.7053 246.063 20.234C247.983 22.4673 249.234 25.326 249.234 28.542C249.234 32.8747 247.001 36.6713 243.651 38.9047C242.177 39.8873 241.373 41.6293 241.373 43.3713C241.417 46.9447 241.507 52.0367 241.73 55.2973C242.043 60.7467 242.043 64.856 246.777 58.3793L249.1 55.2527C251.691 50.9647 255.621 47.5253 260.222 45.56C260.847 45.292 261.502 45.024 262.187 44.756C263.14 44.4284 264.123 44.1902 265.135 44.0413C266.684 43.7436 268.277 43.5947 269.915 43.5947C282.913 43.5947 293.543 53.7787 294.213 66.598C294.362 68.206 294.303 69.8587 294.035 71.556C293.916 72.1218 293.796 72.6876 293.677 73.2533C293.052 75.7993 292.114 78.122 290.551 80.8467L290.149 81.5167C282.511 93.7553 267.413 99.4727 267.413 99.4727C269.915 95.4973 272.416 91.3433 273.622 86.7427C274.739 82.3207 274.292 77.854 271.389 74.236C268.887 71.1987 265.135 69.3227 261.16 69.5907C260.773 69.6204 260.401 69.6651 260.043 69.7247C253.969 70.7073 249.949 74.9507 247.358 79.328C244.455 84.1967 243.159 89.8247 243.159 95.4527V122.119Z' fill='black'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M409.159 122.119H383.342V95.4527C383.342 89.8247 382.047 84.1967 379.143 79.328C376.553 74.9507 372.533 70.7073 366.503 69.7247C366.116 69.6651 365.728 69.6204 365.341 69.5907C361.366 69.3227 357.614 71.1987 355.113 74.236C352.209 77.854 351.763 82.3207 352.924 86.7427C354.085 91.3433 356.587 95.4973 359.088 99.4727C359.088 99.4727 343.991 93.7553 336.353 81.5167L335.951 80.8467C334.387 78.122 333.449 75.7993 332.824 73.2533C332.705 72.6876 332.586 72.1218 332.467 71.556C332.199 69.8587 332.139 68.206 332.288 66.598C332.958 53.7787 343.589 43.5947 356.587 43.5947C358.224 43.5947 359.818 43.7436 361.366 44.0413C362.378 44.1902 363.361 44.4284 364.314 44.756C364.999 45.024 365.654 45.292 366.279 45.56C370.88 47.5253 374.811 50.9647 377.401 55.2527L379.724 58.3793C384.459 64.856 384.459 60.7467 384.816 55.2973C384.995 52.0367 385.084 46.9447 385.129 43.3713C385.129 41.6293 384.325 39.8873 382.851 38.9047C379.501 36.6713 377.312 32.8747 377.312 28.542C377.312 25.326 378.518 22.4673 380.439 20.234C383.253 16.7053 387.407 14.5167 390.221 11.8813C393.526 8.75467 396.206 4.824 396.251 0C396.295 4.824 398.975 8.75467 402.281 11.8813C405.095 14.5167 409.249 16.7053 412.063 20.234C413.983 22.4673 415.234 25.326 415.234 28.542C415.234 32.8747 413.001 36.6713 409.651 38.9047C408.177 39.8873 407.373 41.6293 407.373 43.3713C407.417 46.9447 407.507 52.0367 407.73 55.2973C408.043 60.7467 408.043 64.856 412.777 58.3793L415.1 55.2527C417.691 50.9647 421.621 47.5253 426.222 45.56C426.847 45.292 427.502 45.024 428.187 44.756C429.14 44.4284 430.123 44.1902 431.135 44.0413C432.684 43.7436 434.277 43.5947 435.915 43.5947C448.913 43.5947 459.543 53.7787 460.213 66.598C460.362 68.206 460.303 69.8587 460.035 71.556C459.916 72.1218 459.796 72.6876 459.677 73.2533C459.052 75.7993 458.114 78.122 456.551 80.8467L456.149 81.5167C448.511 93.7553 433.413 99.4727 433.413 99.4727C435.915 95.4973 438.416 91.3433 439.622 86.7427C440.739 82.3207 440.292 77.854 437.389 74.236C434.887 71.1987 431.135 69.3227 427.16 69.5907C426.773 69.6204 426.401 69.6651 426.043 69.7247C419.969 70.7073 415.949 74.9507 413.358 79.328C410.455 84.1967 409.159 89.8247 409.159 95.4527V122.119Z' fill='black'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* Muffin elements */
.count-number {

    .title,
    .number {
        filter: drop-shadow(0rem 0rem 4rem rgba(0, 0, 0, 1));
        text-shadow: 0px 5px 1rem rgba(0, 0, 0, 1), 0px 5px 1rem rgba(0, 0, 0, 1), 0px 5px 1rem rgba(0, 0, 0, 1), 0px 5px 2rem rgba(0, 0, 0, 1);
    }
}

.feature_list {
    &[data-col="3"] {
        ul {
            --columns: 1;
            --gap: .5rem 1rem;
            grid-template-columns: repeat(var(--columns), 1fr);
            gap: var(--gap);

            @media (width > 1024px) {
                --columns: 3;
            }
        }
    }

    hr {
        display: none;
    }

    ul {
        display: grid;

        li {
            padding: 0;
            width: 100% !important;

            &:hover {
                background: none;
                color: inherit;

                .icon-check {
                    color: initial !important;
                }
            }

            .icon {
                --size: auto;
                width: var(--size);
                height: var(--size);
            }
        }
    }
}



/* Single post */
.single-post {
    #Content {
        &::before {
            --height: 70lvh;
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: var(--height);
            background-color: var(--primary);
            z-index: -1;

            @media (width > 1024px) {
                --height: 90vh;
            }
        }
    }

    .column_post_content {
        iframe {
            width: 100%;
            height: auto;
            aspect-ratio: 16/9;
            object-fit: cover;
            display: block;
        }

        p:not(:has(iframe, img)) {
            --max-width: 840px;
            width: 100%;
            max-width: var(--max-width);
            margin: 0 auto 2rem auto;
        }

        :is(p, li) {
            font-size: clamp(1rem, 1.2vw, 1.2rem);
            line-height: 1.8;
            margin-bottom: 2rem;

            &:first-child {
                margin-top: 0;
            }
        }
    }
}

/*Footer*/
#social-footer {
    ul {
        --gap: 1rem;
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: var(--gap);
    }

    a {
        --fs: 1.3rem;
        font-size: var(--fs);
        display: flex;
    }
}

/* ========================================
   MEMBERS GRID STYLES
   ======================================== */

.members-grid {
    --gap: 2rem;
    display: flex;
    flex-direction: column;
    gap: var(--gap);
}

.members-section {
    --section-gap: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: var(--section-gap);

    &:not(:first-child) {
        --pt: 1rem;
        border-top: 4px solid var(--primary, #333);
        padding-top: var(--pt);
        margin-top: var(--mt);

        @media (width > 1024px) {
            --pt: 3rem;
            --mt: 1.5rem;
        }
    }
}

.members-section__title {
    --fs: 2.4rem;
    font-size: var(--fs);
    font-weight: 700;
    color: var(--color-primary, #333);
    margin: 0;
    text-align: center;
    position: relative;
    padding-bottom: 1rem;
}

.members-section__title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background-color: var(--color-accent, #007cba);
}

.members-section__grid {
    --grid-gap: 1.5rem;
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--grid-gap);
    align-items: start;
}

.members-card {
    --card-padding: 1.5rem;
    --card-radius: 0;
    --card-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

    background: #fff;
    border-radius: var(--card-radius);
    border: 1px solid color-mix(in srgb, var(--shadow) 10%, #fff);
    padding: var(--card-padding);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    position: relative;
}

.members-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.members-card__logo-container,
.members-card__logo-link {
    display: block;
    width: 100%;
    max-width: 120px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 4px;
}

.members-card__logo {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.members-card__logo-link:hover .members-card__logo {
    transform: scale(1.05);
}

/* Logo type variations */
.members__logo--monochrome {
    filter: grayscale(100%);
    transition: filter 0.3s ease;
}

.members__logo--white {
    background: #fff;
    padding: 0.5rem;
    border-radius: 4px;
}

.members-card:hover .members__logo--monochrome {
    filter: grayscale(0%);
}

.members-card__content {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
}

.members-card__title {
    --fs: 1.4rem;
    font-size: var(--fs);
    font-weight: 600;
    color: var(--color-primary, #333);
    margin: 0;
    line-height: 1.3;
}

.members-card__excerpt {
    --fs: 1.2rem;
    font-size: var(--fs);
    color: var(--color-text, #666);
    margin: 0;
    line-height: 1.4;
}

.members-card__email {
    --fs: 1.1rem;
    font-size: var(--fs);
    color: var(--color-accent, #007cba);
    text-decoration: none;
    transition: color 0.3s ease;
}

.members-card__email:hover {
    color: var(--color-accent-dark, #005a87);
    text-decoration: underline;
}

.members__no-content {
    --fs: 1.4rem;
    font-size: var(--fs);
    text-align: center;
    color: var(--color-text, #666);
    padding: 2rem;
    background: #f8f9fa;
    border-radius: 8px;
    margin: 2rem 0;
}

/* Responsive Grid */
@media (min-width: 768px) {
    .members-section__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .members-section__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 1440px) {
    .members-section__grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

/* Tablet adjustments */
@media (min-width: 768px) and (max-width: 1023px) {
    .members-section__title {
        --fs: 2.8rem;
    }

    .members-card__title {
        --fs: 1.5rem;
    }
}

/* Desktop adjustments */
@media (min-width: 1024px) {
    .members-section__title {
        --fs: 3.2rem;
    }

    .members-card {
        --card-padding: 2rem;
    }

    .members-card__title {
        --fs: 1.6rem;
    }

    .members-card__excerpt {
        --fs: 1.3rem;
    }
}

/* ========================================
   CONTACT FORM 7 STYLES
   ======================================== */

.wpcf7 {
    --cf-gap: 1rem;
    --cf-label: #0b1a24;
    --cf-border: #d7dee4;
    --cf-border-focus: var(--primary);
    --cf-bg: #fff;
    --cf-bg-focus: #fff;
    --cf-text: #0f172a;
    --cf-placeholder: #94a3b8;
    --cf-error: #b91c1c;
    --cf-radius: 0;
}

.wpcf7 form p {
    margin: 0 0 var(--cf-gap) 0;
}

.wpcf7 form .form-row,
.wpcf7 form .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: var(--cf-gap);
}

.wpcf7 label {
    display: block;
    font-weight: 600;
    font-size: .95rem;
    margin: 0 0 .4rem 0;
    color: var(--cf-label);
}

.wpcf7 .required:after {
    content: " *";
    color: var(--alternative-red);
    font-weight: 700;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 input[type="date"],
.wpcf7 input[type="password"],
.wpcf7 select,
.wpcf7 textarea {
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    padding: .9rem 1rem;
    border: 1px solid var(--cf-border);
    border-radius: var(--cf-radius);
    background: var(--cf-bg);
    color: var(--cf-text);
    line-height: 1.4;
    box-shadow: none;
    outline: none;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.wpcf7 textarea {
    min-height: 140px;
    resize: vertical;
}

.wpcf7 ::placeholder {
    color: var(--cf-placeholder);
    opacity: 1;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 input[type="url"]:focus,
.wpcf7 input[type="number"]:focus,
.wpcf7 input[type="date"]:focus,
.wpcf7 input[type="password"]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
    border-color: var(--cf-border-focus);
    background: var(--cf-bg-focus);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 15%, transparent);
}

/* Submit button */
.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .9rem 1.25rem;
    border: 0;
    border-radius: 0;
    background: #fff;
    color: var(--shadow);
    font-weight: 700;
    font-family: var(--sempre-celta-semibold);
    box-shadow: var(--box-shadow-red);
    cursor: pointer;
    transition: transform .15s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.wpcf7 input[type="submit"]:hover,
.wpcf7 button[type="submit"]:hover {
    transform: translateY(-1px);
    background: var(--primary);
    color: #fff;
    box-shadow: 4px 4px 0 0 color-mix(in srgb, var(--shadow) 20%, var(--primary));
}

.wpcf7 input[type="submit"]:active,
.wpcf7 button[type="submit"]:active {
    transform: translateY(0);
}

/* Checkboxes / Radios */
.wpcf7 .wpcf7-list-item {
    margin: 0 .75rem .5rem 0;
}

.wpcf7 .wpcf7-list-item label {
    font-weight: 500;
    display: inline-flex;
    gap: .5rem;
    align-items: center;
}

.wpcf7 input[type="checkbox"],
.wpcf7 input[type="radio"] {
    accent-color: var(--primary);
    width: 1rem;
    height: 1rem;
}

/* Error & validation messages */
.wpcf7 .wpcf7-not-valid-tip {
    font-size: .85rem;
    color: var(--cf-error);
    margin-top: .35rem;
}

.wpcf7 form.invalid .wpcf7-response-output {
    border-color: var(--cf-error) !important;
    background: #fef2f2;
    color: #7f1d1d;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #16a34a !important;
    background: #ecfdf5;
    color: #065f46;
}

/* Layout helpers */
.wpcf7 .grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--cf-gap);
}

@media (max-width: 768px) {
    .wpcf7 .grid-2 {
        grid-template-columns: 1fr;
    }
}

.form-legal {
    font-size: 10px;
    line-height: 1.2;
}

/* Complianz styles */
#cmplz-document {
    margin: 0 auto;
    max-width: none;
}

/* ========================================
   PATRONATO GRID STYLES
   ======================================== */

.patronato-grid {
    --gap: 2rem;
    display: block;
    margin: 2rem 0;
}

.patronato-grid__list {
    --columns: 3;
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    gap: 24px;
}

.patronato-grid__list--cols-1 {
    --columns: 1;
}

.patronato-grid__list--cols-2 {
    --columns: 2;
}

.patronato-grid__list--cols-3 {
    --columns: 3;
}

.patronato-grid__list--cols-4 {
    --columns: 4;
}

@media (max-width: 1024px) {
    .patronato-grid__list {
        --columns: 2;
    }
}

@media (max-width: 640px) {
    .patronato-grid__list {
        --columns: 1;
    }
}

.patronato-card {
    --radius: 0;
    background: #fff;
    border-radius: var(--radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
    transition: transform .25s ease, box-shadow .25s ease;
}

.patronato-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);

    .patronato-card__image {
        transform: scale(1.1);
    }
}

.patronato-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
    background: #000;
}

.patronato-card__image {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block;
    transform: scale(1.02);
    transition: transform .3s ease;
}

.patronato-card__overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem 1rem 1.25rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .65) 65%, rgba(0, 0, 0, .85) 100%);
    color: #fff;
}

.patronato-card__title {
    font-family: var(--sempre-celta-semibold);
    font-size: clamp(1rem, 1.6vw, 1.5rem);
    margin: 0;
    color: #fff;
}

.patronato-card__role {
    font-size: 1rem;
    color: color-mix(in srgb, #fff 85%, #000);
    margin: .15rem 0 0;
}