/* Maestro Concierge — type roles, lifted verbatim from the Deals Redesign doc.

   The system in one line: display copy is Commissioner 400/500 with negative
   tracking (editorial, calm); UI labels and prices are 600; small uppercase
   eyebrows are 600 with positive tracking. Sizes are deliberately fractional
   (12.5, 13.5, 14.5) — that is the design, not a rounding error. */

/* — Display / headline ————————————————————————— */
.t-display        { font: 500 31px/1.06 var(--font-serif); letter-spacing: -.4px; color: var(--text-primary); }
.t-hero-title     { font: 400 27px/1.08 var(--font-serif); letter-spacing: -.2px; color: #fff; }
.t-detail-title   { font: 500 27px/1.14 var(--font-serif); letter-spacing: -.4px; color: var(--text-primary); }
.t-empty-headline { font: 400 27px/1.1  var(--font-serif); color: var(--text-primary); }
.t-handoff-title  { font: 400 25px/1.1  var(--font-serif); color: var(--text-primary); }
.t-page-title     { font: 400 24px/1.05 var(--font-serif); color: var(--text-primary); }
.t-advisor        { font: 400 17px/1.35 var(--font-serif); color: var(--text-primary); }
.t-quote          { font: 400 15px/1.35 var(--font-serif); color: var(--text-primary); }

/* — Screen chrome ——————————————————————————————— */
.t-screen-title   { font: 600 22px/1.1 var(--font-sans); letter-spacing: -.9px; color: var(--text-primary); }

/* — Eyebrows (uppercase, positive tracking) ————————— */
.t-eyebrow        { font: 600 12px/1 var(--font-sans); letter-spacing: 2px;   text-transform: uppercase; color: var(--text-accent); }
.t-eyebrow-live   { font: 600 12px/1 var(--font-sans); letter-spacing: 2px;   text-transform: uppercase; color: var(--color-primary-700); }
.t-eyebrow-row    { font: 600 12px/1 var(--font-sans); letter-spacing: 1.5px; text-transform: uppercase; color: var(--text-accent); }
.t-eyebrow-rail   { font: 600 12px/1 var(--font-sans); letter-spacing: 1.6px; text-transform: uppercase; color: var(--text-accent); }
.t-fact-label     { font: 600 12px/1 var(--font-sans); letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-metadata); }
.t-pick-label     { font: 600 12px/1 var(--font-sans); letter-spacing: 1.4px; text-transform: uppercase; color: var(--color-accent-600); }

/* — Titles ——————————————————————————————————————— */
.t-row-title      { font: 600 15px/1.2   var(--font-sans); letter-spacing: -.35px; color: var(--text-primary); }
.t-rail-title     { font: 600 14.5px/1.25 var(--font-sans); letter-spacing: -.3px;  color: var(--text-primary); }
.t-card-title     { font: 600 13.5px/1   var(--font-sans); letter-spacing: -.2px;  color: var(--text-primary); }
.t-pick-value     { font: 600 14px/1     var(--font-sans); letter-spacing: -.3px;  color: var(--text-primary); }
.t-route-code     { font: 600 19px/1     var(--font-sans); letter-spacing: -.5px;  color: var(--text-primary); }

/* — Prices ——————————————————————————————————————— */
.t-price-hero     { font: 600 20px/1.25 var(--font-sans); letter-spacing: -.5px; color: var(--text-primary); }
.t-price          { font: 600 15px/1    var(--font-sans); letter-spacing: -.4px; color: var(--text-primary); }
.t-slab-price     { font: 600 22px/1.28 var(--font-sans); letter-spacing: -.6px; color: #fff; }
.t-strike         { font: 500 11.5px/1  var(--font-sans); color: var(--text-metadata); text-decoration: line-through; }
.t-save           { font: 600 11px/1    var(--font-sans); color: var(--color-savings-green); }

/* — Body & metadata ————————————————————————————— */
.t-body           { font: 400 13px/1.4    var(--font-sans); color: var(--text-secondary); }
.t-body-lg        { font: 400 13.5px/1.45 var(--font-sans); color: var(--text-secondary); }
.t-body-sm        { font: 400 12px/1.45   var(--font-sans); color: var(--text-secondary); }
.t-meta           { font: 400 12.5px/1.4  var(--font-sans); color: var(--text-metadata); }
.t-meta-sm        { font: 400 11.5px/1.3  var(--font-sans); color: var(--text-metadata); }
.t-hint           { font: 500 11px/1      var(--font-sans); color: var(--text-metadata); }
.t-fact-value     { font: 500 13px/1.3    var(--font-sans); color: var(--text-primary); }
.t-reason         { font: 500 12.5px/1.4  var(--font-sans); color: var(--color-tertiary-900); }
.t-trust          { font: 400 11.5px/1.4  var(--font-sans); color: var(--text-metadata); }
.t-hero-meta      { font: 500 12.5px/1.35 var(--font-sans); color: rgba(255,255,255,.82); }

/* — Controls ————————————————————————————————————— */
.t-btn            { font: 600 15px/1   var(--font-sans); letter-spacing: -.2px; }
.t-chip           { font: 600 12px/1   var(--font-sans); }
.t-chip-lg        { font: 600 13px/1   var(--font-sans); letter-spacing: -.2px; }
.t-chip-sm        { font: 600 11px/1   var(--font-sans); }
.t-photo-chip     { font: 600 11px/1   var(--font-sans); letter-spacing: .6px; text-transform: uppercase; }
.t-pill-meta      { font: 500 12.5px/1 var(--font-sans); color: var(--text-secondary); }
