@import url('https://fonts.googleapis.com/css?family=Roboto:300,300i,500&display=swap');
@import url('https://fonts.googleapis.com/css?family=Oswald:300,500,700&display=swap');

::-webkit-scrollbar { width: 12px; }
::-webkit-scrollbar-track { background: #1a1a1a; }
::-webkit-scrollbar-thumb { background: #fff; border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: #ccc; }

body { position: relative; font-family: 'Roboto', sans-serif; font-size: 16px; color: #2b2b2b; font-weight: 300; line-height: 25px; width: 100%; overflow-x: hidden; }
.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 { line-height: 1.2; font-weight: 500; font-family: 'Roboto', sans-serif; margin-bottom: 0; }
a,*::before,*::after,img,span,input,button,.navbar,.fixedmenu,.tp-bullet,.owl-dot,.owl-prev,.owl-next { transition: ease-in-out 0.2s; -webkit-transition: ease-in-out 0.2s; }
section,.section-padding { position: relative; overflow: hidden; }
a { color: inherit; text-decoration: none; }
.btn.focus,.btn:focus { box-shadow: none; }
p:last-child { margin-bottom: 0 !important; }
.fa,.far,.fas { display: inline; }
a:active,a:hover { color: #000; }
.hidden { display: none; }
ul { margin-bottom: 0; }

.no-transition * { transition-timing-function: initial; transition-duration: 0s; }

.bg-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.opacity-3 { opacity: .3; }
.opacity-4 { opacity: .4; }
.opacity-5 { opacity: .5; }
.opacity-6 { opacity: .6; }
.opacity-7 { opacity: .7; }
.opacity-8 { opacity: .8; }
.opacity-9 { opacity: .9; }

.btn { -webkit-appearance: initial; overflow: hidden; position: sticky; z-index: 2; display: inline-block; font-size: 17px; border: 2px solid transparent; letter-spacing: .5px; line-height: inherit; border-radius: 12px; text-transform: capitalize; width: auto; font-family: 'Roboto', sans-serif; font-weight: 500; transition: all .5s ease !important; }

.bg-red,.bg-purple,.bg-green { background-color: #000; }
.red-color { color: #f71c52; }
.purple-color { color: #554c86; }
.green-color { color: #39d47a; }

.parallax-disable { background-repeat: no-repeat !important; background-size: cover !important; background-position: center center !important; }
.position-relative { position: relative; }
.left-overlay { position: absolute; left: 0; right: 60%; top: 0; bottom: 0; }
.right-overlay { position: absolute; left: 50%; right: 0; top: 0; bottom: 0; }

.footer-app-buttons img { max-height: 40px; }

.facebook-text-hvr:hover { color: #4267B2 !important; }
.twitter-text-hvr:hover { color: #1DA1F2 !important; }
.instagram-text-hvr:hover { color: #C32AA3 !important; }
.linkedin-text-hvr:hover { color: #0077B5 !important; }
.pinterest-text-hvr:hover { color: #BD081C !important; }
.google-text-hvr:hover { color: #DB4437 !important; }

.color-lines { height: 15px; }
.padding-top { padding-top: 120px; }
.padding-bottom { padding-bottom: 120px; }

.heading { color: #fff; font-family: Oswald, sans-serif; font-size: 60px; font-weight: 700; margin-bottom: 50px; }
.heading span { display: block; }
.text { color: #fff; font-family: Roboto, sans-serif; font-size: 16px; font-weight: 300; }

.white-trans-btn { border: solid 1px #fff; color: #fff; font-weight: 400; padding: 8px 35px; background-color: transparent; transition: .5s ease; font-size: 14px; font-family: Roboto, sans-serif; }
.white-trans-btn:hover { background-color: #fff; color: #000; }

.green-btn { border: solid 1px #39d47a; color: #fff; font-weight: 400; padding: 8px 35px; background-color: #39d47a; font-size: 14px; font-family: Roboto, sans-serif; border-radius: .5em; text-transform: uppercase; letter-spacing: .1em; text-align: center; position: relative; overflow: hidden; z-index: 1; transition: .8s ease; text-decoration: none; }
.green-btn:hover { border: solid 1px #f71c52; color: #fff; }
.green-btn span { position: absolute; width: 25%; height: 100%; background-color: #f71c52; transform: translateY(150%); border-radius: 50%; transition: 0.5s; z-index: -1; }

.pink-btn { border: solid 1px #f71c52; color: #fff; font-weight: 400; padding: 8px 35px; background-color: #f71c52; font-size: 14px; font-family: Roboto, sans-serif; border-radius: .5em; text-transform: uppercase; letter-spacing: .1em; text-align: center; position: relative; overflow: hidden; z-index: 1; transition: .8s ease; text-decoration: none; cursor: pointer; }
.pink-btn:hover { border: solid 1px #39d47a; color: #fff; }
.pink-btn span { cursor: pointer; position: absolute; width: 25%; height: 100%; background-color: #39d47a; transform: translateY(150%); border-radius: 50%; transition: 0.5s; z-index: -1; }

.purple-btn { border: solid 1px #554c86; color: #fff; font-weight: 400; padding: 8px 35px; background-color: #554c86; font-size: 14px; font-family: Roboto, sans-serif; border-radius: .5em; letter-spacing: .1em; text-align: center; position: relative; overflow: hidden; z-index: 1; transition: .8s ease; text-decoration: none; cursor: pointer; }
.purple-btn:hover { border: solid 1px #f71c52; color: #fff; }
.purple-btn span { position: absolute; width: 25%; height: 100%; background-color: #f71c52; transform: translateY(150%); border-radius: 50%; transition: 0.5s; z-index: -1; }

.anim-btn { border: 1px solid #fff; border-radius: 12px; text-transform: uppercase; letter-spacing: .1em; text-align: center; position: relative; overflow: hidden; z-index: 1; background-color: transparent; color: #fff; font-size: 13px; padding: 10px 30px; transition: .8s ease; font-family: 'Roboto', sans-serif; font-weight: 500; text-decoration: none; }
.anim-btn span { position: absolute; width: 25%; height: 100%; background-color: #fff; transform: translateY(150%); border-radius: 50%; transition: 0.5s; z-index: -1; }
.anim-btn:hover { color: #fff; border: solid 1px #fff; }

.anim-btn:hover span,.green-btn:hover span,.purple-btn:hover span,.pink-btn:hover span { transform: translateY(0) scale(3.15); }

.anim-btn span:nth-child(1),.green-btn span:nth-child(1),.purple-btn span:nth-child(1),.pink-btn span:nth-child(1) { left: 0%; transition-delay: 0s; }
.anim-btn span:nth-child(2),.green-btn span:nth-child(2),.purple-btn span:nth-child(2),.pink-btn span:nth-child(2) { left: 25%; transition-delay: .1s; }
.anim-btn span:nth-child(3),.green-btn span:nth-child(3),.purple-btn span:nth-child(3),.pink-btn span:nth-child(3) { left: 50%; transition-delay: .2s; }
.anim-btn span:nth-child(4),.green-btn span:nth-child(4),.purple-btn span:nth-child(4),.pink-btn span:nth-child(4) { left: 75%; transition-delay: .3s; }
.anim-btn span:nth-child(5),.green-btn span:nth-child(5),.purple-btn span:nth-child(5),.pink-btn span:nth-child(5) { left: 100%; transition-delay: .4s; }

header .upper-nav { padding-top: 50px; }
header .upper-nav .top-personal-info { padding-left: 0; }
header .upper-nav .top-personal-info li { list-style: none; display: inline-block; margin-right: 20px; }
header .upper-nav .top-personal-info li:last-child { margin-right: 0; }
header .upper-nav .top-personal-info li a { color: #333; font-size: 14px; font-family: Roboto, sans-serif; transition: .5s ease; font-weight: 400; }
header .upper-nav .top-personal-info li a:hover { color: #000; }
header .upper-nav .top-personal-info li a i { font-size: 18px; color: #000; margin-right: 5px; }

header .fixed-nav-links { display: none; }

header .top-social-links li { list-style: none; display: inline-block; }
header .top-social-links li a { height: 35px; width: 35px; background-color: transparent; display: flex; justify-content: center; align-items: center; transition: .5s ease; }
header .top-social-links li a:hover { border-radius: 50%; }
header .top-social-links li a.twit:hover { background-color: #00acee; }
header .top-social-links li a.link-in:hover { background-color: #0e76a8; }
header .top-social-links li a.insta:hover { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); }
header .top-social-links li a.fb:hover { background-color: #3b5998; }
header .top-social-links li a i { font-size: 20px; color: #000; }
header .top-social-links li a:hover i { color: #fff; }

header .simple-nav-logo { background-color: #000; padding: 25px 10px; margin-right: 0; text-align: center; position: relative; z-index: 111; border: 3px solid #fff; }
header .fixed-nav-logo { display: none; }
header .navbar-brand img { max-width: 80%; }
header .main-navigation { padding-top: 30px; }
header .main-navigation .navbar { padding: 0; }
header .main-navigation nav .navbar-nav .nav-item { display: inline-block; margin-left: 20px; border-radius: 9px; }
header .main-navigation nav .navbar-nav .nav-item .nav-link { text-transform: uppercase; padding: 5px 10px; color: #000; font-family: Roboto, sans-serif; font-size: 16px; font-weight: 400; transition: .5s ease; }
header .main-navigation nav .navbar-nav .nav-item .nav-link:hover,
header .main-navigation nav .navbar-nav .nav-item .nav-link.active { color: #000; }

.header-appear { position: sticky; left: 0; right: 0; top: 0; z-index: 1111; background-color: #fff; animation: animationFade 1s both; box-shadow: 0 10px 10px -10px rgba(0,0,0,.35); }
.header-appear .upper-nav { display: none; }
.header-appear .main-navigation { padding-top: 2px; padding-bottom: 2px; }
.bg-black { background-color: #000 !important; }
.header-appear .simple-nav-logo { display: none; }
.header-appear .fixed-nav-logo { display: block; transform: translateY(-3px); }
.header-appear .fixed-nav-logo img { width: 100%; }
.header-appear .main-navigation .simple-navbar { display: flex; justify-content: flex-end; align-items: center; }
.header-appear .fixed-nav-links { display: inline-block; transform: translateY(0); margin-left: 25px; }
.header-appear .sidemenu_btn { top: 36px; display: none; }

@keyframes animationFade {
  from { opacity: 0; transform: translate3d(0, -100%, 0); }
  to { opacity: 1; transform: none; }
}

.side-menu .bg-overlay { background: rgb(0 0 0 / 90%); }
.side-menu { width: 100%; position: fixed; right: 0; top: 0; bottom: 0; background-image: url("../img/side-menu.jpg"); background-size: cover; background-position: center; z-index: 2032; height: 100%; transform: translate3d(0, 100%, 0); transition: transform .5s ease; overflow: hidden; }
.side-menu.left { left: 0; right: auto; transform: translate3d(-100%, 0, 0); }
.side-menu.before-side { width: 280px; }
.side-menu.side-menu-active,.side-menu.before-side { transform: translate3d(0, 0, 0); }

#close_side_menu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; transition: opacity 300ms cubic-bezier(0.895, 0.03, 0.685, 0.22); display: none; z-index: 1031; opacity: .4; }

.side-menu .btn-close { height: 33px; width: 33px; display: inline-block; text-align: center; position: absolute; top: 61px; right: 50px; cursor: pointer; }
.header-appear ~ .side-menu .btn-close { top: 50px; }
.side-menu.before-side .btn-close { display: none; }
.side-menu .btn-close::before,.side-menu .btn-close::after { position: absolute; left: 16px; content: ' '; height: 24px; width: 2px; background: #fff; top: 5px; }
.side-menu .btn-close:before { transform: rotate(45deg); }
.side-menu .btn-close:after { transform: rotate(-45deg); }

.sidemenu_btn { transition: all .3s linear; width: 36px; padding: 6px; margin-right: 1rem; margin-top: .4rem; position: absolute; right: 0; top: 61px; display: inline-block; }
.sidemenu_btn span { height: 2px; width: 100%; background: #000; display: block; margin: auto; transition: .5s ease; }
.sidemenu_btn:hover span { background: #000; }
.sidemenu_btn:hover span:first-child,.sidemenu_btn:hover span:last-child { width: 70%; }
.sidemenu_btn span:nth-child(2) { margin: 4px 0; }

.side-menu .inner-wrapper { padding: 3.5rem 5rem; height: 100%; position: relative; overflow-y: auto; display: flex; align-items: center; text-align: left; flex-wrap: wrap; }
.pul-menu.pushwrap .side-menu .inner-wrapper { padding: 3.5rem 2.5rem; }
.side-menu .side-nav { margin-bottom: 30px; display: block; }

.side-nav .navbar-nav .nav-item { display: block; margin: 3px 0; padding: 0 !important; opacity: 0; transition: all 0.8s ease 500ms; transform: translateY(30px); }
.side-nav .navbar-nav .nav-item:first-child { transition-delay: .1s; }
.side-nav .navbar-nav .nav-item:nth-child(2) { transition-delay: .2s; }
.side-nav .navbar-nav .nav-item:nth-child(3) { transition-delay: .3s; }
.side-nav .navbar-nav .nav-item:nth-child(4) { transition-delay: .4s; }
.side-nav .navbar-nav .nav-item:nth-child(5) { transition-delay: .5s; }
.side-nav .navbar-nav .nav-item:nth-child(6) { transition-delay: .6s; }
.side-nav .navbar-nav .nav-item:nth-child(7) { transition-delay: .7s; }
.side-nav .navbar-nav .nav-item:nth-child(8) { transition-delay: .8s; }
.side-nav .navbar-nav .nav-item:nth-child(9) { transition-delay: .9s; }
.side-menu.side-menu-active .side-nav .navbar-nav .nav-item { transform: translateY(0); opacity: 1; }

.side-nav .navbar-nav .nav-link { display: inline-table; color: #fff; padding: 2px 0 3px !important; font-size: 36px; font-weight: 700; line-height: normal; position: relative; border-radius: 0; font-family: Oswald, sans-serif; }
.side-nav .navbar-nav .nav-link::after { content: ""; position: absolute; background: #fff; display: inline-block; width: 0; height: 3px; bottom: 0; left: 0; overflow: hidden; transition: all 0.5s cubic-bezier(0, 0, 0.2, 1); }
.side-nav .navbar-nav .nav-link:hover::after,
.side-nav .navbar-nav .nav-link:focus::after,
.side-nav .navbar-nav .nav-link.active::after { width: 100%; }
.side-nav .navbar-nav .nav-link.active { background: transparent; }

.side-menu-inner-content { border-bottom: solid 1px rgba(255,255,255,.5); padding-bottom: 30px; }
.side-menu p { margin-bottom: 0; }
.menu-company-details { margin-bottom: 25px; margin-top: -15px; }
.menu-company-details span { display: block; color: #fff; font-size: 16px; font-family: Roboto, sans-serif; font-weight: 300; margin-bottom: 5px; }

.social-icons-simple { margin-bottom: 0; margin-left: -10px; }
.social-icons-simple li { display: inline-block; padding-left: 8px; }
.social-icons-simple li:first-child { padding-left: 0; }
.social-icons-simple li a { display: block; font-size: 16px; height: 40px; line-height: 42px; border: 1px solid transparent; text-align: center; width: 40px; border-radius: 50%; position: relative; z-index: 1; overflow: hidden; transition: background-color .5s ease; }
.social-icons-simple li a:hover { background-color: #fff; }
.social-icons-simple li.animated-wrap a:hover { background-color: transparent; color: #fff; }

.slider-area { position: relative; margin-top: 0; }
.slider-area .bg-overlay { background-color: #000; width: 50%; left: 0; }
.slider-area .container { padding-top: 100px; padding-bottom: 100px; }
.slider-area .container .inner-bg-overlay { background-color: #000; position: absolute; left: 0; right: 12%; bottom: 0; top: 0; }
.slider-area .slider-detail { display: flex; align-items: center; }
.slider-area .slider-detail .slider-slide .slider-inner-content { width: 90%; overflow: hidden; }
.slider-area .slider-detail .slider-slide .slider-inner-content .slide-heading { color: #fff; font-family: Oswald, sans-serif; font-size: 60px; font-weight: 700; margin-bottom: 30px; text-transform: uppercase; }
.slider-area .slider-detail .slider-slide .slider-inner-content .slide-heading span { display: block; }
.slider-area .slider-detail .slider-slide .slider-inner-content .slide-text { color: #fff; font-weight: 300; font-family: Roboto, sans-serif; font-size: 16px; margin-bottom: 30px; }
.slider-area .slider-arrows { position: absolute; right: -7%; top: 42.5%; transform: translateY(-50%); }
.slider-area .slider-arrows .slider-arr { height: 35px; width: 35px; border-radius: 50%; background-color: #000; display: flex; justify-content: center; align-items: center; transition: .5s ease; }
.slider-area .slider-arrows .slider-arr:hover { background-color: #000; }
.slider-area .slider-arrows .slider-arr-up { margin-bottom: 15px; padding-bottom: 1px; }
.slider-area .slider-arrows .slider-arr-down { padding-top: 1px; }
.slider-area .slider-arrows .slider-arr i { color: #fff; font-size: 16px; }
.slider-area img { width: 100%; }

.about-sec { padding-top: 10px; margin-bottom:120px; }
.about-sec .about-overlay { position: absolute; display: block; top: 10px; right: 0; bottom: 0; left: 60%; background-color: #000; }
.about-sec .services-area { background-color: #f1f1f1; display: flex; justify-content: center; align-items: center; position: relative; }
.about-sec .services-area .purple-overlay { position: absolute; display: block; top: 0; right: 10px; bottom: 0; left: 0; background-color: #f1f1f1; }
.about-sec .services-area .services { display: flex; justify-content: center; align-items: center; cursor: pointer; }
.about-sec .services-area .services .service-card { margin-bottom: 100px; }
.about-sec .services-area .services:last-child .service-card,
.about-sec .services-area .services:nth-child(3) .service-card { margin-bottom: 0; }
.about-sec .services-area .services .service-card .icon-holder { margin-bottom: 12px; transition: .5s ease; }
.about-sec .services-area .services .service-card .icon-holder i { color: #000; font-size: 100px; }
.about-sec .services-area .services:hover .service-card .icon-holder { animation: .8s pulse infinite; }
.about-sec .services-area .services .service-card .card-heading { color: #000; font-size: 28px; font-family: Oswald, sans-serif; font-weight: 300; transition: .5s ease; }
.about-sec .about-area { background-color: #000; padding-left: 50px; }
.about-sec .about-area .about-inner-content .anim-btn { margin-top: 30px; }

.stats-sec .stats-heading-area .sub-heading { font-family: Roboto, sans-serif; font-size: 18px; color: #000; font-weight: 400; margin-bottom: 20px; }
.stats-sec .stats-heading-area .heading { color: #000; margin-bottom: 30px; }
.stats-sec .stats-heading-area .text { color: #000; opacity: .7; width: 55%; margin: 0 auto; }
.stats-sec .circular-wrap { padding-top: 100px; }
.stats-sec .circular-wrap .circle { position: relative; max-width: 210px; display: inline-block; }
.stats-sec .circular-wrap .circle .counter-num { position: absolute; top: 50%; left: 50%; line-height: normal; font-weight: normal; transform: translate(-50%, -50%); color: #000; font-size: 4.5rem; font-family: Roboto, sans-serif; font-weight: 300; }
.stats-sec .circular-wrap h4.darkcolor { margin-left: auto; margin-right: auto; font-weight: 600; font-family: Roboto, sans-serif; color: #000; font-size: 21px; margin-top: 30px; text-transform: uppercase; line-height: 1.5; }

.team-sec .left-overlay { background-color: #000; }
.team-sec .inner-team-sec { background-color: #000; }
.team-sec .heading { margin-bottom: 30px; }
.team-sec .inner-team-sec .team-area { width: 80%; margin: 0 auto; }
.team-sec .inner-team-sec .team-area .team-nav { position: absolute; top: 40%; transform: translateY(-50%); height: 35px; width: 35px; text-align: center; display: flex; justify-content: center; align-items: center; background-color: #fff; color: #000; z-index: 11; border-radius: 50%; transition: .5s ease; }
.team-sec .inner-team-sec .team-area .team-nav:hover { background-color: #000; }
.team-sec .inner-team-sec .team-area .team-nav:hover i { color: #fff; }
.team-sec .inner-team-sec .team-area .team-nav.team-prev { left: 25px; }
.team-sec .inner-team-sec .team-area .team-nav.team-next { right: 30px; }
.team-sec .inner-team-sec .team-area .team-nav i { font-size: 14px; }
.team-sec .team-detail { margin-top: 15px; }
.team-sec .inner-team-sec .team-carousel .team-box .team-info { color: #fff; font-family: Roboto, sans-serif; margin-top: 30px; }
.team-sec .inner-team-sec .team-carousel .team-box .team-info .team-name { font-size: 22px; font-weight: 400; margin-bottom: 8px; }
.team-sec .inner-team-sec .team-carousel .team-box .team-info .team-designation { font-size: 16px; font-weight: 300; }

.team-box .overlay { position: absolute; top: 5%; left: 5%; right: 5%; bottom: 5%; background: rgba(247,28,82,.5); opacity: 0; transition: .8s ease; }
.team-sec .item:hover .team-box { cursor: pointer; }
.team-sec .item:hover .team-box .overlay { opacity: 1; }

.team-box .team-social li { opacity: 0; visibility: hidden; transform: translateY(-100%); display: inline-block; transition: all .5s ease; }
.team-box:hover .team-social li { opacity: 1; visibility: visible; transform: translateY(0); }
.team-box .team-social li:first-child { transition-delay: .1s; }
.team-box .team-social li:nth-child(2) { transition-delay: .2s; }
.team-box .team-social li:nth-child(3) { transition-delay: .3s; }
.team-box .team-social li:nth-child(4) { transition-delay: .4s; }
.team-box .team-social li:nth-child(5) { transition-delay: .5s; }
.team-box .team-social li:nth-child(6) { transition-delay: .6s; }
.team-box .team-social li:nth-child(7) { transition-delay: .7s; }
.team-box .team-social li a { display: block; font-size: 18px; height: 36px; line-height: 36px; text-align: center; border: 1px solid transparent; width: 36px; border-radius: 50%; position: relative; z-index: 1; overflow: hidden; background: transparent; color: #fff; box-shadow: 0 0 3px rgba(0,0,0,.1); transition: all .1s ease; }
.team-box .team-social li a:hover { background-color: #fff; border-color: #fff; }

.portfolio-sec { margin-bottom: 30px; }
.portfolio-sec .container { max-width: 1140px; }
.portfolio-sec .heading { color: #000; margin-bottom: 0; font-size: 50px; }
.cbp-wrapper-outer { overflow: visible; }
.cbp-l-loadMore-button .cbp-l-loadMore-link,
.cbp-l-loadMore-button .cbp-l-loadMore-button-link { padding: 12px 32px; color: #fff; }
.cbp-l-loadMore-button .cbp-l-loadMore-link:hover,
.cbp-l-loadMore-button .cbp-l-loadMore-button-link:hover,
.cbp-l-loadMore-button .cbp-l-loadMore-link:focus,
.cbp-l-loadMore-button .cbp-l-loadMore-button-link:focus { color: #fff; }
.cbp-l-filters-button .cbp-filter-item { background: transparent; padding: 0; margin: 0 15px 0 0; border: none; font-size: 13px; font-weight: 600; color: #000; font-family: 'Roboto', sans-serif; border-bottom: solid 2px transparent; }
.cbp-l-filters-button .cbp-filter-item.cbp-filter-item-active { color: #f71c52; background: transparent; border-bottom: solid 3px #f71c52; }
.cbp-l-filters-button .cbp-filter-item,.cbp-item.even { transition: 300ms all ease; }
.cbp-item.even { margin-top: -190px; }
.cbp-l-grid-mosaic .cbp-caption-activeWrap { background: rgba(247,28,82,.8); }
.cbp-l-caption-title { color: #fff !important; font-family: 'Roboto', sans-serif !important; font-weight: 400 !important; font-size: 15px !important; }
.portfolio-detail-text { color: #fff; font-style: italic; }
.portfolio-hover-effect .hover-text { padding-left: 3%; padding-bottom: 2%; }
.portfolio-hover-effect .portfolio-inner-content { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.portfolio-hover-effect .portfolio-inner-content span { background-color: #fff; height: 3px; width: 70px; display: block; }
.portfolio-hover-effect .portfolio-inner-content span:nth-child(2) { transform: rotate(90deg); }
.portfolio-hover-effect .hover-text .p-hover-title { font-family: 'Roboto', sans-serif; font-size: 20px; color: #fff; font-weight: 500; margin-bottom: 0; }
.portfolio-hover-effect .hover-text .p-hover-des { font-family: 'Open Sans', sans-serif; font-size: 14px; color: #fff; }
#js-loadMore-lightbox-gallery { margin-top: 45px; }
#js-loadMore-lightbox-gallery.active { margin-top: -150px; position: relative; }
#js-loadMore-lightbox-gallery.active-outer { margin-top: -250px; }
.cbp-caption-active .cbp-caption-activeWrap { width: 94%; position: absolute; z-index: 2; height: 94%; }
.cbp-caption-active .cbp-caption-activeWrap:hover .text-data { z-index: -1 !important; }
.cbp-caption-zoom .cbp-caption-activeWrap { opacity: 0; top: 3%; left: 3%; }
.portfolio-foot-detail { padding-bottom: 3%; }
.portfolio-foot-detail .p-text { color: #000; font-size: 13px; font-family: 'Roboto', sans-serif; font-weight: 400; display: inline-block; margin-bottom: 8px; opacity: .7; }
.portfolio-foot-detail .p-text:last-child { margin-bottom: 0; }
.portfolio-foot-detail .p-num { color: #000; font-size: 50px; font-family: 'Roboto', sans-serif; font-weight: bold; }

.testimonial-sec .right-overlay { background-color: #000; top: 120px; }
.testimonial-sec .testimonial-area { background-color: #000; }
.testimonial-sec .testimonial-area .container { max-width: 1140px; }
.testimonial-sec .testimonial-area .testimonial-details { padding-right: 10px; }
.testimonial-sec .testimonial-area .testimonial-carousel { width: 98%; margin: 0 auto; }
.testimonial-sec .testimonial-area .testimonial-carousel .testimonial-box .icon-holder { display: block; margin-bottom: 30px; }
.testimonial-sec .testimonial-area .testimonial-carousel .testimonial-box .icon-holder i { color: #fff; font-size: 32px; display: inline-block; font-style: italic; }
.testimonial-sec .testimonial-area .testimonial-carousel .testimonial-box .img-holder { height: 100px; width: 100px; border-radius: 50%; display: inline-block; margin-bottom: 20px; margin-top: 10px; }
.testimonial-sec .testimonial-area .testimonial-carousel .testimonial-box .img-holder img { border-radius: 50%; width: 100%; }
.testimonial-sec .testimonial-area .testimonial-carousel .testimonial-box .user-name { color: #fff; font-size: 24px; font-weight: 400; font-family: Roboto, sans-serif; }

.sponser-tags .item { display: flex; justify-content: center; align-items: center; cursor: pointer; }
.sponser-tags .item img { width: 80%; display: inline-block; }

.blog-sec { padding-top: 120px; }
.blog-sec .left-overlay { background-color: #000; top: 120px; }
.blog-sec .blog-area { padding-top: 50px; padding-bottom: 50px; }
.blog-sec .blog-inner-overlay { position: absolute; left: 0; bottom: 0; top: 0; right: 34%; background-color: #000; }
.blog-sec .blog-area .blog-detail .heading { margin-bottom: 40px; }
.blog-sec .blog-area .blog-detail .white-trans-btn { margin-top: 10px; }

.contact-sec .heading { color: #000; font-size: 40px; margin-bottom: 40px; }
.contact-sec .contact-form { width: 95%; }
.contact-sec .contact-form input { color: #8799a3; font-size: 16px; height: 50px; padding: 25px; }
.form-control:focus { box-shadow: 0 0 0 .2rem rgb(0 0 0 / 25%) !important; border-color: #00000066 !important; }
.contact-sec .contact-form .form-control { border-radius: 0; border: solid 2px #eceef2; }
.contact-sec .contact-form input::placeholder { color: #8799a3; font-size: 16px; }
.contact-sec .contact-form textarea { padding: 13px; padding-left: 25px; height: 202px; color: #000; font-size: 16px; }
.contact-sec .contact-form .purple-btn { margin-top: 15px; }
.contact-sec .contact-background { position: absolute; right: 0; top: -35px; z-index: -1; }
.contact-sec .contact-details { font-family: Roboto, sans-serif; width: 90%; margin-left: 20px; }
.contact-sec .contact-details .heading { margin-bottom: 50px; }
.contact-sec .contact-details .text { color: #000; opacity: .8; }
#contact-sec { padding: 5.5rem 0; }
#contact-sec .contact-details ul { padding-left: 0; margin-bottom: 0; margin-top: 30px; margin-bottom: 30px; list-style: none; }
#contact-sec ul li { color: #fff; list-style: none; margin-bottom: 22px; font-size: 16px; display: flex; align-items: center; }
#contact-sec ul li:first-child { width: 60%; }
#contact-sec ul li span { display: inline-block; padding-right: 30px; }
#contact-sec ul li span:last-child { padding-right: 0; }
#contact-sec ul li i { font-size: 38px; margin-right: 20px; margin-bottom: 8px; }
#contact-sec ul li i.addr { color: #fff; font-size: 44px; }
#contact-sec ul li i.phone { color: #fff; }
#contact-sec ul li i.email { color: #fff; transform: rotate(-30deg); }

.footer-style-1 { padding: 5rem 0; }
.footer-social ul { margin: 0; padding: 0; }
.footer-social li { display: inline-block; }
.footer-social a { display: block; width: 45px; height: 45px; text-align: center; line-height: 45px; border-radius: 50px; font-size: 17px; margin: 0 10px 0 0; border: 1px solid transparent; transition: background-color .2s ease-in-out; }
.footer-social li:nth-last-child(1) a { margin-right: 0; }
.footer-social li a:hover { background-color: #000; color: #fff; }
.company-about { font-size: 14px; }

.scroll-top-arrow,.scroll-top-arrow:focus { font-size: 23px; line-height: 47px; color: #fff; background-color: #000; display: none; height: 45px; width: 45px; cursor: pointer; padding: 0; position: fixed; bottom: 20px; right: 20px; text-align: center; text-decoration: none; z-index: 80; border-radius: 50px; transition: all .3s ease-in-out; }
.scroll-top-arrow:hover { background-color: #000; }

[class*=bg-img] { position: relative; background-size: cover; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; overflow: hidden; }

.preloader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; text-align: center; background: #fff; z-index: 9999; }
.center { display: flex; text-align: center; justify-content: center; align-items: center; min-height: 100vh; }

.loader-32 .loader-container { width: 220px; }
.loader-32 .ball-wrapper { position: relative; display: inline-block; width: 50px; margin: 0 10px; padding-bottom: 10px; }
.loader-32 .ball-holder { position: relative; overflow: hidden; height: 130px; }
.loader-32 .ball { position: absolute; bottom: 0; left: 50%; display: block; width: 30px; height: 30px; border-radius: 25px; border: 1px solid #000; background-color: #000; transform: translateY(0) translateX(-50%) translateZ(0); animation: loader32 1s infinite linear; z-index: 2; }
.loader-32 .ball-wrapper:nth-child(2) .ball,
.loader-32 .ball-wrapper:nth-child(3) .ball { background-color: #000; border: 1px solid #000; }
.loader-32 .shadow { position: absolute; bottom: 9px; width: 100%; height: 6px; border-radius: 50%; background: rgb(161,160,161); opacity: 1; animation: shadow32 1s infinite linear; z-index: 1; }
.ball-wrapper:nth-of-type(1) .ball,.ball-wrapper:nth-of-type(1) .shadow { animation-delay: 0s; }
.ball-wrapper:nth-of-type(2) .ball,.ball-wrapper:nth-of-type(2) .shadow { animation-delay: .2s; }
.ball-wrapper:nth-of-type(3) .ball,.cube-wrapper:nth-of-type(3) .shadow { animation-delay: .3s; }

@keyframes loader32 {
  0%   { transform: translate(-50%, 10px); }
  40%  { transform: translate(-50%, -90px); width: 30px; height: 30px; }
  50%  { transform: translate(-50%, -100px); width: 30px; height: 30px; }
  65%  { transform: translate(-50%, -90px); width: 30px; height: 30px; }
  75%  { transform: translate(-50%, 0px); width: 30px; height: 30px; }
  100% { transform: translate(-50%, 10px); width: 50px; height: 15px; }
}
@keyframes shadow32 {
  0%,100% { transform: scale(.9,.9); opacity: 1; }
  50%      { transform: scale(.2,.2); opacity: .3; }
}

.blog-content .comment-form .msg-heading { position: relative; text-align: center; }
.blog-content .comment-form .msg-heading span { font-family: 'Roboto', sans-serif; font-size: 20px; font-weight: bold; }
.blog-content .comment-form .msg-heading span::before { content: ""; height: 1px; width: 100px; display: inline-block; border-bottom: 1px solid #dedede; margin-right: 15px; margin-bottom: 6px; }
.blog-content .comment-form .msg-heading span::after { content: ""; height: 1px; width: 100px; display: inline-block; border-bottom: 1px solid #dedede; margin-left: 15px; margin-bottom: 6px; }
.blog-content .comment-form .my-form { margin-top: 4rem; }
.blog-content .comment-form .my-form input { margin-bottom: 20px; border-radius: 3px; padding: 20px; }
.blog-content .comment-form .my-form input[placeholder] { color: #000; opacity: .8; font-size: 14px; }
.blog-content .comment-form .my-form textarea { border-radius: 10px; padding: 20px; }
.blog-content .comment-form .my-form textarea[placeholder] { color: #000; opacity: .8; font-size: 14px; }

.red-btn { background-color: #f71c52; color: #fff; padding: 8px 35px 10px; margin-top: 30px; border: solid 1px #f71c52; transition: .8s ease; font-family: 'Roboto', sans-serif; font-size: 15px; }
.red-btn:hover { background-color: #fff; color: #f71c52; }

.slider-sec { position: relative; background: #000; overflow: hidden; }
.slider-sec::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%), linear-gradient(-45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%); background-size: 100px 100px; opacity: .3; animation: patternMove 20s linear infinite; }
.slider-sec::after { content: ''; position: absolute; top: -50%; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent); animation: scanline 3s linear infinite; }
.slider-sec .slider-row { padding-top: 50px; padding-bottom: 50px; }
.slider-sec .overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: #000; }
.slider-sec .inner-overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 20%; background-color: #000; }
.slider-sec .inner-slider-content { position: relative; z-index: 2; }
.slider-sec .inner-slider-content h4 { font-family: Oswald, sans-serif; font-weight: bold; font-size: 60px; color: #fff; margin-bottom: 20px; text-transform: uppercase; letter-spacing: 3px; text-shadow: 0 0 30px rgba(255,255,255,.3); }

.crumbs { position: relative; }
.crumbs .breadcrumb-items { display: inline-block; }
.crumbs .breadcrumb { margin-bottom: 0; border-radius: 0; padding: 0; background-color: transparent; justify-content: center; }
.breadcrumb-item + .breadcrumb-item::before { color: #999; content: "/"; padding: 0 10px; }
.crumbs .breadcrumb li a { color: #999; font-size: 16px; font-family: 'Roboto', sans-serif; text-decoration: none; border-bottom: solid 1px transparent; transition: .5s ease; padding-bottom: 5px; }
.crumbs .breadcrumb li a:hover { border-bottom: solid 1px #fff; color: #fff; }
.breadcrumb-item.active { color: #fff; }
.breadcrumb-item { font-size: 14px; font-weight: 500; letter-spacing: 1px; }

.standalone-row .stand-img-des { padding-left: 30px; text-align: center; }
.standalone-row:nth-child(2) .stand-img-des { padding-left: 0; padding-right: 30px; }
.standalone-detail .sub-heading { color: #f71c52; margin-bottom: 20px; }
.standalone-area .sub-heading { color: #f71c52; margin-bottom: 8px; }
.standalone-detail .heading { margin-bottom: 20px; font-size: 40px; color: #000; font-weight: 500; font-family: Roboto, sans-serif; }
.standalone-detail .para_text { color: #000; font-weight: 500; font-family: Roboto, sans-serif; text-align: center; font-size: 15px; margin: 0 auto; opacity: .8; line-height: 2.1; }
.standalone-detail { padding-bottom: 100px; }
.standalone-area .gradient-text1 { font-family: 'Roboto', sans-serif; font-weight: 500; margin-bottom: 12px; }
.standalone-area .stand-img-des .para_text { font-family: 'Roboto', sans-serif; color: #000; font-weight: 300; opacity: .8; }
.stats-sec-part-2 ul { list-style: none; }
.stats-sec-part-2 ul li { margin: 12px 0; }

.about-box { border-radius: 12px; padding: 20px 9px; background: #000; text-align: center; cursor: pointer; color: #fff; border: 2px solid #000; transition: all .2s ease-in-out; }
.about-box:hover { transition: ease-in-out 0.5s; background: none; border: 2px solid #000; color: #000; }
.about-box:hover .about-main-icon i { color: #000; }
.about-box .about-main-icon i { color: #fff; font-size: 40px; transition: ease-in-out 0.3s; }
.about-box h5 { font-weight: 300; line-height: 1.5; }

.bx-container { width: 100%; margin: 0 auto; }
.heading-area .sub-heading { font-size: 16px; font-weight: normal; font-family: 'Montserrat', sans-serif; }
.heading-area .heading { font-size: 40px; font-weight: 600; margin-top: 10px; margin-bottom: 30px; font-family: 'Montserrat', sans-serif; }
.contact-form { max-width: 750px; display: block; text-align: center; margin: 0 auto; }
.contact-form .form-group { margin-bottom: 1.5rem; }
.contact-form .form-control { border: none; border-bottom: 1px solid rgba(255,255,255,.3); padding: 12px 0; background: transparent; letter-spacing: .7px; border-radius: 0; box-shadow: none; color: #a5a5a5; font-size: 16px; position: relative; transition: border .9s ease; }
.btn.btn-yellow { background: #fff; border-color: #fff; color: #000; }
.btn.btn-large { font-size: 16px; padding: 14px 60px; line-height: 2em; }
.contact-form textarea { min-height: 175px; resize: none; }
.map-area iframe { border-radius: 8px; }
#contact ul li { font-size: 15px; line-height: 1.6; }

.registration-section { position: relative; padding: 100px 0; background: #000; overflow: hidden; }
.registration-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-image: linear-gradient(45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%), linear-gradient(-45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%); background-size: 100px 100px; opacity: .3; animation: patternMove 20s linear infinite; }
.registration-section::after {  content: ''; position: absolute; top: -50%; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, #0000001c, rgb(255 255 255 / 11%), transparent); animation: scanline 10s linear infinite; z-index: 0; }

.vertical-stepper { position: sticky; top: 30px; background: #0a0a0a; backdrop-filter: blur(20px); border-radius: 20px; padding: 35px; border: 2px solid #333; box-shadow: 0 0 40px rgba(255,255,255,.05), inset 0 0 60px rgba(255,255,255,.02); }
.vertical-stepper::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, #fff, transparent); opacity: .3; }

.stepper-step { display: flex; align-items: flex-start; margin-bottom: 45px; position: relative; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.stepper-step:last-child { margin-bottom: 0; }
.stepper-step:not(:last-child)::after { content: ''; position: absolute; left: 27px; top: 60px; width: 2px; height: calc(100% - 20px); background: linear-gradient(180deg, #333 0%, transparent 100%); z-index: 0; }
.stepper-step.active:not(:last-child)::after { background: linear-gradient(180deg, #fff 0%, #333 100%); box-shadow: 0 0 15px rgba(255,255,255,.5); }
.stepper-step.completed:not(:last-child)::after { background: #fff; box-shadow: 0 0 15px rgba(255,255,255,.4); }

.step-circle { width: 56px; height: 56px; border-radius: 50%; background: #1a1a1a; border: 3px solid #333; display: flex; align-items: center; justify-content: center; font-family: 'Roboto', sans-serif; font-weight: 800; font-size: 20px; color: #999; flex-shrink: 0; position: relative; z-index: 1; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 0 20px rgba(0,0,0,.5); }
.stepper-step.active .step-circle { background: #fff; border-color: #fff; color: #000; box-shadow: 0 0 30px rgba(255,255,255,.6), 0 0 60px rgba(255,255,255,.3), inset 0 0 20px rgba(0,0,0,.2); transform: scale(1.15); }
.stepper-step.completed .step-circle { background: #fff; border-color: #fff; color: transparent; box-shadow: 0 0 25px rgba(255,255,255,.5); }
.stepper-step.completed .step-circle::after { content: '✓'; position: absolute; font-size: 28px; color: #000; }

.step-content { margin-left: 22px; padding-top: 6px; }
.step-title { font-family: 'Roboto', sans-serif; font-size: 18px; font-weight: 800; color: #999; margin-bottom: 8px; letter-spacing: .5px; text-transform: uppercase; transition: all .3s ease; }
.step-description { font-size: 13px; color: #999; margin: 0; opacity: .6; font-weight: 500; }
.stepper-step.active .step-title { color: #fff; text-shadow: 0 0 15px rgba(255,255,255,.5); }
.stepper-step.active .step-description { opacity: .8; color: #ccc; }
.stepper-step.completed .step-title { color: #ccc; }

.form-card { background: #0a0a0a; backdrop-filter: blur(20px); border-radius: 28px; box-shadow: 0 0 60px rgba(255,255,255,.05), inset 0 0 80px rgba(255,255,255,.02); padding: 55px; border: 2px solid #333; position: relative; overflow: hidden; }
.form-card::before { content: ''; position: absolute; top: -2px; left: -2px; right: -2px; height: 4px; background: linear-gradient(90deg, transparent, #fff, transparent); opacity: .5; }
.form-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, transparent 0%, rgba(255,255,255,.03) 50%, transparent 100%); pointer-events: none; }
.form-card h3 { font-family: 'Roboto', sans-serif; font-size: 38px; font-weight: 900; color: #fff; margin-bottom: 15px; letter-spacing: 2px; text-transform: uppercase; position: relative; text-shadow: 0 0 30px rgba(255,255,255,.3); }
.form-card > form > div > p { color: #999; margin-bottom: 45px; font-size: 15px; font-weight: 500; }

.form-step { display: none; animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1); }
.form-step.active { display: block; }

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeInLeft {
  from { opacity: 0; transform: translateX(-30px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes fadeInRight {
  from { opacity: 0; transform: translateX(30px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes scaleIn {
  from { opacity: 0; transform: scale(.9); }
  to   { opacity: 1; transform: scale(1); }
}
@keyframes slideDown {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes float {
  0%,100% { transform: translateY(0); }
  50%      { transform: translateY(-20px); }
}
@keyframes patternMove {
  0%   { background-position: 0 0, 0 0; }
  100% { background-position: 100px 100px, -100px 100px; }
}
@keyframes scanline {
  0%   { top: -50%; }
  100% { top: 150%; }
}
@keyframes spin {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes verifyPulse {
  0%,100% { box-shadow: 0 0 20px rgba(255,255,255,.6); }
  50%      { box-shadow: 0 0 35px rgba(255,255,255,.9); }
}

.details-flow .form-control { background: #1a1a1a; border: 1px solid #333; border-radius: 14px; padding: 16px 20px; font-size: 15px; color: #fff; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); min-height: 54px; font-family: 'Roboto', sans-serif; font-weight: 400; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.details-flow .form-control::placeholder { color: #999; opacity: .5; font-weight: 500; }
.details-flow .form-control:focus { background: #2a2a2a; border-color: #fff; box-shadow: 0 0 30px rgba(255,255,255,.2), inset 0 0 20px rgba(255,255,255,.05); color: #fff; outline: none; transform: translateY(-2px); }
.details-flow .form-control.is-invalid { border-color: #de0000; box-shadow: 0 0 30px rgba(255,255,255,.3); }
.details-flow .form-group { margin-bottom: 25px; }
.details-flow .form-group label { font-family: 'Roboto', sans-serif; font-size: 12px; font-weight: 500; color: #fff; margin-bottom: 12px; letter-spacing: 1.5px; text-transform: uppercase; display: block; }
.details-flow select.form-control { cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='%23ffffff' d='M7 10L2 5h10z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 20px center; padding-right: 50px; }
.details-flow select.form-control option { background: #1a1a1a; color: #fff; padding: 12px; }
.details-flow textarea.form-control { min-height: 110px; resize: vertical; padding-right: 50px; }

.current-location-icon { position: absolute; right: 18px; top: 55%; font-size: 20px; color: #fff; cursor: pointer; transition: all .3s ease; z-index: 10; }
.current-location-icon:hover { color: #ccc; transform: scale(1.2); }
.current-location-icon.loading { animation: spin 1s linear infinite; }

.gst-radio-group { display: flex; gap: 20px; margin-top: 12px; }
.custom-radio-label { display: flex; align-items: center; cursor: pointer; font-size: 15px; color: #fff; padding: 14px 28px; background: #1a1a1a; border: 2px solid #333; border-radius: 12px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; font-weight: 700; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.custom-radio-label:hover { background: #2a2a2a; border-color: #fff; transform: translateY(-2px); box-shadow: 0 5px 20px rgba(255,255,255,.1); }
.custom-radio-label input[type="radio"] { margin-right: 12px; width: 22px; height: 22px; cursor: pointer; accent-color: #fff; margin-bottom: 0; }
.custom-radio-label:has(input[type="radio"]:checked) { background: #fff; border-color: #fff; color: #000; box-shadow: 0 0 30px rgba(255,255,255,.4); }

.email-verify-wrapper { position: relative; }
.verify-badge { position: absolute; right: 14px; top: 48px; background: #198754; color: #fff; padding: 3px 10px; border-radius: 4px; font-size: 9px; font-weight: 900; font-family: 'Roboto', sans-serif; letter-spacing: 1px; text-transform: uppercase; display: none; box-shadow: 0 0 20px rgba(255,255,255,.6); animation: verifyPulse 2s ease-in-out infinite; }
.verify-badge.show { display: block; }

.custom-checkbox { display: flex; align-items: flex-start; margin-top: 5px; padding: 18px; background: #1a1a1a; border: 2px solid #333; border-radius: 12px; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.custom-checkbox input[type="checkbox"] { margin-right: 14px; margin-top: 3px; width: 22px; height: 22px; cursor: pointer; accent-color: #fff; margin-bottom: 0; }
.custom-checkbox label { font-family: 'Roboto', sans-serif; font-size: 14px; color: #ccc; cursor: pointer; margin: 0; text-transform: none; letter-spacing: 0; font-weight: 600; }
.custom-checkbox label a { color: #fff; text-decoration: none; border-bottom: 2px solid transparent; transition: all .3s ease; font-weight: 800; }
.custom-checkbox label a:hover { border-bottom-color: #fff; }

.form-buttons { display: flex; justify-content: space-between; margin-top: 35px; gap: 20px; }
.btn-custom { padding: 16px 40px; font-family: 'Roboto', sans-serif; font-size: 14px; font-weight: 900; border-radius: 14px; border: none; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); letter-spacing: 2px; text-transform: uppercase; position: relative; overflow: hidden; }
.btn-custom::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; border-radius: 50%; background: rgba(255,255,255,.3); transform: translate(-50%, -50%); transition: width .6s, height .6s; }
.btn-custom:hover::before { width: 400px; height: 400px; }
.btn-custom span { position: relative; z-index: 1; }
.btn-previous { background: #1a1a1a; color: #fff; border: 2px solid #333; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.btn-previous:hover { background: #2a2a2a; border-color: #fff; box-shadow: 0 0 30px rgba(255,255,255,.2); transform: translateY(-3px); }
.btn-next { background: #fff; color: #000; margin-left: auto; box-shadow: 0 0 30px rgba(255,255,255,.3); }
.btn-next:hover,.btn-submit:hover { box-shadow: 0 0 50px rgba(255,255,255,.6); transform: translateY(-3px); }
.btn-submit { background: #fff; color: #000; width: 100%; box-shadow: 0 0 30px rgba(255,255,255,.3); }

.success-container { text-align: center; padding: 50px 30px; }
.success-container i { font-size: 110px; color: #fff; margin-bottom: 35px; }
.success-container h2 { font-family: 'Roboto', sans-serif; font-size: 42px; font-weight: 900; color: #fff; margin: 25px 0; letter-spacing: 2px; text-transform: uppercase; }
.success-container p { font-size: 18px; color: #999; margin-bottom: 12px; font-weight: 500; }
.btn-home { background: #fff; color: #000; padding: 16px 50px; border-radius: 14px; text-decoration: none; display: inline-block; margin-top: 40px; font-family: 'Roboto', sans-serif; font-weight: 900; letter-spacing: 2px; text-transform: uppercase; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
.btn-home:hover { transform: translateY(-4px); box-shadow: 0 0 60px rgba(255,255,255,.7); color: #000; text-decoration: none; }
.form-text { color: #999; font-size: 12px; margin-top: 8px; opacity: .7; font-weight: 500; }

.intro-section { font-family: 'Roboto', sans-serif; position: relative; padding: 140px 0; min-height: 700px; overflow: hidden; background: #000; animation: fadeIn 0.8s ease-out; }
.intro-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-image: url('https://png.pngtree.com/background/20250105/original/pngtree-bicycle-spare-parts-and-accessories-picture-image_15450424.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; filter: blur(3px) brightness(0.2); z-index: 0; }
.intro-section::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-image: linear-gradient(45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%), linear-gradient(-45deg, transparent 48%, rgba(255,255,255,.02) 49%, rgba(255,255,255,.02) 51%, transparent 52%); background-size: 100px 100px; opacity: .4; animation: patternMove 20s linear infinite; z-index: 1; }
.intro-section .container { position: relative; z-index: 2; }

.document-list-section { padding: 0; animation: fadeInLeft 0.8s ease-out 0.3s both; }
.document-list-section h3 { font-size: 32px; font-weight: 900; color: #fff; margin-bottom: 15px; line-height: 1.3; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 0 30px rgba(255,255,255,.4); }
.document-list-section p { color: #ccc; font-size: 17px; margin-bottom: 35px; animation: fadeInLeft 0.8s ease-out 0.4s both; font-weight: 600; }
.document-item { margin-bottom: 28px; display: flex; align-items: center; opacity: 0; animation: fadeInLeft 0.6s ease-out forwards; padding: 15px; background: rgba(255,255,255,.03); border-left: 3px solid #fff; border-radius: 5px; transition: all .3s ease; }
.document-item:hover { background: rgba(255,255,255,.08); transform: translateX(5px); box-shadow: 0 0 20px rgba(255,255,255,.1); }
.document-item:nth-child(3) { animation-delay: .5s; }
.document-item:nth-child(4) { animation-delay: .6s; }
.document-item:nth-child(5) { animation-delay: .7s; }
.document-item:nth-child(6) { animation-delay: .8s; }
.document-item:nth-child(7) { animation-delay: .9s; }
.document-item .doc-name { font-size: 22px; color: #fff; font-weight: 800; position: relative; padding-left: 30px; letter-spacing: .5px; }
.document-item .doc-name::before { content: '•'; position: absolute; left: 0; color: #fff; font-size: 40px; line-height: 1; top: -8px; text-shadow: 0 0 15px rgba(255,255,255,.8); }

.login-card { background: rgba(255,255,255,.05); backdrop-filter: blur(20px); border-radius: 20px; box-shadow: 0 0 60px rgba(255,255,255,.08), inset 0 0 80px rgba(255,255,255,.02); padding: 45px 40px; border: 2px solid rgba(255,255,255,.1); animation: fadeInRight 0.8s ease-out 0.3s both; position: relative; }
.login-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, transparent, #fff, transparent); opacity: .6; }
.login-card h4 { font-size: 32px; font-weight: 900; color: #fff; margin-bottom: 25px; text-transform: uppercase; letter-spacing: 2px; text-shadow: 0 0 30px rgba(255,255,255,.4); animation: fadeInUp 0.6s ease-out 0.5s both; font-family: 'Roboto', sans-serif; }
.login-card label { font-size: 13px; font-weight: 800; color: #fff; margin-bottom: 12px; display: block; text-transform: uppercase; letter-spacing: 1.5px; }
.login-card .form-group { animation: fadeInUp 0.6s ease-out 0.6s both; margin-bottom: 25px; }
.login-card .form-control { background: rgba(255,255,255,.08); border: 2px solid rgba(255,255,255,.15); border-radius: 12px; padding: 18px 20px; font-size: 16px; color: #fff; font-weight: 700; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: inset 0 2px 10px rgba(0,0,0,.3); min-height: 54px; }
.login-card .form-control::placeholder { color: #999; font-weight: 600; }
.login-card .form-control:focus { background: rgba(255,255,255,.12); border-color: #fff; box-shadow: 0 0 30px rgba(255,255,255,.3), inset 0 0 20px rgba(255,255,255,.05); outline: none; transform: translateY(-2px); }
.login-card .btn-submit { background: #fff; color: #000; border: none; border-radius: 12px; padding: 16px 30px; font-size: 16px; font-weight: 900; width: 100%; margin-top: 10px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer; text-transform: uppercase; letter-spacing: 2px; box-shadow: 0 0 30px rgba(255,255,255,.4); animation: fadeInUp 0.6s ease-out 0.7s both; max-height: 54px; }
.login-card .btn-submit:hover { box-shadow: 0 0 50px rgba(255,255,255,.7); transform: translateY(-3px); }
.login-card .terms-text { font-size: 13px; color: #999; margin-top: 20px; text-align: center; animation: fadeInUp 0.6s ease-out 0.8s both; font-weight: 600; }
.login-card .terms-text a { color: #fff; text-decoration: none; border-bottom: 2px solid transparent; transition: all .3s ease; font-weight: 800; }
.login-card .terms-text a:hover { border-bottom-color: #fff; }

.otp-inputs { display: flex; justify-content: center; margin: 20px 0 0; flex-wrap: nowrap; gap: 10px; }
.otp-inputs input { width: 55px; height: 55px; text-align: center; font-size: 22px; font-weight: 800; border: 2px solid rgba(255,255,255,.2); border-radius: 12px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); opacity: 0; animation: scaleIn 0.4s ease-out forwards; background: rgba(255,255,255,.05); color: #fff; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); margin: 0; }
.otp-inputs input:nth-child(1) { animation-delay: .1s; }
.otp-inputs input:nth-child(2) { animation-delay: .2s; }
.otp-inputs input:nth-child(3) { animation-delay: .3s; }
.otp-inputs input:nth-child(4) { animation-delay: .4s; }
.otp-inputs input:nth-child(5) { animation-delay: .5s; }
.otp-inputs input:nth-child(6) { animation-delay: .6s; }
.otp-inputs input:focus { border-color: #fff; box-shadow: 0 0 30px rgba(255,255,255,.4), inset 0 0 20px rgba(255,255,255,.05); outline: none; transform: scale(1.08); background: rgba(255,255,255,.12); }

.resend-otp-link { text-align: center; margin: 20px 0 10px; font-size: 14px; color: #999; animation: fadeInUp 0.6s ease-out 0.8s both; font-weight: 600; }
.resend-otp-link a,.edit-number { color: #fff; text-decoration: none; font-weight: 800; cursor: pointer; border-bottom: 2px solid transparent; transition: all .3s ease; }
.resend-otp-link a:hover,.edit-number:hover { border-bottom-color: #fff; color:#fff; }
.edit-number { font-size: 14px; color: #fff; }
#mobileForm,#otpForm { transition: opacity .3s ease-out; text-align: center; }

.main { position: relative; background: #000; overflow: hidden; }
.main::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(45deg, transparent 48%, rgba(255,255,255,.015) 49%, rgba(255,255,255,.015) 51%, transparent 52%), linear-gradient(-45deg, transparent 48%, rgba(255,255,255,.015) 49%, rgba(255,255,255,.015) 51%, transparent 52%); background-size: 100px 100px; opacity: .3; animation: patternMove 20s linear infinite; }
.blog-content { position: relative; z-index: 1; }

.quote-form-wrapper { background: #0a0a0a; backdrop-filter: blur(20px); border-radius: 12px; box-shadow: 0 0 60px rgba(255,255,255,.05), inset 0 0 80px rgba(255,255,255,.02); padding: 40px; margin-bottom: 30px; border: 2px solid #333; position: relative; animation: fadeInUp 0.6s ease; }
.quote-form-wrapper::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, transparent, #fff, transparent); opacity: .5; }

.msg-heading { margin-bottom: 40px; position: relative; padding-bottom: 20px; }
.msg-heading span { font-size: 36px; font-weight: 900; color: #fff; text-transform: uppercase; letter-spacing: 2px; text-shadow: 0 0 30px rgba(255,255,255,.3); }
.msg-heading::after { content: ''; position: absolute; bottom: 0; left: 0; width: 80px; height: 4px; background: #fff; box-shadow: 0 0 20px rgba(255,255,255,.5); }

.my-form .form-control { height: 56px; border: 2px solid #333; border-radius: 14px; padding: 15px 20px; font-size: 15px; font-weight: 500; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); background: #1a1a1a; color: #fff; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.my-form textarea.form-control { height: auto; min-height: 160px; resize: vertical; padding-top: 18px; }
.my-form .form-control:focus { border-color: #fff; box-shadow: 0 0 30px rgba(255,255,255,.2), inset 0 0 20px rgba(255,255,255,.05); background: #2a2a2a; outline: none; transform: translateY(-2px); }
.my-form .form-control::placeholder { color: #999; font-size: 14px; font-weight: 400; }
.my-form select.form-control { cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='%23ffffff' d='M7 10L2 5h10z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 20px center; padding-right: 50px; }
.my-form select.form-control option { background: #1a1a1a; color: #fff; padding: 12px; }

.form-group-icon { position: relative; margin-bottom: 25px; }
.form-group-icon i { position: absolute; left: 22px; top: 50%; transform: translateY(-50%); color: #fff; font-size: 20px; z-index: 2; }
.form-group-icon.textarea-group i { top: 30px; transform: none; }
.form-group-icon .form-control { padding-left: 56px; }

.submit-btn { background: #fff; color: #000; border: none; padding: 18px 60px; font-size: 16px; font-weight: 900; letter-spacing: 2px; text-transform: uppercase; border-radius: 12px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; box-shadow: 0 0 30px rgba(255,255,255,.3); }
.submit-btn::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; border-radius: 50%; background: rgba(0,0,0,.2); transform: translate(-50%, -50%); transition: width .6s, height .6s; }
.submit-btn:hover::before { width: 400px; height: 400px; }
.submit-btn:hover { transform: translateY(-3px); box-shadow: 0 0 50px rgba(255,255,255,.6); color: #000; }

.contact-sidebar { background: #0a0a0a; backdrop-filter: blur(20px); border-radius: 12px; box-shadow: 0 0 60px rgba(255,255,255,.05), inset 0 0 80px rgba(255,255,255,.02); padding: 40px; border: 2px solid #333; position: relative; animation: fadeInUp 0.6s ease 0.2s both; }
.contact-sidebar::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, transparent, #fff, transparent); opacity: .5; }
.contact-sidebar-title { font-size: 32px; font-weight: 900; color: #fff; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 2px solid #333; text-transform: uppercase; letter-spacing: 2px; text-shadow: 0 0 30px rgba(255,255,255,.3); }

.contact-info-item { display: flex; align-items: center; margin-bottom: 25px; padding: 25px; background: #1a1a1a; border-radius: 12px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); border: 2px solid #333; box-shadow: inset 0 2px 10px rgba(0,0,0,.3); }
.contact-info-item:last-child { margin-bottom: 0; }
.contact-info-item:hover { background: #2a2a2a; border-color: #fff; transform: translateX(8px); box-shadow: 0 0 30px rgba(255,255,255,.1); }
.contact-icon { width: 56px; height: 56px; background: #fff; display: flex; align-items: center; justify-content: center; margin-right: 22px; flex-shrink: 0; border-radius: 50%; box-shadow: 0 0 20px rgba(255,255,255,.3); transition: all .3s ease; }
.contact-info-item:hover .contact-icon { transform: scale(1.1); box-shadow: 0 0 30px rgba(255,255,255,.5); }
.contact-icon i { color: #000; font-size: 26px; }
.contact-details h5 { font-size: 12px; font-weight: 800; color: #999; margin-bottom: 8px; text-transform: uppercase; letter-spacing: 1.5px; }
.contact-details p { margin: 0; color: #fff; font-size: 15px; font-weight: 500; line-height: 1.7; }
.contact-details a { color: #fff; text-decoration: none; transition: all .3s ease; border-bottom: 2px solid transparent; }
.contact-details a:hover { color: #ccc; border-bottom-color: #fff; }

@media (min-width: 1200px) {
  .slider-area .slider-arrows { right: -4%; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-text { font-size: 14px; }
  .testimonial-sec .testimonial-area .container { max-width: 1040px; }
  .side-nav .navbar-nav .nav-link { font-size: 30px; }
}
@media (min-width: 1200px) and (max-width: 1250px) {
  .header-appear .sidemenu_btn { top: 38px !important; }
}
@media (min-width: 1600px) {
  .container { max-width: 1340px; }
  .side-nav .navbar-nav .nav-link { font-size: 36px; }
  header .main-navigation nav .navbar-nav .nav-item .nav-link { font-size: 14px; border:1px solid #fff; border-radius:8px; }
  header .main-navigation nav .navbar-nav .nav-item .nav-link:hover { border:1px solid #000; border-radius:8px; }
  .testimonial-sec .testimonial-area .container { max-width: 1140px; }
  .slider-area .slider-arrows { right: -7%; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-heading { margin-bottom: 40px; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-text { margin-bottom: 40px; font-size: 16px; }
  .slider-area .slider-arrows .slider-arr { height: 45px; width: 45px; }
}
@media (min-width: 1800px) {
  .slider-area .slider-arrows { right: -11%; }
}
@media (min-width: 992px) and (max-width: 1250px) {
  header .top-social-links li a { height: 30px; width: 30px; }
  header .top-social-links li a i { font-size: 15px; }
  .header-appear .fixed-nav-links { margin-left: 10px; }
  .header-appear .sidemenu_btn { top: 33px; right: 0; }
}
@media (min-width: 992px) and (max-width: 1070px) {
  header .upper-nav .top-social-links { margin-right: 50px; }
  .sidemenu_btn { right: 15px; }
}
@media (min-width: 768px) and (max-width: 991px) {
  header .upper-nav { display: none; }
  .slider-area .slider-arrows { display: none; }
  header .side-menu .navbar-brand img { max-width: 80%; margin: auto; display: block; }
  .side-nav .navbar-nav { text-align: center; }
  .menu-company-details { margin-bottom: 25px; text-align: center; }
  .social-icons-simple,.side-menu p { text-align: center; }
  .side-nav .navbar-nav .nav-link { font-size: 26px; }
  .header-appear .fixed-nav-links { margin-right: 25px; margin-left: 0; }
  .sidemenu_btn { top: 60px; }
  .header-appear .sidemenu_btn { top: 40px; right: 0; }
  .header-appear ~ .side-menu .btn-close { top: 30px; right: 23px; }
  .header-appear .fixed-nav-logo { margin-right: 0; transform: translateY(-3px); }
  .header-appear .fixed-nav-logo img { width: 50%; }
  .side-menu { width: 100%; }
  .slider-area .slider-detail .slider-slide .slider-inner-content { width: 100%; }
  .slider-area .container .inner-bg-overlay { right: 0; }
  .slider-area .slider-detail { margin-bottom: 50px; }
  .slider-area .bg-overlay { width: 100%; left: 0; right: 0; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-text { width: 100%; }
  .about-sec .services-area .services:nth-child(3) .service-card { margin-bottom: 60px; }
  .about-sec .services-area .services .service-card { margin-bottom: 60px; }
  .about-sec .about-overlay { background-color: #554c86; left: 0; }
  .about-sec .about-area { padding-left: 20px; padding-right: 20px; }
  .stats-sec .stats-heading-area .text { width: 95%; }
  .stats-sec .circular-wrap { padding-top: 80px; }
  .stats-sec .circular-wrap > div { padding-bottom: 80px; }
  .stats-sec .circular-wrap > div:last-child { padding-bottom: 0; }
  .team-sec .team-detail { margin-bottom: 80px; }
  .team-sec .inner-team-sec .team-area { width: 70%; }
  .team-sec .inner-team-sec .team-area .team-nav.team-next { right: 20px; }
  .team-sec .inner-team-sec .team-area .team-nav.team-prev { left: 20px; }
  .portfolio-sec { margin-bottom: 0; }
  .portfolio-sec .heading { font-size: 38px; }
  .portfolio-foot-detail { padding-top: 30%; padding-bottom: 0; }
  .portfolio-sec .green-btn { padding: 8px 35px; }
  .portfolio-foot-detail .p-text { font-size: 16px; }
  .testimonial-sec .testimonial-area .testimonial-details { padding-right: 0; margin-bottom: 80px; }
  .right-overlay { left: 0; }
  .left-overlay { right: 0; }
  .blog-sec .blog-area .blog-detail { margin-bottom: 80px; }
  .contact-sec .contact-form { width: 100%; }
  .contact-sec .contact-details { width: 100%; margin-left: 0; margin-top: 80px; }
  #contact-sec ul li:first-child { width: auto; }
  #contact-sec ul li { display: block; }
  #contact-sec ul li i { display: block; margin-bottom: 15px; }
  #contact-sec ul li { margin-bottom: 50px; }
  #contact-sec ul li:last-child { margin-bottom: 0; }
  .contact-sec .contact-form { margin-right: 0; margin-left: 0; }
  .contact-sec .contact-form textarea { height: 200px; }
  .contact-sec .contact-background { top: 70px; }
  .company-about { margin-top: 10px; }
  .standalone-row:not(:last-child) { margin-bottom: 8rem; }
  .standalone-area .sub-heading { margin-top: 20px; }
  .standalone-row:nth-child(2) .stand-img-des { padding-left: 18px; padding-right: 18px; }
  .standalone-row .stand-img-des { padding-left: 18px; padding-right: 18px; }
  .slider-sec .inner-slider-content { margin-bottom: 50px; width: 100%; }
  .vertical-stepper { position: static; margin-bottom: 45px; }
  .stepper-step { margin-bottom: 35px; }
  .form-card { padding: 45px 35px; }
  .form-card h3 { font-size: 32px; }
  .contact-sidebar { margin-top: 30px; }
  .quote-form-wrapper { padding: 40px 30px; }
  .inner-slider-content h4 { font-size: 36px; }
  .msg-heading span { font-size: 28px; }
  .contact-sidebar-title { font-size: 26px; }
  .intro-section { padding: 80px 0; }
  .document-list-section { margin-bottom: 0; margin-top: 40px; }
  .login-card { margin-top: 0; margin-bottom: 40px; }
  .document-list-section h3 { font-size: 26px; }
  .intro-section .row { display: flex; flex-direction: column-reverse; }
}
@media screen and (max-width: 767px) {
  header .upper-nav { display: none; }
  .header-appear .sidemenu_btn { display: block; }
  .heading { font-size: 44px; }
  .slider-area .slider-arrows { display: none; }
  header .side-menu .navbar-brand img { max-width: 80%; margin: auto; display: block; }
  .slider-sec .slider-row { padding-top: 50px; }
  .side-nav .navbar-nav { text-align: center; }
  .menu-company-details { margin-bottom: 25px; text-align: center; }
  .social-icons-simple,.side-menu p { text-align: center; }
  .side-nav .navbar-nav .nav-link { font-size: 24px; }
  .header-appear .fixed-nav-links { margin-right: 40px; margin-left: 0; display: none; }
  .sidemenu_btn { top: 50px; }
  .side-menu .inner-wrapper { padding: 3.5rem 3rem; }
  .side-menu .inner-wrapper .row { margin-left: 0; }
  .social-icons-simple,.side-menu p { font-size: 13px; }
  .header-appear .sidemenu_btn { top: 15px; right: 0; }
  .header-appear ~ .side-menu .btn-close { top: 30px; right: 23px; }
  .header-appear .fixed-nav-logo { margin-right: 0; transform: translateY(0); }
  .header-appear .fixed-nav-logo img { width: 130%; }
  header .navbar-brand img { max-width: 130%; }
  .side-menu { width: 100%; }
  .slider-area .slider-detail .slider-slide .slider-inner-content { width: 100%; }
  .slider-area .container .inner-bg-overlay { right: 0; }
  .slider-area .slider-detail { margin-bottom: 50px; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-heading { font-size: 40px; }
  .slider-area .slider-detail .slider-slide .slider-inner-content .slide-text { width: 100%; }
  .slider-area .bg-overlay { width: 100%; }
  .about-sec .services-area .services:nth-child(3) .service-card { margin-bottom: 60px; }
  .about-sec .services-area .services .service-card { margin-bottom: 60px; }
  .about-sec .about-overlay { background-color: #554c86; left: 0; }
  .about-sec .about-area { padding-left: 20px; padding-right: 20px; }
  .stats-sec .stats-heading-area .text { width: 95%; }
  .stats-sec .circular-wrap { padding-top: 80px; }
  .stats-sec .circular-wrap > div { padding-bottom: 80px; }
  .stats-sec .circular-wrap > div:last-child { padding-bottom: 0; }
  .team-sec .team-detail { margin-bottom: 80px; }
  .team-sec .inner-team-sec .team-area { width: 70%; }
  .team-sec .inner-team-sec .team-area .team-nav.team-next { right: 20px; }
  .team-sec .inner-team-sec .team-area .team-nav.team-prev { left: 20px; }
  .portfolio-sec { margin-bottom: 0; }
  .portfolio-sec .heading { font-size: 38px; }
  .portfolio-foot-detail { padding-top: 50%; padding-bottom: 0; }
  .portfolio-sec .green-btn { padding: 8px 25px; }
  .portfolio-foot-detail .p-text { font-size: 11px; }
  .testimonial-sec .testimonial-area .testimonial-details { padding-right: 0; margin-bottom: 80px; }
  .right-overlay { left: 0; }
  .left-overlay { right: 0; }
  .blog-sec .blog-area .blog-detail { margin-bottom: 80px; }
  .contact-sec .contact-form { width: 100%; }
  .contact-sec .contact-details { width: 100%; margin-left: 0; margin-top: 80px; }
  .contact-sec .contact-details ul li:first-child { width: auto; }
  .contact-sec .contact-details ul li { display: block; }
  .contact-sec .contact-details ul li i { display: block; margin-bottom: 15px; }
  .contact-sec .contact-details ul li { margin-bottom: 50px; }
  .contact-sec .contact-details ul li:last-child { margin-bottom: 0; }
  .contact-sec .contact-form { margin-right: 0; margin-left: 0; }
  .contact-sec .contact-form textarea { height: 200px; }
  .contact-sec .contact-background { top: 70px; }
  .company-about { margin-top: 10px; }
  .slider-sec .inner-slider-content h4 { font-size: 45px; }
  .standalone-row:not(:last-child) { margin-bottom: 8rem; }
  .standalone-area .sub-heading { margin-top: 20px; }
  .standalone-row:nth-child(2) .stand-img-des { padding-left: 18px; padding-right: 18px; }
  .standalone-row .stand-img-des { padding-left: 18px; padding-right: 18px; }
  .slider-sec .inner-slider-content { margin-bottom: 0px; width: 100%; }
  header .side-menu .navbar-brand img { max-width: 60%; }
  .registration-section { padding: 50px 0; }
  .form-card { padding: 35px 25px; }
  .form-card h3 { font-size: 26px; }
  .form-buttons { flex-direction: column; }
  .btn-next { margin-left: 0; }
  .success-container h2 { font-size: 30px; }
  .success-container { padding: 0; }
  .success-container i { font-size: 80px; }
  .gst-radio-group { flex-direction: column; gap: 15px; }
  .vertical-stepper { padding: 25px; margin-bottom:20px; }
  .step-circle { width: 50px; height: 50px; font-size: 18px; }
  .otp-inputs { gap: 8px; }
  .otp-inputs input { width: 48px; height: 48px; font-size: 20px; border-radius: 10px; }
  .slider-sec { padding: 0px 0; }
  .quote-form-wrapper { padding: 30px 20px; }
  .contact-sidebar { padding: 30px 20px; }
  .inner-slider-content h4 { font-size: 28px; letter-spacing: 2px; }
  .msg-heading span { font-size: 24px; }
  .contact-sidebar-title { font-size: 22px; }
  .submit-btn { width: 100%; padding: 16px 30px; }
  .contact-info-item { padding: 20px; }
  .contact-icon { width: 50px; height: 50px; margin-right: 16px; }
  .contact-icon i { font-size: 22px; }
  .intro-section { padding: 50px 0; }
  .document-list-section h3 { font-size: 22px; }
  .document-list-section p { font-size: 15px; }
  .document-item .doc-name { font-size: 18px; }
  .login-card { padding: 35px 25px; }
  .login-card h4 { font-size: 26px; }
}
@media (max-width: 479px) {
  .otp-inputs { gap: 5px; }
  .otp-inputs input { width: 50px; height: 50px; font-size: 17px; border-radius: 8px; }
  .login-card { padding: 30px 20px; }
  .login-card h4 { font-size: 24px; }
  .document-item { padding: 12px; }
}
@media (max-width: 399px) {
  .otp-inputs { gap: 4px; }
  .otp-inputs input { width: 40px; height: 40px; font-size: 16px; border-radius: 6px; border-width: 2px; }
  .login-card { padding: 25px 15px; }
  .resend-otp-link { font-size: 13px; }
}
@media (max-width: 359px) {
  .otp-inputs { gap: 3px; }
  .otp-inputs input { width: 38px; height: 38px; font-size: 15px; border-radius: 5px; }
}
@media (max-width: 767px) {
  .blog-content .comment-form .msg-heading span::before { content: ""; position: absolute; top: 53%; height: 1px; width: 50px; display: block; border-bottom: 1px solid #dedede; left: 75%; margin-right: 25px; }
  .blog-content .comment-form .msg-heading span::after { content: ""; position: absolute; top: 53%; height: 1px; width: 50px; display: block; border-bottom: 1px solid #dedede; right: 69%; margin-right: 25px; }
}
.preloader { --base-color: #000; display: flex; align-items: center; justify-content: center; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; z-index: 9999; }
.preloader::before { content: ''; position: absolute; width: 56px; height: 56px; border-radius: 50%; background-color: #fff; background-image: radial-gradient(circle 12px at 28px 28px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at 28px  0px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at  0px 28px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at 56px 28px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at 28px 56px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at 47px  8px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at 47px 47px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at  8px 47px, var(--base-color) 100%, transparent 0), radial-gradient(circle 6px  at  8px  8px, var(--base-color) 100%, transparent 0); background-repeat: no-repeat; animation: rotationBack 3s linear infinite; }
.preloader::after { content: ''; position: absolute; left: calc(50% + 26px); top: calc(50% - 18px); width: 36px; height: 36px; border-radius: 50%; background-color: #fff; background-image: radial-gradient(circle 8px   at 18px 18px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at 18px  0px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at  0px 18px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at 36px 18px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at 18px 36px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at 30px  5px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at 30px 30px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at  5px 30px, var(--base-color) 100%, transparent 0), radial-gradient(circle 3.5px at  5px  5px, var(--base-color) 100%, transparent 0); background-repeat: no-repeat; animation: rotationBack 4s linear infinite reverse; }
@keyframes rotationBack { to { transform: rotate(-360deg); } }


      .maintenance-section {
   flex: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 4rem 1rem;
   background: #f7f7f5;
   min-height: 100vh;
}

.maintenance-inner {
   text-align: center;
   max-width: 560px;
}

/* Gear icon */
.gear-wrap {
   margin-bottom: 2rem;
   position: relative;
   display: inline-block;
}

.gear {
   width: 72px;
   height: 72px;
   animation: spin 6s linear infinite;
}

.gear-sm {
   width: 40px;
   height: 40px;
   position: absolute;
   bottom: -6px;
   right: -18px;
   animation: spin-rev 4s linear infinite;
}

@keyframes spin {
   to {
      transform: rotate(360deg);
   }
}

@keyframes spin-rev {
   to {
      transform: rotate(-360deg);
   }
}

.maintenance-label {
   font-family: Roboto, sans-serif;
   font-size: 0.7rem;
   letter-spacing: 5px;
   text-transform: uppercase;
   color: #999;
   margin-bottom: 1rem;
}

.maintenance-title {
   font-family: Oswald, sans-serif;
   font-size: 62px;
   color: #111;
   line-height: 1.15;
   margin-bottom: 1.2rem;
   text-transform: uppercase;
}

.maintenance-sub {
   font-family: Roboto, sans-serif;
   font-size: 1rem;
   color: #222;
   line-height: 1.8;
   margin-bottom: 2.5rem;
}

.m-divider {
   width: 48px;
   height: 2px;
   background: #111;
   margin: 0 auto 1rem;
}

.notify-row {
   display: flex;
   gap: 0;
   max-width: 380px;
   margin: 0 auto;
   border: 1.5px solid #111;
}

.notify-row input {
   flex: 1;
   border: none;
   outline: none;
   padding: 0.65rem 1rem;
   font-family: 'DM Mono', monospace;
   font-size: 0.78rem;
   background: #fff;
   margin: 0;
   color: #111;
}

.notify-row input::placeholder {
   color: #bbb;
}

.notify-row button {
   border: none;
   background: #111;
   color: #fff;
   font-family: 'DM Mono', monospace;
   font-size: 0.72rem;
   letter-spacing: 2px;
   text-transform: uppercase;
   padding: 0.65rem 1.2rem;
   cursor: pointer;
   transition: background 0.2s;
}

.notify-row button:hover {
   background: #333;
}

.notify-hint {
   font-family: 'DM Mono', monospace;
   font-size: 0.68rem;
   color: #bbb;
   margin-top: 0.75rem;
}