/* GrammarPath brand tokens. GENERATED by scripts/build_brand.py from assets/brand/brand.json. Do not edit by hand. */

@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/brand/fonts/outfit-400.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/brand/fonts/outfit-600.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/brand/fonts/outfit-700.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/brand/fonts/outfit-800.woff2') format('woff2')}

:root{
  --gp-violet:#6B3BFF;
  --gp-violet-deep:#4F24D6;
  --gp-yellow:#FFD23F;
  --gp-yellow-deep:#E6B81F;
  --gp-night:#1B0F4A;
  --gp-mint:#3DDC97;
  --gp-cloud:#F4F0FF;
  --gp-white:#FFFFFF;
  --gp-muted:#5E5878;
  --gp-line:#E4DFF3;
  --gp-correct:#3DDC97; --gp-correct-tint:#DDF8EA; --gp-correct-text:#0E6B42;
  --gp-try-again:#FF6B4A; --gp-try-again-tint:#FFE4DC; --gp-try-again-text:#A3321A;
  --gp-verbal:#FF8A00; --gp-verbal-tint:#FFE8CC; --gp-verbal-text:#8A4500;
  --gp-maths:#38A3F5; --gp-maths-tint:#DDEFFD; --gp-maths-text:#0B5A94;
  --gp-non-verbal:#EC4899; --gp-non-verbal-tint:#FCE1EF; --gp-non-verbal-text:#9D1B5C;
  --gp-english:#5B6B8C; --gp-english-tint:#E6EAF2; --gp-english-text:#36425C;
  --gp-font:'Outfit', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --gp-w-body:400; --gp-w-sub:600; --gp-w-head:700; --gp-w-display:800;
  --gp-radius:14px; --gp-radius-lg:22px;
  --gp-shadow:0 4px 24px rgba(27,15,74,.08); --gp-shadow-lg:0 14px 44px rgba(27,15,74,.14);
}

/* Base buttons: one yellow primary per page, violet secondary, outline tertiary. */
.gp-btn{font-family:var(--gp-font);font-weight:700;font-size:16px;line-height:1.2;padding:14px 26px;border-radius:var(--gp-radius);border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}
.gp-btn:focus-visible{outline:3px solid var(--gp-violet);outline-offset:3px}
.gp-btn-primary{background:var(--gp-yellow);color:var(--gp-night);box-shadow:0 4px 0 var(--gp-yellow-deep)}
.gp-btn-primary:hover{transform:translateY(-1px);box-shadow:0 5px 0 var(--gp-yellow-deep)}
.gp-btn-primary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--gp-yellow-deep)}
.gp-btn-secondary{background:var(--gp-violet);color:#fff;box-shadow:0 4px 0 var(--gp-violet-deep)}
.gp-btn-secondary:hover{background:var(--gp-violet-deep)}
.gp-btn-outline{background:transparent;color:var(--gp-violet);box-shadow:inset 0 0 0 2px var(--gp-violet)}
.gp-btn-outline:hover{background:var(--gp-cloud)}
