:root{--ink:#2b2522;--soft:#6f6460;--bg:#fbf8f3;--line:#e6ddd2;--rose:#8a3b46}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font:300 18px/1.75 "Jost",sans-serif}
img{display:block;max-width:100%}
.serif{font-family:"Cormorant Garamond",serif}
header.hero{min-height:92vh;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw;padding:8vh 7vw;max-width:1300px;margin:0 auto}
.hero .kicker{letter-spacing:.32em;text-transform:uppercase;font-size:.75rem;color:var(--rose)}
.hero h1{font-family:"Bodoni Moda",serif;font-weight:400;font-size:clamp(3.2rem,8vw,6.4rem);line-height:1;margin:.35em 0 .3em}
.hero p.lead{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.6rem;line-height:1.4;color:var(--soft);max-width:30ch}
.hero .sig{margin-top:2rem;font-size:.9rem;letter-spacing:.12em;color:var(--soft)}
.hero figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
section{max-width:760px;margin:0 auto;padding:12vh 7vw 0}
.num{font-family:"Bodoni Moda",serif;color:var(--rose);font-size:1rem;letter-spacing:.2em}
h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(2.2rem,5vw,3.2rem);line-height:1.1;margin:.3em 0 .8em}
section p{margin-bottom:1.2em}
section p.first::first-letter{font-family:"Bodoni Moda",serif;float:left;font-size:4.2rem;line-height:.9;padding:.08em .12em 0 0;color:var(--rose)}
blockquote{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.65rem;line-height:1.4;color:var(--rose);border-left:1px solid var(--rose);padding-left:1.2em;margin:2em 0}
.place{display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.78rem;letter-spacing:.25em;text-transform:uppercase;color:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.9rem 0;margin:2.2rem 0}
.place span:not(:last-child)::after{content:"→";margin-left:1.2rem;color:var(--rose)}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:2.5rem 0}
.pair img{width:100%;aspect-ratio:4/5;object-fit:cover}
.wide{margin:2.5rem 0}.wide img{width:100%;aspect-ratio:4/3;object-fit:cover}
figcaption{font-size:.85rem;color:var(--soft);margin-top:.5rem;font-style:italic;font-family:"Cormorant Garamond",serif;font-size:1.05rem}
.album{max-width:1200px;margin:0 auto;padding:10vh 5vw 0;columns:3 280px;column-gap:14px}
.album img{width:100%;margin-bottom:14px;break-inside:avoid}
.letter{max-width:640px;text-align:center;padding-bottom:6vh}
.letter p{font-family:"Cormorant Garamond",serif;font-size:1.45rem;line-height:1.55}
.letter .sign{font-family:"Bodoni Moda",serif;font-size:2rem;color:var(--rose);margin-top:1.5rem}
footer{text-align:center;padding:8vh 0 6vh;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.orn{text-align:center;color:var(--rose);letter-spacing:1em;margin-top:12vh}
@media(max-width:820px){header.hero{grid-template-columns:1fr;min-height:auto;padding-top:6vh}.hero figure{order:-1}}
.final{max-width:1100px;margin:3rem auto;padding:0 1.25rem}.final img{width:100%;height:auto;display:block;border-radius:4px}
@media(min-width:1000px){
body{font-size:19px}
header.hero{max-width:1560px;gap:6vw;padding:8vh 6vw}
.hero p.lead{font-size:1.9rem}
section{max-width:1400px;padding:14vh 6vw 0}
section>.num,section>h2,section>p,section>blockquote,section>.place{max-width:760px;margin-left:auto;margin-right:auto}
section>h2{margin-top:.3em}
.pair,.wide{margin:4rem 0;gap:24px}
.wide img{aspect-ratio:16/9}
.album{max-width:1560px;padding:12vh 6vw 0;columns:4 260px;column-gap:20px}
.album img{margin-bottom:20px}
.final{max-width:1560px;padding:0 6vw;margin:5rem auto}
.letter{max-width:820px}
}
.album{columns:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1400px;padding:12vh 6vw 0}
.album img{margin:0;width:100%;aspect-ratio:4/5;object-fit:cover}
@media(max-width:820px){.album{grid-template-columns:1fr 1fr;gap:14px;padding:10vh 7vw 0}}
.wide.inteira img{aspect-ratio:auto;height:auto}
.retrato{max-width:640px;margin:3rem auto}.retrato img{width:100%;height:auto}
