:root {
--color-primary: #ff2d87;
--color-secondary: #ffd200;
--color-tertiary: #fff6e5;
--bg-nav:  #fff6e5;
--color-nav: #ff2d87;
--bg-body: #a1947c;
--color-body: #1a1a1a;
--bg-body-login: #a1947c;
--bg-footer: #ff2d87;
--color-footer: #fff;
--color-footer-hover: #fff;
}


/* 
////
//// Easing general purpose
////
--------------------------------------------------------------*/
.easeOut { -webkit-transition-property: all; -webkit-transition-duration: 350ms; -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); -moz-transition-property: all; -moz-transition-duration: 350ms; -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); transition-property: all; transition-duration: 350ms; transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); }
/* mainBtm
////
//// Default Font
////
--------------------------------------------------------------*/
html, body { height: 100%; min-height: 100%; }
body { font-family:  "Inter", "Helvetica Neue", Arial, "Nimbus Sans L", FreeSans; font-weight: 400; }
strong { font-weight: 600; }
.genC1 { color: var(--color-primary)!important; }
.genC2 { color: var(--color-secondary)!important; }
.genC3 { color: var(--color-tertiary)!important; }
.genPad1 { padding-top: 7.6rem; padding-bottom: 7.6rem;}
#fullWrp { margin: 0 auto; min-height: 100%; background: var(--bg-body); position: relative;  }
svg path,svg shape,svg linearGradient { shape-rendering: geometricPrecision; }
.FntTTB { font-family: "PT Sans Narrow", "Helvetica Neue", Arial, "Nimbus Sans L", FreeSans; font-weight: 700;  }
.FntCal { font-family: "Bagel Fat One", "Helvetica Neue", Arial, "Nimbus Sans L", FreeSans!important;  font-weight: 400!important;   }
.FntBan { font-family: "Bangers", "Helvetica Neue", Arial, "Nimbus Sans L", FreeSans !important; }


/* logo 
-----------------------------*/
#mainLogo { float: left; }
#mainLogo a { display: block; background: url("../images/main_logo.svg") no-repeat left center; background-size: contain!important; width: 225.5px; height: 62px; white-space: nowrap; text-indent: -8000px; margin-left: 0px; }
@media all and (max-width: 1024px) {
#mainLogo a  {  background-size: contain; }
}
@media (max-width: 672px) {
#mainLogo a {  width: 212px; }
}

@media all and (max-width: 480px) {
#mainLogo a { max-width: 27.1rem; height: 45px;}
}

/* Main Header
--------------------------------------------------------------*/
#mainTicker { background: var(--color-primary); border-bottom: 0.3rem solid #1a1a1a; }
#mainTicker .FrmCtr { display: flex; align-items: center; justify-content: center; padding-top: 1em; padding-bottom: 1em; overflow: hidden; }
#mainTicker .FrmCtr .lst { display: flex; align-items: center; list-style: none; white-space: nowrap; gap: 0.875em; }
#mainTicker .FrmCtr .lst .ico { flex-shrink: 0; line-height: 0; }
#mainTicker .FrmCtr .ico svg { width: 2em; }
#mainTicker .FrmCtr .lst .itm { font-size: 1.6em; font-weight: 400; color: #fff6e5; text-transform: uppercase; letter-spacing: 0.16em; }
#mainTicker .FrmCtr .lst .itm + .itm:before { content: "\00B7"; padding: 0 0.625em; }
@media (max-width: 668px) {
#mainTicker .FrmCtr .lst .itm:nth-child(5) { display: none; }
}
@media (max-width: 480px) {
#mainTicker  { font-size: 2.1vw; }
}
/* Main Header
--------------------------------------------------------------*/

#mainHdr { z-index: 12; background: var(--bg-nav); }
.introHeader {position: absolute; left: 0; top: 0;  width: 100%; background: none!important; }
#mainHdr  .ctr { padding: 0 20px; margin: 0 auto; position: relative; display: flex; justify-content: space-between; align-items: center;   }
#mainHdr { padding: 5px  0;  }
.nav-hamburger  { display: none!important; }	
#mainLogo { margin: 0; display: block; float: left; position: relative;  z-index:  10;  }
#mainMemNav { display: block; margin: 0 ; float: right;  margin-right: 0; margin-left: auto;  }
#mainMemNav .site-nav { display: flex; justify-items: flex-start; padding: 18px 0 18px 0;   }
#mainMemNav .site-nav li { display: inline; white-space: nowrap; font-size: 14px; line-height: 47px; padding: 0px 16px; font-weight: 400; letter-spacing: 0; letter-spacing: 0.01em;  }
#mainMemNav .site-nav li:last-child { padding: 0; }
#mainMemNav .site-nav li a { color: #fff; position:relative; display:-moz-inline-stack; display:inline-block; zoom:1; *display:inline;  text-transform: uppercase;  font-size: 1em!important; }

@media all and (min-width: 1240px) {
#mainHdr  .ctr { padding: 0 3rem; }
}
@media all and (max-width: 1024px) {
#mainHdr { padding: 5px 0;  }
#mainMemNav .site-nav {  padding: 10px 0 10px 0;   }
}
@media (max-width: 672px) {
#mainMemNav .site-nav li {  font-size: 14px; }
}
@media (max-width: 572px) {
#mainMemNav .site-nav li { font-size: 11px; padding: 0px 10px 0 0; }
}

/* Main Intro
--------------------------------------------------------------*/
#mainIntro { display: flex; justify-content: flex-start; align-items: center; background: #060606 url("../images/main_intro_bg_xl.jpg") no-repeat center center; background-size: cover;  height: 37vw ; min-height: 740px; color: #fff; text-align: left;   position: relative;     }
#mainIntro .FrmCtr2 { z-index: 2; position: relative; z-index: 2; flex-grow: 1; max-width: none; padding: 6rem 60px; }
#mainIntro .ln1 {  font-size: 64px;  line-height: 1.1em; padding: 0;  display: block; max-width: 10em; text-transform: none; letter-spacing: 0.01em; font-weight: 700; }
#mainIntro .ln2 {  font-size: 17px;  line-height: 1.8em; padding: 1.2em 0 1.5em 0;  font-weight: 400; display: block; max-width: 34em; letter-spacing: 0.01em; }
#mainIntro .lst { font-size: 17px; padding: 1.2em 0 0 0 ; }
#mainIntro .lst  li { padding: 0 0 1em 0 ; display: block; font-weight: 600; }
#mainIntro .lst  li:last-child { padding-bottom: 0!important; }
#mainIntro .lst  li span { margin-right: 0.8em; }
#mainIntro .btnWrp { padding:  0 0;}
#mainIntro .info { font-size: 14px; line-height: 1.2em;  position: relative; display: inline-block;  color: #fff;   }
#mainIntro .info:after { content: ' '; display: inline-block;  bottom: -2px; left: 0; right: 0; height: 2px; background: rgba(255,255,255,0.4); position: absolute; -webkit-transition-property: all; -webkit-transition-duration: 350ms; -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); -moz-transition-property: all; -moz-transition-duration: 350ms; -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); transition-property: all; transition-duration: 350ms; transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);   }
#mainIntro .info:hover:after { background: rgba(255,255,255,0.9); }
@media all and (max-width: 1370px) {
#mainIntro:before { content: ' '; display: block; left: 0; top: 0; position: absolute; right: 0; bottom: 0;  background: rgba(0,0,0,0.2); box-shadow: inset 0 0 15vw 0 rgba(0,0,0,0.3); }
}
@media all and (max-width: 1184px) {
#mainIntro {  min-height: auto; height: auto;  padding-top: 0px; padding-bottom: 0px; }
#mainIntro .FrmCtr2 {  padding-top: 8.4rem; padding-bottom: 8.4rem; }
/*#mainIntro  .ln1 { font-size: 69px; }
#mainIntro  .ln2 { font-size: 22px; }*/
}
@media all and (max-width:  900px) {
#mainIntro .FrmCtr2 { padding: 6rem 25px; }
}
@media all and (max-width: 767px) {
/*#mainIntro  .ln1 { font-size: 7.9vw; }
#mainIntro  .ln2 { font-size: 3vw; }*/
#mainIntro .ln1 { font-size: 64px; }
}
@media all and (max-width: 572px) {
#mainIntro {  min-height: 80vw;  }
#mainIntro  .ln1 { font-size: 11vw;  }
#mainIntro .ln2 { font-size: 3.6vw; max-width: 27em; padding: 1em 0 1.2em 0;  line-height: 1.6em; }
#mainIntro .lst { font-size: 13px;  font-weight: 500;  }
#mainIntro .lst li { padding: 0 0 0.4em 0; }
}
@media all and (max-width: 364px) {
#mainIntro .lst { font-size: 12px; }  
}

/* Main Top
--------------------------------------------------------------*/
#mainTop { background: #fff6e5;  }
#mainTop .top { text-align: center; margin-bottom: 3.5em; }
#mainTop .top .ln0 { font-size: 18px; line-height: 1.1em; padding: 0.5em 1.5em; background: var(--color-secondary); display: inline-block; box-shadow: 0.2em 0.2em 0px #1a1a1a; border: 0.138em solid #1a1a1a; letter-spacing: 0.12em; margin-bottom: 1.6em;  text-transform: uppercase; }
#mainTop .top .ln1 { font-size: 56px; font-weight: 900; color: #1a1a1a; letter-spacing: 0.08em; line-height: 1.1em; margin-bottom: 0.3em; }
#mainTop .top .ln2 { font-size: 17px; font-weight: 500; color: rgba(26,26,26,0.85); line-height: 1.6em; letter-spacing: 0.04em; max-width: 34em; margin: 0.7em auto 0 auto; padding: 0; }
#mainTop .btm .lst { display: grid; grid-template-columns: repeat(6, 1fr); gap: 0.8em; list-style: none; }
#mainTop .btm .lst .itm { font-size: 10px; display: flex; flex-direction: column; align-items: center; padding: 2em 0.5em 1.8em 0.5em; border-radius: 1.2em; text-align: center; }
#mainTop .btm .lst .itm .ico { width: 11em; height: 11em; filter: drop-shadow(5px 5px 0px #1a1a1a); }
#mainTop .btm .lst .itm .ico img { width: 100%; height: 100%; }
#mainTop .btm .lst .itm .txt { font-size: 13px; font-weight: 700; color: rgba(26,26,26,0.85); text-transform: uppercase; letter-spacing: 0.12em; line-height: 1.1em; margin-top: 1.3em; padding: 0; }
@media (max-width: 768px) {
#mainTop .btm .lst { grid-template-columns: repeat(3, 1fr); }
#mainTop .top .ln1 { font-size: 44px; }
}
@media (max-width: 576px) {
#mainTop .btm .lst { grid-template-columns: repeat(2, 1fr);  width: 51rem; max-width: 340px; margin: 0 auto; }
}
@media (max-width: 480px) {
#mainTop .top .ln1 { font-size: 8vw }
#mainTop .top .ln2 { font-size: 3.5vw; max-width: 21em; }
}
@media (max-width: 440px) {
#mainTop .btm .lst .itm { font-size: 2.2vw; }
}
/* Main Mid
--------------------------------------------------------------*/

#mainMid .FrmCtr { max-width: none; padding: 0; }
#mainMid .FrmCtr .row { display: flex;  background: var(--color-primary); border-top: 0.3rem solid #1a1a1a; }
#mainMid .FrmCtr .rev { flex-direction: row-reverse; background: var(--color-secondary); border-bottom: 0.3rem solid #1a1a1a; }
#mainMid .FrmCtr .row .lft { flex: 1 0 0; background: center center no-repeat; background-size: cover; }
#mainMid .FrmCtr .row .lft:after { content: ''; display: block;  padding-top: 100%; }
#mainMid .FrmCtr .row .rgt { flex: 1 0 0; display: flex; flex-direction: column; justify-content: center; }
#mainMid .FrmCtr .row .rgt .rgtCont { padding: 5em 5em 5em 7em; }
#mainMid .FrmCtr .row .rgt .ln0 { font-size: 1.8em; line-height: 1.1em; padding: 0.5em 1.5em; background: var(--color-tertiary); display: inline-block; box-shadow: 0.2em 0.2em 0px #1a1a1a; border: 0.138em solid #1a1a1a; letter-spacing: 0.12em; margin-bottom: 1.6em;  text-transform: uppercase;  color: #1a1a1a;  }
#mainMid .FrmCtr .rev .rgt .ln0 {  background: var(--color-primary); }
#mainMid .FrmCtr .row .rgt .ln1 { font-size: 4.8em; font-weight: 700; line-height: 1.2em; color: #1a1a1a;  margin: 0 0 0.5em 0; }
#mainMid .FrmCtr .row .rgt .ln2 { font-size: 1.8em; font-weight: 500; line-height: 1.75em; letter-spacing: 0.03em; color: #1a1a1a; padding: 0 0 3em 0; }
@media (min-width: 1440px) {
#mainMid  { padding: 6rem 0; background: #1a1a1a; border-top: solid 0.4rem var(--color-primary);  border-bottom: solid 0.4rem var(--color-secondary); }
#mainMid  .FrmCtr  { max-width: 1440px; padding: 0 2rem; }
#mainMid .FrmCtr .row:first-child { border-top: 0; }
#mainMid .FrmCtr .rev {  border-bottom: 0; }
}
@media (max-width: 1050px) {
#mainMid .FrmCtr .row .rgt  { font-size: 8px; }
}
@media (max-width: 992px) {
#mainMid .FrmCtr .row, #mainMid .FrmCtr .rev { flex-direction: column; min-height: 0; }
#mainMid.FrmCtr .row .lft { min-height: 36em; }
#mainMid .FrmCtr .row .lft:after { padding-top: 33.33%; }
#mainMid .FrmCtr .row .rgt { font-size: 10px;  }
#mainMid .FrmCtr .row .rgt .rgtCont { padding: 4em 2em; }
#mainMid .FrmCtr .row .rgt .ln1 { /*font-size: 3.85em; */}
}
@media (max-width: 576px) {
#mainMid .FrmCtr .row .rgt .ln2 { font-weight: 500; padding: 0 0 1.8em 0; }
#mainMid .FrmCtr .row .lft:after { padding-top: 56.25%; }
}
@media (max-width: 480px) {
#mainMid .FrmCtr .row .rgt .ln0 { font-size: 3.75vw; }
#mainMid .FrmCtr .row .rgt { font-size: 2.1vw;  }
}
/* Main Bottom
--------------------------------------------------------------*/
#mainBtm { background: url("../images/main_btm_bg_xl.jpg") no-repeat center center; background-size: cover;  padding:  4rem 0;  }
#mainBtm .FrmCtr { display: flex;  justify-content: center;  }
#mainBtm .FrmCtr .card { background: rgba(26,26,26,0.78); border: 0.3rem solid #fff6e5; border-radius: 24px; box-shadow: 0 1rem 0 0 #ff2d87, 0 1.3rem 0 0 #1a1a1a; max-width: 986px; width: 100%; padding: 3.8em 3.3em; display: flex; flex-direction: column; align-items: center;  font-size: 10px; }
#mainBtm .FrmCtr .card .ln1 { font-size: 5.4em; font-weight: 400; color: #fff6e5; text-align: center; line-height: 1.05em; padding: 0 0 0.44em 0; }
#mainBtm .FrmCtr .card .ln2 { font-size: 1.8em; font-weight: 500; color: rgba(255,246,229,0.92); text-align: center; line-height: 1.5em; max-width: 648px;  padding-bottom: 1.9em; }
@media (max-width: 768px) {
#mainBtm .FrmCtr { padding-top: 5em; padding-bottom: 5em; }
#mainBtm .FrmCtr .card { padding: 3.4em 2em; }
}
@media (max-width: 610px) {
#mainBtm .FrmCtr .card { font-size: 1.6vw; }
}
@media (max-width: 576px) {
#mainBtm .FrmCtr .card .ln2 { max-width: 23em; padding-bottom: 1.2em; }
}
@media (max-width: 480px) {
#mainBtm .FrmCtr .card .ln1 { font-size: 4.4em; }
#mainBtm .FrmCtr .card { font-size: 2.1vw; }
}
/* Main Footer
--------------------------------------------------------------*/
#mainFtr  { background: var(--bg-footer); box-shadow: 0 4000px 0 4000px var(--bg-footer); color: var(--color-footer); font-weight: 400;  text-align: center; text-transform: none;  }
#mainFtr .FrmCtr3 { max-width: 100%; }
#ftrNav { display: block; font-size: 14px; margin-bottom: 1.8rem; }
#ftrNav li { display: inline; white-space: nowrap;  } 
#ftrNav li a { color: var(--color-footer); margin: 0 1.2em 0 0; }
#ftrNav li a:hover {   text-decoration: underline;   }
#mainFtr .logo { width: 265px; margin-bottom: 3.4rem;   }
#mainFtr .copy { font-size: 14px; line-height: 1.75em; padding-bottom: 0; }
#mainFtr a[href ^= 'tel:'], #mainFtr a.c1 { color: #F37021; }

@media all and (max-width: 1110px) {
#ftrNav { margin: 0 auto 0.6em auto; max-width: 30em;  }
#ftrNav li { line-height: 1.4em; }
#ftrNav li a { margin: 0 0.5em; } 
#ftrNav li span { display: none; }
}

@media all and (max-width: 480px) {
#ftrNav { font-size: 3.2vw; }
#mainFtr .copy { font-size: 3.2vw; }
}

/* 
////
//// Login
////
--------------------------------------------------------------*/
#loginCont  { background: var(--bg-body-login); display: flex; justify-content: center; align-items: center; padding: 6rem 0; min-height: calc(100vh - 448px); }
#loginCont  .loginForm { background: #1c1c1c; padding: 16px; color: #fff;max-width: 356px; margin: 0 auto;  box-shadow: 0px 0px 10px rgba(0,0,0,0.3);  -moz-box-shadow:  0px 0px 10px rgba(0,0,0,0.3);   -webkit-box-shadow:0px 0px 10px rgba(0,0,0,0.3); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
#loginCont  .title { font-size: 20px; text-align: center; padding:4px 0 20px 0;  font-weight: bold;  }
#loginCont p { position: relative; }
#loginCont p label { font-size: 16px; line-height: 1.5em; }
#loginCont p input { background: none #fbfbfb!important; color: #000!important; font-size: 16px!important;  height: 2.54em!important; }
#loginCont .msg {font-size: 12px; line-height: 1.2em; width: 100%; display: block; padding: 0 0 10px 0; text-align: center;  }
#loginCont .keep label { padding-left: 0; font-size: 13px; text-align: left; line-height: 1.2em; width: auto; display: block; padding: 0.5em 0; }
#loginCont .keep label input { float: left; width: 1em!important; height: 1em!important; display: block; margin-right: 0.4em; vertical-align: top; position: relative; top: -0.1em;  }
#loginCont p label.error, #loginCont p small.error  { float: left; font-size: 11px; padding: 2px 0 0 0;  color: #fa2700;  }
#loginCont .creat { padding-left: 0; font-size: 13px; line-height: 1.2em; width: 100%; display: block; padding: 0.5em 0; text-align: center;  }
#loginCont .creat a { color: rgba(255,255,255,0.75) }
#loginCont .creat a:hover { color: #fff; }
#loginCont p.tos { text-align: center; font-size: 11px; line-height: 1.2em; width: 100%; display: block; padding: 0; color: rgba(255,255,255,0.75) }
@media all and (max-width: 1024px) {
#loginCont { min-height: calc(100vh - 368px); }
}
@media all and (max-width: 1024px) {
#loginCont { min-height: calc(100vh - 368px); }
}
@media (max-width: 479px) {
#loginCont { min-height: calc(100vh - 48.8rem); }
#loginCont  .title { font-size: 18px; text-align: center; padding:3px 0 19px 0;   }
}

/* 
////
//// Privacy & tos
////
--------------------------------------------------------------*/
#innerCont  { background: var(--bg-body-login); color: var(--color-body); display: flex; justify-content: center; align-items: center; padding: 6rem 0; min-height: calc(100vh - 448px); }
@media all and (max-width: 1024px) {
#innerCont { min-height: calc(100vh - 368px); }
}
@media all and (max-width: 1024px) {
#innerCont { min-height: calc(100vh - 368px); }
}
@media (max-width: 479px) {
#innerCont { min-height: calc(100vh - 48.8rem); }
}
/* Tos Phone Header
--------------------------------------------------------------*/
.tosHdr #mainLogo { flex-grow: 1; }
.tosHdr #mainLogo a {  max-width: 24.6rem; }
#mainNav .tosNav li { font-size: 12px!important; line-height: 30px; }
#mainNav .tosNav li a { font-family:   "Poppins", Georgia, Times, "Times New Roman", serif;  font-weight: 400; }
#mainNav .tosNav li svg { width: 1.6em; height:  30px; vertical-align:  top; }
@media all and (max-width: 1200px) {
#mainNav .tosNav  { flex-direction: column; text-align: right;  padding-left: 15px;  }
#mainNav .tosNav li { font-size: 13px!important; padding: 0; line-height: 20px;  letter-spacing: -0.025em; }
#mainNav .tosNav li svg  { height: 20px; }
}
@media (max-width: 479px) {
#mainNav .tosNav li { font-size: 11px!important; line-height: 16px; }
#mainNav .tosNav li svg  { height: 16px; }
}
@media (max-width: 394px) {
#mainNav .tosNav li { font-size:  2.65vw!important; line-height: 1.77em;  }
#mainNav .tosNav li svg { height: 1.77em; }
}