/* UI Buttons -- 3.5 */

.button,
.box_link a {
    display: inline-block;
	border: 3px solid #ffb81c;
	padding: 12px 20px 13px 20px;
	text-transform: uppercase;
	position: relative;
	overflow: hidden;
	transition: all .25s;
	color: #154734;
	margin-right: 20px;
	z-index: 1;
	text-transform: uppercase;
	font: 700 16px/1.2em bio-sans, Arial, sans-serif;
	vertical-align: center;
	text-decoration: none;
	cursor: pointer;
}

    	.button[data-color="white"] {
    		color: #fff;
    	}

    	.button[data-color="green"] {
    		border-color: #1c5944;
    		color: #1c5944;
    	}

    	.button[data-size="small"] {
    		font-size: 14px;
    		line-height: 1em;
    		padding: 10px 16px;

    	}

    	[data-align="center"] {
    		text-align: center;
    	}

    	[data-align="center"] .button {
    		margin: 0 10px;
    	}

    	[data-align="right"] {
    		text-align: right;
    	}

    	[data-align="right"] .button {
    		margin: 0 0 0 20px;
    	}

    	.button:hover,
        .button:focus,
    	.box_link a:hover,
        .box_link a:focus {
    		color: #0a2d21;
    		text-decoration: none;
    	}

    .button::before,
    .box_link a::before {
    	background: #ffb81c;
		content: "";
		top: 0;
		left: -2px;
		right: -2px;
		bottom: 0;
		position: absolute;
		z-index: -1;
		transition: all .25s;
		transform: translateX(-105%);
	}

		.button[data-color="green"]::before {
			background-color: #1c5944;
		}

        .button:hover::before,
        .button:focus::before,
        .box_link a:hover::before,
        .box_link a:focus::before {
     		transform: translateX(0);
        }

    .button[data-color="green"]:hover,
    .button[data-color="green"]:focus {
    	color: #fff;
    }




.button_secondary {
	text-decoration: none;
    color: #154734;
    overflow: visible;
    transform: scale(1) translate3d(0,0,0);
    -webkit-backface-visibility: hidden;
    display: inline-block;
    font: 700 14px/1.3em bio-sans, Arial, sans-serif;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}
    .button_secondary[data-color="white"] {
        color: #fff;
    }

    .button_secondary[data-color="gold"] {
        color: #ffb81c;
    }

	.button_secondary::before {
	    position: absolute;
	    right: -12px;
	    font: normal normal 300 16px/1 Font Awesome\ 5 Pro;
	    content: "\f105";
	    top: 1px;
	    transition: all .5s ease;
	}


	.button_secondary::after {
        opacity: 1;
        top: auto;
        height: 2px;
        background: #154734;
        transform: scale(0, 1);
        transition: all .3s ease-out;
        transform-origin: 0 100%;
        left: 0;
        right: 0;
        bottom: 0;
        content: "";
        position: absolute;
    }

    .button_secondary[data-color="gold"]::after {
        background: #ffb81c;
    }

    .button_secondary[data-color="white"]::after {
        background: #fff;
    }

        .button_secondary:hover {
         	 text-decoration: none;
        }

            .button_secondary:hover::after {
                transform: scale(1, 1)
            }






    .button-explore {
        color: #ffb81c;
        overflow: visible;
        padding-bottom: 3px;
        transform: scale(1) translate3d(0,0,0);
        -webkit-backface-visibility: hidden;
        text-transform: uppercase;
        margin-right: 40px;
        position: relative;
        font: 700 18px/1em bio-sans;
        text-decoration: none;
    }

    .button-explore[data-color="green"] {
        color: #1c5944;
    }

    .button-explore[data-color="white"] {
        color: #fff;
    }


        .button-explore::before {
            position: absolute;
            font: normal normal normal 16px/1 Font Awesome\ 5 Pro;
            bottom: 5px;
            transition: all .5s ease;
            content: "\f0ab";
            font-weight: 300;
            font-size: 26px;
            line-height: 1em;
            bottom: 1px;
            right: -34px;
        }


        .button-explore::after {
            opacity: 1;
            top: auto;
            height: 2px;
            background: #ffb81c;
            transform: scale(0, 1);
            transition: all .3s ease-out;
            transform-origin: 0 100%;
            left: 0;
            right: 0;
            bottom: 0;
            content: "";
            position: absolute;
        }

        .button-explore[data-color="green"]::after {
            background: #1c5944;
        }

        .button-explore[data-color="white"]::after {
            background: #fff;
        }

        	.button-explore:hover,
            .button-explore:focus {
        		text-decoration: none;
        		color: #ffb81c;
        	}

            .button-explore:hover::after,
            .button-explore:focus::after {
                transform: scale(1, 1)
            }

        @keyframes uiButtonExplore {
            0% { transform: translateY(0) }
            50% {transform: translateY(4px) }
            100% { transform: translateY(0px) }
        }

            .button-explore:hover::before,
            .button-explore:focus::before {
                animation-name: uiButtonExplore;
                animation-duration: .7s;
                animation-iteration-count: 1;
                animation-timing-function: ease-out;
            }








/* Social Media Buttons */

.uiSocialMediaList {
    text-align: center;
    margin: 30px 0;
}

.socialButton {
    display: inline-block;
    min-width: 150px;
    max-width: 250px;
    margin: .68em;
    padding: 1em 2em;
    border: none;
    background: none;
    color: inherit;
    vertical-align: middle;
    position: relative;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
}

/*.socialButton:focus {
    outline: none;
}*/
.socialButton > span {
    vertical-align: middle;
}

/* Typography and Roundedness */
.socialButton--text-upper {
    letter-spacing: 2px;
    text-transform: uppercase;
}

/* default */
.socialButton {
    width: 100px; /* assumes large size */
    height: 100px;
    min-width: 0;
    padding: 0;
    color: #fff;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}

    .socialButton--gray_icon {
        color: #7f7f7f;
    }

    .socialButton--size-s {
        width: 40px;
        height: 40px;
    }

    .socialButton--size-m {
        width: 64px;
        height: 64px;
    }

    .socialButton--size-l {
        width: 96px;
        height: 96px;
    }

    .socialButton--size-xl {
        width: 120px;
        height: 120px;
    }

.socialButton--round {
    border-radius: 50%;
}

.socialButton--square {

}

.socialButton--rounded_square {
    border-radius: 20%;
}

.socialButton::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    z-index: -1;
    box-shadow: inset 0 0 0 60px #bdbdbd;
    -webkit-transform: scale3d(0.9, 0.9, 1);
    transform: scale3d(0.9, 0.9, 1);
    -webkit-transition: box-shadow 0.3s, -webkit-transform 0.3;
    transition: box-shadow 0.3s, transform 0.3s;
}

    .socialButton--color_icon::before,
    .socialButton.socialButton--gray_icon::before {
        box-shadow: inset 0 0 0 60px #fff;
    }


.socialButton i {
    font-size: 36px;
    top: 50%;
    margin-top: -18px;
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}

/* Sizes */
.socialButton--size-s i {
    font-size: 18px;
    margin-top: -9px;
    line-height: 1em;
}
.socialButton--size-m i {
    font-size: 24px;
    margin-top: -12px;
    line-height: 1em;
}
.socialButton--size-l i {
    font-size: 36px;
    margin-top: -18px;
    line-height: 1em;
}


.socialButton:hover {
    color: #7f7f7f;
}

.socialButton:hover::before {
    box-shadow: inset 0 0 0 2px #7f7f7f;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
}

/* Social Media Brand Colors */

.socialButton--color_icon.socialButton--facebook,
.socialButton--facebook:hover {
    color: #3b5999;
}

    .socialButton--facebook:hover::before {
        box-shadow: inset 0 0 0 2px #3b5999;
    }

.socialButton--color_icon.socialButton--instagram,
.socialButton--instagram:hover {
    color: #125687;
}

    .socialButton--instagram:hover::before {
        box-shadow: inset 0 0 0 2px #125687;
    }

.socialButton--color_icon.socialButton--linkedin,
.socialButton--linkedin:hover {
    color: #0077b5;
}

    .socialButton--linkedin:hover::before {
        box-shadow: inset 0 0 0 2px #0077b5;
    }

.socialButton--color_icon.socialButton--pinterest,
.socialButton--pinterest:hover {
    color: #bd081c;
}

    .socialButton--pinterest:hover::before {
        box-shadow: inset 0 0 0 2px #bd081c;
    }

.socialButton--color_icon.socialButton--twitter,
.socialButton--twitter:hover {
    color: #55acee;
}

    .socialButton--twitter:hover::before {
        box-shadow: inset 0 0 0 2px #55acee;
    }

.socialButton--color_icon.socialButton--youtube,
.socialButton--youtube:hover {
    color: #cd201f;
}

    .socialButton--youtube:hover::before {
        box-shadow: inset 0 0 0 2px #cd201f;
    }













/* Button Container */

.uiButton-container {
    margin: 20px 0 0 0;
    display: flex;
    align-items: center;
}

  .uiButton-container[data-align="center"]  {
    justify-content: center;
  }

.uiButton-container .button_secondary {
    margin-right: 20px;
}

.uiButton-container .button-explore {
    margin-right: 50px;
}
