:root{--primary:#0F1A3D;--primary-light:#1A2B5F;--accent:#FF5E5B;--accent-dark:#E04A47;--secondary:#00C1B3;--secondary-dark:#00A89B;--light:#FFFFFF;--dark:#050A1A;--text:#333333;--text-light:#777777;--transition:all 0.4s cubic-bezier(0.16, 1, 0.3, 1);--section-spacing:100px;--border-radius:12px;--box-shadow:0 15px 30px rgba(0,0,0,0.1);--toast-success-bg:#E6FFFA;--toast-success-border:#00C1B3;--toast-success-text:#007A70;--toast-success-icon:#00C1B3;--toast-error-bg:#FFF5F5;--toast-error-border:#FF5E5B;--toast-error-text:#C53030;--toast-error-icon:#FF5E5B;--toast-warning-bg:#FFFAF0;--toast-warning-border:#FFA500;--toast-warning-text:#D97706;--toast-warning-icon:#FFA500;--toast-info-bg:#EBF8FF;--toast-info-border:#3182CE;--toast-info-text:#2C5282;--toast-info-icon:#3182CE;--danger:#e74c3c;--danger-dark:#c0392b}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-family:Archivo,sans-serif;color:var(--text);background-color:var(--light);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:'Chakra Petch',sans-serif;font-weight:700;line-height:1.2}section{padding:var(--section-spacing) 0;position:relative}.container{max-width:1400px;margin:0 auto;padding:0 2rem}.section-header{text-align:center;margin-bottom:20px}.section-title{font-size:clamp(2rem, 5vw, 3.5rem);margin-bottom:1.5rem;position:relative;display:inline-block}.section-title span{color:var(--accent);position:relative}.section-title::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:var(--accent)}.section-subtitle{max-width:700px;margin:0 auto;margin-bottom:1rem;font-size:1.15rem;color:var(--text-light)}.btn{display:inline-flex;align-items:center;gap:10px;padding:1rem 2rem;font-weight:600;text-decoration:none;border-radius:var(--border-radius);transition:var(--transition);position:relative;overflow:hidden;z-index:1}.btn-primary{background:var(--accent);color:var(--light);box-shadow:0 10px 20px rgba(255,94,91,.3)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(255,94,91,.4)}.btn-outline{border:2px solid var(--accent);color:var(--accent)}.btn-outline:hover{background:var(--accent);color:var(--light)}header{position:fixed;width:100%;top:0;z-index:1000;background-color:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,94,91,.2);transition:var(--transition)}header{height:120px;overflow:visible}header.scrolled{box-shadow:0 5px 30px rgba(0,0,0,.1)}.header-container{max-width:1400px;margin:0 auto;padding:.5rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;text-decoration:none;position:relative;overflow:hidden;padding:.5rem 0}.logo::before{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--accent),var(--secondary));transform:scaleX(0);transform-origin:left;transition:var(--transition)}.logo-img{height:135px;margin-right:1rem;transition:var(--transition);position:relative;top:-20px}.logo-tagline{font-family:'Playfair Display',serif;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:2.5px;color:var(--primary);margin-top:.4rem;display:inline-block;padding-bottom:4px;position:relative;top:-20px}.logo-tagline::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--accent);transform:scaleX(.7);transform-origin:center;transition:var(--transition)}.logo:hover .logo-tagline::after{transform:scaleX(1)}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{color:var(--primary);text-decoration:none;font-weight:600;font-size:.95rem;position:relative;transition:var(--transition)}.nav-link::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--accent);transition:var(--transition)}.nav-link:hover::after{width:100%}.contact-btn{background:var(--accent);color:var(--light);padding:.7rem 1.5rem;border-radius:var(--border-radius);font-weight:600;transition:var(--transition)}.contact-btn:hover{background:var(--accent-dark);transform:translateY(-3px)}.mobile-menu-btn{display:none;background:0 0;border:none;width:30px;height:24px;position:relative;cursor:pointer}.mobile-menu-btn span{display:block;width:100%;height:3px;background:var(--primary);position:absolute;left:0;transition:var(--transition)}.mobile-menu-btn span:first-child{top:0}.mobile-menu-btn span:nth-child(2){top:50%;transform:translateY(-50%)}.mobile-menu-btn span:nth-child(3){bottom:0}.mobile-menu-btn.active span:first-child{transform:translateY(10px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}.hero{height:100vh;min-height:800px;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:80px}.hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary),var(--primary-light));opacity:.9;z-index:-1}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-text{color:var(--light)}.hero-title{font-size:clamp(2.5rem, 5vw, 4rem);margin-bottom:1.5rem;line-height:1.1}.hero-title span{color:var(--accent);position:relative}.hero-title span::after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:10px;background:rgba(255,94,91,.3);z-index:-1}.hero-subtitle{font-size:1.2rem;margin-bottom:2.5rem;opacity:.9;max-width:600px}.hero-image{position:relative;height:500px;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.hero-img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.hero-img:hover{transform:scale(1.05)}.hero-cta{display:flex;gap:1.5rem;margin-top:2rem}.trust-badges{display:flex;gap:1.5rem;margin-top:2rem}.trust-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--light);opacity:.9}.trust-item i{color:var(--accent)}.trust-item strong{color:var(--accent);font-family:'Chakra Petch',sans-serif;font-size:1.15rem;font-weight:700;margin-inline-end:.2rem}.scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);color:var(--light);display:flex;flex-direction:column;align-items:center;opacity:.7;animation:bounce 2s infinite}.mouse{width:25px;height:40px;border:2px solid var(--light);border-radius:20px;margin-top:10px;position:relative}.wheel{width:4px;height:8px;background:var(--light);border-radius:2px;position:absolute;top:5px;left:50%;transform:translateX(-50%);animation:scroll 2s infinite}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0) translateX(-50%)}40%{transform:translateY(-20px) translateX(-50%)}60%{transform:translateY(-10px) translateX(-50%)}}@keyframes scroll{0%{top:5px;opacity:1}100%{top:15px;opacity:0}}.services{background-color:var(--light)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.service-card{background:var(--light);border-radius:var(--border-radius);padding:2.5rem;transition:var(--transition);box-shadow:var(--box-shadow);position:relative;overflow:hidden;border:1px solid rgba(15,26,61,.1)}.service-card::before{content:'';position:absolute;top:0;left:0;width:5px;height:0;background:var(--accent);transition:var(--transition)}.service-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.service-card:hover::before{height:100%}.service-icon{font-size:2.5rem;color:var(--secondary);margin-bottom:1.5rem;transition:var(--transition)}.service-card:hover .service-icon{transform:rotate(15deg) scale(1.1);color:var(--accent)}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--primary)}.service-card p{color:var(--text-light);margin-bottom:1.5rem}.service-link{color:var(--secondary);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;transition:var(--transition)}.service-link:hover{color:var(--accent)}.service-link i{transition:var(--transition)}.service-link:hover i{transform:translateX(5px)}.testimonials{background-color:#f9f9f9}.testimonial-carousel{display:flex;gap:2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:2rem 0;scrollbar-width:none}.testimonial-carousel::-webkit-scrollbar{display:none}.testimonial-slide{min-width:80%;scroll-snap-align:start;background:var(--light);border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow)}.student-photo{width:80px;height:80px;border-radius:50%;overflow:hidden;margin:0 auto 1.5rem;position:relative;border:3px solid var(--accent)}.student-photo img{width:100%;height:100%;object-fit:cover}.country-flag{position:absolute;bottom:-5px;right:-5px;width:30px;height:30px;border-radius:50%;overflow:hidden;border:2px solid var(--light)}.rating{color:var(--accent);margin-bottom:1rem}blockquote{font-style:italic;margin-bottom:1.5rem;position:relative}blockquote::after,blockquote::before{content:'"';font-size:2rem;color:var(--accent);opacity:.3}.student-info{text-align:center}.student-info strong{display:block;color:var(--primary)}.student-info span{font-size:.9rem;color:var(--text-light)}.testimonial-carousel{display:flex;gap:2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:2rem 0 3rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent) rgba(0,0,0,0.1)}.testimonial-carousel::-webkit-scrollbar{height:8px}.testimonial-carousel::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:10px}.testimonial-carousel::-webkit-scrollbar-thumb{background-color:var(--accent);border-radius:10px}.testimonial-slide{min-width:80%;scroll-snap-align:start;background:var(--light);border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow);flex:0 0 auto}.contact{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--light)}.contact-container{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-info h2{font-size:clamp(2rem, 4vw, 3rem);margin-bottom:1.5rem}.contact-info h2 span{color:var(--accent)}.contact-text{margin-bottom:2rem;opacity:.9}.contact-details{display:grid;gap:1.5rem;margin-bottom:3rem}.contact-item{display:flex;align-items:center;gap:1rem}.contact-icon{width:50px;height:50px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--accent);flex-shrink:0;transition:var(--transition)}.contact-item:hover .contact-icon{background:var(--accent);color:var(--light);transform:rotate(15deg)}.contact-item-content h4{font-size:1.1rem;margin-bottom:.3rem}.contact-item-content a{color:var(--light);text-decoration:none;opacity:.9;transition:var(--transition)}.contact-item-content a:hover{color:var(--accent)}.contact-form-container{background:var(--light);border-radius:var(--border-radius);padding:3rem;box-shadow:var(--box-shadow)}.form-header{margin-bottom:2rem}.form-header h3{color:var(--primary);margin-bottom:.5rem}.form-header p{color:var(--text-light)}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--primary)}.form-input{width:100%;padding:1rem;border:1px solid #ddd;border-radius:var(--border-radius);font-family:inherit;font-size:1rem;transition:var(--transition)}.form-input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,94,91,.2)}.form-textarea{min-height:150px;resize:vertical}.submit-btn{background:var(--accent);color:var(--light);border:none;padding:1rem 2rem;font-weight:600;font-size:1rem;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);width:100%}.submit-btn:hover{background:var(--accent-dark);transform:translateY(-3px)}footer{background-color:var(--primary);color:var(--light);padding:4rem 0 2rem}.footer-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem}.footer-logo{display:flex;flex-direction:column;align-items:flex-start}.footer-logo-img{height:70px;margin-bottom:1rem;filter:drop-shadow(0 0 5px rgba(0, 193, 179, .5))}.footer-text{opacity:.8;margin-bottom:1.5rem;font-size:.95rem}.footer-social{display:flex;gap:1rem}.social-link{width:44px;height:44px;background:rgba(255,255,255,.05);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--light);transition:var(--transition);position:relative;border:1px solid rgba(255,255,255,.1);overflow:hidden}.social-link::before{content:'';position:absolute;width:100%;height:100%;background:linear-gradient(135deg,var(--accent),var(--secondary));opacity:0;transition:var(--transition)}.social-link i{position:relative;z-index:1;font-size:1.1rem}.social-link:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 10px 20px rgba(0,0,0,.2);color:var(--light)}.social-link:hover::before{opacity:1}.social-tooltip{position:absolute;bottom:-30px;left:50%;transform:translateX(-50%);background:var(--primary-light);color:var(--light);padding:.3rem .8rem;border-radius:4px;font-size:.7rem;opacity:0;visibility:hidden;transition:var(--transition);white-space:nowrap;border:1px solid rgba(255,255,255,.1)}.social-link:hover .social-tooltip{opacity:1;visibility:visible;bottom:-40px}.social-link:first-child:hover::before{background:linear-gradient(135deg,#3b5998,#2d4373)}.social-link:nth-child(2):hover::before{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);background-size:200% 200%}.social-link:nth-child(3):hover::before{background:linear-gradient(135deg,#0077b5,#00a0dc)}.footer-links h3{font-size:1.2rem;margin-bottom:1.5rem;position:relative}.footer-links h3::after{content:'';position:absolute;bottom:-5px;left:0;width:40px;height:2px;background:var(--accent)}.footer-nav{list-style:none}.footer-nav li{margin-bottom:.8rem}.footer-nav a{color:var(--light);text-decoration:none;opacity:.8;transition:var(--transition)}.footer-nav a:hover{color:var(--accent);opacity:1;padding-left:5px}.footer-bottom{text-align:center;padding-top:3rem;margin-top:3rem;border-top:1px solid rgba(255,255,255,.1)}.copyright{opacity:.7;font-size:.9rem}@media (max-width:1200px){.hero-content{grid-template-columns:1fr;gap:3rem}.hero-image{height:400px;grid-row:1}.contact-container{grid-template-columns:1fr}}@media (max-width:768px){.header-container{padding:1rem}.mobile-menu-btn{display:block}.nav-links{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:var(--light);flex-direction:column;align-items:flex-start;padding:100px 2rem 2rem;box-shadow:-5px 0 15px rgba(0,0,0,.1);transition:var(--transition)}.nav-links.active{right:0}.nav-link{width:100%;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.contact-btn{margin-top:1rem;width:100%;text-align:center}.hero{min-height:700px}.hero-title{font-size:2.5rem}.hero-cta{flex-direction:column}.testimonial-slide{min-width:90%}}@media (max-width:768px){.hero{min-height:auto;padding-top:20px;height:auto}.hero-content{grid-template-columns:1fr;gap:2rem;padding-top:1rem;padding-bottom:3rem}.hero-text{order:2}.hero-image{height:250px;margin-top:0;grid-row:1}.hero-title{font-size:1.8rem;margin-bottom:1rem}.hero-subtitle{font-size:1rem;margin-bottom:1.5rem}.hero-cta{flex-direction:column;gap:1rem;margin-top:1.5rem}.trust-badges{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.5rem}.scroll-indicator{position:relative;bottom:auto;margin-top:2rem;transform:none;left:auto}}@media (max-width:480px){.hero{min-height:600px}.hero-title{font-size:2rem}.section-title{font-size:1.8rem}.service-card{padding:1.5rem}.footer-container{grid-template-columns:1fr}}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn 1s ease-out forwards}.text-accent{color:var(--accent)}.text-light{color:var(--light)}.mt-1{margin-top:1rem}.mt-2{margin-top:2rem}.mt-3{margin-top:3rem}.mb-1{margin-bottom:1rem}.mb-2{margin-bottom:2rem}.mb-3{margin-bottom:3rem}.header-right{display:flex;align-items:center;gap:1.5rem}.language-switcher{display:flex;align-items:center;gap:.5rem}.language-btn{background:0 0;border:none;color:var(--primary);font-weight:600;font-size:.9rem;cursor:pointer;padding:.3rem .5rem;border-radius:4px;transition:var(--transition)}.language-btn.active{background:rgba(15,26,61,.1);color:var(--accent)}.language-btn:hover:not(.active){color:var(--accent)}.language-separator{color:rgba(15,26,61,.3)}@media (max-width:768px){.language-switcher{position:absolute;top:20px;right:80px}.nav-links.active{right:0;width:100%;max-width:100%;padding-top:140px}}.language-switcher-desktop{display:flex;align-items:center;gap:.5rem;margin-left:auto;padding:1rem 0}.language-switcher-mobile{display:none;align-items:center;gap:.5rem;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:1rem;width:100%}.language-btn{background:0 0;border:none;color:var(--primary);font-weight:600;font-size:.9rem;cursor:pointer;padding:.3rem .5rem;border-radius:4px;transition:var(--transition)}.language-btn.active{background:rgba(15,26,61,.1);color:var(--accent)}.language-btn:hover:not(.active){color:var(--accent)}.language-separator{color:rgba(15,26,61,.3)}.mobile-menu-btn{position:relative;width:30px;height:24px;background:0 0;border:none;cursor:pointer;z-index:1001}.menu-icon{display:block;width:100%;height:3px;background:var(--primary);position:absolute;left:0;transition:var(--transition)}.menu-icon:first-child{top:0}.menu-icon:nth-child(2){top:50%;transform:translateY(-50%)}.menu-icon:nth-child(3){bottom:0}.close-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.8rem;color:var(--primary);opacity:0;transition:var(--transition)}.mobile-menu-btn.active .menu-icon{opacity:0}.mobile-menu-btn.active .close-icon{opacity:1}@media (max-width:768px){.language-switcher-desktop{display:none}.language-switcher-mobile{display:flex}.nav-links{position:fixed;top:0;right:-100%;width:100%;max-width:320px;height:100vh;background:var(--light);flex-direction:column;align-items:flex-start;padding:100px 2rem 2rem;box-shadow:-5px 0 15px rgba(0,0,0,.1);transition:var(--transition);z-index:1000;overflow-y:auto}.nav-links.active{right:0}.nav-link{width:100%;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.contact-btn{margin-top:1rem;width:100%;text-align:center}}.header-container{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem}.nav-links{display:flex;align-items:center;gap:2rem}.language-switcher-desktop{display:flex;align-items:center;margin-left:1rem}.language-switcher-mobile{display:none}.language-btn{background:0 0;border:none;cursor:pointer;font-weight:600;padding:.5rem}.language-btn.active{color:var(--accent)}.language-separator{margin:0 .3rem;color:var(--text-light)}@media (max-width:768px){.language-switcher-desktop{display:none}.language-switcher-mobile{display:flex;width:100%;justify-content:center;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.1)}.nav-links{flex-direction:column;position:fixed;top:0;right:-100%;width:80%;height:100vh;background:#fff;transition:var(--transition);padding-top:6rem}.nav-links.active{right:0}}.process{padding:var(--section-spacing) 2rem;background-color:var(--light);position:relative}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto;counter-reset:step}.process-step{background:var(--light);border:1px solid rgba(255,94,91,.1);padding:2rem;position:relative;transition:var(--transition);box-shadow:0 5px 15px rgba(0,0,0,.05)}.process-step::before{counter-increment:step;content:counter(step);position:absolute;top:-20px;left:20px;width:40px;height:40px;background:var(--accent);color:var(--light);display:flex;align-items:center;justify-content:center;font-weight:700;border-radius:50%;z-index:1}.process-step h3{font-size:1.3rem;margin-bottom:1rem;color:var(--primary);position:relative;padding-bottom:.5rem}.process-step h3::after{content:'';position:absolute;bottom:0;left:0;width:40px;height:3px;background:var(--accent);transition:var(--transition)}.process-step p{color:var(--text);opacity:.9}.process-step:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgba(0,0,0,.1)}.process-step:hover h3::after{width:80px}.testimonials-hero{background:linear-gradient(135deg,var(--primary),var(--primary-light));padding:120px 0 80px;position:relative;overflow:hidden}.testimonials-hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat;opacity:.2;z-index:0}.testimonials-hero .hero-content{position:relative;z-index:1}.testimonials-hero .hero-image{position:relative;border-radius:var(--border-radius);overflow:visible;box-shadow:0 20px 40px rgba(0,0,0,.3)}.floating-testimonials{position:absolute;bottom:-30px;left:50%;transform:translateX(-50%);display:flex;gap:1rem;width:100%;justify-content:center}.floating-testimonial{background:var(--light);padding:1rem 1.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);max-width:200px;animation:float 6s ease-in-out infinite;opacity:.9}.floating-testimonial:first-child{animation-delay:var(--delay)}.floating-testimonial:nth-child(2){animation-delay:calc(var(--delay) + .5s)}.floating-testimonial .rating{color:var(--accent);font-size:.8rem;margin-bottom:.5rem}.floating-testimonial p{font-size:.9rem;font-weight:600;color:var(--primary);margin:0}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}.testimonials-grid-section{padding:80px 0;background-color:#f9f9f9}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-top:3rem}.testimonial-card{background:var(--light);border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow);transition:var(--transition);position:relative;overflow:hidden;border:1px solid rgba(15,26,61,.1)}.testimonial-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.testimonial-card::before{content:'';position:absolute;top:0;left:0;width:5px;height:0;background:var(--accent);transition:var(--transition)}.testimonial-card:hover::before{height:100%}.student-photo{width:80px;height:80px;border-radius:50%;overflow:hidden;margin-bottom:1.5rem;position:relative;border:3px solid var(--accent)}.student-photo img{width:100%;height:100%;object-fit:cover}.country-flag{position:absolute;bottom:-5px;right:-5px;width:30px;height:30px;border-radius:50%;overflow:hidden;border:2px solid var(--light)}.rating{color:var(--accent);margin-bottom:1rem;font-size:.9rem}blockquote{font-style:italic;margin-bottom:1.5rem;position:relative;color:var(--text);line-height:1.6}blockquote::after,blockquote::before{content:'"';font-size:2rem;color:var(--accent);opacity:.3;position:absolute}blockquote::before{top:-15px;left:-10px}blockquote::after{bottom:-30px;right:-10px}.student-info{margin-top:1.5rem}.student-info strong{display:block;color:var(--primary);font-size:1.1rem}.student-info span{display:block;font-size:.9rem;color:var(--text-light);margin-top:.3rem}.testimonial-date{display:block;font-size:.8rem;color:var(--accent);margin-top:.5rem;font-weight:600}.card-1{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/articles/article-imat-medicine.webp') center/cover no-repeat}.card-2{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/articles/article-dsu-budget.webp') center/cover no-repeat}.card-3{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/articles/article-visa-documents.webp') center/cover no-repeat}.card-4{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat}.card-5{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat}.card-6{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7)),url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat}.progress-stats,.student-documents,.student-stats,.testimonial-before-after,.testimonial-video,.timeline{margin-top:1.5rem;padding-top:1.5rem;border-top:1px dashed rgba(15,26,61,.1)}.play-btn{background:var(--accent);color:var(--light);border:none;padding:.8rem 1.5rem;border-radius:var(--border-radius);font-weight:600;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:var(--transition)}.play-btn:hover{background:var(--accent-dark);transform:translateY(-3px)}.play-btn i{font-size:.9rem}.student-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-light);background:rgba(15,26,61,.05);padding:.5rem 1rem;border-radius:20px}.stat-item i{color:var(--accent)}.student-documents{display:flex;gap:1rem;flex-wrap:wrap}.document-link{display:flex;align-items:center;gap:.5rem;color:var(--secondary-dark);text-decoration:none;font-size:.9rem;transition:var(--transition)}.document-link:hover{color:var(--accent)}.document-link i{font-size:1.2rem}.timeline{position:relative;padding-left:60px}.timeline::before{content:'';position:absolute;left:20px;top:0;bottom:0;width:2px;background:var(--accent);opacity:.3}.timeline-item{position:relative;margin-bottom:1rem}.timeline-item:last-child{margin-bottom:0}.timeline-item::before{content:'';position:absolute;left:-40px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:var(--accent)}.timeline-date{display:inline-block;min-width:40px;font-weight:600;color:var(--accent)}.timeline-text{margin-left:.5rem;color:var(--text-light)}.testimonial-before-after{display:flex;gap:1rem;justify-content:space-around}.before-after-item{text-align:center}.before-after-item span{display:block;font-size:.9rem;color:var(--text-light);margin-bottom:.5rem}.status-badge{padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.status-badge.rejected{background:rgba(255,94,91,.1);color:var(--accent-dark)}.status-badge.approved{background:rgba(0,193,179,.1);color:var(--secondary-dark)}.progress-stats{display:grid;gap:.8rem}.progress-item span{display:block;margin-bottom:.3rem;font-size:.9rem;color:var(--text-light)}.progress-bar{height:6px;background:rgba(15,26,61,.1);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:3px}.testimonials-cta{text-align:center;margin-top:4rem;padding:3rem;background:var(--light);border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.testimonials-cta h3{font-size:1.8rem;margin-bottom:1.5rem;color:var(--primary)}.video-testimonials{padding:80px 0;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--light)}.video-testimonials .section-header{margin-bottom:60px}.video-testimonials .section-subtitle,.video-testimonials .section-title{color:var(--light)}.video-testimonials .section-title span{color:var(--accent)}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.video-card{background:var(--light);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow);transition:var(--transition)}.video-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.3)}.video-thumbnail{height:200px;background-size:cover;background-position:center;position:relative}.video-thumbnail::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(15,26,61,.5);transition:var(--transition)}.video-card:hover .video-thumbnail::before{background:rgba(15,26,61,.2)}.play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;padding:0;z-index:1}.video-duration{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.7);color:var(--light);padding:.2rem .5rem;border-radius:3px;font-size:.8rem;z-index:1}.video-info{padding:1.5rem}.video-info h3{color:var(--primary);margin-bottom:.5rem}.video-meta{display:flex;gap:1rem;font-size:.9rem;color:var(--text-light)}.video-meta i{margin-right:.3rem;color:var(--accent)}.testimonials-stats{padding:80px 0;background-color:#f9f9f9}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.stat-card{background:var(--light);border-radius:var(--border-radius);padding:2rem;text-align:center;box-shadow:var(--box-shadow);transition:var(--transition);position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.stat-number{font-size:3rem;font-weight:700;color:var(--primary);margin-bottom:.5rem;font-family:'Chakra Petch',sans-serif}.stat-label{font-size:1.1rem;color:var(--text-light);margin-bottom:1rem}.stat-icon{font-size:2rem;color:var(--accent)}.testimonials-final-cta{padding:100px 0;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--light);text-align:center;position:relative;overflow:hidden}.testimonials-final-cta::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat;opacity:.1;z-index:0}.testimonials-final-cta .container{position:relative;z-index:1}.testimonials-final-cta h2{font-size:clamp(2rem, 5vw, 3.5rem);margin-bottom:1.5rem}.testimonials-final-cta h2 span{color:var(--accent)}.testimonials-final-cta p{font-size:1.2rem;max-width:700px;margin:0 auto 2.5rem;opacity:.9}.cta-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.video-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;z-index:2000}.modal-content{position:relative;width:90%;max-width:900px;background:var(--light);border-radius:var(--border-radius);padding:2rem}.close-modal{position:absolute;top:10px;right:10px;background:0 0;border:none;font-size:2rem;color:var(--primary);cursor:pointer;z-index:1}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}@media (max-width:768px){.testimonials-grid{grid-template-columns:1fr}.testimonials-hero .hero-content{grid-template-columns:1fr}.testimonials-hero .hero-image{height:300px;margin-bottom:2rem}.floating-testimonials{position:static;transform:none;margin-top:2rem;justify-content:flex-start;flex-wrap:wrap}.floating-testimonial{max-width:100%}.testimonials-cta{padding:2rem 1rem}.testimonials-cta h3{font-size:1.5rem}.cta-buttons{flex-direction:column;gap:1rem}}@media (max-width:480px){.testimonial-card{padding:1.5rem}.video-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}}@media (max-width:768px){.floating-testimonials{display:none!important}.hero-image{margin-bottom:0}}.track-btn-header{margin-right:auto;margin-left:2rem;position:relative}.track-btn-circle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;position:relative;transition:var(--transition);box-shadow:0 4px 12px rgba(255,94,91,.3)}.track-btn-circle:hover{background:var(--accent-dark);transform:translateY(-3px) rotate(15deg);box-shadow:0 8px 20px rgba(255,94,91,.4)}.track-btn-circle .tooltip{position:absolute;top:50%;right:100%;transform:translateY(-50%);background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.8rem;white-space:nowrap;opacity:0;pointer-events:none;transition:var(--transition);margin-right:1rem}.track-btn-circle .tooltip::after{content:'';position:absolute;top:50%;left:100%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent transparent transparent var(--primary)}.track-btn-circle:hover .tooltip{opacity:1;margin-right:1.5rem}.floating-track-btn{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:var(--accent);color:#fff;z-index:999;box-shadow:0 10px 30px rgba(255,94,91,.4);transition:var(--transition);overflow:hidden;animation:pulse 2s infinite}.floating-track-btn:hover{background:var(--accent-dark);transform:scale(1.1);box-shadow:0 15px 40px rgba(255,94,91,.6);animation:none}.floating-track-btn span{position:absolute;white-space:nowrap;left:50%;transform:translateX(-50%);bottom:-30px;opacity:0;transition:var(--transition);font-size:.9rem;font-weight:600}.floating-track-btn:hover{width:auto;padding:0 2rem;border-radius:30px}.floating-track-btn:hover span{opacity:1;bottom:-40px}.pulse-ring{position:absolute;width:100%;height:100%;border:2px solid var(--accent);border-radius:50%;animation:pulse-ring 2s infinite;opacity:0}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}@keyframes pulse-ring{0%{transform:scale(.8);opacity:.7}100%{transform:scale(1.3);opacity:0}}.hero-track-link{margin-top:2rem;position:relative}.hero-track-link a{display:inline-flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.8);text-decoration:none;transition:var(--transition);font-size:.95rem}.hero-track-link a:hover{color:#fff;transform:translateX(5px)}.hero-track-link a strong{font-weight:600;color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.hero-track-link a i{transition:var(--transition)}.hero-track-link a:hover i{transform:translateX(3px)}@media (max-width:768px){.track-btn-header{margin-left:1rem;margin-right:0}.floating-track-btn{bottom:1rem;right:1rem;width:50px;height:50px}}.floating-track-btn{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:999;box-shadow:0 10px 30px rgba(255,94,91,.4);transition:all .5s cubic-bezier(.175, .885, .32, 1.275);overflow:hidden;text-decoration:none}.pulse-ring{position:absolute;width:100%;height:100%;border:2px solid var(--accent);border-radius:50%;animation:pulse-ring 2.5s infinite;opacity:0}.btn-text{position:absolute;white-space:nowrap;left:50%;transform:translateX(-50%);top:-25px;opacity:0;transition:all .3s ease;font-weight:600;font-size:.9rem;color:#fff;text-shadow:0 0 3px var(--accent),0 0 6px var(--accent),0 0 10px rgba(255,94,91,.5);filter:drop-shadow(0 2px 2px rgba(255, 94, 91, .7))}.floating-track-btn:hover{width:auto;padding:0 25px;border-radius:30px;background:var(--accent-dark)}.floating-track-btn{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:999;box-shadow:0 10px 30px rgba(255,94,91,.4);transition:all .5s cubic-bezier(.175, .885, .32, 1.275);overflow:visible;text-decoration:none}.floating-track-btn:focus,.floating-track-btn:hover{width:auto;padding:0 25px;border-radius:30px;background:var(--accent-dark)}.floating-track-btn:focus .btn-text,.floating-track-btn:hover .btn-text{opacity:1;top:-25px;text-shadow:0 0 5px var(--accent),0 0 10px var(--accent),0 0 15px rgba(255,94,91,.7)}@keyframes pulse-ring{0%{transform:scale(.8);opacity:.7}100%{transform:scale(1.3);opacity:0}}.floating-track-btn.clicked{transform:scale(.9);opacity:.8}@media (max-width:768px){.floating-track-btn{bottom:20px;right:20px;width:55px;height:55px}.floating-track-btn:hover{padding:0 20px}.btn-text{font-size:.8rem}}@media screen and (max-width:768px){.header{display:flex;flex-direction:column;align-items:center;position:relative}.logo{order:-1;text-align:center}.mobile-menu-btn{order:1;align-self:flex-end;margin-top:10px;margin-right:20px}}@media (max-width:768px){.hero-track-link,.track-btn-header{display:none!important}}.mobile-menu-btn span{background:var(--accent)!important}.menu-icon{background:var(--accent)!important}.mobile-menu-btn:hover .menu-icon,.mobile-menu-btn:hover span{background:var(--accent-dark)!important}@media screen and (max-width:768px){.header-container{flex-wrap:wrap;align-items:center;padding:.5rem 1rem}.logo{display:flex;align-items:center;order:1;flex:1;min-width:0}.mobile-menu-btn{order:2;margin-left:auto;margin-top:0;margin-right:0}.logo-tagline{position:static;margin-left:.5rem;margin-top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.6rem!important;letter-spacing:1px!important;padding-bottom:2px}.logo-tagline::after{height:1px;bottom:1px}.logo-img{top:0;height:70px!important;margin-right:.5rem!important}}@media (max-width:380px){header{height:100px}.header-container{padding:.3rem .8rem;align-items:center}.logo-img{height:60px!important;top:0!important;margin-right:.3rem!important}.logo-tagline{font-size:.5rem!important;letter-spacing:.5px!important;margin-left:.2rem!important;top:0!important;white-space:normal;max-width:100px}.logo-tagline::after{display:none}.nav-links{gap:1.5rem}.nav-link{font-size:.9rem}.contact-btn{padding:.6rem 1.2rem;font-size:.85rem}.mobile-menu-btn{width:28px;height:22px}.mobile-menu-btn span{height:2.5px}.mobile-menu-btn.active span:first-child{transform:translateY(8px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}}.testimonial-video{margin-top:20px;padding-top:20px;border-top:1px dashed rgba(15,26,61,.1)}.testimonial-video .play-btn{color:var(--primary)!important;background-color:transparent!important;border:2px solid var(--accent)!important;padding:.6rem 1.2rem!important}.testimonial-video .play-btn:hover{background-color:var(--accent)!important;color:var(--primary)!important}.testimonial-video .play-btn i{color:var(--accent)!important}.testimonial-video .play-btn:hover i{color:var(--light)!important}.toast-notifications-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast{min-width:300px;max-width:400px;background-color:var(--light);color:var(--text);padding:15px 20px;border-radius:var(--border-radius);box-shadow:0 5px 15px rgba(0,0,0,.15);display:flex;align-items:center;gap:15px;border-left:5px solid;opacity:0;transform:translateX(100%);animation:toastSlideIn .5s forwards,toastFadeOut .5s 4.5s forwards}.toast-icon{font-size:1.5rem;flex-shrink:0}.toast-content{flex-grow:1}.toast-title{font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:1.1rem;margin-bottom:5px}.toast-message{font-size:.95rem;line-height:1.4}.toast-close{background:0 0;border:none;color:var(--text-light);font-size:1.2rem;cursor:pointer;padding:5px;margin-left:10px;opacity:.7;transition:opacity .3s ease}.toast-close:hover{opacity:1}.toast.success{border-left-color:var(--toast-success-border);background-color:var(--toast-success-bg)}.toast.success .toast-icon{color:var(--toast-success-icon)}.toast.success .toast-title{color:var(--toast-success-text)}.toast.success .toast-message{color:var(--toast-success-text)}.toast.error{border-left-color:var(--toast-error-border);background-color:var(--toast-error-bg)}.toast.error .toast-icon{color:var(--toast-error-icon)}.toast.error .toast-title{color:var(--toast-error-text)}.toast.error .toast-message{color:var(--toast-error-text)}.toast.warning{border-left-color:var(--toast-warning-border);background-color:var(--toast-warning-bg)}.toast.warning .toast-icon{color:var(--toast-warning-icon)}.toast.warning .toast-title{color:var(--toast-warning-text)}.toast.warning .toast-message{color:var(--toast-warning-text)}.toast.info{border-left-color:var(--toast-info-border);background-color:var(--toast-info-bg)}.toast.info .toast-icon{color:var(--toast-info-icon)}.toast.info .toast-title{color:var(--toast-info-text)}.toast.info .toast-message{color:var(--toast-info-text)}@keyframes toastSlideIn{to{opacity:1;transform:translateX(0)}}@keyframes toastFadeOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.fixed.bottom-4.right-4{display:none!important}.error-message{color:var(--accent);font-size:.8rem;margin-top:.3rem;opacity:0;height:0;transition:all .3s ease}.error-message.show{opacity:1;height:auto;margin-top:.5rem}.form-input.error{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,94,91,.2)}.required{color:var(--accent)}.toast-notification{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--primary);color:#fff;padding:1rem 2rem;border-radius:var(--border-radius);box-shadow:0 10px 30px rgba(0,0,0,.2);z-index:1000;opacity:0;transition:all .5s cubic-bezier(.175, .885, .32, 1.275);display:flex;align-items:center;gap:1rem;max-width:90%}.toast-notification.show{opacity:1;bottom:50px}.toast-notification.success{background:var(--secondary)}.toast-notification.error{background:var(--accent)}.toast-notification i{font-size:1.5rem}.submit-btn.loading{pointer-events:none;opacity:.8}.submit-btn.loading i{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{color:var(--accent);font-size:.8rem;margin-top:.3rem;opacity:0;height:0;transition:all .3s ease}.error-message.show{opacity:1;height:auto;margin-top:.5rem}.form-input.error{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,94,91,.2)}.required{color:var(--accent)}.toast-notification{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--primary);color:#fff;padding:1rem 2rem;border-radius:var(--border-radius);box-shadow:0 10px 30px rgba(0,0,0,.2);z-index:1000;opacity:0;transition:all .5s cubic-bezier(.175, .885, .32, 1.275);display:flex;align-items:center;gap:1rem;max-width:90%}.toast-notification.show{opacity:1;bottom:50px}.toast-notification.success{background:var(--secondary)}.toast-notification.error{background:var(--accent)}.toast-notification i{font-size:1.5rem}.submit-btn.loading{pointer-events:none;opacity:.8}.submit-btn.loading i{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.dropdown{position:relative;display:inline-block}.dropdown-toggle{display:flex;align-items:center;justify-content:space-between;min-width:220px}.dropdown-toggle i{margin-left:.5rem;transition:transform .3s ease}.dropdown-toggle[aria-expanded=true] i{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;min-width:100%;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:var(--text);text-align:left;list-style:none;background-color:var(--light);background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:var(--border-radius);box-shadow:0 10px 30px rgba(0,0,0,.1)}.dropdown-menu.show{display:block;animation:fadeIn .3s ease-out}.dropdown-item{display:flex;align-items:center;padding:.5rem 1.5rem;clear:both;font-weight:500;color:var(--text);text-decoration:none;white-space:nowrap;background-color:transparent;border:0;transition:all .2s ease}.dropdown-item:focus,.dropdown-item:hover{color:var(--accent);background-color:rgba(255,94,91,.05)}.flag-icon{width:20px;height:15px;margin-right:.75rem;border-radius:2px;box-shadow:0 0 3px rgba(0,0,0,.2)}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.dropdown{width:100%}.dropdown-toggle{width:100%}.dropdown-menu{width:100%}}.dropdown-menu{max-height:300px;overflow-y:auto;scrollbar-width:thin}.dropdown-menu::-webkit-scrollbar{width:6px}.dropdown-menu::-webkit-scrollbar-track{background:rgba(0,0,0,.05);border-radius:3px}.dropdown-menu::-webkit-scrollbar-thumb{background-color:var(--accent);border-radius:3px}@media (max-width:768px){.dropdown-menu{max-height:200px}}.dropdown-toggle{padding:.8rem 1.5rem;font-size:.95rem}.dropdown-menu{font-size:.95rem}.dropdown-item{padding:.4rem 1.25rem}.flag-icon{width:18px;height:13px;margin-right:.5rem}.btn.btn-primary.dropdown-toggle{padding:.8rem 1.5rem}@media (max-width:768px){.nav-links{padding:80px 1.5rem 1.5rem;gap:.5rem}.nav-link{padding:.8rem 0;font-size:.9rem;border-bottom:1px solid rgba(0,0,0,.05)}.contact-btn{margin-top:.5rem;padding:.8rem;font-size:.9rem}.language-switcher-mobile{padding:.8rem 0;margin-bottom:.5rem}.nav-links.active{padding-top:80px}.mobile-menu-btn{width:26px;height:20px}.mobile-menu-btn span{height:2.5px}.mobile-menu-btn.active span:first-child{transform:translateY(8px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.close-icon{font-size:1.5rem}}@media (max-width:480px){.nav-links{padding:70px 1rem 1rem}.nav-link{padding:.7rem 0}.contact-btn{padding:.7rem}}@media (max-width:480px){.contact-form,.demande-form,.form-container,.hero-content,.section{padding:20px!important;font-size:15px!important}h1,h2,h3{font-size:1.4rem!important;text-align:center}.btn,.button,input[type=submit]{width:100%!important;font-size:16px!important}.language-switcher{position:static!important;text-align:center;margin:10px 0}}.testimonials{background-color:#f9f9f9;position:relative;overflow:hidden}.testimonial-carousel{display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2rem 0;max-width:800px;margin:0 auto}.testimonial-slide{width:90%;max-width:600px;scroll-snap-align:start;background:var(--light);border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow);opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.16, 1, .3, 1);margin-bottom:1.5rem}.testimonial-slide.active{opacity:1;transform:translateY(0)}.student-photo{width:100px;height:100px;border-radius:50%;overflow:hidden;margin:0 auto 1.5rem;position:relative;border:3px solid var(--accent)}.student-photo img{width:100%;height:100%;object-fit:cover}.country-flag{position:absolute;bottom:-5px;right:-5px;width:30px;height:30px;border-radius:50%;overflow:hidden;border:2px solid var(--light)}.rating{color:var(--accent);margin-bottom:1rem;font-size:1.1rem}blockquote{font-style:italic;margin-bottom:1.5rem;position:relative;font-size:1.05rem;line-height:1.7;text-align:center}blockquote::after,blockquote::before{content:'"';font-size:2rem;color:var(--accent);opacity:.3;position:absolute}blockquote::before{top:-15px;left:-10px}blockquote::after{bottom:-30px;right:-10px}.student-info{text-align:center}.student-info strong{display:block;color:var(--primary);font-size:1.1rem;margin-bottom:.3rem}.student-info span{font-size:.9rem;color:var(--text-light)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.footer-bottom-links{background:linear-gradient(to right,var(--primary),var(--primary-light));padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.footer-bottom-links::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiIHBhdHRlcm5UcmFuc2Zvcm09InJvdGF0ZSg0NSkiPjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0icmdiYSgyNTUsMjU1LDI1NSwwLjAzKSIvPjwvcGF0dGVybj48L2RlZnM+PHJlY3QgZmlsbD0idXJsKCNwYXR0ZXJuKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==');opacity:.5}.footer-inline{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;position:relative;z-index:1}.copyright-text{color:rgba(255,255,255,.8);font-size:.9rem;display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.copyright-icon{color:var(--accent);font-weight:700;transform:translateY(-1px)}.copyright-year{font-family:'Chakra Petch',sans-serif;color:var(--light)}.copyright-name{font-weight:600;color:var(--light);position:relative}.copyright-name::after{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:var(--transition)}.copyright-text:hover .copyright-name::after{transform:scaleX(1);transform-origin:left}.inline-links{display:flex;flex-wrap:wrap;gap:1.5rem;margin:0;padding:0;list-style:none}.footer-link{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.8);text-decoration:none;font-size:.85rem}@media (max-width:768px){.footer-bottom-links{padding:1rem}.footer-inline{flex-direction:column;gap:1rem;align-items:center;text-align:center}.copyright-text{justify-content:center;margin-bottom:.5rem}.inline-links{justify-content:center;gap:1rem;margin-top:.5rem}.footer-link{font-size:.8rem;gap:.3rem}.link-icon{font-size:.8rem}}@media (max-width:480px){.inline-links{flex-direction:column;gap:.5rem}.footer-link{padding:.3rem 0}.copyright-text{flex-direction:column;gap:.2rem}}section h1{font-size:clamp(2rem, 5vw, 3.5rem);font-weight:700;line-height:1.2}
/* ========== UNIVERSITIES PAGE STYLES ========== */
.universities-hero {
  min-height: 760px;
  height: auto;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  padding: 150px 0 90px;
  background: linear-gradient(135deg, var(--primary), var(--primary-light));
  color: var(--light);
}

.universities-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background:
    radial-gradient(circle at 20% 25%, rgba(255, 94, 91, 0.22), transparent 34%),
    linear-gradient(135deg, rgba(15, 26, 61, 0.96), rgba(26, 43, 95, 0.88)),
    url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat;
  opacity: 1;
  z-index: 0;
}

.universities-hero .container {
  position: relative;
  z-index: 1;
}

.universities-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
  gap: 3rem;
  align-items: center;
}

.universities-hero .section-header {
  text-align: left;
  margin-bottom: 0;
}

.universities-hero .section-title,
.universities-hero .section-subtitle {
  color: var(--light);
}

.universities-hero .section-title::after {
  left: 0;
  transform: none;
}

.universities-hero .section-subtitle {
  margin-left: 0;
  margin-right: 0;
  opacity: 0.92;
}

.universities-hero-media {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  aspect-ratio: 4 / 3;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.32);
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.universities-hero-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15, 26, 61, 0.04), rgba(15, 26, 61, 0.22));
  pointer-events: none;
}

.universities-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 78% center;
}

html[dir="rtl"] .universities-hero .section-header {
  text-align: right;
}

html[dir="rtl"] .universities-hero .section-title::after {
  left: auto;
  right: 0;
}

html[dir="rtl"] .universities-hero .section-subtitle {
  margin-left: 0;
  margin-right: 0;
}

html[dir="rtl"] body {
  direction: rtl;
}

html[dir="rtl"] .hero-text,
html[dir="rtl"] .hero-title,
html[dir="rtl"] .hero-subtitle,
html[dir="rtl"] .section-subtitle,
html[dir="rtl"] .contact-text,
html[dir="rtl"] .info-hero p,
html[dir="rtl"] .info-section p,
html[dir="rtl"] .blog-card p,
html[dir="rtl"] blockquote {
  direction: rtl;
  unicode-bidi: plaintext;
}

html[dir="rtl"] .hero-text,
html[dir="rtl"] .hero-title,
html[dir="rtl"] .hero-subtitle {
  text-align: right;
}

html[dir="rtl"] bdi[dir="ltr"],
html[dir="rtl"] .latin-token {
  direction: ltr;
  unicode-bidi: isolate;
  display: inline-block;
}

@media (max-width: 980px) {
  .universities-hero {
    min-height: auto;
    padding: 135px 0 70px;
  }

  .universities-hero-layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .universities-hero .section-header {
    text-align: center;
  }

  .universities-hero .section-title::after,
  html[dir="rtl"] .universities-hero .section-title::after {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }

  .universities-hero .section-subtitle {
    margin-left: auto;
    margin-right: auto;
  }

  .universities-hero-media {
    order: -1;
    aspect-ratio: 16 / 10;
    border-radius: 18px;
  }
}

@media (max-width: 560px) {
  .universities-hero {
    padding: 120px 0 55px;
  }

  .universities-hero-media {
    aspect-ratio: 4 / 3;
  }

  .universities-hero-media img {
    object-position: 76% center;
  }
}

.search-filter {
  background: var(--light);
  border-radius: var(--border-radius);
  padding: 2rem;
  margin: -60px auto 40px;
  box-shadow: var(--box-shadow);
  max-width: 1000px;
  position: relative;
  z-index: 10;
}

.search-box {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.search-input {
  flex: 1;
  padding: 1rem;
  border: 1px solid #ddd;
  border-radius: var(--border-radius);
  font-family: inherit;
  font-size: 1rem;
}

.search-btn {
  background: var(--accent);
  color: var(--light);
  border: none;
  padding: 0 1.5rem;
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--transition);
}

.search-btn:hover {
  background: var(--accent-dark);
}

.filter-options {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.filter-group {
  flex: 1;
  min-width: 200px;
}

.filter-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: var(--primary);
}

.filter-select {
  width: 100%;
  padding: 0.8rem;
  border: 1px solid #ddd;
  border-radius: var(--border-radius);
  font-family: inherit;
}

.universities-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 2rem;
  margin-top: 3rem;
}

.university-card {
  background: var(--light);
  border-radius: var(--border-radius);
  overflow: hidden;
  box-shadow: var(--box-shadow);
  transition: var(--transition);
  position: relative;
}

.university-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

.university-image {
  height: 200px;
  overflow: hidden;
  position: relative;
}

.university-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

.university-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition);
}

.university-card:hover .university-image img {
  transform: scale(1.1);
}

.university-badge {
  position: absolute;
  top: 15px;
  right: 15px;
  background: var(--accent);
  color: var(--light);
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 600;
}

.university-content {
  padding: 1.5rem;
}

.university-name {
  font-size: 1.4rem;
  margin-bottom: 0.5rem;
  color: var(--primary);
}

.university-location {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--text-light);
  margin-bottom: 1rem;
  font-size: 0.9rem;
}

.university-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid rgba(0,0,0,0.1);
}

.stat {
  text-align: center;
}

.stat-number {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--accent);
  margin-bottom: 0.3rem;
}

.stat-label {
  font-size: 0.8rem;
  color: var(--text-light);
}

.university-programs {
  margin-bottom: 1.5rem;
}

.programs-title {
  font-size: 1rem;
  margin-bottom: 0.8rem;
  color: var(--primary);
}

.programs-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.program-tag {
  background: rgba(15, 26, 61, 0.05);
  color: var(--primary);
  padding: 0.3rem 0.8rem;
  border-radius: 20px;
  font-size: 0.8rem;
  transition: var(--transition);
}

.program-tag:hover {
  background: var(--accent);
  color: var(--light);
}

.university-cta {
  text-align: center;
}

.partnership-benefits {
  background: linear-gradient(135deg, var(--primary), var(--primary-light));
  color: var(--light);
  padding: 80px 0;
  margin-top: 80px;
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 2rem;
  margin-top: 3rem;
}

.benefit-card {
  text-align: center;
  padding: 2rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: var(--border-radius);
  transition: var(--transition);
}

.benefit-card:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.15);
}

.benefit-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  color: var(--accent);
}

.benefit-title {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.benefit-description {
  opacity: 0.9;
}

.pagination {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 3rem;
}

.pagination-item {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--light);
  color: var(--primary);
  text-decoration: none;
  font-weight: 600;
  transition: var(--transition);
  border: 1px solid rgba(15, 26, 61, 0.1);
}

.pagination-item:hover,
.pagination-item.active {
  background: var(--accent);
  color: var(--light);
  border-color: var(--accent);
}

@media (max-width: 768px) {
  .search-box {
    flex-direction: column;
  }
  
  .universities-grid {
    grid-template-columns: 1fr;
  }
  
  .filter-group {
    min-width: 100%;
  }
  
  .search-filter {
    margin: -40px 1rem 40px;
  }
}

/* Styles pour la section contact mise à jour */
.social-links {
  margin-top: 2rem;
}

.social-links h4 {
  margin-bottom: 1rem;
  color: var(--light);
}

.social-links .footer-social {
  justify-content: flex-start;
}

.contact-item-content p {
  color: var(--light);
  opacity: 0.9;
  margin: 0;
}

/* Styles pour la section carte et itinéraire */
.map-section {
  margin-top: 4rem;
  padding-top: 3rem;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.map-container {
  background: var(--light);
  border-radius: var(--border-radius);
  padding: 2.5rem;
  box-shadow: var(--box-shadow);
}

.map-header {
  text-align: center;
  margin-bottom: 2rem;
}

.map-header h3 {
  color: var(--primary);
  font-size: 1.8rem;
  margin-bottom: 0.5rem;
}

.map-header p {
  color: var(--text-light);
  font-size: 1.1rem;
}

.map-wrapper {
  margin-bottom: 2rem;
  border-radius: var(--border-radius);
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.directions-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  margin: 0 auto;
  padding: 1rem 2.5rem;
  font-weight: 600;
  transition: var(--transition);
}

.directions-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 15px 30px rgba(255, 94, 91, 0.4);
}

/* Styles pour la section contact mise à jour */
.social-links {
  margin-top: 2rem;
}

.social-links h4 {
  margin-bottom: 1rem;
  color: var(--light);
}

.social-links .footer-social {
  justify-content: flex-start;
}

.contact-item-content p {
  color: var(--light);
  opacity: 0.9;
  margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
  .map-container {
    padding: 1.5rem;
  }
  
  .map-header h3 {
    font-size: 1.5rem;
  }
  
  .map-wrapper iframe {
    height: 300px;
  }
  
  .directions-btn {
    width: 100%;
    padding: 1rem;
  }
}

/* ========== STATISTICS SECTION STYLES ========== */
.statistics-section {
  background: linear-gradient(135deg, var(--primary), var(--primary-light));
  color: var(--light);
  padding: var(--section-spacing) 0;
  position: relative;
  overflow: hidden;
}

.statistics-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('/assets/images/universities/universities-italy-hero-20260629-desktop-1600.webp') center/cover no-repeat;
  opacity: 0.1;
  z-index: 0;
}

.statistics-section .container {
  position: relative;
  z-index: 1;
}

.statistics-section .section-header {
  margin-bottom: 3rem;
}

.statistics-section .section-title {
  color: var(--light);
}

.statistics-section .section-title span {
  color: #FFD700; /* Gold color */
}

.statistics-section .section-subtitle {
  color: rgba(255, 255, 255, 0.8);
}

.statistics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto;
}

.statistics-item {
  text-align: center;
  padding: 2rem 1rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: var(--border-radius);
  transition: var(--transition);
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.statistics-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  background: rgba(255, 215, 0, 0.1);
  transition: var(--transition);
  z-index: 0;
}

.statistics-item:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}

.statistics-item:hover::before {
  height: 100%;
}

.statistics-number {
  font-size: 3.5rem;
  font-weight: 700;
  color: #FFD700; /* Gold color */
  margin-bottom: 0.5rem;
  font-family: 'Chakra Petch', sans-serif;
  position: relative;
  z-index: 1;
  text-shadow: 0 0 10px rgba(255, 215, 0, 0.3);
}

.statistics-label {
  font-size: 1.1rem;
  color: var(--light);
  position: relative;
  z-index: 1;
  opacity: 0.9;
}

/* Animation pour les chiffres */
@keyframes countUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.statistics-number.animated {
  animation: countUp 1s ease-out forwards;
}

/* Responsive Design */
@media (max-width: 768px) {
  .statistics-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }
  
  .statistics-number {
    font-size: 2.8rem;
  }
  
  .statistics-label {
    font-size: 1rem;
  }
}

@media (max-width: 480px) {
  .statistics-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  
  .statistics-number {
    font-size: 2.5rem;
  }
  
  .statistics-label {
    font-size: 0.95rem;
  }
  
  .statistics-item {
    padding: 1.5rem 1rem;
  }
}.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2.25rem;margin-bottom:2rem;border-radius:var(--border-radius);background:linear-gradient(135deg,rgba(255,94,91,.18),rgba(0,193,179,.12));border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 40px rgba(0,0,0,.18)}.footer-eyebrow{display:inline-flex;margin-bottom:.75rem;color:var(--accent);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.footer-cta h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:.75rem}.footer-cta p{max-width:620px;color:rgba(255,255,255,.82);margin:0}.footer-cta-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.footer-whatsapp{border-color:rgba(255,255,255,.5);color:var(--light)}.footer-whatsapp:hover{border-color:var(--secondary);background:var(--secondary);color:var(--primary)}.footer-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:3rem}.footer-trust-item{display:flex;align-items:center;gap:.85rem;padding:1rem 1.25rem;border-radius:var(--border-radius);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.footer-trust-item strong{color:var(--accent);font-family:'Chakra Petch',sans-serif;font-size:1.8rem;line-height:1;white-space:nowrap}.footer-trust-item span{color:rgba(255,255,255,.82);font-size:.95rem;line-height:1.35}.footer-contact-list{display:grid;gap:.8rem;list-style:none;margin:0 0 1.5rem;padding:0}.footer-contact-list li{display:flex;align-items:flex-start;gap:.75rem;color:rgba(255,255,255,.8);font-size:.92rem;line-height:1.45}.footer-contact-list i{color:var(--accent);margin-top:.2rem;width:16px;text-align:center;flex-shrink:0}.footer-contact-list a{color:rgba(255,255,255,.88);text-decoration:none;transition:var(--transition)}.footer-contact-list a:hover{color:var(--accent)}.footer-resource-link{display:inline-flex;margin-top:1rem;color:var(--secondary);font-weight:600;font-size:.9rem;text-decoration:none;transition:var(--transition)}.footer-resource-link:hover{color:var(--accent)}@media (max-width:900px){.footer-cta{flex-direction:column;align-items:flex-start}.footer-cta-actions{width:100%;justify-content:flex-start}.footer-trust-grid{grid-template-columns:1fr}}@media (max-width:480px){.footer-cta{padding:1.5rem}.footer-cta-actions,.footer-cta-actions .btn{width:100%}.footer-trust-item{align-items:flex-start}}.footer-checklist-btn{margin-top:1rem;box-shadow:0 10px 24px rgba(255,94,91,.24)}
.process-roadmap{background:#f8fafc}.process-steps-detailed{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch}.process-step-card{background:var(--light);border:1px solid rgba(15,26,61,.08);border-radius:16px;padding:2.25rem;overflow:hidden}.process-step-card::before{top:18px;left:auto;inset-inline-end:18px;box-shadow:0 10px 20px rgba(255,94,91,.25)}.process-step-card .step-icon{width:56px;height:56px;border-radius:14px;background:rgba(255,94,91,.1);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.25rem}.process-step-card .step-topline{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.7rem}.process-step-card h3::after{left:auto;inset-inline-start:0}.step-deliverables{list-style:none;display:grid;gap:.65rem;margin-top:1.15rem}.step-deliverables li{position:relative;padding-inline-start:1.35rem;color:var(--text-light);font-size:.95rem}.step-deliverables li::before{content:"✓";position:absolute;inset-inline-start:0;top:0;color:var(--accent);font-weight:900}.process-step-wide{grid-column:span 2}.profile-documents{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:1.2rem}.profile-doc-card{background:#f8fafc;border:1px solid rgba(15,26,61,.08);border-radius:14px;padding:1.1rem}.profile-doc-card h4{color:var(--primary);font-size:1.05rem;margin-bottom:.8rem}.profile-doc-card ul{padding-inline-start:1.1rem}.profile-doc-card li{color:var(--text-light);margin-bottom:.45rem;line-height:1.55}.process-official{background:var(--light);padding:var(--section-spacing) 2rem}.visa-facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;max-width:1200px;margin:0 auto 2rem}.visa-fact{background:#f8fafc;border:1px solid rgba(15,26,61,.08);border-radius:16px;padding:1.35rem}.visa-fact strong{display:block;color:var(--accent);font-family:'Chakra Petch',sans-serif;font-size:1.45rem;line-height:1.1;margin-bottom:.5rem}.visa-fact span{color:var(--text-light);line-height:1.65}.process-alert{max-width:1100px;margin:0 auto 2rem;display:flex;gap:1rem;align-items:flex-start;background:#fff7ed;border:1px solid rgba(255,94,91,.18);border-inline-start:4px solid var(--accent);border-radius:14px;padding:1.2rem;color:#7c2d12}.process-alert i{color:var(--accent);font-size:1.25rem;margin-top:.2rem}.process-alert p{margin:0;line-height:1.7}.process-cta-panel{max-width:1100px;margin:0 auto;background:linear-gradient(135deg,var(--primary),var(--primary-light));border-radius:18px;padding:2rem;display:flex;justify-content:space-between;gap:1.5rem;align-items:center;color:var(--light);box-shadow:var(--box-shadow)}.process-cta-panel h3{font-size:clamp(1.4rem,3vw,2.1rem);margin-bottom:.5rem}.process-cta-panel p{opacity:.86;max-width:680px}.process-cta-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.process-cta-panel .btn-outline{color:var(--light)}@media (max-width:900px){.process-step-wide{grid-column:span 1}.process-cta-panel{align-items:flex-start;flex-direction:column}.process-cta-actions{justify-content:flex-start;width:100%}}@media (max-width:560px){.process-step-card{padding:1.6rem}.process-step-card::before{width:34px;height:34px;top:14px;inset-inline-end:14px}.visa-facts-grid{grid-template-columns:1fr}.process-alert{flex-direction:column}.process-cta-actions,.process-cta-actions .btn{width:100%}}
.services-hero .hero-subtitle{max-width:680px}.services-catalog{background:#f8fafc}.service-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:1.5rem;max-width:1240px;margin:0 auto}.service-module-card{background:var(--light);border:1px solid rgba(15,26,61,.08);border-radius:16px;padding:2rem;box-shadow:0 10px 26px rgba(15,26,61,.06);transition:var(--transition);display:flex;flex-direction:column;min-height:100%}.service-module-card:hover{transform:translateY(-8px);box-shadow:0 18px 34px rgba(15,26,61,.1)}.service-module-icon{width:58px;height:58px;border-radius:16px;background:rgba(255,94,91,.1);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.45rem;margin-bottom:1rem}.service-module-tag{display:inline-flex;width:fit-content;align-items:center;color:var(--accent);background:rgba(255,94,91,.08);border:1px solid rgba(255,94,91,.12);border-radius:999px;padding:.35rem .7rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.85rem}.service-module-card h3{color:var(--primary);font-size:1.35rem;margin-bottom:.85rem}.service-module-card h4{color:var(--primary);font-size:1rem;margin:1.15rem 0 .65rem}.service-module-card p,.service-module-card li{color:var(--text-light);line-height:1.65}.service-module-card ul{list-style:none;display:grid;gap:.55rem;margin-bottom:1rem}.service-module-card li{position:relative;padding-inline-start:1.35rem}.service-module-card li::before{content:"✓";position:absolute;inset-inline-start:0;top:0;color:var(--accent);font-weight:900}.service-output{background:#f8fafc;border:1px solid rgba(15,26,61,.08);border-radius:12px;padding:.9rem 1rem;color:var(--text-light);line-height:1.6;margin:auto 0 1rem}.service-output strong{color:var(--primary)}.service-documents{background:var(--light)}.service-proof{background:#f8fafc}.service-proof-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:2rem;align-items:center;max-width:1100px;margin:0 auto 2rem}.service-proof-grid h2{color:var(--primary);font-size:clamp(1.8rem,4vw,3rem);margin:.7rem 0 1rem}.service-proof-grid p{color:var(--text-light);font-size:1.08rem;line-height:1.75}.service-proof-list{display:grid;gap:1rem}.service-proof-list div{display:flex;align-items:center;gap:1rem;background:var(--light);border:1px solid rgba(15,26,61,.08);border-radius:14px;padding:1rem 1.1rem;box-shadow:0 8px 22px rgba(15,26,61,.05)}.service-proof-list strong{color:var(--accent);font-family:'Chakra Petch',sans-serif;font-size:1.8rem;line-height:1;white-space:nowrap}.service-proof-list span{color:var(--text-light);line-height:1.45}@media (max-width:900px){.service-proof-grid{grid-template-columns:1fr}}@media (max-width:560px){.service-module-grid{grid-template-columns:1fr}.service-module-card{padding:1.45rem}.service-proof-list div{align-items:flex-start}}.language-switcher-desktop,.language-switcher-mobile{gap:.25rem}.language-btn{white-space:nowrap;font-size:.84rem;padding:.32rem .45rem}.language-separator{margin:0 .15rem}.header-container{gap:1.25rem}html[lang^=fr] .track-btn-header{flex:0 0 auto;margin-left:auto;margin-right:1.35rem}@media (min-width:769px) and (max-width:1240px){.nav-links{gap:1.15rem}html[lang^=fr] .track-btn-header{margin-right:1rem}.nav-link{font-size:.9rem}.contact-btn{padding:.65rem 1.15rem}}@media (min-width:769px){.hero .scroll-indicator{bottom:112px;opacity:.85}}
@media (max-width:768px){.hero{padding-top:148px!important}.hero-image{margin-top:.75rem}}

/* ========== MOBILE VISUAL POLISH ========== */
@media (max-width: 768px) {
  html {
    scroll-padding-top: 94px;
  }

  body {
    background: #f8fafc;
  }

  header {
    height: 104px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 8px 26px rgba(15, 26, 61, 0.08);
  }

  .header-container {
    min-height: 104px;
    padding: 0.45rem 1rem 0.55rem;
    gap: 0.7rem;
  }

  .logo {
    min-width: 0;
    padding: 0;
  }

  .logo-img {
    height: 72px !important;
    top: 0 !important;
    margin-right: 0.55rem !important;
  }

  .logo-tagline {
    position: static !important;
    margin: 0 !important;
    max-width: 175px;
    font-size: 0.58rem !important;
    letter-spacing: 1.05px !important;
    line-height: 1.25;
    white-space: normal;
  }

  .logo-tagline::after {
    bottom: -8px;
    height: 1px;
    opacity: 0.75;
  }

  .mobile-menu-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px;
    background: rgba(255, 94, 91, 0.08);
  }

  .mobile-menu-btn span,
  .mobile-menu-btn .menu-icon {
    left: 8px;
    width: 26px;
  }

  .hero {
    min-height: auto !important;
    height: auto !important;
    padding: 126px 0 42px !important;
    background:
      radial-gradient(circle at 20% 18%, rgba(255, 94, 91, 0.18), transparent 30%),
      radial-gradient(circle at 84% 88%, rgba(0, 193, 179, 0.12), transparent 28%),
      linear-gradient(155deg, #101b3f 0%, #243567 100%);
  }

  .hero::before {
    background:
      linear-gradient(155deg, rgba(15, 26, 61, 0.92), rgba(36, 53, 103, 0.88)),
      url('/assets/images/heroindex-1200.webp') center/cover no-repeat;
    opacity: 0.18;
    z-index: 0;
  }

  .hero .container {
    position: relative;
    z-index: 1;
    padding: 0 1.05rem;
  }

  .hero-content {
    display: flex !important;
    flex-direction: column;
    gap: 1.35rem;
    padding: 0 !important;
    align-items: stretch;
  }

  .hero-image {
    order: 0;
    width: 100%;
    max-width: 390px;
    height: auto !important;
    aspect-ratio: 1.18;
    margin: 0 auto !important;
    border-radius: 18px;
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.28);
  }

  .hero-img {
    object-position: center;
  }

  .hero-text {
    order: 1;
    width: 100%;
    max-width: 430px;
    margin: 0 auto;
    color: var(--light);
    text-align: left;
  }

  .hero-title,
  html[lang="fr"] .hero-title-fr,
  html[lang="ar-TN"] .hero-title-ar {
    font-size: clamp(1.72rem, 6.8vw, 2.12rem) !important;
    line-height: 1.1;
    margin-bottom: 0.85rem;
    text-align: left !important;
    text-wrap: balance;
  }

  .hero-title span::after {
    bottom: 0.02em;
    height: 0.36em;
  }

  .hero-subtitle,
  html[lang="fr"] .hero-subtitle-fr,
  html[lang="en"] .hero-subtitle-en,
  html[lang="ar-TN"] .hero-subtitle-ar {
    font-size: 0.92rem !important;
    line-height: 1.62;
    margin-bottom: 1.15rem;
    max-width: none;
    opacity: 0.94;
    text-align: left;
  }

  .hero-cta {
    width: 100%;
    gap: 0.8rem;
    margin-top: 1rem;
  }

  .hero-cta .btn {
    width: 100%;
    min-height: 56px;
    justify-content: center;
    border-radius: 15px;
    padding: 0.95rem 1rem;
    font-size: 1rem;
    text-align: center;
  }

  .hero-cta .btn-outline {
    color: var(--light);
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.08);
  }

  .trust-badges {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.65rem;
    justify-content: stretch;
    margin-top: 1rem;
  }

  .trust-item {
    align-items: flex-start;
    gap: 0.7rem;
    padding: 0.72rem 0.85rem;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.88rem;
  }

  .trust-item i {
    margin-top: 0.15rem;
  }

  .scroll-indicator {
    display: flex !important;
    position: absolute !important;
    top: 50%;
    right: 1.05rem;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
    z-index: 3;
    opacity: 0.74;
    font-size: 0.78rem;
    pointer-events: none;
    animation: none !important;
  }

  .scroll-indicator .mouse {
    width: 23px;
    height: 38px;
    margin-top: 8px;
    border-color: rgba(255, 255, 255, 0.86);
  }

  .scroll-indicator .wheel {
    background: rgba(255, 255, 255, 0.9);
  }

  html[dir="rtl"] .scroll-indicator {
    left: 1.05rem !important;
    right: auto !important;
  }

  .floating-track-btn {
    width: 56px !important;
    height: 56px !important;
    right: 18px !important;
    bottom: calc(18px + env(safe-area-inset-bottom)) !important;
    opacity: 1;
    box-shadow: 0 10px 28px rgba(255, 94, 91, 0.42);
  }

  .floating-track-btn:hover,
  .floating-track-btn:focus {
    width: 56px !important;
    height: 56px !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }

  .floating-track-btn .btn-text {
    display: none !important;
  }

  html[dir="rtl"] .hero-text,
  html[dir="rtl"] .hero-title,
  html[dir="rtl"] .hero-subtitle {
    text-align: right !important;
  }
}

@media (max-width: 420px) {
  .hero .container {
    padding: 0 1rem;
  }

  .hero-image {
    max-width: 340px;
    aspect-ratio: 1.14;
  }

  .hero-title,
  html[lang="fr"] .hero-title-fr,
  html[lang="ar-TN"] .hero-title-ar {
    font-size: clamp(1.58rem, 7.1vw, 1.92rem) !important;
  }

  .hero-subtitle,
  html[lang="fr"] .hero-subtitle-fr,
  html[lang="en"] .hero-subtitle-en,
  html[lang="ar-TN"] .hero-subtitle-ar {
    font-size: 0.89rem !important;
    line-height: 1.6;
  }
}

/* ========== MOBILE HOME HERO 2026 ========== */
@media (max-width: 768px) {
  header {
    height: 92px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    backdrop-filter: blur(18px);
    box-shadow: 0 10px 30px rgba(8, 18, 46, 0.1) !important;
  }

  .header-container {
    min-height: 92px !important;
    padding: 0.35rem 1rem !important;
  }

  .logo-img {
    height: 76px !important;
    width: auto !important;
    margin-right: 0 !important;
    transform: scale(1.08);
    transform-origin: left center;
  }

  .logo-tagline {
    display: none !important;
  }

  .track-btn-header {
    transform: scale(0.9);
  }

  .mobile-menu-btn {
    width: 44px !important;
    height: 44px !important;
    border-radius: 18px !important;
    background: rgba(255, 94, 91, 0.1) !important;
    box-shadow: 0 10px 24px rgba(255, 94, 91, 0.16);
  }

  .hero {
    min-height: 100svh !important;
    height: auto !important;
    align-items: center !important;
    padding: 104px 0 34px !important;
    isolation: isolate;
    background: #08122e !important;
  }

  .hero::before {
    background:
      linear-gradient(180deg, rgba(8, 18, 46, 0.2) 0%, rgba(8, 18, 46, 0.78) 44%, rgba(8, 18, 46, 0.97) 100%),
      linear-gradient(120deg, rgba(255, 94, 91, 0.32), transparent 46%),
      url('/assets/images/heroindex-768.webp') center 22% / cover no-repeat !important;
    opacity: 1 !important;
    z-index: 0 !important;
    transform: scale(1.02);
  }

  .hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background:
      radial-gradient(circle at 18% 20%, rgba(255, 94, 91, 0.36), transparent 26%),
      radial-gradient(circle at 88% 72%, rgba(0, 193, 179, 0.24), transparent 28%),
      linear-gradient(180deg, transparent 0%, rgba(10, 21, 55, 0.62) 62%, #08122e 100%);
  }

  .hero .container {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 0 1.05rem !important;
  }

  .hero-content {
    display: block !important;
    padding: 0 !important;
  }

  .hero-image {
    display: none !important;
  }

  .hero-text {
    max-width: 420px !important;
    margin: 0 auto !important;
    color: #fff !important;
    text-align: left !important;
  }

  .hero-text::before {
    content: 'Études en Italie • accompagnement';
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin-bottom: 0.9rem;
    padding: 0.48rem 0.78rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(16px);
    font-family: 'Chakra Petch', sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  html[lang="en"] .hero-text::before {
    content: 'Study in Italy • support';
  }

  html[lang="ar-TN"] .hero-text::before {
    content: 'الدراسة في إيطاليا • مرافقة';
    letter-spacing: 0;
  }

  .hero-title,
  html[lang="fr"] .hero-title-fr,
  html[lang="ar-TN"] .hero-title-ar {
    max-width: 10.8em;
    margin-bottom: 0.85rem !important;
    color: #fff !important;
    font-size: clamp(2.08rem, 8.2vw, 2.72rem) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.01em;
    text-align: left !important;
    text-shadow: 0 16px 42px rgba(0, 0, 0, 0.34);
  }

  .hero-title span {
    color: #ff6b68 !important;
  }

  .hero-title span::after {
    bottom: 0.03em !important;
    height: 0.28em !important;
    background: rgba(255, 94, 91, 0.24) !important;
  }

  .hero-subtitle,
  html[lang="fr"] .hero-subtitle-fr,
  html[lang="en"] .hero-subtitle-en,
  html[lang="ar-TN"] .hero-subtitle-ar {
    display: -webkit-box;
    max-width: 33rem !important;
    margin-bottom: 1.05rem !important;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    color: rgba(255, 255, 255, 0.91) !important;
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
    text-align: left !important;
  }

  .hero-cta {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 0.72rem !important;
    margin-top: 1.05rem !important;
  }

  .hero-cta .btn {
    min-height: 54px !important;
    border-radius: 18px !important;
    font-size: 0.96rem !important;
    justify-content: center !important;
  }

  .hero-cta .btn-primary {
    box-shadow: 0 18px 38px rgba(255, 94, 91, 0.34) !important;
  }

  .hero-cta .btn-outline {
    border-color: rgba(255, 255, 255, 0.32) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
    backdrop-filter: blur(16px);
  }

  .trust-badges {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem !important;
    margin-top: 0.92rem !important;
  }

  .trust-item {
    min-height: 82px;
    flex-direction: column;
    justify-content: center;
    align-items: center !important;
    gap: 0.35rem !important;
    padding: 0.68rem 0.45rem !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.11) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.9) !important;
    text-align: center;
    backdrop-filter: blur(18px);
  }

  .trust-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin: 0 !important;
    border-radius: 50%;
    background: rgba(255, 94, 91, 0.18);
    color: #ff6b68 !important;
    font-size: 0.82rem;
  }

  .trust-item span {
    display: block;
    width: 100%;
    overflow: hidden;
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.68rem !important;
    line-height: 1.2;
  }

  .trust-item strong {
    display: block;
    margin: 0 0 0.08rem !important;
    color: #fff !important;
    font-size: 1.05rem !important;
    line-height: 1;
  }

  .scroll-indicator {
    display: none !important;
  }

  .floating-track-btn {
    width: 48px !important;
    height: 48px !important;
    right: 16px !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 12px 32px rgba(255, 94, 91, 0.34) !important;
  }

  html[dir="rtl"] .hero-text,
  html[dir="rtl"] .hero-title,
  html[dir="rtl"] .hero-subtitle {
    text-align: right !important;
  }

  html[dir="rtl"] .hero-text::before {
    margin-right: 0;
  }
}

@media (max-width: 420px) {
  .hero {
    padding-top: 100px !important;
  }

  .hero-title,
  html[lang="fr"] .hero-title-fr,
  html[lang="ar-TN"] .hero-title-ar {
    font-size: clamp(1.98rem, 8.6vw, 2.42rem) !important;
  }

  .hero-subtitle,
  html[lang="fr"] .hero-subtitle-fr,
  html[lang="en"] .hero-subtitle-en,
  html[lang="ar-TN"] .hero-subtitle-ar {
    font-size: 0.93rem !important;
    -webkit-line-clamp: 4;
  }
}

.footer-hours-item {
  align-items: flex-start;
}

.footer-hours {
  display: grid;
  gap: 0.2rem;
  width: 100%;
}

.footer-hours-line {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem;
}

.footer-hours-label {
  color: rgba(255, 255, 255, 0.9);
  font-weight: 700;
}

.footer-hours-time {
  direction: ltr;
  unicode-bidi: isolate;
  white-space: nowrap;
}

.service-proof-list.proof-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.trust-badges {
  flex-wrap: wrap;
}

.service-proof-list.proof-metrics div {
  min-height: 82px;
}

.service-proof-list.proof-metrics {
  align-items: stretch;
  width: min(100%, 620px);
  justify-self: end;
}

.service-proof-list.proof-metrics > div {
  display: grid;
  grid-template-columns: minmax(74px, auto) minmax(0, 1fr);
  align-items: center;
  column-gap: 1.05rem;
  min-height: 116px;
  padding: 1.25rem 1.35rem;
  overflow: hidden;
}

.service-proof-list.proof-metrics > div strong {
  display: block;
  min-width: 0;
  font-size: clamp(1.95rem, 2.4vw, 2.35rem);
  line-height: 1;
  letter-spacing: -0.03em;
}

.service-proof-list.proof-metrics > div span {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
  line-height: 1.48;
}

@media (min-width: 901px) and (max-width: 1180px) {
  .service-proof-grid {
    grid-template-columns: minmax(0, 1fr) minmax(430px, 0.85fr);
    max-width: 1180px;
  }

  .service-proof-list.proof-metrics > div {
    grid-template-columns: 1fr;
    align-content: center;
    row-gap: 0.65rem;
    min-height: 126px;
  }
}

@media (min-width: 1181px) {
  .service-proof-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(600px, 0.95fr);
    max-width: 1320px;
    gap: 2.5rem;
  }
}

@media (max-width: 900px) {
  .service-proof-list.proof-metrics {
    width: 100%;
    justify-self: stretch;
  }

  .service-proof-list.proof-metrics > div {
    grid-template-columns: minmax(72px, auto) minmax(0, 1fr);
    min-height: auto;
  }
}

@media (max-width: 520px) {
  .service-proof-list.proof-metrics > div {
    grid-template-columns: 1fr;
    row-gap: 0.55rem;
  }
}

.study-requirements {
  background: #f8fafc;
  padding: var(--section-spacing) 2rem;
}

.requirement-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  max-width: 1200px;
  margin: 0 auto;
}

.requirement-card {
  background: var(--light);
  border: 1px solid rgba(15, 26, 61, 0.08);
  border-radius: 18px;
  padding: 2rem;
  box-shadow: 0 14px 34px rgba(15, 26, 61, 0.07);
}

.requirement-card h3 {
  color: var(--primary);
  font-size: 1.45rem;
  margin: 0.7rem 0 1rem;
}

.requirement-card h4 {
  color: var(--primary);
  font-size: 1rem;
  margin: 1.15rem 0 0.45rem;
}

.requirement-card p,
.requirement-card li {
  color: var(--text-light);
  line-height: 1.7;
}

.requirement-card ul {
  display: grid;
  gap: 0.55rem;
  margin: 1rem 0 0;
  padding-inline-start: 1.1rem;
}

.requirement-highlight {
  margin-top: 1rem;
  border-radius: 14px;
  padding: 1rem;
  background: rgba(0, 193, 179, 0.1);
  border: 1px solid rgba(0, 193, 179, 0.18);
  color: #0f766e;
  font-weight: 800;
  line-height: 1.65;
}

.requirement-warning {
  margin-top: 1rem;
  border-radius: 14px;
  padding: 1rem;
  background: #fff7ed;
  border: 1px solid rgba(255, 94, 91, 0.18);
  color: #7c2d12;
  font-weight: 800;
  line-height: 1.65;
}

@media (max-width: 900px) {
  .requirement-grid,
  .service-proof-list.proof-metrics {
    grid-template-columns: 1fr;
  }

  .requirement-card {
    padding: 1.45rem;
  }
}

.logo-img,
.footer-logo-img {
  width: auto !important;
  max-width: 100%;
  object-fit: contain;
}

.footer-logo-img {
  max-width: 180px;
}

/* ========== SOCIAL + WHATSAPP REFRESH ========== */
.footer-social {
  gap: 0.85rem;
  align-items: center;
  flex-wrap: wrap;
}

.social-link {
  --social-bg: linear-gradient(135deg, var(--accent), var(--secondary));
  width: 52px;
  height: 52px;
  border-radius: 16px;
  overflow: visible;
  isolation: isolate;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

.social-link::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  opacity: 0.95;
  background: var(--social-bg);
  transform: scale(0.88);
  transition: transform 240ms ease, box-shadow 240ms ease, filter 240ms ease;
}

.social-link::after {
  content: attr(aria-label);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 10px);
  z-index: 3;
  transform: translate(-50%, 8px);
  opacity: 0;
  pointer-events: none;
  padding: 0.42rem 0.68rem;
  border-radius: 999px;
  background: rgba(5, 10, 26, 0.94);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
  transition: opacity 200ms ease, transform 200ms ease;
}

.social-link i {
  z-index: 1;
  color: #fff;
  font-size: 1.24rem;
  filter: drop-shadow(0 8px 14px rgba(0, 0, 0, 0.24));
}

.social-link:hover,
.social-link:focus-visible {
  color: #fff;
  transform: translateY(-6px) scale(1.04);
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.26);
}

.social-link:hover::before,
.social-link:focus-visible::before {
  transform: scale(1);
  filter: saturate(1.14);
  box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.08), 0 16px 34px rgba(0, 0, 0, 0.26);
}

.social-link:hover::after,
.social-link:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

.social-link[aria-label="Facebook"] {
  --social-bg: linear-gradient(135deg, #1877f2, #0b4aa2);
}

.social-link[aria-label="Instagram"] {
  --social-bg: linear-gradient(135deg, #f58529 0%, #dd2a7b 48%, #8134af 100%);
}

.social-link[aria-label="TikTok"] {
  --social-bg: linear-gradient(135deg, #010101 0%, #111827 52%, #00f2ea 140%);
}

.social-link[aria-label="LinkedIn"] {
  --social-bg: linear-gradient(135deg, #0a66c2, #004182);
}

.footer-whatsapp,
.contact-whatsapp-btn,
.info-actions a[href*="wa.me"],
.info-nav a[href*="wa.me"],
.btn[href*="wa.me"],
.assist-btn[href*="wa.me"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: transparent !important;
  background: linear-gradient(135deg, #25d366 0%, #00b894 52%, #128c7e 100%) !important;
  color: #fff !important;
  box-shadow: 0 18px 38px rgba(18, 140, 126, 0.28);
}

.footer-whatsapp::before,
.contact-whatsapp-btn::before,
.info-actions a[href*="wa.me"]::before,
.info-nav a[href*="wa.me"]::before,
.btn[href*="wa.me"]::before,
.assist-btn[href*="wa.me"]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.35) 46%, transparent 72%);
  transform: translateX(-120%);
  transition: transform 650ms ease;
}

.footer-whatsapp:hover,
.footer-whatsapp:focus-visible,
.contact-whatsapp-btn:hover,
.contact-whatsapp-btn:focus-visible,
.info-actions a[href*="wa.me"]:hover,
.info-actions a[href*="wa.me"]:focus-visible,
.info-nav a[href*="wa.me"]:hover,
.info-nav a[href*="wa.me"]:focus-visible,
.btn[href*="wa.me"]:hover,
.btn[href*="wa.me"]:focus-visible,
.assist-btn[href*="wa.me"]:hover,
.assist-btn[href*="wa.me"]:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 26px 52px rgba(18, 140, 126, 0.38);
}

.footer-whatsapp:hover::before,
.footer-whatsapp:focus-visible::before,
.contact-whatsapp-btn:hover::before,
.contact-whatsapp-btn:focus-visible::before,
.info-actions a[href*="wa.me"]:hover::before,
.info-actions a[href*="wa.me"]:focus-visible::before,
.info-nav a[href*="wa.me"]:hover::before,
.info-nav a[href*="wa.me"]:focus-visible::before,
.btn[href*="wa.me"]:hover::before,
.btn[href*="wa.me"]:focus-visible::before,
.assist-btn[href*="wa.me"]:hover::before,
.assist-btn[href*="wa.me"]:focus-visible::before {
  transform: translateX(120%);
}

a[href*="wa.me"] .fa-whatsapp {
  width: 1.35em;
  height: 1.35em;
  border-radius: 50%;
  color: #fff;
  filter: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.22));
}

@media (max-width: 560px) {
  .footer-social {
    gap: 0.7rem;
  }

  .social-link {
    width: 48px;
    height: 48px;
    border-radius: 14px;
  }

  .social-link::after {
    display: none;
  }
}

/* ========== PREMIUM HEADER + HOME HERO REFRESH ========== */
header {
  height: auto !important;
  padding: 14px clamp(12px, 2vw, 28px) !important;
  background: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

header .header-container {
  width: min(100%, 1320px);
  min-height: 90px;
  padding: 0.62rem 0.82rem 0.62rem 1.05rem !important;
  gap: 0.72rem !important;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 44px rgba(8, 18, 46, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(22px);
}

header.scrolled .header-container {
  min-height: 82px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 16px 40px rgba(8, 18, 46, 0.14);
}

header .logo {
  flex: 0 0 auto;
  min-width: 0;
  padding: 0 !important;
}

header .logo::before,
header .logo-tagline::after,
header .nav-link::after {
  display: none !important;
}

header .logo-img {
  width: auto !important;
  height: 76px !important;
  margin-right: 0.72rem !important;
  top: 0 !important;
  transform: none !important;
}

header .logo-text {
  display: flex;
  min-width: 0;
  align-items: flex-start;
}

header .logo-tagline {
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(15, 26, 61, 0.78);
  font-family: Archivo, sans-serif;
  font-size: 0.62rem !important;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.16em;
  white-space: nowrap;
}

header .track-btn-header {
  flex: 0 0 auto;
  margin: 0 0 0 auto !important;
}

header .track-btn-circle {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(15, 26, 61, 0.1);
  border-radius: 16px;
  background: rgba(15, 26, 61, 0.055);
  color: var(--primary);
  box-shadow: none;
}

header .track-btn-circle:hover,
header .track-btn-circle:focus-visible {
  background: var(--primary);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 16px 28px rgba(15, 26, 61, 0.18);
}

header .track-btn-circle .tooltip {
  border-radius: 999px;
  background: rgba(5, 10, 26, 0.94);
  box-shadow: 0 14px 28px rgba(5, 10, 26, 0.2);
}

header .nav-links {
  flex: 1 1 auto;
  justify-content: flex-end;
  gap: 0.24rem !important;
  padding: 0.34rem !important;
  border: 1px solid rgba(15, 26, 61, 0.06);
  border-radius: 999px;
  background: rgba(15, 26, 61, 0.045);
}

header .nav-link {
  padding: 0.68rem 0.86rem !important;
  border: 0 !important;
  border-radius: 999px;
  color: rgba(15, 26, 61, 0.76);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

header .nav-link:hover,
header .nav-link:focus-visible,
header .nav-link.active {
  background: #fff;
  color: var(--primary);
  box-shadow: 0 10px 24px rgba(15, 26, 61, 0.1);
}

header .contact-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.72rem 1.08rem !important;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff5e5b 0%, #ff8068 100%);
  color: #fff !important;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 14px 30px rgba(255, 94, 91, 0.28);
}

header .contact-btn:hover,
header .contact-btn:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 20px 38px rgba(255, 94, 91, 0.36);
}

header .language-switcher-desktop {
  margin-left: clamp(1rem, 2.4vw, 2.25rem) !important;
  padding: 0.18rem !important;
  gap: 0 !important;
  border-radius: 999px;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(15, 26, 61, 0.06);
}

header .language-switcher-desktop::before {
  content: "";
  width: 1px;
  height: 24px;
  margin: 0 0.78rem 0 -0.34rem;
  background: rgba(15, 26, 61, 0.12);
}

header .language-btn {
  border-radius: 999px;
  color: rgba(15, 26, 61, 0.72);
  font-size: 0.76rem !important;
  font-weight: 900;
  line-height: 1;
  padding: 0.44rem 0.54rem !important;
}

header .language-btn.active {
  background: var(--primary) !important;
  color: #fff !important;
}

header .language-separator {
  display: none;
}

.home-page .hero {
  min-height: 100svh !important;
  height: auto !important;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  padding: 128px 0 58px !important;
  background: #08122e !important;
}

.home-page .hero::before {
  content: "" !important;
  position: absolute;
  inset: 0;
  z-index: 0 !important;
  width: auto;
  height: auto;
  background:
    linear-gradient(90deg, rgba(5, 10, 26, 0.92) 0%, rgba(8, 18, 46, 0.75) 43%, rgba(8, 18, 46, 0.32) 100%),
    linear-gradient(180deg, rgba(5, 10, 26, 0.06) 0%, rgba(5, 10, 26, 0.82) 100%),
    url("/assets/images/heroindex-1200.webp") center / cover no-repeat !important;
  opacity: 1 !important;
  transform: none !important;
}

.home-page .hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 0;
  height: 34%;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(8, 18, 46, 0) 0%, rgba(8, 18, 46, 0.72) 72%, rgba(255, 255, 255, 0.08) 100%);
}

.home-page .hero .container {
  position: relative;
  z-index: 1;
  width: 100%;
}

.home-page .hero-content {
  display: block !important;
  max-width: 900px;
  padding: 0 !important;
}

.home-page .hero-image {
  display: none !important;
}

.home-page .hero-text {
  max-width: 900px;
  color: #fff;
}

.home-page .hero-text::before {
  content: "Études en Italie depuis la Tunisie";
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 1.12rem;
  padding: 0.58rem 0.92rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.08));
  color: rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.22);
  backdrop-filter: blur(16px);
  font-family: Archivo, sans-serif;
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.035em;
  line-height: 1.1;
  text-transform: none;
}

html[lang="en"] .home-page .hero-text::before {
  content: "Study in Italy from Tunisia";
}

html[lang="ar-TN"] .home-page .hero-text::before {
  content: "الدراسة في إيطاليا من تونس";
  letter-spacing: 0;
}

.home-page .hero-title,
html[lang="fr"] .home-page .hero-title-fr,
html[lang="ar-TN"] .home-page .hero-title-ar {
  max-width: 12em;
  margin: 0 0 1.05rem !important;
  color: #fff !important;
  font-size: 4.05rem !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
  text-shadow: 0 18px 46px rgba(0, 0, 0, 0.34);
}

.home-page .hero-title span {
  color: #ff746f !important;
}

.home-page .hero-title span::after {
  bottom: 0.04em !important;
  height: 0.25em !important;
  border-radius: 999px;
  background: rgba(255, 94, 91, 0.24) !important;
}

.home-page .hero-subtitle,
html[lang="fr"] .home-page .hero-subtitle-fr,
html[lang="en"] .home-page .hero-subtitle-en,
html[lang="ar-TN"] .home-page .hero-subtitle-ar {
  max-width: 640px !important;
  margin-bottom: 1.25rem !important;
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 1.12rem !important;
  line-height: 1.65 !important;
}

.home-page .hero-cta {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.86rem !important;
  margin-top: 0 !important;
}

.home-page .hero-cta .btn {
  min-height: 58px;
  border-radius: 999px;
  padding: 1rem 1.25rem;
  font-weight: 900;
}

.home-page .hero-cta .btn-primary {
  background: linear-gradient(135deg, #ff5e5b 0%, #ff8068 100%);
  box-shadow: 0 22px 44px rgba(255, 94, 91, 0.36);
}

.home-page .hero-cta .btn-outline {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(16px);
}

.home-page .hero-cta .btn-outline:hover,
.home-page .hero-cta .btn-outline:focus-visible {
  border-color: rgba(255, 255, 255, 0.44);
  background: rgba(255, 255, 255, 0.2);
}

.home-page .trust-badges {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 700px;
  gap: 0.78rem !important;
  margin-top: 1rem !important;
}

@media (min-width: 1440px) and (min-height: 820px) {
  .home-page .hero-title,
  html[lang="fr"] .home-page .hero-title-fr,
  html[lang="ar-TN"] .home-page .hero-title-ar {
    font-size: 4.8rem !important;
  }
}

.home-page .trust-item {
  min-height: 74px;
  align-items: center;
  gap: 0.56rem !important;
  padding: 0.58rem 0.82rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.9) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 18px 40px rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(18px);
}

.home-page .trust-item i {
  display: inline-flex;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 12px;
  background: rgba(255, 94, 91, 0.16);
  color: #ff746f !important;
}

.home-page .trust-item span {
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.86rem;
  line-height: 1.35;
}

.home-page .trust-item strong {
  color: #fff !important;
  font-size: 1.18rem;
}

.home-page .scroll-indicator {
  z-index: 1;
  bottom: 24px !important;
  opacity: 0.82;
}

@media (max-width: 1240px) {
  header .header-container {
    gap: 0.52rem !important;
  }

  header .logo-tagline {
    display: none;
  }

  header .nav-link {
    padding: 0.62rem 0.66rem !important;
    font-size: 0.84rem;
  }

  header .contact-btn {
    padding: 0.68rem 0.9rem !important;
  }

  header .language-btn {
    font-size: 0.72rem !important;
    padding: 0.42rem 0.45rem !important;
  }
}

@media (max-width: 980px) and (min-width: 769px) {
  header .track-btn-header {
    display: none !important;
  }

  header .nav-links {
    gap: 0.1rem !important;
  }
}

@media (max-width: 900px) {
  .home-page .hero-title,
  html[lang="fr"] .home-page .hero-title-fr,
  html[lang="ar-TN"] .home-page .hero-title-ar {
    font-size: 3.55rem !important;
  }
}

@media (max-width: 768px) {
  header {
    height: auto !important;
    padding: 10px 12px !important;
  }

  header .header-container {
    min-height: 82px !important;
    padding: 0.38rem 0.55rem 0.38rem 0.76rem !important;
    border-radius: 22px;
  }

  header .logo {
    flex: 1 1 auto;
  }

  header .logo-img {
    height: 72px !important;
    margin-right: 0 !important;
  }

  header .logo-tagline,
  header .track-btn-header {
    display: none !important;
  }

  header .mobile-menu-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    border-radius: 17px !important;
    border: 1px solid rgba(255, 255, 255, 0.68) !important;
    background:
      linear-gradient(145deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.62)) !important;
    box-shadow: 0 16px 32px rgba(8, 18, 46, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.92);
    overflow: hidden;
    z-index: 1002;
  }

  header .mobile-menu-btn::before {
    content: "";
    position: absolute;
    inset: 7px;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(255, 94, 91, 0.14), rgba(0, 193, 179, 0.1));
    opacity: 0;
    transform: scale(0.82);
    transition: opacity 240ms ease, transform 240ms ease;
  }

  header .mobile-menu-btn .menu-icon {
    left: 12px !important;
    height: 2.5px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #ff5e5b 0%, #ff8176 100%) !important;
    box-shadow: 0 5px 12px rgba(255, 94, 91, 0.28);
    transform-origin: center;
    opacity: 1;
    transition: top 240ms ease, bottom 240ms ease, width 240ms ease, transform 240ms ease, opacity 180ms ease;
  }

  header .mobile-menu-btn .menu-icon:nth-child(1) {
    top: 10px !important;
    width: 22px !important;
  }

  header .mobile-menu-btn .menu-icon:nth-child(2) {
    top: 18px !important;
    width: 16px !important;
    transform: none !important;
  }

  header .mobile-menu-btn .menu-icon:nth-child(3) {
    bottom: 18px !important;
    width: 26px !important;
  }

  header .mobile-menu-btn .close-icon {
    display: flex !important;
    align-items: center;
    justify-content: center;
    top: 50% !important;
    left: 50% !important;
    width: 28px !important;
    height: 28px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #ff5e5b !important;
    font-size: 1.52rem !important;
    font-weight: 800;
    line-height: 1;
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-90deg) scale(0.72) !important;
    transition: opacity 200ms ease, transform 240ms ease;
  }

  header .mobile-menu-btn:hover::before,
  header .mobile-menu-btn:focus-visible::before,
  header .mobile-menu-btn.active::before {
    opacity: 1;
    transform: scale(1);
  }

  header .mobile-menu-btn.active .menu-icon:nth-child(1) {
    top: 10px !important;
    width: 14px !important;
    opacity: 0 !important;
    transform: translateY(-5px) scaleX(0.6) !important;
  }

  header .mobile-menu-btn.active .menu-icon:nth-child(2) {
    width: 6px !important;
    opacity: 0 !important;
    transform: translateX(9px) !important;
  }

  header .mobile-menu-btn.active .menu-icon:nth-child(3) {
    bottom: 18px !important;
    width: 14px !important;
    opacity: 0 !important;
    transform: translateY(5px) scaleX(0.6) !important;
  }

  header .mobile-menu-btn.active .close-icon {
    opacity: 1 !important;
    transform: translate(-50%, -50%) rotate(0deg) scale(1) !important;
  }

  header .nav-links {
    position: fixed !important;
    top: 0 !important;
    right: -100% !important;
    width: min(88vw, 360px) !important;
    max-width: none !important;
    height: 100dvh !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0.42rem !important;
    padding: 108px 1.15rem 1.4rem !important;
    border: 0;
    border-left: 1px solid rgba(15, 26, 61, 0.08);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: -20px 0 60px rgba(8, 18, 46, 0.18);
    backdrop-filter: blur(20px);
  }

  html[dir="rtl"] header .nav-links {
    right: auto !important;
    left: -100% !important;
    border-left: 0;
    border-right: 1px solid rgba(15, 26, 61, 0.08);
    box-shadow: 20px 0 60px rgba(8, 18, 46, 0.18);
  }

  header .nav-links.active {
    right: 0 !important;
  }

  html[dir="rtl"] header .nav-links.active {
    left: 0 !important;
  }

  header .nav-link,
  header .contact-btn {
    width: 100%;
    min-height: 52px;
    justify-content: flex-start;
    padding: 0.95rem 1rem !important;
    border-radius: 17px;
    background: rgba(15, 26, 61, 0.045);
    color: var(--primary) !important;
    font-size: 0.96rem;
  }

  header .contact-btn {
    margin-top: 0.35rem;
    justify-content: center;
    background: linear-gradient(135deg, #ff5e5b 0%, #ff8068 100%);
    color: #fff !important;
  }

  header .language-switcher-mobile {
    display: flex !important;
    justify-content: center;
    width: 100%;
    margin: 0 0 0.72rem !important;
    padding: 0.5rem !important;
    border: 1px solid rgba(15, 26, 61, 0.08);
    border-radius: 18px;
    background: rgba(15, 26, 61, 0.045);
  }

  .home-page .hero {
    min-height: 100svh !important;
    padding: 104px 0 34px !important;
  }

  .home-page .hero::before {
    background:
      linear-gradient(180deg, rgba(5, 10, 26, 0.22) 0%, rgba(8, 18, 46, 0.78) 42%, rgba(8, 18, 46, 0.97) 100%),
      url("/assets/images/heroindex-768.webp") center 24% / cover no-repeat !important;
  }

  .home-page .hero-text {
    max-width: 430px !important;
    margin: 0 auto;
  }

  .home-page .hero-text::before {
    margin-bottom: 0.92rem;
    font-size: 0.74rem;
  }

  .home-page .hero-title,
  html[lang="fr"] .home-page .hero-title-fr,
  html[lang="ar-TN"] .home-page .hero-title-ar {
    font-size: 2.44rem !important;
    line-height: 1 !important;
    margin-bottom: 0.9rem !important;
  }

  .home-page .hero-subtitle,
  html[lang="fr"] .home-page .hero-subtitle-fr,
  html[lang="en"] .home-page .hero-subtitle-en,
  html[lang="ar-TN"] .home-page .hero-subtitle-ar {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    margin-bottom: 1.05rem !important;
    font-size: 0.94rem !important;
    line-height: 1.58 !important;
  }

  .home-page .hero-cta {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 0.72rem !important;
  }

  .home-page .hero-cta .btn {
    min-height: 54px;
    justify-content: center;
    border-radius: 18px;
    font-size: 0.96rem;
  }

  .home-page .trust-badges {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.54rem !important;
    margin-top: 0.9rem !important;
  }

  .home-page .trust-item {
    min-height: 68px;
    flex-direction: column;
    justify-content: center;
    gap: 0.34rem !important;
    padding: 0.48rem 0.36rem;
    text-align: center;
  }

  .home-page .trust-item i {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
    border-radius: 50%;
    font-size: 0.82rem;
  }

  .home-page .trust-item span {
    font-size: 0.68rem;
    line-height: 1.22;
  }

  .home-page .trust-item strong {
    display: block;
    margin-bottom: 0.08rem;
    font-size: 1.04rem;
  }

  .home-page .scroll-indicator {
    display: none !important;
  }
}

@media (max-width: 420px) {
  header .header-container {
    min-height: 78px !important;
  }

  header .logo-img {
    height: 68px !important;
  }

  .home-page .hero-title,
  html[lang="fr"] .home-page .hero-title-fr,
  html[lang="ar-TN"] .home-page .hero-title-ar {
    font-size: 2.18rem !important;
  }
}

/* ========== MOBILE: KEEP SPECIAL HERO ONLY ON HOME ========== */
@media (max-width: 768px) {
  body:not(.home-page) .hero {
    min-height: auto !important;
    height: auto !important;
    align-items: center !important;
    padding: 118px 0 46px !important;
    background:
      radial-gradient(circle at 20% 18%, rgba(255, 94, 91, 0.18), transparent 30%),
      radial-gradient(circle at 84% 88%, rgba(0, 193, 179, 0.12), transparent 28%),
      linear-gradient(155deg, #101b3f 0%, #243567 100%) !important;
  }

  body:not(.home-page) .hero::before {
    background:
      linear-gradient(155deg, rgba(15, 26, 61, 0.92), rgba(36, 53, 103, 0.88)),
      url("/assets/images/heroindex-1200.webp") center / cover no-repeat !important;
    opacity: 0.18 !important;
    z-index: 0 !important;
    transform: none !important;
  }

  body:not(.home-page) .hero::after {
    display: none !important;
  }

  body:not(.home-page) .hero .container {
    position: relative;
    z-index: 1;
    padding: 0 1.05rem !important;
  }

  body:not(.home-page) .hero-content {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 1.05rem;
    padding: 0 !important;
  }

  body:not(.home-page) .hero-image {
    display: block !important;
    order: 0;
    width: 100%;
    max-width: 320px;
    height: auto !important;
    aspect-ratio: 1.28;
    margin: 0 auto !important;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.28);
  }

  body:not(.home-page) .hero-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  body:not(.home-page) .hero-text {
    order: 1;
    width: 100%;
    max-width: 430px !important;
    margin: 0 auto !important;
    color: var(--light) !important;
    text-align: left !important;
  }

  body:not(.home-page) .hero-text::before {
    display: none !important;
    content: none !important;
  }

  body:not(.home-page) .hero-title,
  html[lang="fr"] body:not(.home-page) .hero-title-fr,
  html[lang="ar-TN"] body:not(.home-page) .hero-title-ar {
    max-width: none !important;
    margin-bottom: 0.85rem !important;
    color: #fff !important;
    font-size: clamp(1.72rem, 6.8vw, 2.12rem) !important;
    line-height: 1.1 !important;
    text-align: left !important;
    text-shadow: none !important;
  }

  body:not(.home-page) .hero-subtitle,
  html[lang="fr"] body:not(.home-page) .hero-subtitle-fr,
  html[lang="en"] body:not(.home-page) .hero-subtitle-en,
  html[lang="ar-TN"] body:not(.home-page) .hero-subtitle-ar {
    display: block !important;
    max-width: 100% !important;
    margin-bottom: 1.2rem !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 0.92rem !important;
    line-height: 1.62 !important;
    text-align: left !important;
  }

  html[dir="rtl"] body:not(.home-page) .hero-text,
  html[dir="rtl"] body:not(.home-page) .hero-title,
  html[dir="rtl"] body:not(.home-page) .hero-subtitle {
    text-align: right !important;
  }
}

@media (max-width: 420px) {
  body:not(.home-page) .hero-image {
    max-width: 292px;
    aspect-ratio: 1.24;
  }
}

/* ========== HEADER EXPLORE DROPDOWN ========== */
header .nav-links {
  gap: clamp(0.55rem, 1.05vw, 1.35rem);
}

header .nav-dropdown {
  position: relative;
  display: flex;
  align-items: center;
}

header .nav-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.42rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

header .nav-dropdown-toggle::after {
  display: none;
}

header .nav-dropdown-toggle i {
  font-size: 0.72rem;
  transform: rotate(0deg);
  transition: transform 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

header .nav-dropdown:hover .nav-dropdown-toggle,
header .nav-dropdown:focus-within .nav-dropdown-toggle,
header .nav-dropdown.open .nav-dropdown-toggle {
  color: var(--accent);
}

header .nav-dropdown:hover .nav-dropdown-toggle i,
header .nav-dropdown:focus-within .nav-dropdown-toggle i,
header .nav-dropdown.open .nav-dropdown-toggle i {
  animation: exploreChevronOpen 420ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
  transform: rotate(180deg);
}

@keyframes exploreChevronOpen {
  0% {
    transform: rotate(0deg) scale(1);
  }
  62% {
    transform: rotate(190deg) scale(1.08);
  }
  100% {
    transform: rotate(180deg) scale(1);
  }
}

header .nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 0.72rem);
  left: 50%;
  z-index: 1200;
  display: grid;
  grid-template-columns: repeat(2, minmax(210px, 1fr));
  gap: 0.28rem;
  width: max-content;
  min-width: 460px;
  max-width: min(560px, calc(100vw - 2rem));
  padding: 0.68rem;
  border: 1px solid rgba(15, 26, 61, 0.1);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 26px 70px rgba(8, 18, 46, 0.18);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, -8px);
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
  backdrop-filter: blur(18px);
}

header .nav-dropdown:hover .nav-dropdown-menu,
header .nav-dropdown:focus-within .nav-dropdown-menu,
header .nav-dropdown.open .nav-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

header .nav-dropdown-link {
  display: flex;
  align-items: center;
  min-height: 39px;
  padding: 0.58rem 0.72rem;
  border-radius: 14px;
  color: var(--primary);
  font-size: 0.88rem;
  font-weight: 650;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

header .nav-dropdown-link:hover,
header .nav-dropdown-link:focus,
header .nav-dropdown-link.active {
  color: var(--accent);
  background: linear-gradient(135deg, rgba(255, 94, 91, 0.12), rgba(15, 26, 61, 0.055));
  outline: 0;
  transform: translateX(2px);
}

html[dir="rtl"] header .nav-dropdown-menu {
  text-align: right;
}

html[dir="rtl"] header .nav-dropdown-link:hover,
html[dir="rtl"] header .nav-dropdown-link:focus,
html[dir="rtl"] header .nav-dropdown-link.active {
  transform: translateX(-2px);
}

@media (min-width: 769px) {
  header .nav-dropdown.click-closed:hover .nav-dropdown-toggle,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-toggle {
    color: var(--primary);
  }

  header .nav-dropdown.click-closed:hover .nav-dropdown-toggle i,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-toggle i {
    animation: none;
    transform: rotate(0deg);
  }

  header .nav-dropdown.click-closed:hover .nav-dropdown-menu,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, -8px);
  }
}

@media (max-width: 768px) {
  header .nav-dropdown {
    display: block;
    width: 100%;
  }

  header .nav-dropdown-toggle {
    width: 100%;
    justify-content: space-between !important;
  }

  header .nav-dropdown-toggle i {
    transform: none;
  }

  header .nav-dropdown-menu,
  header .nav-dropdown:hover .nav-dropdown-menu,
  header .nav-dropdown:focus-within .nav-dropdown-menu,
  header .nav-dropdown.open .nav-dropdown-menu {
    position: static;
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0.42rem 0 0.72rem;
    padding: 0.48rem;
    border-radius: 18px;
    background: rgba(15, 26, 61, 0.045);
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    backdrop-filter: none;
  }

  header .nav-dropdown:not(.open) .nav-dropdown-menu,
  header .nav-dropdown:not(.open):hover .nav-dropdown-menu,
  header .nav-dropdown:not(.open):focus-within .nav-dropdown-menu {
    display: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  header .nav-dropdown:not(.open) .nav-dropdown-toggle i,
  header .nav-dropdown:not(.open):hover .nav-dropdown-toggle i,
  header .nav-dropdown:not(.open):focus-within .nav-dropdown-toggle i {
    animation: none;
    transform: rotate(0deg);
  }

  header .nav-dropdown.open .nav-dropdown-menu {
    display: grid;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  header .nav-dropdown.open .nav-dropdown-toggle i {
    animation: exploreChevronOpen 420ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
    transform: rotate(180deg);
  }

  header .nav-dropdown-link {
    min-height: 42px;
    padding: 0.68rem 0.78rem;
    border-radius: 13px;
    font-size: 0.91rem;
    white-space: normal;
  }
}

/* ========== DESKTOP LOGO SCALE WITHOUT HEADER GROWTH ========== */
@media (min-width: 769px) {
  header,
  header .header-container,
  header .logo {
    overflow: visible !important;
  }

  header .header-container {
    min-height: 90px !important;
  }

  header.scrolled .header-container {
    min-height: 82px !important;
  }

  header .logo-img {
    height: 76px !important;
    transform: scale(1.15) !important;
    transform-origin: left center;
  }

  html[dir="rtl"] header .logo-img {
    transform-origin: right center;
  }
}

/* ========== MOBILE COMPACT HEADER WITHOUT LOGO SHRINK ========== */
@media (max-width: 768px) {
  header {
    height: auto !important;
    padding: 5px 12px !important;
  }

  header .header-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 0.72rem 0 0.78rem !important;
    overflow: visible !important;
  }

  header .logo {
    order: 0 !important;
    flex: 0 1 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-width: 0;
    overflow: visible !important;
  }

  header .logo-img {
    height: 72px !important;
    width: auto !important;
    max-height: none !important;
    margin-right: 0 !important;
    transform: scale(1.06) !important;
    transform-origin: left center;
  }

  header .mobile-menu-btn {
    order: 2 !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 0 0 auto !important;
    box-shadow: 0 12px 24px rgba(8, 18, 46, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  }

  html[dir="rtl"] header .mobile-menu-btn,
  html[lang^="ar"] header .mobile-menu-btn {
    margin: 0 auto 0 0 !important;
  }
}

/* ========== MOBILE MENU BUTTON LIVING SHADOW ========== */
@media (max-width: 768px) {
  header .mobile-menu-btn {
    overflow: visible !important;
    isolation: isolate;
  }

  header .mobile-menu-btn:not(.active) {
    animation: vhMenuButtonGlow 2.8s ease-in-out infinite;
  }

  header .mobile-menu-btn:not(.active)::after {
    content: "";
    position: absolute;
    inset: -7px;
    z-index: -1;
    border-radius: 22px;
    background:
      radial-gradient(circle at 38% 30%, rgba(255, 94, 91, 0.34), transparent 54%),
      radial-gradient(circle at 68% 72%, rgba(0, 193, 179, 0.2), transparent 52%);
    filter: blur(10px);
    opacity: 0.72;
    transform: scale(0.92);
    animation: vhMenuButtonHalo 2.8s ease-in-out infinite;
    pointer-events: none;
  }

  header .mobile-menu-btn:not(.active) .menu-icon {
    animation: vhMenuBarsFlow 2.8s ease-in-out infinite;
  }

  header .mobile-menu-btn:not(.active) .menu-icon:nth-child(1) {
    animation-delay: 0s;
  }

  header .mobile-menu-btn:not(.active) .menu-icon:nth-child(2) {
    animation-delay: 0.12s;
  }

  header .mobile-menu-btn:not(.active) .menu-icon:nth-child(3) {
    animation-delay: 0.24s;
  }

  header .mobile-menu-btn.active {
    animation: none;
    box-shadow: 0 10px 22px rgba(8, 18, 46, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  }

  header .mobile-menu-btn.active::after {
    opacity: 0;
    animation: none;
  }

  header .mobile-menu-btn.active .menu-icon {
    animation: none;
  }
}

@keyframes vhMenuButtonGlow {
  0%, 100% {
    box-shadow: 0 12px 24px rgba(8, 18, 46, 0.12), 0 0 0 rgba(255, 94, 91, 0), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  }
  50% {
    box-shadow: 0 16px 30px rgba(8, 18, 46, 0.16), 0 0 22px rgba(255, 94, 91, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.95);
  }
}

@keyframes vhMenuButtonHalo {
  0%, 100% {
    opacity: 0.42;
    transform: scale(0.9);
  }
  50% {
    opacity: 0.86;
    transform: scale(1.03);
  }
}

@keyframes vhMenuBarsFlow {
  0%, 100% {
    filter: drop-shadow(0 0 0 rgba(255, 94, 91, 0));
  }
  50% {
    filter: drop-shadow(0 0 5px rgba(255, 94, 91, 0.28));
  }
}

/* ========== DESKTOP HEADER WIDTH + LOGO TUNE ========== */
@media (min-width: 769px) {
  header .header-container {
    width: min(100%, 1388px);
    overflow: visible;
  }

  header .logo {
    overflow: visible;
  }

  header .logo-img {
    transform: scale(1.2) !important;
    transform-origin: left center;
  }

  header .language-switcher-desktop {
    margin-left: clamp(0.7rem, 1.7vw, 1.65rem) !important;
    margin-right: -0.18rem;
    transform: translateX(0.22rem);
  }

  html[dir="rtl"] header .logo-img,
  html[lang^="ar"] header .logo-img {
    transform-origin: right center;
  }

  html[dir="rtl"] header .language-switcher-desktop,
  html[lang^="ar"] header .language-switcher-desktop {
    margin-right: clamp(0.7rem, 1.7vw, 1.65rem) !important;
    margin-left: -0.18rem !important;
    transform: translateX(-0.22rem);
  }
}

/* ========== DESKTOP EXPLORE HOVER BRIDGE ========== */
@media (min-width: 769px) {
  header .nav-dropdown::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 1199;
    width: min(560px, calc(100vw - 2rem));
    height: 0.9rem;
    transform: translateX(-50%);
    background: transparent;
  }
}

/* ========== DESKTOP EXPLORE CLICK-CLOSE OVERRIDE ========== */
@media (min-width: 769px) {
  header .nav-dropdown.click-closed:hover .nav-dropdown-toggle,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-toggle {
    color: var(--primary) !important;
  }

  header .nav-dropdown.click-closed:hover .nav-dropdown-toggle i,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-toggle i {
    animation: none !important;
    transform: rotate(0deg) !important;
  }

  header .nav-dropdown.click-closed:hover .nav-dropdown-menu,
  header .nav-dropdown.click-closed:focus-within .nav-dropdown-menu,
  header .nav-dropdown.click-closed.open .nav-dropdown-menu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate(-50%, -8px) !important;
  }
}

/* ========== SCROLL REVEAL MOTION ========== */
.js-scroll-reveal .fade-in.scroll-reveal {
  animation: none;
}

.js-scroll-reveal .fade-in.has-revealed {
  animation: none;
}

.js-scroll-reveal .scroll-reveal {
  opacity: 0;
  transform: translate3d(0, 28px, 0);
  transition:
    opacity 0.72s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.72s cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}

.js-scroll-reveal .scroll-reveal-left {
  transform: translate3d(-36px, 0, 0);
}

.js-scroll-reveal .scroll-reveal-right {
  transform: translate3d(36px, 0, 0);
}

html[dir="rtl"].js-scroll-reveal .scroll-reveal-left,
html[lang^="ar"].js-scroll-reveal .scroll-reveal-left {
  transform: translate3d(36px, 0, 0);
}

html[dir="rtl"].js-scroll-reveal .scroll-reveal-right,
html[lang^="ar"].js-scroll-reveal .scroll-reveal-right {
  transform: translate3d(-36px, 0, 0);
}

.js-scroll-reveal .scroll-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
  .js-scroll-reveal .scroll-reveal,
  .js-scroll-reveal .fade-in.scroll-reveal {
    opacity: 1;
    transform: none;
    transition: none;
    animation: none;
  }
}

.vh-consent {
  position: fixed;
  left: 50%;
  bottom: 1rem;
  z-index: 10000;
  width: min(720px, calc(100vw - 2rem));
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(15, 26, 61, 0.12);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(15, 26, 61, 0.18);
  color: var(--text);
}

.vh-consent-text {
  display: grid;
  gap: 0.25rem;
  line-height: 1.45;
}

.vh-consent-text strong {
  color: var(--primary);
  font-size: 1rem;
}

.vh-consent-text span {
  color: var(--text-light);
  font-size: 0.92rem;
}

.vh-consent-text a {
  color: var(--accent);
  font-weight: 700;
  text-decoration: none;
}

.vh-consent-actions {
  display: flex;
  gap: 0.6rem;
  flex-shrink: 0;
}

.vh-consent-btn {
  border: 1px solid var(--accent);
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  padding: 0.65rem 1rem;
  font-weight: 800;
  cursor: pointer;
  transition: var(--transition);
}

.vh-consent-btn.secondary {
  background: #fff;
  color: var(--primary);
  border-color: rgba(15, 26, 61, 0.18);
}

.vh-consent-btn:hover,
.vh-consent-btn:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(255, 94, 91, 0.22);
}

@media (max-width: 620px) {
  .vh-consent {
    align-items: stretch;
    flex-direction: column;
  }

  .vh-consent-actions {
    width: 100%;
  }

  .vh-consent-btn {
    flex: 1;
  }
}
