.elementor-473 .elementor-element.elementor-element-25589f3:not(.elementor-motion-effects-element-type-background), .elementor-473 .elementor-element.elementor-element-25589f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F9F9;}.elementor-473 .elementor-element.elementor-element-25589f3{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-473 .elementor-element.elementor-element-25589f3 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}:root{--page-title-display:none;}/* Start custom CSS for section, class: .elementor-element-b3b0e30 *//* =============== DESKTOP / GLOBAL =============== */

.hero-home {
  padding:0;
  position:relative;
  overflow:hidden;
}
.hero-wrap {
  position:relative;
  height:480px;
  border-radius:0;
}
.hero-bg {
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  display:block; filter:brightness(0.7);
}
.hero-inner {
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  text-align:center; padding:0 16px;
}
.hero-box {
  background:rgba(255,255,255,0.08);
  backdrop-filter:saturate(120%) blur(2px);
  border:1px solid rgba(255,255,255,0.2);
  border-radius:var(--radius);
  padding:20px 22px;
}
.hero-title { color:#fff; margin:0 0 8px; font-size:38px; }
.hero-sub { color:#f0f0f0; max-width:820px; margin:0 auto; }
.btn {
  display:inline-block; background:var(--accent); color:#fff;
  padding:12px 26px; border-radius:12px; font-weight:700; margin-top:14px;
  transition:.3s;
  text-align:center;
}
.btn:hover{ background:#000; color:#fff; }


/* =============== MOBILE ≤640px – NA SAM KONIEC! =============== */
@media (max-width:640px){

  /* sekcja hero rośnie z treścią */
  .hero-wrap{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    height:auto !important;
    min-height:380px !important;
    padding:34px 0 42px !important;
  }

  /* tło */
  .hero-bg{
    position:absolute !important;
    top:0; left:0;
    width:100% !important; height:100% !important;
    object-fit:cover; object-position:center;
    opacity:.18 !important;
    filter:grayscale(100%) brightness(1) !important;
    z-index:1 !important;
  }

  /* wrapper */
  .hero-inner{ 
    position:relative !important; 
    inset:auto !important;
    z-index:2 !important; 
    width:100% !important; 
    display:block !important;
    text-align:center !important;   /* wyśrodkowanie całości */
    padding:0 8px !important;
  }

  /* biały box */
  .hero-box{
    background:#fff !important;
    border:1px solid #e9e9e9 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
    padding:16px !important;
    max-width:92% !important;
    margin:0 auto !important;
    backdrop-filter:none !important;
  }

  /* nagłówek + opis */
  .hero-title{ 
    color:#000 !important; 
    font-size:26px !important; 
    line-height:1.3 !important; 
    margin-bottom:8px !important; 
    text-align:center !important;
  }
  .hero-sub{ 
    color:#444 !important; 
    font-size:14.5px !important; 
    line-height:1.55 !important; 
    max-width:none !important;
    margin:0 auto !important;
    text-align:center !important;   /* wyśrodkowany paragraf */
  }

  /* przycisk */
  .hero-box .btn{ 
    margin-top:10px !important; 
    padding:11px 20px !important; 
    white-space:nowrap !important; 
    color:#fff !important;          /* tekst przycisku biały */
    display:inline-block !important;
    text-align:center !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6a78675 */:root {
  --accent:#B18813;
  --text:#222;
  --muted:#555;
  --bg:#f9f9f9;
  --card:#fff;
  --radius:14px;
}

section { padding:32px 16px; }
.container { max-width:1100px; margin:0 auto; }

h1,h2,h3 { color:var(--text); margin-bottom:12px; }
h1{font-size:36px;font-weight:800;}
h2{font-size:28px;font-weight:700;}
h3{font-size:20px;font-weight:700;}
p,li{color:var(--muted);font-size:16px;line-height:1.7;}
ul{margin:14px 0 0 18px;}
strong{color:var(--text);}



/* USP */
.usp { background:#fff; }
.usp-grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:28px; margin-top:10px;
}
.usp-item { text-align:center; }
.usp-icon {
  width:60px; height:60px; object-fit:contain; display:block; margin:0 auto 10px;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.06));
}
.usp-title{ margin-bottom:6px; }
.usp-desc { font-size:15px; }

/* SERVICES */
.services { background:var(--bg); }
.services-lead { max-width:760px; }
.services-grid {
  margin-top:14px;
  display:grid; grid-template-columns:1fr 1fr; gap:28px;
}
.service-col { background:var(--card); border-radius:var(--radius); padding:18px;
  box-shadow:0 4px 12px rgba(0,0,0,0.05);
}
.service-head{ display:flex; gap:12px; align-items:center; margin-bottom:8px;}
.service-head img{ width:46px; height:46px; object-fit:contain; }
.service-head h3{ margin:0; }
.service-list{ list-style:none; margin:8px 0 0; padding:0; }
.service-list li{
  display:grid; grid-template-columns:38px 1fr; gap:10px; align-items:start;
  padding:10px 0; border-top:1px solid #eee;
}
.service-list li:first-child{ border-top:0; }
.service-list img{ width:28px; height:28px; object-fit:contain; margin-top:2px; }

/* PHOTO / REALIZATION */
.photo {
  background:#fff;
}
.photo-grid {
  display:grid; grid-template-columns:1.2fr 1fr; gap:28px; align-items:center;
}
.photo-box {
  border-radius:var(--radius); overflow:hidden;
  box-shadow:0 6px 18px rgba(0,0,0,0.08);
}
.photo-box img{ width:100%; height:340px; object-fit:cover; display:block; }
.photo-text p{ margin:0 0 8px; }

/* CTA STRIP */
.cta-strip {
  background:linear-gradient(90deg, rgba(177,136,19,0.12), rgba(0,0,0,0.03));
  border-radius:var(--radius);
}
.cta-wrap {
  display:flex; gap:16px; align-items:center; justify-content:space-between; flex-wrap:wrap;
}
.cta-wrap p{ margin:0; font-weight:600; color:var(--text); }

/* TESTIMONIALS (opcjonalne) */
.testimonials { background:var(--bg); }
.testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.testi {
  background:var(--card); border-radius:var(--radius); padding:16px;
  box-shadow:0 3px 10px rgba(0,0,0,0.05);
}
.testi p{ margin:0; }
.testi .name{ margin-top:8px; font-weight:700; color:var(--text); }

/* CONTACT BAR */
.contact-bar{
  background:#000; color:#fff; border-radius:var(--radius);
}
.contact-flex{
  display:flex; gap:18px; align-items:center; justify-content:center; flex-wrap:wrap;
}
.contact-flex a{ color:#fff; font-weight:700; }
.contact-flex .sep{ opacity:.35; }

/* RESPONSIVE */
@media (max-width:1024px){
  .usp-grid{ grid-template-columns:repeat(2,1fr); }
  .services-grid{ grid-template-columns:1fr; }
  .photo-grid{ grid-template-columns:1fr; }
  .testi-grid{ grid-template-columns:1fr 1fr; }
  .hero-wrap{ height:420px; }
}
@media (max-width:640px){
  h1{font-size:30px;}
  h2{font-size:24px;}
  .hero-wrap{ height:360px; }
  .testi-grid{ grid-template-columns:1fr; }
}


.service-list.no-icons li {
  display:block; 
  border-top:1px solid #eee;
  padding:10px 0;
}
.service-list.no-icons li:first-child { border-top:0; }

/* 1) Upewnij się, że kolumny w .services-grid nie „rozpychają” siatki */
.services-grid > * { min-width: 0; }

/* 2) (opcjonalnie) usuń ewentualne resztki layoutu z li bez obrazków */
.service-list.no-icons { list-style: none; margin:8px 0 0; padding:0; }

@media (max-width:640px){
  section { padding:22px 8px; } /* zamiast 32px 16px */

  .container { padding:0 5px; } /* minimalny odstęp od krawędzi */

  .service-col, 
  .testi {
    padding:14px; /* mniej przestrzeni wewnątrz kart */
  }

  .usp-grid { 
    grid-template-columns:1fr 1fr; 
    gap:16px; 
  }

  .services-grid, 
  .photo-grid, 
  .testi-grid {
    grid-template-columns:1fr;
    gap:20px;
  }

  .hero-wrap{ height:360px; }
  h1{font-size:28px;}
  h2{font-size:22px;}
}/* End custom CSS */