/* Repairs around the recovered 2010–2017 layout; original design remains authoritative. */
.website { background-color: #fff; display: flow-root; }
.content { display: flow-root; }
.main-holder { min-height: 360px; }
.component-view { background: white; color: #222; padding: 24px; max-width: 890px; margin: 20px auto; }
.main-menu ul ul { display: none; }
.main-menu li:hover > ul, .main-menu li:focus-within > ul { display: block; visibility: visible; }
.main-menu a:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 2px solid #107fae; outline-offset: 3px; }
.restored-gallery { position: relative; width: 248px; height: 200px; margin: auto; overflow: hidden; }
.restored-gallery > img { width: 248px; height: 200px; object-fit: contain; }
.restored-gallery button { position: absolute; bottom: 5px; left: 6px; background: white; color: #0a6f9a; border: 1px solid #107fae; cursor: pointer; font-size: 20px; }
.restored-gallery button + button { left: auto; right: 6px; }
#frontpageslide { height: auto !important; overflow: visible !important; }
#frontpageslide ul { position: static !important; height: auto !important; margin: 0; padding: 0; list-style: none; }
#frontpageslide li { position: static !important; display: none; padding: 12px; }
#frontpageslide li:first-child { display: block; }
.formNoError { display: none; }
.form-status, .unavailable-media { padding: 8px; color: #155674; background: #edf6fb; border: 1px solid #107fae; }
.lightbox { border: 1px solid #107fae; padding: 12px; background: white; max-width: 90vw; max-height: 90vh; }
.lightbox::backdrop { background: rgb(0 0 0 / 70%); }
.lightbox img { display: block; max-width: 85vw; max-height: 78vh; object-fit: contain; }
.lightbox button { display: block; margin-left: auto; cursor: pointer; }
body { min-width: 968px; }
.lamatic-card { box-sizing: border-box; width: 100%; margin: 0 0 24px; padding: 18px; border: 1px solid #107fae; border-radius: 10px; background: #f8f8f8; color: #222; }
.lamatic-profile { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 18px; align-items: start; }
.lamatic-portrait { display: block; background: #111; border-radius: 6px; overflow: hidden; }
.lamatic-portrait img { display: block; width: 100%; height: auto; }
.lamatic-awards { display: flex; gap: 5px; margin-top: 8px; padding: 6px; border-radius: 5px; background: #101214; }
.lamatic-awards img { display: block; width: 29px; height: 29px; object-fit: contain; }
.lamatic-title { margin: 0; font-size: 22px; font-weight: bold; line-height: 1.2; }
.lamatic-title a { text-decoration: none; }
.lamatic-title span { display: block; margin-top: 4px; font-size: 18px; }
.lamatic-experience { margin: 12px 0; color: #3d5968; }
.lamatic-copy blockquote { margin: 14px 0 18px; font-size: 15px; font-style: italic; line-height: 1.5; }
.lamatic-copy blockquote p { margin: 0 0 8px; }
.lamatic-call { display: inline-block; box-sizing: border-box; min-height: 44px; padding: 13px 14px; border-radius: 5px; color: #fff; background: #0a6f9a; font-weight: bold; text-decoration: none; }
.lamatic-call:hover { background: #075777; }
.lamatic-reviews { margin: 10px 0 0; font-size: 12px; }
.lamatic-contact { margin-top: 16px; padding-top: 12px; border-top: 1px solid #c9dce5; font-style: normal; line-height: 1.5; }
.lamatic-contact p { margin: 0 0 5px; overflow-wrap: anywhere; }
.lamatic-contact p:last-child { margin-bottom: 0; }
@media (max-width: 640px) {
  .lamatic-card { width: calc(100vw - 70px); padding: 16px; }
  .lamatic-profile { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .lamatic-media { width: 180px; margin: 0 auto; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; } }
