.our-services-list::before,
.our-services-list::after {
    display: none;
  }
/* =========================================
   0) Base hero image (Section 6)
========================================= */
section.section-6 img.image-7{
  display:block; width:100%;
  height: clamp(420px, 33vw, 800px);
  object-fit: cover;
  object-position: 50% 90%;
  image-rendering: auto;
}

/* =========================================
   1) Navbar: no gap; dropdown under header
========================================= */
.nav-inner-container,
.container.navigation-container,
div[role="banner"] .container{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  margin-bottom:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

.w-nav, .nav-bar, [role="banner"]{
  margin-bottom:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.w-nav + section, .w-nav + div, .nav-bar + *, [role="banner"] + *{
  margin-top:0 !important; padding-top:0 !important; border-top:0 !important;
}
section.section-6{ margin-top:0 !important; padding-top:0 !important; }
img.image-7{ display:block !important; }

/* Tablet & below: dropdown sits under header and auto-sizes */
@media (max-width: 991px){
  :root{ --nav-height: 64px; }
  .w-nav{ position:relative; z-index:1000; }

  .w-nav-overlay{
    position:fixed !important;
    top:var(--nav-height) !important; left:0 !important; right:0 !important;
    bottom:auto !important; height:auto !important;
    background:transparent !important; z-index:9999 !important;
  }
  .w-nav-overlay .w-nav-menu{
    position:static !important; display:block !important; width:100% !important;
    height:auto !important; max-height:none !important;
    background: var(--colors-background-1, #f0dfcf) !important;
    box-shadow:0 8px 24px rgba(0,0,0,.08); border-radius:8px; overflow:hidden;
    margin:0 !important; padding: 6 0 6 0 !important;
  }

  .nav-link {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .nav-inner-container,
  .container.navigation-container,
  [role="banner"] .container{
    gap:0 !important; row-gap:0 !important; column-gap:0 !important;
    grid-row-gap:0 !important; grid-column-gap:0 !important;
    padding-bottom:0 !important;
  }

  .w-nav-button{
    width:44px; height:44px;
    display:inline-flex !important; align-items:center !important; justify-content:center !important;
    line-height:1 !important; padding:0 !important; border-radius:9999px;
  }
  .w-nav-button .w-icon-nav-menu{
    position:static !important; transform:none !important; margin:0 !important; line-height:1 !important;
    width:1em; height:1em;
  }
  .w-nav-button.w--open .w-icon-nav-menu{ position:static !important; transform:none !important; }
  .w-nav-overlay .w-nav-button{ display:none !important; }
}

/* =========================================
   2) Section 7 slider: 3/2/1, no half-cards
========================================= */
section.section-7{
  --gutter-desktop: 32px; --gutter-tablet: 24px; --gutter-mobile: 16px;
  position:relative;
}
/* Keep background/height neutral */
section.section-7 [fs-cmsslider-element="slider"],
section.section-7 .w-slider,
section.section-7 .w-slider-mask,
section.section-7 .w-slide{
  background:transparent !important; height:auto !important;
}
section.section-7 .w-slider{ position:relative; overflow:visible !important; }
section.section-7 .w-slider-nav{ display:none !important; }

/* Mask as a row; add a little bottom padding so card shadows/text never clip */
section.section-7 .w-slider-mask{
  display:flex !important; align-items:stretch !important;
  overflow:hidden !important; width:auto !important;
  margin-left:  calc(var(--gutter-desktop)/-2) !important;
  margin-right: calc(var(--gutter-desktop)/-2) !important;
}

/* Slides as exact columns (no floats) */
section.section-7 .w-slide{
  float:none !important; width:auto !important; min-width:0; box-sizing:border-box;
  margin:0 !important;
  padding-left:  calc(var(--gutter-desktop)/2) !important;
  padding-right: calc(var(--gutter-desktop)/2) !important;
  flex:0 0 calc(100% / 3) !important; /* 3-up desktop */
}

/* Keep your card internals neutral (no extra box from slide wrapper) */
section.section-7 .w-slide > *{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  border-radius:0 !important; padding:0 !important;
  width:100%; height:100%; min-width:0; box-sizing:border-box;
}

/* Cards themselves fill naturally */
section.section-7 .collection-item,
section.section-7 .card{
  height:auto !important; min-height:0 !important; overflow:visible !important;
  display:flex; flex-direction:column;
}
section.section-7 img{ max-width:100%; height:auto; object-fit:contain; }

/* ===== Desktop arrows (outside, near headline) ===== */
section.section-7 .w-slider-arrow-left,
section.section-7 .w-slider-arrow-right{
  transform:none !important;
  width:48px !important; height:48px !important;
  background:transparent !important; border:0 !important; box-shadow:none !important;
  color: rgba(0,0,0,.45) !important; z-index:6;
}
section.section-7 .w-icon-slider-left,
section.section-7 .w-icon-slider-right{ font-size:34px !important; line-height:1; }
@media (min-width:992px){
  /* Keep the 940px card rail intact and reserve separate 66px control gutters.
     Where the 1072px outer rail does not fit, it centers and caps at the viewport. */
  section.section-7 .slider-container > .hidden-ipad-down{
    align-self:stretch;
    width:100%;
  }
  section.section-7 .w-slider{
    box-sizing:border-box;
    width:min(100vw, calc(100% + 132px));
    max-width:1072px;
    padding-left:66px;
    padding-right:66px;
    margin-left:max(calc((100% - 1072px) / 2), calc((100% - 100vw) / 2));
  }
  /* Expertise sliders are direct children of centered flex containers, so the
     container's cross-axis alignment already performs the same centering. */
  section.section-7 .container > .w-slider{
    margin-left:0;
  }
  section.section-7 .w-slider-arrow-left{ left:0; }
  section.section-7 .w-slider-arrow-right{ right:0; }
}
section.section-7 .w-slider-arrow-left:hover,
section.section-7 .w-slider-arrow-right:hover{
  color: rgba(0,0,0,.75) !important; transform: scale(1.06);
}

/* ===== Tablet (<= 991px): center arrows vertically, tuck just inside ===== */
@media (max-width: 991px){
  section.section-7 .w-slider-mask{
    margin-left:  calc(var(--gutter-tablet)/-2) !important;
    margin-right: calc(var(--gutter-tablet)/-2) !important;
  }
  section.section-7 .w-slide{
    padding-left:  calc(var(--gutter-tablet)/2) !important;
    padding-right: calc(var(--gutter-tablet)/2) !important;
    flex-basis: calc(100% / 2) !important; /* 2-up */
  }

  section.section-7 .w-slider-arrow-left,
  section.section-7 .w-slider-arrow-right{
    position:absolute !important;
    transform:translateY(-50%) !important;
    width:46px !important; height:46px !important;
    color: rgba(0,0,0,.45) !important;
    background:transparent !important; border:0 !important; box-shadow:none !important;
    z-index:6 !important; cursor:pointer;
  }
  section.section-7 .w-icon-slider-left,
  section.section-7 .w-icon-slider-right{
    font-size:28px !important; line-height:1 !important; transform:none !important;
  }
  section.section-7 .w-slider{
    padding-left:46px;
    padding-right:46px;
  }
  section.section-7 .w-slider-arrow-left  { left:0 !important; }
  section.section-7 .w-slider-arrow-right { right:0 !important; }
}

/* ===== Mobile (<= 767px): 1-up, slightly smaller arrows & tighter inset ===== */
@media (max-width: 767px){
  section.section-7 .w-slider-mask{
    margin-left:  calc(var(--gutter-mobile)/-2) !important;
    margin-right: calc(var(--gutter-mobile)/-2) !important;
  }
  section.section-7 .w-slide{
    padding-left:  calc(var(--gutter-mobile)/2) !important;
    padding-right: calc(var(--gutter-mobile)/2) !important;
    flex-basis:100% !important; /* 1-up */
  }
  section.section-7 .w-slider-arrow-left,
  section.section-7 .w-slider-arrow-right{
    width:42px !important; height:42px !important;
  }
  section.section-7 .w-icon-slider-left,
  section.section-7 .w-icon-slider-right{
    font-size:24px !important;
  }
  section.section-7 .w-slider{
    padding-left:42px;
    padding-right:42px;
  }
  section.section-7 .w-slider-arrow-left  { left:0 !important; }
  section.section-7 .w-slider-arrow-right { right:0 !important; }
}

/* System pages share captured component names with public pages. Keep their
   responsive containment scoped to their Webflow page identities. */
html[data-wf-page="67d93d03bd0e8f3bce4b4b37"] .section > .container,
html[data-wf-page="67d93d03bd0e8f3bce4b4b64"] .section > .container,
html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .section > .container{
  box-sizing:border-box;
  display:block !important;
  width:100%;
  min-width:0;
  max-width:940px;
}

html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .grid,
html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .styles-text-wrap,
html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .styles-sticky-wrap,
html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .styles-contents,
html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .styles-contents > *{
  min-width:0;
  max-width:100%;
}

html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .grid{
  box-sizing:border-box;
  grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);
}

html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .style-button{
  flex-wrap:wrap;
}

html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] :is(img, input, select, textarea){
  box-sizing:border-box;
  max-width:100%;
}

html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] :is(a, p, h1, h2, h3, h4, h5, h6, li){
  overflow-wrap:anywhere;
}

@media (max-width:767px){
  html[data-wf-page="67d93d03bd0e8f3bce4b4b7c"] .grid{
    grid-template-columns:minmax(0, 1fr);
  }
}

@media (max-width:991px){
  html[data-wf-page="67e12401e653ef1ce8ec95d7"] .our-services-list{
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:100%;
    margin-right:0 !important;
    margin-left:0 !important;
  }
  html[data-wf-page="67e12401e653ef1ce8ec95d7"] .our-services-list > *,
  html[data-wf-page="67e12401e653ef1ce8ec95d7"] .our-services-list .compact-our-services-card{
    box-sizing:border-box;
    min-width:0;
    max-width:100%;
  }
}

@media (max-width:767px){
  .application-form :is(input[type="text"], input[type="email"], textarea){
    font-size:16px !important;
  }
}

/* =========================================
   3) Footer fixes for very small phones
========================================= */
@media (max-width: 479px){
  section.footer-section,
  .site-footer,
  section.footer-section .div-block-7,
  section.footer-section .container.sifdot,
  section.footer-section .w-container,
  section.footer-section [class*="container"],
  section.footer-section [class*="wrap"],
  section.footer-section [class*="grid"],
  .site-footer .div-block-7,
  .site-footer .container.sifdot,
  .site-footer .w-container,
  .site-footer [class*="container"],
  .site-footer [class*="wrap"],
  .site-footer [class*="grid"]{
    height:auto !important; min-height:0 !important; max-height:none !important;
    overflow:visible !important; position:relative !important;
  }
  section.footer-section .div-block-7,
  section.footer-section .container.sifdot,
  section.footer-section .w-container,
  section.footer-section [class*="grid"],
  .site-footer .div-block-7,
  .site-footer .container.sifdot,
  .site-footer .w-container,
  .site-footer [class*="grid"]{
    display:grid !important; grid-template-columns:1fr !important; grid-auto-rows:auto !important;
    align-items:start !important; justify-items:start !important;
    gap:16px !important; width:100% !important; box-sizing:border-box !important;
  }
  section.footer-section .w-row, .site-footer .w-row { margin:0 !important; }
  section.footer-section .w-col, .site-footer .w-col{
    float:none !important; width:100% !important; margin:0 !important; padding:0 !important;
    max-width:100% !important; box-sizing:border-box !important;
  }
  section.footer-section, section.footer-section * ,
  .site-footer, .site-footer * {
    overflow-wrap:anywhere !important; word-break:break-word !important;
  }
  section.footer-section h3, section.footer-section h4,
  .site-footer h3, .site-footer h4 { margin:8px 0 !important; }
  section.footer-section p,  section.footer-section li,
  .site-footer p,  .site-footer li  { margin:0 0 8px !important; }
  section.footer-section img[alt*="bonfire"],
  section.footer-section .footer-logo,
  section.footer-section [class*="logo"] img,
  .site-footer img[alt*="bonfire"],
  .site-footer .footer-logo,
  .site-footer [class*="logo"] img {
    max-width:160px !important; height:auto !important;
  }
  section.footer-section [class*="side-"], section.footer-section [class*="flag"],
  .site-footer [class*="side-"], .site-footer [class*="flag"]{
    display:none !important;
  }
}
@media (max-width: 767px){
  section.footer-section .div-block-7,
  section.footer-section .container.sifdot,
  section.footer-section .w-container,
  .site-footer .div-block-7,
  .site-footer .container.sifdot,
  .site-footer .w-container{
    padding-left:-42px !important; padding-right:-42px !important; gap:20px !important;
  }
}
/* Mobile menu: remove rounded corners on the overlay menu */
@media (max-width: 991px){
  .w-nav-overlay .w-nav-menu{
    border-radius: 0 !important;   /* kill the rounding */
    box-shadow: none !important;    /* optional: no shadow */
    overflow: visible;              /* keep items from being clipped */
  }
  /* if any links/items picked up a radius too */
  .w-nav-overlay .w-nav-menu .w-nav-link,
  .w-nav-overlay .w-nav-menu a{
    border-radius: 0 !important;
  }
}
