.elementor-kit-11{--e-global-color-primary:#011E46;--e-global-color-secondary:#004FA6;--e-global-color-text:#0B1830;--e-global-color-accent:#D62C31;--e-global-color-1f7bd1:#1F7BD1;--e-global-color-f6f5f2:#F6F5F2;--e-global-color-ffffff:#FFFFFF;--e-global-color-556274:#556274;--e-global-color-cbd1d8:#CBD1D8;--e-global-typography-primary-font-family:"Barlow Condensed";--e-global-typography-primary-font-size:64px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:0.92em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.08em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.55em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:none;--e-global-typography-accent-line-height:1em;--e-global-typography-display-font-family:"Barlow Condensed";--e-global-typography-display-font-size:88px;--e-global-typography-display-font-weight:700;--e-global-typography-display-text-transform:uppercase;--e-global-typography-display-line-height:0.9em;--e-global-typography-display-letter-spacing:-1px;--e-global-typography-eyebrow-font-family:"DM Sans";--e-global-typography-eyebrow-font-size:13px;--e-global-typography-eyebrow-font-weight:700;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-line-height:1.2em;--e-global-typography-eyebrow-letter-spacing:1.4px;--e-global-typography-card-heading-font-family:"Barlow Condensed";--e-global-typography-card-heading-font-size:34px;--e-global-typography-card-heading-font-weight:700;--e-global-typography-card-heading-text-transform:uppercase;--e-global-typography-card-heading-line-height:0.98em;--e-global-typography-button-label-font-family:"DM Sans";--e-global-typography-button-label-font-size:16px;--e-global-typography-button-label-font-weight:700;--e-global-typography-button-label-line-height:1em;background-color:#F6F5F2;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:400;line-height:1.55em;}.elementor-kit-11 button,.elementor-kit-11 input[type="button"],.elementor-kit-11 input[type="submit"],.elementor-kit-11 .elementor-button{background-color:#D62C31;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:700;color:#FFFFFF;border-style:none;border-radius:0px 0px 0px 0px;padding:20px 30px 20px 30px;}.elementor-kit-11 button:hover,.elementor-kit-11 button:focus,.elementor-kit-11 input[type="button"]:hover,.elementor-kit-11 input[type="button"]:focus,.elementor-kit-11 input[type="submit"]:hover,.elementor-kit-11 input[type="submit"]:focus,.elementor-kit-11 .elementor-button:hover,.elementor-kit-11 .elementor-button:focus{background-color:#011E46;}.elementor-kit-11 e-page-transition{background-color:#FFBC7D;}.elementor-kit-11 a{color:#004FA6;}.elementor-kit-11 a:hover{color:#D62C31;}.elementor-kit-11 h1{font-family:"Barlow Condensed", Sans-serif;font-weight:700;text-transform:uppercase;line-height:0.92em;}.elementor-kit-11 h2{font-family:"Barlow Condensed", Sans-serif;font-weight:700;text-transform:uppercase;line-height:0.96em;}.elementor-kit-11 h3{font-family:"Barlow Condensed", Sans-serif;font-weight:700;text-transform:uppercase;line-height:1em;}.elementor-kit-11 input:not([type="button"]):not([type="submit"]),.elementor-kit-11 textarea,.elementor-kit-11 .elementor-field-textual{font-family:"DM Sans", Sans-serif;font-size:16px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#CBD1D8;border-radius:0px 0px 0px 0px;padding:14px 16px 14px 16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;--container-default-padding-top:0px;--container-default-padding-right:30px;--container-default-padding-bottom:0px;--container-default-padding-left:30px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Bull City header — final mobile layout override.
   Paste this block at the END of Site Settings > Custom CSS. */
@media (max-width: 767px) {
  /* Main blue header row: logo | hamburger | Call Now. */
  html body .bcr-header-shell .elementor-element-3cf889a > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(105px, 1fr) 44px auto !important;
    grid-template-rows: 72px !important;
    align-items: center !important;
    justify-content: stretch !important;
    width: 100% !important;
    min-height: 72px !important;
    padding: 0 16px !important;
    gap: 10px !important;
  }

  /* Logo. */
  html body .bcr-header-shell .elementor-element-3d47c6b {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: clamp(105px, 32vw, 140px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    align-self: center !important;
    justify-self: start !important;
  }

  html body .bcr-header-shell .elementor-element-3d47c6b img {
    display: block !important;
    width: 100% !important;
    max-width: 140px !important;
    max-height: 52px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  /* Menu holder. Override Elementor's mobile column/full-width settings. */
  html body .bcr-header-shell .elementor-element-f669ed6 {
    --width: 44px;
    --flex-grow: 0;
    --flex-shrink: 0;
    --flex-direction: row;
    --flex-wrap-mobile: nowrap;
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
  }

  html body .bcr-header-shell .elementor-element-6c885fc {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body .bcr-header-shell .elementor-element-6c885fc .elementor-menu-toggle {
    position: relative !important;
    z-index: 10002 !important;
    display: grid !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
  }

  /* Actions holder: only Call Now remains outside the menu. */
  html body .bcr-header-shell .elementor-element-28f8b6e {
    --width: auto;
    --flex-grow: 0;
    --flex-shrink: 0;
    --flex-wrap-mobile: nowrap;
    grid-column: 3 !important;
    grid-row: 1 !important;
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    align-self: center !important;
  }

  /* Free Quote is already available as the bcr-mobile-quote menu item. */
  html body .bcr-header-shell .elementor-element-19e4b24 {
    display: none !important;
  }

  html body .bcr-header-shell .elementor-element-dc2187e {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
  }

  html body .bcr-header-shell .elementor-element-dc2187e .elementor-button {
    display: inline-flex !important;
    width: auto !important;
    min-width: 116px !important;
    min-height: 46px !important;
    padding: 13px 14px !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    line-height: 1 !important;
  }
}

/* Extra-small phones: keep all three controls on one line. */
@media (max-width: 374px) {
  html body .bcr-header-shell .elementor-element-3cf889a > .e-con-inner {
    grid-template-columns: minmax(88px, 1fr) 40px auto !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
    gap: 6px !important;
  }

  html body .bcr-header-shell .elementor-element-3d47c6b {
    width: 105px !important;
  }

  html body .bcr-header-shell .elementor-element-dc2187e .elementor-button {
    min-width: 106px !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
    font-size: 13px !important;
  }
}


@media (max-width: 767px) {
  html body .bcr-header-shell
  .elementor-element-3cf889a > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px 128px !important;
    grid-template-rows: 72px !important;
    width: 100% !important;
    padding: 0 16px !important;
    gap: 10px !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }

  html body .bcr-header-shell .elementor-element-28f8b6e {
    --width: 128px !important;
    --flex-grow: 0 !important;
    --flex-shrink: 0 !important;

    grid-column: 3 !important;
    grid-row: 1 !important;
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important;
  }

  html body .bcr-header-shell .elementor-element-dc2187e {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    margin: 0 !important;
  }

  html body .bcr-header-shell
  .elementor-element-dc2187e .elementor-button {
    display: flex !important;
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    min-height: 46px !important;
    padding: 13px 10px !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    font-size: 13px !important;
  }
}

/* El CTA duplicado permanece oculto por defecto, incluido desktop. */
html body .bcr-header-shell .bcr-mobile-quote {
  display: none !important;
}

/* Solo aparece dentro del panel hamburguesa de tablet y móvil. */
@media (max-width: 1024px) {
  html body .bcr-header-shell
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container
  .bcr-mobile-quote {
    display: list-item !important;
  }
}


/* Service cards — image background on hover */
@media (hover: hover) and (pointer: fine) {

  .e-con:has(> .bcr-service-image) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
  }

  .e-con:has(> .bcr-service-image) > .bcr-service-image {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0 !important;
    opacity: 0;
    transform: scale(1.06);
    transition:
      opacity 300ms ease,
      transform 500ms ease;
  }

  .e-con:has(> .bcr-service-image)
  > .bcr-service-image
  .elementor-widget-container,
  .e-con:has(> .bcr-service-image)
  > .bcr-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .e-con:has(> .bcr-service-image)::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: "";
    background: rgba(1, 30, 70, 0.62);
    opacity: 0;
    transition: opacity 300ms ease;
    pointer-events: none;
  }

  .e-con:has(> .bcr-service-image):is(:hover, :focus-within)
  > .bcr-service-image,
  .e-con:has(> .bcr-service-image):is(:hover, :focus-within)::before {
    opacity: 1;
  }

  .e-con:has(> .bcr-service-image):is(:hover, :focus-within)
  > .bcr-service-image {
    transform: scale(1);
  }

  .e-con:has(> .bcr-service-image):is(:hover, :focus-within)
  :is(
    .elementor-heading-title,
    .elementor-widget-text-editor,
    .elementor-widget-text-editor *,
    .elementor-button-text,
    .elementor-button-icon,
    .elementor-icon
  ) {
    color: #fff !important;
    fill: #fff !important;
  }
}
/* Header: transparente sobre el hero en todas las páginas desktop */
@media (min-width: 1025px) {
  .elementor-location-header {
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
  }

  /* Fila principal transparente al cargar */
  .bcr-header-shell {
    background-color: transparent !important;
    transition:
      background-color 260ms ease,
      box-shadow 260ms ease;
  }

  /* El top bar siempre conserva rojo */
  .bcr-header-shell > .elementor-element-1d4a7e94 {
    background-color: #D62C31 !important;
  }

  /* Header navy al hacer scroll */
  .bcr-header-shell.elementor-sticky--effects {
    background-color: #011E46 !important;
    box-shadow: 0 8px 24px rgba(1, 30, 70, 0.22);
  }
}/* End custom CSS */