:root{
  --coral-gold:#c9974a;
  --coral-gold-soft:#d9b06a;
  --coral-gold-dark:#a87532;
  --coral-black:#070707;
  --coral-charcoal:#181614;
  --coral-cream:#f5efe5;
  --coral-copy:#f8f2e8;
  --coral-muted:#8d8172;
  --coral-line:rgba(201,151,74,.28);
}

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;
}

/* ===== Header: Peniche-inspired, Coral branded ===== */
.site-header.demo-overlay-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.44),rgba(0,0,0,0))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  z-index:1000!important;
  transition:background .25s ease,box-shadow .25s ease,backdrop-filter .25s ease!important;
}
.site-header.demo-overlay-header.is-scrolled,
body.menu-open .site-header.demo-overlay-header{
  background:rgba(8,8,8,.92)!important;
  border-bottom:1px solid rgba(201,151,74,.30)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(18px)!important;
}
.site-header.demo-overlay-header .navbar.main-menu{
  max-width:1760px!important;
  margin:0 auto!important;
  padding:20px 34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  min-height:104px!important;
  background:transparent!important;
}
.site-header.demo-overlay-header .brand.hero-brand{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  min-width:0!important;
  margin-right:14px!important;
  color:#fff!important;
}
.site-header.demo-overlay-header .brand.hero-brand .brand-name-lockup,
.site-footer .footer-brand .brand-wordmark{
  display:none!important;
}
.site-header.demo-overlay-header .brand.hero-brand .brand-logo,
.site-header.demo-overlay-header .brand.hero-brand .brand-logo-light{
  display:block!important;
  width:clamp(230px,19vw,330px)!important;
  min-width:230px!important;
  max-width:330px!important;
  height:auto!important;
  max-height:none!important;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.35))!important;
}

/* Easy desktop mouse navigation */
.site-header.demo-overlay-header .desktop-menu-links{
  flex:1 1 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  min-width:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.site-header.demo-overlay-header .desktop-menu-item{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  padding:18px 0!important;
}
.site-header.demo-overlay-header .desktop-menu-item::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:100%!important;
  height:14px!important;
}
.site-header.demo-overlay-header .desktop-menu-link{
  display:inline-flex!important;
  align-items:center!important;
  min-height:42px!important;
  padding:0 11px!important;
  color:#fff!important;
  background:transparent!important;
  border-radius:0!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:clamp(.68rem,.72vw,.82rem)!important;
  font-weight:850!important;
  white-space:nowrap!important;
  text-shadow:0 3px 12px rgba(0,0,0,.38)!important;
}
.site-header.demo-overlay-header .desktop-menu-link:hover,
.site-header.demo-overlay-header .desktop-menu-item:focus-within > .desktop-menu-link,
.site-header.demo-overlay-header .desktop-menu-item:hover > .desktop-menu-link{
  color:var(--coral-gold-soft)!important;
  background:rgba(255,255,255,.07)!important;
}
.site-header.demo-overlay-header .desktop-dropdown{
  position:absolute!important;
  left:0!important;
  top:calc(100% - 2px)!important;
  display:grid!important;
  min-width:270px!important;
  padding:12px!important;
  background:rgba(8,8,8,.97)!important;
  border:1px solid rgba(201,151,74,.36)!important;
  border-top:4px solid var(--coral-gold)!important;
  box-shadow:0 24px 54px rgba(0,0,0,.36)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(8px)!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
  z-index:1005!important;
}
.site-header.demo-overlay-header .desktop-menu-item:hover .desktop-dropdown,
.site-header.demo-overlay-header .desktop-menu-item:focus-within .desktop-dropdown{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0)!important;
}
.site-header.demo-overlay-header .desktop-dropdown a{
  display:block!important;
  color:#fff!important;
  background:transparent!important;
  padding:12px 14px!important;
  font-size:.92rem!important;
  font-weight:650!important;
  line-height:1.35!important;
  border-left:2px solid transparent!important;
  white-space:nowrap!important;
}
.site-header.demo-overlay-header .desktop-dropdown a:hover,
.site-header.demo-overlay-header .desktop-dropdown a:focus{
  color:#fff!important;
  background:rgba(201,151,74,.16)!important;
  border-left-color:var(--coral-gold)!important;
}

.site-header.demo-overlay-header .hero-nav-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:16px!important;
  white-space:nowrap!important;
}
.site-header.demo-overlay-header .hero-phone,
.site-header.demo-overlay-header .hero-call-link{
  color:#fff!important;
  font-size:clamp(.76rem,.78vw,.94rem)!important;
  font-weight:850!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-shadow:0 3px 12px rgba(0,0,0,.36)!important;
}
.site-header.demo-overlay-header .hero-nav-actions .header-schedule-link,
.site-header.demo-overlay-header .hero-nav-actions .btn-square{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:0 23px!important;
  border-radius:0!important;
  background:var(--coral-gold)!important;
  border:1px solid var(--coral-gold)!important;
  color:#111!important;
  box-shadow:none!important;
  text-transform:uppercase!important;
  letter-spacing:.17em!important;
  font-size:.8rem!important;
  font-weight:850!important;
}
.site-header.demo-overlay-header .hero-nav-actions .header-schedule-link:hover{
  background:var(--coral-gold-soft)!important;
  border-color:var(--coral-gold-soft)!important;
}
.site-header.demo-overlay-header .hamburger{
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.site-header.demo-overlay-header .hamburger span{
  width:35px!important;
  height:3px!important;
  margin:3px 0!important;
  background:#fff!important;
  border-radius:99px!important;
  transition:transform .24s ease, opacity .24s ease!important;
}
.site-header.demo-overlay-header .hamburger.is-open span:nth-child(1){transform:translateY(9px) rotate(45deg)!important;}
.site-header.demo-overlay-header .hamburger.is-open span:nth-child(2){opacity:0!important;}
.site-header.demo-overlay-header .hamburger.is-open span:nth-child(3){transform:translateY(-9px) rotate(-45deg)!important;}

/* Mobile / hamburger panel */
.site-header.demo-overlay-header .mobile-panel{
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  width:min(440px,92vw)!important;
  height:100vh!important;
  padding:112px 28px 32px!important;
  background:rgba(8,8,8,.985)!important;
  border-left:1px solid rgba(201,151,74,.25)!important;
  box-shadow:-24px 0 54px rgba(0,0,0,.38)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  transform:translateX(110%)!important;
  visibility:visible!important;
  opacity:1!important;
  display:block!important;
  transition:transform .28s ease!important;
  z-index:999!important;
}
.site-header.demo-overlay-header .mobile-panel.open{transform:translateX(0)!important;}
.site-header.demo-overlay-header .overlay-menu-head{
  padding-bottom:20px!important;
  margin-bottom:18px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.site-header.demo-overlay-header .overlay-logo-lockup{display:flex!important;align-items:center!important;gap:14px!important;color:#fff!important;}
.site-header.demo-overlay-header .overlay-logo-lockup img{width:96px!important;height:auto!important;}
.site-header.demo-overlay-header .overlay-logo-lockup strong,
.site-header.demo-overlay-header .overlay-logo-lockup small{display:block!important;}
.site-header.demo-overlay-header .overlay-logo-lockup small{color:rgba(255,255,255,.72)!important;}
.site-header.demo-overlay-header .overlay-accordion,
.site-header.demo-overlay-header .overlay-top-link{border-bottom:1px solid rgba(255,255,255,.10)!important;}
.site-header.demo-overlay-header .overlay-section-toggle,
.site-header.demo-overlay-header .overlay-top-link{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:18px 0!important;
  background:transparent!important;
  border:0!important;
  color:#fff!important;
  font-size:1.02rem!important;
  font-weight:750!important;
  letter-spacing:.02em!important;
  text-align:left!important;
}
.site-header.demo-overlay-header .submenu-indicator{color:var(--coral-gold)!important;font-size:1.35rem!important;line-height:1!important;font-weight:800!important;}
.site-header.demo-overlay-header .overlay-submenu{display:grid!important;gap:10px!important;padding:0 0 18px 0!important;}
.site-header.demo-overlay-header .overlay-submenu a{color:rgba(255,255,255,.86)!important;padding:0 0 0 12px!important;border-left:2px solid rgba(201,151,74,.38)!important;font-size:.98rem!important;}
.site-header.demo-overlay-header .overlay-menu-actions{display:grid!important;gap:14px!important;padding-top:24px!important;}
.site-header.demo-overlay-header .overlay-gold-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;padding:0 18px!important;background:var(--coral-gold)!important;color:#111!important;text-transform:uppercase!important;letter-spacing:.15em!important;font-weight:850!important;}
.site-header.demo-overlay-header .overlay-contact-line,
.site-header.demo-overlay-header .overlay-social-row a{color:#fff!important;}
.site-header.demo-overlay-header .overlay-social-row{display:flex!important;gap:16px!important;}

/* ===== Homepage hero: full picture visible, not zoomed into teeth ===== */
body.home-page,
body.home-page main{background:#fff!important;}
body.home-page .home-similar-hero{
  position:relative!important;
  min-height:100vh!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  background:linear-gradient(90deg,#080808 0%,#171512 44%,#1d1a16 100%)!important;
  isolation:isolate!important;
}
body.home-page .home-similar-hero-photo{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  z-index:-3!important;
  opacity:1!important;
}
body.home-page .home-similar-hero-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.70) 33%,rgba(0,0,0,.32) 56%,rgba(0,0,0,.08) 100%),
    linear-gradient(180deg,rgba(0,0,0,.36) 0%,rgba(0,0,0,.05) 34%,rgba(0,0,0,.22) 100%)!important;
  pointer-events:none!important;
}
body.home-page .home-similar-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:radial-gradient(circle at 14% 70%,rgba(201,151,74,.16),transparent 34%)!important;
  pointer-events:none!important;
}
body.home-page .home-similar-hero-inner{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:1760px!important;
  margin:0 auto!important;
  padding:175px 38px 84px!important;
}
body.home-page .home-similar-hero-copy{max-width:760px!important;color:var(--coral-copy)!important;}
body.home-page .home-similar-hero-copy h1{
  margin:0!important;
  font-family:"Playfair Display", Georgia, "Times New Roman", serif!important;
  font-size:clamp(3.8rem,7vw,6.55rem)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  font-weight:500!important;
  color:#fff!important;
  text-shadow:0 6px 26px rgba(0,0,0,.36)!important;
}
body.home-page .home-similar-hero-copy .accent-word{color:var(--coral-gold-soft)!important;font-style:italic!important;font-weight:500!important;}

/* Home sections blended to the black/gold look */
body.home-page .home-stat-strip{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  padding:36px 22px 64px!important;
  max-width:1280px!important;
  margin:-38px auto 0!important;
  position:relative!important;
  z-index:2!important;
  background:transparent!important;
  border:0!important;
}
body.home-page .home-stat-strip button{
  appearance:none!important;
  border:1px solid rgba(201,151,74,.22)!important;
  background:#fff!important;
  color:#151515!important;
  text-align:left!important;
  border-radius:0!important;
  padding:24px 22px!important;
  box-shadow:0 18px 40px rgba(0,0,0,.10)!important;
  cursor:pointer!important;
}
body.home-page .home-stat-strip button small{display:block!important;margin-bottom:8px!important;color:var(--coral-gold-dark)!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-weight:850!important;}
body.home-page .home-stat-strip button strong{display:block!important;margin-bottom:8px!important;font-size:1.15rem!important;}
body.home-page .home-stat-strip button span{display:block!important;color:#655d54!important;line-height:1.6!important;}
body.home-page .meet-doctor-section{background:var(--coral-cream)!important;padding-top:76px!important;}
body.home-page .doctor-portrait-card,
body.home-page .meet-doctor-copy,
body.home-page .treatment-grid article,
body.home-page .google-review-card,
body.home-page .home-peniche-testimonial .container > div:first-child{border-radius:0!important;}
body.home-page .doctor-portrait-card,
body.home-page .meet-doctor-copy,
body.home-page .treatment-grid article,
body.home-page .google-review-card{box-shadow:0 16px 36px rgba(0,0,0,.06)!important;border-color:rgba(201,151,74,.18)!important;}
body.home-page .btn,
body.home-page .btn-primary,
body.home-page .btn-secondary,
body.home-page .btn-outline-dark,
body.home-page .btn-light{border-radius:0!important;}
body.home-page .btn-primary{background:var(--coral-gold)!important;border-color:var(--coral-gold)!important;color:#111!important;text-transform:uppercase!important;letter-spacing:.14em!important;}
body.home-page .btn-outline-dark{background:transparent!important;color:#111!important;border:1px solid var(--coral-gold)!important;}
body.home-page .final-cta{background:#0b0b0b!important;}
body.home-page .final-cta h2{color:#fff!important;}

/* Footer */
.site-footer{background:#0b0b0b!important;color:#f0e7d9!important;border-top:1px solid rgba(201,151,74,.25)!important;}
.site-footer .footer-shell{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr)!important;gap:44px!important;align-items:start!important;}
.site-footer .footer-brand-panel{display:grid!important;gap:18px!important;}
.site-footer .footer-brand{display:block!important;}
.site-footer .footer-brand .brand-logo,
.site-footer .footer-brand .footer-logo{width:min(100%,420px)!important;max-width:420px!important;height:auto!important;display:block!important;}
.site-footer .footer-brand-copy p{margin:0 0 10px!important;}
.site-footer .footer-menu-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px!important;}
.site-footer .footer-menu-column h3{margin-top:0!important;color:#fff!important;}
.site-footer .footer-menu-column a{color:#e8dcc9!important;}
.site-footer .footer-menu-column a:hover{color:var(--coral-gold-soft)!important;}
.site-footer .footer-social-icons{display:flex!important;gap:10px!important;align-items:center!important;}
.site-footer .social-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;border:1px solid rgba(255,255,255,.18)!important;}

@media (max-width:1460px){
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo,
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo-light{width:clamp(210px,18vw,280px)!important;min-width:210px!important;}
  .site-header.demo-overlay-header .desktop-menu-link{padding:0 8px!important;letter-spacing:.055em!important;}
  .site-header.demo-overlay-header .hero-phone{display:none!important;}
}
@media (max-width:1220px){
  .site-header.demo-overlay-header .desktop-menu-links{display:none!important;}
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo,
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo-light{width:min(40vw,300px)!important;min-width:210px!important;}
}
@media (max-width:980px){
  body.home-page .home-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .site-footer .footer-shell,
  .site-footer .footer-menu-grid{grid-template-columns:1fr!important;}
}
@media (max-width:760px){
  .site-header.demo-overlay-header .navbar.main-menu{padding:14px 18px!important;min-height:86px!important;}
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo,
  .site-header.demo-overlay-header .brand.hero-brand .brand-logo-light{width:min(58vw,245px)!important;min-width:170px!important;}
  .site-header.demo-overlay-header .hero-nav-actions{gap:10px!important;}
  .site-header.demo-overlay-header .hero-nav-actions .header-schedule-link,
  .site-header.demo-overlay-header .hero-nav-actions .btn-square{display:none!important;}
  .site-header.demo-overlay-header .hamburger{width:48px!important;height:48px!important;}
  .site-header.demo-overlay-header .hamburger span{width:32px!important;margin:3px 0!important;}
  .site-header.demo-overlay-header .mobile-panel{width:100vw!important;padding-top:102px!important;}
  body.home-page .home-similar-hero{min-height:88vh!important;align-items:flex-end!important;}
  body.home-page .home-similar-hero-photo{object-fit:contain!important;object-position:center bottom!important;}
  body.home-page .home-similar-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.56) 54%,rgba(0,0,0,.18)),linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.38))!important;}
  body.home-page .home-similar-hero-inner{padding:136px 20px 62px!important;}
  body.home-page .home-similar-hero-copy{max-width:500px!important;}
  body.home-page .home-similar-hero-copy h1{font-size:clamp(2.85rem,14vw,4.6rem)!important;}
  body.home-page .home-stat-strip{grid-template-columns:1fr!important;margin-top:-18px!important;padding:24px 16px 48px!important;}
}
