 @import url('https://fonts.googleapis.com/css2?family=Neucha&family=Open+Sans&family=Vollkorn:wght@500&display=swap');
*
{
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
	position:relative;
  	overflow-x:hidden;
  }
body
{
	font-family:"Open Sans",sans-serif;
	font-size:18px;
	margin:0;
	color:black;
	background:#fff4fc;
	-webkit-tap-highlight-color: rgba(63, 26, 26, 0);
	position:relative;
  	overflow-x:hidden;
} 

h1,h2,h3,h4
{
	font-family:"Neucha",sans-serif;
	font-weight:normal;
	color:#d2006e;
}

p
{
	font-family:"Neucha",sans-serif;
	font-size:22px;
}
p.half 
{
	max-width:650px;
}

.lng 
{
	display:none;
}
.wrapper
{
	max-width:1500px;
	margin:0 auto;
}
.row 
{
	display:flex;
}
.col 
{
	flex:1;
	padding:0 20px;
}

img 
{
	width:100%;
}

.uppercase
{
	text-transform:uppercase;
}
.no_overflow 
{
	overflow-x: clip;
}
.break_word
{
	word-break: break-word;
}
.hide, .hidden
{
	 display:none !important;
}

.btn_default
{
	font-size:1.5em;
	padding:5px 30px;
	border-radius:5px;
	color:white;
	background:#e2007e; 
	text-decoration: none;
	display:flex;
	align-items: center;
	justify-content: center;
	border-bottom:4px solid #c2005e;
	height:fit-content;
}

.btn_default:hover 
{
	background:#d2006e;
}
.btn_default:active 
{
	padding-top:6px;
	border-bottom:3px solid #c2005e;
}

.btn_share 
{
	fill:white;
	width:50px;
	height:50px;
	display:block;
	background:#f08700;
	padding:10px;
	display:flex;
	align-items: center;
	justify-content: center;
	border-radius:5px;
	border-bottom:4px solid #d06700;
}

.btn_share svg 
{
	width:100%;
}
abtn_share:hover 
{
	abackground:#e07700;
}
.btn_share:active
{
	padding-top:12px;
	border-bottom:2px solid #c05700;
}

.btn_orange 
{
	background:#f08700;
	border-color:#d06700
}
.btn_orange:hover
{
	background:#e07700;
}
.btn_orange:active
{
	aborder-color:#e07700;
}

input 
{
	display:block;
	width:300px;
	height:40px;
	padding:5px;
	font-size:18px;
	border:1px solid gray;
	outline:none;
}
input:focus
{
   border:1px solid #c2005e;
}

/* ---- COOKIES ---- */
.cookies
{
	background:white;
	position:fixed;
	right:0;
	bottom:0;
	width:400px;
	border-top:3px solid black;
	border-left:3px solid black;
	border-radius: 10px 0 0 0;
	padding:10px 20px 40px 40px;
	z-index:200;
}
.cookies_title
{
	display:flex;
	align-items: center;
	margin-bottom:10px;
}
.cookies_title svg 
{
	height: 70px;
	margin-right: 10px;
}
.cookies h1 
{
	color:black;
	font-weight:800;
	text-transform: uppercase;
	font-size:60px;
	margin:0;
}
.cookies p 
{
	margin:0 0 20px 0;
}
/* ---- HEADER ---- */
.header 
{
	position:relative;
	width:100%;
	height:100vh;
	background:#ddffff;
}
.header_row
{
	display: flex;
    height: 100%;
    position: relative;
	width:100%;
	margin:0 auto;
    max-width: 1500px;
}
.header_hill
{
	position:absolute;
	right:0;
	width:100%;
	min-width:800px;
	bottom:0;
}
.header_chars
{
	position:absolute;
	bottom:20px;
	right:80px;
	width:450px;
	z-index:100;
}
.head_hill_bottom
{
	display:block;
	width:100%;
	min-width:800px;
	margin-top:-50px;
	position:relative;
}
.header_pet 
{
	position:absolute;
	width:80px;
	right:500px;
	bottom:20px;
	z-index:100;
}
.header_flowers
{
	display:none;
	position:absolute;
	width:500px;
	right:50px;
	bottom:-10px;
	z-index:100;
}
.header_lngs
{
	position:absolute;
	right:40px;
	top:20px;
	margin-bottom:20px;
}
.header_lngs .btn_lng
{
	color:inherit;
	line-height:0;
	font-size:14px;
	padding:0 6px 0 4px;
	text-decoration: none;
	border-right:1px solid black;
}
.header_lngs .btn_lng:last-child
{
  border:0;
}
.header_lngs .btn_lng:hover
{
	color:inherit;
}
.header_wrapper
{
	padding:8vh 5vw;
	width:50vw;
	padding-right:50px;
	z-index:100;
}
.header_title 
{
	font-family:"Vollkorn",serif;
	font-size:44px;
	font-weight:500;
	margin:0 0 10px 0;
	width:fit-content;
	color:#d2006e;
}

.header_text
{
	margin:10px 0;
	color:black;
	max-width:600px;
}

.header_actions
{
	margin-top:50px;
	display:flex;
}
.header_actions .btn_default,
{
	margin-right:20px;
}
.input 
{
	margin-right:20px;
}
.subscription_msg 
{
	margin-top:10px;
	padding:5px 10px;
	font-size:0.9em;
	background:#f2a0fe;
}
/* ---- CONTENT ---- */
.content
{   
	padding:40px 70px 20px 70px;
}

.content_title
{
	font-size:34px;
	aborder-bottom:2px solid #eee;
	width:100%;
	margin-bottom:30px;
}
.content_text 
{

}
/* ---- TIMELINE ---- */
.timeline_row 
{
	display:flex;
	position:relative;
	width:100%;
	margin-bottom:0px;
	align-items: center;
	padding:0 100px;
}
.timeline_col_img
{
	flex:1;
	position:relative;
}
.timeline_image 
{
	amargin-left:60px;
	width:100%;
	border-radius:100%;
	border:14px solid #e07700;
}
.timeline_char
{
	position:absolute;
	bottom:-20px;
	left:-80px;
	width:55%;
}
.char_dragon 
{
	width:65%;
}
.timeline_col_text
{
	flex:1;
	padding-left:100px;
}

.timeline_row.rev .timeline_image
{
	margin-left:0;
}
.timeline_row.rev .timeline_char
{
	right:-80px;
	left:auto;
} 
.timeline_row.rev .timeline_col_text
{
	text-align:right;
	padding-left:0;
	padding-right:100px;
}

.timeline_col_text b 
{
	color:#e07700;
	font-size:2em;
	display:block;
}

.timeline_row::after
{
	content:"";
	position:absolute;
	left:25%;
	bottom:0;
	width:50%;
	height:1px;
	border-top:12px dashed #e07700;
	transform:rotate(45deg);
	z-index:-1;
}
.timeline_row.rev::after
{
	transform:rotate(-45deg);
}
.timeline_row:last-child::after
{
	content:none;
}

/* ---- IBOOKS ---- */
.ibooks_row 
{
	margin:60px 0;
	flex-wrap: wrap;
}
.ibooks_row .col 
{
	flex:0;
	padding:0 50px 0 0;
	text-decoration: none;
	margin-bottom: 40px;
}
.ibooks_row a 
{
	color:black;
	margin-bottom:20px;
}
.ibooks_row a small
{
	color:#555;
}
.ibooks_row a:hover
{
	color:#d2006e;
}
.ibook_cost
{
	color:#e07700;
	text-decoration:underline;
}
.ibooks_row a img 
{
	margin-bottom:10px;
}
.ibook_image 
{
	min-width:250px;
	border:1px solid #eee;
	display:block;
}
/* ---- SPONSORS ---- */
.section_sponsor 
{
	margin-top:0px;
	border-top:1px solid #666;
}
.row_sponsor 
{
	align-items: center;
	justify-content: center;
}
.row_sponsor .col 
{
	display:flex;
	align-items: center;
	justify-content:center;
	margin-bottom:50px;
}

.section_sponsor a 
{

}
.sponsor_logo
{
	height:100px;
	width:auto;
}
/* ---- FOOTER ---- */
footer
{   
	background:#e2007e;
	color:white;
	font-size:14px;
}
.footer_row
{   
	margin-top:50px;
	position:relative;
	padding:40px 70px 40px 70px;
	flex-direction: row;
}
.footer_col_3
{
	flex:3;
}
.footer_col
{
	flex:2;
}
.credit_title
{
	color:gold;
}
.footer_share 
{
	display:flex;
}
.footer_share .btn_share 
{
	margin-right:10px;
}
/*------*/



@media (hover: none) 
{
 .panel_btn:hover
 {
	fill:white; /*#c16666;*/ /*#21c1ff;*/
 }
}

/* ---- RESPONSIVE -----------------*/

@media (max-width: 768px) 
{
.cookies
{
	aleft:0;
	abottom:0;
	aright:0;
	padding:15px;
	width:100%;
	border:2px solid black;
	border-radius:10px 10px 0 0;
}
.cookies_title 
{
	flex-direction: column;
}
.cookies h1 
{
	margin-top:10px;
	font-size:50px;
}
/* ---- HEEADER ----- */
.header 
{
	height:auto;
}
.header_row 
{
	flex-direction: column;
}

.header_lngs 
{
	position:absolute;
	right:20px;
	top:10px;
}
.header_wrapper
{
	padding:20px 20px;
	width:auto;
	flex-direction: column;
}
.head_hill_bottom
{
   bottom:-20px;
}
.header_chars 
{
	position:relative;
	width:100%;
	padding:0 20px;
	right:0;
	top:0;
}
.header_text 
{
	font-size:20px;
}
.header_title 
{
	line-height:1.1;
	font-size:40px;
	margin-bottom:20px;
}
.header_title small 
{
	display:block;
	font-size:20px;
}
.header_actions 
{
	margin:30px 0 20px 0;
	flex-direction: column;
	height:auto;
}
.header_actions  input 
{
	margin-bottom:10px;
	width:100%;
}
.header_actions  .input 
{
	margin-bottom:20px;
}

.header_actions .btn_default 
{
	width:fit-content;
}

/* ---- CONTENT ----- */
.row 
{
	flex-direction:column;
}
.content 
{
	padding:20px 20px 20px 20px;
}
.content_title 
{
	font-size:26px;
}
.section_timeline
{
	padding-top:50px;
}
.timeline_row 
{
	flex-direction:column;
	padding:0;
}
.timeline_row.rev 
{
	flex-direction:column-reverse;
}
.timeline_col_img 
{
	min-width:auto;
	width:100%;
}
.timeline_image 
{
	width:100%;
	border-width: 10px;
}

.timeline_char 
{
	width:45%;
	left:0;
}
.char_dragon 
{
	width:55%;
}
.timeline_row.rev .timeline_char
{
	right:0;
}
.timeline_col_text
{
	padding:10px 0 10px 0;
	background: #fff4fc;
    margin-top: 60px;
    margin-bottom: 60px;
}
.timeline_row.rev .timeline_col_text {
    text-align: left;
    padding-left: 0;
    padding-right: 0;
}

.timeline_row::after
{
	content:"";
	position:absolute;
	top:0;
	height:100%;
	left:50%;
	width:1px;
	border-right:10px solid orange;
	z-index:-1;
	transform:none;
}
.timeline_row.rev::after 
{
	transform:none;
}
.ibooks_row
{
	margin:50px 0 0 0;
}
.ibooks_row .noresponsive
{
	margin-bottom:0;
}
.section_sponsor .col 
{
	padding:0;
}
/* ---- FOOTER ----- */
.footer_row 
{
	padding:30px 20px;
	margin-top:0;
	flex-direction: column-reverse;
}
.footer_col
{
	margin-bottom:40px;
}

.top_image
{
	width:20px;
	height:20px;
	display:none;
}

.top_btn svg
{
	width:20px;
}
.top_title
{
	font-size:15px;
}
.top_title small
{
	font-size:12px;
}
.scene_text
{
	font-size:15px;
}
.panel
{
	
	aheight:100%;
}
.panel_top
{
	padding:0 5px 10px 5px;
}
.panel_center
{
	padding:10px 0 0 0;
}
.scene_text
{
	padding:10px 10px;
	margin:0;
	background:white;
	aborder-bottom:none;
}
.panel_foot
{
	padding:10px 20px 20px 20px;
}
.panel_btn svg
{
	width:30px;
}

/* vertical */

.wrapper.vertical
{
	display:flex;
	flex-direction:column-reverse;
	aheight:auto !important;
	overflow-y:auto !important;
}
.vertical .top_image
{
	display:none;
}
.vertical .panel
{
	position:relative !important;
	width: 100% !important;
	height: auto;
	flex:1;
}
.vertical .screen
{
	position:relative !important;
}
.vertical .screen:after
{
	border-left:8px solid #4fc1a9; 
	border-bottom:none;
	border-top:none;
}

.vertical .panel_top_vertical
{
	display:flex !important;
	padding:10px 20px;
}
.vertical .panel_top 
{
	display:none;
}

.vertical .scene_text
{
	margin:5px 10px;
	padding:10px 10px;
}
}