body{

margin:0;
padding:0;

font-family:'Cormorant Garamond', serif;

background:#f6f1ed;

color:#b68d75;

overflow-x:hidden;

}

/* TOPO */
header{

background:#f6f1ed;

padding:0;

border-bottom:1px solid #eaded6;

}

.hero-soxikibem{

max-width:1200px;

margin:0 auto;

padding:18px 20px 4px;

text-align:center;

}

.hero-soxikibem img{

width:100%;

height:auto;

display:block;

margin:auto;

}

/* MENU */

/* MENU */

nav{

background:#fffdfb;

padding:0;

box-shadow:0 2px 10px rgba(0,0,0,0.05);

position:relative;

z-index:10;

margin-top:-8px;

}

.menu{

list-style:none;
margin:0;
padding:0;

display:flex;
justify-content:center;

position:relative;
z-index:10;

flex-wrap:wrap;

}

.menu li{

position:relative;

}

.menu li a{

display:block;

padding:20px 28px;

text-decoration:none;

color:#aa7f67;

font-size:20px;

font-family:'Cormorant Garamond', serif;

font-weight:600;

letter-spacing:1px;


transition:0.3s;

}

.menu li a:hover{

color:#9d7057;
background:#f3ebe5;
}

/* SUBMENU */

.submenu{

display:none;

position:absolute;

top:100%;
left:0;

background:white;

list-style:none;

padding:0;

margin:0;

min-width:220px;

box-shadow:0 5px 20px rgba(0,0,0,0.08);

border-radius:0 0 20px 20px;

overflow:hidden;

z-index:999;

}

.submenu li a{

font-size:18px;

font-weight:500;

color:#aa7f67;

padding:16px 20px;

border-bottom:1px solid #eaded5;

background:#fffdfb;

}

/* MOSTRAR SUBMENU */

.menu li:hover .submenu{

display:block;

}

/* =========================
   MENSAGEM FINAL
========================= */

.mensagem-final{

max-width:882px;

margin:0 auto;

padding:0 20px;

text-align:center;

}

.mensagem-final img{

width:100%;

height:auto;

display:block;

margin:auto;

}

/* =========================
   RODAPÉ
========================= */

footer{

background:#f6f1ed;

border-top:1px solid #dccbc0;

margin-top:0px;

padding:45px 20px 30px;

text-align:center;

width:100%;

position:static;

box-sizing:border-box;

}

footer p{

margin:0;

font-family:'Cormorant Garamond', serif;

font-size:14px;

line-height:24px;

letter-spacing:1px;

color:#b68d73;

opacity:0.92;

}

/* =========================
   FAÇA PARTE DO GRUPO
========================= */

.grupo-convite{

max-width:1100px;

margin:40px auto 20px;

padding:0 20px;

text-align:center;

}

.grupo-convite h2{

font-size:34px;

font-weight:500;

letter-spacing:3px;

color:#b68d75;

margin-bottom:6px;

}

.grupo-subtitulo{

font-size:22px;

font-style:italic;

color:#c29b84;

line-height:1.8;

margin-bottom:20px;

margin:0 auto 40px;

}

.grupo-apresentacao{

max-width:700px;

margin:0 auto 50px;

font-size:18px;

line-height:2;

color:#9d7057;

}

.grupo-apresentacao p{

margin-bottom:18px;

}

.grupos-cards{

display:flex;

justify-content:center;

gap:35px;

flex-wrap:wrap;

margin-top:20px;

}

.grupo-card{

background:#fffdfb;

width:420px;

padding:40px;

border-radius:30px;

border:1px solid #f1e6df;

box-shadow:0 10px 28px rgba(0,0,0,0.05);

box-sizing:border-box;

display:flex;

flex-direction:column;

justify-content:space-between;

}

.grupo-card h3{

font-size:28px;

font-weight:500;

color:#b68d75;

margin-bottom:20px;

letter-spacing:2px;

}

.grupo-card p{

font-size:20px;

line-height:1.8;

color:#9d7057;

margin-bottom:30px;

flex-grow:1;

}

.grupo-botao{

display:inline-block;

background:#c89a78;

color:#fff;

padding:14px 34px;

border-radius:30px;

text-decoration:none;

font-size:14px;

font-weight:600;

letter-spacing:2px;

transition:.3s;

}

.grupo-botao:hover{

background:#b98a68;

transform:translateY(-2px);

}

/* =========================
   BENEFÍCIOS
========================= */

.sim-beneficios{

max-width:1200px;

margin:0px auto 80px;

padding:0 20px;

text-align:center;

}

.sim-beneficios h2{

font-size:34px;

font-weight:500;

letter-spacing:3px;

color:#b68d75;

margin-bottom:45px;

}

.beneficios-grid{

display:flex;

justify-content:center;

gap:25px;

flex-wrap:wrap;

}

.beneficio-card{

background:#fffdfb;

width:270px;

padding:35px 25px;

border-radius:30px;

border:1px solid #f1e6df;

box-shadow:0 10px 28px rgba(0,0,0,0.05);

box-sizing:border-box;

}

.beneficio-card h3{

font-size:24px;

font-weight:500;

color:#b68d75;

margin-bottom:18px;

}

.beneficio-card p{

font-size:18px;

line-height:1.8;

color:#9d7057;

}

/* MOBILE */

@media screen and (max-width:768px){

.hero-soxikibem{

padding:10px 10px 5px;

}

.hero-soxikibem img{

width:100%;

height:auto;

}

.menu{
flex-wrap:wrap;
justify-content:center;
margin-top:-4px;
}

.menu li a{
padding:14px 16px;
font-size:17px;
}

.grid-tutoriais{

display:grid;

grid-template-columns:1fr 1fr;

gap:18px;

}

.tutorial-card img{

width:100%;

height:auto;

display:block;

}

.tutorial-card{

padding:10px 10px 16px;

text-align:center;

}

.tutorial-card h3{

font-size:22px;

}

.ultimos-tutoriais h2{

font-size:28px;

}

.btn-tutoriais{

font-size:16px;

padding:14px 30px;

}

.colecoes-grid{

display:flex;

flex-direction:column;

align-items:center;

gap:20px;

}

.explorar-colecoes h2{

font-size:28px;

}

.colecao-card{

width:85%;

max-width:280px;

padding:22px 18px;

min-height:auto;

}

.mensagem-final{

padding:0 12px;

margin-bottom:0px;

}

.grid-galeria{

grid-template-columns:repeat(2,minmax(0,1fr));

}

.miniatura-item img{

width:100%;

height:110px;

object-fit:cover;

}

.bandeiras{

gap:2px;

}

.bandeiras img{

width:14px !important;

height:auto;

}

.paginacao{

gap:10px;

margin:10px 0 45px;

}

.paginacao a{

width:40px;

height:40px;

font-size:17px;

}

/* RODAPÉ MOBILE */

footer{

left:0;

transform:none;

width:100%;

padding:30px 15px;

}

footer p{

font-size:11px;

line-height:20px;

letter-spacing:0.5px;

padding:0 8px;

}

html, body{

margin:0;

padding:0;

overflow-x:hidden;

overflow-y:auto;

}

}

body{

margin:0;

}

footer{

margin-bottom:0 !important;

}

.mensagem-final{

margin-bottom:0 !important;

padding-bottom:0 !important;

}

.mensagem-final img{

display:block;

vertical-align:bottom;

}

html{

overflow-x:hidden;

}

html, body{

margin-bottom:0 !important;

padding-bottom:0 !important;

}

footer{

margin:0 !important;

padding:18px 15px !important;

line-height:1.4;

}

footer img{

display:block;

vertical-align:bottom;

}

body{

display:flex;

flex-direction:column;

min-height:100vh;

}

footer{

margin-top:auto;

}

@media (max-width: 768px){

.formulario-card{

width:100%;

max-width:100%;

padding:25px;

}

.fale-conosco h2{

font-size:24px;

letter-spacing:2px;

}

.contato-subtitulo{

font-size:16px;

line-height:24px;

}

.recado-card{

width:100%;

max-width:350px;

}

.recados-grid{

flex-direction:column;

align-items:center;

}

}