/* Ingetrans – Footer Widget CSS */
:root {
  --gffooter-brand:      #EF4444;
  --gffooter-border:     #1e293b;
  --gffooter-link-hover: #ffffff;
}

.gffooter-footer { background:#020617; color:#94a3b8; padding:56px 0 0; border-top:1px solid var(--gffooter-border); }
.gffooter-container { max-width:1440px; margin:0 auto; padding:0 24px; }
@media(min-width:1024px){ .gffooter-container { padding:0 48px; } }

/* ── Main grid: brand(2) + services + contact ── */
.gffooter-grid { display:grid; gap:40px; margin-bottom:40px; }
@media(min-width:768px)  { .gffooter-grid { grid-template-columns:repeat(4,1fr); } }
@media(max-width:767px)  { .gffooter-grid { grid-template-columns:1fr; } }

/* COL 1-2 spans 2 of the 4 columns on md+ */
@media(min-width:768px){ .gffooter-brand { grid-column:span 2; } }

/* Brand */
.gffooter-brand__logo { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.gffooter-logo-box {
  width:40px; height:40px;
  border-radius:10px;
  background:var(--gffooter-brand);
  color:#fff;
  display:grid; place-items:center;
  font-weight:900; font-size:0.875rem;
  flex-shrink:0;
}
.gffooter-logo-image { height:40px; width:auto; object-fit:contain; }
.gffooter-brand__name { color:#fff; font-weight:800; font-size:1rem; line-height:1.2; }
.gffooter-brand__sub  { font-size:10px; color:#475569; text-transform:uppercase; letter-spacing:.1em; margin-top:2px; }
.gffooter-brand__tagline { font-size:0.875rem; line-height:1.7; max-width:420px; margin:0 0 20px; }

/* Social media */
.gffooter-social { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:20px; }

.gffooter-social__btn {
  width:36px; height:36px;
  display:grid; place-items:center;
  background:var(--bg, rgba(255,255,255,0.07));
  color:var(--color, #94a3b8);
  text-decoration:none;
  transition:background .25s ease, color .25s ease, transform .25s ease;
}
.gffooter-social__btn i, .gffooter-social__btn svg { font-size:15px; width:15px; height:15px; }
.gffooter-social__btn svg { fill: currentColor; }
.gffooter-social__btn:hover { transform:translateY(-2px); background:var(--bg-h, var(--gffooter-brand)); color:var(--color-h, #fff); }



/* Radius variants */
.gffooter-social--circle  .gffooter-social__btn { border-radius:50%; }
.gffooter-social--rounded .gffooter-social__btn { border-radius:8px; }
.gffooter-social--square  .gffooter-social__btn { border-radius:4px; }

/* Location */
.gffooter-location { display:flex; align-items:center; gap:8px; font-size:0.8125rem; }
.gffooter-location a,
.gffooter-location__link { text-decoration:none; color:inherit; display:flex; align-items:center; gap:8px; transition:color .2s; }
.gffooter-location a:hover { color:var(--gffooter-link-hover); }
.gffooter-location__icon { color:var(--gffooter-brand); display:flex; }
.gffooter-location__icon i, .gffooter-location__icon svg { width:14px; height:14px; font-size:14px; }
.gffooter-location__icon svg { fill: currentColor; }

/* Column headings */
.gffooter-col__title {
  color:#fff;
  font-size:0.75rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin:0 0 16px;
}

/* Column lists */
.gffooter-col__list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.gffooter-col__list li { font-size:0.875rem; }

.gffooter-link { color:inherit; text-decoration:none; transition:color .2s ease; }
.gffooter-link:hover { color:var(--gffooter-link-hover); }

/* Contact items with optional icon */
.gffooter-contact-item { display:flex; align-items:center; gap:8px; }
.gffooter-contact-item__icon { color:var(--gffooter-brand); flex-shrink:0; }
.gffooter-contact-item__icon i, .gffooter-contact-item__icon svg { width:13px; height:13px; font-size:13px; }
.gffooter-contact-item__icon svg { fill: currentColor; }

/* ── Bottom bar ── */
.gffooter-bottom {
  display:flex; flex-direction:column; gap:8px;
  align-items:center; text-align:center;
  padding:24px 0;
  border-top:1px solid var(--gffooter-border);
  font-size:0.75rem;
}
@media(min-width:768px){
  .gffooter-bottom { flex-direction:row; justify-content:space-between; text-align:left; }
  .gffooter-bottom__madein { padding-right: 140px; }
}
.gffooter-bottom__copy   { margin:0; }
.gffooter-bottom__madein { margin:0; }

.gffooter-social a svg, .gffooter-social a i {
  width: 24px;
  height: 24px;
  font-size: 24px;
  flex-shrink: 0;
  color: inherit;
}
