/* === ULTRA CLEAN FOOTER (desktop) === */
/* Purpose: remove any previous pseudo-elements/overrides and render a simple 2-col footer:
   Left: brand (first element) + tagline (second element)
   Right: contact block (the next footer container)
   Mobile remains unchanged.
*/
@media (min-width:1024px){
  /* Footer band grid: left | right */
  .mega-footer{
    display:grid !important;
    grid-template-columns: 2fr 1fr !important;
    gap: 28px !important;
    align-items:start !important;
    padding-left: clamp(16px, 5vw, 48px) !important;
    padding-right: clamp(16px, 5vw, 48px) !important;
  }

  /* Containers placed into columns */
  .mega-footer .container{ max-width: none !important; margin:0 !important; padding:0 !important; }
  .mega-footer .container:first-of-type{ grid-column: 1 !important; }
  .mega-footer .container:nth-of-type(2){ grid-column: 2 !important; }

  /* RESET any previous hacks that hid text or added pseudo titles */
  .mega-footer .container:first-of-type > :first-child,
  .mega-footer .container:first-of-type > :nth-child(2){
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: start !important;
    text-align: left !important;
    position: static !important;
    font-size: revert !important;
    line-height: normal !important;
  }
  .mega-footer .container:first-of-type > :first-child::before,
  .mega-footer .container:first-of-type > :first-child::after,
  .mega-footer .container:first-of-type > :nth-child(2)::before,
  .mega-footer .container:first-of-type > :nth-child(2)::after{
    content: none !important;
  }

  /* Typography */
  .mega-footer .container:first-of-type > :first-child{
    font-weight: 800 !important;
    font-size: clamp(28px, 3.2vw, 44px) !important;
    line-height: 1.15 !important;
    color: #ffffff !important;
    margin: 0 0 12px 0 !important;
  }
  .mega-footer .container:first-of-type > :nth-child(2){
    max-width: 760px !important;
    color: rgba(255,255,255,.92) !important;
    font-size: clamp(16px, 1.5vw, 20px) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }

  /* Contact column polish */
  .mega-footer .container:nth-of-type(2) h3{
    font-size: 24px !important;
    font-weight: 800 !important;
    margin: 0 0 12px 0 !important;
    color: #ffffff !important;
  }
  .mega-footer .mf-list{ list-style: none !important; padding: 0 !important; margin: 0 !important; }
  .mega-footer .mf-list li{ display: flex !important; gap: 12px !important; align-items: flex-start !important; margin: 12px 0 !important; }
}
/* Keep footer links readable on dark */
.mega-footer a{ color:#a3d0ff !important; }


/* === HARD ALIGNMENT for footer (desktop) === */
@media (min-width:1024px){
  /* Full-bleed band but with a 4-col grid: margins (1fr) + central 2 cols */
  .mega-footer{
    display: grid !important;
    grid-template-columns: 1fr minmax(520px, 620px) minmax(300px, 340px) 1fr !important;
    gap: 28px !important;
    align-items: start !important;
    padding: 32px 20px !important;
  }
  /* Place left and right containers on the centered columns */
  .mega-footer .container{ max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .mega-footer .container:first-of-type{ grid-column: 2 !important; }
  .mega-footer .container:nth-of-type(2){ grid-column: 3 !important; }

  /* Title + text polish to avoid overflow/wrapping issues */
  .mega-footer .container:first-of-type > :first-child{
    font-weight: 800 !important;
    font-size: clamp(26px, 2.6vw, 38px) !important; /* slightly reduced for stability */
    line-height: 1.15 !important;
    color: #fff !important;
    margin: 0 0 12px 0 !important;
  }
  .mega-footer .container:first-of-type > :nth-child(2){
    max-width: 100% !important;
    color: rgba(255,255,255,.92) !important;
    font-size: clamp(16px, 1.5vw, 20px) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }

  /* Right column: Contact */
  .mega-footer .container:nth-of-type(2) h3{
    font-size: 22px !important;
    font-weight: 800 !important;
    margin: 0 0 12px 0 !important;
    color: #fff !important;
  }
  .mega-footer .mf-list{ list-style: none !important; padding: 0 !important; margin: 0 !important; }
  .mega-footer .mf-list li{ display: flex !important; gap: 12px !important; align-items: flex-start !important; margin: 10px 0 !important; }
}
/* === End HARD ALIGNMENT === */

