/* Obecné zaujímavosti – obsahové podstránky pätičky v1.105 */
.oz1105-page { display: grid; gap: 22px; margin-bottom: 34px; }
.oz1105-intro,
.oz1105-section,
.oz1105-form-card {
  background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
  border: 1px solid #dbe4ec;
  border-radius: 24px;
  box-shadow: 0 12px 30px rgba(24, 49, 75, .08);
  padding: clamp(22px, 4vw, 38px);
}
.oz1105-intro { border-left: 7px solid #4d7f4d; }
.oz1105-intro h1,
.oz1105-section h2,
.oz1105-form-card h1,
.oz1105-form-card h2 { color: #14243b; margin-top: 0; }
.oz1105-intro h1 { font-size: clamp(2rem, 4vw, 3.25rem); margin-bottom: 12px; }
.oz1105-intro p { font-size: 1.08rem; max-width: 900px; }
.oz1105-section p:last-child { margin-bottom: 0; }
.oz1105-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.oz1105-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.oz1105-card {
  background: #fff;
  border: 1px solid #dce5ec;
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 8px 20px rgba(24, 49, 75, .06);
}
.oz1105-card h3 { margin: 0 0 8px; color: #295f37; }
.oz1105-card p { margin-bottom: 0; }
.oz1105-list { padding-left: 1.25rem; }
.oz1105-list li { margin: .48rem 0; }
.oz1105-steps { counter-reset: oz1105-step; display: grid; gap: 14px; }
.oz1105-step { position: relative; padding: 18px 18px 18px 64px; border: 1px solid #dbe4ec; border-radius: 18px; background: #fff; }
.oz1105-step::before {
  counter-increment: oz1105-step;
  content: counter(oz1105-step);
  position: absolute; left: 18px; top: 17px;
  width: 32px; height: 32px; border-radius: 50%;
  display: grid; place-items: center;
  background: #4d7f4d; color: #fff; font-weight: 900;
}
.oz1105-step strong { display: block; color: #14243b; margin-bottom: 4px; }
.oz1105-faq { display: grid; gap: 12px; }
.oz1105-faq details { background: #fff; border: 1px solid #dbe4ec; border-radius: 16px; padding: 0 18px; }
.oz1105-faq summary { cursor: pointer; font-weight: 850; color: #17324f; padding: 17px 0; }
.oz1105-faq details[open] summary { color: #376d3d; }
.oz1105-faq details p { padding: 0 0 17px; margin: 0; }
.oz1105-form { display: grid; gap: 18px; }
.oz1105-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.oz1105-form label { color: #263b52; }
.oz1105-form textarea { resize: vertical; min-height: 130px; }
.oz1105-required { color: #a22626; }
.oz1105-honeypot { position: absolute !important; left: -9999px !important; opacity: 0 !important; pointer-events: none !important; }
.oz1105-check { display: flex; grid-template-columns: none; flex-direction: row; align-items: flex-start; gap: 10px; font-weight: 650; }
.oz1105-check input { width: auto; margin-top: 4px; flex: 0 0 auto; }
.oz1105-captcha { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 15px; background: #edf5ef; border: 1px solid #cfe0d3; border-radius: 16px; }
.oz1105-captcha img { width: 190px; height: 64px; max-width: 100%; border-radius: 10px; border: 1px solid #c5d2da; background: #fff; }
.oz1105-captcha label { flex: 1 1 220px; }
.oz1105-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.oz1105-small { color: #617285; font-size: .92rem; }
.oz1105-callout { border-left: 6px solid #2f6fab; background: #eef6ff; }
.oz1105-warning { border-left: 6px solid #d19b31; background: #fff8e8; }
.oz1105-link-buttons { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 16px; }
.oz1105-legal-meta { display: flex; flex-wrap: wrap; gap: 12px 24px; color: #617285; font-size: .94rem; }
.oz1105-success { background: #eaf7ed; border-color: #b9d9c0; color: #244e2d; }
.oz1105-error { background: #fff0ef; border-color: #efc2be; color: #7a2822; }
.oz1105-warning-message { background: #fff8e8; border-color: #ecd59f; color: #6d531f; }
@media (max-width: 820px) {
  .oz1105-grid, .oz1105-grid-three, .oz1105-form-grid { grid-template-columns: 1fr; }
  .oz1105-intro, .oz1105-section, .oz1105-form-card { border-radius: 20px; padding: 20px; }
}

/* Obecné zaujímavosti – dopracovanie podstránok pätičky v1.106 */
.oz1105-page .button:not(.button-secondary),
.oz1105-page .button:not(.button-secondary):visited,
.oz1105-page .button:not(.button-secondary):hover,
.oz1105-page .button:not(.button-secondary):focus,
.oz1105-page button.button:not(.button-secondary) {
  color: #fff !important;
}

.oz1106-video-section {
  display: grid;
  grid-template-columns: minmax(240px, .7fr) minmax(0, 1.6fr);
  gap: 26px;
  align-items: center;
  border-left: 6px solid #2f71c7;
}
.oz1106-video-copy p { color: #5e6f7c; }
.oz1106-video-frame {
  overflow: hidden;
  border: 1px solid rgba(47, 113, 199, .22);
  border-radius: 20px;
  background: #07131f;
  box-shadow: 0 16px 34px rgba(16, 34, 53, .16);
}
.oz1106-video-frame video {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #000;
}

.oz1106-form-page { max-width: 1140px; margin-left: auto; margin-right: auto; }
.oz1106-form-heading {
  padding: 24px 26px;
  border: 1px solid rgba(31, 112, 74, .14);
  border-radius: 24px;
  background:
    radial-gradient(circle at 95% 10%, rgba(47, 113, 199, .11), transparent 22rem),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,248,243,.96));
  box-shadow: 0 18px 46px rgba(16, 34, 53, .10);
}
.oz1106-form-heading h1 { margin: 0 0 8px; color: #102235; font-size: clamp(2rem, 4vw, 3rem); }
.oz1106-form-heading p:last-child { max-width: 820px; margin-bottom: 0; color: #536a61; }
.oz1106-form { display: grid; gap: 20px; }
.oz1106-form-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 17px;
  padding: 24px;
  border: 1px solid rgba(31, 112, 74, .16);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,252,249,.98));
  box-shadow: 0 16px 38px rgba(16, 34, 53, .09);
}
.oz1106-form-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #2f71c7, #378c59);
}
.oz1106-form-card h2 { margin: 0 0 2px; color: #102235; font-size: clamp(1.25rem, 2vw, 1.55rem); }
.oz1106-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.oz1106-form label { display: grid; gap: 7px; color: #21372e; font-weight: 750; }
.oz1106-form input[type="text"],
.oz1106-form input[type="email"],
.oz1106-form input[type="url"],
.oz1106-form select,
.oz1106-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(31, 112, 74, .24);
  border-radius: 14px;
  padding: .78rem .88rem;
  background: #fff;
  color: #172b38;
  font: inherit;
  outline: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.oz1106-form textarea { min-height: 130px; resize: vertical; }
.oz1106-form input:focus,
.oz1106-form select:focus,
.oz1106-form textarea:focus {
  border-color: #378c59;
  outline: 3px solid rgba(55, 140, 89, .16);
}
.oz1106-form .oz1105-check { margin: 0; color: #21372e; font-weight: 550; }
.oz1106-form .oz1105-check input { width: 1.1rem; height: 1.1rem; }
.oz1106-captcha {
  display: grid;
  grid-template-columns: auto auto minmax(220px, 1fr);
  gap: 13px;
  align-items: end;
  padding: 16px;
  border: 1px solid rgba(31, 112, 74, .15);
  border-radius: 18px;
  background: #edf5ef;
}
.oz1106-captcha img {
  width: 190px;
  height: 64px;
  max-width: 100%;
  border: 1px solid rgba(31, 112, 74, .24);
  border-radius: 12px;
  background: #fff;
}
.oz1106-submit-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  padding: 18px 20px;
  border: 1px solid rgba(31, 112, 74, .15);
  border-radius: 20px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 30px rgba(16,34,53,.07);
}
.oz1106-submit-actions .oz1105-small { max-width: 680px; }

.oz1106-privacy-full { border-left: 6px solid #4d7f4d; }
.oz1106-privacy-full h3 {
  margin: 30px 0 8px;
  color: #295f37;
  font-size: 1.18rem;
}
.oz1106-privacy-full .oz1105-legal-meta { margin-bottom: 20px; }

@media (max-width: 820px) {
  .oz1106-video-section { grid-template-columns: 1fr; }
  .oz1106-form-grid { grid-template-columns: 1fr; }
  .oz1106-captcha { grid-template-columns: 1fr 1fr; }
  .oz1106-captcha label { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .oz1106-form-heading,
  .oz1106-form-card { padding: 18px; border-radius: 18px; }
  .oz1106-captcha { grid-template-columns: 1fr; align-items: start; }
  .oz1106-captcha label { grid-column: auto; }
  .oz1106-submit-actions { align-items: stretch; flex-direction: column; }
  .oz1106-submit-actions .button { width: 100%; text-align: center; }
}
