*{
    box-sizing: border-box;
    /* border: 1px red solid; */
}

body{
    margin: 0;
    padding:0;
    background-color: #F2F0EF;
}

body {
    opacity: 0;
    transition: opacity 0.6s ease;
}

body.page-loaded {
    opacity: 1;
}

body.page-transitioning-out {
    opacity: 0;
}



/* ================================== */
/* ===========FIXED NAVIGATION========== */
/* ================================== */

.fixed_nav2{
    position:fixed;
    background-color: #F2F0EF;
    opacity: 1;
    top: 1em;
    height: 2.5em;
    width: 98%;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    font-family:Roboto Mono;
    padding: 0 1em 0 1em;
    margin: 0 1em;
    border: 1px black solid;
    border-radius: 10px;
    z-index: 999;
}

.middle{
    display: flex;
    width: 30%;
    justify-content: space-evenly;
}

.fixed_nav2 a{
    color: #1A160E;
    text-decoration: none;
    height: 100%;
}

.fixed_nav2 a:hover{
    color: #1A160E;
    text-decoration: underline;
}

#logo{
    height: 1.5em;
    position: relative;
    /* bottom: .18em; */
}
.logo{
  display: inline-block;
  height: 100%;
  width: auto;
}

 #logo:hover .logo {
  animation: pulse 0.5s ease-in-out infinite;
}


/* ================================== */
/* ===========LANDING================ */
/* ================================== */

.i_body{
    background-color: #F2F0EF;
    scroll-behavior: smooth;
}

.main1{
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-position: center center;
  background-attachment: fixed;
  padding: 0em 0em 0em 0em;
}

.main1{
    background-color: #F2F0EF;
}

.main1A{
  background-image: url(images/Houndstooth.png);
  width: 100%;
  display: flex;
  justify-content: center;
  /* border-radius: 15px; */
  filter: drop-shadow(0 0 .75rem black);
}


.home_target{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #80CB69;
    width: 95%;
    height: auto;
    padding: 1em;
    margin: 2em 1em;
    position: relative;
    color: #1A160E;
    filter: drop-shadow(0 0 .75rem black);
    border-radius: 15px;
}

.home_background{
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: center;
    padding: 1.5em;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 0 0.75rem black);
    position: relative;
}

.main1header{
    display: flex;
    flex-direction: column;
    justify-self: center;
    align-self: center;
    position: absolute;
    color: #aa040e;
    z-index: 2;
    animation: blink-2 1.5s infinite both;
    text-decoration: none;
}

.header_name{
    font-size: 10vw;
    color: red;
    z-index: 2;
    animation: blink-2 1.5s infinite both;
    text-decoration: none;
    font-family: "DotGothic16";
}

.figcapLanding{
    position: absolute;
    font-size: .5em;
    font-style: italic;
    font-family: "Roboto Mono";
    bottom: 1em;
    left: 40%;
}


h3{
    font-size: 1.2135em;
    font-family: "Roboto Mono";
}

p{
    font-size: .75em;
}


/* ================================== */
/* ===========ABOUT================== */
/* ================================== */

.about_main{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 3em 1em 2em 2em;
    margin-bottom: 0;
    width: 75%;
    flex: 1;
}

.about_header{
    width: 100%;
    border-bottom: 1px rgba(0, 0, 0, .1) solid;
    font-family: "Roboto Mono";
    font-size: 1.9634em;
    margin-top: .65em;
}

.about_body{
    display: flex;
    flex-direction: row;
    gap: 2em;
}

.about_image{
    position: sticky;
    top: 5.5em;
    align-self: flex-start;
    border: 1px white solid;
    border-radius: 10px;
    height: 100%;
}

.about_image img{
    display: block;
    border-radius: 10px;
    height: 100%;
}

.about_cap{
    position: absolute;
    bottom: 1em;
    left: .5em;
    font-family: "IBM Plex Sans";
    font-size: .5em;
    color: #F2F0EF;
}

.about_text{
    border: solid 1px rgba(0, 0, 0, .1);
    border-radius: 10px;
    padding: 1em;
}

.about_text h3{
    margin-top: 0;
    font-size: 1.25em;
}

.about_text p{
    font-size: .85em;
    font-family: "IBM Plex Sans";
}

.about_text a{
    color: #aa040e;
    text-decoration: none;
}

.about_text a:hover{
    color: #aa040e;
    text-decoration: underline;
}

.about_text a:visited{
    color: #aa040e;
}


/* ================================== */
/* ===========WORK=================== */
/* ================================== */

.work_card2{
    border-radius: 10px;
    width: 48.7%;
    display: flex;
    flex-direction: column;
    align-self: flex-start;
    position: relative;
    margin: 1em 0em;
}

a.work_card2 {
    color: black;
}

a.work_card2:visited{
    color: black;
}

.work_cardcard{
    position: absolute;
    top: 1em;
    left: 1em;
    width: 40%;
    height: auto;
    background-color:#F2F0EF;
    padding: 1em 1em .5em 1em;
    border-radius: 10px;
    border: white 1px solid;
}

.work_card_text{
    color: black;
    font-size: 1em;
    margin: 0;
}

.work_card_image{
    display: block;
    height: 100%;
    width: 100%;
    border-radius: 10px;
    border: 2px solid white;
}

.work_card_bottomtext{
    display: flex;
    justify-content: space-between;
    align-items:flex-start;
    font-family: "IBM Plex Sans";
}

.work_card h3{
    font-size: 1em;
    border-bottom: solid 1px rgba(0, 0, 0, .1);
}

.work_card_bottomtext img{
    position: relative;
    top: 1em;
}

.work_card_bottomtext p{
    width: 60%;
    font-size: .65em;
}

a.work_card{
    color: black;
    text-decoration: none;
    width: 100%;
}

a.work_card:visited{
    color: black;
    text-decoration: none;
}

a.work_card:hover{
  animation: shadow-drop-center 0.5s cubic-bezier(0.075, 0.820, 0.165, 1.000) both;
}

.work_cap{
    position: absolute;
    bottom: 1em;
    left: .5em;
    font-family: "IBM Plex Sans";
    font-size: .5em;
    color: #F2F0EF;
}


/* =========================================== */
/* ===========CHOREOGRAPHY PAGE=============== */
/* =========================================== */

.choreo_main{
    display: flex;
    padding: 3em 1em 1em 2em;
    background-color: #F2F0EF;
}

.choreo_column2{
    padding: 0em 0em 0em 0em;
    width: 75%;
    display: flex;
    flex-direction: column;
}

.choreo_column2 h2{
    font-family: "Roboto Mono";
    font-size: 1.7em;
}

.choreo_header{
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-bottom: .5em;
}

.choreo_gallery{
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
}

.choreo_card_tops,
.choreo_card_bottoms,
.choreo_card_bottoms2{
    display: flex;
    flex-direction: row;
    gap: 2em;
}

.choreo_card_bottoms{
    margin-bottom: 0;
}

.work_card{
    border-radius: 10px;
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-self: flex-start;
    position: relative;
    margin: 1em 0em;
}

.work_card video{
    display: block;
    width: 100%;
    height: auto;
    border-radius: 12px;
    border: solid 1px white;
}

video {
  cursor: pointer;
  transition: opacity 0.3s;
}

a.work_card2:hover{
    animation: shadow-drop-center 0.5s cubic-bezier(0.075, 0.820, 0.165, 1.000) both;
}


/* =========================================== */
/* ===========FRAGILE USELESS PAGE============ */
/* =========================================== */

.fragile_body_main{
  background-color: #F2F0EF;
}

.fragile_main {
    height: 100vh;
    position: relative;
    overflow: hidden;
    padding: 0em;
}

.fragile_card{
    position: relative;
    width: 35%;
    height: auto;
    background-color: #F2F0EF;
    z-index: 10;
    margin: 1rem;
    padding: 1rem;
    border-radius: 10px;
    border: 1px black solid;
    overflow: hidden;
    top: 3em;
    overflow-y: scroll;
}

.fragile_header{
    font-family: "Roboto Mono";
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-top: 0;
    margin-bottom: .5em;
}

.index_nav_c1_navfragile{
    position: relative;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1em;
}

.fragile_body_header{
    margin-top: 0;
    font-family: "IBM Plex Sans";
    width: 50%;
    font-style: italic;
}

.fragile_body{
    column-count: 2;
    font-family: "IBM Plex Sans";
    padding: .5em 0em 0em;
}

.p1{
    margin-top: 0;
}

#justin_web_short{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.artichaut_nav{
    font-size: .7em;
    font-family: "Roboto Mono";
    color: black;
    padding: .25em 0em 0em;
}

.artichaut_nav:visited{
    color: black;
}

.artichaut_nav:hover{
    color: #aa040e;
}


/* =========================================== */
/* ===========LIMBIC CUM  PAGE================ */
/* =========================================== */

.limbic_body_main{
  background-color: #F2F0EF;
  height: 100%;
}

.limbic_main {
    padding: 0em;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.limbic_card{
    position: relative;
    width: 35%;
    height: auto;
    background-color: #F2F0EF;
    z-index: 10;
    margin: 1rem;
    padding: 1rem;
    border: 1px black solid;
    border-radius: 10px;
    overflow: hidden;
    overflow-y: scroll;
    top: 3em;
}

.limbic_header{
    font-family: "Roboto Mono";
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-top: 0;
    margin-bottom: .5em;
}

.limbic_body_header{
    margin-top: 0;
    font-family: "IBM Plex Sans";
    width: 50%;
    font-style: italic;
}

.limbic_body{
    column-count: 2;
    font-family: "IBM Plex Sans";
    background-color: #F2F0EF;
    padding: .5em 0em 0em;
}

#magician_web_short{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}


/* =========================================== */
/* ===========PARADISE PAGE=================== */
/* =========================================== */

.paradise_body_main{
  background-color: #F2F0EF;
}

.paradise_main {
    height: 100vh;
    position: relative;
    overflow: hidden;
    padding: 0em;
}

.paradise_image{
    width: 100%;
    height: auto;
    z-index: -1;
}

.paradise_card{
    position: absolute;
    width: 25%;
    height: auto;
    background-color: #F2F0EF;
    z-index: 10;
    margin: 1rem;
    padding: 1rem;
    border: 1px black solid;
    border-radius: 10px;
    overflow: hidden;
    top: 3em;
    overflow-y: scroll;
}

.paradise_header{
    font-family: "Roboto Mono";
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-top: 0;
}

.paradise_body_header{
    font-style: italic;
    margin-top: 0;
}

.paradise_body{
    column-count: 1;
    font-family: "IBM Plex Sans";
}


/* =========================================== */
/* ===========STUDIES PAGE==================== */
/* =========================================== */

.studies_body_main{
  background-color: #F2F0EF;
}

.studies_main {
    height: 100vh;
    position: relative;
    overflow: hidden;
    padding: 0em;
}

.studies_image{
    width: 100%;
    height: auto;
    z-index: -1;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.studies_card{
    position: absolute;
    width: 25%;
    height: auto;
    background-color: #F2F0EF;
    z-index: 10;
    margin: 1rem;
    padding: 1rem;
    border: 1px white solid;
    border-radius: 10px;
    overflow: hidden;
    top: 3em;
    overflow-y: scroll;
}

.studies_header{
    font-family: "Roboto Mono";
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-top: 0;
}

.studies_body_header{
    font-style: italic;
    margin-top: 0;
}

.studies_body{
    column-count: 1;
    font-family: "IBM Plex Sans";
}


/* =========================================== */
/* ===========FLESH NEXUS PAGE================ */
/* =========================================== */

.flesh_body_main{
  background-color: #F2F0EF;
}

.flesh_main {
    height: 100vh;
    position: relative;
    overflow: hidden;
    padding: 0em;
}

.flesh_image{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.flesh_card{
    position: absolute;
    width: 35%;
    height: auto;
    background-color: #F2F0EF;
    z-index: 10;
    margin: 1rem;
    padding: 1rem;
    border-radius: 10px;
    border: 1px black solid;
    overflow: hidden;
    top: 3em;
    overflow-y: scroll;
}

.flesh_header{
    font-family: "Roboto Mono";
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-top: 0;
    margin-bottom: .5em;
}

.flesh_body_header{
    margin-top: 0;
    font-family: "IBM Plex Sans";
    width: 50%;
    font-style: italic;
}

.flesh_body{
    column-count: 2;
    font-family: "IBM Plex Sans";
    padding: .5em 0em 0em;
}

.flesh_body a{
    color: #aa040e;
    text-decoration: none;
}

.flesh_body a:visited{
    color: #aa040e;
    text-decoration: none;
}

.flesh_body a:hover{
    text-decoration: underline;
}


/* ================================== */
/* ===========SUPPORT================ */
/* ================================== */

.support_main{
    display: flex;
    padding: 3em 2em 0em 2em;
    background-color: #F2F0EF;
    min-height: 77vh;
}

.support_card_bottoms{
    width: 40%;
}


.support_gallery{
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 0;
}

.support_gallery a{
    color:#aa040e;
    text-decoration: none;
    font-weight: bold;
    font-family: "IBM Plex Sans";
    font-size: .9em;
}

.support_gallery a:hover{
    color: black;
    text-decoration: underline;
}

.support_gallery a:visited{
    color:#aa040e;
}

.support_card_tops{
    display: flex;
    flex-direction: column;
    width: 40%;
}

.support_p{
    font-family: "IBM Plex Sans";
    font-size: .9em;
    margin-top: .5em;
    /* margin-bottom: .5em; */
}

.support_p1{
    font-family: "IBM Plex Sans";
    font-size: .9em;
    font-style: italic;
    padding-top: 10em;
}

.support_header{
    border-bottom: solid 1px rgba(0, 0, 0, .1);
    margin-bottom: .5em;
    width: 40%;
}

.socialorgs_toggle {
    list-style: none;
}

.socialorgs_toggle summary {
    cursor: pointer;
    list-style: none;
}

.socialorgs_toggle summary::-webkit-details-marker {
    display: none;
}

.socialorgs {
    display: flex;
    flex-direction: column;
    gap: .35em;
    margin-top: .5em;
}

.socialorgs a {
    font-family: "IBM Plex Sans";
    font-size: .85em;
    color: #aa040e;
    text-decoration: none;
}

.socialorgs a:hover {
    text-decoration: underline;
}

.socialorgs a:visited {
    color: #aa040e;
}

.socialorgs{
    display: flex;
    flex-direction: column;
}


/* ================================== */
/* ===========FOOTER================= */
/* ================================== */

.footer{
  display: flex;
  flex-direction: column;
  font-family: "Roboto Mono";
  color: black;
  height: auto;
  border: 1px black solid;
  border-radius: 10px;
  margin: 1em;
}

.footer a:link{
  color: black;
  text-decoration: none;
}

.footer a:visited{
  color: black;
  text-decoration: none;
}

.footer a:hover{
    text-decoration: underline;
}

.squares{
  display: flex;
  flex-direction:row;
  background: #F2F0EF;
  padding: 0 .5em 0 .5em;
  border-radius: 10px;
}

.square1{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.square1 p{
    font-size: .5em;
}

.sq1col2{
    display: flex;
    flex-direction: column;
}

.square1,
.square2,
.square3,
.square4{
    width: 100%;
    height: 10em;
}

.square1,
.square2 {
    padding-left:.5em;
}

.square1 a{
    font-size: .75em;
}

.square1 h3,
.square2 h3{
    margin-bottom: .55em;
}

.square2 img{
    height: 1.5em;
}

.square3{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.square4{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
}

.square4 p{
    font-size: .75em;
}

.donate-btn{
    position: relative;
    right: 1em;
    bottom: 1em;
    font-size: .85em;
    font-family: "Roboto Mono";
    padding: 1.25em 2.75em;
    border: 1px solid black;
    border-radius: 5px;
    margin-bottom: .4em;
    color: black !important;
    background-color:#F2F0EF;
    text-decoration: none;
    font-weight: bold;
}

.donate-btn:hover{
    background:black;
    color: white !important;
    text-decoration: none !important;
    animation: shadow-drop-center 0.5s cubic-bezier(0.075, 0.820, 0.165, 1.000) both;
}


/* =========================================== */
/* ===========CALENDAR PAGE================== */
/* =========================================== */

.calendar_main {
    display: flex;
    padding: 3em 1em 2em 2em;
    background-color: #F2F0EF;
    min-height: 77vh;
}

.cal_list {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: .5em;
}

.cal_item {
    display: flex;
    flex-direction: row;
    gap: 2em;
    align-items: baseline;
    padding: .75em 0;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.cal_item.past {
    opacity: 0.38;
    text-decoration: line-through;
}

.cal_date {
    font-family: "Roboto Mono";
    font-size: .78em;
    min-width: 13em;
    flex-shrink: 0;
}

.cal_details {
    display: flex;
    flex-direction: column;
    gap: .2em;
}

.cal_title {
    font-family: "IBM Plex Sans";
    font-size: .88em;
    font-weight: 600;
}

.cal_venue {
    font-family: "IBM Plex Sans";
    font-size: .75em;
    color: rgba(26, 22, 14, 0.6);
}


/* ----------------------------------------------
 * Generated by Animista on 2025-10-5 8:55:26
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation blink-2
 * ----------------------------------------
 */
@keyframes blink-2 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

  /* ----------------------------------------------
 * Generated by Animista on 2025-12-1 9:32:58
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/*
 * ----------------------------------------
 * animation pulse
 * ----------------------------------------
 */

 @keyframes pulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.08); }
    100% { transform: scale(1); }
  }

  /* ----------------------------------------------
 * Generated by Animista on 2025-12-1 9:32:58
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/*
 * ----------------------------------------
 * animation shadow-drop-center
 * ----------------------------------------
 */
@keyframes shadow-drop-center {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
            box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 20px 0px rgba(0, 0, 0, 0.35);
            box-shadow: 0 0 20px 0px rgba(0, 0, 0, 0.35);
  }
}
