:root{
  --paper:#FAF7F1;--sheet:#FFFFFF;--ink:#1B2A33;--muted:#4A5A63;--line:#E3DBCD;--tint:#E7EEEA;
  --green:#1F4D45;--green-deep:#173A34;
  --serif:"Fraunces",Georgia,serif;--sans:"Inter",system-ui,sans-serif;--accent:#C2703D;
  --gutter:clamp(16px,4vw,40px);
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--green);text-underline-offset:3px}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:2px}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--gutter)}
.col{max-width:700px;margin:0 auto;padding:0 var(--gutter)}

.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:20px}
.brand{font:600 20px/1 var(--serif);text-decoration:none;color:var(--ink)}
.brand span{color:var(--accent)}
.top nav{display:flex;gap:22px;align-items:center;font-size:15px}
.top nav a{text-decoration:none;color:var(--muted)}
.top nav a:hover,.top nav a[aria-current]{color:var(--ink)}
.top nav .cta{background:var(--green);color:#fff;padding:10px 16px;border-radius:999px;font-weight:600}
@media (max-width:760px){.top nav a:not(.cta){display:none}}

h1,h2,h3{font-family:var(--serif);font-weight:650;letter-spacing:-.01em;line-height:1.15;margin:0}

/* Índice do blog */
.blog-head{padding:clamp(56px,8vw,96px) 0 40px}
.blog-head h1{font-size:clamp(38px,5vw,60px);max-width:16ch}
.blog-head p{margin:20px 0 0;font-size:19px;color:var(--muted);max-width:56ch}
.posts{list-style:none;margin:0;padding:0 0 96px}
.posts li{border-top:1px solid var(--line)}
.posts a{display:grid;grid-template-columns:150px 1fr;gap:8px 32px;padding:28px 0;text-decoration:none;color:inherit}
.posts time{font-size:14px;color:var(--muted);padding-top:6px}
.posts b{display:block;font:500 clamp(22px,2.4vw,28px)/1.25 var(--serif)}
.posts span{display:block;margin-top:8px;color:var(--muted);max-width:60ch}
.posts a:hover b{color:var(--green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
@media (max-width:620px){.posts a{grid-template-columns:1fr}.posts time{padding-top:0}}

/* Post */
.post-head{padding-top:clamp(48px,7vw,88px);padding-bottom:32px}
.post-head .meta{font-size:14px;color:var(--muted)}
.post-head h1{font-size:clamp(34px,4.6vw,54px);margin-top:16px}
.post-head .lede{margin:22px 0 0;font:400 20px/1.55 var(--sans);color:var(--muted)}
.post-body{font:400 18px/1.75 var(--sans);color:#2b3a42;padding-bottom:40px}
.post-body h2{font-size:30px;margin:48px 0 14px}
.post-body h3{font-size:23px;margin:36px 0 10px}
.post-body p{margin:0 0 20px}
.post-body ul,.post-body ol{margin:0 0 22px;padding-left:24px}
.post-body li{margin-bottom:8px}
.post-body blockquote{margin:28px 0;padding-left:20px;border-left:3px solid var(--accent);font-style:italic;color:#3a4542}
.post-body strong{font-weight:600;color:var(--ink)}
.cta-box{margin:24px 0 72px;padding:28px;background:linear-gradient(150deg,#245a50,#1f4d45 55%,#173a34);color:#EEF4F1;border-radius:16px}
.cta-box h2{color:#fff;font-size:26px}
.cta-box p{margin:12px 0 20px;color:#C9DAD4}
.cta-box a{display:inline-block;background:var(--accent);color:#fff;padding:12px 20px;border-radius:999px;font-weight:600;text-decoration:none;margin:0 10px 10px 0}
.cta-box a.line{background:transparent;color:#fff;border:1px solid #7FA79C}
.more{border-top:1px solid var(--line);padding:40px 0 80px}
.more h2{font-size:22px;margin-bottom:12px}
.more ul{margin:0;padding-left:20px}
.more li{margin-bottom:6px}

footer{border-top:1px solid var(--line);padding:36px 0 calc(36px + env(safe-area-inset-bottom));font-size:14px;color:var(--muted)}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:inherit;text-decoration:none;margin-left:18px}
footer a:hover{color:var(--ink);text-decoration:underline}
