/* HuntBee global typography system — loaded last so legacy/Nexx sizes do not win. */

:root {
  --hb-font-sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --hb-font-size-xs: 13px;
  --hb-font-size-sm: 14px;
  --hb-font-size-base: 16px;
  --hb-font-size-lg: 18px;
  --hb-leading-body: 1.68;
}

.hb-theme,
.hb-theme button,
.hb-theme input,
.hb-theme select,
.hb-theme textarea,
.hb-theme .btn,
.hb-theme .form-control {
  font-family: var(--hb-font-sans) !important;
}

.hb-theme {
  font-size: var(--hb-font-size-base);
  line-height: var(--hb-leading-body);
  font-weight: 400;
}

/* Semantic type scale */
.hb-theme h1,
.hb-theme h2,
.hb-theme h3,
.hb-theme h4,
.hb-theme h5,
.hb-theme h6 {
  margin-top: 0;
  color: #111820;
  font-family: var(--hb-font-sans);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -.025em;
}

.hb-theme h1 {
  margin-bottom: 18px;
  font-size: clamp(36px, 4vw, 48px);
}

.hb-theme h2 {
  margin-bottom: 16px;
  font-size: clamp(29px, 3vw, 36px);
}

.hb-theme h3 {
  margin-bottom: 13px;
  font-size: 22px;
}

.hb-theme h4 {
  margin-bottom: 11px;
  font-size: 18px;
}

.hb-theme h5 {
  margin-bottom: 9px;
  font-size: 16px;
}

.hb-theme h6 {
  margin-bottom: 8px;
  font-size: 14px;
}

.hb-theme p {
  margin: 0 0 1em;
  font-size: 16px;
  line-height: inherit;
}

.hb-theme ul,
.hb-theme ol {
  line-height: 1.65;
}

.hb-theme li + li {
  margin-top: .22em;
}

.hb-theme strong,
.hb-theme b {
  font-weight: 700;
}

.hb-theme em,
.hb-theme i:not([class*="fa-"]) {
  font-style: italic;
}

.hb-theme small,
.hb-theme .small {
  font-size: 14px;
  line-height: 1.55;
}

.hb-theme blockquote {
  margin: 22px 0;
  padding: 15px 18px;
  border: 0;
  border-left: 4px solid #f6b51b;
  border-radius: 0 8px 8px 0;
  background: #faf8f3;
  color: #3f4a54;
  font-size: 17px;
  line-height: 1.65;
}

.hb-theme blockquote p:last-child {
  margin-bottom: 0;
}

.hb-theme cite {
  color: #6c7680;
  font-size: 13px;
  font-style: normal;
}

.hb-theme code,
.hb-theme kbd,
.hb-theme samp,
.hb-theme pre {
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
}

.hb-theme code {
  padding: 2px 5px;
  border-radius: 4px;
  background: #f1eee7;
  color: #8a4f00;
  font-size: .88em;
}

.hb-theme pre {
  margin: 18px 0;
  padding: 16px 18px;
  overflow: auto;
  border: 1px solid #dedad1;
  border-radius: 8px;
  background: #111820;
  color: #eef2f5;
  font-size: 13px;
  line-height: 1.6;
}

.hb-theme table {
  font-size: 14.5px;
  line-height: 1.55;
}

.hb-theme th {
  font-weight: 700;
}

.hb-theme label {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

.hb-theme .help-block,
.hb-theme .text-muted {
  color: #78828b;
  font-size: 13px;
  line-height: 1.55;
}

.hb-theme input,
.hb-theme select,
.hb-theme textarea,
.hb-theme button {
  font-family: inherit;
}

/* Header */
.hb-theme #top.hb-utility-bar .btn-link,
.hb-theme #top.hb-utility-bar .hb-utility-link {
  font-size: 13px;
}

.hb-theme .hb-main-nav-list > li > a {
  font-size: 14px;
}

.hb-theme .hb-site-header #search .form-control,
.hb-theme #search.hb-search-control .form-control {
  font-size: 14px !important;
}

.hb-theme .hb-mini-cart #cart > .btn,
.hb-theme .hb-mini-cart #cart > button,
.hb-theme .hb-mini-cart #cart .cartToggle {
  font-size: 13px !important;
}

.hb-theme .hb-mega-heading,
.hb-theme .hb-services-menu strong {
  font-size: 14px;
}

.hb-theme .hb-mega-column li a,
.hb-theme .hb-main-nav .hb-mega-links li a,
.hb-theme .hb-main-nav .hb-mega-direct,
.hb-theme .hb-main-nav .hb-mega-all,
.hb-theme .hb-services-menu span {
  font-size: 13px !important;
}

/* Generic content */
.hb-theme .breadcrumb,
.hb-theme .hb-breadcrumb,
.hb-theme .hb-product-breadcrumb {
  font-size: 13px;
}

.hb-theme .hb-eyebrow,
.hb-theme .hb-category-eyebrow,
.hb-theme .hb-section-kicker,
.hb-theme .hb-product-kicker {
  font-size: 12px;
}

/* Category/catalogue */
.hb-theme .hb-category-description {
  font-size: 16px;
  line-height: 1.75;
}

.hb-theme .hb-section-heading-row h2 {
  font-size: 20px;
}

.hb-theme .hb-category-chip {
  font-size: 13.5px;
}

.hb-theme .hb-sidebar-card-heading > span {
  font-size: 12px;
}

.hb-theme .hb-sidebar-card-heading > strong {
  font-size: 14px;
}

.hb-theme .hb-sidebar-link {
  font-size: 13.5px;
}

.hb-theme .hb-sidebar-child {
  font-size: 13px;
}

.hb-theme .hb-filter-group-title {
  font-size: 13.5px;
}

.hb-theme .hb-filter-option {
  font-size: 13px;
}

.hb-theme .hb-filter-button {
  font-size: 13px;
}

.hb-theme .hb-catalog-results,
.hb-theme .hb-catalog-select label {
  font-size: 12.5px;
}

.hb-theme .hb-catalog-select .form-control {
  font-size: 13.5px;
}

.hb-theme .hb-product-type {
  font-size: 12px;
}

.hb-theme .hb-product-card h3 {
  font-size: 18px;
  line-height: 1.35;
}

.hb-theme .hb-product-description {
  font-size: 14.5px;
  line-height: 1.6;
}

.hb-theme .hb-product-rating {
  font-size: 12px;
}

.hb-theme .hb-product-price {
  font-size: 14px;
}

.hb-theme .hb-product-price strong {
  font-size: 16px;
}

.hb-theme .hb-product-details {
  font-size: 13px;
}

/* Product page */
.hb-theme .hb-product-purchase h1 {
  font-size: clamp(34px, 3vw, 42px);
}

.hb-theme .hb-product-rating-row {
  font-size: 13px;
}

.hb-theme .hb-product-meta-item span {
  font-size: 12px;
}

.hb-theme .hb-product-meta-item strong,
.hb-theme .hb-product-meta-item a {
  font-size: 13.5px;
}

.hb-theme .hb-product-purchase #product .control-label {
  font-size: 13.5px;
}

.hb-theme .hb-product-purchase #product .form-control,
.hb-theme .hb-product-purchase .radio label,
.hb-theme .hb-product-purchase .checkbox label {
  font-size: 14px;
}

.hb-theme .hb-product-purchase .text-danger {
  font-size: 13px;
}

.hb-theme .hb-product-add-cart {
  font-size: 14.5px !important;
}

.hb-theme .hb-product-secondary-action {
  font-size: 13px;
}

.hb-theme .hb-product-assurance-item,
.hb-theme .hb-product-assurance-item strong {
  font-size: 12.5px;
}

.hb-theme .hb-product-section-nav a {
  font-size: 13.5px;
}

.hb-theme .hb-product-section-heading {
  font-size: 25px;
}

.hb-theme .hb-product-description-content {
  font-size: 15px;
  line-height: 1.75;
}

.hb-theme .hb-product-description-content h2 {
  font-size: 26px;
}

.hb-theme .hb-product-description-content h3 {
  font-size: 20px;
}

.hb-theme .hb-product-description-content h4 {
  font-size: 17px;
}

.hb-theme .hb-product-spec-table > thead > tr > td,
.hb-theme .hb-product-spec-table > tbody > tr > td {
  font-size: 13px;
  line-height: 1.55;
}

.hb-theme .hb-review-form,
.hb-theme .hb-review-form .form-control,
.hb-theme .hb-review-form .control-label,
.hb-theme .hb-review-form .help-block {
  font-size: 14px;
}

.hb-theme .hb-review-form h3 {
  font-size: 21px;
}

.hb-theme .hb-specification-toggle,
.hb-theme .hb-review-toggle {
  font-size: 13.5px;
}

.hb-theme .hb-review-card-header strong {
  font-size: 15px;
}

.hb-theme .hb-review-card-header span,
.hb-theme .hb-review-results {
  font-size: 13px;
}

.hb-theme .hb-review-card-rating {
  font-size: 14px;
}

.hb-theme .hb-review-card-text,
.hb-theme .hb-review-empty,
.hb-theme #product-reviews #review > table td {
  font-size: 15px;
  line-height: 1.7;
}

.hb-theme .hb-related-heading {
  font-size: 24px;
}

.hb-theme .hb-related-card h3 {
  font-size: 17px;
}

.hb-theme .hb-related-description {
  font-size: 13px;
  line-height: 1.55;
}

.hb-theme .hb-related-price {
  font-size: 14px;
}

.hb-theme .hb-related-link,
.hb-theme .hb-product-tags {
  font-size: 13px;
}

/* Footer */
.hb-theme .hb-footer-lead {
  font-size: 14px;
  line-height: 1.65;
}

.hb-theme .hb-footer-proof,
.hb-theme .hb-footer-action {
  font-size: 12.5px;
}

.hb-theme .hb-footer-column h2 {
  font-size: 13.5px;
}

.hb-theme .hb-footer-column li a {
  font-size: 12.5px;
  line-height: 1.5;
}

.hb-theme .hb-footer-secondary-links a {
  font-size: 12px;
}

.hb-theme .hb-bottom-footer .copyright,
.hb-theme .hb-bottom-footer .copyright p {
  font-size: 12px;
}

/* Keep deliberately small utility labels small, but readable. */
.hb-theme .hb-footer-social-label,
.hb-theme .hb-wordmark small,
.hb-theme .hb-footer-wordmark small {
  font-family: var(--hb-font-sans) !important;
}

@media (max-width: 767px) {
  .hb-theme {
    font-size: 15px;
  }

  .hb-theme h1 {
    font-size: 32px;
  }

  .hb-theme h2 {
    font-size: 27px;
  }

  .hb-theme h3 {
    font-size: 21px;
  }

  .hb-theme h4 {
    font-size: 18px;
  }

  .hb-theme .hb-main-nav-list > li > a {
    font-size: 13px;
  }

  .hb-theme .hb-product-purchase h1 {
    font-size: 28px;
  }

  .hb-theme .hb-product-description-content {
    font-size: 15px;
  }

  .hb-theme .hb-product-section-heading,
  .hb-theme .hb-related-heading {
    font-size: 21px;
  }
}

/* Readability pass: page-family component overrides */

/* Header / mega menu / cart drawer */
.hb-theme .hb-cart-drawer-title small,
.hb-theme .hb-cart-item-options span,
.hb-theme .hb-cart-empty > span:last-child,
.hb-theme .hb-main-nav .hb-mega-kicker,
.hb-theme .hb-main-nav .hb-mega-platform,
.hb-theme .hb-main-nav .hb-mega-view-category,
.hb-theme .hb-main-nav .hb-mega-label {
  font-size: 12px !important;
}

.hb-theme .hb-cart-item-name,
.hb-theme .hb-cart-item-meta,
.hb-theme .hb-cart-total-row,
.hb-theme .hb-main-nav .hb-mega-links > li > a,
.hb-theme .hb-main-nav .hb-mega-all,
.hb-theme .hb-main-nav .hb-mega-direct {
  font-size: 13px !important;
}

.hb-theme .hb-main-nav .hb-mega-heading {
  font-size: 14px !important;
}

/* Home */
.hb-theme .hb-home-kicker,
.hb-theme .hb-home-panel-label {
  font-size: 12px;
}

.hb-theme .hb-home-text-link,
.hb-theme .hb-home-panel-row,
.hb-theme .hb-home-suite-link,
.hb-theme .hb-home-testimonial-card strong,
.hb-theme .hb-home-update-main strong {
  font-size: 13px;
}

.hb-theme .hb-home-credibility-item strong,
.hb-theme .hb-home-access-copy strong,
.hb-theme .hb-home-need-copy strong {
  font-size: 14px;
}

.hb-theme .hb-home-credibility-item div > span,
.hb-theme .hb-home-access-copy small,
.hb-theme .hb-home-need-copy small,
.hb-theme .hb-home-product-price span,
.hb-theme .hb-home-proof-card span,
.hb-theme .hb-home-update-main small,
.hb-theme .hb-home-update-meta,
.hb-theme .hb-home-review-link {
  font-size: 12.5px;
}

.hb-theme .hb-home-product-body > p,
.hb-theme .hb-home-suite-card > small,
.hb-theme .hb-home-service-card p,
.hb-theme .hb-home-testimonial-card p {
  font-size: 14px;
}

/* Login, register and account */
.hb-theme .hb-login-eyebrow,
.hb-theme .hb-account-tools-kicker {
  font-size: 12px;
}

.hb-theme .hb-login-intro p,
.hb-theme .hb-register-card > p,
.hb-theme .hb-register-intro > p,
.hb-theme .hb-account-tools-intro p {
  font-size: 14px;
}

.hb-theme .hb-login-form .control-label,
.hb-theme .hb-register-form .form-group > label.control-label,
.hb-theme .hb-register-benefits strong,
.hb-theme .hb-register-side-benefits strong,
.hb-theme .hb-account-tool-link-label {
  font-size: 13px;
}

.hb-theme .hb-login-form .form-control,
.hb-theme .hb-register-form .form-control {
  font-size: 14px;
}

.hb-theme .hb-login-forgotten,
.hb-theme .hb-login-security-note,
.hb-theme .hb-register-benefits small,
.hb-theme .hb-register-note,
.hb-theme .hb-register-login-note,
.hb-theme .hb-register-section-copy small,
.hb-theme .hb-register-form .text-danger,
.hb-theme .hb-register-form .checkbox label,
.hb-theme .hb-register-side-card > p,
.hb-theme .hb-register-side-benefits small,
.hb-theme .hb-register-side-note,
.hb-theme .hb-account-tool-card-title p {
  font-size: 12px;
}

.hb-theme .hb-register-agree {
  font-size: 13px;
}

/* Cart page */
.hb-theme .hb-cart-summary-kicker,
.hb-theme .hb-cart-count-badge,
.hb-theme .hb-cart-product-type,
.hb-theme .hb-cart-price-block > span {
  font-size: 12px;
}

.hb-theme .hb-cart-page-head p,
.hb-theme .hb-cart-continue-link,
.hb-theme .hb-cart-product-model,
.hb-theme .hb-cart-product-note,
.hb-theme .hb-cart-summary-assurance > div,
.hb-theme .hb-cart-section-heading p {
  font-size: 12.5px;
}

.hb-theme .hb-cart-quantity-control .form-control,
.hb-theme .hb-cart-quantity-static,
.hb-theme .hb-cart-summary-row,
.hb-theme .hb-cart-tools-accordion .panel-title,
.hb-theme .hb-cart-tools-accordion .panel-body,
.hb-theme .hb-cart-tools-accordion .form-control,
.hb-theme .hb-cart-tools-accordion .control-label {
  font-size: 13px;
}

/* Product resources / marketplace / license modal */
.hb-theme .hb-product-marketplace {
  font-size: 12.5px;
}

.hb-theme .hb-product-marketplace strong {
  font-size: 13px;
}

.hb-theme .hb-product-demo-button {
  font-size: 13px !important;
}

.hb-theme .hb-product-release-notes .table > thead > tr > td,
.hb-theme .hb-product-release-notes .table > tbody > tr > td {
  font-size: 13px;
}

.hb-theme .hb-license-support-modal .modal-title {
  font-size: 20px;
}

.hb-theme .hb-license-support-modal .modal-header p,
.hb-theme .hb-license-modal-item p {
  font-size: 12.5px;
}

.hb-theme .hb-license-modal-item strong {
  font-size: 13px;
}

.hb-theme .hb-license-modal-note {
  font-size: 12px;
}

/* Footer: keep secondary legal text compact, but not tiny. */
.hb-theme .hb-footer-wordmark small,
.hb-theme .hb-footer-social-label {
  font-size: 12px;
}


/* Semantic heading and paragraph hierarchy audit */

/* Category and catalogue */
.hb-theme .hb-category-intro h1 {
  font-size: clamp(34px, 3vw, 44px);
}

.hb-theme .hb-product-module-head h3 {
  font-size: 24px;
}

/* Product page */
.hb-theme .hb-product-support-callout h3 {
  font-size: 18px;
}

.hb-theme .hb-related-card h3 {
  font-size: 17px;
}

.hb-theme .hb-license-support-modal .modal-header p,
.hb-theme .hb-license-modal-item p {
  font-size: 13.5px;
  line-height: 1.6;
}

/* Login, register and account */
.hb-theme .hb-login-intro h1,
.hb-theme .hb-register-intro h1 {
  font-size: 36px;
}

.hb-theme .hb-login-card-head h2,
.hb-theme .hb-register-card h2 {
  font-size: 22px;
}

.hb-theme .hb-register-side-card h2 {
  font-size: 21px;
}

.hb-theme .hb-account-tools-intro h2 {
  font-size: 26px;
}

.hb-theme .hb-account-tool-card-title h3 {
  font-size: 16px;
}

.hb-theme .hb-login-intro p,
.hb-theme .hb-register-card > p,
.hb-theme .hb-register-intro > p,
.hb-theme .hb-account-tools-intro p {
  font-size: 14.5px;
}

.hb-theme .hb-register-side-card > p,
.hb-theme .hb-account-tool-card-title p {
  font-size: 13px;
}

/* Cart */
.hb-theme .hb-cart-page-head h1 {
  font-size: 30px;
}

.hb-theme .hb-cart-product-heading h2 {
  font-size: 17px;
}

.hb-theme .hb-cart-summary-card h2 {
  font-size: 22px;
}

.hb-theme .hb-cart-section-heading h2 {
  font-size: 20px;
}

.hb-theme .hb-cart-page-head p,
.hb-theme .hb-cart-section-heading p {
  font-size: 13.5px;
  line-height: 1.55;
}

/* Homepage */
.hb-theme .hb-home-section-heading h2,
.hb-theme .hb-home-trust-copy h2,
.hb-theme .hb-home-cta-copy h2 {
  font-size: clamp(30px, 3vw, 40px);
}

.hb-theme .hb-home-section-heading-inline h2 {
  font-size: 22px;
}

.hb-theme .hb-home-product-body h3,
.hb-theme .hb-home-service-card h3 {
  font-size: 17px;
}

.hb-theme .hb-home-section-heading p,
.hb-theme .hb-home-trust-copy > p,
.hb-theme .hb-home-cta-copy > p {
  font-size: 15px;
}

.hb-theme .hb-home-section-heading-inline p {
  font-size: 14px;
}

.hb-theme .hb-home-product-body > p,
.hb-theme .hb-home-service-card p,
.hb-theme .hb-home-testimonial-card p {
  font-size: 14.5px;
}

/* Footer/legal text stays intentionally secondary, but remains readable. */
.hb-theme .hb-bottom-footer .copyright,
.hb-theme .hb-bottom-footer .copyright p {
  font-size: 12px;
}

/* Global compact UI readability floor */
.hb-theme .badge,
.hb-theme .label,
.hb-theme .btn-xs,
.hb-theme .input-group-addon,
.hb-theme .dropdown-menu,
.hb-theme .pagination,
.hb-theme .alert,
.hb-theme .nav-tabs > li > a {
  font-size: 12px;
}

.hb-theme .btn,
.hb-theme button,
.hb-theme input,
.hb-theme select,
.hb-theme textarea {
  font-size: max(12px, 0.8125rem);
}

/* Mobile hierarchy */
@media (max-width: 767px) {
  .hb-theme h1 {
    font-size: 32px;
  }

  .hb-theme h2 {
    font-size: 27px;
  }

  .hb-theme h3 {
    font-size: 20px;
  }

  .hb-theme h4 {
    font-size: 17px;
  }

  .hb-theme p {
    font-size: 15px;
  }

  .hb-theme .hb-login-intro h1,
  .hb-theme .hb-register-intro h1,
  .hb-theme .hb-cart-page-head h1 {
    font-size: 28px;
  }

  .hb-theme .hb-product-purchase h1 {
    font-size: 30px;
  }
}

/* Lighthouse contrast/accessibility refinements */
.hb-theme .hb-home-kicker,
.hb-theme .hb-home-panel-label {
  color: #0b7285;
}

.hb-theme .hb-home-credibility-item div > span,
.hb-theme .hb-home-access-copy small,
.hb-theme .hb-home-need-copy small,
.hb-theme .hb-home-section-heading p,
.hb-theme .hb-home-trust-copy > p,
.hb-theme .hb-home-cta-copy > p,
.hb-theme .hb-home-service-card p,
.hb-theme .hb-home-testimonial-card p,
.hb-theme .hb-home-update-main small,
.hb-theme .hb-home-update-meta {
  color: #59656f;
}

.hb-theme .hb-site-header small {
  color: #59656f;
}
