/* Regimly — regimly.com
   Palette and type taken from the app's own screens, so the site and the
   product read as one thing. */

:root{
  --bg:#EDE3D6; --surface:#FFF8F0; --card:#FFFBF7;
  --line:#EFE6DA; --hair:#F3EBE0;
  --ink:#3D2B1F; --ink-2:#6B4C3B; --muted:#B0A294; --faint:#C3B5A6;
  --accent:#E8956A; --accent-deep:#C0703F; --gold:#96690F;
  --green:#8BAF82; --green-bg:#E7ECDD; --warn:#D4756B; --warn-bg:#FDF0EE;
  --max:920px;
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:var(--bg); color:var(--ink);
  font-family:'Hanken Grotesk',system-ui,-apple-system,sans-serif;
  font-size:16.5px; line-height:1.6; -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 26px}
main.wrap{padding-top:34px}

/* header */
header.site{padding:26px 0 0}
.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none}
.dot{width:11px;height:11px;border-radius:50%;background:var(--accent)}
.brand span{font-family:'Newsreader',Georgia,serif;font-size:22px;font-weight:500;
  letter-spacing:.4px;color:var(--ink)}
nav.site{margin-top:18px;display:flex;flex-wrap:wrap;gap:6px 20px;
  font-size:13.5px;color:var(--muted)}
nav.site a{color:var(--muted);text-decoration:none}
nav.site a:hover,nav.site a[aria-current]{color:var(--accent-deep)}

/* type */
h1{font-family:'Newsreader',Georgia,serif;font-weight:400;
  font-size:clamp(34px,6vw,54px);line-height:1.08;margin:14px 0 14px;max-width:19ch}
h1 em{font-style:italic;color:var(--accent)}
h2{font-family:'Newsreader',Georgia,serif;font-weight:500;
  font-size:clamp(23px,3.4vw,30px);line-height:1.2;margin:46px 0 12px}
h3{font-size:17px;margin:30px 0 8px}
p{margin:0 0 15px;color:var(--ink-2)}
.lede{font-size:19px;color:var(--ink-2);max-width:58ch;margin-bottom:26px}
.eyebrow{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--accent-deep);font-weight:700}
a{color:var(--accent-deep)}
ul{margin:0 0 16px;padding-left:20px;color:var(--ink-2)}
li{margin-bottom:7px}
strong{color:var(--ink)}
small{color:var(--muted)}

/* blocks */
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;
  padding:22px 24px;margin:0 0 14px}
.card h3{margin-top:0}
.card p:last-child{margin-bottom:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.note{background:var(--green-bg);border:1px solid #D7DEC7;border-radius:14px;
  padding:14px 16px;color:#5E6B46;font-size:14.5px;margin:0 0 18px}
.warn{background:var(--warn-bg);border:1px solid #F0D8D4;border-radius:14px;
  padding:14px 16px;color:var(--ink-2);font-size:14.5px;margin:0 0 18px}
.draft{background:#FFF0C4;border:1px solid #EDDCC0;border-radius:14px;
  padding:14px 16px;color:var(--gold);font-size:14px;margin:0 0 22px;font-weight:600}
.steps{counter-reset:s;list-style:none;padding:0}
.steps li{counter-increment:s;position:relative;padding-left:38px;margin-bottom:14px}
.steps li::before{content:counter(s);position:absolute;left:0;top:-1px;
  width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;
  font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.pill{display:inline-block;padding:5px 12px;border-radius:100px;
  background:var(--surface);border:1px solid var(--line);
  font-size:13px;color:var(--ink-2);margin:0 6px 8px 0}
.cta{display:inline-block;padding:13px 26px;border-radius:100px;background:var(--accent);
  color:#fff;text-decoration:none;font-weight:600;font-size:15px;margin:6px 8px 6px 0}
.cta.ghost{background:transparent;border:1px solid var(--line);color:var(--ink-2)}
table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:15px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--hair);
  color:var(--ink-2);vertical-align:top}
th{color:var(--ink);font-weight:600;font-size:13.5px}

/* footer */
footer.site{margin-top:60px;padding:26px 0 60px;border-top:1px solid #DDD0BF;
  font-size:13.5px;color:var(--muted)}
footer.site a{color:var(--muted);text-decoration:none;margin-right:16px}
footer.site a:hover{color:var(--accent-deep)}
.updated{margin-top:10px;font-size:12.5px;color:var(--faint)}

@media(max-width:600px){
  body{font-size:16px}
  .lede{font-size:17.5px}
}
