/* UX refinements for editorial imagery, newsletter conversion and responsive comfort. */
.section-desc { max-width: var(--content-measure); }
.newsletter-section { background: var(--accent-color); border-color: var(--accent-color); padding: 80px 0; }
.newsletter-box-lime { width: 100%; max-width: none; padding: 42px 44px; background: var(--accent-color); color: #000; border-radius: 0; box-shadow: none; }
.newsletter-box-lime .section-tag, .newsletter-box-lime .section-title, .newsletter-box-lime .section-desc, .newsletter-box-lime .newsletter-note { color: #000; }
.newsletter-box-lime .newsletter-input { background: #fff; border-color: #000; color: #000; }
.newsletter-box-lime .newsletter-input::placeholder { color: #4a4a00; }
.newsletter-box-lime .newsletter-form .btn-primary { background: #000; border-color: #000; color: #fff; }
.newsletter-box-lime .newsletter-form .btn-primary:hover, .newsletter-box-lime .newsletter-form .btn-primary:focus-visible { background: #fff; border-color: #000; color: #000; }
.site-footer { background: #ffffff; color: #000; border-top-color: #d7d7d7; }
.site-footer .footer-brand-logo { width: min(100%, 280px); height: auto; object-fit: contain; }
.site-footer .footer-about-text, .site-footer .footer-links a, .site-footer .footer-heading, .site-footer p { color: #000 !important; }
.site-footer .footer-links a:hover { color: var(--accent-color) !important; }
.site-footer .footer-heading::after { background: #000; }
.site-footer .footer-bottom { background: #000; color: #fff; border-top-color: #000; margin-top: 0; padding: 24px 20px; }
.site-footer .footer-bottom, .site-footer .footer-bottom div { color: #fff !important; }
.site-footer .footer-legal-links { display: flex; gap: 15px; flex-wrap: wrap; }
.site-footer .footer-legal-links a { color: var(--accent-color) !important; font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.site-footer .footer-legal-links a:hover, .site-footer .footer-legal-links a:focus-visible { color: #fff !important; }
.site-footer .social-icon-btn { background: #000; border-color: #000; color: #fff; }
.site-footer .social-icon-btn:hover, .site-footer .social-icon-btn:focus-visible { background: #fff; color: #000; border-color: #000; box-shadow: none; }
.col-image img, .blog-card-image { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; }
.col-image img:hover, .blog-card:hover .blog-card-image { transform: scale(1.015); filter: saturate(1.08); }
.blog-card-image { border-radius: 10px 10px 0 0; transition: var(--transition-ease); }
.blog-card-featured { overflow: hidden; }
.newsletter-section { position: relative; overflow: hidden; }
.newsletter-section::before { content: ''; position: absolute; width: 260px; height: 260px; right: -80px; top: -100px; border: 1px solid var(--border-accent); border-radius: 50%; opacity: .5; }
.newsletter-box { position: relative; }
.newsletter-copy { max-width: 760px; margin: 0 auto 28px; }
.newsletter-form { position: relative; z-index: 1; }
.newsletter-input:focus { outline: 2px solid var(--accent-color); outline-offset: 2px; }
.newsletter-note { color: #777; font-size: .78rem; margin-top: 14px; }
.social-icon-btn { transition: transform .25s ease, background-color .25s ease, color .25s ease; }
.social-icon-btn:hover { transform: translateY(-3px); }
@media (max-width: 700px) {
  .section-padding { padding: 58px 0; }
  .newsletter-form { flex-direction: column; align-items: stretch; }
  .newsletter-form .btn { width: 100%; }
  .footer-bottom { gap: 15px; flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
