.elementor-kit-7{--e-global-color-primary:#000000;--e-global-color-secondary:#121539;--e-global-color-text:#000000;--e-global-color-accent:#F8D113;--e-global-color-39c3aeb:#000000;--e-global-color-adb2def:#121539;--e-global-color-51a7283:#F8D113;--e-global-color-23e6f48:#DFD5C0;--e-global-color-340fc06:#0000008C;--e-global-color-cd6c6c6:#9A0523;--e-global-color-13ee6bc:#FFFFFF;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-8f943e0-font-family:"Special Gothic";--e-global-typography-8f943e0-font-size:56px;--e-global-typography-8f943e0-font-weight:500;--e-global-typography-e7c44b0-font-family:"Special Gothic";--e-global-typography-e7c44b0-font-size:32px;--e-global-typography-e7c44b0-font-weight:500;--e-global-typography-e7c44b0-line-height:1.2em;--e-global-typography-ea754fe-font-family:"Special Gothic";--e-global-typography-ea754fe-font-size:20px;--e-global-typography-ea754fe-font-weight:500;--e-global-typography-cc8ffb1-font-family:"Special Gothic";--e-global-typography-cc8ffb1-font-size:18px;--e-global-typography-cc8ffb1-font-weight:400;--e-global-typography-cc8ffb1-line-height:1.45em;--e-global-typography-156c87d-font-family:"Special Gothic";--e-global-typography-156c87d-font-size:16px;--e-global-typography-156c87d-font-weight:500;--e-global-typography-156c87d-line-height:1.45em;--e-global-typography-b8b0fcd-font-family:"Special Gothic";--e-global-typography-b8b0fcd-font-size:24px;--e-global-typography-b8b0fcd-font-weight:500;--e-global-typography-b8b0fcd-line-height:1.45em;--e-global-typography-7680963-font-family:"Special Gothic";--e-global-typography-7680963-font-size:18px;--e-global-typography-7680963-font-weight:500;--e-global-typography-7680963-line-height:1.45em;--e-global-typography-7680963-letter-spacing:-0.09px;--e-global-typography-647dd16-font-family:"Special Gothic";--e-global-typography-647dd16-font-size:16px;--e-global-typography-647dd16-font-weight:500;--e-global-typography-647dd16-line-height:1.45em;--e-global-typography-ee498c5-font-family:"Special Gothic";--e-global-typography-ee498c5-font-size:24px;--e-global-typography-ee498c5-font-weight:600;--e-global-typography-ee498c5-line-height:var(--gmd-line-height-heading);--e-global-typography-ee498c5-letter-spacing:var(--gmd-letter-spacing-heading);background-color:var( --e-global-color-39c3aeb );}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.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;}}:root { --gmd-black:#000000; --gmd-yellow:#F8D113; --e-gv-36f783f:Special Gothic; --button-18:18px; --button-radius:999px; --gmd-sand:#DFD5C0; --gmd-red:#9A0523; --gmd-megavault:#8F0759; }
/* Start custom CSS */:root {
  /* Colours */
  --gmd-color-black: #000000;
  --gmd-color-navy: #121539;
  --gmd-color-yellow: #f8d113;
  --gmd-color-red:#9A0523;
  --gmd-color-sand: #dfd5c0;
  --gmd-color-muted: rgba(0, 0, 0, 0.55);

  /* Font families */
  --gmd-font-primary: "Special Gothic", Arial, sans-serif;
  --gmd-font-utility: "Inter", Arial, sans-serif;

  /* Font sizes */
  --gmd-font-size-display: 56px;
  --gmd-font-size-heading: 32px;
  --gmd-font-size-button-large: 24px;
  --gmd-font-size-eyebrow: 20px;
  --gmd-font-size-body: 18px;
  --gmd-font-size-button: 18px;
  --gmd-font-size-navigation: 16px;
  --gmd-font-size-utility: 16px;

  /* Font weights */
  --gmd-font-weight-regular: 400;
  --gmd-font-weight-medium: 500;
  --gmd-font-weight-bold: 700;

  /* Line heights */
  --gmd-line-height-display: 1.1;
  --gmd-line-height-heading: 1.2;
  --gmd-line-height-body: 1.45;
  --gmd-line-height-control: 1.45;

  /* Letter spacing */
  --gmd-letter-spacing-display: -1.12px;
  --gmd-letter-spacing-heading: -0.64px;
  --gmd-letter-spacing-button-large: -0.12px;
  --gmd-letter-spacing-eyebrow: -0.1px;
  --gmd-letter-spacing-body: -0.09px;
  --gmd-letter-spacing-button: -0.09px;
  --gmd-letter-spacing-navigation: -0.08px;

  /* Page dimensions */
  --gmd-content-max-width: 1440px;
  --gmd-page-gutter: 24px;
  --gmd-section-padding-y: 120px;
  --gmd-section-padding-x: 64px;
  --gmd-header-padding-bottom: 80px;

  /* Feature dimensions */
  --gmd-hero-height: 706px;
  --gmd-feature-image-height: 432px;

  /* Spacing */
  --gmd-space-0: 0px;
  --gmd-space-xxs: 4px;
  --gmd-space-xs: 8px;
  --gmd-space-sm: 12px;
  --gmd-space-md: 16px;
  --gmd-space-lg: 24px;
  --gmd-space-xl: 32px;
  --gmd-space-2xl: 48px;
  --gmd-space-3xl: 64px;
  --gmd-space-4xl: 80px;
  --gmd-space-section: 120px;
  --gmd-space-popup: 24px;

  /* Borders */
  --gmd-radius-image: 16px;
  --gmd-radius-card: 16px;
  --gmd-radius-pill: 999px;

  /* Buttons */
  --gmd-button-padding-y: 12px;
  --gmd-button-padding-x: 16px;

  /* Interaction */
  --gmd-transition-duration: 0.2s;
  --gmd-transition-easing: ease;
}
.gmd-footer-heading .elementor-heading-title {
  display: inline-block;
  width: fit-content;
}

.gmd-footer-heading .elementor-heading-title::after {
  content: "";
  display: block;
  width: 32px;
  height: 3px;
  margin-top: 8px;
  background-color: var(--gmd-color-yellow);
  border-radius: var(--gmd-radius-pill);
}

/* Desktop dropdown panel */
.gmd-header-menu
.elementor-nav-menu--main
.sub-menu {
  min-width: 240px !important;
  padding: var(--gmd-space-xs);
  background-color: var(--gmd-color-yellow);
  border: 0 !important;
  border-radius: 0;
  /*box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);*/
}

/* Dropdown links */
.gmd-header-menu
.elementor-nav-menu--main
.sub-menu
.elementor-sub-item {
  padding: 12px 16px;
  color: var(--gmd-color-navy);
  background-color: transparent;
  border: 0;
  border-radius: 8px;
  white-space: nowrap;
  font-size: 16px;
}

/* Hover, focus and current page */
.gmd-header-menu
.elementor-nav-menu--main
.sub-menu
.elementor-sub-item:hover,
.gmd-header-menu
.elementor-nav-menu--main
.sub-menu
.elementor-sub-item:focus,
.gmd-header-menu
.elementor-nav-menu--main
.sub-menu
.current-menu-item > .elementor-sub-item {
  color: var(--gmd-color-yellow);
  background-color: var(--gmd-color-navy);
}

/* Space beside the parent label */
.gmd-header-menu .sub-arrow {
  margin-left: 6px;
  
}

/* Visible keyboard focus */
.gmd-header-menu a:focus-visible {
  outline: 2px solid var(--gmd-color-yellow);
  outline-offset: 2px;
}
/* Hide the parent menu pointer while its dropdown is open */
.gmd-header-menu
.elementor-nav-menu--main
> .elementor-nav-menu
> .menu-item-has-children:hover
> .elementor-item::after,

.gmd-header-menu
.elementor-nav-menu--main
> .elementor-nav-menu
> .menu-item-has-children:focus-within
> .elementor-item::after,

.gmd-header-menu
.elementor-nav-menu--main
> .elementor-nav-menu
> .menu-item-has-children
> .elementor-item.highlighted::after {
  opacity: 0 !important;
  transform: scaleX(0) !important;
}


ul {
    margin: 0 0 26px;
    padding-left: 27px;
}

li {
    margin: 0;
}

/* Tablet */
@media (max-width: 1024px) {
  :root {
    /* Typography */
    --gmd-font-size-display: 48px;
    --gmd-font-size-heading: 30px;
    --gmd-font-size-button-large: 22px;
    --gmd-font-size-eyebrow: 18px;
    --gmd-font-size-body: 17px;
    --gmd-font-size-button: 17px;

    /* Page layout */
    --gmd-page-gutter: 16px;
    --gmd-section-padding-y: 80px;
    --gmd-section-padding-x: 32px;
    --gmd-header-padding-bottom: 64px;

    /* Responsive spacing */
    --gmd-space-2xl: 40px;
    --gmd-space-3xl: 48px;
    --gmd-space-4xl: 64px;
    --gmd-space-section: 80px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  :root {
    /* Typography */
    --gmd-font-size-display: 36px;
    --gmd-font-size-heading: 28px;
    --gmd-font-size-button-large: 20px;
    --gmd-font-size-eyebrow: 18px;
    --gmd-font-size-body: 16px;
    --gmd-font-size-button: 16px;
    --gmd-font-size-navigation: 16px;

    /* Page layout */
    --gmd-page-gutter: 12px;
    --gmd-section-padding-y: 64px;
    --gmd-section-padding-x: 20px;
    --gmd-header-padding-bottom: 48px;

    /* Responsive spacing */
    --gmd-space-xl: 28px;
    --gmd-space-2xl: 32px;
    --gmd-space-3xl: 40px;
    --gmd-space-4xl: 48px;
    --gmd-space-section: 64px;

    /* Images */
    --gmd-feature-image-height: 280px;
  }
}

/* Responsive header menu toggle */
@media (max-width: 1024px) {
  .gmd-header-menu .elementor-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    color: var(--gmd-color-black);
    background-color: var(--gmd-color-yellow);
    border: 0;
    
  }

  .gmd-header-menu .elementor-menu-toggle:hover,
  .gmd-header-menu .elementor-menu-toggle:focus,
  .gmd-header-menu .elementor-menu-toggle.elementor-active {
    color: var(--gmd-color-yellow);
    background-color: var(--gmd-color-navy);
  }

  .gmd-header-menu .elementor-menu-toggle:focus-visible {
    outline: 2px solid var(--gmd-color-yellow);
    outline-offset: 3px;
  }
}

/* Tablet and mobile menu panel */
@media (max-width: 1024px) {
  .gmd-header-menu .elementor-nav-menu--dropdown {
    margin-top: 12px !important;
    padding: 8px;
    background-color: var(--gmd-color-yellow);
    border: 0;
    border-radius: 0;
   /*  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);*/
    overflow: hidden;
  }

  /* Menu links */
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item {
    padding: 14px 16px;
    color: var(--gmd-color-black);
    background-color: transparent;
    border: 0;
    border-radius: 8px;
    font-family: var(--gmd-font-primary);
    font-size: var(--gmd-font-size-navigation);
    font-weight: var(--gmd-font-weight-medium);
    line-height: var(--gmd-line-height-body);
    letter-spacing: var(--gmd-letter-spacing-navigation);
  }

  /* Hover, focus, active and expanded parent */
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item:hover,
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item:focus,
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item.highlighted,
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .current-menu-item > .elementor-item {
    color: var(--gmd-color-yellow);
    background-color: var(--gmd-color-navy);
  }

  /* Remove the desktop pointer inside the collapsed menu */
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item::before,
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .elementor-item::after {
    display: none !important;
  }

  /* Nested dropdown items */
  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .sub-menu {
    margin: 0;
    padding: 4px 0 4px 16px;
    background: transparent;
  }

  .gmd-header-menu
  .elementor-nav-menu--dropdown
  .sub-menu
  .elementor-sub-item {
    padding: 12px 16px;
  }
}

.gmd-service-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap:
    var(--gmd-space-2xl)
    var(--gmd-space-xl);
}

.gmd-service-card {
  box-sizing: border-box;
  flex: 0 0 336px;
  width: 336px;
  min-height: 119px;
  padding: var(--gmd-space-xl);
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: var(--gmd-radius-card);
  box-shadow:
    0 4px 8px rgba(0, 0, 0, 0.02),
    0 12px 32px rgba(0, 0, 0, 0.04);
  overflow: hidden;
}

@media (max-width: 1024px) {
  .gmd-service-intro {
    flex-direction: column;
  }

  .gmd-service-intro > .e-con {
    width: 100%;
  }

  .gmd-service-card {
    flex: 0 1 calc(50% - 16px);
    width: auto;
  }
}

@media (max-width: 767px) {
  .gmd-service-card {
    flex-basis: 100%;
    width: 100%;
    min-height: 0;
  }

  .gmd-service-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .gmd-service-actions > *,
  .gmd-service-actions .elementor-button,
  .gmd-service-hotline {
    width: 100%;
  }

  .gmd-service-hotline {
    white-space: normal;
    text-align: center;
    flex-wrap: wrap;
  }
}
/* Clickable service-centre cards */
.gmd-service-card {
  position: relative;
  color: inherit;
  text-decoration: none !important;
  cursor: pointer;
  transition:
    transform 250ms ease,
    border-color 250ms ease,
    box-shadow 250ms ease;
}

.gmd-service-card img,
.gmd-service-card svg {
  transition: transform 250ms ease;
}

/* Hover and keyboard focus */
.gmd-service-card:hover,
.gmd-service-card:focus-visible {
  transform: translateY(-6px);
  border-color: var(--gmd-color-yellow);
  box-shadow:
    0 8px 16px rgba(0, 0, 0, 0.06),
    0 20px 44px rgba(0, 0, 0, 0.12);
  outline: none;
}

.gmd-service-card:hover img,
.gmd-service-card:hover svg,
.gmd-service-card:focus-visible img,
.gmd-service-card:focus-visible svg {
  transform: translateY(-3px) scale(1.04);
}

/* Visible keyboard focus ring */
.gmd-service-card:focus-visible {
  box-shadow:
    0 0 0 3px var(--gmd-color-yellow),
    0 0 0 6px var(--gmd-color-navy),
    0 20px 44px rgba(0, 0, 0, 0.12);
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  .gmd-service-card,
  .gmd-service-card img,
  .gmd-service-card svg {
    transition: none;
  }

  .gmd-service-card:hover,
  .gmd-service-card:focus-visible {
    transform: none;
  }
}
/* Preserve card appearance when the container is an anchor */
.gmd-service-grid > a.gmd-service-card,
.gmd-service-grid > a.gmd-service-card:link,
.gmd-service-grid > a.gmd-service-card:visited {
  display: flex;
  color: inherit;
  text-decoration: none !important;
  box-shadow:
    0 4px 8px rgba(0, 0, 0, 0.02),
    0 12px 32px rgba(0, 0, 0, 0.04) !important;
}

/* Preserve the stronger interactive shadow */
.gmd-service-grid > a.gmd-service-card:hover,
.gmd-service-grid > a.gmd-service-card:focus-visible {
  transform: translateY(-6px);
  border-color: var(--gmd-color-yellow);
  box-shadow:
    0 8px 16px rgba(0, 0, 0, 0.06),
    0 20px 44px rgba(0, 0, 0, 0.12) !important;
}

.gmd-technician-card {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-top: 4px solid var(--gmd-color-yellow);
  border-radius: var(--gmd-radius-card);
  box-shadow:
    0 4px 8px rgba(0, 0, 0, 0.03),
    0 12px 28px rgba(0, 0, 0, 0.06);
}

.gmd-technician-phone, .gmd-team-phone{
  text-decoration: none;
}

.gmd-technician-phone a, .gmd-team-phone a, .gmd-team-email a {
    transition:
    color 200ms ease,
    text-decoration-color 200ms ease;
}

.gmd-technician-phone a:hover,
.gmd-technician-phone a:focus-visible,
.gmd-team-phone a:hover,
.gmd-team-phone a:focus-visible,
.gmd-team-email a:hover,
.gmd-team-email a:focus-visible {
  text-decoration: underline;
  text-decoration-color: var(--gmd-color-yellow);
  text-decoration-thickness: 3px;
  text-underline-offset: 4px;
}

.gmd-technician-phone a:focus-visible,
.gmd-team-phone a:focus-visible,
.gmd-team-email a:focus-visible {
  outline: 2px solid var(--gmd-color-yellow);
  outline-offset: 3px;
}


.gmd-admin-card {
  box-sizing: border-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: var(--gmd-radius-card);
  box-shadow:
    0 4px 8px rgba(0, 0, 0, 0.02),
    0 12px 32px rgba(0, 0, 0, 0.04);
  overflow: hidden;
}

.tech-card-phone-row{
    flex-direction: row !important;
}
.tech-card-phone-row {
    padding: 0 !important;
}
.tech-card-territory p, .tech-card-title p, .tech-card-phone-row span
{
    font-family: "Special Gothic", Sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.45em !important;
    color: var(--e-global-color-39c3aeb) !important;
}

.gmd-technician-card{background-color:#ffffff}



.standard_buttons a:hover, .gform_button:hover {
    background-color:var(--gmd-color-yellow) !important;;
    color:var(--gmd-color-black) !important;
}

.standard_buttons a:hover svg {
    fill: var(--gmd-color-black);
}

.gform_button{
    background-color:var(--gmd-color-yellow);
    border:3px solid black;
    color: var(--gmd-color-black);
    border-radius: var(--gmd-radius-pill);
    padding-left: var(--gmd-space-xl);
    padding-right: var(--gmd-space-xl);
    padding-top: var(--gmd-space-sm);
    padding-bottom: var(--gmd-space-sm);
    
}


.gform_fields input[type="text"], .gform_fields input[type="email"] {
    
    border-radius: var(--gmd-radius-card);
    border: 3px solid black;
}

.gfield_label {
    font-weight: var(--gmd-font-weight-medium) !important;
    font-size: var(--gmd-font-size-body);
}


#gform_1{
    background-color: var(--gmd-color-sand) !important;
    padding: var(--gmd-space-lg);
    border-radius: var(--gmd-radius-card);
    
}
textarea {
    border-radius: var(--gmd-radius-card);
    border: 3px solid black;
}

.gfield_required {
    color: var(--gmd-color-navy) !important;
    
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Special Gothic';
	font-display: auto;
	src: url('https://gmd.co.nz/wp-content/uploads/2026/08/SpecialGothic-VariableFont_wdthwght.ttf') format('truetype');
}
/* End Custom Fonts CSS */