*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: "Manrope", sans-serif; font-weight: 300; /* color: #423430; */ background-color: #f5ecdd; line-height: 1.7; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
h1, h2, h3, h4 { font-family: "DM Serif Display", serif; font-weight: 500; line-height: 1; font-style: normal; }

.max-width { max-width: 1280px; margin: 0 auto; width: 100%;}

.hero, .consultorio, .imgConsultorio, .galeriaFotos, .areasAtendimento, .culinaria, .ctaWhatsapp, .localizacao { position: relative; overflow: hidden; }

.profissionais, .culinaria, .galeria, .ctaWhatsapp, .localizacao { padding: 45px 25px; }

footer { padding: 40px 25px; border-top: 1px solid #e5d7d199; }

/* WHATSAPP FLUTUANTE */
.whatsapp-plug-icon{position: fixed; z-index: 1000; bottom: 20px; right: 20px; width: 50px; height: 50px; -webkit-border-radius: 50%; cursor: pointer; background-color: #44A01C; transition: .3s; background-position: center; background-repeat: no-repeat; background-image: url("../imagens/whats.svg"); background-size: 50% auto;}

.whatsapp-plug-icon:hover{background-color: #44A01C;}

.whatsapp-plug-icon::after,
.whatsapp-plug-icon::before{content: ''; position: absolute; opacity: 0; border: 4px solid #44A01C; left: -10px; top: -10px; right: -10px; bottom: -10px; -webkit-border-radius: 50%; animation: WaveWhatsApp 1.5s ease infinite; z-index: 3;}

.whatsapp-plug-icon::after{animation-delay: .5s; z-index: 3;}

.whatsapp-plug-icon:hover::after{border: 4px solid #44A01C;}

.whatsapp-plug-icon:hover::before{border: 4px solid #44A01C;}

@keyframes WaveWhatsApp {0%{ transform: scale(0.5); } 50%{ opacity: 1; } 100%{ transform: scale(1.2); opacity: 0; }}

.subwhats{ position: absolute; bottom: 50px; right:0px; width: 200px; max-height: 0; overflow: hidden;  z-index: 1; transition: max-height 0.4s ease-out;}

a.linkWhats:link, a.linkWhats:active, a.linkWhats:visited { text-align: center; line-height: 20px; background-color:#44A01C; color: #fff; border-radius: 8px; display: block; margin-bottom: 5px; padding: 5px 5px; }

.linkWhats span { font-size: 14px; }

a.linkWhats:hover { background-color:#4B7E35;  }

.whatsapp-plug-icon:hover .subwhats{ width: 200px; max-height: 300px;  transition: max-height 0.4s ease-in; }

/* MOBILE */

.headerSite { position: fixed; top: 0; left: 0; width: 100%; z-index: 999; transition: background-color .35s ease, backdrop-filter .35s ease, box-shadow .35s ease; }

.blocoHeader { max-width: 1280px; width: 100%; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 22px 30px; transition: padding .35s ease; }

.headerSite.scrolled { background: rgba(245, 236, 221, 0.75); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 8px 24px rgba(239,218,216,.55); border-bottom: 1px solid #ddcdb4; }

.headerSite.scrolled .blocoHeader{ padding: 14px 30px; }

.Blocologotipo { width: 30%; }

.logotipoHeader { width: 100%; }

.logoScrolled {  }

.navHeader { display: none; }

.btnCtaHeader { color: #fdf9f6; padding: 10px 20px; text-align: center; border: 1px solid #fdf9f6; border-radius: 30px; font-size: 12px; font-weight: 300; letter-spacing: 1px; transition: 0.5s; }

.btnCtaHeader:hover { background-color: #fdf9f6; color: #3a2e2a; border-color: #fdf9f6; }

.ctaHeaderWrapper { position: relative; width: fit-content; }

.btnCtaHeader { color: #fefefe; padding: 10px 20px; text-align: center; border: 1px solid #fefefe; border-radius: 30px; font-size: 12px; font-weight: 300; letter-spacing: 1px; transition: 0.5s; background: transparent; cursor: pointer; }

.btnCtaHeader:hover { background-color: #fdf9f6; color: #3a2e2a; border-color: #fdf9f6; }

.ctaHeaderMenu { position: absolute; top: calc(100% + 10px); right: 0; width: 230px; padding: 8px; background-color: #fdf9f6; border-radius: 14px; box-shadow: 0 10px 30px rgba(58, 46, 42, 0.15); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: 0.3s ease; }

.ctaHeaderMenuLeft { left: 0 !important; }

.ctaHeaderMenu::before { content: ""; position: absolute; top: -6px; right: 25px; width: 12px; height: 12px; background-color: #fdf9f6; transform: rotate(45deg); }

.ctaHeaderMenuLeft::before { left: 25px !important; }

.ctaHeaderMenu a { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 3px; padding: 12px 14px; border-radius: 10px; color: #3a2e2a; text-decoration: none; transition: 0.3s ease; }

.ctaHeaderMenu a:hover { background-color: #f0e8e3; }

.ctaHeaderMenu span { font-size: 13px; font-weight: 500; }

.ctaHeaderMenu small { font-size: 11px; font-weight: 300; opacity: 0.7; }

.ctaHeaderWrapper:hover .ctaHeaderMenu { opacity: 1; visibility: visible; transform: translateY(0); }

.hero { position: relative; overflow: hidden; padding: 0; height: 100vh; display: flex; }

.hero::before, .hero::after, .hero-foto3 { content: ""; position: absolute; inset: 0; z-index: 0; background-position: center; background-size: cover; background-repeat: no-repeat; filter: brightness(0.7); will-change: transform, opacity; }

.hero::before { background-image: linear-gradient( to bottom, rgba(66, 52, 48, 0.50), rgba(66, 52, 48, 0.35) ), url("../imagens/foto_topo.jpg"); animation: fotoUm 30s ease-in-out infinite; }

.hero::after { background-image: linear-gradient( to bottom, rgba(66, 52, 48, 0.50), rgba(66, 52, 48, 0.35) ), url("../imagens/foto_topo2.jpg"); animation: fotoDois 30s ease-in-out infinite; z-index: -1; }

.hero-foto3 { background-image: linear-gradient( to bottom, rgba(66, 52, 48, 0.50), rgba(66, 52, 48, 0.35) ), url("../imagens/foto_topo3.jpg"); animation: fotoTres 30s ease-in-out infinite; z-index: -2; }


@keyframes fotoUm {

    0% { opacity: 1; transform: scale(1); }

    28% { opacity: 1; transform: scale(1.12); }

    33.33% { opacity: 0; transform: scale(1.12); }

    95% { opacity: 0; transform: scale(1); }

    100% { opacity: 1; transform: scale(1); }
}

@keyframes fotoDois {

    0% { opacity: 0; transform: scale(1); }

    28% { opacity: 0; transform: scale(1); }

    33.33% { opacity: 1; transform: scale(1); }

    61.33% { opacity: 1; transform: scale(1.12); }

    66.66% { opacity: 0; transform: scale(1.12); }

    100% { opacity: 0; transform: scale(1); }
}

@keyframes fotoTres {

    0% { opacity: 0; transform: scale(1); }

    61.33% { opacity: 0; transform: scale(1); }

    66.66% { opacity: 1; transform: scale(1); }

    94.66% { opacity: 1; transform: scale(1.12); }

    100% { opacity: 0; transform: scale(1.12); }
}

.headerSite.scrolled .linkHeader { color: #4f331f; }

.headerSite.scrolled .linkHeader:hover { color: #68472f; }

.headerSite.scrolled .btnCtaHeader { color: #fefefe; background-color: #6c0000; border: 1px solid #6c0000;}

.headerSite.scrolled .btnCtaHeader:hover { background-color: #920404; }

.divisorSessao { width: 100%; height: 100px; overflow: hidden; line-height: 0; margin-top: -1px; }

.divisorSessao svg { display: block; width: 200%; height: 100px; animation: ondaMovimento 20s linear infinite; }

.divisorTopo { position: absolute; bottom: -1px; left: 0; width: 100%; z-index: 2; }

@keyframes ondaMovimento {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.infomacoesHero { z-index: 10; display: flex; flex-direction: column; flex-wrap: wrap; justify-content: center; padding: 0px 25px; color: #be9147; max-width: 1280px; margin: 0 auto; width: 100%; }

.tagHero { letter-spacing: 3px; -webkit-font-smoothing: antialiased; font-weight: 300; text-transform: uppercase; font-size: 12px; color: #fefefe; }

.gradientLine { background: linear-gradient(90deg, #875719, transparent); width: 4rem; height: 2px; display: block; }

.tituloHero { font-size: 48px; margin: 24px 0px 0px; max-width: 800px;  }

.fraseEfeito { color: #f5ecdd; font-style: italic; }

.textoHero { font-size: 14px; margin: 32px 0px 0px; color: #fef8fa;}

.botoesHero { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; margin: 40px 0px 0px; }

a.botaoHero:active, a.botaoHero:link, a.botaoHero:visited { padding: 12px 32px; letter-spacing: 1px; text-align: center; background-color: #be9147; color: #fefefe ; border-radius: 30px; font-size: 12px; text-transform: uppercase; transition: all 1s; font-weight: 600; }

a.botaoHero:hover { background-color: #d3a966; transform: translateY(-5px); }

.botaoHero2 { background-color: transparent !important; color: #ffc668 !important; border: 1px solid #ffc668; }

.botaoHero2:hover { background-color: #ffc66836 !important;  }

/*CONSULTORIO*/
.consultorio { padding: 45px 25px; background-color: #efdad866;}

.infoConsultorio { display: grid; gap: 80px; }

.divImgConsultorio { aspect-ratio: 4 / 5; }

.imgConsultorio { background-image: url(../imagens/consultorio.jpg); width: 100%; height: 100%; position: relative; z-index: 10; border-radius: 30px; border-top-left-radius: 110px; background-size: cover; background-position: center; z-index: 0; overflow: visible;  }

.tagPagina { color: #875719; display: flex; align-content: center; align-items: center; font-weight: 500; }

.tagPagina svg{ margin-right: 10px; }

.tituloPagina { margin: 20px 0px 32px 0px; font-size: 36px; color: #6c0000; }

.tituloPagSolo { margin-bottom: 80px; max-width: 850px; }

.tituloPagCentro { text-align: center; margin: 0px auto 50px; max-width: 800px; }

.tagPaginaCentro { justify-content: center; }

.textoPagina { line-height: 2; font-size: 15px; color: rgba(93, 75, 70, 1); margin: 0px 0px 24px; }

.fraseConsultorio { border-left: 1px solid rgba(195, 141, 135, 1); font-size: 24px; line-height: 1.5; padding-left: 24px; color: rgba(93, 75, 70, 1); font-family: 'Cormorant Garamond', serif; font-weight: 500; }

.circulosConsultorio { bottom: -60px !important; right: -60px !important; height: 200px !important; width: 200px !important; }

/*GALERIA DE FOTOS*/
.galeria {  background-size: cover; background-position: center; background-attachment: fixed; background-color: #efe3d0; }

.galeriaFotos { padding: 45px 0px;}

.tituloGalerias { padding: 0px 25px; max-width: 1280px; margin: 0 auto; }

.gallery-carousel {width:100%; position:relative; overflow:hidden; }

.gallery-track { display:flex; gap:0px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:0px 6% 40px 6%; scrollbar-width:none; cursor:grab; }

.gallery-track::-webkit-scrollbar { display:none; }

.gallery-track.is-dragging { scroll-snap-type:none; cursor:grabbing; }

.gallery-item { flex:0 0 auto; width:70%; aspect-ratio:5/7; scroll-snap-align:center; scroll-snap-stop:always; border-radius:14px; overflow:hidden; box-shadow:0 12px 30px rgba(0,0,0,0.18); background-color:#eeeeee; cursor:pointer; transform:scale(1); opacity:1; transition:transform 0.4s ease,opacity 0.4s ease; }

.gallery-item.is-inactive { transform:scale(0.86); opacity:0.5; }

.gallery-item img { width:100%; height:100%; object-fit:cover; display:block; pointer-events:none; user-select:none; }


.gallery-item {position:relative;}

.gallery-item-caption { position:absolute; left:0; right:0; bottom:0; padding:32px 20px 18px 20px; background:linear-gradient(to top,rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.45) 45%,rgba(0,0,0,0) 100%); pointer-events:none; }

.gallery-item-caption span { display:block; color:#fdf9f6; font-size:16px; font-weight:400; line-height: 50px; letter-spacing: 1px; }

/*GALERIA*/
.galeria-consultorio { display: flex; flex-direction: column; gap: 20px; }

.galeria-linha { display: flex; flex-direction: column; gap: 20px; }

.galeria-item { position: relative; overflow: hidden; border-radius: 20px; min-height: 250px; flex: 1; background-color: #ede0d6; cursor: default; display: block;
    text-decoration: none;
    cursor: pointer; }

.galeria-item::before { content: ""; position: absolute; inset: 0; background-size: cover; background-position: center; background-repeat: no-repeat; transition: transform .8s ease; z-index: 1; }

.galeria-item::after { content: ""; position: absolute; inset: 0; background: linear-gradient( to top, rgba(0,0,0,.45) 0%, rgba(0,0,0,.15) 35%, rgba(0,0,0,0) 65% ); opacity: 0; transition: opacity .8s ease; z-index: 2; pointer-events: none; }

.galeria-item:hover::before { transform: scale(1.08); }

.galeria-item:hover::after { opacity: 1; }

.galeria-item-1::before { background-image: url("../imagens/galeria/1.jpg"); }

.galeria-item-2::before { background-image: url("../imagens/galeria/2.jpg"); }

.galeria-item-3::before { background-image: url("../imagens/galeria/3.jpg"); }

.galeria-item-4::before { background-image: url("../imagens/galeria/4.jpg"); }

.galeria-item-5::before { background-image: url("../imagens/galeria/5.jpg"); }

.galeria-item-6::before { background-image: url("../imagens/galeria/6.jpg"); }

/*CTA WHATSAPP*/
.ctaWhatsapp { height: 580px; display: flex; align-items: center; }

.ctaWhatsapp::before { content: ""; position: absolute; inset: 0; background-image: url('../imagens/lareira.jpg'); z-index: -1; background-size: cover; background-position: center; filter: brightness(0.5);}

.infoCtaWhatsapp { display: flex; flex-direction: column; justify-content: center; align-content: center; align-items: center; }

.tagCtaWhatsapp { justify-content: center;  color: #fdf9f6; }

.tituloCtaWhatsapp { text-align: center; color: #fdf9f6; margin-bottom: 0px; line-height: 1.0; }

.textoCtaWhatsapp { text-align: center; color: #fdf9f6; margin-top: 24px; font-size: 14px; }

.divBotoesCta { margin-top: 40px; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 20px; }

.btnCtaWhatsapp { color: #423430; padding: 8px 36px; background-color: #fdf9f6; border-radius: 30px; text-transform: uppercase; font-size: 12px; text-align: center; width: 250px; line-height: 25px; transition: all 1s; }

.btnCtaWhatsapp span{ font-size: 10px; }

.btnCtaWhatsapp:hover { transform: translateY(-5px); background-color: #920404; color: #fefefe; }

/*LOCALIZAÇÃO*/
.contato-bloco { display: flex; flex-direction: column; background-color: #efe3d0; border-radius: 30px; z-index: 10; position: relative; }

.contato-info { display: flex; flex-direction: column; padding: 40px; order: 1; }

.contato-mapa { order: 2; width: 100%; min-height: 280px; }

.contato-mapa__iframe { width: 100%; height: 100%; min-height: 280px; border: 0; display: block; border-top-right-radius: 30px; border-bottom-right-radius: 30px; }

.contato-grupo { margin-bottom: 18px; width: fit-content; }

.contato-label { display: block; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: #875719; margin-bottom: 6px; font-weight: 500; }

.contato-valor { font-size: 15px; line-height: 1.5; color: #5d4b46; margin: 0; width: fit-content; }

.contato-valor-link:hover { color: #6c0000; }

.contato-valor--redes { display: flex; gap: 16px; }

.contato-link { color: #5d4b46; display: flex; transition: all 0.5s; }

.contato-link:hover { color: #6c0000; }

.contato-botao { display: inline-block; align-self: flex-start; margin-top: 12px; padding: 8px 12px; background-color: #6c0000; color: #ffffff; font-size: 11px; letter-spacing: 1px; text-transform: uppercase; text-decoration: none; border-radius: 999px; text-align: center; }

.contato-botao:hover { background-color: #920404; color: #fefefe; }

/*FOOTER*/
.infoFooter { display: flex; flex-direction: column; gap: 20px; font-size: 14px; text-align: center; }

.imgFooter { width: 100px; margin: 0 auto; }

.divCentral, .divLateral { color: #5d4b46; }

/*DESENVOLVIDO POR VBWP.COM.BR*/
.desenvolvido { padding: 10px 0px; color: #fefefe; background-color: #6c0000; display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 5px; }


/*DESENVOLVIDO POR VBWP.COM.BR*/
.linkVBWP { display: flex; flex-direction: row; align-items: center; justify-content: center; width: fit-content; }

.imgVBWP { width: 40px; margin-left: 10px; }

/*Sobre a Serrana*/
.sobre-bloco { width: 100%; padding: 48px 20px; background-color: #f5ecdd; }
 
.sobre-bloco__container { display: flex; flex-direction: column; gap: 56px; max-width: 1180px; margin: 0 auto; }
 
/* --- Bloco de imagens --- */
 
.sobre-bloco__imagens { position: relative; width: 100%; }
 
.sobre-bloco__imagem-principal { width: 100%; aspect-ratio: 4 / 5; overflow: hidden; }
 
.sobre-bloco__imagem-principal img { width: 100%; height: 100%; object-fit: cover; display: block; }
 
.sobre-bloco__imagem-secundaria { position: absolute; right: -16px; bottom: -40px; width: 45%; aspect-ratio: 4 / 5; overflow: hidden; border: 8px solid #F3EAD9; box-shadow: 0 12px 28px rgba(30, 20, 10, 0.18); }
 
.sobre-bloco__imagem-secundaria img { width: 100%; height: 100%; object-fit: cover; display: block; }
 
/* --- Bloco de conteúdo --- */
 
.sobre-bloco__conteudo { padding-top: 40px; }
 
.sobre-bloco__eyebrow { display: block; letter-spacing: 0.18em; text-transform: uppercase; color: #B08A57; margin-bottom: 16px; }
 
.sobre-bloco__titulo { color: #7C2438; line-height: 1.15; margin: 0 0 24px; }
 
.sobre-bloco__texto p { color: #706052; line-height: 1.7; margin: 0 0 16px; }
 
.sobre-bloco__texto p:last-child { margin-bottom: 0; }
 
.sobre-bloco__divisor { width: 100%; height: 1px; background-color: #ddcdb4; margin: 32px 0 28px; }
 
.sobre-bloco__destaques { display: flex; flex-wrap: wrap; gap: 24px 32px; }
 
.sobre-bloco__destaque h3 { color: #7C2438; margin: 0 0 4px; }
 
.sobre-bloco__destaque p { color: #8B8477; margin: 0; }

/*SOBRE AS CULINÁRIAS*/
.culinaria{ background-color: #efe3d0; }

.cozinhas__grid { display: grid; grid-template-columns: 1fr; gap: 20px; max-width: 1280px; margin: 0 auto; }
 
.cozinhas__card { position: relative; display: block; height: 420px; border-radius: 6px; overflow: hidden; text-decoration: none; }
 
.cozinhas__imagem { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1); transition: transform 0.6s ease; z-index: 0; }
 
.cozinhas__overlay { position: absolute; inset: 0; background: linear-gradient(to top, #6c0000e3 0%, #6c0000b5 30%, #6c000000 70%); transition: background-color 0.35s ease; z-index: 1; }
 
.cozinhas__conteudo { position: absolute; left: 0; right: 0; bottom: 0; padding: 24px; z-index: 2; transition: transform 0.35s ease; }
 
.cozinhas__titulo { margin: 0 0 8px 0; font-size: 26px; font-weight: 700; color: #ffffff; line-height: 1.1; }
 
.cozinhas__texto { margin: 0; font-size: 14px; line-height: 1.5; color: #f0e9dfcc; max-width: 90%; }

/*CARDÁPIO*/
.cardapio { width: 100%; padding: 45px 25px; background-color: #efe3d0; box-sizing: border-box; }

.cardapio__grid { display: grid; grid-template-columns: 1fr; gap: 24px; max-width: 1280px; margin: 0 auto; }

.cardapio__card { display: block; width: 100%; padding: 0; border: none; background: none; text-align: left; cursor: pointer; font: inherit; color: inherit; background-color: #fff8ec; border-radius: 10px; box-shadow: 0 12px 28px rgba(30, 20, 10, 0.18); display: flex; flex-direction: column; }

.cardapio__imagem { width: 100%; height: 260px; border-radius: 10px; background-size: cover; background-position: center; transform: scale(1); transition: transform 0.5s ease; }

.cardapio__conteudo { padding: 24px; }

.cardapio__titulo { margin: 0 0 10px 0; font-size: 24px; font-weight: 700; color: #6f1522; }

.cardapio__texto { margin: 0 0 16px 0; font-size: 15px; line-height: 1.5; color: #5c6773; }

.cardapio__link { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; color: #b08947; transition: color 0.25s ease; }

.cardapio__card:hover .cardapio__link { color: #8a6a30; }

.cardapio__card:hover .cardapio__imagem { transform: scale(1.04); }

.cardapio__card:focus-visible { outline: 2px solid #6f1522; outline-offset: 4px; }


/*CARDÁPIO */
.cardapio-modal { position: fixed; inset: 0; z-index: 1000; display: none; align-items: center; justify-content: center; padding: 0; }

.cardapio-modal.is-aberto { display: flex; }

/* Fundo escuro */
.cardapio-modal__backdrop { position: absolute; inset: 0; background-color: #1a1108a6; opacity: 0; transition: opacity 0.3s ease; }

.cardapio-modal.is-visivel .cardapio-modal__backdrop { opacity: 1; }

/* Janela */
.cardapio-modal__janela { position: relative; z-index: 1; width: 100%; height: 100%; background-color: #1a1108; transform: translateY(20px); opacity: 0; transition: transform 0.3s ease, opacity 0.3s ease; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: #b08947 transparent; }

.cardapio-modal.is-visivel .cardapio-modal__janela { transform: translateY(0); opacity: 1; }

/* Barra superior */
.cardapio-modal__topo { position: sticky; top: 0; z-index: 5; width: 100%; min-height: 64px; display: flex; align-items: center; justify-content: space-between; padding: 10px 16px; box-sizing: border-box; background-color: #1a1108f2; border-bottom: 1px solid #ffffff14; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); max-width: 800px; margin: 0 auto; }


/* Título */
.cardapio-modal__titulo { margin: 0; font-size: 18px; font-weight: 700; color: #ffffff; }


/* Botão fechar */
.cardapio-modal__fechar { flex-shrink: 0; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 0; border: none; border-radius: 50%; background-color: #ffffff; color: #1a1108; font-size: 25px; line-height: 1; cursor: pointer; transition: transform 0.2s ease, background-color 0.2s ease; }

.cardapio-modal__fechar:hover { transform: scale(1.05); background-color: #f5eee5; }

.cardapio-modal__fechar:focus-visible { outline: 2px solid #b08947; outline-offset: 3px; }


/* Área das páginas */
.cardapio-modal__conteudo { width: 100%; max-width: 800px; margin: 0 auto; padding: 12px 12px 50px; box-sizing: border-box; }


/* Imagens do cardápio */
.cardapio-modal__img { display: block; width: 100%; height: auto; margin: 0 auto 12px; border-radius: 4px; box-shadow: 0 10px 35px #00000055; }

/* VÍDEO */
.video-destaque { position: relative; width: 100%; padding: 60px 20px; background-color: #f5ecdd; box-sizing: border-box; overflow: hidden; }
 
.video-destaque__fundo { position: absolute; inset: 0; pointer-events: none; }
 
.video-destaque__container { position: relative; max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 40px; }
 
/* -------- texto -------- */
.video-destaque__texto { text-align: left; }
 
.video-destaque__descricao { margin: 0 0 24px 0; font-size: 15px; line-height: 1.7; color: rgba(93, 75, 70, 1);; max-width: 520px; }
 
.video-destaque__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
 
.video-destaque__item { display: flex; align-items: center; gap: 12px; font-size: 14px; color: rgba(93, 75, 70, 1); }
 
.video-destaque__marcador { flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background-color: #be9147; }
 
/* -------- coluna do vídeo -------- */
.video-destaque__coluna-video { position: relative; }
 
.video-destaque__moldura { position: absolute; top: 18px; left: 18px; right: -18px; bottom: -18px; border: 1px solid #6c00004a; border-radius: 10px; z-index: 0; }
 
.video-destaque__player { position: relative; z-index: 1; width: 100%; aspect-ratio: 16 / 9; border-radius: 10px; overflow: hidden; box-shadow: 0 24px 60px #00000066; background-color: #000000; }
 
.video-destaque__facade { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: none; cursor: pointer; background: none; }
 
.video-destaque__thumb { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1); transition: transform 0.5s ease; }
 
.video-destaque__facade::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #1a110800 55%, #1a1108b3 100%); transition: background-color 0.3s ease; }
 
.video-destaque__play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background-color: #f7efe4; color: #6f1522; box-shadow: 0 8px 24px #00000059; transition: transform 0.3s ease, background-color 0.3s ease; }
 
.video-destaque__play svg { transform: translateX(2px); }
 
.video-destaque__facade:hover .video-destaque__thumb { transform: scale(1.05); }
 
.video-destaque__facade:hover .video-destaque__play { transform: translate(-50%, -50%) scale(1.08); background-color: #cf9f52; color: #221410; }
 
.video-destaque__facade:focus-visible .video-destaque__play { outline: 2px solid #cf9f52; outline-offset: 4px; }
 
.video-destaque__player iframe { display: block; width: 100%; height: 100%; border: none; }


@media (min-width: 768px) {

    .profissionais, .galeria, .ctaWhatsapp, .localizacao { padding: 95px 25px; }

    .Blocologotipo { width: 30%; }

    .tituloHero { font-size: 76px; }

    .textoHero { font-size: 16px; max-width: 550px; }

    .botoesHero { flex-direction: row; }

    .logotipoHeader { width: 50%; margin: 0 auto; }

    /*CONSULTORIO*/
    .consultorio { padding: 95px 25px;}

    .tituloPagina { font-size: 48px; }

    .infoConsultorio { grid-template-columns: 280px 1fr; gap: 60px; align-items: center; }

    /*AREA DE ATENDIMENTO*/
    .areasAtendimento { padding: 95px 25px 180px; }

    .services-grid { flex-direction: row; gap: 24px; }

    .service-card { flex: 1; padding: 48px; }

    /*GALERIA DE FOTOS*/
    .galeriaFotos { padding: 95px 0px;}

    .gallery-track { gap:16px; padding:32px 20% 40px 20%; }

    .gallery-item { width:70%; border-radius:16px; }

    .gallery-item-caption { padding:44px 24px 22px 24px; }

    .gallery-item-caption span { font-size:18px; }

    /*GALERIA*/
    .galeria-linha { flex-direction: row; }
    
    .galeria-item { min-height: 350px; }

    .galeria-item-1 { flex: 1; }

    .galeria-item-2 { flex: 1; }

    .galeria-item-3 { flex: 1; }

    .galeria-item-4 { flex: 1; }

    /*CTA WHATSAPP*/
    .tituloCtaWhatsapp { max-width: 600px;  line-height: 0.8; }

    .textoCtaWhatsapp { max-width: 570px; }

    /*LOCALIZAÇÃO*/
    .contato-bloco { flex-direction: row; }

    .contato-info { flex: 1; padding: 64px; order: 1; }

    .contato-mapa { flex: 1; order: 2; min-height: auto; }

    .contato-mapa__iframe { min-height: 100%; }

    /*Sobre a Serrana*/
    .sobre-bloco { padding: 64px 40px; }
    
    .sobre-bloco__imagem-secundaria { right: 24px; bottom: -48px; width: 42%; }
    
    .sobre-bloco__destaques { gap: 24px 48px; }

    /*SOBRE AS CULINÁRIAS*/
    .culinaria{ padding: 64px 40px; }

    .cozinhas__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; }
  
    .cozinhas__card { height: 380px; }
  
    .cozinhas__card:hover .cozinhas__imagem { transform: scale(1.06); }
  
    .cozinhas__card:hover .cozinhas__conteudo { transform: translateY(-6px); }

    /* CARDÁPIO */
    .cardapio { padding: 64px 40px; }
  
    .cardapio__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; }
  
    .cardapio__imagem { height: 220px; }

    /* VÍDEO */
    .video-destaque { padding: 90px 40px; }
  
    .video-destaque__container { gap: 50px; }
  
    .video-destaque__moldura { top: 22px; left: 22px; right: -22px; bottom: -22px; }

    .desenvolvido { flex-direction: row; gap: 5px; }
}

@media (min-width: 1024px) {

    .Blocologotipo { width: 20%; }

    .navHeader { display: block; }

    .linkHeader { color: #f5ecdd; padding: 0px 15px; text-transform: uppercase; font-size: 12px; font-weight: 600; letter-spacing: 1px; }

    .linkHeader:hover { color: #be9147; }

    .tituloHero { font-size: 80px; }

    /*CONSULTORIO*/
    .infoConsultorio { grid-template-columns: 0.7fr 1fr; }

    .service-card__icon { width: 34px; height: 34px; }

    .service-card__number { font-size: 30px; }

    .service-card__title { font-size: 28px; margin-bottom: 24px; }

    /*GALERIA DE FOTOS*/
    .gallery-track { gap:20px; padding:40px 28% 48px 28%; }

    .gallery-item { width:80%; border-radius:18px; }

    .gallery-item-caption { padding:52px 28px 26px 28px; }

    .gallery-item-caption span { font-size:20px; }

    /*GALERIA*/    
    .galeria-item { min-height: 500px; }

    /*LOCALIZAÇÃO*/
    .contato-botao { padding: 12px 32px; }

    /*FOOTER*/
    .infoFooter { flex-direction: row; justify-content: space-between; align-items: center; }

    .divLogotipo, .divCentral, .divLateral { width: 25%; }

    /*Sobre a Serrana*/
    .sobre-bloco { padding: 95px 40px 130px; }
    
    .sobre-bloco__container { flex-direction: row; align-items: center; gap: 80px; }
    
    .sobre-bloco__imagens { flex: 0 0 46%; }
    
    .sobre-bloco__imagem-principal { aspect-ratio: 1 / 1.02; }
    
    .sobre-bloco__imagem-secundaria { right: -32px; bottom: -56px; width: 44%; aspect-ratio: 4 / 5; }
    
    .sobre-bloco__conteudo { flex: 0 0 48%; padding-top: 0; }
    
    .sobre-bloco__destaques { flex-wrap: nowrap; gap: 40px; }

    /*SOBRE AS CULINÁRIAS*/
    .culinaria{ padding: 95px 40px; }
    
    .cozinhas__grid { grid-template-columns: repeat(3, 1fr); gap: 28px; }
  
    .cozinhas__card { height: 550px; }
  
    .cozinhas__titulo { font-size: 30px; }
  
    .cozinhas__texto { font-size: 15px; }
  
    .cozinhas__card:hover .cozinhas__imagem { transform: scale(1.08); }
  
    .cozinhas__card:hover .cozinhas__conteudo { transform: translateY(-8px); }

    /* CARDÁPIO */
    .cardapio { padding: 95px 40px; }
  
    .cardapio__grid { gap: 30px; }
  
    .cardapio__imagem { height: 300px; }
  
    .cardapio__titulo { font-size: 26px; }
  
    .cardapio-modal__fechar { top: -46px; width: 40px; height: 40px; font-size: 24px; }

    /* VÍDEO */
    .video-destaque { padding: 120px 60px; }
  
    .video-destaque__container { flex-direction: row; align-items: center; gap: 70px; }
  
    .video-destaque__texto { flex: 0 0 40%; }
  
    .video-destaque__coluna-video { flex: 1; }
  
    .video-destaque__moldura { top: 26px; left: 26px; right: -26px; bottom: -26px; }
  
    .video-destaque__play { width: 76px; height: 76px; }

}

@media (min-width: 1280px){

    .Blocologotipo { width: 15%; }

    .tituloHero { font-size: 84px; }

    /*CONSULTORIO*/
    .infoConsultorio { grid-template-columns: 0.6fr 1fr; }

    /*GALERIA DE FOTOS*/
    .gallery-track { gap:24px; padding:48px 33% 56px 33%; }

    .gallery-item { width:70%; border-radius:20px; }

    /*CTA WHATSAPP*/
    .tituloPagina { font-size: 60px; }

    .tituloCtaWhatsapp { max-width: 700px; }

    /*LOCALIZAÇÃO*/
    .tituloContato { font-size: 48px; }
    
}