/*  CSS for special uses: */

.desktop{display:block;}
span.desktop{display:inline;}

.mobile{display:none;}
span.mobile{display:none;}

.extrawide{display:none;}

.narrow{display:none;}



/* DESKTOP-SPECIFIC CSS:  */

/*   ELEMENT-SPECIFIC ATTRIBUTES (LISTED ALPHABETICALLY): */

/* "plain <a> */
a{
 font-weight:bold;
 color:#ff0000;
}

a:visited{
 color:#990000;
}

/*  put grey background behind moused anchor: */
a:hover{
 background-color:#cccccc;
}


/*  Stop link from coloring-up in link color (for <a name= anchors).  */
a.email{
 font-weight:inherit;
}

/*  Stop moused-over link from coloring-up in link color (for <a name= anchors).  */
a.email:hover{
 font-weight:inherit;
}


/*  Stop link from coloring-up in link color (for <a name= anchors).  */
a.inheader{
 color:inherit;
}

/*  Stop moused-over link from coloring-up in link color (for <a name= anchors).  */
a.inheader:hover{
 background-color:inherit;
}


/*  For named-link architectural plans & also Assistance sub-heads  */
a.plan{
 color:#000000;
}


/*  "plain" <blockquote>  */
blockquote{
 padding:8px;
 font-weight:normal;
 font-size:small;
 text-align:left;
}

blockquote.fininfo{
 font-size:x-small;
 padding:8px;
 background-color:#dddddd;
}

/*  one and only <body> */
body{
 background-color:#ffffff;
 font-family:Georgia,"Times New Roman",serif;
}

br.clear{
 clear:both;
}

br.half{
 line-height:50%;
}

br.thin{
 line-height:3px;
}


/*  one and only <h1> */
h1{
 color:#ffffff;
 margin-top:0;
 font-size:4.5vw;
}


/*  one and only <h2> */
h2{
 margin:0;
 padding:0;
 font-size:3.5vw;
 line-height:70px;
}


/*  "plain" <h3> */
h3{
 color:#0000aa;
}

h3.centered{
 text-align:center;
}

/* for the Links list: */
h3.links{
 text-align:center;
 background-color:#3399ff;
 margin-bottom:0;
}


/*  "plain" <h4> */
h4{
 color:#0055cc;
}

/* styled for the News & Info block */
h4.news{
 font-size:smaller;
 margin-bottom:0px;
 text-decoration:underline;
}

/* styled for the architect-drawings page */
h4.plan{
 text-align:center;
 color:#000000;
 margin-bottom:3px;
}


/*  "plain" <h5> */
h5{
 text-align:center;
}


/*  "plain" <h6> */
h6{
 font-size:x-small;
 margin:5px;
}


/*  "plain" <hr> */
hr{
 height:1px;
}

/*  text-divider <hr> */
hr.divider{
 height:1px;
 width:75%
}


img.autoheight{
 max-width:100%;
 height:auto;
}

/*  build-in images */
img.bi{
 height:auto;
 width:50%;
 min-width:180px;
 max-width:200px;
 margin:0;
 padding:0;
 float:left;
 margin:10px;
 margin-bottom:10px;
}

/*  countertop images */
img.ct{
 height:auto;
 width:25%;
 min-width:180px;
 max-width:200px;
 margin:0;
 padding:0;
 float:left;
 margin:10px;
 margin-bottom:10px;
}

/*  auto-resizing provider images */
img.docpix{
 width:auto;
 height:212px;
}

/*  infobox images */
img.infobox{
 height:auto;
 width:100%;
 min-width:180px;
 max-width:400px;
 border:solid 1px;
 margin:0;
 margin-left:5px;
 padding:0;
 float:right;
 margin-bottom:10px;
}

/*  auto-resizing image */
img.topbar{
 max-width:100%;
 height:auto;
 margin:0;
}


p.bold{
 font-weight:bold;
}

p.bottom{
 max-width:80%;
 margin-left:auto;
 margin-right:auto;
 text-align:center;
 font-size:small;
}

/*  p.center picked up by .center class  */

p.jobs{
 text-align:center;
 font-weight:bold;
 margin:0px;
 padding-top:15px;
}

/*  p.label picked up by .label class  */

p.practice{
 text-align:center;
 font-size:medium;
}

p.quick{
 text-align:left;
 font-size:x-small;
 font-weight:bold;
}

p.returnto{
 font-family:Arial, sans-serif;
 font-size:xx-small;
}

p.services{
 font-weight:bold;
 text-indent:-20px;
 margin-left:20px;
}

p.xsmall{
 font-size:x-small;
}

table.allclad{
 background-color:#ffffff;
 padding:0px;
 border:solid 1px;
 margin-left:auto;
 margin-right:auto;
 border-collapse: collapse;
}

table.cookware{
 padding:10px;
 border:solid 1px;
 margin-left:10px;
 background-color:#ffffcc;
 border-collapse: collapse;
}

td.allclad{
 border:solid 1px;
 padding:5px;
 vertical-align: text-top;
}

td.cookware{
 text-align:center;
 border:solid 1px;
 padding:5px;
}

td.fs3head{
 padding-top:10px;
 padding-left:5px;
 padding-right:5px;
 padding-bottom:10px;
 border:1px solid black;
 vertical-align:middle;
 font-size:small; 
 font-weight:bold;
}

td.fs3cell{
 text-align:right;
 padding-top:10px;
 padding-left:5px;
 padding-right:5px;
 padding-bottom:10px;
 border:1px solid black;
 vertical-align:middle;
 font-size:x-small; 
}

td.fs3sumcell{
 text-align:left;
 padding-top:10px;
 padding-left:5px;
 padding-right:5px;
 padding-bottom:10px;
 border:1px solid black;
 vertical-align:middle;
 font-size:x-small; 
}

td.labs{
 background-color:#3399ff;
 vertical-align:middle;
 text-align:center;
 border:solid 1px;
}

td.visitcol{
 text-align:center;
 padding:5px;
 color:#0055cc;
 font-size:small;
 font-weight:bold;
 width:25%;
 min-width:55px;
 vertical-align:top;
 border:solid 1px;
}

td.visiting{
 text-align:center;
 padding:5px;
 color:#0055cc;
 font-size:small;
 font-weight:bold;
 width:25%;
 min-width:55px;
 vertical-align:top;
 border:none;
}

td.visithead{
 text-align:center;
 padding:5px;
 color:#0055cc;
 font-size:small;
 font-weight:bold;
 border:solid 1px;
 width:25%;
 min-width:55px;
 vertical-align:middle;
 font-weight:bold;
 font-style:italic;
}

tr.cookware{
 border:solid 1px;
}

ul.quick{
 text-align:left;
 margin-top:0px;
 font-size:x-small;
}



/*   NON-ELEMENT-SPECIFIC CLASSES: */

/*  For the Contact Us page display: */
.address{
 margin-left:auto;
 margin-right:auto;
 width:80%;
 text-align:center; 
 background-color:#bba682;
 font-weight:bold; padding:15px;
 border:solid 1px;
 font-size:x-large;
}

/* For displaying the Board members on the Leadership page: */
.boardblock{
 text-align:center;
 margin-left:auto;
 margin-right:auto;
 background-color:#ebe0be;  /* "sandy" */
}

.boardmember{
 display:inline-block;
 width:32%;
 font-size:20px;
}


/* of general use: */
.center{
 text-align:center;
}

/* For showing the providers on the Providers page: */
.docs{
 display:inline-block;
 font-size:20px;
 min-width:230px;
}

/*  The next two are for the blue-to-white (& vice-versa) fade lines: */
.fadein{
 background:-webkit-linear-gradient(#ffffff,#0055cc); /* For Safari 5.1 to 6.0 */
 background:-o-linear-gradient(#ffffff,#0055cc); /* For Opera 11.1 to 12.0 */
 background:-moz-linear-gradient(#ffffff,#0055cc); /* For Firefox 3.6 to 15 */
 background:linear-gradient(#ffffff,#0055cc); /* Standard syntax */
}

.fadeout{
 background:-webkit-linear-gradient(#0055cc, #ffffff); /* For Safari 5.1 to 6.0 */
 background:-o-linear-gradient(#0055cc, #ffffff); /* For Opera 11.1 to 12.0 */
 background:-moz-linear-gradient(#0055cc, #ffffff); /* For Firefox 3.6 to 15 */
 background:linear-gradient(#0055cc, #ffffff); /* Standard syntax */
}

/* for displaying the Foundation officers: */
.foundation{
 display:inline-block;
 width:24%;
 vertical-align:top;
}

/* These are "fakes" to make Google's code validate:
.gcse-searchbox
.gcse-searchresults
*/

/* the topmost bar (except possible narrow-device hint) */
.hellobar{
 background-color:#0000aa;
 padding:10px;
 min-width:280px;  /* 280 + 2x10 = 300 */
}

.label{
 text-align:center;
 font-size:x-small;
}

/* for the page-top quick-jump boxes: */
.quickbox{
 background-color:#dddddd;
 padding:0px 10px;
 display:inline-block;
 float:left;
}

/*  for off-white background-color rows */
.sandy{
 background-color:#ebe0be;
}

/*  The next 3 are all for the indented listings on the Sitemap page: */
.sitemap0{
 margin:0;
 margin-left:35px;  /*  15 actual indent + 20 for wrapped lines */
 text-indent:-20px;
 font-size:x-small;
}

.sitemap1{
 margin:0;
 margin-left:50px;  /*  30 actual indent + 20 for wrapped lines */
 text-indent:-20px;
 font-size:x-small;
}

.sitemap2{
 margin:0;
 margin-left:65px;  /*  45 actual indent + 20 for wrapped lines */
 text-indent:-20px;
 font-size:x-small;
}

/*  general-purpose: */
.small{
 font-size:small;
}

/*  general-purpose: */
.smaller{
 font-size:smaller;
}

/*  for the Swing-Bed-page pseudo-table: */
.swingbed1{
 display:table-cell;
 background-color:#999966;
 color:#ffffff;
 font-weight:bold;
 vertical-align:bottom;
 padding:7px;
}

/*  for the Contact Us telephone numbers: */
.telephones{
 margin-left:auto;
 margin-right:auto;
 width:90%;
 min-width:275px;
 text-align:center;
 background-color:#ddccaa;
 border:solid 1px;
 line-height:125%;
 font-size:medium;}

/* per-practice header <tr> spec: */
.practicehead{
 background-color:#f0d382;
 color:#0055cc;
}

/*  for the Foundation board-members listing: */
.xperiment{
 font-size:medium;
 padding:20px;
 text-align:center;
}

/*  general-purpose: */
.xsmall{
 font-size:x-small;
}


/*====Start Drop-Down Menu block========================*/

/*   DROP-DOWN MENUS: */

/*  Topmost Menu (always visible):  */
.top-level-menu
{
 list-style:none;  /* no <ul> bullets or other marks */
 padding:0;
 margin:0;
}

.top-level-menu > li
{
 position:relative;
 float:left;
 height:80px; /* "top" for 2nd-level menus depends on this */
 width:20%;
}

/* contains the "down" triangle in main menu blocks */
.top-level-menu span
{
 font-size:60%;
 display:none;
}

.top-level-menu li:hover > ul
{display:inline;} /* On hover, display the next level's menu */

.top-level-menu li:hover span
{display:inline;} /* On hover, display the <span> content */



/*  Second Level (drops from main):  */
.second-level-menu
{
 position:absolute;
 top:80px;  /* must match height of first-level displays */
 left:0;
 width:100%;  /* of parent header space */
 list-style:none;  /* no bullets or whatever */
 padding:0;
 margin:0;
 display:none;  /* initially invisible */
 width:200%;  /* makes it double the width of the block above it */
}

.second-level-menu > li
{
 position:relative;
}
.second-level-menu > li:hover {background:#cccccc;}


/*  Third Level (drops from a secondary):  */
.third-level-menu
{
 position:absolute;
 top:0;
 right:-100%;
 width:100%;
 list-style:none;
 padding:0;
 margin:0;
 display:none;
}

.third-level-menu > li
{
 line-height:15px;
 background:#999999;
}
.third-level-menu > li:hover {background:#cccccc;}


/* Menu Link Styles */

.top-level-menu a /* Also applies to all links inside the multi-level menu */
{
 text-align:center;
 font:bold large Arial, Helvetica, sans-serif;
 font-size:22px;  /* fallback in case "vw" not recognized by browser  */
 font-size:2.5vw;
 color:#ffffff;
 text-decoration:none;
 padding:0;  /* top/bottom  right/left*/
 line-height:80px;
 /* Make the link cover the entire list item-container */
 display:block;
}
.top-level-menu a:hover {color:#000000;}

.second-level-menu a /* Apply to all links inside the multi-level menu */
{
 text-align:left;
 font:bold x-small Arial, Helvetica, sans-serif;
 font-size:11px;  /* fallback in case "vw" not recognized by browser  */
 font-size:1.7vw;
 color:#ffffff;
 text-decoration:none;
 padding:0 10px;  /* top/bottom  right/left*/
 line-height:15px;
 /* Make the link cover the entire list item-container */
 display:block;
}
.second-level-menu a:hover {color:#000000;}

/*====End Drop-Down Menu block==========================*/


/* end standard CSS */



/* MOBILE-SPECIFIC CSS:  */

@media only screen and (max-width:800px)  /* tablets max out at 800 wide */
{
/* This has to come here lest it be over-written below: */
 .mobile{display:block;}
 .desktop{display:none;}


/*  Element-specific changes: */

 h1
 {font-size:5.8vw;}


 h2
 {
 font-size:4.0vw;
 line-height:50px;
 }


 img.infobox{
  height:auto;
  width:100%;
  min-width:180px;
  max-width:200px;
  border:solid 1px;
  margin:0;
  margin-left:5px;
  padding:0;
  float:right;
  margin-bottom:10px;
 }

 p.bottom{font-size:2.4vw;}

 p.practice{font-size:small;}

 span.desktop{display:none;}

 span.mobile{display:inline;}  /* over-writes the generic .mobile class for <span> */


 table.cookware
 {
  margin-left:auto;
  margin-right:auto;
  font-size:xx-small;
 }

 td.allclad{font-size:smaller;}

 td.practice{font-size:x-small;}

 td.provider{font-size:medium;}

 td.visitcol
 {
  font-size:2.7vw;
  padding:2px;
  min-width:61px;
 }

 td.visiting
 {
  font-size:2.7vw;
  padding:2px;
  min-width:61px;
 }

 td.visithead
 {
  font-size:2.7vw;
  padding:2px;
  min-width:61px;
 }


/* class changes: */
 
 .address{font-size:medium;}

 .board{font-size:2.6vw;}

 .label{font-size:3.0vw;}

 .second-level-menu a  /* Apply to all links inside the multi-level menu */
 {
  font-size:11px;   /* fallback in case "vw" not recognized by browser  */
  font-size:2.3vw;
 }

 .swingbed1
 {
  vertical-align:top;
  font-size:smaller;
 }

 .telephones{font-size:x-small;}

 .xperiment
 {
  font-size:xx-small;
  padding:10px;
 }

}  /*  end mobile-phone CSS  */



/*  NARROW-PHONE CSS:  */

/* Anything with a screen width of 480 pixels or more can satisfactorily display all our 
   site pages; for screens smaller than that in portrait mode, this class allows display
   of a "rotate your phone"  message to alert them to use landscape view for better 
   viewing.  (Virtually all smartphones--I believe only the Blackberry Q10 is excepted--
   display at least 480 px width in landscape mode.)

   Note: landscape = the display is wider than it is tall
         portrait  = the display is taller than it is wide
*/
@media only screen and (max-width:479px) and (orientation:portrait)
{

 /* for the narrow-phone message  */
 .narrow
 {
  display:block;  /* makes visible */
  background-color:#ff3333;
  color:#ffffff;
  font-size:smaller;
  font-weight:bold;
  padding:5px;
  border:solid 1px;
  min-width:288px;  /* 288+10+2 = 300 total */
}

 .xperiment{padding:5px;}  /* for the Foundation Board listings */

 p.bottom{font-size:3.0vw;}  /* the W3C paragraph */

}  /*  end narrow-phone CSS  */



/* EXTRA-WIDE CSS:  */

@media only screen and (min-width:1000px)
{

 .extrawide{display:inline-block;}

 .second-level-menu a /* Apply to all links inside the multi-level menu */
 {
  font-size:11px;  /* fallback in case "vw" not recognized by browser  */
  font-size:1.2vw;  /* to keep over-large lines from overlaying one another */
 }

}  /*  end extra-wide CSS  */



/*  end all CSS  */
