@import url('framework.css');

@-webkit-keyframes indicator{
    0%{opacity:0}
    50%{opacity:1}
    100%{opacity:0}
}
@-moz-keyframes indicator{
    0%{opacity:0}
    50%{opacity:1}
    100%{opacity:0}
}
@keyframes indicator{
    0%{opacity:0}
    50%{opacity:1}
    100%{opacity:0}
}
h1.big, h2.big, h3.big, h4.big, h5.big, h6.big {
    font-weight: 900;
    letter-spacing: -1px;
    font-size: 200%;
}
body {
    background: #EFEFF0;
    color: #222;
}
body:before {
    content: '';
    display: block;
    background: url(img/bg-header.png) no-repeat bottom center;
    background-size: cover;
    height: 150px;
}
a {
    color: #222;
}
.iBtn {
    display: inline-block;
    color: #290F6A;
    text-transform: uppercase;
    font-weight: bold;
    vertical-align: middle;
    letter-spacing: 1px;
}
.iBtn:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background: #290F6A;
    margin-right: 20px;
    box-shadow: 0 0 0 4px rgba(0,0,0,.1);
    transition: .5s;
}
.iBtn:hover:before {
    -webkit-animation:indicator .5s ease infinite;
    -moz-animation:indicator .5s ease infinite;
    animation:indicator .5s ease infinite;
}
.slide {
    display: block;
    overflow: hidden;
}
#header .menu {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    transform: translate(-100%,0);
    width: 250px;
    background: #290F6A;
    height: 100%;
    transition: transform .05s;
    text-align: center;
}
#header .menu .close:before {
    content:'';
    opacity: 0;
    transition: .1s;
}
#header .menu.on .close:before {
    opacity: 1;
    content: '';
    position: absolute;
    box-shadow: inset 5px 0 5px rgba(0,0,0,.4);
    top: 0;
    left: 100%;
    width: 100vw;
    height: 100%;
    background: rgba(0,0,0,.4);
    cursor: default;
}
#header .menu.on {
    transform: translate(0,0);
}
#header .menu .flexWrap {
    margin: auto 0;
    width: 100%;
}
#header .menu .flexWrap a {
    display: block;
    color: #fff;
    padding: 20px;
    border-top: 2px solid rgba(0,0,0,.2);
}
#header .menu .flexWrap a.close {
    display: block;
    color: #fff;
    margin-bottom: 40px;
    padding: 20px;
    background: transparent!important;
}
#header .menu .flexWrap a.close i {
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    line-height: 40px;
    font-size: 40px;
    vertical-align: middle;
    color: #fff;
    background: rgba(0,0,0,.4);
    box-shadow: 0 0 0 6px rgba(0,0,0,.2);
    transition: .2s;
    margin: auto;
}
#header .menu .flexWrap a.close:hover i {
    transform: rotate(-90deg);
}
#header .menu .flexWrap a:nth-child(1),
#header .menu .flexWrap a:nth-child(2) {
    border-top: 0;
}
#header .menu .flexWrap a:hover {
    background: rgba(0,0,0,.2);
}
#header .grid {
    position: absolute;
    z-index: 99;
    top: 50px;
    left: 0;
    right: 0;
    grid-template-columns: auto auto 1fr;
    background: #222;
    color: #fff;
    overflow: hidden;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,.4);
}
#header .grid.fixed {
    position: fixed;
    top:0px;
    opacity: 0;
    visibility: hidden;
    transition: .2s ease-out;
}
#header .grid.fixed.scroll {
    top: 20px;
    opacity: 1;
    visibility: visible;
}
#header .grid > * {
    padding: 15px 0;
}
#header .grid .btn {
    background: #fff;
    padding: 0 20px;
}
#header .grid .btn a {
    color: #290F6A;
}
#header .grid .logo {
    padding: 15px;
    padding-right: 70px;
    background: #fff;
    position: relative;
}
#header .grid .logo img {
    display: block;
    position: relative;
    z-index: 1;
    max-height: 50px;
}

#header .grid .logo:after {
    content: "";
    display: block!important;
    position: absolute;
    z-index: 0;
    right: -25px;
    top: 0;
    height: 100%;
    -webkit-transform: skew(25deg);
    -moz-transform: skew(25deg);
    -ms-transform: skew(25deg);
    -o-transform: skew(25deg);
    transform: skew(25deg);
    background: #290F6A;
    width: 50px;
}

#header .grid .right {
    text-align: right;
    padding: 0 20px;
}
#header .grid .right .flexWrap {
    margin-right: 0;
}
#header .grid .right .flexWrap a {
    display: inline-block;
    font-size: 80%;
    margin-left: 20px;
    color: #fff;
}
@media only screen and (max-width: 1068px) {
    #header .menu { 
        font-size: 85%;
    }
    #header .grid {
        font-size: 80%;
    }
    #header .grid .btn,
    #header .grid .right {
        padding: 10px!important;
    }
    #header .grid .logo {
        padding-top: 10px!important;
        padding-bottom: 10px!important;
        padding-left: 0!important;
        padding-right: 35px!important;
    }
    #header .grid .logo img {
        max-height: 30px;
        z-index: 2;
    }
    #header .grid .logo:after {
        content: "";
        display: block!important;
        position: absolute;
        right: -5px;
        top: 0;
        height: 100%;
        -webkit-transform: skew(10deg);
        -moz-transform: skew(10deg);
        -ms-transform: skew(10deg);
        -o-transform: skew(10deg);
        transform: skew(10deg);
        background: #290F6A;
        width: 24px;
    }
    #header .grid .right .flexWrap a {
        margin-left: 5px;
    }
    #header .grid .right .flexWrap a:nth-child(1),
    #header .grid .right .flexWrap a:nth-child(2),
    #header .grid .right .flexWrap a span {
        display: none;
    }
}

#cover {
    margin-top: -150px;
    display: block;
    background: #EFEFF0 no-repeat bottom center;
    background-size: cover;
}
#cover .flex {
    min-height: 100vh;
    text-align: center;
    padding: 40px 0;
}
#cover .flex .flexWrap {
    padding-top: 150px;
    max-width: 70%;
}
#cover .flex h2 {
    font-size: 300%;
    line-height: 100%;
    text-shadow: 0 2px 3px rgba(0,0,0,.1);
}
@media only screen and (max-width: 1068px) {
    #cover .flex h2 {
        font-size: 100%;
    }
}
#cover .flex h1 hr,
#cover .flex h2 hr,
#cover .flex h3 hr {
    display: inline-block;
    width: 10%;
    height: 4px;
    background: #222;
    border: none;
    margin: 20px 0;
}
#cover .grid a {
    display: block;
    background: #222;
    color: #fff;
    text-align: center;
    padding: 10px 20px;
    border-radius: 4px;
    font-size: 90%;
}
#cover .grid a:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background: #fff;
    margin-right: 20px;
    box-shadow: 0 0 0 4px rgba(255,255,255,.3);
    transition: .5s;
}
#cover .grid a:hover:before {
    -webkit-animation:indicator .5s ease infinite;
    -moz-animation:indicator .5s ease infinite;
    animation:indicator .5s ease infinite;
}
@media only screen and (max-width: 1068px) {
    #cover {
    }
}
@-webkit-keyframes helicopter{
    0%{bottom:0;opacity: 0;}
    50%{bottom:20px;opacity: 1;}
    100%{bottom:0;opacity: 0;}
}
@-moz-keyframes helicopter{
    0%{bottom:0;opacity: 0;}
    50%{bottom:20px;opacity: 1;}
    100%{bottom:0;opacity: 0;}
}
@keyframes helicopter{
    0%{bottom:0;opacity: 0;}
    50%{bottom:20px;opacity: 1;}
    100%{bottom:0;opacity: 0;}
}
#about {
    padding: 40px 0 400px;
    background: #EFEFF0 url(img/bg-footer.png) no-repeat bottom center;
    background-size: 100% auto;
}
@media only screen and (max-width: 1068px) {
    #about {
        padding: 40px 0;
        text-align: center;
    }
}
#about .grid .misi {
    position: relative;
    z-index: 2;
}
#about .grid .heli {
}
#about .grid .heli img {
    position: relative;
    -webkit-animation:helicopter 2s ease infinite;
    -moz-animation:helicopter 2s ease infinite;
    animation:helicopter 2s ease infinite;
    transition: 2s;
}
#about .grid {
}
#page .wrapper .slide {
    margin-top: 30px;
}
#page {
    background: #EFEFF0 url(img/bg-footer.png) no-repeat bottom center;
    background-size: 100% auto;
}
#page > .grid {
	padding: 80px 0;
	display: grid;
	grid-template-columns: auto 300px;
	grid-gap: 40px;
    direction: rtl;
}
#page > .grid nav.links {
    direction: ltr;
}
#page > .grid nav.links #sidebar {
}
#page > .grid nav.links .wrap {
	display: block;
	border-radius: 4px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 1px 0 0 rgba(0,0,0,.1);
}
#page > .grid nav.links .wrap a {
	font-size: 90%;
	letter-spacing: 1px;
	display: block;
	padding: 15px;
	border-bottom: 1px solid  rgba(0,0,0,.05);
}

#page .parts {
    margin: 20px 0;
}
#page .parts .item {
    display: block;
    position: relative;
    padding-top: 100%;
    background: #fff no-repeat center center;
    background-size: contain;
    box-shadow: 0 1px 0 0 rgba(0,0,0,.1);
    overflow: hidden;
    border-radius: 4px;
}

#page .parts .item h3 {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width:90%;
    display: inline-block;
    background: rgba(0,0,0,.6);
    color: #fff;
    padding: 10px 20px;
    font-size: 70%;
    border-radius: 0 4px 0 0;
    font-weight: 400;
}
@media only screen and (max-width: 1068px) {

    #page > .grid {
        display: block;
        padding: 30px 0;
    }
    #page > .grid nav.links {
        margin-top: 30px;
    }
    #page > .grid nav.links #sidebar {
        position: relative!important;
        width: 100%!important;
        top: 0!important;
    }
}
#page > .grid nav.links .wrap a.current {
	box-shadow: inset 5px 0 0 0 #290F6A;
	color: #290F6A;
	padding-left: 20px;
}
#page > .grid article {
	display: block;
    direction: ltr;
}
#page > .grid article img {
    display: block;
    border-radius: 4px;
    margin: 20px 0;
    border:8px solid #fff;
    box-shadow: 0 1px 0 0 rgba(0,0,0,.1);
}
#page > .grid article ol,
#page .grid article ul {
    padding: 20px;
    padding-left: 40px;
    margin: 40px 0;
    border:1px solid rgba(0,0,0,.05);
    border-radius: 4px;
    font-size: 90%;
    background: #fff;
    box-shadow: 0 1px 0 0 rgba(0,0,0,.1);
}
#page > .grid article ul.col-2 {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
    column-gap: 20px;
}
#page > .grid article ul.col-3 {
    columns: 3;
    -webkit-columns: 3;
    -moz-columns: 3;
    column-gap: 20px;
}
@media only screen and (max-width: 1068px) {

    #page .grid article ul.col-2 {
        columns: 1;
        -webkit-columns: 1;
        -moz-columns: 1;
    }
    #page .grid article ul.col-3 {
        columns: 2;
        -webkit-columns: 2;
        -moz-columns: 2;
    }
}
#page > .grid article ul li {
    padding: 5px 10px;
    list-style: none;
}
#page > .grid article ul li:before {
  content: ""; 
  color: currentColor;
  font-size: 120%;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 20px;
  margin-left: -30px;
  background: currentColor;
  border-radius: 10px;
}
#page > .grid article ul li:hover:before {
  background: #290F6A;
  box-shadow: 0 0 0 4px  rgba(0,0,0,.1);
}
#page > .grid article h1 {
	display: block;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 2px solid  rgba(0,0,0,.05);
}
#gallery .item {
    padding-top: 56.25%;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #000;
}
#footer .f1 {
    background: #222;
    color: rgba(255, 255, 255, .4);
    padding: 60px 0;
    font-size: 90%;
}

#footer .cr {
    padding: 40px 0;
    font-size: 65%;
    letter-spacing: 1px;
    grid-template-columns: auto auto;
}
#footer .cr .crtext .flexWrap {
    margin-left: 0;
}
#footer .cr .socmed {
    text-align: right;
    white-space: nowrap;
}
#footer .cr .socmed .flexWrap {
    margin-right: 0;
}
#footer .cr .socmed a {
    color: #222;
    font-size: 180%;
}
@media only screen and (max-width: 1068px) {
    #footer .cr .socmed a {
        font-size: 120%;
    }
}

#footer h2,
#footer h3 {
    margin-bottom: 20px;
}

#footer h2,
#footer h3,
#footer a {
    color: #fff;
}

#footer a:hover {
    text-decoration: underline;
}

#footer .socmed a:hover {
    color: #290F6A;

}
#footer .links a {
    display: block;
}

#footer .grid {
    grid-template-columns: 3fr 1fr;
}