.bf-kobido {
  --bf-ink: #30293c;
  --bf-paper: #ffffff;
  --bf-accent: #30293c;
  --bf-soft: #eff5f1;
  --bf-sage: #c0daca;
  --bf-coral: #ee7557;
  color: var(--bf-ink); background: var(--bf-paper); font-family: inherit;
  width: 100%; max-width: none; margin: auto; line-height: 1.65;
}
.bf-kobido *, .bf-form * { box-sizing: border-box; }
.bf-kobido p { max-width: 72ch; }
.bf-kobido h1, .bf-kobido h2, .bf-kobido h3 { font-family: Aboreto, sans-serif; line-height: 1.3; color: var(--bf-ink); font-weight: 400; }
.bf-kobido h1 { font-size: clamp(2rem, 4.2vw, 3rem); letter-spacing: .015em; margin: .4em 0; }
.bf-kobido h2 { font-size: clamp(1.55rem, 2.7vw, 2.3rem); letter-spacing: .015em; margin: 0 0 .65em; }
.bf-kobido h3 { font-size: 1.3rem; }
.bf-kobido .elementor-heading-title { font-family: Aboreto, sans-serif; line-height: 1.3; color: var(--bf-ink); font-weight: 400; }
.bf-kobido h1.elementor-heading-title { font-size: clamp(2rem, 4.2vw, 3rem); letter-spacing: .015em; margin: .4em 0; }
.bf-kobido h2.elementor-heading-title { font-size: clamp(1.55rem, 2.7vw, 2.3rem); letter-spacing: .015em; margin: 0 0 .65em; }
.bf-kobido h3.elementor-heading-title { font-size: 1.3rem; }
.bf-kobido .bf-section { padding: 64px max(36px, calc((100% - 1108px) / 2)); margin: 0; }
.bf-kobido .bf-hero { background: var(--bf-sage) url('https://bloomingface.pl/wp-content/uploads/2024/04/kurs-kobido-cena-program.webp') center / cover no-repeat; padding: 152px max(36px, calc((100% - 1108px) / 2)) 64px; min-height: 650px; }
.bf-kobido .bf-hero-panel { background: rgba(192,218,202,.96); padding: 36px; width: 62%; max-width: 700px; border-top: 3px solid var(--bf-coral); }
.bf-kobido .bf-hero-panel p { margin: 1em 0; }
.bf-kobido .bf-eyebrow { text-transform: uppercase; letter-spacing: .13em; font-size: .78rem; font-weight: 700; }
.bf-kobido .bf-intro { font-size: 1.15rem; }
.bf-kobido .wp-block-columns, .bf-kobido .bf-columns { display: flex; flex-direction: row; gap: 36px; }
.bf-kobido .wp-block-column, .bf-kobido .bf-column { flex: 1; min-width: 0; }
.bf-kobido .bf-fact-card { background: var(--bf-paper); padding: 32px; border: 1px solid #c6d7cc; border-radius: 4px; margin: 0; }
.bf-kobido .bf-fact-card p { margin: .75em 0; }
.bf-kobido .bf-fact-card h2, .bf-kobido .bf-fact-card h3 { margin-top: 0; font-size: 1.3rem; }
.bf-kobido .bf-facts { display: flex; gap: 14px 24px; flex-wrap: wrap; list-style: none; padding: 0; font-weight: 600; }
.bf-kobido .wp-block-buttons, .bf-kobido .bf-buttons { display: flex; gap: 12px; flex-wrap: wrap; margin: 24px 0; }
.bf-kobido .wp-block-button__link, .bf-kobido .elementor-button, .bf-kobido button, .bf-form button {
  display: inline-block; min-height: 48px; padding: 12px 22px; border: 1px solid var(--bf-accent, #59413c);
  border-radius: 4px; background: var(--bf-sage, #c0daca); color: var(--bf-ink, #30293c); font: inherit; font-weight: 600; text-decoration: none; cursor: pointer;
}
.bf-kobido .bf-hero .wp-block-button__link, .bf-kobido .bf-hero .elementor-button { background: var(--bf-ink); color: #fff; }
.bf-kobido .wp-block-button__link:hover, .bf-kobido .elementor-button:hover, .bf-kobido button:hover { background: var(--bf-ink); color: #fff; }
.bf-kobido button:disabled, .bf-form button:disabled { background: #706965; border-color: #706965; cursor: default; }
.bf-kobido a { color: var(--bf-accent); text-underline-offset: .18em; }
.bf-kobido a:focus-visible, .bf-kobido button:focus-visible, .bf-kobido input:focus-visible, .bf-kobido textarea:focus-visible, .bf-kobido select:focus-visible, .bf-kobido summary:focus-visible {
  outline: 3px solid #005a80; outline-offset: 4px;
}
.bf-dates { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.bf-date { padding: 24px; background: var(--bf-paper,#ffffff); border: 1px solid #c6d7cc; border-top: 3px solid var(--bf-sage); border-radius: 4px; }
.bf-date h3 { margin: 0 0 16px; font-size: 1.25rem; }
.bf-date p { margin: .4em 0; }
.bf-date [data-availability] { font-weight: 600; }
.bf-date button { margin-top: 14px; width: 100%; padding: 10px 12px; }
.bf-kobido .bf-why { background: var(--bf-soft); }
.bf-kobido .bf-number { font-size: .9rem; font-weight: 700; color: var(--bf-accent); }
.bf-kobido blockquote { border-left: 3px solid var(--bf-accent); padding: 0 0 0 22px; margin: 24px 0; }
.bf-kobido blockquote p { font-size: 1.15rem; }
.bf-kobido blockquote cite { font-size: .85rem; font-style: normal; }
.bf-kobido .bf-program { background: var(--bf-soft); }
.bf-kobido li { margin-bottom: .45em; }
.bf-kobido .wp-block-details { border-bottom: 1px solid #c6d7cc; padding: 18px 0; }
.bf-kobido .elementor-toggle .elementor-tab-title, .bf-kobido .elementor-toggle .elementor-tab-content { border-color: #c6d7cc; color: var(--bf-ink); }
.bf-kobido .elementor-toggle .elementor-tab-title { font: 600 1.05rem Arial, sans-serif; padding: 22px 0; }
.bf-kobido .elementor-toggle .elementor-tab-title a { color: var(--bf-ink); }
.bf-kobido .elementor-toggle .elementor-tab-content { padding: 0 0 22px; }
.bf-kobido summary { font-weight: 600; cursor: pointer; padding: 4px 0; }
.bf-kobido .bf-signup { background: var(--bf-soft); }
.bf-form { background: var(--bf-paper,#ffffff); border: 1px solid #c6d7cc; border-radius: 4px; padding: 30px; max-width: 820px; }
.bf-form fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.bf-form legend { font-size: 1.15rem; font-weight: 600; margin-bottom: 20px; }
.bf-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.bf-form label { display: block; font-weight: 500; margin-bottom: 20px; }
.bf-fields label { margin-bottom: 0; }
.bf-form input:not([type=checkbox]), .bf-form select, .bf-form textarea {
  display: block; width: 100%; min-width: 0; background: #fff; color: #30293c; font: inherit;
  font-size: max(16px, 1rem); min-height: 48px; border: 1px solid #837a74; border-radius: 3px; padding: 10px 12px; margin-top: 7px;
}
.bf-form textarea { resize: vertical; }
.bf-fields + label { margin-top: 20px; }
.bf-kobido .bf-note, .bf-form .bf-note, .bf-privacy { font-size: .9rem; color: #4c4655; }
.bf-form .bf-check { display: flex; gap: 10px; align-items: flex-start; font-size: .95rem; }
.bf-form [type=checkbox] { width: 20px; height: 20px; flex-shrink: 0; margin-top: 4px; }
.bf-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.bf-form [role=status]:not(:empty) { padding: 16px; border: 1px solid #c6d7cc; margin: 24px 0 0; background: #eff5f1; }
.bf-kobido.e-con, .bf-kobido .bf-section.e-con, .bf-kobido .bf-hero.e-con, .bf-kobido .bf-hero-panel.e-con, .bf-kobido .bf-fact-card.e-con { display: block; }
.bf-kobido.e-con { padding: 0; gap: 0; }
.bf-kobido .elementor-widget { max-width: 100%; }
.bf-kobido .bf-portrait { margin: 0 0 24px; }
.bf-kobido .bf-portrait img { display: block; width: 100%; max-height: 360px; object-fit: cover; object-position: center 30%; border-radius: 4px; }
.bf-kobido [id], #bf-kobido-form { scroll-margin-top: 90px; }
.page-id-638 .moove-gdpr-button-holder .mgbutton { background: #c0daca !important; color: #30293c !important; }
.page-id-638 .moove-gdpr-button-holder .mgbutton:hover,
.page-id-638 .moove-gdpr-button-holder .mgbutton:focus-visible { background: #30293c !important; color: #ffffff !important; }
@media(max-width:800px) {
  .bf-kobido .wp-block-columns, .bf-kobido .bf-columns { flex-direction: column; gap: 22px; }
  .bf-dates { grid-template-columns: repeat(2,1fr); }
  .bf-kobido .bf-section, .bf-kobido .bf-hero { padding: 44px 22px; }
  .bf-kobido .bf-hero { padding-top: 132px; min-height: 580px; }
  .bf-kobido .bf-hero-panel { width: 85%; padding: 28px; }
}
@media(max-width:520px) {
  .bf-dates, .bf-fields { grid-template-columns: 1fr; }
  .bf-kobido .bf-section, .bf-kobido .bf-hero { padding: 36px 18px; }
  .bf-kobido .bf-hero { padding-top: 124px; min-height: auto; background-position: 58% center; }
  .bf-kobido .bf-hero-panel { width: 100%; padding: 24px 20px; background: rgba(192,218,202,.95); }
  .bf-form, .bf-kobido .bf-fact-card { padding: 22px 18px; }
  .bf-kobido .wp-block-button, .bf-kobido .wp-block-button__link { width: 100%; text-align: center; }
  .bf-kobido .elementor-button, .bf-kobido .elementor-widget-button { width: 100%; text-align: center; }
}
@media(prefers-reduced-motion:reduce) { .bf-kobido * { scroll-behavior: auto!important; } }
