:root {
    --base-unit: 1em;
    /*BASED ON THE W/H RATIO OF "0" IN ROBOTO*/
    --ch-unit: calc(var(--base-unit)*.56125);
    --h3: calc(var(--base-unit)*1.21);
    --h2: calc(var(--h3)*1.34);
    --h1: calc(var(--h2)*1.55);
    --h0: calc(var(--h1)*1.89);
    --blue: #05f;
    --red: #A60303;
    --orange: #ff6319;
}

html {
    background-color: #000;
}

main {
    background-color: #000;
    color: #fff;
}

section figure:not(.no-mask) {
    mask-image: linear-gradient(to top, rgba(0, 0, 0, 0)0%, rgba(0, 0, 0, 1)calc((var(--h1, 1.978em) * 1.146) * 5));
}

#pie-container {
    display: flex;
    flex-wrap: wrap;
    margin-top: 0;
}

#piechart-stats {
    justify-content: center;
    display: flex;
    flex-direction: column;
}

#piechart-stats li {
    list-style:none;
    height: 1em;
    line-height: 1;
    padding-left:0.618em;
    margin-bottom: 0.5em;
}

#piechart {
    width: 15em;
    height: 15em;
    margin: 0.618em auto;
    border-radius: 50%;
    background-image: conic-gradient(
        #5b6635 0 225deg,
        #648c4a 225deg 232deg,
        #6cb47f 232deg 300deg,
        #80c2b2 300deg 317deg,
        #6fc4e3 317deg 350deg,
        #509fd2 350deg 357deg,
        #4072b0 0
    );
}

@media (max-aspect-ratio: 1 / 1) {
    .section-img {
        width: 100%;
        max-width: none;
        height: 100vh;
        margin: 0;
      }
}

.relative {
    position: relative;
}

#main-header {
    background: #000;
    z-index: 0;
}

#main-header figure {
    -webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, .1)0, rgba(0, 0, 0, 1)calc((var(--h1, 1.978em) * 1.146) * 10));
    mask-image: linear-gradient(to top, rgba(0, 0, 0, .1)0%, rgba(0, 0, 0, 1)calc((var(--h1, 1.978em) * 1.146) * 10));
    z-index: 1;

}

main a {
    display: initial !important;
}

.smaller {
    font-size: 80%;
}

#main-header h2 span {
    font-weight: 400 !important;
}

#login h4 {
    margin-top: 1.618em;
}

.text {
    font-size: var(--h1);
    font-weight: 700;
    color: #fff;
    font-family: 'Roboto Flex';
    font-stretch: 50%;
    text-transform: uppercase;
}

.inner header h3,
.inner header {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 120%;
}

.mono {
    font-family: "roboto-mono", monospace;
}


.h0,
h1,
.h1,
h2,
.h2,
hgroup p strong {
    font-weight: 700
}

#main-header h1 .h0 {
    font-weight: 700 !important;
}

.h0 {
    font-size: var(--h0, 3.067em);
    line-height: 0.854;
    color: #fff;
}


code {
    background-color: transparent !important;
    font-weight: 700;
}

figcaption {
    font-family: "roboto-mono", monospace;
    color: #fff;
}


header abbr {
    text-decoration: none !important;
}

#israel h2 span {
    color: #D11F00;
}

#israel h2 {
    margin-top: 0 !important;
}

#main-header {
    align-items: flex-start;
    padding-left: 10vw;
}

@media screen and (max-width:50rem) {
    #main-header {
        padding-left: 5vw;
        padding-bottom: 5vw;
    }

    #main-header hgroup {
        padding-left: 5vw;
        padding-right: 5vw;
        margin-bottom: 10vh;
    }
}

#main-header hgroup {
    padding-left: 1.618em;
    padding-right: 0;
    transform: skew(-14deg);
    opacity: 1;
}

#main-header hgroup h2 {
    color: #fff;
    text-shadow: 0 0 1ch rgba(0, 0, 0, .2), 0 .146ch .236ch rgba(0, 0, 0, .2), .146ch .236ch .382ch rgba(0, 0, 0, .2), .236ch .382ch .618ch rgba(0, 0, 0, .2);
}

hgroup>* {
    text-align: left;
    margin: 0 auto 0 0;
}

#mian-header .main-header {
    max-width: none !important;
}

#main-header hgroup {
    border-bottom: 0.618em solid var(--blue);
    border-bottom: none;
    border-left: 0.618em solid var(--blue);
    width: 90%;
    max-width: none !important;
    z-index: 2;
    opacity: 1;
    line-height: 1;
}

@media screen and (min-aspect-ratio: 1/1) {

    #main-header hgroup {
        width: calc(50% - 5vw) !important;
    }
}

.name {
    font-weight: 400;
    line-height: 1;
}

.name span {
    display: block;
    font-weight: 900;
    font-size: 150%
}

.in-christ {
    font-size: 120%;
}

.uppercase {
    text-transform: uppercase;
    font-weight: 600;
}



.header-group {
    margin-top: 1.618rem;
}

#intro--h3 {
    margin-top: 0;
}

.primary {
    margin-bottom: 2.618rem;
}

.corner-border {
    border-right: 1em solid #8d8b00;
    border-bottom: 1em solid #8d8b00;
    width: 40%;
    display: flex;
    height: 5em;
    position: absolute;
    right: 2em;
    bottom: 2em;
}

.centered p {
    position: absolute;
    top: 0%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#table {
    position: relative;
    text-align: center;
    color: white;
    margin-top: 0 !important;
}

#table-container {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: grid;
    grid-template-columns: auto auto auto;
    column-gap: 1em;
    row-gap: 1em;
    width: 90%;
}

#table-container .glass-card {
    margin-top: 0 !important;
    text-align: left;
    min-width: 10em;
    min-width: 25vw;
    -webkit-backdrop-filter: blur(15px) brightness(0.8) !important;
    backdrop-filter: blur(15px) brightness(0.8) !important;
    border-radius: 0.618rem;
    padding: 1em;
    padding-bottom: 7em;
    position: relative;
}

@media screen and (max-width: 768px) {
    #table-container .glass-card {
        padding-bottom: 1em;
    }
}

#table-container li {
    list-style-type: none;
    margin-left: 0 !important;
}

#table-container a {
    color: #fff !important;
}

@media(max-aspect-ratio:1/1) {

    #table-container {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 1em;
        top: 50%;
    }

    .inner div {
        right: 1em;
        bottom: 1em;
    }

    header:not(:first-child) h2 {
        margin-top: 1em;
    }

    @media screen and (max-width:48rem) {

        .h0 {
            font-size: 4em;
        }

        .inner div {
            right: 0;
        }
    }
}

#letter h2 span {
    color: var(--blue);
}

blockquote {
    font-weight: 400;
    line-height: 1.5;
    font-size: clamp(100%, 61.8% + 0.618vw, 161.8%);
    margin-top: 0;
    margin-bottom: 1.618em;
}

blockquote cite {
    font-weight: 700;
}

blockquote strong span {
    color: #276fff;
}

@media (min-width:48em) {
blockquote {
    font-weight: 300;
}
}

.verse {
    margin: 2.618rem auto 2.618rem auto;
}

.numbers {
    color: #8d8b00;
}

.numbers span {
    font-size: 165%;
}

.glass-card span {
    font-weight: 900;
    font-size: 150%;
}



    .light-bar {
        border: none;
        display: block;
        height: 1px;
        width: calc(100% - 2rem);
        max-width: 47rem;
        margin: 3em 0;
        background: linear-gradient(to right, #000 0%, #fff 100%);
    }

@media screen and (max-aspect-ratio: 1920 / 1080) {
    .background-video {
        max-width: 100vw !important;
        height: 100%;
    }
}

.background-video {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0;
    min-width: 100vw;
    object-fit: cover;
    transform: translateX(calc((100% - 100vw) / 2));
}

address {
    font-size: 110%;
    font-weight: 500;
}

#morocco h2 {
    margin-top: 0;
}

#morocco {
    padding-bottom: 0;
}



section>header {
    padding-top: 1.236rem;
}

address span {
    display: block;
    margin: 0;
}

@supports (object-fit: cover) {
    #armenia figure img {
        height: 100%;
        object-fit: cover;
        object-position: 0%;
    }
}

.callout-box {
    border: 1px solid #fff;
    padding: 1em;
    border-radius: 10px;
}

.callout-box p {
    font-size: 110%;
}

article ul {
    margin: 1em auto;
    list-style: decimal;
}

.inner footer {
    height: 100%;
    margin: 1.618em auto;
    padding: 0;
}

.inner footer a {
    margin: 0 auto;
    padding: 0;
}

section .inner:last-of-type {
    padding-bottom: 5.618em;
}

section ul li {
    list-style-type: circle;
}

@media (max-width:64em) {
    .h0 {
        font-size: var(--h1);
    }

    .text {
        font-size: var(--h3);
    }

    #main-header {
        padding-left: 10%;
    }
}

@media (max-aspect-ratio: 1/1) {
    #img-container3, li {
        max-width: none !important;
    }
}

/*FUNCTIONALITY*/
/*Horizontal Scroll*/
.scroll-x{
    display: flex;
    align-items: flex-start;
    gap:1ch;
    margin:unset;
    padding:1ch max(1em,((100% - (var(--ch-unit)*100)) / 2));
    overflow-x: auto}

.scroll-x:not( :has(img)){gap:1em}

/*Scroll Snap*/
.scroll-x.scroll-snap{
    padding-top: 1em;
    padding-bottom: 1em;
    align-items: flex-start}

.scroll-x.scroll-snap>*{flex: 0 0 32.66ch}

@media(prefers-reduced-motion:no-preference){
    .scroll-snap{scroll-snap-type: x mandatory}
    .scroll-snap>*{scroll-snap-align: center}
}

#video-cards li {
    text-decoration:none;
    list-style: none;
    border-radius: 0.618em;
}

#video-cards article {
    padding: 0.618em;
}

#video-cards h3 {
    color: #000;
}

.callout-box p {
    font-size: 80%;
  }

  #full-width figure {
    width: 100%;
  }

  header h2:not(#letter h2) {
    font-size: 1.618em;
  }


  @media (min-width:48em) {
    header h2:not(#letter h2) {
        font-size: 2.309em;
      }
  }

  #graph {
    margin: 0.618em auto;
    width: 100%;
    max-width: 12em;
  }

  td, tr {
    text-align:left;
  }