:root {
  --arc-navy: #102f73;
  --arc-deep: #071a3f;
  --arc-ink: #15213a;
  --arc-graphite: #566073;
  --arc-gray: #626b7d;
  --arc-porcelain: #f2f4f7;
  --arc-soft: #eaf0f6;
  --arc-warm: #f8f5ef;
  --arc-ivory: #fffdf9;
  --arc-white: #fff;
  --arc-accent: #28549c;
  --arc-champagne: #866238;
  --arc-gold-soft: #dfcfb8;
  --arc-success: #176b4d;
  --arc-error: #b42318;
  --arc-serif: Georgia, 'Times New Roman', serif;
  --arc-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --arc-shadow: 0 28px 80px rgba(7, 26, 63, .14);
  --arc-shadow-soft: 0 16px 45px rgba(7, 26, 63, .08);
  --arc-hairline: rgba(16, 47, 115, .13);
  --arc-radius: 28px;
  --arc-content-max: 1400px;
  --arc-page-gutter: clamp(1.25rem, 4vw, 4rem);
  --arc-content-inset: max(var(--arc-page-gutter), calc((100vw - var(--arc-content-max)) / 2));
}

html { overflow-x: clip; scroll-behavior: smooth; }
/* Accessibility: preserve the ARC palette while meeting WCAG AA on light surfaces. */
body.arc-dental-site { --e-global-color-text: var(--arc-graphite); margin: 0; overflow-x: clip; color: var(--arc-ink); background: var(--arc-ivory); font-family: var(--arc-sans); font-size: 17px; line-height: 1.68; }
body.arc-nav-open { overscroll-behavior: none; }
body.arc-nav-open .arc-mobile-menu { touch-action: pan-y; }
.arc-dental-site *, .arc-dental-site *::before, .arc-dental-site *::after { box-sizing: border-box; }
.arc-dental-site a { color: var(--arc-navy); text-underline-offset: .2em; }
.arc-dental-site a:hover { color: var(--arc-accent); }
.arc-dental-site :focus-visible { outline: 3px solid #f4b942 !important; outline-offset: 4px; }
.arc-dental-site h1, .arc-dental-site h2 { margin: 0 0 .48em; color: var(--arc-deep) !important; font-family: var(--arc-serif) !important; font-weight: 400 !important; letter-spacing: -.045em; line-height: .98; text-wrap: pretty; }
.arc-dental-site h1 { max-width: 18ch; font-size: clamp(3.25rem, 5.8vw, 6.4rem); }
.arc-dental-site h2 { max-width: 20ch; font-size: clamp(2.45rem, 4.5vw, 4.85rem); }
.arc-dental-site h3 { margin: 0 0 .65rem; color: var(--arc-deep) !important; font-family: var(--arc-serif); font-size: clamp(1.45rem, 2.15vw, 2rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.1; }
.arc-dental-site p { margin: 0 0 1.15em; }
.arc-dental-site .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.arc-dental-site [hidden] { display: none !important; }
.arc-skip-link { position: fixed; left: 1rem; top: -10rem; z-index: 100000; padding: .8rem 1.2rem; background: #fff; color: var(--arc-deep); border: 2px solid var(--arc-deep); border-radius: 12px; }
.arc-skip-link:focus { top: 1rem; }
.arc-skip-target { position: absolute; width: 1px; height: 1px; overflow: hidden; }

/* Global header and menu */
body.arc-dental-site > header.elementor { position: sticky; top: 0; z-index: 9999; }
.admin-bar.arc-dental-site > header.elementor { top: 32px; }
.arc-global-header-template { min-height: 0 !important; padding: 0 !important; gap: 0 !important; background: transparent !important; }
.arc-global-header-template > .e-con-inner { padding: 0 !important; gap: 0 !important; }
.arc-site-header { position: relative; z-index: 9999; background: rgba(255, 253, 249, .96); border-bottom: 1px solid var(--arc-hairline); box-shadow: 0 7px 24px rgba(7, 26, 63, .045); backdrop-filter: blur(18px); transition: box-shadow .25s ease, background .25s ease; }
.arc-site-header.arc-scrolled { background: rgba(255, 253, 249, .985); box-shadow: 0 12px 34px rgba(7, 26, 63, .1); }
.arc-utility { min-height: 33px; padding: 0 var(--arc-content-inset); display: flex; align-items: center; justify-content: space-between; color: rgba(255,255,255,.86); background: var(--arc-deep); font-size: .66rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.arc-utility a { color: #fff !important; font-weight: 850; text-decoration: none; }
.arc-header-inner { width: auto; max-width: var(--arc-content-max); min-height: 98px; margin-inline: var(--arc-content-inset); padding: .55rem 0; display: flex; align-items: center; gap: clamp(1rem, 2vw, 2.2rem); }
.arc-brand { width: 142px; flex: 0 0 142px; display: inline-flex; align-items: center; color: var(--arc-navy); text-decoration: none; }
.arc-brand img { width: 100%; height: auto; max-height: 84px; display: block; object-fit: contain; }
.arc-desktop-nav { margin-left: auto; }
.arc-desktop-nav > ul { height: 58px; margin: 0; padding: 0; display: flex; align-items: center; gap: .12rem; list-style: none; }
.arc-nav-item { position: static; display: flex; align-items: center; }
.arc-nav-item > a,
.arc-dental-site button.arc-nav-toggle { position: relative; min-height: 54px; padding: .72rem .82rem !important; display: inline-flex; align-items: center; justify-content: center; gap: .52rem; appearance: none; border: 0 !important; border-radius: 999px !important; background: transparent !important; box-shadow: none !important; color: var(--arc-ink) !important; font: 760 .76rem/1 var(--arc-sans); letter-spacing: -.01em; text-decoration: none; white-space: nowrap; cursor: pointer; transition: color .2s ease, background .2s ease; }
.arc-nav-label { display: inline-flex; align-items: center; line-height: 1; }
.arc-dental-site button.arc-nav-toggle .arc-nav-chevron { width: 7px; height: 7px; margin-top: -3px; flex: 0 0 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transform-origin: 65% 65%; transition: transform .22s ease; }
.arc-dental-site button.arc-nav-toggle[aria-expanded='true'] .arc-nav-chevron { transform: rotate(-135deg) translate(-1px,-1px); }
.arc-nav-item > a::after,
.arc-dental-site button.arc-nav-toggle::after { content: ''; position: absolute; right: .78rem; bottom: .48rem; left: .78rem; height: 2px; background: var(--arc-champagne); border-radius: 2px; transform: scaleX(0); transform-origin: left; transition: transform .22s ease; }
.arc-nav-item > a:hover::after,
.arc-dental-site button.arc-nav-toggle:hover::after,
.arc-dental-site button.arc-nav-toggle[aria-expanded='true']::after { transform: scaleX(1); }
.arc-dental-site button.arc-nav-toggle[aria-expanded='true'],
.arc-nav-item > a:hover,
.arc-dental-site button.arc-nav-toggle:hover { color: var(--arc-navy) !important; background: rgba(16,47,115,.055) !important; }
.arc-mega { position: absolute; top: 100%; right: 0; left: 0; width: 100%; max-width: none; min-height: 250px; padding: 1.55rem var(--arc-content-inset) 1.7rem; display: grid; grid-template-columns: minmax(220px,.72fr) minmax(520px,1.62fr) minmax(320px,1.08fr); align-items: stretch; gap: clamp(1.6rem,2.6vw,2.8rem); background: rgba(251,250,247,.995); border: 0; border-top: 1px solid rgba(16,47,115,.08); border-bottom: 1px solid rgba(16,47,115,.13); border-radius: 0; box-shadow: 0 28px 60px rgba(7,26,63,.16); transform: none; transform-origin: top center; animation: arcMenuIn .22s cubic-bezier(.2,.65,.25,1) both; }
.arc-mega::before { content: ''; position: absolute; right: 0; bottom: 100%; left: 0; height: 28px; }
.arc-mega::after { content: ''; position: absolute; top: 0; right: var(--arc-content-inset); left: var(--arc-content-inset); height: 2px; background: linear-gradient(90deg,var(--arc-champagne),rgba(184,147,97,.15),transparent 78%); }
.arc-mega-heading { min-width: 0; padding: .8rem clamp(1.25rem,2vw,2.1rem) .8rem 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: .62rem; border-right: 1px solid rgba(16,47,115,.14); }
.arc-mega-heading span { color: var(--arc-champagne); font-size: .59rem; font-weight: 850; letter-spacing: .19em; text-transform: uppercase; }
.arc-mega-heading strong { max-width: 12ch; color: var(--arc-deep); font: 400 clamp(1.65rem,2vw,2.15rem)/1.04 var(--arc-serif); letter-spacing: -.03em; }
.arc-mega-heading em { max-width: 31ch; color: var(--arc-graphite); font-size: .77rem; font-style: normal; line-height: 1.58; }
.arc-mega ul { align-self: center; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: clamp(1.25rem,2.2vw,2.2rem); list-style: none; }
.arc-mega li a { min-height: 52px; padding: .8rem .15rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; color: var(--arc-deep); background: transparent; border: 0; border-bottom: 1px solid rgba(16,47,115,.16); border-radius: 0; font-size: .79rem; font-weight: 790; line-height: 1.25; text-decoration: none; transition: color .2s ease,padding .2s ease,border-color .2s ease; }
.arc-mega li a > span { width: auto; height: auto; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; color: var(--arc-champagne); background: transparent; border-radius: 0; font-size: .95rem; transition: color .2s ease,transform .2s ease; }
.arc-mega li a:hover { padding-left: .38rem; color: var(--arc-navy); background: transparent; border-color: var(--arc-champagne); box-shadow: none; }
.arc-mega li a:hover > span { color: var(--arc-navy); background: transparent; transform: translateX(4px); }
.arc-mega-feature { position: relative; min-height: 204px; padding: 1.45rem; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: .45rem; color: #fff !important; background: var(--arc-deep); border-radius: 22px; box-shadow: 0 18px 42px rgba(7,26,63,.16); text-decoration: none; overflow: hidden; isolation: isolate; }
.arc-mega-feature::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(4,18,46,.95),rgba(6,24,60,.76) 58%,rgba(6,24,60,.26)); transition: background .25s ease; }
.arc-mega-feature img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transform: scale(1.02); transition: transform .5s cubic-bezier(.2,.65,.25,1); }
.arc-mega-feature span { color: var(--arc-gold-soft); font-size: .61rem; font-style: normal; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.arc-mega-feature strong { max-width: 15ch; color: #fff; font: 400 1.62rem/1.05 var(--arc-serif); letter-spacing: -.02em; }
.arc-mega-feature em { margin-top: .3rem; color: #fff; font-size: .76rem; font-style: normal; font-weight: 850; }
.arc-mega-feature em b { margin-left: .3rem; color: var(--arc-gold-soft); font-weight: 500; transition: transform .2s ease; }
.arc-mega-feature:hover::after { background: linear-gradient(90deg,rgba(16,47,115,.95),rgba(7,26,63,.7) 64%,rgba(7,26,63,.18)); }
.arc-mega-feature:hover img { transform: scale(1.075); }
.arc-mega-feature:hover em b { display: inline-block; transform: translateX(4px); }
.arc-header-actions { flex: 0 0 auto; display: flex; align-items: center; gap: .8rem; }
.arc-header-phone { min-height: 47px; padding: .6rem .95rem; display: grid; align-content: center; gap: .03rem; color: var(--arc-deep) !important; border: 1px solid var(--arc-hairline); border-radius: 999px; line-height: 1.1; text-decoration: none; white-space: nowrap; transition: border-color .2s ease, transform .2s ease; }
.arc-header-phone:hover { border-color: var(--arc-champagne); transform: translateY(-1px); }
.arc-header-phone span { color: var(--arc-gray); font-size: .55rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.arc-header-phone strong { font-size: .79rem; }
.arc-header-cta { min-height: 48px; padding: .72rem 1.2rem; display: inline-flex; align-items: center; justify-content: center; color: #fff !important; background: var(--arc-navy); border: 1px solid var(--arc-navy); border-radius: 999px; box-shadow: 0 10px 24px rgba(16,47,115,.16); font-size: .73rem; font-weight: 850; text-decoration: none; white-space: nowrap; transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease; }
.arc-header-cta:hover { color: #fff !important; background: var(--arc-deep); transform: translateY(-2px); box-shadow: 0 14px 30px rgba(7,26,63,.2); }
.arc-dental-site button.arc-mobile-toggle { width: 50px !important; min-width: 50px !important; height: 50px !important; margin-left: auto; padding: 0 !important; display: none !important; align-items: center; justify-content: center; flex-direction: column; gap: 5px; border: 1px solid var(--arc-hairline) !important; border-radius: 50% !important; background: #fff !important; box-shadow: none !important; }
.arc-dental-site button.arc-mobile-toggle span { width: 20px !important; height: 0 !important; margin: 0 !important; padding: 0 !important; display: block !important; border: 0 !important; border-top: 2px solid var(--arc-navy) !important; background: transparent !important; transition: transform .2s ease, opacity .2s ease; }
.arc-dental-site button.arc-mobile-toggle[aria-expanded='true'] span:first-child { transform: translateY(7px) rotate(45deg); }
.arc-dental-site button.arc-mobile-toggle[aria-expanded='true'] span:nth-child(2) { opacity: 0; }
.arc-dental-site button.arc-mobile-toggle[aria-expanded='true'] span:last-child { transform: translateY(-7px) rotate(-45deg); }
.arc-mobile-menu { position: fixed; top: 98px; right: 0; bottom: 0; left: auto; z-index: 9998; width: min(520px, 100%); height: calc(100dvh - 98px) !important; max-height: none !important; padding: clamp(1rem,4vw,2.4rem) clamp(1.25rem,4vw,2.6rem) calc(7.2rem + env(safe-area-inset-bottom)); overflow-y: auto; overscroll-behavior: contain; color: #fff; background: radial-gradient(circle at 90% 5%, rgba(66,101,174,.55), transparent 32%), var(--arc-deep); border-top: 1px solid rgba(255,255,255,.14); border-left: 1px solid rgba(255,255,255,.12); box-shadow: -24px 18px 60px rgba(7,26,63,.24); text-align: left; -webkit-overflow-scrolling: touch; }
.arc-mobile-menu:not([hidden]) { animation: arcMobileMenuIn .24s cubic-bezier(.2,.65,.25,1) both; }
.admin-bar .arc-mobile-menu { top: 130px; height: calc(100dvh - 130px) !important; }
.arc-mobile-menu details, .arc-mobile-direct { border-bottom: 1px solid rgba(255,255,255,.14); }
.arc-mobile-menu summary, .arc-mobile-direct { position: relative; min-height: 64px; padding: 1rem .25rem; display: flex; align-items: center; justify-content: flex-start; gap: 1rem; color: #fff !important; font-family: var(--arc-serif); font-size: clamp(1.35rem, 4vw, 1.8rem); font-weight: 400; text-align: left; text-decoration: none; cursor: pointer; list-style: none; }
.arc-mobile-menu summary::-webkit-details-marker { display: none; }
.arc-mobile-menu summary::after { content: ''; width: 9px; height: 9px; margin: -4px 3px 0 auto; flex: 0 0 9px; border-right: 1.5px solid var(--arc-gold-soft); border-bottom: 1.5px solid var(--arc-gold-soft); transform: rotate(45deg); transition: transform .2s ease; }
.arc-mobile-menu details[open] { margin-block: .45rem; padding: 0 .65rem .55rem; background: rgba(255,255,255,.055); border: 1px solid rgba(223,207,184,.22); border-radius: 18px; }
.arc-mobile-menu details[open] summary { border-bottom: 1px solid rgba(255,255,255,.11); }
.arc-mobile-menu details[open] summary::after { transform: rotate(-135deg) translate(-1px,-1px); }
.arc-mobile-menu details ul { margin: 0 0 1rem; padding: .2rem 0 .45rem 1rem; border-left: 1px solid rgba(223,207,184,.38); list-style: none; }
.arc-mobile-menu details li a { min-height: 46px; padding: .58rem .75rem; display: flex; align-items: center; color: #dce4f5; border-radius: 12px; font-size: .92rem; text-align: left; text-decoration: none; }
.arc-mobile-menu details li a:hover { color: #fff; background: rgba(255,255,255,.08); }
.arc-mobile-menu-actions { margin-top: 1.25rem; padding: .85rem 0; display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.arc-mobile-menu-actions a { min-height: 54px; padding: .72rem; display: flex; align-items: center; justify-content: center; color: var(--arc-deep) !important; background: #fff; border: 1px solid #fff; border-radius: 999px; font-size: .78rem; font-weight: 850; text-align: center; text-decoration: none; }
.arc-mobile-menu-actions a + a { color: #fff !important; background: transparent; }

/* Shared page system */
.arc-section { --arc-space: clamp(5.5rem, 8.5vw, 9rem); width: 100%; max-width: none; margin-inline: 0; padding: var(--arc-space) var(--arc-content-inset); }
.arc-section > .e-con-inner { width: 100% !important; max-width: var(--arc-content-max) !important; margin-inline: auto !important; }
.arc-eyebrow { position: relative; margin-bottom: 1.3rem !important; padding-left: 2.8rem; color: var(--arc-champagne); font-size: .66rem; font-weight: 850; letter-spacing: .21em; text-transform: uppercase; }
.arc-eyebrow::before { content: ''; position: absolute; top: .72em; left: 0; width: 2rem; height: 1px; background: currentColor; }
.arc-lede, .arc-section-intro { max-width: 62ch; color: var(--arc-graphite); font-size: clamp(1.02rem, 1.65vw, 1.22rem); }
.arc-section-intro { margin-bottom: 3rem !important; }
.arc-actions { margin-top: 1.9rem; display: flex; flex-flow: row wrap; align-items: center; gap: .75rem; }
.arc-actions > .e-con-inner { display: flex; flex-flow: row wrap; align-items: center; gap: .75rem; }
.arc-actions > .elementor-element,
.arc-actions > .e-con-inner > .elementor-element {
  width: auto !important;
  max-width: 100%;
  flex: 0 1 auto;
}
.arc-actions .elementor-button { min-height: 54px; padding: .9rem 1.45rem !important; display: inline-flex; align-items: center; justify-content: center; gap: .85rem; border-radius: 999px !important; font-family: var(--arc-sans); font-size: .78rem; font-weight: 850; letter-spacing: .01em; white-space: nowrap; text-decoration: none; transition: transform .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease; }
.arc-actions .elementor-button:hover { transform: translateY(-2px); }
.arc-btn-primary .elementor-button, .arc-dental-site .arc-btn-primary a { color: #fff !important; background: var(--arc-navy) !important; box-shadow: 0 12px 28px rgba(16,47,115,.18); }
.arc-btn-primary .elementor-button:hover { background: var(--arc-deep) !important; box-shadow: 0 16px 34px rgba(7,26,63,.2); }
.arc-btn-secondary .elementor-button { color: var(--arc-navy) !important; background: transparent !important; box-shadow: inset 0 0 0 1px var(--arc-navy); }
.arc-actions .arc-btn-primary .elementor-button,
.arc-actions .arc-btn-secondary .elementor-button,
.arc-actions .arc-btn-light .elementor-button,
.arc-actions .arc-btn-outline-light .elementor-button { min-width: 210px; padding: .65rem .7rem .65rem 1.3rem !important; justify-content: space-between; }
.arc-actions .arc-btn-primary .elementor-button::after,
.arc-actions .arc-btn-secondary .elementor-button::after,
.arc-actions .arc-btn-light .elementor-button::after,
.arc-actions .arc-btn-outline-light .elementor-button::after { content: '→'; width: 34px; height: 34px; margin-left: auto; flex: 0 0 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; font-size: .9rem; line-height: 1; transition: color .22s ease, background .22s ease, transform .22s ease; }
.arc-actions .arc-btn-primary .elementor-button::after { color: #fff; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.22); }
.arc-actions .arc-btn-secondary .elementor-button::after,
.arc-actions .arc-btn-light .elementor-button::after { color: #fff; background: var(--arc-navy); border: 1px solid var(--arc-navy); }
.arc-actions .arc-btn-outline-light .elementor-button::after { color: #fff; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.28); }
.arc-actions .arc-btn-secondary .elementor-button:hover { color: #fff !important; background: var(--arc-navy) !important; }
.arc-actions .arc-btn-secondary .elementor-button:hover::after { color: var(--arc-navy); background: #fff; }
.arc-actions .arc-btn-light .elementor-button:hover { color: var(--arc-deep) !important; background: var(--arc-gold-soft) !important; }
.arc-actions .arc-btn-outline-light .elementor-button:hover { color: var(--arc-deep) !important; background: #fff !important; }
.arc-actions .arc-btn-outline-light .elementor-button:hover::after { color: #fff; background: var(--arc-navy); border-color: var(--arc-navy); }
.arc-actions .arc-btn-primary .elementor-button:hover::after,
.arc-actions .arc-btn-secondary .elementor-button:hover::after,
.arc-actions .arc-btn-light .elementor-button:hover::after,
.arc-actions .arc-btn-outline-light .elementor-button:hover::after { transform: translateX(3px); }
.arc-btn-link .elementor-button { min-height: 42px; padding-inline: .2rem !important; color: var(--arc-navy) !important; background: transparent !important; }
.arc-btn-link .elementor-button::after { content: ' →'; margin-left: .45rem; transition: transform .2s ease; }
.arc-btn-link .elementor-button:hover::after { transform: translateX(4px); }
.arc-actions .arc-btn-text { min-width: 210px; }
.arc-actions .arc-btn-text .elementor-button { width: 100%; min-width: 210px; min-height: 54px; padding: .65rem .7rem .65rem 1.3rem !important; display: inline-flex !important; align-items: center; justify-content: space-between; gap: 1rem; color: var(--arc-navy) !important; background: rgba(255,255,255,.72) !important; border-radius: 999px !important; box-shadow: inset 0 0 0 1px rgba(16,47,115,.55),0 10px 24px rgba(7,26,63,.06); text-align: left; }
.arc-actions .arc-btn-text .elementor-button::after { content: '→'; width: 34px; height: 34px; margin-left: auto; flex: 0 0 34px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: var(--arc-navy); border: 1px solid var(--arc-navy); border-radius: 50%; font-size: .9rem; line-height: 1; transition: color .22s ease,background .22s ease,transform .22s ease; }
.arc-actions .arc-btn-text .elementor-button:hover { color: #fff !important; background: var(--arc-navy) !important; box-shadow: 0 14px 30px rgba(16,47,115,.18); }
.arc-actions .arc-btn-text .elementor-button:hover::after { color: var(--arc-navy); background: #fff; border-color: #fff; transform: translateX(3px); }
.arc-hero-copy .arc-actions { width: 100% !important; padding-inline: 0 !important; align-self: flex-start !important; align-items: flex-start !important; justify-content: flex-start !important; }
.arc-hero-copy .arc-actions > .e-con-inner { width: min(100%,560px) !important; margin-inline: 0 auto !important; display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch !important; justify-items: stretch !important; gap: .75rem; }
.arc-hero-copy .arc-actions > .e-con-inner > .elementor-element { width: 100% !important; min-width: 0; }
.arc-hero-copy .arc-actions .elementor-button { width: 100%; min-width: 0; }
.arc-hero-copy .arc-actions-3 > .e-con-inner > .arc-btn-text { grid-column: 1 / -1; }
.arc-photo-split-copy .arc-actions { width: min(100%,560px) !important; }
.arc-photo-split-copy .arc-actions > .e-con-inner { width: 100% !important; display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch !important; gap: .75rem; }
.arc-photo-split-copy .arc-actions-1 > .e-con-inner { grid-template-columns: minmax(210px,280px); }
.arc-photo-split-copy .arc-actions > .e-con-inner > .elementor-element,
.arc-photo-split-copy .arc-actions .elementor-button { width: 100% !important; min-width: 0; }
.arc-btn-light .elementor-button { color: var(--arc-deep) !important; background: #fff !important; }
.arc-btn-outline-light .elementor-button { color: #fff !important; background: transparent !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.75); }

/* Editorial hero */
.arc-hero { width: 100%; max-width: none; min-height: min(820px, calc(100vh - 131px)); margin-inline: 0; padding: clamp(2.2rem, 4vw, 4.6rem) var(--arc-content-inset); display: flex !important; align-items: stretch !important; background: radial-gradient(circle at 8% 6%, rgba(223,207,184,.35), transparent 30%), var(--arc-warm); overflow: clip !important; }
.arc-hero > .e-con-inner { width: 100% !important; max-width: var(--arc-content-max) !important; display: grid !important; grid-template-columns: minmax(0, .96fr) minmax(500px, 1.04fr); align-items: stretch; gap: clamp(2.4rem, 5vw, 5rem); }
.arc-hero-copy { padding-block: 2.25rem; justify-content: center; }
.arc-hero-copy .elementor-widget-heading,
.arc-hero-copy .elementor-widget-heading .elementor-widget-container { width: 100% !important; max-width: none !important; }
.arc-hero-copy h1 { width: 100%; max-width: none; }
.arc-hero-copy .arc-lede { max-width: 53ch; }
.arc-hero-media { position: relative; min-height: 635px; padding: 0; justify-content: flex-end; color: #fff; background: linear-gradient(145deg, var(--arc-navy), var(--arc-deep)); border: 1px solid rgba(16,47,115,.08); border-radius: 320px 320px 34px 34px / 270px 270px 34px 34px !important; box-shadow: var(--arc-shadow); overflow: clip !important; isolation: isolate; animation: arcHeroFloat 8s ease-in-out infinite; }
.arc-hero-media::before { content: ''; position: absolute; inset: 17px; z-index: 2; border: 1px solid rgba(255,255,255,.42); border-radius: inherit; pointer-events: none; }
.arc-hero-media::after { content: ''; position: absolute; inset: auto 0 0; z-index: 1; height: 48%; background: linear-gradient(0deg, rgba(5,16,43,.58), transparent); pointer-events: none; }
.arc-hero-image, .arc-hero-image .elementor-widget-container { width: 100% !important; height: 100% !important; }
.arc-hero-image { position: absolute !important; inset: 0; }
.arc-hero-image img { width: 100% !important; height: 100% !important; display: block; object-fit: cover !important; object-position: 50% 50%; transition: transform .9s cubic-bezier(.2,.65,.25,1); }
.arc-hero-media:hover .arc-hero-image img { transform: scale(1.035); }
.arc-hero-slider .arc-hero-slide { z-index: 0; opacity: 0; pointer-events: none; transition: opacity 1.05s ease; }
.arc-hero-slider .arc-hero-slide.is-active { z-index: 1; opacity: 1; }
.arc-hero-slider .arc-hero-slide img { transform: scale(1.065); }
.arc-hero-slider .arc-hero-slide.is-active img { animation: arcKenBurns 7s ease-out both; }
.arc-hero-slider:hover .arc-hero-slide img { transform: none; }
.arc-hero-slider .arc-media-caption { right: 10.5rem; }
.arc-hero-slider-controls { position: absolute; right: 1.5rem; bottom: 1.4rem; z-index: 4; height: 54px; padding: .35rem; display: flex; align-items: center; gap: .35rem; color: #fff; background: rgba(7,26,63,.78); border: 1px solid rgba(255,255,255,.24); border-radius: 999px; backdrop-filter: blur(12px); }
.arc-dental-site .arc-hero-slider-controls button { width: 42px !important; height: 42px !important; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; color: #fff !important; background: transparent !important; border: 0 !important; border-radius: 50% !important; box-shadow: none !important; font: 700 1rem/1 var(--arc-sans); cursor: pointer; transition: background .2s ease, color .2s ease; }
.arc-dental-site .arc-hero-slider-controls button:hover { color: var(--arc-deep) !important; background: var(--arc-gold-soft) !important; }
.arc-hero-slide-status { min-width: 3.1rem; display: inline-flex; align-items: center; justify-content: center; gap: .32rem; }
.arc-hero-slide-status i { width: 5px; height: 5px; display: block; background: rgba(255,255,255,.45); border-radius: 50%; transition: width .25s ease, background .25s ease; }
.arc-hero-slide-status i.is-active { width: 16px; background: var(--arc-gold-soft); border-radius: 999px; }
.arc-media-caption { position: absolute; right: 1.5rem; bottom: 1.4rem; left: 1.5rem; z-index: 3; padding: 1rem 1.15rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; color: #fff; background: rgba(7,26,63,.68); border: 1px solid rgba(255,255,255,.23); border-radius: 999px; backdrop-filter: blur(12px); }
.arc-media-caption span { font-size: .62rem; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.arc-media-caption strong { font-family: var(--arc-serif); font-size: 1rem; font-weight: 400; }
.arc-hero-badge { display: none; }
.arc-hero-badge span { color: var(--arc-champagne); font-size: .55rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.arc-hero-badge strong { font: 400 1.17rem/1.05 var(--arc-serif); }
.arc-orbit { position: absolute; top: 5%; right: -10%; width: min(470px, 90%); aspect-ratio: 1; }
.arc-orbit span { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; }
.arc-orbit span:nth-child(2) { inset: 15%; }
.arc-orbit span:nth-child(3) { inset: 31%; background: radial-gradient(circle, rgba(255,255,255,.14), transparent 68%); }
.arc-visual-kicker, .arc-visual-title { position: relative; z-index: 2; }
.arc-visual-kicker { margin: 0 0 .8rem !important; color: #cfd8f2 !important; font-size: .7rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.arc-visual-title { margin: 0 !important; color: #fff !important; font: 400 clamp(2.2rem, 4.5vw, 4.4rem)/1.02 var(--arc-serif); letter-spacing: -.04em; }

/* Homepage cinematic hero, inspired by the approved image-led direction */
.arc-hero-home { position: relative; min-height: clamp(700px, calc(100vh - 98px), 860px); padding: 0 var(--arc-content-inset) !important; display: flex !important; align-items: stretch !important; color: #fff; background: var(--arc-deep); isolation: isolate; }
.arc-hero-home::before { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(3,15,40,.94) 0%, rgba(4,19,49,.84) 35%, rgba(7,26,63,.48) 64%, rgba(7,26,63,.16) 100%); pointer-events: none; }
.arc-hero-home::after { content: ''; position: absolute; right: var(--arc-content-inset); bottom: 0; left: var(--arc-content-inset); z-index: 3; height: 1px; background: linear-gradient(90deg, rgba(223,207,184,.72), rgba(255,255,255,.12), transparent); pointer-events: none; }
.arc-hero-home > .e-con-inner { position: static; z-index: 2; width: 100% !important; max-width: var(--arc-content-max) !important; min-height: inherit; display: flex !important; align-items: center !important; }
.arc-hero-home .arc-hero-copy { position: relative; z-index: 4; width: min(900px,70%); padding: clamp(5rem,7vw,6.5rem) 0 clamp(6rem,8vw,7.5rem); justify-content: center; }
.arc-hero-home .arc-eyebrow { color: var(--arc-gold-soft); text-shadow: 0 2px 22px rgba(0,0,0,.28); }
.arc-hero-home h1 { max-width: 15ch !important; color: #fff !important; font-size: clamp(4.25rem,6.5vw,7rem); line-height: .93; text-shadow: 0 7px 36px rgba(0,0,0,.26); }
.arc-hero-home .arc-lede { max-width: 61ch; color: rgba(255,255,255,.84) !important; font-size: clamp(1.05rem,1.35vw,1.28rem); text-shadow: 0 2px 24px rgba(0,0,0,.26); }
.arc-hero-home .arc-actions { width: auto !important; margin-top: 2.15rem; }
.arc-hero-home .arc-actions > .e-con-inner { width: auto !important; margin: 0 !important; display: flex !important; flex-direction: row !important; align-items: center !important; flex-wrap: wrap !important; gap: .8rem; }
.arc-hero-home .arc-actions > .e-con-inner > .elementor-element { width: auto !important; }
.arc-hero-home .arc-actions .elementor-button { width: auto !important; min-width: 220px; min-height: 58px; }
.arc-hero-home .arc-btn-primary .elementor-button { color: var(--arc-deep) !important; background: var(--arc-ivory) !important; box-shadow: 0 16px 38px rgba(0,0,0,.18); }
.arc-hero-home .arc-btn-primary .elementor-button::after { color: #fff; background: var(--arc-navy); border-color: var(--arc-navy); }
.arc-hero-home .arc-btn-primary .elementor-button:hover { color: #fff !important; background: var(--arc-navy) !important; }
.arc-hero-home .arc-btn-primary .elementor-button:hover::after { color: var(--arc-navy); background: #fff; border-color: #fff; }
.arc-hero-home .arc-btn-text .elementor-button { min-width: 220px; color: #fff !important; background: rgba(7,26,63,.28) !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.7); backdrop-filter: blur(12px); }
.arc-hero-home .arc-btn-text .elementor-button::after { color: var(--arc-deep); background: var(--arc-gold-soft); border-color: var(--arc-gold-soft); }
.arc-hero-home .arc-btn-text .elementor-button:hover { color: var(--arc-deep) !important; background: var(--arc-gold-soft) !important; }
.arc-hero-home .arc-hero-media { position: absolute !important; inset: 0 !important; z-index: 0; width: 100% !important; min-height: 100% !important; padding: 0; background: var(--arc-deep); border: 0; border-radius: 0 !important; box-shadow: none; animation: none; }
.arc-hero-home .arc-hero-media::before { display: none; }
.arc-hero-home .arc-hero-media::after { inset: 0; z-index: 2; height: 100%; background: linear-gradient(90deg,rgba(3,15,40,.88) 0%,rgba(4,19,49,.76) 36%,rgba(7,26,63,.34) 67%,rgba(7,26,63,.08) 100%),linear-gradient(180deg,rgba(4,16,42,.06),rgba(4,16,42,.3)); }
.arc-hero-home .arc-hero-image img { object-position: 50% 42%; }
.arc-hero-home .arc-hero-slider .arc-hero-slide img { transform: scale(1.055); }
.arc-hero-home .arc-hero-slider .arc-hero-slide.is-active img { animation-duration: 8s; }
.arc-hero-home .arc-media-caption { right: 9rem; bottom: 1.6rem; left: auto; width: auto; padding: .72rem 1rem; background: rgba(4,19,47,.64); border-color: rgba(255,255,255,.28); }
.arc-hero-home .arc-hero-slider-controls { right: var(--arc-content-inset); bottom: 1.55rem; background: rgba(4,19,47,.62); }

.arc-home-welcome { background: radial-gradient(circle at 9% 12%, rgba(223,207,184,.34), transparent 28%), var(--arc-warm); }
.arc-home-welcome .arc-photo-split-image { border-radius: 34px 240px 34px 34px / 34px 210px 34px 34px !important; }
.arc-home-welcome .arc-photo-split-media::after { content: 'MIDTOWN MANHATTAN\A Care made clearer.'; position: absolute; right: auto; bottom: 2rem; left: -2rem; z-index: 3; min-width: 215px; padding: 1.2rem 1.4rem; color: #fff; background: var(--arc-deep); border: 1px solid rgba(255,255,255,.16); border-radius: 18px; box-shadow: 0 18px 46px rgba(7,26,63,.22); white-space: pre; font: 400 1.15rem/1.35 var(--arc-serif); letter-spacing: -.01em; }

.arc-trust-bar, .arc-service-facts { width: 100%; max-width: none; padding: 1.15rem clamp(1rem, 4vw, 4rem); color: #fff; background: var(--arc-deep); }
.arc-trust-bar { max-width: 100vw !important; padding-inline: 0; overflow: hidden !important; contain: paint; background: linear-gradient(90deg, var(--arc-deep), var(--arc-navy), var(--arc-deep)); }
.arc-trust-bar > .e-con-inner, .arc-trust-bar .elementor-widget-text-editor, .arc-trust-bar .elementor-widget-container { max-width: 100vw !important; overflow: hidden !important; }
.arc-trust-track { width: max-content; display: flex; will-change: transform; animation: arcTicker 30s linear infinite; }
.arc-trust-track:hover { animation-play-state: paused; }
.arc-trust-bar ul { min-width: 100vw; margin: 0; padding: 0 clamp(1.5rem, 4vw, 4rem); flex: 0 0 auto; display: flex; align-items: center; justify-content: space-around; gap: clamp(2.25rem, 4vw, 4rem); list-style: none; }
.arc-service-facts { padding-inline: var(--arc-content-inset); }
.arc-service-facts ul { width: 100%; max-width: var(--arc-content-max); margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; list-style: none; }
.arc-service-facts ul { grid-template-columns: repeat(3,1fr); }
.arc-trust-bar li, .arc-service-facts li { position: relative; padding-left: 1.3rem; font-size: .7rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; }
.arc-trust-bar li { color: #fff !important; }
.arc-trust-bar li::before { content: ''; position: absolute; top: .7em; left: 0; width: 5px; height: 5px; background: var(--arc-champagne); border-radius: 50%; }
.arc-service-facts li { display: flex; align-items: center; justify-content: center; gap: .8rem; color: #fff !important; }
.arc-service-facts li::before { content: ''; width: 8px; height: 8px; flex: 0 0 8px; background: var(--arc-champagne); border-radius: 50%; box-shadow: 0 0 0 5px rgba(223,207,184,.12); }

/* Photo-led editorial sections */
.arc-photo-split { width: 100%; display: flex !important; align-items: center !important; }
.arc-photo-split > .e-con-inner { width: 100% !important; display: grid !important; grid-template-columns: minmax(420px, .92fr) minmax(0, 1.08fr); align-items: center; gap: clamp(3rem, 8vw, 8rem); }
.arc-photo-split.arc-photo-reverse > .e-con-inner { grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); }
.arc-photo-reverse .arc-photo-split-media { order: 2; }
.arc-photo-reverse .arc-photo-split-copy { order: 1; }
.arc-photo-split-media { position: relative; min-height: 610px !important; overflow: visible !important; }
.arc-photo-split-image, .arc-photo-split-image .elementor-widget-container { width: 100%; height: 100%; }
.arc-photo-split-image { position: absolute !important; inset: 0; z-index: 1; border-radius: 260px 260px 28px 28px / 230px 230px 28px 28px !important; box-shadow: var(--arc-shadow); overflow: hidden !important; }
.arc-photo-split-image::after { content: ''; position: absolute; inset: 14px; border: 1px solid rgba(255,255,255,.5); border-radius: inherit; pointer-events: none; }
.arc-photo-split-image, .arc-photo-split-image .elementor-widget-container { width: 100% !important; height: 100% !important; }
.arc-photo-split-image img { width: 100% !important; height: 100% !important; display: block; object-fit: cover !important; transition: transform .8s cubic-bezier(.2,.65,.25,1); }
.arc-photo-split-media:hover img { transform: scale(1.035); }
.arc-photo-mark { position: absolute; right: -2.3rem; bottom: 4.2rem; z-index: 2; width: 165px; height: 165px; border: 1px solid var(--arc-gold-soft); border-radius: 50%; animation: arcSpin 24s linear infinite; }
.arc-photo-mark span { position: absolute; inset: 19px; border: 1px solid rgba(184,147,97,.6); border-radius: 50%; }
.arc-photo-mark span + span { inset: 41px; background: rgba(248,245,239,.72); }
.arc-photo-split-copy .arc-section-intro { margin-bottom: 1.6rem !important; }
.arc-checklist { margin: 0; padding: 0; list-style: none; }
.arc-checklist li { position: relative; padding: .92rem .3rem .92rem 2.15rem; color: var(--arc-deep); border-bottom: 1px solid rgba(16,47,115,.13); font-weight: 720; }
.arc-checklist li:last-child { border-bottom: 0; }
.arc-checklist li::before { content: '✓'; position: absolute; left: 0; color: var(--arc-champagne); font-weight: 900; }
.arc-dark-story { max-width: none; margin-block: 0; color: #fff; background: radial-gradient(circle at 10% 85%, rgba(50,85,157,.58), transparent 34%), var(--arc-deep); border-radius: 0; overflow: hidden !important; }
.arc-dark-story h2, .arc-dark-story h3, .arc-dark-story p, .arc-dark-story li { color: #fff !important; }
.arc-dark-story .arc-eyebrow { color: var(--arc-gold-soft); }
.arc-dark-story .arc-checklist li { border-color: rgba(255,255,255,.16); }
.arc-dark-story .arc-photo-split-image { box-shadow: 0 30px 80px rgba(0,0,0,.22); }
.arc-soft-blue { background: var(--arc-soft); }
.arc-porcelain { background: var(--arc-porcelain); }
.arc-navy-panel { color: #fff; background: var(--arc-deep); }

/* Image service mosaic */
.arc-section-heading-row { width: 100% !important; max-width: none !important; }
.arc-section-heading-row > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr); align-items: end; gap: clamp(2rem,5vw,5rem); }
.arc-section-heading-row .arc-section-intro { margin-bottom: .55rem !important; }
.arc-service-grid { width: 100% !important; max-width: none !important; }
.arc-service-grid > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 1.15rem; align-items: stretch; }
.arc-service-card { grid-column: span 3; min-width: 0; background: #fff; border: 1px solid var(--arc-hairline); border-radius: 26px !important; box-shadow: 0 10px 30px rgba(7,26,63,.045); overflow: hidden !important; transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
.arc-service-card-1 { grid-column: span 7; }
.arc-service-card-2 { grid-column: span 5; }
.arc-service-card:hover { border-color: rgba(184,147,97,.48); box-shadow: var(--arc-shadow-soft); transform: translateY(-7px); }
.arc-service-card-media { position: relative; height: 235px; overflow: hidden !important; }
.arc-service-card-1 .arc-service-card-media, .arc-service-card-2 .arc-service-card-media { height: 410px; }
.arc-service-image, .arc-service-image .elementor-widget-container { width: 100% !important; height: 100% !important; }
.arc-service-image img { width: 100% !important; height: 100% !important; display: block; object-fit: cover !important; transition: transform .75s cubic-bezier(.2,.65,.25,1); }
.arc-service-card:hover .arc-service-image img { transform: scale(1.06); }
.arc-service-card-copy { padding: clamp(1.25rem, 2.5vw, 2rem); }
.arc-service-card-copy p { color: var(--arc-graphite); font-size: .93rem; }
.arc-card-index { margin: 0 0 .55rem !important; color: var(--arc-champagne) !important; font-size: .62rem !important; font-weight: 850; letter-spacing: .18em; }

/* Premium split service carousel */
.arc-service-carousel { position: relative; max-width: none; padding-block: clamp(5rem,7vw,7.5rem) !important; background: radial-gradient(circle at 4% 10%, rgba(223,207,184,.28), transparent 28%), var(--arc-ivory); overflow: hidden; }
.arc-service-carousel::before { content: ''; position: absolute; top: 0; bottom: 0; left: var(--arc-content-inset); width: 1px; background: linear-gradient(180deg, transparent, rgba(184,147,97,.42) 18%, rgba(184,147,97,.42) 82%, transparent); pointer-events: none; }
.arc-service-carousel > .e-con-inner { width: 100% !important; max-width: var(--arc-content-max) !important; display: grid !important; grid-template-columns: minmax(260px,.72fr) minmax(0,1.72fr); align-items: start; gap: clamp(3rem,5vw,5.75rem) !important; }
.arc-service-carousel .arc-section-heading-row { min-width: 0; padding-left: clamp(1.15rem,2vw,2rem); }
.arc-service-carousel .arc-section-heading-row > .e-con-inner { max-width: none !important; margin-inline: 0 !important; grid-template-columns: 1fr; align-items: start; justify-items: start; gap: 1.2rem; text-align: left; }
.arc-service-carousel .arc-section-heading-copy,
.arc-service-carousel .arc-carousel-intro { width: 100% !important; max-width: none !important; align-items: flex-start !important; text-align: left !important; }
.arc-service-carousel .arc-section-heading-copy > .e-con-inner,
.arc-service-carousel .arc-carousel-intro > .e-con-inner { width: 100% !important; max-width: none !important; align-items: flex-start !important; justify-content: flex-start !important; text-align: left !important; }
.arc-service-carousel .arc-section-heading-copy .elementor-element,
.arc-service-carousel .arc-carousel-intro .elementor-element,
.arc-service-carousel .arc-section-heading-copy .elementor-widget-container,
.arc-service-carousel .arc-carousel-intro .elementor-widget-container { width: 100%; text-align: left !important; }
.arc-service-carousel .arc-section-heading-copy .arc-eyebrow { width: auto; margin-inline: 0 !important; }
.arc-service-carousel .arc-section-heading-copy .arc-eyebrow::after { display: none; }
.arc-service-carousel .arc-section-heading-copy h2 { max-width: 16ch; margin: 0 0 .32em; text-align: left !important; }
.arc-service-carousel .arc-carousel-intro .arc-section-intro { max-width: 32ch; margin: 0 0 1.35rem !important; text-align: left !important; }
.arc-carousel-controls { display: flex; justify-content: flex-start; gap: .65rem; }
.arc-dental-site .arc-carousel-controls button { width: 52px !important; height: 52px !important; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; color: var(--arc-navy) !important; background: var(--arc-ivory) !important; border: 1px solid rgba(16,47,115,.22) !important; border-radius: 50% !important; box-shadow: 0 8px 20px rgba(7,26,63,.08) !important; font: 700 1.08rem/1 var(--arc-sans); cursor: pointer; transition: transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease; }
.arc-dental-site .arc-carousel-controls button:hover { color: #fff !important; background: var(--arc-navy) !important; border-color: var(--arc-navy) !important; transform: translateY(-2px); }
.arc-service-carousel-track { width: 100% !important; max-width: none !important; overflow: hidden !important; }
.arc-service-carousel-track > .e-con-inner { width: 100% !important; max-width: none !important; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; gap: 1.15rem; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
.arc-service-carousel-track > .e-con-inner::-webkit-scrollbar { display: none; }
.arc-service-carousel .arc-service-card { width: calc((100% - 1.15rem) / 2) !important; min-width: calc((100% - 1.15rem) / 2) !important; max-width: calc((100% - 1.15rem) / 2) !important; flex: 0 0 calc((100% - 1.15rem) / 2) !important; display: flex !important; flex-direction: column; scroll-snap-align: start; }
.arc-service-carousel .arc-service-card-media { height: 330px; flex: 0 0 330px; }
.arc-service-carousel .arc-service-image img { object-fit: cover !important; object-position: 50% 28% !important; }
.arc-service-carousel .arc-service-card-copy { min-height: 270px; padding: clamp(1.4rem,2vw,1.8rem); display: flex !important; flex: 1 1 auto; flex-direction: column; }
.arc-service-carousel .arc-service-card-copy h3 { min-height: 0; margin-bottom: .6rem; }
.arc-service-carousel .arc-service-card-copy p { min-height: 0; margin-bottom: 1.25rem; }
.arc-service-carousel .arc-service-card-copy .arc-btn-link { margin-top: auto; }
.arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button { min-height: 52px; padding: .65rem .72rem .65rem 1.2rem !important; display: inline-flex !important; align-items: center; justify-content: space-between; gap: 1rem; color: #fff !important; background: var(--arc-navy) !important; border-radius: 999px !important; box-shadow: 0 10px 24px rgba(16,47,115,.14); white-space: nowrap; }
.arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button-content-wrapper, .arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button-text { color: #fff !important; }
.arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button::after { content: '→'; width: 32px; height: 32px; margin-left: auto; flex: 0 0 32px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font-size: .9rem; line-height: 1; transition: color .2s ease, background .2s ease, transform .2s ease; }
.arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button:hover::after { color: var(--arc-deep); background: #fff; transform: translateX(2px); }
.arc-service-carousel .arc-service-card-copy .arc-btn-link .elementor-button:hover { background: var(--arc-deep) !important; }
/* Cards, process, and supporting content */
.arc-card-grid { width: 100% !important; max-width: none !important; display: flex !important; align-items: stretch; }
.arc-card-grid > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.15rem; align-items: stretch; background: transparent; }
.arc-card { position: relative; padding: clamp(1.55rem, 3vw, 2.6rem); background: #fff; border: 1px solid var(--arc-hairline); border-radius: 24px !important; box-shadow: 0 12px 34px rgba(7,26,63,.045); overflow: hidden; transition: color .25s ease, background .25s ease, transform .25s ease, box-shadow .25s ease; }
.arc-card::before { content: ''; position: absolute; top: 0; right: 0; left: 0; height: 3px; background: linear-gradient(90deg,var(--arc-champagne),var(--arc-navy)); transform: scaleX(0); transform-origin: left; transition: transform .28s ease; }
.arc-card:hover { z-index: 1; background: var(--arc-ivory); border-color: rgba(184,147,97,.42); transform: translateY(-6px); box-shadow: var(--arc-shadow-soft); }
.arc-card:hover::before { transform: scaleX(1); }
.arc-card p { color: var(--arc-graphite); }
.arc-value-cards { background: var(--arc-warm); }
.arc-value-cards .arc-card, .arc-process-cards .arc-card { padding-top: clamp(1.55rem, 3vw, 2.6rem); }
.arc-value-cards .arc-card::after, .arc-process-cards .arc-card::after { display: none !important; content: none !important; }
.arc-process-cards .arc-card { display: flex !important; flex-direction: column; }
.arc-process-cards .arc-card > .e-con-inner { width: 100% !important; height: 100%; display: flex !important; flex-direction: column; align-items: stretch !important; }
.arc-process-cards .arc-card .arc-btn-link { width: 100% !important; margin-top: auto; }
.arc-process-cards .arc-card .arc-btn-link .elementor-button { width: 100%; min-height: 52px; padding: .6rem .65rem .6rem 1.15rem !important; display: inline-flex !important; align-items: center; justify-content: space-between; gap: 1rem; color: #fff !important; background: var(--arc-navy) !important; border-radius: 999px !important; box-shadow: 0 10px 24px rgba(16,47,115,.15); font-weight: 850; text-align: left; }
.arc-process-cards .arc-card .arc-btn-link .elementor-button-content-wrapper,
.arc-process-cards .arc-card .arc-btn-link .elementor-button-text { color: #fff !important; }
.arc-process-cards .arc-card .arc-btn-link .elementor-button::after { content: '→'; width: 32px; height: 32px; margin-left: auto; flex: 0 0 32px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font-size: .9rem; line-height: 1; transition: color .2s ease, background .2s ease, transform .2s ease; }
.arc-process-cards .arc-card .arc-btn-link .elementor-button:hover { color: #fff !important; background: var(--arc-deep) !important; }
.arc-process-cards .arc-card .arc-btn-link .elementor-button:hover::after { color: var(--arc-deep); background: #fff; transform: translateX(2px); }

.arc-centered-section-heading { max-width: 900px; margin: 0 auto 3rem; text-align: center; }
.arc-centered-section-heading h2, .arc-centered-section-heading .arc-section-intro { margin-inline: auto; }
.arc-centered-section-heading .arc-eyebrow { padding-left: 0; display: inline-flex; align-items: center; gap: .75rem; }
.arc-centered-section-heading .arc-eyebrow::before { position: static; width: 2rem; }
.arc-centered-section-heading .arc-eyebrow::after { content: ''; width: 2rem; height: 1px; background: currentColor; }
.arc-image-cards-section { background: linear-gradient(180deg, var(--arc-warm), var(--arc-ivory)); }
.arc-image-card-grid { width: 100% !important; max-width: none !important; }
.arc-image-card-grid > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.15rem; align-items: stretch; }
.arc-image-card { min-width: 0; background: #fff; border: 1px solid var(--arc-hairline); border-radius: 190px 190px 26px 26px / 150px 150px 26px 26px !important; box-shadow: var(--arc-shadow-soft); overflow: hidden !important; transition: transform .28s ease, box-shadow .28s ease; }
.arc-image-card:hover { transform: translateY(-7px); box-shadow: var(--arc-shadow); }
.arc-image-card-media { height: 315px; overflow: hidden !important; }
.arc-image-card-image, .arc-image-card-image .elementor-widget-container { width: 100% !important; height: 100% !important; }
.arc-image-card-image img { width: 100% !important; height: 100% !important; display: block; object-fit: cover !important; transition: transform .75s cubic-bezier(.2,.65,.25,1); }
.arc-image-card:hover img { transform: scale(1.045); }
.arc-image-card-copy { min-height: 250px; padding: 2rem; text-align: center; }
.arc-image-card-copy h3 { min-height: 2.2em; }
.arc-image-card-copy p { max-width: 35ch; min-height: 5.1em; margin-inline: auto; color: var(--arc-graphite); }

.arc-plan-section { width: 100% !important; max-width: none !important; margin: 0 !important; position: relative; color: #fff; background: radial-gradient(circle at 8% 5%, rgba(67,104,181,.6), transparent 30%), radial-gradient(circle at 92% 86%, rgba(40,84,156,.28), transparent 26%), linear-gradient(135deg,var(--arc-navy),var(--arc-deep)); border: 0; border-radius: 0; box-shadow: none; overflow: hidden !important; }
.arc-plan-section::before { content: ''; position: absolute; top: -340px; left: 50%; width: min(860px,72vw); aspect-ratio: 1; border: 1px solid rgba(223,207,184,.2); border-radius: 50%; transform: translateX(-50%); box-shadow: inset 0 0 0 54px rgba(255,255,255,.012), inset 0 0 0 108px rgba(255,255,255,.01); pointer-events: none; }
.arc-plan-section > .e-con-inner { width: 100% !important; max-width: var(--arc-content-max) !important; position: relative; z-index: 1; }
.arc-plan-section .arc-centered-section-heading { width: 100% !important; max-width: 1100px; margin: 0 auto clamp(3rem,5vw,4.5rem); text-align: center !important; }
.arc-plan-section .arc-centered-section-heading > .e-con-inner { width: 100% !important; max-width: none !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
.arc-plan-section .arc-centered-section-heading .elementor-element,
.arc-plan-section .arc-centered-section-heading .elementor-widget-container { width: 100%; text-align: center !important; }
.arc-plan-section .arc-centered-section-heading .arc-eyebrow { width: auto; margin-inline: auto !important; justify-content: center; color: var(--arc-gold-soft); }
.arc-plan-section h2 { max-width: 22ch; margin-inline: auto; color: #fff !important; text-align: center !important; }
.arc-plan-section .arc-centered-section-heading .arc-section-intro { max-width: 760px; margin: 0 auto !important; color: #d3dcf2; text-align: center !important; }
.arc-plan-grid { width: 100% !important; max-width: none !important; }
.arc-plan-grid > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1rem,2vw,1.5rem); align-items: stretch; }
.arc-plan-section .arc-card { min-height: 270px; padding: clamp(2rem,3vw,3rem); color: #fff; background: linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055)); border-color: rgba(255,255,255,.18); border-radius: 30px !important; box-shadow: 0 22px 55px rgba(0,0,0,.11); backdrop-filter: blur(12px); }
.arc-plan-section .arc-card::before { height: 2px; background: linear-gradient(90deg,var(--arc-gold-soft),rgba(223,207,184,.12)); transform: scaleX(1); }
.arc-plan-section .arc-card::after { content: ''; position: absolute; top: -46px; right: -35px; width: 128px; aspect-ratio: 1; border: 1px solid rgba(223,207,184,.16); border-radius: 50%; box-shadow: inset 0 0 0 22px rgba(255,255,255,.018); pointer-events: none; }
.arc-plan-section .arc-card:hover { background: linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.075)); border-color: rgba(223,207,184,.5); box-shadow: 0 30px 65px rgba(0,0,0,.16); }
.arc-plan-section .arc-card h3 { max-width: 14ch; min-height: 2.2em; color: #fff !important; }
.arc-plan-section .arc-card p { max-width: 42ch; min-height: 5em; color: #dce4f5; }
.arc-plan-actions { width: 100% !important; margin-top: clamp(2.25rem,4vw,3.5rem); display: flex !important; align-items: center !important; justify-content: center !important; text-align: center; }
.arc-plan-actions > .e-con-inner { width: 100% !important; max-width: none !important; align-items: center !important; justify-content: center !important; }
.arc-plan-actions .elementor-button { min-width: 280px; }
.arc-split { width: 100%; display: flex !important; align-items: center !important; }
.arc-split > .e-con-inner { width: 100% !important; display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(330px, .78fr); align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.arc-split-copy p { max-width: 59ch; color: var(--arc-graphite); font-size: 1.06rem; }
.arc-split-panel { padding: clamp(1.65rem, 4vw, 3.25rem); background: #fff; border: 1px solid var(--arc-hairline); border-radius: 26px; box-shadow: var(--arc-shadow-soft); }
.arc-proof { position: relative; max-width: none; margin-block: 0; text-align: center; background: linear-gradient(135deg,#f1eadf,var(--arc-warm)); border-radius: 0; overflow: hidden; }
.arc-proof::after { content: '“'; position: absolute; top: -2.4rem; right: 4rem; color: rgba(184,147,97,.18); font: 400 14rem/1 var(--arc-serif); }
.arc-proof h2, .arc-proof p { position: relative; z-index: 1; margin-inline: auto; }
.arc-proof p { max-width: 66ch; }
.arc-note { color: var(--arc-gray); font-size: .86rem; }

/* Long-form service and practice editorial */
.arc-service-editorial { position: relative; background: #fff; overflow: clip !important; }
.arc-service-editorial::after { content: ''; position: absolute; right: -11rem; bottom: -15rem; width: 34rem; aspect-ratio: 1; border: 1px solid rgba(184,147,97,.14); border-radius: 50%; box-shadow: inset 0 0 0 66px rgba(16,47,115,.018), inset 0 0 0 132px rgba(16,47,115,.012); pointer-events: none; }
.arc-service-editorial > .e-con-inner { position: relative; z-index: 1; display: grid !important; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); align-items: start; gap: clamp(3rem,7vw,7rem); }
.arc-service-editorial-heading { position: sticky; top: 142px; }
.arc-service-editorial-heading > .e-con-inner,
.arc-service-editorial-copy > .e-con-inner { width: 100% !important; max-width: none !important; }
.arc-service-editorial-heading h2 { max-width: 16ch; font-size: clamp(2.55rem,4vw,4.55rem); }
.arc-service-editorial-copy { max-width: 810px; }
.arc-service-editorial-copy p { max-width: 72ch; color: var(--arc-graphite); font-size: clamp(1.03rem,1.25vw,1.14rem); line-height: 1.88; }
.arc-service-editorial-copy .elementor-widget-text-editor:first-child p:first-child { color: var(--arc-ink); font-size: clamp(1.17rem,1.65vw,1.38rem); line-height: 1.72; }
.arc-local-care-note { margin: clamp(2rem,4vw,3rem) 0 0; padding: clamp(1.45rem,3vw,2.2rem); color: var(--arc-ink); background: linear-gradient(135deg,var(--arc-warm),#f2e9dc); border-left: 4px solid var(--arc-champagne); border-radius: 0 24px 24px 0; box-shadow: 0 16px 36px rgba(7,26,63,.055); }
.arc-local-care-note span { display: block; margin-bottom: .62rem; color: var(--arc-navy); font-size: .66rem; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.arc-local-care-note p { margin: 0 !important; color: var(--arc-ink) !important; font-size: .98rem !important; line-height: 1.72 !important; }
.arc-about-editorial { background: radial-gradient(circle at 92% 12%,rgba(223,207,184,.22),transparent 26%),#fff; }

.arc-related-services { position: relative; background: linear-gradient(180deg,#f8f5ef,#f3ede4); overflow: clip !important; }
.arc-related-services > .e-con-inner { display: grid !important; gap: clamp(2rem,3.4vw,3rem); }
.arc-related-services-heading { width: 100% !important; display: grid !important; grid-template-columns: minmax(0,1fr) minmax(300px,.65fr); grid-template-areas: 'heading intro'; align-items: end; column-gap: clamp(2rem,6vw,6rem); }
.arc-related-services-heading > .e-con-inner { width: 100% !important; max-width: none !important; display: contents !important; }
.arc-related-services-heading .elementor-widget-heading { grid-area: heading; }
.arc-related-services-heading .elementor-widget-text-editor { grid-area: intro; }
.arc-related-services-heading h2 { max-width: 18ch; }
.arc-related-services-heading .arc-section-intro { margin: 0 !important; }
.arc-related-services-grid { width: 100% !important; }
.arc-related-services-grid > .e-con-inner { width: 100% !important; max-width: none !important; display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1rem,1.8vw,1.4rem); align-items: stretch; }
.arc-related-service-link { min-width: 0; padding: clamp(1.55rem,2.8vw,2.25rem); background: rgba(255,255,255,.92); border: 1px solid rgba(16,47,115,.11); border-radius: 26px !important; box-shadow: 0 14px 34px rgba(7,26,63,.055); overflow: hidden !important; transition: transform .24s ease,border-color .24s ease,box-shadow .24s ease; }
.arc-related-service-link:hover { transform: translateY(-5px); border-color: rgba(184,147,97,.55); box-shadow: 0 22px 48px rgba(7,26,63,.1); }
.arc-related-service-link > .e-con-inner { height: 100%; display: flex !important; flex-direction: column; align-items: stretch !important; gap: .65rem; }
.arc-related-service-link h3 { max-width: 16ch; }
.arc-related-service-link p { color: var(--arc-graphite); }
.arc-related-service-link .arc-btn-link { width: 100% !important; margin-top: auto; padding-top: .55rem; }
.arc-related-service-link .arc-btn-link .elementor-button { width: 100%; min-height: 52px; padding: .6rem .65rem .6rem 1.15rem !important; display: inline-flex !important; align-items: center; justify-content: space-between; gap: 1rem; color: #fff !important; background: var(--arc-navy) !important; border-radius: 999px !important; box-shadow: 0 10px 24px rgba(16,47,115,.15); font-weight: 850; text-align: left; }
.arc-related-service-link .arc-btn-link .elementor-button-content-wrapper,
.arc-related-service-link .arc-btn-link .elementor-button-text { color: #fff !important; }
.arc-related-service-link .arc-btn-link .elementor-button::after { content: '→'; width: 32px; height: 32px; margin-left: auto; flex: 0 0 32px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font-size: .9rem; line-height: 1; transition: color .2s ease,background .2s ease,transform .2s ease; }
.arc-related-service-link .arc-btn-link .elementor-button:hover { color: #fff !important; background: var(--arc-deep) !important; }
.arc-related-service-link .arc-btn-link .elementor-button:hover::after,
.arc-related-service-link:hover .arc-btn-link .elementor-button::after { color: var(--arc-deep); background: #fff; transform: translateX(2px); }
.arc-faq-section { position: relative; isolation: isolate; width: 100% !important; max-width: none !important; margin: 0 !important; padding-block: clamp(4.75rem,6.5vw,7rem) !important; color: var(--arc-deep); background-color: #f7f2e9 !important; border: 0 !important; border-radius: 0; overflow: hidden !important; }
body.arc-dental-site .elementor .elementor-element.arc-section.arc-faq-section { background-color: #f7f2e9 !important; background-image: none !important; }
.arc-faq-section::after { content: ''; position: absolute; inset: 0; z-index: 0; background: radial-gradient(circle at 92% 4%, rgba(223,207,184,.32), transparent 28%), radial-gradient(circle at 5% 96%, rgba(40,84,156,.07), transparent 26%), linear-gradient(180deg,#fcfaf6 0%,#f3ede3 100%); pointer-events: none; }
.arc-faq-section > .e-con-inner { position: relative; z-index: 1; width: 100% !important; max-width: var(--arc-content-max) !important; align-items: stretch !important; gap: 0 !important; }
.arc-faq-heading { width: 100% !important; max-width: 920px; margin: 0 auto clamp(2rem,3vw,2.75rem); align-self: center !important; text-align: center !important; }
.arc-faq-heading,
.arc-faq-heading > .e-con-inner,
.arc-faq-heading .elementor-widget-container {
  text-align: center !important;
}
.arc-faq-heading > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.arc-faq-heading .elementor-element,
.arc-faq-heading .elementor-widget-container { width: 100%; }
.arc-faq-heading h2,
.arc-faq-heading .elementor-heading-title,
.arc-faq-heading .arc-section-intro {
  margin-inline: auto;
  color: var(--arc-deep) !important;
  text-align: center !important;
}
.arc-faq-heading h2,
.arc-faq-heading .elementor-heading-title { margin-bottom: .35em !important; }
.arc-faq-heading .arc-section-intro { margin-bottom: 0 !important; color: var(--arc-graphite) !important; }
.arc-faq-heading .arc-eyebrow { width: auto; margin-inline: auto !important; padding-left: 0; display: inline-flex; align-items: center; justify-content: center; gap: .75rem; color: var(--arc-champagne); }
.arc-faq-heading .arc-eyebrow::before { position: static; width: 2rem; }
.arc-faq-heading .arc-eyebrow::after { content: ''; width: 2rem; height: 1px; background: currentColor; }
.arc-faq-section .elementor-widget-n-accordion, .arc-faq-section .elementor-widget-accordion { width: 100% !important; max-width: 1180px !important; margin-inline: auto !important; }
.arc-faq-section .elementor-accordion, .arc-faq-section .e-n-accordion { display: grid; gap: .85rem; }
.arc-faq-section .elementor-accordion-item, .arc-faq-section .e-n-accordion-item { overflow: hidden; background: rgba(255,255,255,.96); border: 0 !important; outline: 0 !important; border-radius: 20px !important; box-shadow: 0 12px 34px rgba(7,26,63,.06); }
.arc-faq-section .elementor-tab-title, .arc-faq-section .e-n-accordion-item-title { min-height: 72px; padding: 1.15rem 1.3rem 1.15rem 1.55rem !important; display: flex !important; align-items: center; justify-content: space-between; gap: 1rem; color: var(--arc-deep) !important; background: transparent !important; border: 0 !important; outline: 0 !important; border-radius: 20px !important; box-shadow: none !important; font-weight: 800 !important; transition: color .2s ease, background .2s ease, box-shadow .2s ease; }
.arc-faq-section .elementor-tab-title .elementor-accordion-title { color: var(--arc-deep) !important; }
.arc-faq-section .elementor-tab-title:hover, .arc-faq-section .elementor-tab-title.elementor-active, .arc-faq-section .e-n-accordion-item-title:hover, .arc-faq-section .e-n-accordion-item-title[aria-expanded='true'] { color: var(--arc-navy) !important; background: rgba(248,245,239,.72) !important; border: 0 !important; outline: 0 !important; box-shadow: none !important; }
.arc-faq-section .elementor-tab-title:hover .elementor-accordion-title, .arc-faq-section .elementor-tab-title.elementor-active .elementor-accordion-title { color: var(--arc-navy) !important; }
.arc-faq-section .elementor-tab-title .elementor-accordion-title { flex: 1 1 auto; }
.arc-faq-section .elementor-tab-title .elementor-accordion-icon { width: 36px; height: 36px; margin: 0 !important; flex: 0 0 36px; order: 2; float: none !important; display: inline-flex !important; align-items: center; justify-content: center; color: var(--arc-champagne) !important; background: var(--arc-warm); border-radius: 50%; }
.arc-faq-section .elementor-tab-title.elementor-active .elementor-accordion-icon { color: #fff !important; background: var(--arc-navy); }
.arc-faq-section .elementor-tab-content, .arc-faq-section .e-n-accordion-item > div[role='region'] { margin-top: 0; padding: .2rem 1.55rem 1.55rem !important; color: var(--arc-graphite); background: transparent !important; border: 0 !important; outline: 0 !important; border-radius: 0 0 20px 20px !important; font-size: 1rem; line-height: 1.75; }
.arc-disclaimer { max-width: none; margin: 1rem 0 4rem; padding: 1.05rem 1.3rem; background: var(--arc-soft); border-left: 3px solid var(--arc-champagne); border-radius: 0 16px 16px 0; font-size: .86rem; }
.arc-final-cta { width: 100% !important; max-width: none !important; margin: 0 !important; position: relative; color: #fff; background: radial-gradient(circle at 85% 20%, rgba(61,96,172,.62), transparent 31%), linear-gradient(120deg, var(--arc-navy), var(--arc-deep)); border-radius: 0; overflow: clip !important; }
.arc-final-cta::after { content: ''; position: absolute; top: -180px; right: -80px; width: 500px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; box-shadow: inset 0 0 0 52px rgba(255,255,255,.025), inset 0 0 0 104px rgba(255,255,255,.02); pointer-events: none; }
.arc-final-cta h2, .arc-final-cta p { position: relative; z-index: 1; color: #fff !important; }
.arc-final-cta .arc-eyebrow { color: var(--arc-gold-soft); }
.arc-final-cta > .e-con-inner { width: 100% !important; display: grid !important; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: clamp(2.5rem,6vw,6rem); }
.arc-final-cta-copy { max-width: 700px; }
.arc-final-cta-copy h2 { max-width: 17ch; font-size: clamp(2.4rem,4vw,4.3rem); }
.arc-final-cta-copy p { max-width: 56ch; color: #d5def3 !important; }
.arc-final-cta-actions {
  width: min(100%,560px) !important;
  max-width: 560px !important;
  margin-top: 0;
  position: relative;
  z-index: 2;
  align-self: center !important;
  justify-self: end !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.arc-final-cta-actions > .e-con-inner {
  width: 100% !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: repeat(2,minmax(210px,1fr));
  align-items: center !important;
  justify-content: center !important;
  gap: .75rem;
}
.arc-final-cta-actions > .e-con-inner > .elementor-element { width: 100% !important; }
.arc-final-cta-actions .elementor-button { width: 100%; min-width: 210px; pointer-events: auto; }
.arc-final-cta-actions a[href^="tel:"] { position: relative; z-index: 3; pointer-events: auto !important; }

/* Footer and utility content */
.arc-prefooter { display: none !important; }
#arc-global-footer, .arc-site-footer { width: 100% !important; max-width: none !important; margin-inline: 0 !important; }
.arc-site-footer { padding: 0 !important; color: #d8def1; background: #04132f; }
.arc-site-footer > .e-con-inner { width: 100% !important; max-width: none !important; margin-inline: 0 !important; padding-inline: 0 !important; gap: 0 !important; }
.arc-site-footer > .arc-footer-layout,
.arc-site-footer > .arc-footer-legal { width: 100% !important; max-width: var(--arc-content-max) !important; margin-inline: auto !important; padding-inline: 0 !important; }
.arc-site-footer .arc-footer-layout { width: calc(100% - var(--arc-content-inset) - var(--arc-content-inset)) !important; max-width: var(--arc-content-max) !important; margin-inline: auto !important; padding-top: clamp(3rem,5vw,4.5rem) !important; }
.arc-site-footer .arc-footer-legal { width: calc(100% - var(--arc-content-inset) - var(--arc-content-inset)) !important; max-width: var(--arc-content-max) !important; margin-inline: auto !important; }
.arc-footer-map-wrap, .arc-footer-map-wrap > .e-con-inner, .arc-footer-map-wrap .elementor-widget-shortcode, .arc-footer-map-wrap .elementor-widget-container { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.arc-footer-map { position: relative; width: 100%; height: clamp(430px,42vw,590px); overflow: hidden; background: #dfe7ed; }
.arc-footer-map iframe { width: 100%; height: 100%; display: block; border: 0; filter: saturate(.82) contrast(.94); }
.arc-footer-map-card { position: absolute; top: 50%; left: var(--arc-content-inset); z-index: 2; width: min(450px,calc(100% - var(--arc-page-gutter) - var(--arc-page-gutter))); padding: clamp(2rem,3.5vw,3rem); color: #fff; background: linear-gradient(145deg,rgba(16,47,115,.97),rgba(4,19,47,.98)); border: 1px solid rgba(255,255,255,.2); border-radius: 30px; box-shadow: 0 28px 70px rgba(7,26,63,.28); transform: translateY(-50%); }
.arc-footer-map-kicker { margin-bottom: 1rem !important; color: var(--arc-gold-soft) !important; font-size: .64rem; font-weight: 850; letter-spacing: .19em; text-transform: uppercase; }
.arc-site-footer .arc-footer-map-card h2 { max-width: 11ch; margin-bottom: 1.05rem; color: #fff !important; font-size: clamp(2.25rem,3.5vw,3.65rem); line-height: .98; }
.arc-footer-map-card address { color: #fff; font-style: normal; font-weight: 720; line-height: 1.55; }
.arc-footer-map-note { margin: .85rem 0 1.35rem !important; color: #cbd5ed !important; font-size: .82rem; }
.arc-footer-map-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.arc-footer-map-actions a { min-height: 48px; padding: .72rem 1rem; display: inline-flex; align-items: center; justify-content: center; gap: .75rem; color: var(--arc-deep) !important; background: #fff; border: 1px solid #fff; border-radius: 999px; font-size: .76rem; font-weight: 850; text-decoration: none; transition: color .2s ease,background .2s ease,transform .2s ease; }
.arc-footer-map-actions a + a { color: #fff !important; background: transparent; border-color: rgba(255,255,255,.55); }
.arc-footer-map-actions a:hover { color: var(--arc-deep) !important; background: var(--arc-gold-soft); border-color: var(--arc-gold-soft); transform: translateY(-2px); }
.arc-site-footer h3, .arc-site-footer .arc-footer-links h3, .arc-site-footer .arc-footer-visit h3 { margin-bottom: .8rem; color: #fff !important; font-family: var(--arc-sans) !important; font-size: .62rem !important; font-weight: 850 !important; letter-spacing: .18em; line-height: 1.2; text-transform: uppercase; }
.arc-footer-layout, .arc-footer-layout > .e-con-inner, .arc-footer-brand, .arc-footer-brand > .e-con-inner, .arc-footer-nav-wrap, .arc-footer-nav-wrap > .e-con-inner { width: 100% !important; max-width: none !important; margin-inline: 0 !important; padding-inline: 0 !important; }
.arc-footer-layout,
.arc-footer-layout > .e-con-inner { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,3fr) !important; gap: clamp(2rem,5vw,5rem); align-items: start !important; }
.arc-footer-layout > .arc-footer-brand,
.arc-footer-layout > .arc-footer-nav-wrap { min-width: 0; }
.arc-footer-logo { width: min(190px, 100%); }
.arc-footer-logo img { width: 100%; height: auto; display: block; }
.arc-footer-brand p { color: #b8c4e4; }
.arc-footer-tagline { max-width: 28ch; margin: 1.15rem 0 1.7rem !important; font-size: .86rem; }
.arc-footer-visit { display: flex; flex-direction: column; align-items: flex-start; gap: .38rem; font-size: .82rem; }
.arc-footer-visit address { color: #c6cfea; font-style: normal; line-height: 1.55; }
.arc-footer-visit a { color: #fff !important; text-decoration: none; }
.arc-footer-nav-wrap, .arc-footer-nav-wrap > .e-con-inner { width: 100% !important; }
.arc-footer-links { padding-block: .2rem; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1.5rem,4vw,3.5rem); }
.arc-footer-links > div { display: flex; flex-direction: column; gap: .5rem; }
@media (min-width: 921px) {
  .arc-footer-links > div:nth-child(2) { justify-self: center; }
  .arc-footer-links > div:last-child { justify-self: end; }
}
.arc-footer-links a, .arc-footer-visit a { width: fit-content; display: inline-block; transition: color .2s ease,transform .2s ease,text-decoration-color .2s ease; }
.arc-footer-links a { color: #d8def1 !important; font-size: .84rem; text-decoration: underline; text-decoration-color: transparent; text-underline-offset: .22rem; }
.arc-footer-links a:hover, .arc-footer-links a:focus-visible,
.arc-footer-visit a:hover, .arc-footer-visit a:focus-visible { color: var(--arc-gold-soft) !important; text-decoration-color: currentColor; transform: translateX(3px); }
.arc-footer-links address { font-style: normal; }
.arc-footer-legal { width: 100%; margin-top: 2.6rem !important; padding-top: 1.35rem; color: #aab5d4; border-top: 1px solid rgba(255,255,255,.16); font-size: .72rem; text-align: center; }
.arc-mobile-cta { display: none; }
.arc-hours { max-width: none; }
.arc-hours-list { margin: 0; }
.arc-hours-list div { padding: .75rem 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; border-bottom: 1px solid #dfe3eb; }
.arc-hours-list dt { color: var(--arc-deep); font-weight: 800; }
.arc-hours-list dd { margin: 0; }
.arc-contact-page-intro { width: 100% !important; max-width: none !important; margin: 0 !important; padding-block: clamp(3rem,4.5vw,4.75rem) !important; text-align: center; background: radial-gradient(circle at 85% 10%,rgba(223,207,184,.28),transparent 28%),linear-gradient(180deg,#fcfaf6,var(--arc-warm)); }
.arc-contact-page-intro > .e-con-inner { width: 100% !important; max-width: var(--arc-content-max) !important; }
.arc-contact-page-intro-copy { width: 100% !important; max-width: 980px !important; margin-inline: auto !important; text-align: center !important; }
.arc-contact-page-intro-copy > .e-con-inner { width: 100% !important; max-width: none !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
.arc-contact-page-intro-copy .elementor-element,
.arc-contact-page-intro-copy .elementor-widget-container { width: 100%; text-align: center !important; }
.arc-contact-page-intro-copy .arc-eyebrow { width: auto; margin-inline: auto !important; padding-left: 0; display: inline-flex; align-items: center; justify-content: center; gap: .75rem; }
.arc-contact-page-intro-copy .arc-eyebrow::before { position: static; width: 2rem; }
.arc-contact-page-intro-copy .arc-eyebrow::after { content: ''; width: 2rem; height: 1px; background: currentColor; }
.arc-contact-page-intro-copy h1 { max-width: 18ch; margin-inline: auto; font-size: clamp(3rem,5.2vw,5.65rem); text-align: center !important; }
.arc-contact-page-intro-copy .arc-lede { max-width: 68ch; margin: 0 auto !important; color: var(--arc-graphite); text-align: center !important; }
.arc-contact-form-section { width: 100% !important; max-width: none !important; margin: 0 !important; padding-block: clamp(3.5rem,5vw,5.75rem) !important; color: #fff; background: radial-gradient(circle at 12% 8%, rgba(65,101,177,.58), transparent 30%), linear-gradient(145deg,var(--arc-navy),var(--arc-deep)); border: 0; border-radius: 0; box-shadow: none; overflow: hidden !important; }
.arc-contact-form-section > .e-con-inner { width: 100% !important; display: grid !important; grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr); align-items: start; gap: clamp(2rem,5vw,5rem); }
.arc-contact-form-intro { position: sticky; top: 120px; }
.arc-contact-form-intro h2 { max-width: 15ch; color: #fff !important; }
.arc-contact-form-intro p { color: #d9e1f3; }
.arc-contact-form-intro .arc-eyebrow { color: var(--arc-gold-soft); }
.arc-contact-form-intro .arc-check-list { margin: 2rem 0 0; padding: 0; display: grid; gap: .8rem; color: #fff; list-style: none; }
.arc-contact-form-intro .arc-check-list li { position: relative; padding-left: 1.65rem; }
.arc-contact-form-intro .arc-check-list li::before { content: '✓'; position: absolute; top: 0; left: 0; color: var(--arc-gold-soft); font-weight: 850; }
.arc-contact-quick-links { margin-top: 1.65rem; display: flex; flex-flow: row wrap; gap: .7rem; }
.arc-contact-quick-links a { min-height: 48px; padding: .72rem 1rem; display: inline-flex; align-items: center; justify-content: center; color: #fff !important; border: 1px solid rgba(255,255,255,.56); border-radius: 999px; font-size: .76rem; font-weight: 850; text-decoration: none; transition: color .2s ease,background .2s ease,transform .2s ease; }
.arc-contact-quick-links a:hover { color: var(--arc-deep) !important; background: #fff; transform: translateY(-2px); }
.arc-contact-form-frame { min-width: 0; padding: clamp(.65rem,1.5vw,1rem); background: #fff; border: 1px solid rgba(223,207,184,.72); border-radius: 28px; box-shadow: 0 22px 60px rgba(0,0,0,.2); overflow: hidden !important; }
.arc-contact-form-frame .elementor-widget-shortcode, .arc-contact-form-frame .elementor-shortcode, .arc-contact-form-shell { width: 100%; }
.arc-contact-form-shell iframe { width: 100%; height: 1050px; min-height: 820px; display: block; border: 0; border-radius: 20px; background: #fff; }
.arc-contact-map-section { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; }
.arc-contact-map-section > .e-con-inner,
.arc-contact-map-section .elementor-widget-shortcode,
.arc-contact-map-section .elementor-shortcode { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; gap: 0 !important; }
.arc-contact-map-shell { width: 100%; height: clamp(440px,46vw,620px); position: relative; background: var(--arc-soft); overflow: hidden; }
.arc-contact-map-shell iframe { width: 100%; height: 100%; display: block; border: 0; filter: saturate(.8) contrast(1.04); }
.arc-contact-map-card { position: absolute; left: var(--arc-content-inset); bottom: clamp(1.4rem,3vw,3rem); width: min(430px,calc(100% - 2.5rem)); padding: clamp(1.45rem,2.5vw,2.15rem); color: #fff; background: linear-gradient(145deg,rgba(14,42,96,.97),rgba(5,20,50,.97)); border: 1px solid rgba(223,207,184,.42); border-radius: 26px; box-shadow: 0 24px 60px rgba(7,26,63,.28); backdrop-filter: blur(12px); overflow: hidden; }
.arc-contact-map-card::after { content: ''; position: absolute; top: -92px; right: -72px; width: 190px; height: 190px; border: 1px solid rgba(223,207,184,.2); border-radius: 50%; box-shadow: inset 0 0 0 34px rgba(255,255,255,.025); pointer-events: none; }
.arc-contact-map-card span { display: block; margin-bottom: .7rem; color: var(--arc-gold-soft); font-size: .63rem; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.arc-contact-map-card address { position: relative; z-index: 1; margin: 0 0 1.35rem; color: #d9e1f3; font-style: normal; }
.arc-contact-map-card address strong { display: block; margin-bottom: .55rem; color: #fff; font: 400 clamp(1.65rem,2.4vw,2.05rem)/1.05 var(--arc-serif); letter-spacing: -.025em; }
.arc-contact-map-card address em { display: block; color: #e3e9f7; font-size: .9rem; font-style: normal; font-weight: 720; }
.arc-contact-map-card address small { display: block; margin-top: .35rem; color: #bfcbe5; font-size: .8rem; }
.arc-contact-map-card a { position: relative; z-index: 1; width: 100%; min-height: 50px; padding: .55rem .6rem .55rem 1.05rem; display: inline-flex; align-items: center; justify-content: space-between; gap: .75rem; color: var(--arc-deep) !important; background: #fff; border-radius: 999px; font-size: .76rem; font-weight: 850; text-decoration: none; }
.arc-contact-map-card a b { width: 32px; height: 32px; flex: 0 0 32px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: var(--arc-navy); border-radius: 50%; font-size: .86rem; transition: color .2s ease,background .2s ease,transform .2s ease; }
.arc-contact-map-card a:hover { color: #fff !important; background: var(--arc-accent); }
.arc-contact-map-card a:hover b { color: var(--arc-navy); background: #fff; transform: translateX(2px); }
.arc-legal-content { max-width: none; }
.arc-legal-content h2 { margin-top: 1.5em; font-size: 2rem; }
.arc-empty-state { padding: 2rem; background: #fff; border: 1px solid var(--arc-hairline); border-radius: 20px; }
.arc-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.arc-post-grid article { padding: 1.6rem; background: #fff; border: 1px solid var(--arc-hairline); border-radius: 20px; }
.arc-post-grid h2 { font-size: 1.55rem; }

/* Motion */
@keyframes arcHeroFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes arcSpin { to { transform: rotate(360deg); } }
@keyframes arcKenBurns { from { transform: scale(1.065); } to { transform: scale(1); } }
@keyframes arcTicker { to { transform: translateX(-50%); } }
@keyframes arcMenuIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes arcMobileMenuIn { from { opacity: 0; transform: translateX(18px); } to { opacity: 1; transform: translateX(0); } }
body.arc-motion-ready .arc-reveal { opacity: 0; transform: translateY(30px); transition: opacity .7s ease, transform .8s cubic-bezier(.2,.65,.25,1); }
body.arc-motion-ready .arc-reveal.arc-reveal-visible { opacity: 1; transform: none; }

@media (max-width: 1260px) {
  .arc-desktop-nav { display: none; }
  .arc-header-actions { margin-left: auto; }
  .arc-dental-site button.arc-mobile-toggle { display: inline-flex !important; margin-left: 0; }
  .arc-header-inner { min-height: 86px; }
  .arc-brand { width: 118px; flex-basis: 118px; }
  .arc-brand img { max-height: 72px; }
  .arc-mobile-menu { top: 86px; height: calc(100dvh - 86px) !important; }
  .admin-bar .arc-mobile-menu { top: 118px; height: calc(100dvh - 118px) !important; }
  .arc-photo-mark { right: .75rem; }
}

@media (max-width: 920px) {
  .arc-hero-home .arc-hero-copy { width: min(780px,82%); }
  .arc-hero-home h1 { font-size: clamp(3.75rem,8vw,5.9rem); }
  .arc-hero > .e-con-inner { grid-template-columns: minmax(0,1fr) minmax(360px,1fr); gap: 2.25rem; }
  .arc-hero-media { min-height: 560px; }
  .arc-hero-badge { left: -1.2rem; width: 135px; height: 135px; }
  .arc-photo-split > .e-con-inner, .arc-photo-split.arc-photo-reverse > .e-con-inner { grid-template-columns: 1fr 1fr; gap: 3rem; }
  .arc-photo-split-media { min-height: 520px; }
  .arc-service-carousel > .e-con-inner { grid-template-columns: 1fr; gap: 2.6rem !important; }
  .arc-service-carousel::before { display: none; }
  .arc-service-carousel .arc-section-heading-row { padding-left: 0; }
  .arc-service-carousel .arc-section-heading-row > .e-con-inner { grid-template-columns: minmax(0,1fr) minmax(300px,.8fr); align-items: end; gap: 2.5rem; }
  .arc-service-carousel .arc-section-heading-copy h2 { max-width: 14ch; }
  .arc-service-carousel .arc-carousel-intro .arc-section-intro { max-width: 46ch; }
  .arc-service-card { grid-column: span 6; }
  .arc-service-card-1, .arc-service-card-2 { grid-column: span 6; }
  .arc-service-card-1 .arc-service-card-media, .arc-service-card-2 .arc-service-card-media { height: 310px; }
  .arc-service-carousel .arc-service-card { width: calc((100% - 1.15rem) / 2) !important; min-width: calc((100% - 1.15rem) / 2) !important; max-width: calc((100% - 1.15rem) / 2) !important; flex-basis: calc((100% - 1.15rem) / 2) !important; }
  .arc-image-card-grid > .e-con-inner { grid-template-columns: 1fr; max-width: 620px; margin-inline: auto; }
  .arc-image-card-copy { min-height: 0; }
  .arc-image-card-copy h3, .arc-image-card-copy p { min-height: 0; }
  .arc-service-editorial > .e-con-inner { grid-template-columns: minmax(240px,.68fr) minmax(0,1.32fr); gap: 3rem; }
  .arc-related-services-heading { grid-template-columns: 1fr; grid-template-areas: 'heading' 'intro'; gap: 0; }
  .arc-related-services-heading .arc-section-intro { max-width: 60ch; margin-top: .65rem !important; }
  .arc-footer-layout, .arc-footer-layout > .e-con-inner { grid-template-columns: 1fr !important; }
  .arc-footer-brand { max-width: 560px; }
  .arc-contact-form-section > .e-con-inner { grid-template-columns: 1fr; }
  .arc-contact-form-intro { position: static; }
  .arc-contact-form-intro h2 { max-width: 13ch; }
}

@media (max-width: 800px) {
  body.arc-dental-site { padding-bottom: calc(70px + env(safe-area-inset-bottom)); font-size: 16px; }
  body.arc-dental-site > header.elementor { top: 0; }
  .admin-bar.arc-dental-site > header.elementor { top: 46px; }
  .arc-utility { display: none; }
  .arc-header-inner { max-width: none; min-height: 76px; margin-inline: 0; padding: .45rem var(--arc-page-gutter); }
  .arc-brand { width: 98px; flex-basis: 98px; }
  .arc-brand img { max-height: 64px; }
  .arc-header-actions { display: none; }
  .arc-dental-site button.arc-mobile-toggle { margin-left: auto !important; }
  .arc-mobile-menu { top: 76px; height: calc(100dvh - 76px) !important; }
  .admin-bar .arc-mobile-menu { top: 122px; height: calc(100dvh - 122px) !important; }
  .arc-hero { min-height: 0; padding: 1rem var(--arc-page-gutter) 0; }
  .arc-hero > .e-con-inner { display: flex !important; flex-direction: column; gap: 0; }
  .arc-hero > .e-con-inner > .arc-hero-media { order: -1 !important; height: clamp(340px, 92vw, 520px) !important; min-height: clamp(340px, 92vw, 520px) !important; }
  .arc-hero-media { width: calc(100% - .75rem); align-self: center; border-radius: 210px 210px 24px 24px / 180px 180px 24px 24px !important; box-shadow: var(--arc-shadow-soft); animation: none; }
  .arc-hero-media::before { inset: 11px; }
  .arc-hero-image img { object-position: 50% 50%; }
  .arc-media-caption { right: .8rem; bottom: .8rem; left: .8rem; padding: .75rem .88rem; }
  .arc-hero-slider .arc-media-caption { right: 7.4rem; }
  .arc-hero-slider-controls { right: .8rem; bottom: .8rem; height: 48px; }
  .arc-dental-site .arc-hero-slider-controls button { width: 36px !important; height: 36px !important; }
  .arc-hero-slide-status { display: none; }
  .arc-media-caption span { font-size: .55rem; }
  .arc-media-caption strong { font-size: .84rem; }
  .arc-hero-copy { padding: 3.4rem 0 4.8rem; }
  .arc-hero-home { min-height: clamp(660px,calc(100svh - 76px),780px); padding: 0 var(--arc-page-gutter) !important; }
  .arc-hero-home::before { background: linear-gradient(180deg,rgba(4,16,42,.7),rgba(4,16,42,.91)); }
  .arc-hero-home > .e-con-inner { min-height: inherit; display: flex !important; flex-direction: row !important; align-items: flex-end !important; }
  .arc-hero-home > .e-con-inner > .arc-hero-media { position: absolute !important; inset: 0 !important; order: initial !important; width: 100% !important; height: 100% !important; min-height: 100% !important; border-radius: 0 !important; }
  .arc-hero-home .arc-hero-copy { width: 100%; padding: 6rem 0 7.2rem; }
  .arc-hero-home h1 { max-width: 12.5ch !important; font-size: clamp(3.25rem,13vw,5.15rem); }
  .arc-hero-home .arc-lede { max-width: 42ch; color: rgba(255,255,255,.88) !important; }
  .arc-hero-home .arc-actions > .e-con-inner { display: grid !important; grid-template-columns: 1fr 1fr; width: min(100%,560px) !important; }
  .arc-hero-home .arc-actions > .e-con-inner > .elementor-element, .arc-hero-home .arc-actions .elementor-button { width: 100% !important; min-width: 0; }
  .arc-hero-home .arc-media-caption { display: none; }
  .arc-hero-home .arc-hero-slider-controls { right: var(--arc-page-gutter); bottom: 1.15rem; }
  .arc-home-welcome .arc-photo-split-image { border-radius: 30px 180px 30px 30px / 30px 160px 30px 30px !important; }
  .arc-home-welcome .arc-photo-split-media::after { right: 1rem; bottom: -1.25rem; left: 1rem; min-width: 0; text-align: center; }
  .arc-dental-site h1 { max-width: 100%; font-size: clamp(2.85rem, 12.5vw, 4.5rem); }
  .arc-dental-site h2 { max-width: 100%; font-size: clamp(2.35rem, 10.5vw, 3.8rem); }
  .arc-trust-bar ul { grid-template-columns: 1fr 1fr; }
  .arc-service-facts ul { grid-template-columns: 1fr; }
  .arc-photo-split > .e-con-inner, .arc-photo-split.arc-photo-reverse > .e-con-inner { display: flex !important; flex-direction: column; gap: 3.1rem; }
  .arc-photo-reverse .arc-photo-split-media, .arc-photo-reverse .arc-photo-split-copy { order: initial; }
  .arc-photo-split-media { width: 100%; height: clamp(390px,110vw,560px) !important; min-height: clamp(390px,110vw,560px) !important; flex: 0 0 auto; }
  .arc-photo-split-image { border-radius: 210px 210px 24px 24px / 190px 190px 24px 24px !important; }
  .arc-photo-mark { right: .5rem; bottom: -1.5rem; width: 125px; height: 125px; }
  .arc-dark-story { margin-inline: 0; width: 100%; border-radius: 0; }
  .arc-section-heading-row > .e-con-inner { grid-template-columns: 1fr; align-items: start; gap: .8rem; }
  .arc-service-carousel { padding-block: clamp(4.25rem,16vw,5.5rem) !important; }
  .arc-service-carousel .arc-section-heading-row > .e-con-inner { grid-template-columns: 1fr; gap: .8rem; }
  .arc-service-carousel .arc-section-heading-copy,
  .arc-service-carousel .arc-carousel-intro,
  .arc-service-carousel .arc-section-heading-copy > .e-con-inner,
  .arc-service-carousel .arc-carousel-intro > .e-con-inner { align-items: flex-start !important; justify-content: flex-start !important; text-align: left !important; }
  .arc-service-carousel .arc-section-heading-copy h2,
  .arc-service-carousel .arc-carousel-intro .arc-section-intro { margin-inline: 0 !important; text-align: left !important; }
  .arc-service-carousel .arc-carousel-controls { justify-content: flex-start; }
  .arc-service-card, .arc-service-card-1, .arc-service-card-2 { grid-column: span 12; }
  .arc-service-card-media, .arc-service-card-1 .arc-service-card-media, .arc-service-card-2 .arc-service-card-media { height: clamp(270px,74vw,380px); }
  .arc-service-carousel .arc-service-card { width: 100% !important; min-width: 100% !important; max-width: 100% !important; flex-basis: 100% !important; }
  .arc-service-carousel .arc-service-card-copy h3, .arc-service-carousel .arc-service-card-copy p { min-height: 0; }
  .arc-carousel-intro { align-items: flex-start; }
  .arc-carousel-controls { justify-content: flex-start; }
  .arc-card-grid > .e-con-inner { grid-template-columns: 1fr; }
  .arc-plan-grid > .e-con-inner { grid-template-columns: 1fr; }
  .arc-plan-section .arc-card, .arc-plan-section .arc-card h3, .arc-plan-section .arc-card p { min-height: 0; }
  .arc-split > .e-con-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .arc-service-editorial > .e-con-inner { grid-template-columns: 1fr; gap: 2.25rem; }
  .arc-service-editorial-heading { position: static; }
  .arc-service-editorial-heading h2 { max-width: 14ch; }
  .arc-related-services-grid > .e-con-inner { grid-template-columns: 1fr; }
  .arc-related-service-link { padding: 1.55rem; }
  .arc-faq-section { width: 100%; margin-inline: 0; border-radius: 0; }
  .arc-faq-heading { margin-bottom: 2.3rem; }
  .arc-final-cta { width: 100%; margin-inline: 0; text-align: center; border-radius: 0; }
  .arc-final-cta > .e-con-inner { grid-template-columns: 1fr; gap: 1.8rem; }
  .arc-final-cta-copy, .arc-final-cta-copy h2, .arc-final-cta-copy p { margin-inline: auto; }
  .arc-final-cta .arc-eyebrow { padding-left: 0; }
  .arc-final-cta .arc-eyebrow::before { display: none; }
  .arc-final-cta-actions {
    justify-self: center !important;
    justify-content: center !important;
  }
  .arc-final-cta-actions > .e-con-inner { justify-content: center; }
  .arc-final-cta-actions > .e-con-inner { grid-template-columns: repeat(2,minmax(0,1fr)); width: 100% !important; }
  .arc-final-cta-actions .elementor-button,
  .arc-final-cta-actions .arc-btn-light .elementor-button,
  .arc-final-cta-actions .arc-btn-outline-light .elementor-button { min-width: 0; padding: .65rem .7rem .65rem 1rem !important; }
  .arc-footer-links { grid-template-columns: 1fr 1fr; }
  .arc-footer-map { height: 610px; }
  .arc-footer-map-card { top: auto; right: var(--arc-page-gutter); bottom: 1.35rem; left: var(--arc-page-gutter); width: auto; padding: 1.85rem; transform: none; }
  .arc-site-footer .arc-footer-map-card h2 { font-size: clamp(2.15rem,9vw,3.2rem); }
  .arc-site-footer .arc-footer-layout, .arc-site-footer .arc-footer-legal { width: calc(100% - var(--arc-page-gutter) - var(--arc-page-gutter)) !important; }
  .arc-contact-form-section { width: 100% !important; margin-inline: 0 !important; border-radius: 0; }
  .arc-contact-form-frame { padding: .45rem; border-radius: 22px; }
  .arc-contact-form-shell iframe { height: 1220px; min-height: 900px; border-radius: 17px; }
  .arc-contact-map-shell { height: 540px; }
  .arc-contact-map-card { left: var(--arc-page-gutter); bottom: 1.25rem; }
  .arc-post-grid { grid-template-columns: 1fr; }
  .arc-mobile-cta { position: fixed; right: 0; bottom: 0; left: 0; z-index: 10001; min-height: 70px; padding-bottom: env(safe-area-inset-bottom); display: grid; grid-template-columns: 1fr 1fr; background: var(--arc-deep); box-shadow: 0 -8px 25px rgba(7,26,63,.18); }
  .arc-mobile-cta a { min-height: 70px; padding: .45rem .65rem; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: .05rem; color: #fff !important; border-top: 1px solid rgba(255,255,255,.2); font-size: .72rem; line-height: 1.2; text-decoration: none; }
  .arc-mobile-cta a + a { background: var(--arc-accent); }
  .arc-mobile-cta span { font-size: .56rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; opacity: .78; }
  .arc-mobile-cta strong { font-size: .78rem; font-weight: 850; letter-spacing: .02em; }
}

@media (max-width: 480px) {
  .arc-section { --arc-space: 4.9rem; }
  .arc-trust-bar ul { grid-template-columns: 1fr; gap: .62rem; }
  .arc-actions,
  .arc-actions > .e-con-inner { align-items: center; }
  .arc-actions > .elementor-element,
  .arc-actions > .e-con-inner > .elementor-element {
    width: auto !important;
    max-width: 100%;
    flex: 0 1 auto;
  }
  .arc-actions .elementor-button {
    width: auto;
    max-width: 100%;
  }
  .arc-hero-copy .arc-actions > .e-con-inner { grid-template-columns: 1fr; }
  .arc-hero-home .arc-actions > .e-con-inner { grid-template-columns: 1fr; }
  .arc-hero-copy .arc-actions-3 > .e-con-inner > .arc-btn-text { grid-column: auto; }
  .arc-hero-copy .arc-actions > .e-con-inner > .elementor-element,
  .arc-hero-copy .arc-actions .elementor-button { width: 100% !important; }
  .arc-photo-split-copy .arc-actions > .e-con-inner,
  .arc-photo-split-copy .arc-actions-1 > .e-con-inner { grid-template-columns: 1fr; }
  .arc-photo-split-copy .arc-actions > .e-con-inner > .elementor-element,
  .arc-photo-split-copy .arc-actions .elementor-button { width: 100% !important; }
  .arc-final-cta-actions > .e-con-inner {
    display: flex !important;
    flex-flow: row wrap;
  }
  .arc-final-cta-actions > .e-con-inner > .elementor-element {
    width: auto !important;
    flex: 1 1 210px;
  }
  .arc-final-cta-actions .elementor-button { width: 100%; }
  .arc-contact-quick-links { display: grid; grid-template-columns: 1fr; }
  .arc-contact-quick-links a { width: 100%; }
  .arc-contact-map-shell { height: 590px; }
  .arc-mobile-menu-actions { grid-template-columns: 1fr; }
  .arc-footer-links { grid-template-columns: 1fr; }
  .arc-footer-map { height: 640px; }
  .arc-footer-map-actions { display: grid; grid-template-columns: 1fr; }
  .arc-footer-map-actions a { width: 100%; }
  .arc-footer-logo { width: 155px; }
  .arc-media-caption strong { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  body.arc-motion-ready .arc-reveal { opacity: 1; transform: none; }
  .arc-trust-track { width: 100%; animation: none; }
  .arc-trust-track ul { width: 100%; flex-wrap: wrap; justify-content: center; }
  .arc-trust-track ul[aria-hidden='true'] { display: none; }
}

@media print {
  body.arc-dental-site > header.elementor, .arc-mobile-cta, .arc-prefooter { display: none !important; }
  body.arc-dental-site { padding: 0; color: #000; background: #fff; }
}
