form{background-color:#ffffff;border-radius:12px;padding:20px;box-shadow:0 4px 12px rgba(0,0,0,.08)}form label span.text-danger{font-weight:700}.ratio iframe{border-radius:12px}.contact-header{text-align:center;font-weight:700;color:#343a40;margin-bottom:20px}button[type=submit]{background:linear-gradient(90deg,#0d6efd,#6610f2);color:white;border:none;padding:10px 0;border-radius:8px;font-size:1rem;transition:background .3s ease}button[type=submit]:hover{background:linear-gradient(90deg,#0056b3,#520dc2)}.contact-info-box{background-color:#0d6efd;color:#ffffff;border-radius:16px;padding:30px 20px;box-shadow:0 6px 16px rgba(0,0,0,.2)}.contact-info-box h1,.contact-info-box h2{margin-bottom:10px}.contact-info-box a{color:#ffc107;text-decoration:underline}@media (max-width:768px){.contact-info-box{text-align:center}form{padding:15px}}.banner-container{width:100%;margin-top:5%;display:flex;justify-content:center;align-items:center;overflow:hidden}.banner-image{width:100%;height:auto;max-width:100%;display:block}@media (max-width:768px){.banner-container{margin-top:10%}}@media (max-width:480px){.banner-container{margin-top:15%}}.navbar-container-pro{display:flex;justify-content:center;align-items:center;background-color:white;padding:10px 0;width:100%;position:sticky;margin-top:15%;z-index:100}.navbar-nav-pro{display:flex;list-style-type:none;padding:0;margin:0}.nav-item-pro{margin:0 20px}.nav-link-pro{text-decoration:none;font-size:2rem;color:black;font-weight:500;text-transform:capitalize;transition:color .5s ease-in-out,transform .3s ease-in-out}.nav-link-pro:hover{color:#3baadf}@media (max-width:768px){.navbar-nav-pro{flex-direction:column;align-items:center;margin-top:3%}.nav-link-pro{font-size:1.2rem}.nav-item-pro{margin:10px 0}}@media (max-width:480px){.navbar-container-pro{padding:5px 0}.navbar-nav-pro{flex-direction:column;align-items:center;margin-top:35%}.nav-link-pro{font-size:1rem}}.image-grid-container{display:flex;justify-content:center}.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1200px}.image-item{text-align:center}.image-item img{transition:transform .3s ease}.image-item:hover img{transform:scale(1.05)}.image-item p{position:absolute;bottom:0;left:0;width:100%;font-weight:600;color:white;font-size:2rem;padding:10px;margin:0;text-align:start;border-bottom-left-radius:10px;border-bottom-right-radius:10px}.container{margin:0 auto;padding:100px 40px}.loading-text{color:gray}.error-text,.loading-text{text-align:center;font-size:1.2rem}.error-text{color:red}.projects-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.project-card{position:relative;overflow:hidden;transition:transform .3s ease-in-out;cursor:pointer}.modal-container{position:relative;display:flex;align-items:center;justify-content:center}.modal-image{max-width:100%}.arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:2rem;color:#fff;background:rgba(0,0,0,.5);padding:10px 15px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.left-arrow{left:0}.right-arrow{right:0}.project-card:hover{transform:scale(1.05)}.project-image-container{width:100%;height:220px;overflow:hidden;position:relative}.project-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease-in-out}.project-title{font-size:16px;font-weight:700;text-align:left;color:#333;margin-top:10px}.project-category{font-size:14px;text-align:left;color:gray;margin-bottom:10px}.project-card:after,.project-card:before{content:"";position:absolute;width:100%;height:100%;background-color:rgba(43,23,75,.9);transform:scale(0);transition:transform .5s ease-in-out;z-index:2}.project-card:before{top:0;left:0;transform-origin:top left;clip-path:polygon(0 0,100% 0,0 100%)}.project-card:after{bottom:0;right:0;transform-origin:bottom right;clip-path:polygon(100% 100%,100% 0,0 100%)}.project-card .plus-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);font-size:1rem;font-weight:700;color:#3ba7db;z-index:3;opacity:0;transition:opacity .5s ease-in-out,transform .5s ease-in-out}.project-card:hover:after,.project-card:hover:before{transform:scale(1)}.project-card:hover .project-image{transform:scale(1.1)}.project-card:hover .plus-icon{transform:translate(-50%,-50%) scale(1);opacity:1}.custom-modal .modal-dialog{width:100vw!important;height:100vh!important}.modal-image{width:100%;height:auto;border-radius:5px}.blur-background{filter:blur(8px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.blur-background:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.3);z-index:10}@media (max-width:1024px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.projects-grid{grid-template-columns:repeat(1,1fr)}}@media (max-width:1024px){.image-grid{grid-template-columns:repeat(2,1fr)}.image-item p{font-size:1.5rem;padding:8px}}@media (max-width:600px){.image-grid{grid-template-columns:repeat(1,1fr)}.image-item p{font-size:1.2rem;padding:6px}}.testimonial-section{padding:10px 0;background:linear-gradient(135deg,#7d6b6bbd 100%);min-height:100vh;display:flex;align-items:center;justify-content:center}.testimonial-header{text-align:center;margin-bottom:20px}.section-titles{font-size:3rem;font-weight:700;color:white;margin-bottom:16px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.section-subtitle{font-size:1.25rem;color:rgba(255,255,255,.9);max-width:600px;margin:0 auto;line-height:1.6}.testimonial-carousel{position:relative;margin-bottom:40px;gap:20px}.nav-button,.testimonial-carousel{display:flex;align-items:center;justify-content:center}.nav-button{background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.3);color:white;width:50px;height:50px;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.nav-button:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5);transform:scale(1.1)}.nav-button.prev{margin-right:20px}.nav-button.next{margin-left:20px}.testimonial-container{flex:1;max-width:800px;overflow:hidden;border-radius:20px}.testimonial-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}.testimonial-card{min-width:100%;background:rgba(255,255,255,.95);padding:40px;border-radius:20px;box-shadow:0 20px 40px rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);text-align:center;animation:fadeInUp .6s ease-out}.quote-icon{font-size:4rem;color:#667eea;font-family:Georgia,serif;line-height:1;margin-bottom:20px;opacity:.3}.testimonial-content{margin-bottom:30px}.testimonial-text{font-size:1.25rem;line-height:1.7;color:#333;margin-bottom:20px;font-style:italic;max-width:600px;margin-left:auto;margin-right:auto}.rating{display:flex;justify-content:center;gap:4px;margin-bottom:20px}.star{font-size:1.5rem;color:#ddd;transition:color .3s ease}.star.filled{color:#ffd700;text-shadow:0 1px 2px rgba(0,0,0,.1);animation:starGlow 2s ease-in-out infinite alternate}.testimonial-author{display:flex;align-items:center;justify-content:center;gap:20px}.author-image{width:80px;height:80px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:4px solid white;box-shadow:0 4px 12px rgba(0,0,0,.15)}.author-info{text-align:left}.author-name{font-size:1.25rem;font-weight:600;color:#333;margin-bottom:4px}.author-position{font-size:1rem;color:#666;margin:0}.testimonial-dots{display:flex;justify-content:center;gap:12px;margin-top:40px}.dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.4);cursor:pointer;transition:all .3s ease}.dot:hover{background:rgba(255,255,255,.6);transform:scale(1.2)}.dot.active{background:white;transform:scale(1.3)}.train-advertising-container{background:linear-gradient(135deg,#f5faff,#e6f0ff);position:relative;overflow:hidden;padding:40px 0;z-index:0}.train-advertising-container:after,.train-advertising-container:before{content:"";position:absolute;background:radial-gradient(circle,rgba(0,123,255,.2),transparent);border-radius:50%;z-index:-1}.train-advertising-container:before{width:300px;height:300px;top:-150px;left:-150px}.train-advertising-container:after{width:300px;height:300px;bottom:-150px;right:-150px}.advertising-card{position:relative;z-index:1;border:none;border-radius:15px;background:rgba(255,255,255,.95);transition:transform .3s ease,box-shadow .3s ease}.advertising-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.15)}.advertising-image{width:100%;height:400px;-o-object-fit:cover;object-fit:cover;border-radius:10px;transition:transform .3s ease}.text-content{padding:20px;text-align:center}.section-title{font-size:1.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;display:flex;align-items:center;justify-content:center}.icon{font-size:1.8rem;color:#0d6efd;margin-right:10px;transition:transform .3s ease,color .3s ease}.section-title:hover .icon{transform:scale(1.2);color:#0d6efd}.section-text{font-size:1rem;line-height:1.6;color:#333}.bg-black{background-color:rgba(255,0,0,.628);margin-top:13%;padding:40px 0;min-height:70vh;display:flex;align-items:center;justify-content:center}.text-contact{text-align:left;font-size:3rem;color:aliceblue;font-weight:600;max-width:1200px;margin:0 auto;padding:0 20px}.image-grid-container{margin:90px auto;padding:20px;max-width:1300px;overflow:hidden}.image-grid{display:flex;justify-content:flex-start;width:-moz-max-content;width:max-content;animation:scroll 70s linear infinite}.image-item{position:relative;overflow:hidden;border-radius:10px;width:200px;margin-right:20px}.image-item img{width:100%;height:auto;display:block;border-radius:10px}@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes starGlow{0%{text-shadow:0 1px 2px rgba(0,0,0,.1)}to{text-shadow:0 0 10px rgba(255,215,0,.5)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-fadeInUp{animation:fadeInUp 1s ease-out}.animate-fadeInLeft{animation:fadeInLeft 1s ease-out}.animate-fadeInRight{animation:fadeInRight 1s ease-out}.animate-bounce{animation:bounce 2s infinite}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 3s linear infinite}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.hero-gradient{background:linear-gradient(135deg,#2563eb,#14b8a6 50%,#22c55e)}.achievements-gradient{background:linear-gradient(135deg,#f0fdfa,#dbeafe)}.ridership-gradient{background:linear-gradient(135deg,#fef2f2,#fff7ed)}.opportunity-gradient{background:linear-gradient(135deg,#dbeafe,#e0e7ff)}.custom-card{border-radius:1.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.1)}.icon-container{position:relative;display:inline-flex;align-items:center;justify-content:center}.floating-element{position:absolute;border-radius:50%;background:rgba(255,255,255,.2)}.stat-circle{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto}@media (max-width:768px){.testimonial-section{padding:60px 0}.section-titles{font-size:2.5rem}.section-subtitle{font-size:1.1rem}.testimonial-carousel{flex-direction:row;gap:10px}.nav-button{width:45px;height:45px;font-size:1.25rem}.nav-button.next,.nav-button.prev{margin:0}.testimonial-card{padding:30px 20px}.testimonial-text{font-size:1.1rem}.testimonial-author{flex-direction:column;gap:15px}.author-info{text-align:center}.author-image{width:70px;height:70px}.advertising-image{height:200px}.section-title{font-size:1.5rem}.section-text{font-size:.9rem}.text-content{padding:15px}.icon{font-size:1.5rem}.bg-black{margin-top:7%;min-height:auto;padding:30px 0}.text-contact,.text-start button{font-size:1.5rem}.display-1{font-size:3rem}.display-4{font-size:2rem}.image-grid{flex-wrap:nowrap}}@media (max-width:576px){.container{padding:0 15px}.section-titles{font-size:2rem}.testimonial-card{padding:25px 15px}.quote-icon{font-size:3rem}.testimonial-text{font-size:1rem}.advertising-image{height:180px}.section-title{font-size:1.3rem}.section-text{font-size:.85rem}.text-content{padding:10px}.icon{font-size:1.3rem}.image-item{width:150px}}@media (max-width:425px){.text-contact,.text-start button{font-size:1.25rem}}@media (max-width:320px){.bg-black{margin-top:10%}.text-contact{font-size:1.25rem}.text-start button{font-size:1.25rem;margin-left:5%}}