@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@500;700;800&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');
/* ===== 2026-11 group theme for implant / orthodontics sites (same voice as the clinic HPs) ===== */
:root{--ink:#0c2133;--paper:#fbfcfd;--line:#d3dce3;--muted:#5b6873;--cta:#f3c22b;--cta-ink:#231a00;--gold:#8a6a12;--serif:"Shippori Mincho B1","Hiragino Mincho ProN","Yu Mincho",serif;--sans:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
body[data-clinic]{--accent:#0c2133!important;--tint:#eaf0f4!important}
body{font-family:var(--sans);font-weight:500;background:var(--paper);color:#1e2a35;letter-spacing:.03em}
h1,h2,h3{font-family:var(--serif);font-weight:700;color:var(--ink)}
.story-hero h1{font-weight:800;letter-spacing:.04em}
:focus-visible{outline:3px solid var(--cta)!important;outline-offset:3px}

/* top line + header */
.topline{background:#081826}
.header{background:rgba(251,252,253,.96);border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}
.specialty-title{color:var(--ink)}
.nav a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
.main-return-bar{background:var(--tint)}
.main-return-link{color:var(--ink);border-color:var(--line)}

/* booking buttons: one colour for "reserve" everywhere in the group */
a.button:not(.outline){background:var(--cta)!important;border-color:var(--cta)!important;color:var(--cta-ink)!important;border-radius:999px;font-weight:700;transition:background .15s ease}
a.button:not(.outline):hover{background:#ffd23d!important;color:var(--cta-ink)!important}
a.button *{color:inherit}
.button.outline{background:transparent!important;border:1.5px solid var(--ink)!important;color:var(--ink)!important;border-radius:999px;font-weight:700}
.button.outline:hover{background:var(--tint)!important}
button.button{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;border-radius:999px}
.cost-story{background:var(--tint)!important}

/* eyebrows and accents */
.eyebrow{color:var(--gold)}
.eyebrow::before{background:var(--gold)}
.text-link:hover{color:var(--gold)}

/* dark bands */
.patient-nav{background:var(--ink)}
.patient-nav a:hover{background:#163651}
.contact{background:var(--ink)!important;color:#fff}
.contact h2,.contact h3{color:#fff}
.contact .eyebrow{color:var(--cta)}
.contact a:not(.button){color:#fff}

/* footer */
.footer,footer.footer{background:#081826;color:rgba(255,255,255,.82)}
.footer a,.footer strong,.footer .brand{color:#fff}
.footer-bottom{border-color:rgba(255,255,255,.16)!important;color:rgba(255,255,255,.6)}

/* mobile booking bar */
.mobile-cta{background:#fff;border-top:1px solid var(--line)}
.mobile-cta .book{background:var(--cta)!important;color:var(--cta-ink)!important;font-weight:700}
.mobile-cta .tel{color:var(--ink);border:1px solid var(--line)}
.footer p,.footer span,.footer small,.footer address,.footer li{color:rgba(255,255,255,.74)}
.footer a:hover{color:var(--cta)}
