/* Romy's Journal: reuses site.css tokens (shell, blush, espresso, mocha, oxblood). */
.top{border-bottom:1px solid var(--hair);padding-top:env(safe-area-inset-top,0px)}
.top .in,.foot .in{max-width:760px;margin:0 auto;padding:0 max(20px,env(safe-area-inset-left,0px))}
.top .in{height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.top .brand{font-size:28px;white-space:nowrap}
.top nav{display:flex;gap:22px}
.top nav a{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mocha);text-decoration:none}
.top nav a:hover{color:var(--espresso)}
.post,.list{max-width:680px;margin:0 auto;padding:44px 20px 30px}
.post h1,.list h1{font-size:clamp(34px,7vw,50px);line-height:1.08;margin:14px 0 0}
.intro{color:var(--mocha);font-size:18px;margin:16px 0 0}
.meta{display:flex;align-items:center;gap:12px;margin:22px 0 30px;font-size:13px;color:var(--mocha)}
.meta img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.meta a{color:inherit;text-decoration:none;border-bottom:1px solid var(--hair)}
.hero{width:100%;height:auto;margin:0 0 30px}
.post h2{font-size:clamp(26px,5vw,31px);line-height:1.18;margin:42px 0 12px}
.post h3{font-size:22px;line-height:1.25;margin:28px 0 8px}
.post p,.post li{margin:0 0 18px;font-size:17.5px;line-height:1.75}
.post ol,.post ul{padding-left:22px;margin:0 0 18px}
.post li::marker{color:var(--oxblood)}
.post p a,.post li a,.sources a,.crisis a{color:var(--oxblood)}
.post blockquote{margin:34px 0;padding:4px 0 4px 22px;border-left:2px solid var(--oxblood);font-family:var(--display);font-style:italic;font-size:clamp(22px,4.6vw,26px);line-height:1.38}
.answer{background:var(--blush);padding:20px 22px 4px;margin:0 0 30px;border-radius:3px}
.answer b,.crisis b,.next>b,.sources>b{display:block;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--oxblood);margin-bottom:8px}
.answer p{font-size:17px}
.crisis{border:1px solid rgba(169,80,93,.4);padding:16px 20px 2px;margin:0 0 30px;border-radius:3px;background:#fff}
.crisis p{font-size:15.5px!important;line-height:1.6!important}
.say{background:#fff;border:1px solid var(--hair);padding:18px 20px 2px;margin:0 0 22px;border-radius:3px}
.say p{font-size:16.5px!important}
.say .label{margin-bottom:6px}
.cta{background:var(--espresso);color:var(--shell);padding:34px 26px;margin:42px 0 12px;text-align:center;border-radius:3px}
.cta .label{color:var(--gold)}
.cta h3{font-size:30px;line-height:1.15;margin:10px 0 8px}
.cta p{color:#d9c3bc;font-size:16px!important;margin:0 0 22px!important}
.faq details{border-bottom:1px solid var(--hair)}
.faq summary{font-size:19px;padding:20px 40px 20px 0}
.faq details p{margin:0 0 20px}
.next{margin-top:38px}
.next a{display:block;text-decoration:none;padding:16px 0;border-bottom:1px solid var(--hair);font-family:var(--display);font-size:21px;line-height:1.25}
.next a .label{display:block;margin-bottom:5px;font-size:10px}
.sources{font-size:13.5px;margin-top:32px}
.sources ul{padding-left:18px;margin:6px 0 0}
.sources li{margin:0 0 6px;font-size:13.5px!important;line-height:1.5!important}
.note{font-size:13px!important;line-height:1.6!important;color:var(--mocha);border-top:1px solid var(--hair);padding-top:18px;margin-top:34px!important}
.note a{color:inherit}
.grp{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--oxblood);margin:46px 0 0}
.item{display:block;text-decoration:none;padding:24px 0;border-bottom:1px solid var(--hair)}
.item h2{font-size:clamp(23px,4.8vw,27px);line-height:1.2;margin:8px 0 6px}
.item p{margin:0;color:var(--mocha);font-size:16px}
.foot{background:var(--espresso);color:#c9b2ab;padding:48px 0 70px;margin-top:50px;font-size:13px}
.foot .brand{color:var(--shell)}
.foot .links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px}
.foot a{color:#efdcd6;text-decoration:none}
@media (max-width:420px){.top .brand{font-size:24px}.top nav{gap:14px}.top nav a{font-size:10.5px;letter-spacing:.12em}}
