.circular-menu {
	position: fixed;
	right: 1em;
	z-index: 1000;
}

.circular-menu-bottom {
	bottom: 1em;
}

.circular-menu-top {
	top: 1em;
}

.circular-menu .floating-btn {
	display: block;
	width: 3.5em;
	height: 3.5em;
	border-radius: 50%;
	background-color: hsl(4, 98%, 60%);
	box-shadow: 0 2px 5px 0 hsla(0, 0%, 0%, .26);  
	color: hsl(0, 0%, 100%);
	text-align: center;
	line-height: 3.9;
	cursor: pointer;
	outline: 0;
}

.circular-menu.active .floating-btn {
	box-shadow: inset 0 0 3px hsla(0, 0%, 0%, .3);
}

.circular-menu .floating-btn:active {
	box-shadow: 0 4px 8px 0 hsla(0, 0%, 0%, .4);
}

.circular-menu .floating-btn i {
	font-size: 1.3em;
	transition: transform .2s;  
}

.circular-menu.active .floating-btn i {
	transform: rotate(-45deg);
}

.circular-menu:after {
	display: block;
	content: ' ';
	width: 3.5em;
	height: 3.5em;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -2;
	background-color: hsl(4, 98%, 60%);
	transition: all .3s ease;
}

.circular-menu.active:after {
	transform: scale3d(5.5, 5.5, 1);
	transition-timing-function: cubic-bezier(.68, 1.55, .265, 1);
}

.circular-menu .items-wrapper {
	padding: 0;
	margin: 0;
}

.circular-menu .menu-item {
	position: absolute;
	top: .2em;
	right: .2em;
	z-index: -1;
	display: block;
	text-decoration: none;
	color: hsl(0, 0%, 100%);
	font-size: 1em;
	width: 3em;
	height: 3em;
	border-radius: 50%;
	text-align: center;
	line-height: 3;
	background-color: hsla(0,0%,0%,.1);
	transition: transform .3s ease, background .2s ease;
}

.circular-menu .menu-item:hover {
	background-color: hsla(0,0%,0%,.3);
}
.circular-menu .menu-item:hover i {
	-webkit-animation: spin1 4s infinite linear;
	-moz-animation: spin1 4s infinite linear;
	-o-animation: spin1 4s infinite linear;
	-ms-animation: spin1 4s infinite linear;
	animation: spin1 4s infinite linear;
}


.circular-menu .menu-item:hover a {
	text-decoration: none;
}
.circular-menu .menu-item:hover span.sr-only {
	border: 0;
    clip: rect(0,0,0,0);
    height: 1px;
    margin: 0px;
    overflow: hidden;
    position: relative;
    width: 1px;
    top: -25px;
    color: #fff;
    line-height: 1 !important;
    display: none;
}
    

.circular-menu.active .menu-item {
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.circular-menu.active .menu-item:nth-child(1) {
	transform: translate3d(1em,-7em,0);
}
.circular-menu.circular-menu-top.active .menu-item:nth-child(1) {
	transform: translate3d(-7.0em,-0.5em,0);
}

.circular-menu.active .menu-item:nth-child(2) {
	transform: translate3d(-3.5em,-6.3em,0);
}
.circular-menu.circular-menu-top.active .menu-item:nth-child(2) {
	transform: translate3d(-6.0em,3.2em,0);
}

.circular-menu.active .menu-item:nth-child(3) {
	transform: translate3d(-6.5em,-3.2em,0);
}
.circular-menu.circular-menu-top.active .menu-item:nth-child(3) {
	transform: translate3d(-3.5em,6.0em,0);
}

.circular-menu.active .menu-item:nth-child(4) {
	transform: translate3d(-7em,1em,0);
}
.circular-menu.circular-menu-top.active .menu-item:nth-child(4) {
	transform: translate3d(0em,7.5em,0);
}

/**
 * The other theme for this menu
 */

.circular-menu.circular-menu-left {
	right: auto; 
	left: 1em;
}

.circular-menu.circular-menu-left .floating-btn {
	background-color: hsl(217, 89%, 61%);
}

.circular-menu.circular-menu-left:after {
	background-color: hsl(217, 89%, 61%);
}

.circular-menu.circular-menu-left.active .floating-btn i {
	transform: rotate(90deg);
}

.circular-menu.circular-menu-left.active .menu-item:nth-child(1) {
	transform: translate3d(-1em,-7em,0);
}
.circular-menu.circular-menu-left.circular-menu-top.active .menu-item:nth-child(1) {
	transform: translate3d(7.0em,-1.0em,0);
}

.circular-menu.circular-menu-left.active .menu-item:nth-child(2) {
	transform: translate3d(3.5em,-6.3em,0);
}
.circular-menu.circular-menu-left.circular-menu-top.active .menu-item:nth-child(2) {
	transform: translate3d(6.5em,3.0em,0);
}

.circular-menu.circular-menu-left.active .menu-item:nth-child(3) {
	transform: translate3d(6.5em,-3.2em,0);
}
.circular-menu.circular-menu-left.circular-menu-top.active .menu-item:nth-child(3) {
	transform: translate3d(3.5em,6.5em,0);
}

.circular-menu.circular-menu-left.active .menu-item:nth-child(4) {
	transform: translate3d(7em,1em,0);
}
.circular-menu.circular-menu-left.circular-menu-top.active .menu-item:nth-child(4) {
	transform: translate3d(-1.0em,7.5em,0);
}



.circular-menu-brown .floating-btn {
	background-color: hsla(25, 35%, 55%, 1) !important;
}
.circular-menu-brown:after {
	background-color: hsla(25, 35%, 69%, .9) !important;
}	
.circular-menu-brown .menu-item:hover span.sr-only {
    background-color: hsla(25, 35%, 69%, .9);
}


.circular-menu-blue .floating-btn {
	background-color: hsla(220, 100%, 50%, 1) !important;
}
.circular-menu-blue:after {
	background-color: hsla(220, 100%, 67%, .9) !important;
}
.circular-menu-blue .menu-item:hover span.sr-only {
    background-color: hsla(220, 100%, 67%, .9);
}
.circular-menu-green #menu-item-17:hover span.sr-only {
	left: -20px;
}


.circular-menu-light-blue .floating-btn {
	background-color: hsla(181, 63%, 50%, 1) !important;
}
.circular-menu-light-blue:after {
	background-color: hsla(181, 100%, 50%, .9) !important;
}
.circular-menu-light-blue .menu-item:hover span.sr-only {
    background-color: hsla(181, 100%, 50%, .9);
    color: #000;
}


.circular-menu-red .floating-btn {
	background-color: hsla(0, 89%, 42%, 1) !important;
}
.circular-menu-red:after {
	background-color: hsla(0, 89%, 67%, .9) !important;
}
.circular-menu-red .menu-item:hover span.sr-only {
    background-color: hsla(0, 89%, 67%, .9);
}


.circular-menu-green .floating-btn {
	background-color: hsla(90, 100%, 40%, 1) !important;
}
.circular-menu-green:after {
	background-color: hsla(90, 100%, 47%, .9) !important;
}
.circular-menu-green .menu-item:hover span.sr-only {
    background-color: hsla(90, 100%, 47%, .9) ;
    color: #000;
}
.circular-menu-green #menu-item-12:hover span.sr-only {
	left: -120px;
}



@-webkit-keyframes spin1 {
	0% { -webkit-transform: rotate(0deg);}
	100% { -webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin1 {
	0% { -moz-transform: rotate(0deg);}
	100% { -moz-transform: rotate(360deg);}
}
@-o-keyframes spin1 {
	0% { -o-transform: rotate(0deg);}
	100% { -o-transform: rotate(360deg);}
}
@-ms-keyframes spin1 {
	0% { -ms-transform: rotate(0deg);}
	100% { -ms-transform: rotate(360deg);}
}
@-keyframes spin1 {
	0% { transform: rotate(0deg);}
	100% { transform: rotate(360deg);}
} 




/**
 * Tooltip Styles
 */

/* Base styles for the element that has a tooltip */
[data-tooltip],
.tooltip {
  position: relative;
  cursor: pointer;
}

/* Base styles for the entire tooltip */
[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after {
  position: absolute;
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: 
    opacity 0.2s ease-in-out,
    visibility 0.2s ease-in-out,
    -webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -moz-transition:    
    opacity 0.2s ease-in-out,
    visibility 0.2s ease-in-out,
    -moz-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  transition:         
    opacity 0.2s ease-in-out,
    visibility 0.2s ease-in-out,
    transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform:    translate3d(0, 0, 0);
  transform:         translate3d(0, 0, 0);
  pointer-events: none;
}

/* Show the entire tooltip on hover and focus */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

/* Base styles for the tooltip's directional arrow */
.tooltip:before,
[data-tooltip]:before {
  z-index: 1001;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Base styles for the tooltip's content area */
.tooltip:after,
[data-tooltip]:after {
  z-index: 1000;
  padding: 8px;
  width: 160px;
  background-color: #000;
  background-color: hsla(0, 0%, 20%, 0.9);
  color: #fff;
  content: attr(data-tooltip);
  font-size: 14px;
  line-height: 1.2;
}

/* Directions */

/* Top (default) */
[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after,
.tooltip-top:before,
.tooltip-top:after {
  bottom: 100%;
  left: 50%;
}

[data-tooltip]:before,
.tooltip:before,
.tooltip-top:before {
  margin-left: -6px;
  margin-bottom: -12px;
  border-top-color: #000;
  border-top-color: hsla(0, 0%, 20%, 0.9);
}

/* Horizontally align top/bottom tooltips */
[data-tooltip]:after,
.tooltip:after,
.tooltip-top:after {
  margin-left: -80px;
}

[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after,
.tooltip-top:hover:before,
.tooltip-top:hover:after,
.tooltip-top:focus:before,
.tooltip-top:focus:after {
  -webkit-transform: translateY(-12px);
  -moz-transform:    translateY(-12px);
  transform:         translateY(-12px); 
}

/* Left */
.tooltip-left:before,
.tooltip-left:after {
  right: 100%;
  bottom: 50%;
  left: auto;
}

.tooltip-left:before {
  margin-left: 0;
  margin-right: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-left-color: #000;
  border-left-color: hsla(0, 0%, 20%, 0.9);
}

.tooltip-left:hover:before,
.tooltip-left:hover:after,
.tooltip-left:focus:before,
.tooltip-left:focus:after {
  -webkit-transform: translateX(-12px);
  -moz-transform:    translateX(-12px);
  transform:         translateX(-12px); 
}

/* Bottom */
.tooltip-bottom:before,
.tooltip-bottom:after {
  top: 100%;
  bottom: auto;
  left: 50%;
}

.tooltip-bottom:before {
  margin-top: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-bottom-color: #000;
  border-bottom-color: hsla(0, 0%, 20%, 0.9);
}

.tooltip-bottom:hover:before,
.tooltip-bottom:hover:after,
.tooltip-bottom:focus:before,
.tooltip-bottom:focus:after {
  -webkit-transform: translateY(12px);
  -moz-transform:    translateY(12px);
  transform:         translateY(12px); 
}

/* Right */
.tooltip-right:before,
.tooltip-right:after {
  bottom: 50%;
  left: 100%;
}

.tooltip-right:before {
  margin-bottom: 0;
  margin-left: -12px;
  border-top-color: transparent;
  border-right-color: #000;
  border-right-color: hsla(0, 0%, 20%, 0.9);
}

.tooltip-right:hover:before,
.tooltip-right:hover:after,
.tooltip-right:focus:before,
.tooltip-right:focus:after {
  -webkit-transform: translateX(12px);
  -moz-transform:    translateX(12px);
  transform:         translateX(12px); 
}

/* Move directional arrows down a bit for left/right tooltips */
.tooltip-left:before,
.tooltip-right:before {
  top: 3px;
}

/* Vertically center tooltip content for left/right tooltips */
.tooltip-left:after,
.tooltip-right:after {
  margin-left: 0;
  margin-bottom: -16px;
}

