*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--color-gray-dark);background-color:var(--color-white);overflow-x:hidden}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 20px}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.1;color:var(--color-dark);text-transform:uppercase}h1{font-size:clamp(3.5rem, 10vw, 7rem);letter-spacing:-2px}h2{font-size:clamp(2.5rem, 6vw, 4.5rem);margin-bottom:20px}h3{font-size:clamp(1.5rem, 3vw, 2.5rem)}p{margin-bottom:1.2rem;font-weight:400}a{text-decoration:none;color:inherit;transition:var(--transition)}img{max-width:100%;height:auto;display:block}.btn{display:inline-block;padding:18px 45px;font-family:var(--font-display);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;border-radius:50px}.btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover::before{width:300px;height:300px}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-accent) 100%);color:var(--color-white);box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--color-primary);border:3px solid var(--color-primary)}.btn-secondary:hover{background-color:var(--color-primary);color:var(--color-white)}section{padding:var(--section-padding)}.section-title{text-align:center;margin-bottom:70px}.section-title h2{color:var(--color-dark)}#programs .section-label,#programs .section-title h2{color:var(--color-primary)}#testimonials .section-label,#testimonials .section-title h2{color:var(--color-secondary)}#pricing .section-label,#pricing .section-title h2{color:var(--color-primary)}.section-label{font-family:var(--font-display);font-size:14px;color:var(--color-primary);text-transform:uppercase;letter-spacing:4px;font-weight:700;margin-bottom:15px;display:block}.line-gradient{display:none}.fade-in{opacity:0;animation:1s forwards fadeIn}@keyframes fadeIn{to{opacity:1}}.slide-up{opacity:0;transform:translateY(50px);transition:opacity .8s,transform .8s}.slide-up.visible{opacity:1;transform:translateY(0)}.slide-left{opacity:0;transform:translateX(-50px);transition:opacity .8s,transform .8s}.slide-left.visible{opacity:1;transform:translateX(0)}.slide-right{opacity:0;transform:translateX(50px);transition:opacity .8s,transform .8s}.slide-right.visible{opacity:1;transform:translateX(0)}.back-to-top{position:fixed;bottom:40px;right:40px;width:55px;height:55px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:var(--color-white);border:none;border-radius:50%;cursor:pointer;opacity:0;visibility:hidden;transition:var(--transition);z-index:999;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:var(--shadow-md)}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{transform:translateY(-5px);box-shadow:var(--glow-primary)}