/* Стоило бы, конечно, верстать mobile-first, но я сразу об этом не подумал, поэтому в самом низу происходит адаптация десктопа к мобильной платформе - nuark */ * { font-family: 'Montserrat', sans-serif; padding: 0; margin: 0; list-style-position: inside; } i { font-weight: 300; } b { font-weight: 700; } body { background-color: white; scroll-behavior: smooth; } .btn-go-up { position: fixed; bottom: 5rem; left: 5rem; color: rgb(0, 0, 0); text-decoration: none; padding: .25rem; background-color: rgba(0, 0, 0, 0.3); } header { display: flex; flex-direction: row; align-content: center; justify-content: center; position: fixed; width: 100%; padding: 1rem; z-index: 3; } .header__normal { background-color: rgba(0, 0, 0, 0); transition: background-color 200ms linear; } .header__scrolled { background-color: rgba(109, 108, 108, 0.596); transition: background-color 200ms linear; } .header-content { width: 80%; display: flex; flex-direction: row; justify-content: space-between; } .logo { font-size: 2rem; text-decoration: none; letter-spacing: calc(1rem / 2); } .btn-callmeback { background-color: white; border-color: slategray; border-style: solid; color: slategray; cursor: pointer; padding: 1rem; font-weight: 800; transition: background-color 120ms ease; } .btn-callmeback:hover { background-color: gainsboro; } main { padding: 0; display: flex; flex-direction: column; align-items: center; } main > section > .section-heading { text-align: center; padding-bottom: 2rem; } main > section { padding: 4.25rem 0 4.25rem 0; width: 80%; } #hero { padding: 0; height: 100vh; width: 100%; display: flex; flex-direction: column; align-content: center; justify-content: space-between; align-items: center; background: linear-gradient(-45deg, rgb(54, 195, 247), rgb(185, 185, 185), rgb(255, 255, 255), rgb(81, 240, 203)); background-size: 400% 400%; animation: hero_bg_gradient 15s ease infinite; } @keyframes hero_bg_gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } #hero > .logo { color: rgb(68, 68, 68); transition: background-color 200ms ease; transition: padding 0ms ease; } #hero > .logo:hover { padding: 1rem; color: rgb(217, 255, 0); background-color: rgb(68, 68, 68); transition: background-color 200ms ease; transition: padding 200ms ease; } .logo-decor { position: absolute; } .logo-decor > .fp { position: absolute; width: 2rem; height: 3rem; background-color: tomato; transform: translate(-45%, calc(100vh / 3)); z-index: 1; } .logo-decor > .sp { position: absolute; width: 2rem; height: 3rem; background-color: turquoise; transform: translate(0, calc(100vh / 3 + 50%)); z-index: 2; } .logo-decor:hover > .fp { background-color: tomato; z-index: 2; } .logo-decor:hover > .sp { background-color: turquoise; z-index: 1; } .hero-pusher { margin-bottom: 2rem; animation-duration: 3s; animation-name: mowing_arrow; animation-iteration-count: infinite; font-size: 2rem; } @keyframes mowing_arrow { 0% { transform: translate(0); } 25% { transform: translate(0, -100%); } 100% { transform: translate(0); } } #about { text-align: justify; } #about > h2 { padding-top: 2.25rem; padding-bottom: .25rem; } /* #services {} */ .services-table { margin-top: 2.25rem; } .services-table { font-family: arial, sans-serif; border-collapse: collapse; width: 100%; } .services-table td, .services-table th { border: 1px solid rgb(212, 212, 212); text-align: left; padding: 8px; } .services-table tr:nth-child(even) { background-color: rgb(212, 212, 212); } .reviews-card-list { display: flex; flex-direction: row; margin-top: 2.25rem; gap: 1rem; } .review-card { padding: 1rem; background-color: whitesmoke; border-radius: 1rem; box-shadow: 5px 5px 15px rgba(0,0,0,0.4); } .card-header { display: flex; flex-direction: row; align-items: center; flex-wrap: nowrap; margin-bottom: 1rem; } .card-header > img { width: 4rem; border-radius: 50%; margin-right: 1rem; } .embeded-map { margin-top: 2.25rem; width: 100% } .callback-form-holder { display: flex; align-content: space-between; justify-content: center; align-items: center; } #callback-form { width: 50%; margin-top: 2.25rem; display: flex; flex-direction: column; gap: .5rem; } .form-footer { display: flex; gap: 1rem; flex-direction: row; } .form-footer > * { flex-grow: 1; } footer { width: 100%; background-color: rebeccapurple; } .footer-content { padding: 1rem; text-align: center; color: white; font-weight: 500; } @media screen and (max-device-width: 400px) { .btn-callmeback, .logo-decor, .btn-go-up { display: none; } .services-table { overflow: auto; display: inline-block; } .reviews-card-list { flex-direction: column; } .embeded-map { height: 20rem; } #callback-form { width: 100%; } .form-footer { flex-direction: column; } }