/*
Theme Name: MAC
Author: (rob.a) grafica | Web Solutions & graphic design
Author URI: robagrafica.com
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Archivo+Narrow:ital,wght@0,400..700;1,400..700&display=swap');
@import "assets/css/custom_carousel.css";

:root {
    /* Font Family */
    --font_primary: 'Archivo Narrow', sans-serif;
    --material_icons: 'Material Symbols Outlined';

    /* Font Weight */
    --font_light: 400;
    --font_normal: 400;
    --font_semibold: 600;
    --font_bold: 700;

    /* Colors */
    --theme_primary_color: #000000;
    --theme_dark: var(--theme_primary_color);
    --theme_red: #e5351f;
    --text_primary_color: var(--theme_primary_color);

    /* Header / footer heights */
    --header_height: 80px;
    --footer_height: 180px;

    --transition: all .3s;
    /*--container: 100%;*/
}


html, body {
    font-family: var(--font_primary);
    font-size: 18px;
    font-weight: var(--font_normal);
    font-style: normal;
    color: var(--text_primary_color);
    line-height: 1.5;
}

strong, b {
    font-weight: var(--font_bold);
}

h1.title_page, h3 {
    font-size: 1.8rem;
    font-weight: var(--font_bold);
}

h1.title_page {
    text-transform: uppercase;
    margin-bottom: 3.5rem;
    margin-top: 2.5rem;
}

a, img {
    transition: var(--transition);
}

a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: var(--theme_red);
    text-decoration: none;
    opacity: .85;
}

a.readmore {
    color: var(--theme_red);
    text-decoration: none;
}

a.readmore:hover {
    text-decoration: none;
}

.theme_sticky {
    position: sticky;
    top: calc(var(--header_height) + 20px);
}


section {
    margin-bottom: 2.5rem;
}

.section_title {
    text-transform: uppercase;
    margin: 2rem 0 3.5rem;
    font-weight: var(--font_bold);
}


/*----------------------
    elementi grafici
----------------------*/
.bacchetta {
    border-top: 2px solid var(--theme_red);
}

.card.partner {
    /*border-color: var(--theme_primary_color);*/
    /*border-radius: 0;*/
    padding: 1rem;
    min-height: 5rem;
}

/*----------------------
    BUTTONS and LINKS
----------------------*/

.page_link {
    font-weight: var(--font_bold);
    color: var(--theme_red);
}

.page_link.arrow:after {
    content: '\e941';
    font-family: var(--material_icons);
    vertical-align: middle;
    margin-left: 4px;
    font-size: 1.4rem;
    transition: var(--transition);
}

.page_link.arrow:hover:after {
    margin-left: 10px;
}

.btn {
    border-radius: 0;
    text-decoration: none;
    padding: 1rem 1.5rem;
    min-width: 240px;
    text-transform: uppercase;
}

button:focus {
    outline: none;
}

a.btn-theme-primary {
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
    text-transform: uppercase;
    padding: 6px;
    font-size: 12px;
    text-align: center;
    transition: all .3s;
}

.btn-theme-primary:hover {
    text-decoration: none;
    color: var(--theme_primary_color);;
    background-color: #FFFFFF;
}

/*----------------------
    HEADER
----------------------*/
header {
    height: var(--header_height);
    background-color: #ffffff;
    z-index: 100;
    position: sticky;
    top: 0;
    border-bottom: 2px solid #000000;
    /*align-items: center;*/
    /*display: flex;*/
}

header .top_header {
    font-size: 14px;
}

/*----------------------
    MENU
----------------------*/
#desk_menu {
    font-size: 16px;
    font-weight: var(--font_semibold);
    text-transform: uppercase;
}

#desk_menu li a:hover, #desk_menu li.current-menu-item {
    color: var(--theme_red);
    /*text-decoration: line-through !important;*/
    /*text-decoration-thickness: 7px !important;*/
    /*text-decoration-color: rgba(229, 53, 31, 0.7) !important;*/
}

#mobile-menu ul{
    list-style: none;
}
.open_mobile_menu, .close_mobile_menu{
    cursor: pointer;
}
#mobile-menu{
    position: fixed;
    top: var(--header_height);
    background-color: white;
    width: 100%;
    border-bottom: 2px solid;
    z-index: 100;
}

/*----------------------
    breadcrumbs
----------------------*/
#breadcrumbs {
    margin-bottom: 20px;
}

.breadcrumb {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
    margin-bottom: 0;
    list-style: none;
    background-color: #fff;
    border-radius: 0;
    font-size: 12px;
}

/*----------------------
    HOME PAGE
----------------------*/
#hp-slider-wrap {
    background-color: #000000;
    color: white;
    padding-top: 3.5rem;
    padding-bottom: 7rem;
}


.img_overlay {
    position: relative;
}

.box_overlay {
    background-color: white;
    padding: 1rem;
}

.box_overlay > div {
    font-size: 1.2rem;
    line-height: normal;
}

.box_overlay .page_link {
    font-size: 1rem;
    margin-top: 1rem;
}


/*----------------------
    Pagination
----------------------*/


/*----------------------
    CATEGORY FILTERS
----------------------*/


/*----------------------
    POST GRIDS
----------------------*/
.grid_item a {
    text-decoration: none;
}

.img_thumb_grid_wrapper {
    height: 40vw;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.post_item {
    margin-bottom: 15%;
}

.info_post {
    position: absolute;
    bottom: -15%;
    background-color: white;
    width: 80%;
    left: 10%;
    padding: 1.5rem;
    min-height: 200px;
}

.info_post a.page_link.arrow {
    font-size: .9rem;
}

.term_post {
    text-transform: uppercase;
    font-size: .77rem;
    margin-bottom: 10px;
    color: #666666;
}

.title_post {
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 1.8rem;
}

.date_post {
    margin-top: 1rem;
}


/*----------------------
    SEARCH RESULTS
----------------------*/


/*----------------------
    Single post
----------------------*/
/*.single .featured_post_img{*/
/*    max-height: calc(480px * .41463);*/
/*    overflow: hidden;*/
/*}*/

.post_txt a {
    color: var(--theme_red);
}

.post_txt h1, .post_txt h2, .post_txt h3, .post_txt h4, .post_txt h5, .post_txt h6 {
    font-size: 1.2rem;
    font-weight: bold;
}

.post_txt img.alignleft, .post_txt figure.alignleft {
    float: left;
    margin-right: .8rem;
}

.post_txt img.alignright, .post_txt figure.alignright {
    float: right;
    margin-left: .8rem;
}

.post_txt img.aligncenter, .post_txt figure.aligncenter {
    margin: 0 auto;
}

.wp-caption-text {
    font-size: .9rem;
    font-weight: var(--font_light);
    margin-top: 1rem;
}

.wp-caption-text:before, figcaption:before {
    content: '\f108';
    font-family: var(--material_icons);
    vertical-align: middle;
    margin-right: 3px;
}

.post_txt .wp-caption-text, figcaption {
    font-size: .8rem;
    margin-top: 3px;
}

.data_post {
    opacity: 50%;
}

.featured_post_img {
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

.riassunto {
    font-size: 1.4rem;
    line-height: 1.9rem;
    font-weight: var(--font_semibold);
}

.file_type {
    background-color: var(--theme_primary_color);
    color: white;
    text-transform: uppercase;
    padding: 6px 10px;
    text-align: center;
}

.file_name {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1.2;
}

.team_name {
    font-size: 1.2rem;
    font-weight: bold;
}

.team_role {
    font-size: .9rem;
    line-height: 1rem;
}

/*----------------------
    LIGHTCASE
----------------------*/

/*----------------------
    FOOTER
----------------------*/

footer {
    padding: 20px 0;
}

.footer_top {
    background-color: #000000;
    color: white;
}

ul#footer_menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul#footer_menu li {
    display: inline-block;
    margin-right: 20px;
}

.footer_bottom{
    font-size: 16px;
}

/*----------------------
    FORM ELEMENTS
----------------------*/

select {
    width: 100%;
    border: none;
    padding: 6px;
}


/*
    complianz cookie
*/

#cmplz-document p, .editor-styles-wrapper .cmplz-unlinked-mode p, #cmplz-document li, .editor-styles-wrapper .cmplz-unlinked-mode li, #cmplz-document td, .editor-styles-wrapper .cmplz-unlinked-mode td {
    font-size: 1rem !important;
}