/* Residente blog — visual enhancement to match the landing. */
:root{
  --b:#0e9f76; --b7:#0a7a5b; --cta:#0b8463; --ctah:#097253;
  --deep:#07221c; --ink:#0c1c2b; --muted:#516474; --bg:#f4f8fa;
  --surface:#fff; --line:#e4eaef; --tint:#e7f6f0;
  --amb-sm:0 1px 2px hsl(210 30% 25%/.06), 0 10px 28px -18px hsl(210 30% 25%/.32);
  --amb-md:0 1px 2px hsl(210 30% 25%/.05), 0 24px 50px -30px hsl(210 30% 25%/.4);
}
body{ background:var(--bg)!important; color:var(--ink); font-family:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
.text-emerald-600,.text-emerald-700{ color:var(--b7)!important; }
.hover\:text-emerald-600:hover,.hover\:text-emerald-700:hover,.group-hover\:text-emerald-600{ color:var(--b7)!important; }
.text-emerald-400,.hover\:text-emerald-400:hover,.hover\:text-emerald-300:hover{ color:#6fe3c0!important; }
.bg-emerald-100{ background:var(--tint)!important; }
.bg-emerald-600,.hover\:bg-emerald-700:hover{ background:var(--cta)!important; }
.hover\:bg-emerald-50:hover{ background:var(--tint)!important; }
.hover\:border-emerald-300:hover{ border-color:#bfe6d6!important; }

.rb-header{ position:sticky; top:0; z-index:50; padding:12px 16px 0; }
.rb-nav{ max-width:1180px; margin:0 auto; height:60px; display:flex; align-items:center; gap:14px; padding:0 12px 0 18px; border-radius:999px; background:hsl(200 40% 99%/.86); -webkit-backdrop-filter:saturate(170%) blur(16px); backdrop-filter:saturate(170%) blur(16px); box-shadow:var(--amb-sm), inset 0 0 0 1px hsl(0 0% 100%/.6); }
.rb-brand{ display:flex; align-items:center; gap:9px; flex:0 0 auto; font-weight:800; font-size:1.1rem; letter-spacing:-.035em; color:var(--ink); text-decoration:none; }
.rb-brand img{ width:28px!important; height:28px!important; max-width:28px!important; max-height:28px!important; object-fit:contain!important; margin:0!important; flex:0 0 28px; }
.rb-brand b{ color:var(--b7); }
.rb-links{ margin-left:auto; display:flex; align-items:center; gap:4px; min-width:0; }
.rb-links a{ font-weight:700; color:var(--ink); text-decoration:none; font-size:.88rem; white-space:nowrap; padding:7px 9px; border-radius:999px; transition:background .18s,color .18s,transform .18s; }
.rb-links a:hover{ background:#eef4f7; color:var(--b7); }
.rb-back{ color:var(--muted)!important; }
.rb-cta{ background:var(--cta); color:#fff!important; font-weight:800!important; padding:10px 17px!important; box-shadow:0 10px 24px -12px hsl(160 60% 24%/.6); }
.rb-cta:hover{ background:var(--ctah)!important; color:#fff!important; transform:translateY(-1px); }
@media(max-width:980px){ .rb-links a:not(.rb-cta):not(.rb-back){ display:none; } }
@media(max-width:560px){ .rb-header{ padding-inline:10px; } .rb-nav{ height:auto; min-height:58px; border-radius:24px; flex-wrap:wrap; padding:10px 12px; } .rb-brand{ width:100%; } .rb-links{ width:100%; margin-left:0; justify-content:space-between; } }

.rb-blog-hero{ padding:64px 16px 28px; }
.rb-blog-hero-inner,.rb-blog-shell{ max-width:1120px; margin:0 auto; }
.rb-kicker{ color:var(--b7); font-weight:900; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; margin-bottom:16px; }
.rb-blog-hero-grid{ display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:32px; align-items:end; }
.rb-blog-hero h1{ max-width:780px; font-size:clamp(2.6rem,7vw,5.4rem); line-height:.95; letter-spacing:-.06em; font-weight:900; color:var(--ink); }
.rb-blog-hero p:not(.rb-kicker){ max-width:62ch; margin-top:22px; color:var(--muted); font-size:1.08rem; line-height:1.7; }
.rb-blog-note{ border:1px solid var(--line); border-radius:28px; background:linear-gradient(145deg,#fff, #edf8f3); padding:24px; box-shadow:var(--amb-sm); }
.rb-blog-note strong{ display:block; color:var(--ink); font-size:1.25rem; margin-bottom:8px; }
.rb-blog-note span{ display:block; color:var(--muted); line-height:1.55; }
.rb-blog-shell{ padding:26px 16px 80px; }
.rb-featured-post{ display:grid; gap:18px; border-radius:32px; background:var(--deep); color:#fff; padding:clamp(28px,5vw,52px); margin-bottom:28px; box-shadow:var(--amb-md); background-image:radial-gradient(60% 90% at 100% 0, hsl(168 70% 45%/.25), transparent 55%); }
.rb-featured-post h2{ max-width:820px; font-size:clamp(2rem,4vw,3.6rem); line-height:1.02; letter-spacing:-.045em; font-weight:900; }
.rb-featured-post p{ max-width:68ch; color:#b8d7ce; font-size:1.05rem; line-height:1.7; }
.rb-post-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.rb-post-card{ display:flex; flex-direction:column; min-height:260px; border:1px solid #eef2f5; border-radius:24px; background:#fff; padding:24px; box-shadow:var(--amb-sm); transition:transform .25s cubic-bezier(.32,.72,0,1), box-shadow .25s cubic-bezier(.32,.72,0,1); }
.rb-post-card:hover{ transform:translateY(-3px); box-shadow:var(--amb-md); }
.rb-post-card h2{ color:var(--ink); font-size:1.35rem; line-height:1.16; letter-spacing:-.025em; font-weight:850; margin:14px 0 12px; }
.rb-post-card p{ color:var(--muted); line-height:1.62; margin-bottom:18px; }
.rb-post-meta{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; color:#6a7b88; font-size:.78rem; font-weight:800; }
.rb-post-meta span{ background:var(--tint); color:var(--b7); padding:3px 8px; border-radius:999px; }
.rb-read{ margin-top:auto; align-self:flex-start; color:var(--b7); text-decoration:none; font-weight:900; }
.rb-featured-post .rb-read{ color:#fff; background:var(--cta); padding:12px 18px; border-radius:999px; }
article header h1{ letter-spacing:-.025em!important; color:var(--ink)!important; }
.prose :where(a){ color:var(--cta)!important; text-decoration:none; }
.prose :where(a):hover{ text-decoration:underline; }
.prose :where(h2,h3){ letter-spacing:-.02em; }
.prose :where(blockquote){ border-left-color:var(--b)!important; color:var(--muted); }
article.rounded-2xl, .rounded-2xl.border, a.rounded-xl.border{ border-radius:22px!important; border-color:#eef2f5!important; box-shadow:var(--amb-sm)!important; transition:transform .35s cubic-bezier(.32,.72,0,1), box-shadow .35s cubic-bezier(.32,.72,0,1)!important; }
article.rounded-2xl:hover, a.rounded-xl.border:hover{ transform:translateY(-3px); box-shadow:var(--amb-md)!important; }
section[class*="from-emerald-600"]{ border-radius:26px!important; background:var(--deep)!important; background-image:radial-gradient(80% 120% at 100% 0, hsl(168 60% 40%/.26), transparent 55%)!important; }
section[class*="from-emerald-600"] .text-emerald-100{ color:#a9cfc4!important; }
section[class*="from-emerald-600"] a{ background:#fff!important; color:var(--cta)!important; border-radius:999px!important; }

.rb-footer{ background:var(--deep); color:#cfe9e0; margin-top:20px; padding:64px 16px 28px; background-image:radial-gradient(55% 100% at 100% 0, hsl(168 60% 40%/.18), transparent 55%); }
.rb-footer-inner{ max-width:1120px; margin:0 auto; }
.rb-footer-grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:40px; }
.rb-footer .rb-brand{ color:#fff; margin-bottom:12px; font-size:1.18rem; }
.rb-footer .rb-brand b{ color:#6fe3c0; }
.rb-footer p{ color:#8fb3a8; max-width:36ch; font-size:.96rem; line-height:1.6; }
.rb-footer h4{ color:#fff; font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; margin:0 0 14px; font-weight:800; }
.rb-footer a{ display:block; color:#a9cfc4; text-decoration:none; padding:5px 0; font-weight:600; transition:color .18s; }
.rb-footer a:hover{ color:#6fe3c0; }
.rb-footer-bottom{ border-top:1px solid hsl(168 30% 40%/.25); margin-top:40px; padding-top:24px; text-align:center; color:#7fa498; font-size:.85rem; }
@media(max-width:820px){ .rb-blog-hero-grid{ grid-template-columns:1fr; } .rb-post-grid{ grid-template-columns:1fr; } .rb-footer-grid{ grid-template-columns:1fr; gap:28px; } .rb-blog-hero{ padding-top:42px; } }
