/*    
  non-index light green background #E4F0CC
  non-index med green background #629149
*/
body     {
	overflow:-moz-scrollbars-vertical;  
    margin: 0;
    background-color: #808080;
	}

body, div, article, section, p, ul, dl, ol, li, td, th, input, select, textarea {
	font-family:"Lucidia Grande Regular", sans-serif;
	font-weight: normal;
	font-size: 13px;
	color:#676767;	
	line-height:150%;
	letter-spacing: .06em;
	} 
div, article, section, p, ul, dl, ol, li, td, th {
    text-align: left;
    }
p {margin: 0px 0 12px 0; }

a:link, a:hover, a:visited   { 
    text-decoration: none; 
    outline: 0;
    }
.firstletter { color:#629149;font-size:16px;font-weight:bold;}
a:link { color:#056eaf; }
a:visited { color:#7677c1; }
a:hover, a:active  { color:#056eaf; }
/*  fixes collapsed parent with floating children */
.clearfix:after { 
   content: " ";
   display: block; 
   height: 0; 
   clear: both;
}
.clearall {clear:both;}
.goleft { margin-left:-20px; }  /* for ul, ol */


/* ================== BANNER =======================  */
#logo, #tagline, #deskmenu { float:left;   }
#tagline {font-family: "Palatino Bold", serif; font-weight:normal; }
#tagline #first {color:#105739;}
#tagline #second {color:#420d91; }
    
/* ====================== other layout ====================== */
#bodywrap {	background-color: #ffffff;  }	
#nonindexcontent { clear:left; background-color:#E4F0CC;  }
footer {clear:both; }  
footer { font-family: "Helvetica Light", sans-serif; background-color:#3c3c3c;
    color:#979797; font-size:13px; } 
footer span a:link, footer span a:hover, footer span a:visited { color:#cacaca; }    

/* =========================================================== */    
/* ----  ONLY for top title, includes line above --- */    
h1  {
    font-size: 18px ;
    font-weight: bold ;
    margin: 0 ;
    padding: 10px 0; 
    color: #000000; 
    }
/* ------ not used -------- */ 
h2  {  
    font-size: 16px ;
    font-weight: bold ;
    margin: 0 ;
    padding: 10px 0 0px 0px; 
    color: #E4F0CC;      
    }
    
/* ----- services  ---- */
.headerhere {   
    font-family: Palatino,  serif;   
    font-size: 16px ;
    font-weight: bold ; 
    color: #629149;  }
.makeline { 
    background-image:url("images/linedot.png"); 
    background-position:right bottom;	
    background-repeat: no-repeat;
    padding:10px 0; padding-right:5px; 
    }
 
/* ----- subheadings for Services page   -------  */
h3  {         
    font-family: Palatino,  serif;   
    font-size: 14px ;
    font-weight: bold; 
    color: #629149; 
    margin: 10px 0 3px 34px;  
    }
/* ------- heading on left for About ------ */
p.hd {      
    font-family: Palatino,  serif;   
    font-size: 16px ;
    font-weight: bold; 
    color: #629149;
    }
/* ----- subheadings for about; like h3 w/o padding-left or top  ------  */    
h4  {         
    font-family: Palatino,  serif;   
    font-size: 16px ;
    font-weight: bold; 
    color: #629149; 
    margin: 0px 0 3px 0px;
    }

/* ======================= index.php =========================== */
#indexfloat #icol1 { color:#cbc16a; font-family:"Palatino Regular", serif;}
#indexfloat #icol2 { font-family:"Lucidia Grande Regular", sans-serif;}
#indexfloat #icol3 { font-family:"Lucidia Grande Regular", sans-serif;}

/* ========================= services ============================= */
#servicesleft { background-color:#629149; color:#e3f0cb; } 
#servicesleft a, #servicesleft a:visited, #servicesleft a:hover { 
    color:#e3f0cb;  
    font-family: Palatino,  serif; 
    font-size:14.5px;
    }
#servicesleft a.active { color:#f5de77; } 
#servicesleft ul {  list-style:none; padding:0; }   
#servicesleft ul li { background:#629149 url("images/bullet.png") no-repeat left 5px; padding:0 0 0 15px; }
#servicesleft ul li:last { content: url("images/dotline.png");   }
#servicesleft ul li.active  { background-image:url("images/bulletON.png"); }
#servicesleft ul li.active a, #servicesleft ul li:active a:visited { color: #f5de77; }

#servicesright { background-color:#E4F0CC; }

/* ========================== about ================================*/
.aboutdiv {clear:both; }
.aboutleft {  background-color: #629149; color:#e3f0cb;  }
.aboutright { background-color: #E4F0CC; }
.aboutleft img {display:block;}
.aboutright article {vertical-align:top;}
.aboutleft .aboutheading { color:#e3f0cb;    
    font-family: Palatino,  serif; 
    font-size:14.5px; 
    }

/* ================  gallery : see /themes/styles/light.css ==================== */ 
 

/* =================== mobile vs desk =========================== */    
/*  ----- mobile, both orientations  --------  */
@media  
   (max-device-width: 1199px)    {   
   .deskonly {display:none;}
   
   body { width:100%; margin:auto; }       
   body, div, p, li, td, th, input, select, textarea {
       letter-spacing: .01em;
       line-height: 120%;
       font-size: 1em; 
   }
   
   #bodywrap { margin: 0; padding: 0; width:100%; }
   .mm-menu {background-color: #ffffff !important; }
   .mm-navbar { border-bottom: 0px solid !important; }
   .mm-navbar img {margin:0 auto;   }
   .mm-menu li a, .mm-menu li a:visited, .mm-menu li a:hover, .mm-menu li span {text-transform:uppercase; font-family: "Helvetica Regular", sans-serif; }
   footer { width: 96%; padding:5px 2%;  }
   
    
   .gallerypage section iframe { width:100%; max-width: -webkit-calc(100% - 0px); border:0px;margin:0; min-height:100vh; } 
   
}   /* end both orientations */
 
@media  
   (max-device-width: 1199px) and
    (orientation: portrait)   {  
    .landscape {display:none !important;}
        
    img {max-width:94%;}
    
    /* ================== BANNER =======================  */
    #banner { width:100%; margin:0; text-align:center; padding:6px 0 4px 0;  }
    #logo,
    #tagline {width:100%; text-align:center; display:block;}
    #logo img { max-width:60%; width:60%; padding-right:20px;  }
    #tagline { 
       line-height:30px;   
       font-size:18px;  font-size: 4.5vw; 
       letter-spacing:.1em;  
    } 
    #menu-icon { position:absolute; top:10px; right:10px; } 
         
    footer span {display:block; }
    
   /*  ------ index ------- */ 
   #indexfloat #icol1 { 
      background-color:#3c3c3c;  
      font-size:16px; 
      letter-spacing:.03em; 
      margin-top:-7px; 
      width: 96%; 
      padding:7px 2%; 
      margin-bottom:8px;  
      }
   #indexfloat #icol2, 
   #indexfloat #icol3 { 
      width: 96%; 
      padding:0 2%; 
      margin-bottom:8px; 
      font-size:13.3px; 
      letter-spacing:.03em; 
      line-height:140%;
      color:#232323; 
      }
   #indeximg img {width:100%; max-width:100%; margin:0; padding:0; }
     
   #nonindexcontent { margin:0; padding:0; max-width:100%; }
     
	/* ---------- services ----------- */  
   #servicesright { width:100%; padding:15px 0; margin:0; }   
	.headholder { margin:15px 0 20px 0; }  /* use margin here to move up/down */  
	.headerhere { padding: 0px 0 5px 3%;   }     
   #servicesrightText { padding: 10px 3%; margin:0;}  
   #servicesrightPics img,    
   #servicesbottom img {  max-width: 94%;  display:block; margin:10px auto; }      
     
   /* ------------- about --------------------- */
   .aboutleft {width:100%;}
   .aboutleft p { color:#E4F0CC;  padding:10px 0 10px 0; margin-bottom:0; background:url("images/linelight.png") center center repeat-x;   }
   .aboutleft p span { padding-left:15%;  padding-right:6px; background-color:#629149;  }    

   .aboutleft img {margin:0px auto 5px; max-width:100%;}
   .aboutright { padding:5px 2%;  }
   .aboutright article:first {padding-top:0px;}
   .aboutright p {letter-spacing: .12em; padding-bottom:8px;}   
   .aboutright img.picright {float:right;width:45%;text-align:right;}
      
}   /*  end of portrait   */

@media  
   (max-device-width: 1199px) and
     (orientation: landscape)   {   
     .portrait {display:none;} 
     /* need to be specific here because of dot-line on Services page */
    #servicesrightPics img,
    #servicesbottom img {max-width:94% !important;}
   
     /* ================== BANNER =======================  */
    #banner { width:100%; margin:0; height:70px; max-height:70px; }
    #logo  { float:left; width:40%; height:94%; max-height:94%; }
    #tagline { float:left; width:58%; height:100%; max-width:360px; }
    #logo img {max-width:90%;   padding: 10px 0 10px 10px ; margin:0; } 
    #tagline span {  font-size:2.5vw; letter-spacing:.09em;   }
    #tagline:before {
       content: ''; 
       display: inline-block;
       height: 100%;
       vertical-align: middle; 
    } 
   #menu-icon { position:absolute; top:10px; right:10px;  }
    footer {width:96%; padding:5px 2% 5px 2%; display:flex; flex-wrap:wrap; }
    footer span {flex-basis:50%; flex-grow:1; } 
    /* footer {padding:5px 2%; width:96%; }
    footer span {display:block; float:left; width:48%; }
    footer span#design, footer span#phone { padding:0 0% 0 3%;  }  */
 
   /* ----- index   ------- */ 	
   #indexfloat #icol1 {  
      background-color:#3c3c3c;  
      width: 96%; 
      padding:5px 2%; 
      margin-bottom:8px; margin-top:-8px;
      font-size:16px; 
      letter-spacing:.03em;  
      }
   #indexfloat #icol2, 
   #indexfloat #icol3 { 
      float:left; 
      width:46%; 
      padding:5px 2%; 
      color:#232323; 
      font-size:13.3px; 
      letter-spacing:.03em; 
      line-height:140%;
      }  
   #indeximg img {width:100%; max-width:100%; margin:0; padding:0; }
   
   #nonindexcontent { margin:0; padding:0;  max-width:100%; }
   
	/* ---------- services ----------- */ 
   .servicespage,
   .gallerypage,
   .aboutdiv { display:flex;  
       display: -webkit-flex; 
       }	
	.headholder { margin:15px 0 20px 0; }  /* use margin here to move up/down */  
	.headerhere { padding: 0px 0 5px 3%;   } 
   #servicesleft, #servicesbottom { padding-left:0px;   }  
   #servicesleft { float:left;  width:25%; padding-left:3%;   }
   #servicesleft ul { margin:15px 10px 0 0px; } /* margin-top matches top on headholder */ 
   #servicesleft a, #servicesleft a:visited, #serviesleft a:hover {font-size:13px;   }
   #servicesright { float:left; width:77%;  padding:0; margin:0; } 
   #servicesleft li { padding-bottom:15px !important;  
        padding-left: 10px !important; } 
   #servicesrightText {  width: 94%; padding: 10px 3%; }  
   #servicesrightPics img,    
   #servicesright img { display:float; margin:10px 0; padding:0 3% 0 3%; } 
   #servicesleft, #servicesright { padding-bottom:10px; }  
   
   /* ------------- about --------------------- */
   .aboutleft {width:30%;float:left;}
   .aboutleft p { color:#E4F0CC;  margin-top:10px;  background:url("images/linelight.png") center center repeat-x;   }
   .aboutleft p span { padding-left:15%;  padding-right:6px; background-color:#629149;  }    
   .righthead { margin:0px; background:url("images/linemed.png") center center repeat-x; width:100%;  }

   .aboutleft img {margin:5px auto; max-width:100%;}
   .aboutright {width:65%;float:left;padding:0px 2%; }
   .aboutright article:first {padding-top:0px;}
   .aboutright p {letter-spacing: .12em; padding-bottom:8px;}   
   .aboutright img.picright {float:right;width:40%;text-align:right;}
 
}    /*  end of landscape   */
/* ipad type stuff  */
@media  
   (max-device-width: 1199px) and (min-device-width: 650px) and
     (orientation: landscape)   {
     #banner { width:100%; margin:0; height:75px; }
}     

     
     
     
     
     
     
/* -------------  DESKTOP ------------- */
@media (min-device-width: 1200px)   { 
	.mobileonly {display:none;} 
   
   #bodywrap {   
       margin: 10px auto ; 
       padding-top: 0px;
       width: 1200px;
	}
   /* ================== BANNER =======================  */
   #banner { width:100%; margin:0; padding:18px 0 16px 0; }
   #logo { width:335px;}
   #logo img {padding-left:54px;padding-right:5px;}
   #tagline { width:495px;
       text-align:center;
       line-height:55px; 
       font-size:19px; 
       letter-spacing:.15em; 
       margin:0;}
   #deskmenu { width:370px;}   
 
   /* ===================== MENU =============================== */
   #deskmenu #deskNav ul {padding-left:0px;}
   /* These lines are essential for jquery dropdown menu (not used now, but in future) */
   #deskmenu #deskNav ul.dropdown ul 	{ display:inline-block; visibility: hidden; position: absolute; top:100%; left: 0; }
   #deskmenu #deskNav ul.dropdown ul li 	{ font-weight: normal;  float: none; width:auto;}
   #deskmenu #deskNav ul.dropdown ul li a	{ border-right: none; width: 100%; display: inline-block; white-space: nowrap; }  /* IE 6 & 7 Needs Inline Block */
   #deskmenu #deskNav ul.dropdown li:hover   { position: relative;  }

   /* top level menu items */ 
   #deskNav   li.menuButton { 
       font-family: "Helvetica Regular", sans-serif;
       display: inline;
       list-style: none;
       padding: 0px 17px 0 0; 
       margin: 0;  
       line-height:34px; 
       font-size:10px; 
       letter-spacing:.13em;
       color:#505050;
       text-transform:uppercase;
       cursor:pointer;
       }
   li.menuButton a, li.menuButton a:hover, li.menuButton a:visited { text-decoration:none; color:inherit; }

   /* drop-down menu */
   .menu {
     background-color: #3c3c3c; 
     padding: 8px  10px 12px 10px;
     filter:alpha(opacity=90); -moz-opacity:.90; opacity:.90;
     width:auto; 
     /* margin-top: -10px;  
     -moz-border-radius: 5px;
     -webkit-border-radius: 5px;
     border-radius: 5px; */    
   }
   .menu li {
       display:block; 
       }
   .menu li a, .menu li a:hover, .menu li a:visited {
     font-family: "Palatino Regular", sans-serif; 
     color: #ffffff; 
     }
   
 
   #nonindexcontent { padding: 0; margin:0; }
    
       
   /* ======================= index.php =========================== */
   #indexfloat #icol1 { color:#cbc16a; font-size:16px; letter-spacing:.06em; line-height:120%;}
   #indexfloat #icol2 { color: #efefef; font-size:13.3px; letter-spacing:.08em; line-height:160%; }
   #indexfloat #icol3 { color: #efefef; font-size:13.3px; letter-spacing:.08em; line-height:160%; }

   #indeximg {height:640px;}  /* match image height */
   #indexfloat {
      width:100%;
      position:absolute;	
	  bottom: 29px; left:0;    /* bottom is related to height of footer */
	  padding-top:15px; padding-bottom:38px; 
	  z-index:100;
      background-color: rgba(0, 0, 0, 0.4);
	  }
   #indexfloat .indexcol {float:left;}	
   #indexfloat #icol1 { width: 190px; padding-left: 40px; }
   #indexfloat #icol2 { color:#efefef; width: 420px; padding-left:40px; }
   #indexfloat #icol3 { color:#efefef; width: 420px; padding-left:40px; }
	
    /* ---------- footer links for desktop ----------- */ 
    footer {width:97%; padding:5px 0 5px 3%; display:flex;  }
    footer span {flex-basis:auto; flex-grow:1; } 

	/* ---------- services ----------- */
	.headholder { margin:35px 0 20px 0; }  /* use margin here to move up/down */  
	.headerhere { padding: 0px 0 5px 34px;   }
   .servicespage,
   .gallerypage,
   .aboutdiv { display:flex;  
       display: -webkit-flex; 
       }
   #servicesleft { padding-left:20px; /* min-height:700px; */   } 
   #servicesleft ul { margin:35px 10px -5px 0px; } /* margin-top matches top on headholder; neg brings dot-line up */ 
   #servicesleft { float:left;  width:215px;    }
   #servicesright { float:left; width:965px;  padding:0; margin:0;  }
   #servicesleft li { padding-bottom:15px !important; }
   
   #servicesrightText { float:left; width: 492px;   }
   #servicesrightText p { margin-left:34px; margin-right:46px; }
   #servicesrightPics { float:left; width: 429px; margin-right:40px; margin-top:-35px; }
   #servicesrightPics img { margin-bottom:0px; }
   #servicesbottom {padding-left:30px;}   
   img.pictop { border-top:6px solid #629149; }  
   img.picbottom { border-bottom:6px solid #629149; } 
   .padright { margin-right:33px;}	
   #servicesleft, #servicesright { padding-bottom:10px;  }
   
   /* ------------- about --------------------- */
   .aboutleft {width:429px;float:left;text-align:left;}
   
   .aboutleft p.hd { color:#E4F0CC;  margin-top:15px;  background:url("images/linelight.png") center center repeat-x;   }
   .aboutleft p.hd span { padding-left:65px;  padding-right:10px; background-color:#629149;  }    
   .righthead { margin-top:3px; background:url("images/linemed.png") center center repeat-x; width:100%;  }
        
   .aboutleft img {margin:5px auto 25px; }
   .aboutright {width:646px;float:left;padding:0px 65px 0px 60px; }
   .aboutright article:first {padding-top:38px;}
   .aboutright p {letter-spacing: .12em; padding-bottom:8px;}
   .aboutright img.picright {float:right;width:320px;text-align:right;}
   
   .gallerypage iframe { width:1080px; height:1080px; min-height:850px;border:0px;margin:0 40px; }

 } /*  end of desktop   */
