/* Orzel public site system. Loaded last. All rules are scoped to body.orzel-system.
   Form visibility, selected offers, validation colours and chat layout remain owned
   by their respective applications. Poppins is enqueued by the shared PHP plugin. */
body.orzel-system {
  --orzel-font: 'Poppins', Arial, sans-serif;
  --orzel-navy: #05283b;
  --orzel-red: #c51d2b;
  --orzel-red-hover: #a91623;
  --orzel-gold: #dfbf70;
  --orzel-white: #fff;
  --orzel-surface: #f5f7fa;
  --orzel-text: #142f40;
  --orzel-muted: #566673;
  --orzel-border: #dce4ea;
  --orzel-width: 1180px;
  --orzel-gutter: 24px;
  --orzel-header-height: 88px;
  --orzel-admin-height: 0px;
  --orzel-h1: clamp(2.125rem, 3.8vw, 3rem);
  --orzel-h2: clamp(1.75rem, 2.6vw, 2rem);
  --orzel-h3: clamp(1.375rem, 2vw, 1.5rem);
  --orzel-button-radius: 12px;
  --orzel-card-radius: 20px;
  display: block !important;
  min-width: 0;
  height: auto !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: var(--orzel-white) !important;
  color: var(--orzel-text);
  font-family: var(--orzel-font) !important;
  font-size: 17px;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
}
body.orzel-system.admin-bar { --orzel-admin-height: 32px; }

/* Replace only the identified legacy chrome, never a chat footer or a form. */
body.orzel-system .orzel-shared-sidebar,
body.orzel-system .mobile_top_logo,
body.orzel-system #rmp_menu_trigger-6577,
body.orzel-system #rmp-container-6577,
body.orzel-system footer.main__footer,
body.orzel-system footer.orzel-b-page-footer,
body.orzel-system .osk-c__floating-chat,
body.orzel-system .osk-c__mobile-cta,
body.orzel-system .osk-ce > a.chat,
body.orzel-system .osk-ce > a.mobile,
body.orzel-system.orzel-home .layout > aside {
  display: none !important;
}
body.orzel-system #main-wrapper,
body.orzel-system #page-content,
body.orzel-system main#orzel-b-main,
body.orzel-system .layout,
body.orzel-system .orzel-b-layout,
body.orzel-system.orzel-home .layout > main {
  float: none !important;
  clear: both;
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background-color: var(--orzel-white);
}
body.orzel-system #main-wrapper,
body.orzel-system .layout,
body.orzel-system .orzel-b-layout,
body.orzel-system main#orzel-b-main,
body.orzel-system.orzel-home .layout > main { display: block !important; }
body.orzel-system #page-content { padding-top: 0 !important; }
body.orzel-system #page-content > .text-page-wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible;
}
body.orzel-system #page-content > br { display: none !important; }
body.orzel-system #page-content:has(:is(.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog)) > .title__primary {
  display: none !important;
}
body.orzel-system #page-content > .title__primary {
  max-width: var(--orzel-width);
  margin: 0 auto !important;
  padding: 40px var(--orzel-gutter) 24px;
  color: var(--orzel-navy) !important;
  font: 700 var(--orzel-h1)/1.15 var(--orzel-font) !important;
  letter-spacing: -.025em;
  text-transform: none;
}

/* Shared top bar. Dropdown navigation is part of this header, not a modal. */
body.orzel-system #orzel-site-header {
  position: sticky !important;
  top: var(--orzel-admin-height) !important;
  z-index: 1000;
  width: 100%;
  margin: 0;
  padding: 0;
  background: var(--orzel-navy) !important;
  color: #fff !important;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 6px 24px rgba(5,40,59,.1);
  font-family: var(--orzel-font) !important;
}
body.orzel-system .orzel-site-header-inner {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: 1280px;
  min-height: var(--orzel-header-height);
  margin: 0 auto;
  padding: 12px var(--orzel-gutter);
}
body.orzel-system .orzel-site-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  margin: 0;
  color: #fff !important;
  text-decoration: none !important;
  line-height: 1.25;
}
body.orzel-system .orzel-site-brand img {
  display: block;
  width: auto;
  height: 52px;
  max-width: 155px;
  max-height: 52px;
  margin: 0;
  object-fit: contain;
}
body.orzel-system .orzel-site-brand > span { font-size: 16px; font-weight: 600; }
body.orzel-system .orzel-site-brand small { display: block; margin-top: 4px; color: var(--orzel-gold); font-size: 12px; font-weight: 400; }
body.orzel-system .orzel-site-actions { display: flex; align-items: center; gap: 16px; min-width: 0; }
body.orzel-system .orzel-site-actions > a,
body.orzel-system .orzel-site-menu-toggle {
  box-sizing: border-box;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  padding: 12px 16px;
  margin: 0;
  border: 1px solid transparent;
  border-radius: var(--orzel-button-radius);
  font: 600 14px/1.35 var(--orzel-font) !important;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none !important;
  white-space: nowrap;
  color: #fff !important;
  background: transparent;
  box-shadow: none;
}
body.orzel-system .orzel-site-actions .orzel-site-call { padding-left: 0; padding-right: 0; font-size: 15px !important; }
body.orzel-system .orzel-site-actions .orzel-site-booking { background: var(--orzel-red) !important; padding-left: 20px; padding-right: 20px; }
body.orzel-system .orzel-site-actions .orzel-site-booking:hover { background: var(--orzel-red-hover) !important; }
body.orzel-system .orzel-site-menu-toggle { cursor: pointer; border-color: rgba(255,255,255,.35); }
body.orzel-system .orzel-site-menu-toggle:hover,
body.orzel-system .orzel-site-menu-toggle[aria-expanded="true"] { background: rgba(255,255,255,.1); border-color: var(--orzel-gold); }
body.orzel-system .orzel-site-menu-toggle svg { display: block; width: 22px; height: 22px; flex: 0 0 22px; }
body.orzel-system #orzel-site-menu {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  box-sizing: border-box;
  max-height: calc(100vh - var(--orzel-header-height) - var(--orzel-admin-height) - 16px);
  max-height: calc(100dvh - var(--orzel-header-height) - var(--orzel-admin-height) - 16px);
  padding: 24px max(var(--orzel-gutter), calc((100% - var(--orzel-width)) / 2));
  overflow-y: auto;
  overscroll-behavior: contain;
  background: #fff !important;
  color: var(--orzel-navy) !important;
  border-bottom: 1px solid var(--orzel-border);
  box-shadow: 0 16px 28px rgba(5,40,59,.16);
}
body.orzel-system #orzel-site-menu[hidden] { display: none !important; }
body.orzel-system #orzel-site-menu:not([hidden]) { display: block !important; }
body.orzel-system #orzel-site-menu .orzel-site-menu-list {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 6px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
body.orzel-system #orzel-site-menu li { margin: 0; padding: 0; list-style: none; min-width: 0; }
body.orzel-system #orzel-site-menu a,
body.orzel-system #orzel-site-menu a span {
  color: var(--orzel-navy) !important;
  font-family: var(--orzel-font) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-shadow: none !important;
  letter-spacing: 0;
}
body.orzel-system #orzel-site-menu a {
  display: block;
  min-height: 46px;
  box-sizing: border-box;
  padding: 12px 14px;
  border-radius: 10px;
  text-decoration: none;
  line-height: 1.45;
}
body.orzel-system #orzel-site-menu a:hover,
body.orzel-system #orzel-site-menu .current-menu-item > a,
body.orzel-system #orzel-site-menu a[aria-current="page"] { background: var(--orzel-surface); color: var(--orzel-red) !important; }
body.orzel-system #orzel-site-menu a:hover span,
body.orzel-system #orzel-site-menu .current-menu-item > a span,
body.orzel-system #orzel-site-menu a[aria-current="page"] span { color: var(--orzel-red) !important; }
body.orzel-system #orzel-site-menu .sub-menu {
  display: block !important;
  position: static !important;
  width: auto !important;
  margin: 0 0 10px 12px;
  padding: 0 0 0 10px;
  background: transparent;
  border-left: 1px solid var(--orzel-border);
  list-style: none;
}
body.orzel-system #orzel-site-menu .sub-menu a { padding: 9px 12px !important; font-size: 14px !important; }
body.orzel-system #orzel-site-menu .orzel-languages {
  position: static !important;
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto;
  margin: 0 0 16px !important;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--orzel-border);
  background: transparent;
}
body.orzel-system #orzel-site-menu .orzel-languages button {
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid var(--orzel-border);
  border-radius: 10px;
  background: #fff !important;
  color: var(--orzel-navy) !important;
  font: 600 13px/1.4 var(--orzel-font) !important;
  cursor: pointer;
}
body.orzel-system #orzel-site-menu .orzel-languages button:hover { background: var(--orzel-surface) !important; }
body.orzel-system #orzel-site-menu .orzel-languages button[aria-pressed="true"] { background: var(--orzel-gold) !important; border-color: var(--orzel-gold); color: var(--orzel-navy) !important; }

/* Shared footer, independent of application and chat footers. */
body.orzel-system #orzel-site-footer {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 56px var(--orzel-gutter);
  background: var(--orzel-navy) !important;
  color: #d7e2e9 !important;
  border: 0;
  border-top: 1px solid rgba(255,255,255,.12);
  font: 400 15px/1.7 var(--orzel-font) !important;
}
body.orzel-system .orzel-site-footer-inner { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 48px; max-width: var(--orzel-width); margin: 0 auto; }
body.orzel-system .orzel-site-footer-brand img { display: block; width: auto; max-width: 170px; height: 64px; object-fit: contain; margin: 0 0 20px; }
body.orzel-system #orzel-site-footer strong { display: block; color: #fff; font-size: 16px; font-weight: 600; }
body.orzel-system #orzel-site-footer h2 { margin: 0 0 18px; color: #fff !important; font: 600 17px/1.4 var(--orzel-font) !important; letter-spacing: 0; text-transform: none; }
body.orzel-system #orzel-site-footer p { margin: 12px 0; color: #d7e2e9; font-size: 15px; }
body.orzel-system #orzel-site-footer a { color: #fff !important; text-decoration: none; overflow-wrap: anywhere; }
body.orzel-system #orzel-site-footer a:hover { color: var(--orzel-gold) !important; text-decoration: underline; text-underline-offset: 4px; }
body.orzel-system #orzel-site-footer small { font-size: 12px; color: #b7cad6; }
body.orzel-system .orzel-site-footer-contact > a,
body.orzel-system .orzel-site-footer-links > a { display: block; width: fit-content; margin: 0 0 10px; }

/* Typography targets content tags rather than '*': icon fonts keep their glyphs. */
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information,.ooc-student-zone,.orzel-guide-entry,.orzel-app,[data-osko-root]) {
  font-family: var(--orzel-font) !important;
}
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information,.ooc-student-zone,.orzel-guide-entry,.orzel-app,[data-osko-root]) :is(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,label,legend,th,td,summary,button,input,select,textarea,strong,b,em,small,span):not(.fa,.fas,.far,.fab,.fal,.fad,.dashicons,.material-icons):not([class*="fa-"],[class*="dashicons-"]) {
  font-family: var(--orzel-font) !important;
}
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) {
  --navy: var(--orzel-navy);
  --red: var(--orzel-red);
  --r: var(--orzel-red);
  --rd: var(--orzel-red-hover);
  --i: var(--orzel-navy);
  --foreground: var(--orzel-text);
  --muted-foreground: var(--orzel-muted);
  --border: var(--orzel-border);
  --blue: var(--orzel-navy);
  --gold: var(--orzel-gold);
  --s: var(--orzel-surface);
  background-color: #fff;
  color: var(--orzel-text);
  font-size: 17px;
  line-height: 1.6;
}
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) :is(h1,h2,h3,h4) {
  font-weight: 700 !important;
  font-style: normal !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
  overflow-wrap: break-word;
}
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) h1 { font-size: var(--orzel-h1) !important; }
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) h2 { font-size: var(--orzel-h2) !important; }
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) h3 { font-size: var(--orzel-h3) !important; }
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) h4 { font-size: 20px !important; }
body.orzel-system :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero,.orzel-b .hero,.ock-hero,.ops-hero,.osz-hero,.ok-hero,.orzel-reg-hero,.orzel-contact .hero,.ob-hero) :is(h1,h2),
body.orzel-system .orzel-b .hero-title { font-size: var(--orzel-h1) !important; line-height: 1.15 !important; }
body.orzel-system :is(.osk-bauto__section-heading,.osk-bpe__section-heading,.osk-c__heading) :is(h2,h3),
body.orzel-system .osk-ce > section > .head h3 { font-size: var(--orzel-h2) !important; }
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) p { line-height: 1.65 !important; }
body.orzel-system :is(.osk-bauto__lead,.osk-bpe__lead,.osk-c__lead,.osk-d-lead,.orzel-b .lead,.osk-ce .lead) { font-size: 18px !important; }

/* Shared widths keep full-bleed hero images but constrain normal reading areas. */
body.orzel-system :is(.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.orzel-b,.ock-page,.ops-page,.osz-page,.ok-page,.orzel-contact) { width: 100%; max-width: none !important; margin: 0 !important; padding: 0 !important; min-width: 0; }
body.orzel-system :is(.orzel-b .wrap,.ock-container,.ops-container,.osz-container,.ok-container) { box-sizing: border-box; width: calc(100% - var(--orzel-gutter) * 2) !important; max-width: var(--orzel-width) !important; margin-left: auto !important; margin-right: auto !important; }
body.orzel-system :is(.osk-bauto,.osk-bpe,.osk-c,.osk-ce) > section:not(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero) {
  box-sizing: border-box;
  width: calc(100% - var(--orzel-gutter) * 2);
  max-width: var(--orzel-width);
  margin-left: auto !important;
  margin-right: auto !important;
}
body.orzel-system .osk-d-body { box-sizing: border-box; max-width: calc(var(--orzel-width) + var(--orzel-gutter) * 2); margin: 0 auto; padding: 0 var(--orzel-gutter); }
body.orzel-system :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero) { box-sizing: border-box; min-height: 480px !important; padding: 64px max(var(--orzel-gutter), calc((100% - var(--orzel-width)) / 2)) !important; }
body.orzel-system :is(.osk-bauto__hero-copy,.osk-bpe__hero-copy,.osk-c__hero-copy,.osk-ce-copy,.osk-d-copy) { min-width: 0; max-width: 800px; }
body.orzel-system .orzel-b .hero { min-height: 0 !important; }
body.orzel-system .orzel-b .hero-inner { box-sizing: border-box; min-height: 480px !important; padding-top: 64px; padding-bottom: 64px; }
body.orzel-system .orzel-b-page-heading { background: var(--orzel-surface); color: var(--orzel-navy); padding: 16px max(var(--orzel-gutter), calc((100% - var(--orzel-width)) / 2)); border: 0; }
body.orzel-system .orzel-b-page-heading h1 { color: var(--orzel-navy); font: 600 24px/1.3 var(--orzel-font); letter-spacing: -.02em; }
body.orzel-system .orzel-b-page-heading nav { color: var(--orzel-muted); font: 400 13px/1.6 var(--orzel-font); }

/* Buttons share shape and weight; offer cards and selected/validation states are untouched. */
body.orzel-system :is(.orzel-b .button,.osk-bauto__btn,.osk-bpe__btn,.osk-c__btn,.osk-ce .btn,.osk-d-btn,.ock-button,.ops-button,.osz-button,.ok-button,.orzel-contact .btn,.orzel-reg-button) {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px !important;
  padding: 13px 22px !important;
  border: 1px solid var(--orzel-red) !important;
  border-radius: var(--orzel-button-radius) !important;
  background: var(--orzel-red) !important;
  color: #fff !important;
  font: 600 16px/1.35 var(--orzel-font) !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .16s ease, border-color .16s ease;
}
body.orzel-system :is(.orzel-b .button,.osk-bauto__btn,.osk-bpe__btn,.osk-c__btn,.osk-ce .btn,.osk-d-btn,.ock-button,.ops-button,.osz-button,.ok-button,.orzel-contact .btn,.orzel-reg-button):hover { background: var(--orzel-red-hover) !important; border-color: var(--orzel-red-hover) !important; color: #fff !important; }
body.orzel-system :is(.osk-bauto__btn--ghost,.osk-bpe__btn--ghost,.osk-c__btn--ghost,.osk-ce .btn.ghost,.osk-ce .btn.light,.osk-d-btn.light) { background: #fff !important; border-color: var(--orzel-border) !important; color: var(--orzel-navy) !important; }
body.orzel-system :is(.osk-bauto__btn--ghost,.osk-bpe__btn--ghost,.osk-c__btn--ghost,.osk-ce .btn.ghost,.osk-ce .btn.light,.osk-d-btn.light):hover { background: var(--orzel-surface) !important; border-color: var(--orzel-navy) !important; color: var(--orzel-navy) !important; }
body.orzel-system :is(.osk-bauto__card,.osk-bpe__card,.osk-c__price-card,.osk-c__config,.osk-c__config-result,.osk-c__media-card,.osk-ce .prices article,.osk-ce .quals article,.osk-ce .config,.osk-ce .result,.osk-d-prices article,.osk-d-quals article) { border-radius: var(--orzel-card-radius) !important; }
body.orzel-system :is(.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d) :is(select,input:not([type="checkbox"]):not([type="radio"]),textarea) { box-sizing: border-box; max-width: 100%; font-size: 16px !important; border-radius: 12px; }
body.orzel-system :is(.osk-c__config-controls,.osk-ce .controls) select { min-height: 48px; color: var(--orzel-navy); background-color: #fff; border-color: var(--orzel-border); }
body.orzel-system [data-osko-root] :is(input,select,textarea,button) { font-family: var(--orzel-font) !important; }
body.orzel-system [data-osko-root] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea) { font-size: 16px !important; }
body.orzel-system [data-osko-root] :is(h2,h3) { font-family: var(--orzel-font) !important; letter-spacing: -.02em; }
body.orzel-system [data-osko-root] .osko-submit { min-height: 48px; border-radius: var(--orzel-button-radius); font: 600 16px/1.4 var(--orzel-font) !important; }
body.orzel-system [data-osko-root] .osko-submit:not(:disabled) { background-color: var(--orzel-red); border-color: var(--orzel-red); color: #fff; }
body.orzel-system [data-osko-root] .osko-submit:not(:disabled):hover { background-color: var(--orzel-red-hover); border-color: var(--orzel-red-hover); }
body.orzel-system .orzel-guide-entry { font-size: var(--orzel-h2) !important; line-height: 1.3 !important; }
body.orzel-system :is(.orzel-guide-entry,.ooc-student-zone) h2 { font-size: var(--orzel-h2) !important; line-height: 1.2 !important; font-weight: 700 !important; }

/* Explicit dark components retain light text; do not repaint app status messages. */
body.orzel-system :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero,.orzel-b .hero,.orzel-b .enroll,.ock-hero,.ops-hero,.osz-hero,.ok-hero,.orzel-reg-hero) { background-color: var(--orzel-navy) !important; color: #fff; }
body.orzel-system :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero,.orzel-b .hero,.orzel-b .enroll,.ock-hero,.ops-hero,.osz-hero,.ok-hero,.orzel-reg-hero) :is(h1,h2,h3) { color: #fff !important; }
body.orzel-system :is(.osk-bauto__hero-copy,.osk-bpe__hero-copy,.osk-c__hero-copy,.osk-ce-copy,.osk-d-copy,.orzel-b .hero-copy,.ock-hero-content,.ops-hero-content,.osz-hero-content,.ok-hero-content,.orzel-reg-hero) p { color: #e3ecf1 !important; }
body.orzel-system :is(.osk-c__atego,.osk-c__legal,.osk-ce .scania,.osk-ce .legal,.osk-d-bus,.osk-d-final,.osk-c__package-card,.osk-ce .packagegrid article) { background-color: var(--orzel-navy) !important; color: #fff !important; }
body.orzel-system :is(.osk-c__atego,.osk-c__legal,.osk-ce .scania,.osk-ce .legal,.osk-d-bus,.osk-d-final,.osk-c__package-card,.osk-ce .packagegrid article) :is(h2,h3,h4) { color: #fff !important; }
body.orzel-system :is(.osk-c__atego,.osk-c__legal,.osk-ce .scania,.osk-ce .legal,.osk-d-bus,.osk-d-final,.osk-c__package-card,.osk-ce .packagegrid article) p { color: #e3ecf1 !important; }
body.orzel-system :is(.osk-bauto__hero-badge,.osk-bpe__hero-badge,.osk-c__hero-badge,.osk-ce .badge,.osk-d-badge) { background: #fff !important; color: var(--orzel-navy) !important; border-color: var(--orzel-border); border-radius: var(--orzel-card-radius); }
body.orzel-system :is(.osk-bauto__hero-badge,.osk-bpe__hero-badge,.osk-c__hero-badge,.osk-ce .badge,.osk-d-badge) :is(h2,h3,h4,p,strong,b,span) { color: var(--orzel-navy) !important; }

/* Home information becomes a light reading surface; hero art and category mechanics stay. */
body.orzel-system #orzel-information { box-sizing: border-box; padding: 64px var(--orzel-gutter); background: #fff !important; color: var(--orzel-text) !important; border-top: 1px solid var(--orzel-border); }
body.orzel-system #orzel-information > header,
body.orzel-system #orzel-information .info-content { max-width: var(--orzel-width); margin-left: auto; margin-right: auto; }
body.orzel-system #orzel-information :is(h1,h2,h3,strong) { color: var(--orzel-navy) !important; }
body.orzel-system #orzel-information :is(p,figcaption) { color: var(--orzel-muted) !important; }
body.orzel-system #orzel-information :is(a,.info-kicker) { color: var(--orzel-red) !important; }
body.orzel-system #orzel-information article { border-top: 1px solid var(--orzel-border); }
body.orzel-system #orzel-information figure img { max-height: 520px; border: 1px solid var(--orzel-border); border-radius: var(--orzel-card-radius); }
body.orzel-system.orzel-home .layout #front-page-hero { min-height: 0 !important; }

/* The certificate editor receives typography only, retaining its own app controls. */
body.orzel-system .orzel-app :is(h1,h2,h3) { font-family: var(--orzel-font) !important; letter-spacing: -.015em; }
body.orzel-system .orzel-app :is(input,select,textarea,button) { font-family: var(--orzel-font) !important; }
body.orzel-system .orzel-reg { max-width: 100%; background-color: #fff; color: var(--orzel-text); }
body.orzel-system .orzel-reg-inner { box-sizing: border-box; width: calc(100% - var(--orzel-gutter) * 2); max-width: 900px; margin-left: auto; margin-right: auto; }
body.orzel-system :is(.orzel-reg-section,.orzel-reg-before,.orzel-reg-end) { color: var(--orzel-text); }
body.orzel-system :is(.orzel-reg-section,.orzel-reg-before,.orzel-reg-end) :is(h2,h3) { color: var(--orzel-navy) !important; }
body.orzel-system :is(.orzel-reg-section,.orzel-reg-before,.orzel-reg-end) p { color: var(--orzel-text); }

/* Keyboard focus stays visible on both light and dark surfaces. */
body.orzel-system :is(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--orzel-red) !important; outline-offset: 4px; }
body.orzel-system :is(#orzel-site-header,#orzel-site-footer) :is(a,button):focus-visible { outline-color: var(--orzel-gold) !important; }
body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page) [id] { scroll-margin-top: calc(var(--orzel-header-height) + var(--orzel-admin-height) + 20px); }

@media (max-width: 1000px) {
  body.orzel-system .orzel-site-brand > span,
  body.orzel-system .orzel-site-actions .orzel-site-call { display: none; }
  body.orzel-system .orzel-site-actions { gap: 10px; }
  body.orzel-system .orzel-site-footer-inner { gap: 32px; }
}
@media (max-width: 782px) {
  body.orzel-system.admin-bar { --orzel-admin-height: 46px; }
}
@media (max-width: 760px) {
  body.orzel-system { --orzel-gutter: 20px; --orzel-header-height: 72px; font-size: 16px; }
  body.orzel-system .orzel-site-header-inner { gap: 12px; padding-top: 10px; padding-bottom: 10px; }
  body.orzel-system .orzel-site-brand { flex: 0 1 132px; }
  body.orzel-system .orzel-site-brand img { max-width: 132px; width: auto; height: 40px; max-height: 40px; }
  body.orzel-system .orzel-site-actions { gap: 8px; }
  body.orzel-system .orzel-site-actions .orzel-site-pricing { display: none; }
  body.orzel-system .orzel-site-actions > a,
  body.orzel-system .orzel-site-menu-toggle { min-height: 44px; padding: 11px 12px; font-size: 13px !important; }
  body.orzel-system .orzel-site-actions .orzel-site-booking { padding-left: 12px; padding-right: 12px; }
  body.orzel-system .orzel-site-menu-toggle { gap: 6px; }
  body.orzel-system #orzel-site-menu { padding-top: 16px; padding-bottom: 16px; }
  body.orzel-system #orzel-site-menu .orzel-site-menu-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 10px; }
  body.orzel-system .orzel-site-footer-inner { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
  body.orzel-system .orzel-site-footer-brand { grid-column: 1 / -1; }
  body.orzel-system :is(.orzel-b,.osk-bauto,.osk-bpe,.osk-c,.osk-ce,.osk-d,.ock-page,.ops-page,.orzel-reg,.orzel-contact,.ok-page,.osz-page,#orzel-blog,#orzel-information) { font-size: 16px; }
  body.orzel-system :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero) { min-height: 0 !important; padding-top: 44px !important; padding-bottom: 44px !important; }
  body.orzel-system .orzel-b .hero-inner { min-height: 0 !important; padding-top: 44px; padding-bottom: 44px; }
  body.orzel-system :is(.osk-bauto__lead,.osk-bpe__lead,.osk-c__lead,.osk-d-lead,.orzel-b .lead,.osk-ce .lead) { font-size: 16px !important; }
  body.orzel-system #orzel-information { padding-top: 44px; padding-bottom: 44px; }
  body.orzel-system #orzel-information figure img { max-height: 480px; }
}
@media (max-width: 480px) {
  body.orzel-system { --orzel-gutter: 16px; }
  body.orzel-system .orzel-site-header-inner { gap: 8px; }
  body.orzel-system .orzel-site-brand { flex-basis: 104px; }
  body.orzel-system .orzel-site-brand img { max-width: 104px; }
  body.orzel-system .orzel-site-menu-toggle span { display: none; }
  body.orzel-system .orzel-site-menu-toggle { width: 44px; padding: 10px; }
  body.orzel-system #orzel-site-menu .orzel-site-menu-list { grid-template-columns: 1fr; }
  body.orzel-system #orzel-site-footer { padding-top: 40px; padding-bottom: 40px; }
  body.orzel-system .orzel-site-footer-inner { grid-template-columns: 1fr; }
  body.orzel-system .orzel-site-footer-brand { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
  body.orzel-system *, body.orzel-system *::before, body.orzel-system *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Hero scale wins over the legacy/global heading selectors with ID specificity. */
body.orzel-system #page-content :is(.osk-bauto__hero,.osk-bpe__hero,.osk-c__hero,.osk-ce-hero,.osk-d-hero,.ock-hero,.ops-hero,.osz-hero,.ok-hero,.orzel-reg-hero,.orzel-contact .hero,.ob-hero) :is(h1,h2),
body.orzel-system #orzel-b-main .orzel-b .hero-title {
  font-size: var(--orzel-h1) !important;
  line-height: 1.15 !important;
}

/* The same action component also covers contact and the enrollment submit. */
body.orzel-system .orzel-contact .button,
body.orzel-system [data-osko-root] .osko-submit {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px !important;
  padding: 13px 22px !important;
  border: 1px solid var(--orzel-red) !important;
  border-radius: var(--orzel-button-radius) !important;
  background: var(--orzel-red) !important;
  color: #fff !important;
  font: 600 16px/1.35 var(--orzel-font) !important;
  text-transform: none !important;
  text-decoration: none !important;
  letter-spacing: 0 !important;
}
body.orzel-system .orzel-contact .button:hover,
body.orzel-system [data-osko-root] .osko-submit:not(:disabled):hover {
  background: var(--orzel-red-hover) !important;
  border-color: var(--orzel-red-hover) !important;
}
body.orzel-system .orzel-b .button.blue,
body.orzel-system .orzel-contact .button.blue {
  background: #fff !important;
  border-color: var(--orzel-border) !important;
  color: var(--orzel-navy) !important;
}
body.orzel-system .orzel-b .button.blue:hover,
body.orzel-system .orzel-contact .button.blue:hover {
  background: var(--orzel-surface) !important;
  border-color: var(--orzel-navy) !important;
  color: var(--orzel-navy) !important;
}
body.orzel-system .orzel-enrollment-cta {
  background: var(--orzel-red) !important;
  color: #fff !important;
  border-color: var(--orzel-red) !important;
  border-radius: var(--orzel-button-radius) !important;
  font-family: var(--orzel-font) !important;
}
body.orzel-system .orzel-enrollment-cta :is(span,strong) { color: #fff !important; }
body.orzel-system #page-content :is(.osk-bauto,.osk-bpe,.osk-c,.osk-ce) h3 {
  font-size: var(--orzel-h2) !important;
}
