.header--logo {
    width: 150px;
    height: 50px;
}

a {
    text-decoration: none;
    color: #307194;
}


.logo-img {
    width: 30%;
}

.main-btn {
    position: relative;
    padding: 1em 1.8em;
    outline: none;
    border: 1px solid #303030;
    background: #212121;
    color: #307194;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 15px;
    overflow: hidden;
    transition: 0.2s;
    border-radius: 20px;
    cursor: pointer;
    font-weight: bold;
}

.main-btn:hover {
    box-shadow: 0 0 10px #307194, 0 0 25px #24A4AE, 0 0 50px #307194;
    transition-delay: 0.6s;
}

.main-btn span {
    position: absolute;
}

.main-btn span:nth-child(1) {
    top: 0;
    left: -100%;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #24A4AE);
}

.main-btn:hover span:nth-child(1) {
    left: 100%;
    transition: 0.7s;
}

.main-btn span:nth-child(3) {
    bottom: 0;
    right: -100%;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #1e3f57);
}

.main-btn:hover span:nth-child(3) {
    right: 100%;
    transition: 0.7s;
    transition-delay: 0.35s;
}

.main-btn span:nth-child(2) {
    top: -100%;
    right: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(180deg, transparent, #24A4AE);
}

.main-btn:hover span:nth-child(2) {
    top: 100%;
    transition: 0.7s;
    transition-delay: 0.17s;
}

.main-btn span:nth-child(4) {
    bottom: -100%;
    left: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(360deg, transparent, #1e3f57);
}

.main-btn:hover span:nth-child(4) {
    bottom: 100%;
    transition: 0.7s;
    transition-delay: 0.52s;
}

.main-btn:active {
    background: #24A4AE;
    background: linear-gradient(to top right, #24A4AE, #307194);
    color: #bfbfbf;
    box-shadow: 0 0 8px #24A4AE #307194, #24A4AE;
    transition: 0.1s;
}

.main-btn:active span:nth-child(1) span:nth-child(2) span:nth-child(2) span:nth-child(2) {
    transition: none;
    transition-delay: none;
}

.main-heading {
    background-image: linear-gradient(to top, #24A4AE, #307194, aquamarine);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: -4px -4px 0px white;
}

.about {
    width: 100%;
}


.login-btn {
    --border-color: linear-gradient(-45deg, #ffae00, #7e03aa, #00fffb);
    --border-width: .125em;
    --curve-size: .5em;
    --blur: 30px;
    --bg: #080312;
    --color: #afffff;
    color: var(--color);
    /* use position: relative; so that BG is only for .btn */
    position: relative;
    isolation: isolate;
    display: inline-grid;
    place-content: center;
    padding: .5em 1.5em;
    font-size: 17px;
    border: 0;
    text-transform: uppercase;
    box-shadow: 10px 10px 20px rgba(0, 0, 0, .6);
    clip-path: polygon(
            /* Top-left */
            0% var(--curve-size),

            var(--curve-size) 0,
            /* top-right */
            100% 0,
            100% calc(100% - var(--curve-size)),

            /* bottom-right 1 */
            calc(100% - var(--curve-size)) 100%,
            /* bottom-right 2 */
            0 100%);
    transition: color 250ms;
}

.login-btn::after,
.login-btn::before {
    content: '';
    position: absolute;
    inset: 0;
}

.login-btn::before {
    background: var(--border-color);
    background-size: 300% 300%;
    animation: move-bg7234 5s ease infinite;
    z-index: -2;
}

@keyframes move-bg7234 {
    0% {
        background-position: 31% 0%
    }

    50% {
        background-position: 70% 100%
    }

    100% {
        background-position: 31% 0%
    }
}

.login-btn::after {
    background: var(--bg);
    z-index: -1;
    clip-path: polygon(
            /* Top-left */
            var(--border-width) calc(var(--curve-size) + var(--border-width) * .5),

            calc(var(--curve-size) + var(--border-width) * .5) var(--border-width),

            /* top-right */
            calc(100% - var(--border-width)) var(--border-width),

            calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * .5)),

            /* bottom-right 1 */
            calc(100% - calc(var(--curve-size) + var(--border-width) * .5)) calc(100% - var(--border-width)),
            /* bottom-right 2 */
            var(--border-width) calc(100% - var(--border-width)));
    transition: clip-path 500ms;
}

.login-btn:where(:hover, :focus)::after {
    clip-path: polygon(
            /* Top-left */
            calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5)),

            calc(100% - var(--border-width)) var(--border-width),

            /* top-right */
            calc(100% - var(--border-width)) var(--border-width),

            calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * .5)),

            /* bottom-right 1 */
            calc(100% - calc(var(--curve-size) + var(--border-width) * .5)) calc(100% - var(--border-width)),

            /* bottom-right 2 */
            calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5)) calc(100% - var(--border-width)));
    transition: 200ms;
}

.login-btn:where(:hover, :focus) {
    color: #fff;
}


.login-link {
    text-decoration: none;

}

.flip-card {
    background-color: transparent;
    width: 190px;
    height: 254px;
    perspective: 1000px;
    font-family: sans-serif;
}

.title {
    font-size: 1.5em;
    font-weight: 900;
    text-align: center;
    margin: 0;
}

.flip-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: transform 0.8s;
    transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
    transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
    box-shadow: 0 8px 14px 0 rgba(0, 0, 0, 0.2);
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border: 1px solid coral;
    border-radius: 1rem;
}

.flip-card-front {
    background: linear-gradient(120deg, bisque 60%, rgb(255, 231, 222) 88%,
            rgb(255, 211, 195) 40%, rgba(255, 127, 80, 0.603) 48%);
    color: coral;
}

.flip-card-back {
    background: linear-gradient(120deg, rgb(255, 174, 145) 30%, coral 88%,
            bisque 40%, rgb(255, 185, 160) 78%);
    color: white;
    transform: rotateY(180deg);
}

.gallery {
    display: grid;
    padding: 3%;
    grid-template-rows: 10% 90%;
}

.gallery-heading {
    grid-row: 1/2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 2em;

    background-image: linear-gradient(to top, #24A4AE, rgb(255, 123, 0), #307194);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: -3px -3px 0px white;
}

.gallery-main {
    padding: 2%;
    grid-row: 2/3;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;

}


.main-vis {
    left: 40%;
}

.gallery-msg{
    margin-top: 10%;
    grid-row: 2/3;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.g-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 10;
    width: 160px;
    height: 100px;
    margin-left: -80px;
    margin-top: -50px;
    border-radius: 5px;
    background: #1e3f57;
    animation: dot1_ 3s cubic-bezier(0.55,0.3,0.24,0.99) infinite;
  }
  
  .g-loader:nth-child(2) {
    z-index: 11;
    width: 150px;
    height: 90px;
    margin-top: -45px;
    margin-left: -75px;
    border-radius: 3px;
    background: #3c517d;
    animation-name: dot2_;
  }
  
  .g-loader:nth-child(3) {
    z-index: 12;
    width: 40px;
    height: 20px;
    margin-top: 50px;
    margin-left: -20px;
    border-radius: 0 0 5px 5px;
    background: #6bb2cd;
    animation-name: dot3_;
  }
  
  @keyframes dot1_ {
    3%,97% {
      width: 160px;
      height: 100px;
      margin-top: -50px;
      margin-left: -80px;
    }
  
    30%,36% {
      width: 80px;
      height: 120px;
      margin-top: -60px;
      margin-left: -40px;
    }
  
    63%,69% {
      width: 40px;
      height: 80px;
      margin-top: -40px;
      margin-left: -20px;
    }
  }
  
  @keyframes dot2_ {
    3%,97% {
      height: 90px;
      width: 150px;
      margin-left: -75px;
      margin-top: -45px;
    }
  
    30%,36% {
      width: 70px;
      height: 96px;
      margin-left: -35px;
      margin-top: -48px;
    }
  
    63%,69% {
      width: 32px;
      height: 60px;
      margin-left: -16px;
      margin-top: -30px;
    }
  }
  
  @keyframes dot3_ {
    3%,97% {
      height: 20px;
      width: 40px;
      margin-left: -20px;
      margin-top: 50px;
    }
  
    30%,36% {
      width: 8px;
      height: 8px;
      margin-left: -5px;
      margin-top: 49px;
      border-radius: 8px;
    }
  
    63%,69% {
      width: 16px;
      height: 4px;
      margin-left: -8px;
      margin-top: -37px;
      border-radius: 10px;
    }
  }

@media only screen and (max-width: 600px) {



    .intro {
        background-image: url('../img/introduction-visual.png');
        background-repeat: no-repeat;
        background-size: contain;
        background-position: 60%;
    }
}