body.zahnarzt { --ink: #203d45; --paper: #fff; --accent: #146576; --line: #c9dce1; --surface: #e9f6f8; --display-font: 'Trebuchet MS', Arial, sans-serif; --display-weight: 600; --button-radius: 6px; }
.wordmark strong { font: 700 1.35rem 'Trebuchet MS',sans-serif; }
.wordmark span { color: #146576; }
.practice-photo { position: relative; }
.practice-photo img { height: 290px; object-position: center 45%; }
.practice-photo > span { position: absolute; bottom: 14px; right: 24px; background: #fffffff0; padding: 8px 14px; font-size: .72rem; }
.practice-hero { background: #e9f6f8; }
.practice-welcome { display: grid; grid-template-columns: 1.3fr 1fr; align-items: end; gap: 60px; padding-block: 38px 48px; }
.practice-welcome h1 { font-size: 3.25rem; }
.practice-welcome .eyebrow { font-size: .7rem; }
.practice-welcome p { max-width: 42ch; }
.practice-welcome .button { margin-top: 22px; }
.practice-shortcuts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); padding-block: 26px; gap: 28px; border-bottom: 1px solid var(--line); }
.practice-shortcuts a { display: flex; gap: 14px; align-items: center; text-decoration: none; min-height: 48px; }
.practice-shortcuts a > span:first-child { font-size: .7rem; color: #146576; }
.practice-shortcuts strong { font-size: .85rem; }
.practice-shortcuts a > span:last-child { margin-left: auto; }
.practice-treatments { display: grid; grid-template-columns: 1fr 1.1fr; gap: 90px; }
.practice-treatments h2 { margin-bottom: 24px; }
.practice-treatments p { max-width: 44ch; }
.practice-treatments details { padding-block: 24px; }
.practice-treatments summary { font-size: 1.2rem; }
.practice-treatments details p { font-size: .95rem; }
.practice-about { background: #f1f6eb; padding-block: 64px; }
.practice-about-inner { display: grid; grid-template-columns: 1.1fr 1fr; gap: 64px; align-items: center; }
.practice-about img { aspect-ratio: 4/3; border-radius: 6px; }
.practice-about h2 { margin-bottom: 24px; }
.practice-appointment { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; }
.practice-appointment h2 { margin-bottom: 24px; }
.practice-appointment form { border-top: 4px solid var(--accent); padding-top: 28px; }
.first-visit { padding-top: 30px; margin-top: 32px; border-top: 1px solid var(--line); }
.first-visit h3 { font-size: 1.1rem; margin-bottom: 12px; }
.first-visit p { font-size: .9rem; }
.patient-note { padding: 16px; background: #e9f6f8; font-size: .85rem; }
.practice-information { background: #e9f6f8; }
.practice-information-grid { display: grid; grid-template-columns: 1fr 1.1fr .9fr; gap: 48px; }
.practice-information h3 { margin-bottom: 24px; font-size: 1.1rem; }
.practice-information p { font-size: .9rem; }
.practice-hours { margin: 0; font-size: .85rem; }
.practice-hours div { display: flex; gap: 12px; justify-content: space-between; padding-block: 12px; border-bottom: 1px solid #b8d1d8; }
.practice-hours dd { margin: 0; flex-shrink: 0; }
.practice-faq { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; align-items: start; }
.practice-faq h2 { font-size: 2rem; margin-bottom: 20px; }
.emergency-note { background: #f7f2e8; padding: 28px; border-left: 4px solid #ad8742; }
.emergency-note p { font-size: .9rem; margin-top: 16px; }
.page-footer { background: #203d45; color: #f3fafb; --line: #45656d; }
@media (max-width: 1024px) { .practice-welcome { gap: 32px; } .practice-welcome h1 { font-size: 2.7rem; } .practice-treatments, .practice-appointment, .practice-about-inner, .practice-faq { gap: 40px; } .practice-information-grid { gap: 24px; } }
@media (max-width: 760px) { .practice-welcome, .practice-treatments, .practice-appointment, .practice-about-inner, .practice-information-grid, .practice-faq { grid-template-columns: 1fr; gap: 32px; } .practice-photo img { height: 230px; } .practice-welcome h1 { font-size: 2.6rem; } .practice-shortcuts { grid-template-columns: 1fr; gap: 0; padding-block: 12px; } .practice-shortcuts a { padding-block: 12px; border-bottom: 1px solid var(--line); } .practice-shortcuts a:last-child { border-bottom: 0; } .practice-about { padding-block: 48px; } .practice-information-grid > div + div { border-top: 1px solid #b8d1d8; padding-top: 28px; } }
@media (max-width: 380px) { .wordmark strong { font-size: 1.12rem; } .practice-welcome h1 { font-size: 2.25rem; } .practice-photo > span { right: 12px; font-size: .65rem; } }
