/* ===== OBJEDNÁVKA – Eurocertifikát ===== */

.eo,.eo-steps{--t:#173f35;--m:#5f6b65;--l:#e3eae5;--g:#1f4734;--sel:#f2f7f0;color:var(--t);font-family:'Source Sans 3','Source Sans Pro',Arial,sans-serif;box-sizing:border-box}
.eo *,.eo-steps *{box-sizing:border-box}

/* KROKY 1–4 */
.eo-steps{width:100vw;position:relative;left:50%;transform:translateX(-50%);border-bottom:1px solid var(--l);padding:34px 20px}
.eo-steps-in{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.eo-step{display:flex;gap:14px;align-items:flex-start}
.eo-step i{flex:0 0 34px;height:34px;border-radius:50%;background:var(--g);color:#fff;font-style:normal;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}
.eo-step b{display:block;font-size:14px;margin:2px 0 3px}
.eo-step span{display:block;font-size:12px;line-height:1.45;color:var(--m)}

/* LAYOUT */
.eo{max-width:1320px;margin:36px auto 60px;padding:0 20px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
.eo h2{font-size:20px!important;line-height:1.2!important;margin:0 0 14px!important;color:var(--t)!important}

/* POLOŽKY */
.eo-items{border:1px solid #d8e2d9;border-radius:12px;overflow:hidden;background:#fff}
.eo-row{display:grid;grid-template-columns:minmax(0,1fr) auto 96px;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--l);transition:background .15s}
.eo-row:last-child{border-bottom:0}
.eo-row.on{background:var(--sel)}
.eo-check{display:flex;gap:10px;align-items:flex-start;cursor:pointer;margin:0}
.eo-check input{width:15px;height:15px;margin:2px 0 0;flex:0 0 15px;accent-color:var(--g);cursor:pointer}
.eo-check b{display:block;font-size:14px;line-height:1.3}
.eo-check small{display:block;font-size:12px;line-height:1.4;color:var(--m);margin-top:2px}

.eo-qty{display:flex;align-items:center;gap:8px}
.eo-qty button{width:32px;height:32px;border-radius:50%;border:1px solid #cfd9d1;background:#fff;color:var(--t);font-size:16px;font-weight:700;line-height:1;cursor:pointer;padding:0}
.eo-qty button:hover{border-color:var(--g)}
.eo-qty input{width:42px;height:34px;border:1px solid #cfd9d1;border-radius:6px;text-align:center;font-size:14px;color:var(--t);padding:0;-moz-appearance:textfield}
.eo-qty input::-webkit-outer-spin-button,.eo-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.eo-qty button:focus-visible,.eo-qty input:focus-visible,.eo-check input:focus-visible,.eo-btn:focus-visible{outline:3px solid #5baa36;outline-offset:2px}

.eo-price{text-align:right;font-size:16px;font-weight:800;white-space:nowrap}
.eo-price.sm{font-size:13px;font-weight:700}

/* ZHRNUTIE */
.eo-sum{position:sticky;top:110px;border:1px solid var(--g);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 10px 26px rgba(23,63,53,.1)}
.eo-sum-h{background:var(--g);color:#fff;font-size:16px;font-weight:700;padding:16px 18px}
.eo-sum-b{padding:14px 18px 18px}
.eo-lines{border-bottom:1px solid var(--l);padding-bottom:8px;margin-bottom:10px}
.eo-line{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:5px 0}
.eo-line b{white-space:nowrap}
.eo-empty{font-size:12px;color:var(--m);padding:5px 0}
.eo-meta{border-bottom:1px solid var(--l);padding-bottom:8px;margin-bottom:12px}
.eo-meta div{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--m);padding:4px 0}
.eo-meta span:last-child{text-align:right}
.eo-total{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.eo-total span{font-size:13px;font-weight:700}
.eo-total b{font-size:24px;font-weight:800}
.eo-total b.sm{font-size:17px}
.eo-extra{font-size:10px;color:var(--m);text-align:right;margin-top:2px}
.eo-note{font-size:10px;color:var(--m);margin:6px 0 12px}
.eo-terms{display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.35;color:var(--t);margin:0 0 12px;cursor:pointer}
.eo-terms input{margin:1px 0 0;flex:0 0 13px;accent-color:var(--g)}
.eo-terms a{color:var(--t)!important;text-decoration:underline!important}
.eo-btn{display:block;width:100%;border:0;border-radius:6px;background:var(--g);color:#fff;font-family:inherit;font-size:14px;font-weight:700;padding:13px 10px;cursor:pointer}
.eo-btn:hover{filter:brightness(1.12)}
.eo-btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;filter:none}
.eo-hint{font-size:11px;color:#b54a2c;margin-top:8px;min-height:14px}

/* TABLET / MOBIL */
@media(max-width:900px){
.eo{grid-template-columns:1fr}
.eo-sum{position:static}
.eo-steps-in{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
.eo{margin:24px auto 40px;padding:0 14px}
.eo-steps-in{grid-template-columns:1fr}
.eo-row{grid-template-columns:1fr auto;gap:10px 12px;padding:14px}
.eo-check{grid-column:1/-1}
.eo-qty{padding-left:25px}
}

/* VIDITEĽNÉ ZAŠKRTÁVACIE POLÍČKA (šablóna ich skrýva) */
.eo .eo-check input[type=checkbox],.eo .eo-terms input[type=checkbox]{-webkit-appearance:checkbox!important;appearance:auto!important;display:inline-block!important;position:static!important;opacity:1!important;visibility:visible!important;clip:auto!important;width:16px!important;height:16px!important;margin:2px 0 0!important;flex:0 0 16px!important;accent-color:#1f4734}

/* ===== 2.–4. FORMULÁR ===== */
.eo-main h2{margin-top:36px!important}
.eo-main h2:first-child{margin-top:0!important}
.eo-card{border:1px solid #d8e2d9;border-radius:12px;background:#fff;padding:22px 24px}
.eo-card h3{font-size:14px!important;font-weight:700!important;color:var(--t)!important;margin:20px 0 10px!important}
.eo-card h3:first-child{margin-top:0!important}

.eo-type{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:6px}
.eo-type button{border:1px solid #cfd9d1;border-radius:8px;background:#fff;color:var(--t);font-family:inherit;font-size:15px;font-weight:700;padding:11px 10px;cursor:pointer;line-height:1.2}
.eo-type button small{display:block;font-size:11px;font-weight:400;color:var(--m);margin-top:3px}
.eo-type button.on{background:var(--g);border-color:var(--g);color:#fff}
.eo-type button.on small{color:#cfe0d4}
.eo-type button:focus-visible{outline:3px solid #5baa36;outline-offset:2px}

.eo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.eo-f.full{grid-column:1/-1}
.eo-f label{display:block;font-size:12px;font-weight:600;color:var(--t);margin:0 0 5px}
.eo-f label i{font-style:normal;font-weight:400;color:var(--m)}
.eo-f input,.eo-f textarea{display:block;width:100%!important;max-width:none!important;height:auto!important;border:1px solid #cfd9d1!important;border-radius:8px!important;background:#fff!important;padding:11px 12px!important;font-family:inherit!important;font-size:14px!important;color:var(--t)!important;box-shadow:none!important;margin:0!important}
.eo-f textarea{resize:vertical;min-height:84px}
.eo-f input:focus,.eo-f textarea:focus{outline:none;border-color:var(--g)!important;box-shadow:0 0 0 3px rgba(31,71,52,.12)!important}
.eo-f input::placeholder,.eo-f textarea::placeholder{color:#9aa49f}
.eo-f input.err{border-color:#c0492b!important;background:#fdf5f3!important}

.eo-cb{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--t);margin:18px 0 0;cursor:pointer}
.eo .eo-cb input[type=checkbox]{-webkit-appearance:checkbox!important;appearance:auto!important;display:inline-block!important;position:static!important;opacity:1!important;visibility:visible!important;clip:auto!important;width:16px!important;height:16px!important;margin:0!important;flex:0 0 16px;accent-color:#1f4734}
.eo-bud{margin-top:4px}

.eo-pay{display:flex;gap:14px;align-items:center;border:1px solid #d8e2d9;border-radius:12px;background:#f7faf6;padding:18px 22px;font-size:14px;color:var(--t)}
.eo-pay svg{flex:0 0 22px;color:var(--t)}

@media(max-width:560px){
.eo-card{padding:18px 16px}
.eo-type,.eo-grid{grid-template-columns:1fr}
}
