
/* LektorOffice: restore readable service pages while retaining the archived GeneratePress palette. */
.entry-content { font-size: 16px; line-height: 1.72; }
.entry-content p { margin: 0 0 1.05em; }
.entry-content h2 { margin: 1.7em 0 .6em; color: #222; line-height: 1.25; }
.entry-content h3 { margin: 1.35em 0 .55em; line-height: 1.3; }
.entry-content ul, .entry-content ol { padding-left: 1.35em; margin: .7em 0 1.25em; }
.entry-content li { margin: 0 0 .48em; }
.entry-content img { max-width: 100%; height: auto; }
.page-header-image { margin: 18px auto 26px; }
.page-header-image img { display: block; width: 100%; max-height: 360px; object-fit: cover; border-radius: 8px; }
.lo-home { color: #333; }
.lo-hero { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr); align-items: center; gap: 28px; padding: 26px; margin: 6px 0 34px; background: #f4f7fa; border: 1px solid #e5ebf0; border-radius: 10px; }
.lo-hero h1 { margin: .2em 0 .5em; color: #222; font-size: clamp(30px,4vw,42px); line-height: 1.13; }
.lo-hero p { margin-bottom: 1em; }
.lo-eyebrow { color: #1e73be; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.lo-hero figure { margin: 0; overflow: hidden; border-radius: 8px; }
.lo-hero img { display: block; width: 100%; aspect-ratio: 1.55; object-fit: cover; }
.lo-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 19px 0 10px; }
.lo-button { display: inline-block; padding: 11px 16px; border: 1px solid #1e73be; border-radius: 4px; background: #1e73be; color: #fff !important; text-decoration: none; font-weight: 600; }
.lo-button:hover, .lo-button:focus { background: #155e9d; color: #fff !important; }
.lo-button-secondary { background: transparent; color: #1e73be !important; }
.lo-button-secondary:hover, .lo-button-secondary:focus { background: #e9f2fa; color: #155e9d !important; }
.lo-section-title { margin: 0 0 14px !important; }
.lo-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 12px 0 32px; }
.lo-card { min-width: 0; padding: 18px; border: 1px solid #e1e7ec; border-top: 3px solid #1e73be; background: #fff; }
.lo-card h3 { margin: 0 0 9px !important; font-size: 19px; }
.lo-card p { margin-bottom: 12px; }
.lo-card a { font-weight: 600; }
.lo-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; padding: 20px 0 4px; border-top: 1px solid #e1e7ec; }
.lo-benefits h3 { margin-top: 0 !important; }
.lo-callout { margin: 24px 0; padding: 17px 19px; border-left: 4px solid #1e73be; background: #f4f7fa; }
.lo-callout p:last-child { margin-bottom: 0; }
.lo-profile-image { float: right; width: min(36%,280px); margin: 0 0 18px 24px; }
.lo-profile-image img { display: block; width: 100%; height: auto; border-radius: 8px; }
.lo-profile-image figcaption { padding-top: 6px; color: #666; font-size: 13px; }
.lo-contact-intro { margin: 10px 0 28px; }
.lo-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 20px 0; }
.lo-contact-item { display: block; padding: 17px; border: 1px solid #e1e7ec; background: #fff; text-decoration: none; }
.lo-contact-item span { display: block; margin-bottom: 5px; color: #666; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; }
.lo-contact-item strong { color: #222; font-size: 17px; }
.lo-footer-contact { line-height: 1.7; }
.lo-footer-contact p { margin: 0 0 8px; }
.lo-price-note { padding: 16px 18px; border: 1px solid #d8e4ee; background: #f4f8fb; }
@media (max-width: 700px) {
 .lo-hero { grid-template-columns: 1fr; gap: 18px; padding: 18px; }
 .lo-hero img { aspect-ratio: 1.45; }
 .lo-service-grid, .lo-benefits, .lo-contact-grid { grid-template-columns: 1fr; }
 .lo-profile-image { float: none; width: min(100%,420px); margin: 0 auto 18px; }
 .page-header-image img { max-height: 250px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }

/* Navigation, inherited heading styles and responsive service imagery. */
.site-header .main-title, .site-header .main-title a, .site-header .site-description { text-align: left !important; text-justify: auto !important; }
@media (max-width: 768px) { .site-header .main-title { font-size: 23px !important; line-height: 1.24 !important; } .site-header .site-description { font-size: 15px !important; line-height: 1.45 !important; } }
.main-navigation, .main-navigation ul ul { background-color: #004d7a !important; }
.main-navigation .main-nav ul li a, .main-navigation .main-nav ul li a:visited, .main-navigation .main-nav ul ul li a, .menu-toggle, .main-navigation .mobile-bar-items a { color: #fff !important; }
.main-navigation .main-nav ul li:hover > a, .main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a, .main-navigation .main-nav ul li[class*="current-menu-"] > a { color: #fff !important; background-color: #003b5d !important; }
.main-navigation .main-nav ul li a { font-size: 16px !important; text-align: center; }
.menu-toggle { background-color: #004d7a !important; text-align: left; }
.entry-content p, .entry-content li { text-align: left; }
.entry-content h1, .entry-content h2, .entry-content h3 { background: transparent !important; }
.lo-card h3, .lo-benefits h3 { padding: 0 !important; }
.lo-service-visual { margin: 0 0 23px; overflow: hidden; border-radius: 8px; }
.lo-service-visual img { display: block; width: 100%; max-height: 390px; aspect-ratio: 1.72; object-fit: cover; }
.lo-course-grid, .lo-price-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 20px 0 28px; }
.lo-course-card, .lo-price-card { min-width: 0; padding: 18px; border: 1px solid #e1e7ec; background: #fff; }
.lo-course-card h2, .lo-price-card h2 { margin: 0 0 10px !important; font-size: 22px; }
.lo-levels { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.lo-levels li { margin: 0 !important; padding: 10px 0; border-top: 1px solid #e7edf2; }
.lo-levels strong { display: block; color: #222; }
.lo-price-amount { margin: 8px 0 12px !important; color: #004d7a; font-size: 25px; font-weight: 700; line-height: 1.25 !important; }
.lo-course-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 16px 0 25px; }
.lo-course-facts > div { padding: 15px; border: 1px solid #e1e7ec; }
.lo-course-facts h3 { margin: 0 0 7px !important; font-size: 17px; }
@media(max-width:700px) { .main-navigation .main-nav ul li a { text-align: left !important; } .lo-course-grid, .lo-price-grid, .lo-course-facts { grid-template-columns: 1fr; } .lo-service-visual img { aspect-ratio: 1.4; max-height: 260px; } }

/* Exact selector overrides for the tool-generated navigation shell. */
.main-navigation.dr-navigation { background-color:#004d7a !important; }
.main-navigation.dr-navigation .dr-menu > li > a,
.main-navigation.dr-navigation .dr-menu > li > a:visited,
.main-navigation.dr-navigation .dr-menu > li > .dr-casino-toggle,
.main-navigation.dr-navigation .dr-menu > li > .dr-menu-group-toggle { color:#fff !important; }
.main-navigation.dr-navigation .dr-mobile-toggle { background:#004d7a !important; color:#fff !important; border:1px solid #004d7a !important; }
.main-navigation.dr-navigation .dr-menu > li > a:hover,
.main-navigation.dr-navigation .dr-menu > li > a:focus,
.main-navigation.dr-navigation .dr-menu > li.dr-open > button { background:#003b5d !important; color:#fff !important; }
.main-navigation.dr-navigation .dr-menu > li { float:none !important; }
.main-navigation.dr-navigation .dr-menu > li > a { text-align:center !important; }
@media(max-width:768px) { .main-navigation.dr-navigation .dr-menu > li > a { text-align:left !important; } }


/* High-contrast navigation for the restored LektorOffice theme. */
.main-navigation.dr-navigation,
.main-navigation.dr-navigation .dr-menu,
.main-navigation.dr-navigation .dr-menu > li {
  background-color: #003b5d !important;
  color: #ffffff !important;
}
.main-navigation.dr-navigation .dr-menu > li > a,
.main-navigation.dr-navigation .dr-menu > li > a:link,
.main-navigation.dr-navigation .dr-menu > li > a:visited,
.main-navigation.dr-navigation .dr-menu > li > a:hover,
.main-navigation.dr-navigation .dr-menu > li > a:focus,
.main-navigation.dr-navigation .dr-menu > li > a:active,
.main-navigation.dr-navigation .dr-menu > li > button,
.main-navigation.dr-navigation .dr-mobile-toggle {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}
.main-navigation.dr-navigation .dr-menu > li > a:hover,
.main-navigation.dr-navigation .dr-menu > li > a:focus,
.main-navigation.dr-navigation .dr-menu > li.dr-open > button {
  background-color: #002f4b !important;
}
