/* Collette Easton — shared site styles (service + programme pages) */
:root{
  --ink:#16191C;--ink-2:#20242A;--paper:#F5F4F2;--paper-hi:#FCFBFA;--sand:#ECEAE5;--line:#DEDBD4;
  --accent:#F6850C;--accent-dark:#DB7405;--brand:#1F8FB0;--brand-deep:#0F3A45;--lime:#C7F23E;--red:#DE3E3E;
  --muted:#57544E;--on-dark:#EEEBE4;--on-dark-soft:#BCC6CB;--bsoft:#74C7DD;--bsoft2:#9BDBEA;--btint:#6E96A1;
  --btext:#C7D2D6;--bline:#2C353A;--bline2:#3A4850;--maxw:1180px;
  --display:"Newsreader",Georgia,serif;--body:"Hanken Grotesk",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:19px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:960px){
  [data-collapse]{grid-template-columns:1fr!important}
  [data-statgrid]{grid-template-columns:1fr 1fr!important}
  [data-quotes]{columns:2!important}
  [data-navlinks]{display:none!important}
  [data-navlinks][data-open]{display:flex!important;position:absolute;top:74px;left:0;right:0;background:var(--paper);flex-direction:column;gap:0;padding:8px 0;border-bottom:1px solid var(--line)}
  [data-navtoggle]{display:block!important}
}
@media(max-width:560px){ [data-statgrid]{grid-template-columns:1fr!important} [data-quotes]{columns:1!important} }
[data-anim] [data-reveal]{transition:opacity .7s ease,transform .7s ease}
[data-anim] [data-reveal]:not([data-shown]){opacity:0;transform:translateY(20px)}
header[data-scrolled]{box-shadow:0 8px 30px rgba(16,25,28,.10)}

/* nav links */
.n0{font-size:.95rem;font-weight:500;color:var(--muted);padding:9px 14px;border-radius:999px;transition:color .2s,background .2s}
.n0:hover{color:var(--ink);background:var(--paper-hi)}
.n0[aria-current="page"]{color:var(--ink);background:var(--paper-hi)}

/* buttons */
.cta{font-family:var(--body);font-size:.95rem;font-weight:600;background:var(--ink);color:var(--paper);padding:12px 22px;border-radius:999px;border:1px solid var(--ink);transition:all .24s ease;display:inline-block}
.cta:hover{background:var(--accent);border-color:var(--accent);color:#231300;transform:translateY(-1px);box-shadow:0 10px 22px rgba(246,133,12,.32)}
.cta-o{font-family:var(--body);font-size:.95rem;font-weight:600;background:var(--accent);color:#231300;padding:11px 21px;border-radius:999px;border:1px solid var(--accent);transition:all .22s;display:inline-block;cursor:pointer}
.cta-o:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px)}
.cta-g{font-family:var(--body);font-size:.95rem;font-weight:600;background:transparent;color:var(--brand);padding:12px 22px;border-radius:999px;border:1px solid var(--line);transition:all .22s;display:inline-block}
.cta-g:hover{border-color:var(--brand);color:var(--brand-deep);background:var(--paper-hi)}
.cta-d{font-family:var(--body);font-size:.95rem;font-weight:600;background:transparent;color:var(--bsoft2);padding:11px 21px;border-radius:999px;border:1px solid var(--bline);transition:all .22s;display:inline-block}
.cta-d:hover{color:var(--paper);border-color:var(--bsoft)}

/* kickers & list dashes */
.kick{font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);display:inline-flex;align-items:center;gap:.6em}
.kick::before{content:'';width:26px;height:1px;background:var(--accent);display:inline-block}
.kick-d{color:var(--bsoft)}
.kick-d2{color:var(--bsoft2)}
.dash{padding-left:30px;position:relative}
.dash::before{content:'';position:absolute;left:0;top:.62em;width:16px;height:1.5px;background:var(--accent)}

/* type */
.h-hero{font-family:var(--display);font-weight:300;line-height:1.08;letter-spacing:-.01em;font-size:clamp(2.4rem,5vw,4rem)}
.h-sec{font-family:var(--display);font-weight:300;line-height:1.1;letter-spacing:-.01em;font-size:clamp(2rem,4vw,3rem)}
.h-sub{font-family:var(--display);font-weight:300;line-height:1.06;letter-spacing:-.01em;font-size:clamp(1.9rem,3.6vw,2.7rem)}
.h-card{font-family:var(--display);font-weight:400;line-height:1.15;font-size:1.5rem;letter-spacing:-.005em}
.lede{font-size:1.34rem;line-height:1.5;color:#33383c}

.statcard:hover{background:var(--paper-hi)}
.morelink{font-family:var(--mono);font-size:.9rem;letter-spacing:.04em;color:var(--brand);display:inline-flex;align-items:center;gap:.5em;margin-top:18px}
.morelink:hover{color:var(--brand-deep)}
