/* scoped style strony (z tresci produkcyjnych szablonow) */

/* ============================================================
   JD - Jak to działa (Figma ss() 1:1)
   ============================================================ */

/* Icon helper */
.jd-icon { display:inline-flex; flex-shrink:0; }
.jd-icon svg { width:24px; height:24px; }
/*ikona*/ .jd-icon .bz-ico.bz-ico { width: 24px; height: 24px; }
/*ikona*/ .jd-icon li::before { width: 24px; height: 24px; }

/* Hero */
.jd-hero { background:linear-gradient(135deg, rgba(210,229,225,0.3), #fff); padding:80px 0 112px; }
@media(min-width:1024px){ .jd-hero { padding:112px 0; } }
.jd-hero__inner { max-width:896px; margin:0 auto; text-align:center; }
.jd-hero h1 { font-size:36px; font-weight:700; color:#232D4B; margin-bottom:24px; line-height:1.1; }
@media(min-width:1024px){ .jd-hero h1 { font-size:60px; } }
.jd-hero__lead { font-size:20px; color:#374151; margin-bottom:16px; line-height:1.6; }
.jd-hero__sub { font-size:18px; color:#4B5563; line-height:1.6; }

/* Section base */
.jd-section { padding:80px 0; }
.jd-section--white { background:#fff; }
.jd-section--gray { background:#F9FAFB; }
.jd-section--dark { background:linear-gradient(135deg, #232D4B, #1a2136); color:#fff; }

/* Section header with icon */
.jd-section-header { display:flex; align-items:center; gap:16px; margin-bottom:64px; }
.jd-section-header__text h2 { font-size:30px; font-weight:700; color:#232D4B; margin-bottom:4px; }
@media(min-width:1024px){ .jd-section-header__text h2 { font-size:48px; } }
.jd-section-header__text p { font-size:18px; color:#4B5563; line-height:1.6; margin-top:8px; }
.jd-section--dark .jd-section-header__text h2 { color:#fff; }
.jd-section--dark .jd-section-header__text p { color:#D1D5DB; }

/* Header icon box */
.jd-header-icon { width:64px; height:64px; border-radius:16px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.jd-header-icon--green { background:#81BD51; }
.jd-header-icon--navy { background:#232D4B; }
.jd-header-icon svg { width:32px; height:32px; color:#fff; }
/*ikona*/ .jd-header-icon .bz-ico.bz-ico { width: 32px; height: 32px; color: #fff; }
/*ikona*/ .jd-header-icon li::before { width: 32px; height: 32px; color: #fff; }

/* Max-width wrappers */
.jd-max3 { max-width:768px; margin:0 auto; }
.jd-max4 { max-width:896px; margin:0 auto; }

/* Step cards stack */
.jd-steps-stack { display:flex; flex-direction:column; gap:32px; max-width:896px; margin:0 auto; }

/* Step card */
.jd-step-card { border-radius:12px; padding:32px; border:1px solid #E5E7EB; }
.jd-step-card--mint { background:linear-gradient(135deg, rgba(210,229,225,0.2), #fff); }
.jd-step-card--white { background:#fff; }
.jd-step-card__head { display:flex; align-items:center; gap:16px; margin-bottom:16px; }
.jd-step-num { width:40px; height:40px; border-radius:50%; color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; font-weight:600; flex-shrink:0; }
.jd-step-num--green { background:#81BD51; }
.jd-step-num--navy { background:#232D4B; }
.jd-step-card h3 { font-size:20px; font-weight:500; color:#232D4B; }
.jd-step-card__desc { color:#4B5563; line-height:1.6; margin-bottom:20px; }

/* Bullet list */
.jd-bullets { display:flex; flex-direction:column; gap:10px; }
.jd-bullet { display:flex; align-items:flex-start; gap:10px; color:#4B5563; font-size:15px; line-height:1.5; }
.jd-bullet svg { width:20px; height:20px; flex-shrink:0; margin-top:2px; }
/*ikona*/ .jd-bullet .bz-ico.bz-ico { width: 20px; height: 20px; flex-shrink: 0; margin-top: 2px; }
/*ikona*/ .jd-bullet li::before { width: 20px; height: 20px; flex-shrink: 0; margin-top: 2px; }
.jd-bullet--green svg { color:#81BD51; }
/*ikona*/ .jd-bullet--green .bz-ico.bz-ico { color: #81BD51; }
/*ikona*/ .jd-bullet--green li::before { color: #81BD51; }
.jd-bullet--navy svg { color:#232D4B; }
/*ikona*/ .jd-bullet--navy .bz-ico.bz-ico { color: #232D4B; }
/*ikona*/ .jd-bullet--navy li::before { color: #232D4B; }

/* Rich bullet (bold + sub-text) */
.jd-bullet strong { color:#232D4B; display:block; font-weight:500; }
.jd-bullet .jd-bullet-sub { display:block; font-size:14px; color:#6B7280; margin-top:4px; }

/* Content cards (egzaminy section) */
.jd-content-cards { display:flex; flex-direction:column; gap:32px; max-width:896px; margin:0 auto; }
.jd-content-card { background:linear-gradient(135deg, rgba(210,229,225,0.2), #fff); border-radius:12px; padding:32px; border:1px solid #E5E7EB; }
.jd-content-card h3 { font-size:20px; font-weight:500; color:#232D4B; margin-bottom:12px; }
.jd-content-card__desc { color:#4B5563; line-height:1.6; margin-bottom:20px; }

/* 2-col exam types grid */
.jd-exam-types { display:grid; gap:16px; margin-top:20px; }
@media(min-width:768px){ .jd-exam-types { grid-template-columns:1fr 1fr; } }
.jd-exam-type { background:rgba(129,189,81,0.08); border-radius:12px; padding:20px; display:flex; align-items:flex-start; gap:12px; }
.jd-exam-type-icon { width:40px; height:40px; border-radius:10px; background:#81BD51; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.jd-exam-type-icon svg { width:20px; height:20px; color:#fff; }
/*ikona*/ .jd-exam-type-icon .bz-ico.bz-ico { width: 20px; height: 20px; color: #fff; }
/*ikona*/ .jd-exam-type-icon li::before { width: 20px; height: 20px; color: #fff; }
.jd-exam-type h4 { font-weight:500; color:#232D4B; margin-bottom:4px; }
.jd-exam-type p { font-size:14px; color:#4B5563; }

/* After school - 2x2 grid */
.jd-after-grid { display:grid; gap:24px; max-width:896px; margin:0 auto; }
@media(min-width:768px){ .jd-after-grid { grid-template-columns:1fr 1fr; } }
.jd-after-card { border-radius:12px; padding:32px; border:1px solid #E5E7EB; }
.jd-after-card--green { background:rgba(129,189,81,0.1); }
.jd-after-card--navy { background:rgba(35,45,75,0.1); }
.jd-after-icon { width:48px; height:48px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.jd-after-icon--green { background:rgba(129,189,81,0.1); }
.jd-after-icon--navy { background:rgba(35,45,75,0.1); }
.jd-after-icon svg { width:24px; height:24px; }
/*ikona*/ .jd-after-icon .bz-ico.bz-ico { width: 24px; height: 24px; }
/*ikona*/ .jd-after-icon li::before { width: 24px; height: 24px; }
.jd-after-icon--green svg { color:#81BD51; }
/*ikona*/ .jd-after-icon--green .bz-ico.bz-ico { color: #81BD51; }
/*ikona*/ .jd-after-icon--green li::before { color: #81BD51; }
.jd-after-icon--navy svg { color:#232D4B; }
/*ikona*/ .jd-after-icon--navy .bz-ico.bz-ico { color: #232D4B; }
/*ikona*/ .jd-after-icon--navy li::before { color: #232D4B; }
.jd-after-card h3 { font-size:20px; font-weight:500; color:#232D4B; margin-bottom:12px; }
.jd-after-card__desc { color:#4B5563; line-height:1.6; margin-bottom:16px; }
.jd-after-bullets { display:flex; flex-direction:column; gap:8px; }
.jd-after-bullet { display:flex; align-items:flex-start; gap:8px; font-size:14px; color:#4B5563; }
.jd-after-bullet svg { width:16px; height:16px; flex-shrink:0; margin-top:2px; color:#81BD51; }
/*ikona*/ .jd-after-bullet .bz-ico.bz-ico { width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; color: #81BD51; }
/*ikona*/ .jd-after-bullet li::before { width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; color: #81BD51; }

/* CTA */
.jd-cta { text-align:center; }
.jd-cta h2 { font-size:30px; font-weight:700; margin-bottom:16px; color:#fff; }
@media(min-width:1024px){ .jd-cta h2 { font-size:48px; } }
.jd-cta p { font-size:18px; color:#D1D5DB; margin-bottom:32px; line-height:1.6; }
.jd-cta__btns { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; }
/*przycisk*/ .wp-block-button.jd-cta__btns > .wp-block-button__link { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; }
@media(min-width:640px){ .jd-cta__btns { flex-direction:row; }
/*przycisk*/ .wp-block-button.jd-cta__btns > .wp-block-button__link { flex-direction:row; } }
.jd-btn-green { display:inline-flex; align-items:center; gap:8px; background:#81BD51; color:#fff; padding:16px 32px; border-radius:8px; font-weight:500; text-decoration:none; transition:background 0.2s; }
/*przycisk*/ .wp-block-button.jd-btn-green > .wp-block-button__link { display:inline-flex; align-items:center; gap:8px; background:#81BD51; color:#fff; padding:16px 32px; border-radius:8px; font-weight:500; text-decoration:none; transition:background 0.2s; }
.jd-btn-green:hover { background:#6fa043; }
/*przycisk*/ .wp-block-button.jd-btn-green:hover > .wp-block-button__link { background:#6fa043; }
.jd-btn-green svg { width:20px; height:20px; }
/*ikona*/ .jd-btn-green .bz-ico.bz-ico { width: 20px; height: 20px; }
/*ikona*/ .jd-btn-green li::before { width: 20px; height: 20px; }
.jd-btn-outline-white { display:inline-flex; align-items:center; gap:8px; border:2px solid rgba(255,255,255,0.2); color:#fff; padding:16px 32px; border-radius:8px; font-weight:500; text-decoration:none; transition:all 0.2s; background:transparent; }
/*przycisk*/ .wp-block-button.jd-btn-outline-white > .wp-block-button__link { display:inline-flex; align-items:center; gap:8px; border:2px solid rgba(255,255,255,0.2); color:#fff; padding:16px 32px; border-radius:8px; font-weight:500; text-decoration:none; transition:all 0.2s; background:transparent; }
.jd-btn-outline-white:hover { background:rgba(255,255,255,0.1); }
/*przycisk*/ .wp-block-button.jd-btn-outline-white:hover > .wp-block-button__link { background:rgba(255,255,255,0.1); }

/* Mobile */
@media(max-width:640px){
  .jd-hero { padding:64px 0 48px; }
  .jd-hero h1 { font-size:28px; }
  .jd-section { padding:48px 0; }
  .jd-section-header { flex-direction:column; gap:12px; margin-bottom:32px; }
  .jd-section-header__text h2 { font-size:24px; }
  .jd-step-card { padding:20px; }
  .jd-after-grid { grid-template-columns:1fr; }
  .jd-cta h2 { font-size:24px; }
}

/*przycisk*/ .wp-block-button:where([class*="btn"]) { background: none; border: 0; padding: 0; box-shadow: none; }
/*przycisk*/ .wp-block-button:where([class*="btn"]) > .wp-block-button__link { background: none; border: 0; }
