/* Dr App static build responsive fixes: mobile header enquiry button, mobile CTA wrapping and hidden scroll overlays. */
.header-elements li.drapp-mobile-enquiry-item {
  display: none !important;
}
.header-elements__enquiry {
  display: none;
}

@media all and (max-width: 980px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  /* Hide the transparent down/up scroll controls on mobile so they do not sit over the menu/content. */
  .scroll-bottom,
  .et_pb_scroll_top.et-pb-icon {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #main-header {
    z-index: 100000;
  }

  #main-header .container.et_menu_container {
    box-sizing: border-box;
  }

  .header-elements {
    width: calc(100% - 150px) !important;
    text-align: right !important;
  }

  .header-elements li {
    margin-right: 7px;
    vertical-align: middle;
  }

  #main-header .header-elements__awards,
  #main-header .header-elements__quote-button {
    display: none !important;
  }


  .header-elements li.drapp-mobile-enquiry-item {
    display: inline-block !important;
  }

  .header-elements__enquiry {
    align-items: center;
    border: 2px solid #fff;
    border-radius: 6px;
    box-sizing: border-box;
    color: #fff !important;
    display: inline-flex;
    font: 700 12px/1 Arvo, Helvetica, Arial, Verdana, sans-serif;
    height: 44px;
    justify-content: center;
    letter-spacing: 0.02em;
    padding: 0 10px;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .header-elements__enquiry:focus,
  .header-elements__enquiry:hover {
    background: #39b54a;
    color: #fff !important;
    text-decoration: none !important;
  }

  .mobile_menu_bar.mobile_menu_bar_toggle {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    width: 44px;
    margin-top: -6px;
    padding: 0 !important;
  }

  .mobile_menu_bar.mobile_menu_bar_toggle:before {
    line-height: 1;
  }

  .inwau-mobile-menu-container,
  .inwau_mobile_menu {
    z-index: 100001;
  }
}

@media all and (max-width: 359px) {
  .header-elements li {
    margin-right: 5px;
  }

  .header-elements__enquiry {
    font-size: 11px;
    padding: 0 7px;
  }
}

@media all and (max-width: 767px) {
  .et_pb_button_module_wrapper {
    box-sizing: border-box !important;
    max-width: 100% !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body #page-container .et_pb_section .et_pb_button,
  body #page-container .et_pb_button,
  .inw-button,
  #main-footer .call-to-action .action-buttons a,
  .woocommerce a.button,
  .woocommerce-page a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .btn.action-btn {
    box-sizing: border-box !important;
    max-width: calc(100vw - 40px) !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: normal !important;
  }

  body #page-container .et_pb_section .et_pb_button {
    display: block !important;
    font-size: clamp(18px, 5.6vw, 25px) !important;
    line-height: 1.2 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 520px !important;
    padding: 12px 14px !important;
    width: 100% !important;
  }

  body #page-container .et_pb_section .et_pb_button:hover {
    padding: 12px 14px !important;
  }

  body #page-container .et_pb_section .et_pb_button:after {
    display: none !important;
  }

  #main-footer .call-to-action .action-buttons a,
  .btn.action-btn {
    display: block !important;
    line-height: 1.2 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 14px 16px !important;
  }

  .inw-products {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .inw-product {
    box-sizing: border-box !important;
    max-width: 100% !important;
    overflow: hidden;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  .inw-product__add-to-cart,
  .inw-product__add-to-cart .add_to_cart_inline {
    box-sizing: border-box !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .inw-product__add-to-cart .add_to_cart_inline {
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .inw-product__add-to-cart .button.add_to_cart_button,
  .inw-product__add-to-cart .button.drapp-package-enquiry-cta,
  .woocommerce .inw-product__add-to-cart a.button,
  .woocommerce-page .inw-product__add-to-cart a.button {
    border-radius: 4px !important;
    display: block !important;
    font-size: clamp(16px, 4.8vw, 20px) !important;
    line-height: 1.25 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 13px 10px !important;
    width: 100% !important;
  }

  .inw-product__add-to-cart .button.add_to_cart_button:hover,
  .inw-product__add-to-cart .button.drapp-package-enquiry-cta:hover,
  .woocommerce .inw-product__add-to-cart a.button:hover,
  .woocommerce-page .inw-product__add-to-cart a.button:hover {
    padding: 13px 10px !important;
  }
}

.drapp-contact-form-anchor {
  scroll-margin-top: var(--drapp-anchor-offset, 122px);
}


/* Mobile enquiry icon refinement: icon only, aligned with the phone icon. */
.drapp-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media all and (max-width: 980px) {
  .header-elements {
    align-items: center !important;
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 12px !important;
    white-space: nowrap !important;
  }

  .header-elements li {
    display: inline-flex !important;
    align-items: center !important;
    margin-right: 8px !important;
  }

  #main-header .header-elements li:first-child,
  #main-header .header-elements li:last-child {
    display: none !important;
  }

  #main-header .header-elements li.drapp-mobile-enquiry-item {
    display: inline-flex !important;
  }

  .header-elements__phone {
    display: inline-block !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    padding-left: 0 !important;
    overflow: hidden !important;
  }

  .header-elements__phone img {
    display: block !important;
    left: 1px !important;
    top: 1px !important;
    width: 42px !important;
    height: 43px !important;
  }

  .header-elements__enquiry {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #053558 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
  }

  .header-elements__enquiry:focus,
  .header-elements__enquiry:hover {
    background: rgba(255,255,255,0.14) !important;
    border-radius: 6px !important;
    color: #053558 !important;
  }

  .header-elements__enquiry .drapp-enquiry-icon {
    display: block !important;
    width: 42px !important;
    height: 42px !important;
    fill: currentColor !important;
  }

  #et-top-navigation {
    margin-left: 8px !important;
  }
}

@media all and (max-width: 359px) {
  .header-elements li {
    margin-right: 5px !important;
  }
  .header-elements__phone,
  .header-elements__enquiry {
    width: 42px !important;
    min-width: 42px !important;
  }
  .header-elements__enquiry .drapp-enquiry-icon {
    width: 38px !important;
    height: 38px !important;
  }
}

@media all and (max-width: 980px) {
  /* Keep only the custom hamburger menu visible on phones; hide the desktop nav underline. */
  nav#top-menu-nav,
  ul#top-menu {
    display: none !important;
  }
  #et-top-navigation ul#top-menu li:after {
    display: none !important;
    width: 0 !important;
  }
}

/* Mobile header enquiry icon final polish: make it visually match the phone icon. */
@media all and (max-width: 980px) {
  #main-header .header-elements__enquiry,
  #main-header .header-elements__enquiry:link,
  #main-header .header-elements__enquiry:visited,
  #main-header .header-elements__enquiry:hover,
  #main-header .header-elements__enquiry:focus,
  #main-header .header-elements__enquiry:active {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #053558 !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  #main-header .header-elements__enquiry .drapp-enquiry-icon {
    display: block !important;
    fill: currentColor !important;
    height: 43px !important;
    width: 42px !important;
  }
}

/* In-page anchor positioning. The JS updates --drapp-anchor-offset to the live header height + a small 10px gap. */
:root {
  --drapp-anchor-offset: 122px;
}
html {
  scroll-padding-top: var(--drapp-anchor-offset, 122px);
}
.drapp-enquiry-contact,
.drapp-contact-form-anchor,
[id^="drapp-contact-form-"],
.drapp-anchor-target,
.et_pb_section[id],
[id="introduction"],
[id="overview-of-apps"],
[id="power-of-apps"],
[id="our-apps"],
[id="our-development-process"],
[id="our-guarantee"],
[id="faq"],
[id="types-of-apps"],
[id="job-management-app"],
[id="how-we-develop"],
[id="satisfaction-guarantee"],
[id="section-contact-us"] {
  scroll-margin-top: var(--drapp-anchor-offset, 122px);
}
.drapp-anchor-target {
  display: block !important;
  height: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  top: 0 !important;
}
@media all and (max-width: 980px) {
  :root {
    --drapp-anchor-offset: 108px;
  }
}
