/* ===== Page-specific styles: quem-sou-eu-memorial ===== */

:root { --gold:#c9a84c; --gold-light:#e8d5a0; --navy:#1a4427; }
body { font-family:"Lato",sans-serif; }
#main-nav { background:white; border-bottom:2px solid var(--gold); }
.nav-logo { font-family:"Playfair Display",serif; color:var(--navy); white-space:nowrap; }
.nav-link { display:flex; align-items:center; gap:4px; padding:18px 10px; font-size:.88rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--navy); transition:color .2s; white-space:nowrap; }
.dropdown { display:none; position:absolute; top:100%; left:0; background:white; min-width:220px; border-top:3px solid var(--gold); box-shadow:0 8px 32px rgba(0,0,0,.10); z-index:100; }
.dropdown a { display:block; padding:11px 20px; font-size:.84rem; color:var(--navy); border-bottom:1px solid #f3f0e8; transition:background .15s,color .15s; }
.dropdown a:hover, .dropdown a.active { background:#fdf8ee; color:var(--gold); font-weight:700; }
#hamburger { cursor:pointer; }
.mob-link { display:block; padding:13px 28px; font-size:.95rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--navy); border-bottom:1px solid #f0ebe0; cursor:pointer; }
.mob-sub { display:none; background:#fdf8ee; }
.mob-sub a { display:block; padding:10px 44px; font-size:.85rem; color:#4a5568; border-bottom:1px solid #ece8df; }
.page-hero { background:linear-gradient(120deg,#9de17b 0%,#fff 55%,#fef9ec 100%); border-bottom:3px solid #fde68a; }
.chapter-nav a { display:block; padding:8px 14px; border-left:3px solid transparent; font-size:.84rem; color:#6b7280; transition:all .15s; }
.chapter-nav a:hover, .chapter-nav a.active { border-left-color:var(--gold); color:var(--navy); font-weight:700; background:#fdf8ee; }
.memorial-prose { font-family:"Playfair Display",serif; font-size:1.06rem; line-height:1.95; color:#1f2937; }
.memorial-prose p { margin-bottom:1.5rem; }
.memorial-prose p:last-child { margin-bottom:0; }
.memorial-prose h2 { font-size:1.55rem; font-weight:700; color:var(--navy); margin:3rem 0 1rem; padding-bottom:.5rem; border-bottom:2px solid var(--gold-light); }
.memorial-prose .drop-cap::first-letter { float:left; font-size:4.2rem; font-weight:700; line-height:.85; color:var(--gold); margin-right:10px; margin-top:4px; }
.memorial-prose blockquote { border-left:4px solid var(--gold); padding:16px 24px; background:#fdf8ee; margin:24px 0; border-radius:0 4px 4px 0; font-style:italic; }
.photo-block { background:white; border-radius:4px; box-shadow:0 4px 14px rgba(0,0,0,.08); overflow:hidden; }
.photo-placeholder { display:flex; align-items:center; justify-content:center; font-size:3rem; background:linear-gradient(135deg,#f0ebd8,#e8d5a0); }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .55s,transform .55s; }
