/* Restored archive-era Dove Release styling with responsive and accessibility refinements. */
body { min-width: 0; }
.content-wrapper { max-width: 1500px; margin: 0 auto; }
.head { background: #4b5f76; }
.head .logo { padding: 14px 12px 8px; border-bottom: 1px solid #000; }
.head .logo a { display: inline-block; color: #d3d4d4; font-size: 1.35em; font-weight: 400; letter-spacing: .35em; line-height: 1.35; text-decoration: none; }
.head .banner { border-bottom: 1px solid #72939c; }
.head .banner img { display: block; max-width: 100%; width: auto; height: auto; padding: 0; }
.site-nav { position: relative; z-index: 15; clear: both; margin: 10px 0 15px; padding: 10px; background: #4b5f76; box-shadow: 0 0 30px #999; text-align: center; }
.site-nav ul { display: inline-block; margin: 0; padding: 0; list-style: none; vertical-align: bottom; }
.site-nav li { float: left; margin: 0 5px 5px 0; }
.site-nav li:last-child { margin-right: 0; }
.site-nav a { display: block; padding: 8px; border: 1px solid rgba(255,255,255,.5); border-radius: 5px; background: #4b5f76; box-shadow: inset 0 12px 6px rgba(255,255,255,.15); color: #aabed4; font-size: 1.05em; text-align: center; text-decoration: none; transition: all linear .25s .1s; }
.site-nav a:hover, .site-nav a:focus-visible { background: rgba(51,51,51,.2); color: #fff; outline: 2px solid #fff; outline-offset: 2px; }
.breadcrumbs { clear: both; max-width: 1180px; margin: 1rem auto; padding: 0 1rem; font-size: .92rem; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.breadcrumbs li + li::before { content: "›"; margin-right: .45rem; color: #4b5f76; }
.columns-wrapper { display: flow-root; }
.main-content { box-sizing: border-box; padding-bottom: 1rem; line-height: 1.7; }
.main-content h1 { color: #4b5f76; line-height: 1.25; }
.main-content h2, .main-content h3 { color: #344a61; }
.main-content img { max-width: 100%; height: auto; }
.sidebar .content { background-color: #eeeff1; background-image: linear-gradient(to bottom, #fff, #dce2e9); color: #202b38; }
.sidebar .content h2 { color: #344a61; }
.site-footer { clear: both; padding: 1.25rem; border-top: 1px solid #72939c; background: #4b5f76; color: #d3d4d4; font-size: .85em; text-align: center; }
.site-footer p { margin: .4rem; }
.site-footer ul { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem 1.1rem; margin: .75rem 0; padding: 0; list-style: none; }
.site-footer a { color: #d3ddec; }
.post-card { padding: .75rem 0; border-bottom: 1px solid #9aa8b8; }
.post-card h2 { margin-top: 1rem; }
.blog-post figure { margin: 1.25rem 0; }
.blog-post figure img { display: block; width: 100%; max-height: 480px; object-fit: cover; }
.blog-post figcaption { color: #424d5a; font-size: .88rem; }
.planning-table { width: 100%; margin: 1rem 0; border-collapse: collapse; }
.planning-table th, .planning-table td { padding: .55rem; border: 1px solid #5a6777; text-align: left; }
.care-note { margin: 1rem 0; padding: .8rem 1rem; border-left: 4px solid #4b5f76; background: #eeeff1; }
.logo a { color: inherit; }
@media (max-width: 900px) {
  .content-wrapper { width: 100%; max-width: 100%; }
  .main-content, .sidebar { box-sizing: border-box; padding: 1rem; }
}
@media (max-width: 699px) {
  .site-nav ul { display: block; }
  .site-nav li { float: none; margin: 0 0 5px; }
  .site-nav a { text-align: left; }
  .main-content h1 { font-size: 1.55rem; }
  .planning-table { font-size: .9rem; }
  .breadcrumbs { padding: 0 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
