/* Subscribe line above the footer — simple and quiet */
body .aj-sub { background: #fff; border: 0; color: #111; padding: 28px clamp(20px, 4vw, 64px); margin: 0; clear: both; }
body.aj-font .aj-sub, body.aj-font .aj-sub :is(h2, p, a, span, input, button, label) { font-family: "Inter Tight", "Helvetica Neue", Helvetica, Arial, sans-serif; }
body .aj-sub .aj-sub__inner { max-width: 1680px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 32px; }
body .aj-sub .aj-sub__title { font-size: 15px; font-weight: 400; line-height: 1.4; letter-spacing: 0; text-transform: none; margin: 0; padding: 0; color: #111; }
body .aj-sub .aj-sub__form { flex: 1 1 360px; max-width: 480px; margin: 0; position: relative; }
body .aj-sub .aj-sub__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
body .aj-sub .aj-sub__row { display: flex; border-bottom: 1px solid #111; }
body .aj-sub .aj-sub__input { flex: 1; min-width: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 8px 0; margin: 0; font-size: 15px; color: #111; outline: none; height: auto; }
body .aj-sub .aj-sub__input::placeholder { color: #8a8a8a; }
body .aj-sub .aj-sub__btn { border: 0; border-radius: 0; background: transparent; color: #111; padding: 8px 0 8px 16px; margin: 0; font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; box-shadow: none; line-height: 1.4; }
body .aj-sub .aj-sub__btn:hover { opacity: .6; background: transparent; color: #111; }
body .aj-sub .aj-sub__btn:disabled { opacity: .4; }
body .aj-sub .aj-sub__msg { position: absolute; left: 0; top: 100%; margin: 6px 0 0; font-size: 13px; color: #6f6f6f; }
body .aj-sub .aj-sub__msg:empty { display: none; }
body .aj-sub .aj-sub__hp { position: absolute; left: -9999px; }
body .aj-sub .aj-sub__contact { margin-left: auto; display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
body .aj-sub .aj-sub__mail { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; color: #111; text-decoration: none; border: 0; box-shadow: none; }
body .aj-sub .aj-sub__mail:hover { opacity: .6; color: #111; }
body .aj-sub .aj-sub__social { display: flex; gap: 18px; }
body .aj-sub .aj-sub__social a { color: #111; display: inline-flex; border: 0; box-shadow: none; }
body .aj-sub .aj-sub__social a:hover { opacity: .6; }

/* Tidy the theme's footer: no dividing lines, no duplicate social icons, no empty rows (only the copyright stays) */
body.aj-tidy-footer .site-footer,
body.aj-tidy-footer .site-footer [class*="-footer-wrap"],
body.aj-tidy-footer .site-footer .ast-builder-grid-row { border-top: 0 !important; border-bottom: 0 !important; box-shadow: none !important; }
body.aj-tidy-footer .site-footer [class*="ast-footer-social"],
body.aj-tidy-footer .site-footer .footer-social-inner-wrap { display: none !important; }
body.aj-tidy-footer .site-footer [class*="-footer-wrap"]:not(:has(.ast-footer-copyright, .footer-widget-area, .ast-footer-html-1, .ast-footer-html-2, .ast-builder-menu-1, .footer-nav-wrap, .widget)) { display: none !important; }
@media (max-width: 700px) {
  body .aj-sub .aj-sub__inner { flex-direction: column; align-items: stretch; }
  body .aj-sub .aj-sub__form { max-width: none; margin-bottom: 18px; }
  body .aj-sub .aj-sub__contact { margin-left: 0; align-items: flex-start; }
}
