/*
	rose #343434
*/
/*
	=======================================
	FONTS IMPORT
	=======================================
*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600&family=Open+Sans:wght@300;400;600;700&display=swap');

/*
	=======================================
	DEFAULT VARIABLES
	=======================================
*/
:root {
	/* text sizes */
	--content-text-smallest: 1.2em;
	--main-menu-text-size: 1.4em;
	--alert-text: 1.6em;
	--main-content-text-size: 1.8em;

	/* colors */
	--main-color: #8a2062;
	--main-oposite-color: #8a2062;
	--main-menu-color: #8a2062;
	--main-menu-act-color: #8a2062;
	--main-link-color: #8a2062;

	/* main margins and paddings*/
	--main-gap: 30px;
	--main-gap-half: 15px;
}

/*
	=======================================
	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  'Open Sans', "Open+Sans"; color: #6c6c6c; background: #fff; }
strong { font-weight: 700; }
h1,h2,h3 {  color: var(--main-color); font-family: 'Montserrat';  }
h1 { font-size: 4.4em; margin-bottom: var(--main-gap);  font-weight: 200; }
h2 { font-size: 3.4em; margin-bottom: var(--main-gap);  font-weight: 200;  }
h3 { font-size: 2.6em; margin-bottom: var(--main-gap-half);   font-weight: 400; }

@media only screen and (max-width: 768px) {
	h1 { font-size: 3.2em; }
	h2 { font-size: 2.6em; }
	h3 { font-size: 2.2em; }
}

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; }
a { color: var(-main-link-color); }
a:hover { cursor: pointer; text-decoration: none; }

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

/*
	=======================================
	SMART BUTTON BASE DEFINITION
	=======================================
*/
.smart_button {
	display: inline-block;
	padding: 8px 14px 8px 14px; font-size: var(--main-content-text-size); text-decoration: none;
	background: #fff;
	color: var(--main-oposite-color);
	border-radius: 3px; border: solid 1px #fff;
}

.smart_button_02 {
	display: inline-block;
	padding: 8px 14px 8px 14px; font-size: var(--main-content-text-size); text-decoration: none;
	background: #fff;
	color: var(--main-oposite-color);
	border: 2px solid var(--main-oposite-color);
	border-radius: 3px;
}
.smart_button_02:hover { 
	background: var(--main-color); color: #fff;
}

/*
	=======================================
	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_t { max-width: 860px; margin: 0 auto; position: relative; }
.middle_w { max-width: 1860px; margin: 0 auto; position: relative; }

/*
	=======================================
	MAIN BODY -
	top padding is sam as header height
	=======================================
*/


/*
	=======================================
	SCROLL UP
	=======================================
*/
#scrollup { position: fixed; bottom: 0px; right: 0px; z-index: 100; }
#scrollup a { display: block; height: 60px; width: 60px; background: url('../img/icon-scrollup.png') center center no-repeat #8a2062; text-decoration: none; border-radius: 3px 0px 0px 0px; }

/*
	=======================================
	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_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; }

@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_seventy{ width: 100%; }
}

.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; }

@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%; }

.mb_full { margin-bottom: var(--main-gap);}