/* Highland Oak Dental: shared visual refresh (2026-10-18). Loaded last on every page; overrides only. */
:root{
  --hod-navy:#233462; --hod-navy-dk:#1c2a4f; --hod-gold:#bc8e45; --hod-gold-dk:#aa803d;
  --hod-teal:#236f7b; --hod-teal-dk:#184b53; --hod-mist:#b0c2c2; --hod-ink:#1f2633; --hod-muted:#5b6475;
  --hod-bg-soft:#f6f4ef; --hod-radius:14px; --hod-shadow:0 10px 30px rgba(28,42,79,.10); --hod-shadow-sm:0 4px 14px rgba(28,42,79,.08);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{color:var(--hod-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img[width][height]{height:auto}
p{text-wrap:pretty}
h1,h2,h3,.h2{text-wrap:balance}
#page h2,#page h3{color:var(--hod-navy)}
#page p,#page li{line-height:1.8}
#page a:not([class]){color:var(--hod-teal);text-decoration-thickness:1px;text-underline-offset:3px}
#page a:not([class]):hover{color:var(--hod-gold-dk)}
::selection{background:var(--hod-gold);color:#fff}
:focus-visible{outline:3px solid var(--hod-gold);outline-offset:3px;border-radius:6px}

/* Buttons */
.btn,.btn-alt,.btn-thr,a.btn,button.btn-alt{border-radius:999px!important;letter-spacing:.3px;font-weight:500;
  transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease!important}
.btn:hover,.btn-alt:hover,.btn-thr:hover{transform:translateY(-1px);box-shadow:var(--hod-shadow-sm)}
.btn-alt,button.book-online{background-color:var(--hod-gold);border-color:var(--hod-gold);color:#fff}
.btn-alt:hover,button.book-online:hover{background-color:var(--hod-gold-dk);border-color:var(--hod-gold-dk);color:#fff}

/* Header: make Book Online the primary action, Request an Appointment secondary */
header .book-online{box-shadow:0 6px 18px rgba(188,142,69,.35)}
header .hd-info .pho{white-space:nowrap}
header a.btn-alt.ra:not(.book-online){background:transparent!important;border:2px solid rgba(255,255,255,.85)!important;color:#fff!important}
header a.btn-alt.ra:not(.book-online):hover{background:#fff!important;color:var(--hod-navy)!important}

/* Cards & media */
.services-grid figure,.split-wrap #blog .feed > *,.block .elem{border-radius:var(--hod-radius);transition:transform .2s ease,box-shadow .2s ease}
.services-grid figure:hover,.split-wrap #blog .feed > *:hover{transform:translateY(-3px);box-shadow:var(--hod-shadow)}
.split figure img,.services-grid figure img,.block .elem img{box-shadow:var(--hod-shadow-sm)}
.accordion h3{border-radius:10px}

/* Shared CTA block (hero / inner pages / end of blog posts) */
.hod-cta{margin:28px auto;padding:22px 22px 18px;background:var(--hod-bg-soft);border:1px solid rgba(188,142,69,.25);border-radius:var(--hod-radius);
  box-shadow:var(--hod-shadow-sm);text-align:center;max-width:860px}
.hod-cta__title{font:400 26px/1.2 "Josefin Sans",sans-serif;color:var(--hod-navy);margin:0 0 6px}
.hod-cta__text{margin:0 0 14px;color:var(--hod-muted)}
.hod-cta__btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0 0 12px}
.hod-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 26px;border-radius:999px;
  font:600 15px/1.2 Poppins,sans-serif;text-decoration:none!important;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease}
.hod-btn--book{background:var(--hod-gold);color:#fff!important;box-shadow:0 6px 18px rgba(188,142,69,.35)}
.hod-btn--book:hover{background:var(--hod-gold-dk);transform:translateY(-1px)}
.hod-btn--call{background:#fff;color:var(--hod-navy)!important;border:2px solid var(--hod-navy)}
.hod-btn--call:hover{background:var(--hod-navy);color:#fff!important}
.hod-trust{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;font-size:13.5px;color:var(--hod-muted)}
.hod-trust li{margin:0!important;padding:0 0 0 20px!important;position:relative;line-height:1.5!important;background:none!important}
.hod-trust li::before{content:"";position:absolute;left:0;top:.35em;width:12px;height:7px;border-left:2px solid var(--hod-teal);border-bottom:2px solid var(--hod-teal);transform:rotate(-45deg)}
.hod-cta--hero{background:transparent;border:0;box-shadow:none;padding:0;margin:4px auto 0;text-align:center}
.hod-cta--hero .hod-cta__btns{justify-content:center;margin-bottom:14px}
.hod-cta--hero .hod-btn--call{background:transparent;color:#fff!important;border-color:#fff}
.hod-cta--hero .hod-btn--call:hover{background:#fff;color:var(--hod-navy)!important}
.hod-cta--hero .hod-trust{justify-content:center;color:rgba(255,255,255,.92);max-width:460px;margin:0 auto!important}
.hod-cta--hero .hod-trust li::before{border-color:#fff}
.book-cta .btn{margin:6px}

/* Sticky mobile action bar */
.hod-mbar{display:none}
@media (max-width:1024px){
  .hod-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9999;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.97);box-shadow:0 -6px 20px rgba(28,42,79,.15);backdrop-filter:saturate(1.4) blur(6px)}
  .hod-mbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;font:600 15px/1 Poppins,sans-serif;text-decoration:none}
  .hod-mbar .hod-mbar-call{background:var(--hod-navy);color:#fff}
  .hod-mbar .hod-mbar-book{background:var(--hod-gold);color:#fff}
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
}
@media (max-width:590px){
  .dividerLead,.h2,h2{font-size:32px;line-height:1.1}
  #page{padding-left:20px;padding-right:20px}
  .hod-cta{margin:22px auto;padding:18px 14px 14px}
  .hod-cta__title{font-size:22px}
  .hod-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
