/*
Theme Name: Look Child
Theme URI: http://webdesign-finder.com/look/
Template: look
Author: MW Templates
Author URI: http://modernwebtemplates.com/
Description: Look is a bright, classy and modern WordPress template for portfolio website. As well as theme functionality! The template comes with great portfolio design and customized layout for BOOKED appointment plugin. We've made main accent on theme readability and convenient navigation. Look theme great looks at any device, both desktop computers and phones. Live customizer allows to easily change theme colors, change logo, title, tagline, add social icons and adjust widgets according to your needs.
Tags: Custom-Header,Left-Sidebar,Right-Sidebar,Post-Formats,Rtl-Language-Support,Theme-Options,Editor-Style,Sticky-Post
Version: 1.2.0
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/

body, div, p, h2, h3, h4, h5, h6, li, span, div, strong, b, a {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 16px;
}

.site-content {
    padding: 0 !important;
}

.footer {
    padding: 0 !important;
}

h2 {
    font-size: 30px !important;
    font-weight: 600 !important;
    font-style: normal !important;
    line-height: 55px !important;
    color: #303030 !important;
}
@media (max-width: 767px) {
    h2 {
        line-height: 30px !important;
        padding-top: 24px;
        display: block;
    }
    
}
h6 {
    font-size: 20px !important;
    font-weight: 300 !important;
    font-style: normal !important;
    line-height: 24px !important;
    color: #616161 !important;
    text-transform: uppercase;
    position: relative;
    display: flex;
}
h6::after {
    content: "";
    width: 400px;
    height: 1px;
    background-color: #000;
    position: relative;
    display: inline-block;
        top: 11px;
    margin-left: 16px;
}

.middle-title {
    display: block;
}

.btn-default-youmodels {
    line-height: 44px;
}
.btn-default-youmodels a {
    border-left: 3px solid rgb(149, 198, 216);
    padding: 0px 20px;
}
.btn-default-youmodels .elementor-button-icon { 
        display: inline-block;
        vertical-align: top;
        margin-left: 16px;
        width: 40px;
        height: 40px;
        line-height: 51px;
        font-size: 20px;
        font-weight: 400;
        text-align: center;
        color: #303030;
        background-color: #95c6d8;
        -webkit-transition: all ease .4s;
        -moz-transition: all ease .4s;
        -ms-transition: all ease .4s;
        -o-transition: all ease .4s;
        transition: all ease .4s;
}
.btn-default-youmodels .elementor-button-icon svg {
        width: 10px;
        -webkit-transition: all ease .4s;
        -moz-transition: all ease .4s;
        -ms-transition: all ease .4s;
        -o-transition: all ease .4s;
        transition: all ease .4s;
}
.btn-default-youmodels a:hover .elementor-button-icon svg {
    fill: #fff;
}
.btn-default-youmodels .elementor-button-text {
    line-height: 41px;
    -webkit-transition: all ease .4s;
        -moz-transition: all ease .4s;
        -ms-transition: all ease .4s;
        -o-transition: all ease .4s;
        transition: all ease .4s;
}
.btn-default-youmodels a:hover .elementor-button-text {
    color: #95c6d8;
}

.sessao-contato-modelo form label {
    position: relative !important;
    display: block;
    font-size: 20px;
    left: 12px;
    line-height: 1;
    top: 10px;
    z-index: 1;
}

/* Model Profile Social */
.model-profile-social {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 0px;
    text-align: left;
}

.model-profile-social li {
    position: relative;
    display: inline-block;
    text-align: left;
    line-height: 1;
    margin-right: 16px;
}
.model-profile-social li strong{
    display: block;
    margin-bottom: 16px;
}

.single-models_profile .foto-capa-modelo img {
    border-radius: 16px;
}
.single-models_profile .model-name {
    font-size: 3.4rem;
    
}
.single-models_profile .sessao-contato-modelo h3 {
    font-size: 30px;
    font-size: 2rem;
    text-transform: uppercase;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 700;
    line-height: 1;
}



.site-main .elementor-portfolio-item__overlay .lista-medidas-hover {
    padding: 0;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    border-left: 3px solid #95c6d8;
    padding-left: 24px;
}
.site-main .elementor-portfolio-item__overlay .lista-medidas-hover li {
    list-style: none;
    font-weight: 400;
    line-height: 26px;
    margin-right: 24px;
}
.site-main .elementor-portfolio-item__overlay .lista-medidas-hover li strong {
    display: block;
    font-weight: 600;
}
.site-main .elementor-portfolio-item__overlay {
    opacity: 1 !important;
    background-color: #fff !important;
    height: 80px;
    top: auto;
    border: 0;
    text-align: left;
    border-radius: 0 !important;
    border-left: 3px solid #95c6d8;
    transition: all 0.4s ease-in-out 0s;
    padding-top: 40px;
}

.site-main .elementor-portfolio-item__overlay .elementor-portfolio-item__title {
    color: #595959;
}
.site-main .elementor-portfolio-item__overlay .elementor-portfolio-item__title .nome-modelo-portfolio {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 24px;
    font-family: 'Josefin Sans', sans-serif;
    display: block;
}
.lista-medidas-hover {
    opacity: 0;
    height: 0;
}
.elementor-post__thumbnail__link:hover .elementor-portfolio-item__overlay .lista-medidas-hover {
    transition: all 0.4s ease-in-out 0.1s;
    opacity: 1;
    display: flex;
    flex-wrap: wrap;
    height: auto;
}
.elementor-post__thumbnail__link:hover .elementor-portfolio-item__overlay  {
    border: 0;
}
.elementor-post__thumbnail__link:hover .elementor-portfolio-item__overlay {
    height: 40%;
    transition: all 0.4s ease-in-out 0.1s;
    background-color: #f5f5f5 !important;
}
.site-main .elementor-post__thumbnail__link {
    padding-bottom: 70px;
}


.elementor-widget-testimonial-carousel .elementor-testimonial__image img {
    /* height: 50px; */
    width: 120px !important;
    height: auto !important;
}

.site-main .elementor-posts .elementor-posts__hover-gradient .elementor-post__card .elementor-post__thumbnail__link:after {
    display: none;
}

.site-main .elementor-posts .elementor-post__thumbnail__link {
    padding-bottom: 0px;
}

.site-main .elementor-posts .elementor-post__card {
    box-shadow: none;
}


/* --- GALERIA MASONRY MODELOS --- */
.galeria-masonry-you { 
    column-count: 3; 
    column-gap: 15px; 
    margin-top: 40px; 
    width: 100%;
}

.foto-item { 
    display: inline-block; 
    width: 100%; 
    margin-bottom: 15px; 
    break-inside: avoid; 
    border-radius: 5px; 
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    background: #f4f4f4;
}

.foto-item:hover { 
    transform: scale(1.02); 
}

.foto-item img { 
    width: 100%; 
    height: auto; 
    display: block; 
}

/* Efeito de carregamento suave */
.lazy-load-img {
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
}

.lazy-load-img.loaded {
    opacity: 1;
}

/* Garante que o container não colapse enquanto carrega */
.foto-item {
    background-color: #f0f0f0; /* Cor de fundo enquanto a foto não vem */
    min-height: 200px;
    border-radius: 5px;
}

/* Ajustes para Celular e Tablet */
@media (max-width: 900px) { 
    .galeria-masonry-you { column-count: 2; } 
}

@media (max-width: 600px) { 
    .galeria-masonry-you { column-count: 1; } 
}

.single-modelos h2 {
    text-transform: uppercase;
}


.skeleton-wrapper.loading::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateX(-100%);
    background-image: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0,
        rgba(255, 255, 255, 0.2) 20%,
        rgba(255, 255, 255, 0.5) 60%,
        rgba(255, 255, 255, 0)
    );
    animation: shimmer 2s infinite;
}

@keyframes shimmer {
    100% { transform: translateX(100%); }
}

.lazy-load.loaded {
    opacity: 1 !important;
}

.skeleton-wrapper.loaded::before {
    display: none;
}

/* ============================================================
   HEADER SPLIT: Menu Esquerdo | LOGO CENTRAL | Menu Direito
   Adicione em: Aparência → Personalizar → CSS Adicional
   ============================================================ */

/* Layout principal em 3 colunas iguais */
.header__primary--split {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

/* Cada lado do menu ocupa 1 parte flexível */
.header-menu-side {
    flex: 1;
    display: flex;
    align-items: center;
}

/* Logo central: não cresce nem encolhe, fica fixo no meio */
.header-logo-center {
    flex: 0 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
}

/* Menu esquerdo: itens alinhados à direita (encostam no logo) */
.header-menu-left {
    justify-content: flex-end;
}

.header-menu-left .main-nav--left ul {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Menu direito: itens alinhados à esquerda (encostam no logo) */
.header-menu-right {
        align-items: center;
    display: flex;
    height: 100%;
}

.header-menu-right .main-nav--right ul {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Itens de menu individuais */
.header-menu-left .menu-item,
.header-menu-right .menu-item {
    position: relative;
}

/* Submenu dropdown */
.header-menu-left .sub-menu,
.header-menu-right .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    min-width: 180px;
    list-style: none;
    padding: 8px 0;
    margin: 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
    z-index: 9999;
}

.header-menu-left .menu-item:hover > .sub-menu,
.header-menu-right .menu-item:hover > .sub-menu {
    display: block;
}

.header-menu-left .sub-menu .menu-item a,
.header-menu-right .sub-menu .menu-item a {
    display: block;
    padding: 8px 16px;
    white-space: nowrap;
}

/* ============================================================
   MOBILE: abaixo de 992px volta ao layout original empilhado
   ============================================================ */
@media (max-width: 992px) {
    .header__primary--split {
        flex-wrap: wrap;
    }

    .header-logo-center {
        order: -1;
        flex: 0 0 100%;
        justify-content: center;
        padding: 10px 0;
    }

    .header-menu-left,
    .header-menu-right {
        display: none; /* escondido — toggle mobile cuida disso */
    }
}

.logo_big {
    max-width: 170px;
}

.main-nav .menu > li:after {
    content: "|";
    font-size: 20px;
    font-size: 2rem;
    font-weight: 400;
    position: relative;
    top: 0px;
}
.main-nav .menu li a {
    font-size: 12px;
    font-weight: 600;
}
.main-nav .menu > li > a {
    margin: 0 10px;
    padding-bottom: 5px;
}