html, body
{
	margin: 0;
	padding: 0;

	width: 100%;
	min-width: 320px;
	height: 100%;
	min-height: 480px;

	font-size: 100%;
	font-family: 'Source Sans Pro', sans-serif;
}


/* HEADINGS/TEXT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

h1,h2,h3,p,span,label,input,textarea,button,select,a
{
	font-family: 'Source Sans Pro', sans-serif;
}

h1,h2,h3,p,span,label,button,select,a
{
	text-transform: uppercase;
}

h1
{
	margin: 0;

	font-size: 1em;
	font-weight: 400;

	line-height: 3em;
	letter-spacing: 0.0625em;

	box-sizing: border-box;
}

h1.no-right
{
	padding-right: 4em;
}

span.fade
{
	opacity: 0.75;
}

h1 b
{
	font-weight: 600;
}

h2
{
	margin: 0;

	font-size: 0.875em; /* 14/16px */
	font-weight: 300;

	line-height: 2.2857142857em; /* 32/14px */
	letter-spacing: 0.0625em;

	color: rgba(237,237,233,0.9);
}

h3,h4,label,input,textarea,button,select,a
{
	margin: 0;

	font-size: 0.875em; /* 14/16px */
	letter-spacing: 0.0625em;
}

h3,label,input,button,a
{
	line-height: 2.2857142857em; /* 48/14px */
}

textarea
{
	line-height: 1.4285714286em; /* 20/14px */
}

h3,label,button,a
{
	font-weight: 400;
}

input,textarea
{
	font-weight: 300;
}

a, a:hover
{
	text-decoration: none;
}


/* LISTS >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

ul
{
	margin: 0;
	padding: 0;

	list-style-type: none;
}

ul li
{
	position: relative;

	margin: 0;
	padding: 0 0 0 1.5em;

	width: 100%;

	text-transform: uppercase;
}


/* CUSTOM MENU TYPES >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

ul.menu-3, ul.menu-2
{
	position: relative;
}

ul.menu-3 li, ul.menu-2 li
{
	position: absolute;

	height: 100%;

	letter-spacing: 0.0625em;

	transition: background 0.2s;
}

ul.menu-3 li:after, ul.menu-2 li:after
{
	position: absolute;

	right: -0.5em;

	content: ' ';

	width: 0;
	height: 0;

	transition: border-left 0.2s;
}



/* MENU-3 >>>>>>>>>>>>>>> */

ul.menu-3 li
{
	width: 33.33333333%;
}

ul.menu-3 li:nth-of-type(1)
{
	left: 0;
	background:rgba(175,165,52,1.0);
}

ul.menu-3 li:nth-of-type(2)
{
	left: 33.33333333%;
	background: rgba(190,175,57,1.0);
}

ul.menu-3 li:nth-of-type(3)
{
	left: 66.66666666%;
	background: rgba(205,185,62,1.0);
}

ul.menu-3 li:hover
{
	cursor: pointer;
	background:rgba(221,195,69,1.0);
}

ul.menu-3 li:nth-of-type(1):after
{
	z-index: 2;
	border-left: 0.5em solid rgba(175,165,52,1.0);
}

ul.menu-3 li:nth-of-type(2):after
{
	z-index: 3;
	border-left: 0.5em solid rgba(190,175,57,1.0);
}

ul.menu-3 li:hover:after
{
	border-left: 0.5em solid rgba(221,195,69,1.0);
}



/* MENU 2 >>>>>> */

ul.menu-2 li
{
	width: 50%;
}

ul.menu-2 li:hover
{
}

ul.menu-2 li:nth-of-type(1)
{
	left: 0;
	color: rgba(221,195,69,1.0);
	background: rgba(73,73,73,1.0);
}

ul.menu-2 li:nth-of-type(1):hover
{
	cursor: pointer;
	background: rgba(61,61,61,1.0);
}

ul.menu-2 li:nth-of-type(1):after
{
	z-index: 2;
	border-left: 0.5em solid rgba(73,73,73,1.0);
}

ul.menu-2 li:nth-of-type(1):hover:after
{
	border-left: 0.5em solid rgba(61,61,61,1.0);
}

ul.menu-2 li:nth-of-type(2)
{
	left: 50%;
	color: rgba(61,61,61,1.0);
	background: rgba(221,195,69,0.8);
}

ul.menu-2 li:nth-of-type(2):hover
{
	cursor: pointer;
	background: rgba(221,195,69,1.0);
}


/* MENU THICKNESS >>>>>> */

.menu-thick
{
	height: 3em;
	line-height: 3em;
}

.menu-thin
{
	height: 2em;
	line-height: 2em;
}

.menu-thick li:after
{
	border-top: 1.5em solid transparent;
	border-bottom: 1.5em solid transparent;
}

.menu-thin li:after
{
	border-top: 1.0em solid transparent;
	border-bottom: 1.0em solid transparent;
}

.form-full-width
{
	margin: 0 -1.5em 0 -1.5em;
}

.form-bottom
{
	margin-top: 1.5em;
}


/* CUSTOM HEADER TYPES >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

.header-std
{
	position: relative;

	margin: 0;
	padding: 0 0 0 1.5em;

	width: 100%;
	height: 3em;
}

.header-black
{
	background: rgba(61,61,61,1.0);
}

.header-yellow
{
	background: rgba(221,195,69,0.9);
}


/* CUSTOM BUTTON TYPES >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

.button-hidden-right, .button-hidden-left
{
	position: absolute;

	top: 0;

	width: 3em;
	height: 2em;

	line-height: 2em;

	text-align: center;

	transition: background 0.2s;
}

.button-hidden-right
{
	right: -3.5em;
}

.button-hidden-left
{
	left: -3.5em;
}

.button-hidden-right:before
{
	position: absolute;

	content: ' ';

	width: 0;
	height: 0;

	border-top: 1em solid transparent;
	border-bottom: 1em solid transparent;

	transition: border-right 0.2s;
}

.button-hidden-right:before
{
	left: -0.5em;
}

.button-hidden-left:before
{
	right: -0.5em;
}



.button-yellow
{
	color: rgba(61,61,61,0.8);
	background: rgba(221,195,69,0.9);
}

.button-yellow:hover
{
	color: rgba(61,61,61,1.0);
	background: rgba(221,195,69,1.0);
}

.button-yellow.button-hidden-right:before
{
	border-right: 0.5em solid rgba(221,195,69,0.9);
}

.button-yellow.button-hidden-left:before
{
	border-left: 0.5em solid rgba(221,195,69,0.9);
}

.button-yellow.button-hidden-right:hover:before
{
	border-right: 0.5em solid rgba(221,195,69,1.0);
}

.button-yellow.button-hidden-left:hover:before
{
	border-left: 0.5em solid rgba(221,195,69,1.0);
}


.button-black
{
	color: rgba(221,195,69,0.9);
	background: rgba(61,61,61,0.9);
}

.button-black:hover
{
	color: rgba(221,195,69,1.0);
	background: rgba(61,61,61,1.0);
}

.button-black.button-hidden-right:before
{
	border-right: 0.5em solid rgba(61,61,61,0.9);
}

.button-black.button-hidden-left:before
{
	border-left: 0.5em solid rgba(61,61,61,0.9);
}

.button-black.button-hidden-right:hover:before
{
	border-right: 0.5em solid rgba(61,61,61,1.0);
}

.button-black.button-hidden-left:hover:before
{
	border-left: 0.5em solid rgba(61,61,61,1.0);
}



.button-delete-group
{
	position: relative;

	height: 2.5625em;
}

.button-delete-confirmation-group
{
	position: absolute;
	top: 0;

	width: 100%;
	height: 100%;

	display: none;

	background: rgba(84,84,82,1.0);
}

.button-delete-cancel, .button-delete-confirm
{
	position: absolute;
	top: 0;

	width: 50%;
	height: 100%;

	border: 0;
}

.button-delete-cancel
{
	left: 0;
}

.button-delete-confirm
{
	right: 0;
}

.no-style
{
	margin: 0;
	margin-left: -1.5em;
	padding: 0;
	padding-left: 1.5em;

	width: 100%;
	height: 100%;
	line-height: 3em;

	text-align: left;

	font-size: inherit;

	background: none;
	border: none;
}

.submit-status
{
	position: absolute;

	bottom: 0;

	text-align: center;

	width: 100%;
	height: 3em;
}

.submit-status.normal
{
	display: none;
	z-index: 2;
	color: rgba(221,195,69,1.0);
	background: rgba(61,61,61,1.0);
}

.submit-status.normal span
{
	font-size: 0.875em;
	font-weight: 300;
	letter-spacing: 0.07142857143em;
}

.submit-status.complete
{
	display: none;
	z-index: 3;
	color: rgba(221,195,69,1.0);
	background: rgba(61,61,61,1.0);
}

.submit-status.complete span
{
	font-size: 1em;
	font-weight: 400;
	letter-spacing: 0.07142857143em;
}


/* WRAPPER >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.wrapper
{
	position: relative;

	margin: 0;
	padding: 0;

	width: 100%;
	height: 100%;
}


/* SIDE-MENU >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.side-menu
{
	position: absolute;
	z-index: 1;

	top: 0;
	left: 0;

	margin: 0;
	padding: 0;

	width: 20em;
	height: 100%;

	overflow: hidden;

	background: rgba(84,84,82,1.0);
}

div.side-menu header, div.trip-header
{
	position: relative;

	margin: 0;
	padding: 0 0 0 1.5em;

	width: 100%;
	height: 3em;
	line-height: 3em;
}

div.side-menu header
{
	background: rgba(61,61,61,1.0);
}

span.icon-menu, span.icon-trip-settings
{
	position: absolute;

	top: 0;
	right: 0;

	width: 2em;
	height: 2em;
	line-height: 2em;

	text-align: center;

	font-size: 1.5em;
	opacity: 0.8;
}

span.icon-menu:hover, span.icon-trip-settings:hover
{
	cursor: pointer;
	opacity: 1.0;
}


/* DIV.TRIP-HEADER >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.trip-header:before
{
	position: absolute;
	z-index: 2;
	left: 0em;

	content: ' ';

	width: 0;
	height: 0;

	border-top: 1.5em solid transparent;
	border-bottom: 1.5em solid transparent;

	border-left: 0.5em solid rgba(61,61,61,1.0);

	transition: border-left 0.2s;
}

div.trip-header
{
	background: rgba(221,195,69,1.0);
}

span.icon-trip-settings.active
{
	background: rgba(84,84,82,1.0);
	color: rgba(221,195,69,1.0);
}

/* LIST - TRIP OPTIONS >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.trip-options
{
	display: none;
	background: rgba(84,84,82,1.0);
}

ul.options
{
	/*background: rgba(84,84,82,1.0);*/
}

ul.trip-option li
{
	height: 3em;
	line-height: 3em;

	background: rgba(61,61,61,0.8);
	color: rgba(221,195,69,0.8);
}

ul.trip-option li:hover
{
	background: rgba(61,61,61,1.0);
	color: rgba(221,195,69,1.0);
}

ul.trip-option li a
{
	margin-left: -1.5em;
	padding-left: 1.5em;

	width: 100%;
	height: 100%;

	display: block;

	cursor: pointer;
}

ul.trip-option li a:hover
{
	background: rgba(221,195,69,1.0);
}



ul.trip-option.menu-add
{
	display: none;
}



/* LIST - AREA  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

ul.area
{
	/*margin-top: 1em;*/
}

ul.area li
{
	margin-top: 1em;
	/*background: rgba(221,195,69,0.5);*/
	transition: background-color 0.4s;
}

ul.area li:hover
{
	cursor: pointer;
	background: rgba(71,71,70,0.25);
}

ul.area li span.area-date
{
	transition: opacity 0.4s;
}

ul.area li:hover span.area-date
{
	transition-delay: 0.8s;
	opacity: 0;
}

ul.area li div.area-edit
{
	transition: right 0.4s;
}

ul.area li:hover div.area-edit
{
	transition-delay: 1.2s;
	right: 0;
}

span.icon-wrap-toggle
{
	position: absolute;

	top: 0;
	left: 0.5em;

	margin: 0.75em 0;
	/*margin: 1.3125em 0 1.1875em 0;*/

	width: 0.5em;
	height: 0.5em;
}

span.area-date
{
	position: absolute;

	margin-top: -1.33333333em;
	top: 50%;
	right: 1.3333333333em;  /* 16/12px */

	height: 100%;
	line-height: 2.6666666667em;

	font-size: 0.75em; /* 12/16px */
	font-weight: 300;

	letter-spacing: calc(1em / 12);

	color: rgba(221,195,69,0.75);
}

.area-edit span
{
	position: absolute;

	margin-top: -1.33333333em; /* 16/12px */
	top: 50%;

	margin-right: 1.25em;
	right: 0;

	font-size: 0.75em; /* 12/16px */
	font-weight: 400;

	letter-spacing: calc(1em / 12);

	transition: color 0.2s;
}



/* LIST - TYPE  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

ul.type li
{
	margin: 0;
	height: 2em;
	line-height: 2em;
}

span.type-count
{
	position: absolute;
	top: 0;
	right: 1.3333333333em;  /* 16/12px */

	font-size: 0.75em; /* 12/16px */
	font-weight: 400;
}


/* LIST - PLACE >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

ul.place li:hover div.place-edit
{
	transition-delay: 0.8s;
	right: 0;
}

ul.place li div.place-edit
{
	transition: right 0.4s;
}


div.place-edit span
{
	position: absolute;

	margin-top: -1.33333333em; /* 16/12px */
	top: 50%;

	margin-right: 1.25em;
	right: 0;

	font-size: 0.75em; /* 12/16px */
	font-weight: 300;

	letter-spacing: calc(1em / 12);

	transition: color 0.2s;
}


.place-active
{
	background: rgba(221,195,69,0.5) !important;
}

.place-active div.place-edit
{
	right: 0 !important;
}


/* SIDE-INFO + EDIT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.side-info, div.edit
{
	position: absolute;
	z-index: 1;

	margin: 0;
	padding: 0 0 1em 0;

	width: 20em;

	overflow: hidden;
}

div.side-info
{
	bottom: 0;
	right: 0;

	background: rgba(84,84,82,1.0);
}

div.edit
{
	top: 20em;
	right: 0;

	background: rgba(84,84,82,1.0);
}






span.icon-info-close, span.icon-info-min-max
{
	position: absolute;

	top: 0.8333333333em;

	font-size: 1.125em;
	line-height: 1em;

	transition: opacity 0.2s;
	opacity: 0.8;
}

span.icon-info-close:hover, span.icon-info-min-max:hover
{
	opacity: 1.0;
	cursor: pointer;
}

span.icon-info-close
{
	right: 1.3333333333em;
}

span.icon-info-min-max
{
	right: 2.6666666667em;
}


div.side-info p
{
	margin: 1.33333333em 0;
	padding: 0 2em;

	font-size: 0.75em;
	font-weight: 300;
	letter-spacing: 1px;

	color: rgba(237,237,233,0.9);

	line-height: 1.5em; /* 18/12px */
}

ul.link a li, ul.attachment a li
{
	padding-right: 3.5em;
	box-sizing: border-box;
}

ul.link a:hover li, ul.attachment a:hover li
{
	background: rgba(71,71,70,0.25);
}

span.link-text, span.attachment-text
{
	/*font-size: 0.875em; /* 14/16px */
	font-weight: 300;

	letter-spacing: 0.07142857143em;

	transition: color 1s;
	color: rgba(221,195,69,0.75);
}

ul.link a:hover span.link-text, ul.attachment a:hover span.attachment-text
{
	color: rgba(221,195,69,1.0);
}

span.icon-link, span.icon-attachment
{
	position: absolute;

	margin-top: -0.3888888889em;
	top: 50%;
	right: 1.33333333em;

	font-size: 1.125em;
	line-height: 1em;
}


/* EDIT MODE >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

span.icon-cancel, span.icon-complete
{
	position: absolute;
	top: 0;

	font-size: 1.125em;
}

span.icon-cancel
{
	right: 1em;
}

span.icon-complete
{
	right: 1.5em;
}


/* FORM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> */

form
{
	margin: 0;
	padding: 0.5em 1.5em 0 1.5em;
}

label
{
	position: relative;
	padding: 0.5em 0 0 0;
}

label, input, textarea, button, div.edit-link-group
{
	width: 100%;
}

input:focus, select:focus, textarea:focus, button:focus
{
    outline: none;
}

button.single
{
	background: rgba(221,195,69,0.8);
	border: 2px solid rgba(221,195,69,0.2);
}

button.single:hover
{
	background: rgba(221,195,69,1.0);
}

input, textarea
{
	padding: 0 5px;

	color: rgba(237,237,233,0.9);

	background: rgba(61,61,61,1.0);
	border: 2px solid rgba(221,195,69,0.5);
	border-radius: 2px;
}

textarea
{
	padding: 5px;
	max-width: 100%;
	height: 8em;
}

select
{
	padding: 3px 7px;
	width: 100%;
	line-height: 1.25em;
	/*-webkit-appearance: none;*/
	background: rgba(221,195,69,0.8);
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder
{
	color: rgba(147,146,133,0.8);
}

div.edit-place-location-wrapper
{
	padding: 5px;
	border: 2px dashed rgba(221,195,69,0.5);
	border-radius: 2px;
}

div.place-geo-coords
{
	font-size: 1em;
	font-weight: 300;

	line-height: 2em;
	text-align: center;

	opacity: 0.7;
	transition: opacity 0.5s;
}

div.place-geo-coords:hover
{
	cursor: pointer;
	text-decoration: underline;
	opacity: 1;
}

div.edit-place-info
{
	width: 100%;
	line-height: 2em;
	text-align: center;
	color: rgba(237,237,233,0.9);
}

:hover
{
	cursor: pointer;
}

input:-moz-placeholder, textarea:-moz-placeholder
{
	color: rgba(147,146,133,0.8);
}

div.edit-link-group, div.edit-attachment-group
{
	position: relative;
}

span.icon-add
{
	position: absolute;

	right: -1px;

	font-size: 1.2857142857em;

	transition: opacity 0.2s;
	opacity: 0.8;
}

span.icon-add:hover
{
	cursor: pointer;
	opacity: 1.0;
}

form.info-edit a
{
	padding: 0;
	color: rgba(221,195,69,0.8);
}

span.icon-delete, span.icon-link-edit, span.icon-attachment-edit
{
	position: absolute;
	margin-top: -0.5em;
	top: 0.7em;

	font-size: 1.125em;

	transition: opacity 0.2s;
	opacity: 0.8;
}

span.icon-delete:hover, span.icon-link-edit:hover, span.icon-attachment-edit:hover
{
	cursor: pointer;
	opacity: 1.0
}

span.icon-delete
{
	right: 0;
}

span.icon-link-edit, span.icon-attachment-edit
{
	right: 1.5em;
}

div.edit-link-group-expand, div.edit-attachment-group-expand
{
	padding-bottom: 0.5em;
	display: none; /* remove */
}

div.edit-link-group-expand input:first-child, div.edit-attachment-group-expand input:first-child
{
	margin-bottom: 0.5em;
}

div.delete-confirmation-expand
{
	position: relative;
	width: 100%;
	height: 2em;
	display: none;
}

span.delete-cancel
{
	position: absolute;
	z-index: 2;

	margin-left: -1.5em;
	padding: 0 0 0 1.5em;

	top: 0;
	left: 0;

	width: 10em;
	height: 2em;

	transition: background 0.2s;
	background: rgba(68,68,68,1.0);
}

span.delete-cancel:after
{
	position: absolute;
	z-index: 2;

	top: 0;
	right: -0.5em;

	content: ' ';

	width: 0;
	height: 0;

	border-top: 1em solid transparent;
	border-bottom: 1em solid transparent;

	border-left: 0.5em solid rgba(68,68,68,1.0);
	transition: border-left 0.2s;
}

span.delete-cancel:hover
{
	cursor: pointer;
	background: rgba(61,61,61,1.0);
}

span.delete-cancel:hover:after
{
	border-left: 0.5em solid rgba(61,61,61,1.0);
}

span.delete-confirm
{
	position: absolute;

	margin-right: -1.5em;
	padding: 0 0 0 1.5em;

	top: 0;
	right: 0;

	width: 10em;
	height: 2em;

	transition: background 0.2s;
	background: rgba(221,195,69,0.8);
}

span.delete-confirm:hover
{
	cursor: pointer;
	background: rgba(221,195,69,1.0);
}

span.icon-delete-cancel, span.icon-delete-confirm
{
	position: absolute;

	margin-top: -0.4375em;
	top: 50%;
	right: 1.3333333333em;

	font-size: 1.125em;
	line-height: 1em;
}

div.error-message
{
	padding: 0.5em 5px;

	font-size: 0.875em;
	font-weight: 300;
	text-transform: uppercase;

}


/* CREATE >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.create, div.edit
{
	position: absolute;
	z-index: 1;

	top: 0em;
	right: 0em;

	width: 20em;

	background: rgba(84,84,82,1.0);
}

div.create-options
{
	padding: 1em 1.5em;
}

div.create-options button:first-child
{
	margin-bottom: 1em;
}

div.create.area
{
	display: none;
}

div.edit.area
{
	display: none;
}

div.create.place
{
	display: none;
}

div.edit.place
{
	display: none;
}

/* DIV.MAP-WRAPPER >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

div.map-wrapper
{
	z-index: 0;

	margin: 0;
	padding: 0;

	width: 100%;
	height: 100%;
}

.add-marker
{
	cursor: crosshair;
}


/* GENERAL >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

.yellow
{
	color: rgba(221,195,69,1.0);
}

.grey, label
{
	color: rgba(147,146,133,1.0);
}

.black
{
	color: rgba(61,61,61,1.0);
}

.icon-toggle-open
{
	width: 0;
	height: 0;

	border-left: 0.25em solid transparent;
	border-right: 0.25em solid transparent;

	border-top: 0.375em solid rgba(221,195,69,1.0);
}

.icon-toggle-shut
{
	width: 0;
	height: 0;

	border-top: 0.25em solid transparent;
	border-bottom: 0.25em solid transparent;

	border-left: 0.375em solid rgba(221,195,69,1.0);
}

.icon-toggle-open.toggle-grey
{
	border-top: 0.375em solid rgba(147,146,133,1.0) !important;
}

.icon-toggle-shut.toggle-grey
{
	border-left: 0.375em solid rgba(147,146,133,1.0) !important;
}

