/* FONT */
@import url('https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900');
@import url('https://fonts.googleapis.com/css?family=Oswald:300,400,500,600,700');

:root{
    --accent-color:#c608fb87;
}

/* GENERAL */
*,
*:after,
*::before {
	box-sizing: border-box;
	margin:0px;
	padding:0px;
}
body{
	background: #eee;
    font-size: 14px;
    font-family: 'Roboto', sans-serif;
    color:#252525;
}
.app{
	min-height:100vh;
	width:100vw;
	overflow: hidden;
	background:#fff;
	position: relative;
}
.app:before{
	content: "";
	position: absolute;
	top:0;
	right:0;
	bottom:0;
	width:80vw;
	background: #fff url(background.png) no-repeat right top;
	background-size: contain;
}
.left-side .box{
	padding-left:15px;
}

#logo{
	margin:30px 0 0;
}
#logo h5{
	margin:0 0 5px;
	color:#aaa;
	font-weight: normal;
}
#logo h4{
	margin:0;
	color:#333;
	font-weight:bold;
}
.caption{
	margin-top:80px;
}
.caption h1{
	margin:0;
	font-weight: bold;
	font-size:45px;
}
.caption h2{
	margin:0;
	font-weight: 300;
	font-size:35px;
}
.searchform{
	margin:30px 0 0;
	width: 400px;
	max-width: 100%;
}
.searchform .input-group{
	background:#eee;
	border-radius:50px;
	padding:10px;
	box-shadow:inset 0px 3px 10px #0001;
}
.searchform .form-control{
	border:none;
	box-shadow:none;
	background: none;
}
.searchform .btn{
	border-radius:50px!important;
	padding-left:20px;
	padding-right:20px;
	box-shadow: 0px 1px 3px #0003;
}
a.btn-masuk{
	margin:15px 0 0;
	color:var(--accent-color);
	font-weight: bold;
}
.logo-bantul{
	position: absolute;
	top:calc(100vh - 160px);
	display: block;
}
.logo-bantul img{
	width:auto;
	height:120px;
}
.item-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top:15px;
	width:45vw;
	position: absolute;
	top:0;
	right:0;
}
.item-container > div{
	margin:0 0 50px;
	text-align: center;
}
.item-container > div .thumbnail{
	background:none;
	border:none;
	padding:0;
	width:60px;
	height:60px;
	margin:0 auto 10px;
	position: relative;
}
.item-container > div .thumbnail:before{
	content: "";
	position: absolute;
	top:10px;
	left:50%;
	transform: translateX(-50%);
	width:60px;
	height:60px;
	background:#0003;
	border-radius: 50%;
}
.item-container > div .thumbnail img{
	width:100%;
	height:100%;
	object-fit: contain;
	position: relative;
	transition: .3s ease;
}
.item-container > div:hover .thumbnail img{
	transform: translateY(-10px) scale(1.1);
}
.item-container > div:nth-child(1){
	
}
.item-container > div:nth-child(2){
	margin-top:50px;
}
.item-container > div:nth-child(3){
	
}
.item-container > div:nth-child(4){
	margin-top:50px;
}
.item-container > div:nth-child(5){
	margin-left:25%;
	margin-top:-20px;
}
.item-container > div:nth-child(6){
	margin-top:-50px;
}
.item-container > div:nth-child(7){
	
}
.item-container > div:nth-child(8){
	margin-left:calc(25%);
	transform: translateX(40px);
	margin-top:-30px;
}
.item-container > div:nth-child(9){
	margin-top:-80px;
}
.item-container > div:nth-child(10){
	
}
.item-container a{
	color:#fff;
	text-decoration: none;
	font-size:12px;
}
.item-container .item-all {
	margin-left:25%;
	margin-top:-100px;
}
.item-container .item-all a .thumbnail{
	display: block;
	height:60px;
	line-height:60px;
}
.item-container .item-all a .thumbnail .fa{
	font-size:30px;
	margin-top:25px;
	color:#fff;
	text-shadow:0px 1px 3px #0003;
	transition: .3s ease;
	position: relative;
}
.item-container .item-all:hover .thumbnail .fa{
	transform: translateY(-10px) scale(1.1);
}
.item-container .title{
	text-transform: uppercase;
	text-shadow: 1px 3px 10px #000a;

}
.btn.btn-accent{
	background:var(--accent-color);
	border-color:transparent;
	color:#fff;
}

.app-all{
	position: fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#e5a3ffc9;
	z-index:999;
	color:#fff;
	visibility: hidden;
	transform: translateY(100%);
	transition: .3s ease;
}
.app-all.show{
	visibility: visible;
	transform: translateY(0);
}
.app-all .header{
	padding:30px 0;
	display: flex;
}
.app-all .header h4{
	text-transform: uppercase;
}
.app-all .header .btn-close{
	margin-left: auto;
	background:#0003;
	color:#fff;
	width:40px;
	height:40px;
	line-height: 40px;
	padding:0;
	text-align: center;
	border-radius:50%;
}
.item-all-container{
	display: flex;
	flex-wrap:wrap;
}
.item-all-container > div{
	margin:0 0 30px;
}
.item-all-container a{
	color:#fff;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	background:none;
	display: block;
	height:100%;
	padding:30px;
	border-radius:4px;
	transition: .3s ease;
}
.item-all-container a:hover{
	transform: translateY(-10px);
}
.item-all-container a .thumbnail{
	background:none;
	border:none;
	padding:0;
	position: relative;
}
.item-all-container a .thumbnail:before{
	content:"";
	position: absolute;
	top:0px;
	left:50%;
	transform:translateX(-50%);
	width:80px;
	height:80px;
	background:#0003;
	border-radius: 50%;
}
.item-all-container a .thumbnail img{
	width:80px;
	height:80px;
	object-fit: contain;
	position: relative;
}
.input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group{
	z-index:0;
}
.modal-dialog{
	z-index:9999;
}
.list-prosedure li{
	list-style: none;
	margin-bottom: 0.6rem;
	border-bottom: solid 0.1px rgba(51, 51, 51, 0.13);
	padding-bottom: 0.4rem;
	transition: all 0.2s ease;
}
.list-prosedure li i{
	font-size: 1.4rem;
	margin-right: 5px;
}
.list-prosedure li a{
	text-decoration: none;
	color: rgb(59, 59, 59);
}
.list-prosedure li:hover a{
	font-weight: 500;
	margin-left: 4px;
	color: #00cc7c;
	transition: all 0.2s ease;
}
.modal-backdrop{
	z-index: 0!important;
}
.modal-content{
	border-radius: 4px;
	border:none;
}
.modal-header{
	border:none;
	box-shadow: 0px 10px 50px -20px rgba(0,0,0,0.1);
}
.modal-title{
	text-transform: uppercase;
	font-weight: 300;
}
.modal-footer{
	border:none;
	background: #f5f5f5;
}
.modal-body{
	padding:30px;
}
.category-link{
	display: flex;
	flex-direction: row;
	flex:1;
	flex-wrap: wrap;
}
.category-link a{
	display: block;
	margin:2%;
	background:#eee;
	border-radius: 100px;
	text-align: center;
	padding:15px;
	color:#555;
	text-decoration: none;
	text-transform: uppercase;
	font-size:12px;
	font-weight: bold;
	transition:.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 0 auto;
}
.category-link a:hover{
	background: #00CC7C;
	color:#fff;
}
.category-link > div{
	width: 33%;
	height: auto;
}
.category-link .dropdown{
	width: 100%;
}
.category-link .dropdown > a, .category-link > div > a{
	height: 70px;
}
.category-link .list-group > a{
	width: 100%;
}
.category-link .dropdown-menu{
    padding: 1rem;
	max-width: 600px;
	min-width: 200px;
	width: 100%;
    left: 50%;
    top: 7.5rem;
    border: none;
	border-radius: 5px;
	transform: translateX(-50%);

    -webkit-box-shadow: 0px 4px 89px -30px rgba(0,0,0,0.27);
    -moz-box-shadow: 0px 4px 89px -30px rgba(0,0,0,0.27);
    box-shadow: 0px 4px 89px -30px rgba(0,0,0,0.27);
}

.category-link .dropdown-menu:before{
    position: absolute;
    content: '';
    width: 0; 
    height: 0; 
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    
    border-bottom: 10px solid #fff;
    top: -1rem;
    left: 50%;
    transform: translateX(-50%);
}
.category-link .list-group-item{
    border: 0px solid transparent;
}
.category-link .dropdown-menu button{
    font-weight: 300;
    text-align: left;
}
.page{
	position: relative;
	padding:15px 0;
}
.wrapper{
	background: #fff;
	position: relative;
	box-shadow: 0 4px 5px 0 rgba(0,0,0,.14);
	border-radius: 5px;
	padding:80px;
	color:#424242;
	font-size:14px;
	line-height: 180%;
}
.wrapper h2{
	font-weight: 400;
	margin:0 0 30px;
}
#footer-page{
	text-align: center;
	padding:15px;
	color:#aaa;
}
.notification-modal{
	display: flex!important;
	align-items: center!important;
	justify-content: center!important;
	position: fixed!important;
	top:0!important;
	left:0!important;
	bottom:0!important;
	right:0!important;
	visibility: hidden;
	opacity: 0;
	transition: .5s ease!important;
}
.notification-modal.in{
	visibility: visible;
	opacity: 1;
}
.notification-modal .modal-dialog{
	width: 400px;
	margin:0 auto;
	transform: scale(0.5);
	transition: .3s ease;
	opacity: 0;
}
.notification-modal.in .modal-dialog{
	transform: scale(1);
	opacity: 1;
}
.notification-modal .modal-content{
	box-shadow: 0px 10px 50px -20px rgba(0,0,0,0.3);
	border-radius: 20px;
}
.notification-modal .modal-content .modal-header{
	box-shadow: none;
	text-align: center;
	margin:0;
}
.notification-modal .modal-content .modal-header .modal-title{
	font-weight: bold;
	color:#333;
}
.notification-modal .modal-content .modal-body{
	padding:0 30px 30px;
}
.notification-modal .modal-content .icon{
	font-size:100px;
}
.notification-modal .modal-content .icon .fa-check-circle{
	color:#2ecc71;
}
.notification-modal .modal-content .icon .fa-paper-plane{
	transform: translate(-100px, 100px);
	transition: .3s ease;
	transition-delay: .2s;
	opacity: 0;
}
.notification-modal.in .modal-content .icon .fa-paper-plane{
	transform: translate(0,0);
	opacity: 1;
}

.singlepage{
	background:url(../images/background/page-bg.svg) no-repeat center;
	background-size: cover;
	min-height: 100vh;
}
.singlepage .navbar{
	padding:15px 0;
	background: none !important;
	border-radius: 0;
	border:none;
	margin:0 !important;
}
.singlepage .navbar-default{
	border-color: #00CC7C !important;
}
.singlepage .navbar-header a.navbar-brand{
	margin:0;
	padding:0;
	font-family: 'Oswald', sans-serif;	
	font-weight: 500;
	font-size:30px;
	color:#fff;
}
.singlepage .navbar-brand img{
	width: auto;
	height: 50px;
	display: inline-block !important;
	vertical-align: middle;
}
.singlepage .navbar .container{
	display: flex;
}
.singlepage .navbar .navbar-btn{
	background: #fff;
	border:none;
	border-radius: 2px;
	color:#333;
	padding-left:30px;
	padding-right:30px;
}

.navbar-header{
	display: flex;
	align-items: center;
}
.navbar .navbar-brand h1{
	margin: 0;
	max-width: 300px;
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
}

.navbar .navbar-brand p{
	margin: 0;
	font-weight: 300;
	font-size: 1.3rem;
	color: rgba(255, 255, 255, 0.753);
}

.singlepage .container{
	width:980px!important;
	max-width: 100%;
}
.container .enter-btn{
	position: absolute;
	right: 15px;
	top: -30px;
	z-index: 800;
	background-color: #00bd4c;
	color:#fff;
	font-weight: 500;
	padding:10px 17px;
	border:1px solid transparant;
	border-radius: 4px;
	border-color: #00bd4c; 
	text-decoration: none;
}
.singlepage img{
	max-width: 100%;
	height:auto!important;
}
.container .enter-btn:hover{
	background-color: #00df59;
}
.wrapper ol{
	margin-left: 20px;
}
@media(max-width: 1024px){
	.app{
		background:#fff;
		overflow:auto;
		text-align: center;
	}
	.app #logo.media,
	.app #logo .media-left,
	.app #logo .media-body{
		display: block;
		width:auto;
	}
	.app #logo .media-left{
		margin:0 0 10px;
	}
	.app:before{
		width:100%;
		opacity:0.2;
	}
	.searchform{
		text-align: center;
		margin:40px auto 0;
	}
	.logo-bantul{
		position: relative;
		top:auto;
		display: block;
		margin:30px 0 100px;
	}
	.item-container{
		width:auto;
		position: relative;
		top:auto;
		right:auto;
	}
	.item-container > div{
		margin:0 0 30px!important;
		text-align: center;
		width:25%!important;
		transform: none!important;
	}
	.item-container > div .thumbnail{
		width:auto;
		height:auto;
	}
	.item-container > div .thumbnail img{
		width:100px;
		height:100px;
	}
	.item-container > div .thumbnail:before{
		background:var(--accent-color);
	}
	.item-container a{
		color:#333;
		text-decoration: none;
		font-size:12px;
	}
	.item-container .title{
		text-shadow: none;
	}
	.app .btn-masuk{
		background:#fff;
		margin:30px 0;
		border-radius:50px;
		padding:15px 30px;
	}
	.item-all-container > div{
		width:25%;
	}
	
}
@media(max-width: 480px){
	.caption h1{
		font-size:24px;
		margin:0 0 10px;
	}
	.caption h2{
		font-size: 18px;
	}
	.logo-bantul img {
		width:80%;
		height:auto;
	}
	.item-container > div{
		width:33.33%!important;
	}
	.item-container > div .thumbnail:before{
		width:40px;
		height:40px;
	}
	.item-container > div .thumbnail img{
		width:50px;
		height:50px;
	}
	.item-container .item-all a .thumbnail .fa{
		margin-top:17px;
	}
	.item-all-container{
		margin:0 -5px;
	}
	.item-all-container > div{
		padding:0 5px;
		margin:0 0 10px;
	}
	.item-all-container a{
		padding:15px;
	}
	.category-link{
		display: block;
	}
	.category-link > div{
		width:100%;
	}
	.singlepage .navigation a{
		padding:10px!important;
		font-size: 12px!important;
	}
	.wrapper{
		padding:15px!important;
	}
	.item-all-container > div{
		width:50%;
	}
	.singlepage .navbar .container{
		flex-direction: column;
	}
	.singlepage .navbar .container div{
		align-self: center;
		text-align:center;
	}
	.singlepage .navbar .navbar-header{
		text-align: center;
	}
	.singlepage .navbar .navbar-header .navbar-brand{
		float: none;
		display: inline-block;
		margin:0 auto;
	}
	.singlepage .navbar .navbar-brand .media,
	.singlepage .navbar .navbar-brand .media-left,
	.singlepage .navbar .navbar-brand .media-body{
		display: inline-block;
		width:auto;
	}
}
@media(max-width: 320px){
	.item-container > div{
		width:50%!important;
	}
}