/* False Creek Pure Dental: shared clinic design. */
:root { --clinic-ink:#243c43; --clinic-blue:#146b91; --clinic-teal:#087b71; --clinic-soft:#f1f7f7; --clinic-line:#dce6e7; }
#content .elementor :is(h1,h2,h3,h4,p,li) { letter-spacing:0!important; }
#content .elementor h1 { font-size:44px!important; line-height:1.18!important; }
#content .elementor h2 { font-size:32px!important; line-height:1.25!important; }
#content .elementor h3 { font-size:23px!important; line-height:1.35!important; }
#content .elementor :is(.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li) {  font-size:18px!important; line-height:1.75!important;  }
#content .elementor .elementor-widget-text-editor p { margin-bottom:1em; }
#content .elementor .elementor-button, #header-grid .button-primary { background:var(--clinic-teal)!important; color:#fff!important; border:1px solid var(--clinic-teal)!important; border-radius:5px!important; font:600 16px/1.25 Arial,sans-serif!important; padding:14px 22px!important; box-shadow:none!important; }
#content .elementor .elementor-button:hover,#header-grid .button-primary:hover { background:#075f59!important; }
a:focus-visible,button:focus-visible { outline:3px solid #e2ad3b!important; outline-offset:4px!important; }
#header-grid { background:#fff; border-bottom:1px solid var(--clinic-line); }
#header-grid .header--row-inner { background:#fff!important; }
#header-grid .brand { width:auto!important; max-width:100%!important; margin:0!important; }
#header-grid .title-with-logo { display:flex!important; align-items:center!important; gap:16px!important; }
#header-grid .neve-site-logo { width:68px!important; max-width:68px!important; height:auto!important; max-height:none!important; object-fit:contain!important; flex-shrink:0; }
#header-grid .nv-title-tagline-wrap { text-align:left!important; }
#header-grid .site-title { font:600 26px/1.15 Arial,sans-serif!important; color:#146b91!important; margin:0 0 5px!important; }
#header-grid .brand small { font:400 13px/1.4 Arial,sans-serif!important; color:#4a6169!important; white-space:normal!important; }
#header-grid .builder-item--logo { padding:12px 0!important; }
#header-grid .nav-ul a { font-family:Arial,"Microsoft YaHei",sans-serif!important; font-size:15px!important; font-weight:600!important; letter-spacing:0!important; }
#header-grid .nav-ul .sub-menu { background:#fff!important; border:1px solid var(--clinic-line); box-shadow:0 10px 24px #243c4314; }
#header-grid .nav-ul .sub-menu a { padding:12px 16px!important; line-height:1.4; }
#header-grid .nav-ul > li > .wrap > a[href*="online-schedule"] { background:var(--clinic-teal); color:#fff!important; padding:11px 18px!important; border-radius:5px; }
#content .elementor > .elementor-top-section:not(:first-child) { padding-top:48px!important; padding-bottom:48px!important; margin-top:0!important; margin-bottom:0!important; }
#content .elementor > .elementor-top-section > .elementor-container { max-width:1140px; }
#content .elementor-widget-heading { margin-bottom:18px; }
#content .elementor-widget-image img { border-radius:6px; }
#content .elementor-widget-spacer { max-height:32px; overflow:hidden; }
body.home #content .elementor > .elementor-element-4e15f3c { height:480px!important; min-height:0!important; padding:0!important; animation:none!important; visibility:visible!important; opacity:1!important; }
body.home #content .elementor > .elementor-element-4e15f3c > .elementor-container { height:100%!important; min-height:0!important; max-width:none!important; align-items:flex-end!important; }
body.home #content .elementor-element-4e15f3c .elementor-background-overlay { display:none!important; }
body.home #content .elementor-element-4e15f3c .elementor-background-slideshow { bottom:100px!important; height:calc(100% - 100px)!important; }
body.home #content .elementor-element-4e15f3c .elementor-background-slideshow__slide__image { background-position:center 42%!important; }
body.home #content .elementor-element-4e15f3c > .elementor-container > .elementor-column { width:100%!important; }
body.home #content .elementor-element-4e15f3c > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:24px!important; background:#fff!important; border-bottom:1px solid var(--clinic-line); justify-content:center; }
body.home #content .elementor-element-4e15f3c h1 { color:var(--clinic-blue)!important; text-shadow:none!important; font-size:38px!important; text-align:center!important; margin:0!important; }
body.home #content .elementor-element-4e15f3c .elementor-widget-heading { margin:0!important; }
body.home #content .elementor-element-a9d4bc4 { padding-top:42px!important; }
body.home #content .elementor-element-a9d4bc4 .elementor-widget-wrap { padding:20px!important; }
#fcb-urgent-widget .fcb-urgent-widget__button { background:var(--clinic-teal)!important; border-radius:5px!important; }
#site-footer .placeholder-widget-text,#site-footer #placeholder-widget-text { display:none!important; }
#site-footer .footer--row { position:static!important; }
#site-footer .sticky-footer-placeholder { display:none!important; }
@media(min-width:960px) {
 #header-grid .header-top .header--row-inner { padding:0!important; }
 #header-grid .header-main .header--row-inner { border-top:1px solid #eef2f3; padding:3px 0!important; }
}
@media(max-width:959px) {
 #header-grid .header-top[data-show-on="mobile"] { height:auto!important; margin:0!important; }
 #header-grid .header-top[data-show-on="mobile"] .header--row-inner { padding:14px 0 4px!important; }
 #header-grid .header-top[data-show-on="mobile"] .row--wrapper { justify-content:flex-start!important; }
 #header-grid .header-top[data-show-on="mobile"] :is(.hfg-slot.left,.builder-item,.builder-item--logo,.site-logo) { width:100%!important; max-width:100%!important; margin:0!important; justify-content:flex-start!important; }
 #header-grid .header-top[data-show-on="mobile"] .builder-item--logo { padding:0!important; }
 #header-grid .brand { display:block!important; width:100%!important; }
 #header-grid .title-with-logo { width:100%!important; gap:12px!important; }
 #header-grid .neve-site-logo { width:62px!important; max-width:62px!important; }
 #header-grid .nv-title-tagline-wrap { flex:1; min-width:0; }
 #header-grid .site-title { font-size:20px!important; }
 #header-grid .brand small { font-size:11px!important; }
 #header-grid .header-main[data-show-on="mobile"] .header--row-inner { padding:4px 0 10px!important; }
 #header-grid .button-primary { padding:11px 18px!important; font-size:14px!important; }
 #header-grid .menu-mobile-toggle { color:var(--clinic-blue)!important; min-height:44px; }
 #header-grid .nav-toggle-label { font:600 16px/1.4 Arial,sans-serif!important; }
 #header-grid .header-menu-sidebar .nav-ul a { padding:13px 16px!important; }
}
@media(max-width:767px) {
 #content .elementor h1 { font-size:30px!important; }
 #content .elementor h2 { font-size:27px!important; }
 #content .elementor h3 { font-size:21px!important; }
 #content .elementor :is(.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li) { font-size:18px!important; line-height:1.7!important; }
 #content .elementor > .elementor-top-section:not(:first-child) { padding:28px 14px!important; }
 #content .elementor-widget-spacer { max-height:16px; }
 body.home #content .elementor > .elementor-element-4e15f3c { height:355px!important; }
 body.home #content .elementor-element-4e15f3c .elementor-background-slideshow { bottom:100px!important; }
 body.home #content .elementor-element-4e15f3c h1 { font-size:28px!important; line-height:1.2!important; }
 body.home #content .elementor-element-4e15f3c > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:18px 16px!important; }
 body.home #content .elementor-element-a9d4bc4 .elementor-widget-wrap { padding:8px!important; }
 html[lang="zh-hans"] #header-grid .button.button-primary { font-size:0!important; }
 html[lang="zh-hans"] #header-grid .button.button-primary::after { content:"致电"; font-size:14px; }
 html[lang="zh-hans"] #header-grid .nav-toggle-label { font-size:0!important; }
 html[lang="zh-hans"] #header-grid .nav-toggle-label::after { content:"菜单"; font-size:16px; }
}
	
/* Remove legacy hero widget padding and keep the photo unobstructed. */
body.home #content .elementor-element-4e15f3c .elementor-widget-heading > .elementor-widget-container { padding:0!important; margin:0!important; }
body.home #content .elementor-element-4e15f3c .elementor-widget-animated-headline { display:none!important; }
body.home #content .elementor-element-4e15f3c > .elementor-container > .elementor-column > .elementor-widget-wrap { min-height:100px!important; align-content:center!important; }
	
/* Clear section contrast, stable About hero, and a normal footer. */
#site-footer .hfg_footer { position:static!important; transform:none!important; }
#header-grid .nav-ul > li > .wrap > a[href*="%e5%9c%a8%e7%ba%bf%e9%a2%84%e7%ba%a6"] { background:var(--clinic-teal); color:#fff!important; padding:11px 18px!important; border-radius:5px; }
#content .elementor-element-55c9634 { min-height:400px!important; height:400px!important; padding:0!important; background-image:url("https://falsecreekpuredental.com/wp-content/uploads/2024/04/Reception-about-us.jpg")!important; background-size:cover!important; background-position:center!important; }
#content .elementor-element-55c9634 > .elementor-container { height:100%; max-width:none!important; align-items:flex-end!important; }
#content .elementor-element-55c9634 .elementor-background-slideshow,#content .elementor-element-55c9634 .elementor-widget-spacer { display:none!important; }
#content .elementor-element-55c9634 .elementor-widget-wrap { background:#fff!important; padding:20px!important; }
#content .elementor-element-55c9634 .elementor-widget-heading { margin:0!important; }
#content .elementor-element-55c9634 .elementor-widget-heading .elementor-widget-container { padding:0!important; margin:0!important; }
#content .elementor-element-55c9634 .elementor-heading-title { color:var(--clinic-blue)!important; text-shadow:none!important; font-size:32px!important; }
#content .elementor-widget-icon-box .elementor-icon { font-size:42px!important; }
@media(max-width:767px) {
 #content .elementor-element-55c9634 { height:340px!important; min-height:340px!important; }
 #content .elementor-element-55c9634 .elementor-heading-title { font-size:27px!important; }
}
	
#content .elementor-element-55c9634 { background-position:center top!important; }
@media(min-width:768px) { body.home #content .elementor-element-4e15f3c .elementor-background-slideshow__slide__image { background-position:center top!important; } }
#header-menu-sidebar .close-sidebar-panel { min-height:48px; }
body.admin-bar #header-menu-sidebar .close-sidebar-panel { margin-top:46px; }
	
/* Frame the team together in the About page banner. */
#content .elementor-element-55c9634 { background-image:url("https://falsecreekpuredental.com/wp-content/uploads/2024/04/WhatsApp-Image-2024-03-28-at-17.53.46_a68b106a.jpg")!important; background-position:center 35%!important; }
	
/* Keep body copy comfortably readable without overriding section colours. */
#content .elementor .elementor-widget-text-editor { max-width:72ch; }
#content .elementor .elementor-widget-text-editor p { margin-bottom:1.1em; }
	
/* Readability corrections for the inspected light and dark sections. */
#content :is(.elementor-element-a9d4bc4,.elementor-element-2c2c766,.elementor-element-80a5f24) .elementor-widget-text-editor,
#content .elementor-2779 .elementor-widget-text-editor { color:#263940!important; font-weight:500; }
#content :is(.elementor-element-a9d4bc4,.elementor-element-2c2c766,.elementor-element-80a5f24) .elementor-widget-text-editor :is(p,li,span),
#content .elementor-2779 .elementor-widget-text-editor :is(p,li,span) { color:inherit!important; }
body.home #content .elementor-element-24abcec { background-color:#183c55!important; }
body.home #content .elementor-element-24abcec :is(.elementor-heading-title,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor span) { color:#fff!important; }
	
/* Desktop: show complete hero photographs and full-width featured services. */
@media (min-width:960px) {
 body.home #content .elementor > .elementor-element-4e15f3c { height:calc(clamp(440px, 42vw, 680px) + 100px)!important; background:#edf2f4!important; }
 body.home #content .elementor-element-4e15f3c .elementor-background-slideshow__slide__image { background-size:contain!important; background-position:center center!important; background-repeat:no-repeat!important; }
 body.home #content .elementor-element-3943c5a > .elementor-container { max-width:none!important; width:100%!important; }
 body.home #content .elementor-element-3943c5a > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left:0!important; padding-right:0!important; }
 body.home #content .elementor-element-21b25106 { width:100%!important; max-width:none!important; }
 body.home #content .elementor-element-21b25106 > .elementor-container { width:100%!important; max-width:none!important; }
 body.home #content .elementor-element-21b25106 > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-left:24px!important; padding-right:24px!important; }
}
	
/* Featured services: give the full-width band comfortable inner gutters. */
#content .elementor-element-21b25106 > .elementor-container {
  box-sizing:border-box!important;
  padding-left:clamp(24px,3.2vw,56px)!important;
  padding-right:clamp(24px,3.2vw,56px)!important;
}
@media(max-width:959px) {
  #content .elementor-element-21b25106 > .elementor-container {
    padding-left:16px!important;
    padding-right:16px!important;
  }
}
	

/* UX polish only: preserve typography, branding, colors, and approved page styling. */
html { scroll-behavior:smooth; }

#content .elementor :is(h1,h2,h3,h4,p,li,a),
#content .elementor :is(.elementor-button,.elementor-widget-button a) {
  overflow-wrap:anywhere;
}

#content .elementor :is(.elementor-button,.elementor-widget-button a),
#header-grid .button-primary,
#header-grid .menu-mobile-toggle {
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

#content .elementor .elementor-widget-button {
  margin-top:8px;
}

#content .elementor :is(.elementor-widget-icon-box,.elementor-widget-call-to-action,.elementor-widget-image) {
  scroll-margin-top:96px;
}

#content .elementor .elementor-widget-icon-box {
  height:100%;
}

#content .elementor .elementor-widget-icon-box > .elementor-widget-container {
  height:100%;
  display:flex;
  flex-direction:column;
}

#content .elementor .elementor-widget-icon-box .elementor-icon-box-wrapper {
  height:100%;
}

#content .elementor .elementor-widget-icon-box .elementor-icon-box-content {
  display:flex;
  flex-direction:column;
  height:100%;
}

#content .elementor .elementor-widget-icon-box .elementor-icon-box-description {
  flex:1;
}

#content .elementor :is(.elementor-widget-button,.elementor-widget-call-to-action) a {
  transition:transform .18s ease, box-shadow .18s ease;
}

#content .elementor :is(.elementor-widget-button,.elementor-widget-call-to-action) a:hover,
#header-grid .button-primary:hover {
  transform:translateY(-1px);
}

#content .elementor :is(.elementor-widget-button,.elementor-widget-call-to-action) a:active,
#header-grid .button-primary:active {
  transform:translateY(0);
}

#header-grid .nav-ul > li > .wrap > a,
#header-grid .nav-toggle-label {
  min-height:44px;
  display:inline-flex;
  align-items:center;
}

#header-grid .nav-ul .sub-menu {
  min-width:220px;
}

#header-grid .nav-ul .sub-menu a {
  min-height:44px;
  display:flex;
  align-items:center;
}

#header-menu-sidebar .nav-ul a {
  min-height:48px;
  display:flex;
  align-items:center;
}

#header-menu-sidebar .close-sidebar-panel {
  min-height:48px;
}

#content .elementor :is(input,select,textarea) {
  max-width:100%;
}

@media(max-width:959px) {
  #content .elementor > .elementor-top-section > .elementor-container {
    width:100%;
  }

  #content .elementor .elementor-widget-button {
    margin-top:10px;
  }

  #content .elementor :is(.elementor-button,.elementor-widget-button a) {
    max-width:100%;
    white-space:normal;
    text-align:center;
  }

  #header-grid .nav-ul .sub-menu {
    min-width:0;
  }
}

@media(max-width:767px) {
  #content .elementor > .elementor-top-section:not(:first-child) {
    scroll-margin-top:84px;
  }

  #content .elementor .elementor-widget-icon-box {
    min-height:0;
  }

  #content .elementor :is(.elementor-widget-button,.elementor-widget-call-to-action) a:hover,
  #header-grid .button-primary:hover {
    transform:none;
  }

  #header-menu-sidebar {
    max-width:min(360px, calc(100vw - 24px));
  }

  #header-menu-sidebar .nav-ul a {
    padding-top:14px!important;
    padding-bottom:14px!important;
  }
}
