@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap'); *{ margin: 0; padding: 0; box-sizing: border-box; font-family: "Open Sans", sans-serif; } a{ text-decoration: none; color: #000; } img{ object-fit: cover; } html, body{ height: 100%; } body { display: flex; flex-direction: column; } .navbar{ display: flex; align-items: center; justify-content: space-between; padding: 20px 40px; } .navbar__logo{ flex: 1; font-size: 1.6rem; font-weight: 700; } .navbar__notch{ background: #f7f7f7; padding: 8px 20px 8px 28px; display: flex; align-items: center; justify-content: center; gap: 20px; border-radius: 2rem; border: 1px solid #ccc; } .navbar__notch p{ font-size: 0.8rem; font-weight: 500; position: relative; } .navbar__notch p::before{ position: absolute; content: ""; background: #000; width: 5px; height: 5px; border-radius: 50%; top: 50%; transform: translateY(-50%); left: -10px; } .navbar__notch a{ font-size: 0.9rem; font-weight: 600; position: relative; } .navbar__notch a::before{ position: absolute; content: "New"; padding: 2px 6px; background: #d85f44; color: #fff; font-size: 0.7rem; border-radius: 10px; top: -18px; right: -12px; } .navbar__menu{ display: flex; flex: 1; align-items: center; justify-content: flex-end; gap: 1rem; } .navbar__menu-link{ font-size: 0.8rem; font-weight: 600; background: #f7f7f7; padding: 6px 14px; border-radius: 20px; border: 1px solid #ccc; transition: all 0.3s ease; } .navbar__menu-link:hover, .hero-course__mode-option.selected, .hero-course__duration-option.selected{ background: #edefde; border-color: transparent; } .sidebar { flex: 1; background: #111; padding: 20px; display: flex; flex-direction: column; justify-content: space-between; transition: all 0.3s ease; } .sidebar>a { font-size: 24px; font-weight: 500; color: #eee; } .sidebar .side-nav { display: flex; flex-direction: column; gap: 5px; } .sidebar .side-nav .item { display: flex; align-items: center; gap: 5px; padding: 12px; border-radius: 10px; cursor: pointer; } .sidebar .side-nav .item a { color: #a4a8ac; transition: all 0.3s ease; } .sidebar .side-nav .item i { font-size: 20px; color: #a4a8ac; transition: all 0.3s ease; } .sidebar .side-nav .item.active { background: #fafafa; } .sidebar .side-nav .item.active a, .sidebar .side-nav .item.active i { color: #111; font-weight: bold; } .sidebar .side-nav .item:hover a, .sidebar .side-nav .item:hover i{ color: #fafafa; } .sidebar .side-profile { background: #fafafa; padding: 14px 10px; border-radius: 10px; } .sidebar .side-profile .info img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; } .sidebar .side-profile .info { display: flex; flex-direction: column; align-items: center; } .sidebar .side-profile .info a { font-weight: bold; margin-top: 8px; } .sidebar .side-profile .info p { font-size: 12px; color: #666869; margin: 6px 0 25px; } .sidebar .side-profile .skills .skill-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; } .sidebar .side-profile .skills .skill-tags .item { padding: 6px; border-radius: 4px; background: #e7e7e7; font-size: 10px; font-weight: 500; color: #666869; } .sidebar .side-profile button { margin-top: 16px; width: 100%; border: none; padding: 10px; background: #111; color: #fafafa; border-radius: 10px; cursor: pointer; } .container { flex: 8; padding: 20px 40px 20px 24px; } .container .nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; } .container .nav .search, .container .nav .city { display: flex; align-items: center; background: #F2F2F2; border-radius: 10px; width: 100%; } .container .nav .search input, .container .nav .city input { width: 100%; padding: 12px; border: none; background: transparent; padding-left: 36px; } .container .nav .search i, .container .nav .city i { position: absolute; font-size: 23px; padding: 6px; color: #666869; } .container .nav>button { background: #111; color: #fafafa; border: none; padding: 10px 30px; cursor: pointer; border-radius: 8px; } .container .nav>button#menuToggle { display: flex; padding: 6px; font-size: 22px; display: none; } .container .nav>i { font-size: 20px; background: #F2F2F2; padding: 10px; border-radius: 50%; } .container .nav .user-info { display: flex; align-items: center; gap: 10px; } .container .nav .user-info img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; } .container .nav .user-info a { display: flex; align-items: center; font-weight: bold; } .container .nav .user-info a i { font-size: 20px; } .container .nav .user-info p { font-size: 13px; } .container .main { display: flex; } .container .main .content { flex: 9; } .container .main .content .header { margin-top: 20px; } .container .main .content .header h4 span { font-size: 13px; color: #a4a8ac; font-weight: 500; } .container .main .content .header p { margin-top: 8px; font-size: 13px; font-weight: 500; } .container .main .content .job-cards { margin-top: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; opacity: 0; /* Начальное состояние: невидимый */ transform: translateY(20px); /* Начальное состояние: сдвинут вниз */ transition: opacity 0.5s ease-out, transform 0.5s ease-out; /* Плавный переход */ } .container .main .content .job-cards.visible { opacity: 1; /* Полная видимость */ transform: translateY(0); /* Возвращаем на место */ } .container .main .content .job-cards .card { cursor: pointer; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); padding: 12px; border: 2px solid #F2F2F2; border-radius: 10px; transition: all 0.3s ease; margin: 10px; } .container .main .content .job-cards .card img{ width: 70px; height: 70px; border-radius: 1rem; } .container .main .content .job-cards .card:hover { box-shadow: none; } .container .main .content .job-cards .card .card-header { display: flex; justify-content: space-between; } .container .main .content .job-cards .card .card-header>i { font-size: 24px; color: #a4a8ac; cursor: pointer; transition: all 0.3s ease; } .container .main .content .job-cards .card .card-header>i:hover { color: #111; } .container .main .content .job-cards .card .card-header .job-info { display: flex; gap: 10px; } .container .main .content .job-cards .card .card-header .job-info i { font-size: 34px; background: #F2F2F2; width: 46px; height: 46px; display: flex; align-items: center; justify-content: center; } .container .main .content .job-cards .card .card-header .job-info h5 { font-weight: 500; } .hidden { display: none; /* Скрываем элементы, которые не соответствуют запросу */ } .fade-out { opacity: 0; transition: opacity 0.5s ease-out; } .container .main .content .job-cards .card .card-header .job-info h5 span { font-size: 12px; color: #a4a8ac; } .container .main .content .job-cards .card .card-header .job-info a { font-weight: bold; font-size: 13px; margin-top: 6px; } .container .main .content .job-cards .card .card-header .job-info p { font-size: 12px; } .container .main .content .job-cards .card .card-tags { margin: 12px 0; display: flex; gap: 10px; } .container .main .content .job-cards .card .card-tags a { font-size: 13px; background: #F2F2F2; padding: 5px; border-radius: 4px; } .container .main .content .job-cards .card .card-desc { font-size: 13px; color: #a4a8ac; line-height: 18px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; height: calc(18px * 3); } .container .main .filters { flex: 2; padding-left: 30px; display: flex; flex-direction: column; gap: 20px; } .container .main .filters .header { margin-top: 36px; display: flex; align-items: center; justify-content: space-between; } .container .main .filters .header a, .container .main .filters .item .title a { color: #ca3844; font-size: 13px; font-weight: bold; } .container .main .filters .item .title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; } .container .main .filters .item .checkbox { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; } .container .main .filters .item .checkbox div { display: flex; align-items: center; gap: 8px; } .container .main .filters .item .checkbox input[type="checkbox"] { width: 14px; height: 14px; accent-color: #111; cursor: pointer; } .container .main .filters .item .checkbox label { font-size: 15px; font-weight: 500; color: #a4a8ac; } .container .main .filters .item .checkbox p { font-size: 14px; font-weight: 500; } .container .main .filters .item .location { background: #F2F2F2; margin: 14px 0; padding: 12px; position: relative; display: flex; align-items: center; border-radius: 10px; } .container .main .filters .item .location input { width: 100%; padding-left: 24px; background: transparent; border: none; } .container .main .filters .item .location i { position: absolute; font-size: 18px; color: #a4a8ac; } .gradient{ background: linear-gradient(180deg, #fff 0%, #e0f2ff 20%, #b0d4ff 100%); margin-top: 5rem; } .subscription{ text-align: center; padding: 60px 40px; } .subscription__title{ font-size: 2.5rem; font-weight: 600; } .subscription__description{ margin: 1rem 0 2rem; } .subscription__form{ position: relative; background: #fff; display: inline; padding: 0.6rem 0.4rem 0.7rem; border-radius: 2rem; } .subscription__input{ padding: 0.4rem; width: 320px; border: none; outline: none; } .subscription__button{ padding: 0.5rem 0.8rem; border: none; border-radius: 2rem; background: #a2cff8; cursor: pointer; transition: all 0.3s ease; } .subscription__button:hover{ background: #83bff5; } .footer{ display: flex; flex-direction: column; padding: 0 40px; margin-top: 4rem; } .footer p{ background-color: #111; } .footer-links{ display: flex; justify-content: space-around; } .footer__column{ display: flex; flex-direction: column; gap: 1rem; } .footer__link{ transition: all 0.3s ease; } .footer__link:hover{ transform: translateX(8px); } .footer__brand-name{ font-size: 1.5rem; font-weight: bold; } .footer__brand-name p{ background-color: #111; } .footer__copyright{ font-size: 0.8rem; font-weight: 600; margin: 2rem 0 1rem; text-align: center; } .footer__copyright1{ font-size: 0.8rem; font-weight: 600; text-align: center; } @media screen and (max-width: 1200px) { .navbar__notch, .program__image{ display: none; } .navbar__menu{ gap: 0.6rem; } .hero-course__mode-option{ margin-left: 0 !important; } .program{ flex-direction: column; } .program__info{ width: 100%; } .program__details{ justify-content: space-around; } .course-list{ flex-wrap: wrap; } .course-list__item{ width: 46%; } .about{ padding: 1rem 0rem 1rem 4rem; } .about__image{ width: 30%; height: 80%; } .about__details-title{ font-size: 2.2rem; } .about__details-description{ font-size: 0.9rem; } .footer-links{ justify-content: space-between; } } @media screen and (max-width: 1010px) { .hero{ flex-direction: column; height: auto; } .hero__image, .hero-course, .career__details, .career__image, .about__details{ width: 100%; } .hero__image{ aspect-ratio: 1/1; } .career{ flex-direction: column; } .about{ height: auto; padding: 2rem; } .about__image{ display: none; } } @media screen and (max-width: 768px) { .navbar{ padding: 20px; } .hero{ padding: 0 20px; gap: 2rem; } .hero-course__title{ font-size: 1.8rem; } .separator{ font-size: 2rem; margin-bottom: 2rem; } .program{ padding: 0 20px; } .program__title{ font-size: 1.6rem; } .program__details{ flex-direction: column; } .program__details-duration, .program__details-format, .course-list__item{ width: 100%; } .career{ margin-top: 3rem; } .career__title{ font-size: 1.8rem; text-align: center; margin-bottom: 1rem; } .career__image-photo{ height: auto; aspect-ratio: 1/1; } .about{ margin: 40px 20px 0 20px; } .about__details-title{ font-size: 1.8rem; } .subscription__title{ font-size: 2rem; } .subscription__description{ font-size: 0.9rem; } .subscription__input{ width: 280px; } .footer__branding{ display: none; } .footer__link{ font-size: 0.9rem; } } @media screen and (max-width: 1430px) { .sidebar .side-profile .skills h5, .sidebar .side-profile .skills .skill-tags { display: none; } .sidebar .side-profile button { margin-top: 0; } } @media screen and (max-width: 1200px) { .container { padding: 20px 20px; } .sidebar { position: absolute; z-index: 100; height: 100%; left: -172px; } .container .nav>button#menuToggle { display: flex; } } @media screen and (max-width: 992px) { .container .main { flex-direction: column-reverse; } .container .nav .city { display: none; } .container .main .content { padding-bottom: 20px; } .container .main .filters { flex-direction: row; flex-wrap: wrap; justify-content: center; padding-left: 0; gap: 30px; } .container .main .filters .header { width: 100%; } .container .main .filters .item { width: 46%; } } @media screen and (max-width: 768px) { .container .nav>button{ padding: 10px; } .container .nav>i{ display: none; } .container .main .content .job-cards{ grid-template-columns: 1fr; } }