﻿/* --------------------------------------------------------------------------------
GUILHERME PEREIRA
Criacao em: 03/09/15
Autor: Guilherme Pereira <contato@guilhermepereira.com.br>
-------------------------------------------------------------------------------- */

:root {
  /* Brand Colors */
  --color-primary:        #07989c;
  --color-primary-light:  #1ebfc3;
  --color-primary-intense: #4dffcd;
  --color-dark:           #2c3e51;
  --color-accent:         #4de9ff;
  --color-text:           #657281;
  --color-bg:             #f1f5f8;
  --color-white:          #ffffff;

  /* Typography */
  --font-base: 'Source Sans Pro', sans-serif;
  --font-size-base: 16px;
  --font-size-sm: 14px;
  --font-size-lg: 18px;
  --font-size-xl: 24px;
  --font-size-2xl: 32px;
  --font-size-3xl: 48px;
  --line-height-base: 1.6;
}


html {
    width: 100%;
    height: 100%;
    margin: 0px auto;
}

* {
    padding: 0;
    margin: 0;
}

body {
    width: 100%;
    min-height: 100%;
    margin: 0 auto;
   font-family: 'Source Sans Pro', sans-serif;
    color: var(--color-text);
    font-size: 20px;
    background: var(--color-bg);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Source Sans Pro', sans-serif;
}

h6 {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 40px;
}


* html .geral {
    height: 100%; /* hack para IE6 que trata height como min-height */
}

/***************************************************************************************
* FONTES
***************************************************************************************/
.light {
    font-weight: 300;
}

.regular {
    font-weight: 400;
}

b {
    font-weight: 700;
}

p{
    line-height: 30px;
}

strong {
    font-weight: 900;
}

.regular {
    font-weight: 400;
}

b {
    font-weight: 700;
}

strong {
    font-weight: 900;
}

.ttl-01{
    text-transform: uppercase;
    color:var(--color-dark);
    font-size: 50px;
    font-weight: 900;
    line-height: normal;
}
.txt-descricao-01{
    color:var(--color-primary);
    font-weight: 900;
    font-size: 18px;
    display: block;
}
.line{
    width: 65px;
    height: 1px;
    background: var(--color-primary);
    margin: 0 auto;
    display: block;
    margin: 20px auto 50px auto;
}

.ttl-02{
     color:var(--color-dark);
     font-weight: 300;
     margin-bottom: 20px;
     text-align: center;
     font-size: 30px;
         line-height: 35px;
}

.txt-descricao-02{
    color:var(--color-primary);
    font-weight: 400;
    font-size: 18px;
    display: block;
    margin-bottom: 10px;
}


.ttl-03{
    text-transform: uppercase;
    color:var(--color-dark);
    font-size: 30px;
    font-weight: 900;
    margin-bottom: 30px;
    line-height: 35px;
}

.txt-servicos{
    color:var(--color-text);
    text-align: center;
    line-height: 30px;
    margin-bottom: 50px;
}

.txt-destacado{
    color:var(--color-primary);
    border-left: 3px solid var(--color-primary);
    padding-left: 30px;
}

.ttl-04{
    font-size: 40px;
    font-weight: 700;
    color: #07F9FF;
    line-height: 45px;
         padding: 50px 0;
}

.ttl-05{
    text-transform: uppercase;
    color:var(--color-dark);
    font-size: 40px;
    font-weight: 900;
    line-height: normal;
}


.ttl-perfil{
    background: url('../img/guilherme-pereira-portfolio-header-perfil.jpg') no-repeat center center;

}

.ttl-projetos{
    background: url('../img/guilherme-pereira-portfolio-header-projetos.jpg') no-repeat center center;
}

.ttl-blog{
    background: url('../img/guilherme-pereira-blog-ux-design-banner.jpg') no-repeat center center;
}

.ttl-404{ 
    background: url('../img/pagina-nao-encontrada-404-guilherme-pereira.gif') no-repeat center center;
}

/***************************************************************************************
* CORES
***************************************************************************************/
.branco{
    color: var(--color-white);
}

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

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

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

.verde{
    color: var(--color-primary);
}

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

.verde-claro{
    color:var(--color-primary-light);
}

.bg-verde-claro{
 background-color:var(--color-primary-light);
}

.verde-intensive{
color:var(--color-primary-intense);
}
.bg-verde-intensive{
background-color:var(--color-primary-intense);
}

.verde-vega{
    background-color: #b9d30b;
}

.bg-azul-clarinho{
    background-color: #dae8f3;
}

.azul-intensive{
    color:var(--color-accent);
}

.bg-azul-intensive{
    background-color:var(--color-accent);
}

/***************************************************************************************
* BOTÕES
***************************************************************************************/
.menu-desktop li.bt-verde {
    margin: 28px 20px;
    height: 50px;
    line-height: 50px;
    display: inline-block;
    color:var(--color-white);
    background-color: var(--color-primary);
    -webkit-border-radius: 25px;
    border-radius: 25px;
    padding: 0 25px;
    -webkit-transition:  0.1s; /* For Safari 3.1 to 6.0 */
     transition:  0.1s;
    border:none;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 18px;
}

.bt-verde{
    height: 50px;
    line-height: 50px;
    display: inline-block;
    color:var(--color-white);
    background-color: var(--color-primary);
    -webkit-border-radius: 25px;
    border-radius: 25px;
    padding: 0 40px;
    -webkit-transition:  0.1s; /* For Safari 3.1 to 6.0 */
     transition:  0.1s;
    border:none;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 18px;
    text-decoration: none;
}
.menu-desktop .bt-verde a, .menu-desktop .bt-verde a:hover {
  color:var(--color-white);
}
.menu-desktop li.bt-verde {
    height: 40px;
    line-height: 40px;
    -webkit-border-radius: 20px;
    border-radius: 20px;
}

.menu-desktop li.bt-verde:hover,
.bt-verde:hover{
    background-color: var(--color-primary-light);
    color:var(--color-white);
    border:none;
}

.bt-verde i{
    margin-right: 10px;
    font-weight: 400;
    font-size: 21px;
    display: block;
    float: left;
    margin-top: 9px;
}

.bt-enviar{
    padding: 0 40px;
    width:25%;
    text-transform: uppercase;
    margin: 20px 0 30px 0;
}

    .bt-outline{
        width: auto;
        margin: 0 auto;
        display: inline-block;
        padding: 0 30px;
        font-size: 12px;
        border: 1px solid var(--color-primary);
         -webkit-border-radius: 15px;
        border-radius: 15px;
        line-height: 30px;
        color:var(--color-primary);
        text-transform: uppercase;
        text-decoration: none;
         -webkit-transition:  0.1s; /* For Safari 3.1 to 6.0 */
         transition:  0.1s;
    }
        .bt-outline-big {
        width: auto;
        margin: 0 auto;
        display: inline-block;
        padding: 0 60px;
        font-size: 18px;
        border: 1px solid var(--color-primary);
         -webkit-border-radius: 15px;
        border-radius: 25px;
        line-height: 50px;
        color:var(--color-primary);
        text-transform: uppercase;
        text-decoration: none;
         -webkit-transition:  0.1s; /* For Safari 3.1 to 6.0 */
         transition:  0.1s;
    }


/***************************************************************************************
* HEADER
***************************************************************************************/

header {
    width: 100%;
    background-color: var(--color-white);
    border-bottom: 1px solid #e2e2e2;
    /*box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 5px 0px;*/
    height: 95px;
    position: relative;
    z-index: 1;
}

header .marca{
    display: block;
    float: left;
    margin: 13px 0 0 3%;
    text-indent:-9999px;
}

header .img-marca-celular{
    width: 96px;
}

header .img-marca-desktop{
    width: 315px;
}


.menu-mobile {
    float: right;
    color: var(--color-primary);
    font-size: 32px;
    line-height: 85px;
    background: none;
    border: none;
    outline: none;
    margin: 0px 3% 0 0;
}

.menu-desktop{

    font-size: 16px;
    font-weight: 900;
    float: right;
}

.menu-desktop li{
    line-height: 95px;
    float: left;
}
.menu-desktop li a{
    margin: 0 20px;
    color:#2d3f51;
    text-decoration: none;
    text-transform: uppercase;
    height: 95px;
    display: block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition:  0.5s; /* For Safari 3.1 to 6.0 */
    transition:  0.5s;
}

.menu-desktop li a:hover
{
    color:var(--color-primary);
    border-bottom: 2px solid var(--color-primary);
}

.bt-fechar{

    font-size:32px;
    background: none;
    border:0;
    color:var(--color-primary-light);
    float:right;
    margin: 23px 3% 0 0;
}

.md-show.md-effect-12 ~ .md-overlay{
background-color: var(--color-dark);
}

.md-show ~ .md-overlay {
    opacity: 0.9;
    visibility: visible;
}

.lista-menu-mobile li{

    list-style: none;
}

.lista-menu-mobile li a{
    width: 100%;
    height: auto;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
    text-align: center;
    line-height: 70px;
    text-decoration: none;
    color:var(--color-white);
    display: block;
}

/***************************************************************************************
* SECTION-BANNER
***************************************************************************************/
#fullpage{
        margin-top: -95px;
    z-index: 0;
}
#fullpage .fp-section.active {
    background-color: var(--color-dark) !important;
}

.slide{
-webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
      padding: 0 10%;
      background-position: center;
}

.fp-controlArrow{
    top: 55% !important;
}

.fp-controlArrow.fp-next,
.fp-controlArrow.fp-prev{
    border: none;
    font-size: 80px;
    color:var(--color-primary);
    font-family: 'icomoon';
    width: 100px;
}

.fp-controlArrow.fp-next:after{
    content: "\e61c";
}
.fp-controlArrow.fp-prev:after{
    content: "\e612";
}

.fp-section.fp-table, .fp-slide.fp-table {
    padding: 0 5%;
}

#fp-nav ul li a span, .fp-slidesNav ul li a span {
background: var(--color-bg) !important;
}
#fp-nav ul li a.active span, .fp-slidesNav ul li a.active span {
    background: var(--color-primary) !important;
}

.ttl-banner{
    color:var(--color-primary-intense);
    font-size: 36px;
    font-weight: 900;
    margin-bottom: 30px;
    padding: 0 10%;
    line-height: normal; 

}

.intro p {
    padding: 0 24%;
    font-size: 16px;
    line-height: 24px;
}

.txt-banner p{
    color:var(--color-white);
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 50px;
}

.padding-banner{
    padding-top: 50px;
}

#fullpage .bt-verde {
    background-color: var(--color-primary-intense);
    color: var(--color-dark);
    font-weight: 600;
}

/***************************************************************************************
* SECTION-PORTFOLIO
***************************************************************************************/
.section-portfolio{
    padding: 100px 0 50px;
}


/***************************************************************************************
* THUMB-BOX-PORTFOLIO
***************************************************************************************/
img {
    max-width: 100%;
    height: auto;
}
  .thumb-box{
        /*width:100%;*/
        height: 100%;
        background: var(--color-white);
        display: block;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0 auto;
        text-align: center;
        text-decoration: none;
        margin: 0px 5px 30px 0px;
        box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
        border:1px solid transparent;
        -webkit-transition:  0.5s; /* For Safari 3.1 to 6.0 */
         transition:  0.5s;
}
    .thumb-image img {
        width: 100%;
        /*height: 200px;*/
        display: block;
        background: #e8e8e8;
        overflow: hidden;
    }

    /* blog-card: <img> substitui background-image para SEO */
    .thumb-image .thumb-image-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block;
    }

   

    .ttl-box{
       font-size: 20px;
    color: var(--color-dark);
    font-weight: 900;
    padding: 10% 10% 3% 10%;
    width: 100%;
    overflow: hidden;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: -webkit-box;
    height: 133px;
    line-height: 27px;
    margin-bottom: 10px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.page-template-blog .ttl-box{
	height: auto;
}
    .tipo-box{
        font-size: 16px;
        font-weight: 300;
        color:var(--color-primary);
        display: block;
        padding: 0 5% 10% 5%;
            /*white-space: nowrap;*/
    text-overflow: ellipsis;
    }


.thumb-box:hover{
    border:1px solid var(--color-primary);
}

.thumb-box:hover .bt-outline,
.bt-outline:hover {
    background: var(--color-primary);
    color:var(--color-white);

}

/***************************************************************************************
* SECTION-PERFIL
***************************************************************************************/
.section-perfil{
    width: 100%;
    height: auto;
    background: var(--color-primary-intense);
    padding:65px 0 80px 0;
    position: relative;
    margin-top: 110px;
}


.avatar{
    width: 207px;
    height: 300px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    margin-top: -215px;
}
.link-avatar{
    width: auto;
    height: 256px;
    display: inline-block;
    z-index: 0;
    position: relative;
    
}

.link-contato{
    width: auto;
    height: auto;
    display: inline-block;
    position: absolute;
    top: 62px;
    z-index: 1;
    right: -40px;
}

.ico-contato{
    width: 78px;
    height: 78px;    
}

.link-avatar img,
.ico-contato img{
    width:100%;
}

.section-perfil .txt{
    color:var(--color-dark);
    font-weight: 300;
    font-size: 18px;
    text-align: center;
    line-height: 30px;
    margin-bottom: 50px;
}

.section-perfil .txt b{
    font-weight: 900;
}

.section-perfil .ttl-01{
    text-align: center;
    margin-bottom: 30px;
        margin-top: 10px;
}

.section-perfil .ttl-02{
 	margin-bottom: 0;
    text-align: left;
    font-size: 20px;
    font-weight: 500;
}

.ttl-meu-nome{
    font-size: 24px;
    color:var(--color-primary);
    text-align: center;
    line-height: auto;
    font-weight: 300;
}

.lista-redes-sociais{
display: inline-block;
}

.lista-redes-sociais li{
    float:left;
    list-style: none;
    margin-bottom: 20px;
}

.lista-redes-sociais li a{
    padding:0 15px;
    color:var(--color-primary);
    text-decoration: none;
    font-size: 30px;
}

/***************************************************************************************
* SECTION-SERVICOS
***************************************************************************************/
.section-servicos{
    padding: 90px 3% 40px 5%;
}

.box-link-servico{
     width: 100%;
    height: auto;
    position: relative;
     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    display: block;
    overflow: hidden;
    margin-top: 50px;
}

.box-servicos{
    width: 50%;
    height: 600px;
    background-color: var(--color-white);
     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
    -webkit-transition:  0.5s; /* For Safari 3.1 to 6.0 */
     transition:  0.5s;
     display: block;
     padding:7% 5%;
}


.servico-01{
background: url('../img/guilherme-pereira-servico-pesquisa-ux.jpg') no-repeat center center;
}

.servico-02{
background: url('../img/guilherme-pereira-servico-design-interacao.jpg') no-repeat center center;
}

.servico-03{
background: url('../img/guilherme-pereira-servico-gestao-produto.jpg') no-repeat center center;
}

.box-image{
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.ico-servicos{
    display: inline-block;
    margin-bottom: 15px;
}

/***************************************************************************************
* SECTION-BLOG
***************************************************************************************/
section.blog{
    overflow: hidden;
}

.home .ttl-blog{
    margin-bottom: 30px;
}

.ttl-blog .ttl{
    text-transform: uppercase;
    color:var(--color-dark);
    font-size: 50px;
    font-weight: 900;
    color:var(--color-primary-intense);
}

.ttl-blog .txt-descricao{
    display: block;
    color:var(--color-white);
    font-weight: 900;
    font-size: 20px;
    margin-bottom: 20px;
}

.ttl-blog .line{
    background: var(--color-accent);
    margin-bottom: 0;
}

section.blog .flexslider{
    border:none;
    box-shadow: none;
    background: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    padding: 0 7%;
     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 60px;
}

section.blog .flexslider .slides{
            display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

section.blog .flexslider .slides li{
    margin-right: 13px;
    position: relative;
}

section.blog .thumb-box{
    margin-right: 0;
    margin-bottom: 0;
    -webkit-transition: none;
    transition: none;
    position: relative;
    margin: 0 10px; 
    height: 450px;
}

.tag {
    height: 20px;
    line-height: 20px;
    background: var(--color-primary-light);
    font-weight: 900;
    color:var(--color-white);
    text-transform: uppercase;
    padding: 0 10px;
    font-size: 12px;
    position: absolute;
    right: 10px;
    top: 10px;
    display: block;
}

section.blog .thumb-image{
    margin-bottom: 20px;
    height: 200px;
    display: block;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}


.data{
    color:#97a8bc;
    font-size:16px;
    margin-bottom: 15px;
    display: block;
    line-height: 24px;
}

.icon-clock96{
    font-size: 18px;
    margin-right: 7px;
    vertical-align: middle;
}

section.blog .ttl-box{
    text-transform: none;
    font-weight: 700;
    font-size: 18px;
    line-height: 27px;
    margin-bottom: 20px;
    padding-top: 0;
    white-space: initial;
    width: auto;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
        height: 87px;
}

section.blog .flex-control-nav {
 position: relative;
 z-index: 1;
}

section.blog .flex-direction-nav a:before{
    font-family: 'icomoon';
    font-size: 60px;
    display: inline-block;
    color: rgba(0, 0, 0, 1);
    text-shadow: none;
    color:var(--color-primary);
}

section.blog .flex-direction-nav a.flex-prev:before {
   content: "\e612";
}

section.blog .flex-direction-nav a.flex-next:before {
    content: "\e61c";
}

section.blog .flexslider:hover .flex-direction-nav .flex-next {
    opacity: 1;
    right: 20px;
}

section.blog .flexslider:hover .flex-direction-nav .flex-prev {
    opacity: 1;
    left: 20px;
}

section.blog .flex-direction-nav a {
    text-decoration: none;
    display: block;
    width: 80px;
    height: 80px;
    line-height: 80px;
    margin: -20px 0 0;
    text-indent: 9999999;
}

section.blog .flex-viewport{
    height: auto;
}


section.blog .flex-control-paging li a{
width:22px;
height:22px;
background: #d5dfe9;
-webkit-box-shadow: none;
-moz-box-shadow: none;
-o-box-shadow: none;
box-shadow: none;
margin-top: 10px;
}

section.blog .flex-control-paging li a.flex-active {
background: var(--color-primary-light);
}


.slick-prev, .slick-next{
    z-index: 99 !important;
    width: auto !important;
    height: auto !important;
    display: none !important;
}

.slick-next{
    right: 10px !important;
}

.slick-prev{
    left: 10px !important;
}

section.blog .slick-prev:before, section.blog .slick-next:before{
font-family: 'icomoon' !important;
    font-size: 60px !important;
    color: rgba(0, 0, 0, 1) !important;
    text-shadow: none !important;
    color:var(--color-primary) !important;
}

section.blog .slick-prev:before{
   content: "\e612" !important;
}

section.blog .slick-next:before{
    content: "\e61c" !important;
}

.slick-dots li button:before{
    width:22px !important;
height:22px !important;
background: #d5dfe9 !important;
-webkit-box-shadow: none !important;
-moz-box-shadow: none !important;
-o-box-shadow: none !important;
box-shadow: none !important;
margin-top: 10px !important;
border-radius: 30px;
opacity: 1 !important;
content: '' !important;

}

.slick-dots li.slick-active button:before{
    background: var(--color-primary-light) !important;
}

.slick-dots {
    position: relative !important;
    bottom: 0 !important;
}

.blog-carousel:hover .slick-prev, .blog-carousel:hover .slick-next{
    display: block !important;
}


/***************************************************************************************
* PROJETOS
***************************************************************************************/
.projetos-interna{
    padding: 50px 0;
}


/***************************************************************************************
* SINGLE PROJETO
***************************************************************************************/
.ttl-page{
    width: 100%;
    height: auto;
     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 100px 0;
    text-align: center;
    position: relative;
    background-size: cover;
    background-position: center;
}

.ttl-page.ttl-blog {
    margin-bottom: 50px;
}

.breadcrumb{
    width: auto;
    display: block;
    margin: 0 auto;
    font-size: 16px;

}

.breadcrumb a{
    display: inline;
    text-decoration: none;
    color:var(--color-dark);
    margin: 0 3px 0 0;
}


.breadcrumb label{
    font-weight: 900;
}


.breadcrumb.branco label,
.breadcrumb.branco a{
    color:var(--color-white);
}

.breadcrumb a:hover{
    color:var(--color-primary-light);
    text-decoration: underline;
}

.breadcrumb a:after{
    font-family: 'icomoon';
    content: "\e61c";
    margin-left: 5px;
    font-size: 13px;
    text-decoration: none;
}

.full-image{
    width: 100%;
    display: block;
}


.max-image-mockup,
.max-image{
    max-width: 100%;
    display: block;
}



.outros-projetos .ttl{
    width: 100%;
    height: auto;
    padding: 100px 0 50px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#395b77+0,1ebfc3+100 */
    background: rgb(57,91,119); /* Old browsers */
    background: -moz-linear-gradient(left,  rgba(57,91,119,1) 0%, rgba(30,191,195,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(57,91,119,1)), color-stop(100%,rgba(30,191,195,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(left,  rgba(57,91,119,1) 0%,rgba(30,191,195,1) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(left,  rgba(57,91,119,1) 0%,rgba(30,191,195,1) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(left,  rgba(57,91,119,1) 0%,rgba(30,191,195,1) 100%); /* IE10+ */
    background: linear-gradient(to right,  rgba(57,91,119,1) 0%,rgba(30,191,195,1) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#395b77', endColorstr='var(--color-primary-light)',GradientType=1 ); /* IE6-9 */
    margin-bottom: 70px;

}


/***************************************************************************************
* SINGLE PROJETOS
***************************************************************************************/
.ttl-page.bg-azul .ttl-01{
    color:var(--color-primary-intense);
}

.flex-box, #menu-ancora{
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 32px;
}

.flex-box .side-box {
    /* padding: 0 4% 0 0; */
    width: fit-content;
    line-height: 36px;
    width: 505;
    flex: 1;
    min-width: 0;
}

.flex-box .side-box p {
    font-size: 20px;
    line-height: 36px;
}
.flex-box .side-box p.title {
    font-size: 20px;
    line-height: normal;
    margin-bottom: 8px;
}

.flex-box .side-box .wp-caption {
    width: fit-content !important;
}


 #menu-ancora {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 24px;
    gap: 0;
}

 #menu-ancora .side-box {
    padding: 8px;
    display: flex;
    width: auto;
    flex: auto;
}

#menu-ancora .side-box a {
    font-size: 12px;
    padding: 8px 16px;
    margin: 0;
    line-height: normal;
    text-decoration: none;
}



.flex-box.menu-voltar-topo {
    width: 100%;
    justify-content: space-between;
    align-items: baseline;
    gap: 0;
}

.flex-box.menu-voltar-topo .side-box {
    width: auto;
    padding: 0;
    flex: auto;
    padding: 0 4% 0 0;
}

.flex-box.menu-voltar-topo a {
    font-size: 12px;
    padding: 8px 16px;
    margin: 0;
    line-height: normal;
    text-decoration: none;
    float: right;
    white-space: nowrap;
}

/***************************************************************************************
* CONTEUDO PADRAO
***************************************************************************************/

.conteudo-padrao{
    padding: 0px;
    padding-bottom: 30px;
}

.conteudo-padrao p{
    margin-bottom: 30px;
    line-height: 36px;
    
}

.conteudo-padrao a
{
    color:var(--color-primary);
    font-weight: bold;
}

.conteudo-padrao .bt-verde{
    font-weight: normal;
    color:var(--color-white);
}

.conteudo-padrao blockquote p{
    font-weight: 400;
    font-size: 30px;
    color: var(--color-dark);
    margin-bottom: 50px;
    border-left: 4px solid var(--color-primary);
    padding-left: 30px; 
    margin: 60px 10% 60px 10%;
}

.conteudo-padrao h1, 
.conteudo-padrao h2, 
.conteudo-padrao h3, 
.conteudo-padrao h4{
    color:var(--color-dark);
    font-size: 40px;
    font-weight: 900;
    line-height: normal;
    margin-bottom: 50px;
    display: inline-block;
}

.conteudo-padrao h1 span, 
.conteudo-padrao h2 span, 
.conteudo-padrao h3 span, 
.conteudo-padrao h4 span{
    display: inline-block;
    color:var(--color-primary);
    font-size: 20px;
}


.conteudo-padrao h1:after {
    content: '';
    height: 1px;
    width: 100%;
    background: var(--color-primary);
    display: block;
    margin: 0;
    margin-top: 10px;

}



.conteudo-padrao h2{
    font-size: 24px;
    text-transform: none;
    text-align: left;
    margin-bottom: 20px;
}

.conteudo-padrao h2:after{
    margin-left: 0;
    margin-top: 20px;

}

.conteudo-padrao img{
    margin:  0 auto;
}



.conteudo-padrao ul li{
    line-height: 36px;
    margin-bottom: 20px;
    padding-bottom: 10px;
    position: relative;
    border-bottom: 1px solid #c8d7d4;
    padding-left: 30px;
}

.conteudo-padrao ul li:last-child{
    border-bottom: none;
}

.conteudo-padrao ul li:before{
    content: '';
    background-color: var(--color-primary);
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 100%;
    margin-right:10px; 
    position: absolute;
    top:15px;
    left: 0;
}

/***************************************************************************************
* GRID PROJETOS
***************************************************************************************/
.grid-1{
    width: 100%;
    height: auto;
}
.grid-2{
    width: 50%;
    height: auto;
    float: left;
}

.grid-1 img,
.grid-2 img{
    max-width: 100%;
}


/***************************************************************************************
* BLOG
***************************************************************************************/
.conteudo-blog {
    padding-top: 50px;
}

.conteudo-blog .row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.conteudo-blog .row .grid_6{
    margin-bottom: 30px;
}


.conteudo-blog .thumb-image{
    width:100%;
    height: 300px;
    display: block;
}


.conteudo-blog .thumb-box{
    padding: 350px 10% 0px 10%;
    text-align: left;
    position: relative;
}

.conteudo-blog .thumb-image{
    position: absolute;
    top:0;
    left: 0;
    height: 300px;
    z-index: 0;
    background-size: cover;
    background-position: center;
}

.conteudo-blog .thumb-box .tag{
    z-index: 1;
    line-height: 22px;
    height: auto;
    font-size: 14px;
    top:15px;
    right:15px;
}


.conteudo-blog .thumb-box .ttl-box{
    font-size: 24px;
    padding:0;
    line-height: normal;
    text-transform: none;
    margin-bottom: 20px;
    white-space: normal;
    text-overflow: inherit;
}

.conteudo-blog .thumb-box .txt{
    font-size: 18px;
    line-height: 30px;
    color:var(--color-text);
    margin-bottom: 30px;
    display:block;
}

.conteudo-blog .thumb-box .bt-outline{
    margin:0;
}

.conteudo-blog .thumb-box:hover .ttl-box{
    color:var(--color-primary);
}

.box-side-right{
        width:100%;
        height: auto;
        background: var(--color-white);
        display: block;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0 auto;
        text-align: center;
        text-decoration: none;
        margin: 0px 0 30px 0px;
        box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
        -webkit-transition:  0.5s; /* For Safari 3.1 to 6.0 */
         transition:  0.5s;
         padding-bottom: 30px;
}


.buscar {
    position: relative;
}

.buscar input{
        box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
    background: var(--color-white);
}

.bt-pesquisar{
    border:none;
    background-color: var(--color-primary);
    color:var(--color-white);
    width: 70px;
    height: 70px;
    line-height: 70px;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    font-size: 30px;
    text-align: center;
    position: absolute;
    top:0px;
    right: 0px;
}

.bt-pesquisar i{
    line-height: 70px;
}

/***************************************************************************************
* POST
***************************************************************************************/

.image-post{
    background: #e8e8e8;
    width: 100%;
    background-size: cover;
    background-position: center;
    margin-bottom: 50px;
}

.image-post::after {
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    background: rgba(44, 62, 81, 0.7);
    content: "";
}
.image-post .data{
    margin-bottom: 0px;
    text-align: center;
    line-height: 37px;
    margin-right: 15px;
    color:var(--color-white);
    z-index: 1;
    position: relative;
}

.image-post .title{
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 30px;
    color:var(--color-primary-intense);
    line-height: 45px;
    z-index: 1;
    position: relative;

}

.image-post .description{
    font-size: 30px;
    font-weight: 300;
    font-style: italic;
    color:var(--color-white);
    margin-bottom: 50px;
    line-height: 30px;
    z-index: 1;
    position: relative;
}

.image-post .icon-clock96{
    margin-left: 5px;
    font-style: normal;
}

.image-post .breadcrumb{
    margin-bottom: 30px;
    z-index: 1;
    position: relative;
    line-height: 20px;
}
.image-post .breadcrumb a,
.image-post .breadcrumb label{
    color: var(--color-white);    
}
.autor-post{
    color: var(--color-white) !important;
    font-size: 16px;
    text-decoration: none !important;
    display: inline-block;
    line-height: 37px;
    margin-left:10px;
    font-weight: 900;
}

.avatar-post{
    width: 30px;
    height:37px;
     background: url('../img/guilherme-pereira-product-designer-avatar.png') no-repeat center center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      display: inline-block;
      float: left;
      margin-right: 10px;
}


.next-post{
    position: relative;
    height: auto;
    margin-bottom: -160px;
    z-index: 0;
    text-align: center;
    padding: 100px 0 130px 0;
    background: var(--color-primary);
    background-size: cover;
    background-position: center;
}

.next-post::after {
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    background: rgba(7, 152, 156, 0.76);
    content: "";
}

.next-post .title{
    color:var(--color-white);
    text-align: center;
    text-decoration: none;
    font-size: 30px;
    margin-bottom: 30px;
    display: block;
    line-height: 40px;
    font-weight: 700;
    position: relative;
    z-index: 55;
}

.next-post .bt-outline{
    color:var(--color-white);
    border-color:var(--color-white);
    text-decoration: none;
    position: relative;
    z-index: 55;
    margin-bottom: 0;
}

.comentarios{
    padding-bottom: 100px;
}

/***************************************************************************************
* PERFIL
***************************************************************************************/
.perfil{
    padding: 50px 0;
}


.perfil-inicio{
    padding: 100px 0 30px 0;
}

.perfil-inicio .bloco-1,
.perfil-inicio .bloco-2,
.perfil-inicio .bloco-3{
    float: left;
}

.perfil-inicio .bloco-1{
    width: 20%;
    margin-right: 4%;
}
.perfil-inicio .bloco-2{
    width: 76%;
}

.perfil-inicio .bloco-3{
    width: 36%;
}



.ttl-06 {
    color:var(--color-dark);
    font-size: 40px;
    font-weight: 900;
    line-height: normal;
    margin-bottom: 30px;
    text-transform: uppercase;
    display: block;
}

.ttl-06 span{
    display: inline-block;
    color:var(--color-primary);
    font-size: 20px;
}

.ttl-06:after,
.ttl-07:after{
    content: '';
    height: 1px;
    width: 50px;
    background: var(--color-primary);
    display: block;
    margin-top: 10px;

}


.perfil-inicio .lista-redes-sociais li a:first-child{
    padding-left: 0;
}

.perfil-destaque{
    padding: 80px 0;
}

.perfil-destaque.ttl-page{
    padding: 100px 0;
    background: url('../img/guilherme-pereira-product-designer-destaque.jpg') no-repeat center center;
    background-size: cover;
    position: relative;
    color:var(--color-white);
}


.perfil-destaque .ttl-06{
    color:var(--color-white);
    font-size:50px; 
    margin-bottom: 0;
}

.perfil-destaque .ttl-06:after,
.perfil-destaque .ttl-07:after{
    margin: 0 auto;
    margin-top: 20px;
}

.perfil-destaque .ttl-06 span{
    color:var(--color-accent);
    font-size: 16px;
    margin: 0 auto;

}

.ttl-07{
    font-size: 24px;
    text-transform: none;
    color: var(--color-dark);
    font-weight: 900;
    line-height: normal;
    margin-bottom: 30px;
    display: block;
}

.perfil-destaque .intro{
    padding-bottom: 100px;
}

.thumbs-images-perfil .grid_6{
    padding: 0 20px;
}

.box-descricao{
    width: 100%; 
    height: auto;
    background: var(--color-white);
    display: block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    text-align: center;
    text-decoration: none;
    margin: 0px 5px 50px 0px;
    box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
    padding: 40px 40px 10px 40px;
}

.thumbs-images-perfil figure{
    width: 100%;
    height: 300px;
    background-color: #d4eaf2;
    overflow: hidden;
}

.perfil.icones{
    padding-top: 100px;
    padding-bottom: 0;
}

.perfil.icones .ttl-02{
    color:var(--color-primary);
    margin-bottom: 40px;
}

.perfil.icones .txt{
    color:var(--color-dark);
    text-align: center;
    margin-bottom: 100px;
}


/***************************************************************************************
* 404
***************************************************************************************/
.ttl-404 {
    margin-bottom: 50px;
}



.ttl-404 .breadcrumb{
    margin-bottom: 30px;
}

.ttl-404 .ttl-01,
.ttl-404 .breadcrumb{
    z-index: 1;
    position: relative;

}

.ttl-404 .line{
    margin-bottom: 0;
}

.ttl-404::after {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(44, 62, 81, 0.7);
    content: "";
}


/***************************************************************************************
* FOOTER
***************************************************************************************/


footer {
    width: 100%;
    min-height: 100px;
    background-color: var(--color-dark);
    position: absolute;
   /* bottom: 0;*/
    -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        color:var(--color-white);
    margin-top: 160px;
}

.ico-contato-footer {
    width: 110px;
    margin: 0 auto;
    display: block;
    margin-top: -55px;
}


footer label {
    color:#cee6ff;
    display: block;
    font-weight: 300;
}

footer label span {
    color:var(--color-primary-light);
}

footer label i {
    color:var(--color-primary-light);
    margin-right: 10px;
    margin-left: 2px;
}

.ttl-footer {
    font-size: 40px;
    font-weight: 900;
    text-transform: uppercase;
    color:var(--color-primary-light);
    text-align: center;
    margin-bottom: 15px;
    margin-top: 10px;
}

.campos-obrigatorios {
    font-size: 16px;
    color:#cee6ff;
    text-align: center;
    margin-bottom: 40px;
}

footer .txt{
    margin-bottom: 60px;
    text-align: center;
    color:#cee6ff;
}
.section-redes-sociais {
    width: 100%;
    height: auto;
   -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 100px 0;
    background: url('../img/guilherme-pereira-redes-sociais-contato.jpg') no-repeat center center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
}

.lista-redes-sociais {
    float: none;
}

.section-redes-sociais p {
    margin-bottom: 30px;
    font-size: 25px;
    font-weight: 300;
}
.section-redes-sociais .lista-redes-sociais a {
    padding: 0 15px;
    color: var(--color-primary-intense);
    text-decoration: none;
    font-size: 45px;
}


/***************************************************************************************
* FORM
***************************************************************************************/
.form {
    margin-bottom: 80px;
}

input,
textarea,
select {
    width: 100%;
    height: 70px;
    line-height: 70px;
    font-size: 20px;
    color:var(--color-text);
    font-weight: 400;
    font-family: 'Source Sans Pro', sans-serif;
    background-color: #ebf5ff;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
     -webkit-border-radius: 3px;
    border-radius: 3px;
    border:none;
    outline: none;
    padding: 0 20px;
    margin-bottom: 30px;
    resize:none;
}

textarea{
    height: 228px;
    line-height: 30px;
    padding: 20px;
}

.post-password-form {
    max-width: 400px;
    margin: 0 auto;
    padding-top: 50px;
}

.post-password-form input, textarea, select{
box-shadow: rgba(0, 0, 0, 0.05) 1px 1px 3px 0px;
border: 1px solid var(--color-primary);
background-color: var(--color-white);
}

.post-password-form label{
font-weight: bold;
color: var(--color-dark);
}

.post-password-form input[type='submit']{
    width: 100%;
    display: block;
    text-decoration: none;
    font-weight: 900;
    margin: 0 auto;
    border: none;
    background: var(--color-primary);
    border-radius: 100px;
    color: var(--color-white);
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.16);
    border: none;
    outline: none;
    font-size: 18px;
    line-height: 50px;
    padding: 0 50px;
}

/***************************************************************************************
* VALIDACAO
***************************************************************************************/
div.wpcf7-validation-errors, 
div.wpcf7-mail-sent-ok, 
div.wpcf7-mail-sent-ng {
    color: var(--color-white);
    border: none;
    width: 100%;
    height: auto;
    padding: 15px 3%;
    position: fixed;
    top:0;
    left: 0;
    margin: 0 !important;
    text-align: center;
    z-index: 9999;
    cursor: pointer;
}

div.wpcf7-validation-errors:after, 
div.wpcf7-mail-sent-ok:after, 
div.wpcf7-mail-sent-ng:after{
    content: "\e61f";
    font-family: 'icomoon';
    height: 0;
    overflow: hidden;
    visibility: visible;
    display: inline;
    vertical-align: middle;
    margin-left: 10px;
    font-size: 30px;
}

div.wpcf7-validation-errors {
    background: rgba(255, 108, 111, 0.89);
    
}

div.wpcf7-mail-sent-ok {
    background: #abd721;
}
div.wpcf7-mail-sent-ng{
   background: rgba(241, 154, 42, 0.91);
}

span.wpcf7-not-valid-tip {
    font-weight: normal;
    font-size: 14px;
}

.wpcf7-not-valid{
    border:2px solid #dc4534;
}

span.wpcf7-not-valid-tip {
    color:#dc4534;
    font-size: 16px;
    margin-top: -20px;
}

span.wpcf7-form-control-wrap {
    position: relative;
    width: 100%;
}



/***************************************************************************************
* CLASSES GENÉRICAS
***************************************************************************************/
.img-left {
    float: left;
    margin: 0 30px 30px 0;
    border: none;
}

.img-right {
    float: right;
    margin: 0 0 30px 30px;
    border: none;
}

.img-max {
    width: 100%;
    height: 100%;
}

.clear {
    clear: both;
}

.float-left {
    float: left;
}

.float-right {
    float: right;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}

.text-justify {
    text-align: justify;
}

.normal {
    font-weight: normal;
}

.bold {
    font-weight: bold;
}

.italic {
    font-style: italic;
}

.underline {
    border-bottom: 1px solid;
}

.highlight {
    padding: 0 3px 2px;
    color: #333;
    font-size: 11px;
    background: #00deff;
    font-weight: bold;
}
/*.big                                  { font-size:130%; line-height:130%; }
.small                                  { font-size:70%; line-height:70%; }*/

.nopadding {
    padding: 0;
}

.noindent {
    margin-left: 0;
    padding-left: 0;
}

.nobullet {
    list-style: none;
    list-style-image: none;
}

.block {
    display: block;
}

.hidden {
    display: none;
}

.hide {
    display: none;
}

.center {
    margin: 0 auto;
    display: block;
}

.marginb {
    margin-bottom: 0;
}

.paddingb {
    padding-bottom: 0;
}
.small_margin{
    height: 30px;
    width: 100%;
    display: block;
    clear: both;
}
.smallmargin{
    margin-bottom: 25px;
}

.mediummargin{
    margin-bottom: 50px;
}

.bigmargin{
    margin-bottom: 100px;
}
h2.descricao-02-projeto.branco {
    line-height: 26px;
    padding: 0 10%;
}