
:root{
  --paper:#FBF8F1; --ink:#3b2f1b; --gold:#B79A5B; --gold-deep:#9C7F45;
  --muted:#6a5a3a; --line:#eadfcc; --white:#fff;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0; font-family:"Cormorant Garamond", serif; color:var(--ink); background:linear-gradient(180deg,#eee,#f7f3ea)}
img{max-width:100%; height:auto; display:block}
a{color:var(--gold-deep); text-decoration:none}
.container{max-width:1100px; margin:0 auto; padding:0 20px}
.header{position:sticky; top:0; z-index:10; background:var(--paper); border-bottom:1px solid var(--line)}
.nav{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0}
.brand{display:flex; align-items:center; gap:10px}
.brand img{width:46px}
.brand .title{font-weight:700; letter-spacing:.08rem}
.menu{display:flex; gap:16px; flex-wrap:wrap; align-items:center}
.menu a{padding:8px 10px; border-radius:10px}
.menu a:hover{background:#fff3}
.lang-switch{display:flex; align-items:center; gap:10px}
.lang-switch input[type=radio]{transform:scale(1.05); accent-color:var(--gold-deep)}
.hero{text-align:center; padding:42px 0 18px; background:radial-gradient(1200px 420px at 50% 0, rgba(255,255,255,.9), transparent 60%)}
.foil{background:linear-gradient(100deg,#b38b2b 0%,#f1e1a6 25%,#b38b2b 50%,#f1e1a6 75%,#b38b2b 100%); -webkit-background-clip:text; background-clip:text; color:transparent}
h1{margin:10px 0 6px; font-size:46px; letter-spacing:.22rem; font-weight:700}
.sub{font-family:"Great Vibes", cursive; font-size:36px; color:var(--gold-deep)}
.meta{color:var(--muted); letter-spacing:.06rem}
.monogram{display:flex; justify-content:center; margin:8px 0 6px}
.monogram img{width:220px}

.section{padding:28px 0}
.card{background:#fff; border:1px solid var(--line); border-radius:18px; padding:22px; box-shadow:0 20px 60px rgba(0,0,0,.06)}
.grid{display:grid; gap:22px}
.grid-2{grid-template-columns:1fr 1fr}
.grid-3{grid-template-columns:repeat(3,1fr)}

.btn{display:inline-flex; align-items:center; gap:8px; border:0; padding:12px 18px; border-radius:14px; font-weight:700; cursor:pointer; letter-spacing:.06rem}
.btn-primary{background:linear-gradient(100deg,#b38b2b,#f1e1a6,#b38b2b); color:#3b2f1b}
.btn-ghost{background:#fff; border:1px solid var(--line); color:#3b2f1b}

.footer{padding:22px 0 44px; text-align:center; color:var(--muted)}

/* Language visibility */
.lang-pt{display:none}
#page.pt .lang-en{display:none}
#page.pt .lang-pt{display:inline}

/* Home extras */
.center{text-align:center}
.lead{font-size:20px; color:#5c4b2a}
.countdown{display:flex; gap:16px; justify-content:center; margin-top:12px}
.count{background:#fff; border:1px solid var(--line); border-radius:14px; padding:12px 16px; min-width:70px}
.count .n{font-size:28px; font-weight:700}
.count .t{font-size:12px; letter-spacing:.08rem; color:#5c4b2a}

.gallery{display:grid; gap:10px; grid-template-columns:repeat(3,1fr)}
.gallery img{border-radius:12px; aspect-ratio:1/1; object-fit:cover}

/* ===== Mobile ===== */
@media (max-width: 900px){
  .container{padding:0 14px}
  .nav{flex-wrap:wrap; gap:10px}
  .brand{order:1}
  .lang-switch{order:2; margin-left:auto; align-self:center}
  .menu{order:3; width:100%; overflow-x:auto; white-space:nowrap; gap:8px; padding:6px 2px 10px; border-top:1px solid var(--line)}
  .menu a{display:inline-block; padding:8px 10px; font-size:14px; border-radius:999px; background:#fff; border:1px solid #f2ebd8}
  .hero{padding:28px 0 14px}
  h1{font-size:34px; letter-spacing:.14rem}
  .sub{font-size:26px}
  .monogram img{width:150px}
  .section{padding:18px 0}
  .card{padding:16px; border-radius:16px}
  .grid, .grid-2, .grid-3{display:grid; grid-template-columns:1fr; gap:14px}
  .gallery{grid-template-columns:1fr; gap:8px}
  .countdown{gap:10px}
  .count{min-width:64px; padding:10px 12px}
  .count .n{font-size:22px}
  .lead{font-size:18px}
  .footer{padding:16px 0 28px; font-size:14px}
  .lang-switch label{font-size:14px}
  .lang-switch input[type=radio]{transform:scale(0.95)}
}
@media (max-width: 420px){
  .menu a{font-size:13px; padding:8px 10px}
  .monogram img{width:130px}
  h1{font-size:30px}
  .sub{font-size:24px}
  .meta{font-size:14px}
}
