/* adaline.css — Design tokens · pueblo.international
   Fuente: Adaline Style Reference — botanical journal at dawn */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Colors */
  --cream:#fbfdf6;
  --ink:#0a1d08;
  --bark:#31200b;
  --loam:#4a3212;
  --forest:#203b14;
  --sage-mist:#eff2e8;
  --lichen:#e0e5d5;
  --moss:#d7e8b5;
  --eucalyptus:#c5ccb6;
  --onyx:#000000;
  --muted:#4a3212;
  --muted-soft:#6b5c48;

  /* Semantic aliases */
  --canvas:var(--cream);
  --surface-1:var(--sage-mist);
  --surface-2:var(--lichen);
  --surface-3:var(--moss);
  --surface-4:var(--eucalyptus);
  --text:var(--ink);
  --text-muted:var(--muted-soft);
  --cta:var(--loam);
  --cta-hover:var(--forest);
  --border:var(--ink);
  --border-soft:rgba(10,29,8,.12);
  --border-hairline:var(--lichen);

  /* Typography */
  --font-sans:'Inter',system-ui,-apple-system,sans-serif;
  --font-mono:'Fragment Mono','JetBrains Mono',ui-monospace,monospace;
  --track-display:-0.04em;
  --track-mono:0.02em;

  /* Layout */
  --page-max:1200px;
  --space:8px;
  --section-gap:72px;
  --radius-control:20px;
  --radius-img:8px;
  --radius-tag:9999px;

  /* Elevation — shadow-averse */
  --ring-cta:rgba(99,143,61,.1);
}

html{scroll-behavior:smooth}

body{
  font-family:var(--font-sans);
  font-size:18px;
  line-height:1.67;
  letter-spacing:-0.72px;
  background:var(--canvas);
  color:var(--text);
  font-feature-settings:"calt","kern";
  -webkit-font-smoothing:antialiased;
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block;border-radius:var(--radius-img)}

.wrap{max-width:var(--page-max);margin:0 auto;padding:0 calc(var(--space)*3)}

/* —— Typography —— */
.micro-label{
  font-family:var(--font-mono);
  font-size:14px;
  line-height:1;
  letter-spacing:var(--track-mono);
  text-transform:uppercase;
  color:var(--text);
  font-feature-settings:"calt","kern";
}

.display{
  font-family:var(--font-sans);
  font-weight:400;
  font-size:clamp(2.35rem,5.5vw,3.3rem);
  line-height:1;
  letter-spacing:var(--track-display);
  color:var(--text);
}

.heading-md{
  font-family:var(--font-sans);
  font-weight:400;
  font-size:clamp(1.75rem,3.5vw,2.35rem);
  line-height:1.05;
  letter-spacing:var(--track-display);
}

.body-sm{font-size:14px;line-height:1.43;letter-spacing:-0.56px;color:var(--text-muted)}
.caption{font-size:12px;line-height:1;letter-spacing:-0.48px;color:var(--text-muted)}

/* —— Buttons —— */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:24px 32px;border-radius:var(--radius-control);
  font-family:var(--font-sans);font-size:14px;font-weight:700;
  letter-spacing:var(--track-display);line-height:1;
  transition:background .2s,border-color .2s,color .2s;
  cursor:pointer;border:1px solid transparent;
}
.btn-gold,.btn-primary{
  background:var(--cta);color:var(--cream);
  box-shadow:var(--ring-cta) 0 0 0 1px;
}
.btn-gold:hover,.btn-primary:hover{background:var(--cta-hover)}
.btn-outline{
  background:transparent;border:1px solid var(--border);color:var(--text);
}
.btn-outline:hover{background:var(--surface-1)}
.btn-ghost{
  background:transparent;border:1px solid var(--border-soft);
  color:var(--text-muted);padding:12px 24px;font-size:14px;font-weight:700;
}
.btn-ghost:hover{border-color:var(--border);color:var(--text)}

/* —— Tags —— */
.tag{
  display:inline-block;font-family:var(--font-mono);font-size:14px;
  letter-spacing:var(--track-mono);text-transform:uppercase;
  padding:4px 12px;border-radius:var(--radius-tag);
  background:var(--moss);color:var(--text);
}

/* —— Cards —— */
.card{
  background:var(--cream);border:1px solid var(--border-hairline);
  border-radius:var(--radius-control);padding:24px 32px;
}

/* —— Nav —— */
nav{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
  padding:calc(var(--space)*3) 0;border-bottom:1px solid var(--border-soft);
}
.logo{
  font-family:var(--font-sans);font-size:14px;font-weight:700;
  letter-spacing:var(--track-display);color:var(--text);
}
.logo em{font-style:normal;color:var(--bark);font-weight:400}
.nav-links{display:flex;gap:16px;flex-wrap:wrap}
.nav-link{
  font-size:14px;font-weight:700;letter-spacing:var(--track-display);
  color:var(--text-muted);padding:12px 24px;border-radius:var(--radius-control);
  border:1px solid transparent;transition:color .2s,border-color .2s;
}
.nav-link:hover{color:var(--text);border-color:var(--border-soft)}
