/* R² Legal LLP — site stylesheet. Fonts, brand tokens, then page rules. */
@font-face{font-family:"Jost";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/Jost-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Jost";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/Jost-300-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/Jost-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/Jost-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Jost";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/Jost-600-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/CormorantGaramond-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url("/assets/fonts/CormorantGaramond-500-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/CormorantGaramond-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/CormorantGaramond-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/CormorantGaramond-600-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Space Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/SpaceMono-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Space Mono";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/SpaceMono-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
/* R² Legal — colour tokens. Source: visiting card proof (navy #0A1230, gold #EFB54A / PMS 142 C) */
:root{
/* Brand base */
--navy-950:#060B20;
--navy-900:#0A1230;/* brand navy — card stock */
--navy-850:#0F1838;
--navy-800:#141D42;
--navy-700:#1D274F;
--navy-rule:#2B3354;/* hairline rules on navy (card dividers) */
--lavender-400:#9CA8C4;/* "LLP", contact lines on card */
--lavender-300:#B9C1D6;
--gold-600:#C8912E;
--gold-500:#EFB54A;/* brand gold — PMS 142 C / foil */
--gold-300:#F5D08A;
--gold-100:#FBEBCB;
--cream-50:#FDFCF7;
--cream-100:#FAF8F0;/* mark cream / on-dark */
--cream-200:#F4F0E4;
--cream-300:#EDE7D6;
--cream-400:#E4DCC6;
--cream-line:#E2DCCB;
--ball-red:#D6482C;/* cricket-ball seam in the mark — mark-only */
--slate-800:#232A45;
--slate-700:#2E3452;
--slate-500:#5E637D;
--slate-400:#80859C;
--green-600:#3F8F5E;
--amber-600:#B7801C;
--red-600:#B8412E;

/* Semantic — surfaces */
--surface-canvas:var(--cream-100);
--surface-soft:var(--cream-200);
--surface-card:var(--cream-300);
--surface-strong:var(--cream-400);
--surface-raised:var(--cream-50);
--surface-dark:var(--navy-900);
--surface-dark-soft:var(--navy-850);
--surface-dark-elevated:var(--navy-800);

/* Semantic — text */
--text-ink:var(--navy-900);
--text-strong:var(--slate-800);
--text-body:var(--slate-700);
--text-muted:var(--slate-500);
--text-soft:var(--slate-400);
--text-on-dark:var(--cream-100);
--text-on-dark-soft:var(--lavender-400);
--text-on-gold:var(--navy-900);
--text-accent:var(--gold-500);/* on navy only */
--text-accent-on-light:var(--gold-600);/* large type only on cream */

/* Semantic — lines */
--border-hairline:var(--cream-line);
--border-strong:var(--cream-400);
--border-dark:var(--navy-rule);
--border-focus:var(--gold-500);

/* Semantic — actions */
--action-primary:var(--navy-900);
--action-primary-active:var(--navy-700);
--action-primary-text:var(--cream-100);
--action-accent:var(--gold-500);
--action-accent-active:var(--gold-600);
--action-accent-text:var(--navy-900);
--action-disabled:var(--cream-300);
--action-disabled-text:var(--slate-400);

/* Semantic — status */
--status-success:var(--green-600);
--status-warning:var(--amber-600);
--status-error:var(--red-600);
--focus-ring:0 0 0 3px rgba(239,181,74,.35);
}

/* R² Legal — type tokens. Jost = card face (wordmark, name, contacts). Cormorant Garamond = editorial display. Space Mono = proof/spec annotations. */
:root{
--font-sans:"Jost","Futura","Avenir Next","Century Gothic",sans-serif;
--font-display:"Cormorant Garamond","Garamond","Times New Roman",serif;
--font-mono:"Space Mono",ui-monospace,monospace;
--weight-light:300;/* @kind other */
--weight-regular:400;/* @kind other */
--weight-medium:500;/* @kind other */
--weight-semibold:600;/* @kind other */

/* Display — Cormorant 500, negative tracking */
--display-xl-size:68px;
--display-xl-lh:1.02;/* @kind other */
--display-xl-ls:-0.02em;/* @kind other */
--display-lg-size:52px;
--display-lg-lh:1.06;/* @kind other */
--display-lg-ls:-0.018em;/* @kind other */
--display-md-size:38px;
--display-md-lh:1.12;/* @kind other */
--display-md-ls:-0.012em;/* @kind other */
--display-sm-size:30px;
--display-sm-lh:1.18;/* @kind other */
--display-sm-ls:-0.008em;/* @kind other */
/* Titles & body — Jost */
--title-lg-size:22px;
--title-lg-lh:1.3;/* @kind other */
--title-md-size:18px;
--title-md-lh:1.4;/* @kind other */
--title-sm-size:16px;
--title-sm-lh:1.4;/* @kind other */
--body-lg-size:18px;
--body-lg-lh:1.6;/* @kind other */
--body-md-size:16px;
--body-md-lh:1.6;/* @kind other */
--body-sm-size:14px;
--body-sm-lh:1.55;/* @kind other */
--caption-size:13px;
--caption-lh:1.4;/* @kind other */
/* Tracked caps — "PARTNER", "COUNSEL FOR THE GAME" */
--eyebrow-size:12px;
--eyebrow-ls:0.28em;/* @kind other */
--wordmark-ls:0.08em;/* @kind other */
--wordmark-llp-ls:0.32em;/* @kind other */
--mono-size:12px;
--mono-ls:0.12em;/* @kind other */
--button-size:14px;
--button-ls:0.04em;/* @kind other */
}

/* R² Legal — spacing, radii, elevation, motion */
:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-section:96px;
--container-max:1200px;--measure:64ch;
--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-pill:9999px;
--border-width:1px;
--shadow-none:none;
--shadow-sm:0 1px 3px rgba(10,18,48,.08);
--shadow-md:0 8px 24px rgba(10,18,48,.12);
--shadow-lg:0 24px 60px rgba(10,18,48,.22);
--scrim:rgba(6,11,32,.56);
--ease-standard:cubic-bezier(.2,0,0,1);/* @kind other */
--duration-fast:120ms;/* @kind other */
--duration-base:200ms;/* @kind other */
--duration-slow:320ms;/* @kind other */
--control-height:40px;--control-height-sm:32px;--control-height-lg:48px;
}

/* Light element defaults so consumers get the brand floor */
html{-webkit-font-smoothing:antialiased}
body{margin:0;background:var(--surface-canvas);color:var(--text-body);font-family:var(--font-sans);font-size:var(--body-md-size);line-height:var(--body-md-lh)}
h1,h2,h3{font-family:var(--font-display);font-weight:500;color:var(--text-ink);text-wrap:balance}
p{text-wrap:pretty}
a{color:var(--text-ink);text-decoration:underline;text-decoration-color:var(--gold-500);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
::selection{background:var(--gold-300);color:var(--navy-900)}


/* Page */
html,body{margin:0;background:#060B20;}
html{scroll-behavior:smooth}
a{color:#FAF8F0;text-decoration:underline;text-decoration-color:#EFB54A;text-underline-offset:4px;text-decoration-thickness:1px;}
a:hover{text-decoration-thickness:2px;}
a.btn,a.lnk,a.card{text-decoration:none}
a.btn{transition:filter 120ms cubic-bezier(.2,0,0,1),background 120ms cubic-bezier(.2,0,0,1)}
a.btn:hover{filter:brightness(1.08)}
a:focus-visible{outline:2px solid var(--gold-500);outline-offset:3px;border-radius:4px}
@keyframes r2marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Hover states from the design */
.scp0:hover { background: var(--navy-800) !important; }
.scp1:hover { border-color: var(--gold-600) !important; }
.scp2:hover { color: var(--cream-100) !important; }
/* Small screens: wide tiles fall back to one column */
@media (max-width: 767px){ .t-wide{grid-column:auto !important} }

/* Wordmark: the "2" in R² sits raised beside the R, like a square */
.r2-sq{font-size:.62em;line-height:1;position:relative;top:-.6em;margin-left:-.03em;margin-right:.34em;color:var(--gold-500);font-weight:500}
