/* ZSINÓRMÉRTÉK° — M1 additive styles.
   Uses the existing design tokens (var(--ink) etc. defined in index.html).
   Nothing here overrides the original site's look; it only styles NEW elements. */

/* ---- footer meta row (legal links + social) ---- */
.foot-meta{
  max-width:var(--wrap);margin:22px auto 0;padding:20px var(--pad) 0;
  border-top:1px solid var(--grid);
  display:flex;justify-content:space-between;align-items:center;gap:18px 26px;flex-wrap:wrap;
}
.foot-legal{display:flex;gap:8px 20px;flex-wrap:wrap;align-items:center}
.foot-legal a,.foot-legal .lnk{
  font-family:var(--fm);font-size:11.5px;letter-spacing:.04em;color:var(--ink2);
  text-decoration:none;border:none;background:none;cursor:pointer;padding:2px 0;
  border-bottom:1px solid transparent;transition:color .15s,border-color .15s;
}
.foot-legal a:hover,.foot-legal .lnk:hover{color:var(--blueprint);border-bottom-color:var(--line)}
.foot-social{display:flex;gap:12px;align-items:center}
.foot-social a{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border:1.5px solid var(--line);color:var(--ink2);transition:color .16s,border-color .16s,transform .16s;
}
.foot-social a:hover{color:var(--blueprint);border-color:var(--blueprint);transform:translateY(-2px)}
.foot-social svg{width:17px;height:17px;fill:currentColor}

/* ---- cookie consent banner (privacy-first) ---- */
.cc-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:200;
  background:var(--ink);color:var(--ink-paper);border-top:2px solid var(--redline);
  box-shadow:0 -10px 30px rgba(14,36,56,.22);
  transform:translateY(110%);transition:transform .32s cubic-bezier(.22,.61,.36,1);
}
.cc-banner.show{transform:none}
.cc-in{
  max-width:var(--wrap);margin:0 auto;padding:20px var(--pad);
  display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap;justify-content:space-between;
}
.cc-txt{font-family:var(--fb);font-size:.98rem;line-height:1.5;color:rgba(var(--ink-paper-rgb),.9);max-width:64ch}
.cc-txt a{color:var(--blue-bright);text-decoration:underline}
.cc-actions{display:flex;gap:12px;flex-wrap:wrap}
.cc-actions .btn{padding:11px 20px;min-height:44px;font-size:.92rem}

/* ---- lead / quote modal ---- */
.lead-modal{position:fixed;inset:0;z-index:210;display:none;align-items:center;justify-content:center;padding:20px}
.lead-modal.open{display:flex}
.lead-modal .backdrop{position:absolute;inset:0;background:rgba(14,36,56,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.lead-modal .panel{
  position:relative;background:var(--paper2);border:2px solid var(--ink);box-shadow:var(--shi);
  width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:32px 30px;
}
.lead-modal h3{margin-bottom:6px}
.lead-modal .sub{font-family:var(--fm);font-size:12px;color:var(--ink2);margin-bottom:20px}
.lead-modal label{display:block;font-family:var(--fm);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin:14px 0 6px}
.lead-modal input,.lead-modal textarea{
  width:100%;font-family:var(--fb);font-size:1.02rem;padding:12px 14px;border:1.5px solid var(--line);background:var(--paper2);color:var(--ink)
}
.lead-modal input:focus,.lead-modal textarea:focus{outline:2px solid var(--blueprint);outline-offset:1px;border-color:var(--blueprint)}
.lead-modal .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lead-modal .err{color:var(--redline);font-size:.88rem;margin-top:10px;min-height:1.2em;font-family:var(--fd)}
.lead-modal .ok{color:var(--ok);font-family:var(--fd);font-weight:700;font-size:1.2rem;text-align:center;padding:18px 0}
.lead-modal .row{display:flex;justify-content:space-between;gap:14px;margin-top:22px}
.lead-modal .x{position:absolute;top:12px;right:14px;border:none;background:none;font-family:var(--fd);font-size:22px;line-height:1;color:var(--ink2);cursor:pointer;padding:6px}
.lead-modal .x:hover{color:var(--redline)}

@media(prefers-reduced-motion:reduce){
  .cc-banner{transition:none}
}
