/* ===== BLOG SUBSCRIBE MODULE ===== */
/* Dark mode - all CSS controlled within module */
/* Matches blog-cards pattern across DGI blog */

/* ── Base wrapper - matches page background ── */
.blog-subcribe {
  background: #0E151D;
  position: relative;
  padding: 80px 0;
  overflow: visible;
}

/* ── Hide field-driven backgrounds & shape ── */
.blog-subcribe .bg-color,
.blog-subcribe .bg-img,
.blog-subcribe .bg-video,
.blog-subcribe .shape {
  display: none;
}

/* ── Layout ── */
.blog-subcribe .container {
  max-width: 800px;
  margin: 0 auto;
  padding: 60px 30px;
}

.blog-subcribe .flexy {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 0;
  background: #1D2936;
  border-radius: 4px;
  padding: 48px 48px;
  clip-path: none;
  flex-wrap: nowrap;
  overflow: visible;
}

.blog-subcribe .flexy .left {
  width: 100%;
  max-width: 100%;
}

/* ── Typography ── */
.blog-subcribe .main-title h4 {
  color: #FFFFFF;
  font-family: 'Dazzed', sans-serif;
  font-size: 36px;
  font-weight: 500;
  line-height: 120%;
  font-feature-settings: 'ss03' on, 'ss05' on;
  margin: 0 0 16px;
  letter-spacing: 0.5px;
}

.blog-subcribe .main-title p,
.blog-subcribe .main-title div,
.blog-subcribe .main-title span {
  color: #CDCDCD;
  font-family: 'Dazzed', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 175%;
  margin: 0 0 24px;
}

.blog-subcribe .main-title {
  font-family: 'Dazzed', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.5px;
  color: #ffffff;
  text-align: center;
}

.blog-subcribe .form {
  display: flex;
  flex-direction: column;

}

.blog-subcribe .form form .hs-form-field,
.blog-subcribe .form form .hs-submit {
  width: auto;
  text-align: center;
}
.blog-subcribe .form form {
  flex-direction: column;
  align-items: center;
}
.blog-subcribe .form form .hs-submit {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* ── Form wrapper ── */
.blog-subcribe .form .hs-form,
.blog-subcribe .form .hs_email {
  position: relative;
}

.blog-subcribe .form .hs-form-field {
  margin-bottom: 16px;
}

/* ── Form labels ── */
.blog-subcribe .form .hs-form-field label,
.blog-subcribe .form .hs-form-field > label {
  color: #E8E8E8;
  font-family: 'Dazzed', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  margin-bottom: 6px;
  display: block;
}

/* ── Email input ── */
.blog-subcribe .form .hs-input,
.blog-subcribe .form input[type="email"],
.blog-subcribe .form input[type="text"],
.blog-subcribe .form input.hs-input {
  background: #0E151D;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 100px;
  color: #E8E8E8;
  font-family: 'Dazzed', sans-serif;
  font-size: 15px;
  font-weight: 400;
  padding: 14px 20px;
  width: 100%;
  max-width: 100%;
  height: auto;
  box-shadow: none;
  transition: border-color 0.3s ease;
}

.blog-subcribe .form .hs-input:focus,
.blog-subcribe .form input:focus {
  border-color: #B3FF5C;
  outline: none;
}

.blog-subcribe .form .hs-input::placeholder,
.blog-subcribe .form input::placeholder {
  color: #8C97AC;
  font-family: 'Dazzed', sans-serif;
  font-size: 15px;
}

/* ── Inline layout: email + button side by side ── */
.blog-subcribe .form form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px;
}

.blog-subcribe .form .hs_email {
  flex: 1 1 100%;
}

.blog-subcribe .form .hs_submit,
.blog-subcribe .form .hs-submit {
  flex: 0 0 auto;
}

.blog-subcribe .form .hs-form-field {
  margin-bottom: 0;
}

/* ── Submit button ── */
.blog-subcribe .form .hs-submit .hs-button,
.blog-subcribe .form .actions .hs-button,
.blog-subcribe .form input[type="submit"],
.blog-subcribe .form input.hs-button {
  background: #B3FF5C;
  color: #0E151D;
  font-family: 'Dazzed', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  padding: 14px 32px;
  border: 2px solid #B3FF5C;
  border-radius: 100px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: fit-content;
  min-width: auto;
  display: inline-block;
  position: static;
  top: auto;
  right: auto;
  clip-path: none;
  text-transform: none;
  letter-spacing: 0.5px;
  margin-top: 0;
  min-width: 160px;
  overflow: visible;
}

.blog-subcribe .form .hs-submit .hs-button:hover,
.blog-subcribe .form input[type="submit"]:hover,
.blog-subcribe .form input.hs-button:hover {
  background: transparent;
  color: #B3FF5C;
  border-color: #B3FF5C;
}

/* ── Consent / legal text ── */
.blog-subcribe .form .legal-consent-container,
.blog-subcribe .form .hs-richtext {
  color: #8C97AC;
  font-family: 'Dazzed', sans-serif;
  font-size: 13px;
  line-height: 150%;
}

.blog-subcribe .form .legal-consent-container a {
  color: #B3FF5C;
  text-decoration: underline;
}

/* ── Error messages ── */
.blog-subcribe .form .hs-error-msgs {
  list-style: none;
  padding: 0;
  margin: 4px 0 0;
}

.blog-subcribe .form .hs-error-msgs li {
  padding: 0;
}

.blog-subcribe .form .hs-error-msgs li:before {
  display: none;
}

.blog-subcribe .form .hs-error-msgs li label {
  color: #FF6B6B;
  font-size: 12px;
  font-weight: 500;
}

/* ── Success message ── */
.blog-subcribe .form .submitted-message {
  color: #B3FF5C;
  font-family: 'Dazzed', sans-serif;
  font-size: 16px;
  font-weight: 500;
}

/* ── Subscription type radio (hidden by HubSpot, keep hidden) ── */
.blog-subcribe .form .hs-blog_default_hubspot_blog_5593161575_subscription {
  display: none;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 991px) {
  .blog-subcribe {
    padding: 0 0;
  }

  .blog-subcribe .flexy {
    padding: 10px 30px;
  }

  .blog-subcribe .main-title h4 {
    font-size: 30px;
  }

  .blog-subcribe .form .hs_email {
    width: 100%;
    margin-right: 0;
    margin-bottom: 12px;
    display: block;
  }

  .blog-subcribe .form .hs_submit,
  .blog-subcribe .form .hs-submit {
    display: block;
    width: 100%;
  }

  .blog-subcribe .form input[type="submit"],
  .blog-subcribe .form input.hs-button {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .blog-subcribe {
    padding: 0 0;
  }

  .blog-subcribe .container {
    padding: 0 16px;
  }

  .blog-subcribe .flexy {
    padding: 30px 20px;
  }

  .blog-subcribe .main-title h4 {
    font-size: 26px;
  }
}

@media (max-width: 480px) {
  .blog-subcribe .flexy .left form input.hs-input {
    max-width: 100%;
  }
}
}