/* Custom login form */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden;
}

body {
	display: flex;
    flex-direction: column;
    height: 100%;
	background-color: #ffffff;
}

@font-face {
    font-family: "Shippori Mincho";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/shippori_mincho/ShipporiMincho-SemiBold.woff2")  format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Jost";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/jost/Jost-300-Light.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Jost";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/jost/Jost-400-Regular.woff2") format("woff2");
    font-display: swap;
}

#login {
	width: 640px; 
    padding: 5% 0 0;
    padding-bottom: 170px;
    text-align: center;
}

.login img {
    width: 320px;
}

#login a:first-child {
	display: inline-block;
}

.login form {
    margin: 0;
    padding: 0 40px;
    font-weight: 300;
    overflow: hidden;
    border: none;
    box-shadow: none;
}

.login h1, .login h2 {
	font-family: "Shippori Mincho", serif;
    font-size: 42px;
    letter-spacing: 0;
    text-transform: uppercase;
    font-weight: 500;
    color: #000000;
}

.login h2 {
	color: #926F34;
    margin-bottom: 40px;
}

.login form label {
	font-family: "Jost", sans-serif;
    font-size: 18px;
}

.login form .input, 
.login input[type=password], 
.login input[type=text] {
	font-family: "Jost", sans-serif;
    font-size: 18px;
    letter-spacing: 1px;
    width: 100%;
    border: none;
    border-bottom: 1px solid #000000;
    border-radius: 0;
    padding: 20px;
    margin: 0 6px 16px 0;
    min-height: 40px;
    max-height: none;
}

::placeholder {
 	color: #000000;
  	opacity: 1;
}

.login form .input:focus, .login input[type=password]:focus, .login input[type=text]:focus {
    outline: none;
    box-shadow: none;
}

.login form p:first-child {
	margin-bottom: 20px;
}

.login input[type=password] {
	margin-bottom: 40px;
}

.submit-input {
	font-family: 'Jost', sans-serif;
    font-size: 18px;
    letter-spacing: 2px;
    color: #000000;
    text-transform: uppercase;
    padding: 12px 0;
    border: 1px solid #000000;
    background-color: #F5F5F5;
    cursor: pointer;
	width: 100%;
}

.submit-input:hover {
    color: #926F34;
    border: 1px solid #926F34;
}

@media (max-width: 620px) {
    #login {
        width: 100%; 
        padding: 25% 0 0;
        padding-bottom: 60px;
	}
    
    #login a:first-child {
		margin-bottom: 35px;
	}
    
    .login form {
    	padding: 0 40px;
    }
    
    .login img {
    	width: 50vw;
        height: 100%;
    }
    
    .login h1, .login h2 {
        font-size: 7.5vw;
        font-weight: 500;
	}
    
    .login h1 {
    	width: 62.5vw;
        margin: 0 auto;
    }
    
    .login form .input, 
    .login input[type=password], 
    .login input[type=text] {
    	font-size: 16px;
        padding-left: 0;
	}
    
    .login input[type=submit] {
	font-size: 18px;
	}
}