/**
Theme Name: VEO Astra Child
Author: Kebes
Author URI: http://www.kebes.es
Description: VEO Astra Child
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: veo-astra-child
Template: astra
*/
/*global*/
@media (width <=921px) {}

@media (width <=768px) {}

@media (width <=544px) {}

.wp-block-pullquote {
    padding: 0;
}

blockquote {
    border-color: rgb(229 0 109);
}

.wp-block-pullquote blockquote::before {
    font-size: 3rem;
    display: none;
}

.wp-block-pullquote p {
    font-size: 1.2rem;
    margin-top: 0;
    margin-bottom: 0.5rem;
}

.wp-block-pullquote cite,
.wp-block-pullquote footer {
    font-size: 1rem;
}

.rounded-top {
    border-top-left-radius: 100px;
    border-top-right-radius: 100px;
    margin-top: -100px;
    padding-top: 150px;
    overflow: hidden;
    z-index: 2;
}

.wp-block-cover:has(+ .rounded-top),
.rounded-top:has(+ .rounded-top) {
    padding-bottom: 240px;
}

.rounded-top.wp-block-image {
    padding-top: 0;
}

.rounded-bottom {
    border-bottom-left-radius: 100px;
    border-bottom-right-radius: 100px;
    padding-bottom: 150px;
    overflow: hidden;
    margin-bottom: -100px !important;
    z-index: 2;
}

.rounded-bottom + .wp-block-cover,
.rounded-bottom + .wp-block-group {
    padding-top: 220px !important;
}

.rounded-top.rounded-bottom {
    z-index: 3;
}

@media (width <=1300px) {
    .rounded-top {
        border-top-left-radius: 50px;
        border-top-right-radius: 50px;
        margin-top: -50px;
    }

    .rounded-bottom {
        border-bottom-left-radius: 50px;
        border-bottom-right-radius: 50px;
        margin-bottom: -50px !important;
    }

    .rounded-top + .wp-block-cover,
    .rounded-top + .wp-block-group {
        padding-top: 150px !important;
    }
}

/*header*/
.ast-primary-header-bar.ast-primary-header.main-header-bar {
    width: 100%;
    transition: all 0.3s ease;
}

.ast-primary-header-bar.ast-primary-header.main-header-bar.site-header-focus-item.ast-sticky-active.ast-sticky-shrunk.ast-header-sticked {
    width: 900px;
    max-width: calc(100% - 20px) !important;
    margin-top: 26px;
    border-radius: 100px;
}

@media (width <=900px) {
    .ast-primary-header-bar.ast-primary-header.main-header-bar.site-header-focus-item.ast-sticky-active.ast-sticky-shrunk.ast-header-sticked {
        margin-top: 10px;
        margin-left: 10px;
        margin-right: 10px;
    }
}

.ast-sticky-main-shrink .ast-sticky-shrunk.main-header-bar .ast-site-identity img {
    -webkit-filter: none;
    filter: none;
}

#ast-desktop-header .wpml-ls-menu-item ul.sub-menu {
    max-width: 80px;
    border-bottom-left-radius: 20px;
    border: 0;
    border-bottom-right-radius: 20px;
}

.ast-theme-transparent-header .ast-lswitcher-item-header {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
}

.ast-theme-transparent-header .ast-primary-header-bar:not(.ast-header-sticked) .ast-lswitcher-item-header {
    color: #FFF;
}

/*home*/
#home-hero {
    padding-top: 90px;
    padding-bottom: 30vh;
}

#home-hero h1 {
    font-size: clamp(1.6rem, 4.507vw + 0.473rem, 2.8rem);
}

#home-hero > div.wp-block-cover__image-background {
    z-index: 2;
    background-size: 80vw;
    background-position: 50% calc(100% - 100px) !important;
}

@media (width <=1300px) {
    #home-hero > div.wp-block-cover__image-background {
        background-position: 50% calc(100% - 50px) !important;
    }
}

#home-hero > div.wp-block-cover__inner-container {
    z-index: 3;
}

#quienes-somos-eres-mucho h2,
#home-quienes-somos > h2,
#quienes-somos-hero h1 {
    line-height: 1.2em;
    background: linear-gradient(0deg, #EF7D00 -33.19%, #E5006D 99.52%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

#quienes-somos-eres-mucho h2,
#home-quienes-somos > h2 {
    font-weight: 400;
    font-family: 'IBM Plex Serif', serif;
}

#quienes-somos-hero h1 {
    font-size: 2.8rem;
}

@media (max-width: 921px) {
    #quienes-somos-hero h1 {
        font-size: 1.8rem;
    }
}

#home-nuestra-esencia > div {
    -moz-column-gap: 7%;
    column-gap: 7%;
}

@media (max-width: 921px) {
    #home-nuestra-esencia > div {
        flex-direction: column;
        row-gap: 50px;
    }
}

#home-esencia-columnas {
    gap: 17px;
}

#home-esencia-columnas p {
    line-height: 1.2em;
    font-size: 16px;
}

#home-esencia-columnas > div {
    border-radius: 100px;
    padding: 100px 40px;
}

#home-persona-increible figure > img {
    border-radius: 80px;
    border: 5px solid #005B38;
}

#home-persona-increible > div > div > p.has-ast-global-color-7-color {
    font-size: clamp(1.5rem, 1.1039rem + 1.2676vw, 2.625rem) !important;
}

#home-birds p {
    line-height: 1em;
}

#home-birds strong {
    font-size: 0.5em;
}

@media (width <=1600px) {
    #home-esencia-columnas > div {
        border-radius: 50px;
        padding: 50px 20px;
    }

    #home-esencia-columnas h3 {
        font-size: 1.2rem;
    }
}

/*timeline  */
.cc-timeline-container {
    position: relative;
    max-width: 1000px;
    margin: 50px auto;
    padding: 20px 0;
    /* Asegúrate de tener esta fuente o similar */
}

.cc-timeline-line {
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 6px;
    background: var(--ast-global-color-0);
    transform: translateX(-50%);
    z-index: 0;
}

.cc-heart-icon {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 24px;
    color: var(--ast-global-color-0);
    background: #fff;
    padding: 5px;
    z-index: 2;
    line-height: 1;
    width: 28px;
    height: 50px;
    background-image: url('data:image/svg+xml,<svg width="28" height="69" viewBox="0 0 28 69" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.2525 0C16.7748 0 15.2888 0.375091 14.021 1.09193C12.6693 0.366755 11.2336 0 9.73913 0C4.37421 0 0 4.64279 0 10.3358C0 14.7702 2.03178 19.163 5.43208 22.0803C5.43208 22.0803 7.61499 24.1725 7.8081 24.3809C9.17661 25.8479 11.0573 27.8567 11.0573 36.2338V69H16.9343V36.2338C16.9343 26.3897 14.5583 23.0139 12.1151 20.4133C11.964 20.2549 8.78201 17.4792 8.78201 17.4792C6.75862 15.7371 5.6084 13.1282 5.6084 10.3442C5.6084 7.8769 7.46387 5.87642 9.73913 5.87642C11.1748 5.87642 12.4846 6.66828 13.2486 8.00193C13.5088 8.45204 13.7943 8.54373 13.9958 8.54373C14.1973 8.54373 14.4744 8.44371 14.743 8.00193C15.507 6.67661 16.8168 5.87642 18.2525 5.87642C20.5277 5.87642 22.3832 7.88524 22.3832 10.3442C22.3832 13.1282 21.2414 15.7121 19.2348 17.4542L19.1088 17.5792L14.785 21.3135C14.785 21.3135 16.4642 22.8055 17.4045 26.0896L22.5679 22.0887L22.7442 21.9303C26.0354 19.0129 27.9916 14.7036 27.9916 10.3442C27.9916 4.65112 23.6174 0.00833535 18.2441 0.00833535L18.2525 0Z" fill="%23E5006D"/></svg>');
}

.cc-dot-end {
    width: 16px;
    height: 16px;
    background: #fff;
    border: 4px solid var(--ast-global-color-0);
    border-radius: 50%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    box-shadow: 0 0 0 4px #fff;
}

.cc-timeline-item {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 60px;
    position: relative;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease-out;
}

.cc-timeline-item.visible,
.cc-final-block.visible {
    opacity: 1;
    transform: translateY(0);
}

.cc-content {
    width: 45%;
    padding: 20px;
}

.cc-content.left {
    text-align: right;
    margin-right: auto;
    padding-right: 40px;
}

.cc-content.right {
    text-align: left;
    margin-left: auto;
    padding-left: 40px;
}

.cc-final-block {
    text-align: center;
    max-width: 600px;
    margin: 40px auto 80px auto;
    padding: 20px;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease-out;
}

.cc-label {
    color: var(--ast-global-color-0);
    margin-bottom: 5px;
}

.cc-timeline-container h3,
.cc-final-block h3 {
    color: var(--ast-global-color-0);
}

.cc-timeline-container p,
.cc-final-block p {
    margin: 0;
}

.cc-dot {
    width: 16px;
    height: 16px;
    background: #fff;
    border: 4px solid var(--ast-global-color-0);
    border-radius: 50%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    box-shadow: 0 0 0 4px #fff;
}

.cc-final-block .wp-block-buttons {
    margin-top: 40px;
}

@media (max-width: 768px) {
    .cc-timeline-line {
        left: 20px;
    }

    .cc-heart-icon {
        left: 3px;
    }

    .cc-timeline-item {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 40px;
    }

    .cc-dot {
        left: 20px;
    }

    .cc-content {
        width: 100%;
        padding-left: 50px !important;
        padding-right: 0 !important;
        text-align: left !important;
    }

    .cc-final-block {
        text-align: left;
        margin-top: 20px;
        padding-left: 50px;
        padding-right: 0;
    }
}

/*actividades*/
#home-actividades > div {
    -moz-column-gap: 7%;
    column-gap: 7%;
}

.cc-actividades-wrapper {
    width: 100%;
    font-family: 'Poppins', sans-serif;
}

.cc-actividad-row {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    padding: 30px 0;
    border-bottom: 1px solid var(--ast-global-color-2);
    gap: 20px;
}

.cc-col-tipo {
    width: 25%;
    color: var(--ast-global-color-2);
    font-size: 16px;
    font-weight: 400;
}

.cc-col-fecha {
    width: 20%;
    color: var(--ast-global-color-2);
    font-weight: 700;
    font-size: 16px;
}

.cc-col-info {
    width: 55%;
}

.cc-titulo {
    margin: 0 0 10px 0;
    line-height: 1.2;
}

.cc-titulo a {
    color: var(--ast-global-color-2);
    text-decoration: none !important;
}

.cc-titulo a:hover {
    color: var(--ast-global-color-2);
}

.cc-ver-mas {
    display: inline-block;
    color: var(--ast-global-color-2);
    font-size: 16px;
    font-weight: 600;
    text-decoration: none !important;
    margin-top: 5px;
}

.cc-ver-mas:hover {
    text-decoration: underline;
}

/* --- Responsive (Móvil) --- */
@media (max-width: 768px) {
    .cc-actividad-row {
        flex-direction: column;
    }

    .cc-col-tipo,
    .cc-col-fecha,
    .cc-col-info {
        width: 100%;
        margin-bottom: 10px;
    }

    .cc-col-fecha {
        margin-bottom: 15px;
    }
}

/*blog home*/
.wp-block-latest-posts__featured-image {
    border-radius: 50px;
    overflow: hidden;
    order: 1;
}

a.wp-block-latest-posts__post-title {
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: bold;
    color: var(--ast-global-color-2);
    order: 3;
    margin-top: 0;
}

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date {
    font-size: 14px !important;
    color: var(--ast-global-color-2);
    font-family: 'Poppins', sans-serif;
    order: 2;
    margin-bottom: 0 !important;
}

a.wp-block-latest-posts__read-more {
    color: var(--ast-global-color-2);
    font-size: 16px !important;
    font-family: 'Poppins', sans-serif;
    font-weight: bold;
    display: block;
    margin-top: 2em;
    text-decoration: none !important;
}

.wp-block-latest-posts__post-excerpt,
.wp-block-latest-posts__post-full-content {
    font-size: 18px;
    order: 10;
}

.wp-block-latest-posts.is-grid li img {
    transition: all .3s ease-in-out;
}

.wp-block-latest-posts.is-grid li:hover img {
    transform: scale(1.1);
}

.wp-block-latest-posts.wp-block-latest-posts__list li {
    display: flex;
    flex-direction: column;
}

/*blog*/
.ast-blog-layout-4-grid .ast-article-inner,
.ast-blog-layout-5-grid .ast-article-inner,
.ast-blog-layout-6-grid .ast-article-inner {
    box-shadow: none;
    padding: 0;
}

.post-thumb-img-content.post-thumb {
    border-radius: 50px;
}

.ast-blog-layout-4-grid .ast-article-inner .wp-post-image {
    -o-object-fit: cover;
    object-fit: cover;
}

.entry-meta,
.entry-meta *,
.read-more a {
    color: var(--ast-global-color-2);
    font-family: 'Poppins', sans-serif;
}

.entry-meta,
.entry-meta * {
    font-weight: normal;
}

.entry-header {
    margin-bottom: 0.2em;
}

.read-more a {
    font-size: 16px;
}

/*quienes somos*/
#quienes-somos-hero {
    min-height: calc(100vh - 80px) !important;
}

#quienes-somos-trabajamos {
    padding-bottom: 100px;
}

.wp-block-accordion-heading__toggle-title {
    font-size: 24px;
}

.wp-block-accordion-heading__toggle {
    box-shadow: none;
    border-radius: 0;
}

.wp-block-accordion-heading__toggle .wp-block-accordion-heading__toggle-title,
.wp-block-accordion-item > .wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon {
    color: #302B6B;
}

.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
    text-decoration: none;
    color: var(--ast-global-color-0);
}

.wp-block-accordion-item > .wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon:hover {
    color: var(--ast-global-color-0);
}

/*footer*/
.site-above-footer-wrap[data-section="section-above-footer-builder"] {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    background-size: cover;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"],
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
    position: relative;
    z-index: 3;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    border-top-left-radius: 100px;
    border-top-right-radius: 100px;
    margin-top: -100px;
}

.site-below-footer-wrap[data-section="section-below-footer-builder"] {
    font-family: 'Poppins', sans-serif;
}

#astra-footer-menu {
    -moz-column-gap: 30px;
    column-gap: 30px;
}

.ast-footer-copyright a {
    color: #FFF;
}

@media (max-width: 768px) {
    .site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
        border-top-left-radius: 50px;
        border-top-right-radius: 50px;
    }

    #block-18 > div {
        gap: 0;
    }

    #block-18 > div > div:nth-child(1) {
        margin-bottom: 0;
    }
}

/*contacto*/
label,
legend {
    font-size: 16px;
    color: var(--ast-global-color-2);
    font-weight: bold;
}

input[type="text"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type=reset],
input[type=tel],
input[type=date],
select,
textarea {
    border-radius: 20px;
    border-color: var(--ast-global-color-2);
}

/*legal*/
#legal h1 {
    font-size: 2rem;
}

#legal h2 {
    font-size: 1.6em;
    color: var(--ast-global-color-0);
}

#legal h3 {
    font-size: 1.2em;
}