/*
Theme Name: Boot Flex Child
Theme URI: https://example.com/
Description: Child theme for Boot Flex Base Theme with firefighter-oriented header, footer, and typography styling.
Author: OpenAI
Template: boot-flex-base
Version: 1.0.0
Text Domain: boot-flex-child
*/

:root {
  --font-body: "Playfair Display", serif;, "Segoe UI", sans-serif;
  --font-heading: "Cinzel", sans-serif;
  --font-display: "Playfair Display", sans-serif;
  --font-impact: "Great Vibes", sans-serif;

  --color-dark: #040707;
  --color-red: #b22222;
  --color-gold: #e8bc3d;
  --color-gold-light: #e8cf7e;
  --color-white: #ffffff;
  --color-light: #F2F3F5;
  --color-footer: #040707;

  --color-blue-primary: #1F3A5F;
  --color-blue-dark: #162A44;
  --color-blue-light: #2C4A73;
}

body {
  font-family: var(--font-body);
  background: var(--color-dark);
  color: var(--color-light);

  font-size: clamp(1.1rem, 4vw, 1.5rem);

}


.light-shade
{

}

/* =========================
   TYPOGRAPHY SYSTEM
========================= */

h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0.6em;
  line-height: 1.1;
  font-family: var(--font-heading); /* default = Oswald */
  letter-spacing: 0.02em;
}

/* =========================
   HEADING SCALE
========================= */

h1, .h1 {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 6vw, 3.2rem);
	color: var(--color-gold);
}

h2, .h2 {
  font-size: clamp(2.2rem, 4.5vw, 2.8rem);
	color: var(--color-gold-light);
}

h3, .h3 {
  font-size: clamp(1.8rem, 3vw, 2.2rem);
	color: var(--color-gold);
}

h4, .h4 {
  font-size: clamp(1.4rem, 2.2vw, 1.7rem);
	color: var(--color-gold-light);
}

h5, .h5 {
  font-size: clamp(1.15rem, 1.8vw, 1.3rem);
	color: var(--color-gold);
}

h6, .h6 {
  font-size: clamp(1rem, 1.5vw, 1.1rem);
	color: var(--color-gold-light);
}

/* =========================
   HERO TITLE
========================= */

.hero-title {
  font-family: var(--font-display); /* Bebas Neue */
  font-size: clamp(2.5rem, 5vw, 4.2rem);
  line-height: 0.95;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 0.4em;
/* parent has text white */
}

.h1 a, h1 a,
.h2 a, h2 a,
.h3 a, h3 a,
.h4 a, h4 a,
.h5 a, h5 a,
.h6 a, h6 a
{
  text-decoration: none;
  color: inherit;
}

.section-title,
.card-title,
.navbar-nav > li > a,
.mega-menu-link {
  font-family: var(--font-heading);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.impact,
.impact-title,
.cta-banner-title {
  font-family: var(--font-impact);
  letter-spacing: 0.01em;
}

p,
li,
.btn,
.form-control,
textarea {
  font-family: var(--font-body);
}

main a {
	color: var(--color-gold-light);
  text-decoration: none;
}

main a:hover {
  color: var(--color-gold);
}

.site-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  position: relative;
  z-index: 200;
}

.header-top-bar {
  background: #111;
  color: #fff;
  font-size: 0.9rem;
}

.header-top-bar .container {
  padding-top: 0.55rem;
  padding-bottom: 0.55rem;
}

.header-top-bar a {
  color: #fff;
  text-decoration: none;
}

.header-top-bar a:hover {
  color: var(--color-gold);
}

.header-main {
/*
  background: #fff;
*/
}

.site-branding img,
.navbar-brand img,
.custom-logo {
  max-height: 180px;
  width: auto;
}

.site-branding img
{
  margin-bottom:22px;
  margin-top:14px;
}

.navbar-nav > li > a,
.primary-nav-wrap .mega-menu-link {
  color: #111;
  font-size: 1rem;
  font-weight: 500;
}

.btn-header-top,
.btn-header-main,
.btn-footer-cta,
.btn
{
  background: var(--color-red);
  border: 1px solid var(--color-red);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-family: var(--font-heading);
  border-radius: 0.5rem;
  padding: 0.7rem 1.15rem;
  text-decoration: none;
  display: inline-block;
}

.btn-header-top {
  padding: 0.45rem 0.85rem;
  font-size: 0.85rem;
}

.btn-header-top:hover,
.btn-header-main:hover,
.btn-footer-cta:hover,
.btn:hover
{
  background: var(--color-red-dark);
  border-color: var(--color-red-dark);
  color: #fff !important;
}

.site-footer {
  background: var(--color-footer);
  color: #f3f3f3;
  font-size: clamp(0.9rem, 4vw, 1.1rem);

}

.site-footer a {
  color: #f3f3f3;
  text-decoration: none;
}

.site-footer a:hover {
  color: var(--color-gold);
}

.footer-site-title {
  font-family: var(--font-heading);
  text-transform: uppercase;
  font-size: 1.5rem;
  letter-spacing: 0.03em;
}

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.12);
}

.footer-bottom-menu .list-inline-item:not(:last-child) {
  margin-right: 1rem;
}

.footer-menu ul,
.footer-menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-menu a {
  display: inline-block;
  padding: 0.25rem 0;
}

@media (max-width: 991.98px) {

	.site-branding img
	{
		max-height: 140px;
		width: auto;
	}

	.header-contact,
	.header-top-bar .text-md-end {
		text-align: center !important;
	}

	.btn-header-main {
		margin-top: 1rem;
	}
}
