*{    margin:0;    padding:0;    box-sizing:border-box;}
body{    font-family:'Inter', sans-serif;    line-height:1.6;    color:#1e293b;    background:linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);    overflow-x:hidden;}
.container{    max-width:1200px;    margin:0 auto;    padding:0 20px;}
:root{    --primary-blue:#3b82f6;    --secondary-blue:#1e40af;    --accent-blue:#60a5fa;    --light-blue:#dbeafe;    --dark-blue:#1e3a8a;    --white:#ffffff;    --light-gray:#f8fafc;    --gray:#64748b;    --dark-gray:#334155;    --border-color:#e2e8f0;            --shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);    --shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);    --shadow-md:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);    --shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);    --shadow-xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);    --shadow-blue:0 20px 25px -5px rgba(59, 130, 246, 0.15), 0 10px 10px -5px rgba(59, 130, 246, 0.04);            --gradient-primary:linear-gradient(135deg, #3b82f6 0%, #1e40af 50%, #1e3a8a 100%);    --gradient-secondary:linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);    --gradient-light:linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);    --gradient-glass:linear-gradient(135deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0.1) 100%);            --glass-bg:rgba(255, 255, 255, 0.25);    --glass-border:rgba(255, 255, 255, 0.18);    --glass-blur:blur(10px);}
.navbar{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border-bottom:1px solid var(--glass-border);    box-shadow:var(--shadow-lg);    position:fixed;    top:0;    width:100%;    z-index:1000;    padding:1rem 0;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.navbar.scrolled{    background:rgba(255, 255, 255, 0.95);    backdrop-filter:blur(20px);    -webkit-backdrop-filter:blur(20px);    padding:0.75rem 0;}
.nav-container{    max-width:1200px;    margin:0 auto;    padding:0 20px;    display:flex;    justify-content:space-between;    align-items:center;}
.nav-logo{    position:relative;    display:flex;    align-items:center;    gap:1rem;}
.logo-image{    height:50px;    width:auto;    object-fit:contain;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.logo-text{    display:flex;    flex-direction:column;}
.nav-logo:hover .logo-image{    transform:scale(1.05) rotate(2deg);}
.nav-logo h2{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:1.75rem;    font-weight:800;    margin-bottom:0.25rem;    letter-spacing:-0.025em;}
.tagline{    font-size:0.8rem;    color:var(--gray);    font-weight:500;    opacity:0.8;}
.nav-menu{    display:flex;    align-items:center;    gap:2.5rem;}
.nav-link{    text-decoration:none;    color:var(--dark-gray);    font-weight:600;    font-size:0.95rem;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    padding:0.5rem 0;}
.nav-link::before{    content:'';    position:absolute;    bottom:0;    left:50%;    width:0;    height:2px;    background:var(--gradient-secondary);    border-radius:1px;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    transform:translateX(-50%);}
.nav-link:hover::before,.nav-link.active::before{    width:100%;}
.nav-link:hover,.nav-link.active{    color:var(--primary-blue);    transform:translateY(-1px);}
.nav-phone{    background:var(--gradient-primary);    color:var(--white);    padding:0.75rem 1.5rem;    border-radius:50px;    text-decoration:none;    font-weight:600;    font-size:0.9rem;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    display:flex;    align-items:center;    gap:0.5rem;    box-shadow:var(--shadow-blue);    position:relative;    overflow:hidden;}
.nav-phone::before{    content:'';    position:absolute;    top:0;    left:-100%;    width:100%;    height:100%;    background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);    transition:left 0.5s;}
.nav-phone:hover::before{    left:100%;}
.nav-phone:hover{    transform:translateY(-3px);    box-shadow:var(--shadow-xl);}
.hamburger{    display:none;    flex-direction:column;    cursor:pointer;}
.bar{    width:25px;    height:3px;    background:var(--primary-blue);    margin:3px 0;    transition:0.3s;}
.hero{    position:relative;    background:        linear-gradient(135deg,             rgba(29, 78, 216, 0.85) 0%,             rgba(37, 99, 235, 0.8) 50%,             rgba(29, 78, 216, 0.85) 100%),        url('contact-background.jpg');    background-size:cover;    background-position:center;    background-attachment:fixed;    height:calc(100vh - 90px);    margin-top:90px;    overflow:hidden;    display:flex;    align-items:center;}
.hero::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    bottom:0;    background:        linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.08) 100%),        radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.1) 0%, transparent 50%),        radial-gradient(ellipse at bottom right, rgba(255, 255, 255, 0.06) 0%, transparent 50%),        radial-gradient(ellipse at center, rgba(255, 255, 255, 0.04) 0%, transparent 70%);    pointer-events:none;    z-index:1;}
.hero::after{    content:'';    position:absolute;    top:20%;    right:-10%;    width:500px;    height:500px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.1;    filter:blur(100px);    animation:float 6s ease-in-out infinite;}
.hero-particles{    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    pointer-events:none;    z-index:1;}
.particle{    position:absolute;    width:4px;    height:4px;    background:var(--primary-blue);    border-radius:50%;    opacity:0.3;    animation:particleFloat 8s ease-in-out infinite;}
.particle:nth-child(1){    top:20%;    left:10%;    animation-delay:0s;    animation-duration:6s;}
.particle:nth-child(2){    top:60%;    left:20%;    animation-delay:1s;    animation-duration:8s;}
.particle:nth-child(3){    top:30%;    left:80%;    animation-delay:2s;    animation-duration:7s;}
.particle:nth-child(4){    top:80%;    left:70%;    animation-delay:3s;    animation-duration:9s;}
.particle:nth-child(5){    top:10%;    left:50%;    animation-delay:4s;    animation-duration:6s;}
.particle:nth-child(6){    top:70%;    left:15%;    animation-delay:5s;    animation-duration:8s;}
.particle:nth-child(7){    top:40%;    left:90%;    animation-delay:6s;    animation-duration:7s;}
.particle:nth-child(8){    top:90%;    left:40%;    animation-delay:7s;    animation-duration:9s;}
@keyframes particleFloat{    0%, 100%{        transform:translateY(0px) translateX(0px) scale(1);        opacity:0.3;}
    25%{        transform:translateY(-20px) translateX(10px) scale(1.2);        opacity:0.6;}
    50%{        transform:translateY(-10px) translateX(-15px) scale(0.8);        opacity:0.4;}
    75%{        transform:translateY(-30px) translateX(5px) scale(1.1);        opacity:0.7;}
}
@keyframes float{    0%, 100%{transform:translateY(0px) scale(1);}
    50%{transform:translateY(-20px) scale(1.05);}
}
.hero-container{    max-width:1000px;    margin:6rem auto 0;    padding:0 20px;    display:flex;    flex-direction:column;    align-items:center;    text-align:center;    position:relative;    z-index:2;}
.hero-title{    font-size:4rem;    font-weight:900;    color:var(--white);    margin-bottom:1.5rem;    line-height:1.1;    letter-spacing:-0.025em;    animation:slideInUp 1s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    text-shadow:0 4px 20px rgba(0, 0, 0, 0.3);}
@keyframes slideInLeft{    0%{        opacity:0;        transform:translateX(-50px);}
    100%{        opacity:1;        transform:translateX(0);}
}
@keyframes slideInUp{    0%{        opacity:0;        transform:translateY(50px);}
    100%{        opacity:1;        transform:translateY(0);}
}
.highlight{    color:#87CEEB;    position:relative;}
.highlight::after{    content:'';    position:absolute;    bottom:0;    left:0;    width:100%;    height:8px;    background:#5DADE2;    opacity:0.4;    border-radius:4px;    animation:expandWidth 1.5s ease-out 0.5s both;}
@keyframes expandWidth{    0%{width:0;}
    100%{width:100%;}
}
.hero-subtitle{    font-size:1.3rem;    color:rgba(255, 255, 255, 0.9);    margin-bottom:2rem;    line-height:1.6;    max-width:700px;    margin-left:auto;    margin-right:auto;    animation:slideInUp 1s cubic-bezier(0.4, 0, 0.2, 1) 0.2s both;    font-weight:400;}
.hero-stats{    display:flex;    justify-content:center;    gap:1.5rem;    margin-bottom:1rem;    animation:slideInUp 1s cubic-bezier(0.4, 0, 0.2, 1) 0.4s both;    padding:0.5rem 0;}
.stat{    text-align:center;    position:relative;    padding:0.8rem 1rem;    background:rgba(255, 255, 255, 0.8);    border-radius:12px;    border:1px solid rgba(255, 255, 255, 0.2);    backdrop-filter:blur(10px);    -webkit-backdrop-filter:blur(10px);    box-shadow:0 4px 16px rgba(0, 0, 0, 0.1);    transition:all 0.3s ease;    min-width:100px;}
.stat:hover{    transform:translateY(-5px);    box-shadow:0 15px 40px rgba(0, 0, 0, 0.15);}
.stat-number{    display:block;    font-size:1.8rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-bottom:0.2rem;    line-height:1;}
.stat-label{    font-size:0.75rem;    color:rgba(75, 85, 99, 0.8);    font-weight:600;    text-transform:uppercase;    letter-spacing:0.5px;}
.hero-content{    position:relative;    z-index:2;}
.hero-buttons{    display:flex;    justify-content:center;    gap:2rem;    flex-wrap:wrap;    animation:slideInUp 1s cubic-bezier(0.4, 0, 0.2, 1) 0.6s both;    margin-top:1rem;}
.hero-content::before{    content:'';    position:absolute;    top:-50px;    left:-50px;    width:100px;    height:100px;    background:linear-gradient(45deg, rgba(59, 130, 246, 0.1), rgba(29, 78, 216, 0.1));    border-radius:50%;    animation:floatSlow 6s ease-in-out infinite;    z-index:-1;}
.hero-content::after{    content:'';    position:absolute;    bottom:-30px;    right:-30px;    width:80px;    height:80px;    background:linear-gradient(45deg, rgba(37, 99, 235, 0.1), rgba(59, 130, 246, 0.1));    border-radius:50%;    animation:floatSlow 8s ease-in-out infinite reverse;    z-index:-1;}
@keyframes floatSlow{    0%, 100%{        transform:translateY(0px) rotate(0deg) scale(1);}
    50%{        transform:translateY(-20px) rotate(180deg) scale(1.1);}
}
.btn{    display:inline-flex;    align-items:center;    gap:0.75rem;    padding:1rem 2rem;    border-radius:50px;    text-decoration:none;    font-weight:600;    font-size:1rem;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    border:2px solid transparent;    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);    cursor:pointer;}
.btn::before{    content:'';    position:absolute;    top:0;    left:-100%;    width:100%;    height:100%;    background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);    transition:left 0.5s;}
.btn::after{    content:'';    position:absolute;    top:50%;    left:50%;    width:0;    height:0;    background:rgba(255, 255, 255, 0.2);    border-radius:50%;    transform:translate(-50%, -50%);    transition:width 0.3s ease, height 0.3s ease;}
.btn:hover::before{    left:100%;}
.btn:hover::after{    width:300px;    height:300px;}
.btn-primary{    background:var(--gradient-primary);    color:var(--white);    box-shadow:var(--shadow-blue);}
.btn-primary:hover{    transform:translateY(-4px) scale(1.02);    box-shadow:var(--shadow-xl), 0 0 30px rgba(59, 130, 246, 0.4);    border-radius:25px;}
.btn-primary:active{    transform:translateY(-2px) scale(0.98);}
.btn-secondary{    background:var(--white);    color:var(--primary-blue);    border-color:var(--primary-blue);    position:relative;    overflow:hidden;}
.btn-secondary::before{    background:var(--gradient-primary);    z-index:-1;    transform:scaleX(0);    transform-origin:left;    transition:transform 0.4s ease;}
.btn-secondary:hover::before{    transform:scaleX(1);}
.btn-secondary:hover{    color:var(--white);    transform:translateY(-4px) scale(1.02);    box-shadow:var(--shadow-blue);    border-color:transparent;}
.btn-outline{    background:transparent;    color:var(--primary-blue);    border-color:var(--primary-blue);    font-size:0.95rem;    padding:0.75rem 1.5rem;    position:relative;}
.btn-outline::before{    background:var(--gradient-primary);    z-index:-1;    transform:scale(0);    transition:transform 0.3s ease;}
.btn-outline:hover::before{    transform:scale(1);}
.btn-outline:hover{    background:var(--primary-blue);    color:var(--white);    transform:translateY(-3px) scale(1.05);    border-color:transparent;    box-shadow:var(--shadow-blue);}
.btn:active{    position:relative;}
.btn:active::after{    content:'';    position:absolute;    top:50%;    left:50%;    width:120px;    height:120px;    background:rgba(255, 255, 255, 0.4);    border-radius:50%;    transform:translate(-50%, -50%);    animation:ripple 0.6s ease-out;}
@keyframes ripple{    0%{        width:0;        height:0;        opacity:1;}
    100%{        width:120px;        height:120px;        opacity:0;}
}
.featured-programs{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.featured-programs::before{    content:'';    position:absolute;    top:10%;    left:-5%;    width:300px;    height:300px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.05;    filter:blur(80px);}
.featured-programs::after{    content:'';    position:absolute;    bottom:10%;    right:-5%;    width:400px;    height:400px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.05;    filter:blur(100px);}
.section-header{    text-align:center;    margin-bottom:4rem;    position:relative;    z-index:2;}
.section-title{    font-size:3rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-bottom:1.5rem;    letter-spacing:-0.025em;}
.section-subtitle{    font-size:1.2rem;    color:var(--gray);    max-width:700px;    margin:0 auto;    line-height:1.6;}
.programs-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(380px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.program-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:2.5rem;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.program-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.program-card::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:6px;    background:var(--gradient-secondary);    transform:scaleX(0);    transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.program-card:hover::before{    opacity:1;}
.program-card:hover::after{    transform:scaleX(1);}
.program-card:hover{    transform:translateY(-20px) scale(1.03) rotateX(5deg);    box-shadow:var(--shadow-xl), 0 0 40px rgba(59, 130, 246, 0.3);    border-color:rgba(59, 130, 246, 0.5);    background:linear-gradient(135deg,         rgba(255, 255, 255, 0.9) 0%,         rgba(219, 234, 254, 0.3) 100%);}
.program-card.featured{    background:linear-gradient(135deg,         rgba(219, 234, 254, 0.8) 0%,         rgba(255, 255, 255, 0.8) 100%);    border:2px solid var(--primary-blue);    position:relative;}
.program-card.featured::after{    transform:scaleX(1);    background:var(--gradient-primary);}
.program-card.featured .program-badge{    position:absolute;    top:1.5rem;    right:1.5rem;    background:var(--gradient-primary);    color:var(--white);    padding:0.5rem 1rem;    border-radius:50px;    font-size:0.8rem;    font-weight:600;    box-shadow:var(--shadow-md);}
.program-icon{    width:80px;    height:80px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin-bottom:2rem;    position:relative;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    box-shadow:var(--shadow-blue);}
.program-icon::before{    content:'';    position:absolute;    inset:3px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.program-icon i{    font-size:2rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.program-card:hover .program-icon{    transform:scale(1.1) rotate(5deg);    box-shadow:var(--shadow-xl);}
.program-card h3{    color:var(--dark-gray);    font-size:1.5rem;    font-weight:700;    margin-bottom:1.5rem;    line-height:1.3;}
.program-card p{    color:var(--gray);    margin-bottom:2rem;    line-height:1.7;    font-size:1rem;}
.program-features{    margin-bottom:2rem;}
.feature{    display:flex;    align-items:center;    gap:0.75rem;    color:var(--gray);    font-size:0.95rem;    margin-bottom:0.75rem;    font-weight:500;}
.feature::before{    content:'✦';    color:var(--primary-blue);    font-weight:bold;    font-size:1rem;}
.why-choose-us{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.why-choose-us::before{    content:'';    position:absolute;    top:20%;    left:-10%;    width:600px;    height:600px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(120px);}
.why-content{    display:grid;    grid-template-columns:1fr 1fr;    gap:5rem;    align-items:center;    position:relative;    z-index:2;}
.why-text h2{    font-size:3rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-bottom:2rem;    letter-spacing:-0.025em;}
.why-description{    font-size:1.2rem;    color:var(--gray);    margin-bottom:3rem;    line-height:1.7;}
.why-features{    display:flex;    flex-direction:column;    gap:2rem;}
.why-feature{    display:flex;    align-items:flex-start;    gap:1.5rem;    padding:1.5rem;    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:1.5rem;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.why-feature:hover{    transform:translateX(10px);    box-shadow:var(--shadow-lg);    border-color:rgba(59, 130, 246, 0.3);}
.why-feature i{    font-size:2rem;    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-top:0.25rem;}
.why-feature h4{    color:var(--dark-gray);    font-weight:700;    font-size:1.2rem;    margin-bottom:0.75rem;}
.why-feature p{    color:var(--gray);    font-size:1rem;    line-height:1.6;}
.stats-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:3rem 2rem;    border-radius:2rem;    box-shadow:var(--shadow-xl);    text-align:center;    position:relative;    overflow:hidden;}
.stats-card::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    height:4px;    background:var(--gradient-primary);}
.stats-card h3{    color:var(--dark-gray);    font-size:2rem;    font-weight:700;    margin-bottom:2rem;}
.stats-list{    display:flex;    flex-direction:column;    gap:1.5rem;}
.stat-item{    display:flex;    justify-content:space-between;    align-items:center;    padding:1.5rem;    background:linear-gradient(135deg,         rgba(219, 234, 254, 0.5) 0%,         rgba(255, 255, 255, 0.5) 100%);    border-radius:1rem;    border:1px solid rgba(59, 130, 246, 0.2);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.stat-item:hover{    transform:scale(1.02);    box-shadow:var(--shadow-md);}
.stat-item .stat-number{    font-size:2rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.stat-item .stat-desc{    color:var(--gray);    font-weight:600;    font-size:1.1rem;}
.cta{    padding:6rem 0;    background:var(--gradient-primary);    color:var(--white);    position:relative;    overflow:hidden;}
.cta::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    bottom:0;    background:        radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.1) 0%, transparent 50%),        radial-gradient(ellipse at bottom right, rgba(255, 255, 255, 0.05) 0%, transparent 50%),        linear-gradient(45deg,             transparent 30%,             rgba(255, 255, 255, 0.05) 50%,             transparent 70%);    background-size:200% 200%;    animation:ctaShimmer 4s ease-in-out infinite;    pointer-events:none;}
.cta::after{    content:'';    position:absolute;    top:50%;    left:50%;    width:800px;    height:800px;    background:radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);    border-radius:50%;    transform:translate(-50%, -50%);    animation:ctaPulse 4s ease-in-out infinite;}
@keyframes ctaPulse{    0%, 100%{transform:translate(-50%, -50%) scale(1);opacity:0.1;}
    50%{transform:translate(-50%, -50%) scale(1.1);opacity:0.05;}
}
@keyframes ctaShimmer{    0%, 100%{        background-position:-200% 0;}
    50%{        background-position:200% 0;}
}
.cta-content{    text-align:center;    position:relative;    z-index:2;}
.cta h2{    font-size:3.5rem;    font-weight:900;    margin-bottom:1.5rem;    text-shadow:0 2px 4px rgba(0, 0, 0, 0.1);    letter-spacing:-0.025em;}
.cta p{    font-size:1.3rem;    margin-bottom:3rem;    opacity:0.95;    max-width:600px;    margin-left:auto;    margin-right:auto;    line-height:1.6;}
.cta-buttons{    display:flex;    justify-content:center;    gap:1.5rem;    flex-wrap:wrap;}
.cta .btn-primary{    background:var(--white);    color:var(--primary-blue);    font-weight:700;    padding:1.25rem 2.5rem;    font-size:1.1rem;    box-shadow:0 8px 25px rgba(255, 255, 255, 0.3);}
.cta .btn-primary:hover{    background:var(--light-gray);    transform:translateY(-4px);    box-shadow:0 12px 35px rgba(255, 255, 255, 0.4);}
.cta .btn-secondary{    background:transparent;    color:var(--white);    border-color:var(--white);    border-width:2px;    font-weight:700;    padding:1.25rem 2.5rem;    font-size:1.1rem;}
.cta .btn-secondary:hover{    background:var(--white);    color:var(--primary-blue);    transform:translateY(-4px);    box-shadow:0 8px 25px rgba(255, 255, 255, 0.3);}
.features-highlight{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.features-highlight::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:        radial-gradient(ellipse at 20% 80%, rgba(59, 130, 246, 0.1) 0%, transparent 50%),        radial-gradient(ellipse at 80% 20%, rgba(30, 64, 175, 0.05) 0%, transparent 50%),        linear-gradient(135deg, transparent 0%, rgba(96, 165, 250, 0.02) 50%, transparent 100%);    pointer-events:none;}
.features-showcase{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));    gap:2rem;    position:relative;    z-index:2;}
.feature-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:2.5rem 2rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    cursor:pointer;}
.feature-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.feature-card::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:var(--gradient-secondary);    transform:scaleX(0);    transition:transform 0.4s ease;}
.feature-card:hover::before{    opacity:1;}
.feature-card:hover::after{    transform:scaleX(1);}
.feature-card:hover{    transform:translateY(-15px) scale(1.02);    box-shadow:var(--shadow-xl), 0 0 50px rgba(59, 130, 246, 0.2);}
.feature-card.premium::after{    background:linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);}
.feature-card.excellence::after{    background:linear-gradient(135deg, #10b981 0%, #059669 100%);}
.feature-card.expertise::after{    background:linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);}
.feature-card.satisfaction::after{    background:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);}
.feature-icon{    width:100px;    height:100px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.feature-icon::before{    content:'';    position:absolute;    inset:4px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.feature-icon i{    font-size:2.5rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.feature-card.premium .feature-icon{    background:linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);}
.feature-card.premium .feature-icon i{    background:linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.excellence .feature-icon{    background:linear-gradient(135deg, #10b981 0%, #059669 100%);}
.feature-card.excellence .feature-icon i{    background:linear-gradient(135deg, #10b981 0%, #059669 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.expertise .feature-icon{    background:linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);}
.feature-card.expertise .feature-icon i{    background:linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.satisfaction .feature-icon{    background:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);}
.feature-card.satisfaction .feature-icon i{    background:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card:hover .feature-icon{    transform:scale(1.1) rotate(5deg);}
.feature-content h3{    color:var(--dark-gray);    font-size:1.4rem;    font-weight:700;    margin-bottom:1rem;}
.feature-content p{    color:var(--gray);    font-size:1rem;    line-height:1.6;    margin-bottom:1.5rem;}
.feature-stats{    display:flex;    flex-direction:column;    align-items:center;    gap:0.25rem;}
.stat-highlight{    font-size:2rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.premium .stat-highlight{    background:linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.excellence .stat-highlight{    background:linear-gradient(135deg, #10b981 0%, #059669 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.expertise .stat-highlight{    background:linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.feature-card.satisfaction .stat-highlight{    background:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.stat-desc{    color:var(--gray);    font-size:0.9rem;    font-weight:600;}
.testimonials{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.testimonials::before{    content:'';    position:absolute;    top:30%;    left:-10%;    width:400px;    height:400px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.05;    filter:blur(100px);}
.testimonials-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(380px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.testimonial-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:3rem 2rem;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.testimonial-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.testimonial-card:hover::before{    opacity:1;}
.testimonial-card:hover{    transform:translateY(-10px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.testimonial-text{    margin-bottom:2rem;}
.testimonial-text p{    color:var(--gray);    font-size:1.1rem;    line-height:1.7;    font-style:italic;    position:relative;}
.testimonial-text p::before{    content:'"';    position:absolute;    top:-0.5rem;    left:-1rem;    font-size:3rem;    color:var(--primary-blue);    opacity:0.3;}
.testimonial-author{    display:flex;    align-items:center;    justify-content:space-between;}
.author-info h4{    color:var(--dark-gray);    font-weight:700;    font-size:1.2rem;    margin-bottom:0.25rem;}
.author-info span{    color:var(--gray);    font-size:1rem;}
.testimonial-rating{    display:flex;    gap:0.25rem;}
.testimonial-rating i{    color:#fbbf24;    font-size:1.2rem;}
.upcoming-sessions{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.upcoming-sessions::after{    content:'';    position:absolute;    bottom:20%;    right:-10%;    width:500px;    height:500px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(120px);}
.sessions-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(380px, 1fr));    gap:3rem;    margin-bottom:4rem;    position:relative;    z-index:2;}
.session-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:2.5rem;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.session-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:6px;    background:var(--gradient-secondary);}
.session-card:hover{    transform:translateY(-10px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.session-badge{    position:absolute;    top:1.5rem;    right:1.5rem;    padding:0.5rem 1rem;    border-radius:50px;    font-size:0.8rem;    font-weight:700;    color:var(--white);    display:flex;    align-items:center;    gap:0.5rem;    box-shadow:var(--shadow-md);}
.session-badge.new{    background:linear-gradient(135deg, #ea580c 0%, #c2410c 100%);}
.session-badge.masterclass{    background:linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);}
.session-badge.international{    background:linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);}
.session-header{    margin-bottom:2rem;}
.session-header h3{    color:var(--dark-gray);    font-size:1.5rem;    font-weight:700;    margin-bottom:0.5rem;}
.session-trainer{    color:var(--gray);    font-style:italic;    font-size:1rem;}
.session-details{    margin-bottom:2rem;}
.session-details > div{    display:flex;    align-items:center;    gap:0.75rem;    margin-bottom:0.75rem;    color:var(--gray);    font-size:1rem;}
.session-details i{    color:var(--primary-blue);    width:16px;}
.session-action{    text-align:center;}
.sessions-cta{    text-align:center;    position:relative;    z-index:2;}
.sessions-cta p{    color:var(--gray);    font-size:1.1rem;    margin-bottom:1.5rem;}
.footer{    background:linear-gradient(135deg, var(--dark-blue) 0%, #0f172a 100%);    color:var(--white);    padding:4rem 0 2rem;    position:relative;    overflow:hidden;}
.footer::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    height:1px;    background:var(--gradient-secondary);}
.footer-content{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));    gap:3rem;    margin-bottom:3rem;    position:relative;    z-index:2;}
.footer-section h3{    font-size:1.5rem;    font-weight:800;    margin-bottom:1rem;    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.footer-section h4{    font-size:1.2rem;    font-weight:700;    margin-bottom:1.5rem;    color:var(--white);}
.footer-section p{    color:#cbd5e1;    margin-bottom:1.5rem;    line-height:1.6;}
.footer-social{    display:flex;    gap:1rem;}
.social-link{    width:45px;    height:45px;    background:var(--gradient-secondary);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    color:var(--white);    text-decoration:none;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.social-link::before{    content:'';    position:absolute;    top:0;    left:-100%;    width:100%;    height:100%;    background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);    transition:left 0.5s;}
.social-link:hover::before{    left:100%;}
.social-link:hover{    background:var(--white);    color:var(--primary-blue);    transform:translateY(-3px) scale(1.1);    box-shadow:var(--shadow-lg);}
.footer-links{    list-style:none;}
.footer-links li{    margin-bottom:0.75rem;}
.footer-links a{    color:#cbd5e1;    text-decoration:none;    transition:all 0.3s ease;    padding:0.25rem 0;    display:inline-block;    position:relative;}
.footer-links a::before{    content:'';    position:absolute;    bottom:0;    left:0;    width:0;    height:1px;    background:var(--accent-blue);    transition:width 0.3s ease;}
.footer-links a:hover::before{    width:100%;}
.footer-links a:hover{    color:var(--white);    transform:translateX(5px);}
.footer-contact p{    display:flex;    align-items:center;    gap:0.75rem;    margin-bottom:0.75rem;    color:#cbd5e1;    font-weight:500;}
.footer-contact i{    color:var(--accent-blue);    width:18px;    font-size:1.1rem;}
.footer-bottom{    border-top:1px solid rgba(59, 130, 246, 0.2);    padding-top:2rem;    text-align:center;    color:#94a3b8;    font-weight:500;    position:relative;    z-index:2;}
.formation-categories{    padding:2rem 0;    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border-bottom:1px solid var(--glass-border);    position:sticky;    top:90px;    z-index:999;    box-shadow:var(--shadow-md);}
.categories-nav{    display:flex;    justify-content:center;    gap:1.5rem;    flex-wrap:wrap;}
.category-link{    display:flex;    align-items:center;    gap:0.75rem;    padding:1rem 2rem;    border-radius:50px;    text-decoration:none;    color:var(--gray);    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    font-weight:700;    font-size:1rem;    position:relative;    overflow:hidden;}
.category-link::before{    content:'';    position:absolute;    top:0;    left:-100%;    width:100%;    height:100%;    background:var(--gradient-primary);    transition:left 0.5s;    z-index:-1;}
.category-link:hover::before,.category-link.active::before{    left:0;}
.category-link:hover,.category-link.active{    color:var(--white);    transform:translateY(-3px);    box-shadow:var(--shadow-blue);    border-color:transparent;}
.formation-details{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.formation-details::before{    content:'';    position:absolute;    top:20%;    right:-15%;    width:600px;    height:600px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(150px);}
.formation-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2.5rem;    margin-bottom:6rem;    overflow:hidden;    box-shadow:var(--shadow-xl);    position:relative;    z-index:2;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.formation-card:hover{    transform:translateY(-5px);    box-shadow:var(--shadow-xl);}
.formation-header{    background:var(--gradient-primary);    color:var(--white);    padding:4rem 3rem;    text-align:center;    position:relative;    overflow:hidden;}
.formation-header::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    bottom:0;    background:        radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.15) 0%, transparent 50%),        radial-gradient(ellipse at bottom right, rgba(255, 255, 255, 0.1) 0%, transparent 50%);    pointer-events:none;}
.formation-badge{    display:inline-flex;    align-items:center;    gap:0.75rem;    padding:0.75rem 1.5rem;    border-radius:50px;    background:rgba(255, 255, 255, 0.25);    backdrop-filter:blur(10px);    -webkit-backdrop-filter:blur(10px);    border:1px solid rgba(255, 255, 255, 0.2);    color:var(--white);    font-weight:700;    font-size:1rem;    margin-bottom:2rem;    box-shadow:0 8px 25px rgba(0, 0, 0, 0.1);    position:relative;    z-index:2;}
.formation-header h2{    font-size:3rem;    font-weight:900;    margin-bottom:2rem;    line-height:1.1;    text-shadow:0 4px 8px rgba(0, 0, 0, 0.1);    letter-spacing:-0.025em;    position:relative;    z-index:2;}
.formation-subtitle{    font-size:1.4rem;    opacity:0.95;    line-height:1.6;    position:relative;    z-index:2;}
.formation-content{    display:grid;    grid-template-columns:2fr 1fr;    gap:3rem;    padding:3rem;}
.formation-overview{    margin-bottom:2.5rem;}
.formation-overview h3{    color:var(--dark-blue);    font-size:1.5rem;    margin-bottom:1rem;}
.formation-overview p{    color:var(--gray);    line-height:1.6;    font-size:1.1rem;}
.formation-program h3{    color:var(--dark-blue);    font-size:1.5rem;    margin-bottom:2rem;}
.program-modules{    display:grid;    gap:1.5rem;}
.module{    display:flex;    align-items:flex-start;    gap:1rem;    padding:1.5rem;    background:var(--light-blue);    border-radius:1rem;}
.module-number{    width:40px;    height:40px;    background:var(--primary-blue);    color:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    font-weight:700;    flex-shrink:0;}
.module-content h4{    color:var(--dark-blue);    margin-bottom:0.5rem;}
.module-content p{    color:var(--gray);    font-size:0.9rem;}
.commandments-list{    display:grid;    grid-template-columns:repeat(2, 1fr);    gap:1rem;}
.commandment{    display:flex;    align-items:center;    gap:1rem;    padding:1rem;    background:var(--light-blue);    border-radius:0.75rem;}
.commandment .number{    width:30px;    height:30px;    background:var(--primary-blue);    color:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    font-weight:700;    font-size:0.9rem;    flex-shrink:0;}
.commandment .text{    color:var(--dark-blue);    font-weight:500;    font-size:0.9rem;}
.workshops-grid{    display:grid;    grid-template-columns:repeat(2, 1fr);    gap:1.5rem;}
.workshop{    background:var(--light-blue);    padding:1.5rem;    border-radius:1rem;    text-align:center;}
.workshop-icon{    width:50px;    height:50px;    background:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 1rem;}
.workshop-icon i{    color:var(--primary-blue);    font-size:1.2rem;}
.workshop h4{    color:var(--dark-blue);    margin-bottom:0.5rem;    font-size:1rem;}
.workshop p{    color:var(--gray);    font-size:0.85rem;}
.modules-advanced{    display:grid;    gap:2rem;}
.module-advanced{    background:var(--light-blue);    border-radius:1rem;    overflow:hidden;}
.module-header{    background:var(--primary-blue);    color:var(--white);    padding:1.5rem;    display:flex;    align-items:center;    gap:1rem;}
.module-num{    background:rgba(255, 255, 255, 0.2);    padding:0.5rem 1rem;    border-radius:1rem;    font-weight:600;}
.module-details{    padding:1.5rem;}
.module-details p{    color:var(--primary-blue);    font-weight:600;    margin-bottom:1rem;}
.module-details ul{    list-style:none;    display:grid;    gap:0.5rem;}
.module-details li{    color:var(--gray);    padding-left:1.5rem;    position:relative;}
.module-details li::before{    content:'•';    color:var(--primary-blue);    font-weight:bold;    position:absolute;    left:0;}
.aesthetic-workflow{    display:grid;    gap:1.5rem;}
.workflow-step{    display:flex;    align-items:center;    gap:1rem;    padding:1.5rem;    background:var(--light-blue);    border-radius:1rem;}
.step-number{    width:50px;    height:50px;    background:var(--primary-blue);    color:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    font-weight:700;    font-size:1.2rem;    flex-shrink:0;}
.step-content h4{    color:var(--dark-blue);    margin-bottom:0.5rem;}
.step-content p{    color:var(--gray);    font-size:0.9rem;}
.certification-info{    margin-top:2rem;}
.cert-badge{    display:flex;    align-items:center;    gap:1rem;    padding:1.5rem;    background:linear-gradient(135deg, #f59e0b 0%, #d97706 100%);    color:var(--white);    border-radius:1rem;}
.cert-badge i{    font-size:2rem;}
.cert-badge h4{    margin-bottom:0.25rem;}
.ortho-topics{    display:grid;    gap:2rem;}
.topic-category h4{    color:var(--dark-blue);    margin-bottom:1rem;    display:flex;    align-items:center;    gap:0.5rem;}
.topic-category ul{    list-style:none;    display:grid;    gap:0.75rem;    background:var(--light-blue);    padding:1.5rem;    border-radius:1rem;}
.topic-category li{    color:var(--gray);    padding-left:1.5rem;    position:relative;}
.topic-category li::before{    content:'✓';    color:var(--primary-blue);    font-weight:bold;    position:absolute;    left:0;}
.digital-workflow{    display:flex;    align-items:center;    gap:1rem;    flex-wrap:wrap;    justify-content:center;    margin-bottom:2rem;}
.workflow-phase{    background:var(--light-blue);    padding:1.5rem;    border-radius:1rem;    text-align:center;    flex:1;    min-width:150px;}
.phase-icon{    width:60px;    height:60px;    background:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 1rem;}
.phase-icon i{    color:var(--primary-blue);    font-size:1.5rem;}
.workflow-phase h4{    color:var(--dark-blue);    margin-bottom:0.5rem;    font-size:1rem;}
.workflow-phase p{    color:var(--gray);    font-size:0.85rem;}
.workflow-arrow{    color:var(--primary-blue);    font-size:1.5rem;}
.digital-advantages{    margin-top:2rem;}
.advantages-grid{    display:grid;    grid-template-columns:repeat(2, 1fr);    gap:1rem;}
.advantage{    display:flex;    align-items:center;    gap:0.75rem;    padding:1rem;    background:var(--light-blue);    border-radius:0.75rem;}
.advantage i{    color:var(--primary-blue);    font-size:1.2rem;}
.advantage span{    color:var(--dark-blue);    font-weight:500;    font-size:0.9rem;}
.formation-sidebar{    background:var(--light-gray);    padding:2rem;    border-radius:1rem;    height:fit-content;}
.formation-info{    margin-bottom:2rem;}
.info-item{    display:flex;    align-items:center;    gap:1rem;    margin-bottom:1.5rem;    padding-bottom:1rem;    border-bottom:1px solid var(--border-color);}
.info-item:last-child{    border-bottom:none;    margin-bottom:0;}
.info-item i{    color:var(--primary-blue);    font-size:1.2rem;    width:20px;}
.info-item .label{    color:var(--gray);    font-size:0.9rem;    display:block;}
.info-item .value{    color:var(--dark-blue);    font-weight:600;    display:block;}
.formation-actions{    display:flex;    flex-direction:column;    gap:1rem;}
.formation-actions .btn{    width:100%;    justify-content:center;    padding:1rem;}
@media (max-width:768px){    .hamburger{        display:flex;}
        .nav-menu{        position:fixed;        left:-100%;        top:70px;        flex-direction:column;        background-color:var(--white);        width:100%;        text-align:center;        transition:0.3s;        box-shadow:var(--shadow);        padding:2rem 0;}
        .nav-menu.active{        left:0;}
        .nav-menu a{        padding:0.5rem 0;        display:block;}
        .hero{        background-attachment:scroll;        height:calc(100vh - 80px);        display:flex;        align-items:center;}
        .hero-container{        flex-direction:column;        align-items:center;        text-align:center;        padding:0 1rem;        margin:4rem auto 0;}
        .hero-title{        font-size:2.2rem;        margin-bottom:1rem;}
        .hero-stats{        justify-content:center;        gap:1rem;        flex-direction:row;        flex-wrap:wrap;        align-items:center;        margin-bottom:1.5rem;        padding:0.3rem 0;}
        .stat{        min-width:90px;        padding:0.6rem 0.8rem;}
        .programs-grid{        grid-template-columns:1fr;}
        .why-content{        grid-template-columns:1fr;        gap:2rem;}
        .section-title{        font-size:2rem;}
        .cta h2{        font-size:2rem;}
        .footer-content{        grid-template-columns:1fr;        text-align:center;}
            .mission-grid{        grid-template-columns:1fr;        gap:2rem;}
        .values-grid{        grid-template-columns:1fr;}
        .story-content{        grid-template-columns:1fr;        gap:2rem;}
        .team-grid{        grid-template-columns:1fr;}
            .overview-content{        grid-template-columns:1fr;        gap:2rem;}
        .service-content{        grid-template-columns:1fr;        gap:2rem;}
        .service-content.reverse{        grid-template-columns:1fr;}
            .form-row{        grid-template-columns:1fr;        gap:1rem;}
        .locations-grid{        grid-template-columns:1fr;}
            .categories-nav{        gap:0.5rem;        padding:0 1rem;}
        .category-link{        font-size:0.85rem;        padding:0.6rem 1rem;        flex-shrink:0;}
        .formation-content{        grid-template-columns:1fr;        gap:2rem;        padding:1.5rem;}
        .formation-header{        padding:2rem 1.5rem;}
        .formation-header h2{        font-size:2rem;}
        .commandments-list{        grid-template-columns:1fr;}
        .workshops-grid{        grid-template-columns:1fr;}
        .digital-workflow{        flex-direction:column;}
        .workflow-arrow{        transform:rotate(90deg);}
        .advantages-grid{        grid-template-columns:1fr;}
            .nav-menu{        background:rgba(255, 255, 255, 0.98);        backdrop-filter:blur(20px);        -webkit-backdrop-filter:blur(20px);}
            .programs-grid{        grid-template-columns:1fr;        gap:2rem;}
        .program-card{        padding:2rem;}
            .nav-container{        padding:0 1rem;}
        .nav-menu{        position:fixed;        top:80px;        left:-100%;        width:100%;        height:calc(100vh - 80px);        background:rgba(255, 255, 255, 0.98);        backdrop-filter:blur(20px);        -webkit-backdrop-filter:blur(20px);        flex-direction:column;        justify-content:flex-start;        align-items:center;        gap:2rem;        padding:2rem 0;        transition:left 0.3s ease;        z-index:1000;        box-shadow:var(--shadow-lg);}
        .nav-menu.active{        left:0;}
        .nav-link{        font-size:1.1rem;        padding:1rem 2rem;        width:80%;        text-align:center;        border-radius:50px;        transition:all 0.3s ease;}
        .nav-link:hover,    .nav-link.active{        background:var(--gradient-primary);        color:var(--white);        transform:translateY(-2px);}
        .nav-phone{        background:var(--gradient-primary);        color:var(--white);        padding:1rem 2rem;        border-radius:50px;        box-shadow:var(--shadow-md);}
        .hamburger.active .bar:nth-child(2){        opacity:0;}
        .hamburger.active .bar:nth-child(1){        transform:translateY(8px) rotate(45deg);}
        .hamburger.active .bar:nth-child(3){        transform:translateY(-8px) rotate(-45deg);}
            .nav-logo{        gap:0.75rem;}
        .logo-image{        height:40px;}
        .nav-logo h2{        font-size:1.4rem;}
        .tagline{        font-size:0.7rem;}
            .hero{        padding:6rem 0 4rem;        margin-top:80px;}
        .hero-container{        padding:0 1rem;        grid-template-columns:1fr;        text-align:center;        gap:2rem;}
        .hero-title{        font-size:2.2rem;        line-height:1.2;        margin-bottom:1.5rem;}
        .hero-subtitle{        font-size:1rem;        margin-bottom:2rem;        line-height:1.6;}
        .hero-stats{        grid-template-columns:repeat(2, 1fr);        gap:1rem;        margin-bottom:2rem;}
        .stat-item{        padding:1rem 0.75rem;}
        .stat-number{        font-size:1.8rem;}
        .stat-text{        font-size:0.85rem;}
        .hero-buttons{        flex-direction:column;        gap:1rem;        width:100%;}
        .btn{        width:100%;        justify-content:center;        padding:1rem 1.5rem;        font-size:1rem;}
            .hero-particles .particle{        display:none;}
            .features-highlight{        padding:4rem 0;}
        .features-showcase{        grid-template-columns:1fr;        gap:1.5rem;}
        .feature-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .feature-icon{        width:70px;        height:70px;        margin-bottom:1.5rem;}
        .feature-icon i{        font-size:1.8rem;}
        .feature-content h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .feature-content p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .stat-highlight{        font-size:1.8rem;}
        .stat-desc{        font-size:0.8rem;}
            .programs-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .program-card{        padding:1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .program-icon{        width:60px;        height:60px;        margin-bottom:1rem;}
        .program-icon i{        font-size:1.5rem;}
        .program-card h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .program-card p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .program-features li{        font-size:0.85rem;        padding:0.5rem 0;}
            .testimonials{        padding:4rem 0;}
        .testimonials-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .testimonial-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .testimonial-text p{        font-size:1rem;        line-height:1.6;}
        .author-info h4{        font-size:1.1rem;}
        .author-info span{        font-size:0.9rem;}
        .testimonial-rating{        gap:0.2rem;}
        .testimonial-rating i{        font-size:1rem;}
            .upcoming-sessions{        padding:4rem 0;}
        .sessions-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .session-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .session-badge{        top:1rem;        right:1rem;        padding:0.4rem 0.8rem;        font-size:0.7rem;}
        .session-header h3{        font-size:1.2rem;        margin-bottom:0.5rem;}
        .session-trainer{        font-size:0.9rem;}
        .session-details > div{        font-size:0.9rem;        margin-bottom:0.5rem;}
        .session-details i{        width:14px;}
            .cta{        padding:4rem 0;}
        .cta h2{        font-size:2rem;        margin-bottom:1rem;}
        .cta p{        font-size:1rem;        margin-bottom:2rem;        padding:0 1rem;}
        .cta-buttons{        flex-direction:column;        gap:1rem;        padding:0 1rem;}
            .why-choose-us{        padding:4rem 0;}
        .why-features{        grid-template-columns:1fr;        gap:1.5rem;}
        .why-feature{        padding:1.5rem;        text-align:center;        margin:0 0.5rem;        border-radius:1.5rem;}
        .why-icon{        width:60px;        height:60px;        margin-bottom:1rem;}
        .why-icon i{        font-size:1.5rem;}
        .why-feature h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .why-feature p{        font-size:0.9rem;}
            .stats-grid{        grid-template-columns:repeat(2, 1fr);        gap:1rem;}
        .stats-card{        padding:1.5rem 1rem;        border-radius:1.5rem;}
        .stat-item{        padding:1rem 0.75rem;}
        .stat-number{        font-size:1.8rem;}
        .stat-text{        font-size:0.85rem;}
            .hero{        padding:8rem 0 4rem;}
        .hero-title{        font-size:2.5rem;        line-height:1.2;}
        .hero-subtitle{        font-size:1.1rem;}
        .hero-stats{        flex-direction:column;        gap:1.5rem;        align-items:center;}
            .section-title{        font-size:2.2rem;}
        .cta h2{        font-size:2.5rem;}
            .why-feature{        padding:1rem;}
}
@media (max-width:480px){    .hero{        padding:6rem 0 3rem;        margin-top:80px;}
        .hero-title{        font-size:2rem;        line-height:1.1;}
        .hero-subtitle{        font-size:1rem;        margin-bottom:2rem;}
        .hero-buttons{        flex-direction:column;        align-items:center;        gap:1rem;}
        .btn{        width:100%;        justify-content:center;        max-width:280px;        padding:0.875rem 1.5rem;        font-size:0.95rem;}
        .programs-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .program-card{        padding:1.5rem;        border-radius:1.5rem;}
        .program-icon{        width:60px;        height:60px;        margin-bottom:1.5rem;}
        .program-icon i{        font-size:1.5rem;}
        .hero-stats{        flex-direction:row;        gap:1.5rem;        justify-content:space-around;        margin-bottom:2rem;}
        .stat-number{        font-size:1.8rem;}
        .stat-label{        font-size:0.8rem;}
        .section-title{        font-size:1.8rem;}
        .section-subtitle{        font-size:1rem;}
        .cta h2{        font-size:2rem;}
        .cta p{        font-size:1rem;}
        .why-text h2{        font-size:2rem;}
        .why-description{        font-size:1rem;}
        .why-feature{        padding:1rem;        gap:1rem;}
        .why-feature i{        font-size:1.5rem;}
        .featured-programs{        padding:4rem 0;}
        .why-choose-us{        padding:4rem 0;}
        .cta{        padding:4rem 0;}
        .nav-logo h2{        font-size:1.4rem;}
        .tagline{        font-size:0.7rem;}
        .categories-nav{        flex-wrap:nowrap;        overflow-x:auto;        scrollbar-width:none;        -ms-overflow-style:none;}
        .categories-nav::-webkit-scrollbar{        display:none;}
            .features-showcase{        grid-template-columns:1fr;        gap:1.5rem;}
        .feature-card{        padding:1.5rem;}
        .feature-icon{        width:60px;        height:60px;        margin-bottom:1rem;}
        .feature-icon i{        font-size:1.5rem;}
        .feature-content h3{        font-size:1.2rem;}
        .stat-highlight{        font-size:1.5rem;}
            .logo-image{        height:35px;}
        .nav-logo h2{        font-size:1.2rem;}
        .tagline{        font-size:0.65rem;}
            .page-header{        padding:6rem 0 4rem;        margin-top:80px;        background-attachment:scroll;}
        .page-header h1{        font-size:2.2rem;        padding:0 1rem;}
        .page-header p{        font-size:1rem;        padding:0 1rem;}
            .contact-page .page-header{        background-attachment:scroll;}
            .mission-vision{        padding:4rem 0;}
        .mission-content{        grid-template-columns:1fr;        gap:2rem;}
        .mission-item{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .mission-icon{        width:60px;        height:60px;        margin-bottom:1.5rem;}
        .mission-icon i{        font-size:1.5rem;}
        .mission-item h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .mission-item p{        font-size:0.9rem;}
            .values-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .value-item{        padding:1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;        text-align:center;}
        .value-item h4{        font-size:1.1rem;        margin-bottom:1rem;}
        .value-item p{        font-size:0.85rem;}
            .company-story{        padding:4rem 0;}
        .story-content{        grid-template-columns:1fr;        gap:2rem;}
        .story-text h2{        font-size:1.8rem;        margin-bottom:1.5rem;}
        .story-text p{        font-size:1rem;        margin-bottom:1.5rem;}
        .story-timeline{        margin-left:0;        padding-left:2rem;}
        .timeline-item{        padding:1.5rem;        margin-bottom:2rem;        border-radius:1.5rem;}
        .timeline-year{        font-size:1.2rem;        margin-bottom:0.5rem;}
        .timeline-content h4{        font-size:1.1rem;        margin-bottom:0.5rem;}
        .timeline-content p{        font-size:0.9rem;}
            .expert-team{        padding:4rem 0;}
        .team-stats{        grid-template-columns:repeat(2, 1fr);        gap:1rem;        margin-bottom:3rem;}
        .team-stat{        padding:1.5rem 1rem;        border-radius:1.5rem;}
        .team-stat .stat-number{        font-size:2rem;}
        .team-stat .stat-label{        font-size:0.85rem;}
        .team-grid{        grid-template-columns:1fr;        gap:2rem;}
        .expert-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .expert-image{        width:80px;        height:80px;        margin-bottom:1.5rem;}
        .expert-image i{        font-size:2rem;}
        .expert-info h3{        font-size:1.2rem;        margin-bottom:0.5rem;}
        .expert-title{        font-size:1rem;        margin-bottom:1rem;}
        .expert-info p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .specialty{        padding:0.4rem 0.8rem;        font-size:0.7rem;        margin:0.25rem;}
            .partnerships{        padding:4rem 0;}
        .partners-grid{        grid-template-columns:repeat(2, 1fr);        gap:1.5rem;}
        .partner-card{        padding:1.5rem;        border-radius:1.5rem;}
        .partner-logo{        width:60px;        height:60px;        margin-bottom:1rem;}
        .partner-logo i{        font-size:1.5rem;}
        .partner-card h4{        font-size:1rem;        margin-bottom:0.5rem;}
        .partner-card p{        font-size:0.8rem;}
            .services-overview{        padding:4rem 0;}
        .overview-content{        grid-template-columns:1fr;        gap:2rem;}
        .overview-feature{        padding:1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;        text-align:center;}
        .overview-feature h3{        font-size:1.1rem;        margin-bottom:1rem;}
        .overview-feature p{        font-size:0.9rem;}
        .service-stats{        grid-template-columns:repeat(2, 1fr);        gap:1rem;}
        .service-stat{        padding:1.5rem 1rem;        border-radius:1.5rem;}
        .service-stat .stat-number{        font-size:1.8rem;}
        .service-stat .stat-text{        font-size:0.8rem;}
            .main-services{        padding:4rem 0;}
        .service-content{        grid-template-columns:1fr;        gap:2rem;}
        .service-detail{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .service-badge{        top:1rem;        right:1rem;        padding:0.4rem 0.8rem;        font-size:0.7rem;}
        .service-text h3{        font-size:1.3rem;        margin-bottom:0.5rem;}
        .service-subtitle{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .service-text p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .service-icon-large{        width:80px;        height:80px;        margin-bottom:1.5rem;}
        .service-icon-large i{        font-size:2rem;}
        .highlight-list{        gap:0.5rem;}
        .highlight-item{        padding:0.75rem 1rem;        font-size:0.85rem;        border-radius:50px;}
            .formation-categories{        padding:1rem;        gap:0.5rem;        overflow-x:auto;        scrollbar-width:none;        -ms-overflow-style:none;}
        .formation-categories::-webkit-scrollbar{        display:none;}
        .category-link{        padding:0.75rem 1.5rem;        font-size:0.85rem;        white-space:nowrap;        border-radius:50px;}
        .formation-details{        padding:4rem 0;}
        .formation-grid{        grid-template-columns:1fr;        gap:2rem;}
        .formation-card{        margin:0 0.5rem;        border-radius:1.5rem;}
        .formation-header{        padding:2rem 1.5rem;        border-radius:1.5rem 1.5rem 0 0;}
        .formation-header h2{        font-size:1.4rem;        margin-bottom:0.5rem;}
        .formation-header p{        font-size:0.9rem;}
        .formation-badge{        padding:0.4rem 0.8rem;        font-size:0.7rem;        border-radius:50px;}
        .formation-content{        padding:2rem 1.5rem;}
        .formation-content h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .formation-content p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .formation-features li{        font-size:0.85rem;        padding:0.5rem 0;}
        .formation-trainer{        padding:1.5rem;        border-radius:1rem;        margin:1.5rem 0;}
        .formation-trainer h4{        font-size:1.1rem;        margin-bottom:0.5rem;}
        .formation-trainer p{        font-size:0.85rem;}
            .contact-info{        padding:4rem 0;}
        .contact-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .contact-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;        text-align:center;}
        .contact-icon{        width:60px;        height:60px;        margin-bottom:1.5rem;}
        .contact-icon i{        font-size:1.5rem;}
        .contact-card h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .contact-card p{        font-size:0.9rem;        margin-bottom:1rem;}
        .contact-link{        font-size:0.9rem;        padding:0.75rem 1.5rem;        border-radius:50px;}
            .quick-actions{        padding:3rem 0;}
        .actions-grid{        grid-template-columns:1fr;        gap:1rem;}
        .action-btn{        padding:1.5rem;        border-radius:1rem;        font-size:1rem;}
            .training-locations{        padding:4rem 0;}
        .locations-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .location-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .location-card h3{        font-size:1.2rem;        margin-bottom:0.5rem;}
        .location-type{        font-size:0.85rem;        margin-bottom:1rem;}
        .location-card p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .location-features{        gap:0.5rem;}
        .feature{        font-size:0.8rem;}
            .registration-section{        padding:4rem 0;}
        .registration-grid{        grid-template-columns:1fr;        gap:1.5rem;}
        .registration-card{        padding:2rem 1.5rem;        margin:0 0.5rem;        border-radius:1.5rem;}
        .registration-icon{        width:70px;        height:70px;        margin-bottom:1.5rem;}
        .registration-icon i{        font-size:2rem;}
        .registration-card h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .registration-card p{        font-size:0.9rem;        margin-bottom:1.5rem;}
        .registration-card .btn{        width:100%;        padding:1rem;        font-size:0.9rem;}
            .contact-form-section{        padding:3rem 0;}
        .form-container{        margin:0 1rem;        padding:2rem 1.5rem;        border-radius:1.5rem;}
        .form-header h2{        font-size:1.8rem;        margin-bottom:1rem;}
        .form-header p{        font-size:0.9rem;}
        .form-row{        grid-template-columns:1fr;        gap:1rem;}
        .form-group label{        font-size:0.9rem;        margin-bottom:0.5rem;}
        .form-control{        padding:1rem;        font-size:1rem;        border-radius:1rem;}
        .btn-submit{        width:100%;        padding:1rem;        font-size:1rem;}
            .faq-section{        padding:4rem 0;}
        .faq-container{        margin:0 1rem;}
        .faq-container h3{        font-size:1.8rem;        margin-bottom:2rem;        text-align:center;}
        .faq-item{        margin-bottom:1rem;        border-radius:1rem;}
        .faq-question{        padding:1.5rem;}
        .faq-question h4,    .faq-question h3{        font-size:1.1rem;}
        .faq-answer{        padding:0 1.5rem 1.5rem;}
        .faq-answer p{        font-size:0.9rem;        line-height:1.6;}
            .footer{        padding:3rem 0 2rem;}
        .footer-content{        grid-template-columns:1fr;        gap:2rem;        text-align:center;}
        .footer-section{        padding:0 1rem;}
        .footer-section h3{        font-size:1.2rem;        margin-bottom:1rem;}
        .footer-links{        flex-direction:column;        gap:0.5rem;}
        .footer-links a{        font-size:0.9rem;        padding:0.5rem 0;}
        .social-links{        justify-content:center;        gap:1rem;}
        .social-link{        width:40px;        height:40px;}
        .social-link i{        font-size:1.2rem;}
        .footer-bottom{        padding:1.5rem 1rem 0;        text-align:center;}
        .footer-bottom p{        font-size:0.85rem;}
}
.page-header{    background:        linear-gradient(135deg,             rgba(29, 78, 216, 0.85) 0%,             rgba(37, 99, 235, 0.8) 50%,             rgba(29, 78, 216, 0.85) 100%),        url('contact-background.jpg');    background-size:cover;    background-position:center;    background-attachment:fixed;    color:var(--white);    padding:8rem 0 4rem;    margin-top:90px;    text-align:center;    position:relative;    overflow:hidden;}
.page-header::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    bottom:0;    background:        linear-gradient(135deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.1) 100%),        radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.1) 0%, transparent 50%),        radial-gradient(ellipse at bottom right, rgba(255, 255, 255, 0.08) 0%, transparent 50%);    pointer-events:none;    z-index:1;}
.page-header::after{    content:'';    position:absolute;    top:30%;    right:-15%;    width:400px;    height:400px;    background:radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);    border-radius:50%;    animation:float 8s ease-in-out infinite;}
.page-header-content{    position:relative;    z-index:2;}
.page-header-content h1{    font-size:4rem;    font-weight:900;    margin-bottom:2rem;    text-shadow:0 4px 8px rgba(0, 0, 0, 0.1);    letter-spacing:-0.025em;    animation:slideInDown 1s cubic-bezier(0.4, 0, 0.2, 1);}
@keyframes slideInDown{    0%{        opacity:0;        transform:translateY(-50px);}
    100%{        opacity:1;        transform:translateY(0);}
}
.page-header-content p{    font-size:1.4rem;    opacity:0.95;    max-width:700px;    margin:0 auto;    line-height:1.6;    animation:slideInUp 1s cubic-bezier(0.4, 0, 0.2, 1) 0.2s both;}
body[data-page="contact"] .page-header,.contact-page .page-header{    background:        linear-gradient(135deg,             rgba(29, 78, 216, 0.85) 0%,             rgba(37, 99, 235, 0.8) 50%,             rgba(29, 78, 216, 0.85) 100%),        url('contact-background.jpg');    background-size:cover;    background-position:center;    background-attachment:fixed;}
.mission-vision{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.mission-vision::before{    content:'';    position:absolute;    top:10%;    left:-5%;    width:300px;    height:300px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.05;    filter:blur(80px);}
.mission-grid{    display:grid;    grid-template-columns:1fr 1fr;    gap:5rem;    align-items:flex-start;    position:relative;    z-index:2;}
.mission-item{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:3rem 2rem;    border-radius:2rem;    margin-bottom:2rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.mission-item::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:var(--gradient-secondary);}
.mission-item:hover{    transform:translateY(-10px) scale(1.02);    box-shadow:var(--shadow-xl);}
.mission-icon{    width:100px;    height:100px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);}
.mission-icon::before{    content:'';    position:absolute;    inset:4px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.mission-icon i{    font-size:2.5rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.mission-item h3{    color:var(--dark-gray);    font-size:1.8rem;    font-weight:700;    margin-bottom:1.5rem;}
.mission-item p{    color:var(--gray);    line-height:1.7;    margin-bottom:1rem;    font-size:1.1rem;}
.values-content h3{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:2.5rem;    font-weight:800;    margin-bottom:3rem;    text-align:center;    letter-spacing:-0.025em;}
.values-grid{    display:grid;    grid-template-columns:repeat(2, 1fr);    gap:2rem;}
.value-item{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:2rem;    border-radius:1.5rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.value-item::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.value-item:hover::before{    opacity:1;}
.value-item:hover{    transform:translateY(-8px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.value-item i{    font-size:3rem;    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-bottom:1.5rem;}
.value-item h4{    color:var(--dark-gray);    font-weight:700;    font-size:1.3rem;    margin-bottom:1rem;}
.value-item p{    color:var(--gray);    font-size:1rem;    line-height:1.6;}
.company-story{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.company-story::before{    content:'';    position:absolute;    top:20%;    right:-10%;    width:500px;    height:500px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(100px);}
.story-content{    display:grid;    grid-template-columns:2fr 1fr;    gap:5rem;    align-items:flex-start;    position:relative;    z-index:2;}
.story-text h2{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:3rem;    font-weight:800;    margin-bottom:2rem;    letter-spacing:-0.025em;}
.story-intro{    font-size:1.3rem;    color:var(--gray);    margin-bottom:3rem;    line-height:1.7;}
.story-timeline{    position:relative;    padding-left:3rem;}
.story-timeline::before{    content:'';    position:absolute;    left:0;    top:0;    bottom:0;    width:4px;    background:var(--gradient-secondary);    border-radius:2px;}
.timeline-item{    position:relative;    margin-bottom:3rem;    padding-left:2.5rem;    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:1.5rem;    padding:2rem 2rem 2rem 3.5rem;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.timeline-item:hover{    transform:translateX(10px);    box-shadow:var(--shadow-lg);}
.timeline-item::before{    content:'';    position:absolute;    left:-8px;    top:2rem;    width:16px;    height:16px;    background:var(--gradient-primary);    border-radius:50%;    border:3px solid var(--white);    box-shadow:var(--shadow-md);}
.timeline-year{    background:var(--gradient-primary);    color:var(--white);    padding:0.5rem 1rem;    border-radius:50px;    font-weight:700;    font-size:1rem;    display:inline-block;    margin-bottom:1rem;    box-shadow:var(--shadow-blue);}
.timeline-content h4{    color:var(--dark-gray);    font-weight:700;    font-size:1.3rem;    margin-bottom:1rem;}
.timeline-content p{    color:var(--gray);    font-size:1rem;    line-height:1.6;}
.story-stats{    display:grid;    gap:2rem;}
.stat-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:2.5rem 2rem;    border-radius:2rem;    text-align:center;    box-shadow:var(--shadow-xl);    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.stat-card::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    height:4px;    background:var(--gradient-secondary);}
.stat-card:hover{    transform:translateY(-10px) scale(1.05);    box-shadow:var(--shadow-xl);}
.stat-card .stat-number{    font-size:3rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    display:block;    margin-bottom:1rem;}
.stat-card .stat-label{    color:var(--gray);    font-weight:600;    font-size:1.1rem;}
.expert-team{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.expert-team::before{    content:'';    position:absolute;    bottom:10%;    left:-5%;    width:400px;    height:400px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.05;    filter:blur(100px);}
.team-stats{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));    gap:2rem;    margin-bottom:4rem;    position:relative;    z-index:2;}
.team-stat{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:1.5rem;    padding:2rem;    text-align:center;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.team-stat::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:3px;    background:var(--gradient-secondary);}
.team-stat:hover{    transform:translateY(-5px) scale(1.02);    box-shadow:var(--shadow-lg);}
.team-stat .stat-number{    display:block;    font-size:2.5rem;    font-weight:800;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    margin-bottom:0.5rem;}
.team-stat .stat-label{    color:var(--gray);    font-weight:600;    font-size:1rem;}
.team-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(380px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.expert-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:3rem 2rem;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.expert-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:6px;    background:var(--gradient-secondary);    transform:scaleX(0);    transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.expert-card::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.expert-card:hover::before{    transform:scaleX(1);}
.expert-card:hover::after{    opacity:1;}
.expert-card:hover{    transform:translateY(-15px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.expert-image{    width:120px;    height:120px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.expert-image::before{    content:'';    position:absolute;    inset:6px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.expert-image i{    font-size:3rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.expert-card:hover .expert-image{    transform:scale(1.1) rotate(5deg);}
.expert-info{    text-align:center;    position:relative;    z-index:3;}
.expert-info h3{    color:var(--dark-gray);    font-size:1.5rem;    font-weight:700;    margin-bottom:0.75rem;}
.expert-title{    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-weight:600;    margin-bottom:1.5rem;    font-size:1.1rem;}
.expert-description{    color:var(--gray);    line-height:1.7;    margin-bottom:2rem;    font-size:1rem;}
.expert-specialties{    display:flex;    flex-wrap:wrap;    gap:0.75rem;    justify-content:center;}
.specialty{    background:linear-gradient(135deg,         rgba(219, 234, 254, 0.8) 0%,         rgba(255, 255, 255, 0.8) 100%);    color:var(--primary-blue);    padding:0.5rem 1rem;    border-radius:50px;    font-size:0.9rem;    font-weight:600;    border:1px solid rgba(59, 130, 246, 0.2);    transition:all 0.3s ease;}
.specialty:hover{    background:var(--primary-blue);    color:var(--white);    transform:translateY(-2px);}
.partnerships{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.partnerships::after{    content:'';    position:absolute;    top:30%;    right:-10%;    width:400px;    height:400px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(100px);}
.partners-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.partner-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:3rem 2rem;    border-radius:2rem;    text-align:center;    box-shadow:var(--shadow-lg);    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.partner-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.partner-card:hover::before{    opacity:1;}
.partner-card:hover{    transform:translateY(-12px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.partner-logo{    width:100px;    height:100px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.partner-logo::before{    content:'';    position:absolute;    inset:4px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.partner-logo i{    font-size:2.5rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.partner-card:hover .partner-logo{    transform:scale(1.1) rotate(5deg);}
.partner-card h3{    color:var(--dark-gray);    font-weight:700;    font-size:1.4rem;    margin-bottom:1.5rem;}
.partner-card p{    color:var(--gray);    font-size:1rem;    line-height:1.6;}
.services-overview{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.services-overview::before{    content:'';    position:absolute;    top:20%;    left:-10%;    width:500px;    height:500px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.03;    filter:blur(120px);}
.overview-content{    display:grid;    grid-template-columns:2fr 1fr;    gap:5rem;    align-items:center;    position:relative;    z-index:2;}
.overview-text h2{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:3rem;    font-weight:800;    margin-bottom:2rem;    letter-spacing:-0.025em;}
.overview-text p{    color:var(--gray);    font-size:1.3rem;    line-height:1.7;    margin-bottom:3rem;}
.overview-features{    display:flex;    flex-direction:column;    gap:1.5rem;}
.overview-feature{    display:flex;    align-items:center;    gap:1rem;    padding:1rem;    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:1rem;    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.overview-feature:hover{    transform:translateX(10px);    box-shadow:var(--shadow-md);}
.overview-feature i{    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:1.5rem;}
.overview-feature span{    color:var(--gray);    font-weight:600;    font-size:1.1rem;}
.overview-stats{    display:grid;    gap:2rem;}
.service-stat{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:2.5rem 2rem;    border-radius:2rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;}
.service-stat::before{    content:'';    position:absolute;    top:0;    left:0;    right:0;    height:4px;    background:var(--gradient-secondary);}
.service-stat:hover{    transform:translateY(-10px) scale(1.02);    box-shadow:var(--shadow-xl);}
.stat-icon{    width:80px;    height:80px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 1.5rem;    position:relative;    box-shadow:var(--shadow-blue);}
.stat-icon::before{    content:'';    position:absolute;    inset:4px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.stat-icon i{    font-size:2rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.service-stat h3{    color:var(--dark-gray);    font-size:2rem;    font-weight:800;    margin-bottom:1rem;}
.service-stat p{    color:var(--gray);    font-weight:600;    font-size:1.1rem;}
.main-services{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.main-services::before{    content:'';    position:absolute;    top:30%;    right:-15%;    width:600px;    height:600px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(150px);}
.service-detail{    margin-bottom:6rem;    padding:4rem 3rem;    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2.5rem;    box-shadow:var(--shadow-xl);    position:relative;    z-index:2;    overflow:hidden;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.service-detail::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:6px;    background:var(--gradient-secondary);}
.service-detail:hover{    transform:translateY(-5px);    box-shadow:var(--shadow-xl);}
.service-content{    display:grid;    grid-template-columns:2fr 1fr;    gap:4rem;    align-items:center;}
.service-content.reverse{    grid-template-columns:1fr 2fr;}
.service-badge{    display:inline-flex;    align-items:center;    gap:0.75rem;    padding:0.75rem 1.5rem;    border-radius:50px;    font-size:1rem;    font-weight:700;    margin-bottom:2rem;    background:var(--gradient-primary);    color:var(--white);    box-shadow:var(--shadow-blue);}
.service-badge.specialty{    background:linear-gradient(135deg, #059669 0%, #047857 100%);}
.service-badge.masterclass{    background:linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);}
.service-badge.international{    background:linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);}
.service-badge.new{    background:linear-gradient(135deg, #ea580c 0%, #c2410c 100%);}
.service-badge.advanced{    background:linear-gradient(135deg, #0891b2 0%, #0e7490 100%);}
.service-badge.digital{    background:linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);}
.service-text h3{    color:var(--dark-gray);    font-size:2.5rem;    font-weight:800;    margin-bottom:1.5rem;    letter-spacing:-0.025em;}
.service-subtitle{    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:1.3rem;    font-weight:600;    margin-bottom:3rem;    line-height:1.4;}
.service-details h4{    color:var(--dark-gray);    font-weight:700;    font-size:1.4rem;    margin-bottom:1.5rem;    margin-top:2rem;}
.service-details h4:first-child{    margin-top:0;}
.details-list{    list-style:none;    margin-bottom:2rem;}
.details-list li{    color:var(--gray);    margin-bottom:1rem;    padding-left:2rem;    position:relative;    line-height:1.6;    font-size:1.05rem;}
.details-list li::before{    content:'✦';    color:var(--primary-blue);    font-weight:bold;    position:absolute;    left:0;    font-size:1.2rem;}
.service-highlights{    display:flex;    flex-wrap:wrap;    gap:1.5rem;    margin-top:2rem;}
.highlight-item{    display:flex;    align-items:center;    gap:0.75rem;    background:linear-gradient(135deg,         rgba(219, 234, 254, 0.8) 0%,         rgba(255, 255, 255, 0.8) 100%);    border:1px solid rgba(59, 130, 246, 0.2);    padding:0.75rem 1.5rem;    border-radius:50px;    font-size:1rem;    font-weight:600;    transition:all 0.3s ease;}
.highlight-item:hover{    background:var(--primary-blue);    color:var(--white);    transform:translateY(-2px);}
.highlight-item i{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-size:1.2rem;}
.highlight-item:hover i{    color:var(--white);}
.highlight-item span{    color:var(--dark-gray);}
.highlight-item:hover span{    color:var(--white);}
.service-image{    display:flex;    flex-direction:column;    align-items:center;    text-align:center;}
.service-icon-large{    width:150px;    height:150px;    background:var(--gradient-secondary);    border-radius:2.5rem;    display:flex;    align-items:center;    justify-content:center;    margin-bottom:3rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.service-icon-large::before{    content:'';    position:absolute;    inset:6px;    background:var(--white);    border-radius:2rem;    z-index:1;}
.service-icon-large i{    font-size:4rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.service-detail:hover .service-icon-large{    transform:scale(1.05) rotate(3deg);}
.service-action{    width:100%;}
.service-action .btn{    width:100%;    justify-content:center;    padding:1.25rem 2rem;    font-weight:700;    font-size:1.1rem;}
.contact-info{    padding:6rem 0;    background:var(--white);    position:relative;    overflow:hidden;}
.contact-info::before{    content:'';    position:absolute;    top:20%;    left:-10%;    width:500px;    height:500px;    background:var(--gradient-secondary);    border-radius:50%;    opacity:0.03;    filter:blur(120px);}
.contact-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(350px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.contact-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    padding:3rem 2rem;    border-radius:2rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.contact-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:6px;    background:var(--gradient-secondary);    transform:scaleX(0);    transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.contact-card::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.contact-card:hover::before{    transform:scaleX(1);}
.contact-card:hover::after{    opacity:1;}
.contact-card:hover{    transform:translateY(-15px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.contact-card.whatsapp{    background:linear-gradient(135deg,         rgba(37, 211, 102, 0.1) 0%,         rgba(18, 140, 126, 0.05) 100%);    border:1px solid rgba(37, 211, 102, 0.2);}
.contact-card.whatsapp::before{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);}
.contact-card.whatsapp .contact-icon i{    color:var(--white);}
.contact-card.whatsapp .contact-link{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.contact-icon{    width:120px;    height:120px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.contact-icon::before{    content:'';    position:absolute;    inset:6px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.contact-icon i{    font-size:3rem;    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    position:relative;    z-index:2;}
.contact-card.whatsapp .contact-icon{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);}
.contact-card:hover .contact-icon{    transform:scale(1.1) rotate(5deg);}
.contact-card h3{    color:var(--dark-gray);    font-weight:700;    font-size:1.5rem;    margin-bottom:1rem;}
.contact-card.whatsapp h3{    color:var(--dark-gray);}
.contact-card p{    color:var(--gray);    margin-bottom:2rem;    font-size:1.1rem;    line-height:1.6;}
.contact-card.whatsapp p{    color:var(--gray);}
.contact-link{    background:var(--gradient-secondary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;    font-weight:700;    text-decoration:none;    font-size:1.2rem;    display:block;    margin-bottom:1rem;    position:relative;    transition:all 0.3s ease;}
.contact-link::after{    content:'';    position:absolute;    bottom:-2px;    left:50%;    width:0;    height:2px;    background:var(--gradient-secondary);    transition:all 0.3s ease;    transform:translateX(-50%);}
.contact-link:hover::after{    width:100%;}
.contact-link:hover{    text-decoration:underline;}
.availability{    color:var(--gray);    font-size:0.9rem;    font-style:italic;}
.contact-card.whatsapp .availability{    color:rgba(255, 255, 255, 0.8);}
.contact-form-section{    padding:4rem 0;    background:var(--light-gray);}
.form-container{    max-width:800px;    margin:0 auto;    background:var(--white);    padding:3rem;    border-radius:1.5rem;    box-shadow:var(--shadow-lg);}
.form-header{    text-align:center;    margin-bottom:2.5rem;}
.form-header h2{    color:var(--dark-blue);    font-size:2rem;    font-weight:700;    margin-bottom:1rem;}
.form-header p{    color:var(--gray);    font-size:1.1rem;}
.contact-form{    display:flex;    flex-direction:column;    gap:1.5rem;}
.form-row{    display:grid;    grid-template-columns:1fr 1fr;    gap:1.5rem;}
.form-group{    display:flex;    flex-direction:column;}
.form-group label{    color:var(--dark-blue);    font-weight:500;    margin-bottom:0.5rem;}
.form-group input,.form-group select,.form-group textarea{    padding:0.75rem 1rem;    border:2px solid var(--border-color);    border-radius:0.5rem;    font-size:1rem;    transition:all 0.3s ease;    background:var(--white);}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{    outline:none;    border-color:var(--primary-blue);    box-shadow:0 0 0 3px rgba(37, 99, 235, 0.1);}
.form-group textarea{    resize:vertical;    min-height:120px;}
.checkbox-group{    flex-direction:row;    align-items:center;    gap:0.75rem;}
.checkbox-label{    display:flex;    align-items:center;    gap:0.75rem;    color:var(--gray);    cursor:pointer;    margin-bottom:0 !important;}
.checkbox-label input[type="checkbox"]{    width:18px;    height:18px;    margin:0;}
.submit-btn{    align-self:flex-start;    padding:1rem 2rem;    font-size:1.1rem;    margin-top:1rem;}
.quick-actions{    padding:4rem 0;    background:var(--white);}
.actions-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));    gap:2rem;}
.action-card{    background:var(--light-blue);    padding:2.5rem;    border-radius:1rem;    text-align:center;    transition:all 0.3s ease;}
.action-card:hover{    transform:translateY(-5px);    box-shadow:var(--shadow-lg);}
.action-card.urgent{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);    color:var(--white);}
.action-card.urgent h3,.action-card.urgent p{    color:var(--white);}
.action-icon{    width:80px;    height:80px;    background:var(--white);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 1.5rem;}
.action-card.urgent .action-icon{    background:rgba(255, 255, 255, 0.2);}
.action-icon i{    font-size:2rem;    color:var(--primary-blue);}
.action-card.urgent .action-icon i{    color:var(--white);}
.action-card h3{    color:var(--dark-blue);    font-weight:600;    margin-bottom:1rem;}
.action-card p{    color:var(--gray);    margin-bottom:1.5rem;    line-height:1.5;}
.training-locations{    padding:4rem 0;    background:var(--light-gray);}
.locations-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));    gap:2rem;}
.location-card{    background:var(--white);    padding:2rem;    border-radius:1rem;    box-shadow:var(--shadow);    transition:all 0.3s ease;    position:relative;    overflow:hidden;}
.location-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:var(--primary-blue);    transform:scaleX(0);    transition:transform 0.3s ease;}
.location-card:hover::before{    transform:scaleX(1);}
.location-card:hover{    transform:translateY(-5px);    box-shadow:var(--shadow-lg);}
.location-card.primary{    border:2px solid var(--primary-blue);    background:linear-gradient(135deg, var(--light-blue) 0%, var(--white) 100%);}
.location-card.primary::before{    transform:scaleX(1);}
.location-icon{    width:60px;    height:60px;    background:var(--light-blue);    border-radius:50%;    display:flex;    align-items:center;    justify-content:center;    margin-bottom:1.5rem;}
.location-icon i{    font-size:1.5rem;    color:var(--primary-blue);}
.location-card h3{    color:var(--dark-blue);    font-weight:600;    margin-bottom:0.5rem;}
.location-type{    color:var(--primary-blue);    font-weight:500;    font-size:0.9rem;    margin-bottom:1rem;}
.location-card p{    color:var(--gray);    margin-bottom:1.5rem;    line-height:1.5;}
.location-features{    display:flex;    flex-direction:column;    gap:0.5rem;}
.location-features .feature{    color:var(--gray);    font-size:0.9rem;}
.faq-section{    padding:4rem 0;    background:var(--white);}
.faq-container{    max-width:800px;    margin:0 auto;}
.faq-item{    background:var(--white);    border:1px solid var(--border-color);    border-radius:0.75rem;    margin-bottom:1rem;    overflow:hidden;    transition:all 0.3s ease;}
.faq-item:hover{    box-shadow:var(--shadow);}
.faq-question{    padding:1.5rem;    cursor:pointer;    display:flex;    justify-content:space-between;    align-items:center;    background:var(--light-blue);    transition:all 0.3s ease;}
.faq-question:hover{    background:var(--primary-blue);    color:var(--white);}
.faq-question h3{    color:var(--dark-blue);    font-weight:600;    font-size:1.1rem;    margin:0;    transition:color 0.3s ease;}
.faq-question:hover h3{    color:var(--white);}
.faq-question i{    color:var(--primary-blue);    transition:all 0.3s ease;}
.faq-question:hover i{    color:var(--white);    transform:rotate(180deg);}
.faq-answer{    padding:1.5rem;    background:var(--white);    display:none;}
.faq-answer.active{    display:block;}
.faq-answer p{    color:var(--gray);    line-height:1.6;    margin:0;}
html{    scroll-behavior:smooth;}
.page-loader{    position:fixed;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-primary);    display:flex;    align-items:center;    justify-content:center;    z-index:9999;    transition:opacity 0.5s ease, visibility 0.5s ease;}
.page-loader.loaded{    opacity:0;    visibility:hidden;}
.loader-content{    text-align:center;    color:var(--white);}
.loader-logo{    font-size:3rem;    font-weight:900;    margin-bottom:2rem;    animation:logoGlow 2s ease-in-out infinite;}
@keyframes logoGlow{    0%, 100%{        text-shadow:0 0 20px rgba(255, 255, 255, 0.5);        transform:scale(1);}
    50%{        text-shadow:0 0 40px rgba(255, 255, 255, 0.8);        transform:scale(1.05);}
}
.loader-spinner{    width:60px;    height:60px;    border:3px solid rgba(255, 255, 255, 0.3);    border-radius:50%;    border-top-color:var(--white);    animation:spin 1s ease-in-out infinite;    margin:0 auto 1rem;}
@keyframes spin{    to{transform:rotate(360deg);}
}
.loader-text{    font-size:1.2rem;    font-weight:500;    opacity:0.9;    animation:fadeInOut 2s ease-in-out infinite;}
@keyframes fadeInOut{    0%, 100%{opacity:0.6;}
    50%{opacity:1;}
}
.animate-on-scroll{    opacity:0;    transform:translateY(30px);    transition:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
.animate-on-scroll.animated{    opacity:1;    transform:translateY(0);}
.animate-slide-left{    opacity:0;    transform:translateX(-50px);    transition:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
.animate-slide-left.animated{    opacity:1;    transform:translateX(0);}
.animate-slide-right{    opacity:0;    transform:translateX(50px);    transition:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
.animate-slide-right.animated{    opacity:1;    transform:translateX(0);}
.btn:focus,.nav-link:focus{    outline:2px solid var(--primary-blue);    outline-offset:2px;}
@keyframes fadeInUp{    from{        opacity:0;        transform:translateY(30px);}
    to{        opacity:1;        transform:translateY(0);}
}
.program-card{    animation:fadeInUp 0.6s ease-out;}
.registration-section{    padding:6rem 0;    background:var(--gradient-light);    position:relative;    overflow:hidden;}
.registration-section::before{    content:'';    position:absolute;    top:30%;    right:-10%;    width:400px;    height:400px;    background:var(--gradient-primary);    border-radius:50%;    opacity:0.03;    filter:blur(100px);}
.registration-grid{    display:grid;    grid-template-columns:repeat(auto-fit, minmax(350px, 1fr));    gap:3rem;    position:relative;    z-index:2;}
.registration-card{    background:var(--glass-bg);    backdrop-filter:var(--glass-blur);    -webkit-backdrop-filter:var(--glass-blur);    border:1px solid var(--glass-border);    border-radius:2rem;    padding:3rem 2rem;    text-align:center;    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);    position:relative;    overflow:hidden;    box-shadow:var(--shadow-md);}
.registration-card::before{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:100%;    background:var(--gradient-glass);    opacity:0;    transition:opacity 0.4s ease;    pointer-events:none;}
.registration-card:hover::before{    opacity:1;}
.registration-card:hover{    transform:translateY(-10px) scale(1.02);    box-shadow:var(--shadow-xl);    border-color:rgba(59, 130, 246, 0.3);}
.registration-card.google-forms::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:linear-gradient(135deg, #4285f4 0%, #34a853 50%, #fbbc05 75%, #ea4335 100%);}
.registration-card.whatsapp-reg::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);}
.registration-card.email-reg::after{    content:'';    position:absolute;    top:0;    left:0;    width:100%;    height:4px;    background:var(--gradient-primary);}
.registration-icon{    width:100px;    height:100px;    background:var(--gradient-secondary);    border-radius:2rem;    display:flex;    align-items:center;    justify-content:center;    margin:0 auto 2rem;    position:relative;    box-shadow:var(--shadow-blue);    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.registration-icon::before{    content:'';    position:absolute;    inset:4px;    background:var(--white);    border-radius:1.5rem;    z-index:1;}
.registration-icon i{    font-size:2.5rem;    position:relative;    z-index:2;}
.google-forms .registration-icon i{    background:linear-gradient(135deg, #4285f4 0%, #34a853 50%, #fbbc05 75%, #ea4335 100%);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.whatsapp-reg .registration-icon{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);}
.whatsapp-reg .registration-icon i{    color:var(--white);}
.email-reg .registration-icon i{    background:var(--gradient-primary);    -webkit-background-clip:text;    -webkit-text-fill-color:transparent;    background-clip:text;}
.registration-card:hover .registration-icon{    transform:scale(1.1) rotate(5deg);}
.registration-card h3{    color:var(--dark-gray);    font-size:1.5rem;    font-weight:700;    margin-bottom:1.5rem;}
.registration-card p{    color:var(--gray);    font-size:1rem;    line-height:1.6;    margin-bottom:2rem;}
.registration-card .btn{    width:100%;    justify-content:center;    padding:1rem 2rem;    font-weight:700;}
.registration-card .btn.whatsapp{    background:linear-gradient(135deg, #25d366 0%, #128c7e 100%);}
.registration-card .btn.email{    background:var(--gradient-primary);}
.program-card,.stats-card{    transition:all 0.3s ease;}
.program-card:hover,.stats-card:hover{    transform:translateY(-5px);    box-shadow:var(--shadow-lg);}
