@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0ee55_hj9qcer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0.qu-9752pffj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0mao5jbfbduzp.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0uzt.a6d44yda.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0mvwgmnhv29no.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.09zddjkbdep5a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg-color:#fff;--bg-secondary:#f6f6f9;--card-bg:#fff;--border-color:#00000014;--text-color:#767676;--heading-color:#000;--primary-color:#000;--primary-glow:#00000014;--accent-color:#000;--font-heading:"Poppins", sans-serif;--font-body:"Mulish", sans-serif;--font-mono:"Montserrat", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-body);font-size:15px;line-height:1.8;overflow-x:hidden}body{background-color:var(--bg-color);position:relative;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--heading-color);font-weight:700;line-height:1.3}a{color:inherit;text-decoration:none;transition:all .3s}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1300px;margin:0 auto;padding:0 40px;position:relative}@media (max-width:768px){.container{padding:0 20px}}.hasan_tm_preloader{z-index:999999;justify-content:center;align-items:center;transition:opacity .5s .5s,visibility .5s .5s;display:flex;position:fixed;inset:0}.hasan_tm_preloader:before,.hasan_tm_preloader:after{content:"";z-index:1;background-color:#030305;width:100%;height:50%;transition:height .6s cubic-bezier(.77,0,.175,1);position:absolute;left:0}.hasan_tm_preloader:before{top:0}.hasan_tm_preloader:after{bottom:0}.hasan_tm_preloader.loaded{opacity:0;visibility:hidden}.hasan_tm_preloader.loaded:before,.hasan_tm_preloader.loaded:after{height:0%}.hasan_tm_preloader .spinner_wrap{z-index:2;width:60px;height:60px;transition:opacity .3s;position:relative}.hasan_tm_preloader .spinner{border:3px solid #ffffff26;border-top-color:#fff;border-radius:50%;width:100%;height:100%;animation:1s linear infinite spinner-spin}@keyframes spinner-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mouse-cursor{pointer-events:none;z-index:10000;border-radius:50%;transition:width .3s,height .3s,background-color .3s,border-color .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-outer{border:1px solid var(--primary-color);width:38px;height:38px;transition:transform 80ms ease-out}.cursor-inner{background-color:var(--primary-color);width:6px;height:6px}.mouse-cursor.hover{border-color:var(--primary-color);background-color:#0000000d;width:65px;height:65px}.mouse-cursor.hover .cursor-inner{opacity:0;width:0;height:0}@media (max-width:1024px){.mouse-cursor{display:none}}.hasan_tm_topbar{z-index:100;padding:30px 0;transition:all .3s;position:fixed;top:0;left:0;right:0}.hasan_tm_topbar.animate{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);background-color:#fffffff2;padding:15px 0;box-shadow:0 5px 20px #0000000d}.hasan_tm_topbar .topbar_inner{justify-content:space-between;align-items:center;display:flex}.hasan_tm_topbar .logo{font-family:var(--font-heading);color:var(--heading-color);letter-spacing:2px;align-items:center;gap:8px;font-size:1.8rem;font-weight:900;display:flex}.hasan_tm_topbar .logo span{color:var(--primary-color)}.logo .stroke{-webkit-text-stroke:1.2px var(--heading-color);color:#0000!important}.logo{text-transform:uppercase}.hasan_tm_topbar .menu ul{gap:35px;display:flex}.hasan_tm_topbar .menu ul li a{font-family:var(--font-heading);color:var(--heading-color);padding:0;font-size:.95rem;font-weight:600;display:inline-block;position:relative;overflow:hidden}.hasan_tm_topbar .menu ul li a .first{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);position:absolute;top:0;left:0;transform:translateY(102%)}.hasan_tm_topbar .menu ul li a .second{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);display:block}.hasan_tm_topbar .menu ul li a:hover .first,.hasan_tm_topbar .menu ul li.current a .first{transform:translateY(0)}.hasan_tm_topbar .menu ul li a:hover .second,.hasan_tm_topbar .menu ul li.current a .second{transform:translateY(-102%)}.hasan_tm_mobile_menu{display:none}@media (max-width:991px){.hasan_tm_topbar{display:none}.hasan_tm_mobile_menu{background-color:var(--bg-color);border-bottom:1px solid var(--border-color);z-index:1000;height:70px;padding:15px 20px;display:block;position:fixed;top:0;left:0;right:0}.hasan_tm_mobile_menu .topbar_inner{z-index:1001;height:100%;position:relative}.hasan_tm_mobile_menu .topbar_in{justify-content:space-between;align-items:center;height:100%;display:flex}.hasan_tm_mobile_menu .logo{color:var(--heading-color);letter-spacing:2px;font-size:1.5rem;font-weight:900}.hasan_tm_mobile_menu .logo span{color:var(--primary-color)}.my_trigger{cursor:pointer;flex-direction:column;justify-content:space-between;width:30px;height:18px;display:flex}.my_trigger span{background-color:var(--heading-color);width:100%;height:2px;transition:all .3s cubic-bezier(.77,0,.175,1);display:block}.my_trigger.active span:first-child{background-color:var(--primary-color);transform:translateY(8px)rotate(45deg)}.my_trigger.active span:nth-child(2){opacity:0;transform:scaleX(0)}.my_trigger.active span:nth-child(3){background-color:var(--primary-color);transform:translateY(-8px)rotate(-45deg)}.hasan_tm_mobile_menu .dropdown{background-color:var(--bg-color);z-index:999;justify-content:center;align-items:center;width:100vw;height:100vh;transition:transform .4s cubic-bezier(.77,0,.175,1);display:flex;position:fixed;top:0;left:0;transform:translate(100%)}.hasan_tm_mobile_menu .dropdown.open{transform:translate(0)}.hasan_tm_mobile_menu .dropdown ul{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:flex-start;gap:25px;width:100%;padding:0 40px;display:flex}.hasan_tm_mobile_menu .dropdown ul li{text-align:left;width:100%;list-style:none}.hasan_tm_mobile_menu .dropdown ul li a{font-family:var(--font-heading);color:var(--heading-color);text-transform:uppercase;letter-spacing:2px;padding:5px 0;font-size:1.8rem;font-weight:700;transition:all .3s cubic-bezier(.77,0,.175,1);display:inline-block}.hasan_tm_mobile_menu .dropdown ul li a:hover,.hasan_tm_mobile_menu .dropdown ul li.current a{color:var(--heading-color);transform:translate(15px)}}.hasan_tm_hero{background-color:var(--bg-color);align-items:center;min-height:100vh;display:flex;position:relative}.hasan_tm_hero .background{z-index:1;display:flex;position:absolute;inset:0}.hasan_tm_hero .background .leftpart{background-color:var(--bg-color);width:33%;height:100%}.hasan_tm_hero .background .rightpart{width:67%;height:100%;position:relative;overflow:hidden}.hasan_tm_hero .background .rightpart .inner{width:100%;height:100%;position:relative}.hasan_tm_hero .background .rightpart .inner .overlay_image{filter:grayscale(10%)contrast(110%);z-index:1;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hasan_tm_hero .background .rightpart .inner .myOverlay{z-index:2;background:linear-gradient(90deg,#fff 0%,#fff6 50%,#fff0 100%);position:absolute;inset:0}.glitch_wrap{z-index:3;position:absolute;inset:0;overflow:hidden}.glitch_base{z-index:1;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.glitch_layer{opacity:0;pointer-events:none;z-index:2;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0;transition:none!important}.glitch_one{z-index:2}.glitch_two{z-index:3}.glitch_three{z-index:4;mix-blend-mode:difference;filter:grayscale()invert()contrast(150%)}.hasan_tm_hero .content{z-index:5;width:100%;position:relative}.hasan_tm_hero .content_inner{max-width:80%}.hasan_tm_hero .name h3{text-transform:uppercase;letter-spacing:-3px;font-size:8.5rem;font-weight:900;line-height:.95}.hasan_tm_hero .name h3.stroke{color:#0000;-webkit-text-stroke:2px var(--heading-color);margin-bottom:5px}.hasan_tm_hero .name h3:not(.stroke){color:var(--heading-color);margin-bottom:20px}.hasan_tm_hero .name span{font-family:var(--font-body);color:var(--text-color);letter-spacing:1px;text-transform:none;text-shadow:none;margin-bottom:40px;font-size:1.15rem;font-weight:500;display:block}.hasan_tm_down{cursor:pointer;z-index:6;position:absolute;bottom:50px;left:40px}.hasan_tm_down .line_wrapper{background-color:#ffffff26;width:1px;height:60px;position:relative;overflow:hidden}.hasan_tm_down .line{background-color:var(--primary-color);width:100%;height:25px;animation:2s ease-in-out infinite scrollDown;position:absolute;top:0;left:0}@keyframes scrollDown{0%{transform:translateY(-100%)}50%{transform:translateY(250%)}to{transform:translateY(-100%)}}@media (max-width:991px){.hasan_tm_hero{justify-content:flex-start;align-items:center;min-height:100vh;padding:100px 0 60px;display:flex}.hasan_tm_hero .background{display:block;position:absolute;inset:0;overflow:hidden}.hasan_tm_hero .background .leftpart{display:none}.hasan_tm_hero .background .rightpart{width:100%;height:100%;position:absolute;top:0;left:0}.hasan_tm_hero .background .rightpart .inner{width:100%;height:100%}.hasan_tm_hero .background .rightpart .inner .overlay_image,.glitch_base,.glitch_layer{background-position:50%!important}.hasan_tm_hero .background .rightpart .inner .overlay_image{filter:grayscale()contrast(120%)}.hasan_tm_hero .background .rightpart .inner .overlay_image,.glitch_wrap{transform-origin:50%;transform:scale(1.15)}.hasan_tm_hero .background .rightpart .inner .myOverlay{z-index:2;background:linear-gradient(90deg,#fffffff2 25%,#fff6 65%,#fff0 100%)}.hasan_tm_hero .content{z-index:10;width:100%;position:relative}.hasan_tm_hero .content_inner{max-width:100%}.hasan_tm_hero .name h3{letter-spacing:-1px;font-size:3.8rem;line-height:1.05}.hasan_tm_hero .name span{margin-top:15px;margin-bottom:0;font-size:1.15rem}.hasan_settings_widget{top:25%!important}}.hasan_tm_button{display:inline-block;position:relative}.hasan_tm_button a,.hasan_tm_button button{color:#fff;font-family:var(--font-heading);letter-spacing:1.5px;text-transform:uppercase;z-index:1;cursor:pointer;background-color:#000;border:1px solid #000;border-radius:0;width:auto;padding:15px 40px;font-weight:600;transition:all .35s;display:block;position:relative;overflow:hidden}.hasan_tm_button a:hover,.hasan_tm_button button:hover{color:#000;background-color:#0000;border-color:#000;transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}.hasan_tm_about{background-color:var(--bg-color);padding:140px 0}.about_inner{align-items:center;gap:80px;display:flex}.hasan_tm_about .left{perspective:1000px;width:45%;position:relative}.hasan_tm_about .left .thumbnail{border:1px solid var(--border-color);transform-style:preserve-3d;border-radius:8px;transition:transform .1s ease-out;box-shadow:0 15px 40px #0009}.hasan_tm_about .right{width:55%}.hasan_tm_about .right .name h3{text-transform:uppercase;margin-bottom:5px;font-size:2.8rem;position:relative}.hasan_tm_about .right .name h3 span.bg{color:#0000;-webkit-text-stroke:1.5px #0000000a;z-index:-1;letter-spacing:5px;text-transform:uppercase;pointer-events:none;font-size:6.5rem;font-weight:900;position:absolute;top:-40px;left:0}.hasan_tm_about .right .name span.job{font-family:var(--font-mono);color:var(--primary-color);letter-spacing:3px;text-transform:uppercase;margin-bottom:30px;font-size:.95rem;font-weight:600;display:block}.hasan_tm_about .right .text{margin-bottom:40px}.hasan_tm_about .right .text p{color:var(--text-color);margin-bottom:20px;font-size:1.05rem}@media (max-width:991px){.about_inner{flex-direction:column;gap:50px}.hasan_tm_about .left{width:100%;max-width:450px;margin:0 auto}.hasan_tm_about .right{width:100%}.hasan_tm_about .right .name h3{font-size:2.2rem}}.about_services_wrap{border-top:1px solid var(--border-color);width:100%;margin-top:80px;padding-top:80px}.about_services_wrap .service_inner{grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.about_services_wrap .list_inner{text-align:left;flex-direction:column;gap:15px;transition:all .3s;display:flex}.about_services_wrap .list_inner .svg_icon{color:var(--primary-color);align-items:center;margin-bottom:5px;display:flex}.about_services_wrap .list_inner .svg_icon svg{width:32px;height:32px;stroke:var(--primary-color)}.about_services_wrap .list_inner h3{color:var(--heading-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px;font-size:1.25rem;font-weight:700}.about_services_wrap .list_inner p{color:var(--text-color);font-size:.95rem;line-height:1.6}.about_services_wrap .list_inner:hover{transform:translateY(-4px)}@media (max-width:768px){.about_services_wrap{margin-top:50px;padding-top:50px}.about_services_wrap .service_inner{grid-template-columns:1fr;gap:35px}}.hasan_tm_main_title{justify-content:space-between;align-items:flex-end;width:100%;margin-bottom:70px;display:flex}.hasan_tm_main_title .title h3{text-transform:uppercase;font-size:2.8rem;position:relative}.hasan_tm_main_title .title h3 span.bg{color:#0000;-webkit-text-stroke:1.5px #0000000a;z-index:-1;letter-spacing:5px;text-transform:uppercase;pointer-events:none;font-size:6.5rem;font-weight:900;position:absolute;top:-40px;left:0}.portfolio_filter ul{gap:25px;display:flex}.portfolio_filter ul li a{font-family:var(--font-heading);color:var(--heading-color);padding:0;font-size:.95rem;font-weight:600;display:inline-block;position:relative}.portfolio_filter ul li a .first{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);position:absolute;top:0;left:0;transform:translateY(102%)}.portfolio_filter ul li a .second{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);display:block}.portfolio_filter ul li a:hover .first,.portfolio_filter ul li a.current .first{transform:translateY(0)}.portfolio_filter ul li a:hover .second,.portfolio_filter ul li a.current .second{transform:translateY(-102%)}.portfolio_view_all a{font-family:var(--font-heading);color:var(--heading-color);padding:0;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block;position:relative;overflow:hidden}.portfolio_view_all a .first{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);position:absolute;top:0;left:0;transform:translateY(102%)}.portfolio_view_all a .second{color:var(--heading-color);transition:transform .3s cubic-bezier(.77,0,.175,1);display:block}.portfolio_view_all a:hover .first{transform:translateY(0)}.portfolio_view_all a:hover .second{transform:translateY(-102%)}@media (max-width:991px){.hasan_tm_main_title{flex-direction:column;align-items:flex-start;gap:30px}}.hasan_tm_portoflio{background-color:var(--bg-secondary);padding:140px 0}.portfolio_inner{width:100%}.portfolio_inner ul{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.portfolio_inner ul li{width:100%;height:100%}.portfolio_inner .list_inner{background-color:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;transition:all .4s;position:relative;overflow:hidden;box-shadow:0 5px 25px #0000000d}.portfolio_inner .list_inner .image_wrap{width:100%;height:280px;position:relative;overflow:hidden}.portfolio_inner .list_inner .image_wrap img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.portfolio_inner .list_inner .image_overlay{opacity:0;z-index:2;background-color:#000000d9;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:absolute;inset:0}.portfolio_inner .list_inner .image_overlay span{font-family:var(--font-heading);color:#fff;text-transform:uppercase;letter-spacing:2px;font-size:1.1rem;font-weight:700;transition:transform .4s cubic-bezier(.165,.84,.44,1);transform:translateY(20px)}.portfolio_inner .list_inner .details_title{border-top:1px solid var(--border-color);padding:30px 25px}.portfolio_inner .list_inner .details_title h3{margin-bottom:5px;font-size:1.25rem;transition:color .3s}.portfolio_inner .list_inner .details_title .project_category_label{font-family:var(--font-body);color:var(--text-color);margin-bottom:15px;font-size:.95rem;line-height:1.4;display:block}.tech_icons_row{align-items:center;gap:12px;margin-top:12px;display:flex}.tech_icon_item{border:1px solid var(--border-color);background-color:var(--bg-color);width:32px;height:32px;color:var(--heading-color);border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.165,.84,.44,1);display:inline-flex}.tech_icon_item:hover{background-color:var(--heading-color);color:var(--bg-color);border-color:var(--heading-color);transform:translateY(-2px)}.portfolio_inner .list_inner:hover{border-color:var(--primary-color);transform:translateY(-6px);box-shadow:0 15px 40px #00000014}.portfolio_inner .list_inner:hover .image_wrap img{transform:scale(1.08)}.portfolio_inner .list_inner:hover .image_overlay{opacity:1}.portfolio_inner .list_inner:hover .image_overlay span{transform:translateY(0)}@media (max-width:991px){.portfolio_inner ul{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.portfolio_inner ul{grid-template-columns:1fr}}.hasan_tm_testimonials{background-color:var(--bg-color);padding:140px 0}.testimonials_grid{grid-template-columns:repeat(3,1fr);gap:30px;width:100%;display:grid}.testimonial_card{background-color:var(--bg-secondary);border:1px solid var(--border-color);text-align:left;flex-direction:column;justify-content:space-between;min-height:280px;padding:40px;transition:all .3s;display:flex}.testimonial_card:hover{border-color:var(--primary-color);transform:translateY(-5px);box-shadow:0 10px 30px #00000008}.testimonial_card .text{color:var(--text-color);margin-bottom:30px;font-size:1.02rem;line-height:1.7;position:relative}.testimonial_card .details{align-items:center;gap:15px;display:flex}.testimonial_card .avatar{border:1px solid var(--border-color);background-position:50%;background-size:cover;border-radius:50%;width:50px;height:50px}.testimonial_card .short h3{color:var(--heading-color);margin-bottom:2px;font-size:1.05rem;font-weight:700}.testimonial_card .short p{color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}@media (max-width:991px){.testimonials_grid{grid-template-columns:1fr;gap:30px}}.hasan_tm_news{background-color:var(--bg-secondary);padding:140px 0}.news_inner ul{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.news_inner .list_inner{background-color:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;transition:all .4s;overflow:hidden;box-shadow:0 5px 25px #0000000d}.news_inner .list_inner .image_wrap{width:100%;height:240px;position:relative;overflow:hidden}.news_inner .list_inner .image_wrap img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.news_inner .list_inner .details{padding:30px 25px}.news_inner .list_inner .details .extra{font-family:var(--font-mono);color:var(--primary-color);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-size:.8rem;font-weight:600}.news_inner .list_inner .details .extra span{color:var(--text-color);margin-left:10px}.news_inner .list_inner .details h3.title{font-size:1.25rem;transition:color .3s}.news_inner .list_inner:hover{border-color:var(--primary-color);transform:translateY(-6px);box-shadow:0 15px 40px #00000014}.news_inner .list_inner:hover .image_wrap img{transform:scale(1.06)}@media (max-width:991px){.news_inner ul{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.news_inner ul{grid-template-columns:1fr}}.hasan_tm_contact{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:140px 0;position:relative}.hasan_tm_contact .wrapper{gap:50px;margin-top:50px;display:flex}.hasan_tm_contact .left{width:50%}.hasan_tm_contact .right{width:50%;min-height:380px}.contact_form ul{flex-direction:column;gap:20px;margin-bottom:30px;display:flex}.contact_form input[type=text],.contact_form textarea{background-color:var(--bg-secondary);border:1px solid var(--border-color);width:100%;color:var(--heading-color);font-family:var(--font-body);border-radius:4px;padding:15px 20px;font-size:1rem;transition:all .3s}.contact_form textarea{resize:vertical;min-height:150px}.contact_form input[type=text]:focus,.contact_form textarea:focus{border-color:var(--primary-color);box-shadow:0 0 12px var(--primary-glow);outline:none}.empty_notice{color:#f33;margin-bottom:15px;font-weight:600;display:none}.returnmessage{color:#0fc;margin-bottom:15px;font-weight:600;display:none}.interactive_node_map{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 5px 25px #0000000d}.interactive_node_map svg{width:100%;height:100%}@media (max-width:991px){.hasan_tm_contact .wrapper{flex-direction:column;gap:50px}.hasan_tm_contact .left,.hasan_tm_contact .right{width:100%}.hasan_tm_contact .right{height:300px}}.hasan_tm_copyright{color:#767676;background:linear-gradient(#090a0f 0%,#000 100%);border-top:1px solid #ffffff0d;padding:100px 0 60px;position:relative;overflow:hidden}.copyright_inner{z-index:2;position:relative}.copyright_inner ul{grid-template-columns:repeat(4,1fr);align-items:flex-start;gap:30px;width:100%;display:grid}.copyright_inner ul li{text-align:left;flex-direction:column;gap:12px;transition:all .3s;display:flex}.copyright_inner ul li span.footer_label{font-family:var(--font-heading);color:#fff;text-transform:uppercase;letter-spacing:1.5px;align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.copyright_inner ul li span.footer_label svg{color:#ffffff59;transition:all .3s}.copyright_inner ul li:hover span.footer_label svg{color:#fff;transform:scale(1.1)}.copyright_inner ul li span.footer_value{color:#a2a2a2;font-size:.95rem;line-height:1.5;transition:color .3s}.copyright_inner ul li span.footer_value a{color:#a2a2a2;text-decoration:none;transition:all .3s cubic-bezier(.25,.46,.45,.94);position:relative}.copyright_inner ul li span.footer_value a:after{content:"";background-color:#fff;width:0;height:1px;transition:width .3s;position:absolute;bottom:-2px;left:0}.copyright_inner ul li span.footer_value a:hover{color:#fff}.copyright_inner ul li span.footer_value a:hover:after{width:100%}.copyright_inner .social{margin-top:2px}.copyright_inner .social ul{flex-wrap:wrap;gap:8px;display:flex}.copyright_inner .social ul li{gap:0}.copyright_inner .social ul li a{color:#a2a2a2;background-color:#ffffff05;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .4s cubic-bezier(.165,.84,.44,1);display:flex}.copyright_inner .social ul li a svg{transition:transform .4s cubic-bezier(.165,.84,.44,1)}.copyright_inner .social ul li a:hover{color:#000;background-color:#fff;border-color:#fff;transform:translateY(-5px);box-shadow:0 8px 24px #ffffff26}.copyright_inner .social ul li a:hover svg{transform:scale(1.1)}@media (max-width:991px){.copyright_inner ul{grid-template-columns:repeat(2,1fr);gap:40px}}@media (max-width:600px){.copyright_inner ul{text-align:center;grid-template-columns:1fr;gap:40px}.copyright_inner ul li{text-align:center;align-items:center}.copyright_inner ul li span.footer_label,.copyright_inner .social ul{justify-content:center}}.modalbox_popup{z-index:100000;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);opacity:0;visibility:hidden;background-color:#030305d9;justify-content:center;align-items:center;padding:40px 20px;transition:all .4s;display:flex;position:fixed;inset:0}.modalbox_popup.active{opacity:1;visibility:visible}.modalbox_popup .popup_inner{border:1px solid var(--border-color);background-color:#fff;border-radius:12px;width:100%;max-width:850px;max-height:85vh;padding:50px;transition:transform .4s cubic-bezier(.165,.84,.44,1);position:relative;overflow-y:auto;transform:scale(.9);box-shadow:0 20px 60px #00000026}.modalbox_popup.active .popup_inner{transform:scale(1)}.modalbox_popup .close_btn{border:1px solid var(--border-color);cursor:pointer;width:40px;height:40px;color:var(--heading-color);z-index:10;border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;transition:all .3s;display:flex;position:absolute;top:25px;right:25px}.modalbox_popup .close_btn:hover{border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 0 10px var(--primary-glow);transform:rotate(90deg)}.modalbox_popup .main_details{gap:40px;margin-bottom:40px;display:flex}.modalbox_popup .textbox{width:65%}.modalbox_popup .textbox p{color:var(--text-color);margin-bottom:20px;font-size:1.05rem}.modalbox_popup .detailbox{border-left:1px solid var(--border-color);width:35%;padding-left:40px}.modalbox_popup .detailbox ul{flex-direction:column;gap:20px;display:flex}.modalbox_popup .detailbox ul li{flex-direction:column;gap:5px;display:flex}.modalbox_popup .detailbox ul li .first{font-family:var(--font-heading);text-transform:uppercase;color:var(--primary-color);letter-spacing:1px;font-size:.85rem;font-weight:700}.modalbox_popup .detailbox ul li span:last-child{color:var(--heading-color);font-size:1rem;font-weight:600}.modalbox_popup .popup_inner img{border-radius:8px;width:100%;margin-bottom:30px}.modalbox_popup .popup_title{text-transform:uppercase;border-bottom:1px solid var(--border-color);margin-bottom:25px;padding-bottom:15px;font-size:2.2rem}@media (max-width:768px){.modalbox_popup .popup_inner{padding:30px 20px}.modalbox_popup .main_details{flex-direction:column;gap:30px}.modalbox_popup .textbox,.modalbox_popup .detailbox{border-left:none;width:100%;padding-left:0}.modalbox_popup .popup_title{font-size:1.6rem}}.services_dots{justify-content:center;gap:10px;width:100%;margin-top:40px;display:flex}.services_dots .dot{cursor:pointer;background-color:#00000026;border-radius:50%;width:10px;height:10px;transition:all .3s}.services_dots .dot.active{background-color:var(--primary-color);border-radius:5px;width:25px}@media (max-width:768px){.about_services_wrap .service_inner{justify-content:center;width:100%;display:flex}.about_services_wrap .list_inner{width:100%;animation:.4s serviceFadeIn;display:none}.about_services_wrap .list_inner.active{display:flex}}@keyframes serviceFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.title_flex{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.hasan_semicircle{pointer-events:none;background-color:#e3e3e6;border-bottom-right-radius:40px;border-bottom-left-radius:40px;width:80px;height:40px;margin-bottom:8px;transition:transform .3s;display:inline-block}.hasan_semicircle:hover{transform:scaleY(1.1)}.testimonials_semicircle_wrap,.news_semicircle_wrap{z-index:10;pointer-events:none;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}.testimonials_semicircle_wrap .hasan_semicircle,.news_semicircle_wrap .hasan_semicircle{margin-bottom:0}@media (max-width:768px){.hasan_tm_main_title .hasan_semicircle{display:none}}.copyright_bottom{border-top:1px solid #ffffff1a;width:100%;margin-top:50px;padding-top:30px}.copyright_bottom .bottom_inner{color:#767676;justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.copyright_bottom .bottom_links{gap:25px;display:flex}.copyright_bottom .bottom_links a{color:#767676;transition:color .3s}.copyright_bottom .bottom_links a:hover{color:#fff}@media (max-width:768px){.copyright_bottom .bottom_inner{text-align:center;flex-direction:column;gap:15px}}.hasan_mobile_arrow{color:#fff;z-index:10;opacity:0;pointer-events:none;background-color:#000;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s cubic-bezier(.165,.84,.44,1);display:flex;position:absolute;bottom:0;right:0;transform:translateY(10px)}.overlay_image:hover .hasan_mobile_arrow,.about_inner .left:hover .hasan_mobile_arrow,.about_services_wrap .list_inner:hover .hasan_mobile_arrow,.portfolio_inner .list_inner:hover .hasan_mobile_arrow,.testimonial_card:hover .hasan_mobile_arrow,.news_inner .list_inner:hover .hasan_mobile_arrow,.interactive_node_map:hover .hasan_mobile_arrow{opacity:1;transform:translateY(0)}@media (max-width:768px){.hasan_mobile_arrow{opacity:1!important;transform:none!important}.testimonials_grid{justify-content:center;width:100%;display:flex!important}.testimonial_card{animation:.4s testimonialFadeIn;width:100%!important;display:none!important}.testimonial_card.active{display:flex!important}}@keyframes testimonialFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.contact_semicircle_wrap{z-index:10;pointer-events:none;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}.contact_semicircle_wrap .hasan_semicircle{margin-bottom:0}.hasan_settings_widget{color:#fff;z-index:10;cursor:pointer;background-color:#000;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:absolute;top:35%;right:0;box-shadow:-2px 2px 10px #00000026}.hasan_settings_widget svg{color:#fff;animation:6s linear infinite spin-gear}.hasan_settings_widget:hover{background-color:#222}@keyframes spin-gear{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hasan_tm_skills{background-color:var(--bg-secondary);width:100%;padding:140px 0}.skills_inner{justify-content:space-between;align-items:flex-start;gap:80px;margin-top:40px;display:flex}.skills_inner .left_side{flex-direction:column;gap:35px;width:50%;display:flex}.bar_wrap{flex-direction:column;gap:12px;width:100%;display:flex}.bar_label{justify-content:space-between;align-items:center;width:100%;display:flex}.bar_label .name{font-family:var(--font-heading);color:var(--heading-color);text-transform:uppercase;letter-spacing:.5px;font-size:1.05rem;font-weight:700}.bar_label .percentage{font-family:var(--font-heading);color:var(--heading-color);font-size:1rem;font-weight:600}.bar_track{background-color:#0000000d;border-radius:0;width:100%;height:6px;position:relative;overflow:hidden}.bar_fill{background-color:#000;border-radius:0;height:100%;transition:width 1.5s cubic-bezier(.165,.84,.44,1);position:absolute;top:0;left:0}.skills_inner .right_side{justify-content:flex-end;width:50%;display:flex}.circle_wrap{grid-template-columns:repeat(3,1fr);gap:40px 30px;width:100%;display:grid}.circle_item{flex-direction:column;flex:1;align-items:center;gap:20px;display:flex}.circle_outer{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.circle_outer svg{width:100%;height:100%;position:absolute;top:0;left:0;transform:rotate(-90deg)}.circle_outer .percent_num{font-family:var(--font-heading);color:var(--heading-color);z-index:2;font-size:1.15rem;font-weight:700}.circle_label{font-family:var(--font-heading);color:var(--heading-color);text-align:center;text-transform:uppercase;letter-spacing:.5px;font-size:1.05rem;font-weight:700}.hasan_tm_timeline{background-color:var(--bg-color);width:100%;padding:140px 0}.timeline_inner{justify-content:space-between;gap:60px;margin-top:40px;display:flex}.timeline_column{flex-direction:column;width:48%;display:flex}.column_title{margin-bottom:40px}.column_title h4{font-family:var(--font-heading);color:var(--heading-color);text-transform:uppercase;letter-spacing:1px;font-size:1.6rem;font-weight:700}.timeline_list{flex-direction:column;padding-left:30px;display:flex;position:relative}.timeline_line{z-index:1;background-color:#00000014;width:1px;position:absolute;top:10px;bottom:10px;left:9px}.timeline_item{align-items:center;gap:25px;margin-bottom:40px;display:flex;position:relative}.timeline_item:last-child{margin-bottom:0}.timeline_node{border:2px solid var(--heading-color);background-color:var(--bg-color);z-index:2;border-radius:50%;width:19px;height:19px;transition:all .3s;position:absolute;top:50%;left:-30px;transform:translateY(-50%)}.timeline_item:hover .timeline_node{background-color:var(--heading-color)}.year_pill{color:#fff;font-family:var(--font-heading);text-align:center;background-color:#000;border-radius:30px;justify-content:center;align-items:center;min-width:140px;padding:8px 24px;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.165,.84,.44,1);display:inline-flex;box-shadow:0 4px 10px #00000014}.timeline_item:hover .year_pill{transform:scale(1.05)}.timeline_details{flex-direction:column;display:flex}.timeline_details h5{font-family:var(--font-heading);color:var(--heading-color);margin:0 0 4px;font-size:1.15rem;font-weight:700;line-height:1.3}.timeline_details p{font-family:var(--font-body);color:var(--text-color);margin:0;font-size:.95rem;font-style:italic}@media (max-width:991px){.hasan_tm_skills,.hasan_tm_timeline{padding:80px 0}.skills_inner{flex-direction:column;gap:50px}.skills_inner .left_side,.skills_inner .right_side{width:100%}.skills_inner .right_side{justify-content:center}.timeline_inner{flex-direction:column;gap:50px}.timeline_column{width:100%}}@media (max-width:576px){.hasan_tm_hero .background .rightpart .inner .overlay_image,.glitch_wrap{transform:scale(2.2)!important}.circle_wrap{grid-template-columns:repeat(2,1fr);gap:30px;display:grid}.circle_item{flex:none;width:100%}.timeline_item{flex-direction:column;align-items:flex-start;gap:12px}.timeline_node{background-color:var(--bg-color);top:18px;transform:none}}
