/*--------------------------------------------------------------
# GLOBAL CSS
1. Normalize
2. Elements
3. Alignment
4. Accessiblity
5. Media
6. Typography
7. Icons
8. Color
9. Forms
10. Pagination
11. Header
12. Footer
13. Subscribe
14. Mobile
--------------------------------------------------------------*/

/*--------------------------------------------------------------
1. Normalize
--------------------------------------------------------------*/
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	box-sizing: border-box;
	scroll-behavior: smooth;
}

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

body {
	margin: 0;
}

h1 {
	font-size: 2em;
	margin: 0;
	margin-block-start: 0;
	margin-block-end: 0;
}

h2, h3, h4, h5, h6 {
	margin-block-start: 0;
	margin-block-end: 0;
}

p {
	margin: 0;
	padding: 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
}

b, strong, dt {
	font-weight: 700;
}

code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button, input {
	overflow: visible;
}

select {
	text-transform: none;
}

button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"], [type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

:focus {
	outline: -webkit-focus-ring-color auto 1px;
}

/*--------------------------------------------------------------
2. Elements
--------------------------------------------------------------*/
.site-inner {
	margin: 0 auto;
	max-width: 100%;
}

.wrap {
	max-width: 1200px;
	margin: 0 auto;
	width: calc(100% - 20px);
}
.joc-wrap {
	max-width: 800px;
	margin-left:  auto;
	margin-right:  auto;
	width: calc(100% - 20px);
}

.flexbox {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.clear:before, .clear:after, .entry-content:before, .entry-content:after, .comment-content:before, .comment-content:after, .site-header:before, .site-header:after, .site-content:before, .site-content:after, .site-footer:before, .site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after, .entry-content:after, .comment-content:after, .site-header:after, .site-content:after, .site-footer:after {
	clear: both;
}

.wp-block-separator, hr {
	background-color: #f0efef;
	border: 0;
	height: 2px;
	margin:  20px auto;
	max-width:  1000px;
	width:  calc(100% - 20px);
}

ul, ol {
	margin: 0;
	padding: 0;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul, li > ol {
	margin-bottom: 0;
	margin-left: 20px;
}

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

figure {
	margin: 20px 0;
}

table {
	margin: 0 0 20px;
	width: 100%;
}

th, td, thead th, thead td {
	border-bottom: 2px solid #f0efef;
	border-right: 2px solid #f0efef;
	text-align: left;
	padding: 5px;
}

tbody tr:last-child th, tbody tr:last-child td {
	border-bottom: 0;
}

td:last-child {
	border-right: 0;
}

.sticky {
	border: 2px solid #f0efef;
}

.entry-content ul:not(.wp-block-gallery), .entry-content ul ul {
	list-style-position: outside;
	margin-left: 20px;
	margin-bottom: 20px;
	padding-left: 0;
}

.entry-content ul:not(.wp-block-gallery) li {
	margin-bottom: 5px;
	list-style-position: inherit;
}

/*--------------------------------------------------------------
3. Alignment
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 20px;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 20px;
}

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

/*--------------------------------------------------------------
4. Accessibility
--------------------------------------------------------------*/
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f0efef;
	border-radius: 3px;
	clip: auto !important;
	clip-path: none;
	color: #212121;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
5. Media
--------------------------------------------------------------*/
.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

embed, iframe, object {
	max-width: 100%;
}
.wp-block-embed__wrapper {
    position: relative;
    padding-bottom: 51%;
    overflow: hidden;
    max-width: 100%;
    height: auto;
    display: block;
}
.wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


.gallery {
	margin-bottom: 20px;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
6. Typography
--------------------------------------------------------------*/
body {
	font-family:  -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #212121;
	background: #ffffff;
}

input, select, optgroup, textarea {
	font-size: 15px;
	line-height: 1.5;
}

label {
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1;
}

.sm-caps {
	font-size: 13px;
	letter-spacing: 1px;
	line-height: 1.5;
	text-transform: uppercase;
	font-weight: 700;

}

.sm-sans {
	font-size: 14px;
	line-height: 1.5;

}

.sm-ser {
	font-size: 13px;
	line-height: 1.5;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 400;
}

.sm-caps em {
	font-family: Georgia, Times, "Times New Roman", serif;
	font-size: 13px;
	font-style: italic;
	line-height: 1;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 400;
}

.big-ser {
	font-family: Georgia, Times, "Times New Roman", serif;
	font-size: 20px;
	font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: 700;
	margin: 0 0 20px;
	line-height: 1.25;
	-ms-word-wrap: break-word;
	word-wrap: break-word;

}

h1 {
	font-size: 40px;
}

h2 {
	font-size: 36px;
}

h3 {
	font-size: 32px;
}


h4 {
	font-size: 28px;

}

h5 {
	font-size: 24px;

}

h6 {
	font-size: 20px;

}

p {
	margin-bottom: 20px;
}

.entry-content p:last-child, .archive-description p:last-child {
	margin-bottom: 0;
}

.entry-summary {
	font-size:  16px;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 auto 20px;
	padding: 20px;
	background: #f0efef;
}
.joc-blockquote {
	background: #212121;
	color:  #ffffff;
	padding:  60px 0;
	margin:  0 auto;
}
.joc-blockquote p {
	margin: 0 auto 30px;
	max-width:  800px;
	width:  80%;
	font-size:  24px;
	line-height:  1.5;
}

.joc-blockquote cite p {
	font-size:  14px!important;
}
.joc-light-bg {
	background:  #dadada;
	padding:  20px;
	margin:  0 0 30px;
}

.wp-block-pullquote {
	text-align: left;
	line-height: 1.5;
}

address {
	margin: 0 0 20px;
}

pre {
	background: #f0efef;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 20px;
	max-width: 100%;
	overflow: auto;
	padding: 20px;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 14px;
}

abbr, acronym {
	background: #f0efef;
	cursor: help;
}

mark, ins {
	background: #f0efef;
	text-decoration: none;
}

big {
	font-size: 24px;
}

table {
	font-size: 14px;
	line-height: 1.5;
}

.breadcrumbs {
	font-size: 12px;
	margin-bottom: 10px;
	letter-spacing: 0;
}

.breadcrumbs a, .breadcrumbs a:visited {
	color: #212121;
}

.breadcrumbs a:hover, .breadcrumbs a:visited:hover {
	color: #D0021B;
}

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text, figcaption{
	margin: 5px 0 0;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.wp-caption-text {
	text-align: center;
}
.entry-content ol {
	list-style-type: none;
}
.entry-content ol>li {
    counter-increment: list-counter;
    	margin: 0 0 20px 30px;

}
.entry-content ol>li:first-of-type {
	counter-reset: list-counter;
}
.entry-content ol>li::before {
    content: counter(list-counter);
    position: absolute;
    display: block;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    font-weight: 700;
    color: #ffffff;
    background: #212121;
    border-radius: 100%;
    margin-top: 3px;
    margin-left: -30px;
    font-size: 13px;
}

/*--------------------------------------------------------------
8. Color
--------------------------------------------------------------*/
a {
	color: #D0021B;
	outline: none;
	text-decoration: none;
}

a:visited {
	color: #D0021B;
}
.entry-content a, .entry-content a:visited {
	text-decoration: underline;
}

a:hover, a:focus, a:active {
	color: #9c0214;
	transition: color .8s ease 0s;
}

a:hover img {
	-webkit-transition: 400ms;
	transition: opacity 400ms;
	will-change: opacity;
}

.alt a, .alt a:visited {
	color: #212121;
}

.alt a:hover, .alt a:visited:hover {
	color: #9c0214;
}

.white, .white a, .white a:visited{
	color: #FFFFFF;
}

.white a:hover {
	color: #dadada;
}

::-moz-selection {
	background: #dadada;
}

::selection {
	background: #dadada;
}

/*--------------------------------------------------------------
9. Forms
--------------------------------------------------------------*/
button, input[type="button"], input[type="reset"], input[type="submit"] {
	border: 0;
	background-color: #212121;
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 1px;
	padding: 14px 20px;
	text-transform: uppercase;
	height: 40px;
	cursor: pointer;
	transition: background-color 400ms, color 400ms;
}

button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, button:active, button:focus, input[type="button"]:active, input[type="button"]:focus, input[type="reset"]:active, input[type="reset"]:focus, input[type="submit"]:active, input[type="submit"]:focus {
	background-color: #D0021B;
	color: #FFFFFF;
	transition: background-color .8s ease 0s, color .8s ease 0s;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
	color: #212121;
	border: 2px solid #f0efef;
	background: transparent;
	border-radius: 0;
	padding: 8px;
}

input::placeholder, textarea::placeholder {
	color: #212121;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus {
	color: #212121;
}

select {
	color: #212121;
	border: 2px solid #f0efef;
	background: transparent;
	-webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	border-radius: 0 !important;
	text-align-last: left;
	padding: 8px;
	min-width: 225px;
	width: 100%;

}

option {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
}

input[type="checkbox"], input[type="radio"] {
	-webkit-appearance: inherit;
	border-radius: 15px;
	border: 1px solid #212121;
	background: transparent;
	white-space: nowrap;
	overflow: hidden;
	width: 14px;
	height: 14px;
	color: transparent;
	vertical-align: text-top;
	margin-right: 5px;
}

input[type="checkbox"]:checked {
	background: #212121;
}

textarea {
	width: 100%;
}

.search-form {
	max-width: 100%;
	position: relative;
	overflow: hidden;
	height: 44px;
	border: 2px solid #f0efef;
	border-radius: 3px;


}

.search-field {
	border: 0;
	background: transparent;
	padding: 8px;
	max-width: 100%;
	width: 100%;
	height: 44px;
	min-width: 200px;
	max-width: 200px;

}

.search-form .search-submit {
	background: transparent;
	color: #212121;
	border: none;
	padding: 0;
	margin: 0;
	min-width: 0;
	width: 44px;
	height: 44px;
	font-size: 44px;
	line-height: 0;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
}

.search-form .svg-icon {
	fill:  #ffffff;
}
.fixed .search-form .svg-icon {
	fill:  #212121;
}

.wp-block-button__link {
    font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
	text-decoration: none!important;
	background: #D0021B;
	color: #ffffff;
	width: fit-content;
}
.wp-block-button__link:visited {
	color: #ffffff;
}
.wp-block-button__link:hover, .wp-block-button__link:visited:hover {
	color: #ffffff;
	background: #212121;
}
.joc-button-block {
    margin: 40px auto;
}
/*--------------------------------------------------------------
10. Pagination
--------------------------------------------------------------*/
.posts-navigation {
	margin: 40px auto;
	text-align: center;
}

.page-numbers {
	border-radius: 50%;
	display: inline-block;
	text-align: center;
	width: 44px;
	height: 44px;
	vertical-align: middle;
	margin: 0 3px;
	background: #ffffff;
	color: #212121;
	font-weight: 700;
	font-size: 16px;
	line-height: 44px;
}

a.page-numbers:hover {
	background: #f0efef;
	color: #9c0214;
}

a.page-numbers, a.page-numbers:visited {
	color: #212121;
}

.page-numbers.current {
	background: #212121;
	color: #FFFFFF;
}

.next.page-numbers, .prev.page-numbers {
	box-shadow: none;
	font-size: 30px;
}

.next.page-numbers:hover, .prev.page-numbers:hover {
	background: transparent;
}

/*--------------------------------------------------------------
11. Header
--------------------------------------------------------------*/
/*Before Header*/
.before-header {
	border-top: 5px solid #f0efef;

}

.before-header .wrap {
	padding: 0;
	border-bottom: 1px solid #f0efef;
}

.before-header .right {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
	width: 100%;

}
.secondary-menu {
		font-size: 13px;
}
.before-header .secondary-menu {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: start;
	width: 90%;
}

.before-header .secondary-menu li {
	display: block;
	margin-right: 15px;
}

.before-header .secondary-menu li a {
	display: block;
	line-height: 1;
	position: relative;
}

.before-header .secondary-menu li a:before {
	content: "";
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #D0021B;
	transform: scaleX(0);
	transition: transform 250ms;
	border-radius: 44px;
	transform-origin: left;
}

.before-header .secondary-menu li.menu-item-has-children a:before {
	display: none;
}

.before-header .secondary-menu li a:hover::before {
	transform: scaleX(1);
}

.before-header .social-menu {
	margin-right: 10px;
}

.before-header .search-form {
	border: 0;
	background: #f0efef;
	min-width: 200px;
	border-radius: 0;
	color: #212121;
}

.before-header .search-field {
	color: #212121;
}
.before-header .search-field::placeholder, .before-header .search-field:focus {
	color: #212121;
}
.before-header .search-form .search-submit {
	width: 44px;
	height: 44px;
	fill: #212121;
}
.before-header .search-form .search-submit:hover .svg-icon {
	fill: #d0021b;
}
.before-header .search-form .svg-icon {
	fill:  #212121;
}
.button-menu {
	display: flex;
	justify-content: space-between;
	align-content: center;
	  max-width: fit-content;
    width: 100%;
}
.button-menu li {
	display: block;
	margin-left: 10px;
}
.button-menu a {
	background: #D0021B;
	padding: 5px;
	border-radius: 5px;
}
.button-menu a:hover, .button-menu a:visited:hover{
	background: #212121;
	color: #ffffff;
}

#masthead.site-header,
#site-navigation {
	height: 70px;
}

.site-header {
	width: 100%;
	background: #ffffff;
	padding: 0 15px;
	z-index: 99999;
}

.main-navigation {
	max-width: 1200px;
	padding: 10px 0;
	width: 100%;
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin: 0 auto;
	z-index: 999;
}

.site-branding {
	width: 480px;
	padding-right: 20px;
}

.site-title {
	margin: 0;
	line-height: 1;
}

.site-title a {
	display: block;
	width: 100%;
	background: url(../svg/logo.svg) no-repeat left;
	background-size: contain;
	margin: 0;
	max-width: 480px;
	height: 60px;
	text-indent: -9999px;
	transition: transform 400ms;
}

@media only screen and (max-width: 767px) {
	.site-title a {
		background: url(../svg/logo.svg) no-repeat center;
	}
}

.site-title a:hover {
	transform: scale(.95);
}

.site-menu {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.site-menu .secondary-menu, .site-menu .social-menu, .site-menu .search-form {
	display: none;
}

.primary-menu {
	display: flex;
	list-style: none;
	margin: 0;
	padding-left: 0;
	font-weight: 700;
	font-size: 16px;
}

.primary-menu li {
	margin: 0 0 0 20px;
	padding: 5px;
	position: relative;
}

.primary-menu li a {
	display: block;
	line-height: 1;
	position: relative;
}

.primary-menu li a:before {
	content: "";
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #D0021B;
	transform: scaleX(0);
	transition: transform 250ms;
	border-radius: 44px;
	transform-origin: left;
}

.primary-menu li.menu-item-has-children a:before {
	display: none;
}

.primary-menu li a:hover::before {
	transform: scaleX(1);
}
.primary-menu .sub-menu-toggle {
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	padding: 0;
	background: transparent;
	color: #212121;
    top: 5px;
    right: -15px;
}
.sub-menu-toggle .svg-icon {
    top: -2px;
    left: -3px;
    position: relative;
}

.primary-menu li ul {
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
	background: #FFFFFF;
	display: block;
	margin-left: 0;
	cursor: pointer;
	-webkit-transition: 400ms;
	transition: 400ms;
	text-align: left;
	-webkit-box-shadow: 0 0 10px 0 rgba(50, 50, 50, 0.25);
	-moz-box-shadow: 0 0 10px 0 rgba(50, 50, 50, 0.25);
	box-shadow: 0 0 10px 0 rgba(50, 50, 50, 0.25);
}

.primary-menu li:hover > ul {
	left: auto;
	transition: transform 400ms;
}
.primary-menu ul li:focus-visible > ul {
	left: auto;
	transition: transform 400ms;
}


.primary-menu li ul li {
	display: block;
	margin: 0;
	padding: 0;
}

.primary-menu li ul li a {
	display: block;
	padding: 10px;
	background: #FFFFFF;
	width: 175px;
}

.primary-menu li ul li a:hover, .primary-menu li ul li a:visited:hover {
	background: #212121;
	color: #FFFFFF;
}

.primary-menu li ul li a:before {
	display: none;
}

.primary-menu > .menu-item > .submenu > .menu-item:first-of-type:hover::before {
	background-color: #212121;
}
/*--------------------------------------------------------------
## Sticky Menu
--------------------------------------------------------------*/
.sticky {
	position: sticky !important;
	display: block;
	z-index: 1000000;
	top: 0;
	left: 0;
	-webkit-box-shadow: 0 0 10px 0 rgba(26, 39, 54, .15);
	-moz-box-shadow: 0 0 10px 0 rgba(26, 39, 54, .15);
	box-shadow: 0 0 10px 0 rgba(26, 39, 54, .15);
}

.sticky .site-title a {
	background: url(../svg/woman.svg) no-repeat left;
	max-width: 60px;
	height: 60px;
}

.sticky .main-navigation {
	padding: 0;
	position: relative;
}

.sticky .search-toggle {
	display: block;
    position: relative;
	color: #212121;
}

@media screen and (max-width: 767px) {
	.sticky .site-title a {
		background: url(../svg/woman.svg) no-repeat center;
		height: 50px;
		margin-inline: auto;
	}

	.sticky .main-navigation {
		padding-block: 5px;
	}

	.sticky .search-toggle {
		position: absolute;
	}
}

.sticky .primary-menu li {
	padding:  20px 5px;
}

.sticky .primary-menu li ul li {
	padding:  0;
}

.sticky .sub-menu-toggle .svg-icon {
    top: 12px;
}

/*--------------------------------------------------------------
## Mobile Menus
--------------------------------------------------------------*/
.search-toggle, .menu-toggle, .mobile-menu {
	display: none;
}

.header-search:not(.active) {
	display: none;
}

.search-toggle, .menu-toggle {
	border: none;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
	outline: none;
	cursor: pointer;
	line-height: 0;
	text-align: center;
	position: absolute;
	top: 0;
	width: 60px;
	height: 60px;
	font-size: 40px;
	color: #212121;
	background: #ffffff;
}
.search-toggle {
	right: 0;
}

.search-toggle .icon-close, .menu-toggle .icon-close {
	display: none
}

.search-toggle:hover, .search-toggle.active, .menu-toggle:hover, .menu-toggle.active {
	background: #f0efef;
	color: #212121;
}

.search-toggle.active .icon-close, .menu-toggle.active .icon-close {
	display: inline
}

.search-toggle.active .icon-search, .menu-toggle.active .icon-menu {
	display: none
}

.header-search {
	background: #f0efef;
	padding: 16px;
	width: 100%;
	position: absolute;
	top: 59px;
	right: 0
	z-index: 999999999;
}

.header-search .search-form {
	max-width: 100%;
	height: inherit;
}
.header-search .search-field {
	height: inherit;
	width: 90%;
    max-width: 100%;
}
.right .search-toggle {
    position: relative;
    background: #f0efef;
    display: block;
    height: 50px;
    width: 50px;
}
/*--------------------------------------------------------------
Footer Categories
--------------------------------------------------------------*/
.footer-cat {
	text-align: center;
	background: #f0efef;
	padding: 20px 0;
	position: relative;
	z-index: 1;
}

.footer-cat .wrap {
	padding: 20px;
	background: #FFFFFF;
	border-bottom: 2px solid #f0efef;
}

.footer-cat:after {
	position: absolute;
	width: 100%;
	height: 50%;
	bottom: 0;
	left: 0;
	content: '';
	background: #FFFFFF;
	z-index: -1;
}

.footer-cat h2 {
	margin: 10px auto;
	font-size: 20px;
	letter-spacing:  1px;
	text-transform:  uppercase;
}

.footer-cat-item {
	width: calc(1 / 8 * 100% - 10px);
	margin: 0 10px 10px;
	background: #FFFFFF;
}

.footer-cat-item img {
	display: block;
	-webkit-box-shadow: 0 0 10px 0 rgba(50, 50, 50, .15);
	-moz-box-shadow: 0 0 10px 0 rgba(50, 50, 50, .15);
	box-shadow: 0 0 10px 0 rgba(50, 50, 50, .15);
}

.footer-cat-item img:hover {
	filter: grayscale(100%);
}

/*--------------------------------------------------------------
Lead Magnet
--------------------------------------------------------------*/
.lead-magnet {
	background: #212121;
	padding: 20px 0;
	color: #FFFFFF;
}

.lead-magnet .flexbox {
	max-width: 750px;
	margin: 0 auto;
}

.lead-magnet-info {
	padding-left: 20px;
}

.lead-magnet-info h2 {
	margin: 0 0 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 24px;
}

.lead-magnet-info .content-meta p {
	font-size: 16px;
}

a.buy-link, a.buy-link:visited {
	display: block;
	padding: 10px 15px;
	background-color: #D0021B;
	color: #FFFFFF;
	width: fit-content;
	line-height: 1;
}

a.buy-link:hover, a.buy-link:visited:hover {
	background-color: #9c0214;
	transition: background-color .8s ease 0s;

}

/*--------------------------------------------------------------
12. Footer
--------------------------------------------------------------*/
.site-footer {
	background-image: url('../png/bg1.png');
	background-position: left top;
	background-repeat: repeat;
	padding: 40px 0;
}

.site-info.wrap {
	background: #FFFFFF;
	padding: 20px 40px;
}

.footer-box {
	padding: 20px 0;
	border-bottom: 2px solid #f0efef;
	align-items: start;
	justify-content: space-between;
}

.footer-sub {
	max-width: 300px;
	margin-right: 20px;
	border-right: 2px solid #f0efef;
	padding-right: 20px;
}

.footer-sub .widget {
	margin: 0;
	border: 0;
	padding: 0;
}

.footer-sub p {
	margin: 0 0 10px;
}

.footer-sub input {
	width: 100%;
	display: block;
	margin: 2px 0;
}

.footer-right {
	width: 100%;
}

ul.footer-menu {
	margin: 0;
	display: flex;
	align-items: start;
	justify-content: space-between;
	width: 100%;
}

ul.footer-menu li {
	display: block;
	list-style: none;
	margin: 0;
}

ul.footer-menu li ul li {
	display: block;
	margin: 0 0 10px;
	text-decoration: none !important;
}

ul.footer-menu li > ul {
	margin-left: 0;
	margin-top: 10px;
}


.footer-menu .submenu-expand {
	display: none;
}

.credits {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0 0;
}

.site-designer {
	height: 24px;
	width: 24px;
	background: url(../svg/lh.svg) no-repeat center;
	background-size: contain;
}

/*--------------------------------------------------------------
12.A - Footer Press
--------------------------------------------------------------*/
.press-inner {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto 20px;
	width: 100%;
	border-bottom: 2px solid #f0efef;
	padding: 0 0 20px;
}
.footer-right .big-ser {
	margin: 0 0 10px;
}

.press-inner img {
	width: 120px;
	height: auto;
	margin: 10px;
}

/*--------------------------------------------------------------
12.B - Floating Buttons
--------------------------------------------------------------*/
a.float-btn {
	display: none;
	position: fixed;
	bottom: 150px;
	left: 10px;
	z-index: 9999;
	border: none;
	outline: none;
	cursor: pointer;
	text-align: center;
	height: 50px;
	width: 50px;
	line-height: 50px;;
	border-radius: 50px;
}

a.float-btn .svg-icon {
	fill:  #212121;
	transform:  rotate(180deg);

}

/*--------------------------------------------------------------
13. Subscribe
--------------------------------------------------------------*/
.subscribe h3 {
    margin: 10px 0;
    font-size: 24px;
}

.subscribe p {
	font-size: 14px;
}

/*--------------------------------------------------------------
## Template Tags
--------------------------------------------------------------*/
.comments-label {
	position: relative;
	line-height: 1;
	margin-top: 5px
}

.read-more {
	display: block;
}

.read-more a {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
}

.read-more .sm-caps {
	position: relative;
	line-height: 1;
	margin-top: 5px
}

/*WPRM Rating*/
.recipe-rating {
	display:  flex;
	justify-content:  flex-start;
	align-items:  center;
}
.recipe-rating .wprm-recipe-rating .wprm-recipe-rating-details {
	font-size:  1em;
}
.vertical .recipe-rating {
    margin: 0 auto;
    text-align: center;
    justify-content: center;
    padding:  0 10px 10px;
}




.wprm-recipe-rating .wprm-rating-star.wprm-rating-star-full svg * {
	fill: #212121 !important;
}

.recipe-time {
	position: relative;
}

.wprm-recipe-details-unit {
	font-size: 1em !important;
}

.more-link {
	display: block;
	width: fit-content;
	text-decoration:none!important;
}

.more-link, .more-link:visited {
	color: #212121;
	border-bottom: 2px solid #212121;
}

.more-link:hover, .more-link:visited:hover {
	color: #9c0214;
	border-bottom: 2px solid #9c0214;
	transition: color .8s ease 0s;
}
.wprm-recipe-rating.wprm-recipe-rating-inline .wprm-recipe-rating-details {
    margin-left: 5px!important;
    font-size: 13px;
    font-style: italic;
}
.wprmprc-collection-item-name {
    font-size: 14px;
    width: 100%;
    top: 0;
    font-weight: 700;
}
.wprmprc-collection-item-servings {
    display: none!important;
}
.truncated-rating {
	display:  flex;
	align-items:  center;
    justify-content: start;
}
.truncated-rating.sm-sans {
	line-height: 1;
}
.truncated-rating .wprm-recipe-rating {
    margin: 0 5px;
}
.horizontal .truncated-rating {
    margin: 10px auto;
}
.video .truncated-rating {
	margin:  10px auto 0;
}
.vertical .truncated-rating {
	padding:  0 10px 10px;
}
/*--------------------------------------------------------------
14. Decorative Elements
--------------------------------------------------------------*/
.icon-line {
	display: block;
	height: 10px;
	width: 100px;
	margin: 0 auto 40px;
	background: url(../svg/accent-line.svg) no-repeat center;
	background-size: contain;
}

.icon-rainbow {
	display: block;
	height: 25px;
	width: 50px;
	margin: 0 auto;
	background: url(../svg/accent-rainbow.svg) no-repeat center;
	background-size: contain;
	fill: #212121;
}


.icon-dango {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-dango.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-mochi {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-mochi.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-maneki-neko {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-maneki-neko.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-sensu {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-sensu.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-vegetables {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-vegetables.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-ramen {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-ramen.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}

.icon-oigiri {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-oigiri.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-sake {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-sake.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-shrimp {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-shrimp.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-sushi {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-sushi.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-uchiwa {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-uchiwa.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-furin {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-furin.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
.icon-ume {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 auto;
	background: url(../svg/icon-ume.svg) no-repeat center;
	background-size: contain;
	fill: #D0021B;
}
/*--------------------------------------------------------------
14. Mobile
--------------------------------------------------------------*/
@media screen and (max-width: 1200px) {

	.press-inner img {
		width: 50px;
	}
}

@media screen and (max-width: 1024px) {
	/*--------------------------------------------------------------
	Header
	--------------------------------------------------------------*/
	.site-branding {
		width:  360px;
	}
	.site-title a {
		width:  360px;
		height:  75px;
	}

	body {
		width: 100%;
	}
	.before-header .search-form {
		display: none;
	}

	.site-header {
		padding: 0;
		border-top: 5px solid #212121;
		-webkit-box-shadow: 0 4px 12px 0 rgba(50, 50, 50, .15);
		box-shadow: 0 4px 12px 0 rgba(50, 50, 50, .15);
		position: sticky;
		top: 0;
		left: 0;
	}

	.main-navigation {
		max-width: 100%;
		padding: 5px 0;
		display: flex;
		position: relative;
	}

	.site-branding {
		margin: 0 auto;
		text-align: center;
		max-width: 400px;
		padding-right: 0;
	}
	.site-title {
		padding-right: 0;
	}

	.site-menu {
		display: none;
	}

	.search-toggle, .menu-toggle {
		border: none;
		border-radius: 0;
		box-shadow: none;
		padding: 0;
		outline: none;
		cursor: pointer;
		line-height: 0;
		text-align: center;
		display: block;
	}

	.site-navigation > .menu-toggle, .site-navigation > .search-toggle {
		position: absolute;
		top: 0;
		width: 48px;
		height: 48px;
	}

	.site-menu.active {
		background: #f0efef;
		display: block;
		position: absolute;
		height: 100vh;
		width: 300px;
		top: 59px;
		padding: 20px;
		overflow: scroll;
	}

	.site-menu .search-form {
		display: none;
	}

	.site-menu .secondary-menu {
		display: flex;
		flex-wrap: wrap;
		margin: 20px 0;
	}
.primary-menu li.expanded + .sub-menu {
    display: block;
    transition: display 400ms;
    margin-left: 10px;
    width: inherit;
    box-shadow: none;
    background: transparent;
}


	.site-menu .secondary-menu li {
		width: calc(1 / 2 * 100% - 5px);
		background: #FFFFFF;
		border-radius: 3px;
		padding: 10px 5px;
		margin: 0 10px 10px 0;
		text-align: center;
		text-transform: uppercase;
		letter-spacing: 1px;
		font-weight: 700;
		font-size: 15px;
	}

	.site-menu .secondary-menu li:hover {
		background: #212121;
	}

	.site-menu .secondary-menu li a:hover {
		color: #FFFFFF;
	}

	.site-menu .secondary-menu li:nth-child(2n) {
		margin: 0 0 10px 0;
	}

	.site-menu .social-menu {
		display: flex;
		justify-content: start;
	}

	.primary-menu {
		display: block;
	}

	.primary-menu li {
		display: block;
		margin: 0 0 5px;
		padding: 10px 0;
	}
	.primary-menu li.menu-item-has-children {
		border-bottom: 1px solid #212121;
	}
		.primary-menu li.menu-item-has-children  ul li {
			border-bottom: 0;
		}
	.secondary-menu li {
		display: block;
		margin: 0 0 5px;
		padding: 5px;
	}

	.primary-menu li a, .primary-menu li a:visited {
		color: #212121;
	}

	.primary-menu li a {
		padding: 0;
	}

	.primary-menu .sub-menu-toggle {
		right: 0;
		top: 10px;
	}

	.primary-menu > .menu-item > .submenu > .menu-item:first-of-type::before {
		display: none;
	}

	.primary-menu ul.submenu {
		float: none;
		position: relative;
		top: 0;
		left: 0;
		display: none;
		margin-left: 0;
		cursor: pointer;
		text-align: left;
		z-index: 5;
	}

	.primary-menu .sub-menu-toggle.expanded + .submenu, .menu-item-has-children.expanded .submenu {
		display: block;
		transition: display 400ms;
		margin-left: 0;
		width: inherit;
		box-shadow: none;
		background: transparent;
	}

	.primary-menu li ul li {
		width: 100%;
		text-align: left;
		display: block;
		max-width: 100%;
		padding: 10px 0;
		margin: 0;
	}

	.primary-menu li ul li:first-child {
		padding: 20px 0 10px;
	}

	.primary-menu li ul li a {
		padding: 0;
		width: 100%;
		background: none;
	}

	.header-search .search-field {
		max-width: 100%;
		height: 40px;
	}

	.site-menu .search-field {
		color: #212121;
	}

	.site-menu .search-form .search-submit {
		color: #212121;
	}

	.primary-menu .sub-menu-toggle {
		color: #212121;
	}

	.site-menu .search-form {
		margin: 20px 0;
		border: 2px solid #212121;
	}

	.primary-menu li ul li a {
		background: transparent;
	}

	.primary-menu li ul li {
		margin-left: 10px;
		width: calc(100% - 10px);
	}

	.site-menu.active .search-form, .site-menu.active .search-field {
		max-width: 100%;
	}
	.fixed .main-navigation {
		padding: 5px 0;
	}
	.fixed .search-toggle {
		position: absolute;
		background: #FFFFFF;
    	color: #212121;
	}

	.footer-box.flexbox {
		display: block;
	}

	.footer-sub {
		max-width: 100%;
		border-right: 0;
		padding-right: 0;
		padding-bottom: 20px;
		text-align: center;
		border-bottom: 2px solid #f0efef;
	}

	.footer-sub input {
		display: inline-block;
		width: fit-content;
	}

}

@media screen and (max-width: 768px) {
	.site-branding {
		width:  240px;
	}
	.site-title a {
		width:  240px;
		height:  50px;
	}
	.before-header {
		display: none;
	}

	.footer-cat .flexbox {
		flex-wrap: wrap;
	}

	.footer-cat-item {
		width: calc(1 / 4 * 100% - 20px);
	}
}

@media screen and (max-width: 600px) {
	.site-branding {
		max-width: 240px;
	}

	.lead-magnet .flexbox {
		display: block;
	}

	.lead-magnet .flexbox img {
		display: block;
		max-width: 150px;
		height: auto;
		margin: 0 auto 10px;
		text-align: center;
	}

	.lead-magnet-info {
		padding-left: 0;
		text-align: center;
	}

	.buy-link {
		margin: 0 auto;
	}
	.footer-right .big-ser {
		margin: 10px 0;
	}

	.press-inner img {
		width: 90px;
		height: auto;
	}

	ul.footer-menu {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
		padding: 0 0 20px;
	}
.footer-menu li.menu-item-has-children {
	border-bottom: 1px solid #f0efef;
}
	ul.footer-menu .submenu-expand {
		display: block;
	}

	ul.footer-menu li {
		width: 100%;
		position: relative;
		background: transparent;
		display: block;
		height: 40px;
		align-items: center;
		margin: 5px;
		line-height: 40px;
	}

	ul.footer-menu .submenu-expand {
		position: absolute;
		right: 0;
		top: 0;
		font-size: 30px;
		padding: 0;
		width: 38px;
		height: 38px;
		background: transparent;
		color: #212121;
	}

	ul.footer-menu .menu-item {
		list-style: none;
	}

	ul.footer-menu .sub-menu {
		display: none;
	}

	ul.footer-menu .submenu-expand.expanded + .sub-menu {
		display: block;
		transition: display 400ms;
		z-index: 2;
		position: relative;
		padding: 20px;
		top: -10px;
		background: #f0efef;
	}

	ul.footer-menu li ul li {
		border-bottom: none;
		height: inherit;
		line-height: 1;
		padding: 5px 0;
	}

	.footer-menu li ul li:last-child {
		padding: 5px 0 0;
		margin: 0;
	}
	.footer-sub input {
		display: block;
		width: 100%;
		margin: 2px auto;
		text-align: center;
	}
	.footer-cat-item {
		width: calc(1 / 2 * 100% - 20px);
	}
}