:root {
    --color-iv: #ebd7b6;
    --color-ivl: #e7dfd1;
    --color-bn: #4a1d1db5;
}

body {
    margin: 0px;
    padding: 0px;
    position: relative
}

header {
    height: 200px;
    width: 100%;
    position: fixed;
    top: 0;
    background-color: var(--color-iv);
    z-index: 3
}

#cb {
    margin: 0px;
    color: var(--color-bn);
    font-family: cursive;
    font-size: 3.5rem;
    text-align: center
}

.lc {
    margin: 0px;
    color: var(--color-bn);
    font-size: .9rem;
    text-align: center
}

#op {
    margin: 0px;
    color: #000000;
    font-size: 1rem;
    text-align: center
}

.mg {
    margin: 0px;
    color: #00008b;
    font-size: 1rem;
    font-weight: bold;
    text-align: center
}

#mgs {
    margin: 0px;
    color: #00008b;
    font-size: .8rem;
    font-weight: bold;
    text-align: center
}

main {
    margin-bottom: 100px
}

#spg {
    height: 200px;
    background-color: var(--color-iv)
}

#igs {
    display: flex;
    flex-wrap: wrap
}

.ig-dv {
    display: inline-block;
    width: 25%
}

.ig {
    width: 100%;
    opacity: 90%
}

#ab {
    margin-top: 25px
}

#bm {
    display: flex;
    flex-wrap: wrap;
    margin-left: 2%;
    margin-right: 2%;
    background-color: var(--color-ivl)
}

#bg {
    width: 40%;
    position: relative;
    background-color: var(--color-bn);
    color: #ffffff
}

#imbg {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 40%
}

#fm {
    height: 100%;
    width: 100%;
    text-align: center;
    padding-top: 30%;
    position: absolute;
    z-index: 2
}

.hc {
    font-family: cursive;
    font-size: 48px
}

.pc {
    font-family: monospace;
    font-size: 1.2rem;
    padding-left: 15%
}

#sm {
    width: 60%;
    text-align: center
}

.st {
    margin: 0 0 0 0;
    padding: 1rem 0 0 0;
    font-family: Helvetica, sans-serif
}

.tb {
    display: inline-block;
    margin: 0;
    padding: 1rem;
    font-size: 1.25rem;
    font-family: Helvetica, sans-serif;
    color: var(--color-bn)
}

.ts {
    display: inline-block;
    margin: 0;
    padding: 1rem;
    font-size: 1.25rem;
    font-family: Helvetica, sans-serif;
    color: var(--color-bn)
}

#fs {
    background-color: var(--color-iv)
}

#cr {
    background-color: var(--color-ivl)
}

#pbl {
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    margin-left: 2%;
    margin-right: 2%
}

#spbl {
    width: 40%;
    position: relative
}

#fmbl {
    height: 100%;
    width: 100%;
    padding-top: 10%;
    text-align: center;
    position: absolute;
    z-index: 2
}

.hbl {
    font-family: cursive;
    font-size: 60px;
    margin-bottom: 0;
    line-height: 1
}

#imbl {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 60%
}

#tpbl {
    width: 60%;
    background-color: var(--color-ivl);
    text-align: center
}

#ctg {
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    margin-left: 2%;
    margin-right: 2%
}

#sctg {
    width: 40%;
    position: relative
}

#fctg {
    height: 100%;
    width: 100%;
    padding-top: 20%;
    text-align: center;
    position: absolute;
    z-index: 2
}

.hctg {
    font-family: cursive;
    font-size: 60px
}

#imctg {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 60%
}

#tctg {
    width: 60%;
    background-color: var(--color-ivl);
    text-align: center
}

#cv {
    color: #000000;
    font-style: italic
}

footer {
    height: 5%;
    width: 100%;
    position: fixed;
    bottom: 0;
    background-color: var(--color-iv);
    z-index: 3
}

@media screen and (max-width: 768px) {
    #cb {
        font-size: 3rem;
    }

    #bg {
        width: 100%
    }

    #fm {
        padding-top: 15%
    }

    .hc {
        font-size: 36px
    }

    .pc {
        padding-left: 0%
    }

    #sm {
        width: 100%
    }

    #spbl {
        width: 100%
    }

    #tpbl {
        width: 100%
    }

    #fmbl {
        padding-top: 10%
    }

    #sctg {
        width: 100%
    }

    #tctg {
        width: 100%
    }

    #fctg {
        padding-top: 15%
    }
}

@media screen and (max-width: 600px) { 
   #cb {
        font-size: 2rem;
    }
}

@media screen and (max-width: 400px) {
    header {
        height: 170px;
        line-height: 1.25
    }

    #spg {
        height: 170px
    }

    .lc {
        font-size: .9rem;
    }

    #op { 
        font-size: .9rem;
    }

    .mg { 
        font-size: .8rem
    }

    #mgs { 
        font-size: .8rem
    }
}

@media screen and (max-width: 350px) {
    .hc {
        font-size: 2.5rem;
        margin-bottom: 0
    }

    .pc {
        font-size: 1rem
    }

    .hbl {
        font-size: 2.5rem
    }

    .hctg {
        font-size: 2.5rem
    }
}

@media screen and (max-width: 315px) {
    #cb {
        font-size: 1.75rem;
    }

    .lc {
        font-size: .8rem;
    }

    #op { 
        font-size: .8rem;
    }

    .mg { 
        font-size: .8rem
    }
    
    .hc {
        font-size: 2rem
    }

    .pc {
        font-size: .75rem
    }

    .hbl {
        font-size: 2rem
    }

    .hctg {
        font-size: 2rem
    }
}

@media screen and (max-width: 268px) {
    header {
        height: 200px;
        line-height: 1.25
    }

    #cb {
        font-size: 1.25rem
    }

    #spg {
        height: 200px
    }

    #op {
        font-size: .8rem
    }

    .hbl {
        font-size: 2rem
    }

    .hctg {
        font-size: 2rem
    }
}