/*
	=======================================
	FONTS IMPORT
	=======================================
*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

/*
	=======================================
	DEFAULT VARIABLES
	=======================================
	
	4 / 8 / 12 / 16 / 32 / 64
*/
:root {
	/* text sizes */
	--content-text-smallest: 1.2em;
	--main-menu-text-size: 1.4em;
	--alert-text: 1.8em;
	--main-content-text-size: 1.8em;

	/* colors */
	--main-color: #666;

	--color-red: #E62A6C;
	--color-yellow: #FFFDB8;
	--color-dark: #000000;

	/* main margins and paddings*/
	--main-gap-small: 8px;
	--main-gap-half: 16px;
	--main-gap-between: 24px;
	--main-gap: 32px;
	--main-gap-between-double: 48px;
	--main-gap-double: 64px;
	--main-gap-section: 192px;
	
}

/*
	=======================================
	RESET VALUES
	=======================================
*/
* { font-weight: inherit; font-family: inherit; font-style: inherit; color: inherit; cursor: inherit; font-size: 100%; border: 0 none; outline: 0; padding: 0; margin: 0; vertical-align: top; box-sizing: inherit; }
* { transition: background 0.4s; }

/*
	=======================================
	BASE ELEMENTS DEFINITIONS
	=======================================
*/
body { font: 10px  'Montserrat', "Montserrat"; color: var(--color-dark); background: #fff;  }

strong { font-weight: 600; }

h1 { font-size: 4.8em; margin-bottom: var(--main-gap); }
h2 { font-size: 3.6em; margin-bottom: var(--main-gap-half); }
h3 { font-size: 2.8em; margin-bottom: var(--main-gap-half); }
h4 { font-size: 1.8em; margin-bottom: var(--main-gap-half); }

.heading_upper_text { display: block;  font-size: 20px; color: var(--color-red); margin-bottom: var(--main-gap-half); }

p { font-size: var(--main-content-text-size); line-height: 1.8em; margin-bottom: var(--main-gap);  }
ul { font-size: var(--main-content-text-size); line-height: 1.8em; }

ul li ul { font-size: 1em; }

a:hover { cursor: pointer; text-decoration: none; }

input, textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

/*
	=======================================
	CLEARING ELEMENT
	=======================================
*/
div.clear, div.util, div.cleaner{ display: block; clear: both; font-size: 0px; line-height: 0px; z-index: 2000; }

/*
	=======================================
	MIDDLE DIV
	=======================================
*/
.middle { max-width: 1200px; margin: 0 auto; position: relative;; }
.middle_w { max-width: 1920px; margin: 0 auto; position: relative; }
.middle_t { max-width: 800px; margin: 0 auto; position: relative; }

/*
	=======================================
	SCROLL UP
	=======================================
*/
#scrollup { position: fixed; bottom: var(--main-gap); right: var(--main-gap); z-index: 9999; }
#scrollup a { display: block; height: 50px; width: 50px; background: url('../img/icon-scrollup.png') center center no-repeat #666; text-decoration: none; border-radius: 120px; }

/*
	=======================================
	HELPERS
	=======================================
*/
.width_full { width: 100%; box-sizing: border-box; }
.width_fourty{ width: 40%; box-sizing: border-box; }
.width_half{ width: 50%; box-sizing: border-box; }
.width_eighty{ width: 80%; box-sizing: border-box; }
.width_seventy{ width: 70%; box-sizing: border-box; }
.width_sixty{ width: 60%; box-sizing: border-box; }
.width_thirty{ width: 30%; box-sizing: border-box; }
.width_quad{ width: 25%; box-sizing: border-box; }
.width_twenty{ width: 20%; box-sizing: border-box; }
.width_ten { width: 10%; box-sizing: border-box; }
.width_third{ width: 33.333%; box-sizing: border-box; }
.width_threequad{ width: 75%; box-sizing: border-box; }
.width_sixth { width: 16.6666666667%; box-sizing: border-box; }

@media only screen and (max-width: 960px) {
	.width_fourty, .width_half, .width_sixty, .width_thirty,
	.width_third, .width_quad, .width_twenty, .width_threequad, .width_ten, .width_eighty,
	.width_seventy{ width: 100%; }
	.width_sixth { width: 33.333%; }
}

.hide { display: none; }
.align_center { text-align: center; }
.align_left { text-align: left; }
.align_right { text-align: right; }
.float_right { float: right; }
.float_left { float: left; }

.margin_b { margin-bottom: var(--main-gap); }
.margin_bd { margin-bottom: var(--main-gap-double); }

@media only screen and (max-width: 960px) { .no_tablet { display: none; } }
@media only screen and (min-width: 960px) { .is_tablet { display: none; } }
@media only screen and (max-width: 768px) { .no_mobile { display: none; } }
@media only screen and (min-width: 768px) { .is_mobile { display: none; } }
@media only screen and (min-width: 960px) { .simulate_line { display: block; } }

sup { font-size: 0.5em; margin-top: -50%; }