/*
 * Loaded last in RootLayout — matches Hero.jsx / `.font-montserrat` stack.
 * Legacy `assets/css/style.css` binds body + headings to Nunito/Quicksand via :root vars;
 * remapping vars + body keeps car pages and all templates on Montserrat.
 */
:root {
  --font-nunito: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif;
  --font-nunito-sans: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif;
  --font-quicksand: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif;
}

html {
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif;
}

body {
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif !important;
  font-feature-settings: 'kern' 1, 'liga' 1;
}

/*
 * Full site shell (see app/template.jsx `#monaco-main`) — same stack as homepage.
 * Legacy `/css/style.css` sets Rubik/Gilroy on headings and blocks with higher specificity than `body`;
 * forcing `inherit` on descendants lets theme icons (`<i class="fa…">`, flaticon) keep their stacks.
 */
#monaco-main {
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif !important;
  font-feature-settings: 'kern' 1, 'liga' 1;
}

#monaco-main *:not(i):not(svg):not(path):not(polygon):not(circle):not(rect):not(line):not(polyline):not(g):not(defs):not(clipPath):not(mask):not(marker):not(code):not(kbd):not(samp):not(pre) {
  font-family: inherit !important;
}

/*
 * Marketing copy site-wide — matches homepage (caps + justified). Loaded last among <link> CSS.
 * Spans inside paragraphs must stay `inline` because legacy templates use `display:inline-block` on spans.
 */
#monaco-main p[class*='font-montserrat']:not(.monaco-footer__intro):not(.monaco-footer__tagline):not(.monaco-footer__fineprint):not(.fs-10):not(.monaco-band-subline) {
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif !important;
  font-weight: 400 !important;
  font-size: clamp(0.75rem, 1.1vw, 0.875rem) !important;
  line-height: 1.78 !important;
  letter-spacing: 0.1em !important;
  color: rgba(255, 255, 255, 0.94) !important;
  text-transform: uppercase !important;
  text-align: justify !important;
  text-justify: inter-word;
}

#monaco-main p[class*='font-montserrat']:not(.monaco-footer__intro):not(.monaco-footer__tagline):not(.monaco-footer__fineprint):not(.fs-10):not(.monaco-band-subline) span {
  display: inline !important;
  text-transform: uppercase !important;
}

/* Section titles that use Montserrat (heroes, location / service leads) */
#monaco-main h1[class*='font-montserrat'],
#monaco-main h2[class*='font-montserrat'] {
  text-transform: uppercase !important;
}

#monaco-main h1[class*='font-montserrat'] {
  letter-spacing: 0.06em !important;
}

#monaco-main h2[class*='font-montserrat'] {
  letter-spacing: 0.085em !important;
}

#monaco-main section.monaco-service-page h2[class*='font-montserrat'] {
  text-align: center !important;
  font-weight: 700 !important;
  font-size: clamp(1.125rem, 2.35vw, 1.75rem) !important;
  line-height: 1.22 !important;
}

/* Fleet/grid band subtitle (“classy and luxury…”) — not justified; specificity-safe vs global prose rule */
/* Same typography as justified marketing `#monaco-main p.font-montserrat…` blocks; centered only */
#monaco-main p.monaco-band-subline[class*='font-montserrat'] {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 56rem;
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, sans-serif !important;
  font-weight: 400 !important;
  font-size: clamp(0.75rem, 1.1vw, 0.875rem) !important;
  line-height: 1.78 !important;
  letter-spacing: 0.1em !important;
  color: rgba(255, 255, 255, 0.94) !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-justify: auto;
}

#monaco-main p.monaco-band-subline span {
  display: inline !important;
  text-transform: uppercase !important;
}

/* Header SERVICES / LOCATION dropdowns: `.tabactive` is globally white (top-level tabs); spanning dropdown
   items reused it and flipped one row to white. Keep dropdown copy gold like main nav accents. */
.theme-main-menu .dropdown-content a,
.theme-main-menu .dropdown-content a span {
  color: #b88b2b !important;
  font-family: inherit;
  font-weight: 500;
  font-size: 14px;
  text-transform: uppercase !important;
  letter-spacing: 0.06em;
}

.theme-main-menu .dropdown-content a span.tabactive {
  color: #b88b2b !important;
  font-weight: 700;
}

/* Mobile nav: SERVICES / LOCATION accordions and sub-links */
.monaco-nav-mobile-toggle p {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.monaco-nav-mobile-submenu a,
.monaco-nav-mobile-submenu a span {
  text-transform: uppercase !important;
  letter-spacing: 0.06em;
}

.monaco-nav-mobile-status,
.monaco-dropdown-status {
  text-transform: none !important;
}

section.monaco-faq-section h2.monaco-faq-section__title,
section.monaco-faq-section p.monaco-faq-section__lead {
  text-transform: uppercase !important;
}

section.monaco-faq-section button.monaco-faq-section__toggle,
section.monaco-faq-section .monaco-faq-section__question-text {
  text-transform: uppercase !important;
}

section.monaco-faq-section p.monaco-faq-section__answer {
  text-transform: uppercase !important;
}
