:root{--sage:#6c7054;--ink:#222834;--paper:#f6f4ee;--cream:#e9e1ce;--burgundy:#733e43}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 Lora,Georgia,serif}img{display:block;width:100%}.monogram,h1,h2,h3,.footer-names{font-family:"Baskerville Display PT",Baskervville,Georgia,serif}.hero{min-height:100svh;padding:28px 6vw 36px;display:flex;flex-direction:column;color:#fff;background:linear-gradient(90deg,rgba(11,12,11,.82) 0%,rgba(11,12,11,.48) 38%,rgba(11,12,11,.06) 72%),url("Conteudos%20site%20do%20casamento/Fotos%20casal/Foto_de_capa.png") center 44%/cover}.nav{display:flex;justify-content:space-between;align-items:center;gap:28px}.monogram{color:inherit;text-decoration:none;font-size:24px}.monogram i,h1 span,.footer-names span{font-family:"Mea Culpa",cursive;font-size:1.45em;font-style:normal}.nav-links{display:flex;gap:24px;font:12px Lora,serif}.nav-links a{color:inherit;text-decoration:none}.hero-content{max-width:550px;margin:11vh 0 auto;padding:0;text-align:left}.eyebrow{margin:0 0 13px;color:var(--sage);font:600 10px Lora,serif;letter-spacing:.2em;text-transform:uppercase}.hero .eyebrow{color:#eee7d7}h1{margin:0;font-size:clamp(56px,9vw,118px);font-weight:400;line-height:.9;letter-spacing:-.05em}.hero-date{margin:30px 0 0;font-size:13px;letter-spacing:.1em;text-transform:uppercase}.scroll-hint{margin:0;color:#eee7d7;font-size:10px;letter-spacing:.16em;text-align:center;text-transform:uppercase}section{padding:110px 9vw}.intro{max-width:900px;margin:auto;text-align:center}.intro:before,.gallery-heading:before{content:"✦";display:block;margin-bottom:12px;color:var(--sage);font-size:18px}h2{margin:0 0 23px;font-size:clamp(39px,5vw,67px);font-weight:400;line-height:1;letter-spacing:-.045em}.intro>p:last-child{max-width:540px;margin:auto;color:#505560}.details{display:grid;grid-template-columns:repeat(3,1fr);padding-top:12px}.details article{min-height:220px;padding:32px;border-top:1px solid #c5c4bd;border-bottom:1px solid #c5c4bd}.details article+article{border-left:1px solid #c5c4bd}.details span{display:block;margin-bottom:36px;color:var(--sage);font-size:12px;letter-spacing:.1em}.details h3{margin:0 0 6px;font-size:27px;font-weight:400}.details p{margin:0;color:#505560;font-size:14px}
.gallery{background:#e9e6db}.gallery-heading{margin-bottom:48px}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:260px 260px;gap:16px}.gallery-grid figure{position:relative;margin:0;overflow:hidden}.gallery-grid img{height:100%;object-fit:cover;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.04)}.gallery-grid .wide,.gallery-grid .tall{grid-row:span 2}.gallery-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:42px 18px 16px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:13px}
.attire{color:#f7f5ee;background:linear-gradient(135deg,#28302b,#222834)}.attire .eyebrow{color:#c5d09b}.attire-copy{max-width:720px}.attire-copy p{max-width:590px;color:#e1e3dc}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:50px 0 65px}.swatches div{min-height:105px;padding:13px;display:flex;align-items:end;font-size:13px}.navy{background:#222b41}.ivory{color:#332f29;background:#eee8dc}.charcoal{background:#53575b}.green{background:#657659}.pink{background:#b97f87}.yellow{color:#443516;background:#d8b54d}.earth{background:#94785c}.burgundy{background:var(--burgundy)}.inspiration-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.inspiration-grid img{height:300px;object-fit:cover}.inspiration-grid img:nth-child(2){object-position:center 25%}
.location{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.location p{color:#505560}.text-link{display:inline-block;margin-top:16px;padding-bottom:5px;border-bottom:1px solid var(--sage);color:var(--ink);font-size:12px;font-weight:600;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.venue{max-width:390px;margin:0;justify-self:center;background:#ddd7ca}.venue img{height:420px;object-fit:cover}.venue figcaption{padding:12px 14px;color:#505560;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.rsvp{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;color:#fff;background:var(--sage)}.rsvp .eyebrow{color:#e1e4d0}.rsvp>div p:last-child{max-width:390px;color:#f0f0ea}.rsvp form{display:grid;gap:18px}.rsvp label,.rsvp fieldset{display:grid;gap:7px;padding:0;border:0;color:#f8f8f3;font-size:13px;font-weight:600}.rsvp input:not([type=radio]),.rsvp select,.rsvp textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid rgba(255,255,255,.7);outline:0;color:#fff;background:transparent;font:400 15px Lora,serif}.rsvp select option{color:var(--ink)}.rsvp textarea{resize:vertical}.rsvp input::placeholder,.rsvp textarea::placeholder{color:rgba(255,255,255,.7)}.rsvp fieldset{display:flex;flex-wrap:wrap;gap:13px 19px}.rsvp legend{width:100%;margin-bottom:0}.rsvp fieldset label{display:flex;align-items:center;gap:6px;font-weight:400}.rsvp button{width:max-content;margin-top:6px;padding:13px 22px;border:1px solid #fff;color:#fff;background:transparent;font:600 12px Lora,serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.rsvp button:hover{color:var(--sage);background:#fff}#form-status{min-height:24px;margin:0;font-size:14px;font-weight:600}footer{padding:55px 7vw;color:#fff;text-align:center;background:var(--ink)}footer p{margin:0 0 8px;font-size:14px}.footer-names{font-size:28px}
@media(max-width:700px){.hero{min-height:680px;padding:22px 7vw 28px;background-position:43% center}.nav-links{gap:13px;font-size:10px}.nav-links a:first-child{display:none}section{padding:76px 7vw}.details,.location,.rsvp{grid-template-columns:1fr}.details article{min-height:auto;padding:29px 0}.details article+article{border-left:0}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 190px 230px;gap:10px}.gallery-grid .wide{grid-column:span 2;grid-row:auto}.gallery-grid .tall{grid-row:span 2}.swatches{grid-template-columns:repeat(2,1fr);margin:35px 0 50px}.swatches div{min-height:85px}.inspiration-grid{gap:8px}.inspiration-grid img{height:175px}.location{gap:32px}.venue{width:100%;max-width:none}.venue img{height:360px}.rsvp{gap:45px}}
.visually-hidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;padding:0;border:0}
@media(max-width:700px){.hero{background-position:center 39%}.hero-content{max-width:330px;margin:9vh 0 auto;padding:0;text-align:left}}
.monogram{display:flex;align-items:center;width:68px;height:68px}.monogram img{width:100%;height:100%;object-fit:contain}.hero h1 span{white-space:nowrap}.swatches{grid-template-columns:repeat(2,minmax(0,220px));justify-content:start}.inspiration-grid img{object-position:center 36%}.inspiration-grid img:nth-child(2){object-position:center 35%}.inspiration-grid img:nth-child(3){object-position:center 24%}.dress-code{margin-bottom:22px;font-size:18px}.rsvp>div p:nth-of-type(2){margin-bottom:12px;font-weight:600}@media(max-width:700px){.monogram{width:52px;height:52px}.swatches{grid-template-columns:repeat(2,1fr)}}

.faq,.gifts{max-width:900px;margin:auto;text-align:center}.faq{padding-top:90px;padding-bottom:90px}.faq>p:not(.eyebrow){max-width:560px;margin:0 auto;color:#505560}.cerimonialista-phone{margin-top:18px!important;color:var(--sage)!important;font-family:"Baskerville Display PT",Baskervville,Georgia,serif;font-size:27px}.faq-note{margin-top:8px!important;font-size:13px}.gift-hero{min-height:320px;padding:28px 6vw 58px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(120deg,#26302b,#59614a)}.gift-hero h1{margin:0;font-size:clamp(52px,7vw,88px);font-weight:400}.back-link{color:#fff;font-size:12px;text-decoration:none}.gifts{min-height:500px;padding-top:110px}.gifts>p:not(.eyebrow){max-width:580px;margin:0 auto;color:#505560}.gift-note{max-width:540px;margin:42px auto 0;padding:25px;border:1px solid #c5c4bd;color:var(--sage);font-size:14px;letter-spacing:.04em}
.gifts{max-width:1180px}.gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:58px;text-align:left}.gift-card{overflow:hidden;background:#fff;box-shadow:0 14px 34px rgba(34,40,52,.08)}.gift-card img{height:235px;object-fit:cover}.gift-card:nth-child(3) img{object-position:center 45%}.gift-card:nth-child(4) img{object-position:center 40%}.gift-card:nth-child(7){grid-column:2}.gift-card>div{padding:22px 22px 26px}.gift-number{margin:0 0 7px;color:var(--sage);font-size:11px;font-weight:600;letter-spacing:.13em}.gift-card h3{margin:0 0 9px;font-size:26px;font-weight:400;line-height:1.05}.gift-card p:last-child{margin:0;color:#505560;font-size:14px;line-height:1.55}@media(max-width:800px){.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-card:nth-child(7){grid-column:auto}}@media(max-width:560px){.gift-grid{grid-template-columns:1fr;gap:16px;margin-top:38px}.gift-card img{height:260px}.gift-card:nth-child(7){grid-column:auto}}
.gift-card .gift-price{margin:20px 0 0;color:var(--sage);font-family:"Baskerville Display PT",Baskervville,Georgia,serif;font-size:25px;line-height:1}

/* Mantém os três elementos do cabeçalho com o mesmo respiro vertical. */
.hero-content{
  display:grid;
  gap:20px;
}
.hero-content .eyebrow,
.hero-content h1,
.hero-content .hero-date{
  margin:0;
}

@media(max-width:700px){
  .hero-content{
    margin:auto 0 48px;
  }

}

.gallery-link{
  margin-top:30px;
}

.gallery-page-header{
  min-height:320px;
  padding:28px 6vw 58px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:#fff;
  background:linear-gradient(120deg,#26302b,#59614a);
}

.gallery-page-title .eyebrow{
  color:#e1e4d0;
}

.gallery-page-title h1{
  font-size:clamp(52px,7vw,88px);
}

.gallery-all{
  max-width:1320px;
  margin:auto;
  padding-top:85px;
}

.gallery-intro{
  max-width:540px;
  margin:0 0 44px;
  color:#505560;
  font-size:18px;
}

.gallery-all-grid{
  columns:3 260px;
  column-gap:16px;
}

.gallery-all-grid figure{
  break-inside:avoid;
  margin:0 0 16px;
  overflow:hidden;
  background:#e9e6db;
  aspect-ratio:auto;
}

.gallery-all-grid img{
  height:auto;
  transition:transform .5s ease;
}

.gallery-all-grid figure:hover img{
  transform:scale(1.03);
}

.gallery-all-grid .gallery-portrait-narrow{
  aspect-ratio:auto;
}

.gallery-all-grid .gallery-landscape{
  grid-column:auto;
  aspect-ratio:auto;
}

@media(max-width:700px){
  .gallery-page-header{
    min-height:260px;
    padding:22px 7vw 42px;
  }

  .gallery-all{
    padding-top:58px;
  }

  .gallery-intro{
    margin-bottom:32px;
    font-size:16px;
  }

  .gallery-all-grid{
    columns:2 140px;
    column-gap:10px;
  }

  .gallery-all-grid figure{
    margin-bottom:10px;
  }

}
