body {
    background-color: #d6ffe3;
    background-image: url("../images/background.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover;
    max-width: 768px;
    margin: auto;
}

p {
    text-align: center;
}

h1, h2, h3, h4, h5 {
    text-align: center;
    color: white;
    text-shadow: 0.04em 0.04em 0.15em #122400;
    border-top: 1.5px solid #fff7df;
    background: #1224000d;
    clear: both;
}

::selection {
  background-color: #122400de;
  color: #ccdbc9;
}

select,
input,
textarea {
    background: #fafff88c;
    border: 0;
    border-radius: 0.2em;
}

input[type="text"],
input[type="email"],
input[type="file"],
input[type="date"] {
    width: 100%;
}

select,
textarea {
    width: 100%;
}

.edition_table_right textarea {
    resize: none;
    height: 250px;
    scrollbar-width: thin;
}

textarea {
    resize: vertical;
    scrollbar-width: thin;
}

li a:hover {
    font-weight: bold;
    text-shadow: 0 0 0.3em white;
}

button {
    display: block;
    padding: 0.5em 1em;
    margin: 20px auto 5px;
    background-color: #12440e21;
    border: 0;
    border-radius: 10px;
    color: #122400;
    font-weight: bold;
    text-shadow: 0 0 0.5em white;
}

button:hover {
    background-color: #142200;
    color: white;
}

.errorlist {
    color: red;
    list-style-type: none;
    margin: 0;
    padding: 1em 0.5em;
    text-align: center;
}

.main {
    display: flex;
}

.info {
    background-color: #e8eee3d9;
    flex: 1 1;
}

.basic_inf {
    padding: 0 20px;
}

.basic_inf a {
    text-decoration: none;
    color: #122400;
}

.name_user {
    text-align: center;
    font-size: 3em;
    margin-top: 0.3em;
    font-weight: bold;
    padding: 0.7em 0 1em;
    border-top: solid 3px #023000;
    border-bottom: solid 3px #023000;
    color: white;
    text-shadow: 0.05em 0.05em 0.2em #023000;
    background: #12440e21;
    border-radius: 15px;
}

.upper_menu {
    background: #12440e21;
    text-align: center;
    padding: 5px;
    margin: 0 15px;
    border-radius: 0 0 15px 15px;
}

.upper_menu a {
    color: white;
    padding: 0 0.1em;
}

.upper_menu a:hover {
    font-weight: normal;
    text-shadow: 0.05em 0.05em 0.2em #024400;
    background: #12440e21;
    border-radius: 4px;
}

.under_name_user {
    color: #dfecdc;
    font-size: 0.7em;
}

.under_menu {
    font-size: 0.3em;
    font-weight: normal;
    padding: 0 2em;
}

.under_menu a:hover {
    text-shadow: 0 0 0.5em white;
}

.about_me p {
    text-align: justify;
}

.additional_menu {
    display: flex;
    justify-content: space-between;
    background-color: #12440e21;
    font-weight: bold;
    text-shadow: 0 0 0.5em white;
}

.additional_menu a {
    text-decoration: none;
    margin: 0.2em 0.5em;
    padding: 0.2em 0.5em;
    color: #122400;
}

.additional_menu a:hover {
    background-color: #12440e21;
    border-radius: 0.3em;
    color: white;
}

.subtitle {
    display: block;
    color: #dfecdc;
    font-size: 0.6em;
    font-style: oblique;
    position: relative;
    bottom: -0.5em;
}

.subtitle a {
    color: #5c624a;
    text-shadow: 0.04em 0.04em 0.15em white;
}

.subtitle a:hover {
    color: white;
    text-shadow: 0.05em 0.05em 0.5em #142200;
    background-color: #12440e21;
    padding: 0.05em 0.3em;
    border-radius: 0.4em;
}

.main_text p {
    text-align: justify;
    margin-bottom: 0.5em;
    text-indent: 1.5em;
}

.specifics h5 {
    border: none;
    text-align: right;
}

.specifics > a > h5:hover {
    background-color: #024400;
}

.specifics h4 {
    border: none;
    text-align: left;
    margin-bottom: 0;
    font-size: 0.8em;
}

.a_main_text:hover {
    color: #024400;
    text-shadow: 0 0 0.1em #024400;
}

.list_specifications:hover {
    color: white;
    text-shadow: 0.05em 0.05em 0.2em #024400;
    background-color: #12440e21;
    border-radius: 4px;
}

.specifics > p {
    padding-left: 6em;
    text-align: right;
    margin: 0;
    color: #122400de;
    font-size: 0.9em;
}

.specifics > img {
    width: 100%;
    margin-top: 1em;
}

h2 img {
    float: right;
    height: 15px;
    margin-left: 0.5em;
}

.certificate > img {
    float: left;
    margin-right: 1em;
    margin-bottom: 1em;
    width: 125px;
}

.footer {
    position: sticky;
    bottom: 0;
    color: white;
    text-align: center;
    background: #122400de;
    padding: 7px 0 10px;
    margin-top: 50px;
}

.edition_table {
    display: flex;
    padding: 0.3em 0;
    border-top: 0.1em solid #eeffea;
}

.edition_table_left {
    text-align: right;
    font-size: 0.8em;
    flex: 11em 1;
    padding-right: 0.5em;
}

.edition_table_right {
    flex: 0 100%;
}

.rollUp {
    max-height: 100px;
    overflow: auto;
    font-size: 0.8em;
    scrollbar-width: thin;
}

.feedback-section {
    margin-bottom: 50px;
}

/* форму откликов по умолчанию скрыта */
#feedback-form {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out, padding 0.4s ease-out;
}

/* когда раскрыта форма откликов */
#feedback-form.expanded {
    max-height: 500px; /* максимальная высота раскрытой формы */
}

/* внутри формы откликов у полей ширина меньше, а высота не больше раскрытой формы */
.feedback-section input,
.feedback-section textarea {
    width: 90%;
    max-height: 420px;
}

.feedback h4,
.feedback h5 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    border: none;
    padding: 0 1em;
}

.feedback p {
    background: #1224000d;
    margin: 0;
    padding: 0.5em 3em;
    text-align: justify;
}

.my_response {
    text-shadow: 0.05em 0.05em 0.2em #024400d6;
}

.feedback a {
    color: white;
}

.feedback a:hover {
    color: #024400d6;
    text-shadow: none;
}

.g-recaptcha {
  transform: scale(0.95);
  transform-origin: 0 0;
  margin: 5px 0 10px 0;
}

.grecaptcha-badge {
    margin-bottom: 60px;
}
