/* Colori */
:root {
--primary-color: #031903;
/*--secondary-color: #abba2a;*/
--secondary-color: #c4bd17;
/*--light-color: #cfd0b8;*/
--light-color: #eaebd8;
/*--accent-color: #abba2a;
--accent-color: #8e9b1d;*/
--accent-color: #c4bd17;
}

.nora main a:not(.fa):not(.btn),
.nora footer a:not(.fa):not(.btn) {
    /*color: unset;*/
}

html, body {
    background-color: var(--primary-color);
    font-family: 'Lora', serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.nora .colmax {
    max-width: 1400px;
    margin-inline: auto;
}

.nora .grid {
    display: grid;
}

.nora .flex {
    display: flex;
}

.nora .txtcenter {
    text-align: center;
    margin-inline: auto;
}

.nora img {
    display: block;
    height: auto;
    width: 100%;
}
.nora .logo {
    flex: min-content;
}
.nora .logo img {
height: 100;
max-width: 150px;
/*max-height: 52px;*/
padding: .2em 0;}
/*
img {
    display: block;
    max-width: 100%; responsive but up to max image width
}
*/
.nora div.ccm-page header {
background-color: var(--accent-color);
}
.nora .hero {
    min-height: 7em;
}

.nora .intro img,
.nora .maincontent img,
.nora .galleryitems img {
    border-radius: 5px;
}

.nora .topbar, .nora .mainnavigation, .nora main section, .nora footer {
    padding-inline: 1em;
}
.nora .ccm-responsive-overlay {
    background-color: var(--primary-color);
    padding: 0;
}

/* Page Type specific */
.nora .page-type-blog main,
.nora .page-template-full main,
.nora .page-template-right-sidebar main,
.nora .page-template-right-sidebar-blog main,
.nora .page-template-right-sidebar-snipcart main,
.nora .page-template-azienda main {
    background-color: var(--light-color);
    padding-top: 1em;
}
.nora .page-type-blog .page-title,
.nora .page-template-full .page-title,
.nora .page-template-right-sidebar .page-title,
.nora .page-template-azienda .page-title {
color: var(--primary-color);}

.nora .col-sidebar {
background-color: var(--primary-color);
padding: 1em;
}

.nora .page-template-right-sidebar-blog h1,
.nora div.ccm-page div.ccm-block-page-title-byline h1.page-title,
.nora div.ccm-page div.ccm-block-page-title-byline span.page-date,
.nora div.ccm-page div.ccm-block-page-title-byline span.page-author {
    color: var(--primary-color);
}
/* End Page Type specific */

/* Elements */
.nora .topbar {
    background-color: var(--secondary-color);
    color:var(--primary-color);
}

.nora .mainnavigation {
    background-color: var(--primary-color);
    box-shadow: var(--primary-color) 0 0 5px;
}

.nora section {
    padding: 5rem 0;
}
.nora section.contatti {padding: 0 0 5rem 0;}
.nora .intro {
    background: var(--primary-color) url('../images/introbg.jpg') no-repeat;
    background-size: cover;
}

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

.nora footer {
    border-top: var(--secondary-color) 1px solid;
}
.nora footer > .colmax {
    flex-direction: column;
    margin-top: 1em;
}
.nora footer > .colmax div {
    margin-bottom: 1em;
}
.nora footer .copyright {
    padding: 1em 0;
}
.nora footer h4 {
    margin-bottom: .5em;
}

.nora .topbar .colmax,.nora .mainnavigation .colmax {
    justify-content: space-between;
    align-items: center;
    padding: .5em 0;
}
/* Homepage Hero */
.nora .hero {
    position: relative;
}
.nora .hero .teaser-text{
position: absolute;
display: grid;
align-content: center;
justify-content: center;
width: 100%;
height: 100%;
padding: 0 1rem;
text-align: center;
}

/* Homepage Intro e main */
.nora .intro .colmax.grid,
.nora .mainintro.grid {
    gap: 2em;
}
.nora .intro .image {
    justify-self: center;
}

/* Homepage cards */
.nora .prod-showcase {
    margin-top: 7rem;
}

.nora .showcase {
    margin: 3rem auto;
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
    gap: 3em;
}
.nora .showcase article h3 a,
.nora .showcase article h3 a:hover,
.nora .showcase article h3 a:focus {
    color: var(--secondaary-color);
}
.nora .showcase article img {
    max-width: 320px;
    margin-inline: auto;
}
.nora .showcase article .subtitle3 {
    font-size: 1.4rem;
}
.nora .showcase article small {
    display: block;
    font-size: 1.1rem;
}
.nora .showcase article .subtitle3,
.nora .showcase article small {
    margin-bottom: .5em;
}

/* Homepage gallery */
.nora .homegallery {
    background-image: url('../images/bg-olionora-olio.png');
    background-size: 359px;
    background-repeat: no-repeat;
    background-position-x: center;
}
.nora .homegallery .galleryitems {
    margin: 5rem auto;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 3em;
}

/* Footer navigation */
.nora footer .menucopy nav ul {
    display: flex;
    flex-direction: column;
}
.nora footer .menucopy nav ul a {
    margin-bottom: .2em;
}

/* Typography */
.nora h1, .nora h2, .nora h3, .nora h4, .accent {
    color: var(--accent-color);
}
.nora h1,
.nora .page-type-blog h1.page-title,
.nora .page-template-full h1.page-title,
.nora .page-template-azienda h1.page-title {
    text-transform: uppercase;
    font-size: clamp(1.4rem, 2.9vw, 5rem);
    font-weight: 100;
}
.nora h2,
.nora .page-type-blog h2 {
    text-transform: uppercase;
    /*font-size: clamp(1.6rem, 2.4vw, 2.4rem);*/
    font-size: clamp(2rem, 3vw, 4rem);
    font-weight: 100;
}
.nora h3 {
    text-transform: uppercase;
    font-size: clamp(1.4rem, 2vw, 2rem);
    font-weight: 100;
}
.nora h4 {
    text-transform: uppercase;
    font-size: clamp(1rem, 2vw, 1.4rem);
    font-weight: 100;
}
.nora p.subtitle {
    font-size: clamp(1.2rem, 2vw, 2rem);
    margin-bottom: 1em;
}
.nora p {
    font-size: clamp(1rem, 1.2vw, 1.4rem);
    margin-bottom: 1rem;
}
.nora footer p {
    font-size: clamp(.9rem, 1.2vw, 1.1rem);
    margin-bottom: .5em;
}
.nora .teaser-text h1 {
    text-transform: uppercase;
    font-size: clamp(1.4rem, 5.9vw, 5rem);
    font-weight: 100;
}
.nora .teaser-text p {
    font-size: clamp(1rem, 2.2vw, 3.4rem);
    margin-bottom: 1rem;
}

.nora a {
    text-decoration: none;
    color: var(--accent-color);
}

.nora .accent {
    color: var(--accent-color);
}
.nora .sociallinks a {
    text-decoration: none;
    color: inherit;
}
.nora .sociallinks a + a {
    margin-left: 1em;
}
.nora .contactinfo {
    font-size: .8rem;
}

.nora .whitetext, .nora .whitetext p {
    color: var(--light-color);
}
.nora .darktxt p {
    color: var(--primary-color);
}
.nora .topbar .contactinfo i, .nora .topbar .sociallinks i {
    font-size: 1em;
}

.nora .hero .teaser-text p {
    color: var(--light-color);}

/* product page */
.nora .thumb-image img {
    max-width: max-content;
}
/* Decoration elements */
    .nora main {
    box-shadow: var(--primary-color) 0 0 5px;
    overflow: hidden;}
    .nora .intro,
    .nora .oliveelement {
        position: relative;
    }
    .nora .intro::before {
        content: url('../images/olive.png');
        position: absolute;
        left: -12em;
        bottom: -12em;
        transform: rotate(-170deg) scale(.7);
    }
   .nora .intro::after {
        content: url('../images/olive.png');
        position: absolute;
        right: -12em;
        bottom: -12em;
        transform: rotate(50deg);
        transform: scale(.7);
    }
    .nora .oliveelement::after {
        content: url('../images/olive.png');
        position: absolute;
        right: -9em;
        top: 5em;
        transform: scale(.7) translateX(2em);
    }
    .nora .dividerbottom {
        transform: translateY(-2px);
    }

/* Snipcart Button */
.nora .snip-button button,
.nora .snip-button input[type="submit"],
.nora .snip-button input[type="reset"]  {
    background-color: var(--accent-color);
    border: none;
    color: var(--primary-color);
    display: inline-block;
    margin-top: 1em;
    padding: .5em 1em;
    text-transform: uppercase;
    transition: .2s ease;
}
.nora .snip-button button:hover,
.nora .snip-button button:focus {
    background-color: var(--primary-color);
    color: var(--accent-color);
}
/* End Snipcart Button */


/* Media Queries */
    @media screen and (min-width:360px) {
    .nora .topbar .contactinfo i, .nora .topbar .sociallinks i {
        font-size: 1.2em;
    }
    .nora .contactinfo {
        font-size: initial;
    }
}
@media screen and (max-width:1500px) {
    .nora .colmax {max-width:1280px;}
}

@media screen and (min-width:768px) {
    .nora .intro .colmax.grid {
        gap: 3em;
        grid-template-areas: 'image text';
        grid-template-columns: 3fr 4fr;
        align-items: center;
    }

    .nora .mainintro.grid {
        gap: 3em;
        grid-template-areas: 'text image';
        grid-template-columns: 4fr 3fr;
    }
    .nora .homegallery {
    background-size: 500px;
    background-position-x: right;
}
    .nora .showcase {
        width: 90%;
    }

    .nora footer > .colmax {
        /*justify-content: space-between;
        flex-direction: initial;*/
        grid-template-columns: repeat(4, auto);
}

}

@media screen and (min-width: 1072px) {
    .nora .homegallery .galleryitems {
        grid-template-columns: repeat(3, auto-fit, minmax(290px, 1fr));
    }
    .nora .galleryitems img {
        opacity: .6;
        transition: ease .2s;
    }
    .nora .galleryitems img:hover {
        opacity: 1;
        transform: scale(1.02);
    }
/*    .nora .intro::before,
    .nora .oliveelement::after {
        transform: unset;
    }
    .nora .intro::after {
        transform: translateY(2em);
    }*/
}