/* ========================================
   GLASSMORPHISM LANDING PAGE FOOTER
   ======================================== */

.site-footer {
    position: relative;
    z-index: 10;

    width: 100%;
    padding: 50px 7% 20px;

    /*
     * Transparency is necessary for the
     * backdrop blur to be visible.
     */
    background: rgba(8, 61, 98, 0.84);

    -webkit-backdrop-filter:
        blur(18px)
        saturate(140%);

    backdrop-filter:
        blur(18px)
        saturate(140%);

    border-top:
        1px solid
        rgba(255, 255, 255, 0.24);

    box-shadow:
        0 -10px 35px
        rgba(7, 51, 82, 0.16);

    color: #ffffff;
}

.footer-content {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(260px, 1.2fr)
        minmax(300px, 1fr);

    align-items: start;
    gap: 60px;
}

/* Brand area */

.footer-brand h2 {
    margin: 0 0 10px;

    font-family:
        "Hammersmith One",
        sans-serif;

    font-size: 29px;
    font-weight: 400;
}

.footer-brand p {
    max-width: 350px;
    margin: 0;

    font-family:
        "ABeeZee",
        sans-serif;

    font-size: 14px;
    line-height: 1.7;

    color:
        rgba(255, 255, 255, 0.82);
}

/* Support and legal links */

.footer-links {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(140px, 1fr));

    gap: 14px 30px;
}

.footer-links a,
.footer-admin-link {
    font-family:
        "ABeeZee",
        sans-serif;

    font-size: 14px;
    color:
        rgba(255, 255, 255, 0.88);

    text-decoration: none;

    transition:
        color 0.2s ease,
        transform 0.2s ease;
}

.footer-links a:hover,
.footer-links a:focus-visible,
.footer-admin-link:hover,
.footer-admin-link:focus-visible {
    color: #7ce4fa;
}

.footer-links a:hover {
    transform: translateX(3px);
}

/* Copyright and Admin Portal */

.footer-bottom {
    width: 100%;
    max-width: 1200px;

    margin: 38px auto 0;
    padding-top: 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.18);
}

.footer-bottom p {
    margin: 0;

    font-family:
        "ABeeZee",
        sans-serif;

    font-size: 13px;
    color:
        rgba(255, 255, 255, 0.68);
}

.footer-admin-link {
    font-size: 13px;
}

/* Fallback for browsers without blur support */

@supports not (
    (backdrop-filter: blur(18px))
    or
    (-webkit-backdrop-filter: blur(18px))
) {
    .site-footer {
        background: #184e83;
    }
}

/* Tablet and mobile */

@media (max-width: 760px) {
    .site-footer {
        padding:
            40px 24px
            18px;
    }

    .footer-content {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .footer-links {
        grid-template-columns: 1fr;
    }

    .footer-bottom {
        margin-top: 32px;

        flex-direction: column;
        align-items: flex-start;
    }
}

.footer-socials {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

.footer-socials a {
    width: 40px;
    height: 40px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: rgba(255, 255, 255, 0.1);

    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;

    color: #ffffff;
    text-decoration: none;

    transition:
        transform 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.footer-socials svg {
    width: 19px;
    height: 19px;

    fill: currentColor;
}

.footer-socials a:hover,
.footer-socials a:focus-visible {
    background: rgba(124, 228, 250, 0.24);
    border-color: #7ce4fa;
    color: #7ce4fa;

    transform: translateY(-3px);
}

.footer-socials a:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 3px;
}

/* EASYPRINT PUBLIC FOOTER V2
   ---------------------------------------------------------
   Canonical public footer style.
--------------------------------------------------------- */

.site-footer {
  width:
    100% !important;

  padding:
    44px
    22px
    22px !important;

  background:
    linear-gradient(
      155deg,
      #1c587f 0%,
      #246b95 48%,
      #2d7fa8 100%
    ) !important;

  border-top:
    0 !important;

  box-shadow:
    none !important;

  backdrop-filter:
    none !important;

  color:
    rgba(255, 255, 255, 0.92) !important;
}

.footer-content {
  width:
    100% !important;

  max-width:
    1080px !important;

  margin:
    0 auto !important;

  grid-template-columns:
    minmax(240px, 1fr)
    minmax(300px, 1fr) !important;

  gap:
    46px !important;
}

.footer-brand h2 {
  margin:
    0 0
    8px !important;

  font-family:
    Arial,
    Helvetica,
    sans-serif !important;

  font-size:
    24px !important;

  font-weight:
    800 !important;

  letter-spacing:
    -0.3px;
}

.footer-brand p {
  max-width:
    360px !important;

  margin:
    0 !important;

  font-family:
    Arial,
    Helvetica,
    sans-serif !important;

  color:
    rgba(255, 255, 255, 0.72) !important;

  font-size:
    11.5px !important;

  line-height:
    1.6 !important;
}

.footer-socials {
  gap:
    9px !important;

  margin-top:
    17px !important;
}

.footer-socials a {
  width:
    36px !important;

  height:
    36px !important;

  border:
    1px solid
    rgba(255, 255, 255, 0.16) !important;

  background:
    rgba(255, 255, 255, 0.08) !important;

  box-shadow:
    none !important;
}

.footer-socials svg {
  width:
    17px !important;

  height:
    17px !important;
}

.footer-links {
  grid-template-columns:
    repeat(2, minmax(130px, 1fr)) !important;

  gap:
    10px 24px !important;
}

.footer-links a,
.footer-admin-link {
  font-family:
    Arial,
    Helvetica,
    sans-serif !important;

  font-size:
    11.5px !important;

  color:
    rgba(255, 255, 255, 0.82) !important;
}

.footer-bottom {
  width:
    100% !important;

  max-width:
    1080px !important;

  margin:
    28px auto 0 !important;

  padding-top:
    16px !important;

  border-top:
    1px solid
    rgba(255, 255, 255, 0.12) !important;
}

.footer-bottom p,
.footer-admin-link {
  font-size:
    9.5px !important;
}

.footer-bottom p {
  color:
    rgba(255, 255, 255, 0.58) !important;
}


@media (max-width: 760px) {

  .site-footer {
    padding:
      38px
      20px
      20px !important;
  }

  .footer-content {
    grid-template-columns:
      1fr !important;

    gap:
      26px !important;
  }

  .footer-links {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap:
      10px 18px !important;
  }

  .footer-bottom {
    margin-top:
      26px !important;

    flex-direction:
      row !important;

    align-items:
      center !important;

    justify-content:
      space-between !important;

    gap:
      16px !important;
  }

}

/* EASYPRINT FOOTER DESKTOP POLISH V1 - START */
/* Desktop adjustments only. Mobile retains pre-existing positioning/order. */
@media (min-width: 761px) {
  .site-footer .footer-content {
    max-width: 1120px !important;
    grid-template-columns: minmax(280px, 1.15fr) minmax(380px, 1fr) !important;
    gap: clamp(42px, 7vw, 105px) !important;
    align-items: start;
  }
  .site-footer .footer-brand h2 {
    font-family: "Hammersmith One", sans-serif !important;
    font-weight: 400 !important;
    font-size: 28px !important;
    letter-spacing: -.45px;
  }
  .site-footer .footer-brand p {
    font-family: "ABeeZee", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    max-width: 320px !important;
  }
  .site-footer .footer-links {
    display: grid !important;
    grid-template-columns: minmax(170px, 1fr) minmax(180px, 1fr) !important;
    gap: clamp(22px, 3vw, 56px) !important;
    align-items: start;
  }
  .site-footer .footer-link-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
  }
  .site-footer .footer-link-heading {
    font-family: "ABeeZee", sans-serif;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 1.35px;
    line-height: 1.3;
    text-transform: uppercase;
    color: rgba(225, 247, 255, .76);
    margin: 0 0 7px;
  }
  .site-footer .footer-links a,
  .site-footer .footer-admin-link {
    font-family: "ABeeZee", sans-serif !important;
    font-size: 12.5px !important;
    line-height: 1.45;
  }
  .site-footer .footer-bottom {
    max-width: 1120px !important;
    margin-top: 38px !important;
  }
  .site-footer .footer-bottom p,
  .site-footer .footer-admin-link { font-size: 11px !important; }
}
/* Mobile: group wrappers behave as if absent; original grid and order preserved. */
@media (max-width: 760px) {
  .site-footer .footer-link-group { display: contents !important; }
  .site-footer .footer-link-heading { display: none !important; }
  .site-footer .footer-link-help { order: 1; }
  .site-footer .footer-link-home { order: 2; }
  .site-footer .footer-link-contact { order: 3; }
  .site-footer .footer-link-privacy { order: 4; }
  .site-footer .footer-link-terms { order: 5; }
  .site-footer .footer-link-developers { order: 6; }
}
/* EASYPRINT FOOTER DESKTOP POLISH V1 - END */

/* EASYPRINT FOOTER ORIGINAL TYPOGRAPHY V2 — desktop only */
@media (min-width: 761px) {
  .site-footer .footer-brand h2 {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: -0.3px !important;
    line-height: normal;
  }
  .site-footer .footer-brand p {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11.5px !important;
    line-height: 1.6 !important;
    max-width: 360px !important;
  }
  .site-footer .footer-links a,
  .site-footer .footer-admin-link {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
  }
  .site-footer .footer-link-heading {
    font-family: Arial, Helvetica, sans-serif !important;
  }
  .site-footer .footer-bottom p,
  .site-footer .footer-admin-link { font-size: 9.5px !important; }
}
/* END EASYPRINT FOOTER ORIGINAL TYPOGRAPHY V2 */
