body { top:0; left:0; right:0; padding:0; margin:0; color:#705d44; background-color:white; 
        font-family:'segoe ui','lucida grande',univers,'myriad pro',sans-serif; overflow-y:scroll; overflow-x:hidden; 
        background:url('../images/page_body.jpg') center top repeat; }
*:focus {outline:0;}
a { color:#705d44; }
a img { border:none; }
.link { text-decoration:underline; }
.call_popup { cursor:pointer; }
.hr { width:65%; background-color:#af9779; border:1px solid #705d44; margin:5% auto 5% auto; height:2px; border-radius:2px; }

#header { position:relative; height:17.5em; overflow:hidden; }
#header_bg img { width:130%; margin:-40% -15% 0 -15%; }
#header_shadow { position:absolute; bottom:0; width:100%; height:61px; }
#header_shadow img { width:100%; height:100%; }
#header_images { position:absolute; top:0; left:0; right:0; height:17.5em; }
#pig { position:absolute; left:0; top:2.5em; }
#pig img { width:14.65em; }
#bge { position:absolute; top:3.5em; right:.5em; }
#bge img { width:16em; }
#logo { width:36em; margin:0 auto 0 auto; }
#logo img { position:absolute; width:36em; }
#ribfest { margin-top:6.75em; }
#header_at { margin:15em auto; }
#date { margin:12.5em auto; }
#logo img { display:none; }

#page_body { position:relative; width:100%; }
#page_body_top { background:url('../images/page_body_top.jpg') center top repeat-x; font-size:2em; height:100%;  }
#poster { margin:0 auto 2em auto; width:66%; }
.page_background { background:#faf5ee; }
.shadow { -moz-box-shadow: 0 0 3em rgba(0,0,0,0.7); -webkit-box-shadow: 0 0 3em rgba(0,0,0,0.7); box-shadow: 0 0 3em rgba(0,0,0,0.7); }
.strong_shadow { -moz-box-shadow: 0 0 6em rgba(0,0,0,0.8); -webkit-box-shadow: 0 0 6em rgba(0,0,0,0.8); box-shadow: 0 0 6em rgba(0,0,0,0.8); }
.poster_inner { position:relative; padding:1em 1em 4em 1em; height:100%; }
.page_inner_shadow { text-align:center; border:1px solid #705d44; background:url('../images/poster_inner.jpg') repeat; -moz-box-shadow: inset 0 0 16em rgba(187,99,1,0.75); 
                       -webkit-box-shadow: inset 0 0 16em rgba(187,99,1,0.75); box-shadow: inset 0 0 16em rgba(187,99,1,0.75); }
#poster_header { margin-top:1em; width:65%; }
h1 { margin:0; padding:1em 0 0 0; text-align:center; }
h2 { font-weight:normal; font-size:1.8em; margin:0; text-align:center; }
.star { position:absolute; width:4.25em; }
.top { top:1em; }
.bottom { bottom:1em; }
.left { left:1em; }
.right { right:1em; }
p.center { text-align:center; margin:0 5% 4em 5%; padding:0; }
.legal { font-size:.8em; }
.bullet { margin:0 .5em 0 .5em; }
.button { width:26em; cursor:pointer; }
.col { width:76%; margin:0 12% 0 12%; }
.icons { width:90%; margin:2% 5% 2% 5%; }
.col > div { margin:5em 1% 5em 1%; text-align:center; border-radius:.65em; border:.2em solid #9e8364; padding:0 5% 0 5%; }
.col > div > div { display:inline-block; text-align:left; margin-bottom:1em; }
.icons div { display:inline-block; width:20%; margin:1%; padding:.3em; vertical-align:top; }
.icons img { width:7em; }
.icons a, .col a { text-decoration:none; }

#footer { position:relative; color:#342d27; font-weight:bold; background:url('../images/footer_bg.png') top repeat-x; width:100%; height:5em; }
#copyright { position:absolute; bottom:0; left:2em; }
.footer_text { line-height:4em; font-size:.9em; text-shadow: .05em .1em .15em rgba(255,255,255,0.5); }
.nowrap { white-space:nowrap; }
#footermenu { position:absolute; bottom:0; right:2em; }
#footermenu ul { line-height:4em; list-style-type:none; font-size:.9em; }
#footermenu li { float:left; margin-left:2em; }
#footermenu li a { color:#342d27; }

.popup { display:none; position:fixed; top:0; height:100%; left:0; width:100%; }
.popup > div { display:none; }
.popup_background { position:absolute; width:100%; height:100%; background:url('../images/bg_black50.png') repeat; }
.popup .page_background, .popup .popup_small { position:relative; display:table; vertical-align:middle; text-align:center; width:80%; height:80%; margin:5% 10% 5% 10%; overflow:hidden; }
.popup .popup_small > div { position:absolute; display:table-cell; width:100%; }
.radius_big { border-radius:1em; }
    .popup_scrollarea { position:absolute; top:8em; bottom:1em; left:2em; right:1.5em; padding-right:2em; overflow-y:auto; }
.popup .page_inner_shadow { position:absolute; top:0; bottom:0; width:100%; }
.inner_stroke { position:absolute; pointer-events:none; top:.35em; bottom:.35em; left:.35em; right:.35em; border-radius:.65em; border:.2em solid #796451; }
.close { position:absolute; width:5.5em; top:.4em; right:0; }
.popup h1 { font-size:1.8em; }
h1 img { height:1.5em; }
h1 img.h1_twoline { height:4.5em; }
.popup h2 { font-size:1.4em; font-weight:normal; margin:0; }
.popup h2 img { height:1em; vertical-align:baseline; }
.popup h3 { margin:0; padding-top:1em; }
.popup_scrollarea p:last-child { margin-bottom:2em; }
#registration_form { margin:1em 12.5% 1em 12.5%; font-size:1.4em; }
#registration_form label { float:left; width:22%; text-align:left; margin-top:.3em; white-space:nowrap; }
#registration_form input { display:inline-block; font-size:1.2em; width:75%; margin-bottom:.3em; background:none; border:0; border-radius:0; border-bottom:2px solid #d0c6b7; }
#registration_form input#city { display:inline-block; width:34% }
#registration_form input#state { display:inline-block; width:10% }
#registration_form input#zip { display:inline-block; width:20% }
#registration p.legal { font-size:.8em; }
.inside_modal { font-size:.75em; }
.rules { text-align:left; }
.rules ul, .rules p { margin-top:0; }
.rules td:first-child { padding-right:1em; }
.rules table { padding-bottom:1em; }

/*code for screen reorientation*/
.narrow #poster { width:94%; }
.narrow .icons div { width:90%; }
.narrow .icons img { float:left; }
.narrow #button_register { width:80%; }
.narrow #header, .narrow #header_images { font-size:1.2em; }
.narrow #page_body { font-size:1.7em; }
.narrow .popup { top:0; bottom:0; left:0; right:0; font-size:1.25em; }
.narrow .popup .page_background, .narrow .popup .popup_small { width:100%; height:100%; margin:0; }
.narrow h1 img { height:auto; width:70%; }
.narrow .radius_big, .narrow .radius_big_inner { border-radius:0; }
.narrow #pig, .narrow #bge { display:none; }
.narrow #poster_header { margin-top:4em; width:94%; }
.narrow #registration_form { margin-left:0; margin-right:0; }

@media only screen and (device-width: 768px) {
  #registration_form input { width:60% }
  #registration_form input#city { width:28% }
  #registration_form input#state { width:8% }
  #registration_form input#zip { width:12% } 
}