/* ───────── Brand palette (global) ───────── */
:root {
  --lc-blue: #1b4fe4;       /* primary link */
  --lc-blue-dark: #0f3198;  /* mobile link */
  --lc-coral: #f26d5b;      /* CTA */
  --lc-blue-hover: #00a3e0; /* CTA hover */
}

/* ───────── Sticky header (new) ───────── */
.lc-header {
  font-family: 'Inter', Arial, sans-serif;
  background: #fff;
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 2px 4px rgba(0,0,0,.05);
}
.lc-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
/* logo */
.lc-logo img { height: 36px; display: block; }
/* desktop nav */
.lc-nav ul {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.lc-nav a {
  font-weight: 600;
  text-decoration: none;
  color: var(--lc-blue);
  transition: color .2s ease;
}
.lc-nav a:hover,
.lc-nav a:focus { color: var(--lc-coral); }
/* CTA */
.lc-btn {
  font-weight: 700;
  text-transform: uppercase;
  padding: .75rem 1.5rem;
  border-radius: 6px;
  text-decoration: none;
  line-height: 1;
  transition: background .2s ease;
}
.lc-btn--cta { background: var(--lc-coral); color: #fff; }
.lc-btn--cta:hover,
.lc-btn--cta:focus { background: var(--lc-blue-hover); color:#fff; }
/* hamburger */
.lc-toggle {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 24px; height: 18px;
  background: none; border: none; padding: 0;
  cursor: pointer;
}
.lc-toggle span {
  height: 3px; width: 100%;
  background: var(--lc-blue);
  border-radius: 3px;
}
/* mobile menu */
.lc-mobile { background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.05); }
.lc-mobile ul {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  margin: 0; padding: 1rem;
}
.lc-mobile a { color: var(--lc-blue-dark); font-weight:600; text-decoration:none; }
/* breakpoint */
@media (max-width: 768px){
  .lc-nav, .lc-btn--cta { display:none; }
  .lc-toggle { display:flex; }
}

/* ───────── Hero section (unchanged) ───────── */
.hero {
  position: relative;
  min-height: 800px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.hero-img {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: 50% 40%;
  z-index: 1;
}
.hero-gradient {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, rgba(28,44,76,.7), rgba(90,90,90,.3));
  z-index: 2; pointer-events: none;
}
.hero-content {
  position: relative; z-index: 3;
  color:#fff; width:100%; text-align:center;
}
.cta-btn {
  background: var(--lc-coral);
  color:#fff; border:none; border-radius: 8px;
  padding: 12px 24px;
  font-family:'Inter',Arial,sans-serif;
  font-size:16px; font-weight:600;
  text-transform:uppercase; letter-spacing:.5px;
  text-decoration:none; display:inline-block;
  margin-top:16px; transition:background .2s; cursor:pointer;
}
.cta-btn:hover { background: var(--lc-blue-hover); }

/* ───────── Stories / content sections (unchanged) ───────── */
.stories-section { background:#fff; padding:64px 0; }
.stories-container { max-width:1140px; margin:0 auto; padding:0 30px; }
.stories-heading {
  text-align:center; font-size:2.3rem;
  color: var(--midnight-blue);
  margin-bottom:48px;
  font-family: var(--font-family); font-weight:700;
}
.stories-grid {
  display:grid; gap:40px;
  grid-template-columns: repeat(auto-fit, minmax(280px,1fr));
}
.story-card {
  background: var(--soft-sky,#F5F8FB);
  border-radius:12px; padding:32px 24px;
  box-shadow:0 6px 18px rgba(28,44,76,.08);
  display:flex; flex-direction:column; align-items:center;
}
.story-img {
  width:80px; height:80px; object-fit:cover; border-radius:50%;
  margin-bottom:18px; box-shadow:0 2px 8px rgba(28,44,76,.10);
}
.story-title {
  color: var(--midnight-blue);
  font-size:1.2rem; font-weight:700;
  margin-bottom:6px; font-family: var(--font-family);
}
.story-sub {
  color: var(--blue-cyan);
  font-size:1rem; margin-bottom:14px;
  font-family: var(--font-family);
}
.story-quote {
  color: var(--graphite-grey);
  font-size:1.05rem; font-style:italic; margin:0;
  font-family: var(--font-family);
}
@media (max-width:767px){
  .stories-grid { grid-template-columns:1fr; }
}

/* ───────── Generic CTA (if used elsewhere) ───────── */
.btn-primary {
  background: var(--lc-coral);
  color:#fff; font-weight:700;
  border:none; border-radius:6px;
  padding:12px 32px;
  font-size:16px; text-transform:uppercase;
  letter-spacing:.5px; transition:background .2s;
  margin-left:32px;
  box-shadow:0 2px 8px rgba(28,44,76,.08);
}
.btn-primary:hover,
.btn-primary:focus { background: var(--lc-blue-hover); }

/* ───────── Page-wide backgrounds (unchanged) ───────── */
.body-wrapper,
html, body, .body-wrapper, main, .main-content, .site-wrapper,
.mobility-section { background:#fff !important; }
.compare-section {
  background: var(--soft-sky,#EAF1F9);
  padding: 80px 30px;
}
/* ─── LeaseCompany utilities ─────────────────────────── */
:root{
  --midnight:#1C2C4C;
  --cyan:#00A3E0;
  --coral:#F26D5B;
  --soft-sky:#EAF1F9;
}

/* basic layout helpers */
.lc-container{max-width:1200px;margin:0 auto;padding:0 24px;}
.bg-soft-sky{background:var(--soft-sky);}
.text-midnight{color:var(--midnight);}
.text-cyan{color:var(--cyan);}

/* simple CSS-grid helpers (enough for this page) */
.grid{display:grid;}
.gap-12{gap:3rem;}
@media(min-width:1024px){.lg\\:grid-cols-2{grid-template-columns:repeat(2,1fr);}}

/* button */
.lc-btn-primary{
  background:var(--coral);color:#fff;font-weight:700;
  padding:14px 32px;border-radius:12px;text-decoration:none;
  transition:background .2s;
}
.lc-btn-primary:hover{background:#e85c4a;}

/* gallery images & general tweaks */
.rounded-3xl{border-radius:24px;}
.rounded-2xl{border-radius:16px;}
.shadow-lg{box-shadow:0 8px 24px rgba(0,0,0,.12);}
.shadow{box-shadow:0 4px 12px rgba(0,0,0,.06);}
.aspect-\\[4\\/3\\]{aspect-ratio:4/3;}
/* Sticky footer layout for all pages */
html, body {
  height: 100%;
  min-height: 100%;
}

body.layout-flex {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.body-wrapper {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

main, .main-content {
  flex: 1 0 auto;
}

footer, .footer, .site-footer {
  flex-shrink: 0;
  width: 100%;
  /* Optional: add background and padding if needed */
}
html, body {
  height: 100%;
  min-height: 100%;
  margin: 0;
  padding: 0;
}

body.layout-flex {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.body-wrapper {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1 0 auto;
}

footer, .footer, .site-footer {
  flex-shrink: 0;
  width: 100%;
}
html, body {
  height: 100%;
  min-height: 100%;
  margin: 0;
  padding: 0;
}

body.layout-flex {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.body-wrapper {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1 0 auto;
}

footer, .footer, .site-footer {
  flex-shrink: 0;
  width: 100%;
  position: relative;
  z-index: 2;
}

section {
  margin: 1rem 0 !important;
  overflow: visible !important;
}
section:last-of-type {
  margin-bottom: 0 !important;
}

.container {
  max-width: var(--container-max);
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: 2rem;
  padding-bottom: 2rem;
  box-sizing: border-box;
}

body, html {
  font-family: 'Inter', Arial, sans-serif !important;
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', Arial, sans-serif !important;
}