:root { --bg:#F3F1EC; --tinta:#17181A; --suave:#5A5C5E; --acento:#1E5B3F; }
* { box-sizing:border-box; }
html, body { margin:0; padding:0; background:var(--bg); }
body { font-family:Helvetica,Arial,sans-serif; color:var(--tinta); line-height:1.6; -webkit-font-smoothing:antialiased; }
main { max-width:720px; margin:0 auto; padding:clamp(48px,9vh,96px) 20px 64px; }
h1 { font-weight:500; font-size:clamp(26px,3.4vw,38px); line-height:1.15; letter-spacing:-.02em; margin:0 0 8px; }
h2 { font-weight:500; font-size:17px; letter-spacing:-.01em; margin:38px 0 10px; }
p, li { font-size:15px; color:#2B2D2F; }
ul { padding-left:20px; }
main img { max-width:100%; height:auto; display:block; }
a { color:var(--acento); }
a:hover { text-decoration:none; }
.sub { font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--suave); margin:0 0 34px; }
.datos { background:#fff; border:1px solid #E4E1DA; border-radius:4px; padding:18px 20px; margin:22px 0; }
.datos p { margin:4px 0; font-size:14px; }
footer { border-top:1px solid #E4E1DA; margin-top:52px; padding-top:22px; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:#6B6D70; display:flex; flex-wrap:wrap; gap:14px 26px; justify-content:space-between; }
footer a { color:#6B6D70; text-decoration:none; }
footer a:hover { color:var(--acento); }
