/* Final Coral Orthodontics header and form overrides. Keep this after site.css. */
header.site-header.demo-overlay-header nav.navbar.main-menu{
  display:grid!important;
  grid-template-columns:minmax(240px,300px) minmax(380px,1fr) auto!important;
  align-items:center!important;
  gap:clamp(14px,1.4vw,26px)!important;
  max-width:1680px!important;
  min-height:96px!important;
  padding:10px clamp(18px,2vw,34px)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
  width:300px!important;
  min-width:240px!important;
  max-width:300px!important;
  height:84px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  overflow:hidden!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img{
  position:static!important;
  width:82px!important;
  max-width:82px!important;
  min-width:82px!important;
  height:82px!important;
  max-height:82px!important;
  flex:0 0 82px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 4px 9px rgba(0,0,0,.2)) saturate(1.22) contrast(1.12)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
  display:grid!important;
  max-width:190px!important;
  min-width:0!important;
  gap:4px!important;
  color:#111!important;
  font-family:Montserrat,Inter,system-ui,sans-serif!important;
  font-size:clamp(.82rem,.78vw,1rem)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
  color:#b94131!important;
  font-size:clamp(.43rem,.38vw,.52rem)!important;
  line-height:1.1!important;
  letter-spacing:.17em!important;
  font-weight:900!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  flex:1 1 auto!important;
  gap:clamp(10px,1.2vw,22px)!important;
  overflow:visible!important;
  opacity:1!important;
  visibility:visible!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item{
  position:relative!important;
  display:block!important;
  flex:0 0 auto!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  color:#111!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  font-size:clamp(.78rem,.75vw,.94rem)!important;
  letter-spacing:.04em!important;
  padding:10px 4px!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions{
  justify-self:end!important;
  min-width:max-content!important;
  width:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
  white-space:nowrap!important;
}
.required-marker{
  color:#b94131;
  font-weight:950;
}
.validation-summary,
.validation-summary-errors{
  color:#8a1f11;
  background:#fff5ef;
  border:1px solid rgba(185,65,49,.28);
  border-radius:12px;
  padding:12px 14px;
  font-weight:800;
}
.validation-summary:empty,
.validation-summary-valid,
.field-validation-valid,
.smart-form .form-grid > .field-validation-error:empty{
  display:none!important;
}
.field-validation-error{
  color:#8a1f11!important;
  font-size:.9rem!important;
  font-weight:800!important;
}
.smart-form .form-grid > .field-validation-error:not(:empty){
  grid-column:1 / -1;
  margin-top:-8px;
}
.input-validation-error{
  border-color:#b94131!important;
  box-shadow:0 0 0 3px rgba(185,65,49,.12)!important;
}
@media(max-width:1500px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(220px,276px) minmax(360px,1fr) auto!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:276px!important;
    max-width:276px!important;
    height:80px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img{
    width:76px!important;
    max-width:76px!important;
    min-width:76px!important;
    height:76px!important;
    max-height:76px!important;
    flex-basis:76px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    max-width:180px!important;
    font-size:.88rem!important;
  }
}
@media(max-width:1280px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(210px,250px) minmax(330px,1fr) auto!important;
    gap:12px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:250px!important;
    max-width:250px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    max-width:166px!important;
    font-size:.76rem!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
    font-size:.39rem!important;
    letter-spacing:.11em!important;
  }
}
@media(max-width:1180px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(0,1fr) auto!important;
    min-height:86px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    display:none!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(52vw,266px)!important;
    min-width:212px!important;
    max-width:266px!important;
  }
}
@media(max-width:760px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    min-height:78px!important;
    padding:8px 14px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
    display:none!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(68vw,226px)!important;
    min-width:188px!important;
    height:68px!important;
    gap:8px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img{
    width:62px!important;
    max-width:62px!important;
    min-width:62px!important;
    height:62px!important;
    max-height:62px!important;
    flex-basis:62px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    max-width:150px!important;
    font-size:.72rem!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
    font-size:.38rem!important;
    letter-spacing:.1em!important;
  }
}
@media(max-width:420px){
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    max-width:128px!important;
    font-size:.64rem!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
    font-size:.34rem!important;
  }
}

/* v56: premium dark homepage, refreshed navigation, reviews, and contact CTA */
:root{
  --co-black:#050505;
  --co-ink:#15120f;
  --co-cream:#f8f1e6;
  --co-muted:#bdb09d;
  --co-coral:#d75a45;
  --co-gold:#d5b45f;
  --co-line:rgba(213,180,95,.34);
}
body,
.site-header.demo-overlay-header,
.site-header.demo-overlay-header .navbar.main-menu{
  font-family:Montserrat,Inter,system-ui,-apple-system,Segoe UI,sans-serif!important;
}
body.home-page{
  background:#050505!important;
  color:#f8f1e6!important;
}
html,
body{
  overflow-x:hidden!important;
}
body.home-page main{
  background:#050505!important;
}
.site-header.demo-overlay-header,
.site-header.demo-overlay-header.is-scrolled{
  background:rgba(255,255,255,.965)!important;
  border-bottom:1px solid rgba(213,180,95,.28)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.10)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu{
  grid-template-columns:minmax(320px,350px) minmax(420px,1fr) auto!important;
  min-height:92px!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
  width:340px!important;
  min-width:320px!important;
  max-width:350px!important;
  height:78px!important;
  overflow:visible!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img{
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  max-width:76px!important;
  max-height:76px!important;
  flex-basis:76px!important;
  filter:drop-shadow(0 6px 12px rgba(0,0,0,.20))!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
  color:#111!important;
  font-size:.88rem!important;
  letter-spacing:.04em!important;
  line-height:1.05!important;
  max-width:238px!important;
  overflow:visible!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
  color:#b94838!important;
  font-size:.46rem!important;
  letter-spacing:.14em!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
  gap:18px!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
  color:#16120f!important;
  font-size:.86rem!important;
  font-weight:850!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  border-bottom:2px solid transparent!important;
  text-shadow:none!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:hover > .desktop-menu-link,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:focus-within > .desktop-menu-link{
  color:#9f3d2f!important;
  border-bottom-color:#d5b45f!important;
  background:transparent!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown{
  display:none!important;
  top:calc(100% + 4px)!important;
  left:0!important;
  min-width:250px!important;
  max-width:calc(100vw - 32px)!important;
  padding:8px!important;
  background:#0b0b0b!important;
  border:1px solid rgba(213,180,95,.55)!important;
  border-top:4px solid #d5b45f!important;
  border-radius:8px!important;
  box-shadow:0 24px 52px rgba(0,0,0,.35)!important;
  overflow:hidden!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:nth-of-type(3) .desktop-dropdown{
  right:0!important;
  left:auto!important;
  width:min(340px, calc(100vw - 40px))!important;
  min-width:min(340px, calc(100vw - 40px))!important;
  grid-template-columns:1fr!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:hover > .desktop-dropdown,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:focus-within > .desktop-dropdown,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown:hover{
  display:grid!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a{
  min-height:42px!important;
  padding:10px 12px!important;
  color:#fff8ea!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  font-size:.92rem!important;
  font-weight:750!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:last-child{
  border-bottom:0!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:focus-visible{
  color:#111!important;
  background:#d5b45f!important;
  outline:none!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
  background:#d75a45!important;
  border:2px solid #d75a45!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 12px 24px rgba(215,90,69,.24)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:hover{
  background:#b94838!important;
  border-color:#b94838!important;
}
.hamburger,
header.site-header.demo-overlay-header .hamburger{
  border:1px solid rgba(213,180,95,.45)!important;
  border-radius:8px!important;
  background:#111!important;
}
header.site-header.demo-overlay-header .hamburger span{
  background:#fff!important;
}
#mobilePanel.mobile-panel,
[data-menu].mobile-panel{
  width:min(440px,100vw)!important;
  max-width:100vw!important;
  box-sizing:border-box!important;
  background:#0b0b0b!important;
  color:#fff8ea!important;
  border-left:1px solid rgba(213,180,95,.45)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
#mobilePanel *,
[data-menu].mobile-panel *{
  max-width:100%!important;
  box-sizing:border-box!important;
}
#mobilePanel .overlay-section-toggle,
#mobilePanel .overlay-top-link{
  width:100%!important;
  color:#fff8ea!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  padding:14px 0!important;
  font-size:1rem!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
#mobilePanel .overlay-submenu{
  display:grid!important;
  gap:4px!important;
  margin:0!important;
  padding:8px 0 12px 14px!important;
  border-bottom:1px solid rgba(213,180,95,.18)!important;
}
#mobilePanel .overlay-submenu[hidden]{
  display:none!important;
}
#mobilePanel .overlay-submenu a{
  color:#f8f1e6!important;
  display:block!important;
  min-height:42px!important;
  padding:9px 0!important;
  font-size:.95rem!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
#mobilePanel .overlay-gold-button{
  background:#d75a45!important;
  color:#fff!important;
  border-radius:6px!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.menu-open .site-header.demo-overlay-header > .navbar.main-menu > .brand.hero-brand{
  opacity:1!important;
  pointer-events:auto!important;
}
.home-page .peniche-style-home-hero.reference-home-hero{
  position:relative!important;
  min-height:680px!important;
  display:flex!important;
  align-items:center!important;
  padding:150px 0 86px!important;
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(3,3,3,.98) 0%,rgba(3,3,3,.94) 44%,rgba(3,3,3,.64) 70%,rgba(3,3,3,.48) 100%),
    url('/images/adult-child-hero-v34.png') center right/cover no-repeat!important;
  border-bottom:1px solid rgba(213,180,95,.38)!important;
}
.home-page .peniche-style-home-hero.reference-home-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.20))!important;
  pointer-events:none!important;
}
.home-page .peniche-hero-inner{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
}
.home-page .peniche-hero-copy{
  max-width:760px!important;
  margin-left:0!important;
}
.home-page .eyebrow-badge,
.home-page .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  background:rgba(213,180,95,.12)!important;
  color:#f4d78c!important;
  border:1px solid rgba(213,180,95,.58)!important;
  border-radius:6px!important;
  padding:8px 12px!important;
  font-size:.72rem!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  font-weight:850!important;
}
.home-page .peniche-style-home-hero h1{
  color:#fff!important;
  font-size:3.95rem!important;
  line-height:1.03!important;
  letter-spacing:0!important;
  margin:18px 0 18px!important;
  font-weight:720!important;
  max-width:760px!important;
}
.home-page .peniche-style-home-hero .hero-subtitle{
  color:#efe7d7!important;
  font-size:1.08rem!important;
  line-height:1.72!important;
  font-weight:500!important;
  max-width:700px!important;
  text-shadow:none!important;
}
.home-page .hero-main-actions .btn,
.home-page .cta-row .btn{
  border-radius:6px!important;
  font-size:.82rem!important;
  letter-spacing:.06em!important;
  min-height:46px!important;
  padding:12px 18px!important;
}
.home-page .btn-primary{
  background:#d75a45!important;
  color:#fff!important;
  border-color:#d75a45!important;
}
.home-page .hero-main-actions .btn-primary,
.home-page .cta-row .btn-primary{
  background:#d75a45!important;
  color:#fff!important;
  border-color:#d75a45!important;
}
.home-page .btn-primary:hover{
  background:#b94838!important;
  border-color:#b94838!important;
}
.home-page .hero-main-actions .btn-primary:hover,
.home-page .cta-row .btn-primary:hover{
  background:#b94838!important;
  border-color:#b94838!important;
}
.home-page .btn-light,
.home-page .btn-outline-dark,
.home-page .btn-outline-light{
  background:transparent!important;
  color:#fff8ea!important;
  border:1px solid rgba(213,180,95,.70)!important;
}
.home-page .btn-light:hover,
.home-page .btn-outline-dark:hover,
.home-page .btn-outline-light:hover{
  background:#d5b45f!important;
  color:#111!important;
}
.home-page .reference-stat-ribbon{
  background:#0b0b0b!important;
  border-block:1px solid rgba(213,180,95,.36)!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.home-page .reference-stat-ribbon button{
  background:#0b0b0b!important;
  border:0!important;
  border-right:1px solid rgba(213,180,95,.22)!important;
  color:#fff!important;
  padding:24px 22px!important;
  text-align:left!important;
}
.home-page .reference-stat-ribbon button:hover{
  background:#15120f!important;
}
.home-page .reference-stat-ribbon small{
  color:#d5b45f!important;
  font-size:.68rem!important;
  letter-spacing:.12em!important;
}
.home-page .reference-stat-ribbon strong{
  color:#fff!important;
  font-size:1rem!important;
  letter-spacing:0!important;
}
.home-page .reference-stat-ribbon span{
  color:#cfc2ae!important;
  font-size:.88rem!important;
  line-height:1.45!important;
}
.home-peniche-intro,
.home-peniche-testimonial{
  background:#050505!important;
  color:#f8f1e6!important;
}
.home-peniche-intro{
  border-bottom:1px solid rgba(213,180,95,.24)!important;
}
.home-peniche-intro h2,
.home-peniche-testimonial h2{
  color:#fff!important;
  font-size:2.85rem!important;
  line-height:1.12!important;
  letter-spacing:0!important;
  font-weight:650!important;
}
.home-peniche-intro p,
.home-peniche-testimonial p{
  color:#d9cfbd!important;
}
.home-peniche-services{
  background:#f8f1e6!important;
  color:#15120f!important;
  border:0!important;
}
.home-peniche-services .section-heading h2{
  color:#15120f!important;
  font-size:2.55rem!important;
  line-height:1.16!important;
  letter-spacing:0!important;
}
.home-peniche-services .treatment-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.home-peniche-services .treatment-grid article{
  border-radius:8px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.06)!important;
}
.home-peniche-services .treatment-grid h3{
  color:#15120f!important;
  font-size:1.16rem!important;
  letter-spacing:0!important;
}
.home-peniche-testimonial{
  padding-top:84px!important;
}
.home-peniche-testimonial .container{
  display:grid!important;
  gap:34px!important;
}
.google-review-strip{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  overscroll-behavior-inline:contain!important;
  scroll-snap-type:x mandatory!important;
  padding:4px 2px 18px!important;
  scrollbar-color:#d5b45f #181818!important;
}
.google-review-card{
  flex:0 0 310px!important;
  scroll-snap-align:start!important;
  background:#101010!important;
  color:#fff8ea!important;
  border:1px solid rgba(213,180,95,.36)!important;
  border-radius:8px!important;
  padding:22px!important;
  min-height:190px!important;
  box-shadow:0 18px 36px rgba(0,0,0,.28)!important;
}
.google-review-card p{
  color:#f3ead7!important;
  font-size:1rem!important;
  line-height:1.58!important;
  margin:18px 0!important;
}
.google-review-card strong{
  color:#fff!important;
  font-size:.9rem!important;
  letter-spacing:.08em!important;
}
.review-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.google-pill{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#1a73e8!important;
  font-size:.76rem!important;
  font-weight:850!important;
}
.stars{
  color:#f6c453!important;
  font-size:.92rem!important;
  letter-spacing:0!important;
}
.contact-us-hero.page-hero{
  background:linear-gradient(135deg,#070707 0%,#17120f 100%)!important;
  color:#fff!important;
  border-bottom:1px solid rgba(213,180,95,.38)!important;
}
.contact-us-hero h1{
  color:#fff!important;
  font-size:3.7rem!important;
  line-height:1.08!important;
  letter-spacing:0!important;
}
.contact-us-hero p{
  color:#efe7d7!important;
}
.contact-hero-actions{
  gap:14px!important;
  margin-top:28px!important;
}
.contact-us-hero .contact-schedule-cta{
  background:#d75a45!important;
  border:2px solid #f1b35f!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 16px 34px rgba(215,90,69,.34)!important;
  padding-inline:28px!important;
  min-height:54px!important;
  position:relative!important;
}
.contact-us-hero .contact-schedule-cta:hover,
.contact-us-hero .contact-schedule-cta:focus-visible{
  background:#f1b35f!important;
  color:#111!important;
  transform:translateY(-2px)!important;
}
.contact-us-hero .btn-secondary,
.contact-us-hero .btn-ghost{
  background:transparent!important;
  border:2px solid #d5b45f!important;
  color:#f8f1e6!important;
  box-shadow:none!important;
}
.contact-us-hero .btn-secondary:hover,
.contact-us-hero .btn-ghost:hover,
.contact-us-hero .btn-secondary:focus-visible,
.contact-us-hero .btn-ghost:focus-visible{
  background:#d5b45f!important;
  color:#111!important;
}
.before-after-gallery{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.before-after-gallery article{
  background:#fff!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:8px!important;
  padding:18px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.06)!important;
}
.before-after-frame{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  min-height:220px!important;
  overflow:hidden!important;
  border-radius:8px!important;
  border:1px solid rgba(213,180,95,.35)!important;
  background:#111!important;
}
.before-after-frame span{
  display:grid!important;
  place-items:center!important;
  color:#fff8ea!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.before-after-frame span + span{
  background:#f8f1e6!important;
  color:#15120f!important;
  border-left:1px solid rgba(213,180,95,.35)!important;
}
@media(max-width:1280px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(300px,330px) minmax(330px,1fr) auto!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:320px!important;
    min-width:300px!important;
    max-width:330px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    gap:10px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
    font-size:.74rem!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    max-width:226px!important;
    font-size:.82rem!important;
  }
}
@media(max-width:1180px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    display:none!important;
  }
}
@media(max-width:900px){
  .home-page .peniche-style-home-hero.reference-home-hero{
    min-height:auto!important;
    padding:128px 0 62px!important;
    background:
      linear-gradient(180deg,rgba(3,3,3,.96) 0%,rgba(3,3,3,.88) 55%,rgba(3,3,3,.72) 100%),
      url('/images/adult-child-hero-v34.png') center right/cover no-repeat!important;
  }
  .home-page .peniche-style-home-hero h1{
    font-size:3.15rem!important;
  }
  .home-peniche-intro h2,
  .home-peniche-testimonial h2,
  .home-peniche-services .section-heading h2,
  .contact-us-hero h1{
    font-size:2.35rem!important;
  }
  .home-page .reference-stat-ribbon,
  .home-peniche-services .treatment-grid,
  .before-after-gallery{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:620px){
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    min-width:194px!important;
    width:min(70vw,220px)!important;
    height:64px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    max-height:58px!important;
    flex-basis:58px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
    font-size:.66rem!important;
    max-width:132px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup small{
    font-size:.33rem!important;
    letter-spacing:.08em!important;
  }
  .home-page .peniche-style-home-hero h1{
    font-size:2.45rem!important;
  }
  .home-page .peniche-style-home-hero .hero-subtitle{
    font-size:1rem!important;
  }
  .home-page .reference-stat-ribbon,
  .home-peniche-services .treatment-grid,
  .before-after-gallery{
    grid-template-columns:1fr!important;
  }
  .home-peniche-intro h2,
  .home-peniche-testimonial h2,
  .home-peniche-services .section-heading h2,
  .contact-us-hero h1{
    font-size:2rem!important;
  }
  .google-review-card{
    flex-basis:86vw!important;
  }
  .contact-hero-actions .btn{
    width:100%!important;
  }
}

/* v57: attached green/gold Coral Orthodontics logo and blended palette */
:root{
  --co-sage:#53684f;
  --co-sage-dark:#344633;
  --co-sage-deep:#243322;
  --co-logo-gold:#d7bd79;
  --co-logo-cream:#fffdf4;
}
.site-header.demo-overlay-header,
.site-header.demo-overlay-header.is-scrolled{
  background:linear-gradient(180deg,#5b7055 0%,#4d6349 100%)!important;
  border-bottom:1px solid rgba(215,189,121,.42)!important;
  box-shadow:0 14px 34px rgba(18,31,17,.24)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu{
  grid-template-columns:minmax(370px,420px) minmax(390px,1fr) auto!important;
  min-height:104px!important;
  background:transparent!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
  width:420px!important;
  min-width:370px!important;
  max-width:420px!important;
  height:92px!important;
  gap:0!important;
  overflow:visible!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
  position:static!important;
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  height:auto!important;
  max-height:92px!important;
  flex:0 0 390px!important;
  object-fit:contain!important;
  border-radius:4px!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.20))!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup,
.site-footer .footer-brand .brand-wordmark{
  display:none!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
  color:#fffdf4!important;
  text-shadow:0 1px 8px rgba(0,0,0,.18)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:hover > .desktop-menu-link,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:focus-within > .desktop-menu-link{
  color:#f3d995!important;
  border-bottom-color:#d7bd79!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown{
  background:#253522!important;
  border-color:rgba(215,189,121,.62)!important;
  border-top-color:#d7bd79!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a{
  color:#fffdf4!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:focus-visible{
  background:#d7bd79!important;
  color:#1f2d1d!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link,
.home-page .hero-main-actions .btn-primary,
.home-page .cta-row .btn-primary,
.contact-us-hero .contact-schedule-cta,
#mobilePanel .overlay-gold-button{
  background:#d7bd79!important;
  border-color:#d7bd79!important;
  color:#243322!important;
  box-shadow:0 14px 28px rgba(33,49,28,.24)!important;
}
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:hover,
.home-page .hero-main-actions .btn-primary:hover,
.home-page .cta-row .btn-primary:hover,
.contact-us-hero .contact-schedule-cta:hover,
#mobilePanel .overlay-gold-button:hover{
  background:#fff1bc!important;
  border-color:#fff1bc!important;
  color:#243322!important;
}
.hamburger,
header.site-header.demo-overlay-header .hamburger{
  background:#243322!important;
  border-color:rgba(215,189,121,.72)!important;
}
.home-page .peniche-style-home-hero.reference-home-hero{
  background:
    linear-gradient(90deg,rgba(22,33,20,.98) 0%,rgba(27,39,25,.93) 42%,rgba(39,55,36,.66) 70%,rgba(39,55,36,.48) 100%),
    url('/images/adult-child-hero-v34.png') center right/cover no-repeat!important;
  border-bottom-color:rgba(215,189,121,.44)!important;
}
.home-page .eyebrow-badge,
.home-page .eyebrow{
  color:#f5dda0!important;
  border-color:rgba(215,189,121,.66)!important;
  background:rgba(215,189,121,.13)!important;
}
.home-page .btn-light,
.home-page .btn-outline-dark,
.home-page .btn-outline-light,
.contact-us-hero .btn-secondary,
.contact-us-hero .btn-ghost{
  border-color:#d7bd79!important;
  color:#fffdf4!important;
}
.home-page .btn-light:hover,
.home-page .btn-outline-dark:hover,
.home-page .btn-outline-light:hover,
.contact-us-hero .btn-secondary:hover,
.contact-us-hero .btn-ghost:hover{
  background:#d7bd79!important;
  color:#243322!important;
}
.home-page .reference-stat-ribbon,
.home-page .reference-stat-ribbon button,
.home-peniche-intro,
.home-peniche-testimonial,
body.home-page,
body.home-page main{
  background:#243322!important;
}
.home-page .reference-stat-ribbon button:hover,
.google-review-card{
  background:#2f432c!important;
}
.home-page .reference-stat-ribbon small,
.stars{
  color:#d7bd79!important;
}
.google-review-card{
  border-color:rgba(215,189,121,.42)!important;
}
.google-pill{
  color:#365036!important;
}
.contact-us-hero.page-hero{
  background:linear-gradient(135deg,#243322 0%,#41563d 100%)!important;
  border-bottom-color:rgba(215,189,121,.42)!important;
}
.site-footer{
  background:#1f2d1d!important;
  border-top-color:#d7bd79!important;
}
.site-footer .footer-logo.attached-logo{
  width:min(360px,100%)!important;
  max-width:100%!important;
  height:auto!important;
  border-radius:6px!important;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.24))!important;
}
#mobilePanel.mobile-panel,
[data-menu].mobile-panel{
  background:#243322!important;
  border-left-color:rgba(215,189,121,.54)!important;
}
#mobilePanel .overlay-logo-lockup{
  display:block!important;
}
#mobilePanel .overlay-logo-lockup img.attached-logo,
#mobilePanel .overlay-logo-lockup img.is-site-logo.attached-logo{
  width:min(330px,100%)!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  border-radius:5px!important;
}
#mobilePanel .overlay-logo-lockup strong,
#mobilePanel .overlay-logo-lockup small{
  display:none!important;
}
#mobilePanel .overlay-section-toggle,
#mobilePanel .overlay-top-link,
#mobilePanel .overlay-submenu a{
  color:#fffdf4!important;
}
#mobilePanel .overlay-section-toggle[aria-expanded="true"]{
  border-color:#d7bd79!important;
  color:#f3d995!important;
}
@media(max-width:1400px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(320px,360px) minmax(330px,1fr) auto!important;
    gap:14px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:360px!important;
    min-width:320px!important;
    max-width:360px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:340px!important;
    min-width:340px!important;
    max-width:340px!important;
    flex-basis:340px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    gap:10px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
    font-size:.74rem!important;
  }
}
@media(max-width:1180px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(62vw,340px)!important;
    min-width:260px!important;
    max-width:340px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(62vw,320px)!important;
    min-width:260px!important;
    max-width:320px!important;
    flex-basis:auto!important;
  }
}
@media(max-width:620px){
  header.site-header.demo-overlay-header nav.navbar.main-menu{
    min-height:82px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(68vw,240px)!important;
    min-width:200px!important;
    max-width:240px!important;
    height:64px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(68vw,230px)!important;
    min-width:200px!important;
    max-width:230px!important;
    max-height:64px!important;
  }
}

/* v58: black and gold Coral Orthodontics brand refresh */
:root{
  --co-black:#050505;
  --co-charcoal:#11100e;
  --co-ink:#17140f;
  --co-gold:#c9aa61;
  --co-gold-bright:#ecd58f;
  --co-ivory:#fffdf4;
  --co-soft:#f7f0df;
  --co-line:rgba(201,170,97,.36);
}

a:hover,
a:focus-visible{
  color:var(--co-gold-bright)!important;
}

.btn,
button,
input,
select,
textarea,
.desktop-menu-link,
.overlay-section-toggle,
.overlay-submenu a{
  letter-spacing:0!important;
}

.btn-primary,
.contact-us-hero .contact-schedule-cta,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link,
#mobilePanel .overlay-gold-button{
  background:linear-gradient(135deg,var(--co-gold-bright),var(--co-gold))!important;
  border:1px solid var(--co-gold)!important;
  color:var(--co-black)!important;
  box-shadow:0 16px 34px rgba(201,170,97,.26)!important;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.contact-us-hero .contact-schedule-cta:hover,
.contact-us-hero .contact-schedule-cta:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:focus-visible,
#mobilePanel .overlay-gold-button:hover,
#mobilePanel .overlay-gold-button:focus-visible{
  background:#fff4bd!important;
  border-color:#fff4bd!important;
  color:var(--co-black)!important;
  transform:translateY(-1px)!important;
  box-shadow:0 20px 42px rgba(236,213,143,.30)!important;
}

.btn-outline-dark,
.btn-outline-light,
.btn-light,
.btn-secondary,
.btn-ghost{
  border-color:var(--co-gold)!important;
}

header.site-header.demo-overlay-header,
header.site-header.demo-overlay-header.is-scrolled{
  background:rgba(5,5,5,.96)!important;
  border-bottom:1px solid var(--co-line)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.42)!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
  display:grid!important;
  grid-template-columns:minmax(230px,282px) minmax(0,1fr) auto!important;
  align-items:center!important;
  width:100%!important;
  max-width:none!important;
  min-height:88px!important;
  gap:clamp(12px,1.6vw,26px)!important;
  padding:9px clamp(12px,2vw,30px)!important;
  margin:0!important;
  background:transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
  justify-self:start!important;
  width:282px!important;
  min-width:230px!important;
  max-width:282px!important;
  height:76px!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  background:transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
  display:block!important;
  position:static!important;
  width:270px!important;
  min-width:0!important;
  max-width:270px!important;
  height:76px!important;
  max-height:76px!important;
  flex:0 0 270px!important;
  object-fit:contain!important;
  object-position:left center!important;
  border-radius:0!important;
  background:transparent!important;
  filter:none!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
  display:none!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  gap:clamp(14px,1.55vw,27px)!important;
  white-space:nowrap!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item{
  position:relative!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
  color:var(--co-ivory)!important;
  font-size:clamp(.78rem,.72vw,.88rem)!important;
  font-weight:700!important;
  line-height:1.2!important;
  padding:15px 0!important;
  text-shadow:none!important;
  border-bottom:2px solid transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:hover > .desktop-menu-link,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:focus-within > .desktop-menu-link{
  color:var(--co-gold-bright)!important;
  border-bottom-color:var(--co-gold)!important;
  background:transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown{
  left:50%!important;
  right:auto!important;
  top:calc(100% + 6px)!important;
  transform:translateX(-50%)!important;
  min-width:252px!important;
  width:max-content!important;
  max-width:min(360px,calc(100vw - 32px))!important;
  padding:10px!important;
  background:rgba(8,8,8,.98)!important;
  border:1px solid var(--co-line)!important;
  border-top:3px solid var(--co-gold)!important;
  border-radius:0 0 10px 10px!important;
  box-shadow:0 24px 58px rgba(0,0,0,.42)!important;
  overflow:hidden!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a{
  display:block!important;
  color:var(--co-ivory)!important;
  background:transparent!important;
  border-radius:6px!important;
  padding:10px 12px!important;
  font-size:.85rem!important;
  font-weight:650!important;
  line-height:1.25!important;
  white-space:normal!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:focus-visible{
  background:var(--co-gold)!important;
  color:var(--co-black)!important;
  padding-left:12px!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:0!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .hero-phone{
  color:var(--co-ivory)!important;
  font-size:.8rem!important;
  font-weight:700!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
  min-height:42px!important;
  padding:0 17px!important;
  border-radius:999px!important;
  font-size:.78rem!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

.hamburger,
header.site-header.demo-overlay-header .hamburger,
button.hamburger{
  display:none!important;
  place-items:center!important;
  width:43px!important;
  height:43px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#0b0b0b!important;
  border:1px solid var(--co-line)!important;
  color:var(--co-ivory)!important;
  box-shadow:none!important;
}

.hamburger span,
header.site-header.demo-overlay-header .hamburger span,
button.hamburger span{
  display:block!important;
  width:22px!important;
  height:2px!important;
  min-height:2px!important;
  margin:2px 0!important;
  border-radius:999px!important;
  background:var(--co-ivory)!important;
  transition:transform .2s ease,opacity .2s ease!important;
}

header.site-header.demo-overlay-header .hamburger:hover,
header.site-header.demo-overlay-header .hamburger:focus-visible{
  border-color:var(--co-gold-bright)!important;
  background:#16120c!important;
}

header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(1){
  transform:translateY(4px) rotate(45deg)!important;
}

header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(2){
  opacity:0!important;
}

header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(3){
  transform:translateY(-4px) rotate(-45deg)!important;
}

#mobilePanel.mobile-panel,
[data-menu].mobile-panel{
  position:fixed!important;
  inset:0 0 0 auto!important;
  display:block!important;
  width:min(430px,100vw)!important;
  max-width:100vw!important;
  height:100vh!important;
  overflow-y:auto!important;
  padding:24px!important;
  background:#070707!important;
  color:var(--co-ivory)!important;
  border-left:1px solid var(--co-line)!important;
  box-shadow:-20px 0 60px rgba(0,0,0,.46)!important;
  transform:translateX(110%)!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:transform .24s ease,opacity .24s ease,visibility .24s ease!important;
  z-index:300!important;
}

#mobilePanel.mobile-panel.open,
[data-menu].mobile-panel.open{
  transform:translateX(0)!important;
  opacity:1!important;
  visibility:visible!important;
}

body.menu-open{
  overflow:hidden!important;
}

#mobilePanel .overlay-logo-lockup{
  display:block!important;
  padding-bottom:18px!important;
  border-bottom:1px solid var(--co-line)!important;
  margin-bottom:18px!important;
}

#mobilePanel .overlay-logo-lockup img.attached-logo,
#mobilePanel .overlay-logo-lockup img.is-site-logo.attached-logo{
  display:block!important;
  width:min(320px,100%)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:left center!important;
  border-radius:0!important;
}

#mobilePanel .overlay-logo-lockup strong,
#mobilePanel .overlay-logo-lockup small{
  display:none!important;
}

#mobilePanel .overlay-accordion{
  border-bottom:1px solid rgba(201,170,97,.18)!important;
}

#mobilePanel .overlay-section-toggle,
#mobilePanel .overlay-top-link{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  padding:16px 0!important;
  color:var(--co-ivory)!important;
  background:transparent!important;
  border:0!important;
  font-size:1rem!important;
  font-weight:760!important;
  text-align:left!important;
}

#mobilePanel .overlay-section-toggle[aria-expanded="true"]{
  color:var(--co-gold-bright)!important;
}

#mobilePanel .overlay-submenu{
  display:grid!important;
  gap:7px!important;
  padding:0 0 16px 12px!important;
}

#mobilePanel .overlay-submenu[hidden]{
  display:none!important;
}

#mobilePanel .overlay-submenu a{
  display:block!important;
  padding:10px 12px!important;
  color:var(--co-soft)!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(201,170,97,.16)!important;
  border-radius:8px!important;
  font-size:.94rem!important;
  line-height:1.3!important;
}

#mobilePanel .overlay-submenu a:hover,
#mobilePanel .overlay-submenu a:focus-visible{
  background:var(--co-gold)!important;
  color:var(--co-black)!important;
}

#mobilePanel .overlay-menu-actions{
  margin-top:22px!important;
  padding-top:20px!important;
  border-top:1px solid var(--co-line)!important;
}

#mobilePanel .overlay-gold-button{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
  min-height:50px!important;
  border-radius:999px!important;
  font-weight:850!important;
}

.home-page,
.home-page main{
  background:var(--co-black)!important;
}

.home-page .peniche-style-home-hero.reference-home-hero{
  position:relative!important;
  min-height:calc(100vh - 88px)!important;
  display:flex!important;
  align-items:flex-end!important;
  padding:180px 0 116px!important;
  color:var(--co-ivory)!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.48) 39%,rgba(0,0,0,.14) 66%,rgba(0,0,0,.02) 100%),
    url('/images/adult-child-hero-v34.png') 72% 42%/cover no-repeat!important;
  border-bottom:1px solid var(--co-line)!important;
  overflow:hidden!important;
}

.home-page .peniche-style-home-hero.reference-home-hero::before,
.home-page .peniche-style-home-hero.reference-home-hero::after{
  content:none!important;
}

.home-page .peniche-hero-inner{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:1280px!important;
  margin:0 auto!important;
}

.home-page .refined-hero-copy{
  max-width:780px!important;
  margin:0!important;
}

.home-page .peniche-style-home-hero h1{
  max-width:780px!important;
  margin:0!important;
  color:#fff!important;
  font-family:Montserrat,Inter,system-ui,-apple-system,Segoe UI,sans-serif!important;
  font-size:clamp(2.9rem,5.8vw,5.8rem)!important;
  line-height:1.02!important;
  letter-spacing:0!important;
  font-weight:700!important;
  text-shadow:0 8px 30px rgba(0,0,0,.46)!important;
}

.home-page .reference-stat-ribbon,
.home-page .reference-stat-ribbon button{
  background:#080808!important;
}

.home-page .reference-stat-ribbon{
  border-top:1px solid var(--co-line)!important;
  border-bottom:1px solid var(--co-line)!important;
}

.home-page .reference-stat-ribbon button{
  border-color:rgba(201,170,97,.22)!important;
}

.home-page .reference-stat-ribbon button:hover{
  background:#17140f!important;
  border-color:var(--co-gold)!important;
}

.home-page .reference-stat-ribbon small,
.home-page .eyebrow,
.home-page .eyebrow-badge,
.stars,
.service-number{
  color:var(--co-gold-bright)!important;
}

.home-page .eyebrow{
  background:rgba(201,170,97,.12)!important;
  border:1px solid var(--co-line)!important;
}

.meet-doctor-section{
  background:linear-gradient(180deg,#080808 0%,#12100d 100%)!important;
  color:var(--co-ivory)!important;
  border-top:1px solid rgba(201,170,97,.20)!important;
  border-bottom:1px solid rgba(201,170,97,.20)!important;
}

.meet-doctor-grid{
  display:grid!important;
  grid-template-columns:minmax(280px,430px) minmax(0,1fr)!important;
  gap:clamp(28px,5vw,76px)!important;
  align-items:center!important;
}

.doctor-portrait-card{
  margin:0!important;
  border:1px solid var(--co-line)!important;
  border-radius:8px!important;
  overflow:hidden!important;
  background:#090909!important;
  box-shadow:0 30px 70px rgba(0,0,0,.34)!important;
}

.doctor-portrait-card img{
  display:block!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
}

.meet-doctor-copy{
  max-width:780px!important;
}

.meet-doctor-copy h2{
  color:#fff!important;
  margin:18px 0 20px!important;
  font-size:clamp(2rem,4vw,4rem)!important;
  line-height:1.05!important;
  letter-spacing:0!important;
}

.meet-doctor-copy blockquote{
  margin:0 0 28px!important;
  padding:0 0 0 22px!important;
  border-left:3px solid var(--co-gold)!important;
  color:#f5ecd5!important;
  font-size:clamp(1.05rem,1.7vw,1.34rem)!important;
  line-height:1.75!important;
  font-weight:500!important;
}

.home-peniche-services{
  background:#f8f3e7!important;
}

.home-peniche-services .section-heading h2,
.home-peniche-testimonial h2,
.final-cta h2{
  letter-spacing:0!important;
}

.home-peniche-testimonial{
  background:#0a0a0a!important;
  color:var(--co-ivory)!important;
}

.home-peniche-testimonial h2{
  color:#fff!important;
}

.home-peniche-testimonial p{
  color:#efe4c7!important;
}

.google-review-strip{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  padding:8px 2px 18px!important;
  scrollbar-color:var(--co-gold) rgba(255,255,255,.08)!important;
}

.google-review-card{
  flex:0 0 min(320px,82vw)!important;
  scroll-snap-align:start!important;
  background:#12100d!important;
  border:1px solid var(--co-line)!important;
  border-radius:8px!important;
  padding:22px!important;
  box-shadow:0 18px 38px rgba(0,0,0,.24)!important;
}

.google-pill{
  background:#fff!important;
  color:#4285f4!important;
  border-radius:999px!important;
  padding:5px 10px!important;
  font-weight:800!important;
  font-size:.76rem!important;
}

.google-review-card p{
  color:#f6edd8!important;
  margin:18px 0!important;
}

.google-review-card strong{
  color:#fff!important;
}

.contact-us-hero.page-hero{
  background:linear-gradient(135deg,#080808 0%,#1b1710 100%)!important;
  border:1px solid var(--co-line)!important;
  box-shadow:0 22px 58px rgba(0,0,0,.12)!important;
}

.contact-us-hero .contact-hero-actions{
  gap:14px!important;
  margin-top:30px!important;
}

.contact-us-hero .contact-schedule-cta{
  min-height:58px!important;
  padding:0 34px!important;
  border-radius:999px!important;
  font-size:1.02rem!important;
  font-weight:900!important;
  position:relative!important;
  isolation:isolate!important;
}

.contact-us-hero .contact-schedule-cta::after{
  content:""!important;
  position:absolute!important;
  inset:-6px!important;
  z-index:-1!important;
  border-radius:999px!important;
  border:1px solid rgba(236,213,143,.42)!important;
  opacity:.78!important;
}

.site-footer{
  background:#050505!important;
  color:var(--co-soft)!important;
  border-top:1px solid var(--co-line)!important;
  padding:58px 0 106px!important;
}

.site-footer .footer-shell{
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important;
  gap:clamp(34px,5vw,76px)!important;
  align-items:start!important;
}

.footer-brand-panel{
  display:grid!important;
  gap:22px!important;
}

.site-footer .footer-brand{
  display:block!important;
  width:100%!important;
  max-width:350px!important;
}

.site-footer .footer-logo.attached-logo{
  display:block!important;
  width:100%!important;
  max-width:350px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  border-radius:0!important;
  filter:none!important;
}

.site-footer .footer-brand .brand-wordmark{
  display:none!important;
}

.footer-brand-copy p{
  margin:0 0 12px!important;
  color:#f4ead3!important;
  line-height:1.7!important;
}

.footer-brand-copy .fine-print{
  color:#cfc1a2!important;
  font-size:.88rem!important;
}

.footer-menu-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(18px,2.7vw,38px)!important;
}

.footer-menu-column h3{
  margin:0 0 14px!important;
  color:#fff!important;
  font-size:.92rem!important;
  font-weight:850!important;
}

.site-footer .footer-menu-column a{
  display:block!important;
  margin:0!important;
  padding:7px 0!important;
  color:#efe4c7!important;
  font-size:.88rem!important;
  line-height:1.35!important;
}

.site-footer .footer-menu-column a:hover,
.site-footer .footer-menu-column a:focus-visible{
  color:var(--co-gold-bright)!important;
}

.footer-social-icons{
  display:flex!important;
  gap:10px!important;
  margin-top:12px!important;
}

.site-footer .social-icon{
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border:1px solid var(--co-line)!important;
  border-radius:999px!important;
  color:var(--co-gold-bright)!important;
}

.site-footer .social-icon:hover,
.site-footer .social-icon:focus-visible{
  background:var(--co-gold)!important;
  color:var(--co-black)!important;
}

@media(max-width:1320px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    grid-template-columns:minmax(210px,250px) minmax(0,1fr) auto!important;
    gap:12px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:250px!important;
    max-width:250px!important;
    height:70px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:246px!important;
    max-width:246px!important;
    height:70px!important;
    max-height:70px!important;
    flex-basis:246px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    gap:14px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
    font-size:.76rem!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .hero-phone{
    display:none!important;
  }
}

@media(max-width:1180px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    grid-template-columns:minmax(0,1fr) auto!important;
    min-height:82px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    display:none!important;
  }

  .hamburger,
  header.site-header.demo-overlay-header .hamburger,
  button.hamburger{
    display:inline-grid!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
    display:none!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(58vw,260px)!important;
    min-width:210px!important;
    max-width:260px!important;
    height:68px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(58vw,250px)!important;
    max-width:250px!important;
    height:68px!important;
    max-height:68px!important;
    flex-basis:auto!important;
  }

  .home-page .peniche-style-home-hero.reference-home-hero{
    min-height:82vh!important;
    padding:142px 0 86px!important;
    background:
      linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.46) 47%,rgba(0,0,0,.14) 100%),
      url('/images/adult-child-hero-v34.png') 68% 44%/cover no-repeat!important;
  }
}

@media(max-width:980px){
  .meet-doctor-grid,
  .site-footer .footer-shell{
    grid-template-columns:1fr!important;
  }

  .doctor-portrait-card{
    max-width:430px!important;
  }

  .footer-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:680px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    min-height:76px!important;
    padding:8px 14px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(66vw,226px)!important;
    min-width:184px!important;
    max-width:226px!important;
    height:60px!important;
  }

  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(66vw,220px)!important;
    max-width:220px!important;
    height:60px!important;
    max-height:60px!important;
  }

  .hamburger,
  header.site-header.demo-overlay-header .hamburger,
  button.hamburger{
    width:40px!important;
    height:40px!important;
  }

  .hamburger span,
  header.site-header.demo-overlay-header .hamburger span,
  button.hamburger span{
    width:21px!important;
    margin:2px 0!important;
  }

  .home-page .peniche-style-home-hero.reference-home-hero{
    min-height:76vh!important;
    padding:118px 0 64px!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.38) 36%,rgba(0,0,0,.82) 100%),
      url('/images/adult-child-hero-v34.png') 72% 38%/cover no-repeat!important;
  }

  .home-page .peniche-style-home-hero h1{
    font-size:clamp(2.35rem,11vw,3.65rem)!important;
    max-width:520px!important;
  }

  .meet-doctor-section{
    padding-block:54px!important;
  }

  .meet-doctor-copy h2{
    font-size:2.35rem!important;
  }

  .meet-doctor-copy blockquote{
    padding-left:16px!important;
    font-size:1rem!important;
  }

  .footer-menu-grid{
    grid-template-columns:1fr!important;
  }

  .contact-us-hero .contact-schedule-cta{
    width:100%!important;
  }
}

/* v59: requested logo, header, hero image, hamburger, doctor, and footer polish */
:root{
  --co-brand-black:#050505;
  --co-brand-charcoal:#0f0e0d;
  --co-brand-gold:#c9aa61;
  --co-brand-gold-bright:#ecd58f;
  --co-brand-ivory:#fffdf4;
  --co-brand-cream:#f8f1e6;
  --co-brand-line:rgba(201,170,97,.38);
}

header.site-header.demo-overlay-header,
header.site-header.demo-overlay-header.is-scrolled{
  background:rgba(5,5,5,.97)!important;
  border-bottom:1px solid var(--co-brand-line)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.34)!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
  display:grid!important;
  grid-template-columns:minmax(210px,255px) minmax(0,1fr) auto!important;
  align-items:center!important;
  width:100%!important;
  max-width:none!important;
  min-height:82px!important;
  margin:0!important;
  padding:8px clamp(12px,1.7vw,26px)!important;
  gap:clamp(14px,2vw,30px)!important;
  background:transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
  justify-self:start!important;
  align-self:center!important;
  width:255px!important;
  min-width:210px!important;
  max-width:255px!important;
  height:66px!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
  display:block!important;
  position:static!important;
  width:245px!important;
  min-width:0!important;
  max-width:245px!important;
  height:66px!important;
  max-height:66px!important;
  flex:0 0 245px!important;
  object-fit:contain!important;
  object-position:left center!important;
  border-radius:0!important;
  background:transparent!important;
  filter:none!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand .brand-name-lockup{
  display:none!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(16px,1.8vw,30px)!important;
  min-width:0!important;
  white-space:nowrap!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link,
header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
  color:var(--co-brand-ivory)!important;
  font-size:clamp(.8rem,.78vw,.94rem)!important;
  font-weight:760!important;
  line-height:1.2!important;
  padding:14px 0!important;
  letter-spacing:.01em!important;
  text-shadow:none!important;
  border-bottom:2px solid transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:hover > .desktop-menu-link,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-item:focus-within > .desktop-menu-link{
  color:var(--co-brand-gold-bright)!important;
  border-bottom-color:var(--co-brand-gold)!important;
  background:transparent!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown{
  left:50%!important;
  right:auto!important;
  top:calc(100% + 5px)!important;
  transform:translateX(-50%)!important;
  min-width:250px!important;
  width:max-content!important;
  max-width:min(360px,calc(100vw - 36px))!important;
  background:rgba(7,7,7,.98)!important;
  border:1px solid var(--co-brand-line)!important;
  border-top:3px solid var(--co-brand-gold)!important;
  border-radius:0 0 10px 10px!important;
  padding:10px!important;
  box-shadow:0 22px 58px rgba(0,0,0,.48)!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a{
  color:var(--co-brand-ivory)!important;
  background:transparent!important;
  border-radius:6px!important;
  padding:10px 12px!important;
  font-size:.86rem!important;
  line-height:1.3!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-dropdown a:focus-visible{
  color:var(--co-brand-black)!important;
  background:var(--co-brand-gold)!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:0!important;
  gap:10px!important;
}

header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .hero-phone{
  color:var(--co-brand-ivory)!important;
  font-size:.8rem!important;
  font-weight:700!important;
}

.btn-primary,
.contact-us-hero .contact-schedule-cta,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link,
#mobilePanel .overlay-gold-button{
  background:linear-gradient(135deg,var(--co-brand-gold-bright),var(--co-brand-gold))!important;
  border:1px solid var(--co-brand-gold)!important;
  color:var(--co-brand-black)!important;
  box-shadow:0 14px 30px rgba(201,170,97,.24)!important;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.contact-us-hero .contact-schedule-cta:hover,
.contact-us-hero .contact-schedule-cta:focus-visible,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:hover,
header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link:focus-visible,
#mobilePanel .overlay-gold-button:hover,
#mobilePanel .overlay-gold-button:focus-visible{
  background:#fff4bd!important;
  border-color:#fff4bd!important;
  color:var(--co-brand-black)!important;
  transform:translateY(-1px)!important;
}

.hamburger,
header.site-header.demo-overlay-header .hamburger,
button.hamburger{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  display:none!important;
  place-items:center!important;
  padding:0!important;
  border-radius:999px!important;
  background:#090909!important;
  border:1px solid var(--co-brand-line)!important;
  box-shadow:none!important;
}

.hamburger span,
header.site-header.demo-overlay-header .hamburger span,
button.hamburger span{
  display:block!important;
  width:21px!important;
  height:2px!important;
  min-height:2px!important;
  margin:2px 0!important;
  border-radius:999px!important;
  background:var(--co-brand-ivory)!important;
  transition:transform .22s ease,opacity .22s ease!important;
}

header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(1){
  transform:translateY(4px) rotate(45deg)!important;
}
header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(2){
  opacity:0!important;
}
header.site-header.demo-overlay-header .hamburger.is-open span:nth-child(3){
  transform:translateY(-4px) rotate(-45deg)!important;
}

#mobilePanel.mobile-panel,
[data-menu].mobile-panel{
  position:fixed!important;
  inset:0 0 0 auto!important;
  width:min(430px,100vw)!important;
  max-width:100vw!important;
  height:100vh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:24px!important;
  background:#070707!important;
  color:var(--co-brand-ivory)!important;
  border-left:1px solid var(--co-brand-line)!important;
  box-shadow:-20px 0 60px rgba(0,0,0,.48)!important;
  transform:translateX(110%)!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:transform .24s ease,opacity .24s ease,visibility .24s ease!important;
  z-index:300!important;
}
#mobilePanel.mobile-panel.open,
[data-menu].mobile-panel.open{
  transform:translateX(0)!important;
  opacity:1!important;
  visibility:visible!important;
}
#mobilePanel .overlay-section-toggle,
#mobilePanel .overlay-top-link{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  padding:16px 0!important;
  color:var(--co-brand-ivory)!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(201,170,97,.18)!important;
  font-size:1rem!important;
  font-weight:760!important;
  text-align:left!important;
}
#mobilePanel .overlay-section-toggle[aria-expanded="true"]{
  color:var(--co-brand-gold-bright)!important;
}
#mobilePanel .overlay-submenu{
  display:grid!important;
  gap:7px!important;
  padding:10px 0 16px 12px!important;
}
#mobilePanel .overlay-submenu[hidden]{
  display:none!important;
}
#mobilePanel .overlay-submenu a{
  display:block!important;
  padding:10px 12px!important;
  color:var(--co-brand-cream)!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(201,170,97,.16)!important;
  border-radius:8px!important;
  font-size:.94rem!important;
  line-height:1.3!important;
}
#mobilePanel .overlay-submenu a:hover,
#mobilePanel .overlay-submenu a:focus-visible{
  color:var(--co-brand-black)!important;
  background:var(--co-brand-gold)!important;
}
#mobilePanel .overlay-logo-lockup{
  display:block!important;
  padding-bottom:18px!important;
  margin-bottom:18px!important;
  border-bottom:1px solid var(--co-brand-line)!important;
}
#mobilePanel .overlay-logo-lockup img.attached-logo,
#mobilePanel .overlay-logo-lockup img.is-site-logo.attached-logo{
  display:block!important;
  width:min(320px,100%)!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
}
#mobilePanel .overlay-logo-lockup strong,
#mobilePanel .overlay-logo-lockup small{
  display:none!important;
}

.home-page .peniche-style-home-hero.reference-home-hero{
  position:relative!important;
  min-height:calc(100vh - 82px)!important;
  display:flex!important;
  align-items:flex-end!important;
  padding:175px 0 112px!important;
  color:var(--co-brand-ivory)!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.42) 37%,rgba(0,0,0,.10) 65%,rgba(0,0,0,0) 100%),
    url('/images/adult-child-hero-v34.png') 76% 58%/cover no-repeat!important;
  border-bottom:1px solid var(--co-brand-line)!important;
  overflow:hidden!important;
}
.home-page .peniche-style-home-hero.reference-home-hero::before,
.home-page .peniche-style-home-hero.reference-home-hero::after{
  content:none!important;
}
.home-page .peniche-style-home-hero h1{
  max-width:780px!important;
  margin:0!important;
  color:#fff!important;
  font-family:Montserrat,Inter,system-ui,-apple-system,Segoe UI,sans-serif!important;
  font-size:clamp(3rem,5.6vw,5.65rem)!important;
  line-height:1.02!important;
  letter-spacing:0!important;
  font-weight:700!important;
  text-shadow:0 8px 30px rgba(0,0,0,.50)!important;
}

.meet-doctor-section{
  background:linear-gradient(180deg,#080808 0%,#12100d 100%)!important;
  color:var(--co-brand-ivory)!important;
  border-top:1px solid rgba(201,170,97,.20)!important;
  border-bottom:1px solid rgba(201,170,97,.20)!important;
}
.meet-doctor-grid{
  display:grid!important;
  grid-template-columns:minmax(280px,430px) minmax(0,1fr)!important;
  gap:clamp(28px,5vw,76px)!important;
  align-items:center!important;
}
.doctor-portrait-card{
  margin:0!important;
  border:1px solid var(--co-brand-line)!important;
  border-radius:8px!important;
  overflow:hidden!important;
  background:#090909!important;
  box-shadow:0 30px 70px rgba(0,0,0,.34)!important;
}
.doctor-portrait-card img{
  display:block!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
}
.meet-doctor-copy h2{
  color:#fff!important;
  margin:18px 0 20px!important;
  font-size:clamp(2rem,4vw,4rem)!important;
  line-height:1.05!important;
  letter-spacing:0!important;
}
.meet-doctor-copy blockquote{
  margin:0 0 28px!important;
  padding:0 0 0 22px!important;
  border-left:3px solid var(--co-brand-gold)!important;
  color:#f5ecd5!important;
  font-size:clamp(1.05rem,1.7vw,1.34rem)!important;
  line-height:1.75!important;
  font-weight:500!important;
}

.site-footer{
  background:var(--co-brand-black)!important;
  color:var(--co-brand-cream)!important;
  border-top:1px solid var(--co-brand-line)!important;
  padding:58px 0 106px!important;
}
.site-footer .footer-shell{
  display:grid!important;
  grid-template-columns:minmax(245px,335px) minmax(0,1fr)!important;
  gap:clamp(30px,5vw,70px)!important;
  align-items:start!important;
}
.site-footer .footer-logo.attached-logo{
  display:block!important;
  width:100%!important;
  max-width:320px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  border-radius:0!important;
  filter:none!important;
}
.footer-brand-copy p{
  margin:0 0 12px!important;
  color:var(--co-brand-cream)!important;
  line-height:1.7!important;
}
.footer-brand-copy .fine-print{
  color:#d8ccb8!important;
  font-size:.88rem!important;
}
.footer-menu-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(18px,2.7vw,38px)!important;
}
.footer-menu-column h3{
  margin:0 0 14px!important;
  color:#fff!important;
  font-size:.92rem!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
}
.site-footer .footer-menu-column a{
  display:block!important;
  margin:0!important;
  padding:7px 0!important;
  color:#efe4c7!important;
  font-size:.88rem!important;
  line-height:1.35!important;
}
.site-footer .footer-menu-column a:hover,
.site-footer .footer-menu-column a:focus-visible{
  color:var(--co-brand-gold-bright)!important;
}
.site-footer .social-icon{
  border-color:var(--co-brand-line)!important;
  color:var(--co-brand-gold-bright)!important;
}
.site-footer .social-icon:hover,
.site-footer .social-icon:focus-visible{
  background:var(--co-brand-gold)!important;
  color:var(--co-brand-black)!important;
}

@media(max-width:1320px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    grid-template-columns:minmax(190px,232px) minmax(0,1fr) auto!important;
    gap:14px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:232px!important;
    min-width:190px!important;
    max-width:232px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:224px!important;
    max-width:224px!important;
    height:61px!important;
    max-height:61px!important;
    flex-basis:224px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    gap:12px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links .desktop-menu-link{
    font-size:.76rem!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .hero-phone{
    display:none!important;
  }
}

@media(max-width:1180px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    grid-template-columns:minmax(0,1fr) auto!important;
    min-height:78px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .desktop-menu-links{
    display:none!important;
  }
  .hamburger,
  header.site-header.demo-overlay-header .hamburger,
  button.hamburger{
    display:inline-grid!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .hero-nav-actions .header-schedule-link{
    display:none!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(58vw,254px)!important;
    min-width:210px!important;
    max-width:254px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(58vw,245px)!important;
    max-width:245px!important;
    height:64px!important;
    max-height:64px!important;
    flex-basis:auto!important;
  }
}

@media(max-width:980px){
  .meet-doctor-grid,
  .site-footer .footer-shell{
    grid-template-columns:1fr!important;
  }
  .doctor-portrait-card{
    max-width:430px!important;
  }
  .footer-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:680px){
  header.site-header.demo-overlay-header nav.navbar.main-menu,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu{
    min-height:72px!important;
    padding:7px 12px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand{
    width:min(66vw,218px)!important;
    min-width:176px!important;
    max-width:218px!important;
    height:58px!important;
  }
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.attached-logo,
  header.site-header.demo-overlay-header.is-scrolled nav.navbar.main-menu > .brand.hero-brand img.is-site-logo.attached-logo{
    width:min(66vw,210px)!important;
    max-width:210px!important;
    height:56px!important;
    max-height:56px!important;
  }
  .hamburger,
  header.site-header.demo-overlay-header .hamburger,
  button.hamburger{
    width:39px!important;
    height:39px!important;
    min-width:39px!important;
  }
  .hamburger span,
  header.site-header.demo-overlay-header .hamburger span,
  button.hamburger span{
    width:20px!important;
    margin:1.8px 0!important;
  }
  .home-page .peniche-style-home-hero.reference-home-hero{
    min-height:76vh!important;
    padding:116px 0 62px!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.26) 0%,rgba(0,0,0,.38) 38%,rgba(0,0,0,.82) 100%),
      url('/images/adult-child-hero-v34.png') 78% 58%/cover no-repeat!important;
  }
  .home-page .peniche-style-home-hero h1{
    font-size:clamp(2.25rem,10.5vw,3.55rem)!important;
    max-width:520px!important;
  }
  .meet-doctor-copy h2{
    font-size:2.35rem!important;
  }
  .meet-doctor-copy blockquote{
    padding-left:16px!important;
    font-size:1rem!important;
  }
  .footer-menu-grid{
    grid-template-columns:1fr!important;
  }
}

/* Before & After page AI image update */
.before-after-hero h1{
  color:#082a5b!important;
}
.before-after-gallery-enhanced{
  display:flex!important;
  flex-direction:column!important;
  gap:28px!important;
}
.before-after-gallery-enhanced .before-after-case{
  display:grid!important;
  grid-template-columns:minmax(220px,300px) 1fr!important;
  gap:28px!important;
  align-items:center!important;
  padding:28px 0!important;
  border:0!important;
  border-bottom:1px solid rgba(8,42,91,.14)!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.before-after-gallery-enhanced .case-copy{
  display:flex!important;
  gap:18px!important;
  align-items:flex-start!important;
}
.before-after-gallery-enhanced .case-icon{
  width:56px!important;
  height:56px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#eaf4ff!important;
  color:#0a57a8!important;
  font-size:24px!important;
  flex:0 0 56px!important;
}
.before-after-gallery-enhanced h2{
  margin:0 0 10px!important;
  color:#082a5b!important;
}
.before-after-gallery-enhanced p{
  margin:0!important;
  color:#34445c!important;
  line-height:1.65!important;
}
.before-after-gallery-enhanced .before-after-photos{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
  align-items:stretch!important;
}
.before-after-gallery-enhanced figure{
  margin:0!important;
  position:relative!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 14px 30px rgba(8,42,91,.12)!important;
}
.before-after-gallery-enhanced figure span{
  position:absolute!important;
  top:10px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:2!important;
  background:#eaf4ff!important;
  color:#082a5b!important;
  border-radius:8px!important;
  padding:7px 18px!important;
  text-transform:uppercase!important;
  font-size:.78rem!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
}
.before-after-gallery-enhanced img{
  display:block!important;
  width:100%!important;
  height:220px!important;
  object-fit:cover!important;
}
.before-after-cta .cta-actions{
  display:flex!important;
  gap:16px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
@media(max-width:900px){
  .before-after-gallery-enhanced .before-after-case{
    grid-template-columns:1fr!important;
  }
  .before-after-gallery-enhanced .before-after-photos{
    grid-template-columns:1fr!important;
  }
  .before-after-gallery-enhanced img{
    height:auto!important;
  }
  .before-after-cta .cta-actions{
    justify-content:flex-start!important;
  }
}
