/*Общие стили (начало)*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

:root {
    font-size: 14px;
    
    --white: #ffffff;
}

body {
    margin: 0;
    font-family: 'Ruda', sans-serif;
    font-style: normal;
    line-height: normal;
}

h1,
h2,
h3,
p {
    margin: 0;
}

h1 {
    color: #E1E5EC;
    font-size: 50px;
    font-weight: 700;
    -webkit-text-fill-color: #E1E5EC;
    -webkit-text-stroke-color: #E1E5EC;
    -webkit-text-stroke-width: 3.00px;
}

h2 {
    color: #E1E5EC;
    font-size: 46px;
    font-weight: 700;
    text-transform: uppercase;
    -webkit-text-stroke-color: #E1E5EC;
    -webkit-text-stroke-width: 2.00px;
}

h3 {
    font-size: 28px;
    font-weight: 700;
    text-transform: uppercase;
    color: #E1E5EC;
}

a {
    text-decoration: none;
    color: #E1E5EC;
}

.container {
    max-width: 1192px;
    margin-left: auto;
    margin-right: auto;
}

/*Общие стили (конец)*/

/*header (начало)*/

.logo-social {
    display: none;
}

.header-visitka {
    background-color: #002060;
}

.header-visitka .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 40px 0;
}

.container-location, .container-phone {
    width: 180px;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    gap: 10px;
    color: #E1E5EC;
    font-size: 20px;
}

.icon-location, .icon-phone {
    width: 24px;
    height: 24px;
}

.name {
    font-weight: 400;
}

.phone-text {
    color: #F77F00;
}

.phone-text span {
    animation: blink 1s infinite;
}

@keyframes blink {
    from {opacity: 0;}
    to {opacity: 5;}
}

/*header (конец)*/

.navbar {
    display: flex;
    height: 30px;
    background-color: #002060;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-color: #E1E5EC;
    border-top-style: solid;
    border-top-width: 1px;
}

.navbar-links {
    display: flex;
    align-items: center;
    max-width: 1192px;
    height: 30px;
    list-style-type: none;
    padding: 0;
    margin: 0;
    justify-content: center;
    font-size: 20px;
    gap: 20px;
}

.navbar-link {
    margin: 0 20px;
    transition: 0.35 linear;
}

.navbar-link:hover {
    -webkit-text-stroke: 1px #E1E5EC;
}

/*header (конец)*/

/*banner (начало)*/

.banner-btn-mob {
    display: none;
}


.banner {
    background: linear-gradient(180deg, #002060 56.55%, rgba(7, 46, 89, 0.00) 99.99%, rgba(6, 45, 90, 0.15) 100%, rgba(7, 46, 89, 0.00) 100%);
}

.banner-content-main {
    display: flex;
    padding-top: 100px;
    padding-bottom: 100px;
}

.content-main {
    padding: 219px 159px 46px 99px;
    border: 1px solid var(--lines, #E1E5EC);
    margin-left: 130px;
    font-size: 20px;
}

.content-main-desc {
    width: 378px;
    color: #E1E5EC;
    font-weight: 400;
    margin-bottom: 20px;
}

.content-main-boast {
    color: #FCBF49;
    font-weight: 400;
}

.content-main-text {
    color: #FCBF49;
    font-weight: 700;
    margin-bottom: 20px;
}

.content-main-money {
    font-family: 'Caveat', cursive;
    color: #E1E5EC;
    font-size: 30px;
    font-weight: 400;
}

button .open-button {
    border: none;
}

.open-button {
    width: 380px;
    height: 50px;
    display: flex;
    padding: 10px;
    background-color: #D62828;
    color: #E1E5EC;
    border-radius: 10px;
    font-size: 16px;
    justify-content: center;
    align-items: center;
}

.content-main-photo {
    max-width: 480px;
    height: 455px;
    position: absolute;
    border-radius: 10px;
    margin-left: 682px;
    margin-top: 38px;
}

.content-main-title {
    position: absolute;
    display: flex;
    max-width: 461px;
    margin-left: 70px;
    background-color: #002060;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: 40px;
}

.up {
    position: fixed;
    margin-left: 1200px;
    margin-top: 560px;
}

.content-main-photo, .content-main, .content-main-title {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}
@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

/*banner (конец)*/

/*main-form (начало)*/

.main-form {
    display: none;
    position: fixed;
    margin: 15px auto;
    padding: 0;
    left: 0;
    top: 0px;
    width: 100%;
    height: 100vh;
    z-index: 99998;
    background-color: rgba(0, 0, 0, .4);
}

.form {
    width: 500px;
    padding: 60px 40px 60px;
    background: #002060;
    border: 1px solid #E1E5EC;
    margin: 300px auto;
}
.feedback-form-title {
    font-size: 30px;
    text-align: center;
    color: #E1E5EC;
    text-transform: uppercase;
}

.send {
    width: 100%;
    text-align: center;
}

button {
    padding: 15px 30px;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 18px;
    color: #002060;
    border-radius: 5px;
    border: 1px solid #E1E5EC;
    margin-top: 40px;
}

.main-form-btn {
    margin: 0;
}

.img-close {
    position: fixed;
    margin-left: 420px;
    margin-top: -190px;
}

/*main-form (конец)*/


/*services (начало)*/

.services-container-mob {
    display: none;
}

.services {
    background-color: #173166;
    padding: 120px 0;
    color: #E1E5EC;
}

.services-container {
    display: inline-block;
    gap: 40px;
    justify-content: center;
}

.services-content {
    display: flex;
    width: 1192px;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 30px;
    align-items: flex-end;
}

.list-item-italics {
    display: flex;
    width: 92px;
    height: 38px;

    font-family: 'Caveat', cursive;
    font-size: 32px;
    font-weight: 400;
}

.list-item, .list-item-animation {
    display: flex;
    width: 300px;
    height: 58px;

    justify-content: center;
    align-items: center;

    background-color: #E1E5EC;
    color: #002060;
    border-radius: 10px;

    font-size: 20px;
    font-weight: 700;

    padding: 10px;
}

.list-item-animation {
    position: relative;
    overflow-x: hidden;
}

.list-item-animation .flare {
    position: absolute;
    top: 0;
    height: 100%;
    width: 58px;
    transform: skewX(-45deg);
    animation: flareAnimation;
    left: -150%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.9));
    animation: flareAnimation 3s infinite linear;
}

@keyframes flareAnimation {
    0% {
        left: -150%;
    }
    100% {
        left: 150%;
    }
}

.services-content-detail {
    display: flex;
    gap: 40px;
    justify-content: flex-end;
}

.services-content-detail-house {
    display: flex;
    gap: 51px;
    font-size: 20px;
    align-items: flex-end;
}

/*services (конец)*/

/*services-photos (начало)*/

.services-photos {
    background-color: #ffffff;
    margin-bottom: 120px;
    margin-top: 120px;
}

.services-photo {
    display: flex;
    justify-content: space-between;
}

.services-photo img {
    width: 566px;
    height: 375px;
}

/*services-photos (конец)*/


/*advantage (начало)*/

.advantage {
    background-color: #173166;
    padding: 120px 0;
}

.advantage-title {
    margin-bottom: 45px;
}

.cards {
    display: flex;
    justify-content: space-between;
}

.card, .card-white {
    width: 380px;
    text-align: center;
    padding: 40px 0;
    border-radius: 10px;
    border: 1px solid #E1E5EC;
    color: #E1E5EC;

    font-size: 18px;
    font-weight: 300;
}

.card-white {
    background-color: #E1E5EC;
    color: #002060;
}

.card-icon {
    margin-bottom: 40px;
}

.card-name-quickly, .card-name-ok, .card-name-profitably {
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 700;
}

.card-name-quickly {
    color: #D62828;
}

.card-name-ok {
    color: #002060;
}

.card-name-profitably {
    color: #FCBF49;
}

.card-content {
    margin-bottom: 40px;
}

.advantage-photo {
    border-radius: 10pt;
}

/*advantage (конец)*/


/*gallery (начало)*/

.gallery {
    padding-top: 120px;
    padding-bottom: 90px;
    background-color: #E1E5EC;
}

.gallery-content {
    text-align: center;
}

.gallery-content h3 {
    color: #002060;
    margin-bottom: 45px;
}

.gallery-photo {
    padding-bottom: 30px;
    justify-content: space-between;
}

.photo-Alex {
    width: 565px;
    height: 301px;
    margin-right: 30px;
}

.photo-bricrs {
    width: 566px;
    height: 301px;
}

.photo-lamp {
    width: 684px;
    height: 359px;
    margin-right: 30px;
}

.photo-hall {
    width: 447px;
    height: 359px;
}

.photo-window {
    width: 326px;
    height: 231px;
    margin-right: 30px;
}

.photo-wall {
    width: 324px;
    height: 231px;
    margin-right: 30px;
}

.photo-battery {
    width: 447px;
    height: 231px;
}

#n2 {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

#n2:hover {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: all0.5s ease;
    -moz-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

/*gallery (конец)*/


/*about (начало)*/

.about {
    background-color: #002060;
    padding-top: 120px;
    padding-bottom: 120px;
}

.about-container {
    display: flex;
}

.about-content {
    width: 656px;
    border: 1px solid #E1E5EC;
    margin-left: 390px;
}

.about-container h2 {
    width: 220px;
    position: absolute;
    margin-left: 950px;
    margin-top: 50px;
    background-color: #002060;
}

.about-photo {
    position: absolute;
    border-radius: 10px;
    width: 426px;
    height: 524px;
    margin-top: 39px;
}

.about-content-subtitle {
    display: inline-flex;
    align-items: center;
    color: #F77F00;
    gap: 21px;
    margin-left: 76px;
    margin-top: 112px;
    font-size: 24px;
    font-weight: 400;
}

.about-content-desc {
    display: flex;
    flex-direction: column;
    margin-left: 167px;
    margin-top: 41px;
    gap: 20px;

    color: #E1E5EC;
    font-size: 20px;
    font-weight: 400;
}

.about-content-desc-line {
    display: flex;
    width: 230px;
    border-bottom: 1px solid #E1E5EC;
    padding: 10px 0;
    justify-content: center;
}

figcaption {
    margin-left: 351px;
    margin-top: 50px;
    margin-bottom: 50px;

    font-family: 'Caveat', cursive;
    color: #E1E5EC;

    font-size: 32px;
    font-weight: 400;
}

/*about (конец)*/


/*prices (начало)*/

.prices {
    background-color: #ffffff;
    padding-top: 120px;
}

.prices-tables {
    display: flex;
    flex-direction: column;
    align-items: center;

    background-color: #173166;
    color: #E1E5EC;
    border-radius: 10px;
    padding-top: 50px;
    padding-bottom: 50px;
}

.prices-tables h3 {
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400;
}

table {
    width: 583px;
    margin-bottom: 30px;
    border-collapse: collapse;

    font-size: 16px;
    font-weight: 400;
}

caption {
    text-align: left;

    margin-bottom: 10px;

    font-size: 26px;
    font-weight: 400;
    text-transform: uppercase;
}

tr {
    height: 45px;
}

th {
    border: 1px solid #E1E5EC;

    font-size: 16px;
    font-weight: 400;
}

td {
    width: 400px;
    border: 1px solid #E1E5EC;
    padding-left: 20px;
}

.prices-text {
    font-family: 'Caveat', cursive;
    font-size: 20px;
    font-weight: 400;
    margin-top: 0;
    margin-left: -286px;
}

.prices-btn {
    display: flex;
    background-color: #173166;

    width: 200px;
    height: 50px;

    justify-content: center;
    align-items: center;
    padding: 10px;

    border-radius: 10px;
    border: 1px solid #E1E5EC;

    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;

    margin-left: 381px;
    margin-top: -51px;
}

.prices-text-total {
    color: #F77F00;
    margin-top: 30px;
    font-size: 18px;
}

.prices-firm {
    display: block;
}

.prices-firm-text {
    font-family: 'Caveat', cursive;
    font-size: 32px;
    font-weight: 400;
    margin: 50px 0;
}

.prices-logo {
    margin-bottom: 120px;
    text-align: center;
}

.prices-logo img {
    width: 160px;
    height: 61px;
    border: 1px solid #DAE2F3;
}

/*prices (конец)*/


/*steps (конец)*/

.steps {
    background-color: #002060;
    padding-top: 120px;
    padding-bottom: 120px;
}

.steps-containers {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px;
    margin-bottom: 0px;
}

.step-container {
    display: flex;
    width: 540px;
    align-items: center;
    gap: 40px;
    border-bottom: 1px solid #E1E5EC;
}

.step-container-number {
    color: #D2D8E3;
    font-size: 170px;
    font-weight: 900;
}

.step-container-text {
    display: flex;
    width: 380px;
    font-size: 30px;
    font-weight: 400;
    color: #E1E5EC;
    text-align: left;
    margin-left: 60px;
}

/*steps (конец)*/

/*blog (начало)*/

.blog {
    background-color: #ffffff;
    padding-top: 100px;
    padding-bottom: 100px;
}

.blog-content span {
    color: #000000;
    -webkit-text-stroke-color: #000000;
}

.blog-text {
    font-family: 'Caveat', cursive;
    font-size: 32px;
    font-weight: 400;
    margin-bottom: 20px;
}

.blog-cards {
    display: flex;
    justify-content: space-between;
}

.blog-card {
    width: 330px;
    border: 1px solid #000000;
    border-radius: 10px;
    padding: 20px;
    font-size: 20px;
    font-weight: 400;
}

iframe {
    border-radius: 10px;
}

.blog-card-text {
    margin: 10px 0;
}

.blog-btn {
    width: 261px;
    margin-left: 890px;
    margin-top: 30px;
    transform: rotate(3.038deg);
    text-align: center;
}

.blog-btn-text {
    font-family: 'Caveat', cursive;
    font-size: 32px;
    font-weight: 400;
    color: #000000;
}

.blog-btn-links {
    margin-top: 10px;
    margin-bottom: 10px;
}

.blog-btn-img-youtube {
    width: 32px;
    height: 22px;
    margin-right: 20px;
}

.blog-btn-img-dzen {
    width: 22px;
    height: 22px;
}

.blog-btn-name {
    color: #000000;
    font-size: 14px;
    text-transform: uppercase;
}

/*blog (конец)*/

/*footer (начало)*/

footer {
    background-color: #173166;
    padding-top: 30px;
    padding-bottom: 10px;
}

.footer-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 168px;
    color: #E1E5EC;
    font-size: 16px;
    border-bottom: 1px solid #E1E5EC;
    padding-bottom: 20px;
}

.footer-centre-slogan {
    color: #FCBF49;
    text-transform:uppercase;
}

.footer-tel {
    text-align: center;
    font-size: 22px;
}

.footer-text {
    text-align: center;
}

.footer-text span {
    font-weight: 700;
}

.footer-container-text {
    display: flex;
    flex-direction: column;
    color: #9BA1A8;
    font-size: 12px;
    padding-top: 10px;
}

.footer-container-text a {
    color: #9BA1A8;
    width: 200px;
}

/*footer (конец)*/