.gform_title{
	display:none;
}
.gform_description
{
	display:none
}
.gform_required_legend{
	
	display:none;
}
.gform-theme--foundation .gform_fields {
    row-gap: 10px!important;
}
p {
	  font-family: "Open Sans", sans-serif !important;
	  font-size: 15px !important;
	  font-weight: 400 !important;
	  line-height: 27px !important;
	  letter-spacing: 0.15px !important;
}

.elementor-widget-text-editor p {
	  font-family: "Open Sans", sans-serif !important;
	  font-size: 15px !important;
	  font-weight: 400 !important;
	  line-height: 27px !important;
	  letter-spacing: 0.15px !important;
}

.elementor-element-68678b66 p {
	  font-family: "Open Sans", sans-serif !important;
	  font-size: 15px !important;
	  font-weight: 400 !important;
	  line-height: 27px !important;
	  letter-spacing: 0.15px !important;
}.gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform

p {
	  font-family: "Open Sans", sans-serif !important;
	  font-size: 15px !important;
	  font-weight: 400 !important;
	  line-height: 27px !important;
	  letter-spacing: 0.15px !important;
}_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)){
	
	background-color: #fda047!important;
	font-size:18px;
		padding:15px;
}


.elementor-element-68678b66 p {
	  font-family: "Open Sans", sans-serif !important;
	  font-size: 15px !important;
	  font-weight: 400 !important;
	  line-height: 27px !important;
	  letter-spacing: 0.15px !important;
}gform-theme--framework .gfield:where(.gfield--type-multiselect,.gfield--input-type-multiselect) .chosen-container-multi:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-search input[type=text]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-single:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gform-theme-field-control:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework input[type]:where(:not(.gform-text-input-reset):not([type=hidden])):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework select[multiple]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework textarea:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper .button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper button.button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)){
	background-color: #FAFAF9;
    border-color: #E6E6E6;
	
	
}

/* === Pinnacle Audiology Fixes === */

/* Fix logo gray background */
.elementor-element-68fd477f img,
img[src*="Pinnacle-Audiology-TM"] {
  background-color: transparent !important;
  background: transparent !important;
}

/* Fix woman portrait gray box */
img[src*="portrait-woman"] {
  background-color: transparent !important;
  background: transparent !important;
}

/* === Match all headings to logo font (Oswald) === */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title,
.elementor-icon-box-title,
.elementor-icon-box-content h3,
.elementor-headline,
h3.elementor-icon-box-title,
.elementor-widget-icon-box h3.elementor-icon-box-title,
.elementor-icon-list-text,
body h3,
body h4,
.elementor-headline,
.elementor-widget-animated-headline h3,
.elementor-widget-animated-headline .elementor-headline,
.gform_title,
body .elementor-widget h4 {
  font-family: "Oswald", sans-serif !important;
}


/* === Round 2 Fixes === */

/* 1. Remove dead space - reduce hero min-height and align top */
.elementor-element-3e795696 {
  min-height: auto !important;
}
.elementor-element-3e795696 > .elementor-element {
  min-height: auto !important;
}
.elementor-element-610266e {
  justify-content: flex-start !important;
  padding-top: 30px !important;
}

/* 2. Increase sub-headers */
body h3.elementor-headline,
body h3.elementor-icon-box-title,
body .elementor-widget-animated-headline h3,
body .elementor-widget h3 {
  font-size: 32px !important;
}

/* 3. Fix badge/credential box gray backgrounds and remove shadows */
.elementor-element-3eb153a6 img {
  background-color: transparent !important;
  background: transparent !important;
}
.elementor-element-3eb153a6 .e-con {
  box-shadow: none !important;
  background: transparent !important;
}

/* 4. Fix Schedule Your Appointment Today - remove gradient, flat orange, square */
.elementor-element-6cf5e3d0 {
  background: #F7941D !important;
  background-image: none !important;
  border-radius: 0px !important;
}



/* === HIDE UNNECESSARY BUTTONS === */
.elementor-element-491323d0 { display: none !important; }
.elementor-element-76f4fc81 { display: none !important; }

/* === DESKTOP SUB-HEADING SIZES (LARGER) === */
body h3.elementor-heading-title,
body h3.elementor-headline,
body h3.elementor-icon-box-title,
body .elementor-widget-animated-headline h3,
body .elementor-widget h3 {
  font-size: 36px !important;
}
body h4.elementor-heading-title,
body h4 {
  font-size: 28px !important;
}

/* === SERVICE CARD ICONS LARGER === */
.elementor-icon-box-icon .elementor-icon {
  font-size: 50px !important;
  width: 80px !important;
  height: 80px !important;
}
.elementor-icon-box-icon .elementor-icon i,
.elementor-icon-box-icon .elementor-icon svg {
  width: 50px !important;
  height: 50px !important;
}

/* === SERVICE CARD HEADINGS LARGER === */
.elementor-icon-box-title {
  font-size: 28px !important;
}

/* === REDUCE DEAD SPACE (GLOBAL) === */
.elementor-796 > .e-con {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}
.elementor-796 .e-con .e-con {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.elementor-796 > .e-con > .e-con-inner {
  gap: 15px !important;
}

/* =============================== */
/* === MOBILE FIXES (max 767px) === */
/* =============================== */
@media (max-width: 767px) {

  /* === GLOBAL CENTERING === */
  .elementor-796 .e-con,
  .elementor-796 .e-con-inner,
  .elementor-796 .elementor-widget,
  .elementor-796 .elementor-widget-container {
    text-align: center !important;
    align-items: center !important;
  }
  .elementor-796 .elementor-widget-text-editor,
  .elementor-796 .elementor-widget-text-editor p,
  .elementor-796 .elementor-widget-heading {
    text-align: center !important;
  }
  .elementor-796 .elementor-button-wrapper {
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
  }
  .elementor-796 .elementor-icon-box-wrapper {
    text-align: center !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-796 .elementor-icon-box-icon {
    margin: 0 auto 10px auto !important;
  }
  .elementor-796 .elementor-icon-list-items {
    justify-content: center !important;
  }

  /* === STICKY BOTTOM CTA BAR === */
  .elementor-element-2008a60c {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9999 !important;
    background: #fff !important;
    padding: 8px 10px !important;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.15) !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    --flex-direction: row !important;
    --flex-wrap: nowrap !important;
  }
  .elementor-element-2008a60c .elementor-element {
    width: 48% !important;
    max-width: 48% !important;
    flex: 0 0 48% !important;
  }
  .elementor-element-2008a60c .elementor-button {
    width: 100% !important;
    padding: 12px 8px !important;
    font-size: 14px !important;
    text-align: center !important;
    display: block !important;
  }

  /* === FORCE COLUMN LAYOUT ON MOBILE === */
  .elementor-796 .elementor-element.elementor-element-3e795696,
  .elementor-796 .elementor-element.elementor-element-52da5e95,
  .elementor-796 .elementor-element.elementor-element-62721ed1,
  .elementor-796 .elementor-element.elementor-element-75700e24,
  .elementor-796 .elementor-element.elementor-element-7acbae76,
  .elementor-796 .elementor-element.elementor-element-7be85ac9,
  .elementor-796 .elementor-element.elementor-element-6fefbdcc,
  .elementor-796 .elementor-element.elementor-element-666237f7,
  .elementor-796 .elementor-element.elementor-element-4e5f475a,
  .elementor-796 .elementor-element.elementor-element-38dc8e08,
  .elementor-796 .elementor-element.elementor-element-68991792 {
    --flex-direction: column !important;
    --flex-wrap: nowrap !important;
  }

  /* All child containers full width */
  .elementor-796 .e-con > .e-con {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  /* Hero children full width and centered */
  .elementor-796 .elementor-element.elementor-element-610266e,
  .elementor-796 .elementor-element.elementor-element-5136a66 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    padding: 15px 20px !important;
  }

  /* Center the orange heading bubbles */
  body .elementor-796 .elementor-element.elementor-element-559f5fbc,
  body .elementor-796 .elementor-element.elementor-element-5c81b11d,
  body .elementor-796 .elementor-element.elementor-element-2b1219e,
  body .elementor-796 .elementor-element.elementor-element-6311d8ca,
  body .elementor-796 .elementor-element.elementor-element-4a742a78 {
    padding: 12px 20px !important;
    margin: 0 auto 10px auto !important;
    display: inline-block !important;
    width: auto !important;
    max-width: 90% !important;
  }

  /* === BADGE SECTION === */
  .elementor-796 .elementor-element.elementor-element-3eb153a6 {
    --flex-direction: row !important;
    --flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 15px !important;
    padding: 20px 10px !important;
  }
  .elementor-element-3eb153a6 .e-con {
    flex: 0 0 45% !important;
    max-width: 45% !important;
  }
  .elementor-element-3eb153a6 img {
    max-width: 120px !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* === SECTION PADDING === */
  .elementor-796 > .e-con {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .elementor-796 .e-con .e-con {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }

  /* Hero section */
  .elementor-element-3e795696 {
    min-height: auto !important;
    padding: 15px 15px !important;
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    --flex-wrap: nowrap !important;
  }

  /* === HEADINGS - INCREASED SIZES === */
  body h1.elementor-heading-title {
    font-size: 32px !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }
  body h2.elementor-heading-title,
  body h2 {
    font-size: 28px !important;
    line-height: 1.3 !important;
    text-align: center !important;
  }
  body h3.elementor-heading-title,
  body h3.elementor-headline,
  body h3.elementor-icon-box-title,
  body .elementor-widget-animated-headline h3,
  body .elementor-widget h3 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    text-align: center !important;
  }
  body h4.elementor-heading-title,
  body h4 {
    font-size: 22px !important;
    line-height: 1.3 !important;
    text-align: center !important;
  }
  body .elementor-widget-text-editor,
  body .elementor-widget-text-editor p {
    font-size: 20px !important;
    line-height: 1.6 !important;
  }

  /* Orange bubble heading sizes */
  body .elementor-796 .elementor-element.elementor-element-559f5fbc h1 {
    font-size: 26px !important;
  }
  body .elementor-796 .elementor-element.elementor-element-5c81b11d h2,
  body .elementor-796 .elementor-element.elementor-element-2b1219e h3,
  body .elementor-796 .elementor-element.elementor-element-6311d8ca h3,
  body .elementor-796 .elementor-element.elementor-element-4a742a78 h3 {
    font-size: 22px !important;
  }

  /* === ICON BOXES === */
  .elementor-icon-box-title {
    font-size: 22px !important;
    text-align: center !important;
  }
  .elementor-icon-box-description {
    text-align: center !important;
  }
  .elementor-icon-box-wrapper {
    padding: 10px !important;
  }

  /* === GENERAL LAYOUT === */
  .e-con-inner {
    max-width: 100% !important;
  }
  .elementor-element-6cf5e3d0 {
    padding: 12px 15px !important;
    text-align: center !important;
  }
  .elementor-element-6cf5e3d0 h2,
  .elementor-element-6cf5e3d0 h3 {
    font-size: 24px !important;
    text-align: center !important;
  }
  img {
    max-width: 100% !important;
    height: auto !important;
  }
  .elementor-796 .e-con {
    gap: 15px !important;
  }
  body, html {
    overflow-x: hidden !important;
  }
  body {
    padding-bottom: 65px !important;
  }
  body::after {
    content: '';
    display: block;
    height: 65px;
  }
  .elementor-element-635c6ed6 {
    min-height: 300px !important;
  }
  .elementor-widget-wl-customer-veview {
    max-height: 500px !important;
    overflow-y: auto !important;
  }

  /* Center the "Book Your Appointment" button */
  .elementor-796 .elementor-button {
    margin: 0 auto !important;
  }

  /* Center list items with icons */
  .elementor-796 .elementor-icon-list-item {
    justify-content: center !important;
  }

  /* Center images */
  .elementor-796 .elementor-widget-image {
    text-align: center !important;
  }
  .elementor-796 .elementor-widget-image img {
    margin: 0 auto !important;
    display: block !important;
  }

  /* Fix contact form section to stack */
  .elementor-796 .elementor-element.elementor-element-6315110d {
    --flex-direction: column !important;
  }
}

/* === TABLET FIXES === */
@media (min-width: 768px) and (max-width: 1024px) {
  body h1.elementor-heading-title { font-size: 36px !important; }
  body h2.elementor-heading-title { font-size: 32px !important; }
  body h3.elementor-heading-title, body h3.elementor-headline { font-size: 28px !important; }
}


/* === PERFORMANCE OPTIMIZATIONS === */
/* Reduce layout shifts and improve perceived speed */
img {
  content-visibility: auto !important;
}
/* Hardware acceleration for animations */
.elementor-widget-image img,
.elementor-icon-box-icon {
  will-change: auto !important;
  transform: translateZ(0);
}
/* Reduce paint areas */
.elementor-section-wrap,
.e-con {
  contain: layout style;
}
/* Font display optimization */
@font-face {
  font-display: swap !important;
}
/* Disable WooCommerce styles on homepage since no shop functionality */
body.page-id-796 .woocommerce,
body.page-id-796 .wc-block-components-notice-banner {
  display: none !important;
}


/* ============================================= */
/* === BATCH FIXES - MARCH 2026 === */
/* ============================================= */

/* === FIX 1: CENTER ICONS INSIDE CIRCLES === */
.elementor-icon-box-icon .elementor-icon {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  line-height: 1 !important;
}
.elementor-icon-box-icon .elementor-icon i,
.elementor-icon-box-icon .elementor-icon svg {
  margin: auto !important;
  display: block !important;
}

/* === FIX 2: ANIMATED HEADLINE - NO ANIMATION, BIGGER, PROFESSIONAL === */
.elementor-element-5843c37 .elementor-headline {
  font-size: 28px !important;
  font-weight: 600 !important;
  color: #333 !important;
  font-family: 'Oswald', sans-serif !important;
}
/* Hide the typing animation cursor and effects */
.elementor-element-5843c37 .elementor-headline-dynamic-wrapper {
  display: inline !important;
}
.elementor-element-5843c37 .elementor-headline-dynamic-text {
  opacity: 1 !important;
  display: inline !important;
  color: #e8792b !important;
  font-weight: 700 !important;
}
/* Hide the typing cursor bar */
.elementor-element-5843c37 .elementor-headline-dynamic-wrapper::after,
.elementor-element-5843c37 .elementor-headline-typed-cursor {
  display: none !important;
}
/* Make ALL dynamic text items visible (not just the active one) */
.elementor-element-5843c37 .elementor-headline-dynamic-letter,
.elementor-element-5843c37 .elementor-headline-dynamic-text.elementor-headline-text-active {
  opacity: 1 !important;
  visibility: visible !important;
}
/* Stop the animation/rotation */
.elementor-element-5843c37 .elementor-headline-animation-type-typing .elementor-headline-dynamic-wrapper,
.elementor-element-5843c37 .elementor-headline-dynamic-text {
  animation: none !important;
  transition: none !important;
}

/* === FIX 3: NYC SKYLINE - LIGHT ORANGE TINT + GRADIENT BLENDS === */
/* === FIX 4: COVERAGE HEADING - WHITE FONT === */
.elementor-element-635c6ed6 h2,
.elementor-element-635c6ed6 h3,
.elementor-element-635c6ed6 .elementor-heading-title {
  color: #ffffff !important;
  position: relative !important;
  z-index: 3 !important;
  text-shadow: 1px 1px 3px rgba(0,0,0,0.3) !important;
}
.elementor-element-635c6ed6 .elementor-widget-text-editor,
.elementor-element-635c6ed6 .elementor-widget-text-editor p {
  color: #ffffff !important;
  font-weight: 500 !important;
  position: relative !important;
  z-index: 3 !important;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3) !important;
}
.elementor-element-635c6ed6 .elementor-widget {
  position: relative !important;
  z-index: 3 !important;
}
.elementor-element-635c6ed6 .elementor-element[class*="elementor-element-"] {
  position: relative !important;
  z-index: 3 !important;
}
.elementor-element-635c6ed6 > .e-con-inner {
  position: relative !important;
  z-index: 3 !important;
}
/* Remove the old white semi-transparent overlay rule (override it) */

/* === FIX 5: ALL RIGHTS RESERVED FOOTER - SMALLER FONT === */
.elementor-element-a64dd08,
.elementor-element-a64dd08 p,
.elementor-element-a64dd08 .elementor-widget-container {
  font-size: 14px !important;
}

/* === FIX 6: REMOVE GRAY BACKGROUNDS FROM HEADERS SITEWIDE === */
.elementor-page-header,
.elementor-section.elementor-section-boxed,
.e-con,
.elementor-top-section {
  background-color: transparent;
}
/* Ensure page body areas are white, not gray */
body .elementor-section-wrap > .elementor-section,
body .elementor-796 > .e-con:not(.elementor-element-635c6ed6) {
  background-color: #ffffff !important;
}

/* === FIX 7: GLOBAL FONT CONSISTENCY FOR ALL PAGES === */
body h1, body h2, body h3, body h4, body h5, body h6,
body .elementor-heading-title,
body .elementor-widget-heading .elementor-heading-title {
  font-family: 'Oswald', sans-serif !important;
}
body p, body .elementor-widget-text-editor p,
body .elementor-widget-text-editor,
body li, body span:not(.elementor-heading-title):not(.elementor-icon-list-text) {
  font-family: 'Open Sans', sans-serif !important;
}
/* Set consistent heading sizes for ALL pages */
body .elementor-widget-heading h1.elementor-heading-title {
  font-size: 48px !important;
}
body .elementor-widget-heading h2.elementor-heading-title {
  font-size: 40px !important;
}
body .elementor-widget-heading h3.elementor-heading-title {
  font-size: 32px !important;
}
body .elementor-widget-heading h4.elementor-heading-title {
  font-size: 24px !important;
}



/* === MOBILE-SPECIFIC FIXES === */
@media (max-width: 767px) {
  
  /* FIX 3M: Woman portrait circle - prevent cutoff */
  .elementor-element-5136a66,
  .elementor-element-5136a66 .elementor-widget-image,
  .elementor-element-5136a66 .elementor-widget-container,
  .elementor-element-61b994e4,
  .elementor-element-61b994e4 .elementor-widget-container {
    overflow: visible !important;
  }
  .elementor-element-5136a66 img,
  .elementor-element-61b994e4 img {
    max-width: 85% !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
    object-fit: contain !important;
  }
  /* Make sure the hero section doesn't clip the circle */
  .elementor-element-3e795696 {
    overflow: visible !important;
  }
  .elementor-element-3e795696 > .e-con-inner {
    overflow: visible !important;
  }

  /* FIX 9M: Google image too large on mobile */
  .elementor-element-625400b7 img {
    max-width: 70px !important;
    height: auto !important;
  }
  
  /* FIX 2M: Animated headline on mobile */
  .elementor-element-5843c37 .elementor-headline {
    font-size: 22px !important;
  }
  
  /* Footer font on mobile */
  .elementor-element-a64dd08,
  .elementor-element-a64dd08 p {
    font-size: 13px !important;
  }
}



/* ============================================= */
/* === BATCH FIXES ROUND 2 === */
/* ============================================= */

/* === FIX 1B: CENTER ICONS - use margin auto since flex makes them block-level === */
.elementor-icon-box-icon .elementor-icon {
  margin: 0 auto !important;
}
.elementor-icon-box-icon {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* === FIX 2B: KILL ANIMATED HEADLINE COMPLETELY === */
/* Hide the animated headline widget entirely */
.elementor-element-5843c37 {
  display: none !important;
}
/* Create a replacement using the hero text column */
.elementor-element-610266e .elementor-element-559f5fbc + .elementor-element-5843c37 {
  display: none !important;
}
/* Add static replacement text after the Pinnacle Audiology heading */
.elementor-element-559f5fbc .elementor-widget-container::after {
  content: 'Private Practice Audiology · Midtown Manhattan' !important;
  display: block !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: #333333 !important;
  margin-top: 15px !important;
  line-height: 1.3 !important;
}
/* Style "Best Audiologists in NYC" part - can't do partial color with ::after, 
   so make the entire line look professional as-is */

/* ============================================= */
/* === BATCH FIXES ROUND 3 === */
/* ============================================= */

/* === FIX 2C: REPLACE ANIMATED HEADLINE WITH STATIC TEXT === */
/* The ::after on the H1 element inside the Pinnacle Audiology heading */
.elementor-element-559f5fbc .elementor-heading-title::after {
  content: 'Private Practice Audiology · Midtown Manhattan' !important;
  display: block !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: #333333 !important;
  margin-top: 15px !important;
  line-height: 1.4 !important;
  white-space: normal !important;
}
/* Override previous wrong selector */
.elementor-element-559f5fbc .elementor-widget-container::after {
  content: none !important;
  display: none !important;
}



/* ============================================= */
/* === BATCH FIXES ROUND 4 === */
/* ============================================= */

/* === FIX 8B: COPYRIGHT FOOTER - target the H2 specifically === */
.elementor-element-a64dd08 h2.elementor-heading-title,
.elementor-element-a64dd08 .elementor-heading-title {
  font-size: 16px !important;
  font-weight: 400 !important;
  font-family: 'Open Sans', sans-serif !important;
}

/* === FIX 6B: Global heading sizes should NOT affect footer === */
/* Scope the heading sizes to main content only */
.elementor-755 .elementor-widget-heading h2.elementor-heading-title {
  font-size: inherit !important;
}

/* === FIX 7B: Remove light gray backgrounds more aggressively === */
/* Target the badge/credential section specifically */
.elementor-element-3eb153a6,
.elementor-element-3eb153a6 > .e-con-inner {
  background-color: #ffffff !important;
}
/* Any sections with background-color that isn't white or transparent */
body .elementor-section,
body .e-con {
  background-color: transparent;
}
/* Override only the main page sections to be white (not globally transparent) */
.elementor-796 > /* Remove light gray backgrounds sitewide (target the rgb(250,250,249) gray) */
.e-con[style*="background"] {
  /* Don't override inline styles broadly */
}
/* Target Meet Our Team page gray section */
.elementor-757 > .e-con.e-parent {
  background-color: #ffffff !important;
}
/* Remove gray backgrounds on specific pages only */
.elementor-element-3eb153a6,
.elementor-element-75700e24 {
  background-color: #ffffff !important;
}
/* Keep the hero section background */
.elementor-element-3e795696 {
  background-color: transparent !important;
}



/* === FIX 7C: STRONGER GLOBAL FONT OVERRIDE (all pages) === */
/* Override Elementor Kit's .elementor-widget h2/h3/h4 Nunito rule */
body .elementor-widget h1,
body .elementor-widget h2,
body .elementor-widget h3,
body .elementor-widget h4,
body .elementor-widget h5,
body .elementor-widget h6,
.elementor-widget h1,
.elementor-widget h2,
.elementor-widget h3,
.elementor-widget h4,
.elementor-widget h5,
.elementor-widget h6,
h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  font-family: 'Oswald', sans-serif !important;
}

/* === FIX 6C: REMOVE GRAY BACKGROUNDS ON ALL PAGES === */
.e-con {
  background-color: #ffffff !important;
}
.elementor-element-3e795696 {
  background-color: transparent !important;
}
/* Footer bar should keep its color */
.elementor-element-27a96160 {
  background-color: inherit !important;
}


/* ============================================== */
/* ===  ROUND 6 MEGA FIX - MARCH 2026         === */
/* ============================================== */

/* --- FIX A: RESTORE TOP BAR ORANGE GRADIENT --- */
/* The top bar's inner child was getting white - make it transparent */
.elementor-element-1050c191,
.elementor-element-1050c191 > .e-con-inner {
  background-color: transparent !important;
}
.elementor-element-f4b0fa2 {
  background-color: transparent !important;
}
/* Ensure phone number is white and visible on orange */
.elementor-element-2c278db0,
.elementor-element-2c278db0 a,
.elementor-element-5a80a9bf,
.elementor-element-5a80a9bf a {
  color: #ffffff !important;
}

/* --- FIX B: NYC SKYLINE - FULL ORANGE TINT --- */
/* Ensure inner content is above the overlay */
.elementor-element-635c6ed6 > .e-con-inner {
  position: relative !important;
  z-index: 1 !important;
}

/* --- FIX C: WHITE BOX OVER SKYLINE - MAKE TRANSPARENT --- */
.elementor-element-4385ff7a {
  background-color: transparent !important;
}
/* Text inside skyline should be white and visible */
.elementor-element-4385ff7a h2,
.elementor-element-4385ff7a h3,
.elementor-element-4385ff7a p,
.elementor-element-4385ff7a .elementor-heading-title,
.elementor-element-4385ff7a .elementor-widget-text-editor,
.elementor-element-4385ff7a .elementor-widget-text-editor p {
  color: #ffffff !important;
  text-shadow: 1px 1px 4px rgba(0,0,0,0.4) !important;
}

/* --- FIX D: COMPREHENSIVE HEARING SOLUTIONS - TRANSPARENT --- */
.elementor-element-4400ee8a {
  background-color: transparent !important;
}

/* --- FIX E: SERVICE CARD TITLES - BIGGER, SINGLE LINE --- */
.elementor-icon-box-title {
  font-size: 22px !important;
  white-space: nowrap !important;
  line-height: 1.3 !important;
}
/* Hide br tags that force two-line titles */
.elementor-icon-box-title br {
  display: none !important;
}
/* Target the span inside titles too */
.elementor-icon-box-title span {
  font-size: 22px !important;
  white-space: nowrap !important;
}
.elementor-icon-box-content .elementor-icon-box-title {
  margin-bottom: 8px !important;
}

/* --- FIX F: MEET DR. NELSON - LARGER, STYLED, ANIMATED --- */
.elementor-element-390f2740 h3 {
  font-size: 36px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}
.elementor-element-390f2740 h3 span {
  font-size: 34px !important;
}
/* Animated headline dynamic wrapper styling */
.elementor-element-390f2740 .elementor-headline-dynamic-wrapper {
  font-size: 34px !important;
}
/* Fade-in animation for the section on scroll */
.elementor-element-390f2740 {
  animation: fadeSlideUp 0.8s ease-out !important;
}
@keyframes fadeSlideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* --- FIX G: RESTORE TOP BAR ONLY --- */
/* Only the top bar's inner container should be transparent to show gradient */
.elementor-element-1050c191 .e-con.e-child,
.elementor-element-f4b0fa2 {
  background-color: transparent !important;
}


/* ============================================= */
/* ROUND 8: GRAY CIRCLES FIX + VISIBILITY BOOST  */
/* ============================================= */

/* --- FIX G: WHY CHOOSE SECTION - GRAY CIRCLES TO ORANGE --- */
/* Target the chevron-circle-right icon boxes in Why Choose section */
.elementor-element-142c047d .elementor-icon,
.elementor-element-611ce277 .elementor-icon,
.elementor-element-4ffaec0c .elementor-icon,
.elementor-element-34507a69 .elementor-icon,
.elementor-element-1e2efa7e .elementor-icon,
.elementor-element-e30009e .elementor-icon {
  background-color: #E8792B !important;
  transition: background-color 0.3s ease, transform 0.3s ease !important;
}
.elementor-element-142c047d .elementor-icon:hover,
.elementor-element-611ce277 .elementor-icon:hover,
.elementor-element-4ffaec0c .elementor-icon:hover,
.elementor-element-34507a69 .elementor-icon:hover,
.elementor-element-1e2efa7e .elementor-icon:hover,
.elementor-element-e30009e .elementor-icon:hover {
  background-color: #d46a1f !important;
  transform: scale(1.08) !important;
}

/* --- FIX H: BOOST TEXT CONTRAST ACROSS HOMEPAGE --- */
/* Make body text darker for better readability */
.elementor-widget-text-editor p,
.elementor-icon-box-description {
  color: #222222 !important;
}
/* Make the Why Choose section titles slightly larger */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  letter-spacing: 0.3px !important;
}

/* Review/testimonial text - darker for readability */
.elementor-testimonial__text,
.elementor-widget-testimonial-carousel p {
  color: #333333 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Review names - bolder */
.elementor-testimonial__name {
  font-weight: 700 !important;
  color: #1a1a1a !important;
  font-size: 18px !important;
}

/* Hero paragraph text - slightly bolder */
.elementor-element-3e795696 p {
  color: #1a1a1a !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}

/* Service card description text - ensure readable */
.elementor-element-75700e24 .elementor-icon-box-description {
  color: #333333 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

/* Footer text - better contrast */
footer .elementor-widget-text-editor p {
  color: #cccccc !important;
}


/* ============================================= */
/* ROUND 9: BULLET POINTS + LOGO FIX             */
/* ============================================= */

/* --- FIX I: REPLACE ORANGE CIRCLE ICONS WITH MODERN BULLET --- */
/* Hide the orange circle icon completely */
.elementor-element-142c047d .elementor-icon-box-icon,
.elementor-element-611ce277 .elementor-icon-box-icon,
.elementor-element-4ffaec0c .elementor-icon-box-icon,
.elementor-element-34507a69 .elementor-icon-box-icon,
.elementor-element-1e2efa7e .elementor-icon-box-icon,
.elementor-element-e30009e .elementor-icon-box-icon {
  display: none !important;
}
/* Adjust the icon box content to take full width */
.elementor-element-142c047d .elementor-icon-box-content,
.elementor-element-611ce277 .elementor-icon-box-content,
.elementor-element-4ffaec0c .elementor-icon-box-content,
.elementor-element-34507a69 .elementor-icon-box-content,
.elementor-element-1e2efa7e .elementor-icon-box-content,
.elementor-element-e30009e .elementor-icon-box-content {
  width: 100% !important;
  padding-left: 0 !important;
}

/* --- FIX J: HEADER LOGO - WIDER CONTAINER, PUSHED LEFT --- */
/* Give logo container more room */
.elementor-element-69e0430c {
  min-width: 180px !important;
  width: auto !important;
  flex-shrink: 0 !important;
  overflow: visible !important;
  margin-left: -10px !important;
}
/* Ensure logo image is fully visible */
.elementor-element-68fd477f {
  width: auto !important;
  max-width: none !important;
  overflow: visible !important;
}
.elementor-element-68fd477f img {
  max-width: 160px !important;
  width: 160px !important;
  height: auto !important;
}


/* ============================================= */
/* ROUND 10: HERO SECTION REDESIGN               */
/* Fun, exciting, on-brand hero makeover          */
/* ============================================= */

/* --- HERO SECTION: WARM GRADIENT BACKGROUND --- */
.elementor-element-3e795696 {
  background: linear-gradient(135deg, #fff8f2 0%, #fff0e4 30%, #ffe0c8 70%, #ffd4b0 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}
/* Decorative circle in background */
.elementor-element-3e795696::before {
  content: "" !important;
  position: absolute !important;
  top: -80px !important;
  left: -80px !important;
  width: 300px !important;
  height: 300px !important;
  background: radial-gradient(circle, rgba(232,121,43,0.12) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
.elementor-element-3e795696::after {
  content: "" !important;
  position: absolute !important;
  bottom: -60px !important;
  right: 30% !important;
  width: 200px !important;
  height: 200px !important;
  background: radial-gradient(circle, rgba(204,51,102,0.08) 0%, transparent 70%) !important;
  border-radius: 50% !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
/* Keep inner content above decorative elements */
.elementor-element-3e795696 > .e-con-inner {
  position: relative !important;
  z-index: 1 !important;
}

/* --- HERO LEFT COLUMN --- */
.elementor-element-610266e {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 30px 20px !important;
}

/* --- HERO HEADING: "Pinnacle Audiology" --- */
/* Remove the boxy orange background, go elegant */
.elementor-element-559f5fbc {
  background-color: transparent !important;
  background: none !important;
  padding: 0 !important;
  margin-bottom: 8px !important;
}
.elementor-element-559f5fbc h1 {
  font-size: 52px !important;
  font-weight: 800 !important;
  color: #1a1a1a !important;
  letter-spacing: -0.5px !important;
  line-height: 1.15 !important;
  text-shadow: none !important;
}
/* Add an orange accent underline */
.elementor-element-559f5fbc h1::after {
  content: "" !important;
  display: block !important;
  width: 80px !important;
  height: 4px !important;
  background: linear-gradient(90deg, #E8792B, #F7941D) !important;
  border-radius: 2px !important;
  margin-top: 12px !important;
}

/* --- SHOW THE ANIMATED HEADLINE SUBTITLE --- */
.elementor-element-5843c37 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
  margin-bottom: 20px !important;
}
.elementor-element-5843c37 .elementor-headline {
  font-size: 22px !important;
  font-weight: 500 !important;
  color: #E8792B !important;
  letter-spacing: 0.3px !important;
}
.elementor-element-5843c37 .elementor-headline-dynamic-wrapper {
  color: #CC3366 !important;
  font-weight: 600 !important;
}

/* --- SHOW THE BOOK APPOINTMENT BUTTON --- */
.elementor-element-52da5e95 {
  display: block !important;
  height: auto !important;
  margin-top: 5px !important;
  margin-bottom: 20px !important;
}
.elementor-element-491323d0 {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
}
.elementor-element-491323d0 .elementor-button {
  background: linear-gradient(135deg, #E8792B 0%, #F7941D 100%) !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  padding: 16px 36px !important;
  border-radius: 50px !important;
  border: none !important;
  box-shadow: 0 4px 20px rgba(232,121,43,0.35) !important;
  transition: all 0.3s ease !important;
  letter-spacing: 0.5px !important;
  text-transform: none !important;
}
.elementor-element-491323d0 .elementor-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 30px rgba(232,121,43,0.45) !important;
  background: linear-gradient(135deg, #d46a1f 0%, #E8792B 100%) !important;
}

/* --- HERO BODY TEXT --- */
.elementor-element-68678b66 {
  margin-bottom: 10px !important;
}
.elementor-element-68678b66 p {
  font-size: 17px !important;
  line-height: 1.75 !important;
  color: #3a3a3a !important;
  max-width: 520px !important;
}

/* --- HERO RIGHT COLUMN: PORTRAIT AREA --- */
/* The orange circle behind the portrait - soften it */
.elementor-element-5136a66 {
  position: relative !important;
  z-index: 1 !important;
}

/* --- ENTRANCE ANIMATION FOR HERO --- */
@keyframes heroFadeIn {
  from {
    opacity: 0;
    transform: translateY(25px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.elementor-element-559f5fbc {
  animation: heroFadeIn 0.7s ease-out !important;
}
.elementor-element-5843c37 {
  animation: heroFadeIn 0.7s ease-out 0.15s both !important;
}
.elementor-element-68678b66 {
  animation: heroFadeIn 0.7s ease-out 0.3s both !important;
}
.elementor-element-491323d0 {
  animation: heroFadeIn 0.7s ease-out 0.45s both !important;
}


/* ============================================= */
/* ROUND 10B: HERO FIXES - LAYOUT + HEADING BG   */
/* ============================================= */

/* Force remove orange bg from heading with high specificity */
.elementor-element.elementor-element-559f5fbc.elementor-widget.elementor-widget-heading {
  background-color: transparent !important;
  background-image: none !important;
  background: transparent !important;
  padding: 0 0 0 0 !important;
}

/* Fix animated headline layout - prevent overlap */
.elementor-element.elementor-element-5843c37 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  position: relative !important;
  overflow: visible !important;
  margin-bottom: 12px !important;
  clear: both !important;
}
.elementor-element-5843c37 .elementor-headline {
  display: block !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  color: #555 !important;
}
.elementor-element-5843c37 .elementor-headline-plain-text {
  color: #555 !important;
  font-weight: 500 !important;
}
.elementor-element-5843c37 .elementor-headline-dynamic-wrapper {
  color: #E8792B !important;
  font-weight: 700 !important;
}
.elementor-element-5843c37 .elementor-headline-dynamic-text {
  position: relative !important;
  display: inline !important;
}

/* Fix button container - proper flow */
.elementor-element.elementor-element-52da5e95 {
  display: flex !important;
  height: auto !important;
  overflow: visible !important;
  margin-top: 10px !important;
  margin-bottom: 15px !important;
}
.elementor-element.elementor-element-491323d0 {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  overflow: visible !important;
}

/* Make body text not overlap - ensure proper flow */
.elementor-element-68678b66 {
  position: relative !important;
  z-index: 1 !important;
  clear: both !important;
}


/* ============================================= */
/* ROUND 10C: HERO FINAL - CLEAN APPROACH         */
/* ============================================= */

/* HIDE the animated headline - it breaks layout when forced visible */
.elementor-element-5843c37 {
  display: none !important;
}

/* Add subtitle via heading pseudo-element instead */
.elementor-element-559f5fbc h1::before {
  content: "NYC's Best Audiologists" !important;
  display: block !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: 3.5px !important;
  text-transform: uppercase !important;
  color: #E8792B !important;
  margin-bottom: 8px !important;
  line-height: 1.4 !important;
}

/* Heading should be black text, no orange bg */
.elementor-element-559f5fbc h1 {
  color: #1a1a1a !important;
  font-size: 48px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  background: none !important;
}

/* Move button BELOW body text by reordering flex children */
.elementor-element-610266e > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
}
/* Order: heading first, body text second, button third */
.elementor-element-559f5fbc {
  order: 1 !important;
}
.elementor-element-1757e11 {
  order: 2 !important;
}
.elementor-element-68678b66 {
  order: 3 !important;
}
.elementor-element-52da5e95 {
  order: 4 !important;
}

/* Body text - left aligned, cleaner */
.elementor-element-68678b66 p {
  text-align: left !important;
  max-width: 500px !important;
}


/* FINAL: Force hide animated headline with max specificity */
.elementor-element.elementor-element-5843c37.elementor-widget.elementor-widget-animated-headline {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* NUCLEAR: Kill animated headline and all descendants completely */
[data-id="5843c37"],
[data-id="5843c37"] *,
.elementor-element-5843c37,
.elementor-element-5843c37 * {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  clip: rect(0,0,0,0) !important;
  clip-path: inset(100%) !important;
  pointer-events: none !important;
}


/* --- FIX K: KILL ELEMENTOR CUSTOM CSS ::after OVERLAPPING TEXT --- */
.elementor-element-559f5fbc .elementor-widget-container::after,
.elementor-element-559f5fbc .elementor-heading-title::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  font-size: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}


/* --- FIX K: KILL ELEMENTOR CUSTOM CSS ::after OVERLAPPING TEXT --- */
.elementor-element-559f5fbc .elementor-widget-container::after,
.elementor-element-559f5fbc .elementor-heading-title::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  font-size: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}


/* --- FIX K: KILL ELEMENTOR CUSTOM CSS ::after OVERLAPPING TEXT --- */
.elementor-element-559f5fbc .elementor-widget-container::after,
.elementor-element-559f5fbc .elementor-heading-title::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  font-size: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}


/* ============================================================
   ROUND 11: COMPREHENSIVE HOMEPAGE REFRESH
   Brand Orange: #F7893B (logo) | Light: #FDB347 | Accent gradient: #F7893B → #FDB347
   ============================================================ */

/* --- 11A: UNIFY ALL ORANGES TO BRAND ORANGE #F7893B --- */

/* Hero subtitle */
.elementor-element-559f5fbc h1::before {
  color: #F7893B !important;
}

/* Hero underline accent bar */
.elementor-element-559f5fbc h1::after {
  background: linear-gradient(90deg, #F7893B, #FDB347) !important;
  width: 90px !important;
  height: 5px !important;
  border-radius: 3px !important;
  margin-top: 12px !important;
}

/* Book Your Appointment button - match brand */
.elementor-element-491323d0 .elementor-button,
.elementor-element-52da5e95 .elementor-button {
  background: linear-gradient(135deg, #F7893B 0%, #FDB347 100%) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 18px 40px !important;
  border-radius: 50px !important;
  box-shadow: 0 4px 20px rgba(247, 137, 59, 0.35) !important;
  transition: all 0.3s ease !important;
}
.elementor-element-491323d0 .elementor-button:hover,
.elementor-element-52da5e95 .elementor-button:hover {
  background: linear-gradient(135deg, #FDB347 0%, #F7893B 100%) !important;
  box-shadow: 0 6px 28px rgba(247, 137, 59, 0.5) !important;
  transform: translateY(-2px) !important;
}

/* Service card icons - unify to brand orange */
.elementor-icon-box-icon .elementor-icon {
  background-color: #F7893B !important;
  color: #fff !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}
.elementor-icon-box-wrapper:hover .elementor-icon {
  transform: scale(1.08) !important;
  box-shadow: 0 4px 16px rgba(247, 137, 59, 0.4) !important;
}

/* Contact form submit button */
.gform_wrapper input[type="submit"],
.gform_wrapper .gform_button,
.gform_wrapper button[type="submit"] {
  background: linear-gradient(135deg, #F7893B 0%, #FDB347 100%) !important;
  border: none !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.5px !important;
  padding: 14px 36px !important;
  transition: all 0.3s ease !important;
}
.gform_wrapper input[type="submit"]:hover,
.gform_wrapper .gform_button:hover {
  background: linear-gradient(135deg, #FDB347 0%, #F7893B 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(247, 137, 59, 0.4) !important;
}

/* "Learn More" button in Dr. Nelson section */
.elementor-element-3e795696 ~ .e-con .elementor-button,
.elementor-button-text:not(.elementor-element-491323d0 .elementor-button-text) {
  transition: all 0.3s ease !important;
}

/* Call Today button in header - brand orange */
.elementor-element-6ae4fd98 .elementor-button[style*="background-color"] {
  background-color: #F7893B !important;
}

/* --- 11B: OMBRE GRADIENT ON SECTION HEADING BOXES --- */

/* "Trusted Expertise. Personalized Care." heading box */
.elementor-element-2aa3cd37 h2,
h2:has(+ .elementor-element *) {
  /* Targeting orange heading boxes */
}

/* All orange-background heading containers - apply ombre */
.e-con h2[style*="background"],
.elementor-widget-heading .elementor-heading-title[style*="background-color: #F"] {
  background: linear-gradient(90deg, #F7893B 0%, #FDB347 50%, #F7893B 100%) !important;
}

/* Known orange heading boxes by their parent containers */
.elementor-element-2aa3cd37,
.elementor-element-43ae04f7 {
  background: linear-gradient(90deg, #F7893B 0%, #FDB347 50%, #F7893B 100%) !important;
  border-radius: 6px !important;
}

/* "Coverage That Works for You" tag */
.elementor-element-635c6ed6 h2:first-of-type,
.elementor-element-635c6ed6 .elementor-heading-title {
  background: linear-gradient(90deg, #F7893B 0%, #FDB347 50%, #F7893B 100%) !important;
  display: inline-block !important;
  padding: 10px 28px !important;
  border-radius: 6px !important;
}

/* "Our Hearing Care Services" section heading */
.elementor-element-1d9d4fa4 .elementor-heading-title,
.elementor-element-1cd1f04e .elementor-heading-title {
  color: #1a1a1a !important;
  position: relative !important;
}

/* --- 11C: FONT LEGIBILITY & READABILITY BOOST --- */

/* Body text throughout - slightly larger, better spacing */
body {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* All paragraph text */
.elementor-widget-text-editor p,
.elementor-text-editor p,
.elementor-widget-text-editor {
  font-size: 17px !important;
  line-height: 1.75 !important;
  color: #1a1a1a !important;
  letter-spacing: 0.01em !important;
}

/* Icon box descriptions (service cards) */
.elementor-icon-box-description,
.elementor-icon-box-description p {
  font-size: 15.5px !important;
  line-height: 1.65 !important;
  color: #333 !important;
}

/* Icon box titles */
.elementor-icon-box-title,
.elementor-icon-box-title a {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
}

/* Service section cards - titles */
.elementor-icon-box-content .elementor-icon-box-title {
  font-size: 20px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

/* Hero section text */
.elementor-element-3e795696 .elementor-widget-text-editor p {
  font-size: 18px !important;
  line-height: 1.8 !important;
  color: #2a2a2a !important;
}

/* Dr. Nelson bio text */
.elementor-element-68678b66 p,
.elementor-element-3e795696 ~ .e-con .elementor-widget-text-editor p {
  font-size: 17px !important;
  line-height: 1.75 !important;
}

/* Section headings - bigger and bolder */
.elementor-heading-title {
  letter-spacing: -0.01em !important;
}

h2.elementor-heading-title {
  font-weight: 800 !important;
}

/* Hero main heading */
.elementor-element-559f5fbc h1.elementor-heading-title {
  font-size: 52px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  color: #1a1a1a !important;
}

/* Testimonial text */
.elementor-testimonial__text,
.rplg-review-text,
[class*="review"] p {
  font-size: 15.5px !important;
  line-height: 1.7 !important;
  color: #2a2a2a !important;
}
.elementor-testimonial__name,
.rplg-review-name {
  font-weight: 700 !important;
  font-size: 18px !important;
  color: #1a1a1a !important;
}

/* Footer text */
footer .elementor-widget-text-editor p,
footer .elementor-text-editor {
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #ccc !important;
}

/* Navigation links - slightly bolder */
.elementor-nav-menu a {
  font-weight: 600 !important;
  font-size: 16px !important;
  letter-spacing: 0.02em !important;
}

/* --- 11D: ALIGNMENT & CENTERING --- */

/* Hero section - better vertical centering */
.elementor-element-610266e {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 60px 40px 60px 60px !important;
}

/* Service cards - center text */
.elementor-icon-box-wrapper {
  text-align: center !important;
}
.elementor-icon-box-icon {
  margin-bottom: 16px !important;
}

/* Service section title centering */
.elementor-element-1d9d4fa4,
.elementor-element-1cd1f04e {
  text-align: center !important;
}

/* Google reviews - center the carousel */
.elementor-widget-testimonial-carousel {
  text-align: center !important;
}

/* Contact section - align form and map */
.gform_wrapper {
  padding: 10px 0 !important;
}
.gform_wrapper input,
.gform_wrapper textarea {
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  transition: border-color 0.3s ease !important;
}
.gform_wrapper input:focus,
.gform_wrapper textarea:focus {
  border-color: #F7893B !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(247, 137, 59, 0.15) !important;
}

/* Footer layout spacing */
footer .e-con {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

/* --- 11E: UPGRADE BULLETS TO FUN PROMINENT SYMBOLS --- */

/* Footer Quick Links bullets */
footer .elementor-icon-list-icon i,
footer .elementor-icon-list-icon svg {
  color: #F7893B !important;
  fill: #F7893B !important;
}

/* --- 11F: HERO SECTION BACKGROUND REFINEMENT --- */
.elementor-element-3e795696 {
  background: linear-gradient(135deg, #fffaf6 0%, #fff3ea 35%, #ffe8d6 70%, #ffdfc4 100%) !important;
}

/* Hero section decorative elements */
.elementor-element-3e795696::before {
  background: radial-gradient(circle, rgba(247,137,59,0.06) 0%, transparent 70%) !important;
}
.elementor-element-3e795696::after {
  background: radial-gradient(circle, rgba(253,179,71,0.08) 0%, transparent 70%) !important;
}

/* --- 11G: SERVICE CARDS POLISH --- */
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e {
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}
.elementor-element-142c047d:hover,
.elementor-element-611ce277:hover,
.elementor-element-4ffaec0c:hover,
.elementor-element-34507a69:hover,
.elementor-element-1e2efa7e:hover,
.elementor-element-e30009e:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
}

/* --- 11H: PINK NAV LINKS → DARKER FOR CONTRAST --- */
.elementor-nav-menu a {
  color: #8B1A4A !important; /* deeper magenta-pink for legibility */
}
.elementor-nav-menu a:hover {
  color: #F7893B !important;
}

/* --- 11I: SECTION SPACING CLEANUP --- */

/* Remove excessive whitespace between sections */
.e-con.e-parent {
  margin-bottom: 0 !important;
}

/* "Why Choose" section - tighten bullet list spacing */
.elementor-element-142c047d .elementor-icon-box-content,
.elementor-element-611ce277 .elementor-icon-box-content,
.elementor-element-4ffaec0c .elementor-icon-box-content,
.elementor-element-34507a69 .elementor-icon-box-content,
.elementor-element-1e2efa7e .elementor-icon-box-content,
.elementor-element-e30009e .elementor-icon-box-content {
  padding-bottom: 4px !important;
}

/* Star ratings in reviews - brand orange */
.elementor-star-rating i,
.rplg-review-stars span,
[class*="star"] {
  color: #F7893B !important;
}


/* ============================================================
   ROUND 11 REFINEMENTS
   ============================================================ */

/* --- FIX: "We Accept" heading should NOT have orange box --- */
.elementor-element-c5357bd .elementor-heading-title {
  background: none !important;
  background-image: none !important;
  display: block !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* --- FIX: "Why Choose" bullet text LEFT-aligned, not centered --- */
.elementor-element-142c047d .elementor-icon-box-wrapper,
.elementor-element-611ce277 .elementor-icon-box-wrapper,
.elementor-element-4ffaec0c .elementor-icon-box-wrapper,
.elementor-element-34507a69 .elementor-icon-box-wrapper,
.elementor-element-1e2efa7e .elementor-icon-box-wrapper,
.elementor-element-e30009e .elementor-icon-box-wrapper {
  text-align: left !important;
}

/* Bullet titles - bolder, bigger for skimmability */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1a1a1a !important;
  margin-bottom: 4px !important;
}

/* Bullet descriptions - slightly darker, bigger */
.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: #333 !important;
  text-align: left !important;
}

/* --- FIX: "Founder of Pinnacle Audiology" subtitle color match --- */
.elementor-element-78ddc1e5 h3,
h3:has(> br) {
  color: #F7893B !important;
}

/* --- FIX: Service cards — DON'T center the "Why Choose" section items --- */
/* Only center service GRID cards, not the bullet list items */
.elementor-element-142c047d .elementor-icon-box-icon,
.elementor-element-611ce277 .elementor-icon-box-icon,
.elementor-element-4ffaec0c .elementor-icon-box-icon,
.elementor-element-34507a69 .elementor-icon-box-icon,
.elementor-element-1e2efa7e .elementor-icon-box-icon,
.elementor-element-e30009e .elementor-icon-box-icon {
  display: none !important; /* these use ::before bullets instead */
}

/* --- FIX: "Why Choose" section heading and subtext left-aligned --- */
.elementor-element-142c047d ~ .elementor-widget-heading,
.elementor-element-142c047d ~ .elementor-widget-text-editor {
  text-align: left !important;
}

/* --- POLISH: Credential badges row — subtle hover --- */
.elementor-widget-image-carousel img,
.elementor-image img {
  transition: transform 0.3s ease !important;
}

/* --- POLISH: Better spacing around "Why Choose" section --- */
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e {
  margin-bottom: 8px !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(247,137,59,0.1) !important;
}
.elementor-element-e30009e {
  border-bottom: none !important;
}

/* --- POLISH: Contact form labels bolder --- */
.gform_wrapper label,
.gform_wrapper .gfield_label {
  font-weight: 700 !important;
  font-size: 15px !important;
  color: #1a1a1a !important;
}


/* --- FIX: "We Accept" heading - HIGHER SPECIFICITY override --- */
.elementor-element-635c6ed6 .elementor-element-c5357bd .elementor-heading-title,
.elementor-element-635c6ed6 .elementor-element.elementor-element-c5357bd h2.elementor-heading-title {
  background: none !important;
  background-image: none !important;
  display: block !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}


/* ============================================================
   ROUND 12: INSURANCE SLOGAN + FOOTER STARS
   ============================================================ */

/* --- 12A: INSURANCE SLOGAN — bold, black, bigger, scroll animation --- */
.elementor-element-488c121d p,
.elementor-element-488c121d .elementor-widget-container p {
  color: #1a1a1a !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: -0.01em !important;
  text-shadow: none !important;
  text-align: center !important;
  max-width: 700px !important;
  margin: 20px auto !important;
}

/* Scroll-triggered fade-up animation */
@keyframes sloganFadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.elementor-element-488c121d {
  animation: sloganFadeUp 0.8s ease-out both !important;
  animation-timeline: view() !important;
  animation-range: entry 0% entry 40% !important;
}

/* Fallback for browsers without scroll-driven animations */
@supports not (animation-timeline: view()) {
  .elementor-element-488c121d {
    animation: sloganFadeUp 0.8s ease-out 0.3s both !important;
  }
}

/* --- 12B: FOOTER QUICK LINKS — centered, bigger, orange star separators --- */

/* Hide the default bullet icons */
.elementor-element-52f0e5da .elementor-icon-list-icon {
  display: none !important;
}

/* Make the list horizontal and centered */
.elementor-element-52f0e5da .elementor-icon-list-items {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0 !important;
  list-style: none !important;
  padding: 0 !important;
}

/* Each list item */
.elementor-element-52f0e5da .elementor-icon-list-item {
  display: inline-flex !important;
  align-items: center !important;
}

/* Bigger font for link text */
.elementor-element-52f0e5da .elementor-icon-list-text {
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

.elementor-element-52f0e5da .elementor-icon-list-item a {
  color: #F7893B !important;
  text-decoration: none !important;
  transition: color 0.3s ease !important;
}
.elementor-element-52f0e5da .elementor-icon-list-item a:hover {
  color: #FDB347 !important;
}

/* Orange star separators between items */
.elementor-element-52f0e5da .elementor-icon-list-item:not(:last-child)::after {
  content: "\2605  \2605  \2605  \2605  \2605" !important;
  color: #F7893B !important;
  font-size: 11px !important;
  margin: 0 16px !important;
  letter-spacing: 3px !important;
  display: inline-block !important;
  opacity: 0.85 !important;
}

/* --- 12C: CONTACT INFO LIST — also bigger and centered --- */
.elementor-element-5e5383fc .elementor-icon-list-text {
  font-size: 15px !important;
  font-weight: 500 !important;
}
.elementor-element-5e5383fc .elementor-icon-list-icon i,
.elementor-element-5e5383fc .elementor-icon-list-icon svg {
  color: #F7893B !important;
  fill: #F7893B !important;
}


/* --- 12A FIX: Slogan on dark overlay — white, bigger, bolder --- */
.elementor-element-488c121d p,
.elementor-element-488c121d .elementor-widget-container p,
.elementor-element-488c121d .elementor-widget-container p b {
  color: #fff !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.25) !important;
  text-align: center !important;
}


/* --- 12B FIX: Footer Quick Links — clean horizontal layout with star separators --- */
.elementor-element-52f0e5da .elementor-icon-list-items {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
  list-style: none !important;
  padding: 0 !important;
}

/* Each list item centered */
.elementor-element-52f0e5da .elementor-icon-list-item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
}

/* Star separator BETWEEN items (not after last) */
.elementor-element-52f0e5da .elementor-icon-list-item:not(:last-child)::after {
  content: "\2605 \2605 \2605 \2605 \2605" !important;
  color: #F7893B !important;
  font-size: 13px !important;
  display: block !important;
  text-align: center !important;
  margin-top: 10px !important;
  letter-spacing: 5px !important;
  opacity: 0.9 !important;
  position: absolute !important;
  bottom: -14px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Make list items relative for star positioning */
.elementor-element-52f0e5da .elementor-icon-list-item {
  position: relative !important;
  padding-bottom: 12px !important;
}
.elementor-element-52f0e5da .elementor-icon-list-item:last-child {
  padding-bottom: 0 !important;
}
.elementor-element-52f0e5da .elementor-icon-list-item:last-child::after {
  display: none !important;
}

/* Link text bigger and bolder */
.elementor-element-52f0e5da .elementor-icon-list-text {
  font-size: 19px !important;
  font-weight: 700 !important;
}


/* ============================================
   ROUND 13 — POLISH, HIGH-END FEEL, LEGIBILITY
   ============================================ */

/* --- GLOBAL SMOOTH SCROLL --- */
html { scroll-behavior: smooth !important; }

/* --- GLOBAL TYPOGRAPHY: BOLDER + MORE MINIMALIST --- */
body, .elementor-widget-text-editor p,
.elementor-widget-text-editor .elementor-widget-container p {
  font-weight: 500 !important;
  color: #111 !important;
  letter-spacing: 0.01em !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* Headings: tighter letter-spacing, bolder */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  letter-spacing: -0.02em !important;
  -webkit-font-smoothing: antialiased !important;
}

/* --- HERO SECTION POLISH --- */
.elementor-element-559f5fbc h1.elementor-heading-title {
  font-weight: 900 !important;
  font-size: 54px !important;
  letter-spacing: -0.03em !important;
  color: #0a0a0a !important;
  line-height: 1.1 !important;
}

/* Hero subheading - rated text */
.elementor-element-559f5fbc .elementor-widget-container > *:first-child,
.elementor-element-3e795696 .elementor-element-559f5fbc h1::before {
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
}

/* Hero body text bolder */
.elementor-element-68678b66 p,
.elementor-element-68678b66 .elementor-widget-container p {
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.7 !important;
  color: #222 !important;
}

/* --- CTA BUTTON: HIGH-END WITH SMOOTH HOVER --- */
.elementor-element-491323d0 .elementor-button {
  padding: 16px 42px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  border-radius: 50px !important;
  box-shadow: 0 4px 15px rgba(247,137,59,0.35) !important;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
}
.elementor-element-491323d0 .elementor-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(247,137,59,0.5) !important;
}

/* --- DR. NELSON BIO: POLISH --- */
.elementor-element-266382d5 p,
.elementor-element-266382d5 .elementor-widget-container p {
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.75 !important;
  color: #1a1a1a !important;
}

/* "Meet Dr. Eric Nelson" heading */
h2.elementor-heading-title {
  font-weight: 800 !important;
}

/* --- SERVICE CARDS: ELEVATED DESIGN --- */
.elementor-element-3c9dfc85,
.elementor-element-291ebf7a,
.elementor-element-425b8583,
.elementor-element-517db125,
.elementor-element-74fb9cdc,
.elementor-element-71fe2bc5 {
  border: 1px solid rgba(0,0,0,0.06) !important;
  border-radius: 16px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
  background: #fff !important;
  overflow: hidden !important;
}
.elementor-element-3c9dfc85:hover,
.elementor-element-291ebf7a:hover,
.elementor-element-425b8583:hover,
.elementor-element-517db125:hover,
.elementor-element-74fb9cdc:hover,
.elementor-element-71fe2bc5:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 35px rgba(247,137,59,0.12) !important;
  border-color: rgba(247,137,59,0.2) !important;
}

/* Service card titles bolder */
.elementor-icon-box-title {
  font-weight: 800 !important;
  font-size: 19px !important;
  color: #0a0a0a !important;
}

/* Service card descriptions */
.elementor-icon-box-description {
  font-weight: 500 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #333 !important;
}

/* --- ICON CIRCLES: REFINED WITH GRADIENT & SHADOW --- */
.elementor-icon-box-icon .elementor-icon {
  background: linear-gradient(145deg, #F7893B 0%, #e87a2e 100%) !important;
  box-shadow: 0 4px 14px rgba(247,137,59,0.3) !important;
  transition: all 0.35s ease !important;
}
.elementor-icon-box-wrapper:hover .elementor-icon-box-icon .elementor-icon {
  transform: scale(1.08) !important;
  box-shadow: 0 6px 20px rgba(247,137,59,0.45) !important;
}

/* --- SECTION HEADING BOXES: SMOOTHER --- */
.elementor-element-5c81b11d .elementor-heading-title,
.elementor-element-6311d8ca .elementor-heading-title {
  border-radius: 8px !important;
  box-shadow: 0 4px 18px rgba(247,137,59,0.25) !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  padding: 12px 32px !important;
}

/* --- OMBRE HEADER BAR POLISH --- */
.elementor-element-1050c191 {
  box-shadow: 0 2px 10px rgba(0,0,0,0.08) !important;
}

/* --- WHY CHOOSE SECTION: REFINED --- */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #0a0a0a !important;
}

.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #333 !important;
  line-height: 1.65 !important;
}

/* --- INSURANCE SECTION POLISH --- */
.elementor-element-635c6ed6 {
  position: relative !important;
}

.elementor-element-c5357bd .elementor-heading-title {
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  text-shadow: 0 3px 12px rgba(0,0,0,0.35) !important;
}

/* --- SCROLL REVEAL ANIMATIONS --- */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(25px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInLeft {
  from { opacity: 0; transform: translateX(-25px); }
  to { opacity: 1; transform: translateX(0); }
}

/* Service cards reveal */
.elementor-element-291ebf7a,
.elementor-element-425b8583,
.elementor-element-517db125,
.elementor-element-74fb9cdc,
.elementor-element-3c9dfc85,
.elementor-element-71fe2bc5 {
  animation: fadeInUp 0.7s ease-out both !important;
  animation-timeline: view() !important;
  animation-range: entry 0% entry 30% !important;
}

/* Why Choose items reveal */
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e {
  animation: fadeInLeft 0.6s ease-out both !important;
  animation-timeline: view() !important;
  animation-range: entry 0% entry 35% !important;
}

/* --- NAVIGATION: REFINED --- */
.elementor-nav-menu .elementor-item {
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  transition: color 0.3s ease !important;
}

/* Schedule/Call buttons polish */
.elementor-element-6ae4fd98 .elementor-button,
.e-con .elementor-button {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* --- CONTACT FORM SECTION: CLEANER --- */
.gform-theme--foundation .gfield input,
.gform-theme--foundation .gfield textarea {
  border: 2px solid #e5e5e5 !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
}
.gform-theme--foundation .gfield input:focus,
.gform-theme--foundation .gfield textarea:focus {
  border-color: #F7893B !important;
  box-shadow: 0 0 0 3px rgba(247,137,59,0.12) !important;
  outline: none !important;
}

/* Submit button */
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"] {
  background: linear-gradient(135deg, #F7893B 0%, #FDB347 100%) !important;
  border: none !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.04em !important;
  padding: 16px 42px !important;
  box-shadow: 0 4px 15px rgba(247,137,59,0.35) !important;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-transform: uppercase !important;
  color: #fff !important;
}
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(247,137,59,0.5) !important;
}

/* --- LEARN MORE BUTTON POLISH --- */
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border-radius: 8px !important;
}
.elementor-button.elementor-size-sm:hover,
.elementor-button.elementor-size-md:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
}

/* --- FOOTER: REFINED --- */
.elementor-element-52f0e5da .elementor-icon-list-text {
  font-weight: 800 !important;
  font-size: 20px !important;
  letter-spacing: 0.01em !important;
}

.elementor-element-5e5383fc .elementor-icon-list-text {
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

/* Footer tagline */
footer .elementor-widget-text-editor p {
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
}

/* --- SOCIAL ICONS: SUBTLE HOVER --- */
.elementor-social-icon {
  transition: all 0.3s ease !important;
}
.elementor-social-icon:hover {
  transform: translateY(-2px) scale(1.05) !important;
  opacity: 0.9 !important;
}

/* --- TRUST BADGES ROW: POLISH --- */
.elementor-image img {
  transition: all 0.3s ease !important;
}

/* --- REVIEWS SECTION: ELEVATED --- */
.elementor-testimonial,
.e-con[data-element_type="container"] > .elementor-widget-testimonial-carousel,
.eael-google-reviews-item,
[class*="review"] .e-con-inner {
  border-radius: 16px !important;
}

/* --- GLOBAL SELECTION COLOR --- */
::selection {
  background: rgba(247,137,59,0.2) !important;
  color: #111 !important;
}

/* --- PERFORMANCE: GPU ACCELERATION FOR ANIMATIONS --- */
.elementor-element-491323d0 .elementor-button,
.elementor-icon-box-icon .elementor-icon,
.elementor-social-icon,
.elementor-element-291ebf7a,
.elementor-element-425b8583,
.elementor-element-517db125,
.elementor-element-74fb9cdc,
.elementor-element-3c9dfc85,
.elementor-element-71fe2bc5 {
  will-change: transform !important;
}

/* --- MINIMALIST DIVIDER BETWEEN SECTIONS --- */
.elementor-element-3e795696 {
  border-bottom: 1px solid rgba(0,0,0,0.04) !important;
}


/* ============================================
   ROUND 13B — SEO, PERFORMANCE, ACCESSIBILITY
   ============================================ */

/* --- CORE WEB VITALS: REDUCE CLS --- */
.elementor-element-3e795696 {
  min-height: 600px !important;
  contain: layout style !important;
}

/* Prevent layout shift from lazy-loaded images */
.elementor-widget-image img,
.elementor-image img {
  aspect-ratio: attr(width) / attr(height) !important;
  height: auto !important;
}

/* --- PERFORMANCE: CONTENT-VISIBILITY FOR OFF-SCREEN SECTIONS --- */
.elementor-element-635c6ed6,
.elementor-element-52f0e5da {
  content-visibility: auto !important;
  contain-intrinsic-size: auto 500px !important;
}

/* --- FONT PERFORMANCE --- */
@font-face {
  font-display: swap !important;
}

/* --- ACCESSIBILITY: FOCUS STATES --- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
.elementor-button:focus-visible {
  outline: 3px solid #F7893B !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}

/* Skip-to-content for screen readers */
.screen-reader-text:focus {
  background: #F7893B !important;
  color: #fff !important;
  display: block !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding: 15px 23px !important;
  position: fixed !important;
  top: 5px !important;
  left: 5px !important;
  z-index: 100000 !important;
  border-radius: 4px !important;
}

/* --- REDUCED MOTION: RESPECT USER PREFERENCE --- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* --- PRINT STYLES FOR SEO-FRIENDLY PRINTING --- */
@media print {
  .elementor-element-1050c191,
  .elementor-element-6ae4fd98,
  footer { display: none !important; }
  body { color: #000 !important; background: #fff !important; }
  a { color: #000 !important; text-decoration: underline !important; }
  a[href]::after { content: " (" attr(href) ")" !important; font-size: 0.8em !important; }
}

/* --- MOBILE PERFORMANCE: REDUCE PAINT COMPLEXITY --- */
@media (max-width: 767px) {
  .elementor-element-291ebf7a:hover,
  .elementor-element-425b8583:hover,
  .elementor-element-517db125:hover,
  .elementor-element-74fb9cdc:hover,
  .elementor-element-3c9dfc85:hover,
  .elementor-element-71fe2bc5:hover {
    transform: none !important;
  }
  
  .elementor-element-559f5fbc h1.elementor-heading-title {
    font-size: 36px !important;
  }
  
  .elementor-element-68678b66 p {
    font-size: 16px !important;
  }
}

/* --- CONTRAST: ENSURE WCAG AA COMPLIANCE --- */
.elementor-icon-box-description,
.elementor-widget-text-editor p {
  color: #222 !important;
}

/* --- IMAGE OPTIMIZATION HINTS --- */
img[loading="lazy"] {
  background-color: #f5f0eb !important;
}


/* ============================================
   ROUND 14 — PROFESSIONAL FIX: READABILITY,
   CENTERING, SIZING, KILL FADE ANIMATIONS
   ============================================ */

/* --- KILL ALL SCROLL-DRIVEN FADE ANIMATIONS --- */
.elementor-element-291ebf7a,
.elementor-element-425b8583,
.elementor-element-517db125,
.elementor-element-74fb9cdc,
.elementor-element-3c9dfc85,
.elementor-element-71fe2bc5,
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e,
.elementor-element-488c121d {
  animation: none !important;
  animation-timeline: none !important;
  opacity: 1 !important;
  transform: none !important;
}

/* --- GLOBAL TEXT: BOLDER + DARKER --- */
body, p,
.elementor-widget-text-editor p,
.elementor-widget-text-editor .elementor-widget-container p,
.elementor-text-editor p {
  font-weight: 600 !important;
  color: #111 !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
}

/* --- HERO: CENTER + BOLDER --- */
.elementor-element-610266e {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.elementor-element-559f5fbc { text-align: center !important; }
.elementor-element-559f5fbc h1.elementor-heading-title {
  font-size: 52px !important;
  font-weight: 900 !important;
  color: #000 !important;
  text-align: center !important;
  line-height: 1.15 !important;
}
.elementor-element-68678b66,
.elementor-element-68678b66 p,
.elementor-element-68678b66 .elementor-widget-container p {
  text-align: center !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #111 !important;
  line-height: 1.7 !important;
}
.elementor-element-52da5e95 {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
}
.elementor-element-491323d0 { text-align: center !important; }

/* --- DR. NELSON BIO: BIGGER, BOLDER --- */
.elementor-element-266382d5 p,
.elementor-element-266382d5 .elementor-widget-container p {
  font-size: 19px !important;
  font-weight: 600 !important;
  color: #111 !important;
  line-height: 1.75 !important;
}

/* --- SERVICES SECTION: CENTER + BOLDER --- */
.elementor-element-5c81b11d {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
}
.elementor-element-5c81b11d .elementor-heading-title {
  text-align: center !important;
  margin: 0 auto !important;
}

/* Services intro text */
.elementor-element-1da4cc53,
.elementor-element-1da4cc53 p {
  text-align: center !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #111 !important;
}

/* --- SERVICE CARDS: CENTER + BIGGER FONTS --- */
.elementor-icon-box-content { text-align: center !important; }
.elementor-icon-box-title {
  font-size: 21px !important;
  font-weight: 800 !important;
  color: #000 !important;
  text-align: center !important;
}
.elementor-icon-box-description {
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #222 !important;
  line-height: 1.65 !important;
  text-align: center !important;
}
.elementor-icon-box-wrapper { text-align: center !important; }
.elementor-icon-box-icon { margin: 0 auto 15px auto !important; }

/* --- INSURANCE SECTION TEXT --- */
.elementor-element-635c6ed6 .elementor-widget-text-editor p,
.elementor-element-488c121d p,
.elementor-element-488c121d .elementor-widget-container p {
  color: #fff !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.35) !important;
  text-align: center !important;
}
.elementor-element-c5357bd .elementor-heading-title {
  font-size: 44px !important;
  font-weight: 900 !important;
  text-align: center !important;
}
.elementor-element-6311d8ca {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
}
.elementor-element-6311d8ca .elementor-heading-title {
  text-align: center !important;
  margin: 0 auto !important;
}

/* --- WHY CHOOSE: BOLDER TEXT --- */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #000 !important;
  text-align: left !important;
}
.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #111 !important;
  text-align: left !important;
}

/* --- ALL H2 HEADINGS BOLDER --- */
h2.elementor-heading-title {
  font-weight: 900 !important;
  color: #000 !important;
}

/* --- NAV LINKS --- */
.elementor-nav-menu .elementor-item {
  font-size: 16px !important;
  font-weight: 700 !important;
}

/* --- FORM LABELS --- */
.gform_wrapper label, .gfield_label {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #000 !important;
}

/* --- FOOTER: BIGGER --- */
.elementor-element-52f0e5da .elementor-icon-list-text {
  font-size: 22px !important;
  font-weight: 800 !important;
}
.elementor-element-5e5383fc .elementor-icon-list-text {
  font-size: 17px !important;
  font-weight: 700 !important;
}
footer p {
  font-size: 16px !important;
  font-weight: 600 !important;
}

/* --- REVIEW TEXT BOLDER --- */
.eael-google-reviews-item p,
[class*="review"] p {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #222 !important;
}


/* ============================================
   ROUND 14B — KILL ALL ELEMENTOR ENTRANCE
   ANIMATIONS THAT CAUSE FADED/INVISIBLE CONTENT
   ============================================ */

/* Nuclear option: kill ALL Elementor entrance animations */
.elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

[data-settings*="animation"] {
  opacity: 1 !important;
  visibility: visible !important;
}

.animated, .elementor-element.animated {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Kill fadeIn variations */
.fadeIn, .fadeInUp, .fadeInDown, .fadeInLeft, .fadeInRight,
.zoomIn, .slideInUp, .slideInDown, .slideInLeft, .slideInRight,
.bounceIn, .bounceInUp, .bounceInDown {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* Ensure all elements are fully visible */
.elementor-widget, .elementor-column, .e-con,
.elementor-section, .elementor-element {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Override any animation-related inline styles */
[style*="opacity: 0"],
[style*="opacity:0"] {
  opacity: 1 !important;
}


/* ===== ROUND 15 — Fix Headers White + Remove Stars + Prominent Why Choose ===== */

/* 1. REMOVE footer star separators */
.elementor-element-52f0e5da .elementor-icon-list-item:not(:last-child)::after {
  content: none !important;
  display: none !important;
}

/* 2. ALL orange header boxes: white text + consistent ombré gradient */
.elementor-element-5c81b11d .elementor-heading-title,
.elementor-element-2b1219e .elementor-heading-title,
.elementor-element-6311d8ca .elementor-heading-title,
.elementor-element-4a742a78 .elementor-heading-title,
.elementor-element-6cf5e3d0 .elementor-heading-title {
  color: #fff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.15) !important;
}

/* Ombré gradient on ALL orange header wrapper boxes */
.elementor-element-5c81b11d,
.elementor-element-2b1219e,
.elementor-element-6311d8ca,
.elementor-element-4a742a78,
.elementor-element-6cf5e3d0 {
  background: linear-gradient(90deg, #F7893B 0%, #FDB347 50%, #F7893B 100%) !important;
}

/* Override the Round 14 h2 black color for these specific orange headers */
.elementor-element-5c81b11d h2.elementor-heading-title,
.elementor-element-2b1219e h2.elementor-heading-title,
.elementor-element-6311d8ca h2.elementor-heading-title,
.elementor-element-4a742a78 h2.elementor-heading-title,
.elementor-element-6cf5e3d0 h2.elementor-heading-title {
  color: #fff !important;
}

/* Round 15 Why Choose — replaced by Round 17 */

/* ===== END ROUND 15 ===== */


/* ===== ROUND 15B — Tinnitus Section Styling ===== */

/* Tinnitus section background */
.elementor-element-3d62ae6 {
  background: #FFF8F0 !important;
  padding: 60px 30px !important;
  text-align: center !important;
}

/* Tinnitus heading — ombré orange bar with white text */
.elementor-element-3d62ae6 .elementor-heading-title {
  display: inline-block !important;
  background: linear-gradient(90deg, #F7893B 0%, #FDB347 50%, #F7893B 100%) !important;
  color: #fff !important;
  padding: 12px 30px !important;
  border-radius: 6px !important;
  font-size: 38px !important;
  font-weight: 900 !important;
  font-style: italic !important;
  font-family: 'Playfair Display', serif !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.15) !important;
  text-align: center !important;
}

/* Tinnitus body text */
.elementor-element-3d62ae6 .elementor-text-editor p {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #111 !important;
  line-height: 1.75 !important;
  max-width: 800px !important;
  margin: 20px auto 30px !important;
  text-align: center !important;
}

/* Tinnitus CTA button */
.elementor-element-3d62ae6 .elementor-button {
  background: linear-gradient(135deg, #F7893B 0%, #FDB347 100%) !important;
  color: #fff !important;
  border-radius: 50px !important;
  padding: 16px 40px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: 0 4px 15px rgba(247,137,59,0.35) !important;
  transition: all 0.3s ease !important;
}

.elementor-element-3d62ae6 .elementor-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(247,137,59,0.45) !important;
}

/* ===== END ROUND 15B ===== */


/* ===== ROUND 16 — Hero subtitle width match ===== */
.elementor-element-559f5fbc h1.elementor-heading-title::before {
  content: "NYC's Best Audiologists" !important;
  display: block !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  letter-spacing: 5px !important;
  text-transform: uppercase !important;
  color: #F7893B !important;
  margin-bottom: 10px !important;
  font-family: inherit !important;
}
/* ===== END ROUND 16 ===== */


/* ===== ROUND 17 — Why Choose: Card Grid Redesign ===== */

/* Parent container: 2-column grid */
.elementor-element-60dc4ee9 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
  padding: 10px 0 !important;
}

/* Header, subheading, and intro text span full width */
.elementor-element-60dc4ee9 > .elementor-widget-heading,
.elementor-element-60dc4ee9 > .elementor-widget-text-editor,
.elementor-element-60dc4ee9 > .elementor-widget-mobile__width {
  grid-column: 1 / -1 !important;
}

/* Each icon-box widget: card styling */
.elementor-element-60dc4ee9 > .elementor-widget-icon-box {
  background: #fff !important;
  border-radius: 14px !important;
  padding: 28px 24px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
  border: 1px solid #f0e8e0 !important;
  border-left: 4px solid #F7893B !important;
  transition: all 0.3s ease !important;
  margin: 0 !important;
}

.elementor-element-60dc4ee9 > .elementor-widget-icon-box:hover {
  box-shadow: 0 6px 24px rgba(247,137,59,0.15) !important;
  border-left-color: #FDB347 !important;
  transform: translateY(-2px) !important;
}

/* Icon styling — compact orange circle */
.elementor-element-142c047d .elementor-icon,
.elementor-element-611ce277 .elementor-icon,
.elementor-element-4ffaec0c .elementor-icon,
.elementor-element-34507a69 .elementor-icon,
.elementor-element-1e2efa7e .elementor-icon,
.elementor-element-e30009e .elementor-icon {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  font-size: 20px !important;
  line-height: 52px !important;
  background: linear-gradient(135deg, #F7893B 0%, #FDB347 100%) !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 18px !important;
}

.elementor-element-142c047d .elementor-icon svg,
.elementor-element-611ce277 .elementor-icon svg,
.elementor-element-4ffaec0c .elementor-icon svg,
.elementor-element-34507a69 .elementor-icon svg,
.elementor-element-1e2efa7e .elementor-icon svg,
.elementor-element-e30009e .elementor-icon svg {
  width: 22px !important;
  height: 22px !important;
  fill: #fff !important;
}

/* Title styling */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1a1a1a !important;
  letter-spacing: -0.01em !important;
  text-align: left !important;
  margin-bottom: 6px !important;
}

/* Description styling */
.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #555 !important;
  line-height: 1.6 !important;
}

/* Icon-box wrapper: horizontal layout */
.elementor-element-60dc4ee9 .elementor-icon-box-wrapper {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
}

.elementor-element-60dc4ee9 .elementor-icon-box-content {
  flex: 1 !important;
}

/* Responsive: single column on smaller screens */
@media (max-width: 767px) {
  .elementor-element-60dc4ee9 {
    grid-template-columns: 1fr !important;
  }
}

/* ==============================================
   PINNACLE AUDIOLOGY — MOBILE CSS FIXES + POLISH
   ============================================== */


/* ==============================================
   SECTION A: BUG FIXES
   ============================================== */

/* FIX 1: Orange circle cutoff on woman's image */
@media (max-width: 767px) {
  .elementor-element-3e795696 {
    overflow: visible !important;
  }
  .elementor-element-61b994e4 {
    width: 280px !important;
    max-width: 80% !important;
  }
  .elementor-element-61b994e4 img {
    max-width: 100% !important;
  }
}

/* FIX 2: Logo breathing room */
@media (max-width: 767px) {
  header.elementor-location-header {
    padding-top: 8px;
  }
}

/* FIX 3: Shrink Dr. Nelson photo on mobile */
@media (max-width: 767px) {
  .elementor-element-799687e {
    max-width: 65% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* FIX 4: Sticky bottom buttons */
@media (max-width: 767px) {
  .pinnacle-sticky-btns {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    z-index: 9999;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
  }
  .pinnacle-sticky-btns a {
    flex: 1 1 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 10px;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    line-height: 1.2;
  }
  .pinnacle-sticky-btns .sticky-btn-schedule {
    background-color: #000000;
    color: #ffffff;
  }
  .pinnacle-sticky-btns .sticky-btn-call {
    background-color: #F5A623;
    color: #ffffff;
  }
  body {
    padding-bottom: 60px !important;
  }
}
@media (min-width: 768px) {
  .pinnacle-sticky-btns {
    display: none !important;
  }
}


/* ==============================================
   SECTION B: DESIGN POLISH (mobile only)
   ============================================== */

@media (max-width: 767px) {

  /* B1: UNIFIED ORANGE */
  .elementor-widget-button .elementor-button,
  .elementor-widget-icon-box .elementor-icon {
    --e-global-color-primary: #F5A623 !important;
  }

  /* B2: SECTION SPACING */
  .elementor-location-single > .elementor > .e-parent {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .elementor-element-3e795696 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  /* B3: SERVICE CARDS */
  .elementor-element-75700e24 .e-child {
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    padding: 24px 20px !important;
    margin-bottom: 16px !important;
    background: #fff !important;
  }
  .elementor-element-75700e24 .elementor-icon-box-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
  }
  .elementor-element-75700e24 .elementor-icon-box-description {
    font-size: 15px !important;
    color: #555 !important;
    line-height: 1.6 !important;
  }

  /* B4: BUTTONS */
  .elementor-button {
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    padding: 16px 32px !important;
    transition: all 0.2s ease !important;
  }
  .elementor-element-3d62ae6 .elementor-button {
    border-radius: 8px !important;
  }

  /* B5: TYPOGRAPHY */
  .elementor-heading-title.elementor-size-default {
    line-height: 1.2 !important;
    margin-bottom: 12px !important;
  }
  .elementor-widget-text-editor p,
  .elementor-widget-text-editor {
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #333 !important;
  }
  .elementor-element-3e795696 .elementor-heading-title {
    letter-spacing: 2px !important;
  }

  /* B6: WHY CHOOSE CARDS */
  .elementor-element-635c6ed6 .e-child {
    border-radius: 8px !important;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.06) !important;
    padding: 20px !important;
    margin-bottom: 12px !important;
    border-left: 4px solid #F5A623 !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    background: #fff !important;
  }

  /* B7: GOOGLE REVIEWS */
  .elementor-element-68991792 {
    overflow: visible !important;
  }
  img[alt="Google"] {
    max-width: 50px !important;
    height: auto !important;
  }
  .elementor-element-68991792 .slick-slide {
    padding: 0 8px !important;
  }
  .elementor-element-68991792 .slick-list {
    overflow: visible !important;
    padding: 0 20px !important;
  }

  /* B8: FOOTER LINKS */
  .elementor-location-footer a {
    color: #F5A623 !important;
    text-decoration: none !important;
  }
  .elementor-location-footer a:hover {
    opacity: 0.8;
  }
  .elementor-location-footer .elementor-heading-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    color: #111 !important;
  }
  .elementor-location-footer .elementor-widget-text-editor {
    font-size: 14px !important;
    color: #888 !important;
  }

  /* B9: PEACH BACKGROUND */
  .elementor-element-3e795696,
  .elementor-element-62721ed1 {
    background-color: #FDF6F0 !important;
  }

  /* B10: CONTACT FORM */
  .elementor-element-68991792 input[type="text"],
  .elementor-element-68991792 input[type="email"],
  .elementor-element-68991792 input[type="tel"],
  .elementor-element-68991792 textarea {
    border: 1px solid #ddd !important;
    border-radius: 8px !important;
    padding: 14px 16px !important;
    font-size: 16px !important;
    transition: border-color 0.2s ease !important;
  }
  .elementor-element-68991792 input:focus,
  .elementor-element-68991792 textarea:focus {
    border-color: #F5A623 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(245, 166, 35, 0.15) !important;
  }

  /* B11: GENERAL POLISH */
  html {
    scroll-behavior: smooth;
  }
  .elementor-widget-image img:not(.wp-image-1022):not([alt="Google"]) {
    border-radius: 8px;
  }
  .e-parent + .e-parent {
    border-top: none !important;
  }
}

/* =============================================
   HEADER BUTTONS — Remove Schedule/Call from header
   (Sticky buttons at bottom preferred)
   ============================================= */

/* Hide the header CTA buttons container on all devices */
.elementor-element-2008a60c {
  display: none !important;
}

/* =============================================
   iOS HAMBURGER MENU FIX
   ============================================= */

/* Fix touch/tap on hamburger toggle for iOS Safari */
.elementor-menu-toggle {
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 100 !important;
}

/* Ensure the nav dropdown appears above everything when open */
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  z-index: 9999 !important;
  position: absolute !important;
}

/* Ensure nav widget wrapper doesn't clip the dropdown */
.elementor-widget-nav-menu {
  overflow: visible !important;
}

/* iOS: make sure the whole toggle area is tappable */
.elementor-menu-toggle::before {
  content: '';
  position: absolute;
  top: -10px;
  right: -10px;
  bottom: -10px;
  left: -10px;
}

/* =============================================
   NYC HOSPITAL BANNER — gradient (match tinnitus style)
   ============================================= */

/* Remove the flat solid orange background from widget wrapper */
.elementor-element-5c81b11d {
  background-color: transparent !important;
}

/* Apply the same gradient as the tinnitus header to the title */
.elementor-element-5c81b11d .elementor-heading-title {
  background: linear-gradient(90deg, rgb(247, 137, 59) 0%, rgb(253, 179, 71) 50%, rgb(247, 137, 59) 100%) !important;
  background-image: linear-gradient(90deg, rgb(247, 137, 59) 0%, rgb(253, 179, 71) 50%, rgb(247, 137, 59) 100%) !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: unset !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  display: block !important;
}

/* =============================================
   TINNITUS SECTION — Fix H3 subheading (not a banner)
   ============================================= */

/* The 2-sentence bold subheading should look like a title, not a banner */
.elementor-element-400e880 .elementor-heading-title {
  background: transparent !important;
  background-image: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: unset !important;
  color: #333333 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* =====================================================
   SERVICE BOXES — Fix title text wrapping (prevent cutoff)
   ===================================================== */
.elementor-element-75700e24 .elementor-icon-box-title,
.elementor-element-75700e24 .elementor-icon-box-title span {
  white-space: normal !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  overflow: visible !important;
}

/* =====================================================
   TINNITUS SECTION — H3 smaller font, fix icons white
   ===================================================== */
/* Smaller H3 subheading */
.elementor-element-400e880 .elementor-heading-title {
  font-size: 18px !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1.5 !important;
}

/* Tinnitus icon-box icons: white on orange */
.elementor-element-a1969f5 .elementor-icon-box-icon i,
.elementor-element-a1969f5 .elementor-icon-box-icon svg {
  color: #ffffff !important;
  fill: #ffffff !important;
}
.elementor-element-a1969f5 .elementor-icon-box-icon .e-font-icon-svg path,
.elementor-element-a1969f5 .elementor-icon-box-icon .e-font-icon-svg circle,
.elementor-element-a1969f5 .elementor-icon-box-icon .e-font-icon-svg rect {
  fill: #ffffff !important;
}

/* =====================================================
   INSURANCE SECTION — Sub-text: bigger, black font
   ===================================================== */
.elementor-element-488c121d p,
.elementor-element-488c121d {
  color: #111111 !important;
  font-size: 20px !important;
  font-weight: 400 !important;
}


/* =====================================================
   INSURANCE SECTION sub-text — FINAL OVERRIDE
   Black text, bigger size (appears last to win)
   ===================================================== */
.elementor-element-488c121d p,
.elementor-element-488c121d .elementor-widget-container p,
.elementor-element-488c121d .elementor-widget-container p b {
  color: #111111 !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  text-shadow: none !important;
}
/* Give it a subtle white pill background so black reads on the orange */
.elementor-element-488c121d .elementor-widget-container {
  background: rgba(255, 255, 255, 0.88) !important;
  border-radius: 8px !important;
  padding: 10px 24px !important;
  display: inline-block !important;
}


/* =====================================================
   PEACH/CREAM BACKGROUNDS → WHITE (sitewide minimalist)
   ===================================================== */
/* Tinnitus section - was #FFF8F0 */
.elementor-element-3d62ae6,
.elementor-element-3d62ae6 > .e-con-inner {
  background-color: #ffffff !important;
  background-image: none !important;
}
/* Kill any warm/peach background on ALL section containers */
.e-con[style*="background-color: rgb(255, 248, 240)"],
.e-con[style*="background-color:#FFF8F0"],
.elementor-section[style*="background-color: rgb(255, 248, 240)"] {
  background-color: #ffffff !important;
}
/* Broad override: all elementor containers with warm background */
.elementor-796 .e-con:not([data-id="3e795696"]):not([data-id="635c6ed6"]) {
  background-image: none !important;
}
/* Remove peach from top social bar area and between-section areas */
body .elementor-796 .elementor-section-wrap > .e-con > .e-con-inner,
body .elementor-796 > .elementor-section-wrap {
  background: #ffffff !important;
}

/* =====================================================
   SERVICE ICONS — Square shape (match tinnitus style)
   ===================================================== */
.elementor-element-75700e24 .elementor-icon-box-icon .elementor-icon {
  border-radius: 8px !important;
}

/* =====================================================
   INSURANCE SUB-TEXT — Black font, final override
   ===================================================== */
.elementor-element-488c121d,
.elementor-element-488c121d p,
.elementor-element-488c121d .elementor-widget-container p,
.elementor-element-488c121d .elementor-widget-container p b,
.elementor-element-488c121d span {
  color: #111111 !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  text-shadow: none !important;
}


/* =====================================================
   MOBILE HERO — Fix centering & layout
   ===================================================== */
@media (max-width: 767px) {
  /* Center all text in the hero section */
  .elementor-element-3e795696 .elementor-widget-container,
  .elementor-element-3e795696 p,
  .elementor-element-3e795696 h1,
  .elementor-element-3e795696 h2 {
    text-align: center !important;
  }

  /* Center the CTA button on mobile */
  .elementor-element-3e795696 .elementor-button-wrapper,
  .elementor-element-3e795696 .elementor-widget-button {
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
  }
  .elementor-element-3e795696 .elementor-button {
    width: auto !important;
    max-width: 90vw !important;
  }

  /* Hero sub-copy centered */
  .elementor-element-68678b66 {
    text-align: center !important;
  }
  .elementor-element-68678b66 p {
    text-align: center !important;
  }
}

/* =====================================================
   MOBILE HEADER — Hamburger flush RIGHT
   ===================================================== */
@media (max-width: 1024px) {
  /* Ensure the header container is flex with space-between */
  .elementor-element-2008a60c,
  header .elementor-container,
  header .e-con-inner {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  /* Push hamburger to the far right */
  .elementor-widget-nav-menu {
    margin-left: auto !important;
  }
  .elementor-menu-toggle {
    margin-left: auto !important;
    display: flex !important;
  }
}

/* ── Remove peach gradient from hero/Dr Nelson section ── */
.elementor-element-3e795696 {
  background-image: none !important;
  background-color: #ffffff !important;
}
/* ── Remove peach from services section wrapper ── */
.elementor-element-75700e24,
.elementor-element-75700e24 > .e-con-inner {
  background-image: none !important;
  background-color: #ffffff !important;
}
/* ── FINAL FIX: Remove ALL peach gradients everywhere ── */
.elementor-element-3e795696,
.elementor-element-3e795696 > .e-con-inner {
  background: #ffffff !important;
}
.elementor-element-62721ed1,
.elementor-element-62721ed1 > .e-con-inner {
  background: #ffffff !important;
}
.elementor-element-75700e24,
.elementor-element-75700e24 > .e-con-inner {
  background: #ffffff !important;
}
/* ── Hide decorative background image overlays on services & Dr Nelson sections ── */
.elementor-element-75700e24::before,
.elementor-element-75700e24 > .elementor-background-video-container::before,
.elementor-element-62721ed1::before {
  opacity: 0 !important;
  display: none !important;
}
/* ── Show insurance "Check Your Coverage" button ── */
.elementor-element-76f4fc81 {
  display: block !important;
}
.elementor-element-76f4fc81 .elementor-button {
  display: inline-block !important;
}
/* ── Hide Elementor top sticky bar on mobile (keep only WPCode bottom bar) ── */
@media (max-width: 1024px) {
  .elementor-element-2008a60c {
    display: none !important;
  }
}

/* ── Center "Schedule Your Consultation" button on mobile ── */
@media (max-width: 767px) {
  .elementor-element-52da5e95,
  .elementor-element-52da5e95 .elementor-widget-container,
  .elementor-element-52da5e95 .elementor-button-wrapper {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    text-align: center !important;
  }
  .elementor-element-491323d0,
  .elementor-element-491323d0 .elementor-widget-container,
  .elementor-element-491323d0 .elementor-button-wrapper {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
}

/* ═══════════════════════════════════════════════════════
   MODERN REDESIGN — March 2026
   ═══════════════════════════════════════════════════════ */

/* ── 1. "What Makes Pinnacle Different" heading: remove orange block ── */
.elementor-element-4a742a78 {
  background-color: transparent !important;
  background: transparent !important;
  padding: 0 !important;
}
.elementor-element-4a742a78 .elementor-heading-title {
  color: #1a1a1a !important;
  display: inline-block !important;
  padding-bottom: 14px !important;
  border-bottom: 4px solid #f7941d !important;
}

/* ── 2. "Why Pinnacle" — pure typographic, no cards ── */
/* Section: clean white */
.elementor-element-666237f7,
.elementor-element-666237f7 > .e-con-inner {
  background: #ffffff !important;
}
/* Cards: completely flat, no box, no border, no shadow */
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-element-142c047d:hover,
.elementor-element-611ce277:hover,
.elementor-element-4ffaec0c:hover,
.elementor-element-34507a69:hover,
.elementor-element-1e2efa7e:hover,
.elementor-element-e30009e:hover {
  transform: none !important;
  box-shadow: none !important;
}
/* Hide icon entirely */
.elementor-element-142c047d .elementor-icon-box-icon,
.elementor-element-611ce277 .elementor-icon-box-icon,
.elementor-element-4ffaec0c .elementor-icon-box-icon,
.elementor-element-34507a69 .elementor-icon-box-icon,
.elementor-element-1e2efa7e .elementor-icon-box-icon,
.elementor-element-e30009e .elementor-icon-box-icon {
  display: none !important;
}
/* Title: bold with orange bar above */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  color: #111827 !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
  padding-top: 16px !important;
  border-top: 3px solid #e87929 !important;
  margin-bottom: 10px !important;
  display: block !important;
}
.elementor-element-142c047d .elementor-icon-box-title a,
.elementor-element-611ce277 .elementor-icon-box-title a,
.elementor-element-4ffaec0c .elementor-icon-box-title a,
.elementor-element-34507a69 .elementor-icon-box-title a,
.elementor-element-1e2efa7e .elementor-icon-box-title a,
.elementor-element-e30009e .elementor-icon-box-title a {
  color: #111827 !important;
}
/* Description: clean readable gray */
.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  color: #6b7280 !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}
/* ── 3. Service icon cards: fill icons, crisp hover ── */
.elementor-element-291ebf7a .elementor-icon,
.elementor-element-425b8583 .elementor-icon,
.elementor-element-517db125 .elementor-icon,
.elementor-element-74fb9cdc .elementor-icon {
  width: 80px !important;
  height: 80px !important;
  line-height: 80px !important;
  border-radius: 18px !important;
}
.elementor-element-291ebf7a .elementor-icon i,
.elementor-element-425b8583 .elementor-icon i,
.elementor-element-517db125 .elementor-icon i,
.elementor-element-74fb9cdc .elementor-icon i,
.elementor-element-291ebf7a .elementor-icon svg,
.elementor-element-425b8583 .elementor-icon svg,
.elementor-element-517db125 .elementor-icon svg,
.elementor-element-74fb9cdc .elementor-icon svg {
  font-size: 36px !important;
  width: 38px !important;
  height: 38px !important;
}
.elementor-element-291ebf7a,
.elementor-element-425b8583,
.elementor-element-517db125,
.elementor-element-74fb9cdc {
  background: #ffffff !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  cursor: pointer !important;
}
.elementor-element-291ebf7a:hover,
.elementor-element-425b8583:hover,
.elementor-element-517db125:hover,
.elementor-element-74fb9cdc:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.10) !important;
}

/* ── 4. Badge/logo tiles: white backgrounds, no beige, hover cursor ── */
.elementor-element-3eb153a6,
.elementor-element-3eb153a6 > *,
.elementor-element-3eb153a6 .elementor-widget-wrap,
.elementor-element-3eb153a6 [data-id] {
  background-color: #ffffff !important;
  background: #ffffff !important;
}
.elementor-element-3eb153a6 .elementor-widget-image {
  background: #ffffff !important;
  border-radius: 8px !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  cursor: pointer !important;
}
.elementor-element-3eb153a6 .elementor-widget-image:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.09) !important;
}


/* ============================================
   MEET THE TEAM PAGE — Modern Minimal Redesign
   ============================================ */

/* --- Team Photos: Uniform circular crop with consistent styling --- */
.page-id-793 .elementor-widget-image img.size-large {
  width: 220px !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: top center !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08) !important;
  border: 4px solid #fff !important;
  outline: 1px solid rgba(0,0,0,0.04) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}
.page-id-793 .elementor-widget-image img.size-large:hover {
  transform: scale(1.04) !important;
  box-shadow: 0 8px 32px rgba(232, 115, 42, 0.15) !important;
}

/* --- Page heading: modern thin uppercase with accent underline --- */
.page-id-793 .elementor-widget-heading:first-of-type .elementor-heading-title {
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #e8732a !important;
  position: relative !important;
  padding-bottom: 16px !important;
}
.page-id-793 .elementor-widget-heading:first-of-type .elementor-heading-title::after {
  content: '' !important;
  display: block !important;
  width: 50px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #e8732a, #d4a574) !important;
  margin: 16px auto 0 !important;
  border-radius: 2px !important;
}

/* --- Team member names: clean, refined typography --- */
.page-id-793 h2.elementor-heading-title {
  font-size: 26px !important;
  font-weight: 600 !important;
  letter-spacing: -0.3px !important;
  color: #1a1a2e !important;
  margin-bottom: 4px !important;
}

/* --- Role/title text: subtle accent styling --- */
.page-id-793 h3.elementor-heading-title {
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #e8732a !important;
  margin-bottom: 20px !important;
}

/* --- Bio text: better readability with constrained width --- */
.page-id-793 .elementor-widget-text-editor {
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.page-id-793 .elementor-widget-text-editor p {
  color: #555 !important;
  line-height: 1.8 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

/* --- Subtle divider between team members --- */
.page-id-793 .elementor-widget-image .elementor-widget-container {
  position: relative !important;
}
.page-id-793 .elementor-793 > .elementor-element > .elementor-element:not(:first-child) > .elementor-widget-image .elementor-widget-container::before {
  content: '' !important;
  display: block !important;
  width: 40px !important;
  height: 1px !important;
  background: #e0dcd7 !important;
  margin: 20px auto 35px !important;
}

/* --- Overall section spacing improvements --- */
.page-id-793 .elementor-793 .elementor-widget {
  margin-bottom: 8px !important;
}
.page-id-793 .elementor-793 .elementor-widget-image {
  margin-bottom: 20px !important;
  margin-top: 15px !important;
}

/* --- Subtle background treatment for page content area --- */
.page-id-793 .elementor-793 {
  background: linear-gradient(180deg, #ffffff 0%, #faf9f7 40%, #f7f5f2 100%) !important;
  padding: 60px 20px 80px !important;
}

/* --- Responsive adjustments --- */
@media (max-width: 768px) {
  .page-id-793 .elementor-widget-image img.size-large {
    width: 180px !important;
    height: 180px !important;
  }
  .page-id-793 h2.elementor-heading-title {
    font-size: 22px !important;
  }
  .page-id-793 .elementor-widget-text-editor p {
    font-size: 14px !important;
  }
}

/* --- Fix: Team member names (h3 in text-editor widgets) --- */
.page-id-793 .elementor-793 .elementor-widget-text-editor h3 {
  font-size: 26px !important;
  font-weight: 600 !important;
  letter-spacing: -0.3px !important;
  color: #1a1a2e !important;
  margin-bottom: 2px !important;
  margin-top: 8px !important;
}

/* --- Fix: Role titles (h5 in text-editor widgets) --- */
.page-id-793 .elementor-793 .elementor-widget-text-editor h5 {
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #e8732a !important;
  margin-bottom: 20px !important;
  margin-top: 0 !important;
}

/* --- Fix: Remove bold styling on names inside h3 --- */
.page-id-793 .elementor-793 .elementor-widget-text-editor h3 strong {
  font-weight: 600 !important;
}

/* --- FIX 1: Remove orange box shadow from Dr. Nelson photo widget --- */
.elementor-element-07c6cd3 {
  box-shadow: none !important;
}

/* --- FIX 2: Meet The Team header — 3x larger (14px → 42px) --- */
.page-id-793 .elementor-widget-heading .elementor-heading-title {
  font-size: 42px !important;
  letter-spacing: 5px !important;
}

/* --- FIX 3: Strip inline bold from all bios so they match Dr. Nelson's exactly --- */
.page-id-793 .elementor-793 .elementor-widget-text-editor p strong,
.page-id-793 .elementor-793 .elementor-widget-text-editor p b {
  font-weight: 400 !important;
  font-style: normal !important;
}

/* --- FIX 2 override: stronger specificity to win against :first-of-type rule --- */
.page-id-793 .elementor-widget-heading:first-of-type .elementor-heading-title,
.page-id-793 .elementor-widget-heading .elementor-heading-title {
  font-size: 42px !important;
  letter-spacing: 5px !important;
}

/* ── BIO TEXT: normalize span/b font-size to match paragraph ── */
.page-id-793 p span,
.page-id-793 p b,
.page-id-793 p strong {
  font-size: inherit !important;
  font-weight: normal !important;
  font-style: normal !important;
}

/* ── NAME HEADINGS: normalize h3 b to match h3 strong weight ── */
.page-id-793 h3 b,
.page-id-793 h3 strong {
  font-weight: 600 !important;
}

/* === WHAT MAKES PINNACLE DIFFERENT — REDESIGNED === */

/* Section background: soft airy gradient */
.elementor-element-666237f7,
.elementor-element-666237f7 > .e-con-inner {
  background: linear-gradient(150deg, #f8fafc 0%, #eef2f7 100%) !important;
}

/* Card reset: remove black, add clean white card style */
.elementor-element-142c047d,
.elementor-element-611ce277,
.elementor-element-4ffaec0c,
.elementor-element-34507a69,
.elementor-element-1e2efa7e,
.elementor-element-e30009e {
  background: #ffffff !important;
  border-radius: 16px !important;
  border-left: 4px solid #e87929 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.07), 0 1px 4px rgba(0,0,0,0.04) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

/* Hover: card lifts */
.elementor-element-142c047d:hover,
.elementor-element-611ce277:hover,
.elementor-element-4ffaec0c:hover,
.elementor-element-34507a69:hover,
.elementor-element-1e2efa7e:hover,
.elementor-element-e30009e:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 16px 40px rgba(232,121,43,0.15), 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Icon: soft warm pill background */
.elementor-element-142c047d .elementor-icon-wrapper,
.elementor-element-611ce277 .elementor-icon-wrapper,
.elementor-element-4ffaec0c .elementor-icon-wrapper,
.elementor-element-34507a69 .elementor-icon-wrapper,
.elementor-element-1e2efa7e .elementor-icon-wrapper,
.elementor-element-e30009e .elementor-icon-wrapper {
  background: linear-gradient(135deg, #fff4ed 0%, #ffedd5 100%) !important;
  border-radius: 12px !important;
  padding: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Icon color: brand orange */
.elementor-element-142c047d .elementor-icon,
.elementor-element-611ce277 .elementor-icon,
.elementor-element-4ffaec0c .elementor-icon,
.elementor-element-34507a69 .elementor-icon,
.elementor-element-1e2efa7e .elementor-icon,
.elementor-element-e30009e .elementor-icon {
  color: #e87929 !important;
  fill: #e87929 !important;
  background: transparent !important;
}

/* Card title: deep charcoal */
.elementor-element-142c047d .elementor-icon-box-title,
.elementor-element-611ce277 .elementor-icon-box-title,
.elementor-element-4ffaec0c .elementor-icon-box-title,
.elementor-element-34507a69 .elementor-icon-box-title,
.elementor-element-1e2efa7e .elementor-icon-box-title,
.elementor-element-e30009e .elementor-icon-box-title {
  color: #1e293b !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: -0.2px !important;
}

.elementor-element-142c047d .elementor-icon-box-title a,
.elementor-element-611ce277 .elementor-icon-box-title a,
.elementor-element-4ffaec0c .elementor-icon-box-title a,
.elementor-element-34507a69 .elementor-icon-box-title a,
.elementor-element-1e2efa7e .elementor-icon-box-title a,
.elementor-element-e30009e .elementor-icon-box-title a {
  color: #1e293b !important;
}

/* Card description: readable slate gray */
.elementor-element-142c047d .elementor-icon-box-description,
.elementor-element-611ce277 .elementor-icon-box-description,
.elementor-element-4ffaec0c .elementor-icon-box-description,
.elementor-element-34507a69 .elementor-icon-box-description,
.elementor-element-1e2efa7e .elementor-icon-box-description,
.elementor-element-e30009e .elementor-icon-box-description {
  color: #64748b !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
/* === END REDESIGNED CARDS === */

/* ============================================================
   MOBILE POLISH — comprehensive layout, spacing & readability
   ============================================================ */
@media (max-width: 767px) {

  /* ── 1. TYPOGRAPHY SCALE ──────────────────────────────── */
  body .elementor-element h1.elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
  body .elementor-element h2.elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.25 !important;
  }
  body .elementor-element h3.elementor-heading-title {
    font-size: 19px !important;
    line-height: 1.35 !important;
  }
  body .elementor-element h4.elementor-heading-title {
    font-size: 17px !important;
    line-height: 1.3 !important;
  }
  .elementor-location-footer .elementor-element h2.elementor-heading-title {
    font-size: 15px !important;
  }

  /* ── 2. HERO — tighten min-height and padding ─────────── */
  .elementor-element-3e795696 {
    --min-height: 380px !important;
    min-height: 380px !important;
  }
  body .elementor-element.elementor-element-3e795696 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .elementor-element-610266e {
    --padding-top: 10px !important;
    --padding-bottom: 10px !important;
  }

  /* ── 3. GLOBAL SECTION PADDING — tighten all sections ── */
  .e-con.e-parent {
    --padding-top: 25px !important;
    --padding-bottom: 25px !important;
  }

  /* ── 4. TEAM SECTION ─────────────────────────────────── */
  body .elementor-element.elementor-element-62721ed1 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .elementor-element-69ba6eaf,
  .elementor-element-7acbae76 {
    --padding-top: 10px !important;
    --padding-bottom: 10px !important;
    --gap: 10px !important;
  }

  /* ── 5. FIX ANIMATED HEADLINE — overflow + block layout ──── */
  .elementor-element-62721ed1 {
    overflow: visible !important;
  }
  .elementor-element-390f2740 .elementor-headline-dynamic-wrapper {
    display: block !important;
    text-align: center !important;
    overflow: visible !important;
  }
  .elementor-element-390f2740 .elementor-headline-dynamic-text {
    font-size: 18px !important;
    display: inline !important;
    white-space: normal !important;
    word-wrap: break-word !important;
  }
  .elementor-element-78ddc1e5,
  .elementor-element-7acbae76 {
    overflow: visible !important;
  }

  /* ── 6. SERVICES & TINNITUS SECTIONS ─────────────────── */
  body .elementor-element.elementor-element-75700e24,
  body .elementor-element.elementor-element-3d62ae6 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .elementor-element-1bbc4d54,
  .elementor-element-2d3681ef,
  .elementor-element-6e482949,
  .elementor-element-2155af60,
  .elementor-element-78270077,
  .elementor-element-e324cf7,
  .elementor-element-7fdb45e,
  .elementor-element-45feba7,
  .elementor-element-411b698 {
    --padding-top: 10px !important;
    --padding-bottom: 10px !important;
  }
  .elementor-icon-box-icon .elementor-icon,
  .elementor-icon-box .elementor-icon {
    width: 60px !important;
    height: 60px !important;
    font-size: 28px !important;
    line-height: 60px !important;
  }
  .elementor-icon-box-icon {
    margin-bottom: 8px !important;
  }

  /* ── 7. OFFICE IMAGE — remove excessive top padding ───── */
  .elementor-element-3c8f904 {
    padding-top: 20px !important;
  }

  /* ── 8. INSURANCE / COVERAGE SECTION — READABILITY FIX ─ */
  .elementor-element-c5357bd h2.elementor-heading-title {
    color: #1d1d1d !important;
    -webkit-text-fill-color: #1d1d1d !important;
    text-shadow: none !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
  }
  .elementor-element-488c121d p {
    color: #2a2a2a !important;
    -webkit-text-fill-color: #2a2a2a !important;
    font-size: 15px !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }
  .elementor-element-4385ff7a {
    background-color: #ffffff !important;
  }
  body .elementor-element.elementor-element-635c6ed6 {
    min-height: 0 !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  /* ── 9. WHAT MAKES PINNACLE DIFFERENT ─────────────────── */
  body .elementor-element.elementor-element-666237f7 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  /* ── 10. REVIEWS SECTION ──────────────────────────────── */
  body .elementor-element.elementor-element-68991792 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .elementor-element-28996cbf {
    --padding-top: 10px !important;
    --padding-bottom: 10px !important;
  }

  /* ── 11. BADGES / LOGOS GRID — center orphaned last item ─ */
  body .elementor-element.elementor-element-3eb153a6 {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  body .elementor-element.elementor-element-f2aec42 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
  }
  body .elementor-element.elementor-element-f2aec42 .elementor-widget-container {
    display: flex !important;
    justify-content: center !important;
  }

  /* ── 11b. BADGES — white backgrounds, square, tight padding ── */
  .elementor-element-3eb153a6 > .e-con-inner {
    padding-bottom: 5px !important;
  }
  .elementor-element-3eb153a6 > .e-con-inner > .elementor-element {
    margin-bottom: 0 !important;
  }
  .elementor-element-3eb153a6 img {
    background-color: #ffffff !important;
    border-radius: 0px !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
  }

  /* ── 12. FOOTER — override theme forced 40px padding ──── */
  footer .e-con {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  footer .elementor-element-4d3c1434.e-con {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  footer .elementor-element-6f5a136e.e-con,
  footer .elementor-element-6e9970d7.e-con,
  footer .elementor-element-19a4246b.e-con {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .elementor-location-footer .elementor-nav-menu a,
  .elementor-location-footer .menu-item a {
    display: block !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    line-height: 1.4 !important;
  }

  /* ── 13. GLOBAL WIDGET SPACING ────────────────────────── */
  .elementor-widget:not(:last-child) {
    margin-bottom: 10px !important;
  }
}

/* ================================================
   PINNACLE AUDIOLOGY — GLOBAL STYLE REFRESH
   Matches the clean, boutique feel of the new page
   ================================================ */

/* --- Typography: better readability site-wide --- */
body, p, li, td, blockquote {
  line-height: 1.78;
  letter-spacing: 0.01em;
}

/* --- Headings: tighter, more refined --- */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  letter-spacing: -0.015em;
  line-height: 1.22;
}

/* --- Buttons: clean, consistent, on-brand --- */
.elementor-button,
a.elementor-button,
.wp-element-button,
.wp-block-button__link {
  border-radius: 4px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  transition: opacity 0.2s ease, transform 0.15s ease !important;
}
.elementor-button:hover,
a.elementor-button:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
}

/* --- Links: orange accent, no underline clutter --- */
.entry-content a:not([class]),
.elementor-text-editor a:not([class]) {
  color: #F7893B;
  text-decoration: none;
  border-bottom: 1px solid rgba(247,137,59,0.35);
  transition: border-color 0.2s;
}
.entry-content a:not([class]):hover,
.elementor-text-editor a:not([class]):hover {
  border-bottom-color: #F7893B;
}

/* --- Sections: generous breathing room --- */
.elementor-top-section > .elementor-container {
  max-width: 1140px;
}

/* --- Images: subtle rounding for softness --- */
.elementor-widget-image img,
.wp-post-image {
  border-radius: 6px;
}

/* --- Cards / inner sections: cleaner shadows --- */
.elementor-widget-wrap > .elementor-element .elementor-widget-container {
  transition: none;
}

/* --- Page title: hide default WP page title (Elementor handles it) --- */
.page .entry-title,
.page h1.entry-title {
  display: none;
}

/* ================================================
   PINNACLE AUDIOLOGY — DEEPER STYLE REFRESH v2
   Toning headings, cleaning banners, unifying buttons
   ================================================ */

/* --- Headings: reduce ultra-heavy weight to refined bold --- */
h1, .elementor-heading-title[class*="elementor-size-xxl"],
.elementor-heading-title[class*="elementor-size-xl"] {
  font-weight: 700 !important;
}
h2, h3, h4,
.elementor-heading-title {
  font-weight: 600 !important;
}

/* --- Remove italic from all headings and banners --- */
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title,
h1, h2, h3, h4, h5, h6 {
  font-style: normal !important;
}

/* --- All buttons should be orange, not black --- */
.elementor-button,
a.elementor-button {
  background-color: #F7893B !important;
  color: #ffffff !important;
  border-color: #F7893B !important;
}
.elementor-button:hover,
a.elementor-button:hover {
  background-color: #d97530 !important;
  border-color: #d97530 !important;
  color: #ffffff !important;
}

/* --- Exception: ghost/outline buttons keep their style --- */
.elementor-button.elementor-button-ghost,
a.elementor-button.elementor-button-ghost {
  background-color: transparent !important;
  color: #F7893B !important;
  border: 2px solid #F7893B !important;
}

/* --- Orange section label banners: remove italic, lighter weight --- */
.elementor-widget-heading .elementor-heading-title[style*="background"] {
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
}

/* --- Body font: consistent, readable size --- */
body, .elementor-widget-text-editor p,
.elementor-text-editor p {
  font-size: 17px;
  line-height: 1.8;
  color: #2d2d2d;
}

/* --- Section max-width: keeps content centered and clean --- */
.elementor-section.elementor-top-section > .elementor-container,
.e-con.e-parent {
  max-width: 1160px !important;
}

/* --- Service/feature cards: cleaner, less heavy shadow --- */
.elementor-widget-wrap .elementor-column-wrap,
.elementor-widget-wrap {
  transition: none;
}

/* --- Orange icon boxes: slightly smaller icons for refinement --- */
.elementor-icon-box-icon .elementor-icon {
  font-size: 36px !important;
}

/* --- Consistent link color --- */
a {
  color: #F7893B;
}
a:hover {
  color: #d97530;
  text-decoration: none;
}

/* --- Nav links: keep dark, not orange --- */
.elementor-nav-menu a,
.elementor-nav-menu--main a,
header a,
.site-header a {
  color: inherit !important;
}

/* --- Footer: clean, slightly smaller text --- */
footer, .elementor-location-footer {
  font-size: 14px;
  line-height: 1.7;
}

/* ================================================
   PINNACLE AUDIOLOGY — HEADING WEIGHT FIX
   Oswald at 900 = too loud. 600 = clean & confident.
   ================================================ */

/* Drop Oswald from ultra-black (900) to semi-bold (600) */
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title,
h1, h2, h3, h4, h5, h6 {
  font-weight: 600 !important;
}

/* Main hero headline can be slightly bolder — still not 900 */
.elementor-heading-title.elementor-size-xxl,
.elementor-heading-title.elementor-size-xl {
  font-weight: 700 !important;
}

/* Orange banner labels — lighter weight feels more boutique */
.elementor-widget-heading .elementor-heading-title[style*="color: rgb(255"],
.elementor-widget-heading .elementor-heading-title[style*="color:#fff"],
.elementor-widget-heading .elementor-heading-title[style*="color: #fff"] {
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
}

/* Section subheadings in black — not as heavy as main titles */
.elementor-size-large { font-weight: 600 !important; }
.elementor-size-medium { font-weight: 600 !important; }
.elementor-size-small { font-weight: 500 !important; }

/* Service card titles */
.elementor-icon-box-title,
.elementor-icon-box-title * {
  font-weight: 600 !important;
}

/* ================================================
   PINNACLE AUDIOLOGY — TARGETED HEADING FIXES
   Override hardcoded element-level font weights
   ================================================ */

/* Hero headline "Hear Everything. Miss Nothing." — was hardcoded 900 */
.elementor-element-559f5fbc .elementor-heading-title,
.elementor-element-559f5fbc h1 {
  font-weight: 700 !important;
}

/* Insurance section heading — was hardcoded 800 */
.elementor-element-c5357bd .elementor-heading-title,
.elementor-element-c5357bd h2,
.elementor-element-c5357bd h3 {
  font-weight: 600 !important;
}

/* Ensure ALL Elementor headings are capped at 700 — belt and suspenders */
[class*="elementor-element-"] .elementor-heading-title {
  font-weight: 600 !important;
}
[class*="elementor-element-"] .elementor-size-xxl.elementor-heading-title,
[class*="elementor-element-"] .elementor-size-xl.elementor-heading-title {
  font-weight: 700 !important;
}

/* ===================================================== */
/* === FINAL WEIGHT FIX — overrides all prior 900 rules */
/* === Uses same specificity as conflicting rules above  */
/* ===================================================== */
.elementor-element-559f5fbc h1.elementor-heading-title {
  font-weight: 700 !important;
  font-size: 52px !important;
}
.elementor-element-c5357bd h1.elementor-heading-title,
.elementor-element-c5357bd h2.elementor-heading-title,
.elementor-element-c5357bd h3.elementor-heading-title {
  font-weight: 600 !important;
}



/* ============================================
   FOOTER REDESIGN — matches new homepage aesthetic
   ============================================ */

/* Load Open Sans if not already present in footer context */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600&display=swap');

/* --- Main footer body --- */
footer.elementor-location-footer .elementor-element-58c1290a {
  border-top: 1px solid #ede8e1 !important;
  background: #faf7f4 !important;
}
footer.elementor-location-footer .elementor-element-4d3c1434 {
  background: transparent !important;
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

/* --- Logo column tagline text --- */
footer.elementor-location-footer .elementor-element-2e8d9d11 p,
footer.elementor-location-footer .elementor-element-2e8d9d11 {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #9a9a9a !important;
  line-height: 1.7 !important;
  max-width: 220px;
}

/* --- Section headings: Quick Links / Contact Us --- */
footer.elementor-location-footer .elementor-heading-title {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #aaa !important;
  margin-bottom: 20px !important;
}

/* --- Quick Links list items --- */
footer.elementor-location-footer .elementor-icon-list-item a,
footer.elementor-location-footer .elementor-icon-list-text {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #4d4d4d !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
footer.elementor-location-footer .elementor-icon-list-item a:hover,
footer.elementor-location-footer .elementor-icon-list-item a:hover .elementor-icon-list-text {
  color: #F7893B !important;
}

/* --- Icon list icon color (envelope, phone, map pin) --- */
footer.elementor-location-footer .elementor-icon-list-icon,
footer.elementor-location-footer .elementor-icon-list-icon svg,
footer.elementor-location-footer .elementor-icon-list-icon i {
  color: #F7893B !important;
  fill: #F7893B !important;
  font-size: 13px !important;
}

/* --- Contact info text (addresses, phone, email) --- */
footer.elementor-location-footer .elementor-icon-list-item .elementor-icon-list-text {
  font-size: 13px !important;
  color: #4d4d4d !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* --- Copyright / bottom bar: replace orange gradient with charcoal --- */
.elementor-element-27a96160,
.elementor-element-27a96160 .e-con-inner {
  background: #1a1a1a !important;
  background-image: none !important;
}
.elementor-element-27a96160 .elementor-heading-title,
.elementor-element-27a96160 h2,
.elementor-element-27a96160 p {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #888 !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
}




/* ============================================
   HOMEPAGE TWEAKS — logo / woman / buttons / photo / mobile
   ============================================ */

/* 1. LOGO — prominent */
.elementor-element-68fd477f img,
.elementor-element-68fd477f .elementor-image img {
  width: 210px !important;
  max-width: 210px !important;
  height: auto !important;
}

/* 2. HERO WOMAN — scaled */
.pnw-hero-woman { width: 270px !important; }
.pnw-arch-circle { width: 330px !important; height: 330px !important; }

/* 3. BUTTONS — large, intentional */
.pnw-btn {
  padding: 20px 52px !important;
  font-size: 13px !important;
  letter-spacing: 0.18em !important;
  border-radius: 3px !important;
  box-shadow: 0 2px 12px rgba(247,137,59,0.18) !important;
}
.pnw-btn-primary { background: #F7893B !important; color: #fff !important; }
.pnw-btn-primary:hover {
  background: #e67220 !important;
  box-shadow: 0 4px 20px rgba(247,137,59,0.32) !important;
  transform: translateY(-1px) !important;
}
.pnw-hero-phone { font-size: 15px !important; font-weight: 600 !important; }

/* 4. DR. NELSON PHOTO — circular, minimal ring */

/* Container: square, no overflow clip, no border-radius */
.pnw-about-img {
  flex: 0 0 400px !important;
  width: 400px !important;
  height: 400px !important;
  overflow: visible !important;
  border-radius: 0 !important;
  position: relative !important;
}

/* Photo: circular crop, square aspect, face-focused crop */
.pnw-about-img img {
  width: 400px !important;
  height: 400px !important;
  object-fit: cover !important;
  object-position: center 12% !important;
  border-radius: 50% !important;
  display: block !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Badge: overlays bottom-right of the circle, above photo */
.pnw-about-img-badge {
  position: absolute !important;
  bottom: 30px !important;
  right: 16px !important;
  z-index: 2 !important;
  border-radius: 3px !important;
}

/* Ring: concentric orange hairline around the circle */
.pnw-about-img::before {
  content: '' !important;
  position: absolute !important;
  width: 480px !important;
  height: 480px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(247, 137, 59, 0.50) !important;
  background: rgba(247, 137, 59, 0.025) !important;
  top: -40px !important;
  left: -40px !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Accent dot: small filled orange pip, bottom-right outside ring */
.pnw-about-img::after {
  content: '' !important;
  position: absolute !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 50% !important;
  background: #F7893B !important;
  border: none !important;
  bottom: -55px !important;
  right: 50px !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

/* About section: allow ring to overflow below */
.pnw-about, .pnw-about-inner { overflow: visible !important; }
.pnw-about { padding-bottom: 120px !important; }

/* ============================================
   MOBILE OVERHAUL
   ============================================ */

@media (max-width: 900px) {

  /* — Section spacing — */
  .pnw-hero { padding: 48px 0 0 !important; }
  .pnw-about { padding: 72px 0 100px !important; }
  .pnw-services { padding: 72px 0 !important; }
  .pnw-why { padding: 72px 0 !important; }
  .pnw-insurance { padding: 60px 0 !important; }
  .pnw-reviews { padding: 72px 0 !important; }
  .pnw-contact { padding: 72px 0 !important; }

  /* — Hero — */
  .pnw-hero-inner { flex-direction: column !important; align-items: stretch !important; }
  .pnw-hero-visual { display: block !important; }
  .pnw-hero-text { padding-bottom: 52px !important; padding-top: 12px !important; }
  .pnw-h1 { font-size: 44px !important; }
  .pnw-hero-actions { gap: 18px !important; }
  .pnw-btn { padding: 18px 40px !important; }

  /* — Trust strip — */
  .pnw-trust-inner {
    justify-content: center !important;
    gap: 10px 28px !important;
    flex-wrap: wrap !important;
  }
  .pnw-trust-sep { display: none !important; }

  /* — About: stack, center the circular photo — */
  .pnw-about-inner { flex-direction: column !important; align-items: center !important; gap: 56px !important; }
  .pnw-about-img {
    flex: none !important;
    width: 300px !important;
    height: 300px !important;
    margin: 40px auto 0 !important;
  }
  .pnw-about-img img {
    width: 300px !important;
    height: 300px !important;
  }
  .pnw-about-img::before {
    width: 360px !important;
    height: 360px !important;
    top: -30px !important;
    left: -30px !important;
  }
  .pnw-about-img::after {
    bottom: -44px !important;
    right: 30px !important;
  }
  .pnw-about-text { width: 100% !important; text-align: left !important; }
  .pnw-detail-row { gap: 20px !important; }

  /* — Services: 2-col → use wrap — */
  .pnw-grid-3 { grid-template-columns: 1fr 1fr !important; gap: 16px !important; }

  /* — Why Pinnacle — */
  .pnw-diff-grid { grid-template-columns: 1fr 1fr !important; gap: 32px !important; }

  /* — Insurance band — */
  .pnw-insurance-inner { padding: 0 32px !important; }
  .pnw-insurance .pnw-h2 { font-size: 30px !important; }

  /* — Contact — */
  .pnw-contact-inner { grid-template-columns: 1fr !important; gap: 48px !important; }
}

@media (max-width: 600px) {

  /* — Global padding — */
  .pnw-wrap, .pnw-hero-inner, .pnw-about-inner,
  .pnw-contact-inner, .pnw-trust-inner, .pnw-creds-inner,
  .pnw-insurance-inner, .pnw-services > .pnw-wrap,
  .pnw-why > .pnw-wrap, .pnw-reviews > .pnw-wrap { padding-left: 20px !important; padding-right: 20px !important; }

  /* — Type — */
  .pnw-h1 { font-size: 36px !important; line-height: 1.08 !important; }
  .pnw-h2 { font-size: 28px !important; }
  .pnw-h3 { font-size: 18px !important; }
  .pnw-body { font-size: 16px !important; }

  /* — Button: full-width on smallest screens — */
  .pnw-hero-actions { flex-direction: column !important; align-items: flex-start !important; gap: 16px !important; }
  .pnw-btn { padding: 18px 36px !important; font-size: 12px !important; }

  /* — Trust strip: compact 2-column — */
  .pnw-trust-inner { gap: 8px 16px !important; }
  .pnw-trust-item { font-size: 10px !important; }

  /* — About photo: smaller circle — */
  .pnw-about-img { width: 260px !important; height: 260px !important; }
  .pnw-about-img img { width: 260px !important; height: 260px !important; }
  .pnw-about-img::before {
    width: 316px !important; height: 316px !important;
    top: -28px !important; left: -28px !important;
  }

  /* — Services: single column — */
  .pnw-grid-3 { grid-template-columns: 1fr !important; }

  /* — Why Pinnacle: 2x2 — */
  .pnw-diff-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
  .pnw-diff-num { font-size: 40px !important; }

  /* — Insurance — */
  .pnw-insurance { padding: 52px 0 !important; }
  .pnw-insurance .pnw-h2 { font-size: 26px !important; }
  .pnw-insurance p { font-size: 15px !important; }

  /* — Contact form — */
  .pnw-contact-form .pnw-h2 { font-size: 26px !important; }

  /* — Credential logos — */
  .pnw-creds img { height: 36px !important; }
  .pnw-creds-inner { gap: 20px !important; }
}


/* ============================================
   EYEBROW / SECTION LABELS — boho italic style
   ============================================ */

/* Redesign ALL pnw-eyebrow labels to be artful, italic, sentence-case */
.pnw-eyebrow {
  font-family: 'Oswald', sans-serif !important;
  font-style: italic !important;
  font-weight: 300 !important;
  font-size: 16px !important;
  letter-spacing: 0.05em !important;
  text-transform: none !important;
  color: #F7893B !important;
  margin-bottom: 12px !important;
  display: block !important;
}

/* Section label + rule pairing — add a short line before the label */
.pnw-eyebrow::before {
  content: '' !important;
  display: inline-block !important;
  width: 28px !important;
  height: 1px !important;
  background: #F7893B !important;
  vertical-align: middle !important;
  margin-right: 10px !important;
  opacity: 0.7 !important;
}

/* ============================================
   BADGE CREDENTIAL SUB-TEXT
   ============================================ */
.pnw-about-img-badge {
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  padding: 10px 18px !important;
  line-height: 1.4 !important;
}
.pnw-badge-cred {
  font-size: 11px !important;
  font-weight: 400 !important;
  opacity: 0.85 !important;
  letter-spacing: 0.04em !important;
}

/* ============================================
   HEADER — match website vibe
   ============================================ */

/* Top bar: replace loud orange gradient with clean dark charcoal
   (mirrors the footer copyright bar — intentional bookend) */
.elementor-element-1050c191,
.elementor-element-1050c191 .e-con-inner {
  background: #1a1a1a !important;
  background-image: none !important;
}

/* Social icons in top bar — muted warm white */
.elementor-element-1050c191 .elementor-icon,
.elementor-element-1050c191 .elementor-social-icon,
.elementor-element-1050c191 a,
.elementor-element-1050c191 svg {
  color: #aaa !important;
  fill: #aaa !important;
  transition: color 0.2s, fill 0.2s !important;
}
.elementor-element-1050c191 a:hover .elementor-icon,
.elementor-element-1050c191 a:hover svg,
.elementor-element-1050c191 a:hover {
  color: #F7893B !important;
  fill: #F7893B !important;
}

/* Phone number in top bar */
.elementor-element-1050c191 .elementor-icon-list-text,
.elementor-element-1050c191 .elementor-icon-list-item a,
.elementor-element-1050c191 span {
  color: #ccc !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 0.05em !important;
}

/* Main nav bar: clean white, add subtle bottom border */
.elementor-location-header .e-con:not(.elementor-element-1050c191) {
  background: #fff !important;
  border-bottom: 1px solid #ede8e1 !important;
}

/* Nav links: Open Sans, clean dark */
.elementor-location-header .elementor-nav-menu a,
.elementor-location-header .elementor-nav-menu .elementor-item {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  color: #333 !important;
  text-transform: none !important;
}
.elementor-location-header .elementor-nav-menu a:hover,
.elementor-location-header .elementor-nav-menu .elementor-item:hover {
  color: #F7893B !important;
}

/* ============================================
   MOBILE SPACING FIXES
   ============================================ */

@media (max-width: 900px) {

  /* Trust strip — items stack to 2 per row cleanly */
  .pnw-trust {
    padding: 18px 0 !important;
  }
  .pnw-trust-inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px 16px !important;
    justify-items: center !important;
  }
  .pnw-trust-sep { display: none !important; }
  .pnw-trust-item { font-size: 10.5px !important; text-align: center !important; }

  /* Hero: tighten vertical space */
  .pnw-hero { padding: 36px 0 0 !important; }
  .pnw-hero-text { padding-top: 0 !important; padding-bottom: 44px !important; }
  .pnw-h1 { font-size: 40px !important; }

  /* Eyebrow on mobile: slightly smaller */
  .pnw-eyebrow { font-size: 14px !important; }

  /* Sections: tighter padding */
  .pnw-services, .pnw-why, .pnw-reviews, .pnw-contact { padding: 60px 0 !important; }
  .pnw-about { padding: 60px 0 80px !important; }
}

@media (max-width: 600px) {

  /* Trust strip: single col on tiny screens */
  .pnw-trust-inner {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  /* Hero */
  .pnw-hero { padding: 24px 0 0 !important; }
  .pnw-h1 { font-size: 34px !important; line-height: 1.1 !important; }
  .pnw-hero-actions { flex-direction: column !important; align-items: flex-start !important; gap: 14px !important; }
  .pnw-btn { padding: 16px 36px !important; font-size: 12px !important; }

  /* Eyebrow */
  .pnw-eyebrow { font-size: 13px !important; }

  /* Section padding */
  .pnw-services, .pnw-why, .pnw-reviews, .pnw-contact,
  .pnw-about, .pnw-insurance { padding: 52px 0 !important; }
  .pnw-about { padding-bottom: 72px !important; }
}


/* === HEADER TOP BAR FIX (high-specificity override) === */
.elementor-757 .elementor-element.elementor-element-1050c191 {
  background-color: #1a1a1a !important;
  background-image: none !important;
}
.elementor-757 .elementor-element.elementor-element-1050c191:not(.elementor-motion-effects-element-type-background) {
  background-color: #1a1a1a !important;
}
.elementor-757 .elementor-element.elementor-element-1050c191 svg,
.elementor-757 .elementor-element.elementor-element-1050c191 i,
.elementor-757 .elementor-element.elementor-element-1050c191 a {
  color: #999999 !important;
  fill: #999999 !important;
}
.elementor-757 .elementor-element.elementor-element-1050c191 a:hover svg,
.elementor-757 .elementor-element.elementor-element-1050c191 a:hover i,
.elementor-757 .elementor-element.elementor-element-1050c191 a:hover {
  color: #F7893B !important;
  fill: #F7893B !important;
}

/* === TOP BAR: transparent anchor backgrounds + full-width stretch === */
.elementor-757 .elementor-element.elementor-element-1050c191 a,
.elementor-757 .elementor-element.elementor-element-1050c191 span,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-icon {
  background: transparent !important;
  background-color: transparent !important;
}
/* Stretch charcoal bg full viewport width using ::before on the inner */
.elementor-757 .elementor-element.elementor-element-1050c191 .e-con-inner {
  position: relative !important;
}
.elementor-757 .elementor-element.elementor-element-1050c191 .e-con-inner::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  height: 100% !important;
  background: #1a1a1a !important;
  z-index: -1 !important;
  pointer-events: none !important;
}

/* === TOP BAR: header gradient trick for full-width charcoal band === */
header.elementor-location-header {
  background: linear-gradient(to bottom, #1a1a1a 54px, transparent 54px) !important;
}
/* Make all anchors/spans in top bar transparent so charcoal shows */
.elementor-757 .elementor-element.elementor-element-1050c191 a,
.elementor-757 .elementor-element.elementor-element-1050c191 span.elementor-button-text,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-icon-list-item,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-icon-list-items {
  background: transparent !important;
  background-color: transparent !important;
}

/* === TOP BAR: kill white bg on social icon circles + all child elements === */
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-social-icon,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-social-icon:hover,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-icon-list-icon,
.elementor-757 .elementor-element.elementor-element-1050c191 .elementor-widget-container,
.elementor-757 .elementor-element.elementor-element-1050c191 * {
  background: transparent !important;
  background-color: transparent !important;
}

/* === TRUST STRIP: single intentional row === */
.pnw-trust-inner {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 0 !important;
  width: 100% !important;
}
/* Hide the BR tags causing wrapping */
.pnw-trust-inner br {
  display: none !important;
}
/* Each trust item: centered, flex column */
.pnw-trust-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 0 12px !important;
  line-height: 1.25 !important;
}
/* Number/label highlight */
.pnw-trust-num {
  font-family: 'Oswald', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #F7893B !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
}
.pnw-trust-label {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  color: #666 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
/* Separators: slim vertical line */
.pnw-trust-sep {
  flex: 0 0 1px !important;
  width: 1px !important;
  height: 32px !important;
  background: #ddd !important;
  display: block !important;
  align-self: center !important;
}
/* Mobile: collapse to 2-col grid */
@media (max-width: 768px) {
  .pnw-trust-inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px 8px !important;
    flex-wrap: unset !important;
  }
  .pnw-trust-sep { display: none !important; }
  .pnw-trust-item { padding: 0 !important; }
}

/* === TRUST STRIP: refine inner item layout === */
.pnw-trust-item {
  white-space: nowrap !important;
  line-height: 1.3 !important;
}
.pnw-trust-item strong {
  display: block !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  line-height: 1.1 !important;
  margin-bottom: 3px !important;
}

/* === TRUST STRIP: clean stat-block, no overflow === */
/* Override the nowrap that caused collision */
.pnw-trust-item {
  white-space: normal !important;
  text-align: center !important;
  padding: 0 16px !important;
  min-width: 0 !important;
  flex: 1 1 0 !important;
}
.pnw-trust-item strong {
  display: block !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  line-height: 1.1 !important;
  margin-bottom: 4px !important;
  white-space: nowrap !important;
}

/* ── Hearing Aids Page: section-level rules (WP content filter strips these from post body) ── */
.pnw-ha-hero { background: #f5f2ee; padding: 90px 0 80px; position: relative; overflow: hidden; }
.pnw-ha-process { background: #fff; padding: 70px 0; border-bottom: 1px solid #ebebeb; }
.pnw-brands { background: #fafaf8; padding: 80px 0 90px; }
.pnw-protection { background: #1a1a1a !important; padding: 80px 0 90px; }
.pnw-ha-cta { background: #f5f2ee; padding: 80px 0; text-align: center; }
.pnw-wrap { max-width: 1120px; margin: 0 auto; padding: 0 48px; }
.pnw-eyebrow { font-family: 'Open Sans', sans-serif; font-size: 15px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: #F7893B; margin-bottom: 18px; }
.pnw-btn { display: inline-block; font-family: 'Open Sans', sans-serif; font-size: 11.5px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; padding: 17px 38px; border-radius: 3px; transition: all 0.2s ease; cursor: pointer; text-decoration: none; }
/* ── Hero overlay fix ── */
.pnw-ha-hero::before { width: 55% !important; clip-path: polygon(12% 0%, 100% 0%, 100% 100%, 0% 100%) !important; }
.pnw-ha-stat-box { background: rgba(255,255,255,0.08) !important; border-color: rgba(255,255,255,0.18) !important; }
.pnw-ha-stat-label { color: rgba(255,255,255,0.70) !important; }

/* ── Footer: larger logo, centered, less whitespace, bolder slogan ── */
/* Reduce section padding */
.elementor-location-footer .elementor-element-58c1290a {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}
/* Center the logo column */
.elementor-element-a431012 .elementor-widget-container {
  text-align: center !important;
  display: flex;
  justify-content: center;
}
/* Larger logo */
.elementor-element-a431012 img {
  width: 240px !important;
  max-width: 240px !important;
  height: auto !important;
}
/* Center and darken slogan */
.elementor-element-2e8d9d11 {
  text-align: center !important;
}
.elementor-element-2e8d9d11 p,
.elementor-element-2e8d9d11 .p1 {
  color: #2a2a2a !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

/* ── Footer: beat Elementor specificity on slogan ── */
footer.elementor-location-footer .elementor-element-2e8d9d11 p,
footer.elementor-location-footer .elementor-element-2e8d9d11 .p1 {
  color: #222222 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}
/* Center logo with full specificity */
footer.elementor-location-footer .elementor-element-a431012 .elementor-widget-container {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
}
footer.elementor-location-footer .elementor-element-a431012 img {
  width: 230px !important;
  max-width: 230px !important;
}
/* Reduce outer whitespace — target the main footer section + inner containers */
footer.elementor-location-footer .elementor-element-58c1290a {
  padding: 20px 0px !important;
}
footer.elementor-location-footer .elementor-element-4d3c1434 {
  padding: 0 !important;
}

/* ── Platform Recognition Section ── */
.pnw-platforms {
  background: #fafaf8;
  padding: 52px 0 60px;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
}
.pnw-platforms-head {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 52px;
}
.pnw-platforms-head .pnw-eyebrow { color: #F7893B; }
.pnw-platforms-head .pnw-h2 { color: #111; margin-bottom: 16px; }
.pnw-platforms-head .pnw-body-sm { color: #666; }
.pnw-platform-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 40px;
}
.pnw-platform-card {
  background: #fff;
  border: 1px solid #e8e4de;
  border-radius: 5px;
  padding: 24px 20px 20px;
  text-align: center;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.pnw-platform-card:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,0.07);
  border-color: #F7893B;
}
.pnw-platform-stars {
  color: #F7893B;
  font-size: 20px;
  letter-spacing: 2px;
  margin-bottom: 10px;
  line-height: 1;
}
.pnw-platform-name {
  font-family: 'Oswald', sans-serif;
  font-size: 20px;
  font-weight: 500;
  color: #111;
  letter-spacing: -0.01em;
  margin-bottom: 6px;
}
.pnw-platform-note {
  font-family: 'Open Sans', sans-serif;
  font-size: 12.5px;
  color: #888;
  line-height: 1.5;
}
.pnw-platform-total {
  text-align: center;
  border-top: 1px solid #e8e4de;
  padding-top: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.pnw-platform-total-num {
  font-family: 'Oswald', sans-serif;
  font-size: 52px;
  font-weight: 600;
  color: #F7893B;
  line-height: 1;
}
.pnw-platform-total-label {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: #444;
  max-width: 260px;
  line-height: 1.5;
  text-align: left;
}
@media (max-width: 900px) {
  .pnw-platform-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .pnw-platform-grid { grid-template-columns: 1fr 1fr; }
  .pnw-platform-total { flex-direction: column; gap: 8px; }
  .pnw-platform-total-label { text-align: center; }
}


/* =============================================
   TWO-OFFICE LOCATIONS SECTION
   ============================================= */
.pnw-locations-v2 {
  background: #faf7f4;
  padding: 72px 0 88px;
}
.pnw-locations-v2-inner {
  max-width: 640px;
  margin: 0 auto;
  padding: 0 48px;
}
.pnw-locations-v2-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 28px;
}
.pnw-loc-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 3px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.pnw-loc-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 36px rgba(0,0,0,0.08);
}
.pnw-loc-img-wrap {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/9;
  background: #e8e4de;
  border-radius: 3px 3px 0 0;
}
.pnw-loc-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.pnw-loc-card:hover .pnw-loc-img-wrap img {
  transform: scale(1.03);
}
.pnw-loc-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26,26,26,0.40);
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 16px 18px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.pnw-loc-card:hover .pnw-loc-overlay {
  opacity: 1;
}
.pnw-loc-directions {
  font-family: 'Open Sans', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #fff;
}
.pnw-loc-info {
  padding: 12px 2px 4px;
  border-top: 1px solid #e8e4de;
}
.pnw-loc-city {
  font-family: 'Oswald', sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #1a1a1a;
  margin: 0 0 4px;
  letter-spacing: -0.01em;
}
.pnw-loc-addr {
  font-family: 'Open Sans', sans-serif;
  font-size: 11px;
  color: #999;
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 600px) {
  .pnw-locations-v2-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .pnw-locations-v2-inner { padding: 0 24px; }
  .pnw-locations-v2 { padding: 56px 0 68px; }
}


/* Platform logo icons */
.pnw-platform-logo { display:flex; align-items:center; justify-content:center; height:44px; margin-bottom:10px; }
.pnw-platform-logo img { max-height:36px; max-width:120px; width:auto; object-fit:contain; display:block; }

/* Fix wpautop p injection in locations grid */
.pnw-locations-v2-grid p { display:none; height:0; margin:0; padding:0; }

/* HEARING AIDS — BRAND PHOTO STYLING */
.pnw-brand-imgs {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  padding: 24px 16px !important;
  background: transparent !important;
  border-radius: 0 !important;
  margin: 14px 0 18px !important;
  min-height: 110px !important;
  max-height: 150px !important;
  overflow: hidden !important;
}
.pnw-brand-img {
  height: 90px !important;
  width: auto !important;
  max-width: 160px !important;
  object-fit: contain !important;
  display: block !important;
  mix-blend-mode: multiply !important;
  opacity: 0.9 !important;
  transition: opacity 0.2s ease, transform 0.25s ease !important;
  filter: contrast(1.05) !important;
}
.pnw-brand-card:hover .pnw-brand-img {
  opacity: 1 !important;
  transform: scale(1.06) !important;
}
.pnw-brand-divider { display: none !important; }

/* Platform cards as links */
a.pnw-platform-card, div.pnw-platform-card[onclick] {
  text-decoration: none;
  color: inherit;
  display: block;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
a.pnw-platform-card:hover, div.pnw-platform-card[onclick]:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.09);
  border-color: #F7893B;
}
a.pnw-platform-card:hover .pnw-platform-stars, div.pnw-platform-card[onclick]:hover .pnw-platform-stars {
  color: #e0721f;
}

/* Hide wpautop-injected p tags in platform grid */
.pnw-platform-grid > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Restore 2-column brand grid — hide wpautop p injections */
.pnw-brand-grid > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ══════════════════════════════════════
   Services section — airy warm treatment
   ══════════════════════════════════════ */
.pnw-services {
  background: #f0e8de !important;
  position: relative;
}
/* Subtle full-width orange top accent line */
.pnw-services::before {
  content: '';
  display: block;
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent 0%, #F7893B 30%, #F7893B 70%, transparent 100%);
  opacity: 0.5;
}
.pnw-services .pnw-h2 {
  color: #1a1a18 !important;
}
.pnw-services .pnw-services-hd .pnw-body-sm {
  color: #7a6b5e !important;
}
/* Cards: crisp white floating on warm sand */
.pnw-services .pnw-card {
  background: #ffffff !important;
  border: none !important;
  border-top: 2.5px solid #F7893B !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 20px rgba(80,45,15,0.09) !important;
}
.pnw-services .pnw-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 38px rgba(80,45,15,0.15) !important;
}
.pnw-services .pnw-h3 {
  color: #1a1a18 !important;
}
.pnw-services .pnw-card .pnw-body-sm {
  color: #7a6b5e !important;
}
.pnw-services .pnw-card-icon {
  background: #F7893B !important;
  opacity: 1 !important;
}


/* ── Phone number header styling ── */
.elementor-element-2c278db0 .elementor-icon-list-text {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: 0.03em !important;
}
.elementor-element-2c278db0 .elementor-icon-list-icon svg path,
.elementor-element-2c278db0 .elementor-icon-list-icon i {
  fill: #F7893B !important;
  color: #F7893B !important;
}
.elementor-element-2c278db0 .elementor-icon-list-item {
  background: rgba(247,137,59,0.15) !important;
  border: 1.5px solid rgba(247,137,59,0.5) !important;
  border-radius: 20px !important;
  padding: 5px 14px 5px 10px !important;
  transition: background 0.2s ease !important;
}
.elementor-element-2c278db0 .elementor-icon-list-item:hover {
  background: rgba(247,137,59,0.25) !important;
}

/* ── Meet the Team button center ── */
.pnw-about .pnw-btn-wrap,
.pnw-about-cta,
.pnw-about .elementor-button-wrapper,
.pnw-about-text .pnw-btn {
  text-align: center !important;
  display: block !important;
  margin: 0 auto !important;
}


/* ── Footer overhaul ── */
/* White background */
.elementor-755,
.elementor-755 .e-con,
.elementor-755 .elementor-container,
footer.elementor-location-footer {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* Tagline - not bold, match body text style */
.elementor-element-2e8d9d11,
.elementor-element-2e8d9d11 p {
  font-weight: 400 !important;
  font-size: 15px !important;
  color: #7a6b5e !important;
  text-align: left !important;
  font-family: inherit !important;
}

/* Orange "→ Get Directions" links - 4th and 6th contact items */
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(4) .elementor-icon-list-text,
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(6) .elementor-icon-list-text {
  color: #F7893B !important;
  font-weight: 600 !important;
}
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(4) a:hover .elementor-icon-list-text,
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(6) a:hover .elementor-icon-list-text {
  color: #e0721f !important;
  text-decoration: underline !important;
}
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(4) .elementor-icon-list-icon,
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(6) .elementor-icon-list-icon {
  display: none !important;
}
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(4),
.elementor-element-5e5383fc .elementor-icon-list-item:nth-child(6) {
  padding-left: 28px !important;
  margin-top: -6px !important;
  margin-bottom: 10px !important;
}


/* ── Footer: outer container white (overrides beige #faf7f4) ── */
.elementor-element-58c1290a,
.elementor-element-58c1290a.e-con {
  background-color: #ffffff !important;
  background: #ffffff !important;
}

/* ── Footer tagline: not bold ── */
.elementor-element-2e8d9d11 *,
.elementor-element-2e8d9d11 p,
.elementor-element-2e8d9d11 .elementor-widget-container p {
  font-weight: 400 !important;
  font-style: normal !important;
}


/* ── Footer tagline: force non-bold via data-id ── */
[data-id="2e8d9d11"] p,
[data-id="2e8d9d11"] .elementor-widget-container p {
  font-weight: 400 !important;
  font-size: 15px !important;
  color: #7a6b5e !important;
}

/* ── Footer outer container: force white ── */
[data-id="58c1290a"] {
  background-color: #ffffff !important;
  background: #ffffff !important;
}


/* ── Doctor photo: float animation ── */
@keyframes pnwPhotoFloat {
  0%   { transform: translateY(0px) scale(1); }
  50%  { transform: translateY(-8px) scale(1.02); }
  100% { transform: translateY(0px) scale(1); }
}
.pnw-about-img img {
  animation: pnwPhotoFloat 5s ease-in-out infinite !important;
  transition: transform 0.3s ease !important;
  will-change: transform;
}
.pnw-about-img {
  overflow: hidden !important;
}

/* ── Doctor badge: uniform font size, larger, link style ── */
.pnw-about-img-badge {
  font-size: 17px !important;
  color: #ffffff !important;
  letter-spacing: 0.04em !important;
}
.pnw-about-img-badge:hover {
  background: #e0721f !important;
  transition: background 0.2s ease !important;
}


/* ══════════════════════════════════════════
   STICKY CTA OVERLAY
   ══════════════════════════════════════════ */

/* ── Desktop: hide overlay CTA entirely ── */
@media (min-width: 768px) {
  #pinnacle-overlay-cta,
  #pinnacle-overlay-menu {
    display: none !important;
  }
}

/* ── Mobile: restyle sticky overlay to match brand ── */
@media (max-width: 767px) {
  #pinnacle-overlay-cta {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9999 !important;
    display: flex !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  #pinnacle-overlay-cta a {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 12px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    background: #F7893B !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
  }
  #pinnacle-overlay-cta a:hover {
    background: #e0721f !important;
  }

  #pinnacle-overlay-menu {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9998 !important;
    display: flex !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  /* Close button */
  #pinnacle-overlay-menu button {
    display: none !important;
  }
  /* Schedule link */
  #pinnacle-overlay-menu a:first-of-type {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 12px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    background: #F7893B !important;
    color: #ffffff !important;
    border-radius: 0 !important;
  }
  /* If there's a Call Today link too */
  #pinnacle-overlay-menu a:nth-of-type(2) {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 12px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    background: #1a1a18 !important;
    color: #ffffff !important;
    border-radius: 0 !important;
  }
}

/* ══════════════════════════════════════════
   FOOTER: tagline match Quick Links style
   ══════════════════════════════════════════ */
[data-id="2e8d9d11"] p,
[data-id="2e8d9d11"] .elementor-widget-container p,
.elementor-element-2e8d9d11 p,
.elementor-element-2e8d9d11 .elementor-text-editor p {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 3px !important;
  color: rgb(170, 170, 170) !important;
  text-transform: uppercase !important;
  line-height: 1.6 !important;
}

/* ── Footer outer container: white, minimal top gap ── */
[data-id="58c1290a"],
.elementor-element-58c1290a {
  background-color: #ffffff !important;
  background: #ffffff !important;
}


/* ── TAGLINE: ultra-specific selector beats Elementor compiled (0,3,2 vs 0,2,2) ── */
footer.elementor-location-footer .elementor-element.elementor-element-2e8d9d11 p,
footer.elementor-location-footer .elementor-element.elementor-element-2e8d9d11 .elementor-widget-container p {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 3px !important;
  color: rgb(170, 170, 170) !important;
  text-transform: uppercase !important;
  line-height: 1.8 !important;
}


/* ── Meet the Team button: center in about section ── */
.pnw-about-text .pnw-btn-outline,
.pnw-about-text a.pnw-btn {
  display: block !important;
  width: fit-content !important;
  margin: 0 auto !important;
  text-align: center !important;
}
.pnw-about-text p:has(a.pnw-btn) {
  text-align: center !important;
}


/* Fix footer copyright size on all pages - override page-id-793 heading rule */
body.page-id-793 footer.elementor-location-footer .elementor-element-a64dd08 .elementor-heading-title {
  font-size: 13px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-weight: 400 !important;
}

/* ============================================================
   PINNACLE AUDIOLOGY — Footer Quick Links Fix
   ============================================================ */

/* Tighten spacing between Quick Links items & bump font size */
.elementor-widget-nav-menu .elementor-nav-menu li,
footer .menu-item,
footer nav li,
footer ul li,
.footer-widget ul li,
.widget_nav_menu ul li {
  margin-bottom: 8px !important;
  padding-bottom: 0 !important;
  line-height: 1.4 !important;
}

/* Increase link font size (16px → 18px) */
.elementor-widget-nav-menu .elementor-nav-menu a,
footer .menu-item a,
footer nav li a,
footer ul li a,
.footer-widget ul li a,
.widget_nav_menu ul li a {
  font-size: 18px !important;
}

/* Footer column headings: "QUICK LINKS" / "CONTACT US" */
footer .elementor-heading-widget .elementor-heading-title,
footer h5,
footer h6,
footer .widget-title,
footer .footer-widget-title,
.elementor-location-footer .elementor-widget-heading .elementor-heading-title {
  font-size: 13px !important;
}




/* Footer background white */
footer.elementor-location-footer .elementor-element-58c1290a,
footer.elementor-location-footer .elementor-element-6f5a136e,
footer.elementor-location-footer .elementor-element-6e9970d7,
footer.elementor-location-footer .elementor-element-19a4246b,
footer.elementor-location-footer .elementor-element-27a96160,
footer.elementor-location-footer .elementor-element-e565c44,
footer.elementor-location-footer .e-con {
  background-color: #ffffff !important;
}


/* Fix footer logo aspect ratio - prevent stretching */
footer.elementor-location-footer .elementor-element-a431012 img {
  object-fit: contain !important;
  width: 200px !important;
  height: 120px !important;
  max-width: 200px !important;
  max-height: 120px !important;
  display: block !important;
}
footer.elementor-location-footer .elementor-element-a431012 a {
  display: block !important;
  height: auto !important;
}