/* Two Pillars design tokens. Values ported verbatim from the locked prototype (tokens/*.css).
   Fonts are self-hosted WOFF2 (DM Sans variable 400-700, DM Serif Display 400 + italic), font-display: swap. */
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/dm-sans-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/dm-sans-latin.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:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-latin.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:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-italic-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-italic-latin.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}

/* Source: two-pillars-homepage-var-2/src/index.css :root.
   NOTE: legacy names --teal / --teal-dark / --cyan hold GOLD values in the approved build. Kept verbatim for compatibility; prefer the --tp-* names. */
:root{
--navy:#111d33;--navy-2:#111d33;--teal:#a77b2c;--teal-dark:#a77b2c;--cyan:#d0b06a;--gold:#a77b2c;--cream:#f5f5f3;--mist:#f5f5f3;--white:#ffffff;
--ink-muted:color-mix(in srgb,var(--navy) 68%,var(--white));
--line:color-mix(in srgb,var(--navy) 14%,var(--white));

--tp-navy:#111d33;
--tp-gold:#a77b2c;
--tp-gold-light:#d0b06a;
--tp-mist:#f5f5f3;
--tp-white:#ffffff;
--tp-ink-muted:color-mix(in srgb,#111d33 68%,#ffffff);
--tp-line:color-mix(in srgb,#111d33 14%,#ffffff);
--tp-gold-tint-3:color-mix(in srgb,#a77b2c 3%,#ffffff);
--tp-gold-tint-5:color-mix(in srgb,#a77b2c 5%,#ffffff);
--tp-gold-tint-13:color-mix(in srgb,#a77b2c 13%,#ffffff);
--tp-gold-light-tint-12:color-mix(in srgb,#d0b06a 12%,#ffffff);
--tp-footer-text:color-mix(in srgb,#ffffff 68%,#111d33);
--tp-backdrop:rgb(11 30 47 / 72%);

--text-body:var(--tp-navy);
--text-muted:var(--tp-ink-muted);
--text-accent:var(--tp-gold);
--text-on-dark:var(--tp-white);
--surface-page:var(--tp-white);
--surface-soft:var(--tp-mist);
--surface-section-tint:var(--tp-gold-tint-3);
--surface-inverse:var(--tp-navy);
--border-default:var(--tp-line);
--action-primary:var(--tp-gold);
--action-primary-hover:var(--tp-navy);
--focus-ring:color-mix(in srgb,#a77b2c 55%,transparent);
}

:root{--surface-section:var(--white);--surface-section-alt:color-mix(in srgb,var(--teal) 3%,var(--white))} /* homepage section alternation: white ↔ 3% teal tint, no divider lines */
:root{
--serif:"DM Serif Display",Georgia,serif;/* @kind font */
--sans:"DM Sans",Arial,sans-serif;/* @kind font */
--tp-font-display:"DM Serif Display",Georgia,serif;/* @kind font */
--tp-font-body:"DM Sans",Arial,sans-serif;/* @kind font */

--tp-display-xl:clamp(42px,4.5vw,66px);/* @kind font */   /* section H2, lh .98, ls -.035em */
--tp-display-hero:clamp(44px,4.1vw,59px);/* @kind font */ /* hero H1, lh 1.06, ls -.025em */
--tp-display-lg:clamp(36px,3.6vw,48px);/* @kind font */   /* catalogue H2, lh 1.06 */
--tp-display-md:32px;/* @kind font */                      /* feature card H3, lh 1.05 */
--tp-display-sm:25px;/* @kind font */                      /* news card H3, lh 1.2 */
--tp-display-xs:21px;/* @kind font */                      /* book card H3, lh 1.2 */
--tp-body-lg:17px;/* @kind font */  /* lh 1.75 */
--tp-body:15px;/* @kind font */     /* lh 1.75 */
--tp-body-sm:14px;/* @kind font */  /* lh 1.7 */
--tp-ui:13px;/* @kind font */       /* nav / buttons, 600-700 */
--tp-caption:11px;/* @kind font */
--tp-eyebrow:12px;/* @kind font */  /* 700, .18em, uppercase */
--tp-micro:10px;/* @kind font */    /* meta labels, 700, .08–.12em, uppercase */

--tp-lh-display:1.06;/* @kind other */--tp-lh-tight:.98;/* @kind other */--tp-lh-body:1.75;/* @kind other */
--tp-ls-display:-.025em;/* @kind other */--tp-ls-display-tight:-.035em;/* @kind other */--tp-ls-eyebrow:.18em;/* @kind other */
}
:root{
--container:min(1240px,calc(100% - 48px));/* @kind spacing */
--tp-container-max:1240px;
--tp-gutter:24px;
--tp-section-y:128px;   /* .section default */
--tp-section-y-md:84px; /* publications */
--tp-section-y-sm:72px; /* purpose / portal */
--tp-header-h:96px;--tp-header-h-scrolled:76px;
--tp-gap-xs:8px;--tp-gap-sm:14px;--tp-gap-md:20px;--tp-gap-lg:28px;--tp-gap-xl:48px;--tp-gap-2xl:64px;
--tp-control-h:52px;--tp-input-h:48px;--tp-hit:44px;

--tp-radius-button:2px;--tp-radius-card:3px;--tp-radius-toggle:5px;--tp-radius-preview:7px;--tp-radius-panel:9px;--tp-radius-feature:10px;--tp-radius-pill:50%;
}
/* Site-wide container: identical to the homepage (.container / .header-inner). Every page section uses .tp-container (or width:var(--container);margin-inline:auto) for its inner content; full-bleed backgrounds sit on the outer section. */
@media (max-width:800px){:root{--container:min(100% - 32px, 680px);/* @kind spacing */}}
@media (max-width:480px){:root{--container:calc(100% - 32px);/* @kind spacing */}}
:root{
--tp-shadow-header:0 4px 28px rgba(11,30,47,.05);
--tp-shadow-dropdown:0 18px 50px rgba(11,30,47,.15);
--tp-shadow-finder:0 12px 36px rgb(18 40 59 / 9%);
--tp-shadow-card:0 10px 32px color-mix(in srgb,#111d33 9%,transparent);
--tp-shadow-panel:0 20px 46px -34px color-mix(in srgb,#111d33 42%,transparent);
--tp-shadow-partner:0 12px 26px -24px color-mix(in srgb,#111d33 58%,transparent);
--tp-shadow-book:4px 7px 12px color-mix(in srgb,#111d33 13%,transparent);
--tp-shadow-book-hover:6px 13px 18px color-mix(in srgb,#111d33 20%,transparent);
--tp-blur-header:blur(12px);/* @kind other */
--tp-ease:ease;/* @kind other */--tp-dur-fast:.2s;/* @kind other */--tp-dur:.25s;/* @kind other */--tp-dur-slow:.65s;/* @kind other */
}
