/* The Mansa Court, typographic tokens.
   Every text element on the site carries exactly one of these classes and sets none of
   font-family, font-size, font-weight, letter-spacing, text-indent or text-transform itself.
   Each class states all of those properties, so nothing leaks in from a parent.
   Where uppercase text is centred, letter-spacing is paired with an equal text-indent.
   "Desktop / phone" values are measured at 1440px and 390px; fluid between.
   Adding a size or spacing to the site means adding a class here first, documented, then using it. */

/* The house face, served from the site: upright and italic, each one variable file (300 to 400, latin), with a second pair for
   Latin Extended (from U+0100: Latin Extended-A and B, so names such as Dvořák, Kůň and Łódź draw in Cormorant rather than Georgia).
   The extended files are fetched only on a page that uses one of those letters.
   No page loads anything from Google Fonts. The main page preloads the two latin files. */
@font-face { font-family: "Cormorant Fallback"; font-style: normal; font-weight: 300 600; src: local("Georgia"); size-adjust: 91%; ascent-override: 101%; descent-override: 31.9%; line-gap-override: 0%; }
@font-face { font-family: "Cormorant Fallback"; font-style: italic; font-weight: 300 600; src: local("Georgia Italic"), local("Georgia-Italic"); size-adjust: 82%; ascent-override: 112.2%; descent-override: 35.4%; line-gap-override: 0%; }
@font-face { font-family: "Cormorant Fallback Times"; font-style: normal; font-weight: 300 600; src: local("Times New Roman"), local("TimesNewRomanPSMT"), local("Liberation Serif"), local("Tinos"); size-adjust: 96%; ascent-override: 95.8%; descent-override: 30.2%; line-gap-override: 0%; }
@font-face { font-family: "Cormorant Fallback Times"; font-style: italic; font-weight: 300 600; src: local("Times New Roman Italic"), local("TimesNewRomanPS-ItalicMT"), local("Liberation Serif Italic"), local("Tinos Italic"); size-adjust: 90%; ascent-override: 102.2%; descent-override: 32.2%; line-gap-override: 0%; }
@font-face { font-family: "Cormorant Garamond"; font-style: normal; font-weight: 300 400; font-display: block; src: url("/fonts/cormorant-garamond-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: "Cormorant Garamond"; font-style: italic; font-weight: 300 400; font-display: block; src: url("/fonts/cormorant-garamond-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; }
@font-face { font-family: "Cormorant Garamond"; font-style: normal; font-weight: 300 400; font-display: block; src: url("/fonts/cormorant-garamond-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, 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: "Cormorant Garamond"; font-style: italic; font-weight: 300 400; font-display: block; src: url("/fonts/cormorant-garamond-italic-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, 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; }

/* Base. The house face for anything without a class of its own: separators, glyphs, form chrome. */
body { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; }

/* strong, b  No bold weight is loaded; emphasis in markup keeps the house weight. */
strong, b { font-weight: 400; }

/* .t-display  The hero title. Cormorant 300, clamp(30px, 5vw, 68px), 0.23em, uppercase.
   Below 440px the tracking drops to 0.13em, the largest value that keeps THE MANSA COURT on one line at 390px. */
.t-display { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(30px, 5vw, 68px); letter-spacing: 0.23em; text-indent: 0.23em; text-transform: uppercase; }
@media (max-width: 440px) { .t-display { letter-spacing: 0.13em; text-indent: 0.13em; } }
/* Below 390px the size becomes 7.5vw (tracking stays 0.13em), so THE MANSA COURT stays on one line on the smallest phones. */
@media (max-width: 389px) { .t-display { font-size: 7.5vw; } }

/* .t-page  Page titles on entry and policy pages (the engagement's name, COOKIES POLICY). Cormorant 300, 46px / 28px, 0.16em, uppercase. */
.t-page { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(28px, 5vw, 46px); letter-spacing: 0.16em; text-indent: 0.16em; text-transform: uppercase; }

/* .t-title  Section titles, entry headings, month names. Cormorant 400, 13px / 11px, 0.34em, uppercase. */
.t-title { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(11px, 1.2vw, 13px); letter-spacing: 0.34em; text-indent: 0.34em; text-transform: uppercase; }

/* .t-large  Large lines such as "Membership is not for sale". Cormorant 300, 38px / 28px. */
.t-large { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(28px, 3.2vw, 38px); letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-question  Particulars questions, Lexicon headwords. Cormorant 300, 21px / 18px. */
.t-question { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(18px, 1.9vw, 21px); letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-intro  Italic section intros, closing lines and confirmations. Cormorant 300 italic, 20px / 16px, line-height 1.5. */
.t-intro { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: italic; font-size: clamp(16px, 1.8vw, 20px); letter-spacing: normal; text-indent: 0; text-transform: none; line-height: 1.5; }

.t-body { letter-spacing: normal; text-indent: 0; text-transform: none; }
input.t-body { line-height: normal; }

/* .t-entry  Calendar and Almanac titles. Cormorant 400, 22px / 17px, 0.02em. */
.t-entry { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(17px, 1.9vw, 22px); letter-spacing: 0.02em; text-indent: 0; text-transform: none; }

/* .t-band  Timing bands, panel metadata lines, entry header lines, month tallies. Cormorant 400, 11px / 10px, 0.24em, uppercase. */
.t-band { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(10px, 1vw, 11px); letter-spacing: 0.24em; text-indent: 0.24em; text-transform: uppercase; }

/* .t-label  Form labels, Code rule labels, filter labels, search label, legends. Cormorant 400, 11px, 0.30em, uppercase. */
.t-label { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: 11px; letter-spacing: 0.3em; text-indent: 0.3em; text-transform: uppercase; }

/* .t-action  Standalone calls to action. Cormorant 400, 14px, 0.28em, uppercase. */
.t-action { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: 14px; letter-spacing: 0.28em; text-indent: 0.28em; text-transform: uppercase; }

/* .t-link  Inline small-caps links: RSVP, Send, The Almanac Entry, the Return links, the Lexicon link. Cormorant 400, 12px, 0.30em, uppercase. */
.t-link { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: 12px; letter-spacing: 0.3em; text-indent: 0.3em; text-transform: uppercase; }

/* .t-caption  Image captions and gallery captions. Cormorant 400, 12px / 10px, 0.22em, uppercase. */
.t-caption { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(10px, 1.1vw, 12px); letter-spacing: 0.22em; text-indent: 0.22em; text-transform: uppercase; }

/* .t-note  Italic notes and metadata. Cormorant 400 italic, 14px. */
.t-note { letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-notice  The cookie notice's text, on the main page and in notice.js. Cormorant 400, 16px / 14px. */
.t-notice { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(14px, 13.26px + 0.19vw, 16px); letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-fine  Fine print: panel footnotes, copyright, the (optional) marker, See Also and Elsewhere links. Cormorant 400, 12px. */
.t-fine { font-weight: 400; font-style: normal; font-size: 12px; letter-spacing: normal; text-indent: 0; text-transform: none; }

.t-help { letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-aside  The (optional) marker beside a form label, at the label's size. Cormorant 400 italic, 11px, no tracking, as written. */
.t-aside { font-weight: 400; font-style: italic; font-size: 11px; letter-spacing: normal; text-indent: 0; text-transform: none; }

/* .t-nav  Navigation items and footer lines. Cormorant 400, 11px / 10px, 0.28em, uppercase. */
.t-nav { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 400; font-style: normal; font-size: clamp(10px, 1vw, 11px); letter-spacing: 0.28em; text-indent: 0.28em; text-transform: uppercase; }
/* On phones the main page's header links stay at 11px: the menu still sets on two lines from 360px up. */
@media (max-width: 760px) { header nav .t-nav { font-size: 11px; } }

/* .t-flush  Modifier, paired with any uppercase class on text set flush left (section headings on entry, policy, Lexicon and
   Almanac pages; month names; Code, form, filter and Particulars labels). Drops the text-indent that keeps centred
   uppercase centred, so the first letter starts on the same edge as the text beneath. Declared last so it wins. */
.t-flush { text-indent: 0; }

/* .t-initial  A dropped initial letter spanning two lines of .t-body. Cormorant 300, 78px / 62px, no tracking. */
.t-initial { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(62px, 5.4vw, 78px); letter-spacing: 0; text-indent: 0; text-transform: uppercase; }

/* .t-ground  The member’s name, laid faintly behind a room of the members’ area (The Handbook, The Register).
   Decorative; never read aloud. Cormorant 300, 30px / 22px, 0.16em, uppercase. It is the page title’s face (.t-page)
   at a smaller size; its colour and faintness are set by the members’ area from the site’s palette. */
.t-ground { font-family: "Cormorant Garamond", "Cormorant Fallback", "Cormorant Fallback Times", Georgia, serif; font-weight: 300; font-style: normal; font-size: clamp(22px, 2.2vw, 30px); letter-spacing: 0.16em; text-indent: 0; text-transform: uppercase; }

.mc-type2 .t-label, .mc-type2 .t-band, .mc-type2 .t-nav, .mc-type2 .t-fine, .mc-type2 .t-aside { font-size: clamp(10px, 0.98vw, 11px) !important; }
.mc-type2 .t-label, .mc-type2 .t-band, .mc-type2 .t-nav { letter-spacing: 0.3em; text-indent: 0.3em; }
.mc-type2 .t-title, .mc-type2 .t-action, .mc-type2 .t-link, .mc-type2 .t-caption { font-size: clamp(11.6px, 1.16vw, 13px) !important; letter-spacing: 0.34em; text-indent: 0.34em; }
.mc-type2 .t-flush { text-indent: 0; }

@media (max-width: 760px) { footer > p.t-fine:last-child { font-size: 14px !important; } }
@media (max-width: 760px) { #legal { row-gap: 32px !important; } #legal a { padding: 16px 0 !important; margin: -16px 0 !important; } }
