/* Shared footer only: same composition across all current site pages.
   The page body, brand/product headers and contact controllers remain unchanged. */
@font-face{font-family:"Glasst Footer";src:url("/particle-hero/assets/fonts/graphik-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Glasst Footer";src:url("/particle-hero/assets/fonts/graphik-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Glasst Footer Arabic";src:url("/assets/fonts/alexandria-arabic-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Glasst Footer Arabic";src:url("/assets/fonts/alexandria-arabic-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
.g-site-footer {
  --footer-font:"Glasst Footer",Graphik,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  display:block;width:100%;min-width:0;box-sizing:border-box;
  background:#101717;color:#c7d0cc;border-block-start:1px solid #ffffff20;
  text-align:start;font:400 14px/1.6 var(--footer-font);
}
html[lang="ar"] .g-site-footer {--footer-font:"Glasst Footer Arabic",Tahoma,Arial,sans-serif;direction:rtl}
.g-site-footer *, .g-site-footer *::before, .g-site-footer *::after {box-sizing:border-box}
.g-site-footer :is(a,button) {color:inherit;font-family:var(--footer-font);text-decoration:none}
.g-site-footer .footer-brand img.glasst {display:block;object-fit:contain;filter:brightness(0) invert(1)}
.g-site-footer .footer-brand p {color:#bac6c0;font-weight:400;letter-spacing:0}
.g-site-footer .footer-group h2 {color:#f0f4f1;font-family:var(--footer-font)}
.g-site-footer .footer-group nav a {color:#c7d0cc;letter-spacing:0}
.g-site-footer .footer-group nav a[aria-current="page"] {color:#fff;font-weight:500}
.g-site-footer .footer-contact > :is(a,button) {
  display:flex;align-items:center;justify-content:flex-start;
  width:100%;max-width:100%;min-width:0;margin:0;
  border:1px solid #ffffff26;background:#ffffff06;color:#e0e8e3;
  text-align:start;font-family:var(--footer-font);font-weight:400;cursor:pointer;
  overflow-wrap:anywhere;touch-action:manipulation;
}
.g-site-footer .footer-contact .footer-ico {display:inline-flex;align-items:center;justify-content:center}
.g-site-footer .footer-contact > [hidden] {display:none!important}
.g-site-footer .footer-contact .footer-ico svg {display:block;width:20px;height:20px}
.g-site-footer .footer-contact h2 {grid-column:1/-1}
.g-site-footer .footer-bottom {border-block-start:1px solid #ffffff20;max-width:1296px;margin-inline:auto}
.g-site-footer .footer-legal {display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px}
.g-site-footer .footer-legal a,.g-site-footer .back-top {display:inline-flex;align-items:center;gap:8px;min-height:44px}
.g-site-footer .footer-copyright,.g-site-footer .footer-legal a,.g-site-footer .back-top {color:#b8c5bd}
@media(hover:hover) and (pointer:fine){
 .g-site-footer :is(a,button):hover {color:#fff}
 .g-site-footer .footer-contact > :is(a,button):hover {background:#ffffff0d;border-color:#ffffff4d}
}
.g-site-footer .footer-contact > :is(a,button):active {background:#ffffff14}

.g-site-footer {
  padding: 48px clamp(20px, 4.5vw, 72px) 24px;
}
.g-site-footer .footer-main {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .8fr) minmax(0, .8fr) minmax(248px, 1.25fr);
  align-items: start;
  gap: clamp(24px, 3vw, 40px);
  width: 100%;
  max-width: 1296px;
  margin-inline: auto;
  padding-block-end: 32px;
}
.g-site-footer .footer-main > * { min-width: 0; }
.g-site-footer .footer-navigation {
  grid-column: span 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto repeat(5, minmax(44px, auto));
  column-gap: clamp(24px, 3vw, 40px);
}
.g-site-footer .footer-navigation > .footer-group {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: 1 / span 6;
  row-gap: 0;
  min-width: 0;
}
.g-site-footer .footer-navigation > .footer-group:first-child { grid-column: 1; }
.g-site-footer .footer-navigation > .footer-group:last-child { grid-column: 2; }
.g-site-footer .footer-brand {
  display: block;
  grid-column: auto;
  max-width: 280px;
}
.g-site-footer .footer-brand > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.g-site-footer .footer-brand .glasst { width: 132px; height: auto; }
.g-site-footer .footer-brand p {
  margin: 16px 0 12px;
  max-width: 32ch;
  font-size: 14px;
  line-height: 1.6;
}
.g-site-footer .footer-brand > .brand-socials {
  display: flex;
  gap: 8px;
  grid-area: auto;
  width: fit-content;
  margin: 0;
}
.g-site-footer .footer-group h2 {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0;
  text-transform: none;
}
.g-site-footer .footer-group nav {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}
.g-site-footer .footer-group nav a {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  min-height: 44px;
  padding: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}
.g-site-footer .footer-navigation .footer-group nav {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: 2 / span 5;
  gap: 0;
}
.g-site-footer .footer-main .footer-contact {
  display: grid;
  grid-column: auto;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 8px;
  padding: 0;
  border: 0;
}
.g-site-footer .footer-main .footer-contact h2 { margin: 0 0 4px; }
.g-site-footer .footer-contact > :is(a, button) {
  min-height: 48px;
  padding: 12px;
  border-radius: 8px;
  gap: 10px;
  font-size: 14px;
  line-height: 22px;
}
.g-site-footer .footer-contact > :is(a, button) > :first-child {
  flex: 0 0 22px;
  width: 22px;
}
.g-site-footer .footer-contact > :is(a, button) > :last-child { min-width: 0; }
.g-site-footer .footer-contact [data-g-whatsapp] > img {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
}
.g-site-footer .footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px 24px;
  padding-block-start: 20px;
}
.g-site-footer .footer-copyright,
.g-site-footer .footer-legal a,
.g-site-footer .back-top {
  margin: 0;
  font-size: 12px;
  line-height: 20px;
}
.g-site-footer .back-top { min-height: 44px; }
.g-site-footer .footer-legal:empty { display: none; }
.g-site-footer :is(a, button):focus-visible {
  outline: 2px solid #eef2ef;
  outline-offset: 3px;
}
@media (min-width: 768px) and (max-width: 1099px) {
  .g-site-footer .footer-navigation { column-gap: 24px; }
  .g-site-footer .footer-main {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(240px, 1.2fr);
    gap: 32px 24px;
  }
  .g-site-footer .footer-brand {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "logo social" "copy social";
    align-items: center;
    grid-column: 1 / -1;
    max-width: none;
  }
  .g-site-footer .footer-brand > a { grid-area: logo; justify-self: start; }
  .g-site-footer .footer-brand p { grid-area: copy; max-width: 42ch; margin-bottom: 0; }
  .g-site-footer .footer-brand > .brand-socials { grid-area: social; justify-self: end; }
}
@media (max-width: 767px) {
  .g-site-footer .footer-navigation { grid-column: 1 / -1; column-gap: 24px; }
  .g-site-footer { padding: 32px 20px 16px; }
  .g-site-footer .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 24px;
    padding-block-end: 24px;
  }
  .g-site-footer .footer-brand {
    display: block;
    grid-column: 1 / -1;
    max-width: none;
  }
  .g-site-footer .footer-brand p { max-width: 34ch; margin: 12px 0; }
  .g-site-footer .footer-group h2 { margin-block-end: 8px; }
  .g-site-footer .footer-main .footer-contact {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1fr);
    border-block-start: 1px solid #ffffff20;
    padding-block-start: 24px;
    gap: 8px;
  }
  .g-site-footer .footer-contact > :is(a, button):not(.footer-email) {
    min-height: 48px;
    padding: 12px;
  }
  .g-site-footer .footer-bottom {
    align-items: start;
    gap: 4px 16px;
    padding-block-start: 16px;
  }
}

/* A footer inserted after the page main must remain outside its form/runtime. */
.g-site-footer--internal {margin-block-start:auto}
@media print {.g-site-footer {display:none}}
