.timeline__intro{margin-bottom:40px}.timeline__wrapper{display:flex;position:relative}.timeline__line{z-index:-99;height:calc(100% + 300px);position:absolute}.timeline__line:before,.timeline__line:after{content:""}.timeline__line:before{z-index:90;border-right:4px solid #f4f4f4;height:300px;margin-right:-13px;display:block;position:sticky;top:calc(100vh - 300px)}.timeline__line:after{border-right:2px solid #5332f9;height:calc(100% - 50px);position:absolute;top:10px;left:9px}.timeline__list{z-index:99;flex-direction:column;gap:40px;transition:opacity 1s;display:flex}.timeline__list--isVisible .timeline__list-item>p{opacity:1;transform:translate(0)}.timeline__list--isVisible .timeline__list-item:first-child>p{transition-delay:.2s}.timeline__list--isVisible .timeline__list-item:nth-child(2)>p{transition-delay:.4s}.timeline__list--isVisible .timeline__list-item:nth-child(3)>p{transition-delay:.6s}.timeline__list--isVisible .timeline__list-item:nth-child(4)>p{transition-delay:.8s}.timeline__list-item{padding-left:30px;position:relative}.timeline__list-item:before{content:"";background-color:#5332f9;border-top:5px solid #f4f4f4;border-bottom:5px solid #f4f4f4;border-radius:50%;width:10px;height:10px;position:absolute;top:0;left:5px}.timeline__list-item>p{opacity:0;margin-bottom:0;transition:transform .5s,opacity 1s;transform:translate(15%)}.timeline__list-item:last-child{background-color:#f4f4f4;border-top-left-radius:10%}
.contact__intro{margin-bottom:40px}.contact__form{max-width:420px}.contact__form__top-wrapper,.contact__form__bottom-wrapper{gap:15px;display:flex}.contact__form__top-wrapper{flex-direction:column;margin-bottom:20px}.contact__form__button-wrapper{justify-content:space-between;margin-top:15px;display:flex}.contact__form__button-wrapper p{margin:0}.contact__form input[type=text],.contact__form input[type=email],.contact__form textarea{border:none;border-radius:4px;padding:15px;box-shadow:0 2px 8px #63636333}.contact__form input[type=text]:focus,.contact__form input[type=email]:focus,.contact__form textarea:focus{outline-offset:3px;outline-width:1px;outline-color:#5332f9}.contact__form input[type=text]{width:100%}.contact__form-button{letter-spacing:.04rem;align-self:flex-end;margin-right:10px;padding:0;font-weight:800}.contact__form-message-input{resize:none;height:200px}.contact__form label{margin-left:10px;font-weight:700}
