/* SUBSCRIBE */
    .subscribe-section {
      padding: 55px 0;
      background: linear-gradient(105deg, #ca111d, #f32138 55%, #ff3e78);
    }
    .subscribe-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 45px; align-items: center; }
    .subscribe-section h2 { margin: 0; font-weight: 900; font-size: 2rem; }
    .subscribe-section p { margin: 8px 0 0; color: rgba(255,255,255,.86); }
    .subscribe-form {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 10px;
    }
    .subscribe-form .input-field { margin: 0; }
    .subscribe-form input[type=email] {
      margin: 0 !important;
      height: 50px !important;
      padding: 0 18px !important;
      border: 1px solid rgba(255,255,255,.55) !important;
      border-radius: 999px !important;
      color: white !important;
      box-sizing: border-box !important;
      box-shadow: none !important;
    }
    .subscribe-form input::placeholder { color: rgba(255,255,255,.76); }
    .subscribe-form button {
      height: 50px;
      border: 0;
      border-radius: 999px;
      background: white;
      color: #111;
      font-weight: 900;
      padding: 0 28px;
      cursor: pointer;
    }
    #subscribeStatus { grid-column: 1/-1; font-size: .82rem; min-height: 18px; }

    /* FOOTER */
    footer.page-footer { background: #090909; padding-top: 0; border-top: 1px solid #1d1d1d; }
    .footer-main {
      min-height: 120px;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 25px;
    }
    .footer-brand { font-weight: 900; letter-spacing: 3px; }
    .footer-brand small { display: block; color: #888; font-size: .6rem; letter-spacing: 4px; margin-top: 4px; }
    .footer-links { display: flex; gap: 25px; font-size: .78rem; }
    .footer-social { display: flex; justify-content: flex-end; gap: 16px; color: #ddd; }
    .footer-copyright { border-top: 1px solid #1c1c1c; background: #080808 !important; color: #8a8a8a; }
    .footer-copyright .site-container { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }


    @media (max-width: 820px) {
      .footer-main { grid-template-columns: 1fr; text-align: center; padding: 35px 0; }
      .footer-links, .footer-social { justify-content: center; }
    }

     @media (max-width: 600px) {
      .subscribe-form { grid-template-columns: 1fr; }
      .subscribe-form button { width: 100%; }
      .footer-links { flex-wrap: wrap; }
     }