body.site-scale-80 {
  font-size: 1.04rem;
}

body.site-scale-80 .container {
  width: min(92%, 1320px);
}

body.site-scale-80 img {
  max-width: 100%;
  height: auto;
}

@media (min-width: 769px) {
  body.site-scale-80 {
    font-size: 1.15rem;
  }
}

.site-utility-nav {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: flex;
  justify-content: center;
  padding: 14px 16px 0;
}

.site-utility-nav__inner {
  width: min(1120px, 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  border-radius: 20px;
  background: rgba(10, 25, 50, 0.92);
  color: #f8fbff;
  box-shadow: 0 18px 50px rgba(10, 25, 50, 0.16);
  backdrop-filter: blur(12px);
}

.site-utility-nav__brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.site-utility-nav__logo {
  width: 52px;
  height: 52px;
  object-fit: contain;
  border-radius: 14px;
  background: #ffffff;
  padding: 6px;
  box-shadow: 0 10px 24px rgba(255, 255, 255, 0.08);
}

.site-utility-nav__dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff8a1e, #3bb7ff);
  box-shadow: 0 0 0 5px rgba(255, 138, 30, 0.16);
}

.site-utility-nav__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.site-utility-nav__links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  border-radius: 999px;
  color: inherit;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  transition: background-color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.site-utility-nav__links a:hover,
.site-utility-nav__links a:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.24);
  transform: translateY(-1px);
}

@media (max-width: 768px) {
  .site-utility-nav {
    padding: 10px 12px 0;
  }

  .site-utility-nav__inner {
    align-items: stretch;
    flex-direction: column;
    padding: 14px;
    border-radius: 18px;
  }

  .site-utility-nav__brand {
    justify-content: center;
  }

  .site-utility-nav__links {
    justify-content: stretch;
  }

  .site-utility-nav__links a {
    flex: 1 1 calc(33.333% - 7px);
    min-width: 96px;
    padding-inline: 12px;
  }
}

@media (max-width: 480px) {
  .site-utility-nav__links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .site-utility-nav__links a {
    min-width: 0;
    width: 100%;
  }
}

/* Final compact quick-action placement for pages that load this scale sheet last. */
.top-float,
#backToTopBar {
  display: none !important;
}

.floating-action-bar__item[href="/index.html"],
.floating-action-bar__item[href="/"] {
  display: inline-flex !important;
}

.floating-action-bar {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: max(28px, env(safe-area-inset-bottom)) !important;
  transform: translateX(-50%) !important;
  z-index: 9998 !important;
  width: auto !important;
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 8px !important;
  border-radius: 20px !important;
}

.floating-action-bar__item {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  padding: 0 !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

.floating-action-bar__item::before {
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
}

body.has-floating-bar {
  padding-bottom: 112px !important;
}

@media (max-width: 640px) {
  .floating-action-bar {
    bottom: max(34px, env(safe-area-inset-bottom)) !important;
    gap: 7px !important;
    padding: 7px !important;
    border-radius: 18px !important;
  }

  .floating-action-bar__item {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }

  body.has-floating-bar {
    padding-bottom: 124px !important;
  }
}

body.has-floating-bar {
  padding-right: 0;
  padding-bottom: 0;
}

body.has-floating-bar .float-btn {
  display: none !important;
}

.floating-action-bar {
  position: fixed;
  right: 16px;
  top: 50%;
  left: auto;
  bottom: auto;
  transform: translateY(-50%);
  z-index: 9998;
  width: auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 8px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(15, 23, 42, 0.12);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(14px);
}

.floating-action-bar__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  min-height: 50px;
  padding: 0;
  border-radius: 14px;
  background: #ffffff;
  color: #111111;
  text-decoration: none;
  font-size: 0;
  border: 1px solid rgba(15, 23, 42, 0.08);
  transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
  position: relative;
}

.floating-action-bar__item:hover,
.floating-action-bar__item:focus-visible {
  background: #f5f5f5;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  transform: translateY(-1px);
}

.floating-action-bar__item--button {
  cursor: pointer;
  font: inherit;
  font-size: 0;
}

.floating-action-bar__item::before {
  content: "";
  width: 22px;
  height: 22px;
  display: block;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}

.floating-action-bar__item:nth-child(1)::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l9 8h-3v9h-5v-6H11v6H6v-9H3z' fill='black'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l9 8h-3v9h-5v-6H11v6H6v-9H3z' fill='black'/%3E%3C/svg%3E");
}

.floating-action-bar__item:nth-child(2)::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6.1 2 11.2c0 2.8 1.3 5.2 3.4 6.9L4.4 22l4-1.9c1.1.3 2.3.5 3.6.5 5.5 0 10-4.1 10-9.2S17.5 2 12 2zm1.9 13.1c-.4.1-2.3-1-3.7-2.2-1.2-1.1-2.2-2.7-2.4-3.2-.2-.5 0-.8.2-1l.7-.8c.2-.2.2-.4.3-.6.1-.1 0-.4-.1-.6L8.2 5c-.2-.4-.4-.4-.5-.4h-.5c-.2 0-.6.1-.8.4-.3.3-1 1-1 2.4s1 2.7 1.1 2.9c.1.2 2 3.3 4.9 4.6 2.9 1.3 2.9.9 3.4.9.6 0 1.9-.8 2.2-1.5.3-.8.3-1.4.2-1.5-.1-.1-.3-.2-.6-.4z' fill='black'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6.1 2 11.2c0 2.8 1.3 5.2 3.4 6.9L4.4 22l4-1.9c1.1.3 2.3.5 3.6.5 5.5 0 10-4.1 10-9.2S17.5 2 12 2zm1.9 13.1c-.4.1-2.3-1-3.7-2.2-1.2-1.1-2.2-2.7-2.4-3.2-.2-.5 0-.8.2-1l.7-.8c.2-.2.2-.4.3-.6.1-.1 0-.4-.1-.6L8.2 5c-.2-.4-.4-.4-.5-.4h-.5c-.2 0-.6.1-.8.4-.3.3-1 1-1 2.4s1 2.7 1.1 2.9c.1.2 2 3.3 4.9 4.6 2.9 1.3 2.9.9 3.4.9.6 0 1.9-.8 2.2-1.5.3-.8.3-1.4.2-1.5-.1-.1-.3-.2-.6-.4z' fill='black'/%3E%3C/svg%3E");
}

.floating-action-bar__item:nth-child(3)::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.5 2.9 3.7 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.3 1.2.4 2.5.6 3.9.6.6 0 1 .4 1 1v3.5c0 .6-.4 1-1 1C10.3 22 2 13.7 2 3.5c0-.6.4-1 1-1H6.5c.6 0 1 .4 1 1 0 1.4.2 2.7.6 3.9.1.4 0 .8-.3 1.1l-2.2 2.3z' fill='black'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.5 2.9 3.7 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.3 1.2.4 2.5.6 3.9.6.6 0 1 .4 1 1v3.5c0 .6-.4 1-1 1C10.3 22 2 13.7 2 3.5c0-.6.4-1 1-1H6.5c.6 0 1 .4 1 1 0 1.4.2 2.7.6 3.9.1.4 0 .8-.3 1.1l-2.2 2.3z' fill='black'/%3E%3C/svg%3E");
}

.floating-action-bar__item:nth-child(4)::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5l7 7-1.4 1.4L13 8.8V20h-2V8.8l-4.6 4.6L5 12z' fill='black'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5l7 7-1.4 1.4L13 8.8V20h-2V8.8l-4.6 4.6L5 12z' fill='black'/%3E%3C/svg%3E");
}

@media (max-width: 768px) {
  body.has-floating-bar {
    padding-right: 0;
    padding-bottom: 0;
  }

  .floating-action-bar {
    right: 10px;
    top: auto;
    bottom: 18px;
    transform: none;
    gap: 8px;
    padding: 8px;
    border-radius: 18px;
  }

  .floating-action-bar__item {
    width: 46px;
    height: 46px;
    min-height: 46px;
    border-radius: 14px;
  }
}

@media (max-width: 480px) {
  body.has-floating-bar {
    padding-right: 0;
    padding-bottom: 0;
  }

  .floating-action-bar {
    right: 8px;
    width: auto;
    bottom: max(8px, env(safe-area-inset-bottom));
    gap: 6px;
    padding: 6px;
    border-radius: 16px;
  }

  .floating-action-bar__item {
    width: 42px;
    height: 42px;
    min-height: 42px;
  }
}

/* Must stay last in scale sheet: compact bottom action cluster. */
.floating-action-bar {
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: max(28px, env(safe-area-inset-bottom)) !important;
  transform: translateX(-50%) !important;
  width: auto !important;
  display: flex !important;
  grid-template-columns: none !important;
  gap: 8px !important;
  padding: 8px !important;
  border-radius: 20px !important;
}

.floating-action-bar__item {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  font-size: 0 !important;
  line-height: 0 !important;
  gap: 0 !important;
}

.floating-action-bar__item[href="/index.html"],
.floating-action-bar__item[href="/"] {
  display: inline-flex !important;
}

.top-float,
#backToTopBar {
  display: none !important;
}

body.has-floating-bar {
  padding-bottom: 112px !important;
}

@media (max-width: 640px) {
  .floating-action-bar {
    bottom: max(34px, env(safe-area-inset-bottom)) !important;
  }

  .floating-action-bar__item {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }

  body.has-floating-bar {
    padding-bottom: 124px !important;
  }
}

/* Must stay last: realistic colored quick-action icons. */
.floating-action-bar {
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(15, 23, 42, 0.12) !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.18) !important;
  backdrop-filter: blur(14px) !important;
}

.floating-action-bar__item {
  border-radius: 14px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  border: 1px solid rgba(15, 23, 42, 0.09) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92), 0 8px 18px rgba(15, 23, 42, 0.08) !important;
  position: relative !important;
}

.floating-action-bar__item::before {
  content: "" !important;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  filter: drop-shadow(0 2px 3px rgba(15, 23, 42, 0.22)) !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.floating-action-bar__item[href="/index.html"]::before,
.floating-action-bar__item[href="/"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cdefs%3E%3ClinearGradient id='roof' x1='10' y1='9' x2='54' y2='50' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23ff7a1a'/%3E%3Cstop offset='1' stop-color='%23d83b18'/%3E%3C/linearGradient%3E%3ClinearGradient id='wall' x1='14' y1='28' x2='50' y2='58' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23fff8df'/%3E%3Cstop offset='1' stop-color='%23f7c948'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M8 31.5 32 10l24 21.5-4.5 5L32 19 12.5 36.5z' fill='url(%23roof)'/%3E%3Cpath d='M16 31h40v25a4 4 0 0 1-4 4H20a4 4 0 0 1-4-4z' fill='url(%23wall)'/%3E%3Cpath d='M27 41h10v19H27z' fill='%233b82f6'/%3E%3Cpath d='M43 38h8v8h-8z' fill='%230ea5e9' opacity='.9'/%3E%3Cpath d='M16 31h40v5H16z' fill='%23ffffff' opacity='.32'/%3E%3C/svg%3E") !important;
}

.floating-action-bar__item[href*="wa.me"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='12' y1='8' x2='50' y2='56' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%2348f47a'/%3E%3Cstop offset='1' stop-color='%2300a884'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M32 6C17.6 6 6 16.7 6 30c0 5.4 1.9 10.4 5.2 14.4L8 58l14.2-4.2A28.7 28.7 0 0 0 32 56c14.4 0 26-10.7 26-24S46.4 6 32 6z' fill='url(%23g)'/%3E%3Cpath d='M18.7 21.3c.5-1.1 1.1-1.2 1.8-1.2h1.5c.5 0 1.1.1 1.6 1.3.6 1.5 2.1 5.1 2.3 5.5.2.4.3.9 0 1.4-.3.6-.5.9-1 1.4-.5.5-1 .9-.4 1.8.6 1 2.4 4 5.2 6.5 3.6 3.2 6.6 4.2 7.6 4.7.9.5 1.5.4 2.1-.2.6-.7 2.4-2.8 3-3.8.6-.9 1.3-.8 2.1-.5.9.3 5.4 2.5 6.3 3 .9.4 1.5.7 1.8 1.1.2.4.2 2.4-.6 4.7-.8 2.3-4.7 4.5-6.6 4.7-1.7.2-3.9.3-6.3-.4-1.4-.5-3.3-1.1-5.6-2.2-9.9-4.3-16.4-14.3-16.9-15-.5-.7-4-5.3-4-10.1s2.5-7.2 3.4-8.2z' fill='%23ffffff'/%3E%3C/svg%3E") !important;
}

.floating-action-bar__item[href^="tel:"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='16' y1='8' x2='48' y2='58' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%2338bdf8'/%3E%3Cstop offset='.55' stop-color='%232563eb'/%3E%3Cstop offset='1' stop-color='%231d4ed8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M20.6 9.5 29 18c1.3 1.3 1.6 3.3.7 4.9l-3.5 6.2a37.5 37.5 0 0 0 17.7 17.7l6.2-3.5c1.6-.9 3.6-.6 4.9.7l8.5 8.4c1.5 1.5 1.5 3.9 0 5.4-3.8 3.8-9.5 5.2-14.6 3.5C26.6 53.7 10.3 37.4 2.7 15.1 1 10 2.4 4.3 6.2.5c1.5-1.5 3.9-1.5 5.4 0z' transform='translate(0 1)' fill='url(%23g)'/%3E%3Cpath d='M42 10c7 2.2 12.8 8 15 15' fill='none' stroke='%2393c5fd' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M42 21c3 1.3 5.7 4 7 7' fill='none' stroke='%23dbeafe' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

.floating-action-bar__item[href*="/enquiry.php"]::before,
.floating-action-bar__item--button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='8' y1='8' x2='56' y2='56' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23f472b6'/%3E%3Cstop offset='.55' stop-color='%238b5cf6'/%3E%3Cstop offset='1' stop-color='%232563eb'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M10 12h44a6 6 0 0 1 6 6v25a6 6 0 0 1-6 6H27L13 60l3.5-11H10a6 6 0 0 1-6-6V18a6 6 0 0 1 6-6z' fill='url(%23g)'/%3E%3Ccircle cx='22' cy='31' r='4' fill='%23ffffff'/%3E%3Ccircle cx='32' cy='31' r='4' fill='%23ffffff' opacity='.92'/%3E%3Ccircle cx='42' cy='31' r='4' fill='%23ffffff' opacity='.84'/%3E%3Cpath d='M12 19a4 4 0 0 1 4-4h38a4 4 0 0 1 4 4v4H12z' fill='%23ffffff' opacity='.18'/%3E%3C/svg%3E") !important;
}

html body .floating-action-bar .floating-action-bar__item::before {
  -webkit-mask: none !important;
  mask: none !important;
}
