.elementor-kit-3{--e-global-color-primary:#054A91;--e-global-color-secondary:#00BBD6;--e-global-color-accent:#EAE1D4;--e-global-color-text:#4A4A4A;--e-global-color-c9a3954:#000000;--e-global-color-c6f314a:#FFFFFF;--e-global-color-d4f8b21:#F8F4ED;--e-global-color-e7a1c53:#1E1E1E;--e-global-color-a9c3e75:#40CCE0;--e-global-color-b8e1f20:#FBBC04;--e-global-color-c4d9f02:#FFFFFF26;--e-global-typography-primary-font-family:"Satoshi";--e-global-typography-primary-font-size:clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Satoshi";--e-global-typography-secondary-font-size:clamp(1.5rem, 1.3rem + 0.9vw, 2rem);--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-family:"Satoshi";--e-global-typography-text-font-size:clamp(1rem, 0.96rem + 0.15vw, 1.0625rem);--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Satoshi";--e-global-typography-accent-font-size:clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem);--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:1px;--e-global-typography-a1c7e40-font-family:"Satoshi";--e-global-typography-a1c7e40-font-size:clamp(1.75rem, 1.3rem + 1.6vw, 2.75rem);--e-global-typography-a1c7e40-font-weight:500;--e-global-typography-a1c7e40-line-height:1.15em;--e-global-typography-b2d8f51-font-family:"Satoshi";--e-global-typography-b2d8f51-font-size:clamp(1rem, 0.95rem + 0.2vw, 1.125rem);--e-global-typography-b2d8f51-font-weight:700;--e-global-typography-b2d8f51-text-transform:uppercase;--e-global-typography-b2d8f51-line-height:1.3em;--e-global-typography-b2d8f51-letter-spacing:2px;--e-global-typography-c3e9a62-font-family:"Satoshi";--e-global-typography-c3e9a62-font-size:clamp(1rem, 0.95rem + 0.25vw, 1.125rem);--e-global-typography-c3e9a62-font-weight:700;--e-global-typography-c3e9a62-line-height:1.3em;--e-global-typography-d4fab73-font-family:"Satoshi";--e-global-typography-d4fab73-font-size:clamp(1.25rem, 1.1rem + 0.6vw, 1.625rem);--e-global-typography-d4fab73-font-weight:500;--e-global-typography-d4fab73-line-height:1.4em;--e-global-typography-e5abc84-font-family:"Satoshi";--e-global-typography-e5abc84-font-size:clamp(1.0625rem, 1rem + 0.3vw, 1.25rem);--e-global-typography-e5abc84-font-weight:400;--e-global-typography-e5abc84-line-height:1.5em;--e-global-typography-f6bcd95-font-family:"Satoshi";--e-global-typography-f6bcd95-font-size:clamp(0.8125rem, 0.78rem + 0.15vw, 0.875rem);--e-global-typography-f6bcd95-font-weight:400;--e-global-typography-f6bcd95-line-height:1.5em;--e-global-typography-a7cde06-font-family:"Satoshi";--e-global-typography-a7cde06-font-size:0.8125rem;--e-global-typography-a7cde06-font-weight:700;--e-global-typography-a7cde06-text-transform:uppercase;--e-global-typography-a7cde06-line-height:1.2em;--e-global-typography-a7cde06-letter-spacing:0.5px;background-color:var( --e-global-color-d4f8b21 );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-3 button,.elementor-kit-3 input[type="button"],.elementor-kit-3 input[type="submit"],.elementor-kit-3 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-e7a1c53 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:0px 0px 0px 0px;padding:14px 24px 14px 24px;}.elementor-kit-3 button:hover,.elementor-kit-3 button:focus,.elementor-kit-3 input[type="button"]:hover,.elementor-kit-3 input[type="button"]:focus,.elementor-kit-3 input[type="submit"]:hover,.elementor-kit-3 input[type="submit"]:focus,.elementor-kit-3 .elementor-button:hover,.elementor-kit-3 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-c6f314a );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:0px 0px 0px 0px;}.elementor-kit-3 e-page-transition{background-color:#FFBC7D;}.elementor-kit-3 a{color:var( --e-global-color-primary );}.elementor-kit-3 a:hover{color:var( --e-global-color-c9a3954 );}.elementor-kit-3 h1{color:var( --e-global-color-e7a1c53 );font-family:var( --e-global-typography-a1c7e40-font-family ), Sans-serif;font-size:var( --e-global-typography-a1c7e40-font-size );font-weight:var( --e-global-typography-a1c7e40-font-weight );line-height:var( --e-global-typography-a1c7e40-line-height );}.elementor-kit-3 h2{color:var( --e-global-color-e7a1c53 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-3 h3{color:var( --e-global-color-e7a1c53 );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-3 h4{color:var( --e-global-color-e7a1c53 );font-family:var( --e-global-typography-c3e9a62-font-family ), Sans-serif;font-size:var( --e-global-typography-c3e9a62-font-size );font-weight:var( --e-global-typography-c3e9a62-font-weight );line-height:var( --e-global-typography-c3e9a62-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-3{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-3 h1{font-size:var( --e-global-typography-a1c7e40-font-size );line-height:var( --e-global-typography-a1c7e40-line-height );}.elementor-kit-3 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-3 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-3 h4{font-size:var( --e-global-typography-c3e9a62-font-size );line-height:var( --e-global-typography-c3e9a62-line-height );}.elementor-kit-3 button,.elementor-kit-3 input[type="button"],.elementor-kit-3 input[type="submit"],.elementor-kit-3 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-3{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-3 h1{font-size:var( --e-global-typography-a1c7e40-font-size );line-height:var( --e-global-typography-a1c7e40-line-height );}.elementor-kit-3 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-3 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-3 h4{font-size:var( --e-global-typography-c3e9a62-font-size );line-height:var( --e-global-typography-c3e9a62-line-height );}.elementor-kit-3 button,.elementor-kit-3 input[type="button"],.elementor-kit-3 input[type="submit"],.elementor-kit-3 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */ol, ul {margin-block-end: 1em;}

/* ===== Image shapes ===== */
/* Arch: apply "dfd-arch" to an Image widget or a container with a background image */
.dfd-arch img,
.e-con.dfd-arch {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: 999px 999px 0 0;
  overflow: hidden;
}
/* Optional proportion modifiers — use alongside dfd-arch */
.dfd-arch--square img, .e-con.dfd-arch--square { aspect-ratio: 1 / 1; }
.dfd-arch--tall img,   .e-con.dfd-arch--tall   { aspect-ratio: 3 / 4; }

/* ===== Text accents ===== */
/* Light Blue highlight for a word inside a heading: <span class="dfd-accent">word</span> */
.dfd-accent { color: var(--e-global-color-secondary); }

/* ===== Dark backgrounds ===== */
/* Add "dfd-on-dark" to a container on a dark background: all text, headings and links inside turn White.
   Lets shared/global widgets stay readable without changing their own color settings. */
.dfd-on-dark,
.dfd-on-dark :is(p, li, span, h1, h2, h3, h4, h5, h6, a) {
  color: var(--e-global-color-c6f314a);
}
.dfd-on-dark a:hover,
.dfd-on-dark a:focus-visible {
  color: var(--e-global-color-a9c3e75);
}

/* ===== Accordion rollover ===== */
/* Shadow + slight lift + color change on all Nested Accordions (hover and keyboard focus).
   position/z-index lifts the hovered bar above the next one so its shadow isn't covered. */
.e-n-accordion-item-title {
  position: relative;
  transition: box-shadow .25s ease, transform .25s ease, color .25s ease;
}
.e-n-accordion-item-title:hover,
.e-n-accordion-item-title:focus-visible {
  z-index: 1;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--e-global-color-c9a3954) 30%, transparent);
}
@media (prefers-reduced-motion: reduce) {
  .e-n-accordion-item-title { transition: none; }
  .e-n-accordion-item-title:hover,
  .e-n-accordion-item-title:focus-visible { transform: none; }
}

/* ===== Breadcrumbs (Rank Math) ===== */
/* Uses the Small Text global. Color comes from the container (e.g. dfd-on-dark). */
.dfd-breadcrumbs .rank-math-breadcrumb p {
  margin: 0;
  font-family: var(--e-global-typography-f6bcd95-font-family), sans-serif;
  font-size: var(--e-global-typography-f6bcd95-font-size);
  font-weight: var(--e-global-typography-f6bcd95-font-weight);
  line-height: var(--e-global-typography-f6bcd95-line-height);
}
.dfd-breadcrumbs .rank-math-breadcrumb .separator { margin: 0 6px; opacity: .7; }

/* ===== Card hover ===== */
/* Add "dfd-card-hover" to any card container: slight lift + soft shadow on hover / keyboard focus inside */
.dfd-card-hover {
  transition: box-shadow .25s ease, transform .25s ease;
}
.dfd-card-hover:hover,
.dfd-card-hover:focus-within {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--e-global-color-c9a3954) 18%, transparent);
}
@media (prefers-reduced-motion: reduce) {
  .dfd-card-hover { transition: none; }
  .dfd-card-hover:hover, .dfd-card-hover:focus-within { transform: none; }
}

/* ===== Button variants ===== */
/* No class = Primary (Site Settings > Buttons). Add one class below to a Button widget via Advanced > CSS Classes. */
.elementor-button { transition: background-color .3s ease, color .3s ease, border-color .3s ease; }

/* Secondary outline: Dark Blue outline on Background */
.elementor-widget-button.dfd-btn-outline .elementor-button {
  background-color: var(--e-global-color-d4f8b21);
  color: var(--e-global-color-primary);
  border-color: var(--e-global-color-primary);
}
.elementor-widget-button.dfd-btn-outline .elementor-button:is(:hover, :focus-visible) {
  background-color: var(--e-global-color-primary);
  color: var(--e-global-color-c6f314a);
  border-color: var(--e-global-color-primary);
}

/* Solid Dark: Dark Blue; Light Blue with Black text on hover */
.elementor-widget-button.dfd-btn-dark .elementor-button {
  background-color: var(--e-global-color-primary);
  color: var(--e-global-color-c6f314a);
  border-color: var(--e-global-color-primary);
}
.elementor-widget-button.dfd-btn-dark .elementor-button:is(:hover, :focus-visible) {
  background-color: var(--e-global-color-secondary);
  border-color: var(--e-global-color-secondary);
  color: var(--e-global-color-c9a3954);
}

/* Outline on dark backgrounds */
.elementor-widget-button.dfd-btn-on-dark .elementor-button {
  background-color: var(--e-global-color-c4d9f02);
  color: var(--e-global-color-c6f314a);
  border-color: var(--e-global-color-c6f314a);
}
.elementor-widget-button.dfd-btn-on-dark .elementor-button:is(:hover, :focus-visible) {
  background-color: var(--e-global-color-c6f314a);
  color: var(--e-global-color-primary);
  border-color: var(--e-global-color-c6f314a);
}

/* Text link: Dark Blue, Black on hover */
.elementor-widget-button.dfd-btn-text .elementor-button {
  background-color: transparent;
  border-color: transparent;
  color: var(--e-global-color-primary);
  padding: 8px 4px;
}
.elementor-widget-button.dfd-btn-text .elementor-button:is(:hover, :focus-visible) {
  background-color: transparent;
  border-color: transparent;
  color: var(--e-global-color-c9a3954);
}

/* Size modifier: in-section buttons */
.elementor-widget-button.dfd-btn-compact .elementor-button { padding: 12px 22px; }

/* Variant buttons inside dfd-on-dark: every span in the button follows the button's own color */
.dfd-on-dark :is(.dfd-btn-outline, .dfd-btn-dark, .dfd-btn-on-dark, .dfd-btn-text) .elementor-button span { color: inherit; }

/* ===== Arch on PowerPack video ===== */
/* Apply "dfd-arch" to a PP Video widget and set its Aspect Ratio to 9:16 */
.elementor-widget-pp-video.dfd-arch .pp-video-container {
  border-radius: 999px 999px 0 0;
  overflow: hidden;
  isolation: isolate;
}
.elementor-widget-pp-video.dfd-arch img.pp-video-thumb {
  aspect-ratio: auto;
  height: 100%;
  object-fit: cover;
}

/* ===== Interior content spacing ===== */
/* Content container in the Interior Page template has bottom padding for breathing room.
   Remove it when the page ends with the CTA template, so the CTA stays flush with the footer. */
.e-con.dfd-interior-content:has(> .elementor-widget-theme-post-content .elementor > .e-con:last-child .dfd-cta) {
  --padding-bottom: 0px;
}

/* ===== Reduced motion: skip Elementor entrance animations ===== */
@media (prefers-reduced-motion: reduce) {
  .elementor-invisible { visibility: visible !important; }
  .elementor-element.animated { animation: none !important; }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Satoshi';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://davis-dentistry.com/wp-content/uploads/sites/85/2026/10/Satoshi-Variable.woff2') format('woff2'),
		url('https://davis-dentistry.com/wp-content/uploads/sites/85/2026/10/Satoshi-Variable.woff') format('woff');
}
/* End Custom Fonts CSS */