*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --color-bg:#0A0A0A;
  --color-surface:#111111;
  --color-border:#1E1E1E;
  --color-gold:#C9A96E;
  --color-gold-light:#E8C98A;
  --color-white:#F5F2ED;
  --color-gray:#7A7A7A;
  --color-gray-light:#B0AAAA;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;font-weight:300;background:var(--color-bg);color:var(--color-white);line-height:1.7;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--color-gold);outline-offset:3px}

h1,h2{font-family:'Playfair Display',serif;font-weight:600;line-height:1.15}
h1{font-size:clamp(2.2rem,5.5vw,4.2rem)}
h1 em{font-style:italic;color:var(--color-gold-light)}
h2{font-size:clamp(1.7rem,3.4vw,2.6rem);margin-bottom:1.2rem}
h3{font-family:'Playfair Display',serif;font-weight:600;font-size:1.15rem}

.eyebrow{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--color-gold);margin-bottom:1rem;font-weight:500}
.quote{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:1.45rem;color:var(--color-gold-light);border-left:1px solid var(--color-gold);padding-left:1.2rem;margin:1.6rem 0;line-height:1.5}
.section-lead{color:var(--color-gray-light);max-width:560px;margin-bottom:2rem}

.container{width:min(1180px,92%);margin:0 auto}
.section{padding:clamp(4rem,9vw,7.5rem) 0}
.section-dark{background:var(--color-bg)}
.section-surface{background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}

.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.split-img img{border-radius:4px;border:1px solid var(--color-border)}
.split-text p{color:var(--color-gray-light);margin-bottom:1rem}

/* HERO */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.hero-img{position:absolute;inset:0;z-index:0}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;opacity:.7;filter:brightness(1.15)}
.hero-img::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(10,10,10,.96) 25%,rgba(10,10,10,.55) 60%,rgba(10,10,10,.25) 100%),linear-gradient(to top,var(--color-bg) 0%,transparent 30%)}
.hero-content{position:relative;z-index:1;width:min(1180px,92%);margin:0 auto;max-width:1180px}
.hero-content h1{max-width:13ch}
.hero-sub{color:var(--color-gray-light);margin-top:1.4rem;font-size:1.02rem;max-width:48ch}
.hero-ctas{display:flex;gap:1rem;margin-top:2.4rem;flex-wrap:wrap}

/* BADGES */
.badges{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;margin-top:2rem}
.badges li{border:1px solid var(--color-border);border-left:2px solid var(--color-gold);padding:.9rem 1.1rem;background:var(--color-surface)}
.badges strong{display:block;font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--color-gold-light)}
.badges span{font-size:.8rem;color:var(--color-gray)}

/* TIMELINE */
.timeline{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;margin-top:4rem;counter-reset:tl}
.timeline li{position:relative;padding-top:1.6rem;border-top:1px solid var(--color-border)}
.timeline li::before{content:'';position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--color-gold)}
.timeline strong{display:block;font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--color-gold-light);margin-bottom:.3rem}
.timeline span{font-size:.86rem;color:var(--color-gray)}

.brb-badge{display:inline-block;margin-top:1.2rem;padding:.55rem 1rem;border:1px solid var(--color-gold);color:var(--color-gold-light);font-size:.78rem;letter-spacing:.08em}
.recon-lista{list-style:none;margin-top:1rem}
.recon-lista li{padding:.65rem 0 .65rem 1.6rem;position:relative;color:var(--color-gray-light);border-bottom:1px solid var(--color-border);font-size:.95rem}
.recon-lista li::before{content:'';position:absolute;left:0;top:1.15rem;width:9px;height:1px;background:var(--color-gold)}

/* CONTATO */
.contato-info p{margin-bottom:1rem;color:var(--color-gray-light)}
.contato-info strong{color:var(--color-white);font-weight:500}
address{font-style:normal}
.link-gold{color:var(--color-gold-light);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}
.link-gold:hover{border-color:var(--color-gold)}
.todo-info{font-size:.78rem;color:var(--color-gray);font-style:italic}

/* RODAPÉ */
footer{border-top:1px solid var(--color-border);padding:3.5rem 0;background:var(--color-surface)}
.footer-grid{display:grid;gap:1.6rem;justify-items:center;text-align:center}
.footer-logo{height:44px;width:auto}
footer nav{display:flex;gap:1.6rem;flex-wrap:wrap;justify-content:center}
footer nav a,footer a{color:var(--color-gray-light);text-decoration:none;font-size:.85rem;transition:color .2s}
footer a:hover{color:var(--color-gold-light)}
.footer-meta{font-size:.8rem;color:var(--color-gray)}
.footer-credit{font-family:'Playfair Display',serif;color:var(--color-gold);font-size:.85rem}

/* RESPONSIVO */
@media(max-width:1024px){
  .timeline{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .split{grid-template-columns:1fr}
  .split-img{order:-1}
  .hero-img img{object-position:50% 30%}
  .badges{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .badges{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr}
  .hero-ctas .btn{width:100%;text-align:center}
}
