*, *:before, *:after {
  box-sizing: border-box; }

body {
  background-color: var(--body-bg); }

.container {
  position: relative; }
  .container a {
    text-decoration: none; }

.svg-block,
.img-block {
  display: block;
  height: auto;
  width: 100%; }

.img-inline-block {
  display: inline-block;
  max-width: 100%; }

#password-btn {
  appearance: none;
  align-items: center;
  color: var(--primary-color);
  display: flex;
  position: absolute;
  top: 1em;
  right: 1em;
  z-index: 100;
  width: 20px;
  height: 28px;
  outline: none;
  transition: all 200ms ease-in-out; }
  #password-btn:hover {
    color: var(--primary-color); }
  #password-btn svg {
    fill: currentColor;
    display: block;
    height: auto;
    width: 100%; }
  #password-btn .lock {
    display: block; }
  #password-btn .close {
    display: none; }
  #password-btn.opened .lock {
    display: none; }
  #password-btn.opened .close {
    display: block; }

#login {
  align-items: center;
  background-color: var(--modal-bg);
  bottom: 0;
  display: none;
  height: 100vh;
  justify-content: center;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 200ms ease-in-out;
  z-index: 90;
  width: 100vw; }
  #login .login-container {
    background-color: var(--primary-color);
    color: var(--text-color);
    height: auto;
    opacity: 0;
    padding: 1em;
    width: 300px;
    transition: opacity 200ms ease-in-out; }
  #login.opened {
    display: flex;
    opacity: 1;
    transition: opacity 200ms ease-in-out; }
    #login.opened .login-container {
      opacity: 1; }
  #login .login-container h4 {
    text-align: center;
    margin-bottom: 1em; }
  #login .login-container p {
    font-size: .9em;
    text-align: center; }
    #login .login-container p a {
      border-bottom: solid 1px var(--text-color);
      color: var(--text-color);
      text-decoration: none;
      transition: all 200ms ease-in-out; }
      #login .login-container p a:hover {
        border-bottom: solid 1px transparent; }
  #login .login-container .storefront-password-form {
    margin-bottom: 1em; }
    #login .login-container .storefront-password-form .errors {
      color: var(--text-color);
      font-size: .9em;
      text-align: center;
      margin-bottom: .5em; }
      #login .login-container .storefront-password-form .errors ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        #login .login-container .storefront-password-form .errors ul li {
          display: block; }
      #login .login-container .storefront-password-form .errors a {
        border-bottom: solid 1px var(--text-color);
        color: var(--text-color);
        text-decoration: none;
        transition: all 200ms ease-in-out; }
        #login .login-container .storefront-password-form .errors a:hover {
          border-bottom: solid 1px transparent; }
    #login .login-container .storefront-password-form .input-group {
      display: flex;
      flex-flow: row nowrap; }
    #login .login-container .storefront-password-form label {
      display: none; }
    #login .login-container .storefront-password-form input {
      appearance: none;
      background-color: var(--input-bg-hover);
      border: none;
      border-radius: 0;
      color: var(--text-color);
      line-height: 3;
      outline: none;
      padding: 0 0 0 .5em;
      transition: all 200ms ease-in-out;
      width: 210px; }
      @media (min-width: 960px) {
        #login .login-container .storefront-password-form input {
          background-color: var(--input-bg); } }
      #login .login-container .storefront-password-form input:active, #login .login-container .storefront-password-form input:focus, #login .login-container .storefront-password-form input:hover {
        background-color: var(--input-bg-hover); }
    #login .login-container .storefront-password-form button {
      align-items: center;
      appearance: none;
      background-color: var(--btn-bg);
      border: none;
      border-radius: 0;
      color: var(--text-color);
      display: flex;
      font-weight: bold;
      justify-content: center;
      line-height: 3;
      outline: none;
      transition: all 200ms ease-in-out;
      width: 90px; }
      #login .login-container .storefront-password-form button:active, #login .login-container .storefront-password-form button:focus, #login .login-container .storefront-password-form button:hover {
        background-color: var(--btn-bg-hover); }
