.v2 .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.v2 .mono{font-weight:650;font-size:var(--fs-sm)}
.v2 .display{font-weight:700;letter-spacing:var(--track-h);line-height:1.1}
.v2 .link-arrow{display:inline-flex;align-items:center;gap:.45rem;font-weight:650;text-decoration:none;color:var(--leaf);border-bottom:1.5px solid currentColor;padding-bottom:2px}
.v2 .link-arrow svg{width:1rem;height:1rem}

/* ---------- Plocha formulára ---------- */
.v2 .od-section{background:var(--mist);padding-block:clamp(2.25rem,5vw,4rem) clamp(3.5rem,8vw,6.5rem)}
.v2 .od-area [hidden]{display:none!important}
.v2 .od-legend{margin:0 0 clamp(1.25rem,3vw,2rem);font-size:.9375rem;color:var(--muted)}
.v2 .od-req{color:var(--leaf);font-weight:700}

/* ---------- Skupiny: ľavý stĺpec = číslo + nadpis, pravý = polia ---------- */
.v2 .od-group{display:grid;gap:1.5rem;padding-block:clamp(1.75rem,3.5vw,2.75rem);border-top:1px solid rgba(19,37,30,.16)}
.v2 .od-group--first{border-top:2px solid var(--ink)}
.v2 .od-group__head{display:flex;align-items:baseline;gap:1rem}
.v2 .od-num{color:var(--leaf)}
.v2 .od-group__title.display{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);line-height:1.15}
@media (min-width:900px){
  .v2 .od-group{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:2rem clamp(2rem,5vw,4.5rem)}
  .v2 .od-group__head{display:block;padding-top:.15rem}
  .v2 .od-num{margin-bottom:.6rem}
}

/* ---------- Polia ---------- */
.v2 .od-fields{display:grid;gap:1.5rem;align-items:start}
@media (min-width:640px){
  .v2 .od-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v2 .od-field--full{grid-column:1/-1}
}
.v2 .od-field{min-width:0}
.v2 .od-field label{display:block;margin-bottom:.45rem;font-weight:650;font-size:1rem;line-height:1.35;color:var(--ink)}
.v2 .od-input,.v2 .od-select,.v2 .od-textarea{display:block;width:100%;min-height:3.25rem;padding:.75rem 1rem;font:inherit;font-size:1.0625rem;line-height:1.4;color:var(--ink);background:#fff;
  border:1.5px solid #6c7a73;border-radius:var(--r-s);transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.v2 .od-textarea{min-height:9rem;resize:vertical}
.v2 .od-select{padding-right:2.75rem;cursor:pointer;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2313251e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right .9rem center/1.25rem}
.v2 .od-input:hover,.v2 .od-select:hover,.v2 .od-textarea:hover{border-color:var(--ink)}
.v2 .od-input:focus,.v2 .od-select:focus,.v2 .od-textarea:focus{outline:3px solid var(--leaf);outline-offset:2px;border-color:var(--leaf)}
.v2 .od-input[aria-invalid="true"],.v2 .od-select[aria-invalid="true"],.v2 .od-textarea[aria-invalid="true"]{border-color:#a3321d;box-shadow:inset 0 0 0 1px #a3321d}
.v2 .od-hint{margin-top:.4rem;font-size:.9375rem;line-height:1.45;color:var(--muted)}
.v2 .od-error{margin-top:.45rem;font-size:.9375rem;line-height:1.45;font-weight:650;color:#a3321d}
.v2 .od-error::before{content:"Chyba: ";font-weight:700}
.js .v2 .od-ina:not(.is-on){display:none}
.v2 .od-ina.is-on{padding-left:.75rem;border-left:3px solid var(--leaf);color:var(--ink)}
.v2 .od-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

/* ---------- Súhrn chýb a bannery ---------- */
.v2 .od-summary,.v2 .od-banner{margin-bottom:clamp(1.25rem,3vw,2rem);padding:1rem 1.25rem;border:1.5px solid #a3321d;border-left-width:6px;border-radius:var(--r-s);background:#fff;color:var(--ink)}
.v2 .od-summary__title{font-weight:700;color:#a3321d}
.v2 .od-summary ul{margin-top:.5rem;display:grid;gap:.15rem}
.v2 .od-summary a{display:inline-block;padding-block:.3rem;color:var(--ink);text-underline-offset:3px}
.v2 .od-summary a:hover{color:#a3321d}
.v2 .od-banner{font-weight:650}

/* ---------- Odoslanie ---------- */
.v2 .od-submit{padding-top:clamp(1.75rem,3.5vw,2.75rem);border-top:1px solid rgba(19,37,30,.16)}
.v2 .od-submit__btn{--bg:var(--pine);--fg:#fff;position:relative;min-width:min(100%,16rem)}
.v2 .od-submit__btn:hover{--bg:var(--forest)}
.v2 .od-submit__btn[aria-disabled="true"]{cursor:progress;opacity:.85}
.v2 .od-spinner{display:none;width:1.1em;height:1.1em;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:od-spin .8s linear infinite}
.v2 .od-submit__btn.is-busy .od-spinner{display:inline-block}
@keyframes od-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.v2 .od-spinner{animation-duration:2.4s}}
@media (max-width:639px){.v2 .od-submit__btn{width:100%}}
.v2 .od-privacy{margin-top:1.25rem;max-width:46rem;font-size:.9375rem;line-height:1.55;color:var(--muted)}
.v2 .od-privacy a{color:var(--ink);text-underline-offset:3px}
.v2 .od-privacy a:hover{color:var(--leaf)}

/* ---------- Potvrdenie po odoslaní ---------- */
.v2 .od-done{border-top:3px solid var(--leaf);padding-top:clamp(1.75rem,3.5vw,2.75rem);max-width:46rem}
.v2 .od-done:focus{outline:none}
.v2 .od-done .eyebrow{color:var(--leaf);margin-bottom:1rem}
.v2 .od-done__title.display{font-size:clamp(1.9rem,1.4rem + 2vw,2.75rem)}
.v2 .od-done p{margin-top:1rem}
.v2 .od-done__ref{font-size:1.125rem}
.v2 .od-done__ref strong{letter-spacing:.04em}
.v2 .od-done__contact a{font-weight:650}
.v2 .od-done .link-arrow{margin-top:.5rem}
