#footWrapper .footer-middle p {
  font-size: 15px;
  color: #aaa !important;
  line-height: 1.5;
}

html,
body {
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Legal modals */
.terms-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  display: none;
  z-index: 9999;
  overflow-y: auto;
  padding: 32px 16px;
}
.terms-modal {
  background: rgba(255, 255, 255, 0.94);
  max-width: 860px;
  margin: 0 auto;
  padding: 28px 26px 32px;
  border-radius: 14px;
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.22);
  color: #222;
  position: relative;
  overflow: hidden;
}
.terms-modal::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.80)), url('../images/NovaMyces/Image Collection/image17.jpg');
  background-size: cover;
  background-position: center;
  opacity: 0.55;
  z-index: 0;
}
.terms-modal > * { position: relative; z-index: 1; }
.terms-modal h1 { font-size: 26px; margin: 0 0 8px; color: #1f7a4d; text-align: center; }
.terms-modal h2 { font-size: 18px; margin: 22px 0 8px; color: #1f7a4d; }
.terms-modal p, .terms-modal li { font-size: 15px; line-height: 1.6; color: #222; }
.terms-modal ul { padding-left: 18px; margin: 6px 0 14px; }
.terms-meta { color: #666; font-size: 14px; margin-bottom: 10px; }
.terms-modal-header { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.terms-close {  border: none; font-size: 22px; cursor: pointer; line-height: 1; color: #444; }
.terms-close:hover { color: #000; }
body.terms-open { overflow: hidden; }

/* Footer alignment */
.footer-bottom .row { align-items: center; }
.footer-bottom .copyrights { align-items: center; }
.footer-bottom .footer-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
  flex-wrap: wrap;
  width: 100%;
}
.footer-bottom .meta-right { display: inline-flex; align-items: center; gap: 8px; color: #aaa; }
.footer-bottom .meta-right .sep { color: #666; }
.footer-bottom .social-list { margin-bottom: 0; display: inline-flex; align-items: center; gap: 10px; }
.footer-bottom .social-list li { margin: 0; padding: 0; line-height: 1; }

/* Shared top-bar/email display rules */
.nm-email-text {
  text-transform: none !important;
}

.main-color-text.uppercase.bolder,
.section .container .main-color-text.uppercase.bolder {
  font-size: 0.70em !important;
  line-height: 1 !important;
  letter-spacing: 0.02em;
}

#about-story .feature-details2 .blade-icon {
  width: 60px !important;
  height: 60px !important;
  max-width: 60px !important;
  max-height: 60px !important;
  display: block !important;
  margin: 0 auto 10px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

#about-foundations .col-md-6.t-center.zindx-0 .heading-desc {
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-style: italic !important;
  max-width: 380px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

@media (min-width: 992px) {
  #nova-products-detail .row {
    display: flex !important;
    align-items: center !important;
  }

  #nova-products-detail .col-md-4.t-center {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding-top: 0 !important;
  }

  #nova-products-detail .col-md-4.t-center > img {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  #about-foundations .blade-icon {
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}

/* Shared typography tightening across NovaMyces pages */
.section .container p,
.section .container li,
.heading-desc,
.sub-heading,
.feature-details2 p,
.icon-sm-desc p,
.contact-cards p,
.timeline-box p {
  line-height: 1.2 !important;
}

@media (max-width: 767px) {
  .blade-icon {
    width: 44px !important;
    height: 40px !important;
    max-width: 44px !important;
    max-height: 40px !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .heading.full-heading {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .heading.full-heading h3.inner-head {
    font-size: 22px !important;
    line-height: 1.12 !important;
  }

  .heading.full-heading h5.section-tagline {
    font-size: 12px !important;
    line-height: 1.2 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .main-heading h3,
  .main-heading .sub-title {
    line-height: 1.12 !important;
  }

  .main-heading h3 {
    font-size: 26px !important;
  }

  .main-heading .sub-title {
    font-size: 22px !important;
  }

  .section .heading.full-heading {
    margin-bottom: 8px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    position: relative;
    z-index: 2;
  }

  .section .heading.full-heading h3.inner-head {
    font-size: 24px !important;
    line-height: 1.08 !important;
    margin-top: 10px !important;
    margin-bottom: 2px !important;
  }

  .section .heading.full-heading .section-tagline {
    font-size: 14px !important;
    line-height: 1.1 !important;
    padding: 4px 9px !important;
    margin-top: 0 !important;
  }

  .section .heading.main-heading {
    margin-top: 36px !important;
    margin-bottom: 8px !important;
    position: relative;
    z-index: 1;
  }

  .section .heading.main-heading.centered {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .section .heading-separator {
    margin-bottom: 10px !important;
    width: 62% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .section .container p.heading-desc {
    padding-left: 14px !important;
    padding-right: 14px !important;
    line-height: 1.2 !important;
  }

  .section .container p,
  .section .container li,
  .heading-desc,
  .sub-heading,
  .feature-details2 p,
  .icon-sm-desc p,
  .contact-cards p,
  .timeline-box p {
    line-height: 1.2 !important;
  }

  .section .container p,
  .section .container li,
  .heading-desc,
  .sub-heading,
  .feature-details2 p,
  .icon-sm-desc p,
  .contact-cards p,
  .timeline-box p {
    font-size: 18px !important;
  }

  .lg-banner,
  .lg-banner .kenburns-bg {
    min-height: 0 !important;
  }

  .lg-banner .banner-content {
    height: auto !important;
    min-height: 360px !important;
    padding: 16px 0 20px !important;
  }

  .lg-banner .banner-slick {
    padding-left: 10px !important;
    padding-right: 10px !important;
    overflow: hidden !important;
  }

  .lg-banner .banner-slick .slick-list {
    overflow: hidden !important;
  }

  .lg-banner .banner-slick .slick-track {
    display: block !important;
  }

  .lg-banner .banner-slick h1 {
    font-size: 25px !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    padding: 2px 0 !important;
  }

  .lg-banner .banner-slick .slick-slide {
    min-height: 132px !important;
    padding: 10px 0 !important;
    height: auto !important;
  }

  .lg-banner .banner-slick .slick-slide {
    width: 100% !important;
    float: none !important;
  }

  .lg-banner .banner-slick .slick-slide h1 {
    max-width: 88% !important;
  }

  .lg-banner .section-spacer-50 {
    height: 12px !important;
  }

  .lg-banner p.font-30 {
    font-size: 20px !important;
    line-height: 1.25 !important;
    max-width: 88% !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .video-hero p.font-30 {
    font-size: 20px !important;
    line-height: 1.45 !important;
    max-width: 82% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .lg-banner.video-hero .banner-content {
    min-height: 300px !important;
    padding: 18px 0 16px !important;
  }

  .lg-banner.video-hero .video-bg video {
    object-position: 62% 28% !important;
  }

  .lg-banner .custom-hr {
    width: 56% !important;
  }

  h2.cta_heading_15_lh15,
  .banner-bg .cta_heading_15_lh15 {
    font-size: 16px !important;
    line-height: 1.2 !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    margin: 0 !important;
  }

  .banner-bg .t-center {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .banner-bg .cta_btn,
  .padding-vertical-10.banner-bg {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .banner-bg .cta-icon.md-icon {
    width: auto !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }

  .banner-bg .cta-icon .shape {
    font-size: 12px !important;
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
  }

  .banner-bg .sprite-icon {
    max-height: 34px !important;
  }

  .banner-bg .cta_heading_15_lh15 {
    flex: 1 1 auto !important;
    text-align: center !important;
  }

  .banner-bg .padding-vertical-20 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  #nova-products-detail > .container,
  #nova-products-detail .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  #nova-products-detail .heading.main-heading {
    margin-bottom: 10px !important;
  }

  #nova-products-detail .heading-separator {
    margin-bottom: 10px !important;
  }

  #nova-products-detail .heading.side-head {
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin-bottom: 8px !important;
  }

  #nova-products-detail .heading.side-head .head-8 {
    position: relative;
    padding-left: 12px !important;
    margin-left: 0 !important;
    margin-bottom: 14px !important;
  }

  #nova-products-detail .heading.side-head .head-8:before {
    left: 0 !important;
    width: 6px !important;
    height: 74% !important;
    top: 13% !important;
  }

  #nova-products-detail .heading.side-head h3,
  #nova-products-detail .heading.side-head h4 {
    line-height: 1.02 !important;
  }

  #nova-products-detail .heading.side-head h3 {
    font-size: 20px !important;
    letter-spacing: 0 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  #nova-products-detail .heading.side-head h4 {
    font-size: 18px !important;
    line-height: 1.05 !important;
    margin-top: 4px !important;
  }

  #nova-products-detail .heading-desc {
    margin-bottom: 12px !important;
  }

  #nova-products-detail .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #nova-products-detail .kvs-gap {
    margin-top: 30px !important;
  }

  #nova-products-detail .icon-box-small.padding-vertical-25 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  #nova-products-detail .icon-box-small .icon-sm-img {
    width: 50px !important;
    height: 50px !important;
    margin-right: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #nova-products-detail .icon-box-small .icon-sm-img .blade-icon {
    margin: 0 !important;
  }

  #nova-products-detail .icon-box-small .icon-sm-desc h3 {
    font-size: 16px !important;
    line-height: 1.05 !important;
    margin-bottom: 8px !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  #nova-products-detail .icon-box-small .icon-sm-desc p {
    font-size: 16px !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  #nova-products-detail .left-icons .icon-box-small .icon-sm-img {
    float: left !important;
    margin-left: 0 !important;
    margin-right: 12px !important;
  }

  #nova-products-detail .left-icons .icon-box-small .icon-sm-desc {
    margin-right: 0 !important;
    margin-left: 50px !important;
    text-align: left !important;
  }

  #nova-products-detail .left-icons .icon-box-small .icon-sm-desc h3,
  #nova-products-detail .left-icons .icon-box-small .icon-sm-desc p {
    text-align: left !important;
  }

  #nova-products-detail .col-md-4.left-icons .icon-box-small:last-child,
  #nova-products-detail .col-md-4:not(.left-icons) .icon-box-small:first-child {
    padding-bottom: 4px !important;
    padding-top: 4px !important;
  }

  #nova-products-detail .col-md-4.t-center {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: -4px !important;
    margin-bottom: 2px !important;
  }

  #nova-products-detail .col-md-4.t-center > img {
    display: block !important;
    max-width: 64% !important;
    height: auto !important;
    margin: 0 auto 6px !important;
  }

  #about-foundations > .container,
  #about-foundations .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  #about-foundations .heading.main-heading {
    margin-bottom: 10px !important;
  }

  #about-foundations .heading-separator {
    margin-bottom: 10px !important;
  }

  #about-foundations .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #about-foundations .row > .col-md-3.zindx-1 {
    margin-top: 0 !important;
  }

  #about-foundations .fx[style*="padding-bottom: 80px"],
  #about-foundations .fx[style*="padding-bottom: 20px"] {
    padding-bottom: 8px !important;
  }

  #about-foundations .icons-style-2 {
    margin-bottom: 6px !important;
  }

  #about-foundations .icons-style-2.t-right,
  #about-foundations .icons-style-2:not(.t-right) {
    display: grid !important;
    grid-template-columns: 50px 1fr !important;
    column-gap: 12px !important;
    align-items: start !important;
    text-align: left !important;
  }

  #about-foundations .icons-style-2 .heading {
    font-size: 16px !important;
    line-height: 1.05 !important;
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    text-align: left !important;
  }

  #about-foundations .icons-style-2 p {
    font-size: 18px !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  #about-foundations .blade-icon {
    margin: 0 !important;
  }

  #about-foundations .icons-style-2 .blade-icon {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    justify-self: center !important;
    align-self: start !important;
    margin: 0 !important;
  }

  #about-foundations .icons-style-2 .tri-line {
    display: none !important;
  }

  #about-foundations .icons-style-2 .heading {
    grid-column: 2 !important;
    margin-top: 0 !important;
    margin-bottom: 3px !important;
    max-width: none !important;
  }

  #about-foundations .icons-style-2 p {
    grid-column: 2 !important;
    max-width: none !important;
    margin-bottom: 0 !important;
  }

  #about-foundations .col-md-6.t-center.zindx-0 .heading-desc {
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-style: italic !important;
  }

  #about-foundations .swiss-knife-img {
    width: 62% !important;
    max-width: 250px !important;
    height: auto !important;
    margin: 4px auto 8px !important;
  }

  #about-foundations .col-md-6.t-center.zindx-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }

  #about-foundations .margin-top-15 {
    margin-top: 6px !important;
  }

  #about-story .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  #about-story .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #about-story .feature-img2 {
    padding-top: 0 !important;
    padding-bottom: 6px !important;
  }

  #about-story .feature-details2 {
    padding-top: 0 !important;
    padding-bottom: 2px !important;
  }

  #about-story .feature-details2 .feature-head2 {
    font-size: 16px !important;
    line-height: 1.05 !important;
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }

  #about-story .feature-details2 .blade-icon {
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
    margin: 0 auto 8px !important;
  }

  #about-story .feature-details2 p {
    font-size: 18px !important;
    line-height: 1.2 !important;
    max-width: 290px !important;
    margin: 0 auto 8px !important;
  }

  .top-bar {
    padding: 0;
  }

  .top-bar .container {
    min-height: 78px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .top-bar .f-left {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: minmax(20px, auto);
    column-gap: 14px;
    row-gap: 6px;
    margin: 0;
    min-height: 78px;
    padding: 10px 0;
  }

  .top-bar .f-left li {
    display: flex;
    align-items: center;
    margin: 0;
    min-width: 0;
  }

  .top-bar .f-left li:first-child {
    grid-column: 1 / span 2;
    justify-content: center;
  }

  .top-bar .f-left li a,
  .top-bar .f-left li span {
    display: inline-flex;
    align-items: center;
    font-size: 11px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .top-bar .f-left li i {
    font-size: 15px;
    margin-right: 6px;
  }

  #footWrapper.compact-footer .footer-middle {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  #footWrapper .footer-middle .col-md-4:first-child {
    margin-bottom: 6px !important;
  }

  #footWrapper .footer-middle .padding-vertical-10 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  #footWrapper .footer-middle .col-md-4:first-child img {
    max-height: 76px !important;
    width: auto !important;
    height: auto !important;
  }

  #footWrapper .footer-middle p {
    font-size: 13px !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show {
    margin-top: 4px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    text-align: center !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .contact-widget-plain {
    margin-bottom: 8px !important;
    background-position: 50% 18% !important;
    background-size: 58% auto !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    text-align: center !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .details {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    text-align: center !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .details li {
    font-size: 12px !important;
    line-height: 1.28 !important;
    margin-bottom: 2px !important;
    padding-bottom: 0 !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .details li i {
    font-size: 12px !important;
    margin-right: 8px !important;
    min-width: 12px !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .contact-widget-plain:first-child {
    margin-bottom: 2px !important;
  }

  #footWrapper .footer-middle .minimal-info.mobile-show .contact-widget-plain:last-child li:nth-last-child(-n+2) {
    display: none !important;
  }
}
