/* =======================================================
   RESIGN Base CSS – Header (2026)
   Purpose: Layout & CLS stability only (no visuals)
   ======================================================= */

/* -------------------------------------------------------
   Reset
------------------------------------------------------- */
html,
body {
  margin: 0;
  padding: 0;
}

/* -------------------------------------------------------
   Box sizing
------------------------------------------------------- */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* -------------------------------------------------------
   Base typography & font metrics (CLS critical)
------------------------------------------------------- */
html {
  font-size-adjust: 0.52; /* Proxima Nova approx */
}

body {
  font-family: proxima-nova, sans-serif;
  font-size: 16px;
  line-height: 1.4;
  background: #fff;
  color: #000;
}

/* -------------------------------------------------------
   Headings – prevent text reflow (LCP critical)
------------------------------------------------------- */
h1 {
  font-size: 28px;       /* mobile baseline */
  line-height: 1.15;
  margin: 0 0 16px;
}

h2 {
  line-height: 1.2;
}

/* -------------------------------------------------------
   Container stability (Bootstrap neutral)
------------------------------------------------------- */
.container,
.container-fluid {
  padding-left: 15px;
  padding-right: 15px;
}

/* -------------------------------------------------------
   Navbar skeleton (CLS critical)
------------------------------------------------------- */
.navbar {
  min-height: 64px;
}

.navbar-brand {
  display: block;
}

.navbar-brand img {
  height: 32px;
  width: auto;
  display: block;
}

/* -------------------------------------------------------
   Hero / Home teaser – reserve space
------------------------------------------------------- */

#teaser01 .pageTitle,
#teaser02 .pageTitle,
#teaser03 .pageTitle,
#teaser04 .pageTitle {
  min-height: 60vh;
}

/* -------------------------------------------------------
   Media stability
------------------------------------------------------- */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Optional helper if hero images are LCP */
.hero-img {
  aspect-ratio: 3 / 4;
}

/* -------------------------------------------------------
   LazySizes support (no jump)
------------------------------------------------------- */
.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
}

/* -------------------------------------------------------
   Bootstrap component neutralisation
------------------------------------------------------- */

/* Buttons */
.btn {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  font: inherit;
  color: inherit;
}

/* Wells */
.well {
  background: transparent;
  border: 0;
  box-shadow: none;
  margin-bottom: 0;
}

/* -------------------------------------------------------
   Navigation reset
------------------------------------------------------- */
.nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.nav > li > a {
  padding: 0;
  background: transparent;
  color: inherit;
}

/* -------------------------------------------------------
   Nav-tabs neutral (structure only)
------------------------------------------------------- */
.nav-tabs {
  border-bottom: 0;
}

.nav-tabs > li > a {
  border: 0;
  border-radius: 0;
  margin: 0;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover {
  background: transparent;
  border: 0;
}

/* -------------------------------------------------------
   Carousel stability
------------------------------------------------------- */
.carousel {
  position: relative;
}

.carousel-inner {
  min-height: 200px; /* prevents jump before slides init */
}
