.about-grid > img { max-height: 510px; margin-inline: auto; object-fit: contain; box-shadow: none; }
.appointment-panel { display: grid; grid-template-columns: 1.2fr .8fr; gap: 60px; align-items: start; }
.appointment-copy h2 { max-width: 650px; margin-bottom: 16px; }
.appointment-card { margin-top: 5px; }
.appointment-copy > p:not(.eyebrow) { max-width: 610px; color: var(--muted); font-size: 1.08rem; }
.appointment-note { margin: 22px 0 0; color: var(--muted); font-size: .92rem; }
.appointment-card { padding: 32px; background: var(--white); border: 1px solid rgba(23, 33, 47, .08); border-radius: 16px; box-shadow: var(--shadow); }
.appointment-card-label { margin: 0 0 5px; color: var(--orange-dark); font-size: .78rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.appointment-card h3 { margin: 0 0 8px; font-size: 1.7rem; }
.appointment-card > p:not(.appointment-card-label) { margin: 0 0 22px; color: var(--muted); }
.appointment-button { width: 100%; }
.contact-card { display: block; margin-top: 20px; padding: 0; box-shadow: none; background: transparent; }
.contact-card { border-top: 1px solid rgba(23, 33, 47, .12); padding-top: 16px; }
.contact-card summary { cursor: pointer; color: var(--muted); font-weight: 700; }
.contact-details { display: grid; gap: 14px; margin-top: 18px; }
.contact-details p { margin: 0; font-size: .95rem; }
.contact-details strong { color: var(--ink); font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; }
.contact-details a { display: block; color: var(--muted); font-weight: 600; }
.cookie-notice { position: fixed; z-index: 10000; left: 50%; bottom: 22px; display: flex; align-items: center; gap: 22px; width: min(500px, calc(100% - 30px)); padding: 20px; border: 1px solid rgba(23, 33, 47, .12); border-radius: 14px; background: #fff; box-shadow: 0 18px 55px rgba(23, 33, 47, .20); transform: translateX(-50%); pointer-events: auto; }
.cookie-notice strong { display: block; color: var(--ink); }
.cookie-notice p { margin: 4px 0 6px; color: var(--muted); font-size: .88rem; line-height: 1.45; }
.cookie-notice a { color: var(--orange-dark); font-size: .88rem; font-weight: 700; }
.cookie-notice-form { margin: 0; flex: 0 0 auto; }
.cookie-notice-button { display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 7px; padding: 11px 17px; background: var(--ink); color: #fff; cursor: pointer; font: inherit; font-weight: 700; text-decoration: none; }
.cookie-notice-button:hover { background: #314056; }
@media (max-width: 520px) { .cookie-notice { left: 50%; bottom: 15px; flex-direction: column; align-items: stretch; gap: 14px; } .cookie-notice-button { width: 100%; } }
@media (max-width: 800px) { .appointment-panel { grid-template-columns: 1fr; gap: 30px; } }
