/* Newpark Dentistry -- hero.css
   Loaded by functions.php. See style.css for the full section index. */
/* =============================================================
   13. GLOBAL HERO SYSTEM
   ============================================================= */

.np-hero {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 90vh !important;
  height: clamp(460px, 90dvh, 760px) !important;
  min-height: 90vh !important;
  min-height: clamp(460px, 90dvh, 760px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

.np-hero > .kt-row-column-wrap {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  width: var(--np-content-width) !important;
  height: 100% !important;
  min-height: 100% !important;
  margin-inline: auto !important;
  padding-top: calc(var(--np-header-height) + 18px) !important;
  padding-bottom: 34px !important;
}

.np-hero > .kt-row-column-wrap > .wp-block-kadence-column,
.np-hero > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
}

.np-hero h1 {
  margin: 0 0 12px !important;
  max-width: 900px;
  font-size: var(--np-hero-title) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  text-wrap: balance;
  color: var(--np-on-dark) !important;
  text-shadow: 0 1px 2px rgba(10, 28, 23, 0.16);
}

.np-hero h2,
.np-hero h3 {
  color: var(--np-on-dark) !important;
  text-shadow: 0 1px 2px rgba(10, 28, 23, 0.16);
}

.np-hero p {
  max-width: 720px;
  margin: 0 0 12px !important;
  font-size: var(--np-lead-size) !important;
  line-height: 1.5 !important;
  color: var(--np-on-dark) !important;
  text-shadow: 0 1px 2px rgba(10, 28, 23, 0.16);
}

.np-hero .wp-block-kadence-advancedbtn,
.np-hero .wp-block-buttons {
  margin-top: clamp(28px, 3.5vw, 40px) !important;
  margin-bottom: clamp(12px, 1.2vw, 20px)!important;
}

.np-hero .kb-button::after,
.np-hero .kt-button::after,
.np-hero .wp-block-button__link::after {
  content: "›";
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1;
}

.np-hero p a[href^="tel:"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 !important;
  color: var(--np-white) !important;
  font-size: clamp(1rem, 0.95rem + 0.3vw, 1.125rem) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  text-shadow: 0 1px 3px rgba(10, 28, 23, 0.4);
}

.np-hero p a[href^="tel:"]:hover {
  color: var(--np-eucalyptus) !important;
}

.np-hero p a[href^="tel:"]::before {
  content: "";
  display: inline-block;
  width: 1.05em;
  height: 1.05em;
  flex: 0 0 auto;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* =============================================================
   14. HOMEPAGE HERO OVERRIDES
   ============================================================= */

.np-hero.home-hero {
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  padding: 0 !important;
}

.home-hero > .kt-row-column-wrap {
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  transform: translateY(calc(-50% + 60px)) !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: clamp(16px, 3vw, 56px) !important;
  padding-right: clamp(24px, 4vw, 40px) !important;
  display: block !important;
}

.home-hero > .kt-row-column-wrap > .wp-block-kadence-column {
  width: min(760px, 92%) !important;
  height: auto !important;
  display: block !important;
}

.home-hero .kt-inside-inner-col {
  width: 100% !important;
  text-align: center !important;
}

.home-hero .home-hero-label {
  display: block;
  margin-bottom: 16px;
  color: var(--np-eucalyptus-strong) !important;
  font-size: 1.0625rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.home-hero h1 {
  font-size: clamp(3.25rem, 2.6rem + 2.6vw, 5rem) !important;
  font-weight: 500 !important;
  line-height: 1.05 !important;
  margin-bottom: 8px !important;
}

.home-hero h1 .accent {
  font-weight: 800 !important;
  font-style: normal !important;
  color: #8fa050 !important;
}

.home-hero h2 {
  font-size: clamp(1.25rem, 1.05rem + 0.8vw, 1.5rem) !important;
  font-weight: 400 !important;
  opacity: 0.9;
  margin-bottom: clamp(32px, 4vw, 48px) !important;
}

.home-hero {
  position: relative !important;
}
.home-hero .kb-blocks-bg-video-container {
  transform: scaleX(-1) !important;
}
#bg-row-video-57_5f5a6e-66 {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  transform: translate(-55%, -44%) !important;
}