/*
 Theme Name:   Trn OTL TwentyTwenty Child
 Theme URI:    #
 Description:  Trn OTL Theme
 Author:       Stefano Cupioli
 Author URI:   https://www.cupios.it
 Template:     twentytwenty
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  trn-otl-twentytwenty
*/

@font-face {
    font-family: OTLbold;
    src: url("fonts/BOLD.woff") format("woff");
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: OTLthin;
    src: url("fonts/THIN.woff") format("woff");
    font-weight: thin;
    font-style: normal;
}

/* ----------------------------------------------
Inter variable font. Usage:

@supports (font-variation-settings: normal) {
	html { font-family: OTLlight, sans-serif; }
}
---------------------------------------------- */
@font-face {
    font-family: OTLlight;
    src: url("fonts/LIGHT.woff") format("woff");
    font-weight: lighter;
    font-style: normal;
}

html, body,
code,
kbd,
pre,
samp,
input,
textarea,
button,
.button,
.faux-button,
.wp-block-button__link,
.wp-block-file__button,
.toggle,
.has-drop-cap:not(:focus)::first-letter,
.has-drop-cap:not(:focus)::first-letter,
.entry-content .wp-block-archives,
.entry-content .wp-block-categories,
.entry-content .wp-block-cover-image,
.entry-content .wp-block-latest-comments,
.entry-content .wp-block-latest-posts,
.entry-content .wp-block-pullquote,
.entry-content .wp-block-quote.is-large,
.entry-content .wp-block-quote.is-style-large,
.entry-content .wp-block-archives *,
.entry-content .wp-block-categories *,
.entry-content .wp-block-latest-posts *,
.entry-content .wp-block-latest-comments *,
.wp-block-pullquote blockquote p,
.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p,
.entry-content,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-content cite,
.entry-content figcaption,
.entry-content table,
.entry-content address,
.entry-content .wp-caption-text,
.entry-content .wp-block-file,
.widget_text p,
.widget_text ol,
.widget_text ul,
.widget_text dl,
.widget_text dt,
.widget-content .rssSummary,
.widget-content cite,
.widget-content figcaption,
.widget-content .wp-caption-text {
    font-family: OTLlight, sans-serif;
}

@supports ( font-variation-settings: normal ) {
    body {
        font-family:  OTLlight, sans-serif;
    }
}

@supports ( font-variation-settings: normal ) {
    input,
    textarea,
    button,
    .button,
    .faux-button,
    .faux-button.more-link,
    .wp-block-button__link,
    .wp-block-file__button,
    .has-drop-cap:not(:focus)::first-letter,
    .entry-content .wp-block-archives,
    .entry-content .wp-block-categories,
    .entry-content .wp-block-latest-posts,
    .entry-content .wp-block-latest-comments,
    .entry-content .wp-block-cover-image p,
    .entry-content .wp-block-pullquote,
    .entry-content h1,
    .entry-content h2,
    .entry-content h3,
    .entry-content h4,
    .entry-content h5,
    .entry-content h6,
    .entry-content cite,
    .entry-content figcaption,
    .entry-content table,
    .entry-content address,
    .entry-content .wp-caption-text,
    .entry-content .wp-block-file,
    .widget-content cite,
    .widget-content figcaption,
    .widget-content .wp-caption-text {
        font-family:  OTLlight, sans-serif;
    }
}

.site-logo {
    font-family:  OTLbold, sans-serif;
    max-width: 418px;
    margin: 0 auto;
    text-align: center;
}

.site-logo a img {
    max-height: 70px;
    min-height: 70px;
    height: 70px;
    width: 100%;
}

.header-titles-wrapper {
    margin-right: 0;
}

#site-header {
    background: #fff;
    position: relative;
    margin-top: 70px;
}

#site-content {
    margin-top: 70px;
    background: #fff;
    margin-bottom: 20px;
}

.header-inner {
    align-items: center;
    display: block;
    justify-content: space-between;
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: 100%;
}

.header-inner.section-inner {
    padding: 0 0 0 0 !important;
    margin: 0 0 0 0 !important;
}

.header-titles-wrapper {
    margin-right: 4rem;
    max-width: 100%;
    width: 100%;
    padding: 0;
    text-align: left;
}

body:not(.enable-search-modal) .header-titles-wrapper {
    justify-content: center;
    text-align: center;
}

.header-navigation-wrapper .primary-menu-wrapper {
    display: block;
    width: auto !important;
    text-align: center;
    margin: 0 auto;
}

body:not(.overlay-header) .primary-menu > li > a, body:not(.overlay-header) .primary-menu > li > .icon, .modal-menu a, .footer-menu a, .footer-widgets a, #site-footer .wp-block-button.is-style-outline, .wp-block-pullquote:before, .singular:not(.overlay-header) .entry-header a, .archive-header a, .header-footer-group .color-accent, .header-footer-group .color-accent-hover:hover {
    color: #000000 !important;
}

a {
    text-decoration: none;
}

a:hover {
    color: #000000 !important;
}

@media (max-width: 520px) {
    #site-header .header-inner {
        padding: 0 0 0 0 !important;
    }
}

@media (min-width: 700px) {
    article .post-inner {
        padding-top: 1rem;
    }

    body:not(.singular) main > article:first-of-type {
        padding: 1rem 0 0;
    }

    article.post-title .post-inner {
        padding-top: 0rem;
    }

    article .trn-otl-title .post-inner,
    article .trn-otl-date .post-inner,
    article .trn-otl-content .post-inner {
        padding-top: 0 !important;
    }
}

@media (max-width: 767px) {
    .site-logo a img {
        max-height: 50px;
        min-height: 50px;
        height: 50px;
        max-width: 418px;
    }
}

@media (min-width: 1000px) {
    .header-inner {
        padding: 0 0 0 0;
    }

    .header-inner.section-inner {
        padding: 0 0 0 0;
    }
}

body, .header-footer-group pre, .header-footer-group fieldset, .header-footer-group input, .header-footer-group textarea, .header-footer-group table, .header-footer-group table *, .footer-nav-widgets-wrapper, #site-footer, .menu-modal nav *, .footer-widgets-outer-wrapper, .footer-top {
    background-color: #FFFFFF !important;
}

.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 68rem !important;
}

.trn-otl-title .entry-content,
.trn-otl-date .entry-content,
.trn-otl-content .entry-content {
    text-align: center;
}

.trn-otl-content div.post-date.type-post-date .post-inner {
    padding-top: 0px !important;
}

/* BLOCK: BASE MARGINS */

.wp-block-archives:not(.alignwide):not(.alignfull),
.wp-block-categories:not(.alignwide):not(.alignfull),
.wp-block-code,
.wp-block-columns:not(.alignwide):not(.alignfull),
.wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-group:not(.has-background):not(.alignwide):not(.alignfull),
.wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright),
.wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright),
.wp-block-media-text:not(.alignwide):not(.alignfull),
.wp-block-preformatted,
.wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright),
.wp-block-quote,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large,
.wp-block-verse,
.wp-block-video:not(.alignwide):not(.alignfull) {
    margin-bottom: 1rem;
    margin-top: 1rem;
}

.entry-content > .alignwide:not(.wp-block-group.has-background),
.entry-content > .alignfull:not(.wp-block-group.has-background) {
    margin-bottom: 3rem;
    margin-top: 3rem;
}

.entry-content :where(.wp-block-columns.is-layout-flex) {
    gap: 0.5em;
}

.wp-block-columns.alignfull,
.alignfull:not(.has-background) .wp-block-columns {
    padding-left: 1rem;
    padding-right: 1rem;
}

.primary-menu-wrapper,
.primary-menu-wrapper div,
.primary-menu-wrapper span,
.primary-menu-wrapper a {
    font-family: OTLlight, sans-serif;
}

.primary-menu-wrapper a {
    text-transform: uppercase;
}

.primary-menu-wrapper a:hover {
    text-decoration: underline;
}

.post-inner {
    padding-top: 1rem;
}

.header-navigation-wrapper,
.header-toggles {
    display: flex;
}

.header-titles .site-title, .header-titles .site-logo, .header-titles .site-description {
    margin: 0;
}

/* HEADER TOGGLES */

.mobile-search-toggle,
.mobile-nav-toggle {
    display: none !important;
}

.primary-menu-wrapper + .header-toggles {
    margin-left: 3rem;
}

.header-toggles {
    display: flex;
    flex-shrink: 0;
    margin-right: -3rem;
}

.header-inner .toggle {
    height: 4.4rem;
    padding: 0 3rem;
    position: relative;
    bottom: auto;
    left: auto;
    right: auto;
    top: auto;
    width: auto;
}

.header-inner .toggle-wrapper {
    position: relative;
}

.header-inner .toggle-wrapper::before {
    background: #dedfdf;
    content: "";
    display: block;
    height: 2.7rem;
    position: absolute;
    left: 0;
    top: calc(50% - 1.35rem);
    width: 0.1rem;
}

.header-inner .toggle-wrapper:first-child::before {
    content: none;
}

.header-inner .primary-menu-wrapper + .header-toggles .toggle-wrapper:first-child::before {
    content: "";
}

.nav-toggle-wrapper:not(.has-expanded-menu) {
    display: none;
}

.toggle-inner {
    position: static;
}

.toggle-inner .toggle-text {
    left: 0;
    right: 0;
    text-align: center;
    top: calc(100% - 0.3rem);
    width: auto;
}

.header-toggles:only-child .nav-toggle .toggle-inner {
    padding-top: 0;
}

.header-toggles:only-child .toggle-inner {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.header-toggles:only-child .toggle-inner .svg-icon {
    order: 1;
}

.header-toggles:only-child .toggle-inner .toggle-text {
    position: static;
    padding-right: 20px;
    font-size: 15px;
    color: inherit;
}

/* Menu Modal ---------------------------- */

.menu-modal {
    opacity: 1;
    justify-content: flex-end;
    padding: 0;
    transition: background-color 0.3s ease-in, left 0s 0.3s, right 0s 0.3s;
}

.menu-modal.cover-modal {
    background: rgba(0, 0, 0, 0);
}

.menu-modal.active {
    background: rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s ease-out;
}

.menu-wrapper.section-inner {
    width: calc(100% - 8rem);
}

.menu-modal-inner {
    box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.1);
    opacity: 0;
    padding: 0;
    transform: translateX(20rem);
    transition: transform 0.2s ease-in, opacity 0.2s ease-in;
    width: 50rem;
}

.menu-modal.active .menu-modal-inner {
    opacity: 1;
    transform: translateX(0);
    transition-timing-function: ease-out;
}

.mobile-menu {
    display: none;
}

.expanded-menu {
    display: block;
}

.menu-bottom {
    padding: 6rem 0;
}

.menu-bottom .social-menu {
    justify-content: flex-start;
}

/* -- MENU E NAVIGAZIONE END */

body:not(.enable-search-modal) .site-logo img {
    margin: 0 auto;
}

footer {
    width: 100%;
    background-color: #ffffff;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-family: OTLthin, sans-serif;
}

footer .footer-content {
    margin: 0 auto;
    text-align: center;
    padding: 0 40px;
}

/* ### CUSTOM CLASS TO DO */

figure.fullwidthautoheigth img {
    width: 100% !important;
    height: auto !important;
}