/* =========================================
   STYLE DEDYKOWANE DLA PODSTRONY: BADANIA (R&D)
   Rozszerzają style bazowe (style4.css)
   ========================================= */

/* --- HERO --- */
.rd-hero {
  /* Tło techniczne, laboratorium, innowacje */
  background-image: linear-gradient(rgba(47, 63, 73, 0.9), rgba(47, 63, 73, 0.8)), var(--pxs-subpage-hero-image, url('../img/solutions/dach-plaski.webp')); 
}

.rd-hero__title { font-weight: var(--w-bold); }
/* --- INTRO --- */
.rd-intro { background: #fff; }
.rd-intro__container { max-width: 900px; margin: 0 auto; text-align: center; }
.lead-text { font-size: 1.15rem; line-height: 1.7; color: var(--color-text-heading); margin-bottom: 2rem; }

.rd-features {
  list-style: none; display: inline-flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center;
}
.rd-features li {
  background: #f8fafc; padding: 1rem 1.5rem; border-radius: 50px;
  font-weight: var(--w-semi); color: var(--color-primary); border: 1px solid #e2e8f0;
}

/* --- SCIENCE (WSPÓŁPRACA Z NAUKĄ) --- */
.science { background: #fff; text-align: center; }
.section-desc { max-width: 700px; margin: 0 auto 3rem; font-size: 1.1rem; color: var(--color-text); }

.science-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; max-width: 1000px; margin: 0 auto 3rem;
}

.science-card {
  padding: 2.5rem; border: 1px solid #e2e8f0; border-radius: 12px;
  transition: transform 0.3s ease, border-color 0.3s ease;
  display: flex; flex-direction: column; align-items: center;
}
.science-card:hover { transform: translateY(-5px); border-color: var(--color-primary); }

.science-icon { font-size: 3rem; color: var(--color-primary); margin-bottom: 1rem; }
.science-card h3 { font-size: 1.3rem; margin-bottom: 0.5rem; color: var(--color-text-heading); }
.science-card p { font-size: 0.95rem; line-height: 1.5; color: var(--color-text); }

.science-note {
  max-width: 700px; margin: 0 auto; padding: 1.5rem; background: #f0f4f8;
  border-radius: 8px; font-style: italic; color: #555;
}

/* --- NCBiR (GRANTY) --- */
.ncbir { background: var(--color-dark); color: #fff; position: relative; overflow: hidden; }
.ncbir::after {
  content:""; position: absolute; inset: 0; background: url('../img/pattern.svg'); opacity: 0.05; pointer-events: none;
}
.ncbir__container { position: relative; z-index: 2; display: grid; grid-template-columns: 1.2fr 1fr; gap: 4rem; align-items: center; }

.ncbir__highlight {
  font-size: 3.5rem; font-weight: var(--w-bold); color: var(--color-primary);
  margin-bottom: 1.5rem; line-height: 1;
}

.ncbir__text { font-size: 1.1rem; margin-bottom: 1.5rem; opacity: 0.9; }
.ncbir__list { list-style: none; margin-left: 1rem; }
.ncbir__list li { position: relative; padding-left: 1.5rem; margin-bottom: 0.8rem; font-size: 1.05rem; }
.ncbir__list li::before { content: "•"; position: absolute; left: 0; color: var(--color-primary); font-size: 1.5rem; line-height: 1rem; top: 2px; }

.ncbir__media img { width: 100%; border-radius: 8px; box-shadow: 0 20px 50px rgba(0,0,0,0.3); }

/* --- ENGINEERING & INNOVATION --- */
.engineering { background: #fff; }
.eng-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }

.eng-block {
  padding: 3rem; border: 1px solid #e2e8f0; border-radius: 12px;
  display: flex; flex-direction: column; justify-content: center;
}
.eng-block h3 { font-size: 1.8rem; margin-bottom: 1rem; color: var(--color-text-heading); }
.eng-block p { font-size: 1rem; line-height: 1.6; color: var(--color-text); margin-bottom: 0.5rem; }

/* --- TEAM COUNTERS (LICZNIKI) --- */
.team-counters {
  background: #f8fafc; text-align: center;
}

.counters-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem;
  max-width: 900px; margin: 3rem auto;
}

.counter-item {
  padding: 2rem; background: #fff; border-radius: 12px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.03);
}

.counter-number {
  font-size: 4rem; font-weight: var(--w-bold); color: var(--color-primary);
  line-height: 1; margin-bottom: 0.5rem; font-variant-numeric: tabular-nums;
}

.counter-label {
  font-size: 1.1rem; font-weight: var(--w-semi); color: var(--color-text-heading); text-transform: uppercase; letter-spacing: 1px;
}

.counters-footer { font-size: 1.2rem; font-weight: var(--w-semi); color: var(--color-dark); margin-top: 2rem; }

/* --- FORMULARZ --- */
.offer-contact { background: #fff; }
.form-wrapper { max-width: 800px; margin: 0 auto; background: #fff; padding: 3rem; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.05); border: 1px solid #e2e8f0; }
.b2b-form .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.form-group { display: flex; flex-direction: column; gap: 0.5rem; }
.form-group.full-width { grid-column: 1 / -1; }
.b2b-form label { font-size: 0.9rem; font-weight: var(--w-semi); color: var(--color-dark); }
.b2b-form input, .b2b-form textarea { padding: 0.8rem; border: 1px solid #cbd5e0; border-radius: 6px; font-family: inherit; transition: border-color 0.3s; }
.b2b-form input:focus, .b2b-form textarea:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(235,101,48,0.1); }
.checkbox-group { flex-direction: row; align-items: flex-start; gap: 0.8rem; }
.checkbox-group input { margin-top: 4px; }
.checkbox-group label { font-weight: var(--w-reg); font-size: 0.85rem; color: #718096; }
.form-actions { margin-top: 2rem; text-align: center; }

/* Responsive */
@media (max-width: 992px) {
  .ncbir__container { grid-template-columns: 1fr; }
  .ncbir__media { order: -1; }
  .eng-grid { grid-template-columns: 1fr; }
  .counters-grid { grid-template-columns: 1fr; gap: 1rem; }
  .rd-hero__title { font-size: 2.5rem; }
}

@media (max-width: 576px) {
  .b2b-form .form-grid { grid-template-columns: 1fr; }
  .ncbir__highlight { font-size: 2.5rem; }
}
