/*
 Theme Name:   Etude Child Theme
 Theme URI:    https://etude.themerex.net/
 Description:  Etude Child Theme
 Author:       ThemeREX
 Author URI:   https://themerex.net/
 Template:     etude
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  etude
*/


/* =Theme customization starts here
------------------------------------------------------------ */

.sfondo-arancio {
    background-color: #1a0a08;
    background-image:
            radial-gradient(ellipse 45% 50% at 100% 88%, #cc2e1c 0%, rgba(170,34,24,.75) 40%, transparent 75%),
            radial-gradient(ellipse 65% 45% at 100% 0%, #000 0%, rgba(0,0,0,.7) 45%, transparent 80%),
            radial-gradient(ellipse 22% 45% at 0% 100%, #fbd08e 0%, rgba(245,160,70,.6) 50%, transparent 85%),
            linear-gradient(90deg, #f08a2a 0%, #e8620f 12%, #d5461a 22%, #9a2216 32%,
            #5a1a10 42%, #3a1410 52%, #2a0f0c 70%, #1a0a08 100%);
}


.bost-link_icon:before {
    font-size: 12px;
    line-height: inherit;
    font-weight: 400;
    font-style: inherit;
    content: '\E802';
    font-family: "qw_extension_icons";
    display: inline-block;
    vertical-align: top;
    -webkit-transition: -webkit-transform 0.3s ease;
    -ms-transition: -ms-transform 0.3s ease;
    transition: transform 0.3s ease;
    color: #fff;
    float: right;
}

.bost-link_icon {
    position: fixed;
    bottom: 25px;
    right: 50px;
}

.bost-home-servizio-descrizione {
    min-height: 75px;
}

/*.bost-home-servizio {
    cursor: pointer;
}*/

.bost-home-servizio:hover .bost-link_icon:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.bost-valore-aggiunto .sc_icons_icon {
    background-color: #fff;
    width: 24px;
    height: 24px;
    text-align: center;
    line-height: 4em;
    border-radius: 100%;
}

.bost-valore-aggiunto .sc_icons_size_small .sc_icons_icon:before {
    line-height: 2em !important;
    font-size: 2em !important;
}

.bost-valore-aggiunto .sc_icons_item_more_link {
    color: #fff!important;
    background-color: #E84E0F;
    padding: 10px 30px;
    line-height: 1 !important;
    border: 1px solid #E84E0F;
}

.bost-valore-aggiunto .sc_icons_item_more_link:hover {
    color: #E84E0F!important;
    background-color: transparent;
}

.bost-valore-aggiunto .sc_icons_item_more_link .link_text {
    text-indent: initial!important;
    opacity: 1!important;
    visibility: visible!important;
    margin-right: 6px!important;
    margin-left: 6px!important;
    margin-top: -6px!important;
    letter-spacing: 2px;
    font-weight: 300;
}

.bost-valore-aggiunto .sc_icons_item_more_link .link_icon {
    display: none!important;
}

.bost-home-portfolio .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item .sc_portfolio_item_content .post_meta .post_meta_item,
.bost-home-portfolio .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item .sc_portfolio_item_content .post_meta .post_meta_item a,
.bost-home-portfolio .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item .sc_portfolio_item_content .post_title a,
.bost-home-portfolio .post-more-link,
.bost-home-portfolio .post-more-link:active,
.bost-home-portfolio .post-more-link:hover {
    color: #fff!important;
}

.bost-home-portfolio .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item .sc_portfolio_item_content .post-more-link {
    border-bottom: 1px solid #fff;
}

.bost-home-counter .sc_skills_total {
    font-size: 6rem!important
}

.bost-home-counter .sc_skills_item_title {
    font-weight: bold!important;
    max-width: 65%;
    margin: 0 auto;
    padding-top: 10px;
    line-height: 1.2;
}

.bost-home-counter .sc_skills_column {
    border-right: 1px solid #E84E0F;
}

.bost-home-counter .sc_skills_column:last-child {
    border-right: none;
}

/* Carosello immagini con altezza dinamica (vedi js/bost-slider-autoheight.js) */
.bost-slider-auto .swiper-wrapper {
    transition-property: transform, height;
    transition-duration: .4s;
}

@media (prefers-reduced-motion: reduce) {
    .bost-slider-auto .swiper-wrapper {
        transition-duration: 0s !important;
    }
}

.portfolio_page .portfolio_page_title,
.single-cpt_portfolio .portfolio_page_featured,
.single-cpt_portfolio .portfolio_page_details_wrap {
    display: none!important;
}

.portfolio_page .portfolio_page_content {
    margin-top: 0!important;
    margin-bottom: 0!important;
}

/* Caroselli immagini con dot: dot 20px sotto l'immagine */
.elementor-widget-image-carousel.elementor-pagination-position-outside .swiper {
    padding-bottom: 0 !important;
}

.elementor-widget-image-carousel.elementor-pagination-position-outside .swiper-pagination {
    position: static !important;
    margin-top: 20px;
    line-height: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sc_icons_item_description {
    font-size: 17px;
}

.bost-home-counter .sc_skills_item_title {
    font-family: halyard-display,sans-serif;
    font-weight: 500 !important;
    font-size: 18px;
}

.elementor-widget-trx_sc_title .sc_item_subtitle {
    font-size: 20px;
    font-weight: 300;
    letter-spacing: 3px;
}

@media (max-width: 767px) {
    .elementor-widget-trx_sc_title .sc_item_subtitle {
        font-size: 14px;
    }

    .bost-mobile-giallo.elementor-widget-trx_sc_title .sc_item_subtitle {
        color: #FAA61A!important;
    }

    .bost-mobile-bianco {
        color: #fff!important;
    }
    .bost-home-counter .sc_skills_total {
        font-size: 4rem !important;
    }
}

.rivivi-list .sc_icons_icon.sc_icon_type_svg svg,
.bost-valore-aggiunto .sc_icons_icon.sc_icon_type_svg svg {
    width: 24px;
    height: 24px;
}

/* Realizzazioni: slider portfolio "Who We Are". Il plugin attiva lo slider solo se i progetti sono più delle
   colonne (2): finché sono 2 li mostra come colonne semplici, qui le allineiamo alla demo (slide 1/2, spazio 70px
   da 1440px in su). Con 3+ progetti la regola non si applica: .sc_services_columns_wrap non esiste più. */
@media (min-width: 1440px) {
    .bost-portfolio-slider .sc_services_columns_wrap {
        display: flex;
        flex-wrap: nowrap;
        margin-left: 0;
        margin-right: 0;
        column-gap: 70px;
    }

    .bost-portfolio-slider .sc_services_columns_wrap > .trx_addons_column-1_2 {
        float: none;
        flex: 0 0 calc((100% - 70px) / 2);
        width: calc((100% - 70px) / 2);
        margin-left: 0;
        padding-left: 0;
        padding-right: 0;
    }
}

/* Lightbox delle foto nei progetti portfolio: sfondo quasi opaco, così non si vede l'header del sito in trasparenza */
.single-cpt_portfolio .dialog-lightbox-widget {
    background-color: rgba(0, 0, 0, 0.94) !important;
}

/* Foto avvolte dal link della lightbox: il link deve essere a tutta larghezza, altrimenti le foto più strette della colonna non la riempiono */
.single-cpt_portfolio .elementor-widget-image a {
    display: block;
}

/* Lightbox: niente didascalia sotto la foto */
.elementor-slideshow__title {
    display: none !important;
}


/* Breadcrumb manuali nell'hero: i link restano bianchi come il testo, sottolineati solo al passaggio del mouse */
.bost-breadcrumb a,
.bost-breadcrumb a:visited {
    color: inherit;
    text-decoration: none;
}

.bost-breadcrumb a:hover,
.bost-breadcrumb a:focus {
    color: inherit;
    text-decoration: underline;
}


/* ==========================================================================
   Responsive (tablet <= 1279px, mobile <= 767px, come i breakpoint di Elementor)
   ========================================================================== */

/* Sottotitoli maiuscoli: il tema ha corpo 20px con interlinea 16px, quando vanno a capo le righe si sovrappongono */
@media (max-width: 1279px) {
    .sc_item_subtitle {
        line-height: 1.4 !important;
    }
}

@media (max-width: 1279px) and (min-width: 768px) {
    .sc_item_subtitle {
        font-size: 17px;
        letter-spacing: 2.5px;
    }
}

@media (max-width: 767px) {
    .sc_item_subtitle {
        font-size: 15px;
        letter-spacing: 2px;
    }
}

/* Pagine servizi: i testi toccavano i bordi dello schermo (sezioni a larghezza piena senza padding laterale) */
@media (max-width: 1279px) {
    body:is(.page-id-24999, .page-id-25067, .page-id-25068, .page-id-25069, .page-id-25070, .page-id-25071, .page-id-25072)
    .elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap > :is(.elementor-widget-text-editor, .elementor-widget-trx_sc_title, .elementor-widget-heading:not(.nowrap), .elementor-widget-button, .elementor-inner-section) {
        padding-left: 30px;
        padding-right: 10px;
    }
}

@media (max-width: 767px) {
    body:is(.page-id-24999, .page-id-25067, .page-id-25068, .page-id-25069, .page-id-25070, .page-id-25071, .page-id-25072)
    .elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap > :is(.elementor-widget-text-editor, .elementor-widget-trx_sc_title, .elementor-widget-heading:not(.nowrap), .elementor-widget-button, .elementor-inner-section) {
        padding-left: 20px;
        padding-right: 20px;
    }

    /* Progetti portfolio: il testo della colonna sinistra stava a 5px dal bordo */
    .single-cpt_portfolio .elementor-top-section .elementor-column:first-child > .elementor-widget-wrap > .elementor-widget-text-editor {
        padding-left: 15px;
        padding-right: 15px;
    }

    /* Hero delle pagine interne: un po' d'aria sotto il logo */
    .elementor > .elementor-top-section.sfondo-arancio:first-child {
        padding-top: 28px;
    }
}

/* Home, sezione portfolio (widget "case"): da 768 a 1023px usa la griglia a 2 colonne già prevista dal plugin per il mobile,
   invece di 8 strisce larghe 84px */
@media (min-width: 768px) and (max-width: 1023px) {
    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_content {
        display: block;
        line-height: 0;
        margin-bottom: -20px;
    }

    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item {
        width: 50%;
        display: inline-block;
        padding-bottom: 20px;
    }

    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item .sc_portfolio_item_inner {
        height: 330px;
    }

    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item.is-active {
        width: 50% !important;
    }

    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item.is-active .post_featured {
        height: 215px;
    }

    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item:nth-child(odd):last-child,
    .sc_portfolio.sc_portfolio_qw-case .sc_portfolio_item:only-child {
        width: 100% !important;
    }
}


/* Progetti portfolio: navigazione "Progetto precedente / successivo" come nella demo.
   js/bost-portfolio-nav.js la sposta sopra la CTA finale dentro .bost-post-nav (boxed, come i contenuti a 1200px).
   Senza JS resta in fondo alla pagina: qui il margine laterale di riserva. */
.single-cpt_portfolio .post-navigation:not(.bost-moved) {
    padding: 0 75px 110px;
}

.bost-post-nav {
    display: flow-root;
    background-color: #fff;
    padding: 0 0 70px;
}

.single-cpt_portfolio .bost-post-nav .post-navigation .nav-links {
    margin-top: 0;
}

.bost-post-nav__inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0;
}

.bost-post-nav .post-navigation {
    margin: 0;
}

@media (max-width: 1279px) {
    .single-cpt_portfolio .post-navigation:not(.bost-moved) {
        padding: 0 30px 80px;
    }

    .bost-post-nav {
        padding-bottom: 50px;
    }

    .bost-post-nav__inner {
        max-width: none;
        padding: 0 30px;
    }
}

@media (max-width: 767px) {
    .single-cpt_portfolio .post-navigation:not(.bost-moved) {
        padding: 0 20px 60px;
    }

    .bost-post-nav {
        padding-bottom: 40px;
    }

    .bost-post-nav__inner {
        max-width: none;
        padding: 0 20px;
    }
}

/* Mai sillabazione automatica: il tema attiva hyphens:auto su h1-h6 sotto i 768px (responsive.css). Spegne anche eventuali &shy; nei testi */
html body,
html body * {
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

/* Le email non vanno mai a capo a metà (es. footer a 768px: "info@gruppob / ost.it") */
a[href^="mailto:"] {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

/* Hero delle pagine interne (tranne la home, che ha lo slider): su tablet e mobile titolo pagina 30px e breadcrumb 14px */
@media (max-width: 1279px) {
    .elementor > .elementor-top-section.sfondo-arancio:first-child .elementor-widget-trx_sc_title .sc_item_title,
    .elementor > .elementor-top-section.sfondo-arancio:first-child .elementor-widget-trx_sc_title .sc_item_title_text {
        font-size: 30px;
    }

    .elementor > .elementor-top-section.sfondo-arancio:first-child .bost-breadcrumb,
    .elementor > .elementor-top-section.sfondo-arancio:first-child .bost-breadcrumb p,
    .elementor > .elementor-top-section.sfondo-arancio:first-child .bost-breadcrumb a {
        font-size: 14px;
    }
}

/* Footer: il logo Tramontin ha il link, che Elementor rende inline-block: la larghezza 35% dell'immagine
   si calcolerebbe sul link (~172px) invece che sulla colonna, e il logo risulterebbe più piccolo di quello Bost */
.elementor-17895 .elementor-element-8be1687 a {
    display: block;
}
