/*
Theme Name:      GLR Studio
Author:          Gloria Ingrassia
Author URI:      https://www.gloriaingrassia.com
Template:        hello-elementor
Text Domain:     glr-studio
Version:		 1.0.0
*/

/** RESET **/

html {
    overflow-x: 0;
}

.wp-block-columns:last-child,
p:last-child {
    margin-bottom: 0;
}

/** COLORI **/

:root {
    --color-white: #ffffff;
    --color-dark: #1C1A18;
    --color-primary: #99562C;
    --color-light: #F2EFE6;
    --color-extra-light: #FAF9F5;
}

.has-dark-color {
    color: var(--color-dark);
}

.has-dark-background-color {
    background: var(--color-dark);
}

.has-white-color {
    color: var(--color-white);
}

.has-white-background-color {
    background: var(--color-white);
}

.caramel,
.has-primary-color {
    color: var(--color-primary);
}

.has-primary-background-color {
    background: var(--color-primary);
}

.has-light-color {
    color: var(--color-light);
}

.has-light-background-color {
    background: var(--color-light);
}

/** FONT */

.moontime {
    font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
    font-size: var( --e-global-typography-accent-font-size );
    font-weight: var( --e-global-typography-accent-font-weight );
    text-transform: var( --e-global-typography-accent-text-transform );
    letter-spacing: var( --e-global-typography-accent-letter-spacing );
    line-height: 0;
}

.elementor-widget-theme-post-content ol li::before,
.gilda {
    color: var(--e-global-color-text);
    font-family: "Gilda Display", Sans-serif;
    font-weight: 300;
    letter-spacing: -1px;
}

/** ELEMENTI **/

.v-text-animation {
    max-width: 100%;
    overflow: hidden!important;
}

.v-text-animation .scroll-text {
    -moz-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -moz-animation: right-to-left-animation 60s linear infinite;
    -webkit-animation: right-to-left-animation 60s linear infinite;
    animation: right-to-left-animation 60s linear infinite;
    white-space: nowrap;
}

@media ( max-width: 767px ) {

    .v-text-animation .scroll-text {
        -moz-animation: right-to-left-animation 30s linear infinite;
        -webkit-animation: right-to-left-animation 30s linear infinite;
        animation: right-to-left-animation 30s linear infinite;
    }

}

/* for Firefox */
@-moz-keyframes right-to-left-animation {
  from { -moz-transform: translateX(100%); }
  to { -moz-transform: translateX(-100%); }
}

/* for Chrome */
@-webkit-keyframes right-to-left-animation {
  from { -webkit-transform: translateX(100%); }
  to { -webkit-transform: translateX(-100%); }
}

@keyframes right-to-left-animation {
  from {
    -moz-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -moz-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

body.num .entry-content {
    counter-reset: section;
}

body.num .entry-content h2 {
    position: relative;
}

body.num .entry-content h2::before {
    position: absolute;
    counter-increment: section;
    content: counter(section, decimal-leading-zero);
    color: var(--color-light);
    font-size: 160px;
    position: absolute;
    top: 0;
    line-height: 60px;
    left: 0;
    z-index: -1;
}

.single-post #container h2,
.single-post #container h3 {
    margin-top: 60px;
}

.single-post #container h4 {
    margin-top: 30px;
}

h2.wp-block-heading {
    margin: 60px 0 30px!important;
}
/*
h2.wp-block-heading:after {
    display:block;
    content: "";
    overflow: hidden;
    height: 1px;
    background: var(--color-dark);
}*/

.h-flip {
    display: inline-block;
    transform: scale(-1, 1);
    -moz-transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
}

pre,
.wp-block-code,
code {
    background: var(--color-extra-light);
}

pre,
.wp-block-code {
    padding: 30px;
    border: 0;
    border-radius: 0;
}

code {
    color: var(--color-dark);
    font-size: 16px;
}

blockquote {
    background-color: var(--color-extra-light);
    margin: 60px 0;
    padding: 30px;
    border: 0;
    border-left: 6px solid var(--color-light);
    font-family: "Gilda Display";
    font-size: 26px;
    font-weight: 300;
    letter-spacing: -1.4px;
}

.uppercase {
    text-transform: uppercase;
}

blockquote strong,
strong,
b {
    font-weight: 600;
}

p {
    margin-bottom: 30px;
}

.page-content a[target="_blank"],
.elementor-widget-theme-post-content a[target="_blank"] {
    position: relative;
    margin-right: 5px;
    padding-right: 6px;
}

.page-content a[target="_blank"]::after,
.elementor-widget-theme-post-content a[target="_blank"]::after {
    content: "";
    display: inline-block;
    background: url( inc/img/right-top-arrow.svg );
    background-size: 100% 100%;
    position: relative;
    top: 0;
    right: -6px;
    height: 10px;
    width: 10px;
}

@media ( max-width: 991px ) {

    .hidden-mobile {
        display: none;
    }

}

@media ( min-width: 992px ) {

    .hidden-desktop {
        display: none;
    }

}

.glr-icon {
    background: var(--color-light);
    display: inline-block;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    line-height: 36px;
    text-align: center;
    font-weight: 300!important;
}

.glr-icon.left {
    margin-left: 10px;
}

.glr-icon.right {
    margin-right: 10px;
}

.glr-icon.both {
    margin-left: 10px;
    margin-right: 10px;
}

.checklist ul {
    list-style: none;
    padding-left: 0;
}

.checklist.inline li {
    display: inline;
}

.checklist li {
    display: inline-block;
    position: relative;
    padding-left: 25px;
    margin-right: 10px;
}

.checklist li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 14px;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="512" x="0" y="0" viewBox="0 0 24 24" style="enable-background:new 0 0 512 512" xml:space="preserve" class=""><g><path fill="%231c1a18" fill-rule="evenodd" d="M8.494 18a.504.504 0 0 1-.354-.146l-5.993-5.997a.5.5 0 0 1 .707-.707l5.64 5.643L20.14 5.146a.502.502 0 0 1 .708.708l-12 12a.504.504 0 0 1-.354.146" opacity="1" data-original="%23000000" class=""></path></g></svg>');
    background-size: contain;
    background-repeat: no-repeat;
}

.alignwide {
    margin-left: -110px;
    margin-right: -110px;
}

h2.wp-block-heading {
    font-size: 36px!important;
    letter-spacing: -1.4px!important;
}

.highlight {
    background: var(--color-light);
    padding: 0 5px;
}

/** SHORTCODES **/

.glr-list-posts article {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0;
    border-bottom: 1px solid var(--color-light);
}

.glr-list-posts article:last-child {
    border-bottom: 0;
}

.glr-list-posts article .title {
    flex: 2; /* Imposta la larghezza desiderata (2/3) */
}

.glr-list-posts article .meta {
    text-align: right;
}

.glr-list-posts article > * {
    flex: 1;
}

.glr-list-posts > div:not(.show_thumb) {
    list-style: none;
}

.glr-list-posts .title {
    font-family: 'Gilda Display';
    margin: 0;
    font-size: 28px;
    line-height: 33px;
    letter-spacing: -2px;
    text-transform: inherit;
    text-align: left;
}

.glr-list-posts a {
    text-decoration: none!important;
}

.glr-list-posts .meta {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 1px;
}

.glr-list-posts .meta .term a {
    font-weight: 500;
}

.glr-list-posts .meta > *:first-child:after {
    content: "";
    margin-right: 10px;
    padding-right: 10px;
    border-right: 1px solid var(--color-dark);
}

.v-btn {
    background: transparent;
    color: var(--color-dark);
    line-height: 1;
    padding: 20px 5px;
    font-size: 16px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 30px;
    border: 1px solid var(--color-dark);
}

.v-btn svg {
    width: 16px;
}

.glr-list-posts h4 {
    margin-bottom: 0;
    font-family: Assistant;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 1px;
    text-transform: uppercase;
}

span.num {
    background: var(--color-primary);
    display: inline-block!important;
    width: 36px!important;
    margin-right: 10px;
    line-height: 36px;
    text-align: center;
    border-radius: 50%;
    color: var(--color-white);
}

.wp-element-caption {
    text-align: center;
}

.glr-circle {
    position: relative;
    display: inline-block;
    border-width: 1px;
    border-style: solid;
    border-radius: 50%;
    top: 3px;
    cursor: pointer;
}

.color-popover {
    display: block;
    position: absolute;
    background: var(--color-dark);
    padding: 5px 10px;
    border-radius: 3px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    color: #fff;
    z-index: 1000;
    font-size: 16px;
}

.color-popover::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: var(--color-dark) transparent transparent transparent;
}

.correlate a {
    font-weight: 500!important;
}

/** PLUGINS */

.lwptoc {
    background: var(--color-extra-light);
    padding: 30px;
}

.lwptoc_items {
    margin-top: 20px;
}

.lwptoc .lwptoc_i A {
    padding: 3px 5px;
}

.lwptoc_title {
    font-weight: 400!important;
    font-family: "Gilda Display";
    letter-spacing: -1px;
}

.lwptoc_item a {
    border: 0!important;
    font-size: 20px!important;
}

.lwptoc_i {
    padding: 0!important;
}

/** GUTENBERG */
.wp-block-button__link {
    background: var(--color-light);
    margin-bottom: 30px;
    padding: 15px 50px 15px 50px;
    border: 1px solid var(--color-dark)!important;
    border-radius: 30px 30px 30px 30px;
    color: var(--color-dark);
    font-size: 16px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.wp-block-button__link:hover {
    background: var(--color-white);
    color: var(--color-primary);
}

/** ELEMENTOR */

.elementor-heading-title span.num {
    position: absolute;
    bottom: 15px;
    font-family: "Assistant";
    font-size: 16px;
    width: 26px!important;
    line-height: 26px!important;
    margin: 0;
    letter-spacing: 0;
}

.elementor-search-form button {
    border-top-left-radius: 30px!important;
    border-bottom-left-radius: 30px!important;
}

.elementor-accordion-item {
    padding: 10px 0;
    border-bottom: 1px solid var(--color-dark) !important;
}

.tags .elementor-post-info__terms-list a {
    background: var(--color-light);
    border: 1px solid var(--color-light);
    border-radius: 30px;
    padding: 5px 15px;
    color: var(--color-dark);
}

.tags .elementor-post-info__terms-list a:hover {
    border: 1px solid var(--color-dark);
    color: var(--color-dark);
}

.tags .elementor-post-info__terms-list {
    color: var(--color-white);
}

table tbody > tr:nth-child(2n+1) > td,
table tbody > tr:nth-child(2n+1) > th {
    background: var(--color-white);
}

table tbody tr:hover > td,
table tbody tr:hover > th {
    background: var(--color-light);
}

.elementor-toc__header {
    position: relative;
    display: block;
    height: 50px;
}

.elementor-toc__toggle-button,
.elementor-toc__header-title {
    position: absolute;
}

.elementor-toc__toggle-button {
    left: 70px;
    top: 16px;
}

UL.lwptoc_itemWrap,
.correlate article,
.lwptoc ul,
.elementor-accordion ul,
.elementor-accordion ol,
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol {
    margin: 30px 0;
    padding: 0 10px!important;
    list-style: none;
}

.list article,
.lwptoc ul li,
.elementor-accordion ul li,
.elementor-accordion ol li,
.elementor-widget-theme-post-content ul li,
.elementor-widget-theme-post-content ol li {
    position: relative;
    margin-bottom: 10px;
}

.list article,
.lwptoc ul li,
.elementor-accordion ul li,
.elementor-widget-theme-post-content ul.wp-block-list li {
    padding-left: 30px!important;
}

.elementor-accordion ul li:before,
.elementor-widget-theme-post-content ul.wp-block-list li:before {
    content: '';
    width: 8px;
    height: 8px;
    background-color: var(--color-light);
    border: 1px solid var(--color-dark);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 10px;
}

.list article:before,
.lwptoc ul li:before {
    background-color: transparent;
    background-size: contain;
    content: "";
    width: 22px;
    height: 14px;
    position: absolute;
    left: 0;
    border: 0!important;
}

.correlate article:before,
.lwptoc ul li:before {
    background-image: url('https://www.gloriaingrassia.com/images/arrow-right.svg');
    background-repeat: no-repeat;
    top: 10px;
}

.elementor-accordion ol,
.elementor-widget-theme-post-content ol {
    counter-reset: list-counter;
    padding-left: 20px;
}

.elementor-accordion ol li,
.elementor-widget-theme-post-content ol li {
    counter-increment: list-counter;
    padding-left: 50px;
}

.elementor-accordion ol li:before,
.elementor-widget-theme-post-content ol li:before {
    content: counter(list-counter, decimal-leading-zero) ".";
    position: absolute;
    top: -4px;
    left: 0;
    width: 36px;
    height: 36px;
    line-height: 36px;
    border-radius: 50%;
    text-align: center;
}

.elementor-widget-theme-post-content a {
    border-bottom: 1px solid var(--color-primary);
    color: var(--color-primary);
}

.elementor-g-recaptcha {
    display: none!important;
}

/** MEDIA QUERY **/

@media ( max-width: 767px ) {

    .glr-list-posts article {
        display: block;
    }

    .glr-list-posts article > *:last-child {
        margin-top: 20px;
        text-align: left;
    }

    .elementor-widget-theme-post-content ul,
    .elementor-widget-theme-post-content ol {
        padding-left: 0!important;
    }

}

/* ALIGNMENTS */

.m-left-auto .e-con-inner {
    margin: 0 0 0 auto!important;
}

.m-right-auto .e-con-inner {
    margin: 0 auto 0 0!important;
}

/** SPACE */

.m-t-30 {
    margin-top: 30px;
}

.m-b-30 {
    margin-bottom: 30px;
}

.m-30-0 {
    margin: 30px 0;
}

.m-0-30 {
    margin: 0 30px;
}

.p-t-30 {
    padding-top: 30px;
}

.p-b-30 {
    padding-bottom: 30px;
}

.p-30-0 {
    padding: 30px 0;
}

.p-0-30 {
    padding: 0 30px;
}

.p-0-5 {
    padding: 0 5px;
}

.p-0-10 {
    padding: 0 10px;
}

/** WOOCOMMERCE */

.woocommerce div.product div.images {
    margin-bottom: 0!important;
}
