html{overflow-x:hidden}
.home-service-directory-page{overflow-x:hidden}
.product-search-mode-switch{display:flex;width:260px;height:44px;box-sizing:border-box;align-items:center;margin-top:22px;padding:2px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(0,94,87,.38)}
.product-search-mode-switch button{display:flex;flex:1 1 50%;align-items:center;justify-content:center;height:38px;border:0;border-radius:999px;background:transparent;color:#fff;font-size:15px;font-weight:700;line-height:1;cursor:pointer}
.product-search-mode-switch button.active{background:#fff;color:#087c73}
.product-search-mode-switch button:not(.active):hover{background:rgba(255,255,255,.14)}
.product-ai-search-panel{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px;align-items:end;margin-top:16px}
.product-ai-search-panel[hidden]{display:none!important}
.home-service-quick-search[hidden],.day-care-search[hidden],.support-filters[hidden]{display:none!important}
.product-ai-search-panel label{display:grid;gap:7px;color:#fff;font-weight:700}
.product-ai-search-panel input{width:100%;height:54px;box-sizing:border-box;border:1px solid rgba(255,255,255,.55);border-radius:28px;background:rgba(0,91,84,.58);padding:0 22px;color:#fff;font-size:17px;font-weight:700;outline:none}
.product-ai-search-panel input::placeholder{color:rgba(255,255,255,.78)}
.product-ai-search-panel button{height:54px;border:1px solid #fff;border-radius:28px;background:#fff;color:#087c73;font-size:17px;font-weight:800;cursor:pointer}
.product-ai-search-panel p{grid-column:1/-1;margin:0;color:rgba(255,255,255,.88);font-size:14px}
.community-support-page .support-hero>.product-ai-search-panel{grid-column:1/-1;width:100%;box-sizing:border-box}
.home-service-directory-page .service-search-hero>.product-ai-search-panel{width:100%;max-width:1400px;margin-right:auto;margin-left:auto;box-sizing:border-box}

/* The carer directory still used the older boxed hero. Keep its background full-width,
   while constraining the actual copy, tools and search controls with the same 1400px grid. */
.community-support-page:not([data-support-mode]) main{width:100%!important;max-width:none!important;margin:0!important;padding:0 0 76px!important}
.community-support-page:not([data-support-mode]) .support-hero{width:100%!important;max-width:none!important;margin:0!important;padding:42px max(16px,calc((100% - 1400px)/2)) 36px!important;box-sizing:border-box}
.community-support-page:not([data-support-mode]) .support-search,
.community-support-page:not([data-support-mode]) .support-next-step,
.community-support-page:not([data-support-mode]) .support-sources{width:min(1400px,calc(100% - 32px))!important;margin-right:auto!important;margin-left:auto!important;box-sizing:border-box}
.lazy-guide-stat-host.lazy-guide-only.with-tools {
  gap: 14px;
  padding-inline: 8px !important;
}

.lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge {
  width: 116px;
}

.lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge::before {
  display: block;
  top: 5px;
  left: 14px;
  width: 88px;
  height: 88px;
  background: #fff;
}

.lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge img,
.lazy-guide-stat-host.lazy-guide-only.with-tools .matcher-entry img {
  width: 98px;
  height: 94px;
}

.lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge span {
  width: 116px;
  min-height: 31px;
  padding: 8px 4px 9px;
  background: #087f7d;
  font-size: 15.5px;
  font-family: inherit;
  font-weight: 600;
  line-height: 1.25;
  white-space: normal;
}

@media (min-width: 901px) {
  .home-service-directory-page .service-search-hero {
    min-height: 356px;
    box-sizing: border-box;
  }

  .home-service-directory-page .service-hero-stage {
    position: relative;
    display: block;
    box-sizing: border-box;
    padding-right: 540px;
  }

  .home-service-directory-page .service-overview-stat.lazy-guide-only.with-tools {
    position: absolute;
    right: 0;
    top: 50%;
    width: 520px;
    max-width: 520px;
    justify-content: flex-end !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    transform: translateY(-50%);
  }
}

@media (min-width: 1181px) {
  .day-care-page .day-care-hero-grid { grid-template-columns:minmax(0,1fr) 520px; }
  .day-care-page .day-care-stat.lazy-guide-only.with-tools,
  .community-support-page .carer-overview-stat.lazy-guide-only.with-tools { width:520px; max-width:520px; justify-content:flex-end!important; padding-right:0!important; padding-left:0!important; }
  .community-support-page .support-hero { grid-template-columns:minmax(0,1fr) 520px; }
}

@media (min-width: 901px) and (max-width: 1180px) {
  .home-service-directory-page .service-hero-stage { padding-right: 0; }
  .home-service-directory-page .service-overview-stat.lazy-guide-only.with-tools {
    position: relative;
    right: auto;
    top: auto;
    width: max-content;
    max-width: 100%;
    margin-top: 20px;
    transform: none;
  }
}

@media (max-width: 900px) {
  .product-search-mode-switch{margin-top:18px}
  .product-ai-search-panel{grid-template-columns:1fr}
  .product-ai-search-panel p{grid-column:auto}
  .lazy-guide-stat-host.lazy-guide-only.with-tools {
    gap: 8px;
  }

  .lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge {
    width: 84px;
  }

  .lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge img,
  .lazy-guide-stat-host.lazy-guide-only.with-tools .matcher-entry img {
    width: 76px;
    height: 72px;
  }

  .lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge::before {
    top: 5px;
    left: 8px;
    width: 68px;
    height: 68px;
  }

  .lazy-guide-stat-host.lazy-guide-only.with-tools .lazy-guide-badge span {
    width: 84px;
    min-height: 27px;
    padding: 6px 3px;
    font-size: 11px;
  }
}
