/* 
   IMPORTANT NOTICE
   This HTML5 and CSS layout is COPYRIGHT 2006-2019 Design215 Inc. 
   
   It MAY NOT be copied or used for any other web site without the express
   written permission of Design215 Inc. 954-630-3695 www.design215.com

   Design215.com CSS/110 stylesheet, v01.20.06 
   for 2020 motplans.com site
   
   Updated 05.22.2021
   
   Container layout of each page:

   body
     #menu1
     #menu2
     #menu3
     #container
       #pagehead
         .navbar
         .navlinks
         .navlinks2
       #pagebody
         #titlebar
         #contentbg
           #contentbox
             #contenthead
             .L_xxlarge (or other column classes)
             .minheight
             .R_xxsmall (or other column classes)
             .xclearline
           #endcap
     #footer
      
   -----------------------------------------------------------------------------

   
   Page Defaults and CSS Fixes
   ----------------------------------------------------------------------------- 
*/
html {
  line-height: 1.15; 
  -webkit-text-size-adjust: 100%; 
}
html,body {
  text-align:center; margin:0; padding:0; height:100%;
  box-sizing:border-box;
}

::-moz-selection {
  background: #222; color:#ffffcc;
  text-shadow: none;
}
::selection {
  background: #222; color:#ffffcc;
  text-shadow: none;
}

/*
   Fonts
   ----------------------------------------------------------------------------- 
   Define all fonts for the entire site in this section. 

*/
body {
  font-family:verdana,helvetica,sans-serif; font-size:10px; color:#222;
}
p,dl,ul,ol,table td,pre.p2,.xword,.xtitle,div.xarticle {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:14px; color:#222;
}
p.p4 {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:16px; color:#222;
  line-height:150%; letter-spacing:1px;
}  
p.p5,p.c1,p.leader {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:16px; color:#222;
  line-height:160%; letter-spacing:1px;
} 
h3,#footer a.w3,.xbig,.hdate {
  font-family:georgia,arial,helvetica,sans-serif; font-size:16px; font-weight:bold; color:#000;
}
h2 {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; 
  font-size:18px; color:#000;
  margin:10px 4px 4px 12px; padding:0; 
  text-transform:uppercase; letter-spacing:1px;
}
h1 {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; 
  font-size:24px; color:#000; font-weight:500;
  margin:10px 4px 4px 12px; padding:0; 
  text-transform:uppercase; letter-spacing:1px;
}
table.t3 td {
  font-family:arial,helvetica,sans-serif; font-size:12px; font-weight:bold; color:#000;
}
span.price {
  font-family:arial,helvetica,sans-serif; font-size:16px; font-weight:bold; color:#000;
}
h1.g1,h1.c1 {
  font-family:arial,helvetica,sans-serif; font-size:20px; font-weight:bold; color:#002288;
}
pre,code,div.xbox3,.ckBox,.boxBlur,.boxFocus,.formula {
  font-family:courier new,courier,monospace; font-size:12px; color:#006000;
}
#footer p,.xsmall {
  font-family:arial,helvetica,sans-serif; font-size:11px; color:#666666;
}
#footer p.xnav {
  font-family:arial,helvetica,sans-serif; font-size:12px; color:#8888aa;
}
.fbutton,ul.alist li,.spopup {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:16px; color:#222;
  line-height:120%; letter-spacing:1px;
}
a.k {
  font-family:arial,helvetica,sans-serif; font-size:12px;
}
div.dropx,div.dropx a {
  font-family:arial,helvetica,sans-serif; font-size:18px; color:#fff;
}
p.quote {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:16px; color:#000;
  line-height:160%; letter-spacing:1px;
}
div.navlinks2 p {
  font-family:'source_sans_proregular',arial,helvetica,sans-serif; font-size:22px; color:#fff;
  margin:0; padding:0;
}


/* 
   Type Selectors
   ----------------------------------------------------------------------------- 
   Define the defaults for HTML elements in this section. 
*/

html,body {
  text-align:center; margin:0; padding:0; height:100%;
  color:#000; background:#fff;
}
body {
  display:flex; flex-direction:column;
}

a:link,
a:visited {text-decoration:underline; font-weight:bold; color:#0077ff;}
a:hover {text-decoration:underline; font-weight:bold; color:#444444;}

acronym {
  font-weight:bold; color:#888888;
  border-bottom:dashed 1px #000000; cursor:help; 
}
form {
  margin:0; padding:2px 0 0 0;
}
h3 {
  position:relative; text-align:right;
  margin:-12px 4px 0 0; padding:0;
}
img {
  margin:0; padding:0; border:0;
}
iframe {
  margin:0;
}
ol li {
  padding:2px 0 4px 0;
}
p {
  margin:2px 6px 2px 12px; padding:0;  /* default is no left margin */
}
pre {
  margin:0; padding:0;
}
table {
  margin:2px 6px 2px 12px; padding:0;
}
table td,table td p {
  vertical-align:top;
  line-height:130%;
}

ul {
  list-style:none;
  margin:4px 0 0 12px; padding:0;
}
ul li {
  margin:2px 0 2px 0; padding:1px 0 0 12px; width:98%;
  background:transparent url(images/bullet.gif) 0 2px no-repeat;
}
  

form table { /* no left margin for tables inside forms */
  margin:2px 6px 2px 0; padding:0;
}


/* 
   Class and ID Selectors
   ----------------------------------------------------------------------------- 
   Define styles for all elements except the layout containers 
*/

/* Mobile Menu button */
a.mobile {
  display:block; line-height:20px; margin:0; padding:6px 0 0 48px; width:120px; height:35px;
  font-family:verdana,helvetica,sans-serif; font-size:22px; font-weight:bold; color:#000;
  background:transparent url(images/mobilemenu.png) 1px 0px no-repeat;
  cursor:pointer;
}
a.mobile:link,
a.mobile:visited {text-decoration:none; font-weight:bold; color:#000;}
a.mobile:hover {text-decoration:none; font-weight:bold; color:#000;}

/* Mobile Call button */
a.mobile2 {
  display:block; line-height:20px; margin:0; padding:6px 0 0 48px; width:120px; height:35px;
  font-family:verdana,helvetica,sans-serif; font-size:22px; font-weight:bold; color:#000;
  background:transparent url(images/mobilecall.png) 1px 0px no-repeat;
  cursor:pointer;
}
a.mobile2:link,
a.mobile2:visited {text-decoration:none; font-weight:bold; color:#000;}
a.mobile2:hover {text-decoration:none; font-weight:bold; color:#000;}


/* menu links */
div.navlinks a {
  display:block; position:absolute; width:60px; height:19px;
  font-family:'source_sans_proregular',arial,sans-serif; font-size:16px; 
  text-transform:uppercase; letter-spacing:1px; margin:0; padding:0;
}
div.navlinks a:link,
div.navlinks a:visited {text-decoration:none; font-weight:normal; color:#fff;}
div.navlinks a:hover {text-decoration:none; font-weight:normal; color:#fa5;}

div.navlinks span {display:none;}
#pagehead span.noshow {display:none;}

/*
  positions must be set using id, not class
  
*/
a#a1 {width:60px; left:4px;}    /* Home */
a#a2 {width:60px; left:80px;}   /* About */
a#a3 {width:60px; left:160px;}  /* Services */
a#a4 {width:80px; left:264px;}  /* Equipment */
a#a5 {width:60px; left:380px;}  /* Quote */
a#a6 {width:60px; left:462px;}  /* Jobs */
a#a7 {width:60px; left:530px;}  /* Contact */

/* video thumbnails */
a.v1 {
  display:block; position:absolute; width:300px; height:170px; left:0px; top:0px;
  margin:0; padding:0;
}
a.v1:link,
a.v1:visited {text-decoration:none; font-weight:bold; color:#909090;}  
a.v1:hover {
  text-decoration:none; font-weight:bold; color:#84ff3f;
  background:transparent url(images/media_overlay.png) no-repeat;
}

  /* Style for link "buttons" like "Save", "Go", etc */
  input.btn2 {
    line-height:20px; vertical-align:middle;
    letter-spacing:1px; color:#fff; font-weight:400;
    margin:0 1px 0 4px; padding:10px 14px 10px 14px; background:#0088ed;
    border-radius:4px; border:0;
    cursor:pointer;
  }

  a.btn2 {
    letter-spacing:1px; color:#fff;
    margin:0 1px -4px 4px; padding:10px 14px 10px 14px; background:#0088ed;
    border-radius:4px;
    cursor:pointer;
  }
  a.btn2:link,
  a.btn2:visited {text-decoration:none; font-weight:400; color:#fdfdfd;}
  a.btn2:hover   {
    text-decoration:none; font-weight:400; color:#fff; background:#00cc00;
  }

/* footer links */
#footer a:link,
#footer a:visited {text-decoration:none; color:#3E6788;}
#footer a:hover {text-decoration:underline; color:#000000;}
  
/* W3C validation links */
#footer a.w3:link,
#footer a.w3:visited {text-decoration:none; color:#eee;}
#footer a.w3:hover {text-decoration:none; color:#000;}

br.clr {
  clear:both;
}
br.nb { /* use on mobile */
  display:none; 
}
  
code.bx {  /* outlined code like an input box */
  border:1px solid #999999; background:#eeeeee;
  padding:1px;
}
code.t2 {  /* indented block of example code */
  display:block;
  margin:4px 0 2px 8px; padding:0;
}     

/* Separators to clear column floats */
div.xclear {
  position:relative; clear:both; height:1px; line-height:1px; 
  margin:0; padding:0;
}
div.xclearline { /* content under columns */
  position:relative; clear:both; width:90%; line-height:3px; 
  margin:0; padding:0;
}


div.xline { /* accent line */
  height:1px; line-height:1px;
  margin:3px; padding:0 0 3px 0;
  border-top:solid 1px #aaaaaa;
}
div.xbox2 { /* outline box */
  width:90%;
  padding:8px 2px 8px 2px; 
  border:solid 1px #aaaaaa; background:#ffffff;
}
div.ffield { /* form fields */
  position:relative; float:left; margin:0; padding:2px 12px 4px 0;
} 

div.xbox2 { /* outline box */
  width:90%;
  margin:0 0 0 12px; padding:8px 2px 8px 2px; 
  border:solid 1px #aaaaaa; background:#ffffff;
}

div.xboxv { /* video playlist boxes */
  position:relative; 
  display:inline-block; vertical-align:top;
  width:300px; height:200px; 
  padding:2px 2px 8px 0; margin:2px 2px 8px 8px;
}

div.vwrap { /* wrapper for youtube player */
  position:relative;
  width:100%;
  padding-bottom:55%; 
  padding-top:15px; 
  margin:0 0 0 15px;
  height:0; 
  overflow:hidden; 
}
div.vwrap iframe,
div.vwrap object,
div.vwrap embed {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

div.pdfwrap { /* wrapper for inline PDFs */
  position:relative;
  width:100%;
  padding-bottom:5px; 
  padding-top:5px; 
  height:50%;
  min-height:600px; 
  overflow:hidden; 
}
div.pdfwrap iframe {
  position:absolute;
  top:0;
  left:0;
  width:99%;
  height:99%;
}

iframe.tour3d {
  width:99%; min-height:600px;
  margin:0; padding:0;
}

div.xbox_scroll { /* outline scroll box */
  width:400px; height:300px; overflow:scroll;
  margin:0 0 0 12px; padding:8px 2px 8px 2px; 
  border:solid 1px #aaaaaa; background:#ffffff;
}

div#googlemap {
  width:100%; min-height:800px; margin:0; padding:0; 
  background:#444; color:#000; border:0;
}

div.gadvert { /* Google ads */
  margin:0 0 0 12px;
}
div.gsearch { /* Google search box */
  position:absolute; width:500px; left:250px; top:20px;
}

/* Social media buttons, tweet, like, pinit */
div.social {
  position:relative; float:left; height:35px; width:80px;
  margin:0; padding:0;
}
div.social2 {
  position:relative; float:left; height:35px; width:120px;
  margin:0; padding:0;
}
div.socialclear {
  position:relative; clear:both; width:120px; 
  margin:0; padding:0;
} 

div.pthumb {
  position:relative; display:inline-block; vertical-align:top;
  text-align:center; width:248px; height:208px;
  margin:4px 6px 12px 6px; padding:0; overflow:hidden;
  border:2px solid #ccc;
}
  div.pthumb a {
    text-transform:uppercase; font-size:14px;  
  }
  div.pthumb a:link,
  div.pthumb a:visited {text-decoration:none; font-weight:normal; color:#000;}
  div.pthumb a:hover {text-decoration:none; font-weight:normal; color:#ff7f00;}
  
  div.pthumb img {
    border:4px solid #fff;
    max-width:99%;
  }
 

dl.alist {
  margin:0; padding:4px 0 0 0;
}
dl.alist dt {
  font-size:12px; color:#000099; line-height:150%;
  margin:0; padding:0 0 0 12px;
}
dl.alist dd {
  line-height:120%;
  margin:0; padding:0 0 16px 20px;
}
dl.t2 {  /* lists used inside table td's */
  margin:0; padding:0;
}
dl.t2 dt {margin:0; padding:0;}
dl.t2 dd {margin:0; padding:4px 0 2px 8px;}
  
dl.links {
  margin:0; padding:4px 0 0 0;
}
dl.links dt {
  line-height:150%;
  margin:0; padding:0 4px 0 20px;
}
dl.links dd {
  line-height:120%;
  margin:0; padding:0 10px 4px 28px;
}
  
h1.m1 {
  margin:2px 2px 0 12px;
}
h1.c1 {
  text-align:center; margin:2px 2px 0 2px;
}

img.xpic {
  margin:1px 3px 3px 1px; padding:0;
  border:solid 1px #444444;
}
img.xthumb {
  margin:8px 5px 15px 20px; padding:10px;
  background:#ffffff; border:solid 1px #ffffff;
}

p.p2 img,
p.p4 img,
p.p5 img {
  max-width:98%;
}

/* stackable thumbnail blocks that wrap */
table.xthumb {
  position:relative;
  width:170px; height:170px;
  float:left;
  padding:0px; margin:0 4px 4px 0;
  background:#000000;
  border-radius:4px; 
}
/* facebook covers */
table.xthumb2 {
  position:relative;
  width:340px; height:120px;
  float:left;
  padding:0px; margin:0 4px 4px 0;
  background:#000000;
}
/* media */
table.xthumb3 {
  position:relative;
  width:290px; height:170px;
  float:left;
  padding:0px; margin:0 4px 4px 0;
  background:#000000;
}
/* categories */
table.xthumb4 {
  position:relative;
  width:190px; height:170px;
  float:left;
  padding:0px; margin:0 0 5px 5px;
  background:#dddddd;
  border-radius:8px; 
  border-right:1px solid #888888;
  border-bottom:1px solid #888888;
}
table.xthumb td,
table.xthumb2 td,
table.xthumb3 td,
table.xthumb4 td {
  text-align:center;
}
table.xthumb td span,
table.xthumb2 td span,
table.xthumb3 td span {
  position:relative;
  display:inline-block;  /* this has no effect in IE7 */
  background:#000000;
  padding:4px; margin:0;
}

img.zthumb {
  margin:2px 4px 4px 0; padding:0;
  border:4px solid #fff;
  box-shadow:2px 2px 5px rgba(0,0,0,0.75);
}
img.zteam {
  max-width:96%;
  margin:2px 4px 4px 0; padding:0;
  border:6px solid #fff;
  box-shadow:2px 2px 5px rgba(0,0,0,0.75);
}

img.art {
  border:solid 1px #000000;
}
   

img.xleft {  /* left aligned image */
  float:left; margin:2px 10px 2px 0;
}
img.xright {  /* right aligned image */
  float:right; margin:2px 0 2px 10px;
}
img.bleft {  /* left aligned image, border */
  float:left; margin:2px 10px 2px 0;
  border:1px solid #666666;
}
img.bright {  /* left aligned image, border */
  float:right; margin:4px 10px 4px 10px;
  border:1px solid #666666;
}
img.dleft {  /* left aligned image for use with ul.dlist */
  float:left; margin:2px 10px 2px 12px;
  border:1px solid #666666;
}

/* video thumbnails */
img.vthumb {
  margin:0; padding:0; background:#444;
  width:300px;
}
img.overlay {
  width:300px; height:170px; margin:0; padding:0;
}

iframe.noshow {visibility:hidden;}

label.noshow,
h1.noshow,
h2.noshow,
span.tt,
span.noshow {display:none;}

object.p1 {
  margin:2px 6px 2px 12px; padding:0;
}

p.c1 { /* centered */
  text-align:center; line-height:normal;
  margin:2px 6px 2px 12px; padding:0;
}
p.p1 { /* normal line height for narrow columns */
  line-height:110%;
  margin:2px 6px 2px 12px; padding:0;
}
p.n1 { /* justified column like a newspaper */
  font-size:10px;
  margin:4px 2px 0 12px; padding:0; text-align:justify;
}
p.n2 { /* right column with vertical dashed line */
  font-size:10px;
  margin:0; padding:4px 2px 0 12px; border-left:1px dashed #aaaaaa;
}
p.r1 { /* used for the last updated date on links.php */
  text-align:right;
  font-size:10px; line-height:normal;
  margin:-16px 12px 0 0; padding:0;
}
p.r2 {
  text-align:right;
  line-height:150%;
  margin:4px 4px 4px 12px; padding:0;
}

/* testimonials */
p.quote {
  line-height:150%;
  margin:4px 0px 0 12px; padding:2px 24px 0 30px;
  background:transparent url(images/quote1.png) left top no-repeat;
}
div.quote {
  margin:0 0 0 12px; padding:6px 0 20px 0;
  border-bottom:1px dotted #aaa;
}

pre.p2 {
  line-height:150%;
  margin:4px 4px 0 12px; padding:0;
}

table.t1 { /* no left margin */
  margin:2px 6px 2px 0; padding:0;
}
table.t2 {
  width:94%;
}
table.t3 {
  width:270px;
}

table.formrating {
  margin:2px 2px 0 12px;
}

ul.alist {
  margin:4px 0 0 12px; padding:0;
}
ul.alist li {
  margin:2px 0 6px 0; padding:1px 0 0 14px; width:90%;
  background:transparent url(images/bullet.gif) 0 6px no-repeat;
}
  
ul.blist {
  margin:4px 0 0 0; padding:0;
}
ul.blist li {
  margin:2px 0 2px 0; padding:1px 0 0 12px; width:98%;
  background:transparent url(images/bullet.gif) 0 4px no-repeat;
}
  
/* left aligned image with bullet list on the right */
ul.dlist {
  margin:4px 0 0 0; padding:0;
}
ul.dlist li {
  margin:2px 0 2px 0; padding:1px 0 0 12px; width:250px;
  background:transparent url(images/bullet.gif) 0 4px no-repeat;
}

/* Form fields updated 04.14.2021 */
.ckBox { /* checkboxes */
  margin:1px; padding:0;
}
.boxBlur {
  font-family:verdana,helvetica,sans-serif; font-size:18px; 
  border:1px solid #bbb; color:#000; background:#fff;
  padding:8px; max-width:90%;
}
.boxBlurDisable {
  font-family:verdana,helvetica,sans-serif; font-size:18px; 
  border:1px solid #c9c9c9; color:#828282; background:#ececec;
  padding:8px; max-width:90%;
}
.boxBlur:focus,.boxFocus {
  font-family:verdana,helvetica,sans-serif; font-size:18px; 
  border:1px solid #666; color:#000; background:#ffffcc;
  padding:8px; max-width:90%;
}
.boxBlurR {
  font-family:verdana,helvetica,sans-serif; font-size:18px; 
  border:1px solid #c9c9c9; color:#181818; background:#fcfcfb;
  text-align:right; padding:8px; max-width:90%;
}
.boxBlurR:focus,.boxFocusR {
  font-family:verdana,helvetica,sans-serif; font-size:18px;
  border:1px solid #666; color:#000; background:#ccffcc;
  text-align:right; padding:8px; max-width:90%;
}
  .boxError {
    font-family:verdana,helvetica,sans-serif; font-size:18px; 
    border:1px solid #ff0000; background:#ffcccc; 
    padding:8px; max-width:90%;
  }
  .boxRequired {
    font-family:verdana,helvetica,sans-serif; font-size:18px; 
    border:1px solid #ff0000; color:#181818; background:#fcfcfb; 
    padding:8px; max-width:90%; 
  }
  .boxRequired:focus {
    font-family:verdana,helvetica,sans-serif; font-size:18px; 
    border:1px solid #ff0000; color:#181818; background:#ffffdd; 
    padding:8px; max-width:90%; 
  }
  .boxDisable {
    display:none;
  }
  .boxClear {
    text-align:right;
    font-family:verdana,helvetica,sans-serif; font-size:22px; 
    border:1px solid #c9c9c9; color:#181818; background:#fcfcfb;
    max-width:90%;
  }  

.fbutton {
  border:1px solid #666; color:#0047ea; background:#eee;
  margin:0; padding:4px; 
  font-family:arial,helvetica,sans-serif; font-size:14px; font-weight:bold;
}


/* Form fields generated by makeFormField(), updated 04.14.2021  */
div.formfield {
  position:relative; display:inline-block; vertical-align:top;
  text-align:left; min-width:50px; max-width:95%;
  margin:14px 0 2px 12px; padding:0;
  font-size:12px;
}
  div.formfield p {
    margin:0; padding:0;
    font-size:16px;
  }
  div.formfield textarea {
    max-width:96% !important; margin:0;
  }
p.charcount {
  position:absolute; width:80px; top:0px; right:8px;
  text-align:right; margin:0; padding:0;
}

  /* special cases */
  #pag_vdetails #zphonec {
    top:1.4em;
  }

/* contact form "required" */
p.cfreq {
  font-size:95%;
  padding:0 0 0 8px; margin:0;
}
span.cfreq {
  position:relative;
  font-weight:bold; color:#f00; 
}
/* contact/guestbook forms */
div.cfmsg,
#cf1,
#cf2,
#cf6,
#cf7,
#cf15,
#cf17 {
  width:80%; max-width:420px;
}
#cf12 {
  width:100%;
} 
 

/* forms on other pages */
textarea#textcount {
  width:500px;
}
textarea#compress1,
textarea#text1,
textarea#text2 {
  width:600px;
}
input#flines {
  width:250px;
}
  
/* Misc Classes */

.border1 {  /* used for images instead of border="1" */
  border:1px solid #666666;
}

.counter {color:#aaaaaa;}

.dash1 {
  position:relative; display:block; color:#000099;
  margin:0 2px 4px 2px; padding:0 0 2px 0;
  border-bottom:1px dotted #0035ad;
}
.dash2 {
  position:relative; display:block; color:#000000;
  margin:0 10px 4px 12px; padding:0 0 2px 0;
  border-bottom:1px dashed #888888;
}
.dash3 {  /* p2 paragraph separator, extra right margin */
  position:relative; display:block; line-height:4px;
  margin:0 80px 4px 20px; padding:0;
  border-bottom:1px dashed #888888;
}
.dash4 {  /* p3 paragraph separator */
  position:relative; display:block; line-height:4px;
  margin:0 20px 4px 20px; padding:0;
  border-bottom:1px dashed #888888;
}
.hdate { /* dates under H2 headings (articles, etc) */
  position:relative; display:block; color:#000099;
  margin:0 10px 8px 12px; padding:0 0 2px 0;
}
.sm {position:relative; top:-4px; font-size:9px; font-weight:normal;} /* service mark (sm) */
.super {position:relative; top:-4px; font-size:10px;} /* superscript */

.xbig {  
  font-size:18px; color:#000099;
}
.xdash {border:1px dashed #000000;} 

.xline {
  position:relative; display:block; line-height:4px;
  margin:0 2px 8px 12px; padding:0;
  border-bottom:1px solid #888888;
}
.xred {color:#ff0000;} /* form errors */
.xword {font-weight:bold; color:#dddddd;}

.nbox {  /* remaining characters field */ 
  text-align:right; width:250px;
  border:0; color:#000000; background:transparent;
}

span.st2,
span.st7 {
  display:none;
}


/* 
   Containers for this layout
   -----------------------------------------------------------------------------
   For this site, #container needs a fixed width so all of the backgrounds and other
   divs inside it line up. Otherwise there are some 1px rounding issues depending on the 
   size of the browser window.
*/

/* Page Header, full width of container, OUTSIDE OF CONTAINER */
#pagehead {
  position:fixed; flex:none; left:0; top:0; height:104px; width:100%;
  text-align:center; margin:0; padding:0;
  overflow:visible; z-index:97; /* must be less than drop menu z-index */
  background:#333 url(images/topbar.png) repeat-x;
}
  #headerbox {
    position:relative; height:104px; max-width:1000px;
    text-align:center; margin:0 auto 0 auto; padding:0;
    overflow:visible;
  }
  #pagehead div.navbar {  /* width and height necessary for image replacement */
    position:absolute; top:0px; left:6px; width:160px; height:160px;
    text-align:center; margin:0; padding:0;
  }
    #pagehead div.navbar img.sitelogo {
    }
  /* DIVs for navigation links */
  div.navlinks {
    position:absolute; top:66px; left:180px; width:600px; height:30px;
    text-align:left; margin:0; padding:0;
  }
  div.navlinks2 {
    position:absolute; top:10px; right:10px; width:800px; height:30px;
    text-align:right; margin:0; padding:0;
  }
    div.navlinks2 p span {
      padding:0 0 0 30px;
    }
  div.mobilemenu {
    position:absolute; top:18px; left:20px; width:44px; height:44px; 
    margin:0; padding:0; overflow:hidden; display:none;
  }
  div.mobilemenu2 {
    position:absolute; top:18px; right:20px; width:44px; height:44px; 
    margin:0; padding:0; overflow:hidden; display:none;
  }
#headpic {
  position:relative; left:0; top:65px; height:500px; width:100%;
  text-align:left; margin:0 auto 0 auto; padding:0;
}  
#alertmsg {
  position:absolute; left:0; top:80px; width:100%; 
  text-align:center; margin:0 auto 0 auto; padding:0; z-index:96;
} 
  #alertmsg img {max-width:420px;} 

#container {
  position:relative; flex:1 0 auto;
  text-align:center; margin:0; padding:0;
}

  /* Page body, full width of container */
  #pagebody {
    position:relative; 
    width:100%; /* needed for flex mode */
    min-height:500px;
    text-align:left; margin:140px 0 0 0; padding:0;
  }
    /* Full width container CLASS for full width backgrounds */
    div.contentbg {
      position:relative; width:100%;
      text-align:left; margin:0; padding:0; /* bottom padding needed for flex mode?? */
    }
      /* Inner content box for centered, fixed width content */
      div.contentbox {
        position:relative; max-width:1000px;
        text-align:left; margin:0 auto 0 auto; padding:0;
      }
      div.contentbox2 {
        display:flex; flex-flow:row wrap; justify-content:center; 
        margin:0; padding:0;
      }

          /* Columns, Total width must be <= 750px */
          div.L_full {width:100%;}
          div.R_full {width:900px;}
          
          div.L_full2 {
            position:relative;
            width:100%; max-width:1000px; 
            margin:0 auto 60px auto; padding:0;
          }
          
          
    /* Footer, extends to bottom edge of window */
    #footer {
      position:relative; flex:none; width:1000px; max-width:1000px; height:100px;
      margin:0 auto 0 auto; padding:60px 0 0 0;
    }
      #footer p {
        position:relative;
        text-align:right; margin:0; padding:0 12px 0 4px;
      }
      #footer p.xnav {
        position:relative;
        text-align:right; margin:0 0 6px 0; padding:0 12px 0 4px;
      }
  
      div.ftcenter {
        position:relative; width:990px;
        margin:0 auto 0 auto; padding:15px 0 0 0;
      }
      div.L_footer {
        position:relative; float:left; width:160px; margin:0; padding:0;
      }
      div.L_footer2 {
        position:relative; float:left; width:120px; margin:0; padding:0;
      }
      div.R_footer {
        position:relative; float:right; width:350px; height:250px; margin:0; padding:0;
      }
  div.social {
    position:absolute; top:60px; left:4px; width:220px; height:35px;
    text-align:left; margin:0; padding:0;
  }
    #footer div.social p {
      text-align:left;
    }
    div.social img {
      padding:0; margin:0 0 0 6px;
    }

/* 
   Page specific styles
   -----------------------------------------------------------------------------
   Define styles and style groups that are only used on certain pages
*/

div.ctitle,
div.ctitle2 {
  position:relative; text-align:center;
  margin:0; padding:0 0 20px 0; overflow:hidden;
}
  div.ctitle img {max-width:100%; height:auto;}
  
.colgray {
  background:#eee;
}  
  
div.C_inline,
div.C_small2,
div.C_small3,
div.C_med { /* centered column that wraps @ min-width */
  position:relative; display:inline-block; vertical-align:top;
  text-align:left; max-width:620px; min-width:460px;
  margin:0; padding:0; overflow:hidden;
}

/* equal to flex groups */
div.C_large,
div.C_title {
  position:relative; text-align:left;
  width:100%; max-width:1012px; margin:0 0 4px 0;
}
div.C_title {
  padding:20px 0 4px 0;
}
.padleft {padding:0 0 0 12px;}

/* flex group 2 - 70%, 1000px + 12px between */
div.C_small {
  position:relative; flex:45%; align-self:flex-start;
  max-width:750px; margin:0 0 4px 0; padding:0;
}
div.C_flex2 {
  position:relative; flex:25%; align-self:flex-start;
  max-width:250px; margin:4px 20px 4px 0; /* 20px between cols when used as left sidebar */
}

/* flex group 2 - 70%, 1000px + 12px between */
div.C_small2 {
  position:relative; flex:40%; align-self:flex-start;
  max-width:650px; margin:0 0 4px 0;
}
div.C_flex3 {
  position:relative; flex:30%; align-self:flex-start;
  max-width:350px; margin:4px 0 4px 0;
}

div.C_small3 {
  max-width:360px; min-width:300px;
}

/* flex group 3 - this with two C_flex2 */
div.C_flex4 {
  position:relative; flex:40%; align-self:flex-start;
  max-width:490px; margin:4px 0 4px 0;
}

/* order flex columns */
div.column1 {
  order:1;
}
div.column2 {
  order:2;
}

div.scroll2,
table.scroll2 {
  overflow-x:scroll;
}

div.C_inline {
  max-width:440px; min-width:440px;
  margin:0;
}
div.C_flex {
  position:relative; flex:0 1 470px; align-self:flex-start;
}

div.imgbar {
  position:relative; display:inline-block; vertical-align:top;
  text-align:center; max-width:28%;
  margin:0; padding:2%; overflow:hidden;
} 
  div.imgbar img {
    width:100%; max-width:100%;
  }   
      
/* homepage */
#fullphoto {
  position:relative; flex:0 0 auto; width:100%;
  margin:0; padding:104px 0 0 0; 
  text-align:center;
  background:#444;
  overflow:hidden;
}
#pag_home #pagebody {
  margin:30px 0 0 0; padding:0; 
  min-height:100px;
}
#fullphoto img.leafpic {
  width:100%; margin:0; padding:0;
}
#photocredit {
  position:absolute; width:100%;
  left:0px; top:104px; margin:0; padding:0;
  z-index:95;
}
#photocredit img.slidecover {
  width:100%;
}

#pag_image #pagebody {
  margin:100px 0 0 0; padding:0; 
}
#pag_image div.xclearline { /* content under columns */
  margin:0; padding:0;
}
#pag_image div.L_full { 
  width:900px;
}
#pag_image div.L_xsmall { /* navigation bewteen images */
  width:300px;
}
#mainphoto {
  position:relative;
  margin:0; padding:0; 
  text-align:center;
  overflow:hidden;
}
  #mainphoto img {
    width:100%; margin:0; padding:0;
  }
   
#imgprev {
  position:absolute; left:15px; top:50%; width:50px; height:100px; margin:-50px 0 0 0;
  z-index:90;
}
#imgnext {
  position:absolute; right:15px; top:50%; width:50px; height:100px; margin:-50px 0 0 0;
  z-index:90;
}
#imgprev a,
#imgnext a {
  display:block; padding:30px 20px 30px 10px;
  border-radius:4px; font-size:30px;
}
#imgprev a:link,
#imgprev a:visited,
#imgnext a:link,
#imgnext a:visited {
  text-decoration:none; font-weight:bold; color:rgba(255,255,255,0.8); background:rgba(0,0,0,0.2);
  border:1px solid rgba(255,255,255,0.4);
}
#imgprev a:hover,
#imgnext a:hover {
  text-decoration:none; font-weight:bold; color:rgba(255,255,255,1); background:rgba(0,0,0,0.4); 
  border:1px solid rgba(255,255,255,1);
}

#xthumb1 {
  padding:0 0 0 10px;
}
#thumbbar {
  position:relative; max-height:150px; 
  overflow-x:auto; overflow-y:hidden;
  text-align:center;
  padding:4px;
  white-space:nowrap;
}
  
   
/* sitemap.php */
#pag_sitemap div.L_small {width:320px;}

/* Google Maps pages */
#pag_map #pagebody {
  margin:100px 0 0 0; padding:0; 
}
          

#pag_ #headpic,
#pag_index #headpic,
#pag_home #headpic,
#pag_gallery #headpic,
#pag_map #headpic,
#pag_news #headpic,
#pag_article #headpic,
#pag_employ_app #headpic,
#pag_testimonials #headpic {
  display:none;
}
#pag_about #headpic {
  background:transparent url(/images/hd/ryc_front03.jpg) center center;
  background-size:cover;
}
#pag_contact #headpic {
  background:transparent url(/images/hd/ryc-night6325.jpg) center center;
  background-size:cover;
}

.fullpic img {
  width:100%; margin:0; padding:0; 
  vertical-align:top; /* gets rid of "mystery space" */
}
    
/* Tables used for charts */
table.gray1 {background:#aaaaaa; width:95%}
table.gray1 td {background:#ffffff; padding:4px;}
table.gray1 td.ht1 {background:#eeeeee;}  /* td hightlight */
table.gray1 td.ht2 {background:#eeeeff;}  /* td hightlight */
table.gray1 td.ht3 {background:#ffee66;}  /* td hightlight */
table.gray1 h2 {margin:0;}


/* Design215 Guestbook/Comments v01.26.06 */
table.xguest {  /* outside table */
  width:520px; margin:0;
}
table.xguest table {margin:0;}

.gbox {  /* remaining characters field, guestbook */ 
  text-align:right; width:250px;
  border:0; color:#000000; background:transparent;
}
.cbox {  /* remaining characters field, comments */ 
  width:250px;
  border:0; color:#000000; background:transparent;
}
.guestErr {
  font-weight:bold; color:#ff0000; 
}
.gline { /* user entries separator */
  position:relative; display:block; line-height:4px;
  margin:0 20px 4px 20px; padding:0;
  border-bottom:1px dashed #888888;
}
.xquote1,.xquote2 {display:none;}

h2.cmttot,
h2.gstbk {margin:2px 2px 2px 12px; padding:0; background-image:none;}

p.gst1 {margin:0 0 8px 12px}
p.gst1 span {font-weight:bold;}
p.gst2 {margin:0 60px 0 12px}

/* _getcomments.php */
input#gname,
input#gemail {
  width:240px;
}
textarea#gtext {
  width:500px;
}


/* Design215 Slideshow, index.php */
#pag_home #xssw1,
#pag_home #xssw2 {
  /* 2012 update: opacity set with css on slideshow page */
  position:absolute; visibility:hidden;
  background:transparent;
  margin:0; padding:104px 0 0 0;
  text-align:center; /* slideshow image will be centered in the div */
  width:100%; /* div will be the full width of its container */ 
}
#pag_home #xssw1 img,
#pag_home #xssw2 img {
  width:100%;
}
#pag_home #xslidetext,
#pag_home #xslidenum,
#pag_home #slidecontrols {
  display:none;
}


/* Design215 Drop Menu, v11.22.2012 */
#xtooltip {
  position:absolute; left:-200px; top:5px; z-index:98;
  margin:0; padding:0 0 7px 0;
  background:transparent url(images/tooltip_pointer.png) 14px bottom no-repeat;
}
#xtooltip p.tt1,
#xtooltip p.tt2 {
  color:#ffffff; text-align:left; margin:0; padding:6px 8px 8px 8px;
  font-family:verdana,helvetica,sans-serif; font-size:11px;
  background:transparent url(images/tooltip.png);
  border-radius:4px; border:2px solid #000000;
}

#menu1,#menu2,#menu3,#menu4,#menu5 {
  position:fixed; visibility:hidden; z-index:99;
}
#menu1 {width:225px;} /* about */
#menu2 {width:260px;} /* services */
#menu3 {width:260px;} /* equipment */
#menu4 {width:240px;} /* mobile menu */
#menu5 {width:190px;} /* mobile call menu */

#menu1 p,#menu2 p,#menu3 p,#menu4 p,#menu5 p {
  background:#fff;
  border-radius:4px; border:1px solid #666;
  margin:0; padding:8px 0 10px 0;
  box-shadow:3px 3px 10px rgba(0,0,0,0.7);;
}
  div.dropx {
    text-align:left;
    margin:0; padding:0;
  }
  div.dropx p {
    font-family:'source_sans_proregular',arial,sans-serif; font-size:16px; 
    text-transform:uppercase;
  }
  div.dropx a {
    position:relative; display:block; height:24px; 
    font-family:'source_sans_proregular',arial,sans-serif; font-size:18px; 
    text-transform:uppercase; letter-spacing:1px;
    font-weight:normal; color:#000;
    margin:0; padding:6px 3px 6px 12px;
  }
  div.dropx a:link,
  div.dropx a:visited {text-decoration:none; color:#000;}
  div.dropx a:hover {
    text-decoration:none; color:#fff; background:#000;
  }
  div.dropx span.c2 {
    position:relative;
    font-family:'source_sans_proregular',arial,sans-serif; font-size:12px; 
    text-transform:uppercase; letter-spacing:1px;
    font-weight:normal; color:#000;
    margin:0; padding:6px 3px 0px 18px;
  }
div.xclearmenu { /* content under columns */
  position:relative; clear:both; width:400px; 
  margin:0; padding:0;
}


/* gallery page, images.php */
#xpic {  
  position:relative;
}

/* replace or resize images */
img.rp50 { /* small footer logo v12.29.2009 */
  position:relative; margin:-12px 0 0 0; top:12px;
}

@media only screen and (max-width:980px) {
  /* Style adjustments for viewports that meet the condition */
  h1 span,
  div.navlinks,
  div.navlinks2 {
    display:none;
  }
  #pagehead {
    height:76px;
    background:#333;
    border-bottom:6px solid #ff8800;
  }
  #pagehead div.navbar {  /* width and height necessary for image replacement */
    position:relative; top:0px; width:120px; height:120px;
    text-align:center; margin:0 auto 0 auto; padding:0;
  }
    #pagehead div.navbar img.sitelogo {
      height:110px;
    }
  #headpic {
    height:300px;
  }
  #headerbox {
  }

  #pagebody {
    min-height:200px;
    margin:100px 0 0 0;
  }
  div.contentbox {
  }
  div.contentbox2 {
    justify-content:left; 
  }
  #footer {
    background:transparent; width:100%; 
    max-width:100%; min-width:480px;
    padding:12px 0 0 0;
  }

  div.mobilemenu,
  div.mobilemenu2 {
    display:block;
  }
  div.socialicons {
    top:64px;
  }
  div.navbar {
    position:relative; left:0; top:4px;
    margin:0 auto 0 auto;
  }

  div.C_med {
    width:96%;
  }
  div.C_large {
    width:96%;
    margin:0;
  }
  div.C_large2 {
    width:98%;
    margin:0 2px 0 4px;
  }
  div.C_small2 {
    border-left:none; padding:40px 0 0 0;
  }
  div.C_small3 {
    max-width:420px;
  }
  img.zthumb {
    width:138px;
  }
  div.art img {
    background:none; padding:0;
  }
  
  p.p6,p.quote {
    font-size:16px;
  }
  br.nb {display:block;}

  div.fnav {
    top:14px; left:20px;
  }
  div.xsocial {
    top:44px; left:10px;
  }
  div.fcredits {
    width:60%; top:14px; right:10px;
  }
  br.nb {display:block;}
  
  #pag_image #pagebody {
    margin:75px 0 0 0; padding:0; 
  }
  
  #imgprev {
    left:5px;
  }
  #imgnext {
    right:5px;
  }
  #imgprev a,
  #imgnext a {
    display:block; padding:15px 6px 15px 2px;
    border-radius:4px; font-size:24px;
  }
  #imgprev a:link,
  #imgprev a:visited,
  #imgnext a:link,
  #imgnext a:visited {
    text-decoration:none; font-weight:bold; color:rgba(159,204,255,0.8);
    border:1px solid rgba(159,204,255,0.2);
  }
  #imgprev a:hover,
  #imgnext a:hover {
    text-decoration:none; font-weight:bold; color:rgba(255,255,255,1); background:rgba(0,0,0,0.4); 
    border:1px solid rgba(255,255,255,1);
  }

  /* homepage */
  #pag_home #pagebody {
    margin:10px 0 0 0;
  }
  #fullphoto {
    margin:0; padding:75px 0 0 0;  
  }
  #photocredit {
    top:76px;
  }
  #pag_home #xssw1,
  #pag_home #xssw2 {
    margin:0; padding:76px 0 0 0;
  }
  
  /* menus */
  div.dropx a {
    font-family:'source_sans_proregular',arial,sans-serif; font-size:24px; 
    text-transform:uppercase; letter-spacing:1px;
    height:24px; font-weight:normal; color:#000;
    margin:0; padding:12px 3px 12px 20px;

  }
  
  div.pthumb {
    width:210px; height:190px;
    margin:4px 3px 8px 4px; padding:0; overflow:hidden;
  }
    div.pthumb a {
      text-transform:uppercase; font-size:14px;  
    }
  
    div.pthumb img {
      border:4px solid #fff;
      max-width:96%;
    }  
}

@media only screen and (max-width:640px) {
  #headpic {
    height:200px;
  }
  
  div.C_flex2 {
    flex:none; max-width:96%;
  }
}  


/* @media all and (max-width:640px) { */
@media all and (orientation:landscape) and (max-width:640px) {
  #pagehead {
  }
}
