/* ===================== ASRA v2 — Daylight-style design system =====================
   warm-beige ground · mono eyebrow · Fraunces display serif · Cantarell body · hover-fill btn */
@font-face{font-family:'Fraunces';src:url('../assets/Fraunces.ttf') format('truetype');font-weight:100 900;font-display:swap;}

:root{
  /* warm neutrals (biased toward the forest accent, not grey) */
  --beige:#F1EADB;         /* page ground */
  --beige-30:#E9E0CC;      /* card panels */
  --beige-dark:#D9CDB4;    /* hairlines */
  --ink:#1B2620;           /* near-black text */
  --brown:#4C3A28;         /* warm body text on beige */
  --grey-txt:#8A7E6B;      /* muted mono labels */
  --cream:#FBF6EC;         /* light-on-dark text */
  /* accents */
  --forest:#4A7C59; --forest-deep:#2F5540; --mint:#8FC0A9; --sage:#C8D5B9;
  /* type */
  --serif:'Fraunces',Georgia,serif;
  --sans:'Cantarell',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --mono:'SFMono-Regular',ui-monospace,Menlo,Consolas,monospace;
  --ease:cubic-bezier(.16,1,.3,1); --expo:cubic-bezier(.16,1.08,.38,.98);
  --gut:clamp(20px,5vw,80px); --maxw:1320px; --nav-h:76px;
}
*{box-sizing:border-box;} html{-webkit-text-size-adjust:100%;}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--beige);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;} img{max-width:100%;display:block;}
h1,h2,h3,h4,p{margin:0;}
/* jump-to-anchor sections (#services, #book, ...) land clear of the fixed nav pill */
section[id]{scroll-margin-top:calc(var(--nav-h) + 20px);}

/* --- reusable type roles --- */
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--grey-txt);}
.display{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.01em;text-wrap:balance;}
.lead{font-size:clamp(15px,1.5vw,20px);line-height:1.6;color:var(--brown);}

/* --- Daylight hover-fill button --- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;
  height:52px;padding:0 26px;border-radius:6px;cursor:pointer;border:none;
  font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;
  background:var(--ink);color:var(--cream);}
.btn>span{position:relative;z-index:2;transition:transform .3s var(--expo),color .3s var(--expo);}
.btn::after{content:"";position:absolute;inset:0;z-index:1;border-radius:6px;background:var(--cream);
  transform:translateY(200%) rotate(15deg) scale(1.8);transform-origin:center;
  transition:transform .9s var(--expo);}
.btn:hover>span{color:var(--ink);transform:translateY(-1px);}
.btn:hover::after{transform:translateY(0) rotate(8deg) scale(1.8);}
.btn.light{background:var(--cream);color:var(--ink);} .btn.light::after{background:var(--ink);} .btn.light:hover>span{color:var(--cream);}
.btn.forest{background:var(--forest);color:var(--cream);} .btn.forest::after{background:var(--cream);} .btn.forest:hover>span{color:var(--forest-deep);}

/* reveal helper */
.rise{opacity:0;transform:translateY(26px);}
@media(prefers-reduced-motion:reduce){.rise{opacity:1;transform:none;}}
