@import url('https://fonts.cdnfonts.com/css/abogia');
.section1, .section2, .section3, .section4, h2 { 
    font-family: 'Lora', sans-serif;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.2);
}


html,body {
    width:100%;
    height:100%;
    overflow:hidden;
}


.main {
    opacity:0;
    pointer-events:none;
    transition: opacity 0.2s ease-in-out;
    z-index:5;
}

.main.is-visible {
    opacity:1;
    pointer-events:auto;
}

h1 {
    position: relative;
    text-align:center;
    width:100%;
    margin-top:20%;
    margin-bottom:0;
    color:#EBE8E2;
    font-size:28px;
}

#background, .content {
    position:absolute;
    width:200px;
    height:200px;
    border-radius:40%;
    left:43vw;
    top:33vh
}

#background {
    background-color:#141115;
    transition: transform 3s linear 0s;
}

.content {
    display: flex;
    align-items:center;
    flex-direction:column;
    transition: opacity 0.5s ease 0s;
    overflow:hidden;
    z-index:10;
    pointer-events:none;
}

.content p {
    width:80%;
    margin-left:auto;
    margin-right:auto;
    font-size:13px;
    text-align:center;
    color:#EBE8E2;
}

button {
    background-color:transparent;
    border:solid;
    border-color:#EBE8E2;
    letter-spacing:0.1vw;
    color:#EBE8E2;
    text-align:center;
    font-size:12px;
    font-weight:bold;
    cursor:pointer;
    display:inline;
    border-radius:20%;
    width:50px;
    height:40px;
    position:relative;
    z-index:11;
    pointer-events:auto !important;
}

button:hover {
    color:white;
    background-color:black;
}

/* Main Section */

:root {
    --section-expanded-class: "is-expanded";
    --section-has-expanded-class: "has-expanded-item";
    --section-transition-duration: 0.6s;
    --section-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.section1,.section2,.section3,.section4 {
    pointer-events: none;
    position:absolute;
    z-index:2;
    width:50%;
    height:50%;
    overflow:hidden;
    cursor:pointer;
    transform:scale3d(1,1,1);
    will-change: transform, opacity, contents;
    transition-duration: var(--section-transition-duration);
    transition-timing-function: var(--section-transition-timing-function);
}

/*.section1 .box { text-shadow: 1px 1px 2px #5f2432; }  Darker 92374D (Deep Red) 
.section2 .box { text-shadow: 1px 1px 2px #2d365f; }    Darker 4A5899 (Slate Blue) 
.section3 .box { text-shadow: 1px 1px 2px #b0874b; }    Darker EAB464 (Mustard/Gold) 
.section4 .box { text-shadow: 1px 1px 2px #1b665d; }

.section1 { background-color: #92374D; }
.section2 { background-color: #4A5899; }
.section3 { background-color: #EAB464; }
.section4 { background-color: #2A9D8F; }*/

.section1 {
    top:0;
    left:0;
    background-color: #92374D
}
.section2 {
    top:0;
    left:50%;
    background-color: #4A5899
}
.section3 {
    top:50%;
    left:0;
    background-color: #EAB464;
}
.section4 {
    top:50%;
    left:50%;
    background-color: #2A9D8F;
}

.section-content {
    opacity:0;
    visibility:hidden;
    padding: 80px 10% 40px 10%;
    color:white;
    font-family: Lora, serif;
    font-size: 1.1rem;
    line-height: 1.8;
    max-width:800px;
    margin: 0 auto;
    transition: opacity 0.4s ease;
}

.is-expanded .section-content {
    opacity: 1;
    visibility: visible;
    transition-delay: 0.3s;
}

.is-expanded::-webkit-scrollbar {
    display:none;
}

.is-expanded {
    top:0;
    left:0;
    right:0;
    bottom:0;
    inset:0;
    z-index:120 !important;
    position:fixed;
    width:100%;
    height:100%;
    cursor:auto;
    overflow-y: auto !important;
    overflow-x: hidden;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none; /* firefox */
}

.has-expanded-item .section1:not(.is-expanded),
.has-expanded-item .section2:not(.is-expanded),
.has-expanded-item .section3:not(.is-expanded),
.has-expanded-item .section4:not(.is-expanded) {
    transform: scale(0);
    opacity: 0;
    pointer-events: none;
}

.has-expanded-item .content {
    opacity: 0 !important;
    visibility: hidden;
    pointer-events: none !important;
    transition: opacity 0.5s ease, transform 0.5s ease;
    z-index: -1 !important;
}



.main.is-visible .section1, 
.main.is-visible .section2, 
.main.is-visible .section3, 
.main.is-visible .section4 {
    pointer-events: auto;
}

.main.is-visible .content button {
    pointer-events: none !important;
    cursor:default;
    opacity: 0.5;
}

.is-expanded .close-section {
    opacity: 1;
    pointer-events: auto;
}

.close-section {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    font-size: 2rem;
    line-height: 1;
    text-align: center;
    color: #fff;
    opacity: 0;
    cursor: pointer;
    pointer-events: none;
    transition: opacity 0.1s linear;
    will-change: opacity;
}

.section-class, .section-has-expanded-class {
    opacity: 1;
    pointer-events: auto;
    transition-duration: 0.2s;
    transition-delay: var(--section-transition-duration);
}

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

html {
  /*font: 16px/1.5 "Roboto Slab", sans-serif;*/
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.content {
    font-family: 'Cinzel', serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body {
    margin:0;
    background:#EBE8E2;
}

.box {
    display:grid;
    place-items:center;
    height:100%;
    font-size:2.5rem;
    font-weight:500;
    color:#fff;
    transition: opacity 0.5s ease, transform 0.5s ease;
    opacity: 1;
    visibility:visible;
    position:relative;
}

.is-expanded .box {
    opacity:0;
    visibility:hidden;
    position:absolute;
    pointer-events:none;
}