:root{
  --paint-bg:#fdfdf7; --paint-surface:#f3f4e8; --paint-text:#23261a;
  --paint-muted:#575c42; --paint-accent:#5a7d18; --paint-accent-text:#ffffff;
  --paint-border:#e3e6cf; --paint-hero-bg:#232815; --paint-hero-text:#f6f8ea;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paint-bg);color:var(--paint-text);font-family:'Helvetica Neue', Arial, system-ui, sans-serif;line-height:1.6;font-size:17px}
h1,h2,h3{font-family:'Helvetica Neue', Arial, system-ui, sans-serif;line-height:1.2;color:var(--paint-text)}
a{color:var(--paint-accent)}
img,svg{max-width:100%;height:auto}
.m_skip{position:absolute;left:-9999px;top:0;background:var(--paint-accent);color:var(--paint-accent-text);padding:10px 16px;z-index:100}
.m_skip:focus{left:0}
.m_container{max-width:1200px;margin:0 auto;padding-left:20px;padding-right:20px}
.m_header{border-bottom:1px solid var(--paint-border);background:var(--paint-surface)}
.m_header .m_container{display:flex;align-items:center;gap:18px;padding-top:14px;padding-bottom:14px;flex-direction:column}
.m_brand{font-family:'Helvetica Neue', Arial, system-ui, sans-serif;font-weight:700;font-size:1.25rem;color:var(--paint-text);text-decoration:none}
.m_nav{display:flex;flex-wrap:wrap;gap:16px;list-style:none;margin:0;padding:0}
.m_nav a{text-decoration:none;color:var(--paint-muted);font-size:.95rem}
.m_nav a:hover{color:var(--paint-accent)}

main{display:block}
.m_hero{background:var(--paint-hero-bg);color:var(--paint-hero-text);padding-top:67px;padding-bottom:67px}
.m_hero h1{color:var(--paint-hero-text);font-size:clamp(1.7rem,4vw,2.6rem);margin:0 0 .5em}
.m_hero p{color:var(--paint-hero-text);opacity:.94;max-width:60ch}
.m_section{padding-top:55px;padding-bottom:55px;border-top:1px solid var(--paint-border)}
.m_h2{font-size:clamp(1.3rem,2.4vw,1.8rem);margin:0 0 .7em}
.m_btn{display:inline-block;background:var(--paint-accent);color:var(--paint-accent-text);text-decoration:none;font-weight:600;padding:12px 20px;border-radius:999px;border:0;cursor:pointer}
.m_btn:hover{filter:brightness(1.08)}
.m_rank{display:grid;gap:18px}
.m_rank.cards{grid-template-columns:1fr}
.m_card{background:var(--paint-surface);border:1px solid var(--paint-border);border-radius:14px;padding:23px}
.m_card h3{margin:0 0 .3em;font-size:1.2rem}
.m_rating{font-weight:700;color:var(--paint-accent)}
.m_bono{background:var(--paint-bg);border:1px dashed var(--paint-border);border-radius:8px;padding:8px 12px;margin:10px 0;font-size:.95rem}
.m_features{margin:.4em 0;padding-left:1.1em}
.m_features li{margin:.2em 0}
.m_rg{background:#dc2626;color:#ffffff;padding:25px;border-radius:10px}
.m_rg h2,.m_rg a{color:#ffffff}
.m_rg strong{color:#ffffff}
.m_helpline{background:var(--paint-surface);border:1px solid var(--paint-border);border-left:4px solid var(--paint-accent);border-radius:8px;padding:21px}
.m_helpline ul{margin:.4em 0;padding-left:1.1em}
.m_disclosure{background:var(--paint-surface);border:1px solid var(--paint-border);border-radius:8px;padding:14px 16px;font-size:.9rem;color:var(--paint-muted)}
.m_faq details{border-bottom:1px solid var(--paint-border);padding:10px 0}
.m_faq summary{cursor:pointer;font-weight:600}
.m_table{width:100%;border-collapse:collapse}
.m_table th,.m_table td{text-align:left;padding:10px;border-bottom:1px solid var(--paint-border);vertical-align:top}
.m_footer{background:var(--paint-surface);border-top:1px solid var(--paint-border);color:var(--paint-muted);font-size:.9rem;padding-top:55px;padding-bottom:55px;margin-top:55px}
.m_footer a{color:var(--paint-muted)}
.m_footer .m_nav{margin:.6em 0}
.m_badge{display:inline-block;background:var(--paint-bg);border:1px solid var(--paint-border);border-radius:999px;padding:4px 10px;font-size:.8rem;margin:2px}
@media(min-width:768px){
  .m_rank.cards{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){
  .m_rank.cards{grid-template-columns:repeat(3,1fr)}
  body{font-size:18px}
}
@media(max-width:767px){
  .m_table,.m_table thead,.m_table tbody,.m_table th,.m_table td,.m_table tr{display:block}
  .m_table thead{display:none}
  .m_table td{border:0;padding:4px 0}
  .m_table tr{border:1px solid var(--paint-border);border-radius:8px;padding:12px;margin-bottom:18px}
}
