
:root { --teal:#1a6b6a; --teal-dark:#145453; --teal-light:#e6f2f2; --coral:#e8735a; --coral-light:#fdf0ed;
  --gray-50:#f9fafb; --gray-100:#f3f4f6; --gray-400:#9ca3af; --gray-600:#4b5563; --gray-900:#111827; }
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif; color:#1f2937; line-height:1.7; background:#fff; }
a { color:var(--teal); }
.site-header { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.5rem 1rem;
  border-bottom:1px solid var(--gray-100); padding:.9rem 1.5rem; }
.logo { text-decoration:none; font-size:1.3rem; font-weight:800; }
.logo span:first-child { color:var(--teal); } .logo span:last-child { color:var(--coral); }
.site-nav { display:flex; flex-wrap:wrap; gap:1rem; font-size:.85rem; font-weight:600; }
.site-nav a { text-decoration:none; color:var(--gray-600); }
.site-nav a:hover, .site-nav a[aria-current="page"] { color:var(--teal); }
main { max-width:900px; margin:0 auto; padding:2.5rem 1.5rem 4rem; }
h1 { font-size:1.8rem; color:var(--gray-900); line-height:1.3; margin-bottom:.4rem; }
h2 { font-size:1.1rem; color:var(--teal-dark); margin:2.2rem 0 .6rem; border-bottom:2px solid var(--teal-light); padding-bottom:.35rem; }
h3 { font-size:.98rem; color:var(--gray-900); margin:1.4rem 0 .3rem; }
p, li, td, th { font-size:.92rem; }
.lede { color:var(--gray-600); margin-bottom:1rem; }
.updated { font-size:.78rem; color:var(--gray-400); margin-bottom:1.5rem; }
ul, ol { margin:.5rem 0 .5rem 1.25rem; }
li { margin-bottom:.25rem; color:var(--gray-600); }
.wrap { overflow-x:auto; }
table { width:100%; border-collapse:collapse; margin:.8rem 0 1.2rem; }
th, td { border:1px solid #e5e7eb; padding:.55rem .7rem; text-align:left; vertical-align:top; color:var(--gray-600); }
th { background:var(--teal-light); color:var(--teal-dark); font-size:.85rem; }
td.price, th.price { text-align:right; white-space:nowrap; font-weight:700; color:var(--teal); }
.note { background:var(--gray-50); border-left:4px solid var(--coral); padding:.9rem 1.1rem; border-radius:8px; margin:1.2rem 0; font-size:.88rem; color:var(--gray-600); }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1rem; margin:1.2rem 0; }
.card { border:2px solid var(--gray-100); border-radius:14px; padding:1.3rem; }
.card.featured { border-color:var(--coral); }
.card h3 { margin:0 0 .2rem; font-size:1.05rem; }
.card .amount { font-size:1.6rem; font-weight:800; color:var(--teal); }
.card .period { font-size:.8rem; color:var(--gray-400); margin-bottom:.7rem; }
.card ul { margin-left:1.1rem; }
.tag { display:inline-block; background:var(--teal-light); color:var(--teal-dark); font-size:.7rem; font-weight:700;
  padding:.15rem .5rem; border-radius:999px; }
.cta-row { display:flex; flex-wrap:wrap; gap:.75rem; margin:1.4rem 0; }
.btn { display:inline-block; padding:.7rem 1.4rem; border-radius:10px; text-decoration:none; font-weight:600; font-size:.9rem; }
.btn-primary { background:var(--coral); color:#fff; }
.btn-secondary { background:var(--teal-light); color:var(--teal-dark); }
.site-footer { background:var(--gray-900); color:var(--gray-400); text-align:center; padding:2.2rem 1.5rem; font-size:.8rem; line-height:1.8; }
.site-footer .foot-brand { font-size:1.15rem; font-weight:800; margin-bottom:.2rem; }
.site-footer .foot-brand span:first-child { color:#fff; } .site-footer .foot-brand span:last-child { color:var(--coral); }
.site-footer a { color:var(--coral); text-decoration:none; }
.site-footer .foot-links { margin:.3rem 0; }
.site-footer .foot-legal { font-size:.74rem; margin-top:.8rem; }
.breadcrumb { font-size:.78rem; color:var(--gray-400); margin-bottom:.6rem; }
.breadcrumb a { color:var(--gray-400); text-decoration:none; }
@media (max-width:640px) { main { padding:1.8rem 1.1rem 3rem; } h1 { font-size:1.5rem; } }
