/* SAGI Alliance typography — web licence confirmed by Axel, 2026-09-14. */
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-RegularItalic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.1";src:url("/assets/fonts/alliance/AllianceNo1-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"Alliance No.2";src:url("/assets/fonts/alliance/AllianceNo2-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.2";src:url("/assets/fonts/alliance/AllianceNo2-RegularItalic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Alliance No.2";src:url("/assets/fonts/alliance/AllianceNo2-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Alliance No.2";src:url("/assets/fonts/alliance/AllianceNo2-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}

:root,.agblk{
  --sans:"Alliance No.1",Arial,sans-serif;
  --head:"Alliance No.2","Alliance No.1",Arial,sans-serif;
}
html{font-synthesis:none}
body{font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased}
button,input,select,textarea,.library-search kbd,.locale-switch,
.library-filters button,.library-search input,.cmptable thead th{
  font-family:var(--sans)!important;
}

/* Palantir's main headlines use No.2 Regular, without synthesized bold. */
body :is(h1,h2,.disp,.h1like),.pcard .pp{
  font-family:var(--head)!important;
  font-weight:400!important;
  letter-spacing:-.035em;
}
body :is(h1,h2,.disp,.h1like) :is(b,strong,em,span){
  font-family:inherit;
  font-weight:inherit;
}
body :is(h3,h4,h5,h6){font-family:var(--sans);font-weight:500}
body :is(.sfoot-col h2,.library-card h2,.library-empty h2){
  font-family:var(--sans)!important;
  font-weight:500!important;
}
body .sfoot-col h2{letter-spacing:inherit}

/* Keep the layout and hierarchy familiar; let the regular face breathe. */
body>.hero h1{font-weight:700!important;line-height:1.08;max-width:20ch}
.hero .sub{font-weight:400;letter-spacing:-.01em}
.agblk #agents .h1like{line-height:1.1}
.card h1{font-size:26px;line-height:1.2}
.hero-float strong,.fcallout b{font-family:var(--sans);font-weight:500}
.nav2-link,.nav2-signin,.lang-btn{font-weight:400}
.btn,.agblk .btn{font-weight:500}
.pp-unit{font-family:var(--sans)}

@media(max-width:600px){
  body>.hero h1{letter-spacing:-.035em;line-height:1.1}
  .card h1{font-size:25px}
}

/* Shared editorial rhythm: FR and EN use the same measured hierarchy. */
:root{--type-display:clamp(38px,4.5vw,64px);--type-section:clamp(30px,3.2vw,44px)}
body :is(h1,h2,h3,.h1like){text-wrap:balance}
body :is(p,li){text-wrap:pretty}
body :is(h3,h4,h5,h6){line-height:1.35;letter-spacing:-.015em}
body :is(.pricing-hero h1,.bhero h1,.doc-main h1){font-size:var(--type-display);line-height:1.1;letter-spacing:-.035em}
.pricing-hero h1{max-width:24ch}
body>.hero h1{margin-inline:auto;max-width:21ch}
body :is(.hero .sub,.pricing-hero .sub,.bhero p){font-size:clamp(16px,1.35vw,19px);line-height:1.6;max-width:60ch;margin-inline:auto;margin-top:20px}
body :is(.library-hero h2,.faq-head h2){font-size:var(--type-section);line-height:1.15;letter-spacing:-.03em}
.library-hero>p{max-width:65ch;line-height:1.6;margin-top:18px}
body :is(.library-card h2,.pcard h2,.l-body h2,.soon-card h2,.custom-block h2){font-family:var(--sans)!important;font-weight:500!important;font-size:18px;line-height:1.4;letter-spacing:-.015em;text-wrap:pretty}
body :is(.library-description,.pcard .pd,.custom-block p,.l-body p){line-height:1.6}
.library-card h2{margin-top:10px}
.library-card .library-description{margin-top:8px}
body :is(.faqq,.nav2-link,.nav2-signin,.lang-btn,.btn){letter-spacing:0}
.faqq{line-height:1.45;font-weight:500}
.faqa{line-height:1.7}
body :is(.card h1,.done h2){font-family:var(--sans)!important;font-weight:600!important;letter-spacing:-.025em;line-height:1.25}
.card h1{font-size:28px}
.card .sub{font-size:15px;line-height:1.6;margin-top:12px}
.card label{font-size:13px;font-weight:500;line-height:1.4}
.card :is(input,select,textarea){font-size:16px;line-height:1.5}
.card .btn{min-height:44px;line-height:1.4;white-space:normal}
body .doc h1{font-size:clamp(32px,4vw,48px);line-height:1.12}
body .doc h2{font-family:var(--sans)!important;font-weight:500!important;font-size:21px;line-height:1.35;letter-spacing:-.015em;margin-top:36px}
.doc :is(p,li){font-size:16px;line-height:1.75;max-width:72ch}
.doc .lede{font-size:17px;line-height:1.65}
.pcard .pp{line-height:1.15;font-variant-numeric:tabular-nums}
.pp-unit{letter-spacing:0;line-height:1.4}
body .sfoot-col h2{font-size:13px;line-height:1.5;font-weight:500!important}
@media(max-width:600px){
  body>.hero h1{font-size:clamp(34px,8.7vw,48px);max-width:19ch}
  body :is(.hero .sub,.pricing-hero .sub,.bhero p){margin-top:16px}
  .card h1{font-size:25px}
  body :is(.library-card h2,.pcard h2,.l-body h2){font-size:17px}
  .doc :is(p,li){font-size:15px;line-height:1.7}
}

/* Palantir homepage title: Alliance No.2 Regular with alternate A/I (ss04). */
body :is(h1,h2,.disp,.h1like){
  font-feature-settings:"ss04";
}
body>.hero h1,
body :is(.pricing-hero h1,.bhero h1,.doc-main h1,.library-hero h2),
.agblk #agents .h1like{
  font-weight:400!important;
  letter-spacing:-.0425em;
  line-height:1.05;
}
/* UI headings retain the legibility of Alliance No.1's default glyphs. */
body :is(.card h1,.done h2,.library-card h2,.pcard h2,.l-body h2,.soon-card h2,.custom-block h2,.sfoot-col h2,.doc h2){
  font-feature-settings:normal;
}
