/* MPU-Kurse PHP Site — Shared Component CSS */

/* ===== BREADCRUMB ===== */
.breadcrumb-bar{background:var(--navy-m);border-bottom:1px solid var(--border);padding:11px 0;margin-top:70px}
.bc-inner{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted)}
.bc-inner a{color:var(--muted);transition:color .2s}.bc-inner a:hover{color:var(--gold-ll)}
.bc-sep{opacity:.4}.bc-current{color:var(--gold-l)}

/* ===== MOBILE STICKY BAR ===== */
#mobileStickyBar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:150;background:var(--navy-m);border-top:1px solid var(--border);padding:12px 16px;transform:translateY(100%);transition:transform .35s ease}
#mobileStickyBar.visible{display:block!important;transform:translateY(0)}
.msb-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:.88rem;padding:13px;border-radius:10px;text-decoration:none;transition:transform .2s}
.msb-btn:hover{transform:scale(1.03)}
.msb-gold{background:linear-gradient(135deg,var(--gold),var(--gold-ll));color:var(--navy-d)}
.msb-wa{background:#25D366;color:#fff}

/* ===== COOKIE BANNER ===== */
#cookieBanner{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--navy-m);border-top:1px solid var(--border);padding:16px 20px;animation:slideUp .4s ease}
#cookieBanner.hide{animation:slideDown .35s ease forwards}
@keyframes slideUp{from{transform:translateY(100%)}to{transform:none}}
.cb-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.cb-inner p{font-size:.82rem;color:var(--muted);max-width:600px;line-height:1.55}
.cb-inner a{color:var(--gold-l)}
.cb-inner div{display:flex;gap:8px;flex-shrink:0}
#ckNo{padding:8px 16px;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--muted);font-family:Manrope,sans-serif;font-size:.82rem;cursor:pointer}
#ckOk{padding:8px 16px;background:linear-gradient(135deg,var(--gold),var(--gold-ll));border:none;border-radius:8px;color:var(--navy-d);font-weight:700;font-family:Manrope,sans-serif;font-size:.82rem;cursor:pointer}

/* ===== FLOAT BUTTONS ===== */
.float-wa{position:fixed;bottom:28px;right:28px;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;font-size:1.35rem;z-index:200;box-shadow:0 6px 24px rgba(37,211,102,.45);transition:transform .25s;text-decoration:none}
.float-wa:hover{transform:scale(1.1)}
#backToTop{position:fixed;bottom:92px;left:28px;width:42px;height:42px;border-radius:50%;background:var(--navy);border:1px solid var(--border);color:var(--gold-ll);font-size:1rem;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(8px);transition:all .3s;z-index:150;cursor:pointer}
#backToTop.visible{opacity:1;transform:none}

/* ===== PRELOADER ===== */


/* ===== MULTI-STEP FORM ===== */
.form-card{background:rgba(22,46,82,.95);border:1px solid var(--border);border-radius:22px;padding:34px;backdrop-filter:blur(12px);position:relative;overflow:hidden}
.form-card::before{content:"";position:absolute;top:-1px;left:24px;right:24px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-ll));border-radius:0 0 4px 4px}
.form-card::after{content:"";position:absolute;top:0;right:0;width:180px;height:180px;background:radial-gradient(circle,rgba(184,150,12,.07) 0%,transparent 70%);pointer-events:none}
.msf-steps{display:flex;align-items:center;margin-bottom:24px;position:relative;z-index:1}
.msf-step{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0}
.msf-step-num{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.06);border:2px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--muted);transition:all .35s}
.msf-step.active .msf-step-num{background:linear-gradient(135deg,var(--gold),var(--gold-ll));border-color:var(--gold-ll);color:var(--navy-d)}
.msf-step.done .msf-step-num{background:rgba(26,158,120,.2);border-color:var(--green);color:var(--green)}
.msf-step-lbl{font-size:.7rem;color:var(--muted);font-weight:600;white-space:nowrap;transition:color .35s}
.msf-step.active .msf-step-lbl{color:var(--gold-ll)}
.msf-step.done .msf-step-lbl{color:var(--green)}
.msf-step-line{flex:1;height:2px;background:rgba(255,255,255,.08);margin:0 6px 14px;transition:background .35s}
.msf-panel{display:none;position:relative;z-index:1}
.msf-panel.active{display:block;animation:fadeUp .3s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.msf-title{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;margin-bottom:5px}
.msf-sub{font-size:.78rem;color:var(--muted);margin-bottom:16px}
.msf-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px}
.msf-choice{padding:11px 12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:9px;color:var(--white);font-family:Manrope,sans-serif;font-size:.82rem;font-weight:600;text-align:left;cursor:pointer;transition:all .2s;line-height:1.35}
.msf-choice:hover{border-color:var(--border);background:rgba(184,150,12,.07);transform:translateX(2px)}
.msf-choice.selected{border-color:var(--gold);background:rgba(184,150,12,.13);color:var(--gold-ll)}
.form-field{margin-bottom:12px;position:relative;z-index:1}
.form-field label{display:block;font-size:.76rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.form-field input,.form-field select,.form-field textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:11px 14px;color:var(--white);font-family:Manrope,sans-serif;font-size:.88rem;outline:none;transition:border-color .25s,background .25s;-webkit-appearance:none}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--gold);background:rgba(184,150,12,.05)}
.form-field input::placeholder,.form-field textarea::placeholder{color:rgba(255,255,255,.3)}
.form-field.error input,.form-field.error select{border-color:var(--red)!important}
.field-error{font-size:.74rem;color:var(--red);margin-top:3px;display:none}
.form-field.error .field-error{display:block}
.form-nav{display:flex;gap:10px;margin-top:12px;position:relative;z-index:1}
.form-btn-back{flex:0 0 auto;padding:13px 18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--muted);font-family:Manrope,sans-serif;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .25s}
.form-btn-back:hover{color:var(--white);border-color:rgba(255,255,255,.2)}
.form-btn-next{flex:1;padding:13px;background:linear-gradient(135deg,var(--gold),var(--gold-ll));color:var(--navy-d);font-family:Manrope,sans-serif;font-weight:800;font-size:.93rem;border:none;border-radius:10px;cursor:pointer;transition:all .25s}
.form-btn-next:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(184,150,12,.45)}
.form-note{text-align:center;font-size:.74rem;color:var(--muted);margin-top:10px;position:relative;z-index:1}
.form-trust{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);position:relative;z-index:1}
.ft-item{display:flex;align-items:center;gap:5px;font-size:.74rem;color:var(--muted)}

/* ===== FOOTER ===== */
footer{background:var(--navy-m);border-top:1px solid var(--border);padding:48px 0 20px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;margin-bottom:36px}
.footer-logo{height:36px;margin-bottom:10px}
.footer-brand{color:var(--muted);font-size:.83rem;line-height:1.65;max-width:240px}
.footer-col h4,.footer-grid>div>h4{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:6px}
.footer-links a{color:var(--muted);font-size:.83rem;transition:color .2s}
.footer-links a:hover{color:var(--gold-ll)}
.footer-bottom{padding-top:18px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:.78rem;color:var(--muted)}
.footer-bottom a{color:var(--muted);transition:color .2s}.footer-bottom a:hover{color:var(--gold-ll)}

/* Opening hours badge */
.hg-today{border-color:var(--green)!important;background:rgba(26,158,120,.05)!important}
.hg-today-badge{display:inline-block;background:rgba(26,158,120,.15);color:var(--green);font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:100px;margin-left:6px}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){
  .nav-links{display:none}
  #nav.menu-open .nav-links{display:flex;flex-direction:column;position:fixed;top:70px;left:0;right:0;background:rgba(10,22,40,.98);padding:20px;border-bottom:1px solid var(--border);gap:14px;z-index:99}
  .footer-grid{grid-template-columns:1fr 1fr}
  .msf-choices{grid-template-columns:1fr}
}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}

/* ============================================================
   MOBILE RESPONSIVE — COMPONENTS (≤480px)
============================================================ */
@media(max-width:480px){
  .legal-content h2{font-size:1rem}
  .legal-content p,.legal-content li{font-size:.88rem;line-height:1.75}
  .legal-content section{margin-bottom:1.5rem}
}
