/*
Theme Name:     LG Engenharia
Author:         Sites&Cia
Author URI:     http://sitesecia.com.br
Template:       generatepress
Version: 		1.00
*/

body, button, input, select, textarea {font-size: 16px; font-weight: 300; line-height: 1.2em;}

h1 {font-weight: 700; font-size: 42px; line-height: 1.1em; text-transform: uppercase;  margin-bottom: 0.6em;}
h2 {font-weight: 700; font-size: 28px; line-height: 1.2em; text-transform: uppercase; letter-spacing: 2px; margin-top: 1.8em; margin-bottom: 0.6em;}
h3 {font-weight: 600; font-size: 22px; line-height: 1.2em; margin-bottom: 0.3em;  margin-top: 1em;}
h4 {font-weight: 700; font-size: 1em; margin-top: 1em; margin-bottom: 0.3em; display: inline-block; padding: 2px;}
h6 {font-weight: 700; font-size: 1em; text-transform: uppercase; margin-top: 1.2em; margin-bottom: 0.2em;}

a, a > * {transition: all 0.3s ease;}
.inside-article p a {font-weight: 500; text-decoration: underline;}

.gb-shape--divider {
    overflow-x: hidden;
    overflow-y: hidden;
    pointer-events: none;
    position: absolute;
    left: 0;
    right: 0;
}
.rank-math-breadcrumb {font-size: 0.9em; color: var(--destaque2); font-weight: 200;}
.rank-math-breadcrumb a {color: var(--base); opacity: 0.7;}
.rank-math-breadcrumb span.last {font-weight: 500;}
.rank-math-breadcrumb p {margin-bottom:0.5em;}

.titdestaque {display: flex; flex-direction: column; text-align: center; margin-top: 0; margin-bottom: 1em;}
.titdestaque .gb-shape svg {fill: var(--destaque2); width: 2em; height: 1em;}

.titdestaque2 {border-bottom: 5px solid var(--destaque2); padding: 0 1em; justify-self: center; font-size: 1.8rem; letter-spacing: 0;}

.entry-header > .entry-title {margin-top: 0;}

.cabe {background-color: var(--base2); position: relative;}
.cabe > span {
    bottom: 0;
    transform: scale(-1, 1);
}
.cabe > span svg {
    width: 100%;
    height: 50px;
    color: var(--base2);
    fill: var(--base);
}
.cabe > div {padding: 210px 20px 80px 20px; margin: 0 auto; max-width: var(--gb-container-width);}
.cabe .gb-text {
	justify-self: center;
}

.cabe h1.gb-text {
    padding: 0 12px; text-align: center;
    border-bottom: 5px solid var(--destaque2);
    max-width: 750px;
    padding-bottom: 6px;
}
.cabe .meta {
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: left;
    gap: 7px;
    letter-spacing: 0.125em;
    text-transform: uppercase;
}
.cabe .meta p {margin: 0;}
.cabe .meta p + p {border-left: 1px solid var(--base); padding-left: 7px;}
.cabe a:hover {text-decoration: underline;}

.home .site-logo, .left-sidebar .site-logo, .single-post .site-logo {
    background: var(--base);
    padding: 2em 1em;
    margin-top: -20px;
}
.home .main-navigation .main-nav ul li a,
.home .main-navigation .menu-toggle,
.home .main-navigation .menu-bar-items,
.left-sidebar .main-navigation .main-nav ul li a,
.left-sidebar .main-navigation .menu-toggle,
.left-sidebar .main-navigation .menu-bar-items,
.single-post .main-navigation .main-nav ul li a,
.single-post .main-navigation .menu-toggle,
.single-post .main-navigation .menu-bar-items,
.single-post .cabe .gb-text,
.left-sidebar .cabe .gb-text,
.cabe a  {
	color: var(--base);
}

.home .cabe {color: var(--base); font-size: 0.75em;}
.home .cabe > div {padding: 230px 80px 80px 80px;}
.home .cabe .gb-text {justify-self: start;}
.home .cabe h1 {
    text-align: left;
    padding: 0;
    text-transform: unset;
    border: none;
    line-height: 1.3em;
}
.home .cabe h1 strong {color: var(--destaque2);}
.home .cabe .preh1 {text-transform: uppercase; font-size: 1.1em; text-align: left;}
.home .cabe .preh1 strong {font-weight: 600;}
.home .cabe h1, .left-sidebar .cabe h1, .single-post .cabe h1 {color: var(--base);}
.home h2 {margin-top: 0;}

.boxpagina {gap: 1em; display: flex; justify-content: center;}
.boxpagina p {margin: 0;}
.boxpagina > * {border-radius: 2em; color: var(--base); padding: 2em; text-decoration: none; box-sizing: border-box; flex-shrink: 1; flex-grow: 1; flex-basis: 0; z-index: 1;}

.boxpagina h2,
.boxpagina h3 {color: var(--base); margin-top: 0; text-transform: none; letter-spacing: -1px; font-weight: 500; font-size: 1.2em;}

.boxflat h2 {margin-bottom: 0;}

.boxservicos h2 {margin-bottom: 1em;}

.boxflat > div,
.boxflat a {background-color: var(--destaque2);;}

.boxflat a:hover {background-color: var(--destaque);;}

.boxpagina a:hover {color: var(--base);}

.boxservicos {flex-wrap: wrap; justify-content: space-between;}
.boxservicos a {min-width: 300px; position: relative;}
.boxservicos > a:hover {background-color: var(--base);}

.home .boxpagina.boxflat {flex-wrap: wrap;}
.home .boxpagina.boxflat a {align-content: center; flex: 0; min-width: 340px; max-width: 100%; text-align: center;}

.boxservicos > a::before {
    content: '';
    box-sizing: border-box;
    background-color: var(--destaque2);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scaleX(0); /* Initially hidden or very thin */
    transform-origin: bottom left; /* Scales from the left edge */
    transition: transform 0.3s ease-out;
    z-index: -1 ;
}
.boxservicos > a:hover::before {transform: scaleX(1);}

/*
.boxpagina > a > .gb-text {color: var(--contraste);} 
.boxlaranja > a > h2 {color: var(--contraste);}
.boxlaranja h2 {margin-top: 0; letter-spacing: 0; line-height: 1em;}
.boxlaranja a:hover > h2 {color: var(--base);}
.boxlaranja a:hover > .gb-text {color: var(--base);}
*/


.button {
    display: inline-flex;
    align-items: center;
    gap: 0.2em;
    text-decoration: none !important;
    cursor: pointer;
}

.button.accent {background-color: var(--contraste3);}
.button.accent:hover {background-color: var(--destaque4);}

.sidebar .widget {background: none;}
.is-right-sidebar {text-align: right;}
.sidebar aside {margin-bottom: 4em;}

.maisservicos ul {font-size: 0.9em;}
.maisservicos ul li {margin-bottom: 2px; background-color: var(--base2); z-index: 1;}
.maisservicos ul li a {
    display: block;
    padding: 1em;
}
.maisservicos ul li a::before {
    content: '';
    box-sizing: border-box;
    background-color: var(--destaque);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scaleX(0.012); /* Initially hidden or very thin */
    transform-origin: bottom left; /* Scales from the left edge */
    transition: transform 0.3s ease-out;
    z-index: -1 ;
}
.maisservicos ul li a:hover {color: var(--base);}
.maisservicos ul li a:hover::before {transform: scaleX(1);}

.maisservicos ul li.current-menu-item {font-weight: 700 ; background-color: var(--base);}
.maisservicos ul li.current-menu-item a {cursor: auto; color: var(--destaque);}
.maisservicos ul li.current-menu-item a::before {background-color: var(--destaque2);}
.maisservicos ul li.current-menu-item a:hover {}
.maisservicos ul li.current-menu-item a:hover::before {transform:  scaleX(0.012);;}


.conhecaLG {
    align-items: center;
    background-color: var(--destaque);
    color: var(--base);
    column-gap: 0.6em;
    display: flex;
    flex-direction: row;
    text-decoration: none;
    padding: 1rem 0.9rem;
    display: flex;
    margin: 2em auto;
}
.conhecaLG svg {width: 2.5em; height: 2.5em;}
.conhecaLG .gb-text {font-weight: 200;}
.conhecaLG .gb-text strong {font-weight: 600; font-size: 0.95em; display: inline-block; margin-bottom: 0.2em;}
.conhecaLG:hover {background-color: var(--destaque4); color: var(--base);}


.whatslateral {
    align-items: center;
    color: var(--contraste2);
    column-gap: 0.5em;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

.whatslateral svg {
    width: 2.5em;
    height: 2.5em;
    fill: currentColor;
    color: #2aad4f;
}
.whatslateral:hover {letter-spacing: 3px;}

.cta {
    align-items: center;
    background-color: var(--destaque4);
    color: var(--base);
    display: flex;
    justify-content: space-around;
    margin-top: 4em;
    padding: 1.5em;
    gap: 1.5em;
}
.cta > div > div:first-child {font-size: 1.5em; font-weight: 200; line-height: 1.3em;}
.cta > div > div:last-child {font-size: 1.8em; font-weight: 600; line-height: 0.9em;}

.clientes {
    gap: 3em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.clientes figure {height: 40px;}

.clientes figure img {
    width: auto;
    object-fit: contain;
    height: 100%;;
}

.clienteshome {gap: 1em; align-items: center;}
.clienteshome .gs_logo_single img {max-height: 36px; width: auto; filter: grayscale(1); opacity: 0.7;}
.clienteshome h2 {border-left: 4px solid var(--destaque2); padding-left: 1em; letter-spacing: 0; margin-right: 1em;}
.clienteshome > div + div {overflow: auto;}

:root {
    --wp--style--gallery-gap-default: 1em;
    --gallery-block--gutter-size: 1em;
    --wp--style--block-gap: 0.5em;
}

.site-footer .gb-shape {line-height: 0;}
.site-footer a {color: var(--base);}
.site-footer > div {   
    background-color: var(--destaque);
    color: var(--base);
    font-size: 15px;
    position: relative;
}

.site-footer > div > span {top: 0; transform: scale(1, -1);}
.site-footer > div > span > svg {width: 100%; height: 40px; fill: var(--base);}

.site-footer h6 {color: var(--base); margin: 0; margin-bottom: 0.7em;}

.site-footer > div > div {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--gb-container-width);
    position: relative;
    padding: 90px 25px 40px 25px;
}
.site-footer nav ul {gap: 0;}
.site-footer nav a {color: var(--base); display: block; padding: 2px 0; font-weight: 200;}
.site-footer nav a:hover {color: var(--destaque2) !important; font-weight: 600;}

.atendimento {
    display: flex;
    flex-direction: column;
    row-gap: 0.5em;
}
.atendimento > a {
    align-items: center;
    column-gap: 0.3em;
    display: flex;
    color: inherit;
}

.atendimento .gb-shape svg {
    color: var(--destaque2);
    width: 1.4em;
    height: 1.4em;
}


.atendimento > a:is(:hover,:focus) {
    color: var(--contraste2);
    background-color: var(--base);
}

.redessociais {
    align-items: center;
    column-gap: 0.5em;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    margin-left: 1.5em;
    margin-top: 1.5em;
    row-gap: 0.5em;
    max-width: 300px;
}

.redessociais a {
    color: var(--destaque);
    display: flex;
    text-align: center;
    text-decoration: none;
    border: 1px solid var(--base);
    border-radius: 50px;
    padding: 8px;
    background-color: var(--destaque);
}

.redessociais a:is(:hover,:focus) {
    background-color: var(--base);
    border: 1px solid var(--destaque);
}


.redessociais a .gb-shape svg {
    color: var(--base);
}
.redessociais a:is(:hover,:focus) .gb-shape svg {
    color: var(--destaque2);
}

.site-footer .creditos {
    display: flex;
    font-size: 0.75em;
    justify-content: center;
    letter-spacing: 2px;
    margin-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, 0.21);
    padding: 40px 0px;
}
.site-footer .creditos a {color: rgba(255, 255, 255, 0.42);}
.site-footer .creditos a:hover {
    color: var(--base);
    letter-spacing: 0px;
}

.site-footer ul.menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (max-width: 768px) {
    .is-left-sidebar.sidebar {margin-top: 2em; margin-bottom: 2em;}
    .cta {flex-wrap: wrap;}
    h1 {font-size: 32px; letter-spacing: -1px; word-break: break-word;}
    .home .cabe > div {padding-left: 20px; padding-right: 20px;}
    .home .cabe h1 {line-height: 1.1em;}
}