/* CAA V39 — single global luxury type system.
   Intentionally loaded last so legacy V20–V38 typography cannot win the cascade. */
:root{
  --caa39-display:"Prata", Georgia, serif;
  --caa39-body:"Manrope", Arial, sans-serif;
  --caa39-mono:"Space Mono", "Courier New", monospace;
}
html body,
html body p, html body li, html body a, html body button, html body input,
html body textarea, html body select, html body label, html body span,
html body strong, html body small, html body nav {
  font-family:var(--caa39-body)!important;
}
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6,
html body .display, html body .eyebrow,
html body .caa-v20-brand__words strong, html body .caa-v37-brand__text strong {
  font-family:var(--caa39-display)!important;
  font-weight:400!important;
  letter-spacing:-.025em;
}
html body .eyebrow, html body .kicker, html body [class*="kicker"],
html body [class*="overline"], html body [class*="label"],
html body [class*="meta"], html body [class*="utility"] small,
html body .caa-v20-utility, html body .caa-v37-topbar,
html body .caa-v20-menu>li>a, html body .caa-v37-menu>li>a,
html body .mega-menu__eyebrow, html body .mega-menu__hint,
html body .mega-menu__column h3, html body .mega-menu__tag,
html body .mega-menu__cta, html body .caa-v20-header-cta,
html body .caa-v37-plan, html body .btn, html body button {
  font-family:var(--caa39-mono)!important;
}
html body .mega-menu__column li a,
html body .mega-menu__feature-copy p,
html body .mega-menu__feature-copy .btn,
html body .mega-menu__feature-copy h3 {
  font-family:var(--caa39-body)!important;
}
/* Header: premium hierarchy without the condensed/over-tight look. */
html body .caa-v20-menu>li>a,
html body .caa-v37-menu>li>a{
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.035em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
}
html body .caa-v20-brand__words strong,
html body .caa-v37-brand__text strong{
  font-size:22px!important;
}
/* Mega menus: use the full feature column instead of leaving a large dead area. */
html body .caa-v20-menu .mega-menu__body{
  grid-template-columns:repeat(3,minmax(0,1fr)) minmax(360px,1.7fr)!important;
  align-items:stretch!important;
}
html body .caa-v20-menu .mega-menu__feature{
  width:100%!important;
  height:100%!important;
  min-height:280px!important;
  margin:0 0 0 10px!important;
}
html body .caa-v20-menu .mega-menu__feature-copy h3{
  font-size:clamp(2rem,2.8vw,3rem)!important;
  line-height:.98!important;
  font-weight:400!important;
}
html body .mega-menu__column li a{
  font-size:13px!important;
  font-weight:600!important;
}
/* Homepage display hierarchy. */
html body .v37-home .v37-hero h1{
  font-family:var(--caa39-display)!important;
  font-weight:400!important;
  letter-spacing:-.04em!important;
}
html body .v37-home .v37-section h2,
html body .v37-home .v37-final h2,
html body .v37-home .v37-mountain h2{
  font-family:var(--caa39-display)!important;
  font-weight:400!important;
}
html body .v37-home .v37-image-box__copy h3,
html body .v37-home .v37-journey-card h3,
html body .v37-home .v37-culture-copy h3{
  font-family:var(--caa39-display)!important;
  font-weight:400!important;
}
html body .v37-home .v37-kicker,
html body .v37-home .v37-label,
html body .v37-home .v37-scroll,
html body .v37-home .v37-image-box__category{
  font-family:var(--caa39-mono)!important;
}
/* Never allow legacy italic/script-like display rules to distort the main title. */
html body .v37-home h1 i,
html body .v37-home h2 i{font-family:var(--caa39-display)!important;font-style:italic!important;font-weight:400!important}
/* Footer typography. */
html body .caa-v37-footer h2,
html body .caa-v37-footer h3,
html body .caa-v37-footer h4,
html body .caa-v20-footer h2,
html body .caa-v20-footer h3,
html body .caa-v20-footer h4{
  font-family:var(--caa39-display)!important;
  font-weight:400!important;
}
html body .caa-v37-footer-cta h2{font-size:clamp(48px,6vw,86px)!important;line-height:.94!important;letter-spacing:-.035em!important}
html body .caa-v37-footer__brand h3{font-size:28px!important}
/* Mobile */
@media(max-width:1050px){
  html body .caa-v20-menu .mega-menu__body{grid-template-columns:1fr!important}
  html body .caa-v20-menu .mega-menu__feature{margin:12px 0 0!important}
}
@media(max-width:700px){
  html body .caa-v37-home .v37-hero h1{font-size:clamp(48px,15vw,82px)!important;line-height:.86!important}
  html body .caa-v37-footer-cta h2{font-size:clamp(42px,12vw,64px)!important}
}
