.special-card{display:flex;background:#111;border-radius:12px;overflow:hidden;box-shadow:0 10px 25px rgba(0,0,0,.35);transition:transform .3s,box-shadow .3s}.special-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(0,0,0,.45)}.special-img{position:relative;width:160px;min-height:160px;flex-shrink:0;background:#000}.special-img img{width:100%;height:100%;object-fit:cover}.special-badge{position:absolute;top:10px;left:10px;background:var(--bs-primary);color:#fff;font-size:11px;padding:4px 8px;border-radius:6px;font-weight:600;letter-spacing:.5px}.special-content{padding:20px;color:#fff;flex:1}.special-content h5{color:var(--bs-primary);font-weight:700;margin-bottom:6px}.special-content h4{margin-top:6px;font-weight:700}.special-content small{font-weight:400;color:#b5b5b5}.special-content .btn{margin:8px 0 0}@media (max-width:768px){.special-card{flex-direction:column}.special-img{width:100%;height:180px}}.course-item{position:relative;overflow:hidden;border-radius:12px;cursor:pointer}.course-item img{transition:.3s;width:100%;height:300px;object-fit:cover}.course-item:hover img{transform:scale(1.05)}.course-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);opacity:0;transition:.3s;display:flex;flex-direction:column;justify-content:center;align-items:center}.course-item:hover .course-overlay{opacity:1}@keyframes cartShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}}.shake{animation:.4s cartShake}#cart-icon i{font-size:2rem}#cart-icon{padding:.5rem .7rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}#cart-icon:hover i{color:#525042}#cart-count{font-size:.85rem;padding:.3em .5em}#cart-dropdown{display:none;top:40px;right:0;width:300px;position:absolute;z-index:999;transition:opacity .12s}#cart-area:hover #cart-dropdown,#cart-dropdown:hover{display:block!important}#cart-dropdown[aria-hidden=true]{display:none;opacity:0}body{background-color:#f8f9fa;font-family:'Segoe UI',sans-serif}.card{border-radius:15px;background-color:#fff}h1,h4{font-weight:700}#proceed-payment{display:flex;justify-content:center;align-items:center}#cart-page div{background-color:#f1f1f1}.logo-img{height:70px;width:auto}#spinner{opacity:0;visibility:hidden;transition:opacity .5s ease-out,visibility 0s linear .5s;z-index:99999}#spinner.show{transition:opacity .5s ease-out,visibility linear;visibility:visible;opacity:1}.back-to-top{position:fixed!important;display:none;right:45px;bottom:45px;z-index:99}.font-work-sans{font-family:"Work Sans",sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.font-playfair-display{font-family:"Playfair Display",serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.font-dancing-script{font-family:"Dancing Script",cursive;font-optical-sizing:auto;font-weight:400;font-style:normal}.btn{position:relative;transition:.5s}.btn-square{width:38px;height:38px}.btn-sm-square{width:32px;height:32px}.btn-lg-square{width:48px;height:48px}.btn-lg-square,.btn-sm-square,.btn-square{padding:0;display:flex;align-items:center;justify-content:center;font-weight:400}.btn-dark,.btn-primary{margin:10px}.btn-primary::after,.btn-primary::before{position:absolute;content:"";width:calc(100% + 10px);height:calc(100% + 10px);top:-5px;left:-5px}.btn-primary::before{top:-10px;height:calc(100% + 20px);border-left:2px solid var(--bs-primary);border-right:2px solid var(--bs-primary)}.btn-primary::after{left:-10px;width:calc(100% + 20px);border-top:2px solid var(--bs-primary);border-bottom:2px solid var(--bs-primary)}.btn-dark::after,.btn-dark::before{position:absolute;content:"";width:calc(100% + 10px);height:calc(100% + 10px);top:-5px;left:-5px}.btn-dark::before{top:-10px;height:calc(100% + 20px);border-left:2px solid var(--bs-dark);border-right:2px solid var(--bs-dark)}.btn-dark::after{left:-10px;width:calc(100% + 20px);border-top:2px solid var(--bs-dark);border-bottom:2px solid var(--bs-dark)}.sticky-top{top:-150px;transition:.5s}.navbar .navbar-nav .nav-link{margin:0 12px;padding:0;outline:0;font-family:"Playfair Display",serif;font-size:18px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--bs-dark)}.navbar .navbar-nav .nav-link.active,.navbar .navbar-nav .nav-link:hover{color:var(--bs-primary)}.navbar .dropdown-toggle::after{border:none;content:"\f107";font-family:"Font Awesome 5 Free";font-weight:900;vertical-align:middle;margin-left:8px}.navbar .dropdown-menu .dropdown-item.active,.navbar .dropdown-menu .dropdown-item:hover{color:var(--bs-white);background:var(--bs-primary)}@media (max-width:991.98px){.navbar .navbar-nav .nav-link{margin-left:0;padding:10px 0}}.navbar .btn-primary{border-width:2px;background:var(--bs-light)}.navbar .btn-primary:hover{background:var(--bs-primary)}.hero-header{background:url(../img/hero-bg.jpg) top left/cover no-repeat}@media (min-width:992px){.navbar .nav-item .dropdown-menu{display:block;border:none;margin-top:0;top:150%;opacity:0;visibility:hidden;transition:.5s}.navbar .nav-item:hover .dropdown-menu{top:100%;visibility:visible;transition:.5s;opacity:1}.hero-header .container{max-width:100%!important}.hero-header .hero-header-text{padding-left:calc(((100% - 960px)/ 2) + .75rem)}.service .service-item.border-lg-end{border-right:1px solid #dee2e6}.service .service-item.border-lg-end-0{border-right:none!important}.service .service-item.border-lg-bottom-0{border-bottom:none!important}}@media (min-width:1200px){.hero-header .hero-header-text{padding-left:calc(((100% - 1140px)/ 2) + .75rem)}}@media (min-width:1400px){.hero-header .hero-header-text{padding-left:calc(((100% - 1320px)/ 2) + .75rem)}}.header-carousel .owl-nav{position:absolute;right:0;bottom:0;text-align:center;display:flex;justify-content:center}.header-carousel .owl-nav .owl-next,.header-carousel .owl-nav .owl-prev{position:relative;margin-left:2px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;color:var(--bs-dark);background:var(--bs-primary);font-size:22px;transition:.5s}.header-carousel .owl-nav .owl-next:hover,.header-carousel .owl-nav .owl-prev:hover{color:var(--bs-white)}.page-header{background:url(../img/page-header.jpg) center center/contain no-repeat}@media (max-width:768px){.service .service-item{border:none!important;box-shadow:0 0 45px rgba(0,0,0,.05)}}.service .service-item .btn-primary{border-width:2px;background:var(--bs-white)}.service .service-item .btn-primary:hover{background:var(--bs-primary)}.service .service-item img{width:70px;margin-bottom:20px}.price .price-item{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.05)}.blog .btn-dark{border-width:2px;background:var(--bs-primary);color:var(--bs-dark)}.blog .btn-dark:hover{background:var(--bs-dark);color:var(--bs-white)}.gallery .gallery-item{position:relative;overflow:hidden}.gallery .gallery-item img{transition:.5s}.gallery .gallery-item:hover img{transform:scale(1.2)}.gallery .gallery-icon{position:absolute;display:flex;align-items:center;justify-content:center;width:0;height:0;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.7);transition:.5s;z-index:1}.gallery .gallery-item:hover .gallery-icon{width:100%;height:100%}.gallery .gallery-icon .btn{opacity:0;transition:.5s}.gallery .gallery-item:hover .gallery-icon .btn{opacity:1;transition-delay:.5s}.team{position:relative}.team::before{position:absolute;content:"";width:200%;height:200px;top:50%;left:-50%;transform:translateY(-50%);margin-top:1rem;background:var(--bs-primary)}.team-item img{transition:.5s}.team-item:hover img{transform:scale(1.2)}.team-overlay{position:absolute;padding:30px;right:30px;bottom:30px;left:30px;text-align:center;background:rgba(255,255,255,.5);transition:.5s;z-index:1}.team-item:hover .team-overlay{background:rgba(255,255,255,.9)}.team-overlay p{letter-spacing:1px}.team-overlay .btn-dark{border-width:2px;color:var(--bs-dark);background:0 0}.team-overlay .btn-dark:hover{color:var(--bs-white);background:var(--bs-dark)}.testimonial-carousel .owl-item{position:relative}.testimonial-carousel .owl-item::before{position:absolute;content:"\f10d";font-family:"Font Awesome 5 Free";font-weight:900;font-size:300px;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.1}.testimonial-carousel .owl-item img{position:relative;width:100px;height:100px;z-index:1}.testimonial-carousel .owl-item,.testimonial-carousel .owl-item *{transition:.5s}.testimonial-carousel .owl-item span{letter-spacing:2px}.testimonial-carousel .owl-item.center .bg-light{background:var(--bs-primary)!important}.testimonial-carousel .owl-item.center .bg-light *{color:var(--bs-dark)!important}.testimonial-carousel .owl-nav{margin-top:25px;display:flex;justify-content:center}.testimonial-carousel .owl-nav .owl-next,.testimonial-carousel .owl-nav .owl-prev{margin:0 5px;width:45px;height:45px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--bs-dark);background:var(--bs-primary);transition:.5s}.testimonial-carousel .owl-nav .owl-next:hover,.testimonial-carousel .owl-nav .owl-prev:hover{color:var(--bs-white);background:var(--bs-dark)}@media (min-width:992px){.footer::after{position:absolute;content:"";width:1px;height:100%;top:0;left:50%;background:var(--bs-secondary)}}.footer .btn.btn-link{display:block;margin-bottom:5px;padding:0;text-align:left;color:rgba(255,255,255,.5);font-weight:400;text-transform:capitalize;transition:.3s}.footer .btn.btn-link:hover{color:var(--bs-primary);letter-spacing:1px;box-shadow:none}.footer .btn.btn-link::before{position:relative;content:"\f105";font-family:"Font Awesome 5 Free";font-weight:900;color:rgba(255,255,255,.5);margin-right:10px}.checkout-wrapper{background:linear-gradient(135deg,#f8f9ff 0,#e0e7ff 100%);min-height:100vh;padding:60px 0;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}.checkout-wrapper h1.display-5{font-weight:800!important;background:linear-gradient(90deg,#1e40af,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.checkout-wrapper img[alt="PayFast Secure Payment"]{filter:drop-shadow(0 4px 10px rgba(0,0,0,.1));transition:transform .3s}.checkout-wrapper img[alt="PayFast Secure Payment"]:hover{transform:scale(1.05)}.checkout-wrapper .card{border:none!important;border-radius:1.8rem!important;overflow:hidden;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);box-shadow:0 25px 60px rgba(0,0,0,.12);transition:.4s}.checkout-wrapper .card:hover{transform:translateY(-12px);box-shadow:0 35px 80px rgba(0,0,0,.18)}.checkout-wrapper .card-header.bg-primary{background:linear-gradient(135deg,#1e3a8a 0,#3b82f6 100%)!important}.checkout-wrapper .card-header.bg-dark{background:linear-gradient(135deg,#111827 0,#1f2937 100%)!important}.checkout-wrapper .card-header h4{font-weight:600;letter-spacing:1px}.checkout-wrapper .form-control{border:2px solid #e2e8f0;border-radius:1.2rem;padding:1rem 1.4rem;font-size:1.1rem;transition:.3s}.checkout-wrapper .form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 .4rem rgba(59,130,246,.15);transform:scale(1.02)}.checkout-wrapper h2.text-primary{color:#00b16a!important;font-weight:900!important;font-size:3.2rem!important;text-shadow:0 4px 10px rgba(0,177,106,.2)}#proceed-payment{background:linear-gradient(90deg,#00b16a 0,#00d084 100%)!important;border:none!important;border-radius:1.8rem!important;padding:1.6rem!important;font-size:1.5rem!important;font-weight:800!important;letter-spacing:1.5px;text-transform:uppercase;box-shadow:0 20px 40px rgba(0,177,106,.4);transition:.4s;position:relative;overflow:hidden}#proceed-payment:hover{background:linear-gradient(90deg,#00d084 0,#00e699 100%)!important;transform:translateY(-5px);box-shadow:0 25px 50px rgba(0,177,106,.5)}#proceed-payment:active{transform:translateY(0)}.checkout-wrapper .alert-info{background:linear-gradient(90deg,#dbeafe 0,#bfdbfe 100%);border:none;border-radius:1.2rem;color:#1e40af;font-weight:600}.checkout-wrapper small.text-muted{font-size:.9rem;opacity:.8}@media (max-width:768px){.checkout-wrapper .card{margin-bottom:2rem}#proceed-payment{font-size:1.3rem!important;padding:1.4rem!important}.checkout-wrapper h2.text-primary{font-size:2.5rem!important}}.btn-disabled{background-color:#b5b5b5!important;border-color:#b5b5b5!important;pointer-events:none;opacity:.6}