/* =========================================================
   DIRECTORY GOO FOOTER V4
   Approved Desktop / Tablet UI
   Mobile <768px untouched
   Footer V2.1 preserved
   ========================================================= */

@media (min-width:768px) {

  footer .footer-top {
    padding-bottom:32px !important;
  }

  footer .container-lg {
    max-width:1320px !important;
  }

  /* Logo tagline */
  footer .dg-footer-tagline {
    margin-top:8px;
    color:#fff;
    font-size:12px;
    font-weight:600;
    letter-spacing:3px;
    opacity:.95;
  }

  /* App heading */
  footer .dg-app-heading {
    font-size:15px !important;
    font-weight:600 !important;
    letter-spacing:.2px;
  }

  /* Main headings */
  footer .links-heading {
    font-size:17px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
  }

  /* Green underline */
  footer .links-heading::after {
    content:"";
    display:block;
    width:38px;
    height:2px;
    margin-top:7px;
    background:#00a651;
    border-radius:2px;
  }

  /* Links */
  footer .links-block {
    margin-top:18px !important;
  }

  footer .links-block .link {
    line-height:1.8 !important;
  }

  /* Cleaner column rhythm */
  footer .row.mt-3 > [class*="col-"] {
    padding-top:8px;
    padding-bottom:10px;
  }

  /* Approved green bottom area */
  footer .footer-bottom {
    padding:0 !important;
    min-height:0 !important;
    text-align:initial !important;
  }

  footer .dg-footer-bottom-v4 {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 40px;
    align-items:center;

    max-width:1320px;
    margin:0 auto;
    padding:18px 24px;

    color:#fff;
    font-size:13px;
  }

  footer .dg-footer-support,
  footer .dg-footer-legal,
  footer .dg-footer-copy,
  footer .dg-footer-global {
    min-width:0;
  }

  footer .dg-footer-support {
    font-weight:600;
  }

  footer .dg-support-icon {
    margin-right:8px;
    font-size:16px;
  }

  footer .dg-footer-support a,
  footer .dg-footer-legal a {
    color:#fff !important;
    text-decoration:none !important;
  }

  footer .dg-footer-support a:hover,
  footer .dg-footer-legal a:hover {
    text-decoration:underline !important;
  }

  footer .dg-footer-legal {
    text-align:right;
    white-space:nowrap;
  }

  footer .dg-footer-legal span {
    margin:0 10px;
    opacity:.7;
  }

  footer .dg-footer-copy {
    font-size:12px;
    opacity:.9;
  }

  footer .dg-footer-global {
    text-align:right;
    font-size:12px;
    font-style:italic;
    opacity:.9;
  }
}

/* Tablet */
@media (min-width:768px) and (max-width:991px) {

  footer .dg-footer-bottom-v4 {
    grid-template-columns:1fr;
    gap:8px;
    text-align:center;
  }

  footer .dg-footer-legal,
  footer .dg-footer-global {
    text-align:center;
  }

  footer .dg-footer-legal {
    white-space:normal;
  }
}

/* =========================================================
   V4.2 — Desktop/Tablet refinement
   ========================================================= */
@media (min-width:768px) {

  /* Reduce excessive empty blue space */
  footer .footer-top {
    padding-bottom: 20px !important;
  }

  footer .footer-top > .container-lg > .row.mt-3 {
    align-items: flex-start !important;
  }

  /* Pull Follow Us upward */
  footer .footer-top .row.mt-3 >
  .col-lg-3.col-md-4.col-sm-6:has(.links-heading) {
    margin-bottom: 0 !important;
  }

  /* Make bottom strip more substantial/readable */
  footer .dg-footer-bottom-v4 {
    padding-top: 17px !important;
    padding-bottom: 17px !important;
    font-size: 13px !important;
  }

  footer .dg-footer-support {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  footer .dg-footer-support a {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 13px !important;
  }

  footer .dg-footer-legal {
    font-weight: 500 !important;
  }
}

/* =========================================================
   V4.3 — Compact approved desktop/tablet layout
   ========================================================= */
@media (min-width:768px) {

  footer .dg-social-inline {
    margin-top: 34px !important;
  }

  footer .dg-social-inline .links-heading {
    display: inline-block !important;
  }

  footer .footer-top > .container-lg > .row.mt-3 {
    margin-bottom: 0 !important;
  }

  footer .footer-top {
    padding-bottom: 18px !important;
  }
}

/* =========================================================
   V4.4 — Final desktop/tablet polish
   ========================================================= */
@media (min-width:768px) {

  /* Tighten main footer vertical spacing */
  footer .footer-top {
    padding-bottom: 14px !important;
  }

  footer .dg-social-inline {
    margin-top: 26px !important;
  }

  footer .row.mt-3 {
    margin-top: 14px !important;
  }

  footer .row.mt-3 > [class*="col-"] {
    padding-top: 4px !important;
    padding-bottom: 6px !important;
  }

  /* Slightly improve link rhythm */
  footer .links-block {
    margin-top: 14px !important;
  }

  footer .links-block .link {
    line-height: 1.72 !important;
  }

  /* Bottom strip alignment */
  footer .dg-footer-bottom-v4 {
    max-width: 1200px !important;
    padding: 15px 12px !important;
    column-gap: 48px !important;
  }

  footer .dg-footer-support,
  footer .dg-footer-copy {
    text-align: left !important;
  }

  footer .dg-footer-legal,
  footer .dg-footer-global {
    text-align: right !important;
  }

  footer .dg-footer-copy,
  footer .dg-footer-global {
    font-size: 11.5px !important;
  }
}

/* Tablet stays stacked and centered */
@media (min-width:768px) and (max-width:991px) {
  footer .dg-footer-bottom-v4 {
    max-width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  footer .dg-footer-support,
  footer .dg-footer-copy,
  footer .dg-footer-legal,
  footer .dg-footer-global {
    text-align: center !important;
  }
}
