/**----------------------------------------------
***                links
***----------------------------------------------
**/
a{
    text-decoration:none;
    color:black;
    outline:0;
}
a:visited{
    text-decoration:none;
    color:black;
}
h1{padding-bottom:2px;}
h1, h2, h3, h4{
    font-weight:normal;
    margin:5px auto 5px auto;
}
h3{font-size: 1.08em}
h6{
    margin:0px;
    padding:0px;
    font-size: 11px;
    display: block;
}
textarea{
    font-family: Georgiea, Times New Roman, Serif;
}
.sdh{
    height:15px;
    font-size:11px;
    border-bottom:1px dotted black;
    margin:auto;
    text-align: center;
    display:block;
}

.i{font-style: italic;}

/*----------------------------------------------*/



html{
    position: relative;
    min-height: 100%;
    max-height: 100%;
}

body{
    margin:10px 10px 132px 10px;
    padding:0px;
    font-family:"Georgia", "Times New Roman", Serif;
    background:#fff;
}
#content{
    vertical-align: top;
    color:black;
    text-align: center;
    padding-bottom:8px;
    min-height:65vh !important;
}

/**----------------------------------------------
***                universal formatters
***----------------------------------------------
**/
.tinytag, .tt
{
    font-size:.9em;
    padding:2px;
    display: inline-block;
    border: .5px solid;
    border-radius: 3px;
    display: inline-block;
    height:16px;

}

.p2{padding:2px;}
.p5{padding:5px;}
.p8{padding:8px;}
.p10{padding:10px;}
.p16{padding:16px;}



.mar-5a, .m5a{margin:5px auto;}
.margin-auto, .ma{ margin:auto; }
.margin-5, .m5{ margin:5px; }
.margin-top-5, .mt5{ margin-top: 5px; }

.margin-10, .m10{ margin:10px; }
.margin-top-10, .mt10{ margin-top: 10px; }

.margin-15, .m15{ margin:15px; }
.margin-top-15, .mt15{ margin-top: 15px; }


.ib{display:inline-block;}
.sb, .span_smallbreak{
    display: block;
    font-size: 13px;
    line-height:11px;
}.sb.bb1{padding-bottom:4px;}
.mb, .span_mediumbreak{
    display: block;
    font-size: 15px;
}.mb.bb1{padding-bottom:2px;}
.lb, .span_largebreak{
    display:block;
    font-size:18px;
}
.lg{font-size:25px;}
.med{font-size:15px;}
.small{font-size: 13px;}
.xsmall{font-size: 11px;}
.xxsmall{font-size: .5em;}
.lr1, .lrb1{
    border-left:    1px solid black;
    border-right:   1px solid black;
}
.tbb1{border-top:1px solid black;border-bottom: 1px solid black;}
.bb1{border-bottom:1px solid black;}
.bb1d{border-bottom:1px dotted black;}
.bb2{border-bottom:2px solid black;}
.bb3{border-bottom:3px solid black;padding-bottom:3px;}
.bb_d_1{border-bottom:3px double black;padding-bottom:4px;}
.bb_d_2{border-bottom:6px double black;padding-bottom:4px;}
.bt_d_1{border-top:3px double black;}
.bt_d_2{border-top:6px double black;}
.tb1{border-top:1px solid black;}
.tb1d{border-top:1px dotted black;}
.tb2{border-top:2px solid black;}
.tb3{border-top:3px solid black;}

.red{color:red;}
.green{color:green;}

.strike{text-decoration: line-through;}

.unselectable {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}




/*
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
*/


.kp, .hdp, .kill_parent, .roundbutton, .xbutton{
    position: absolute;
    top:-11.5px;
    right:-11.5px;
    float:right;
    width:30px !important;
    height:30px !important;
    border:1.5px solid #77273e;
    color:#77273e;
    margin:6px;
    padding:5px;
    padding-top:5px;
    padding-bottom:0px;
    cursor: pointer;
    box-sizing: border-box;
    border-radius:32px;
    background:#CC9999;
}

.small_tooltip{
    display: none;
    position: absolute;
    width:100px;
    font-size: 0.8em;
    padding:2px;
    margin-top:3px;
    border:1px solid;
    background: white;
}
.small_alert
{
    position: absolute;
    color:red;
    top:-4.5px;
    font-weight: bold;
    right:-4.5px;
    float:right;
    width:20px;
    height:20px;
    border:1.5px solid red;
    outline: 3px solid white;
    margin:6px;
    cursor: pointer;
    box-sizing: border-box;
    border-radius:32px;
    background-color: white;
}
.roundbutton > .blt
{
    border-radius: inherit;
    width:inherit;
    display: flex;
}
.lg_roundbutton
{
    width:30px;
    height:30px;
    margin:6px;
    padding:5px;
    padding-top:5px;
    padding-bottom:0px;
    cursor: pointer;
    box-sizing: border-box;
    border-radius:32px;
}

.flip{
    transform: rotate(180deg);
}
/***************************************************
******************   ## colors    ******************
***************************************************/
.grey, .greyed_out, .gr{
    color:rgba(0,0,0,0.3);
}
/***************************************************
*****************   ## button   ********************
***************************************************/
.button, .btn, button{
    /*background:#5E5E6B;*/
    /*background:#EFFBFF;*/
    -webkit-appearance: none;
    display:inline-block;
    width:100px;
    height:50px;
    font-family:"Georgia", "Times New Roman", Serif;
                        -webkit-box-sizing: border-box;
                        -moz-box-sizing: border-box;
                        box-sizing: border-box;
                                -moz-user-select: none;
                                -webkit-user-select: none;
                                -ms-user-select: none;

    margin:auto auto 5px auto;
    cursor:pointer;
    background:white;
    color:black;
    padding-bottom:5px;
    -webkit-padding-after:0px;
    /*border:1px solid black;
    border-top:2px solid black;
    border-bottom:3px solid black;*/

    /*overflow: hidden;*/
    text-align:center;
    text-decoration:none;
    vertical-align: middle;

    position: relative;
}

.buttonhover{
    background:#D5E8FA;
}

.button a{text-decoration:none;}
.button.noborder > .blt{
    border:none;
}
@media(hover: hover) and (pointer: fine) {
    .button > .blt:hover:not(.selected):not(.lav):not(.submitbutton), .btn:hover:not(.selected){background:#D5E8FA;}/*background:#474755;*/
}
    .button > .blt:active:not(.selected):not(.lav):not(.submitbutton), .btn:hover:not(.selected){background:#D5E8FA;}/*background:#474755;*/
    .button > .blt:focus:not(.selected):not(.lav):not(.submitbutton), .btn:focus:not(.selected){background:#D5E8FA;}/*background:#474755;*/
.button.selectable > .blt:hover:not(.selected),
.btn.selectable > .blt:hover:not(.selected),
.button.switchable > .blt:hover:not(.selected),
.btn.switchable > .blt:hover:not(.selected)
{
    background: #e6e6e6;    
}
.button.selectable.selected > .blt:hover,
.btn.selectable.selected > .blt:hover,
.button.switchable.selected > .blt:hover,
.btn.switchable.selected > .blt:hover
{
    background: #99CCFF;
}
.button-crb, .btn-crb,
.button_crb, .btn_crb{
    max-width:250px;
    width:95%;
}
.blts:focus
{
    background:#99CCFF;
}
.button:active
{

    border-color:rgba(0,0,0,1);
    background: rgba(255,255,255,1);
    /*border-color: rgba(255,255,255,1);*/
    /*border-top-width: 3px;*/
}
.blt:active{
    /*background:#303040;*/
    /*border-color: black;*/
    /*border-left:0px solid black;*/
    /*border-right:1px solid black;*/
    /*border-top:3px solid;*/
    /*background:#99CCFF;*/
    margin-left:-2px;
    margin-right:2px;

    /*padding-top:2px;*/
    /*padding-left:2px;*/
    margin-top:2px !important;
    margin-bottom:-1px !important;

}
.blt:active:after
{
    border-color: rgba(0,0,0,0);
    /*border-left:1px solid;*/
    height: calc(100% + 1px);
}
.selected > .blt{/*background:#474755;*/background:#D5E8FA;}
.selected > .blt:hover{background:#e6e6e6;/*#99CCFF;*/}
.blt{
    width:calc(100% - 1px);
    height:calc(100% + 1px);
    display:table;
    border:1px solid black;
    border-top:2px solid black;
    border-bottom:3px solid black;
}
.blt:after
{
    /*content: " ";
    width:calc(100% - 1px);
    height: calc(100% - 2px);
    border-bottom:3px solid lightgrey;
    border-left:2px solid lightgrey;
    position: absolute;
    bottom: -3px;
    left: -1.5px;
    z-index: -10000;
    border-radius: 0.5px;*/
}
.noshadow:after
{
    border-bottom:0px solid lightgrey;
    border-left:0px solid lightgrey;
}
.button.noshadow > .blt:after
{
    content: " ";
    border-bottom:0px solid lightgrey;
    border-left:0px solid lightgrey;
    display:none;
}

.blts{
    box-sizing: border-box;
    display:table-cell;
    vertical-align:middle;}
/*.bltu
{
    display: inline-block;
    height: 4px;
    width: 100%;
    border-color:red;
    border-right: .5px solid red;
    margin-left:-1px;
    border-left: .5px solid red ;
    background: red;
}*/
.blts a, a:visited{
    color:black;
    text-decoration:none;
    outline:0;}
.mediumbutton, .medbtn, .mbtn{
    width:45%;max-width:150px;
    font-size: 19px;
}
.half_width_button, .hwbtn{
    width:46%;
    max-width:200px;
    font-size:1.3em;
}
.shortbutton
{
    height:32px;
}
.bigbutton, .bigbtn, .largebutton, .lgbtn, .lbtn{
    width:95%;
    max-width:310px;
    font-size: 19px;}
.widebutton{
    width:95%;
    height:32px;
    max-width:310px;
    margin:10px auto;
}
.hugebutton, .hbtn {
    font-size:22px;
    height:72px;
    width:95%;
    max-width:450px;
    margin:10px 10px auto 10px;
}
.smallbutton{
    font-size:0.7em;
    height:33px;
    width:80px;
    margin-bottom:0px;
    padding-bottom: 0px;
}
.submitbutton > .blt, .aok, .submitbutton.blt, submit{
    color:#009900;
    border-color:#009900;
    background:rgba(230, 255, 230, 1.0);
}
.submitbutton > .blt:hover{ background:rgba(188, 253, 188, 1.0);}
.submitbutton > .blt:active{
    background:rgba(153,255,102,1.0);
    border-color:#009900;
}
.submitbutton.blt:active:after
{
    border-color:#009900;
}
.redbutton > .blt, .rbtn > .blt{background:rgb(219, 146, 146);}
.rbtn > .blt:hover, .redbutton > .blt:hover{background:rgb(255, 209, 209);}
.rbtn > .blt:active, .redbutton > .blt:active{background:rgb(255, 112, 112);}
.lavender, .lav{
    background: rgba(240, 221, 255, 1.0);
    border-color: rgba(112, 77, 140,1.0);
    color:rgba(112, 77, 140,1.0);
}
.lav:hover, .lavender:hover{background:#C1A1DA;}
.lav:active, .lavender:active{background:rgb(174, 111, 226)}

/*.button.aa > .blt:hover{background:#A66464;}*/
.button.aa > .blt:active, .button.aa:active{background:#E89797;}

.b_hw_big{width:90%;max-width:400px;height:100px;font-size:24px;}
.b_h_36{height:36px;}
.b_w_200{width:200px;}
.btn_sml, .btn_sm, .button_small{width:60px;height:22px;}


.kp > .blt, .xbtn > .blt,.xbutton > .blt{
    border:none;
}
.kp:hover, .hdp:hover, .roundbutton:hover{
    background:#b5607c;
}
.kp:hover > .blt, .hdp:hover > .blt, .roundbutton:hover > .blt{
    background:transparent;
}
.kp > .blt:hover, .hdp > .blt:hover, .roundbutton > .blt:hover{
    background:transparent !important;
}
.xbutton > .blt:after{
    display: none;
}
.noshadow > .blt:hover{
    /*background-color: transparent;*/
}
.noshadow > .blt{
    /*background-color: transparent !important;*/
}


#navbuttons
{
    overflow: hidden;
    height: 25px;

    margin:auto;
    width:auto;

    z-index: 99999;
    background: white;

    padding: 8px;
    /*padding-left:3px;
    padding-right:3px;*/
}
@media (min-width:512px)
{
    #navbuttons
    {
        position: absolute;
        top:32px;
        left:2px;
    }
}
@media (max-width:1200px)
{
    #login .blt{
        border:none;
    }
}
.navbutton{height:30px;width:150px;clear:both;}
#navbuttons > .button
{
    height:24px;
   z-index: 1;
}


/*
I8,        8        ,8I                     88           88  88                                       
`8b       d8b       d8'                     88           88  ""                                       
 "8,     ,8"8,     ,8"                      88           88                                           
  Y8     8P Y8     8P   ,adPPYba,   ,adPPYb,88   ,adPPYb,88  88  8b,dPPYba,    ,adPPYb,d8  ,adPPYba,  
  `8b   d8' `8b   d8'  a8P_____88  a8"    `Y88  a8"    `Y88  88  88P'   `"8a  a8"    `Y88  I8[    ""  
   `8a a8'   `8a a8'   8PP"""""""  8b       88  8b       88  88  88       88  8b       88   `"Y8ba,   
    `8a8'     `8a8'    "8b,   ,aa  "8a,   ,d88  "8a,   ,d88  88  88       88  "8a,   ,d88  aa    ]8I  
     `8'       `8'      `"Ybbd8"'   `"8bbdP"Y8   `"8bbdP"Y8  88  88       88   `"YbbdP"Y8  `"YbbdP"'  */
.pricing{
    margin-bottom:20px;
}







/**----------------------------------------------
***         Header Section
***----------------------------------------------
**/

#header{
    width:100%;
    border-bottom:9px double;
    margin: auto auto 12px auto;
    padding-bottom:19px;
    overflow:visible;
    position:relative;
   z-index: 99999;
}
    #header:after{
        content: " ";
        z-index: -1;
        position: absolute;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: -1px;
        border-bottom: 9px double;
    }
.banner > .blt:after{
    display: none;
}
.banner > .blt
{
    border:none;
}
.banner{
    width:auto;
    text-decoration:none;
    display:block;
    border:none;
    float:left;
    font-size:3.0em;
    line-height:1.2em;
    height:auto;
    margin:-7px auto auto auto;
    background:none;
}.banner a{color:black;}
.banner:active{
    background:none !important;
    padding-top:initial;
    padding-left:initial;
}
.banner:hover{background:none !important;}
.banner > .blt:hover{background:none !important;}
.banner > .blt{width:100%;}
#header_menu_container{
    overflow: hidden;
}
.header_menu_item{
height:41px;
vertical-align: top;
/*border-bottom:3px solid;
border-left:1px solid;
border-right:1px solid;*/
}

    #header_menu{
    float:right;
    margin:auto;
    padding-right:1px;
    }   
    #header_menu a{color:black;}
    #header_menu .button{
        width:83px; 
    }

    #header_user_container{
    float:right;
    margin-left:12px;
    } 
        #user_header_menu{
        position:absolute;
        z-index: 9999;
        top:73px;
        right:10px;
        float:right; clear:right;
        width:88px;
        border:2px solid black;

        /*background:#19192B;*/
        background:white;
        display:none;
        padding-bottom:2px;
            margin-top:2px;
        }
    @media (min-width:1200px) and (max-width:1312px){
        .header_menu_item{
            font-size:0.92em;
        }
        #header_menu .button{
            width:71px;
        }
    }
/**----------------------------------------------
***                 User Header
***----------------------------------------------
**/
        #user_header_menu .button{border:none;}
        #header_menu_account{
            font-size: 14px;
            width:65px;
            height:41px;
            float:right;
            margin:auto auto auto 4px;
            padding-left:2px;
        }
            .account_text{
                position:absolute;

            }
        .user_header_menu_item{
                display:block;
                width:95%;
                border:none;
                border-bottom:1px solid black;
                border-top:1px solid black;
                
                background:none;
                margin:2px 0px 0px 0px;
            }
    .flip{
        -webkit-transform: rotate(180deg);
         -moz-transform: rotate(180deg);
         -ms-transform: rotate(180deg);
         -o-transform: rotate(180deg);
    }
    #header_menu_cart .button{width:40px;}
    #header_menu_cart{
        text-align: center;
        
        width:65px;
        float:none;
        
    }
    .cart_container{
        overflow: hidden;
        display:block;
        width:100%;
    }
    .cart_outline{
        overflow:visible;
        margin:1px auto auto auto;
        width: 20px; 
        height: 0; 
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-bottom: 20px solid black;
    }.cart_count{
            position:relative;
            top:20px;
            left:1px;
    }
    .cart_label{
        font-size:12px;
    }
    .cart_white{
             
        color:black;
        position: relative;
        bottom:17px;
        right:2px;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        width:16px;
        border-bottom:18px solid white;
    }.cart_white:hover{border-bottom-color:#D5E8FA;}
/**----------------------------------------------------
*                   Submenu
*------------------------------------------------------
**/
#submenu{
    width:95%;
    margin:10px auto auto auto;
    text-align: center;
    clear:both;
}#submenu .button{height:45px;width:85px;}

@media (min-width:900px)
{
    #tool_menu_container
    {
        float: left;
        width:200px;
        height:80vh;
    }
}
#tool_menu_container h2
{
    position: sticky;
    background:white;
    top:2px;
}
#tool_menu_container
{
    padding:12px;
    background:rgba(205,218,254,0.3);
    overflow-x: hidden;
    overflow: scroll;

}
#sub_menu
{
    min-width:100%;
    z-index: 1;
}
#sub_banner{
    margin:auto auto 4px auto;
    border-bottom:6px double black;
    padding-bottom:3px;
    padding-top:3px;
    font-size: 34px;
    /*margin-top:-7px;*/
}
#sub_banner h1{
    font-size: 34px;
}
.tab_banner{
    margin:auto auto 4px auto;
    border-bottom:6px double black;
    padding-bottom:3px;
    padding-top:3px;
    font-size: 34px;
}
.tab_banner h1{
    font-size:1.2em;
}
    @media (max-width:380px){
        #sub_banner{font-size:20px;}
        .tab_banner{font-size:20px;}
    }
    @media (min-width:381px) and (max-width:500px){
        #sub_banner{font-size:24px;} 
        .tab_banner{font-size:24px;} 
    }



/*
8888888b.     d8888  .d8888b.  8888888 888b    888        d8888 88888888888 8888888888 
888   Y88b   d88888 d88P  Y88b   888   8888b   888       d88888     888     888        
888    888  d88P888 888    888   888   88888b  888      d88P888     888     888        
888   d88P d88P 888 888          888   888Y88b 888     d88P 888     888     8888888    
8888888P" d88P  888 888  88888   888   888 Y88b888    d88P  888     888     888        
888      d88P   888 888    888   888   888  Y88888   d88P   888     888     888        
888     d8888888888 Y88b  d88P   888   888   Y8888  d8888888888     888     888        
888    d88P     888  "Y8888P88 8888888 888    Y888 d88P     888     888     8888888888 
*/

ul.pagination
{
    margin:auto;
    padding:5px;
    cursor:default;
}
.pagination li
{
    width:24px;
    height:24px;
    display: inline-block;
    /*border:0.5px dashed grey;*/
    background:#D5E8FA;
    padding-top:5px;
}
.pagination li:hover:not(.active):not(.disabled){background:#99CCFF;}

.pagination .active{background:#99CCFF;}
.pagination .disabled, .pagination .active{cursor:default;}
.pagination .disabled{background: rgba(153,204,255,0.2);color:rgba(0,0,0,0.3);}
/*.pagination .disabled span{cursor:default;}*/



/*
88 88b           d88        db        ,ad8888ba,  88888888888 ad88888ba 
88 888b         d888       d88b      d8"'    `"8b 88         d8"     "8b
88 88`8b       d8'88      d8'`8b    d8'           88         Y8,        
88 88 `8b     d8' 88     d8'  `8b   88            88aaaaa    `Y8aaaaa,  
88 88  `8b   d8'  88    d8YaaaaY8b  88      88888 88"""""      `"""""8b,
88 88   `8b d8'   88   d8""""""""8b Y8,        88 88                 `8b
88 88    `888'    88  d8'        `8b Y8a.    .a88 88         Y8a     a8P
88 88     `8'     88 d8'          `8b `"Y88888P"  88888888888 "Y88888P" */
.image_container img{
    max-width: 100%;
}
.image_thumb img{
    width:30%;
    max-width: 30%;
}
.thumb{
    max-width:200px !important;
}
.event_li_image{
    max-height:50vh;
    max-width:100%;
    display:block;
    margin:auto;
}
/**----------------------------------------------------
*               Pop Container Templates
*------------------------------------------------------
**/
.pc1{
    display: block;
    position:relative;
    
    left:0px;
    right:0px;
    height:0px;
    width:100%;
    /*overflow: none;*/
}
.pc2{
    width:95%;
    max-width:300px;
    height:120px;
    margin: auto;
    border:4px solid #D5E8FA;
}
.pc3{
    width:100%;
    height:100%;
    padding:3px;
    border:2px solid black;
    background:#D5E8FA;
}
.pc4{
    height:75px;
}
/*.................................*/
.alert_text{color:#591919;background: #CC9999;}

.alert_message_container{
    opacity:0.95;
    /*position:relative;*/
    color:#591919;
    z-index: 99999;
    transform: translate3d(0,0,1px);
    /*left:0px;*/
    /*right:0px;*/
    /*top:8px;*/
    /*height:0px;*/
    /*overflow: none;*/
    width:100%;
    
}
.alert_message_float{
    width:95%;
    max-width:300px;
    min-height:120px;
    margin: auto;
    padding:3px;
    background: #CC9999;
    border:2px solid #800000;
}   .alert_message{min-height:75px;margin-bottom:8px;}
    .alert_message_dismiss{
        height:35px;
        border-color:#800000;
        vertical-align: bottom;
        margin-bottom:12px;
    }.alert_message_alerted, .aa{
        background:#CC9999;
    }
    .success_text{color:#002400;background:#70B870;}
    .success{
        background:rgba(230, 255, 230, 1.0);/*70B870;*/
        color:#002400;
        border-color: #002400; 
    }
    .success .button{background:#8DC68D;}
/**----------------------------------------------------
*               Responsive Containers
*------------------------------------------------------
**/
.center_responsive_box, .crb{
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                box-sizing: border-box;
    display:inline-block;
    width:100%;
    min-width:275px;
    max-width:550px;
    min-height:250px;
    padding:2px;
    margin:5px auto auto auto;
    /*overflow: hidden;*/
    text-align: center;
    vertical-align: top;
}
img.crb{min-height:0px;padding:0px;}
.crb_block, .crb_b{display:block;clear:both;}
.crb_nmh{min-height: 0px;}
.crb_1{max-width:900px;display:block;}
.crb_3{min-width:30%;display: inline-block;}
.crb_2{width:45%;min-width:0px;display: inline-block;}
.crb_min{max-width:240px;}
.crb_d{}
@media (min-width:1200px){
    .crb_d{min-width:400px;width:45%;}
    .crb_3{max-width:30%;}
}
@media (min-width:568px){
.crb_2{width:49%;min-width:0px;}
    .crb_5{max-width:20%;}
}
/**----------------------------------------------------
*               Flex
*------------------------------------------------------
**/
.flex, .f, .fx{
    display: flex;
}
.fwp, .fxwp, .fw, .flex_wrap_parent
{
    display: flex;
    flex-wrap: wrap;
}
.fxc, .flexcolumn{}
.fbb, .flex_bordered_box
{
    display:flex;
    justify-content: center;
    flex-direction: column;
    border:1px dotted black;
    margin:10px;
    padding:3px; 
}
.jcc
{
    justify-content: center;
}


.fxb25{flex-basis: 25%;}
.fxb50{flex-basis: 50%;}
.fxb75{flex-basis: 75%;}
.fxb100{flex-basis: 100%;}






/**----------------------------------------------------
*               lists
*------------------------------------------------------
**/
.linklist, .ll{
    overflow: auto;
    margin:auto;
    max-width:315px;
}



/**----------------------------------------------------
*               Footer
*------------------------------------------------------
**/
#footer {
    color:black;
    margin:112px auto auto auto;
    position: relative;
    padding-right:10px;
    padding-left:10px;
    padding-top:112px;
    width: 100%;
    border-top:9px double;
}
#footer:before {
    content: " ";
    position: absolute;
    z-index: -1;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    border-top: 9px double;
}
.copyleft{
    font-size:40px;
    font-family:"Helvetica", Arial, Sans-Serif;
    text-align: center;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
/**----------------------------------------------------
*                   Small formatting things
*------------------------------------------------------
**/
.dollar_sign{font-size:10px;vertical-align:20%;}
.hidden{display: none;}
.ordinal_suffix
{
    vertical-align: 30%;
}

/***************************************************************************************************
****************************************************************************************************
****************************************************************************************************
****************************************************************************************************
                                              Responsive   
****************************************************************************************************
****************************************************************************************************
****************************************************************************************************
****************************************************************************************************
*/

.mobile_only{display: none;}
.mobie_hide{}


@media
(max-width : 1199.999px) 
{
    body{
        min-width:320px;
        width:100%;
        margin:0 0 60px 0;
    }
    
    #content{
        -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
        width:100%;
        padding:3px;
        text-align: center;
        margin:auto;
    }
    #header{
        text-align: center;
        width:100%;
        height:57px;
        padding:2px;
        padding-bottom:12px;
        margin: auto auto 24px auto;
        overflow:visible;
    }
        
    .banner {
        float:none;
        overflow: hidden;
        display:inline-block;
        font-size:24px;
        border:none;
        margin:3px auto auto auto;
    }
    #header_menu{
        z-index: 999999999;
        text-align: center;
        position:absolute;
        top:45px;
        left:0px;
        background:white;
        width:100vw;
        
        padding:2px;
        border-top:4px solid red;
        border-bottom:4px solid red;
    }
    #header_user_container{

    }
    .header_menu_item{
        margin:5px auto 5px auto;

    }
    #login{
        border-left:2px solid black;
        float: right;
        margin:auto;
        font-size:14px;
    }
    #header_menu_account{
        border-left:2px solid black;
        float: right;
        margin:auto;

        font-size:10px;
        height:35px;
        width:35px;
    }
    .mobile_menu{
        height:35px;
        width:35px;
        margin:auto;
        display: block;
        border:none;
    }
    #mobile_menu_dropdown{  
        float:left;
        border-right:2px solid black;
    }
    #header_menu_cart{  
        float:right;
        margin:auto 2px auto auto;
        height:35px;
        width:35px;
        border:none;
        border-left:2px solid black;
    }.cart_label{
        margin:2px auto auto 4px;
        font-size:9px;
        
    }
    .cart_container{
        display:block;
        position:relative;
        margin:auto;
        top:2px;
        left:3px;
    }
    .mobile_hide{
        display:none;
    }
    .cart_container{margin:auto auto auto -1px;}
    .cart_count{margin:auto 2px auto auto;}
    .cart_label{
        position:relative;
        top:0px;
        left:-2px;
    }
    /**-------------------------------------------------------
    *                   Content
    *---------------------------------------------------------
    **/
    .banner_image{
        width:100%;
        min-width:100%;
    }
    .mobile_only{display:initial;}
    .mobile_block{display:block;}
}
@media (max-width:415px)

{

    .center_responsive_box, .crb{
        margin-bottom:5px;

    }
    #header{
        margin-bottom:6px;
    }
}



.account_button{
        height:35px;
        width:115px;
    }
    #accounts_container{
        border-bottom:6px double black;
        padding:0px;
        margin-bottom: 10px;
    }
    #account_text{
        font-size:20px;
        display: block;
        padding-bottom:3px;
        border-bottom: 1.8px solid black;
        margin-bottom: 5px;
    }
        #shop_container{
            text-align: center;
        }
        .fulfillment_container{
        display: inline-block;
        } 
        .product{
            vertical-align: top;
            display:inline-block;
            overflow:hidden;
            width:300px;
            border:1px solid black;
            margin:3px;
            padding:3px;
        }
        .product_name{
            display: block;
            margin: auto 5px auto 5px;
            padding-bottom:2px;
            text-align: center;
            font-size: 24px;
            border-bottom:1px solid black;
        }
        .event_name{
            display: inline-block;
            padding-left:10px;
            padding-right:10px;
        }
        .product_in_order{border-color:green;color:green;}
        .user_product_history_container{
            height:20px;
            margin:auto auto 4px auto;
            color:green;
            border-top: 1px solid green;
        }
                        .order_quantity{display:inline;}
                        .order_quantity_text{
                            display: block;font-size: 14px;
                        }
                        .unit_name_quantity{
                            font-size:16px;
                            max-height:32px;
                            margin-top:-1px;
                            overflow:hidden;
                        }
                        .unit_name_text{
                            display: block;
                            margin-top:-4px;
                        }
                        .event_format{display:inline;font-size: 16px;}
                        .unit_purchase{
                            display:block;
                            font-size:10px;
                            border-bottom:1px dotted gray;
                            width:75%;
                            margin: -2px auto auto auto;
                        }
                        .event_tax_gratuity{display:block;}
                        .purchase_price{display:block;font-size:12px;border-bottom:1px dotted;width:95%;margin:auto;}
                        .unit_total_price{display: block;}
                        .unit_quantity_button{
                            font-size: 26px;
                            vertical-align: top;
                            height:60px;
                            width:60px;
                            margin:auto 5px auto 5px;
                            /*border:2px dotted black;*/
                        }   

                        .available_text{
                                font-size:14px;
                                display:block;
                                opacity:.6;
                                width:75%;
                                margin:auto;
                                margin-top:5px;
                                padding:2px;
                            }
                            .count_available{
                                        -moz-user-select: none;
                                        -webkit-user-select: none;
                                        -ms-user-select: none;
                                color:#9F9FB7;
                                font-size:45px;
                                position:absolute;
                                width:60px;
                                height:68px;
                                margin-top:-50px;
                                padding-top:8px;
                            }
                            .unit_quantity_subtract{float:left;}
                            .unit_quantity_add{float:right;}
                            .dollar_sign{font-size:11px;vertical-align:20%;}
        .transient{border-color:gray;color:gray;}

        .selectable_list > .button{
            width:95px;
        }


        /*
        *********************************************************************
        ***************************** Events    *****************************
        *********************************************************************
        */
    .event_container{
        border:2px solid;
        margin-top:15px;
    }
    .event_seating{
        display: block;
        margin:auto auto 8px auto;
    }
    .event_date_soldout{
        color:red;
    }
    .event_soldout{
        color:red;
        margin:3px;
        /*border-top:1px solid red;*/
        font-size:1.3em;
    }
    .event_date_container{
        margin:3px auto auto auto;
        padding-bottom:2px;
        font-size:18px;
        /*border-bottom:3px double black;*/
        display: block;
        /*width:75%;*/
    }
    .event_tax_gratuity{display:block;font-size:9px;}

        @media
        (max-width : 1199.999px) 
        {
            
            .product{

                    width:275px;
                }
            .unit_quantity_button{
                width:56px;
            }
            .available_text{font-size:12px;display:block;}
            .count_available{
                
                color:#9F9FB7;
                font-size:45px;
                position:absolute;
                width:56px;
                height:68px;
                margin:-50px auto auto auto;
                padding-top:8px;
            }
        }

        #orders_container{
    min-height:100px;
}
    .oc{
        display: none;
    }

.order{
    vertical-align: top;
    display:inline-block;
    width:314px;
    border:2px solid black;
    padding:5px;
    font-size:17px;
    margin:15px 2px 25px 2px;
    padding-bottom:20px;
    overflow:hidden;
}
@media (max-width : 320px){.order{margin:15px 0px 25px 0px;padding:4px;}}
.order_item_container{
    text-align: left;
    height:48px;
    margin:auto;
    border-bottom:1px dashed gray;
    padding: 5px 2px 0px 2px;
}
.order_header{
    font-size:12px;
    border-bottom:1px solid black;
    width:50%;display:block;
    margin:10px auto;
    padding-bottom:1.5px;
    text-align:center;
    max-width:90%;
    width:auto;
}
.invoice_date{
    font-size:12px;
    border-bottom:1px solid black;
    width:auto;
    display:block;
    margin:auto;
    padding-bottom:2px;

}
.order_item{
    vertical-align: bottom;
    float:right;
    display: block;
    height:21px;
    
}
.oi_product_name{
    overflow:hidden;
    float:left;
}               
            .oi_quantity_edit_container{
                float:left;
                width:42px;
                margin-right: 2px;
                height:40px;
            }
            .oi_quantity_button{
                height:44px; width:20px;
                line-height:6px;
                margin:0px;
                /*border:1px solid;*/

            }.oi_add{margin-left: 2px;}

                .oi_numbers_container{text-align: right;overflow: hidden;}
                .oi_container_row_top{overflow:hidden;}
                .oi_container_row_bottom{overflow:hidden;margin-top:-5px;}
                .oi_unit_name{float:left;font-size:15px;}
                .oi_quantity{font-size: 14px;min-width:20px;margin-right:6px;}
                .oi_unit_price{min-width:54px;}
                .oi_total_price{min-width:64px;max-width:72px;text-align: right;}
.order_fulfillment_info_container{
    margin-bottom:15px;
    padding-bottom: 3px;
    border-bottom: 3px double black;
    text-align: center;
}
    .fulfillment_name{font-size:15px;display:block;}
    .fulfillment_on{font-size:10px;display:block;height:10px; margin:-3px auto 3px auto;}
.place_order{margin:auto auto 15px auto;}
.dollar_sign{font-size:10px;vertical-align:20%;}
.order_total_price{width:100%;text-align: right;margin-top:15px;}
.order_errors{
    height:60px;
    color:#660000;
    font-size: 14px;
}
.payment_options{
    overflow:hidden;
    margin:auto auto 5px auto;
    padding-top: 30px;
    border-top: 3px double black;
}
.payment_source{width:100%;height:45px;}
.payment_source_balance_container{
    float:right;
    overflow:hidden;
    margin-right:8px;
}
.payment_source_balance_text{}
.payment_source_balance{}
.payment_source_text{
    overflow:hidden;
    float:left;
    margin:auto auto auto 3px;
}

.payment_source_add{height:32px;font-size: 15px;}





/*
***********************************************************
                    partials/inventorys/orders
***********************************************************
*/
.inventory_li
{
    border:1px dotted black;
    padding:4px;
}
.inventory_li_unit_numbers
{
    background-color: lightgrey;
    padding:2px;
}
.inventory_orders{
    display: table;
    margin:auto;
}
.inventory_order{
    display: table-row;
    margin:auto;
    padding-top:2px;
    padding-bottom:2px;
    cursor:pointer;
}
.inventory_order span{
    /*display:table-cell;
    vertical-align:middle;

    border-collapse: collapse;
    border-bottom:1px solid black;
    height:40px;
    padding-left:3px;
    padding-right:2px;
    border-left:1px solid;
*/
}
.i_o_th span{
    font-size:13px;
    height:30px;
    min-height:30px;
    font-weight:bold;
    border-collapse: collapse;
    border-bottom:3px solid black;
}
.inventory_order :active{
    background:#99CCFF;
}
.inventory_order :hover{
    background:#99CCFF;
}

.io{
    min-width:300px;
    cursor: pointer;
    overflow: hidden;
    padding-bottom:2px;
    padding-top:2px;
    border-bottom:1px solid black;
}
.i_o_names{
    float:left;
    width:59%; 
    max-width:59%;
    padding-bottom: 2px;
}
.i_o_count{
    border-left:3px double black;
    float:right;
    width:39%;
    max-width:39%;
    padding-bottom: 2px;
    padding-left:2px;
}
    .i_o_count:hover, .i_o_names:hover {background:#D5E8FA;}
    .i_o_names:active, .i_o_count:active{background:#99CCFF;}

.order_status_container{
    padding:2px;
}

#email_content
{
    text-align:center;
    max-width:600px;
    margin:auto;
    font-family: Georgia, Times New Roman, Serif;
}




/**            SENSORS         
***********************************************************************************
**/

.sensor_data_container{
        display:inline-block;
        padding:4px;
        border-width: 3px;
        margin:4px;
        max-width:100px;
        border:2px solid;
        position: relative;
        min-height: 185px;
    }
.sensor_temp_minmax_container{
    width:40px;
    height: 36px;
    text-align: center;
}
.sensor_name_container{
    min-height: 40px;
}
.sensor_data_container a:visited
{
    color:blue;
}

.sensor_offline{
    opacity: 0.3;
}

.section_deeplink
{
    font-size: 24px;
    cursor:pointer;

    position: absolute;
    top:-6px;
    right:0px;
}




/**
 *******************************************************************************
 * **************************  Universal Formatters ****************************
 * *****************************************************************************
 */

.bl, .block, .d_b, .blk, .br{display: block;}

.w100p{width:100%;}
.w90p{width:90%;}

.w64{width:64px;}

.mw150{max-width:150px;}
.mw175{max-width:175px;}
.mw200{max-width:200px;}
.w250,.mw250{max-width:250px;}
.mw350{max-width:350px;}
.mw400{max-width:400px;}
.mw500{max-width:500px;}

.mw70p{max-width:70%;}
.mw60p{max-width:60%;}
.mw50p{max-width:50%;}
.mw30p{max-width:30%;}
.mw40p{max-width:40%;}
.mw45p{max-width:45%;}
.mw20p{max-width:20%;}

.w70p{width:70%;}
.w60p{width:60%;}
.w50p{width:50%;}
.w40p{width:40%;}
.w45p{width:45%;}
.w30p{width:30%;}
.w20p{width:20%;}


.h100p{height:100%;}

.mh150{max-height:150px;}
.mh175{max-height:175px;}
.mh200{max-height:200px;}
.mh250{max-height:250px;}
.mh350{max-height:350px;}
.mh400{max-height:400px;}
.mh500{max-height:500px;}

.minh150{min-height:150px;}
.minh175{min-height:175px;}
.minh200{min-height:200px;}
.minh250{min-height:250px;}
.minh350{min-height:350px;}
.minh400{min-height:400px;}
.minh500{min-height:500px;}



.bb{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.cb{
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
.f12{font-size:12px;}
.f13{font-size:13px;}
.f14{font-size:14px;}
.f16{font-size:16px;}
.f20{font-size:20px;}
.f24{font-size:24px;}
.f30{font-size:30px;}
.f40{font-size:40px;}
.b2{border:2px solid black;}

/*** Universal Text Formatters **/
.bold{font-weight: bold;}
.tal{text-align: left;}
.tac{text-align: center;}

.pr{ position: relative; }
.fl{ float:left; }
.fr{ float:right; }

.pal{position: absolute;right: 0px;}
.par{position: absolute;left: 0px;}
.pab{position: absolute;bottom: 0px;}

.strong{font-weight:bold;}

.vat
{
    vertical-align: top;
}


/****************************************************/
/********************* FILTER ***********************/
/****************************************************/

.filter_tag{
    cursor: no-drop;
}
.filter_tag_container{
    height:40px;
    width:100%;
    margin:auto;
}