*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Lato',sans-serif;background:#fdf8f3;color:#3a2e28;overflow-x:hidden}

/* NAV */
nav{background:#fdf8f3;padding:.5rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8ddd4;position:sticky;top:0;z-index:999;flex-wrap:wrap;gap:.5rem;min-height:100px}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-brand{font-family:'Playfair Display',serif;font-size:1.1rem;color:#2a1f1a;line-height:1.1}
.nav-brand span{color:#5c7a5a}
.nav-brand small{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#b8923a;font-family:'Lato',sans-serif}
.nav-links{display:flex;gap:1.2rem;list-style:none}
.nav-links a{text-decoration:none;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:#7a6a60;transition:color .2s}
.nav-links a:hover{color:#5c7a5a}
.nav-cta{background:#5c7a5a;color:#fff;padding:.5rem 1.2rem;border-radius:2rem;font-size:.8rem;text-decoration:none;font-weight:700;white-space:nowrap}
@media(max-width:640px){.nav-links{display:none}}

/* HERO */
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
.hero-left{padding:3.5rem 2.5rem 3.5rem 3rem;display:flex;flex-direction:column;justify-content:center;background:#fdf8f3}
.hero-tag{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#b8923a;font-weight:700;margin-bottom:.8rem}
.hero h1{font-family:'Playfair Display',serif;font-size:2.6rem;line-height:1.15;color:#2a1f1a;margin-bottom:1rem}
.hero h1 em{font-style:italic;color:#5c7a5a}
.hero-desc{font-size:.92rem;line-height:1.8;color:#7a6a60;max-width:380px;margin-bottom:1.8rem}
.hero-btns{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.btn-primary{background:#5c7a5a;color:#fff;padding:.7rem 1.6rem;border-radius:2rem;text-decoration:none;font-size:.83rem;font-weight:700}
.btn-outline{color:#5c7a5a;text-decoration:none;font-size:.83rem;font-weight:700;border-bottom:1.5px solid #5c7a5a;padding-bottom:2px}
.hero-right{position:relative;overflow:hidden;min-height:300px}
.hero-right img{width:100%;height:100%;object-fit:cover}
@media(max-width:768px){
  .hero{grid-template-columns:1fr}
  .hero-left{padding:2.5rem 1.5rem;order:2}
  .hero-right{min-height:260px;order:1}
  .hero h1{font-size:2rem}
}

/* TRUST BAR */
.trust-bar{background:#2a1f1a;padding:1rem 2rem;display:flex;gap:2rem;align-items:center;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:.5rem;color:#e8ddd4;font-size:.78rem}
.trust-item svg{width:16px;height:16px;flex-shrink:0}
@media(max-width:640px){.trust-bar{gap:1rem}.trust-item{font-size:.72rem}}

/* SECTIONS */
.section-tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#b8923a;font-weight:700;margin-bottom:.6rem}
.section-title{font-family:'Playfair Display',serif;font-size:2rem;color:#2a1f1a;line-height:1.2;margin-bottom:.7rem}
.section-sub{font-size:.92rem;line-height:1.8;color:#7a6a60;max-width:480px}

/* SERVICES */
.services{padding:4.5rem 3rem;background:#fdf8f3}
.services-header{text-align:center;margin-bottom:2.5rem}
.services-header .section-sub{margin:0 auto}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.service-card{background:#fff;border-radius:1rem;padding:1.8rem;border:1px solid #e8ddd4;transition:transform .2s,border-color .2s}
.service-card:hover{transform:translateY(-3px);border-color:#5c7a5a}
.card-icon{width:44px;height:44px;background:#e8f0e7;border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.service-card h3{font-family:'Playfair Display',serif;font-size:1.1rem;color:#2a1f1a;margin-bottom:.5rem}
.service-card p{font-size:.83rem;line-height:1.7;color:#7a6a60}
@media(max-width:768px){.cards-grid{grid-template-columns:1fr 1fr}.services{padding:3rem 1.5rem}}
@media(max-width:480px){.cards-grid{grid-template-columns:1fr}}

/* GALLERY (old - kept for fallback) */

/* CAROUSEL */
.carousel-wrap{position:relative;overflow:hidden;border-radius:1rem;max-height:650px}
.carousel-track{display:flex;transition:transform .6s cubic-bezier(.4,0,.2,1)}
.carousel-slide{min-width:100%;position:relative;max-height:650px;overflow:hidden}
.carousel-slide img{width:100%;height:620px;object-fit:cover;display:block}
.carousel-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.55));color:#fff;padding:1.2rem 1.5rem;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.car-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.85);border:none;width:44px;height:44px;border-radius:50%;font-size:1.5rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;color:#2a1f1a;transition:background .2s}
.car-btn:hover{background:#fff}
.car-prev{left:1rem}
.car-next{right:1rem}
.car-dots{position:absolute;bottom:.8rem;left:50%;transform:translateX(-50%);display:flex;gap:6px}
.car-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:background .2s;border:none}
.car-dot.active{background:#fff}
@media(max-width:640px){.carousel-slide img{height:320px}.carousel-wrap{max-height:340px}}

/* GALLERY_OLD */
.gallery{padding:4.5rem 3rem;background:#e8f0e7}
.gallery-header{text-align:center;margin-bottom:2.5rem}
.gallery-header .section-sub{margin:0 auto}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.gallery-item{border-radius:.75rem;overflow:hidden;aspect-ratio:4/3;position:relative}
.gallery-item.wide{grid-column:span 2}
.gallery-item.tall{grid-row:span 2;aspect-ratio:auto}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}
.gallery-item:hover img{transform:scale(1.04)}
.gallery-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.5));color:#fff;padding:.6rem .8rem;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;opacity:0;transition:opacity .3s}
.gallery-item:hover .gallery-caption{opacity:1}
@media(max-width:768px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item.wide{grid-column:span 2}.gallery{padding:3rem 1.5rem}}
@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}.gallery-item.wide{grid-column:span 1}}

/* MOMENTOS */
.momentos{padding:4.5rem 3rem;background:#fdf8f3}
.momentos-header{text-align:center;margin-bottom:2.5rem}
.momentos-header .section-sub{margin:0 auto}
.momentos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.momento-item{border-radius:.75rem;overflow:hidden;aspect-ratio:3/4;position:relative;background:#e8ddd4;min-height:280px}
.momento-item img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .4s;display:block}
.momento-item:hover img{transform:scale(1.05)}
.momento-item.landscape{aspect-ratio:4/3}
@media(max-width:900px){.momentos-grid{grid-template-columns:repeat(3,1fr)}.momentos{padding:3rem 1.5rem}}
@media(max-width:600px){.momentos-grid{grid-template-columns:repeat(2,1fr)}.momento-item{min-height:240px}}

/* MISSAO VISAO VALORES */
.mvv{background:#2a1f1a;padding:4.5rem 3rem}
.mvv-header{text-align:center;margin-bottom:3rem}
.mvv-header .section-title{color:#e8ddd4}
.mvv-header .section-sub{color:#a09080;margin:0 auto}
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.mvv-card{background:#3a2e28;border-radius:1rem;padding:2rem;border:1px solid #5a4a40}
.mvv-icon{width:44px;height:44px;background:#4a3e38;border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem}
.mvv-icon svg{width:22px;height:22px;color:#b8923a}
.mvv-card h3{font-family:'Playfair Display',serif;font-size:1.2rem;color:#e8ddd4;margin-bottom:.8rem}
.mvv-card p{font-size:.85rem;line-height:1.8;color:#a09080}
.values-list{list-style:none;padding:0}
.values-list li{font-size:.82rem;line-height:1.7;color:#a09080;padding:.2rem 0;padding-left:1rem;position:relative}
.values-list li::before{content:'•';position:absolute;left:0;color:#b8923a}
@media(max-width:768px){.mvv-grid{grid-template-columns:1fr}.mvv{padding:3rem 1.5rem}}

/* ABOUT */
.about{background:#e8f0e7;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.about-img{position:relative;overflow:hidden;min-height:400px}
.about-img img{width:100%;height:100%;object-fit:cover}
.about-content{padding:3.5rem 3rem;display:flex;flex-direction:column;justify-content:center}
.stat-row{display:flex;gap:2rem;margin:1.8rem 0;flex-wrap:wrap}
.stat{border-left:3px solid #b8923a;padding-left:1rem}
.stat-num{font-family:'Playfair Display',serif;font-size:1.8rem;color:#2a1f1a}
.stat-label{font-size:.75rem;color:#7a6a60;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:768px){.about{grid-template-columns:1fr}.about-img{min-height:240px}.about-content{padding:2.5rem 1.5rem}}

/* TESTIMONIALS */
.testimonials{background:#fdf8f3;text-align:center;padding:4.5rem 3rem}
.testimonials-header{margin-bottom:2.5rem}
.testimonials-header .section-sub{margin:0 auto}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;text-align:left}
.testimonial-card{background:#fff;border-radius:1rem;padding:1.6rem;border:1px solid #e8ddd4}
.quote-mark{font-family:'Playfair Display',serif;font-size:2.5rem;color:#e8f0e7;line-height:.8;margin-bottom:.4rem}
.testimonial-text{font-size:.85rem;line-height:1.8;color:#5a4a40;font-style:italic;margin-bottom:1rem}
.testimonial-author{display:flex;align-items:center;gap:.6rem}
.author-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.78rem;color:#fff;flex-shrink:0}
.author-name{font-size:.85rem;font-weight:700;color:#2a1f1a}
.author-role{font-size:.75rem;color:#7a6a60}
@media(max-width:768px){.testimonials-grid{grid-template-columns:1fr}.testimonials{padding:3rem 1.5rem}}

/* CONTACT */
.contact{background:#3a2e28;padding:4.5rem 3rem;text-align:center}
.contact .section-title{color:#e8ddd4;margin-bottom:.7rem}
.contact .section-sub{color:#a09080;margin:0 auto 2.5rem;max-width:500px}
.contact-items{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}
.contact-card{background:#2a1f1a;border-radius:1rem;padding:1.8rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.6rem;min-width:160px;flex:1;max-width:200px}
.contact-card svg{width:26px;height:26px;color:#b8923a}
.contact-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#7a6a60}
.contact-value{font-size:.9rem;color:#e8ddd4;font-weight:700;text-align:center;line-height:1.5}
@media(max-width:640px){.contact{padding:3rem 1.5rem}.contact-items{gap:1rem}.contact-card{max-width:none;width:100%}}

/* FOOTER */
footer{background:#1e1511;padding:1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
footer p{color:#7a6a60;font-size:.75rem}
.footer-logo{font-family:'Playfair Display',serif;color:#e8ddd4;font-size:.95rem}
.footer-logo span{color:#5c7a5a}