/*
Theme Name: Coconuts
Author: Pandamatic
Version: 1.0
*/

.navigation {
    overflow: hidden;
    z-index: 100;
}

.headerbar {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    min-height: 50px;
    color: #404040;
    background: #fff no-repeat 50%;
    background-size: auto;
    box-shadow: 0 2px 8px 0 #ccc;
    -webkit-box-shadow: 0 2px 8px 0 #ccc;
    -moz-box-shadow: 0 2px 8px 0 #ccc;
    z-index: 999;
    overflow: hidden;
}

.headerbar .main-menu {
    margin: 0 auto;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    letter-spacing: .4px;
    white-space: nowrap;
    min-height: 50px;
    z-index: 1000;
    position: relative !important;
}

.site-nav-logo {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: block;
    margin-right: 24px;
    padding: 0px;
    color: #fff;
    font-size: 1.7rem;
    line-height: 1em;
    font-weight: 700;
    letter-spacing: -.5px;
    max-width: 164px;
}

.site-nav-logo img {
    width: 129px;
    height: 36px;
    display: block;
    aspect-ratio: 129 / 36;
}

.toggle-nav {
    display: none;
}

.search_icon {
    height: 24px;
    color: #364743;
}

.search_icon svg {
    height: 24px;
    width: 44px;
    /* Размер области нажатия (рекомендация Google) */
    fill: #333;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.search_icon:hover svg,
.search_icon:active svg,
.search_icon:focus svg,
.search_icon svg:hover {
    fill: #f05230;
}

.page #content,
.single-post #content,
.error404 #content,
article {
    background-color: #fff
}

main,
.pagewidth {
    margin: 0 auto
}

main,
img {
    max-width: 100%
}

ul.accordion>li a:focus,
ul.accordion>li a:hover a {
    outline: 0
}

img {
    height: auto;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

article,
aside,
details,
figcaption,
figure,
footer,
hgroup,
menu,
nav,
section {
    display: block
}

html {
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

body {
    word-wrap: break-word;
    color: #484848;
    min-width: 320px;
    font-family: Arial;
    font-size: 16px;
    line-height: 1.6em;
    padding-top: 54px;
    background-color: rgb(204 214 212);
    overflow-x: hidden;
}

a {
    color: #007cbf;
    text-decoration: underline;
}

a:hover,
a:active {
    color: #f05230;
    text-decoration: underline;
}

p {
    margin: 0 0 1.2em;
    padding: 0
}

.home #content {
    padding-top: 0px !important;
}

.home h1 {
    font-size: 1.9em;
    margin-top: 16px;
    display: inline-block;
}

h1,
h2,
h2 a,
h3,
h4,
h5,
h6 {
    color: #111;
    line-height: 32px;
    margin: 12px 0 14px;
    font-family: "PT sans caption", Roboto, "Segoe UI", Calibri, sans-serif;
    font-weight: bold;
    text-align: center;
}

h2 a {
    color: #262626
}

h2 a,
h2 a:hover,
h2 a:active {
    text-decoration: none
}

h1 {
    font-size: 1.9em;
    text-align: center;
}

h2 {
    font-size: 1.6em
}

h3 {
    font-size: 1.4em;
    color: #424141
}

h4 {
    font-size: 1.4em
}

h5 {
    font-size: 1.2em
}

h6 {
    font-size: 1em
}

main,
#content,
#footer,
#subscribe,
.author-box,
.pagenav,
.pagewidth,
.post,
.widget {
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.pagewidth {
    width: 780px
}

.category .pagewidth {
    width: 800px;
}

#footer,
.clear,
.pagenav,
hr {
    clear: both
}


/*** NAVIGATION ***/
.mobile-logo-text {
    text-decoration: none;
    color: #3e3e3e;
    padding: 0px;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: normal;
    box-sizing: border-box;
    display: flex !important;
    align-items: center;
    height: 50px;
    /* Должно совпадать с высотой .headerbar */
    min-width: 32px;
    /* Резервируем ширину под логотип */
    margin: 0 auto;
    /* Если логотип по центру */

}

.mobile-logo-text .logo {
    width: auto;
    height: 36px;
    vertical-align: middle;
}

.name-site {
    font-size: 17px;
    font-weight: 700;
    text-transform: uppercase;
    color: rgba(51, 51, 51, 1);
    vertical-align: middle;
    margin-left: 10px;
}

/*** 2. БАЗОВЫЕ СТИЛИ СПИСКА (Аккордеон) ***/
ul.accordion {
    padding: 0;
    list-style: none;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    font-size: 14px;
    margin: 0;
}

ul.accordion>li>a {
    color: #3e3e3e;
    text-decoration: none;
    padding: 5px 5px;
    display: block;
    margin: 0px 5px;
}

ul.accordion li {
    margin: 0px 4px 0px 10px;
}

/* Цвета для активных пунктов и ховера */
ul.accordion>li>a:hover span {
    border-bottom: 2px solid #f05230 !important;
}

ul.accordion>li.current-menu-item a span,
ul.accordion>li.current-post-parent a span {
    color: #f05230;
}

/*** МОБИЛЬНАЯ НАВИГАЦИЯ ***/

.pink-dotted-border {
    border-top: 3px dotted #ffe3e3;
    padding-top: 8px !important;
}

/* Общий контейнер-шторка */
.mobile .main-menu-wrapper {
    position: fixed;
    top: 50px;
    left: 0px;
    width: 75%;
    height: 100vh !important;
    background: #212e2b !important;
    padding: 15px 20px !important;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease, visibility 0.4s;
    z-index: 1000 !important;
}

.mobile ul.accordion {
    display: flex;
    flex-direction: column;
    /* Строго в ряд */
    width: max-content;
    justify-content: center;
    flex-wrap: nowrap;
    /* Не даем пунктам перепрыгивать на вторую строку */
    visibility: visible;
    height: auto;
    left: 0;
    content-visibility: visible
}

.mobile ul.accordion li {
    margin: 5px 0px;
}

/* Стили элементов внутри выезжающего меню */
.active .accordion a {
    color: #fff;
}

.headerbar.active .main-menu-wrapper .current-menu-item a span {
    color: #f05230;
}

.headerbar.active .main-menu-wrapper .current-menu-item a {
    border-bottom: 2px solid #f05230 !important;
}

/* Состояние при открытом меню */
.headerbar.active .main-menu-wrapper {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateX(0) !important;
    z-index: 1000 !important;
    -webkit-transform: translateZ(10px);
    /* Магия для Safari */
    transform: translateZ(10px);
}

/* Затемнение фона */
.dark-background {
    position: fixed !important;
    top: 50px !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    background: #333333b3;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s;
}

.headerbar.active .dark-background {
    opacity: 1;
    visibility: visible;
    display: block;
    z-index: 990 !important;
}

/*** 4. КНОПКА ГАМБУРГЕР ***/
.mobile .toggle-nav {
    display: inline-block;
    color: #333;
    font-size: 28px;
    margin-left: 10px;
    text-decoration: none;
    line-height: 50px;
    z-index: 10005 !important;
}

.toggle-nav:hover,
.toggle-nav:focus,
.toggle-nav:active,
.name-site:hover,
.name-site:focus,
.name-site:active,
.search_icon:hover,
.search_icon:focus,
.search_icon:active {
    text-decoration: none;
    color: #f05230;
}

.toggle-nav.active {
    color: #f05230;
}

/**** FOOTER ****/

.footer {
    color: #b0b0b0;
    font-size: 14px;
    background-color: #172a25;
    border-top: 4px solid #2eb08d;
    margin-top: 12px
}

.footer p {
    color: #b0b0b0;
    font-size: 0.96em;
}

.footer-holder {
    padding: 30px 0;
    text-align: center;
}

.footer a {
    line-height: 24px;
    border-bottom: 1px dashed;
    text-decoration: none;
    color: #b0b0b0;
}

.footer a:hover,
.footer a:active {
    border-bottom: 1px dashed;
    color: #777
}

.footer .copyright img {
    max-width: 30px;
    height: auto;
    overflow: hidden;
    float: left;
    margin: 0 20px 0 0
}

.footer-nav {
    margin: 7px 0 10px;
    padding: 0;
    text-align: left
}

.footer-nav li {
    padding: 0;
    margin: 0 8px 5px 0;
    list-style: none;
    display: inline-block;
    zoom: 1
}

.footer-menu .lang-item a {
    border-bottom: none;
}

.go-top-wrapper a {
    font-style: normal !important;
    line-height: 12px !important;
    display: inline-block;
    text-decoration: none;
    font-size: 0.92em;
    border-bottom: none !important;
    text-align: center
}

.go-to-top span {
    font-style: normal !important;
    text-transform: uppercase;
}

.footer-menu ul {
    list-style-type: none;
    padding: 0;
    text-align: center;
    margin: 0 20px 25px;
    line-height: 27px;
    font-size: 13px
}

.footer-menu ul li:first-child {
    margin-left: 0
}

.footer-menu ul li:last-child {
    margin-right: 0
}

.footer-menu ul li {
    display: inline;
    margin: 0px
}

.footer-menu ul li::after {
    content: " ·";
    color: #b0b0b0;
}

.footer-menu ul li:last-child::after {
    content: ""
}

/**** РАЗНОЕ ****/

#content {
    margin: 10px 0;
    padding-top: 8px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .14)
}

.full_width #layout {
    width: 100%
}

.full_width #content {
    width: 100%;
    float: none
}

.post-full-video {
    width: 100%;
    height: 450px;
}

.number {
    color: #ffb364;
    font-size: 1.4em
}

#subscribe,
.aligncenter,
.wp-caption {
    text-align: center
}

.post p,
.page p,
ul.post-by,
ol,
ul,
h1,
h2,
h2 a,
h3,
h4,
h5,
h6 {
    padding: 0 4%;
}

.alignright p {
    padding-left: 30px
}

mark {
    background-color: #ffc80040;
    padding: 2px 0px;
    color: #222
}

code {

    border: 1px dashed #ababab;
    padding: 4px;
    background: #f2fdff;
    border-radius: 2px;
}

small {
    font-size: 87%
}

sub,
sup {
    font-size: .8em;
    height: 0;
    line-height: 1;
    position: relative;
    vertical-align: baseline
}

sup {
    bottom: 6px
}

sub {
    top: 4px
}

select {
    padding: 5px;
    font-size: 1.05em;
    width: 250px
}

article {
    padding-top: 8px;
    margin-bottom: 24px
}



.page #content .page,
.single-post #content .post {
    padding: 0
}

.category #content,
.archive #content,
.blog #content {
    box-shadow: none
}

li,
ol,
ul {
    padding: 0
}

ol,
ul {
    margin: 1em 4% 0.8em 4.4em
}

#article-body {
    padding-bottom: 12px;
}

#article-body ol li {
    padding-bottom: 12px;
    padding-left: 0.2em
}

#article-body ul {
    list-style-type: square
}

#article-body ul li {
    padding-left: 0.2em;
    padding-bottom: 12px
}

ul#kcmenu {
    text-align: left;
}

article a.readmore {
    display: inline-block;
    margin-top: 8px;
    text-align: center;
    padding: 12px;
    background-color: #07ce96;
    color: #083c21;
    margin: 8px auto;
    width: 180px;
    text-decoration: none;
    border-radius: 40px;
}

article a.readmore:hover,
article a.readmore:active {
    text-decoration: none;
    background-color: #09b383;
}

hr {
    border: none;
    height: 0;
    overflow: hidden;
    border-bottom: 2px dotted #aaa;
    margin: 0 0 10px
}

.left {
    float: left
}

.right {
    float: right
}

.textleft {
    text-align: left
}

.textright {
    text-align: right
}

.textcenter {
    text-align: center
}

.displaynone {
    display: none
}

.displayblock {
    display: block
}

main:after,
#content:after,
#footer:after,
.clearfix:after,
.gallery:after,
.menu:after,
.pagenav:after,
.widget li:after,
footer:after {
    overflow: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0
}

main,
#content,
#footer,
.clearfix,
.gallery,
.menu,
.pagenav,
.widget li,
footer {
    display: block;
    zoom: 1
}

/**** POST AND PAGE ****/
.page-title {
    margin: 0 0 15px;
    padding: 0;
    font-size: 300%;
    line-height: 110%
}

.post {
    box-sizing: border-box;
    -moz-box-sizing: border-box
}

.post-content {
    min-width: 120px;
    overflow: visible;
    max-width: 390px;
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
    text-align: center;

}

.post-content .post-by,
.post-content h2 a {
    padding: 0px
}

.post-content p {
    margin: 0px
}

.post-title {
    font-size: 20px;
    margin: 0 0 5px;
    padding: 10px 12px 0;
    line-height: 26px
}

.category-wrapper {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    column-gap: 20px;
}

.category-wrapper .post {
    display: inline-block;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid-column;
    padding: 8px 8px 0;
}

.category-description {
    padding-bottom: 4%;
    text-align: left;
}

.category-description .post-title {
    margin: 0px;
    padding: 4% 4% 2%;
    text-align: center;
    font-size: 2em;
    color: #222;
    line-height: 1.1em;
}

ul.post-by {
    list-style: none;
    margin: 0;
    display: inline-block
}

ul.post-by li {
    float: left;
    color: #717171;
    font-size: 13px;
    padding: 0 10px
}

ul.post-by li.no-padding-left {
    padding-left: 0
}

ul.post-by li.last {
    background: 0 0
}

ul.post-by .page-views-count {
    width: 100px;
}

.post-image .attachment-featured {
    margin-bottom: 0
}

a.featured {
    display: flex
}

.featured picture {
    display: inherit;
}

a.featured:hover img {
    text-decoration: none;
    border-bottom: 0px;
}

/**** POST IMAGES ****/
.post-image {
    max-width: 100%;
    margin: 0px
}

.post-image.left {
    float: left;
    margin-right: 15px
}

.post-image.right {
    float: right;
    margin-left: 15px
}

.wp-caption,
img.aligncenter,
img.alignleft,
img.alignnone,
img.alignright {
    margin-bottom: 15px
}

.alignleft {
    float: left;
    margin-right: 30px
}

.alignright {
    float: right;
    margin-left: 30px;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    max-width: 100%
}

.wp-caption-text {
    font-size: 92%;
    line-height: 120%;
    margin: 6px 0;
    color: #4a6d7d;
    text-align: left;
}

.alignleft .wp-caption-text,
.alignright .wp-caption-text {
    max-width: 390px;
}

/**** BLOCKQUOT ****/
blockquote {
    background: #f7f7f7;
    font: 0.95em "Courier New", courier;
    padding: 4% 8%;
    line-height: 1.6em;
    margin: 0.2em 0 0.6em 0
}

blockquote:after,
blockquote:before {
    color: #2eb08d;
    font-size: 3em;
    line-height: .1em
}

blockquote:before {
    content: "\201C";
    margin-right: .2em;
    vertical-align: -.4em;
    font-size: 4em;
    font-family: Arial, Helvetica, serif;
}

blockquote>p:first-child {
    display: inline
}

blockquote p {
    color: #505050;
    padding: 0 !important
}

/**** PAGINATION ****/

.pagenav {
    text-align: right
}

.pagenav .current,
.pagenav a {
    display: inline-block;
    font-family: arial;
    font-size: 15px;
    font-weight: 700;
    padding: 6px 12px;
    cursor: pointer;
    text-decoration: none
}

.pagenav a {
    background-color: #f9f9f9;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    color: #3e514c
}

.pagenav a:hover {
    background-color: #07ce96;
    color: #333
}

.pagenav .current {
    color: #3e514c;
    cursor: default;
}

.navigation {
    font-size: 110%;
}

.post-navigation .nav-previous {
    float: left;
    width: 50%
}

.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%
}

.pagenav .current:active,
.pagenav a:active {
    top: 1px;
    position: relative
}

/**** COLOR BOXES ****/

div.colorbox {
    padding: 1em 1.5em;
    margin: 2em auto;
    color: #444;
    background: #fff9e9;
    overflow: hidden;
}

div.colorbox.orange {
    background-color: #fff9e9;
    background: -webkit-gradient(linear, left top, right top, from(#fff3d4), to(#fff9e9));
    background: -webkit-linear-gradient(left, #fff3d4 0, #fff9e9 100%);
    background: -o-linear-gradient(left, #fff3d4 0, #fff9e9 100%);
    background: linear-gradient(to right, #fff3d4 0, #fff9e9 100%);
}

div.colorbox.blue {
    background-color: #c9f5ff;
    margin: 1.5em 4%;
    color: #375f68;
    font-size: 0.94em;
}

div.colorbox.green {
    background-color: #ddffda;
    margin: 1.5em 4%;
    font-size: 0.94em;
}

div.colorbox.green ul,
div.colorbox.blue ul {
    margin-bottom: 0px;
}

div.colorbox.green a {
    color: #2a78a2;
}

div.colorbox.blue a {
    color: #266f97;
}

div.topic-list {
    padding: 2% 4%;
    display: inline-block;
    background-color: #ffe8bc;
}

.topic-list h2,
.topic-list h3 {
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: .95em;
    text-align: left;
    margin-left: 0px;
    padding-left: 0px;
    color: #484848;
}

.topic-list ol {
    counter-reset: my-counter;
    display: flex;
    flex-wrap: wrap;
    margin: 12px 0 0 0;
    padding: 0;
}

.topic-list ol li {
    counter-increment: my-counter;
    list-style: none;
    display: flex;
    font-size: 0.9em;
    margin-bottom: 0.8rem;
    line-height: 1.3em;
    width: 100%;
}

.topic-list ol li:before {
    content: counter(my-counter) ".";
    font-size: 2.4rem;
    margin-right: 0.5rem;
    line-height: 1;
}

.default {
    width: auto !important
}

.kama_breadcrumbs {
    margin: 3% 4% 1% 4%;
    color: #55756d;
    font-size: 0.92em;
    text-decoration: none;
    letter-spacing: 0.05em;
}

.kama_breadcrumbs a {
    color: #55756d;
    font-size: 0.96em;
    text-decoration: none;
    letter-spacing: 0.05em;
}

.kama_breadcrumbs a:hover {
    color: black;
    text-decoration: underline;
}

.kama_breadcrumbs span {
    margin: 0px 4px;
    margin-left: 4px;
}

.kama_breadcrumbs span.firstcrumb,
.kama_breadcrumbs .firstcrumb span {
    margin-left: 0px;
}

.kc-title,
.kc__title {
    font-weight: bold;
    background-color: #f3f3f3;
    display: inline-block !important;
    margin-bottom: 0px;
    border-radius: 0px 2px 2px 0px;
    padding: 2px 4%;
}

.blue_button {
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Open Sans, Helvetica Neue, sans-serif;
    background: #3eb0ef;
    padding: 10px 12px;
    color: #fff;
    font-size: .9em;
    text-decoration: none;
}

.blue_button:hover {
    background: #f05230;
    text-decoration: none;
    border: none;
    color: #fff;
}

/*** TP WIDGETS ***/
p.schedule_widget {
    padding: 0 !important;
    overflow: hidden;
}

/*** TABLES ***/
table {
    border: 1px solid #ddd;
    font-size: .9em;
    width: 100%;
    margin: 20px 0;
    border-width: 0;
    border-collapse: collapse;
    border-spacing: 0
}

tr:nth-child(even) {
    background-color: #f2f2f2
}

table td,
table th {
    padding: 15px;
    border: 1px solid #eaeaea
}

table th {
    color: #373737;
    text-align: left;
    padding: 15px 14px;
    font-size: 16px;
    font-weight: 700
}

table td {
    padding: 13px 14px;
    vertical-align: top
}

table tr:nth-of-type(even) {
    background: #fff
}

table tr:nth-of-type(odd) {
    background: #fafafa
}

table ul {
    list-style-type: none !important;
    margin: 1em 0 0 0.0em;
}

.table-responsive-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/*** FAQ BOX ***/

/* Общий контейнер */
.colorbox.faq {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin: 20px 12px;
}

/* Заголовок блока */
.faq h2 {
    font-size: 1.3em;
    text-transform: none;
    /* Убираем капс для современного вида */
    margin-bottom: 8px;
    color: #333;
    font-weight: 700;
}

/* Контейнер вопроса (убираем индивидуальные рамки) */
.faq .faq-item {
    background-color: transparent;
    margin-bottom: 0;
    padding: 0;
    border: none;
    border-bottom: 1px solid #eee;
    /* Тонкая линия между вопросами */
}

/* Последний элемент без линии снизу */
.faq .faq-item:last-child {
    border-bottom: none;
}

/* Стили заголовка-кнопки */
.faq summary {
    list-style: none;
    /* Убираем стандартную стрелочку */
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    cursor: pointer;
    outline: none;
}

/* Убираем стрелку в Safari */
.faq summary::-webkit-details-marker {
    display: none;
}

.faq h3 {
    font-size: 1.0em;
    padding: 0;
    margin: 0;
    font-weight: 400;
    color: #2c2c2c;
    display: block;
    /* Вместо inline */
    flex: 1;
    text-align: left;
}

/* Создаем кастомную стрелку */
.faq summary::after {
    content: '\203A';
    /* Символ стрелочки */
    font-size: 24px;
    color: #58b19f;
    /* Твой фирменный зеленый */
    font-weight: bold;
    transform: rotate(90deg);
    /* Смотрит вниз */
    transition: transform 0.3s ease;
    margin-left: 15px;
}

/* Поворот стрелки при открытии */
.faq .faq-item[open] summary::after {
    transform: rotate(-90deg);
    /* Смотрит вверх */
}

/* Блок ответа */
.faq .faq-answer {
    font-size: 0.95em;
    line-height: 1.6;
    margin: 0 0 20px 0;
    color: #666;
    padding-right: 30px;
    /* Чтобы текст не налезал на место стрелки */
}

/* Ссылка внутри ответа */
.faq .faq-answer a {
    color: #408073;
    text-decoration: underline;
}


.useful-links-container {
    background-color: #fcfffa;
    font-size: 14px;
    border: 4px dotted #2eb08d;
    margin: 4% 4%;
    border-radius: 4px;
}

.useful-links-title-wrapper {
    text-align: center;
}

.useful-links-title-wrapper .useful-links-title {
    color: #484848;
    font-weight: bold;
    background-color: #fff564e3;
    padding: 8px;
    border-radius: 12px;
    display: inline-block;
}

.useful-links-container .usefullinks-desc {
    line-height: 1.2em;
    font-style: normal;
    text-align: left;
    display: block;
    margin: 14px 20px 0px 20px;
    padding: 2% 0%;
}

.useful-links-container .usefullinks-desc ul {
    margin: 16px 0px 0px 40px;
}

.useful-links-container .usefullinks-desc ul li {
    padding-left: .2em;
    padding-bottom: 16px !important;
}

.useful-links-container a {
    color: #007abc;
}

.info-block {
    border: 2px solid #90db89;
    margin-bottom: 10px
}

.info-block .head {
    font-weight: bold;
    font-size: 1.1em;
    padding: 8px;
    border-bottom: 2px solid #90db89;
    display: inline-block;
    border-right: 2px solid #90db89;
    margin-bottom: 8px;
    background: #e8fde6;
}

.info-block p {
    margin: 8px
}

.info-block .number {
    color: #90db89;
}

.info-block ul,
.info-block ol {
    padding: 0px 16px
}

#content .post {
    padding: 0px !important;
}

.wc-gallery .gallery .gallery-icon a {
    border-bottom: 0px !important;
}

.icon {
    display: inline-block;
    width: auto;
    padding-left: 32px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    margin-right: 10px;
}

.tg {
    background-image: url('./images/tg.svg');
}

.ig {
    background-image: url('./images/ig.svg');
}

@media screen and (min-width: 901px) {
    .mobile .main-menu {
        min-height: 50px;
        justify-content: space-between;
        /* Логотип слева, кнопка справа */
    }

    .headerbar .main-menu {
        justify-content: center;
        /* Центрируем всё меню целиком */
    }

    ul.accordion {
        display: flex;
        flex-direction: row;
        /* Строго в ряд */
        width: auto;
        justify-content: center;
        flex-wrap: nowrap;
        /* Не даем пунктам перепрыгивать на вторую строку */
        visibility: visible;
        height: auto;
        left: 0;
        content-visibility: visible
    }

    ul.accordion li {
        display: inline-block;
    }
}

@media only screen and (max-width:991px) {
    ul.accordion li {
        margin: 0 2px;
    }
}

@media screen and (max-width:900px) {

    #content {
        width: 100%;
        margin: 10px 0 20px
    }

    .widget {
        margin-bottom: 20px;
        margin-right: 0px;
        padding: 8px;
        max-width: 400px;
        display: inline-block;
        width: 400px;
    }

    a.featured {
        margin: 0px 0px;
    }

    .post-image.left {
        float: left;
        margin: 0px 15px 0px 0px;
    }

    .pagewidth {
        max-width: 100%
    }

    .main-menu-wrapper {
        position: fixed !important;
        top: 50px !important;
        left: 0 !important;
        width: 75% !important;
        height: 100vh !important;
        background: #212e2b !important;
        z-index: 1000 !important;
        padding: 15px 20px !important;
        /* Анимация через трансформацию */
        opacity: 0;
        visibility: hidden;
        transform: translateX(-100%);
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease, visibility 0.4s;
    }

    .main-menu li {
        margin: 5px 0px;
        display: block;
        padding: 2px 0px;
    }

    .mobile .main-menu ul.accordion {
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        display: block !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: left;
        -webkit-transform: translateZ(10px);
        /* Магия для Safari */
        transform: translateZ(10px);
        color: inherit;
    }

    ul.accordion>li.current-menu-item a::before,
    ul.accordion>li.current-post-parent a::before {
        content: "> ";
        color: #f05230;
    }

    .toggle-nav {
        display: inline-block !important;
        color: #333;
        font-size: 28px;
        line-height: 50px;
        transition: color linear 0.15s;
        margin-left: 10px;
        text-decoration: none;
    }

    /* 2. Фиксируем хедер, чтобы он не менял высоту при появлении кнопки */
    .headerbar .main-menu,
    .mobile .main-menu {
        min-height: 50px;
        justify-content: space-between;
        /* Логотип слева, кнопка справа */
    }

    .search_icon {
        margin-right: 10px
    }
}

@media screen and (max-width : 800px) {
    .post-full-video {
        height: 360px
    }

    .pagewidth {
        max-width: 100%
    }

    .widget {
        max-width: 350px;
        width: 350px;
    }

    .category-wrapper {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
        -moz-column-gap: 0px;
        -webkit-column-gap: 0px;
        column-gap: 0px;
        text-align: center;
    }

    #content {
        margin: 0 0 20px
    }
}

@media screen and (max-width:700px) {
    .useful-links-container .usefullinks-desc ul {
        margin: 14px 20px 0px 20px;
    }

}

@media screen and (max-width:600px) {
    .main-menu ul {
        width: 75%;
    }

    .headerbar {
        padding-top: 0px;
        padding-bottom: 0px;
    }

    .post-video {
        clear: both
    }

    .alignleft,
    .alignright {
        float: none;
        clear: both;
        display: block;
        margin: 15px auto;
        text-align: center;
    }

    .post-content {
        text-align: center
    }

    .post-content div p {
        padding: 0 2%;
        text-align: left
    }

    .category .post-content div p {
        padding: 0 2%;
        text-align: center;
    }

    .post-image .attachment-featured {
        margin-bottom: 0;
        margin: 0px auto;
    }

    .post-image .left {
        float: none !important
    }

    ol,
    ul {
        margin: 1em 4% 0.8em 3.2em;
    }
}

@media screen and (min-width:410px) and (max-width:580px) {

    .category article,
    .archive article {
        width: 390px !important
    }
}

@media screen and (min-width:320px) and (max-width:580px) {

    .category-description .post-title {
        padding: 6% 4% 4%;
    }

    .category-description p {
        padding: 0px 12px !important;
    }

    .pagenav {
        text-align: center
    }

    .post-image {
        width: 100%;
        text-align: center;
    }

    .pagewidth {
        max-width: 100%
    }

    html {
        -webkit-text-size-adjust: none;
        overflow-x: hidden;
    }

    body {
        overflow-x: hidden;
    }

    p {
        color: #333;
        font-size: 16px;
        line-height: 26px;
        margin-bottom: 15px
    }

    .category-wrapper,
    .post {

        padding: 0px;
        margin: 0px auto 24px;
        float: none !important
    }

    .category-wrapper .post {
        padding: 8px 12px 0
    }

    .single-post #content {
        padding-top: 16px
    }

    .page #content {
        padding-top: 8px;
    }

    .single-post #content .post {
        padding: 0 4% 4%;
        background-color: #fff;
        margin: 0 2%
    }

    .post-title {
        font-size: 1.4em;
        font-weight: 700;
        margin: 12px 0 5px;
        display: block;
        text-align: center;
        padding: 0px
    }

    h1.post-title {
        width: auto;
    }

    .post-content {
        text-align: center
    }

    .post-content div p {
        padding: 0 2%;
        text-align: center;
    }

    .post-image .attachment-featured {
        margin-bottom: 0;
        margin: 0px auto;
    }

    .post-full-video {
        height: 200px
    }

    .menu-item a,
    a.readmore {
        font-style: normal !important
    }

    .page .kama_breadcrumbs {
        font-size: .9em;
        margin: 0 0 0px 4%
    }

    .single .kama_breadcrumbs {
        margin: 0 0 2% 2%
    }

    .post p,
    .post ul.post-by,
    h1,
    h2,
    h2 a,
    h3,
    h4,
    h5,
    h6 {
        padding: 0;
    }

    .page ul.post-by {
        padding: 0 4%;
    }

    h1,
    h2 {
        font-size: 1.6em
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        text-align: center;
        line-height: 30px;
        display: block;
        margin-top: 0.9em;
        margin-bottom: 0.85em;
    }

    h3 {
        font-size: 1.4em
    }

    h4 {
        font-size: 1.2em
    }

    h5 {
        font-size: 1.1em
    }

    h6 {
        font-size: 1em
    }

    article {
        background: #fff;
        -moz-border-radius: 2px;
        -webkit-border-radius: 2px;
        border-radius: 2px;
        -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, .05);
        -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, .05);
        box-shadow: 0 2px 3px rgba(0, 0, 0, .05)
    }

    .aftercontent-container .aboutme,
    .aftercontent-container .usefullinks {
        margin: 12px auto !important;
        width: 100%
    }

    table {
        width: 100%;
        border-width: 0;
        border-collapse: collapse;
        border-spacing: 0;
        font-size: 0.85em;
    }

    table th {
        color: #373737;
        text-align: left;
        padding: 10px 10px;
        font-size: 14px;
        font-weight: 700;
    }

    table td {
        padding: 8px 8px
    }

    article .readmore:hover,
    article a.readmore:focus {
        background-color: #ea6649;
    }

    .single ul.accordion {
        width: 75%;
    }

    div.colorbox.green,
    div.colorbox.blue {
        padding: 1.1rem 1rem;
    }

    div.colorbox.green p {
        color: #343;
        font-size: 1em;
    }

    div.colorbox.blue p {
        color: #375f68;
        font-size: 1em;
    }
}

@media only screen and (max-width:370px) {
    .name-site {
        font-size: 14px;
    }
}

/** PAGE **/

.main-h1 {
    background-size: cover;
    height: 320px;
    border-radius: 2px 2px 0px 0px;
    background-color: #0000007a;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    margin-bottom: 16px;
}

.main-h1 h1 {
    color: white;
    bottom: 0px;
    text-align: center;
    width: 100%;
    padding: 20px 0px;
    background-color: #0000007a;
    margin: 0px auto;
}

/** SEARCH PAGE **/

.searchpage {
    background-color: #fff;
}

.search-results #content {
    background-color: #fff;
    padding: 5px 0px 10px;
}

.search-results article {
    border: none;
    box-shadow: none;
}

.searchform {
    clear: both;
    overflow: hidden;
    margin: 0px;
    padding: 8px;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.searchform input {
    width: 70%;
    background-color: #F5F5F5;
    border: 1px solid #F5F5F5;
    box-shadow: none;
    color: #888888;
    flex: 1;
    font-size: 17px;
    font-style: italic;
    line-height: 35px;
    margin: 0 8px 0 0;
    padding: 0 10px;
}

.searchform button {
    width: 22%;
    border: 0 !important;
    cursor: pointer;
    flex-shrink: 0;
    text-align: center;
    padding: 12px;
    background-color: #f05230;
    color: #ffffff;
    margin: 0px auto;
    text-decoration: none;
    border-radius: 40px;
}

.searchform input:focus,
.searchform input:active {
    background-color: #fff !important;
    border: 1px #ccc solid;
}

@media screen and (max-width: 799px) {
    .search-results #content {
        padding: 5px 4% 10px;
    }

    .searchform {
        padding: 0 8px;
    }
}

/** COMMENTS **/

#comments {
    padding: 20px 4%;
    background: #fff;
    margin: 0px auto;
}

.comments-header-wrapper {
    border-bottom: 2px solid #ddd;
    /* Светло-серая линия на заднем фоне */
    margin: 20px 0px;
    position: relative;
    display: flex;
    align-items: flex-end;
}

/* Стили заголовка */
.comments-title {
    font-family: Arial, sans-serif;
    /* Подберите шрифт под вашу тему */
    font-size: 16px;
    /* Размер шрифта */
    font-weight: bold;
    color: #555;
    /* Темно-серый цвет текста */
    text-transform: uppercase;
    /* Все заглавные буквы */
    letter-spacing: 1px;
    /* Межсимвольный интервал */
    margin: 0 !important;
    position: relative;
    display: inline-block;
    padding: 0 10px 0 0;
}

/* Зеленая полоса под конкретным заголовком */
.comments-title::after {
    content: '';
    position: absolute;
    bottom: -2px;
    /* Прижимаем к серой линии */
    left: 0;
    width: 100%;
    /* Длина линии совпадает с длиной текста */
    height: 2px;
    /* Толщина зеленой линии */
    background-color: #58b19f;
    /* Ваш фирменный зеленый цвет из темы */
}

.comment-list,
.comment-list ul {
    list-style: none !important;
    margin: 0;
    padding: 0;
}

/* Основной блок комментария */
.comment-body {
    margin-bottom: 30px;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
    overflow: hidden;
    /* Чтобы флоаты не вылезали */
}

/* Основной контейнер внутри комментария */
.comment-container {
    display: flex;
    align-items: flex-start;
    /* Выравнивание по верхнему краю */
    gap: 15px;
    /* Расстояние между аватаром и текстом */
}

/* Колонка с данными справа от аватара */
.comment-data-column {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* Метаданные (Имя и Дата) */
.comment-metadata {
    line-height: 1.2;
    /* Чтобы имя плотно прилегало к верху */
    margin-bottom: 8px;
}

.comment-metadata .fn {
    font-size: 17px;
    font-weight: bold;
    color: #364743;
    display: inline-block;
    vertical-align: top;
}

/* Текст комментария теперь идет сразу под метаданными */
.comment-text-content {
    font-size: 16px;
    line-height: 1.5;
    color: #484848;
    margin: 0 0 10px 0;
    /* Убираем левый отступ, так как колонка уже смещена */
}

/* Ссылка Ответить */
.comment-reply-box a {
    font-size: 14px;
    color: #0f846d;
    text-decoration: none;
    font-weight: 600;
}

.comment-avatar {
    max-width: 60px;
    max-height: 60px;
}

/* Стили аватаров с ободками (оставляем) */
.comment-avatar img {
    border-radius: 50%;
    padding: 3px;
    display: block;
}

.user-avatar img {
    border: 1px solid #ddd;
}

.site-author-avatar img {
    border: 2px solid #58b19f;
}

/* Вложенные комментарии */
.comment-list .children {
    margin-left: 65px;
    /* Сдвиг для ответов */
}

/* Дата и часы */
.comment-date-text {
    font-size: 14px;
    color: #757575;
}

.clock-icon {
    font-size: 12px;
    margin-right: 2px;
    opacity: 0.7;
}

.comment-content {
    clear: both;
    margin-top: 10px;
}

/* Форма ответа */
#respond {
    margin-top: 0px;
    padding: 20px;
    background: #f9f9f9;
}

.comment-form-flex {
    display: flex;
    gap: 15px;
}

.comment-form-author,
.comment-form-email {
    flex: 1;
}

#commentform input[type="text"],
#commentform input[type="email"],
#commentform textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: inherit;
    box-sizing: border-box;
}

#commentform input:focus,
#commentform textarea:focus {
    border-color: #07ce96;
    outline: none;
}

input#submit.readmore {
    border: none;
    cursor: pointer;
    width: auto;
    padding: 12px 30px;
    font-weight: bold;
}

/* Стили для согласия на обработку данных */
.comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 15px 0;
}

.comment-form-cookies-consent input[type="checkbox"] {
    margin-top: 5px;
    cursor: pointer;
}

.comment-form-cookies-consent label {
    font-size: 13px;
    line-height: 1.4;
    color: #666;
    cursor: pointer;
}

/* Убираем отступы у пустого заголовка, если они остались */
#reply-title {
    display: none !important;
}

.widget-container {
    margin: 0px auto;
}

.one2go-timetable {
    margin: 0px
}

.one2go-route-container {
    border: none !important;
}