@charset "UTF-8";

/*
Theme Name: The Okulovsky Forest Marathon
Theme URI: https://framedigital.ru/themes
Author: FrameDigital RU
Author URI: https://framedigital.ru/
Description: Custom theme
Text Domain: okulovskymarathon
Tags: all custom
Version: 1.01

Okulovsky Marathon Theme, (C) 2023
*/

@font-face {
	font-family: 'PP Pangram Sans';
	src: url('assets/fonts/PPPangramSans-SlimSemiboldItalic.otf') format('opentype');
	font-weight:600;
}

@font-face {
	font-family: 'Work Sans';
	src:url('assets/fonts/WorkSans/Web/WorkSans-Regular.eot');
	src:url(assets/fonts/WorkSans/Web/WorkSans-Regular.eot?#iefix) format('embedded-opentype'),url(assets/fonts/WorkSans/Web/WorkSans-Regular.woff2) format('woff2'),url(assets/fonts/WorkSans/Web/WorkSans-Regular.woff) format('woff'),url(assets/fonts/WorkSans/TTF/WorkSans-Regular.ttf) format('truetype');
	font-weight:400;
	font-style:normal;
}

@font-face {
	font-family: 'Work Sans Bold';
	src:url('assets/fonts/WorkSans/Web/WorkSans-Bold.eot');
	src:url(assets/fonts/WorkSans/Web/WorkSans-Bold.eot?#iefix) format('embedded-opentype'),url(assets/fonts/WorkSans/Web/WorkSans-Bold.woff2) format('woff2'),url(assets/fonts/WorkSans/Web/WorkSans-Bold.woff) format('woff'),url(assets/fonts/WorkSans/TTF/WorkSans-Bold.ttf) format('truetype');
	font-weight:600;
	font-style:normal;
}

/* Variables */
:root {

	/* Font Family */
	--global--font-primary: var(--font-headings, "PP Pangram Sans");
	--global--font-secondary: var(--font-base, "Work Sans");
	--global--font-secondary-bold: var(--font-base, "Work Sans Bold");

	/* Font Size */
	--global--font-size-base: 16px;
/*	--global--font-size-xs: 12px; */
	--global--font-size-sm: 14px;
	--global--font-size-md: 16px;
	--global--font-size-lg: 20px;
	--global--font-size-xl: 24px; 
	
	--global--font-size-xll: 128px; 
	/* Paragraph */
    --global--p-size: 20px;
	
	--global--font-size-h-1: 64px;
	--global--font-size-h-2: 40px;
	--global--font-size-h-3: 32px;
	--global--font-size-h-4: 24px;
	--global--font-size-h-5: 16px;
}	
	@media only screen and (max-width: 768.99px) {
	    :root {
    	/* Font Size */
    	--global--font-size-base: 14px;
    	--global--font-size-sm: 12px;
    	--global--font-size-md: 14px;
    	--global--font-size-lg: 14px;
    	--global--font-size-xl: 18px; 
    	
    	--global--font-size-xll: 64px; 
    	--global--p-size: 16px;
    	
    	
    	--global--font-size-h-1: 45px;
    	--global--font-size-h-2: 28px;
    	--global--font-size-h-3: 20px;
    	--global--font-size-h-4: 18px;
    	--global--font-size-h-5: 16px;    
	    }
    } /* end max-width: 480px */
    
    :root {
	--heading--font-size-h1: var(--global--font-size-h-1);
	--heading--font-size-h2: var(--global--font-size-h-2);
	--heading--font-size-h3: var(--global--font-size-h-3);
	--heading--font-size-h4: var(--global--font-size-h-4);
	--heading--font-size-h5: var(--global--font-size-h-5);
	
	--numbers--digit-font-size: var(--global--font-size-xll);
	
	--global--letter-spacing: normal;
	
	--heading--letter-spacing-h1: var(--global--letter-spacing);
	--heading--letter-spacing-h2: var(--global--letter-spacing);
	--heading--letter-spacing-h3: var(--global--letter-spacing);
	--heading--letter-spacing-h4: var(--global--letter-spacing);
	--heading--letter-spacing-h5: var(--global--letter-spacing);

	/* Line Height */
	--global--line-height-body: 120%;
	
	--heading--line-height-h1: 120%;
	--heading--line-height-h2: 100%;
	--heading--line-height-h3: 140%;
	--heading--line-height-h4: 140%;
	--heading--line-height-h5: 150%;
	
	--paragraph--line-height-p: 150%;

	/* Colors */
	--global--color-black: #000000;
	--global--color-base-green: rgba(5, 50, 20, 1);
	
	--global--color-two: rgba(64, 81, 70, 1);
	--global--color-three: rgba(18, 81, 39, 1);
	--global--color-five: rgba(142, 221, 17, 1);
	
	--global--color-light-gray: rgba(125, 132, 127, 1);
	
	--global--color-light: rgba(239, 243, 231, 1);
    --global--color-white: #FFFFFF;
	--global--color-pink: rgba(245,75,80,1);
	--global--color-green-adult: rgba(170, 245, 50, 1);
	--global--color-cyan-children: rgba(125, 255, 235, 1);
	
	--global--color-primary: var(--global--color-base-green); /* Body text color, site title, footer text color. */
	--global--color-secondary: var(--global--color-two); /* Headings variant 2 */
	
/*	--global--color-primary-hover: var(--global--color-primary); */
	--global--color-background: var(--global--color-white); /* Mint, default body background */

	/* Spacing */
	--global--spacing-outside-top: 80px;
	--global--spacing-outside-left: 64px;
	--global--spacing-outside-right: 64px;
	--global--spacing-outside-bottom: 192px;

    /* horizontal */
    --global--spacing-inside-top-m: 24px;
    --global--spacing-inside-left-m:  40px;
    --global--spacing-inside-right-m: 40px;
    --global--spacing-inside-bottom-m:40px;
    
    --global--spacing-inside-top-s: 20px;
    --global--spacing-inside-left-s:  20px;
    --global--spacing-inside-right-s: 20px;
    --global--spacing-inside-bottom-s:20px;
    
    --global--spacing-inside-bottom-accordion: 20px;
    /* vertical */
    --global--spacing-inside-xll: 80px;
    --global--spacing-inside-xl:  64px;
    --global--spacing-inside-x:   60px;
    --global--spacing-inside-m:   40px;
    --global--spacing-inside-sm:  32px;
    --global--spacing-inside-s:   20px;
    --global--spacing-inside-xs:  16px;
    --global--spacing-inside-xss: 12px;
}
    @media only screen and (max-width: 768.99px) {
	    :root {
    	    /* Spacing */
        	--global--spacing-outside-top: 64px;
        	--global--spacing-outside-left: 20px;
        	--global--spacing-outside-right: 20px;
        	--global--spacing-outside-bottom: 80px;
        
            /* horizontal */
            --global--spacing-inside-top-m: 22px;
            --global--spacing-inside-left-m:  24px;
            --global--spacing-inside-right-m: 24px;
            --global--spacing-inside-bottom-m:24px;
            
            --global--spacing-inside-top-s: 12px;
            --global--spacing-inside-left-s:  20px;
            --global--spacing-inside-right-s: 20px;
            --global--spacing-inside-bottom-s:12px;
            
            --global--spacing-inside-bottom-accordion: 20px;
            /* vertical */
            --global--spacing-inside-xll: 40px;
            --global--spacing-inside-xl:  32px;
            --global--spacing-inside-x:   30px;
            --global--spacing-inside-m:   34px;
            --global--spacing-inside-sm:  16px;
            --global--spacing-inside-s:   10px;
            --global--spacing-inside-xs:  8px;
            --global--spacing-inside-xss: 6px;
	    }
    } /* end max-width: 768.99px */
:root {
	/* Forms */

	--form--font-family: var(--global--font-secondary);
	--form--font-size: var(--global--font-size-lg);
	--form--line-height: var(--global--line-height-body);
	--form--color-text: var(--global--color-light-gray);
	--form--color-ranged: var(--global--color-secondary);
	--form--label-weight: 400;
	--form--border-color: var(--global--color-primary);
	--form--border-width: 1px;
	--form--border-radius: 0;
	

	/* Buttons top and bottom */
	--button--color-text: var(--global--color-pink);
	--button--color-text-hover: var(--global--color-primary);
	--button--color-text-active: var(--global--color-primary);
	--button--color-background: var(--global--color-white);
	--button--color-background-hover: var(--global--color-white);
	--button--color-background-active: var(--global--color-white);
	--button--font-family: var(--global--font-secondary-bold);
	--button--font-size: var(--global--font-size-lg);
	--button--font-weight: 600;
	--button--line-height: 100%;
	--button--border-width: 0;
	--button--border-radius: 0;
	--button--padding: 20px 32px 22px 32px;
	
	/* Buttons Static */
	--static-button--color-text: var(--global--color-white);
	--static-button--color-text-hover: var(--global--color-white);
	--static-button--color-text-active: var(--global--color-white);
	--static-button--color-background: var(--global--color-pink);
	--static-button--color-background-hover: var(--global--color-primary);
	--static-button--color-background-active: var(--global--color-primary);
	--static-button--font-family: var(--global--font-secondary-bold);
	--static-button--font-size: var(--global--font-size-lg);
	--static-button--font-weight: 600;
	--static-button--line-height: 100%;
	--static-button--border-width: 0;
	--static-button--border-radius: 0;
	--static-button--padding: 20px 32px 22px 32px;
}

@media only screen and (max-width: 768.99px) {
	    :root {
	        --button--padding: 16px 24px 18px 24px;
	        --static-button--padding: 16px 24px 18px 24px;
	    }
}

:root {
/*
	--button--padding-vertical: 15px;
	--button--padding-horizontal: calc(2 * var(--button--padding-vertical));
*/
	/* Main navigation */
	--primary-nav--font-family: var(--global--font-secondary);
	--primary-nav--font-family-mobile: var(--global--font-primary);
	--primary-nav--font-size: var(--global--font-size-md);

	--primary-nav--font-size-mobile: var(--global--font-size-sm);
	
	--primary-nav--font-size-button: var(--global--font-size-xs);
	--primary-nav--font-style: normal;

	--primary-nav--font-weight: normal;
	--primary-nav--font-weight-button: 500;
	--primary-nav--color-link: var(--global--color-primary);
	--primary-nav--color-link-hover: var(--global--color-primary-hover);
	--primary-nav--color-text: var(--global--color-primary);
	--primary-nav--padding: calc(0.66 * var(--global--spacing-unit));
	--primary-nav--border-color: var(--global--color-primary);


	/* Footer */
	--footer--color-text: var(--global--color-primary);
	--footer--color-link: var(--global--color-three);
	--footer--color-link-hover: var(--global--color-three);
	--footer--font-family: var(--global--font-secondary);
	--footer--font-size: var(--global--font-size-xl);
    --footer--color-background: var(--global--color-cyan-children);

	/* Block: Table */
	--table--stripes-border-color: var(--global--color-white);
	/*
	--table--stripes-background-color: var(--global--color-white);
	--table--has-background-text-color: var(--global--color-two);
	*/

	/* Admin-bar height */
	--global--admin-bar--height: 0px;
}

.admin-bar {
	--global--admin-bar--height: 32px;
}
@media only screen and (max-width: 782px) {

	.admin-bar {
		--global--admin-bar--height: 46px;
	}
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
	text-decoration-thickness: 1px;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}


/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
    font-size: 100%;
    margin: 0;
    padding: 16px 16px 16px 16px;
    font-size: 18px;
    width: 480px;
    border: none;
	margin: 0; 
	position: relative;
    top: 4.5px;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
	overflow: visible;
	color: #053214;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}


/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

.site-footer {
	padding-top: var(--global--spacing-vertical);
	padding-bottom: var(--global--spacing-vertical);
	margin-left: auto;
	margin-right: auto;
}

/**
 * Set the default maximum responsive content-width
 */

/**
 * Set the wide maximum responsive content-width
 */

/**
 * Set the full maximum responsive content-width
 */

/*
 * Block & non-gutenberg content wrappers
 * - Set margins
 */


.site-footer > *,
.widget-area > * {
	margin-top: 0;
	margin-bottom: 0;
}
@media only screen and (min-width: 482px) {

	.site-footer > *,
	.widget-area > * {
		margin-top: var(--global--spacing-vertical);
		margin-bottom: var(--global--spacing-vertical);
	}
}

/**
 * Reset specific elements to make them easier to style in other contexts.
 */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
form,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
	padding: 0;
	margin: 0;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

/**
 * Apply generic border-box to all elements.
 * See:
 * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
html {

	/* Apply border-box across the entire page. */
	box-sizing: border-box;
	font-family: var(--global--font-secondary);
	line-height: var(--global--line-height-body);
}

/**
 * Relax the definition a bit, to allow components to override it manually.
 */
*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	font-size: var(--global--font-size-base);
	font-weight: normal;
	color: var(--global--color-primary);
	text-align: left;
	background-color: var(--global--color-background);
}

button {
	cursor: pointer;
}


.clear:after,
.site-footer:after {
	clear: both;
}
textarea {
	width: 100%;
}

label {
	font-size: var(--form--font-size);
	font-weight: 400;
	margin-bottom: calc(var(--global--spacing-vertical) / 3);
}



input[type=checkbox] + label,
input[type=radio] + label {
	display: inline-block;
	padding-left: 10px;
	font-size: var(--global--font-size-xs);
	vertical-align: top;
}


input[type=range]::-ms-track {
	width: 100%;
	height: 6px;
	border-radius: 6px;
	border-width: 19px 0;
	border-color: var(--global--color-background);
	background: transparent;
	color: transparent;
	cursor: pointer;
}

input[type=range]::-ms-fill-upper {
	background: var(--form--color-ranged);
	border-radius: 6px;
}

input[type=range]::-ms-fill-lower {
	background: var(--form--color-ranged);
	border-radius: 6px;
}

input[type=range]::-ms-thumb {
	border: 3px solid var(--form--color-ranged);
	height: 44px;
	width: 44px;
	border-radius: 50%;
	background: var(--global--color-background);
	cursor: pointer;
}

fieldset {
	display: grid;
	border-color: var(--global--color-secondary);
	padding: var(--global--spacing-horizontal);
}

fieldset legend {
	font-size: var(--global--font-size-lg);
}

fieldset input[type=submit] {
	max-width: max-content;
}

fieldset input:not([type=submit]) {
	margin-bottom: var(--global--spacing-unit);
}

fieldset input[type=radio],
fieldset input[type=checkbox] {
	margin-bottom: 0;
}

fieldset input[type=radio] + label,
fieldset input[type=checkbox] + label {
	font-size: var(--form--font-size);
	padding-left: 0;
	margin-bottom: var(--global--spacing-unit);
}

::-moz-placeholder {
	opacity: 1;
}


embed,
iframe,
object,
video {
	max-width: 100%;
}

b,
strong {
	font-weight: 700;
}

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

pre {
	white-space: pre;
	overflow-x: auto;
}


a {
	cursor: pointer;
	color: var(--wp--style--color--link, var(--global--color-primary));
	text-underline-offset: 3px;
	text-decoration-skip-ink: all;
}

a:hover {
	text-decoration-style: dotted;
	text-decoration-skip-ink: none;
}


h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	clear: both;
}

h1 strong,
.h1 strong,
h2 strong,
.h2 strong,
h3 strong,
.h3 strong,
h4 strong,
.h4 strong,
h5 strong,
.h5 strong,
h6 strong,
.h6 strong {
	font-weight: 600;
}

h1,
.h1 {
    font-family: var(--global--font-primary);
	font-size: var(--heading--font-size-h1);
	letter-spacing: var(--heading--letter-spacing-h1);
	line-height: var(--heading--line-height-h1);
	text-transform: uppercase;
}

h2,
.h2 {
    font-family: var(--global--font-primary);
	font-size: var(--heading--font-size-h2);
	letter-spacing: var(--heading--letter-spacing-h2);
	line-height: var(--heading--line-height-h2);
}

h3,
.h3 {
    font-family: var(--global--font-secondary);
    font-weight: 400;
	font-size: var(--heading--font-size-h3);
	letter-spacing: var(--heading--letter-spacing-h3);
	line-height: var(--heading--line-height-h3);
}

h4,
.h4 {
    font-family: var(--global--font-secondary);
    font-weight: 400;
	font-size: var(--heading--font-size-h4);
	letter-spacing: var(--heading--letter-spacing-h4);
	line-height: var(--heading--line-height-h4);
}

h5,
.h5 {
    font-family: var(--global--font-secondary-bold);
    font-weight: 600;
	font-size: var(--heading--font-size-h5);
	letter-spacing: var(--heading--letter-spacing-h5);
	line-height: var(--heading--line-height-h5);
}

h6,
.h6 {
    font-family: var(--global--font-primary);
    font-weight: 600;
	font-size: var(--heading--font-size-h6);
	letter-spacing: var(--heading--letter-spacing-h6);
	line-height: var(--heading--line-height-h6);
}

p {
    font-family: var(--global--font-secondary);
    font-weight: 400;
    font-size: var(--global--p-size);
    line-height: var(--paragraph--line-height-p);
    color: var(--global--color-secondary);
}

.btn {
    color: var(--button--color-text);
    background: var(--button--color-background);
    padding: var(--button--padding);
    font-family: var(--button--font-family);
    font-size: var(--button--font-size);
    line-height: var(--button--line-height);
    font-weight: var(--button--font-weight);
    border: none;
    border-width: var(--button--border-width);
    border-radius: var(--button--border-radius);
}

.btn:hover, .btn:active {
    color: var(--button--color-text-hover);
    background: var(--button--color-background-hover);
}

.btn-pink {
    color: var(--static-button--color-text);
    background: var(--static-button--color-background);
    padding: var(--static-button--padding);
    font-family: var(--static-button--font-family);
    font-size: var(--static-button--font-size);
    line-height: var(--static-button--line-height);
    font-weight: var(--static-button--font-weight);
    border: none;
    border-width: var(--static-button--border-width);
    border-radius: var(--static-button--border-radius);
}

.btn-bottom {
    box-shadow: 0px 8px 12px 0px #BF1A1E40;
    background: #DF2A2F;
}

.btn-pink:hover, .btn-pink:active {
    color: var(--static-button--color-text-hover);
    background: var(--static-button--color-background-hover);
}


.wp-block-image {
	text-align: center;
}

.wp-block-image figcaption {
	color: var(--global--color-primary);
	font-size: var(--global--font-size-xs);
	line-height: var(--global--line-height-body);
	margin-top: calc(0.5 * var(--global--spacing-unit));
	margin-bottom: var(--global--spacing-unit);
	text-align: center;
}

.wp-block-image .alignright {
	margin-left: var(--global--spacing-horizontal);
}

.wp-block-image .alignleft {
	margin-right: var(--global--spacing-horizontal);
}

.wp-block-image a:focus img {
	outline-offset: 2px;
}


.primary-navigation .primary-menu > .menu-item:hover > a {
	color: var(--primary-nav--color-link-hover);
}


header *,
footer * {
	max-width: none;
}

html,
body,
div,
header,
nav,
figure,
hr,
section,
footer {
	max-width: none;
}


.green-adults {
    background-color: var(--global--color-green-adult);
}
.cyan-childrens {
    background-color: var(--global--color-cyan-children);
}
.margin-outside-bottom {
    margin-bottom: var(--global--spacing-outside-bottom);
}

.margin-inside-bottom-xl {
    margin-bottom: var(--global--spacing-inside-xl);
}
.margin-inside-bottom-m {
    margin-bottom: var(--global--spacing-inside-m);
}
.margin-inside-bottom-sm {
    margin-bottom: var(--global--spacing-inside-sm);
}
.margin-inside-bottom-xs {
    margin-bottom: var(--global--spacing-inside-xs);
}
.spacing-inside-bottom-m {
    margin-bottom: var(--global--spacing-inside-bottom-m);
}
#nav-and-section-part-wrapper {
    display: flex;
}
#marathon-navigation {
    width: 280px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#open-side-menu {
    display: none;
    position: fixed;
}

#menu-side-block {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#menu-side-block nav {
    position: sticky;
    top: 0;
    padding: 32px 0 0 48px;
    margin-right: 1px;
    max-height: 100vh;
    overflow-x: hidden;
}

#menu-side-block nav::-webkit-scrollbar {
    width: 4px;
    background-color: transparent !important;
    box-shadow: none;
}

#menu-side-block nav::-webkit-scrollbar-track {
    background-color: transparent !important;
    border: none;
}

#menu-side-block nav::-webkit-scrollbar-thumb {
    width: 4px;
    border-radius: 18px;
    background-color: #8EDD11;
    box-shadow: none;
}

#menu-side-block .nav-top-logo {
    margin-bottom: 20px;
}

#menu-side-block nav h5 {
    margin-top: 12px;
    margin-bottom: 12px;
}

#menu-side-block nav ul {
    padding-left: 17px;
    list-style: none;
}

#menu-side-block nav li {
    line-height: 150%;
    margin-bottom: 8px;
}

#menu-side-block nav .additional-info-link {
    margin-top: 32px;
    padding-left: 0;
    padding-bottom: 50px;
}

#menu-side-block nav a {
    text-decoration: none;
}

#menu-side-block nav a:hover {
    text-decoration: underline;
    color: var(--global--color-pink);
}

#menu-side-block nav a.active {
    text-decoration: underline;
    color: var(--global--color-pink);
}

#menu-side-block nav .additional-info-link a {
    color: var(--global--color-primary);
    text-decoration: underline;
}

#menu-side-block nav .additional-info-link a:hover {
    color: var(--global--color-primary);
}

#menu-side-block nav .nav-bottom-vk {
    margin-right: 19px;
}

#menu-side-block nav .socials {
    margin-top: 32px;
}


#marathon-sections {
    width: calc(100% - 280px);
    padding-top: var(--global--spacing-outside-top);
    padding-left: var(--global--spacing-outside-left);
    padding-right: var(--global--spacing-outside-right);
    padding-bottom: var(--global--spacing-outside-bottom);
    border-left: 1px solid rgba(225, 239, 196, 1);
}
.color-white {
    color: var(--global--color-white);
}
.color-pink {
    color: var(--global--color-pink);
}
.color-2 {
    color: var(--global--color-two);
}
.color-3 {
    color: var(--global--color-three);
}
.color-5 {
    color: var(--global--color-five);
}

.color-3.secondary {
   margin-top: 30px; 
}

.progress-bar {
    position: fixed;
    left: 0;
    bottom: 0;
    height: 12px; 
    width: 0%;
    background: var(--global--color-pink); 
    background: repeating-linear-gradient( 110deg, #F54B50, #F54B50 7px, #AAF532 10px, #AAF532 20px);
    z-index: 999999;
}
.progress-bar::after {
    display: block;
    content: ' ';
    position: absolute;
    left: 100%;
    bottom: 0;
    height: 12px;
    width: 100vw;
    background: var(--global--color-base-green);
    z-index: 1;
}

/* 01 S */
#slider-bg {
    overflow: hidden;
}
#slider-composition {
    background: url('assets/images/01-slider/1_MAIN_BG.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    height: 90vh;
    max-height: 1160px;
    min-height: 880px;
    overflow:hidden;
}

#slider-composition .slider-composition-inner {
    height: 97%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

#slider-composition  .slider-composition-text-svg.desctop {
        display: inline-block;
    }
    #slider-composition  .slider-composition-text-svg.mobi {
        display: none;
    }

#slider-composition .slider-composition-button {
    margin-top: 80px;
}

#slider-composition .slider-composition-text-svg {
    width: 100%;
    height: auto;
}

#slider-composition .slider-composition-center-text {
    position: relative;
}

#slider-composition .slider-composition-sticker-left-bottom {
    position: absolute;
    left: -10%;
    top: 105%;
    max-width: 190px;
}


#slider-composition .slider-composition-sticker-right-top {
    position: absolute;
    position: absolute;
    right: -25%;
    top: -25%;
    max-width: 177px;
}

#slider-composition .slider-composition-sticker-right-bottom {
    position: absolute;
    top: 110%;
    right: -9%;
    max-width: 200px;
}

#slider-composition .slider-composition-sticker-left-bottom img, #slider-composition .slider-composition-sticker-right-top img, #slider-composition .slider-composition-sticker-right-bottom img {
    width: 100%;
    height: auto;
}

#block-01-intro-slider .centered-canvas {
    position: relative;
    margin-top: -80px;
}
#canvas {
    max-height: 80px;
}

/* 02 S */
.text-media-wrap {
    display: flex;
    flex-direction: row;
}
.text-media-wrapper-1 {
    width: 50%;
    padding-right: 20px;
}
.text-media-wrapper-2 {
    width: 50%;
    max-width: 750px;
    padding-left: 40px;
}

.text-media-h3 {
    padding-bottom: var(--global--spacing-inside-sm);
}

#block-02-text-media .text-media-area img {
    width: 100%;
    height: auto;
    max-width: 2560px;
}

/* 03 S */
.route-h3 {
    max-width: 1155px;
    max-width: 63%;
}

.accordion .accordion-item {
    padding-top: var(--global--spacing-inside-top-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: var(--global--spacing-inside-bottom-accordion);
}

.accordion button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  padding-left: 0;
  color: rgba(39, 39, 38, 1);
  border: none;
  background: none;
  outline: none;
}
.accordion button span {
  color: rgba(39, 39, 38, 1);
}
.accordion button:hover, .accordion button:focus {
  cursor: pointer;
}
.accordion button:hover span {
  color: var(--global--color-pink);
}

.accordion button[aria-expanded=true]:hover span {
  color: rgba(39, 39, 38, 1);
}


.accordion button:hover::after, .accordion button:focus::after {
  cursor: pointer;
  color: #03b5d2;
  border: 1px solid #03b5d2;
  
}
.accordion button .accordion-title {
  color: rgba(39, 39, 38, 1);
}

.accordion button .icon {
    display: inline-block;
    position: absolute;
    top: 4px;
    right: calc(var(--global--spacing-inside-s) - 2*var(--global--spacing-inside-s));
    padding: 0;
    width: 48px;
    height: 48px;
    background: var(--global--color-white);
}
.accordion button .icon::before {
    display: block;
    position: absolute;
    content: "";
    top: 24px;
    left: 12px;
    width: 24px;
    height: 1px;
    background: currentColor;
}
.accordion button .icon::after {
    display: block;
    position: absolute;
    content: "";
    top: 12px;
    left: 24px;
    width: 1px;
    height: 24px;
    background: currentColor;
}

.accordion button[aria-expanded=true] .icon::after {
  width: 0;
}
.accordion button[aria-expanded=true] + .accordion-content {
  opacity: 1;
  max-height: 170vh;
  width: 100%;
  transition: all 200ms linear;
  will-change: opacity, max-height;
}
.accordion .accordion-content {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity 200ms linear, max-height 200ms linear;
  will-change: opacity, max-height;
}
.accordion .accordion-content .inner {
  margin: var(--global--spacing-inside-m) 0 var(--global--spacing-inside-s) 0;
}

.route-age-wrapper {
    overflow: hidden;
}
.route-sub-title-btn-block.inner {
    display: flex;
}

.route-sub-title {
    width:50%;
}
.route-sub-title img {
    margin-right: 17px;
}
.route-sub-title h2 {
    padding-left: 99px;
}

.route-sub-cart {
    width: 50%;
    text-align: right;
}

.route-sub-cart img {
    width: 90%;
    height: auto;
    max-width: 696px;
}

/* camping */
.camping-wrapper {
 /*   overflow: hidden; */
}

#block-camping .accordion .accordion-content {
   overflow: visible; 
   display: grid;
}

#block-camping .location-right-block {
    margin-right: -20px;
}

.camping-sub-title-btn-block.inner {
    display: flex;
}

.camping-sub-title {
    width:50%;
}

.camping-sub-title img {
    margin-right: 17px;
}

.camping-plan-img {
    overflow: hidden;
    width: 100%;
}

.camping-plan-img img {
    width: 100%;
    height: auto;
    max-width: 850px;
}

.camping-sub-title h2 {
    padding-left: 99px;
}

.camping-sub-cart {
    width: 50%;
    text-align: right;
}

.camping-sub-cart img {
    width: 90%;
    height: auto;
    max-width: 696px;
}

#block-camping .accordion-item {
    border: 1px solid rgba(225, 239, 196, 1);
}

#block-camping .accordion-item:not(:first-child) {
    margin-top: -1px;
}

.camping-p {
    font-size: 16px;
    padding-top: 24px;
}

.camping-p-first-child {
    padding-bottom: 16px;
}

#block-camping h4 {
    padding-bottom: 16px;
}

.camping-ul {
   padding-bottom: 24px; 
}

/* 04 S */
#location-blocks-wrapper {
    display: flex;
}
.location-left-block, .location-right-block {
    width: 50%;
}
.location-right-block {
    max-height: 600px;
    margin-left: 40px;
}
.location-right-block-map-inner iframe {
    width: 100%;
    height: 515px;
}
.location-left-block-coord-title {
    position: relative;
    padding-top: var(--global--spacing-inside-top-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: var(--global--spacing-inside-bottom-accordion);
}
.location-left-block-coord-title-text h2.color-2 {
    margin-bottom: 8px;
}
.location-left-block-coord-title-img {
    position: absolute;
    right: 23px;
    top: 20px;
    width: 57px;
    height: 100%;
}
.location-left-block-coord-title-img img {
    max-width: 57px;
    height: auto;
}
#location-accordion .accordion-item {
    border: 1px solid rgba(225, 239, 196, 1);
}

#location-accordion .accordion-item:not(:first-child) {
	margin-top: -1px;
}

#location-accordion .accordion-content p {
    font-size: 16px;
}
#location-accordion .accordion-content p:first-child {
    margin-top: -16px;
}
#location-accordion .accordion-content p:not(:first-child) {
    padding-top: 24px;
}

/* 05 S */

#timetable {
    display: flex;
    flex-direction: column;
}

.timetable-stub {
    flex: 1;
    text-align: center;
    background: rgba(239, 243, 231, 1);
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: var(--global--spacing-inside-left-m);
}

.timetable-h-column {
    display: block;
    width: 36%;
    padding-top: 20px;
    padding-right: 20px;
}

.timetable-h-column h5 {
    margin-bottom: 24px;
}

.timetable-table-column {
    /*
    display: block;
    width: 70%;
    */
    display: flex;
    align-items: start;
    border-top: 1px solid rgba(225, 239, 196, 1);
}

#timetable table {
    width: 100%;
    font-size: 20px;
    line-height: 30px;
    /*
    line-height: 150%;
    */
    table-layout: fixed;
    /*
    border-bottom: 1px solid rgba(225, 239, 196, 1);
    */
}

#timetable table tr  {
    border-top: 1px solid rgba(225, 239, 196, 1);
    
}

#timetable table td  {
  /*  border-top: 1px solid rgba(225, 239, 196, 1); */
    padding-top: 20px;
    padding-bottom: 20px;
}

#timetable table tr:first-child td {
    border-top: none;
}

#timetable .time {
    font-weight: 600;
    vertical-align: baseline;
    width: 30%;
    max-width: 30%;
}

#timetable .time-action {
    text-align: left;
    width: 70%;
    padding-left: 10px;
}

.timetable-column-self {
    padding-bottom: 20px;
}

/* 06 S */

#registration .first-row-wrapper {
    display: flex;
    background: rgba(170, 245, 50, 1);
    min-height: 400px;
 }
 .left-column-registrtion, .right-column-registrtion {
    width: 50%;
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: var(--global--spacing-inside-bottom-accordion);
 }
 .left-column-registrtion {
    background: url('assets/images/06-registration/Vector.svg');
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
 }
 .right-column-registrtion button {
    margin-top: 40px;
    width: 100%; 
 }
 
 /* 06.2 S */
 
#registration  .second-row-wrapper {
    display: flex;
}
#registration .second-row-wrapper-left-column, #registration .second-row-wrapper-right-column {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: 80px;
    border: 1px solid rgba(225, 239, 196, 1);
}

#registration .second-row-wrapper-left-column, #registration .second-row-wrapper-right-column {
    width: 50%;
}

 #registration .second-row-wrapper-right-column {
     border-left: none;
 }


#registration  .second-row-wrapper p {
    padding-top: var(--global--spacing-inside-left-m);
}
 
 /* 06.3 S */
#registration .third-row-wrapper {
    background: var(--global--color-pink);
    display: flex;
}
#registration .third-row-wrapper .color-white {
    font-family: 'Work Sans Bold';
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 150%;
}

#registration .third-row-wrapper .third-row-wrapper-left-column {
    margin-right: 40px;
}
#registration .third-row-wrapper .third-row-wrapper-right-column {
    width: 80%;
    display: inline-flex;
    align-items: center;
}

/* 08 S */
#rules .first-row-wrapper, #rules .second-row-wrapper, #rules .third-row-wrapper, #rules .fourth-row-wrapper {
    display: flex;
}
#rules .first-row-wrapper-left-column, #rules .second-row-wrapper-right-column, #rules .third-row-wrapper-left-column, #rules .third-row-wrapper-right-column {
    width: 50%;
}
#rules .first-row-wrapper-right-column {
    background: url('assets/images/08-rules/IMG-block-Def-01-NEW.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 50%;
}
#rules .second-row-wrapper-left-column {
    background: url('assets/images/08-rules/Карта-забега-1.png');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 50%;
}

#rules .first-row-wrapper-left-column, #rules .second-row-wrapper-right-column, #rules .third-row-wrapper-left-column, #rules .third-row-wrapper-right-column {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom:var(--global--spacing-inside-left-m);
}

#rules .fourth-row-wrapper {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom:var(--global--spacing-inside-left-m);
}
#rules .fourth-row-wrapper-left-column {
    width: 70%;
}
#rules .fourthrow-wrapper-right-column {
    width: 30%;
    text-align: right;
}

#rules .first-row-wrapper-left-column h2, #rules .second-row-wrapper-right-column h2 {
    padding-bottom: var(--global--spacing-inside-left-m);
}

#rules .first-row-wrapper-left-column h4, #rules .second-row-wrapper-right-column h4, #rules .third-row-wrapper-right-column h4, #rules .third-row-wrapper-right-column ul,
#rules .middle-text {
    padding-bottom: 16px;
}

#rules .fourth-row-wrapper p {
    padding-top:24px;
}
#rules p {
    font-size: 16px;
}
ul {
    padding-left: 20px;
    font-weight: 400;
    line-height: 150%;
}
/* 09 S */
#bag .first-row-wrapper, #bag .second-row-wrapper {
    display: flex;
}
#bag .first-row-wrapper-left-column, #bag .first-row-wrapper-right-column, #bag .second-row-wrapper-left-column {
    width: 50%;
}   

#bag .second-row-wrapper-right-column {
    background: url('assets/images/09-member-bag/img-t-shirt-2025_NEW-2.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 50%;
}

#bag .first-row-wrapper-left-column, #bag .first-row-wrapper-right-column, #bag .second-row-wrapper-left-column {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom:var(--global--spacing-inside-left-m);
}

#bag .second-row-wrapper-left-column {
        border: 1px solid rgba(225, 239, 196, 1);
}
#bag .second-row-wrapper-left-column h2 {
    padding-bottom: var(--global--spacing-inside-left-m);
}
#bag .first-row-wrapper-left-column h1 {
    font-size: 128px;
    white-space: nowrap;
}
#bag p {
    font-size: 16px;
}

#bag h4 ul {
   padding-top: 24px; 
   padding-left: 25px;
}

#bag .first-row-wrapper-right-column p {
    padding-top: 24px;
    padding-bottom: 16px;
}

#bag .second-row-wrapper-left-column .middle-text {
    padding-top: 24px;
    padding-bottom: 16px;
}

#bag .first-row-wrapper-right-column p.padding-8lg {
    padding-top: 8px;
}
    
/* 10 S */
.results-row-wrapper {
    display: flex;
}
.results-h3 {
    max-width: 63%;
}

.results-row-wrapper-left-column, .results-row-wrapper-right-column {
    display: flex;
    flex-direction: column;
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom: 60px;
    border: 1px solid rgba(225, 239, 196, 1);
    flex-grow: 1;
}
.results-row-wrapper-right-column {
    border-left: none;
}
#results .results-row-wrapper-left-column h2, #results .results-row-wrapper-right-column h2 {
    padding-bottom: var(--global--spacing-inside-left-m);
}

#results .results-row-wrapper-left-column p, #results .results-row-wrapper-right-column p {
    font-size: 16px;
    padding-bottom: 12px;
    margin-top: auto;
}

#results .results-row-wrapper-left-column button, #results .results-row-wrapper-right-column button {
    margin-top: 52px;
    width: 100%;
    max-width: 350px;
}

/* 11 - S */
#program {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
}

#program .first-row-wrapper, #program .middle-row-wrapper, #program .third-row-wrapper {
    width: 33.3333%;
}

#program .first-row-wrapper-top-column, #program .middle-row-wrapper-bottom-column, #program .third-row-wrapper-top-column {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom:var(--global--spacing-inside-left-m);
    min-height: 550px;
}

#program .first-row-wrapper-bottom-column {
    background: url('assets/images/11-program/IMG-block-RP-01_NEW.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 550px;
}
#program .middle-row-wrapper-top-column {
    background: url('assets/images/11-program/img_program_2-kids.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 550px;
}

#program .third-row-wrapper-bottom-column {
    background: url('assets/images/11-program/IMG-block-RP-03_NEW.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 550px;
}
#program h2 {
    padding-bottom: 20px;
}
#program p {
    font-size: 16px;
}
#program .first-row-wrapper-top-column .m-text {
    padding-bottom: 12px;
}

/* 14 - S */
#quiz {
    
}
#quiz .quiz-row-wrapper {
    display: flex;
    background-color: rgba(18, 81, 39, 1);
}

.quiz-left-column, .quiz-right-column {
    width:50%;
    min-height: 450px;
}

.quiz-left-column {
    background: url('assets/images/14-quiz/Frame 91.svg');
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
}

.quiz-right-column {
    padding-top: var(--global--spacing-inside-left-m);
    padding-left: var(--global--spacing-inside-left-m);
    padding-right: var(--global--spacing-inside-right-m);
    padding-bottom:var(--global--spacing-inside-left-m);
}

.quiz-bottom-bg-row {
    width: 100%;
  /*  min-height: 680px; */
}

.quiz-img {
    width: 100%;
    height: auto;
}
#quiz h4 {
    padding-bottom: var(--global--spacing-inside-left-m);
}
#quiz p {
    font-size: 16px;
}
#quiz .middle-text {
   margin-bottom: 16px; 
}

/* 12 S */
#owners .row-wrapper {
    display: flex;
}
#owners .row-inner {
    width: 100%;
    padding: 60px;
    text-align: center;
    border: 1px solid rgba(225, 239, 196, 1);
}
#owners .row-inner img {
    margin-bottom: var(--global--spacing-inside-left-m);
}

/* 13 S */
.section-partners {
    display: grid;
    margin-right: 1px;
}
#partners .row-wrapper, #partners-previous .row-wrapper, #infopartners .row-wrapper {
    display: flex;
    flex-wrap: wrap;
}
#partners-current .row-wrapper {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
}

#partners .row-inner, #partners-previous .row-inner, #infopartners .row-inner {
    width: 50%;
    padding: 60px;
    text-align: center;
    border: 1px solid rgba(225, 239, 196, 1);
    flex: 1 0 18%;
    margin-left: -1px;
    margin-top: -1px;
}

#partners .row-inner {
    border-bottom: none;
}

 #partners-current .row-inner {
    width: 50%;
    padding: 60px;
    text-align: center;
    border: 1px solid rgba(225, 239, 196, 1);
    flex: 1 0 50%;
    margin-left: -1px;
    margin-top: -1px;
    align-items: center;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

#infopartners .row-inner
{
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 3.8%;
    padding-right: 3.8%;
}
#partners .row-inner.splat {
    width: 100%;
    margin-bottom: -1px;
}
#partners .row-inner img {
    margin-bottom: var(--global--spacing-inside-left-m);
}

#partners-current .row-inner img {
    margin-bottom: var(--global--spacing-inside-left-m);
}

#partners-previous .row-inner img, #infopartners .row-inner img, #partners-current .row-inner img  {
    max-width: 100%;
}

#partners .row-inner img, #partners-current .row-inner img {
    transform: scale(1);
    transition: transform .3s;
}

#partners:hover .row-inner img, #partners-current .row-inner:hover img {
    transform: scale(1.12);
}

/* 14 S */
#block-15-quiz-form {
    background-color: rgba(170, 245, 50, 1);
    position: relative;
    z-index: 99;
}

#quiz-form-top-line {
    position: relative;
    height: 80px;
    z-index: 9;
    overflow: hidden;
}

#quiz-form-top-line img {
  
}
#quiz-form {
    background: url('assets/images/15-quiz-form/bg-img-pink-svg.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    height: auto;
    max-height: 750px;
    min-height: 680px;
    overflow: hidden;
}

#quiz-form .wpcf7-list-item {
    display: inline-block;
    margin: 0;
}
#quiz-form .for-centered {
    display: grid;
    width: min-content;
    margin: 0 auto;
    position:relative;
    top: 45px;
}
.quiz-form-h2 {
    text-align: center;
    margin-bottom: 20px;
}
#form-delimiter {
    margin-bottom: 40px;
}
#quiz-form  .quiz-btn {
    width: calc(100% - 80px);
    cursor: pointer;
    margin: 0 auto;
    display: block;
    position: relative;
    top: 55px;
    margin-top: 40px;
}
#quiz-form .wpcf7 form .wpcf7-response-output {
    display: none;
}

/* input */
form.wpcf7-form p {
  line-height: 100%;
}

form.wpcf7-form p label {
  width: 100%;
  position: relative;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
}

form.wpcf7-form p a {
  color: #fff;
  font-size: 14px;
}

form.wpcf7-form p label span.formlabel  {
  position: absolute;
  top: 37px;
  z-index: 10;
  left: 15px;
  white-space: nowrap;
  color: #7D847F;
  font-size: 18px;
}

form.wpcf7-form p label:focus-within span.formlabel {
  top: 19px;
  font-size: 13px;
}

#get-lucky {
    margin-top: 0;
    position: absolute;
    left: 0;
    top: 25%;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
#get-lucky .lucky-inner {
    text-align: center;
}
#get-lucky .lucky-inner h4 {
    padding: 0 24px 0 24px;
}

/* additional new img block */
.lucky-partners {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-around;
}

.form-control {
 
}
INPUT[type=checkbox]:focus
{
    outline: 1px solid rgba(0, 0, 0, 0.2);
}

INPUT[type=checkbox]
{
    background-color: transparent;
    border: none;
    border-radius: 0;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 8px;
    height: 8px;
    cursor: pointer;
    position: relative;
    top: -1px;
    margin-right: 8px;
    margin-left: 4px;
}

INPUT[type=checkbox]:after {
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 2px;
    border-color: white;
    display: block;
    width: 16px;
    height: 16px;
    z-index: 1;
    margin-left: -16px;
    top: -4px;
    left: 12px;
    border-radius: 4px;
}

INPUT[type=checkbox]:checked
{
  /* background-color: rgba(255,255,255,95); */
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='chartreuse' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='none'/%3e%3crect width='8' height='8' rx='1' fill='white'/%3e %3c/svg%3e");
    
} 
input[name=term_and_conditions] {
    opacity: .5 !important;
}
.wpcf7-not-valid {
    background: rgba(255, 255, 255, .75);
}
#quiz-form .wpcf7-not-valid-tip {
    color: #fff !important;
    position: absolute;
    margin-top: 3px;
    margin-left: 15px;
    width: 100%;
    height: 15px;
    left: 0;
    display: flex;
}
.wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
/*   */
.color-red {
    color: #DC392D !important;
}
/*   */

.wpcf7-spinner {
    display: none !IMPORTANT;
}
/* footer - contacts */
#contacts {
    position: relative;
    margin-top: 96px;
    margin-bottom: -140px;
    display: flex;
    width: 100%;
    background: var(--global--color-cyan-children);
    padding: var(--global--spacing-inside-m) var(--global--spacing-inside-m) calc(2 * var(--global--spacing-inside-m)) var(--global--spacing-inside-m);
    z-index: 99;
}

#contacts .contacts-left-column, #contacts .contacts-right-column {
    display: inline-flex;
    width: 50%;
}

#contacts .contact-h-2 {
    padding-right: 40px;
}

#contacts .contacts-right-column {
    padding-left: 20px;
}


#contacts a {
    color: rgba(18, 81, 39, 1);
    text-decoration: none;
    white-space: nowrap;
}
#contacts a:hover  {
    color: rgba(18, 81, 39, 1);
    text-decoration: none;
}

#contacts a span {
    position: relative;
    top: -12px;
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 140%;
    color: rgba(18, 81, 39, 1);
    padding-left: 16px;
}
#contacts a:hover span {
    color: rgba(18, 81, 39, 1);
    text-decoration: underline;
}

#contacts .socials.social-vk{
    margin-bottom: 24px;
}

/* bottom btn */
#static-bottom-button {
    position:fixed;
    bottom: 75px;
    right: 64px;
    height: 62px;
}
.btn-pink {
    width: 271px;
}

.suggestions-wrapper {
    color: var(--global--color-primary) !important;
}


#block--history-gallery .history-video-container {
    margin-bottom: 80px;
    width: 100%;
    text-align: center;
}

/* Swiper */
 swiper-container {
    width: 100%;
    height: 100%;
    z-index: 0;
}

swiper-slide {
    /*
    flex-shrink: 1; */
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto !important;
    max-height: 500px;
    cursor: grab;
}

swiper-slide img {
    display: block;
    width: auto;
    height: 100%;
    object-fit: cover;
    max-height: 500px;
}
    
swiper-container {
    margin-left: auto;
    margin-right: auto;
}
    
.swiper-lazy-preloader {
    z-index: -1 !important;
}
    
/*Animate for nav */
@keyframes grow0 {
    from {
        width: 0%;
    }
    to {
        width: 254px;
    }
} 
#marathon-navigation .bg-close {
    display: none;
}
@media only screen and (max-width: 1850px) {
    #quiz-form {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: top center;
    }
}

@media only screen and (max-width: 2100px) {
    #slider-composition {
        margin-bottom: 70px;
    }
    /* 06 - 2100 */
    #registration .third-row-wrapper .third-row-wrapper-left-column {
        
    }
    #registration .third-row-wrapper .third-row-wrapper-right-column {
        width: 70%;
    }
    /* 14 - 1280*/
    .quiz-left-column {
        background-size: 120%;
        background-repeat: no-repeat;
    }
}

@media only screen and (max-width: 1300px) {
    /* Swiper tablet */
    swiper-slide, swiper-slide img {
        max-height: 330px; 
    }
}

@media only screen and (max-width: 1280px) {
    /* 01 */
    #slider-composition {
        height: 90vh;
        max-height: 768px;
        min-height: 700px;
    }
    #slider-composition .slider-composition-inner {
        height: 90%;
        padding-left: 90px;
        padding-right: 90px;
    }
    #slider-composition .slider-composition-text-svg {
        max-width: 780px;
    }
    #slider-composition .slider-composition-sticker-left-bottom {
        left: -10%;
        top: 110%;
        max-width: 150px;
    }
    #slider-composition .slider-composition-sticker-right-bottom {
        top: 114%;
        right: -11%;
        max-width: 190px;
    }
    #slider-composition .slider-composition-sticker-right-top {
        right: -21%;
        top: -17%;
        max-width: 131px;
    }
    
    
 /*   var(--global--color-pink); */
    /* 02 */
    .text-media-wrap {
        display: block;
    }
    .text-media-wrapper-1 {
        width: 100%;
        padding-right: 0;
    }
    .text-media-wrapper-2 {
        width: 100%;
        max-width: 100%;
        padding-left: 0;
    }
    /* 03 */
    .route-h3 {
        max-width: 100%;
    }
    
    /* 09 - 1280*/
    #bag .first-row-wrapper-left-column h1 {
        font-size: 90px;
    }
    #bag .first-row-wrapper-left-column h1 img {
        max-width: 95px;
    }
    
    /* 10 - 1280 */
    .results-h3 {
        max-width: 100%;
    }
    /* 11 - 1280 */
    #program {
        display: block;
    }

    #program .first-row-wrapper, #program .middle-row-wrapper, #program .third-row-wrapper {
        width: auto;
    }
    
    #program .first-row-wrapper-top-column, #program .middle-row-wrapper-bottom-column, #program .third-row-wrapper-top-column {
        width: 50%;
        min-height: auto;
    }
    #program .middle-row-wrapper, #program .first-row-wrapper, #program .third-row-wrapper {
        display: flex;
    }
    
    #program .first-row-wrapper-bottom-column, #program .middle-row-wrapper-top-column, #program .third-row-wrapper-bottom-column {
        max-width: 436px;
        max-height: 384px;
        width: 50%;
    }
    
    /* 14 - 1280*/
    .quiz-left-column {
        background: url('assets/images/14-quiz/Frame-91-mobi.svg');
        background-size: contain;
        background-repeat: no-repeat;
    }

    
}


@media only screen and (max-width: 1100px) {
    .timetable-table-column {
        display: block;
    }
    .timetable-h-column {
        width: 100%;
    }
    .timetable-h-mobile-fix-column {
        padding-bottom: 21px;
    }
}

@media only screen and (max-width: 1024px) {
     #nav-and-section-part-wrapper {
        display: block;
    }
    #marathon-navigation {
        display: none; 
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.35);
        z-index: 99990;
    }
    #marathon-navigation #bg-close {
        display: block;
        position: absolute;
        top: 0;
        left:0;
        width: 100%;
        height: 100%;
    }
    #menu-side-block nav {
        width: 254px;
    }
    .sidenav {
        height: 100%; 
        width: 0; /* 0 width - change this with JavaScript */
        position: fixed; 
        z-index: 99991; 
        top: 0; 
        right: 0;
        background: var(--global--color-white);
        overflow-x: hidden; 
        animation: grow0 0.5s forwards;
        transition:width 0.5s;
        -webkit-transition:width .5s;
        -moz-transition: width 0.5s;
    }
    #open-side-menu {
        display: block;
        top: 20px;
        right: 40px;
      /*  font-size: 32px;
        line-height: 100%;
        color: var(--global--color-white);
        background: var(--global--color-base-green);
        padding: 9px 16px 16px 16px; */
        z-index: 99;
    }
    
    #marathon-sections {
        width: 100%;
        border: none;
    }

    .color-3.secondary {
       margin-top: 14px; 
    }

    #registration .third-row-wrapper .third-row-wrapper-left-column {
       margin-right: 24px;
    }
    
    /* footer */
    #contacts .contact-h-2 {
        padding-bottom: var(--global--spacing-inside-m);
    }
	
}

@media only screen and (max-width: 768.99px) {
    #menu-side-block .nav-top-logo {
        max-width: 137.14px;
    }
    
    /* 01 */
    #slider-composition .slider-composition-inner {
        height: 95%;
        padding-left: 35px;
        padding-right: 35px;
    }
    #slider-composition .slider-composition-text-svg {
        max-width: 630px;
    }
    #slider-composition .slider-composition-sticker-right-top {
        right: -5%;
        top: -68%;
        max-width: 115px;
    }
    #slider-composition .slider-composition-sticker-left-bottom {
        left: -5%;
        top: 117%;
        max-width: 140px;
    }
    #slider-composition .slider-composition-sticker-right-bottom {
        top: 153%;
        right: -1%;
        max-width: 180px;
    }
    #slider-composition .slider-composition-button {
        margin-top: 50px;
    }

    /* 03 */
    .accordion button .icon {
        top: 0px;
    }
    .route-h3 {
        max-width: 100%;
    }
    .route-sub-title img {
        max-width: 61.5px;
    }
    .route-sub-title h2 {
        padding-left: 78.5px;
    }
    
    .route-sub-cart img {
        width: 95%;
    }
    
    /* camping - 768.99 */
    .camping-sub-title-btn-block.inner {
        display: block;
    }
    .camping-sub-title {
        width: 100%;
    }
    .camping-sub-cart {
        width: 100%;
        text-align: center;
        margin-top: 44px;
    }
    .camping-sub-cart img {
        width: 100%;
    }
    .camping-sub-title h2 {
        padding-left: 78.5px;
    }
    #block-camping .accordion .accordion-content {
        overflow: hidden;
    }
    .accordion button[aria-expanded=true] + .accordion-content {
        max-height: 150vh;
    }
    #block-camping .location-right-block {
        margin-top: 24px;
    }
    .camping-p {
        font-size: 14px;
    }
    
    /* 04 */
    #location-blocks-wrapper {
        display: block;
    }
    .location-left-block, .location-right-block {
        width: 100%;
    }
    .location-right-block {
        margin-top: 40px;
        max-height: 300px;
        margin-left: 0;
    }
    .location-right-block-map-inner iframe {
        height: 300px;
    }
    .location-left-block-coord-title-img {
        right: 12px;
    }
    #location-accordion .accordion-content p {
        font-size: 14px;
    }
    
    /* 05 */
    #timetable table {
        font-size: 16px;
        line-height: 24px;
    }
    
    /* 06 - 768.99*/
    #registration .first-row-wrapper {
        min-height: auto;
        padding-bottom: 15px;
    }
    #registration .third-row-wrapper .third-row-wrapper-left-column img {
        max-width: 118px;
    }
    #registration .third-row-wrapper .color-white {
        font-size: 16px;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 12px;
    }
    #registration .second-row-wrapper-left-column, #registration .second-row-wrapper-right-column {
        padding-bottom: 40px;
    }
    /* 08 - 768.99 */
    #rules p {
        font-size: 14px;
    }
    /* 09 - 768.99 */
    
    #bag .first-row-wrapper-left-column h1 {
        font-size: 64px;
    }
    #bag .first-row-wrapper-left-column h1 img {
        max-width: 80px;
        margin-left: 15px;
    }
    
    #bag p {
        font-size: 14px;
    }
    #bag .first-row-wrapper-right-column p {
        padding-top: 16px;
        padding-bottom: 12px;
    }
    
    #bag .second-row-wrapper-left-column .middle-text {
        padding-top: 16px;
        padding-bottom: 12px;
    }
    /* 10 - 768.99 */
    .results-row-wrapper-left-column, .results-row-wrapper-right-column {
        padding-bottom: 30px;
    }
    #results .results-row-wrapper-left-column p, #results .results-row-wrapper-right-column p {
        font-size: 14px;
    }
    #results .results-row-wrapper-left-column button, #results .results-row-wrapper-right-column button {
        margin-top: auto;
    }
    
    /* 11 - 768.99 */
    #program h2 {
        padding-bottom: 12px;
    }
    #program .first-row-wrapper .program-h-img {
        max-width: 82px;    
    }
    #program .middle-row-wrapper .program-h-img {
        max-width: 100px;    
    }
    #program .third-row-wrapper .program-h-img {
        max-width: 60px;    
    }
    #program p {
        font-size: 14px;
    }
    
    /* 14 - 768.99 */
    #quiz p {
        font-size: 14px;
    }
    #checkboxes-delimiter {
        padding: 5px;
    }

    /* additional new img block */
    .lucky-partners {
        flex-direction: column;
    }
    
    /* contacts */
    #contacts .socials.social-vk{
        margin-bottom: 12px;
    }
    
    
    /* footer */
    #contacts {
        margin-top: 64px;
        margin-bottom: -38px;
    }
    #contacts .contacts-right-column {
        padding-left: 0px;
    }
    #contacts .contact-h-2 {
    padding-right: 10px;
}

/* bottom button */
    #static-bottom-button {
        right: 20px;
        height: 62px;
        bottom: 30px;
    }
    .btn-pink {
       min-width: 10px;
        max-width: 230px;  
    }

}

@media only screen and (max-width: 627px) {
    .section-partners {
        display: block;
        margin-right: 0;
    }
    #partners-current .row-wrapper {
        display: block;
    }
    #partners-current .row-inner {
        width: 100%;
    }
}

@media only screen and (max-width: 600px) {
    /* 01 */
    #slider-composition {
        margin-bottom: 73px;
        max-height: 520px;
        min-height: 500px;
    }
    #slider-composition .slider-composition-inner {
        height: 97%;
        padding-left: 0;
        padding-right: 0;
    }
    #slider-composition  .slider-composition-text-svg.desctop {
        display: none;
    }
    #slider-composition  .slider-composition-text-svg.mobi {
        display: inline-block;
    }
    #slider-composition .slider-composition-sticker-left-bottom {
        left: -9%;
        top: 63%;
        max-width: 90px;
    }
    #slider-composition .slider-composition-sticker-right-bottom {
        top: 77.3%;
        right: -3.5%;
        max-width: 95px;
    }
    #slider-composition .slider-composition-sticker-right-top {
        right: 18%;
        top: -40%;
        max-width: 67px;
    }
    
    #slider-composition .slider-composition-button {
        margin-top: 38px;
        width: 100%;
        padding-left: 33px;
        padding-right: 33px;
    }
    #slider-composition .btn.btn-slider {
        width: 100%;
    }
    
    #canvas {
        max-height: 48px;
    }
    /* 03 */
    .route-sub-title-btn-block.inner {
        display: block;
    }
    .route-sub-title {
        width: 100%;
    }
    .route-sub-cart {
        width: 100%;
        text-align: center;
        margin-top: 44px;
    }
    .route-sub-cart img {
        width: 100%;
    }
    .accordion button .icon {
        top: -2px;
    }
    
    /* 06 - 600 */
    #registration .first-row-wrapper {
        flex-direction: column;
    }
    .left-column-registrtion {
        height: 156px;
    }
    .left-column-registrtion, .right-column-registrtion {
        width: 100%;
    }
    
    
    #registration .third-row-wrapper {
        
    }
    #registration .third-row-wrapper .third-row-wrapper-left-column {
        
    }
    #registration .third-row-wrapper .third-row-wrapper-right-column {
        width: 55%;
    }
    
    /* 06.2 - 600 */
    #registration .second-row-wrapper {
        flex-direction: column;
    }
    #registration .second-row-wrapper-right-column {
        border: 1px solid rgba(225, 239, 196, 1);
        border-top: none;
    }

    #registration .second-row-wrapper-left-column, #registration .second-row-wrapper-right-column {
        width: auto;
    }
    /* 08 - 600 */
    #rules .first-row-wrapper, #rules .second-row-wrapper, #rules .third-row-wrapper, #rules .fourth-row-wrapper {
        flex-direction: column;
    }
    
    #rules .fourth-row-wrapper-left-column {
        width: 100%;
    }
    #rules .fourthrow-wrapper-right-column {
        display: none;
    }
    #rules .first-row-wrapper-left-column, #rules .second-row-wrapper-right-column, #rules .third-row-wrapper-left-column, #rules .third-row-wrapper-right-column {
        width: 100%;
    }
    
    #rules .first-row-wrapper-right-column, #rules .second-row-wrapper-left-column {
        width: 100%;
        height: 240px;
    }
    #rules .second-row-wrapper {
        display: inline-flex;
        flex-direction: column-reverse;
    }
    
    /* 09 - 600 */
    #bag .first-row-wrapper, #bag .second-row-wrapper {
       flex-direction: column;
    }
    #bag .first-row-wrapper-left-column, #bag .first-row-wrapper-right-column, #bag .second-row-wrapper-left-column {
        width: 100%;
    }
    #bag .second-row-wrapper-right-column {
        height: 240px;
        width: 100%;
    }
    
    /* 10 - 600 */
    .results-row-wrapper {
        flex-direction: column;
    }
    .results-row-wrapper-right-column {
        border: 1px solid rgba(225, 239, 196, 1);
        border-top: none;
    }
    #results .results-row-wrapper-left-column button, #results .results-row-wrapper-right-column button {
        margin-top: 15px;
    }
    
    /* 11 - 600 */
    #program .middle-row-wrapper, #program .first-row-wrapper, #program .third-row-wrapper {
        display: block;
    }
    #program .first-row-wrapper-bottom-column, #program .middle-row-wrapper-top-column, #program .third-row-wrapper-bottom-column {
        max-width: 100%;
        max-height: 250px;
        width: 100%;
        min-height: 280px;
    }
    
    #program .first-row-wrapper-top-column, #program .middle-row-wrapper-bottom-column, #program .third-row-wrapper-top-column {
        width: 100%;
        min-height: auto;
    }
    
    #program .middle-row-wrapper {
        display: inline-flex;
        flex-direction: column-reverse;
    }
    
    /* 14 - 600 */
    #quiz .quiz-row-wrapper {
        display: block;
    }
    
    .quiz-left-column, .quiz-right-column {
        width: 100%;
        min-height: auto;
    }
    .quiz-left-column {
        min-height: 280px;
    }
    
    /* 12 - 600 */
    #owners .row-wrapper {
        display: block;
    }
    #owners .row-inner {
        width: 100%;
        padding: 40px 25px;
    }
    #owners .row-inner:not(:first-child) {
        margin-top: -1px;
    }
    /* 13 - 600 */
    #partners .row-wrapper, #partners-previous .row-wrapper, #partners-current .row-wrapper {
        display: block;
    }
    #infopartners .row-wrapper{
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
    }
    #partners .row-inner, #partners-previous .row-inner, #partners-current .row-inner {
        width: 100%;
        padding: 40px 25px;
    }
    #infopartners .row-inner {
        min-width: 65%;
        margin: 0 !important;
        padding: 6%;
        border-left: none;
        scroll-snap-align: start;
    }
    #infopartners .row-inner:first-child {
        border-left: 1px solid rgba(225, 239, 196, 1);
    }
    #partners .row-inner:not(:first-child), #partners-previous .row-inner:not(:first-child),
    #infopartners .row-inner:not(:first-child), #partners-current .row-inner:not(:first-child) {
        margin-top: -1px;
    }
    
    #infopartners .row-wrapper::-webkit-scrollbar {
        height: 2px;
        background-color: transparent !important;
        box-shadow: none;
    }
    
    #infopartners .row-wrapper::-webkit-scrollbar-track {
        background-color: transparent !important;
        border: none;
    }
    
    #infopartners .row-wrapper::-webkit-scrollbar-thumb {
        height: 2px;
        border-radius: 18px;
        background-color: #8EDD11;
        box-shadow: none;
    }
    
    /* 16 - 600 */
    #quiz-form .for-centered {
        max-width: 100%;
        width: 100%;
        top: 45px;
        padding-left: var(--global--spacing-inside-left-m);
        padding-right: var(--global--spacing-inside-right-m);
    }
    
    button, input, optgroup, select, textarea {
        padding: 14px 16px 14px 16px;
        font-size: 16px;
        width: 100%;
    }
    form.wpcf7-form p label span.formlabel {
        font-size: 16px;
    }
    #quiz-form .quiz-btn {
        width: calc(100% - 50px);
    }
    form.wpcf7-form p label {
        font-size: 12px;
    }
    form.wpcf7-form p a {
        font-size: 12px;
        letter-spacing: -.4px;
    }
    /* footer */
    #contacts {
        display: block;
    }
    #contacts .contacts-left-column, #contacts .contacts-right-column {
        display: inline-block;
        width: 100%;
    }
    #contacts .contact-h-2 {
        padding-right: 0;
    }

}

@media only screen and (max-width: 481px) {
    #menu-side-block .nav-top-logo {
        display: none;
    }
    #menu-side-block nav {
        padding: 20px 20px 0 20px;
    }
    /* 03 */
    .accordion-title {
        max-width: 80%;
    }
    
    /* 04 */
    .location-left-block-coord-title-text h2.color-3 {
        max-width: 80%;
    }
    .location-left-block-coord-title-img {
        width: 48px;
    }
    .location-left-block-coord-title-img img {
        max-width: 48px;
    }
    
    /* 05 */
    .timetable-h-column h2.color-5 {
        margin-bottom: 24px;
    }
    #timetable {
        display: block;
    }
    .timetable-h-column {
        width: 100%;
    }
    .timetable-table-column {
        width: 100%;
    }
    #timetable table td {
        padding-top: 12px;
        padding-bottom: 12px;
    }
    
    #rules .third-row-wrapper, #program .third-row-wrapper {
        margin-top: -4px;
    }

    /* footer */
    #contacts {
    margin-top: 96px;
    background: var(--global--color-cyan-children);
    padding: 24px 24px 48px 24px;
}
    #contacts a span {
        font-size: 18px;
    }
    #open-side-menu {
        right: 20px;
    }

    /* Swiper mobile */
    swiper-slide, swiper-slide img {
        max-height: 180px; 
    }
}