.abuttons-sid{display:flex;gap:15px;margin-top:20px;flex-wrap:wrap;justify-content:center;align-items:center}
.banner-slide .din-typewriter-container{position:relative!important;margin:10px 0!important;width:100%!important;max-width:800px!important;opacity:0!important;visibility:hidden!important;transform:translateY(10px)!important;transition:opacity .5s ease,transform .5s ease,visibility .5s ease!important}
.banner-slide.active .din-typewriter-container{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}
.banner-slide:not(.active) .din-typewriter-container{opacity:0!important;visibility:hidden!important;transform:translateY(10px)!important}
.din-typewriter-background{background:linear-gradient(to right,rgba(255,255,255,.4) 80%,rgba(255,255,255,.15) 100%)!important;padding:10px!important;border-radius:0!important;box-shadow:0 5px 25px rgba(0,0,0,.5)!important;min-height:120px!important;height:120px!important;position:relative!important;overflow:hidden!important;opacity:0!important;transform:scaleX(0)!important;transform-origin:left center!important}
.banner-slide.active .din-typewriter-background{opacity:1!important;transform:scaleX(1)!important;transition:transform .6s ease-out .4s,opacity .3s ease .4s!important}
.din-typewriter-line{position:absolute!important;top:0!important;left:0!important;width:3px!important;height:0!important;background:#e74c3cbf!important;z-index:2!important;opacity:0!important}
.banner-slide.active .din-typewriter-line{opacity:1!important;height:120px!important;transition:height .4s ease-out!important}
.din-banner-text-container{position:relative!important;z-index:3!important;height:100%!important}
.din-banner-text{color:#2c3e50!important;font-size:18px!important;line-height:1.6!important;font-weight:500!important;white-space:pre-wrap!important;word-wrap:break-word!important;padding-left:5px!important;margin-left:0!important;display:block!important;opacity:0!important;visibility:hidden!important;height:100%!important}
.banner-slide.active .din-banner-text{opacity:1!important;visibility:visible!important;transition:opacity .3s ease .6s,visibility 0s ease 1s!important}
@media (max-width: 1222px){
.din-typewriter-background{padding:5px!important;min-height:120px!important;height:120px!important}
.banner-slide.active .din-typewriter-line{height:120px!important}
.din-banner-text{font-size:16px!important;line-height:1.5!important;padding-left:10px!important}
.din-typewriter-line{width:2.5px!important}
}
@media (max-width: 768px){
.din-typewriter-background{padding:5px!important;min-height:120px!important;height:120px!important}
.banner-slide.active .din-typewriter-line{height:120px!important}
.din-banner-text{font-size:16px!important;line-height:1.5!important;padding-left:8px!important}
.din-typewriter-line{width:2.5px!important}
}
@media (max-width: 480px){
.din-typewriter-background{padding:5px!important;min-height:110px!important;height:110px!important}
.banner-slide.active .din-typewriter-line{height:110px!important}
.din-banner-text{font-size:14px!important;line-height:1.2!important;padding-left:6px!important}
.din-typewriter-line{width:2px!important}
}
@media (max-width:768px){
.about-content{flex-direction:column!important;gap:40px!important}
.about-text,.about-image{width:100%!important;flex:none!important}
.about-image{order:1}
.about-text{order:2}
.contact-container{flex-direction:column!important;gap:40px!important}
.contact-info,.contact-map{width:100%!important;flex:none!important}
.contact-info{order:1}
.contact-map{order:2;margin-top:0!important}
.appointment-content{flex-direction:column!important;gap:30px!important}
.appointment-form,.appointment-info{width:100%!important;max-width:none!important}
}
@media (max-width:576px){
.about-content,.contact-container,.appointment-content{gap:30px!important}
}
.agreement-checkbox { margin: 20px 0; padding: 15px; background-color: rgba(91,192,190,.05); border-radius: 8px; border-left: 3px solid #5bc0be; }
.checkbox-container { display: flex; align-items: flex-start; }
#privacy-agree { position: absolute; opacity: 0; width: 0; height: 0; }
.agreement-label { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; font-size: 14px; line-height: 1.5; color: #333; }
.checkbox-custom { display: inline-block; width: 20px; height: 20px; min-width: 20px; background-color: #fff; border: 2px solid #5bc0be; border-radius: 4px; position: relative; transition: all .3s ease; margin-top: 2px; }
#privacy-agree:checked + .agreement-label .checkbox-custom { background-color: #5bc0be; border-color: #5bc0be; }
#privacy-agree:checked + .agreement-label .checkbox-custom:after { content: ''; position: absolute; left: 6px; top: 2px; width: 5px; height: 10px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.agreement-link { color: #3a506b; text-decoration: none; font-weight: 500; transition: color .3s ease; border-bottom: 1px dashed #5bc0be; }
.agreement-link:hover { color: #5bc0be; border-bottom: 1px solid #5bc0be; }
.agreement-text { flex: 1; }
#appointment-form:invalid button[type="submit"] { opacity: .6; cursor: not-allowed; }
#privacy-agree:invalid ~ .agreement-label .checkbox-custom { border-color: #ff6b6b; }
@media (max-width: 768px) { .agreement-label { font-size: 13px; } .agreement-checkbox { padding: 12px; } }
.academ-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:999999;animation:modalFadeIn .3s ease;backdrop-filter:blur(3px)}
.academ-modal{background:#fff;border-radius:16px;width:90%;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:modalSlideUp .4s ease;overflow:hidden;border:1px solid rgba(91,192,190,.3)}
.academ-modal.success{border-top:6px solid #5bc0be}
.academ-modal.error{border-top:6px solid #ff6b6b}
.academ-modal.info{border-top:6px solid #3498db}
.academ-modal-header{padding:25px 30px 15px;text-align:center;border-bottom:1px solid rgba(91,192,190,.1)}
.academ-modal-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:40px;box-shadow:0 8px 25px rgba(0,0,0,.15)}
.academ-modal-icon.success{background:linear-gradient(135deg,#5bc0be,#3a506b);color:#fff}
.academ-modal-icon.error{background:linear-gradient(135deg,#ff6b6b,#e74c3c);color:#fff}
.academ-modal-icon.info{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}
.academ-modal-title{font-size:24px;font-weight:700;margin:0 0 10px;color:#3a506b}
.academ-modal-subtitle{font-size:16px;color:#7f8c8d;margin:0}
.academ-modal-body{padding:25px 30px;text-align:center}
.academ-modal-message{font-size:17px;line-height:1.6;color:#2c3e50;margin-bottom:25px}
.academ-modal-ticket{background:linear-gradient(135deg,rgba(91,192,190,.1),rgba(58,80,107,.1));border:2px solid rgba(91,192,190,.3);border-radius:12px;padding:15px;margin:20px 0;display:inline-block}
.academ-modal-ticket-id{font-size:20px;font-weight:700;color:#5bc0be;letter-spacing:1px}
.academ-modal-footer{padding:20px 30px 30px;text-align:center;border-top:1px solid rgba(91,192,190,.1)}
.academ-modal-button{background:linear-gradient(135deg,#5bc0be,#3a506b);color:#fff;border:none;padding:14px 40px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px rgba(91,192,190,.3);display:inline-flex;align-items:center;gap:10px}
.academ-modal-button:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(91,192,190,.4)}
.academ-modal-button.error{background:linear-gradient(135deg,#ff6b6b,#e74c3c);box-shadow:0 6px 20px rgba(255,107,107,.3)}
.academ-modal-button.info{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 6px 20px rgba(52,152,219,.3)}
.academ-modal-close{position:absolute;top:20px;right:20px;background:rgba(255,255,255,.9);border:1px solid rgba(91,192,190,.3);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;color:#3a506b;transition:all .3s ease}
.academ-modal-close:hover{background:#5bc0be;color:#fff;transform:rotate(90deg)}
@keyframes modalFadeIn{from{opacity:0}to{opacity:1}}
@keyframes modalSlideUp{from{transform:translateY(50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:600px){
.academ-modal{width:95%;margin:10px}
.academ-modal-icon{width:70px;height:70px;font-size:35px}
.academ-modal-title{font-size:22px}
.academ-modal-message{font-size:16px}
}
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}