/* Extracted from keystoneapp/templates/static_pages/fire/fire_detection.html */
.fire-page-banner {
    overflow: hidden;
    background: #111827;
  }
  .fire-page-banner picture,
  .fire-page-banner-img {
    display: block;
    width: 100%;
  }
  .fire-page-banner-img {
    height: auto;
  }
  .fire-hero-intro {
    padding: 2.2rem 0;
    background: #fff;
    border-bottom: 1px solid rgba(15, 23, 42, .08);
  }
  .fire-eyebrow {
    display: inline-flex;
    align-items: center;
    margin-bottom: .75rem;
    padding: .35rem .7rem;
    border-radius: 999px;
    background: rgba(171, 116, 66, .12);
    color: #8a552c;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .fire-hero-intro h1 {
    color: #111827;
  }
  .fire-hero-intro .lead {
    max-width: 830px;
    color: #475569;
  }
  .fire-hero-points {
    display: grid;
    gap: .75rem;
    margin: 1.15rem 0 0;
    padding: 0;
    color: #334155;
    list-style: none;
  }
  .fire-hero-points li {
    display: flex;
    gap: .65rem;
    align-items: flex-start;
    padding: .75rem .9rem;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 8px;
    background: #f8fafc;
    line-height: 1.45;
  }
  .fire-hero-points i {
    flex: 0 0 auto;
    color: #ab7442;
    margin-top: .12rem;
  }
  .fire-hero-actions {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    width: 100%;
    max-width: 340px;
    margin-left: auto;
  }
  .fire-hero-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 52px;
    border-radius: 8px;
    padding: .75rem 1rem;
    line-height: 1.2;
    white-space: normal;
    text-align: center;
  }
  .fire-image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .22);
  }
  .fire-nav {
    background: #fff;
    border-bottom: 1px solid rgba(15, 23, 42, .1);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .06);
  }
  .fire-nav .container {
    display: flex;
    justify-content: center;
    gap: .75rem;
    overflow-x: auto;
    padding-top: .85rem;
    padding-bottom: .85rem;
  }
  .fire-nav a {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 40px;
    padding: .55rem 1rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 999px;
    background: #f8fafc;
    color: #0f172a;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition: background .18s ease, color .18s ease, transform .18s ease;
  }
  .fire-nav a:hover {
    color: #fff;
    background: #ab7442;
    transform: translateY(-1px);
  }
  #systems,
  #survey,
  #devices,
  #brands,
  #zambia,
  #process,
  #faq {
    scroll-margin-top: 86px;
  }
  .fire-card,
  .fire-zone-card,
  .fire-process-card,
  .fire-related-card {
    height: 100%;
    padding: 1.5rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
  }
  .fire-card {
    position: relative;
    overflow: hidden;
  }
  .fire-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #ab7442;
  }
  .fire-icon {
    display: inline-flex;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(171, 116, 66, .12);
    color: #ab7442;
    font-size: 1.55rem;
    margin-bottom: 1rem;
  }
  .fire-handover-panel {
    border-radius: 8px;
    border: 1px solid rgba(15, 23, 42, .1);
    background: #fff;
    color: #111827;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
  }
  .fire-badge,
  .fire-dark-badge,
  .fire-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    border-radius: 999px;
    background: rgba(171, 116, 66, .14);
    color: #8a552c;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
  }
  .fire-badge,
  .fire-dark-badge {
    padding: .4rem .75rem;
  }
  .fire-dark-badge {
    background: rgba(255, 255, 255, .12);
    color: #f3d4b6;
  }
  .fire-step {
    min-width: 42px;
    min-height: 32px;
    padding: .35rem .7rem;
    margin-bottom: .85rem;
  }
  .fire-survey-panel {
    padding: 1.5rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
  }
  .fire-zone-card h3,
  .fire-process-card h3,
  .fire-related-card h3 {
    line-height: 1.25;
  }
  .fire-zone-card p,
  .fire-process-card p,
  .fire-related-card p,
  .fire-device-item p,
  .fire-hero-intro .lead {
    line-height: 1.6;
  }
  .fire-survey-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
  }
  .fire-survey-grid div {
    min-height: 112px;
    padding: 1rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 8px;
    background: #f8fafc;
  }
  .fire-survey-grid strong,
  .fire-survey-grid span {
    display: block;
  }
  .fire-survey-grid strong {
    margin-bottom: .35rem;
    color: #111827;
  }
  .fire-survey-grid span {
    color: #64748b;
    font-size: .95rem;
  }
  .fire-device-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
  .fire-device-item {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    min-height: 132px;
    padding: 1.15rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
  }
  .fire-device-item i {
    display: inline-flex;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(171, 116, 66, .12);
    color: #ab7442;
    font-size: 1.35rem;
  }
  .fire-device-item h3 {
    margin-bottom: .35rem;
    color: #111827;
    font-size: 1rem;
    font-weight: 800;
  }
  .fire-device-item p {
    margin-bottom: 0;
    color: #64748b;
  }
  .fire-handover-panel p,
  .fire-handover-panel li {
    color: #475569;
  }
  .fire-feature-list {
    display: grid;
    gap: .75rem;
    padding-left: 1.15rem;
  }
  .fire-feature-list li {
    padding-left: .15rem;
    line-height: 1.55;
  }
  .fire-brand-card {
    display: flex;
    min-height: 170px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .9rem;
    padding: 1.25rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 8px;
    background: #fff;
    color: #0f172a;
    text-align: center;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
    transition: transform .18s ease, box-shadow .18s ease;
  }
  .fire-brand-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 42px rgba(15, 23, 42, .13);
  }
  .fire-brand-logo {
    display: flex;
    width: 100%;
    height: 72px;
    align-items: center;
    justify-content: center;
  }
  .fire-brand-logo img {
    max-width: 140px;
    max-height: 64px;
    object-fit: contain;
  }
  .fire-related-card {
    display: flex;
    flex-direction: column;
    color: #0f172a;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease;
  }
  .fire-related-card:hover {
    transform: translateY(-4px);
    color: #0f172a;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .13);
  }
  .fire-related-card p {
    color: #64748b;
  }
  .fire-related-card strong {
    margin-top: auto;
    color: #ab7442;
  }
  .fire-photo-panel {
    position: relative;
    min-height: 360px;
    overflow: hidden;
    border-radius: 8px;
    background: #f8fafc;
    color: #111827;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .16);
  }
  .fire-photo-panel picture {
    display: block;
    min-height: inherit;
  }
  .fire-photo-panel img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 25% center;
  }
  .fire-photo-content {
    position: relative;
    z-index: 1;
    display: flex;
    min-height: 320px;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    background: linear-gradient(180deg, rgba(15, 23, 42, .06), rgba(15, 23, 42, .86));
  }
  .fire-faq .accordion-button {
    font-weight: 800;
    line-height: 1.35;
  }
  .fire-clean-cta {
    background: #fff;
    color: #111827;
    border-top: 1px solid rgba(15, 23, 42, .08);
  }
  .fire-clean-cta p {
    color: #64748b;
  }

  @media (max-width: 767px) {
    .fire-page-banner-img {
      min-height: 210px;
      object-fit: cover;
      object-position: center;
    }
    .fire-hero-intro {
      padding: 1.4rem 0 1.6rem;
    }
    .fire-hero-intro h1 {
      font-size: 1.65rem;
      line-height: 1.18;
      margin-bottom: .75rem !important;
    }
    .fire-hero-intro .lead {
      font-size: 1rem;
    }
    .fire-hero-points {
      font-size: .95rem;
      gap: .65rem;
    }
    .fire-hero-points li {
      padding: .75rem;
    }
    .fire-hero-actions {
      max-width: none;
      margin-left: 0;
    }
    .fire-hero-actions .btn,
    .fire-survey-panel .btn,
    .fire-handover-panel .btn,
    .fire-clean-cta .btn {
      width: 100%;
      justify-content: center;
    }
    .fire-nav .container {
      justify-content: flex-start;
      gap: .55rem;
      padding-right: 1rem;
      padding-left: 1rem;
    }
    .fire-nav a {
      min-height: 38px;
      padding: .48rem .85rem;
      font-size: .9rem;
    }
    #systems,
    #survey,
    #devices,
    #brands,
    #zambia,
    #process,
    #faq {
      scroll-margin-top: 76px;
    }
    section.py-5 {
      padding-top: 2rem !important;
      padding-bottom: 2rem !important;
    }
    section h2 {
      font-size: 1.45rem;
      line-height: 1.25;
    }
    .fire-image {
      margin-bottom: .35rem;
      aspect-ratio: 16 / 11;
    }
    .fire-card,
    .fire-zone-card,
    .fire-process-card,
    .fire-related-card,
    .fire-device-item {
      padding: 1rem;
    }
    .fire-zone-card,
    .fire-process-card,
    .fire-related-card {
      min-height: auto;
    }
    .fire-survey-panel {
      padding: 1.1rem;
    }
    .fire-survey-grid,
    .fire-device-grid {
      grid-template-columns: 1fr;
    }
    .fire-device-item {
      min-height: auto;
      gap: .8rem;
    }
    .fire-device-item i {
      flex-basis: 42px;
      width: 42px;
      height: 42px;
      font-size: 1.2rem;
    }
    .fire-handover-panel {
      padding: 1.25rem !important;
    }
    .fire-handover-panel .d-flex,
    .fire-clean-cta .d-flex,
    .fire-survey-panel .d-flex {
      gap: .75rem !important;
    }
    .fire-photo-panel {
      min-height: 245px;
    }
    .fire-photo-panel img {
      object-position: 18% center;
    }
    .fire-photo-content {
      padding: 1rem;
    }
    .fire-brand-card {
      min-height: 132px;
      padding: 1rem .75rem;
    }
    .fire-brand-logo {
      height: 56px;
    }
    .fire-brand-logo img {
      max-width: 112px;
      max-height: 52px;
    }
    .fire-faq .row {
      --bs-gutter-y: 1.5rem;
    }
  }

/* Generated classes for former inline style attributes */
/* Inline styles extracted from keystoneapp/templates/static_pages/fire/fire_detection.html */
.ktl-inline-434ca805 { max-width:850px; }
.ktl-inline-dfe718a9 { background:#facc15;color:#0f172a; }
.ktl-inline-17db37e7 { max-width:780px; }
