/*
Theme Name:     Ashington Theme
Theme URI:      https://test.ashington.explotacionweb.es/
Description:    Un tema child de Porto
Author:         Explotación Web
Author URI:     https://www.explotacionweb.es/
Template:       porto
Version:        1.0.0
*/


:root {
    --font-family-headers: 'Archivo Narrow', sans-serif !important;
    --font-family-text: 'Inter', sans-serif !important;
    --clear-color: #fff;
    --border-radius-web: 12px;
}

h1,h1>*, h2,h2>*, h3,h3>*, h4,h4>*, h5,h5>*, h6,h6>*{
    font-family: var(--font-family-headers)!important;
    font-weight: 600 !important;
    letter-spacing: 0px !important;
}
p, span{
    font-family: var(--font-family-text)!important;
    font-weight: 400 !important;
    letter-spacing: 0px !important;
}
b, strong{
    font-family: var(--font-family-text)!important;
    font-weight: 600 !important;
    letter-spacing: 0px !important;
}

#header #menu-main-menu .menu-item .desktop-link-hide{
    display: block!important;
}


#header .main-menu > li.menu-item > a{ 
    font-family: var(--font-family-headers) !important;
    text-transform: uppercase; 
    letter-spacing: 0px !important;
    padding: 20px !important;
}

.banner-home-mile{ max-height: 670px; }

.header-wrapper { box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.1); z-index: 99; }

.cta-menu a{    
    background-color: var(--e-global-color-secondary);
    color: var(--clear-color) !important;
    -webkit-transition: background-color 500ms linear!important;
    -ms-transition: background-color 500ms linear!important;
    transition: background-color 500ms linear !important;
}
.cta-menu a::before{   
    background-color: transparent!important;
}
.cta-menu a:hover{    
    background-color: var(--porto-primary-color) !important;
}

#header .main-menu > li.cta-menu.active > a {
    background-color: var(--e-global-color-secondary) !important;
}


/* PADDINGS SECCIONES */
.padding-section-first  {   padding: 160px 0px 80px 0px !important; }
.padding-section        {   padding: 80px 0px 80px 0px !important; }
.padding-section-middle {   padding: 40px 0px 0px 0px !important; }
.padding-section-last   {   padding: 80px 0px 160px 0px !important; }




/* CABECERAS PERSONALIZADAS */
.page-top {
    background-color: #e1e1e1;
    background-image: none !important;
    height: 250px;
    display: flex;
    align-items: center;
    background-position: center;
    overflow: hidden;
}
.breadcrumbs-background {
    width: 100%;
    height: 100%;
    position: absolute;
}
.breadcrumbs-background>img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.breadcrumbs-background::after, #home-hero::after{
    content: "";
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.7) 35%, rgba(255, 255, 255, 0) 100%);
}
#content .page .page-image.single {
 display: none;
}


@media (min-width: 992px) {
    .fluid-col-lg-5 .fluid-col {
        width: 44.6vw;
        left: 0;
        transform: none;
    }
}
.mb-0 { margin-bottom: 0 !important; }
.h-100 { height: 100% !important; }
.position-relative { position: relative !important; }


.portfolio-parallax{ display: none!important; }

.listado-member .thumb-info-caption-text{
    display: none !important;
}



/* PORTFOLIO*/
.portfolio-image-grid img {
    min-height: 100%;
    object-fit: cover;
}

.squared img {
    aspect-ratio: 1/1;
}

/* CUSTOM TEMPLATE PORTFOLIO */
#portfolio-kpis {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

#portfolio-kpis .kpi-data {
    align-items: center;
    justify-content: center;
}

#portfolio-kpis .kpi-data>.circle {
    background-color: #C4D2CA;
    border-radius: 100%;
    padding: 1.5rem 1rem;
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 31px;
}


/* NOVES CSS de les KPIS */

#portfolio-kpis .col_kpi{
    padding: 30px 15px;
    text-align: left;
    justify-content: center;
    border-radius: var(--border-radius-web);
}
.portfolio-grid .col_kpi{
    max-width: calc(25% - 1rem) !important;
    flex-basis: calc(25% - 1rem) !important;
    display: flex;
    flex-direction: column;
    /*justify-content: space-between !important;*/
    justify-content: unset !important;
}
#portfolio-kpis .col_kpi picture{
    height: auto !important;
    justify-content: flex-start;
}
.portfolio-grid .col_kpi img {
    width: 90px;
    border-radius: 0px !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
}
#portfolio-kpis .col_kpi .kpi-data {
    align-items: end;
    justify-content: center;
    position: relative !important;
    padding: 0px;
    flex-direction: column;
    background: transparent;
}
#portfolio-kpis .col_kpi .kpi-data span {
    font-size: 16px;
    line-height: 25px;
    color:  var(--porto-primary-color);
}

#portfolio-kpis .col_kpi .kpi-data .kpi-title {
    font-size: 20px;
    line-height: 30px;
    color: var(--porto-primary-color);
    font-weight: 800 !important;
    margin-top: 10px;
    width: 100%;
}


#portfolio-kpis .col_kpi .kpi-data>.circle{
    font-size: 30px;
    font-weight: 600 !important;
    background-color: var(--porto-primary-color-inverse);
    border-radius: 100%;
    padding: 1.5rem 1rem;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* MOBILE */
@media (max-width: 768px) {
    .portfolio-grid .col_kpi{
        max-width: calc(100% - 1rem) !important;
        flex-basis: calc(100% - 1rem) !important;
    }
}











.page-wrapper {
    overflow: hidden;
}
/* END CUSTOM TEMPLATE PORTFOLIO */

/* CUSTOM TEMPLATE PORTFOLIO ASSETS */
.portfolio-grid .asset-data {
    flex-direction: column;
}

.portfolio-grid .asset-data .description {
    display: none;
}

.asset.show {
    display: block;
}

.asset.hidden {
    display: none;
}

.assets-grid {
    display: flex;
    gap: 30px;
    padding: 0px;
    flex-wrap: wrap;
    justify-content: left;
}

.asset-filters {
    display: flex;
    justify-content: left;
    margin-bottom: 3rem;
}

.mobile-filters {
    display: none;
}

.filter-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 30px;
    background: #fff;
    color: var(--e-global-color-primary);
    border: none !important;
}

.filter-btn.active {
    background: var(--e-global-color-secondary);
    color: #000000;
}

.asset-data {
    cursor: pointer;
    justify-content: end;
}

.portfolio-grid .asset-data .title {
    font-weight: 600;
}
.portfolio-grid .asset-data .description.show {
    display: block;
}

.asset-data .description,
.asset-data .description>p,
.asset-data .location>p,
.asset-data .location {
    font-size: 14px;
    color: white;
}

.asset-data.open {
    height: 100%;
}

.portfolio-grid .asset-data.open {
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(63, 69, 55,0.3) 100%);
}
/* END CUSTOM TEMPLATE PORTFOLIO ASSETS */

/* SHARED BETWEEN CUSTOM TEMPLATE GRIDS */

.portfolio-grid {
    width: calc(var(--porto-container-width) - var(--porto-grid-gutter-width));
}

.portfolio-grid {
    padding: 0px;
    justify-content: center;
} 

.portfolio-grid .col {
    padding: 0;
    aspect-ratio: 1/1;
    max-width: calc(33% - 1rem);
    flex-basis: calc(33% - 1rem);
}

.portfolio-grid .col picture {
    display: flex;
    height: 100%;
    align-items: end;
    justify-content: center;
    position: relative;
}

.portfolio-grid .col img{
    border-radius: 0px;
    object-fit: cover;
    aspect-ratio: 1/1;
}

.portfolio-grid .kpi-data,
.portfolio-grid .asset-data {
    display: flex;
    position: absolute;
    color: white;
    padding: 1rem;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(84,189,168,0) 100%);
    width: 100%;
    font-size: 24px;
    gap: 0.5rem 1rem;
    border-radius: 0px;
}

@media (max-width: 1024px) {

    #portfolio-assets {
        padding-bottom: 50px;
    }

    #portfolio-kpis, .assets-grid {
        justify-content: center;
    }

    .portfolio-grid, .asset-filters {
        flex-direction: column;
        max-width: 100%;
    }

    .portfolio-grid .col {
        max-width: initial;
        flex-basis: 100%;
    }

    #portfolio-kpis .kpi-data>.circle {
        width: 80px;
        height: 80px;
    }

    .asset-filters {
        max-height: 56px;
        justify-content: start;
        overflow: hidden;
        transition: max-height 0.5s ease-in-out;
    }

    .asset-filters.open {
        max-height: 999px;
    }

    .mobile-filters {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 15px 35px;
        background: #d3ded7;
        color: var(--e-global-color-primary);
        font-size: 20px;
        text-transform: uppercase;
    }

    .mobile-filters,
    .filter-btn {
        font-size: 15px;
    }

    .mobile-filters::after {
        content: '\f108';
        position: absolute;
        font-family: 'dashicons';
        right: 1rem;
        color: var(--e-global-color-primary);
        font-size: 25px;
    }
}

    .more_information_portfolio .elementor-widget-container p,
    .more_information_portfolio .elementor-widget-container li{
        font-size: 12px;
        line-height: 18px;
        margin: 0px;
    }
    .assets_principales_portfolio .elementor-widget-container p {
        color: var(--porto-heading-color);
        font-size: 12px;
        line-height: 18px;
        margin: 0px;
    }



/* END SHARED BETWEEN CUSTOM TEMPLATE GRIDS */
/* END PORTFOLIO*/


.porto-posts-grid .type-post .post-title,
.porto-posts-grid .type-post .tb-content,
.porto-posts-grid .type-post .post-read-more-link{    
    padding: 0px 30px;
}


.porto-posts-grid .type-post .post-title{
    font-family: var(--font-family-headers)!important;
    font-size: 20px;
}

.porto-posts-grid .type-post .tb-content{
    font-family: var(--font-family-text)!important;
    font-size: 12px;
    line-height: 18px;
    font-weight: 400 !important;
    letter-spacing: 0px !important;
    margin-bottom: 10px;
}

.elementor-20 .elementor-element .porto-sicon-title span{
    font-weight: 600 !important;
    font-size: 40px;
}

.brand-slider figure:first-child img,
.brand-slider figure:nth-child(5) img, .brand-slider figure:nth-child(6) img{
    max-width: 200px !important;
}


/* CABECERA PORTFOLIOS */

.single-portfolio .page-top { height: auto; background-color: #fff;}
.single-portfolio .page-top > .container{ padding-bottom: 0px; }
.single-portfolio .page-top > .container .page-title-wrap{ display: none; }
.single-portfolio .page-top > .breadcrumbs-background{ display: none; }
.single-portfolio #main .container .main-content{ padding-top: 15px; }



.new-box-download .elementor-icon-list-items .elementor-icon-list-item{
    padding: 10px 20px;
    background-color: #fff;
    box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}
.new-box-download .elementor-icon-list-items .elementor-icon-list-item .elementor-icon-list-icon{
    color: aqua;
}



/* MOBILE */
@media (max-width: 768px) {
    .portfolio-grid .col_kpi{
        max-width: calc(100% - 1rem) !important;
        flex-basis: calc(100% - 1rem) !important;
    }


    .padding-section-first  {   padding: 80px 15px 40px 15px !important; }
    .padding-section        {   padding: 40px 15px 40px 15px !important; }
    .padding-section-middle {   padding: 40px 15px 0px 15px !important; }
    .padding-section-last   {   padding: 40px 15px 80px 15px !important; }

    .with-number p {
        flex-direction: column;
    }
}



#activos-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    width: 100%;
    padding: 0px;
    justify-content: left;
}
#activos-fields .col_field {
    background-color: #F5F7F7;
    gap:10px;
    padding: 10px 15px;
    text-align: left;
    border-radius: var(--border-radius-web);
    /*max-width: calc(50% - 1rem) !important;
    flex-basis: calc(33% - 1rem) !important;*/
    display: flex;
    /*flex-direction: column;*/
    justify-content: space-between !important;
    flex-direction: row;
    align-items: center;
}
#activos-fields .col_field picture {
    height: auto !important;
    justify-content: flex-start;
    display: flex;
    align-items: end;
    position: relative;
}
#activos-fields .col_field img {
    width: 50px;
    border-radius: 0px !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
}
#activos-fields .col_field .kpi-data {
    align-items: flex-start;
    justify-content: center;
    position: relative !important;
    padding: 0px;
    flex-direction: column;
    background: transparent;
    display: flex;
    width: 100%;
    gap: 0px;
}
#activos-fields .col_field .kpi-data span {
    font-size: 13px;
    color: var(--porto-primary-color);
}


/* TIME LINE */
.timeline-balloon{
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
}
.elementor-widget-porto_steps .elementor-widget-container .p-b-lg{
    padding-bottom: 0px !important;
}
.elementor-widget-porto_steps .elementor-widget-container .m-b-sm{
    margin-bottom: 0px !important;
}



.timeline-balloon .balloon-cell{
    width: fit-content;
}
.timeline-balloon .balloon-time{
    padding-top: 15px !important;
    width: 100px;
}
.timeline-balloon .balloon-time .time-text{
    width: 100%;
}
.timeline-balloon .balloon-content {
    padding: 15px !important;
    margin-left: 0px !important;
    border-width: 0px !important;
    border: none;
    background-color: transparent !important;
}
.timeline-balloon .balloon-time .time-dot{
    z-index: 99;
}
.timeline-balloon .balloon-content .balloon-arrow{
    display: none;
}
.timeline-balloon::before {
    top: 5px;
    left: calc(112px - var(--porto-step-line-width, 1px) / 2);
}
.timeline-balloon .balloon-time .time-text{
    color: var(--porto-secondary-color);
}
.balloon-description .step-item-title{
    color: var(--porto-primary-color);
}

.premium-bullet-list-box li{
    padding: 10px 0px;
}

.timeline-balloon .balloon-content  .balloon-description .step-item-desc p{
    margin-bottom: 0px !important;
}

/* Fix para centrar el header sticky en Desktop */
@media(min-width:768px){
	.header-builder-p .header-main.sticky .elementor-widget-wrap>.elementor-element:not(.elementor-section){
		margin: 0 auto !important;
		width: 100% !important;
		display: flex;
		justify-content: center;
		align-items: center;
	}
}

.thumb-info .thumb-info-type{
    padding-left:10px !important;
    padding-right:10px !important;
}

.accordion-menu .arrow{
    font-family: "porto" !important;
}

@media(max-width:768px){
    .timeline-balloon .balloon-time .time-dot {
        display: inline-block !important;
        margin-left: 15px;
    }

    .timeline-balloon:before {
         left: calc(99px - var(--porto-step-line-width, 1px) / 2) !important; 
    }

    .timeline-balloon .balloon-time .time-text{
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        transform: translateX(0%) !important;
    }
}
