/* ========================= Floating contact (WhatsApp + Phone) â€“ left bottom ========================= */ .floating-contact{ position: fixed; right: 5px; bottom: 22px; display: flex; flex-direction: column; gap: 14px; z-index: 99999; } .floating-contact__btn{ width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; text-decoration: none; box-shadow: 0 14px 30px rgba(0,0,0,.28); transform: translateZ(0); transition: transform .15s ease, box-shadow .15s ease, filter .15s ease; border: 2px solid rgba(255,255,255,.15); } .floating-contact__btn svg{ width: 30px; height: 30px; color: #fff; } .floating-contact__btn:hover{ transform: translateY(-2px); box-shadow: 0 18px 38px rgba(0,0,0,.34); filter: brightness(1.03); } .floating-contact__btn:active{ transform: translateY(0); } /* WhatsApp */ .floating-contact__btn--wa{ background: linear-gradient(180deg, #35d97a 0%, #1fb35e 100%); } /* Phone (pomaraÅ„cz jak na stronie) */ .floating-contact__btn--tel{ background: linear-gradient(180deg, #ffb25a 0%, #ff9230 100%); } /* Mobile: trochÄ™ mniejsze */ @media (max-width: 640px){ .floating-contact{ right: 14px; bottom: 14px; gap: 12px; } .floating-contact__btn{ width: 38px; height: 38px; } .floating-contact__btn svg{ width: 28px; height: 28px; } } .floating-contact__btn img{ width: 30px; height: 30px; display: block; } .floating-contact__btn--mail { background: #2563eb; /* niebieski â€“ formularz */ } .floating-contact__btn--mail:hover { background: #1d4ed8; } /* MODUŁ "Dziękuję za kontakt" */ #dziekuje{ max-width: 820px; margin: 40px auto; padding: 26px 28px; border-radius: 16px; background: #fff; border: 1px solid rgba(255, 140, 0, 0.20); box-shadow: 0 10px 28px rgba(17, 24, 39, 0.08); text-align: center; color: #111827; position: relative; overflow: hidden; } /* akcent w tle */ #dziekuje::before{ content: ""; position: absolute; top: -90px; left: -90px; width: 240px; height: 240px; border-radius: 50%; background: rgba(255, 140, 0, 0.12); } /* dolna linia brand */ #dziekuje::after{ content: ""; position: absolute; left: 0; bottom: 0; height: 5px; width: 100%; background: linear-gradient(90deg, #ff7a00, #ffb347); } /* nagłówek */ #dziekuje h1{ margin: 0 0 10px 0; font-size: 34px; font-weight: 900; line-height: 1.15; color: #ff7a00; letter-spacing: 0.2px; } /* opis */ #dziekuje p{ margin: 0; font-size: 16.5px; line-height: 1.6; color: #374151; max-width: 680px; margin-left: auto; margin-right: auto; } /* responsywność */ @media (max-width: 768px){ #dziekuje{ margin: 24px 16px; padding: 20px 18px; } #dziekuje h1{ font-size: 26px; } #dziekuje p{ font-size: 15.5px; } } /* Cookie banner */ .cookie{ position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 9999; display: flex; justify-content: center; } .cookie__wrap{ width: 100%; max-width: 980px; background: rgba(15, 23, 42, 0.96); color: #e5e7eb; border: 1px solid rgba(255, 122, 0, 0.25); border-radius: 16px; box-shadow: 0 16px 40px rgba(0,0,0,0.25); padding: 16px 16px; display: flex; align-items: center; justify-content: space-between; gap: 16px; backdrop-filter: blur(8px); } .cookie__title{ display: inline-block; margin-right: 8px; color: #ff7a00; } .cookie__desc{ opacity: 0.95; } .cookie__link{ margin-left: 10px; color: #ffb347; text-decoration: none; font-weight: 600; } .cookie__link:hover{ text-decoration: underline; } .cookie__actions{ display: flex; gap: 10px; flex-shrink: 0; } .cookie__btn{ border: 0; border-radius: 999px; padding: 10px 14px; font-weight: 700; cursor: pointer; transition: transform 0.12s ease, opacity 0.2s ease; } .cookie__btn:active{ transform: scale(0.98); } .cookie__btn--primary{ background: linear-gradient(90deg, #ff7a00, #ffb347); color: #0b1220; } .cookie__btn--ghost{ background: rgba(255,255,255,0.08); color: #e5e7eb; border: 1px solid rgba(255,255,255,0.14); } @media (max-width: 768px){ .cookie__wrap{ flex-direction: column; align-items: stretch; text-align: center; } .cookie__actions{ justify-content: center; } } .cookie--show { animation: cookieIn .25s ease-out; } @keyframes cookieIn { from { transform: translateY(12px); opacity: 0; } to   { transform: translateY(0); opacity: 1; } } /* cookie banner – wymuszenie klikalności */ #cookie-banner{ z-index: 999999 !important; pointer-events: auto !important; } #cookie-banner *{ pointer-events: auto !important; } .cookie__btn{ position: relative; z-index: 1000000; } /* 1) Zablokuj poziome przesuwanie strony (najczęstsza przyczyna "nie mieści się") */ html, body{ overflow-x: hidden; } /* 2) Sekcja formularza – stabilne wymiary + tło */ section#formularz.quoteForm{ width: 100%; max-width: 100%; box-sizing: border-box; background-position: center center !important; background-repeat: no-repeat !important; min-height: 100vh;              /* mieści się na ekranie */ padding: 40px 0;                /* kontrolowany odstęp */ } /* Desktop: możesz zostawić contain, ale bez auto */ section#formularz.quoteForm.bg-contain{ background-size: contain !important; } /* Mobile: contain robi problemy -> cover */ @media (max-width: 768px){ section#formularz.quoteForm{ min-height: auto;             /* na mobile nie wymuszaj 100vh jeśli formularz jest wysoki */ padding: 24px 0; } section#formularz.quoteForm.bg-contain{ background-size: cover !important; } } /* 3) Jeśli w środku masz kontener z szerokością > 100% (częste), wymuś poprawnie */ section#formularz.quoteForm .container, section#formularz.quoteForm .quoteForm__container, section#formularz.quoteForm .quoteForm-container{ max-width: 1200px; width: 100%; box-sizing: border-box; margin-left: auto; margin-right: auto; padding-left: 16px; padding-right: 16px; }



/* USUŃ TŁO OBRAZKOWE DLA FORMULARZA NA MOBILE */
@media (max-width: 768px){
  section#formularz.quoteForm{
    background-image: none !important;
    background: #ffffff !important; /* lub #f8fafc jeśli chcesz delikatną szarość */
  }

  /* jeśli tło jest robione pseudo-elementem */
  section#formularz.quoteForm::before,
  section#formularz.quoteForm::after{
    content: none !important;
    display: none !important;
    background: none !important;
  }
}

#cookie-banner{ z-index: 999999 !important; pointer-events: auto !important; }
#cookie-banner *{ pointer-events: auto !important; }
.cookie__btn{ position: relative; z-index: 1000000; }
