@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@300..700&display=swap');

@font-face {
    font-family: 'burton';
	src: url('fonts/burton.ttf') format('truetype');
    src: url('fonts/burton-webfont.woff2') format('woff2'),
         url('fonts/burton-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'skinny';
	src: url('fonts/skinny-bold.ttf') format('truetype');
    src: url('fonts/skinny-bold-webfont.woff2') format('woff2'),
         url('fonts/skinny-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sura';
	src: url('fonts/sura.ttf') format('truetype');
    src: url('fonts/sura-webfont.woff2') format('woff2'),
         url('fonts/sura-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;	
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
  }
body, html {
	width:100%; 
	height:100%; 
	-webkit-text-size-adjust: none!important;
	overflow-x: hidden;
	
}
html {
	height: -webkit-fill-available;
	 -webkit-font-smoothing: antialiased;
	font-size: calc(18px + 1vw);
	overflow-y: scroll;
}
body {
    position: relative;	
	background: linear-gradient(to bottom, #4b5782 0%,#2a4aaa 81%,#00677d 100%);
  	text-align:center;	
	color:#fff;
	font-size: .7rem;	
	line-height:130%;
	font-family: "Comfortaa", sans-serif;
  font-optical-sizing: auto;	
	min-height:100vh;
	min-height: -webkit-fill-available;
	overflow-y:scroll;
	height:100vh;
}

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	}

p {
	font-size: .7rem;	
	line-height:130%;
}
h1, h2, h3, h4, h5 {
	font-family: "skinny", "sans-serif";
}
h1 {
	font-size:2.5rem;
	line-height:130%;
}
h2 {
	font-size:1.5rem;
	line-height:130%;
}
h3 {
	font-size:1rem;
	line-height:130%;
}
h5 {
	font-size:.8rem;
	color:#b6d84e;
}
a {
	color:#b6d84e;
	text-decoration:none;
}
a:hover {
	opacity:.6;
	-webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}
#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    z-index: 2000000;	
}
.no-js #loader-wrapper {
    display: none;
}
#loader-wrapper .loader-section {
    position: fixed;
    top: 0;
    width: 51%;
    height: 100%;
    background: #56267b;
    z-index: 2000001;
}
 
#loader-wrapper .loader-section.section-left {
    left: 0;
}
 
#loader-wrapper .loader-section.section-right {
    right: 0;
}

.loaded #loader-wrapper .loader-section.section-left {
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); 
    -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000); 
    -o-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000); 
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}
 
.loaded #loader-wrapper .loader-section.section-right {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
    -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    -o-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}

.loaded #loader-wrapper,
.loaded #loader-holder {
    visibility: hidden;	
}
#loader-holder {
	position:absolute;
	top:50%;
	left:50%;
	width:128px;
	height:60px;
	margin-left:-64px;
	margin-top:-30px;
	display:block;
	z-index:2000001;	
}
.loader--three-bounce { 
    display: flex; 
    align-items: center; 
    width: 64px; 
    height: 64px; 
	}
.loader--three-bounce div { 
    flex: 0 0 18px; 
    height: 18px; 
    border-radius: 50%; 
    background-color: #b6d84e; 
    animation: bounceDelay 1.4s infinite ease-in-out; 
}
.loader--three-bounce div ~ div { 
    margin-left: 5px; 
}
.loader--three-bounce .loader__circle--one { 
    animation-delay: -.32s; 
}
.loader--three-bounce .loader__circle--two { 
    animation-delay: -.16s; 
}
@-webkit-keyframes bounceDelay {
  0%, 100% {
  -webkit-transform: scale(0);
	 transform: scale(0);
  opacity:.1;
  }  
  50% {
  -webkit-transform: scale(1);
	  transform: scale(1);
  opacity:1;}  
}
@keyframes bounceDelay {
 0%, 100% {
  transform: scale(0);
  opacity:.1;
  }  
  50% {
  transform: scale(1);
  opacity:1;}  
}
#intro {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	max-height:100vh;
	text-align:center;
	overflow:hidden;
	z-index:1;	
	
}
#scroller {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:auto;	
	min-height:100%;
	
}
#full {
	position:fixed;
	left:0;	
	top:0;
	z-index:0;
	width:100%;
	height:100%;
	background: radial-gradient(ellipse at center, #1b1464 0%,#662d91 74%);
	overflow:hidden;	
}
#enter {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:transparent;
	z-index:1000;
	cursor:pointer;
}
#doorwrap {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;	
	
}
#spacer {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;	
	background:transparent;		
	z-index:2;
	padding:1rem 0;
	display:flex;
	flex-direction:column;
	align-content:center;
	justify-content:center;
	align-items:center;
	row-gap:1rem;
}
#logo {
	position:relative;
	flex:1 1 70%;	
	width:70%;
	z-index:4;		
	
}
#picrow {
	position:relative;
	flex:1 1 90%;
	max-width:90%;
	/*flex-basis:100%;*/
	height:auto;
	display:flex;
	flex-direction:row;	
	flex-wrap:nowrap;
	justify-content:center;
	align-items:flex-start;		
}
#picrow .photo {
	flex:1 1 14%;	
	padding:.5rem;	
}
#picrow .photo:nth-child(even),
.fun:nth-child(even) {
	background:#000;
}
#picrow .photo:nth-child(odd),
.fun:nth-child(odd)  {
	background:#fff;
}

#picrow .photo:nth-child(1) {
	margin-top: -15px;
}
#picrow .photo:nth-child(2) {
	transform:rotate(-1deg);
}
#picrow .photo:nth-child(3) {
	margin-top: -25px;
}
#picrow .photo:nth-child(4) {
}
#picrow .photo:nth-child(5) {
	transform:rotate(-1deg);
	margin-bottom: -25px;
}
#picrow .photo:nth-child(7) {	
	margin-top: -10px;
	transform:rotate(-3deg);
}
#tagline {
	position:relative;
	flex:1;
	display:block;
	padding:0rem 5% 0rem;
	
}
#tagline p {
	font-size:.85rem;
	font-family: "skinny", "sans-serif";
	color:#e5da13;	
}
#spinner {
	position:absolute;
	top:50%;
	left:50%;
	width:3000px;
	height:3000px;	
	aspect-ratio:1/1;
	transform: translate(-50%,-50%) rotate(0deg);	
	overflow: hidden;
	
}
#spiral {
	position:absolute;
	fill:#000000;
	top:0;
	left:0;
	width:100%;
	height:100%;	
	mix-blend-mode: multiply;
	opacity:0.5;
	transform-origin: 1500px 1500px;
	-webkit-animation: spin 120s linear infinite;
    -moz-animation: spin 120s linear infinite;
    -o-animation: spin 120s linear infinite;
    animation: spin 120s linear infinite;
}
#door {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:3;
	background-image:url("img/bkg-wide.svg");
	background-size:auto 100%;
	background-position:center top;
	background-repeat:no-repeat;
	overflow:visible;	
}

#leftswirl {
	position:absolute;
	left:10.125%;
	bottom:0;
	width:17.66%;
	height:100%;
	background:url("img/leftswirl.png");
	background-size:cover;
	z-index:4;
	
}
#rtswirl {
	position:absolute;
	right:5.5%;
	bottom:0;
	width:19.84%;
	height:100%;
	background:url("img/rightswirl.png");
	background-size:cover;
	z-index:4;
}
.wrap {
	position:relative;
	float:left;
	clear:both;
	width:76%;
	margin:0 12%;
	height:auto;
}
img {
	width:100%;
	height:auto;
	max-width:100%;
}

#logo img {
	position:relative;
	height:100%;
	width:auto;
}


@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-moz-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-o-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.divider {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;
	min-height:15vh;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	/*background:#98b53b;*/
	color:#fff;
	padding:3rem 15%;
	font-size:2.2rem;
}

#details {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;
	padding-top:4rem;
	padding-bottom:3rem;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;		
	-webkit-box-orient: horizontal;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: row;	
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-column-gap:30px;
	   -moz-column-gap:30px;
	        column-gap:30px;
}

#datetime {
	flex:1 1 50%;
	width:50%;
	text-align:center;
}

#symone h2,
#reader h2 {
	color:#e5da13;
	font-size:1.8rem;
	line-height:1.1;
	margin-bottom:0;
}
#symone h2 span,
#reader h2 span {
	font-size:.8rem;
	color:#e5aa17;	
	margin-top:0;
	padding-top:0;
}
#datetime h2 {	
	color:#b6d84e;	
	font-family:'sura', serif;
	font-size:3rem;
	line-height:1;
}

#datetime h3,
#datetime h4 {
	font-family:'sura', serif;
	font-size:1rem;
	color:#e5aa17;
	line-height:1.2;
}
#datetime p {	
	font-family: "Comfortaa", sans-serif;
    font-optical-sizing: auto;
	font-size:.7rem;
	margin-top:.7rem;
	
}

#tickets {
	display:inline-block;
	margin-top:2rem;
	width:30%;
	height:auto;
}
#tickets img {
	max-width:100%;
}
#eats{
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;
	min-height:100vh;
	padding-top:4rem;
	padding-bottom:4rem;
	text-align:center;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: .5rem;
	z-index:3;
}
#eats h1 {
	font-family:'sura', serif;
	color:#e5aa17;
}
#eats h3 {
	display:block;
	padding:1rem 15%;
}
#eats h5 {
	padding:0 15%;
	font-size:.9rem;
}
.third {
	-webkit-box-flex:1;
        -ms-flex:1 1 33%;
            flex:1 1 33%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	row-gap:.5rem;
	text-align:center;
}
.menu-item {
	-webkit-box-flex:1;
        -ms-flex:1 1 100%;
            flex:1 1 100%;	
	width:100%;
	background:rgba(0,0,0,.2);
	border:1px solid #98b53b;	
	padding:.25rem;
}

#foods h3 {
	font-size:.7rem;
	line-height:normal;
	margin-bottom:.8rem;
	color:#b0e2f1;
}
#foods h4 {
	font-size:1.1rem;
	line-height:normal;
	margin-bottom:.8rem;
	color:#e5aa17;
}
#foods p {
	font-size:.45rem;
	line-height:1;
}
#foods p span {
	font-size:.35rem;
}
#food-pics,
#foods {
	position:relative;
	float:left;
	clear:both;	
	margin-top:1rem;
	flex:1 1 70%;
	max-width:70%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	gap: 20px;
}

#music,
#tarot {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	min-height:70vh;
	padding-top:4rem;
	padding-bottom:4rem;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	
}
.ent   {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	margin:0;
	min-height:70vh;
	padding:4rem;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: horizontal;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: row;	
	        flex-direction: row;
	gap:2rem;
	
}


#todo   {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	margin:0;
	min-height:70vh;
	padding:4rem 1rem;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: horizontal;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: row;	
	        flex-direction: row;
	align-content:center;
	align-items:center;
	gap:.5rem;
	
}

.purp {
	background:rgba(147,75,209,0.5);
	background:rgba(0,0,0,0.2);
}

.fun h3 {
	background:#98b53b;
	padding:.25rem;
	color:#fff;
	transform:rotate(5deg);
	margin-bottom:-1rem;
	font-size:.65rem;
}
.fun:nth-child(even) h3 {
	transform:rotate(-5deg);
}
#symone,
#reader {
	flex:1 1 70%;
	max-width:70%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	align-items:flex-start;
	align-content:flext-start;
	gap:1rem;	
	text-align:left;
}
#symone p,
#reader p {
	font-size:.6rem;
	line-height:1.1;
	text-align:left;
}
#sy, #martha {
	flex:1 1 50%;
	position:relative;
	overflow:hidden;
}
#martha {
	aspect-ratio:1/1;
}
#sy img {
	position:absolute;
	top:0;
	left:50%;
	height:100%;
	width:auto;
	max-width:none;
	transform:translateX(-50%);
}
.vid {
	aspect-ratio:16/9;
	margin-top:1rem;
}
#martha img {
	position:absolute;
	top:50%;
	left:50%;
	height:auto;
	width:100%;
	transform:translate(-50%,-50%);
}
.fun {
	flex:1 1 25%;
	padding:1.25rem .75rem;
}
.twothird {
	flex:1 1 66%;
	text-align:left;
}
.left {
	flex:1 1 40%;
	text-align:left;
}
.right {
	flex:1 1 60%;
	text-align:left;
	
}
#sponsors {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;
	min-height:100vh;
	text-align:center;
	z-index:3;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#donors {	
	position:relative;
	float:left;
	clear:both;
	width:100%;
	/*min-height:100vh;*/
	text-align:center;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;	
	justify-content:center;
	align-items:center;
	align-content:center;
	row-gap:5rem;
	z-index:3;
	padding-top:3rem;
	padding-bottom:3rem;
}
#diamonds,
#rubies,
#emeralds,
#sapphires,
#amethysts,
#topazes {
	position:relative;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	flex:1 1 80%;
	width:80%;	
	z-index:3;
}
.wavy-striped-border {
  position:relative;
float:left;
	clear:both;
	display:block;  
  width: 100%;
  height: 50px;
}

#info,
#donors .full{
	flex:1 0 100%;
	width:100%;
	z-index:3;
}
#info {
	position:relative;
	float:left;
	clear:both;
	padding:3rem 5%;
}
#info h4 {
	font-size:1.4rem;
	line-height:1.1;
}
hr {
	position:relative;
	float:left;
	clear:both;
	width:70%;
	margin:1rem 15%;
    overflow: visible; 
    height: 1px;
    border-style: solid;
    border-color: rgba(182,216,78,.8);
    border-width: 2px 0 0 0;
    border-radius: 20px;
}

#sponsors h1 {
	color:#e5aa17;
	flex:0;
	min-width:100%;
	text-align:center;
}
h1.thanks {
	font-family:'skinny', serif;
	color:#e5aa17;	
	flex:0;
	min-width:100%;
	text-align:center;
}
.bordered {
	border:2px solid #b6d84e;
	
}

.sponsorbox {
	border:2px solid #fff;	
	height:auto;
	padding-top:4rem;
	padding-bottom:2rem;
}
.title {
	position:absolute;
	top:0;
	left:50%;
	width:auto;
	height:auto;
	padding:.5rem 1rem;
	transform:rotate(-5deg) translate(-50%,-50%);
	background:#98b53b;
    border:2px solid #fff;
}
.title h2 {
	font-family:'skinny';
	font-size:1.5rem;	
	color:#fff;
}
.title h5 {
	font-family: "Comfortaa", sans-serif;
	font-size:0.8rem;
	color:#fff;
} 

#diamonds .title h2,
#diamonds .title h5 {
	color:#211667;
}
.titlert {	
	transform:rotate(5deg) translate(-50%,-50%);
}
.dia {
	background: linear-gradient(to bottom, #f0f9ff 31%,#d0dbed 100%); 
}
.red {
	background: linear-gradient(to bottom, #cf181f 0%,#a31a23 100%);
}
.green {
	background: linear-gradient(to bottom, #acd149 0%,#4bbc5a 100%); 
}
.blue {
	background: linear-gradient(to bottom, #54a2d3 0%,#483ab6 100%);
}
.amethyst {
	background: linear-gradient(to bottom, #b933cd 1%,#6736aa 100%); 
}
.topaz {
	background: linear-gradient(to bottom, #dbdb00 0%,#c59b00 100%);
}
.sponsor-wrap {
	flex:1 0 100%;
	width:100%;
	z-index:3;
	text-align:center;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	gap: 20px;	
	margin-top:1rem;
}
.diamond-wrap {
	flex:1 0 100%;
	width:100%;
	z-index:3;
	text-align:center;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	gap: 20px;	
	margin-top:1rem;
	padding-left:2rem;
	padding-right:2rem;
}
.diamond-box {
	-webkit-box-flex:0;
        -ms-flex:1 1 40%;
            flex:1 1 40%;	
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
	background:rgba(0,0,0,0.1);
	border:1px solid #fff;
	padding:1rem;
}	
.diamond-box h2 {	
	font-size:1.1rem;
}
.diamond-box h5 {	
	line-height:1.2;
}
.sponsor {
	position:relative;
	-webkit-box-flex:0;
        -ms-flex:0 1 15%;
            flex:0 1 15%;
	aspect-ratio:1/1;
	min-width:15%;
	max-width:180px;	
	background:#fff;
	border:1px solid #000;
	padding:5px;
}
.diamond {
	-webkit-box-flex:0;
        -ms-flex:0 1 20%;
            flex:0 1 20%;
	min-width:250px;
	max-width:360px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg, #ccdbe2 0%, #b6c4d6 20%, #8fa3bf 40%, #bed6d5 60%, #b4afd3 80%, #ccdbe2 100%) border-box;
    border: 10px solid transparent;
}

#rubies .sponsor {
	-webkit-box-flex:0;
        -ms-flex:0 1 16%;
            flex:0 1 16%;
	aspect-ratio:1/1;
	min-width:150px;
	max-width:200px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg, #a11e21 0%, #c93c00 20%, #9b0727 40%, #b72a5b 60%, #c90d00 80%, #a11e21 100%) border-box;
    border: 8px solid transparent;
}
#emeralds .sponsor {
	-webkit-box-flex:0;
        -ms-flex:0 1 15%;
            flex:0 1 15%;
	aspect-ratio:1/1;
	min-width:150px;
	max-width:180px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg,rgb(180,221,180) 0%,rgb(131,199,131) 0%,rgb(82,177,82) 13%,rgb(0,138,0) 37%,rgb(0,87,0) 58%,rgb(0,138,0) 100%) border-box;
    border: 8px solid transparent;
}

#sapphires .sponsor {
	-webkit-box-flex:0;
        -ms-flex:0 1 12%;
            flex:0 1 12%;
	aspect-ratio:1/1;
	min-width:120px;
	max-width:150px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg, #1e1b8e 0%,#0051c4 20%,#06467a 40%,#3a1a72 60%,#4400ba 81%,#1e1b8e 100%) border-box;
    border: 8px solid transparent;
	
}
#amethysts .sponsor {
	-webkit-box-flex:0;
        -ms-flex:0 1 12%;
            flex:0 1 12%;
	aspect-ratio:1/1;
	min-width:120px;
	max-width:150px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg,  #9228cc 0%,#ed2ef7 20%,#bf1e84 40%,#9a1aa8 60%,#db74ed 81%,#b72fed 100%) border-box;
    border: 8px solid transparent;
	
}

#topazes .sponsor {
	-webkit-box-flex:0;
        -ms-flex:0 1 12%;
            flex:0 1 12%;
	aspect-ratio:1/1;
	min-width:120px;
	max-width:150px;
	background: linear-gradient(#ffffff 0%, #ffffff 100%) padding-box, linear-gradient(45deg,  #9c772c 0%,#d8b55b 20%,#9b6700 40%,#bfa137 60%,#ce8f2b 81%,#9c772c 100%) border-box;
    border: 8px solid transparent;
}
#sapphires .sponsor-wrap,
#amethysts .sponsor-wrap,
#topazes .sponsor-wrap {	
	gap: 20px;	
}

.sponsor::after{
  content: '';
  position: absolute;
  left: -2px;
  top: -2px;
  background: #fff;
  width: 100%;
  height: 100%;
  z-index: -2;
  filter: blur(.35rem);
  opacity:.5;
}
 
.sponsor a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
}
.sponsor img {
	position:absolute;
	top:50%;
	left:5px;
	width:calc(100% - 10px);
	height:auto;
	-webkit-transform:translateY(-50%);
        -ms-transform:translateY(-50%);
            transform:translateY(-50%);
}

h5.gift {
	font-size:1.2rem;
	color:#a2dbe3;
}

#footer {
	display:block;
	position:relative;
	float:left;
	clear:both;
	width:100%;
	height:auto;
	padding:2rem 0;
	background:rgba(0,0,0,0.2);
	border-top:3px solid #e5aa17;
	z-index:3;
}
.gcc {
	width:120px;
	height:auto;
}
#footer a {
	text-decoration:none;
}

#footer .social {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	margin:1rem 0rem;
	height:auto;
	text-align:center;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	gap:.5rem;
}
#footer.social a {
	flex:1;
	border:none;
	cursor:pointer;
	opacity:1;
	font-size:1.6rem;
	color:#e5aa17;
}

@media screen and (max-width: 1800px) {
	#leftswirl {	
	left:0%;	
}
#rtswirl {	
	right:0%;
}
}
@media screen and (max-width: 1230px) {
	#leftswirl,
	#rtswirl {	
	display:none;	
}
	#sy, #martha {
		max-width:40%;
	}
	#spacer {
		padding:3rem 0;
	}
}
@media screen and (max-width: 900px) {
#logo {	
	flex:1 1 90%;	
	width:90%;	
}
	
#picrow .photo {	
	padding:.25rem;	
}
	
#tickets {
   	margin-top:1rem;
	width:40%;
}
#eats{	
	min-height:auto;
	padding-top:3rem;
	padding-bottom:3rem;
}
#todo {
	flex-wrap:wrap;
	gap:1.5rem;
	}
	
.fun {
	flex:1 1 50%;
	max-width:46%;
	padding:.75rem;
}
.fun h3 {
	padding:.5rem;
	font-size:1rem;
}
.fun:nth-child(3) {
		background:#000;
	}
.fun:nth-child(3) h3 {
	transform:rotate(-5deg);
}
.fun:nth-child(4) h3 {
	transform:rotate(5deg);
}
	
.fun:nth-child(4) {
		background:#fff;
	}
.ent,
#todo,
#eats   {
	min-height:auto;
	padding:4rem 1rem;	
}
}
@media screen and (max-width: 800px) and (orientation: portrait) {
	#door {	
	background-image:url("img/bkg-tall.svg");
	background-size:auto 100%;
	background-position:center top;
	background-repeat:no-repeat;
	overflow:hidden;	
}
	#spacer {
		height:100vh;
	}
	#picrow .photo:nth-child(5),
	#picrow .photo:nth-child(6),
	#picrow .photo:nth-child(7) {
		display:none;
	}
	#picrow .photo {
		flex:1 1 25%;
	}
	#tickets {
   	width:65%;
}
	#food-pics,
	#foods {
	-webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;	
	gap:20px;
	width:90%;
	max-width:90%;
}
	.third {
	 -webkit-box-flex:0;
        -ms-flex:0 0 100%;
            flex:0 0 100%;
	min-width:100%;
}
#todo {
	-webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;		
	gap:1.5rem;
	}
	
.fun {
	flex:1 1 100%;
	max-width:100%;
	padding:.75rem;
}
.fun:nth-child(3) {
		background:#fff;
	}
.fun:nth-child(3) h3 {
	transform:rotate(5deg);
}
.fun:nth-child(4) h3 {
	transform:rotate(-5deg);
}
	
.fun:nth-child(4) {
		background:#000;
	}	
#martha img {
	position:absolute;
	top:0;
	left:50%;
	height:100%;
	width:auto;
	max-width:none;
	transform:translateX(-50%);
}
.title {
	padding:1rem;
}
.title h2 {
	font-size:1.2rem;
}
.title h5 {
	font-size:0.65rem;
	} 
#symone,
#reader {
	gap:15px;
}
.sponsor {
	-webkit-box-flex:1;
        -ms-flex:1 1 15%;
            flex:1 1 15%;
	min-width:15%;
	max-width:180px;
}
.diamond {
	-webkit-box-flex:1;
        -ms-flex:1 1 85%;
            flex:1 1 85%;
	min-width:85%;
	max-width:360px;
}
.diamond-wrap {	
	-webkit-box-orient: vertical;	
	-webkit-box-direction: normal;	
	    -ms-flex-direction: column;	
	        flex-direction: column;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;	
	padding-left:.5rem;
	padding-right:.5rem;
}
}