@import url('https://fonts.googleapis.com/css2?family=Montserrat+Alternates:wght@300;400;500;600;700&family=Open+Sans:wght@300;400;500;600&display=swap');

:root{
    --rosa:#d98fa8;
    --rosa-escuro:#b85f7e;
    --rosa-claro:#f8e8ee;
    --nude:#f4e7df;
    --creme:#fffaf7;
    --branco:#ffffff;
    --vinho:#633647;
    --texto:#4b3a40;
    --dourado:#b89562;
    --sombra:0 12px 35px rgba(99,54,71,.12);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Open Sans',sans-serif;color:var(--texto);background:var(--creme);overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}

.max-width{width:100%;}
.container{width:min(1180px,92%);margin:0 auto;}
.bg{background:linear-gradient(135deg,#fffaf7 0%,#fdf1f5 55%,#f5e4e9 100%);}
.bg2{background:linear-gradient(135deg,#5b3041 0%,#754158 55%,#8f526a 100%);}

.text-gd{font-size:clamp(42px,5.5vw,76px);line-height:1.05;}
.text-md{font-size:clamp(30px,4vw,44px);}
.text-pq{font-size:18px;line-height:1.8;}
.color-azul{color:var(--vinho);}
.color-cinza-1{color:var(--vinho);}

/* MENU */
.menu{height:88px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;}
.logo{width:170px;height:120px;display:flex;align-items:center;}
.logo a{display:block;width:100%;height:100%;}
.logo img{width:100%;height:100%;object-fit:contain;object-position:left center;}
.desktop-menu ul{display:flex;align-items:center;gap:38px;list-style:none;}
.desktop-menu a{font-family:'Montserrat Alternates',sans-serif;font-size:16px;font-weight:500;color:var(--vinho);position:relative;transition:.3s;}
.desktop-menu a::after{content:'';position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--rosa-escuro);transition:.3s;}
.desktop-menu a:hover{color:var(--rosa-escuro);}
.desktop-menu a:hover::after{width:100%;}
.mobile-menu{display:none;position:relative;z-index:30;}
.mobile-menu>i{font-size:25px;color:var(--vinho);cursor:pointer;}
.mobile-menu ul{display:none;position:absolute;right:0;top:42px;width:190px;background:#fff;border-radius:14px;padding:12px 0;box-shadow:var(--sombra);list-style:none;}
.mobile-menu li a{display:block;padding:12px 20px;color:var(--vinho);font-weight:600;}
.mobile-menu li a:hover{background:var(--rosa-claro);color:var(--rosa-escuro);}

/* HERO */
header .container{min-height:100vh;}
.call{min-height:calc(100vh - 88px);display:flex;align-items:center;gap:40px;padding:40px 0 80px;}
.call>.left,.call>.right{width:50%;}
header .left{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;}
.subtitle,.contact-subtitle,.highlight-text>span,.about-text>span{font-family:'Montserrat Alternates',sans-serif;font-size:13px;letter-spacing:3px;font-weight:700;color:var(--rosa-escuro);margin-bottom:18px;}
header h1{font-family:'Montserrat Alternates',sans-serif;font-weight:600;max-width:650px;}
header p{max-width:590px;margin-top:28px;color:#735d65;letter-spacing:.3px;}
.hero-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}
.btn-primary,.btn-secondary,.service-button,.whatsapp-button{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;padding:14px 25px;font-weight:700;transition:.3s;}
.btn-primary{background:var(--rosa-escuro);color:#fff;box-shadow:0 8px 22px rgba(184,95,126,.25);}
.btn-primary:hover{background:var(--vinho);transform:translateY(-3px);}
.btn-secondary{border:1px solid var(--rosa-escuro);color:var(--rosa-escuro);background:rgba(255,255,255,.5);}
.btn-secondary:hover{background:var(--rosa-claro);transform:translateY(-3px);}
header .right{display:flex;justify-content:center;align-items:center;}
header .imagem{width:min(520px,100%);height:560px;display:flex;align-items:center;justify-content:center;position:relative;}
header .imagem::before{content:'';position:absolute;width:430px;height:430px;border-radius:50%;background:rgba(217,143,168,.18);z-index:0;}
header .imagem img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 20px 25px rgba(99,54,71,.15));}

/* TOPO */
#back-to-top{position:fixed;right:22px;bottom:22px;width:45px;height:45px;border:0;border-radius:50%;background:var(--rosa-escuro);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(15px);transition:.3s;z-index:1000;}
#back-to-top.show{opacity:1;visibility:visible;transform:translateY(0);}
#back-to-top:hover{background:var(--vinho);transform:translateY(-3px);}

/* TITULOS */
.titulo{text-align:center;padding:100px 0 55px;}
.titulo h2{font-family:'Montserrat Alternates',sans-serif;font-weight:600;}
.line{width:min(500px,80%);height:1px;background:#dfc3cc;margin:25px auto 0;position:relative;}
.text-titulo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--creme);padding:5px 20px;color:var(--rosa-escuro);font-size:14px;font-weight:700;white-space:nowrap;}

/* SERVIÇOS */
#Service{padding-bottom:100px;}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-bottom:20px;}
.service-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--sombra);transition:.35s;border:1px solid rgba(184,95,126,.08);}
.service-card:hover{transform:translateY(-8px);box-shadow:0 18px 45px rgba(99,54,71,.18);}
.service-image{height:330px;overflow:hidden;background:var(--rosa-claro);}
.service-image img{width:100%;height:100%;object-fit:cover;transition:.5s;}
.service-card:hover .service-image img{transform:scale(1.05);}
.service-info{text-align:center;padding:27px 25px 30px;}
.service-info>i{font-size:25px;color:var(--rosa-escuro);margin-bottom:14px;}
.service-info h3{font-family:'Montserrat Alternates',sans-serif;color:var(--vinho);font-size:21px;margin-bottom:12px;}
.service-info p{font-size:14px;line-height:1.7;color:#77656c;min-height:72px;margin-bottom:20px;}
.service-button{padding:10px 22px;background:var(--rosa-claro);color:var(--rosa-escuro);font-size:14px;}
.service-button:hover{background:var(--rosa-escuro);color:#fff;}

/* DESTAQUE */
.highlight-section{background:var(--rosa-claro);padding:80px 0;}
.highlight-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 50px;
    background: #fff;
    border-radius: 28px;
    padding: 55px 65px;
    box-shadow: var(--sombra);
    text-align: center;
}


.highlight-text {
    max-width: 760px;
    width: 100%;
    margin: 0 auto;
}
.highlight-text h2{font-family:'Montserrat Alternates',sans-serif;font-size:clamp(30px,4vw,48px);line-height:1.15;color:var(--vinho);margin-bottom:20px;}
.highlight-text p{line-height:1.8;color:#715d65;margin-bottom:28px;}
.highlight-icon{width:120px;height:120px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--rosa-claro);color:var(--rosa-escuro);font-size:45px;}

/* SOBRE */
#About{padding-bottom:100px;}
.about-content{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
.about-image{height:500px;border-radius:25px;overflow:hidden;background:var(--rosa-claro);display:flex;align-items:center;justify-content:center;}
.about-image img{width:100%;height:100%;object-fit:contain;}
.about-text span{display:block;}
.about-text h2{font-family:'Montserrat Alternates',sans-serif;font-size:clamp(30px,4vw,45px);line-height:1.2;color:var(--vinho);margin-bottom:22px;}
.about-text p{line-height:1.85;color:#735d65;margin-bottom:16px;}
.about-items{margin-top:28px;display:flex;flex-direction:column;gap:14px;}
.about-items div{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--vinho);}
.about-items i{width:25px;height:25px;border-radius:50%;background:var(--rosa-claro);color:var(--rosa-escuro);display:flex;align-items:center;justify-content:center;font-size:12px;}

/* CONTATO */
#Contact{color:#fff;padding-bottom:70px;}
#Contact .titulo{padding-bottom:55px;}
#Contact .titulo h2{color:#fff;}
#Contact .line{background:rgba(255,255,255,.35);}
#Contact .text-titulo{background:#6d394c;color:#f5dbe3;}
.contact-content{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;}
.contact-info h2{font-family:'Montserrat Alternates',sans-serif;font-size:clamp(30px,4vw,48px);line-height:1.15;margin-bottom:20px;}
.contact-info p{max-width:560px;line-height:1.8;color:#f4dfe5;margin-bottom:30px;}
.contact-subtitle{display:block;color:#efb9ca;}
.whatsapp-button{background:#25d366;color:#fff;padding:16px 25px;gap:10px;box-shadow:0 10px 25px rgba(0,0,0,.15);}
.whatsapp-button:hover{background:#1eaf55;transform:translateY(-3px);}
.whatsapp-button i{font-size:22px;}
.contact-details{display:flex;flex-direction:column;gap:18px;}
.contact-box{display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);padding:20px;border-radius:18px;}
.contact-box>i{width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);font-size:20px;color:#f3c3d2;}
.contact-box span{font-size:12px;letter-spacing:1px;color:#eab4c5;font-weight:700;}
.contact-box p{margin-top:4px;color:#fff;font-weight:600;}
.social-area{text-align:center;margin-top:65px;padding-top:35px;border-top:1px solid rgba(255,255,255,.15);}
.social-area p{color:#f4dfe5;margin-bottom:18px;}
.social{display:flex;justify-content:center;gap:13px;}
.social a{width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;font-size:19px;transition:.3s;}
.social a:hover{background:#fff;color:var(--rosa-escuro);transform:translateY(-3px);}

/* FOOTER */
footer{background:#351d27;color:#eadce1;}
footer .container{min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
footer img{width:135px;height:70px;object-fit:contain;}
footer p{font-size:13px;color:#d9c3ca;}

/* RESPONSIVO */
@media(max-width:900px){
    .desktop-menu{display:none;}
    .mobile-menu{display:block;}
    .call{min-height:auto;padding:55px 0 80px;}
    .call>.left,.call>.right{width:50%;}
    header .imagem{height:450px;}
    header .imagem::before{width:340px;height:340px;}
    .services-grid{grid-template-columns:1fr 1fr;}
    .service-card:last-child{grid-column:1/-1;max-width:500px;width:100%;justify-self:center;}
    .about-content{gap:35px;}
    .contact-content{gap:35px;}
}

@media(max-width:700px){
    .container{width:min(94%,560px);}
    .menu{height:75px;}
    .logo{width:140px;height:65px;}
    .call{flex-direction:column;text-align:center;padding-top:35px;}
    .call>.left,.call>.right{width:100%;}
    header .left{align-items:center;}
    header p{text-align:center;font-size:16px;}
    .hero-buttons{justify-content:center;}
    header .imagem{height:390px;margin-top:0;}
    header .imagem::before{width:290px;height:290px;}
    .titulo{padding:75px 0 45px;}
    .services-grid{grid-template-columns:1fr;}
    .service-card:last-child{grid-column:auto;max-width:none;}
    .service-image{height:360px;}
    .highlight-content{padding:40px 25px;flex-direction:column;text-align:center;}
    .highlight-icon{width:90px;height:90px;font-size:32px;}
    .about-content{grid-template-columns:1fr;}
    .about-image{height:400px;}
    .contact-content{grid-template-columns:1fr;}
    .contact-info{text-align:center;}
    .contact-subtitle{font-size:11px;}
    .contact-info p{margin-left:auto;margin-right:auto;}
    .contact-details{max-width:500px;width:100%;margin:auto;}
    footer .container{padding:25px 0;flex-direction:column;text-align:center;}
}

@media(max-width:430px){
    .text-gd{font-size:38px;}
    .hero-buttons{flex-direction:column;width:100%;}
    .btn-primary,.btn-secondary{width:100%;}
    header .imagem{height:330px;}
    header .imagem::before{width:245px;height:245px;}
    .service-image{height:320px;}
    .about-image{height:330px;}
    .contact-box{padding:16px;}
    #back-to-top{right:14px;bottom:14px;width:42px;height:42px;}
}
