:root{--heading-font: "DM Sans", sans-serif;--heading-size: 48px;--body-font: "Open Sans", sans-serif;--text-color: #666;--primary-color: #00C0FD;--secondary-color: #E70FAA;--gradient-color: linear-gradient(45deg, #E70FAA, #00C0FD);--transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1)}*,*:before,*:after{box-sizing:border-box}body{font-family:var(--body-font);font-size:16px;font-weight:400;background:#f1f1f1;color:var(--text-color);margin:0;padding:0}.site-logo{position:relative;display:block}.site-logo>*+*{margin-top:5px}.site-logo small{display:block;font-size:30px;font-weight:700;line-height:normal;letter-spacing:.2em;color:var(--primary-color);background:linear-gradient(45deg, #E70FAA, #00C0FD);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}.site-logo strong{display:block;font-size:20px;font-weight:300;line-height:1;letter-spacing:-0.05em}.site-smi{position:relative;display:block}.site-smi ul{position:relative;display:flex;align-items:center;margin:0;padding:0}.site-smi ul>*+*{margin-left:20px}.site-smi ul li{position:relative;display:block}.site-smi ul li a{display:inline-block;vertical-align:middle;font-size:25px;color:var(--default-color);transition:color var(--transition)}.site-smi ul li a:focus,.site-smi ul li a:hover{color:var(--secondary-color)}.site-navigation{position:relative;display:block}.site-navigation ul{display:flex;margin:0;padding:0}.site-navigation ul>*+*{margin-left:30px}.site-navigation ul li{display:block}.site-navigation ul li a{display:inline-block;vertical-align:middle;font-family:var(--heading-font);font-size:16px;font-weight:500;line-height:1.3;letter-spacing:.05em;text-decoration:none;color:var(--text-color);transition:color var(--transition)}.site-navigation ul li a:focus,.site-navigation ul li a:hover{color:var(--primary-color)}.site-heading{position:relative;display:block;text-align:center}.site-heading h2{display:inline-block;vertical-align:middle;font-size:var(--heading-size);font-style:normal;font-weight:600;line-height:1;background:var(--gradient-color);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);margin:0}.site-subheading{position:relative;display:block;font-size:32px;font-style:normal;font-weight:400;line-height:1;text-align:center}.site-subheading p{margin:0}.site-subheading>*+*{margin-top:1em}.site-container{position:relative;display:block;margin:0 auto;padding:0 15px;max-width:1200px}.site-header{position:relative;display:block;margin-top:50px}.site-header__wrap{position:relative;display:block}.site-header__container{position:relative;display:grid;grid-template-columns:repeat(3, max-content);align-items:center;justify-content:space-between;grid-gap:30px;gap:30px}.site-header__logo{position:relative;display:block}.site-header__navigation{position:relative;display:block}.site-footer{position:relative;display:block;margin:200px 0 50px}.site-footer__wrap{position:relative;display:block}.site-footer__top{position:relative;display:grid;grid-template-columns:repeat(3, max-content);align-items:center;justify-content:space-between;grid-gap:30px;gap:30px}.site-footer__logo{position:relative;display:block}.site-footer__contact{position:relative;display:block}.site-footer__contact ul{display:flex;align-items:center;margin:0;padding:0}.site-footer__contact ul>*+*{margin-left:30px}.site-footer__contact ul li{display:block}.site-footer__contact ul li a{display:inline-block;vertical-align:middle;font-family:var(--heading-font);font-size:16px;font-weight:500;line-height:1.3;letter-spacing:.05em;text-decoration:none;color:var(--text-color);transition:color var(--transition)}.site-footer__contact ul li a:focus,.site-footer__contact ul li a:hover{color:var(--primary-color)}.site-footer__bottom{position:relative;display:block;margin-top:40px;padding-top:40px;border-top:1px solid #d7d7d7}.site-footer__navigation{position:relative;display:block}.site-footer__navigation ul{justify-content:center}.site-footer__credits{position:relative;display:block;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.025em;text-align:center;margin-top:10px}.site-footer__credits p{margin:0}.site-main{position:relative;display:block}.hero{position:relative;display:block;margin-top:100px}.hero__wrap{position:relative;display:block}.hero__container{position:relative;display:flex;align-items:center;justify-content:space-between}.hero__container>*+*{margin-left:30px}.hero__text{position:relative;display:block}.hero__text h1{display:block;font-family:var(--heading-font);font-size:var(--heading-size);font-weight:500;letter-spacing:.025em;line-height:1.3;margin:0}.hero__text span{font-weight:600;background:var(--gradient-color);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}.hero__img{position:relative;display:block;width:450px;height:450px;border-radius:50%;border:10px solid rgba(0,0,0,0);background:var(--gradient-color) border-box;flex-shrink:0;overflow:hidden}.hero__img img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center}.tech-stack{position:relative;display:block;margin-top:200px}.tech-stack__wrap{position:relative;display:block}.tech-stack__container{position:relative;display:block}.tech-stack__heading{position:relative;display:block}.tech-stack__text{position:relative;display:block;margin-top:20px}.tech-stack__list{position:relative;display:grid;justify-content:space-between;align-items:center;grid-template-columns:repeat(5, minmax(0, 1fr));place-items:center;grid-gap:50px;gap:50px;margin-top:100px}.tech-stack__list__item{position:relative;display:block}.tech-stack__list__item img{display:block;height:auto;max-width:100%}.projects{position:relative;display:block;margin-top:200px}.projects__wrap{position:relative;display:block}.projects__container{position:relative;display:block}.projects__heading{position:relative;display:block}.projects__text{position:relative;display:block;margin-top:20px}.projects__list{position:relative;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));grid-gap:30px;gap:30px;margin-top:100px}.projects__list__item{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:10px;box-shadow:0px 10px 5px -7px rgba(0,0,0,.1);overflow:hidden}.projects__list__item:hover .projects__list__img{transform:scale(1.2)}.projects__list__item:hover .projects__list__name{opacity:0;transform:scale(1.2)}.projects__list__item:hover .projects__list__overlay{opacity:1}.projects__list__img{position:relative;display:block;transition:transform var(--transition);overflow:hidden}.projects__list__img img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.projects__list__img canvas{display:block;width:100%}.projects__list__name{position:absolute;top:0;left:0;right:0;bottom:0;display:grid;place-items:center;padding:20px;font-family:var(--heading-font);font-size:40px;font-weight:600;line-height:1;letter-spacing:.1em;text-align:center;color:#fff;text-transform:uppercase;text-align:center;transition:var(--transition);transition-property:opacity,transform}.projects__list__name.access{background:rgba(0,0,0,.85)}.projects__list__name.loft{background:rgba(47,121,190,.85)}.projects__list__name.taocrowd{background:rgba(251,68,40,.85)}.projects__list__overlay{position:absolute;z-index:2;top:0;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;flex-direction:column;text-align:center;padding:40px 30px;background:rgba(137,137,137,.95);color:#fff;flex-grow:1;opacity:0;transition:opacity var(--transition)}.projects__list__text{display:block;font-size:18px;font-weight:400;line-height:1.4}.projects__list__text p{margin:0}.projects__list__link{display:block;margin-top:20px}.projects__list__link a{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:50px;font-size:13px;font-weight:600;line-height:1;letter-spacing:.025em;color:#fff;text-decoration:none;text-transform:uppercase;border:2px solid #fff;transition:var(--transition);transition-property:color,border,background;overflow:hidden}.projects__list__link a:focus,.projects__list__link a:hover{background:#000;border-color:#000;color:#fff}.projects__list__link a>*+*{margin-left:10px}.contact{position:relative;display:block;margin-top:200px}.contact__wrap{position:relative;display:block}.contact__container{position:relative;display:block}.contact__text{position:relative;display:block;text-align:center}.contact__text h2{display:block;line-height:1.2}.contact__text p{display:block;font-size:var(--heading-size);font-style:normal;font-weight:300;line-height:1;text-align:center;margin:0 0 10px}@media only screen and (max-width: 1199px){:root{--heading-size: 40px}.site-container{max-width:950px}.hero__img{width:350px;height:350px}.projects__list__name{font-size:30px}.projects__list__overlay{padding:30px 20px}.projects__list__text p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}}@media only screen and (max-width: 991px){:root{--heading-size: 35px}.site-subheading{font-size:20px}.site-header{margin-top:30px}.site-header__container{grid-template-columns:repeat(2, max-content)}.site-header__navigation{display:none}.hero{margin-top:75px}.hero__container{display:block}.hero__text{text-align:center}.hero__img{width:300px;height:300px;margin:30px auto 0}.tech-stack{margin-top:100px}.tech-stack__list{margin-top:50px;grid-gap:20px;gap:20px}.projects{margin-top:100px}.projects__list{margin-top:50px}.projects__list__text{font-size:15px}.contact{margin-top:100px}.site-footer{margin-top:150px}}@media only screen and (max-width: 767px){.projects__list{margin:50px auto 0;grid-template-columns:1fr;max-width:500px}.projects__list__overlay{justify-content:center}.contact__text p,.contact__text h2{font-size:30px}.site-footer__top{grid-template-columns:1fr;text-align:center;grid-gap:15px;gap:15px}.site-footer__contact ul{justify-content:center}.site-footer__smi{padding:0}.site-footer__smi ul{justify-content:center}.site-footer__navigation ul{display:block;text-align:center}.site-footer__navigation ul>*+*{margin:10px 0 0}}@media only screen and (max-width: 567px){.contact__text p,.contact__text h2{font-size:25px}}@media only screen and (max-width: 480px){.contact__text p,.contact__text h2{font-size:20px}}