/* =====================================================================
   chrome.css — donor HEADER + FOOTER styles for rosperevozki.ru/blog
   Extracted from astra-child  assets/css/style.min2.css  (the main-site
   design system that the blog child theme re-uses). 236 rules.

   Covers: reset bits (html/body/a/ul/li/p/img/button), @font-face
   (SourceSansPro + GothamPro), .page-header / .header* / .menu* /
   .contact* / .logo / .svg-icon / .button / .to-top / .footer* /
   .menu-footer* / .soc-* / .popup-form*, plus their @media breakpoints.

   Font @font-face url()s were rewritten to ABSOLUTE donor URLs so the
   fonts load no matter where you enqueue this file. (If you self-host
   the fonts under <theme>/assets/fonts/, revert to url(../fonts/...).)

   This file is SELF-CONTAINED for the chrome: it does NOT depend on
   Astra's framework CSS (the donor header/footer are custom markup,
   not Astra's .site-header/.ast-* builder). Enqueue AFTER Astra so the
   custom classes win. See notes.md.
   ===================================================================== */

body,
html {
    margin: 0;
    height: 100%;
    font-size: 16px;
}
html {
    -webkit-text-size-adjust: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 320px;
    -ms-overflow-style: scrollbar;
    -ms-text-size-adjust: 100%;
    line-height: 1.15;
}
body {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    color: #2b2929;
    background-color: #fff;
    font-family: SourceSansPro,Arial,sans-serif;
    -webkit-font-smoothing: subpixel-antialiased !important;
    -ms-backface-visibility: hidden;
    line-height: 1.2;
}
a {
    background-color: transparent;
}
button,
input {
    overflow: visible;
}
body:after {
    display: table;
    clear: both;
    content: "";
}
h1 {
    color: #2b2929;
    margin: 0 0 30px;
    font-size: 30px;
    line-height: 1.3;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    word-wrap: break-word;
    word-break: break-word;
    font-family: SourceSansPro,Arial,sans-serif;
    font-weight: 700;
    overflow-wrap: break-word;
}
h2 {
    font-size: 22px;
    color: #6b380d;
    line-height: 1.4;
    text-align: center;
    padding: 20px 0 0;
}
h3,
h4,
h5,
h6 {
    margin: 0 0 1.5em;
    color: #2b2929;
    line-height: 1.2;
}
h3 {
    font-size: 24px;
}
h4 {
    font-size: 20px;
}
h5 {
    font-size: 16px;
}
h6 {
    font-size: 1em;
}
p {
    margin: 0 0 20px;
    font-weight: 300;
    font-style: normal;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 20px;
    line-height: 1.55;
}
a,
button {
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
a,
a:hover {
    text-decoration: none;
    color: inherit;
}
a:hover {
    color: #2e7d14;
}
button {
    cursor: pointer;
}
img {
    display: inline-block;
    max-width: 100%;
    height: auto;
    border: 0;
}
ol,
ul {
    padding-left: 2em;
    list-style-position: inside;
}
.field__field input,
.field__field select,
.field__field textarea,
table {
    width: 100%;
}
.svg-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.svg-icon--arrow-left,
.svg-icon--arrow-right {
    width: 2.5em;
    font-size: 1.25rem;
}
.svg-icon--email {
    width: 1.142857142857143em;
    font-size: 0.875rem;
    width: 24px !important;
}
.svg-icon--location {
    width: 0.736842105263158em;
    font-size: 1.1875rem;
}
.svg-icon--phone,
.svg-icon--search {
    width: 1em;
    font-size: 1.125rem;
}
.svg-icon--triangle {
    width: 0.888888888888889em;
    font-size: 1.125rem;
}
.svg-icon--user {
    width: 0.789473684210526em;
    font-size: 1.1875rem;
}
button::-moz-focus-inner {
    padding: 0;
    border: 0;
}
.button,
.button:hover {
    text-decoration: none;
    color: #fff;
}
.button,
.button::before {
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.button {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    min-height: 44px;
    padding: 15px 30px 13px;
    cursor: pointer;
    text-align: center;
    text-transform: uppercase;
    border: none;
    background: -webkit-gradient(linear,left top,left bottom,from(#ff9c68),to(#d16537));
    background: -webkit-linear-gradient(top,#ff9c68 0,#d16537 100%);
    background: -moz- oldlinear-gradient(top,#ff9c68 0,#d16537 100%);
    background: -o-linear-gradient(top,#ff9c68 0,#d16537 100%);
    background: linear-gradient(180deg,#ff9c68 0,#d16537 100%);
    text-shadow: 0 1px 1px rgba(0,0,0,.1);
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 16px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-align: center;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    position: relative;
    -webkit-box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
    -moz-box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
    box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
    background-color: #d16537;
}
.button::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    pointer-events: none;
    opacity: 0;
    background: -webkit-gradient(linear,left top,left bottom,from(#ff9c68),to(#e77c4e));
    background: -webkit-linear-gradient(top,#ff9c68 0,#e77c4e 100%);
    background: -moz- oldlinear-gradient(top,#ff9c68 0,#e77c4e 100%);
    background: -o-linear-gradient(top,#ff9c68 0,#e77c4e 100%);
    background: linear-gradient(180deg,#ff9c68 0,#e77c4e 100%);
    background-color: #e77c4e;
    -webkit-box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
    -moz-box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
    box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
}
.button:hover {
    border-color: #2e7d14;
    background-color: #2e7d14;
}
.button:hover::before {
    opacity: 1;
}
.button--small {
    min-height: 36px;
    padding: 11px 30px 9px;
    font-size: 11px;
}
.button--big {
    min-height: 50px;
    padding: 18px 30px 16px;
    font-size: 16px;
}
.button--frame-blue,
.button--frame-red {
    color: #369;
    border-color: #369;
    background-color: transparent;
}
.button--frame-blue:hover {
    color: #fff;
    border-color: #369;
    background-color: #369;
}
.button--frame-red {
    color: #c33;
    border-color: #c33;
}
.button--frame-red:hover {
    color: #fff;
    border-color: #c33;
    background-color: #c33;
}
.button__caption,
.button__svg-icon {
    position: relative;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
}
.button__caption {
    z-index: 10;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
}
.button__svg-icon {
    top: -1px;
    display: inline-block;
    flex: 0 0 auto;
    margin-right: 12px;
    margin-left: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
}
.button--icon-right .button__svg-icon {
    order: 2;
    margin-right: 0;
    margin-left: 12px;
    -webkit-box-ordinal-group: 3;
    -moz-box-ordinal-group: 3;
    -ms-flex-order: 2;
    -webkit-order: 2;
}
.btn-menu {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    flex-flow: row nowrap;
    align-items: center;
    width: 30px;
    height: 30px;
    min-height: 12px;
    padding: 0;
    cursor: pointer;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background: 0 0;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
}
.btn-menu::before {
    top: 50%;
    margin-top: -2px;
}
.btn-menu:hover::before {
    background-color: #2e7d14;
}
.btn-menu.active {
    visibility: visible;
}
.btn-menu.active::before {
    opacity: 0;
}
.btn-menu__caption,
.btn-menu__icon {
    flex: 0 0 auto;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
}
.btn-menu__caption {
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0,0,0,.1);
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 13px;
    font-weight: 700;
    font-style: normal;
    line-height: 1;
}
.btn-menu__icon {
    position: relative;
    margin-right: 12px;
}
.btn-menu::before,
.btn-menu__icon::after,
.btn-menu__icon::before {
    position: absolute;
    left: 0;
    content: "";
}
.btn-menu__icon::before {
    top: -5px;
    -webkit-transform-origin: left top;
    -moz-transform-origin: left top;
    -ms-transform-origin: left top;
    -o-transform-origin: left top;
    transform-origin: left top;
}
.btn-menu__icon::after {
    top: 5px;
    -webkit-transition: all 70ms linear;
    -moz-transition: all 70ms linear;
    -o-transition: all 70ms linear;
    transition: all 70ms linear;
    -webkit-transform-origin: left bottom;
    -moz-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
}
.btn-menu__icon,
.btn-menu__icon::after,
.btn-menu__icon::before {
    display: block;
    width: 18px;
    height: 2px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    background-color: #fff;
}
.btn-menu.active .btn-menu__icon {
    background-color: transparent;
}
.btn-menu.active .btn-menu__icon::before {
    top: -6px;
    left: 3px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.btn-menu.active .btn-menu__icon::after {
    top: 6px;
    left: 3px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.field {
    position: relative;
    display: block;
    width: 100%;
}
.field__label {
    display: block;
    margin-bottom: 10px;
    color: #2b2929;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
}
.field__required {
    color: #c00;
}
.field__helpers {
    display: block;
    margin-top: 5px;
}
.field__hint {
    display: block;
    margin: 0;
    color: #999;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4;
}
.field__field {
    position: relative;
}
.field__field input,
.field__field textarea {
    display: block;
    padding: 15px 20px 14px;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    color: #2b2929;
    border: 1px solid #409817;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background-color: #fff;
    -webkit-box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
    -moz-box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
    box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}
.field__field input:invalid,
.field__field textarea:invalid {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.field__field input:focus,
.field__field input:hover,
.field__field textarea:focus,
.field__field textarea:hover {
    border-color: #ff9d6a;
    outline: 0;
}
.field__field input::-webkit-input-placeholder,
.field__field textarea::-webkit-input-placeholder {
    opacity: 1;
    color: #2b2929;
}
.field__field input:-moz-placeholder,
.field__field input::-moz-placeholder,
.field__field textarea:-moz-placeholder,
.field__field textarea::-moz-placeholder {
    opacity: 1;
    color: #2b2929;
}
.field__field input:-ms-input-placeholder,
.field__field textarea:-ms-input-placeholder {
    opacity: 1;
    color: #2b2929;
}
.field__field input::-webkit-input-placeholde,
.field__field textareainput::-webkit-input-placeholde {
    opacity: 1;
    color: #2b2929;
}
.ios .field__field input,
.ios .field__field textarea {
    font-size: 16px;
}
.field--icon .field__field input,
.field--icon .field__field textarea {
    padding-right: 40px;
}
.field--error .field__field input,
.field--error .field__field textarea {
    color: red;
    border-color: red;
}
.field--error .field__field input::-webkit-input-placeholder,
.field--error .field__field textarea::-webkit-input-placeholder {
    opacity: 1;
    color: red;
}
.field--error .field__field input:-moz-placeholder,
.field--error .field__field input::-moz-placeholder,
.field--error .field__field textarea:-moz-placeholder,
.field--error .field__field textarea::-moz-placeholder {
    opacity: 1;
    color: red;
}
.field--error .field__field input:-ms-input-placeholder,
.field--error .field__field textarea:-ms-input-placeholder {
    opacity: 1;
    color: red;
}
.field--error .field__field input::-webkit-input-placeholde,
.field--error .field__field textareainput::-webkit-input-placeholde {
    opacity: 1;
    color: red;
}
.field__field input {
    height: 50px;
}
.field__field textarea {
    height: 120px;
    resize: none;
}
.field__icon {
    position: absolute;
    top: 25px;
    right: 27px;
    display: inline-block;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-transform: translate(50%,-50%);
    -moz-transform: translate(50%,-50%);
    -ms-transform: translate(50%,-50%);
    -o-transform: translate(50%,-50%);
    transform: translate(50%,-50%);
    fill: #ff9d6a;
}
input:focus+.field__icon,
input:hover+.field__icon {
    fill: #2e7d14;
}
.field__error {
    display: block;
    margin: 5px 0 -5px;
    color: red;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.2;
}
.error-style--popup .field__error,
.error-style--popup-top .field__error {
    position: absolute;
    z-index: 100;
    left: 0;
    display: inline-block;
    max-width: 100%;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 12px;
}
.error-style--popup .field__error {
    border: 1px solid #ddd;
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,.15);
    -moz-box-shadow: 0 0 10px rgba(0,0,0,.15);
    box-shadow: 0 0 10px rgba(0,0,0,.15);
    font-weight: 300;
    line-height: 18px;
    top: 92%;
    padding: 8px 10px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: #ffc;
}
.error-style--popup .field__error::after,
.error-style--popup .field__error::before {
    position: absolute;
    top: -7px;
    left: 10px;
    display: block;
    width: 14px;
    height: 7px;
    content: "";
    border-width: 0 7px 7px;
    border-style: solid;
    border-color: transparent transparent #ddd;
}
.error-style--popup .field__error::after {
    top: -6px;
    border-width: 0 6px 6px;
    border-color: transparent transparent #fdfcd3;
}
.error-style--popup-top .field__error {
    top: -36px;
    padding: 7px 10px;
    text-align: center;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #fc5851;
}
.error-style--popup-top .field__error::after {
    position: absolute;
    bottom: -8px;
    left: 50%;
    display: block;
    width: 16px;
    height: 8px;
    margin-left: -8px;
    content: "";
    border-width: 8px 8px 0;
    border-style: solid;
    border-color: #fc5851 transparent transparent;
}
.field--type-checkbox,
.field--type-radio {
    position: relative;
    display: inline-block;
    width: auto;
}
.field--type-checkbox input,
.field--type-radio input {
    display: none;
    margin: 0;
    padding: 0;
    opacity: 0;
}
.field--type-radio .field__label {
    display: inline-block;
    min-height: 20px;
    margin: 0;
    padding: 0 0 0 32px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #2b2929;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
    -webkit-touch-callout: none;
}
.field--type-radio .field__label .field__check {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    border: 1px solid #d1d1d1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff;
}
.field--type-checkbox .field__label:hover .field__check,
.field--type-radio .field__label:hover .field__check {
    border-color: #999;
}
.field--type-radio input:checked+.field__label .field__check::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-left: -5px;
    content: "";
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: #09f;
}
.field--type-checkbox .field__label {
    display: inline-block;
    min-height: 20px;
    margin: 0;
    padding: 0 0 0 30px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #2b2929;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
    -webkit-touch-callout: none;
}
.field--type-checkbox .field__label .field__check {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    border: 1px solid #d1d1d1;
}
.field--type-checkbox input:checked+.field__label .field__check::after {
    position: absolute;
    top: 2px;
    left: 7px;
    display: block;
    width: 6px;
    height: 11px;
    content: "";
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    border-width: 2px;
    border-style: none solid solid none;
    border-color: #09f;
}
.field--type-checkbox.field--error .field__label .field__check {
    border-color: #c99;
}
.field--type-checkbox .field__error {
    padding-left: 30px;
}
.form,
.form--frame {
    display: block;
}
.form--frame {
    padding: 20px;
    border: 10px solid rgba(0,0,0,.07);
    background-color: #e8590c;
}
.form__subtitle,
.form__title {
    display: block;
    margin: 0 0 20px;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0,0,0,.1);
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.8;
}
.form__title a {
    display: inline-block;
    text-decoration: none;
    color: #fff;
}
.form__title a:hover {
    text-decoration: underline;
    color: #fff;
}
.form__subtitle {
    margin: -15px 0 20px;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 16px;
    font-weight: 300;
}
.form__submit {
    width: 100%;
}
.form__row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
    margin: 0 -15px -10px;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
}
.form__col {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 10px;
    padding: 0 15px;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
}
.form__col,
.logo {
    display: block;
}
.logo--header {
    max-width: 160px;
}
.logo img {
    max-width: 100%;
    height: auto;
    border: none;
}
.contact,
.logo img {
    display: block;
}
.contact__button {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background-color: transparent;
}
.contact__button .svg-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    fill: #2e7d14;
}
.contact.expanded .contact__button .svg-icon {
    opacity: 0.5;
}
.contact__content {
    /*position: absolute;*/
    z-index: 200;
    top: 100%;
    right: 15px;
    left: 15px;
    display: block;
    padding: 10px 20px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background: #fff;
    /*-webkit-box-shadow: 0 7px 15px rgba(0,0,0,.2);
    -moz-box-shadow: 0 7px 15px rgba(0,0,0,.2);
    box-shadow: 0 7px 15px rgba(0,0,0,.2);*/
}
.contact__address,
.contact__phone {
    display: block;
    margin: 0;
    text-align: center;
    color: #2b2929;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.285;
}
.contact__phone {
    margin: 6px 0;
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
    line-height: 20px;
	color: #2f6b34;
}
.contact__phone svg {
    margin-right: 7px;
}
.breadcrumbs__item a:hover,
.contact__email,
.contact__email:hover,
.contact__phone:hover {
    text-decoration: none;
    color: #2e7d14;
}
.contact__phone img {
    width: 21px;
    margin-left: 10px;
    margin-top: -4px;
}
.contact__email {
    display: block;
    margin: 6px 0;
    text-align: center;
    color: #2b2929;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    line-height: 20px;
}
.search__btn-search .svg-icon {
    position: relative;
    top: -2px;
    display: inline-block;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    opacity: 0.5;
    fill: #fff;
}
.search__btn-search:hover .svg-icon {
    opacity: 1;
}
.search__btn-submit .svg-icon {
    position: relative;
    top: -2px;
    display: inline-block;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    fill: #ff9d6a;
}
.search__btn-submit:hover .svg-icon {
    fill: #2e7d14;
}
.video__icon,
.video__icon .svg-icon,
.video__icon::after,
.video__icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.video__icon .svg-icon {
    z-index: 5;
    display: inline-block;
    width: 19px;
    height: 17px;
    -webkit-transform: translate(-38%,-50%);
    -moz-transform: translate(-38%,-50%);
    -ms-transform: translate(-38%,-50%);
    -o-transform: translate(-38%,-50%);
    transform: translate(-38%,-50%);
    fill: #fbdf50;
}
.menu {
    display: block;
}
.menu__items {
    position: absolute;
    z-index: 200;
    top: 100%;
    right: 0;
    left: 0;
    display: none;
    margin: 0;
    padding: 15px 0;
    list-style: none;
    background-color: #60310a;
}
.menu__item {
    flex: 0 1 auto;
    margin: 0;
    padding: 0;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
}
.menu__item a {
    display: block;
    padding: 13px 15px;
    text-decoration: none;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0,0,0,.1);
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 12px;
    font-weight: 700;
    font-style: normal;
    line-height: 18px;
}
.menu__item a.current,
.menu__item a:hover {
    text-decoration: underline;
}
.menu-footer,
.menu__item {
    display: block;
}
.menu-footer__items {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
}
.menu-footer__item {
    display: block;
    margin: 0 0 9px;
    padding: 0;
    color: #dfc0a5;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 15px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.2;
}
.menu-footer__item a {
    text-decoration: none;
    color: #dfc0a5;
}
.menu-footer__item a:hover {
    text-decoration: none;
    color: #ff9d6a;
}
.header {
    display: block;
}
.header__container {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    max-width: 1250px;
    height: 70px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
}
.header__logo {
    margin-right: auto;
}
.header__address,
.header__email,
.header__logo,
.header__phone {
    flex: 0 0 auto;
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
}
.header__address,
.header__email {
    margin-left: 20px;
}
.header__button-question {
    display: inline-block;
    order: 10;
    -webkit-box-ordinal-group: 11;
    -moz-box-ordinal-group: 11;
    -ms-flex-order: 10;
    -webkit-order: 10;
}
.header__button-question:hover::before {
    opacity: 0;
}
.nav {
    display: block;
    background-color: #6b380d;
    background-image: url("/assets/img/nav-bg.png");
    background-repeat: repeat-x;
    background-position: center center;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
}
.nav__container {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    max-width: 1250px;
    height: 40px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-align: center;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
}
.footer {
    display: block;
    padding: 40px 0;
    background-color: #6b380d;
}
.footer__container {
    position: relative;
    max-width: 1250px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}
.footer__col {
    display: block;
}
.footer__col:not(:last-child) {
    margin-bottom: 30px;
}
.footer__title {
    display: block;
    margin: 0 0 17px;
    color: #fff;
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 17px;
    font-weight: 700;
    font-style: normal;
    line-height: 1.2;
    border-bottom: 1px solid #795548;
    padding: 2px 0 8px;
}
.footer__menu {
    max-width: 360px;
}
.footer__address,
.footer__email,
.footer__phone {
    position: relative;
    display: block;
    padding-left: 25px;
    text-decoration: none;
    color: #fff;
}
.footer__address:not(:last-child),
.footer__email:not(:last-child),
.footer__phone:not(:last-child) {
    margin-bottom: 15px;
}
.footer__address .svg-icon,
.footer__email .svg-icon,
.footer__phone .svg-icon {
    position: absolute;
    top: 2px;
    left: -1px;
    display: inline-block;
    fill: #ff9d6a;
}
.footer__address,
.footer__copyright,
.footer__email,
.footer__phone {
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    color: #dfc0a5;
}
.footer__email:hover,
.footer__phone:hover {
    text-decoration: none;
    color: #ff9d6a;
}
.footer__address,
.footer__copyright,
.footer__email {
    font-size: 15px;
    font-style: normal;
    line-height: 1.6;
}
.footer__copyright,
.footer__email {
    font-size: 15px;
    line-height: 20px;
}
.footer__copyright {
    display: block;
    margin: 0;
    color: #d0b08a; /* A5 a11y: 4.67:1 on #6b380d (was #966e4d 2.11 FAIL). */
    font-size: 15px;
    line-height: 20px;
}
.footer__copyright:first-line {
    font-size: 15px;
}
/* legacy @font-face (GothamPro + SourceSansPro) removed: brand = Onest+Inter.
   They pulled absolute prod URLs -> CORS/ERR_FAILED in console off-origin (staging).
   font-family refs below fall back to Arial,sans-serif. */
@media only screen and (min-width:768px) {
h1,
    h2 {
        margin: 0 0 40px;
        font-size: 50px;
    }
h2 {
        font-size: 36px;
        line-height: 1.22;
        padding-top: 0;
    }
h3 {
        font-size: 30px;
    }
h5 {
        font-size: 18px;
    }
.form--frame {
        padding: 30px 40px;
    }
.form__subtitle,
    .form__title {
        margin-bottom: 25px;
        font-size: 20px;
    }
.form__subtitle {
        margin-top: -20px;
        font-size: 18px;
    }
.form__row {
        margin-bottom: -30px;
    }
.form__col {
        margin-bottom: 30px;
    }
.form--2 .form__col,
    .form--3 .form__col {
        flex: 0 0 50%;
        max-width: 50%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
    }
.form--2 .form__col:last-child {
        flex: 0 0 100%;
        max-width: 100%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
    }
.logo--header {
        max-width: 200px;
    }
.contact {
        position: relative;
    }
.contact--phone {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
    }
.contact__button {
        width: 44px;
        height: 44px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        background: #f6faf4;
    }
.contact.expanded .contact__button {
        background-color: #2e7d14;
    }
.contact.expanded .contact__button .svg-icon {
        opacity: 1;
        fill: #fff;
    }
.contact--phone .contact__button,
    .contact--phone .contact__content {
        flex: 0 0 auto;
        background-color: transparent;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
    }
.contact--phone .contact__button {
        width: 20px;
        height: 20px;
        margin-right: 10px;
        pointer-events: none;
    }
.contact--phone.expanded .contact__button {
        background-color: transparent;
    }
.contact--phone.expanded .contact__button .svg-icon {
        opacity: 1;
        fill: #2e7d14;
    }
.contact__content {
        top: 105%;
        right: 0;
        left: auto;
        padding: 12px 20px;
    }
.contact--phone .contact__content {
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        display: inline-block !important;
        padding: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
.contact__address {
        min-width: 280px;
    }
.video__icon .svg-icon {
        width: 28px;
        height: 25px;
    }
.menu__items {
        padding: 20px 0;
    }
.menu__item a {
        padding: 18px 20px 18px 75px;
        font-size: 13px;
    }
.menu-footer__items {
        -webkit-columns: auto;
        -moz-columns: auto;
        columns: auto;
    }
.menu-footer--2 .menu-footer__items {
        -webkit-columns: 2;
        -moz-columns: 2;
        columns: 2;
    }
.header__container {
        padding-right: 24px;
        padding-left: 24px;
        height: 90px;
    }
.header__address {
        margin-left: 20px;
    }
.header__email {
        margin-left: 10px;
    }
.header__button-question {
        display: inline-block;
        margin-left: 20px;
    }
.nav__container {
        padding-right: 24px;
        padding-left: 24px;
        height: 52px;
    }
.footer {
        padding: 60px 0;
    }
.footer__container {
        padding-right: 24px;
        padding-left: 24px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row wrap;
        justify-content: space-between;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
    }
.footer__col:nth-child(1) {
        order: 5;
        flex: 0 0 50%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-box-ordinal-group: 6;
        -moz-box-ordinal-group: 6;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        -ms-flex-order: 5;
        -webkit-order: 5;
    }
.footer__col:nth-child(2),
    .footer__col:nth-child(3) {
        flex: 0 0 130px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 130px;
        -ms-flex: 0 0 130px;
    }
.footer__col:nth-child(3) {
        flex: 0 0 300px;
        -webkit-flex: 0 0 300px;
        -ms-flex: 0 0 300px;
    }
.footer__col:nth-child(4),
    .footer__col:nth-child(5) {
        flex: 0 0 260px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 260px;
        -ms-flex: 0 0 260px;
    }
.footer__col:nth-child(5) {
        order: 6;
        flex: 0 0 50%;
        margin-top: 10px;
        text-align: right;
        -webkit-box-ordinal-group: 7;
        -moz-box-ordinal-group: 7;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        -ms-flex-order: 6;
        -webkit-order: 6;
    }
}
@media only screen and (min-width:1250px) {
h1,
    h2 {
        margin: 0 0 40px;
    }
.form--2 .form__col {
        flex: 0 0 33.33%;
        max-width: 33.33%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
    }
.form--2 .form__col:last-child {
        flex: 0 0 33.33%;
        max-width: 33.33%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 33.33%;
        -ms-flex: 0 0 33.33%;
    }
.form--3 .form__col {
        flex: 0 0 25%;
        max-width: 25%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
    }
.contact {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
    }
.contact__button {
        flex: 0 0 auto;
        width: 20px;
        height: 20px;
        margin-right: 10px;
        pointer-events: none;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
    }
.contact.expanded .contact__button,
    .contact__button,
    .contact__content {
        background-color: transparent;
    }
.contact.expanded .contact__button .svg-icon {
        opacity: 1;
        fill: #2e7d14;
    }
.contact__content {
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        display: inline-block !important;
        flex: 0 1 auto;
        padding: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
    }
.contact__address {
        width: 230px;
        min-width: 100px;
        text-align: left;
    }
.video__icon .svg-icon {
        width: 36px;
        height: 32px;
    }
.menu__btn-menu {
        display: none;
    }
.menu__items {
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row nowrap;
        padding: 0;
        background-color: transparent;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
    }
.menu__item a {
        height: 52px;
        padding: 17px 27px;
    }
.header__container {
        padding-right: 40px;
        padding-left: 40px;
        height: 110px;
    }
.header__phone {
        order: 4;
        margin-left: 40px;
        -webkit-box-ordinal-group: 5;
        -moz-box-ordinal-group: 5;
        -ms-flex-order: 4;
        -webkit-order: 4;
    }
.header__address {
        order: 2;
        margin-left: 0;
        -webkit-box-ordinal-group: 3;
        -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
        -webkit-order: 2;
    }
.header__email {
        order: 3;
        margin-left: 35px;
        -webkit-box-ordinal-group: 4;
        -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
        -webkit-order: 3;
    }
.header__button-question {
        margin-left: 40px;
    }
.footer__container,
    .nav__container,
    .page__container {
        padding-right: 40px;
        padding-left: 40px;
    }
.footer__col:not(:last-child) {
        margin-bottom: 0;
    }
.footer__col:nth-child(1) {
        order: -1;
        flex: 0 0 220px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-box-ordinal-group: 0;
        -moz-box-ordinal-group: 0;
        -webkit-flex: 0 0 220px;
        -ms-flex: 0 0 220px;
        -ms-flex-order: -1;
        -webkit-order: -1;
    }
.footer__col:nth-child(2) {
        flex: 0 0 130px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 130px;
        -ms-flex: 0 0 130px;
    }
.footer__col:nth-child(3),
    .footer__col:nth-child(4) {
        flex: 0 0 340px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 340px;
        -ms-flex: 0 0 340px;
    }
.footer__col:nth-child(4) {
        flex: 0 0 260px;
        -webkit-flex: 0 0 260px;
        -ms-flex: 0 0 260px;
    }
.footer__col:nth-child(5) {
        position: absolute;
        bottom: -54px;
        left: 56px;
        margin: 0;
        text-align: left;
    }
}
@media only screen and (min-width:2500px) {
.logo--header {
        max-width: 220px;
    }
}
@media print {
a,
    a:visited {
        text-decoration: underline;
    }
h2,
    h3,
    p {
        orphans: 3;
        widows: 3;
    }
h2,
    h3 {
        page-break-after: avoid;
    }
}
.ml5 {
    margin-left: 5px;
}
.header__address,
.header__email,
.header__logo,
.header__phone {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
}
li {
    padding: 10px;
    line-height: 21px;
}
.autopark .menu {
    display: flex;
    justify-content: center;
    align-items: center;
}
.contact__item {
    max-width: 464px;
    min-height: 317px;
    margin-top: 40px;
    margin-right: 20px;
    background-color: #fff;
    box-shadow: 0 4px 15px rgba(0,0,0,.15);
    border-radius: 10px;
}
.contact__item a {
    text-decoration: none;
    color: #292929;
    padding-bottom: 6px;
    border-bottom: 1px solid #eee;
}
.contact__title {
    padding: 30px 30px 0 50px;
    font-size: 26px;
    font-weight: 700;
}
.contact__info {
    padding-top: 30px;
    padding-left: 50px;
    padding-right: 86px;
}
@media(max-width:1049px) {
.menu {
        margin-top: 0;
        display: inline-flex;
        flex-direction: column;
        align-items: stretch;
    }
}
@media(max-width:945px) {
.contact__item {
        margin-right: 0;
    }
.field__field input,
    .field__field textarea {
        padding: 16px;
        font-size: 16px;
    }
}
@media(max-width:802px) {
.menu {
        display: block;
        align-content: space-around;
        flex-wrap: wrap;
        align-items: stretch;
        text-align: center;
    }
.autopark .menu {
        display: flex;
        justify-content: space-between;
        flex-direction: row;
        flex-wrap: wrap;
        align-content: flex-end;
        margin: 0 22px 0 16px;
    }
}
@media(max-width:475px) {
.contact__title {
        padding-right: 20px;
        padding-left: 50px;
    }
.contact__item {
        max-width: 380px;
    }
.contact__info {
        padding-left: 50px;
    }
}
@media(max-width:408px) {
.contact__title {
        padding-left: 50px;
    }
.contact__info {
        margin-bottom: 35px;
    }
.contact__item {
        max-width: 280px;
    }
body,
    html {
        margin: 0;
        height: 100%;
        font-size: 16px;
    }
html {
        -webkit-text-size-adjust: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        min-width: 320px;
        -ms-overflow-style: scrollbar;
        -ms-text-size-adjust: 100%;
        line-height: 1.15;
    }
body {
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        color: #2b2929;
        background-color: #fff;
        font-family: SourceSansPro,Arial,sans-serif;
        -webkit-font-smoothing: subpixel-antialiased !important;
        -ms-backface-visibility: hidden;
        line-height: 1.2;
    }
a {
        background-color: transparent;
    }
button,
    input {
        overflow: visible;
    }
body:after {
        display: table;
        clear: both;
        content: "";
    }
h1 {
        color: #2b2929;
        margin: 0 0 30px;
        font-size: 30px;
        line-height: 1.3;
    }
h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        word-wrap: break-word;
        word-break: break-word;
        font-family: SourceSansPro,Arial,sans-serif;
        font-weight: 700;
        overflow-wrap: break-word;
        font-size: 18px;
    }
h2 {
        font-size: 22px;
        color: #6b380d;
        line-height: 1.4;
        text-align: center;
    }
h3,
    h4,
    h5,
    h6 {
        margin: 0 0 1.5em;
        color: #2b2929;
        line-height: 1.2;
    }
h3 {
        font-size: 24px;
    }
h4 {
        font-size: 20px;
    }
h5 {
        font-size: 16px;
    }
h6 {
        font-size: 1em;
    }
p {
        margin: 0 0 20px;
        font-weight: 300;
        font-style: normal;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 18px;
        line-height: 1.55;
    }
a,
    button {
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }
a,
    a:hover {
        text-decoration: none;
        color: inherit;
    }
a:hover {
        color: #2e7d14;
    }
button {
        cursor: pointer;
    }
img {
        display: inline-block;
        max-width: 100%;
        height: auto;
        border: 0;
    }
ol,
    ul {
        padding-left: 0;
        list-style-position: inside;
    }
.field__field input,
    .field__field select,
    .field__field textarea,
    table {
        width: 100%;
    }
.svg-icon {
        display: inline-block;
        width: 1em;
        height: 1em;
        fill: currentColor;
    }
.svg-icon--arrow-left,
    .svg-icon--arrow-right {
        width: 2.5em;
        font-size: 1.25rem;
    }
.svg-icon--email {
        width: 1.142857142857143em;
        font-size: 0.875rem;
    }
.svg-icon--location {
        width: 0.736842105263158em;
        font-size: 1.1875rem;
    }
.svg-icon--phone,
    .svg-icon--search {
        width: 1em;
        font-size: 1.125rem;
    }
.svg-icon--triangle {
        width: 0.888888888888889em;
        font-size: 1.125rem;
    }
.svg-icon--user {
        width: 0.789473684210526em;
        font-size: 1.1875rem;
    }
button::-moz-focus-inner {
        padding: 0;
        border: 0;
    }
.button,
    .button:hover {
        text-decoration: none;
        color: #fff;
    }
.button,
    .button::before {
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
.button {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        flex-flow: row nowrap;
        justify-content: center;
        align-items: center;
        min-height: 44px;
        padding: 15px 30px 13px;
        cursor: pointer;
        text-align: center;
        text-transform: uppercase;
        border: none;
        background: -webkit-gradient(linear,left top,left bottom,from(#ff9c68),to(#d16537));
        background: -webkit-linear-gradient(top,#ff9c68 0,#d16537 100%);
        background: -moz- oldlinear-gradient(top,#ff9c68 0,#d16537 100%);
        background: -o-linear-gradient(top,#ff9c68 0,#d16537 100%);
        background: linear-gradient(180deg,#ff9c68 0,#d16537 100%);
        text-shadow: 0 1px 1px rgba(0,0,0,.1);
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 12px;
        font-weight: 700;
        line-height: 16px;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -webkit-box-pack: center;
        -moz-box-pack: center;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        position: relative;
        -webkit-box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
        -moz-box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
        box-shadow: 0 3px 8px rgba(245,145,94,.4),inset 0 2px 0 rgba(255,255,255,.29);
        background-color: #d16537;
    }
.button::before {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        content: "";
        pointer-events: none;
        opacity: 0;
        background: -webkit-gradient(linear,left top,left bottom,from(#ff9c68),to(#e77c4e));
        background: -webkit-linear-gradient(top,#ff9c68 0,#e77c4e 100%);
        background: -moz- oldlinear-gradient(top,#ff9c68 0,#e77c4e 100%);
        background: -o-linear-gradient(top,#ff9c68 0,#e77c4e 100%);
        background: linear-gradient(180deg,#ff9c68 0,#e77c4e 100%);
        background-color: #e77c4e;
        -webkit-box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
        -moz-box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
        box-shadow: 0 2px 8px rgba(245,145,94,.2),inset 0 2px 0 rgba(255,255,255,.29);
    }
.button:hover {
        border-color: #2e7d14;
        background-color: #2e7d14;
        margin-left: 15px;
        margin-right: 15px;
    }
.button:hover::before {
        opacity: 1;
    }
.button--small {
        min-height: 36px;
        padding: 11px 30px 9px;
        font-size: 11px;
    }
.button--big {
        min-height: 50px;
        padding: 18px 30px 16px;
        font-size: 16px;
    }
.button--frame-blue,
    .button--frame-red {
        color: #369;
        border-color: #369;
        background-color: transparent;
    }
.button--frame-blue:hover {
        color: #fff;
        border-color: #369;
        background-color: #369;
    }
.button--frame-red {
        color: #c33;
        border-color: #c33;
    }
.button--frame-red:hover {
        color: #fff;
        border-color: #c33;
        background-color: #c33;
    }
.button__caption,
    .button__svg-icon {
        position: relative;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
    }
.button__caption {
        z-index: 10;
        flex: 0 1 auto;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
    }
.button__svg-icon {
        top: -1px;
        display: inline-block;
        flex: 0 0 auto;
        margin-right: 12px;
        margin-left: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
    }
.button--icon-right .button__svg-icon {
        order: 2;
        margin-right: 0;
        margin-left: 12px;
        -webkit-box-ordinal-group: 3;
        -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
        -webkit-order: 2;
    }
.btn-menu {
        position: relative;
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        flex-flow: row nowrap;
        align-items: center;
        width: 30px;
        height: 30px;
        min-height: 12px;
        padding: 0;
        cursor: pointer;
        border: none;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        background: 0 0;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
    }
.btn-menu::before {
        top: 50%;
        margin-top: -2px;
    }
.btn-menu:hover::before {
        background-color: #2e7d14;
    }
.btn-menu.active {
        visibility: visible;
    }
.btn-menu.active::before {
        opacity: 0;
    }
.btn-menu__caption,
    .btn-menu__icon {
        flex: 0 0 auto;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
    }
.btn-menu__caption {
        letter-spacing: 0.01em;
        text-transform: uppercase;
        color: #fff;
        text-shadow: 0 1px 1px rgba(0,0,0,.1);
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 13px;
        font-weight: 700;
        font-style: normal;
        line-height: 1;
    }
.btn-menu__icon {
        position: relative;
        margin-right: 12px;
    }
.btn-menu::before,
    .btn-menu__icon::after,
    .btn-menu__icon::before {
        position: absolute;
        left: 0;
        content: "";
    }
.btn-menu__icon::before {
        top: -5px;
        -webkit-transform-origin: left top;
        -moz-transform-origin: left top;
        -ms-transform-origin: left top;
        -o-transform-origin: left top;
        transform-origin: left top;
    }
.btn-menu__icon::after {
        top: 5px;
        -webkit-transition: all 70ms linear;
        -moz-transition: all 70ms linear;
        -o-transition: all 70ms linear;
        transition: all 70ms linear;
        -webkit-transform-origin: left bottom;
        -moz-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        -o-transform-origin: left bottom;
        transform-origin: left bottom;
    }
.btn-menu__icon,
    .btn-menu__icon::after,
    .btn-menu__icon::before {
        display: block;
        width: 18px;
        height: 2px;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-border-radius: 1px;
        -moz-border-radius: 1px;
        border-radius: 1px;
        background-color: #fff;
    }
.btn-menu.active .btn-menu__icon {
        background-color: transparent;
    }
.btn-menu.active .btn-menu__icon::before {
        top: -6px;
        left: 3px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }
.btn-menu.active .btn-menu__icon::after {
        top: 6px;
        left: 3px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
.field {
        position: relative;
        display: block;
        width: 100%;
    }
.field__label {
        display: block;
        margin-bottom: 10px;
        color: #2b2929;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.2;
    }
.field__required {
        color: #c00;
    }
.field__helpers {
        display: block;
        margin-top: 5px;
    }
.field__hint {
        display: block;
        margin: 0;
        color: #999;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 12px;
        font-weight: 400;
        line-height: 1.4;
    }
.field__field {
        position: relative;
    }
.field__field input,
    .field__field textarea {
        display: block;
        padding: 15px 20px 14px;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        color: #2b2929;
        border: 1px solid #409817;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        background-color: #fff;
        -webkit-box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
        -moz-box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
        box-shadow: inset 5px 5px 8px rgba(0,0,0,.1);
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 20px;
    }
.field__field input:invalid,
    .field__field textarea:invalid {
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
.field__field input:focus,
    .field__field input:hover,
    .field__field textarea:focus,
    .field__field textarea:hover {
        border-color: #ff9d6a;
        outline: 0;
    }
.field__field input::-webkit-input-placeholder,
    .field__field textarea::-webkit-input-placeholder {
        opacity: 1;
        color: #2b2929;
    }
.field__field input:-moz-placeholder,
    .field__field input::-moz-placeholder,
    .field__field textarea:-moz-placeholder,
    .field__field textarea::-moz-placeholder {
        opacity: 1;
        color: #2b2929;
    }
.field__field input:-ms-input-placeholder,
    .field__field textarea:-ms-input-placeholder {
        opacity: 1;
        color: #2b2929;
    }
.field__field input::-webkit-input-placeholde,
    .field__field textareainput::-webkit-input-placeholde {
        opacity: 1;
        color: #2b2929;
    }
.ios .field__field input,
    .ios .field__field textarea {
        font-size: 16px;
    }
.field--icon .field__field input,
    .field--icon .field__field textarea {
        padding-right: 40px;
    }
.field--error .field__field input,
    .field--error .field__field textarea {
        color: red;
        border-color: red;
    }
.field--error .field__field input::-webkit-input-placeholder,
    .field--error .field__field textarea::-webkit-input-placeholder {
        opacity: 1;
        color: red;
    }
.field--error .field__field input:-moz-placeholder,
    .field--error .field__field input::-moz-placeholder,
    .field--error .field__field textarea:-moz-placeholder,
    .field--error .field__field textarea::-moz-placeholder {
        opacity: 1;
        color: red;
    }
.field--error .field__field input:-ms-input-placeholder,
    .field--error .field__field textarea:-ms-input-placeholder {
        opacity: 1;
        color: red;
    }
.field--error .field__field input::-webkit-input-placeholde,
    .field--error .field__field textareainput::-webkit-input-placeholde {
        opacity: 1;
        color: red;
    }
.field__field input {
        height: 50px;
    }
.field__field textarea {
        height: 120px;
        resize: none;
    }
.field__icon {
        position: absolute;
        top: 25px;
        right: 27px;
        display: inline-block;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        -webkit-transform: translate(50%,-50%);
        -moz-transform: translate(50%,-50%);
        -ms-transform: translate(50%,-50%);
        -o-transform: translate(50%,-50%);
        transform: translate(50%,-50%);
        fill: #ff9d6a;
    }
input:focus+.field__icon,
    input:hover+.field__icon {
        fill: #2e7d14;
    }
.field__error {
        display: block;
        margin: 5px 0 -5px;
        color: red;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 12px;
        font-weight: 400;
        line-height: 1.2;
    }
.error-style--popup .field__error,
    .error-style--popup-top .field__error {
        position: absolute;
        z-index: 100;
        left: 0;
        display: inline-block;
        max-width: 100%;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 12px;
    }
.error-style--popup .field__error {
        border: 1px solid #ddd;
        -webkit-box-shadow: 0 0 10px rgba(0,0,0,.15);
        -moz-box-shadow: 0 0 10px rgba(0,0,0,.15);
        box-shadow: 0 0 10px rgba(0,0,0,.15);
        font-weight: 300;
        line-height: 18px;
        top: 92%;
        padding: 8px 10px;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        background-color: #ffc;
    }
.error-style--popup .field__error::after,
    .error-style--popup .field__error::before {
        position: absolute;
        top: -7px;
        left: 10px;
        display: block;
        width: 14px;
        height: 7px;
        content: "";
        border-width: 0 7px 7px;
        border-style: solid;
        border-color: transparent transparent #ddd;
    }
.error-style--popup .field__error::after {
        top: -6px;
        border-width: 0 6px 6px;
        border-color: transparent transparent #fdfcd3;
    }
.error-style--popup-top .field__error {
        top: -36px;
        padding: 7px 10px;
        text-align: center;
        color: #fff;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        background-color: #fc5851;
    }
.error-style--popup-top .field__error::after {
        position: absolute;
        bottom: -8px;
        left: 50%;
        display: block;
        width: 16px;
        height: 8px;
        margin-left: -8px;
        content: "";
        border-width: 8px 8px 0;
        border-style: solid;
        border-color: #fc5851 transparent transparent;
    }
.field--type-checkbox,
    .field--type-radio {
        position: relative;
        display: inline-block;
        width: auto;
    }
.field--type-checkbox input,
    .field--type-radio input {
        display: none;
        margin: 0;
        padding: 0;
        opacity: 0;
    }
.field--type-radio .field__label {
        display: inline-block;
        min-height: 20px;
        margin: 0;
        padding: 0 0 0 32px;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        color: #2b2929;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 16px;
        -webkit-touch-callout: none;
    }
.field--type-radio .field__label .field__check {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 20px;
        height: 20px;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        border: 1px solid #d1d1d1;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: #fff;
    }
.field--type-checkbox .field__label:hover .field__check,
    .field--type-radio .field__label:hover .field__check {
        border-color: #999;
    }
.field--type-radio input:checked+.field__label .field__check::after {
        position: absolute;
        top: 50%;
        left: 50%;
        display: block;
        width: 10px;
        height: 10px;
        margin-top: -5px;
        margin-left: -5px;
        content: "";
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: #09f;
    }
.field--type-checkbox .field__label {
        display: inline-block;
        min-height: 20px;
        margin: 0;
        padding: 0 0 0 30px;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        color: #2b2929;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 16px;
        -webkit-touch-callout: none;
    }
.field--type-checkbox .field__label .field__check {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 20px;
        height: 20px;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        border: 1px solid #d1d1d1;
    }
.field--type-checkbox input:checked+.field__label .field__check::after {
        position: absolute;
        top: 2px;
        left: 7px;
        display: block;
        width: 6px;
        height: 11px;
        content: "";
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
        border-width: 2px;
        border-style: none solid solid none;
        border-color: #09f;
    }
.field--type-checkbox.field--error .field__label .field__check {
        border-color: #c99;
    }
.field--type-checkbox .field__error {
        padding-left: 30px;
    }
.form,
    .form--frame {
        display: block;
    }
.form--frame {
        padding: 20px;
        border: 10px solid rgba(0,0,0,.07);
        background-color: #e8590c;
    }
.form__subtitle,
    .form__title {
        display: block;
        margin: 0 0 20px;
        color: #fff;
        text-shadow: 0 1px 1px rgba(0,0,0,.1);
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 18px;
        font-weight: 400;
        font-style: normal;
        line-height: 1.8;
    }
.form__title a {
        display: inline-block;
        text-decoration: none;
        color: #fff;
    }
.form__title a:hover {
        text-decoration: underline;
        color: #fff;
    }
.form__subtitle {
        margin: -15px 0 20px;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 16px;
        font-weight: 300;
    }
.form__submit {
        width: 100%;
    }
.form__row {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row wrap;
        margin: 0 -15px -10px;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
    }
.form__col {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 10px;
        padding: 0 15px;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
    }
.form__col,
    .logo {
        display: block;
    }
.logo--header {
        max-width: 160px;
    }
.logo img {
        max-width: 100%;
        height: auto;
        border: none;
    }
.contact,
    .logo img {
        display: block;
    }
.contact__button {
        position: relative;
        display: block;
        width: 20px;
        height: 20px;
        padding: 0;
        border: none;
        background-color: transparent;
    }
.contact__button .svg-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        -webkit-transform: translate(-50%,-50%);
        -moz-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        -o-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        fill: #2e7d14;
    }
.contact.expanded .contact__button .svg-icon {
        opacity: 0.5;
    }
.contact__address,
    .contact__phone {
        display: block;
        margin: 0;
        text-align: center;
        color: #2b2929;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 14px;
        font-weight: 400;
        font-style: normal;
        line-height: 1.285;
    }
.contact__phone {
        margin: 6px 0;
        text-decoration: none;
        font-size: 18px;
        font-weight: 600;
        line-height: 20px;
    }
.breadcrumbs__item a:hover,
    .contact__email,
    .contact__email:hover,
    .contact__phone:hover {
        text-decoration: none;
        color: #2e7d14;
    }
.contact__email {
        display: block;
        margin: 6px 0;
        text-align: center;
        color: #2b2929;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 18px;
        font-weight: 400;
        font-style: normal;
        line-height: 20px;
    }
.search__btn-search .svg-icon {
        position: relative;
        top: -2px;
        display: inline-block;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        opacity: 0.5;
        fill: #fff;
    }
.search__btn-search:hover .svg-icon {
        opacity: 1;
    }
.search__btn-submit .svg-icon {
        position: relative;
        top: -2px;
        display: inline-block;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        fill: #ff9d6a;
    }
.search__btn-submit:hover .svg-icon {
        fill: #2e7d14;
    }
.video__icon,
    .video__icon .svg-icon,
    .video__icon::after,
    .video__icon::before {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }
.video__icon .svg-icon {
        z-index: 5;
        display: inline-block;
        width: 19px;
        height: 17px;
        -webkit-transform: translate(-38%,-50%);
        -moz-transform: translate(-38%,-50%);
        -ms-transform: translate(-38%,-50%);
        -o-transform: translate(-38%,-50%);
        transform: translate(-38%,-50%);
        fill: #fbdf50;
    }
.menu {
        display: block;
    }
.menu__items {
        position: absolute;
        z-index: 200;
        top: 100%;
        right: 0;
        left: 0;
        display: none;
        margin: 0;
        padding: 15px 0;
        list-style: none;
        background-color: #60310a;
    }
.menu__item {
        flex: 0 1 auto;
        margin: 0;
        padding: 0;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
    }
.menu__item a {
        display: block;
        padding: 13px 15px;
        text-decoration: none;
        letter-spacing: 0.01em;
        text-transform: uppercase;
        color: #fff;
        text-shadow: 0 1px 1px rgba(0,0,0,.1);
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 12px;
        font-weight: 700;
        font-style: normal;
        line-height: 18px;
    }
.menu__item a.current,
    .menu__item a:hover {
        text-decoration: underline;
        /*color: #ff9d6a;
        background-color: rgba(0,0,0,.3);*/
    }
.menu-footer,
    .menu__item {
        display: block;
    }
.menu-footer__items {
        display: block;
        margin: 0;
        padding: 0;
        list-style: none;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0;
        -webkit-columns: 2;
        -moz-columns: 2;
        columns: 2;
    }
.menu-footer__item {
        display: block;
        margin: 0 0 9px;
        padding: 0;
        color: #dfc0a5;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 15px;
        font-weight: 400;
        font-style: normal;
        line-height: 1.2;
    }
.menu-footer__item a {
        text-decoration: none;
        color: #dfc0a5;
    }
.menu-footer__item a:hover {
        text-decoration: none;
        color: #ff9d6a;
    }
.header {
        display: block;
    }
.header__container {
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        max-width: 1250px;
        height: 70px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 15px;
        padding-left: 15px;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
    }
.header__logo {
        margin-right: auto;
    }
.header__address,
    .header__email,
    .header__logo,
    .header__phone {
        flex: 0 0 auto;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
    }
.header__address,
    .header__email {
        margin-left: 20px;
    }
.header__button-question {
        display: none;
        order: 10;
        -webkit-box-ordinal-group: 11;
        -moz-box-ordinal-group: 11;
        -ms-flex-order: 10;
        -webkit-order: 10;
    }
.nav {
        display: block;
        background-color: #6b380d;
        background-image: url("https://rosperevozki.ru/blog/wp-content/themes/astra-child/assets/img/nav-bg.png");
        background-repeat: repeat-x;
        background-position: center center;
        -webkit-background-size: contain;
        -moz-background-size: contain;
        -o-background-size: contain;
        background-size: contain;
    }
.nav__container {
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
        align-items: center;
        max-width: 1250px;
        height: 40px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 15px;
        padding-left: 15px;
        -webkit-align-items: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-align: center;
        -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
    }
.footer {
        display: block;
        padding: 40px 0;
        background-color: #6b380d;
    }
.footer__container {
        position: relative;
        max-width: 1250px;
        margin-right: auto;
        margin-left: auto;
        padding-right: 15px;
        padding-left: 15px;
    }
.footer__col {
        display: block;
    }
.footer__col:not(:last-child) {
        margin-bottom: 30px;
    }
.footer__title {
        display: block;
        margin: 0 0 17px;
        color: #fff;
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 17px;
        font-weight: 700;
        font-style: normal;
        line-height: 1.2;
    }
.footer__menu {
        max-width: 360px;
    }
.footer__address,
    .footer__email,
    .footer__phone {
        position: relative;
        display: block;
        padding-left: 25px;
        text-decoration: none;
        color: #fff;
    }
.footer__address:not(:last-child),
    .footer__email:not(:last-child),
    .footer__phone:not(:last-child) {
        margin-bottom: 15px;
    }
.footer__address .svg-icon,
    .footer__email .svg-icon,
    .footer__phone .svg-icon {
        position: absolute;
        top: 2px;
        left: -1px;
        display: inline-block;
        fill: #ff9d6a;
    }
.footer__address,
    .footer__copyright,
    .footer__email,
    .footer__phone {
        font-family: SourceSansPro,Arial,sans-serif;
        font-size: 18px;
        font-weight: 400;
        line-height: 20px;
    }
.footer__email:hover,
    .footer__phone:hover {
        text-decoration: none;
        color: #ff9d6a;
    }
.footer__address,
    .footer__copyright,
    .footer__email {
        font-size: 12px;
        font-style: normal;
        line-height: 1.6;
    }
.footer__copyright,
    .footer__email {
        font-size: 13px;
        line-height: 20px;
    }
.footer__copyright {
        display: block;
        margin: 0;
        color: #d0b08a; /* A5 a11y: 4.67:1 on #6b380d (was #966e4d 2.11 FAIL). */
        font-size: 12px;
        line-height: 22px;
    }
.footer__copyright:first-line {
        font-size: 15px;
    }
.footer__copyright {
        line-height: 22px;
    }
.ml5 {
        margin-left: 5px;
    }
.header__address,
    .header__email,
    .header__logo,
    .header__phone {
        display: flex;
        align-items: center;
        flex-direction: row;
        flex-wrap: nowrap;
    }
li {
        padding: 10px;
        line-height: 21px;
    }
.autopark .menu {
        display: flex;
        justify-content: center;
        align-items: stretch;
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: space-around;
    }
.contact__item {
        max-width: 464px;
        min-height: 317px;
        margin-top: 40px;
        margin-right: 20px;
        background-color: #fff;
        box-shadow: 0 4px 15px rgba(0,0,0,.15);
        border-radius: 10px;
    }
.contact__item a {
        text-decoration: none;
        color: #292929;
    }
.contact__title {
        padding: 50px 201px 0 50px;
        font-size: 26px;
        font-weight: 700;
    }
.contact__info {
        padding-top: 40px;
        padding-left: 75px;
        padding-right: 16px;
    }
}
.logo.logo--footer.footer__logo {
    margin-top: -16px;
}
li {
    font-family: SourceSansPro,Arial,sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.55;
}
p.footer__copyright br {
    display: none;
}
.footer__address p {
    color: #dfc0a5 !important;
}
.nav {
    position: relative;
}
.to-top {
    position: fixed;
    bottom: 10px;
    left: calc(50% - 1320px / 2);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s opacity linear;
}
.to-top.visible {
    opacity: 1;
    visibility: visible;
}
.to-top:hover {
    cursor: pointer;
}
@media screen and (max-width:1320px) {
.to-top {
        left: 35px;
    }
}
.to-top__wrapper {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: linear-gradient(180deg,#ff9c68 0,#d16537 100%);
    border-radius: 50%;
    transition: 0.3s background linear;
}
.to-top__icon {
    width: 25px;
    height: 20px;
    fill: #fff;
    transform: rotate(90deg);
}
/* punch-list: scroll-to-top removed EVERYWHERE — the mobile bottom bar
   (.mobilebar) replaces it on phones, the fixed header offers "up" on desktop.
   No media gate: hidden at every width. Markup also dropped from footer.php.
   Astra PARENT renders its own #ast-scroll-top button (the orange ↑ arrow) from
   the theme, not from our markup — kill it too at every width. Also disabled at
   render via functions.php (astra_get_option scroll_to_top filter). */
.to-top,
#ast-scroll-top,
.ast-scroll-top-icon,
.ast-scroll-to-top-right { display: none !important; }
@media (prefers-reduced-motion:no-preference) {
:root {
        scroll-behavior: smooth;
    }
}
/*styles for header*/
.page-header {
    width: 100%;
    position: fixed;
    top: 0;
    background: #fff;
    z-index: 200;
    /* punch-list PRAVKA 3: 1px hairline matches the reference header separator
       (white fixed bar otherwise floats over content with no edge). */
    border-bottom: 1px solid #e9e4da;
}
.header-nav {
    margin-right: 38px;
    margin-top: 2px;
}
.header-nav-btn {
    display: block;
    background: linear-gradient(180deg, #ff9c68 0, #d16537 100%);
    box-shadow: 0 3px 8px rgba(245, 145, 94, .4), inset 0 2px 0 rgba(255, 255, 255, .29);
    border: 0px;
    border-radius: 4px;
    width: 44px;
    height: 44px;
    padding: 0px 0 0 6px;
}
.header-nav-btn:hover {
    opacity: 0.9;
}
.menu>.header-nav-btn.active {
    background: linear-gradient(180deg, #ff9c68 0, #d16537 100%);
}
.header-nav-btn span {
    width: 27px;
    height: 4px;
    border-radius: 2px;
    box-shadow: 0px 0px 2px 0px rgba(34, 60, 80, 0.2) inset;
    transition: all 0.3s ease;
}
.header-nav-btn span:before {
    width: 32px;
    height: 4px;
    border-radius: 2px;
    top: -11px;
    box-shadow: 0px 0px 2px 0px rgba(34, 60, 80, 0.2) inset;
    transition: all 0.3s ease;
}
.header-nav-btn span:after {
    width: 22px;
    height: 4px;
    border-radius: 2px;
    top: 11px;
    box-shadow: 0px 0px 2px 0px rgba(34, 60, 80, 0.2) inset;
    transition: all 0.3s ease;
}
.header-nav-btn.opened span {
    display: table-row-group;
}
.header-nav-btn.opened .btn-menu__icon::before {
    top: -10px;
    left: 6px;
    transform: rotate(45deg);
}
.header-nav-btn.opened .btn-menu__icon::after {
    width: 32px;
    top: 11px;
    left: 6px;
    transform: rotate(-45deg);
}
.header-nav-items {
    display: none;
    position: absolute;
    background: #fff;
    color: #2b2929;
    padding: 30px 50px 15px 65px;
    width: 500px;
    top: 100px;
}
.header-logo {
    margin-right: auto;
    max-width: 200px;
}
.header-short_nav {
    display: flex;
    width: 30%;
    justify-content: space-between;
    margin-right: 2%;
}
.header-short_nav .header-nav-item {
    display: inline-block;
    margin-top: 18px;
    font-size: 16px;
    font-weight: 700;
	text-transform: uppercase;
}
a.header-nav-item {
    margin-bottom: 15px;
}
.header-nav-items-left {
    display: inline-block;
    width: 45%;
    text-align: left;
}
.header-nav-items-right {
    display: inline-block;
    width: 40%;
    float: right;
    text-align: left;
}
.header-nav-item {
    display: block;
    color: #2b2929;
    font-size: 19px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.header-nav-items-right>.header-nav-item:hover {
	text-decoration: none;
}
.header-nav-services {
    padding-left: 0px;
}
.header-nav-services li {
    line-height: 1.35;
}
.header-nav-services a {
    display: inline-block;
    color: #2b2929;
    font-size: 16px;
    font-weight: 400;
    text-transform: none;
    height: auto;
    padding: 0;
    line-height: 1.7;
}
.header__button-question:hover {
    opacity: 0.9;
	color: #fff;
}
li:not(.ui-menu-item) {
    line-height: 1.35;
}
li {
    padding: 5px 10px;
}
p {
    line-height: 1.35;
}
@media (max-width: 1250px) {
.header-short_nav .header-nav-item {
        font-size: 15px;
    }
.header-short_nav {
        margin-right: 3%;
        width: 28%;
    }
.header-nav-items {
        top: 90px;
    }
}
@media (max-width: 1049px) {
.header-short_nav {
        display: none;
    }
}
@media (max-width: 767px) {
.header-nav-btn {
        border-radius: 3px;
        width: 33px;
        height: 33px;
        padding: 0px 0 0 5px;
    }
.header-nav-btn span {
        width: 19px;
        height: 3px;
        border-radius: 2px;
    }
.header-nav-btn span:before {
        width: 23px;
        height: 3px;
        border-radius: 2px;
        top: -8px;
    }
.header-nav-btn span:after {
        width: 16px;
        height: 3px;
        border-radius: 2px;
        top: 8px;
    }
.header-nav-btn.opened .btn-menu__icon::before {
        top: -7px;
        left: 4px;
    }
.header-nav-btn.opened .btn-menu__icon::after {
        width: 23px;
        top: 8px;
        left: 4px;
    }
.header-logo {
        max-width: 160px;
    }
.header__button-question {
        display: block;
        margin-left: 20px;
        min-height: 33px;
        padding: 9px 20px 8px;
		font-size: 11px;
    }
.contact__content {
		padding: 0px 5px;
	}
.contact__phone img {
		width: 19px;
		margin-left: 0px;
		margin-right: 5px;
	}
.header-nav-items {
        padding: 15px 5px 5px 5px;
        width: 390px;
        top: 70px;
    }
.header-nav-item {
        margin-bottom: 5px;
        font-size: 17px;
    }
a.header-nav-item {
        margin-bottom: 10px;
    }
.header-phone .contact__phone {
        margin-top: 6px;
        margin-left: 8px;
        font-size: 16px;
    }
.header-logo {
        max-width: 160px;
        padding: 0px 12px 0 15px;
    }
.contact__phone svg {
        margin-top: -5px;
    }
.header-question {
        display: block;
        margin-left: 20px;
        min-height: 33px;
        padding: 9px 20px 8px;
        white-space: nowrap;
    }
}
@media (max-width: 682px) {
.header-nav {
        margin-right: 15px;
    }
}
@media (max-width: 578px) {
.header-phone span {
        display: none  !important;
    }
}
@media (max-width: 420px) {
.header-nav-items {
        padding: 15px 5px 15px 5px;
        width: 100%;
    }
.header-nav-items-left {
        width: 75%;
    }
.header-nav-items-right {
        width: 75%;
        float: none;
    }
.header-logo {
        padding: 0px 1px 0 8px;
        min-width: 90px;
    }
.header-nav {
        margin-right: 8px;
    }
}

/* ============================================================================
   FOOTER TEXT OVERRIDES — brand-correct, readable colors (authoritative).
   Placed LAST so they win the cascade over the dark `body { color:#2b2929 }`
   that the legal block / copyright otherwise inherit on the brown footer.
   Brown bg #6b380d · body text light-beige #dfc0a5 · headings white
   · phone/email light-tan #dfc0a5, hover accent #ff9d6a (NO green — owner brief).
   ========================================================================== */
.footer,
.footer p,
.footer span,
.footer b,
.footer time,
.footer address,
.footer__copyright,
.footer__copyright span,
.footer-legal-details,
.footer-legal-details p,
.footer-legal-details b,
.footer__address,
.footer__col,
.menu-footer__item,
.menu-footer__item a {
    color: #dfc0a5;
}
.menu-footer__item a:hover {
    color: #ff9d6a;
}
/* Column headings: near-white */
.footer__title {
    color: #fff;
}
/* Phone + email: light-tan body text (NOT green) on the brown footer; hover → accent.
   span wins over the broad `.footer span`. (owner brief: no #2e7d14 anywhere in footer) */
.footer__phone,
.footer__email,
.footer__phone span,
.footer__email span {
    color: #dfc0a5;
}
.footer__phone:hover,
.footer__email:hover,
.footer__phone:hover span,
.footer__email:hover span {
    color: #ff9d6a;
}

/* ============================================================================
   ONE-FONT OVERRIDE — force Onest across all chrome (header + footer).
   chrome.css inherits SourceSansPro/GothamPro on many header & footer selectors;
   Onest is loaded globally via Google Fonts. This block (placed LAST → wins the
   cascade) unifies the whole chrome on ONE typeface. Icons are inline SVG, so
   forcing font-family here is safe.
   ========================================================================== */
.page-header, .page-header *, .footer, .footer *{font-family:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif !important}

/* ============================================================================
   FIXED-HEADER CLEARANCE — the .page-header is position:fixed (top:0), removed
   from flow, so page content slides UNDER it. The donor's body offset was never
   ported, which buried the top of top-aligned content (calc-card head, crumbs)
   behind the bar. Offset the in-flow content below the header at every
   breakpoint (header height: 70 base / 90 ≥768 / 110 ≥1250). scroll-padding-top
   keeps TOC anchor jumps from landing under the header too. Placed LAST → wins;
   body uses no padding shorthand elsewhere, so padding-top is safe.
   ========================================================================== */
html{scroll-padding-top:124px}
body{padding-top:70px}
@media (min-width:768px){body{padding-top:90px}}
/* prod-style horizontal header now kicks in at >=1024 (was 1250) — its bar is
   110px tall (.header__container height bumped in the >=1024 block below), so the
   fixed-header clearance must match from 1024 up, not 1250. */
@media (min-width:1024px){body{padding-top:110px}}

/* ============================================================================
   punch-list P1 — MOBILE HEADER NOT STICKY (≤767). Owner: don't pin the top bar
   on phones; the bottom .mobilebar is the only fixed chrome. Make .page-header
   position:static so it scrolls away with the content, and DROP the fixed-header
   body offset (the 70px that buried the hero ~70px down → P2 "image far from
   header"). Later in source than the base body{padding-top:70px} and the
   min-width:768/1250 offsets don't apply at ≤767, so this wins cleanly. scroll-
   padding-top trimmed to 16px so #calc/anchor jumps don't land in a big void
   (no fixed bar to clear anymore). Desktop ≥768 header untouched (still fixed).
   ========================================================================== */
@media (max-width:767px){
  .page-header{position:static}
  body{padding-top:0}
  html{scroll-padding-top:16px}
}

/* ============================================================================
   (REMOVED) old rule hid the "Задать вопрос" CTA ≤640. The redesigned header keeps
   the CTA VISIBLE at every width (right cluster: CTA + logo) — see HEADER REDESIGN
   block at the end of this file. Phone+WhatsApp left the bar (moved into the drawer),
   so the row fits at 360 without hiding the CTA.
   ========================================================================== */

/* ============================================================================
   STICKY MOBILE MENU (punch-list / ref rosperevozki-blog-news.pages.dev) — the
   .page-header is already position:fixed;top:0 so the bar + burger stay pinned on
   mobile (verified: top stays 0 after scroll @390). This only caps the OPEN burger
   panel so a tall menu scrolls inside the viewport instead of running off-screen
   under the pinned header. ≤767 only → desktop header untouched.
   ========================================================================== */
@media (max-width:767px){
  .header-nav-items{max-height:calc(100vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}
}

/* ============================================================================
   FOOTER DONOR REPLICA FIXES — footer.php is now the flat 5-col donor markup, so
   the donor base layout renders it (.footer__col:nth-child order flex, ~:1471).
   These small additions: socials row, brand-tan icons (de-greened sprite uses
   currentColor), muted subordinate legal/copyright. Placed LAST → wins. owner brief.
   ========================================================================== */
.footer__socials{display:-webkit-flex;display:flex;gap:10px;margin-top:16px}
/* social pills: fixed tidy box so a slow/failed remote icon never blows out to
   intrinsic size or shows a jagged broken-img (scar: every emitted class needs a
   rule). object-fit keeps VK/MAX glyphs centred at 360. */
.footer__soc{display:-webkit-inline-flex;display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;flex:none;border-radius:10px;background:rgba(255,255,255,.08);
  overflow:hidden;transition:background .14s}
.footer__soc:hover{background:rgba(255,255,255,.16)}
.footer__soc img{width:22px;height:22px;display:block;object-fit:contain}
.footer__phone .svg-icon,.footer__email .svg-icon,.footer__address .svg-icon{color:#ff9d6a;fill:currentColor}
.footer-legal-details{margin:18px 0 0}
/* legal + copyright: light tan #d0b08a = 4.67:1 on brown #6b380d (was #b7916e 3.32 /
   #966e4d 2.11 — both FAILED AA). Still dimmer than the #dfc0a5 body (5.56:1). */
.footer-legal-details p{margin:0 0 4px;font-size:13px;line-height:1.5;color:#d0b08a}
/* p.footer__copyright (0,0,2,1) beats the broad `.footer p` (0,0,1,1) so the muted
   tan actually lands on the SEO copyright line. */
.footer p.footer__copyright{color:#d0b08a}

/* ===== punch-list M5: mobile footer compaction (≤767) =====
   Strip the footer to logo + legal block (ООО/ОГРН/ИНН/КПП) + copyright line.
   Desktop 5-col donor layout (min-width:768 flex/order rules above) is untouched.
   Hide cols 2/3/4 = Компания / Услуги / Контакты link lists, and the socials row. */
@media only screen and (max-width:767px){
  .footer__col:nth-child(2),
  .footer__col:nth-child(3),
  .footer__col:nth-child(4){display:none}
  .footer__socials{display:none}
  .footer{padding:28px 0}
  .footer__col:not(:last-child){margin-bottom:18px}
}

/* A7d: skip-to-content link — first focusable element, hidden until focused. */
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;
  background:#6b380d;color:#fff;padding:10px 18px;border-radius:0 0 8px 0;
  font-weight:600;font-size:14px;text-decoration:none}
.skip-link:focus{left:0}

/* A6: the "Задать вопрос" CTA is now a <button> (keyboard-focusable). Strip the
   native control appearance so it renders 1:1 with the former <a class="button">. */
button.button{-webkit-appearance:none;appearance:none}

/* =========================================================================
   "Задать вопрос" lead popup. Markup: footer.php (.popup-form / .js-popup-form).
   JS: chrome.js. Backend: mu-plugins/rp-lead-form.php. Tokens fall back to brand
   hex because chrome.css loads before blog-design/blog-listing :root.
   ========================================================================= */
body.pf-lock{overflow:hidden}

.popup-form{
  position:fixed;inset:0;z-index:1100;
  display:flex;align-items:center;justify-content:center;padding:24px;
  background:rgba(28,20,12,.55);
  opacity:0;visibility:hidden;
  transition:opacity .22s ease,visibility 0s linear .22s;
}
.popup-form.is-open{opacity:1;visibility:visible;transition:opacity .22s ease}

.popup-form__card{
  position:relative;width:100%;max-width:440px;
  max-height:calc(100vh - 48px);overflow-y:auto;
  background:var(--paper,#fbf9f5);border-radius:18px;
  padding:30px 28px 26px;
  box-shadow:0 24px 60px -12px rgba(40,22,10,.45);
  transform:translateY(16px) scale(.985);opacity:.4;
  transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .22s ease;
}
.popup-form.is-open .popup-form__card{transform:none;opacity:1}

.popup-form__close{
  position:absolute;top:14px;right:14px;width:38px;height:38px;
  display:flex;align-items:center;justify-content:center;
  border:0;border-radius:50%;background:rgba(28,20,12,.06);
  font-size:26px;line-height:1;color:var(--ink-soft,#54565f);cursor:pointer;
  transition:background .15s,color .15s;-webkit-appearance:none;appearance:none;
}
.popup-form__close:hover{background:rgba(28,20,12,.12);color:var(--ink,#1c1d22)}

.popup-form__title{
  font-family:var(--font-display,'Onest',system-ui,sans-serif);
  font-weight:800;font-size:24px;line-height:1.15;letter-spacing:-.015em;
  color:var(--ink,#1c1d22);margin:0 40px 0 0;
}
.popup-form__sub{
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:14.5px;line-height:1.45;color:var(--ink-soft,#54565f);margin:8px 0 20px;
}

.pf-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.pf-field label{
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--ink-soft,#54565f);
}
.pf-field .pf-opt{font-weight:400;color:var(--ink-faint,#6c6e77)}
.pf-req{color:var(--accent,#e8590c)}
.pf-field input,.pf-field textarea{
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:16px;color:var(--ink,#1c1d22);background:#fff;
  border:1.5px solid var(--line,#e9e4da);border-radius:10px;
  padding:12px 14px;width:100%;box-sizing:border-box;
  transition:border-color .15s,box-shadow .15s;
}
.pf-field input::placeholder,.pf-field textarea::placeholder{color:#a9a6a0}
.pf-field input:focus,.pf-field textarea:focus{
  outline:0;border-color:var(--accent,#e8590c);
  box-shadow:0 0 0 3px var(--accent-wash,#fdf0e7);
}
.pf-field textarea{resize:vertical;min-height:74px}

/* honeypot — off-screen, never focusable/visible to humans */
.pf-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.pf-consent{
  display:flex;gap:10px;align-items:flex-start;cursor:pointer;
  margin:4px 0 18px;
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:12.5px;line-height:1.4;color:var(--ink-soft,#54565f);
}
.pf-consent input{flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:var(--accent,#e8590c);cursor:pointer}
.pf-consent a{color:var(--accent-text,#b8470a);text-decoration:underline}

.pf-submit{width:100%;justify-content:center}
.pf-submit:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
.pf-spinner{
  display:none;width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.45);border-top-color:#fff;
  animation:pf-spin .7s linear infinite;
}
.popup-form.is-loading .pf-spinner{display:inline-block}
.popup-form.is-loading .pf-submit__label{opacity:.85}
@keyframes pf-spin{to{transform:rotate(360deg)}}

.pf-status{
  margin:12px 0 0;font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:13.5px;line-height:1.45;
}
.pf-status.is-error{color:#b3261e}
.pf-status.is-success{color:var(--good,#1f7a4d)}

/* success panel — shown in place of the form after a saved lead */
.popup-form.is-ok .popup-form__form{display:none}
.popup-form.is-ok .pf-success{display:block}
.pf-success{text-align:center;padding:8px 4px 4px}
.pf-success__check{
  width:56px;height:56px;margin:0 auto 14px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--good-wash,#e8f4ed);color:var(--good,#1f7a4d);font-size:30px;font-weight:700;
}
.pf-success h3{
  font-family:var(--font-display,'Onest',system-ui,sans-serif);
  font-weight:800;font-size:22px;color:var(--ink,#1c1d22);margin:0;
}
.pf-success p{
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-size:15px;color:var(--ink-soft,#54565f);margin:8px 0 20px;
}
.pf-success__close{min-width:160px}

/* MOBILE <=640: bottom-sheet — slides up from the bottom edge, full-width,
   big finger targets, full-width submit. */
@media (max-width:640px){
  .popup-form{align-items:flex-end;padding:0}
  .popup-form__card{
    max-width:none;max-height:92vh;
    border-radius:20px 20px 0 0;
    padding:26px 20px calc(22px + env(safe-area-inset-bottom,0px));
    transform:translateY(100%);opacity:1;
  }
  .popup-form.is-open .popup-form__card{transform:none}
  .popup-form__title{font-size:22px}
  .pf-field input,.pf-field textarea{padding:13px 14px}
}

/* respect reduced-motion: cross-fade only, no slide/scale */
@media (prefers-reduced-motion:reduce){
  .popup-form,.popup-form__card{transition:opacity .15s ease}
  .popup-form__card,.popup-form.is-open .popup-form__card{transform:none}
  .pf-spinner{animation-duration:1.4s}
}

/* --- Mobile burger-menu "Задать вопрос" CTA. The header button.js-popup-form-open
   is display:none below the desktop breakpoint, so on mobile the burger menu is the
   ONLY entry to the lead popup — this item provides it. Accent colour marks it as the
   lead CTA; appended last so it wins the donor's equal-specificity display rules. */
.header-nav-item--question{color:var(--accent-text,#b8470a)}
.header-nav-item--question:hover{color:var(--accent-text,#b8470a);text-decoration:underline}
/* Desktop (burger hidden at min-width:1250 — see .menu__btn-menu{display:none}):
   the static orange .header__button-question is the entry point, so hide the
   in-menu duplicate to avoid two "Задать вопрос" triggers. */
@media (min-width:1250px){.header-nav-item--question{display:none}}

/* ============================================================================
   HEADER REDESIGN (owner-approved punch-list) — hamburger LEFT at ALL widths;
   right cluster = «Задать вопрос» CTA + logo (logo far right, CTA just left of it).
   Phone + WhatsApp left the bar and now live in the drawer (.header-nav-contacts,
   header.php). The horizontal desktop nav + short-nav now live behind the hamburger
   at EVERY width. Appended LAST → wins the donor min-width:768/1250 cascade.
   ========================================================================== */

/* 1. Hamburger visible at ALL widths (donor hid .menu__btn-menu ≥1250). */
.menu__btn-menu{display:block}

/* 2. The nav stays a drawer (absolute panel) at every width — revert the ≥1250
      horizontal flex the donor applied to .menu__items (position/display/padding/bg).
      JS slideDown/Up toggles inline display; this is the closed/base box. */
.header-nav-items{position:absolute;display:none;left:0;right:auto;
  padding:30px 50px 15px 65px;background:#fff;
  box-shadow:0 14px 34px -12px rgba(40,22,10,.22)}
.menu.expanded .header-nav-items{display:block}
@media (min-width:1250px){.header-nav-items{top:110px}}
@media (max-width:767px){.header-nav-items{box-shadow:0 10px 24px -10px rgba(40,22,10,.20)}}

/* 3. MOBILE bar layout (<1024): hamburger LEFT, logo RIGHT NEXT TO IT (logo-left,
      matches prod mobile — was order:30 = flung far-right, the bug), then CTA pinned
      far right via the logo's margin-right:auto. The >=1024 block re-orders into the
      full prod desktop row (nav + phone + WA inserted between logo and CTA). */
.header-nav{order:1;margin-right:0;margin-top:0}
.header-short_nav{display:none !important}          /* short links now live in the drawer */
.header-logo{order:2;margin-right:auto;margin-left:12px;max-width:200px}
.header__button-question,.header-question{order:3;display:inline-flex !important;
  align-items:center;margin-left:0;min-height:44px;white-space:nowrap}

/* 4. Mobile fit (≤767): CTA stays tappable (≥40px) + compact so the
      hamburger+CTA+logo row never overflows at 360 (no horizontal scroll). */
@media (max-width:767px){
  .header__button-question,.header-question{min-height:42px;padding:11px 16px;font-size:13px;line-height:1.1}
  .header-logo{max-width:148px;margin-left:10px}
}
@media (max-width:400px){
  .header__button-question,.header-question{padding:10px 12px;font-size:12px}
  .header-logo{max-width:116px;margin-left:8px}
}

/* 5. Drawer «Контакты» — phone as a real tel: link WITH visible text (fixes the old
      icon-only a.contact__phone a11y/agent-tree failure) + WhatsApp. Full-width row
      below the floated left/right columns, so clear:both. */
.header-nav-contacts{display:block;clear:both;margin-top:16px;padding-top:16px;border-top:1px solid #e9e4da}
.header-nav-contacts__title{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:#8a7a6a;margin-bottom:10px}
.header-nav-contacts__phone{display:block;font-size:21px;font-weight:700;color:#2b2929;text-decoration:none;margin-bottom:10px}
.header-nav-contacts__phone:hover{color:var(--accent-text,#b8470a)}
.header-nav-contacts__wa{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#2b2929;text-decoration:none}
.header-nav-contacts__wa img{width:24px;height:24px;display:block}
.header-nav-contacts__wa:hover{color:var(--accent-text,#b8470a)}

/* ============================================================================
   HEADER REDESIGN v3 — DESKTOP BAR per owner mockup (≥1250). Layout L→R:
     [🟧burger] [logo] ······ [КАЛЬКУЛЯТОР ОТЗЫВЫ КОНТАКТЫ] [📞 phone] [WA] [Задать вопрос]
   Owner change: the orange burger is now VISIBLE on desktop (donor/v2 hid it ≥1250)
   and opens the SAME full drawer (.header-nav-items: Услуги list + Документы/Блог/
   Калькулятор/Отзывы/Контакты + contacts) as mobile — so there is NO horizontal
   inline nav here (v2 removed). Logo moves LEFT, next to the burger. Three quick
   links + phone(tel) + WhatsApp are re-added to the bar; CTA pinned far right.
   MOBILE (<1250) is UNTOUCHED: the new .header-bar-contacts cluster is display:none
   below this breakpoint, and every desktop override lives inside the media query.
   Appended LAST → wins the v1 redesign block + donor cascade.
   ========================================================================== */

/* phone + WhatsApp bar cluster — HIDDEN by default so the MOBILE bar (burger + CTA
   + logo) renders byte-identical; only the ≥1250 block below reveals it. Every
   emitted class carries a rule (scar: class w/o CSS blows out to intrinsic size). */
.header-bar-contacts{display:none}
.header-bar-phone{display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.header-bar-phone__icon{width:18px;height:18px;color:#2e7d14;fill:currentColor;flex:none}
.header-bar-phone__num{font-size:17px;font-weight:700;color:#2b2929;white-space:nowrap}
.header-bar-phone:hover .header-bar-phone__num{color:var(--accent-text,#b8470a)}
.header-bar-wa{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none}
.header-bar-wa img{width:30px;height:30px;display:block}

@media (min-width:1024px){
  /* Donor only made .header__container 110px tall at >=1250; the prod header layout
     now starts at 1024, so bump the bar (+ prod's 40px side padding) from 1024 up so
     1024-1249 renders IDENTICALLY to >=1250 (vertical centering + clearance match). */
  .header__container{height:110px;padding-left:40px;padding-right:40px}

  /* === DESKTOP HEADER pixel-match to PROD blog (design/header-match-spec.md) ===
     Prod header renders SourceSansPro. We now self-host prod's OWN SourceSansPro
     woff2 (fonts.css, subset to Cyrillic+Latin, weights 400/600/700) — identical
     glyph advances → identical row width → the logo's margin-right:auto re-opens
     prod's ~81px logo→nav gap (Inter was ~46–81px wider per row, collapsing it to
     0 so «Росперевозки» touched «КАЛЬКУЛЯТОР»). Stack mirrors prod exactly
     (SourceSansPro,Arial,sans-serif): Arial is the swap fallback — metrics-close
     to SourceSansPro (Inter is the wide one), so font-display:swap can't reflow
     the row. Overrides the line-3516 Onest !important rule, DESKTOP ONLY → mobile
     (<1250) keeps Onest, byte-identical, and never fetches these faces. */
  .page-header,.page-header *{font-family:'SourceSansPro',Arial,sans-serif !important}

  /* burger STAYS visible + orange; corner radius 8px→4px to match prod */
  .header-nav-btn{display:block;border-radius:4px}

  /* burger pinned left; logo right next to it at prod x≈217 (the ~38px on
     .header-nav supplies prod's burger→logo gap; logo ml stays 0 per spec).
     flex:0 0 auto pins the logo at its full 200px (prod size) — never shrink.
     margin-right:auto is the single flexible gap before the right cluster: it
     opens toward prod's 81px when there's room and collapses under pressure so
     the wider Inter row still fits the 1250px container (no CTA clipping). */
  .header-nav{order:1;margin-right:38px;margin-top:0}
  .header-logo{order:2;flex:0 0 auto;margin-left:0;margin-right:auto;max-width:200px}

  /* drawer stays an ABSOLUTE hidden panel (same as mobile) — do NOT make it a row.
     v1 + .menu.expanded (jQuery slideToggle) open it below the 110px header. */
  .header-nav-items{position:absolute;display:none;left:0;right:auto;top:110px;width:500px;
    padding:30px 50px 15px 65px;background:#fff;box-shadow:0 14px 34px -12px rgba(40,22,10,.22)}
  .menu.expanded .header-nav-items{display:block}

  /* 3 visible quick links — prod: DARK #2b2929 (rgb 43,41,41), 16px, no letter-
     spacing, inter-link gap 24px→48px. weight 700 + uppercase already match. */
  .header-short_nav{display:flex !important;order:3;width:auto;align-items:center;gap:48px;margin:0 24px 0 0}
  .header-short_nav .header-nav-item{margin:0;font-size:16px;font-weight:700;letter-spacing:normal;text-transform:uppercase;color:#2b2929}
  .header-short_nav .header-nav-item:hover{color:var(--accent-text,#b8470a);text-decoration:none}

  /* phone (tel:) — prod: GREEN #2f6b34, 18px, weight 600, icon fill #2f6b34.
     WhatsApp icon 30×30→21×21. */
  .header-bar-contacts{display:flex;order:4;align-items:center;gap:16px;margin-right:24px}
  .header-bar-phone__num{font-size:18px;font-weight:600;color:#2f6b34}
  .header-bar-phone__icon{color:#2f6b34}
  .header-bar-wa img{width:21px;height:21px}

  /* CTA pinned far right — prod adds margin-left:40px */
  .header__button-question,.header-question{order:5;display:inline-flex !important;
    align-items:center;margin-left:40px;min-height:44px;white-space:nowrap}
}

/* 1024-1249 COMPRESSION — the prod cluster (logo + 3 nav links + phone + WA + CTA)
   is ~1088px wide and overflows a <1250 container, so the «Задать вопрос» CTA got
   clipped past the right edge (overflow-x is hidden → cut off, not scrollable).
   Tighten the flexible gaps + side padding so the FULL row fits without clipping;
   the logo→nav auto-gap simply shrinks under pressure. Restores to the wide >=1250
   spacing above this range. Source-after the >=1024 block → wins by order. */
@media (min-width:1024px) and (max-width:1249px){
  .header__container{padding-left:24px;padding-right:24px}
  .header-nav{margin-right:20px}
  .header-short_nav{gap:16px;margin-right:14px}
  .header-bar-contacts{gap:12px;margin-right:14px}
  .header__button-question,.header-question{margin-left:16px}
}

/* ============================================================================
   "БЕЛАЯ КАРТОЧКА" CTA BANNER — design/imported/banner-rasschitat.dc.html var01.
   The warm cream (#FFFDFB→#FFF6EF) was dropped — it clashed with the cold grid.
   This is a WHITE card that "dissolves into the grid": same #fff surface +
   #ECEDEF hairline + cold neutral drop-shadow as the surrounding service cards,
   so it reads as one of them instead of a warm outlier.
   Shared by the listing grid (template-parts/blog-cta-band.php, woven into .bgrid)
   AND the article footer (single.php). Lives in chrome.css so it loads on BOTH
   listing (blog-listing.css) and article (blog-design.css) pages. Reuses the
   gray-knocked-out fleet (assets/band-truck.webp), which sits on CLEAN WHITE on
   the right (no tint touches it). The button .js-popup-form-open opens the
   «Задать вопрос» lead popup (chrome.js). Tokens fall back to brand hex because
   chrome.css loads before the blog-design/-listing :root (same as popup).
   HONESTY: white text on the deepened button gradient #F0883F→#E06C28 measures
   ~2.5:1 (top) to ~3.3:1 (bottom) — slightly improved over the old pale
   #F5995E→#EA7A38 (~2.2/2.9) but still below WCAG AA 4.5:1. Owner-approved brand
   orange (deepened per owner: "менее белёсая, чуть темнее, свет сверху" — added an
   inset top gloss rgba(255,255,255,.38) for the white-light-from-top sheen).
   Subtext #5A5F66 on #fff = 6.4:1
   (AA pass); the design's #8A8F98 fails AA on white so we keep the darkened tone.
   ========================================================================== */
.rp-sand{position:relative;overflow:hidden;box-sizing:border-box;display:flex;align-items:center;
  min-height:220px;border-radius:24px;margin:38px 0 28px;
  background:#fff;border:1px solid var(--line,#e9e4da);
  box-shadow:0 10px 30px -20px rgba(35,28,23,.22)}
/* fleet photo: vertically CENTERED on the right (top:50% + translateY(-50%)), so the
   truck reads level/flush with the heading instead of sagging bottom-anchored (owner:
   "вровень с заголовком" — was ~27-58px low). Width SCALES with the band so it never
   swamps a narrow article column; overflow:hidden on .rp-sand clips any bleed. Trimmed
   58%→54% (cap 672→640) now the fade is gone — the truck's left edge keeps a clean
   ~45px gap from the copy column on the 768px article band (and ~64px on the 1132px
   listing band), so text-left reads clear and truck-right reads clean with no mask.
   Mobile override resets transform:none + top:auto (truck stacks on top, untouched).
   Explicit box drives size — scar #3: an emitted img class owns its dimensions. */
.rp-sand__photo{position:absolute;right:-6px;top:50%;transform:translateY(-50%);z-index:1;margin:0;line-height:0;
  width:clamp(340px,54%,640px);pointer-events:none}
/* no warm drop-shadow — truck sits on clean white per the white-card variant */
.rp-sand__photo img{display:block;width:100%;height:auto}
/* fade REMOVED (owner): flat white panel, no gradient. The element is kept in the
   markup but paints nothing — the truck sits clear to the right of the copy column
   (photo width/anchor below), so no white-to-transparent mask is needed. */
.rp-sand__fade{display:none}
.rp-sand__copy{position:relative;z-index:3;box-sizing:border-box;
  display:flex;flex-direction:column;justify-content:center;gap:24px;
  width:min(560px,60%);padding:28px 0 28px 54px}
.rp-sand__title{font-family:var(--font-display,'Onest',system-ui,sans-serif);
  font-weight:800;font-size:clamp(24px,3vw,31px);line-height:1.1;
  letter-spacing:-.018em;color:#23262B}
.rp-sand__sub{font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-weight:500;font-size:16px;line-height:1.45;color:#5A5F66;margin:11px 0 0}
.rp-sand__btn{align-self:flex-start;display:inline-flex;align-items:center;
  justify-content:center;padding:14px 30px;border:0;border-radius:13px;cursor:pointer;
  -webkit-appearance:none;appearance:none;text-decoration:none;
  background:linear-gradient(180deg,#F0883F 0%,#E06C28 100%);color:#fff;
  font-family:var(--font-body,'Inter',system-ui,sans-serif);
  font-weight:600;font-size:16px;line-height:1;letter-spacing:.01em;
  box-shadow:0 10px 22px -8px rgba(226,104,52,.6),inset 0 1px 0 rgba(255,255,255,.38);transition:transform .15s,box-shadow .15s}
.rp-sand__btn:hover{color:#fff;transform:translateY(-1px);
  background:linear-gradient(180deg,#EA7F37 0%,#D8631F 100%);
  box-shadow:0 15px 28px -8px rgba(226,104,52,.72),inset 0 1px 0 rgba(255,255,255,.38)}
/* listing: span the full grid row (matches the old .bgrid .band span) */
.bgrid .rp-sand{grid-column:1 / -1;margin:0}

/* MOBILE (<=900) — photo on TOP full-width, copy stacked + CENTERED, full-width
   button. Switch above 767 because the desktop overlap needs a wide band to read. */
@media (max-width:900px){
  .rp-sand{flex-direction:column;align-items:stretch;min-height:0;border-radius:22px;
    background:#fff;border:1px solid var(--line,#e9e4da);box-shadow:0 8px 24px -18px rgba(35,28,23,.20)}
  .rp-sand__photo{position:static;order:-1;width:auto;padding:20px 22px 2px;transform:none;top:auto}
  .rp-sand__fade{display:none}
  .rp-sand__copy{width:auto;gap:16px;padding:8px 24px 24px;
    text-align:center;align-items:center}
  .rp-sand__title{font-size:20px;line-height:1.22;letter-spacing:-.015em}
  .rp-sand__sub{font-size:14px;margin:8px 0 0}
  .rp-sand__btn{align-self:stretch;width:100%;padding:15px 0;border-radius:14px}
}
