/* ============================================================
   GOWATER AI — STOPKA V1.67
   Rozszerzona stopka (marka + opis, nawigacja, blok kontaktowy)
   oraz modal „Kontakt” z danymi spółki i trzema adresami e-mail.
   Korzysta ze zmiennych --blue/--cyan/--blue-deep itd. zdefinio-
   wanych w :root na każdej stronie, więc paleta jest zawsze
   spójna z resztą serwisu bez powielania kolorów.
   ============================================================ */

.footer-inner{
  position:relative;
  width:100%;
  max-width:var(--maxw-wide, 1800px);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:28px;
  color:#eef6ff;
  text-shadow:0 1px 3px rgba(4,20,50,0.45);
}

.footer-top{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  gap:40px;
  padding-bottom:26px;
  border-bottom:1px solid rgba(238,246,255,0.18);
}

.footer-brand{ display:flex; flex-direction:column; gap:14px; max-width:440px; }
.footer-logo{ height:40px; width:auto; object-fit:contain; }
.footer-logo-fallback{ font:800 20px var(--font-display,'Manrope',sans-serif); letter-spacing:0.02em; color:#fff; }
.footer-about{
  font:400 13.5px/1.6 var(--font-body,'Inter',sans-serif);
  color:#cfe4fb;
  margin:0;
  text-shadow:0 1px 2px rgba(4,20,50,0.25);
}

.footer-col-title{
  display:block;
  font:800 12px var(--font-display,'Manrope',sans-serif);
  letter-spacing:0.09em;
  text-transform:uppercase;
  color:#9fc8f2;
  margin:0 0 14px;
}

.footer-nav{ display:flex; flex-direction:column; gap:10px; }
.footer-nav a{
  font:600 14px var(--font-body,'Inter',sans-serif);
  color:#eef6ff;
  text-decoration:none;
  width:fit-content;
  opacity:0.92;
}
.footer-nav a:hover{ opacity:1; text-decoration:underline; }

.footer-contact-block{ display:flex; flex-direction:column; gap:26px; align-items:flex-start; }
.footer-cta-group{ display:flex; flex-direction:column; gap:12px; align-items:flex-start; max-width:280px; }
.footer-cta-label{
  margin:0;
  font:700 14px/1.45 var(--font-body,'Inter',sans-serif);
  color:#dceeff;
}
.footer-pill-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:13px 26px;
  border:2.5px solid rgba(238,246,255,0.5);
  border-radius:999px;
  background:#071638;
  color:#fff;
  font:800 13.5px var(--font-display,'Manrope',sans-serif);
  letter-spacing:0.04em;
  cursor:pointer;
  text-decoration:none;
  width:fit-content;
  white-space:nowrap;
  box-shadow:0 10px 24px -12px rgba(3,10,28,0.6);
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
.footer-pill-btn:hover{ background:#040c1f; border-color:rgba(238,246,255,0.7); transform:translateY(-1px); }

.footer-bottom{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding-top:4px;
  flex-wrap:wrap;
}
.footer-bottom span{
  font:600 13px var(--font-body,'Inter',sans-serif);
  color:#cfe4fb;
  letter-spacing:0.02em;
}
.footer-legal-link{
  font:600 13px var(--font-body,'Inter',sans-serif);
  color:#9fc8f2;
  text-decoration:none;
}
.footer-legal-link:hover{ color:#fff; text-decoration:underline; }
.footer-legal-sep{ color:#4d6c98; font-size:13px; }

@media (max-width:1080px){
  .footer-top{ grid-template-columns:1fr 1fr; }
  .footer-brand{ grid-column:1/-1; max-width:none; }
}
@media (max-width:600px){
  .footer-top{ grid-template-columns:1fr; gap:26px; }
}

/* ---- Modal „Kontakt” --------------------------------------- */
.contact-info-dialog{
  border:1px solid #b9d7f5;
  border-radius:24px;
  padding:0;
  width:min(560px, calc(100vw - 32px));
  max-height:min(92vh, 850px);
  box-shadow:0 32px 75px #07163855;
  color:#102c54;
}
.contact-info-dialog::backdrop{ background:#061c3fac; backdrop-filter:blur(5px); }
.contact-info-panel{ padding:26px 28px 30px; background:#f1f8ff; }
.contact-info-head{ display:flex; justify-content:space-between; align-items:start; gap:12px; margin-bottom:6px; }
.contact-info-head h2{ font:800 clamp(22px,4vw,30px) var(--font-display,'Manrope',sans-serif); color:#082b68; margin:0 0 6px; }
.contact-info-close{ border:0; background:#dcecff; border-radius:50%; width:36px; height:36px; font-size:26px; line-height:1; cursor:pointer; color:#0c3972; flex:none; }

.contact-info-company{
  font:600 14px/1.55 var(--font-body,'Inter',sans-serif);
  color:#33445c;
  background:#e3eefb;
  border-radius:12px;
  padding:14px 16px;
  margin:0 0 20px;
}
.contact-info-company strong{ display:block; font-size:15px; color:#082b68; margin-bottom:3px; }

.contact-info-rows{ display:flex; flex-direction:column; gap:10px; }
.contact-info-row{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:13px 16px;
  border:1px solid #9cc3ed;
  border-radius:12px;
  background:#fff;
  text-decoration:none;
  color:inherit;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.contact-info-row:hover{ border-color:#0a4fcb; background:#f6faff; transform:translateY(-1px); }
.contact-info-label{ font:700 13px var(--font-body,'Inter',sans-serif); color:#526981; }
.contact-info-email{ font:800 15.5px var(--font-display,'Manrope',sans-serif); color:#0a4fcb; }

.contact-info-row--topic{ gap:10px; cursor:default; }
.contact-info-row--topic:hover{ transform:none; }
.contact-topic-select,
.contact-topic-other{
  width:100%;
  box-sizing:border-box;
  border:1px solid #9cc3ed;
  border-radius:9px;
  background:#f6faff;
  color:#102c54;
  padding:10px 12px;
  font:600 13.5px var(--font-body,'Inter',sans-serif);
  margin-top:4px;
}
.contact-topic-select:focus,
.contact-topic-other:focus{ outline:2px solid #0a4fcb; outline-offset:1px; }
.contact-topic-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:2px;
  padding:11px 18px;
  border-radius:999px;
  background:#0a4fcb;
  color:#fff;
  font:800 13px var(--font-display,'Manrope',sans-serif);
  letter-spacing:0.02em;
  text-decoration:none;
  width:fit-content;
  transition:background .18s ease, transform .18s ease;
}
.contact-topic-btn:hover{ background:#083da3; transform:translateY(-1px); }

@media (max-width:530px){
  .contact-info-panel{ padding:20px; }
}
