@import url(fontawesome.css);
@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,700,900);

h4, p {
    letter-spacing: .5px;
}

#page-wraper, ul {
    padding: 0;
    margin: 0;
}

body, ul {
    margin: 0;
}

.menu, body {
    overflow-x: hidden;
}

.main-nav li a, ul li {
    display: inline-block;
}

.menu .copyright-text, .section {
    position: relative;
}

.menu a, .service-item-link, a, a:hover {
    text-decoration: none;
}

:root {
    --primary: #2279BD;
    --accent: #FFD700;
    --danger: #e74c3c;
}

*, :after, :before {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit;
}

html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: Roboto, sans-serif;
    background: center center/cover no-repeat fixed #4aa0dd;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}

#page-wraper {
    width: 100%;
}

input, select, textarea {
    outline: 0;
}

a {
    color: #9ff;
}

a:hover {
    color: #ff0;
}

p {
    line-height: 2em;
    color: #fff;
}

h4 {
    font-size: 28px;
    font-weight: 700;
    color: #fff;
}

img {
    max-width: 100%;
    height: auto;
    overflow: hidden;
}

ul {
    list-style: none;
}

.clearfix {
    zoom: 1;
}

.clearfix:after, .clearfix:before, .menu:after, .menu:before {
    content: "";
    display: table;
}

.clearfix:after, .menu:after {
    clear: both;
}

.container {
    margin: 0 auto;
    max-width: 1140px;
    padding: 40px 15px;
}

#_honey, .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    left: -9999px;
    top: auto;
    autocomplete: off;
}

#menu-close, #menu-toggle, .menu {
    position: fixed;
    text-align: center;
}

#menu-toggle, .menu {
    left: 0;
    top: 0;
}

.line-dec {
    width: 60px;
    height: 3px;
    background: #000;
    margin: 10px auto;
}

.donation-heading .line-dec {
    background: var(--accent);
    width: 80px;
    margin: 15px auto;
}

.fa-heart {
    color: var(--danger);
}

.menu {
    width: 350px;
    height: 100vh;
    max-height: 100vh;
    max-width: 80vw;
    min-width: 45px;
    background: var(--primary);
    overflow-y: auto;
    z-index: 9999;
    -webkit-transition: -webkit-transform 233ms cubic-bezier(0, 0, .21, 1);
    transition: transform 233ms cubic-bezier(0, 0, .21, 1);
    scrollbar-width: thin;
    scrollbar-color: var(--accent) var(--primary);
}

.menu::-webkit-scrollbar {
    width: 8px;
}

.menu::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, .1);
    border-radius: 10px;
    margin: 10px;
}

.menu::-webkit-scrollbar-thumb {
    background: var(--accent);
    border-radius: 10px;
    border: 2px solid var(--primary);
}

.menu::-webkit-scrollbar-thumb:hover {
    background: #fff;
}

.menu a {
    color: inherit;
}

.top-header {
    margin: 0;
    padding: 0;
}

.top-header img, .top-header object {
    width: calc(100% + 80px);
    max-width: none;
    height: auto;
    object-fit: cover;
    margin-left: -40px;
    margin-right: -40px;
}

#contact, #donation-form, .main-nav {
    text-align: center;
}

.main-nav li:last-child a {
    border-bottom: 1px solid #69c;
}

.main-nav li {
    display: block;
}

.main-nav li a {
    height: 60px;
    line-height: 60px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    width: 100%;
    transition: .5s;
    border-top: 1px solid #69c;
}

.btn-primary:hover, .main-nav li.active a, .main-nav li:hover a, .menu .social-network ul li a:hover {
    background: #fff;
    color: var(--primary);
}

.accordion-wrapper, .left-image-post p, .menu .image, .right-image-post p {
    margin-top: 20px;
}

.menu .image img {
    width: 100%;
    max-width: 280px;
    height: auto;
    border-radius: 10%;
    display: block;
    margin: 0 auto;
}

.menu .author-content {
    margin: 20px 0 40px;
    padding: 0 20px;
}

.menu .copyright-text, .menu .social-network {
    margin-top: 60px;
    padding: 0 20px;
}

.menu .author-content h4 {
    font-size: 18px;
    margin-bottom: 0;
    text-transform: uppercase;
}

.menu .author-content h4 .highlight {
    color: var(--accent);
    font-weight: 700;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, .3);
    font-size: 30px;
}

.menu .author-content span {
    font-size: 12px;
    text-transform: uppercase;
    color: #fff;
}

.menu .social-network ul {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
}

.menu .social-network ul li {
    margin: 0 5px;
}

.menu .social-network ul li a {
    width: 44px;
    height: 44px;
    display: inline-block;
    text-align: center;
    line-height: 44px;
    background: rgba(0, 0, 0, .2);
    color: #fff;
    font-size: 16px;
    transition: .5s;
}

.menu .copyright-text p {
    border-top: 1px solid rgba(250, 250, 250, .1);
    display: inline-block;
    width: 100%;
    padding: 30px 30px 0;
    font-size: 13px;
}

#menu-close, #menu-toggle {
    z-index: 10000;
    cursor: pointer;
    color: var(--primary);
    background: #fff;
    width: 66px;
    height: 66px;
    line-height: 66px;
    display: none;
    font-size: 1.3em;
}

#menu-close {
    top: 0;
    right: 0;
    text-align: right;
}

.region-group.highlight-only .region {
    fill: url(#4F46E5) !important;
    filter: drop-shadow(0 0 12px rgba(79, 70, 229, .5)) !important;
    stroke: #1E293B !important;
    stroke-width: 1.2px !important;
}

.title-display {
    position: absolute;
    background: rgba(0, 0, 0, .7);
    color: silver;
    padding: 6px 12px;
    border-radius: 6px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    z-index: 10000;
    pointer-events: none;
    text-align: center;
    white-space: nowrap;
    opacity: 0;
    transition: opacity .22s, transform .15s;
    transform: translateY(10px);
    min-width: 1px;
    min-height: 1px;
}

.title-display.visible {
    opacity: 1;
    transform: translateY(0);
}

.section {
    color: #fff;
    margin-left: 370px;
    width: calc(100% - 370px);
    min-height: 100vh;
    padding-bottom: 60px;
    border-bottom: 3px solid rgba(250, 250, 250, .25);
}

.isotope-box, .isotope-wrapper {
    width: 100%;
    position: relative;
}

.section-heading {
    text-align: center;
    padding: 60px 0 40px;
    margin-bottom: 40px;
}

.donation-heading h2, .section-heading h2 {
    font-size: 32px;
    font-weight: 700;
    color: #fff;
}

.btn-primary, .white-button a, button {
    border: none;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    padding: 12px 22px;
}

.section-heading .line-dec {
    width: 60px;
    height: 3px;
    background: #fff;
    margin: 10px auto;
    display: block;
}

.section-heading span {
    margin-top: 5px;
    font-size: 14px;
    color: #fff;
    letter-spacing: 1px;
}

.white-button a, button {
    display: inline-block;
    background: #fff;
    color: var(--primary);
    letter-spacing: .5px;
    transition: .5s;
    outline: 0;
    cursor: pointer;
}

.white-button a:hover, button:hover {
    background: var(--primary);
    color: #fff;
}

.btn-primary {
    background: var(--primary);
    color: #fff;
    letter-spacing: .5px;
}

.isotope-item img, .left-image img, .right-image img, figure.snip1321 i {
    border-radius: 5px;
}

.left-image-post, .right-image-post {
    margin-bottom: 60px;
    padding-bottom: 60px;
    border-bottom: 2px solid rgba(250, 250, 250, .1);
}

.left-image-post h4, .right-image-post h4 {
    margin-top: 0;
}

.left-image-post .white-button, .right-image-post .white-button {
    margin-top: 30px;
}

.my-services {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.my-services .row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-left: -7.5px !important;
    margin-right: -7.5px !important;
}

.my-services .col-md-6 {
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
    box-sizing: border-box !important;
}

.service-item, .service-item-link {
    margin-bottom: 10px;
    padding: 50px;
    background: rgba(250, 250, 250, .1);
    transition: .5s;
}

.service-item-link {
    display: block;
    color: inherit;
    transform: translateY(0);
    box-shadow: none;
}

.service-item-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, .2);
}

.service-item h4, .service-item-content h4 {
    transition: .5s;
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    letter-spacing: .5px;
    margin-bottom: 15px;
}

.service-item p, .service-item-content p {
    transition: .5s;
    margin: 0;
    color: #fff;
    letter-spacing: .5px;
    line-height: 2em;
    overflow-wrap: break-word;
}

.service-item-link:hover, .service-item:hover {
    background: #fafafa;
}

.service-item-link:hover h4, .service-item:hover h4 {
    color: #1e1e1e;
}

.service-item-link:hover p, .service-item:hover p {
    color: #4a4a4a;
}

.service-item .service-icon {
    width: 70px;
    height: 70px;
    display: inline-block;
    margin-bottom: 30px;
    background-size: cover;
    background-repeat: no-repeat;
    transition: .5s;
}

.service-item .fa, .service-item-content i {
    font-size: 72px;
    padding: 20px 0;
    transition: .5s;
    color: #fff;
}

.service-item-content i {
    margin-top: -40px;
}

.service-item-link:hover i, .service-item:hover .fa {
    color: #000;
}

.service-item-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 300px;
    text-align: center;
}

.accordion-toggle, .honeypot, .isotope-toolbar input[type=radio], .logo-mobile {
    display: none;
}

.service-item-content p {
    flex-grow: 1;
}

.isotope-wrapper {
    margin: auto;
}

.isotope-toolbar span {
    text-transform: capitalize;
    display: inline-block;
    margin-right: 25px;
    padding-bottom: 3px;
    font-size: 18px;
    font-weight: 700;
    border-bottom: 2px solid transparent;
    transform: ease-in-out .5s;
    cursor: pointer;
}

.isotope-toolbar input[type=radio]:checked+span {
    color: var(--primary);
    border-bottom: 2px solid var(--primary);
}

.isotope-toolbar {
    text-align: center;
    margin: 10px;
}

.isotope-toolbar p {
    border-top: 1px solid #fff;
    padding-top: 15px;
}

.isotope-toolbar a {
    color: #fff;
}

.isotope-item {
    position: relative;
    width: 31%;
    margin: 1%;
}

.isotope-item img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.lazyload {
    background: #f7f7f7;
}

.lazyloading {
    background: url(//afarkas.github.io/lazysizes/assets/imgs/loader.gif) center no-repeat #f7f7f7;
    min-height: 60px;
}

figure.snip1321 {
    overflow: hidden;
    text-align: center;
    -webkit-perspective: 50em;
    perspective: 50em;
}

figure.snip1321 * {
    -webkit-box-sizing: padding-box;
    box-sizing: padding-box;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out;
}

figure.snip1321 figcaption {
    top: 50%;
    left: 20px;
    right: 20px;
    position: absolute;
    opacity: 0;
    z-index: 1;
}

figure.snip1321 h4 {
    margin-top: 15px;
    margin-bottom: 5px;
    color: #232323;
}

figure.snip1321 span {
    font-size: 14px;
    font-style: italic;
    display: block;
    color: #7a7a7a;
}

figure.snip1321 i {
    position: relative !important;
    font-size: 18px;
    background: var(--primary);
    width: 40px;
    height: 40px;
    display: inline-block;
    text-align: center;
    line-height: 40px;
    color: #fff;
}

figure.snip1321:after {
    background: #fff;
    position: absolute;
    content: "";
    display: block;
    top: 20px;
    left: 20px;
    right: 20px;
    bottom: 20px;
    -webkit-transition: .4s ease-in-out;
    transition: .4s ease-in-out;
    -webkit-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    opacity: 0;
}

figure.snip1321.hover figcaption, figure.snip1321:hover figcaption {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    opacity: 1;
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
}

figure.snip1321.hover:after, figure.snip1321:hover:after {
    -webkit-transform: rotateX(0);
    transform: rotateX(0);
    opacity: .9;
}

section.contact-me, section.donation {
    border-bottom: none;
}

#contact input,
#contact textarea,
#donation-form .form-control,
#donation-form input,
#donation-form textarea {
    background: rgba(250, 250, 250, .1);
    border: 1px solid #fafafa;
    border-radius: 0;
    margin-bottom: 30px;
    color: #fff;
    font-size: 14px;
    width: 100%;
    padding-left: 15px;
}

#contact input,
#donation-form .form-control,
#donation-form input {
    height: 50px;
}

#contact textarea,
#donation-form textarea {
    height: 150px;
    padding-top: 15px;
    resize: vertical;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .section {
        margin-left: 0;
        width: 100%;
        padding: 20px;
    }

    .menu {
        max-width: 100vw;
        width: 100%;
        transform: translateX(-100%);
    }

    .menu.open {
        transform: translateX(0);
    }

    #menu-toggle {
        display: block;
    }

    #menu-close {
        display: block;
    }

    .top-header img,
    .top-header object {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .isotope-item {
        width: 48%;
        margin: 1%;
    }

    .service-item {
        padding: 30px;
    }

    .service-item-content {
        min-height: auto;
    }

    h4 {
        font-size: 24px;
    }
}

@media (max-width: 480px) {
    .isotope-item {
        width: 100%;
        margin: 0 0 15px 0;
    }

    .service-item {
        padding: 20px;
    }
}
donation-form textarea{height:180px;max-height:220px;line-height:40px}#contact input:focus,#contact textarea:focus,#donation-form input:focus,#donation-form textarea:focus{outline:0;box-shadow:none;color:#fff}.form-control::placeholder{color:#fff;opacity:.6}.form-control:-ms-input-placeholder{color:#fff}.form-control::-ms-input-placeholder{color:#fff}.form-group label{font-weight:700;color:#fff}.form-check-label{font-weight:400;color:#fff}.accordion-item,.form-check{margin-bottom:10px}.invalid-feedback{display:none;color:#ff0}.was-validated .form-check-input:invalid~.invalid-feedback{display:block}section.donation{padding:30px 0;background:#1f1f1f;color:#fff}.donation-heading{padding:0 0 20px;margin-bottom:20px;text-align:center}.donation-heading span{font-size:14px;color:#fff;letter-spacing:1px}.donation .container{padding:0 15px;max-width:1140px}.donation-card{background:rgba(0,0,0,.3);border:1px solid rgba(250,250,250,.2);padding:30px;margin:0 auto;max-width:800px;text-align:center}.donation-options .input-group,.logo-mobile{max-width:200px;margin:0 auto}.donation-options .btn-outline-primary{color:#fff;border-color:#fff}.donation-options .btn-outline-primary.active,.donation-options .btn-outline-primary:hover{background:rgba(250,250,250,.1);color:#fff}.donation-form button{background:var(--danger);border-color:var(--danger);padding:12px 22px;font-size:14px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;transition:.5s}.donation-form button:hover{background:#fff;color:var(--danger)}.btn-danger{background:var(--danger)!important;border-color:var(--danger)!important}.agreement-section{padding:15px 0}.agreement-section p{font-size:13px;color:#ccc;line-height:1.6em}.agreement-section a{color:#9ff;text-decoration:underline}.agreement-section a:hover{color:#ff0}.accordion-toggle{width:100%;padding:15px;background:var(--primary);color:#fff;border:none;outline:0;font-size:16px;font-weight:700;text-align:left;cursor:pointer;transition:background .3s;position:relative}.accordion-toggle::after{content:'\f107';font-family:FontAwesome;position:absolute;right:15px;font-size:18px}.accordion-toggle.active::after{content:'\f106'}.accordion-toggle:hover{background:#1f6ca6}.accordion-content{display:block;transition:.3s}@media screen and (min-width:1680px){.container,.donation .container{max-width:1280px}.menu{width:400px}.section{margin-left:420px;width:calc(100% - 420px)}.menu .image img{max-width:320px}.menu .social-network ul li a{width:48px;height:48px;line-height:48px;font-size:18px}}@media screen and (max-width:1200px){.menu{width:300px}.section{margin-left:320px;width:calc(100% - 320px)}.menu .image img{max-width:250px}.menu .social-network ul li a{width:44px;height:44px;line-height:44px;font-size:16px}}@media screen and (max-width:845px){.container,.donation .container{padding:20px 10px}.service-item-link{margin-bottom:20px}.service-item-content{min-height:340px}.service-item-content i{margin-top:-40px}.service-item-content p{font-size:14px}#menu-close,#menu-toggle{display:inline-block}.menu{width:360px;-webkit-transform:translateX(-100%)!important;transform:translateX(-100%)!important;transition:transform 233ms cubic-bezier(0, 0, .21, 1)}.menu.open{-webkit-transform:translateX(0)!important;transform:translateX(0)!important}.section{margin-left:0;width:100%;left:0;right:0}.menu .image{margin-top:5px}.menu .image img{width:100%;max-width:140px;height:auto;border-radius:10%}.menu .author-content{margin:0 0 30px}.menu .container{padding-left:15px;padding-right:15px}.menu .social-network ul{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important}.menu .social-network ul li{margin:0!important}}@media screen and (max-width:768px){.accordion-content.active,.accordion-toggle,.logo-mobile{display:block}.list-unstyled li,.service-item-content h4{margin-bottom:10px!important}.section-heading{padding:30px 0 20px!important;margin-bottom:0!important}.section-heading .line-dec{margin:5px auto!important}.section-heading span{margin-top:0!important}.logo-mobile{margin-top:5px!important}.accordion-wrapper{margin-top:15px}.accordion-content{display:none;overflow:hidden}.left-image-post,.right-image-post{margin-top:10px!important}.left-text,.right-text{padding:10px 0}.donation-heading,.service-item-content i{padding:15px 0!important}.left-text h4,.right-text h4{font-size:20px}.left-text p,.right-text p{font-size:14px;line-height:1.8em}.left-image img,.right-image img{max-height:200px;object-fit:cover}.list-unstyled h5{font-size:16px}.list-unstyled small{font-size:12px}.top-header img,.top-header object{width:calc(100% + 40px)!important;margin-left:-20px!important;margin-right:-20px!important}.donation-heading .line-dec{width:60px!important}.donation-card{padding:20px!important}.agreement-section p{font-size:12px!important}.my-services{display:flex!important;flex-wrap:wrap!important;gap:15px!important}.my-services .row{display:flex!important;flex-wrap:wrap!important;margin-left:-7.5px!important;margin-right:-7.5px!important}.my-services .col-md-6{flex:0 0 50%!important;max-width:50%!important;width:50%!important;padding-left:7.5px!important;padding-right:7.5px!important;box-sizing:border-box!important}.service-item-link{padding:30px!important;margin-bottom:15px!important}.service-item-content{min-height:280px!important}.service-item-content i{font-size:48px!important;margin-top:-30px!important}.service-item-content h4{font-size:20px!important}.service-item-content p{font-size:12px!important;line-height:1.8em!important}}@media screen and (max-width:400px){.logo-mobile{max-width:150px}.accordion-toggle{font-size:14px;padding:12px}.accordion-toggle::after{font-size:16px}}@media screen and (max-width:360px){.menu{width:300px!important}.menu .image img{max-width:120px!important}.my-services .col-md-6{flex:0 0 100%!important;max-width:100%!important;width:100%!important}}

/* Стили для карточки заявки с пометкой на доработку */
.appeal-card.rework {
    border-left-color: #ffc107 !important;
    background: rgba(255, 193, 7, 0.1);
}