/* SEO / CLS / RWD hardening — pulawski.eu (2026-08-19) */

/* --- CLS: metryczny fallback czcionki (Montserrat Fallback = Arial z size-adjust) ---
   Rdzeń CMS wstrzykuje --main-font/--heading-font BEZ stosu zapasowego, więc do czasu
   pobrania Montserrat tekst renderuje się domyślną czcionką i "przeskakuje" (CLS na desktopie).
   Nadpisujemy zmienne, dokładając metrycznie dopasowany fallback -> brak przeskoków,
   a po pobraniu Montserrat i tak jest używana (pierwsza na liście). */
:root{
  --main-font:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,Arial,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
  --heading-font:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,Arial,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
  --font-global:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,Arial,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
  --font-headline:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,Arial,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
}

/* Eliminacja poziomego przewijania (nachodzenie/wyjeżdżanie elementów na mobile) */
@media only screen and (max-width:1024px){
  html,body{overflow-x:hidden}
}

/* Obrazy w hero zawsze skalowalne */
.header-main img{max-width:100%;height:auto}

/* Rezerwacja miejsca dla wideo w sekcji pokazowej — brak skoków layoutu (CLS) */
.section-projectpage-info-images video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;background:#eef1f5}

/* Hero: skalowanie tekstu clamp() zamiast jednostek vh (stabilny, czytelny layout) */
@media only screen and (max-width:480px){
  .header-main h1{font-size:clamp(1.6rem,7vw,2.4rem);line-height:1.18;word-break:break-word}
  .header-main .btn-cta{font-size:clamp(.95rem,3.6vh,1.2rem)}
  .header-main-content{padding:0 1rem;max-width:100%}
  /* dekoracje absolutne nie wchodzą na treść na małych ekranach */
  .header-main .star,.header-main .star-2,.header-main .circle-mini,.header-main .circle-mini2,.header-main .icon-mini{display:none}
}
@media only screen and (max-width:823px){
  .header-main .circle-mini,.header-main .circle-mini2,.header-main .icon-mini{display:none}
}

/* CLS: metryczny fallback także tam, gdzie Montserrat jest wpisana wprost (nie przez zmienną) */
h1,h2,h3,h4,h5,h6,p,li,blockquote,figcaption,
.header-main h1,.header-main-content h1,.header-main-content,
.section h1,.section h2,.section h3,.section h4,
.btn-cta,.btn-primary-full{
  font-family:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,Arial,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
}
