/* Automatically eliminates all margins and padding, starts you with a "clean slate" */
* {
  padding: 0;
  margin: 0;
}

/* Sets the fonts for the document.  Will use fonts in order (ie. if arial is not available, it will default to helvetica, if helvetica is not available, it will default to sans serif */
body {
  font-family: Arial, Helvetica, Sans Serif;
}

p {
  padding-top: 10px;
}

center table, center th{
  text-align: left;
}

/* Styles the table with a vertical gradient and sets the height to 38px.  To be applied to the table tag */
.gradbg38 {
  height: 38px;
}

.gradbg38 {
  background-image: url(images/gradbg38.png);
  background-repeat: repeat-x;
  background-size: 1px 100%;
}

/* Styles the table with a vertical gradient and sets the height to 149px.  To be applied to the table tag */
.gradbg149 {
  height: 149px;
}

.gradbg149 {
  background-image: url(images/gradbg149.png);
  background-repeat: repeat-x;
  background-size: 1px 100%;
}

/* Sets height to 149px and inserts the white leaf underlay for the Login Canada logo */
.leafbg149 div {
  height: 149px;
  background-image: url(images/leafbg149.png);
  background-position: bottom left;
  background-repeat: no-repeat;
  min-width: 270px;
}

.leafbg149 div img {
  margin-top: 10px;
  margin-left: 7px;
}

/* Sets height to 149px and inserts a white horozontal gradient underlay for virtual bookstore logos */
.underlaybg149 div {
  height: 149px;
  background-image: url(images/underlaybg149.png);
  background-position: bottom left;
  background-repeat: no-repeat;
}

.underlaybg149 div img {
  margin-top: 10px;
  margin-left: 7px;
}

#topBar td, #headerColumns td {
  background: none;
}

#topBar td span {
  color: #ffffff;
  font-size: .75em;
  display: block;
  padding-left: 10px;
}

#topBarMenu td a b{
  font-size: .6875em;
  font-weight: normal;
}

.smallInlineMenu, .smallInlineMenu table {
  width: 430px;
  float: right;
}

.smallInlineMenu table tr td {
  padding:0px 8px;
  line-height:.80em;
}

.smallInlineMenu a {
  color: #ffffff;
  font-size: .75em;
  text-decoration: none;
}

.smallInlineMenu a font {
  color: #ffffff;
  font-size: 12px;
  text-decoration: none;
}

.smallInlineMenu a:hover {
  color: #cccccc;
  text-decoration: underline;
}

#headerRows form{
  text-align: left;
  padding-top: 25px;
}

#headerRows form table{
  text-align: left;
  width: 0 !important;
}

#searchBox {
  text-align: left;
}

#searchBox tbody tr:nth-of-type(2) td:nth-of-type(2) {
  padding-left: 12px;
}

.searchCaption {
  display: inline-block;
  color: #ffffff;
  font-size: 1.125em;
  font-weight: bold;
  white-space: nowrap;
  padding-left: 10px;
  padding-right: 5px;
  text-align: left;
  max-height: 15px;
  margin-top: 5px;
  width: 100%;
  overflow: show;
  line-height: 18px;
}

.searchInput input {
  max-width: 450px;
  height: 25px;
  padding: 1px 5px;
  font-size: 1em;
  margin-left: 5px;
  margin-right: 5px;
}

.searchLinks, .searchLinks a {
  color: #ffffff;
  font-size: .8125em;
  text-decoration: none;
}

.searchLinks a:hover {
  color: #cccccc;
  text-decoration: underline;
}

.searchSubmit {
  text-align: left;
}

.searchSubmit input {
  width: 60px;
  height: 30px;
}

.menuBox {
  width: 280px;
  height: 35px;
  float: right;
  margin-bottom: -5px;
  margin-left: 0px;
}

/*
.menuBox {
  background-image: url(images/tabbgN.png);
  background-repeat: no-repeat;
}
*/

.menuBox a {
  display: block;
  width: 80px;
  height: 35px;
  background-image: url(images/tabbg.png);
  background-repeat: no-repeat;
  font-size: .72em;
  text-decoration: none;
  color: #666666;
  margin-right: -3px;
  margin-top: 30px;
}

.menuBox a:hover {
  text-decoration: underline;
}

.menuBox a span{
  display: block;
  padding-top: 12px;
}

.menuBox a span b {
  display: block;
  font-size: .64em;
  font-weight: 600;
  color: #333333;
  padding-top: 4px;
}

.footerbanner{
  margin-top: 15px;
  margin-bottom: 15px;
}

.footermenu {
  text-align: center;
}

.gradbg20 {
  height: 20px;
}

.gradbg20 td {
  background-image: url(images/gradbg20.png);
  background-repeat: repeat-x;
}

.brushed150 {
  height: 150px;
}

.brushed150 {
  background-image: url(images/brushed150.png);
}

.bgclear td {
  background: none;
}

.captionbox span {
  display: block;
  padding-right: 10px;
  padding-left: 10px;
  font-size: .75em;
}

.iconframe {
  padding: 2px;
}

.topbevel {
  background-image: url(images/bottom-bevel.png);
  background-position: top;
  background-repeat: repeat-x;
}

.leftbevel {
  background-image: url(images/right-bevel.png);
  background-position: left;
  background-repeat: repeat-y;
}

.bottombevel {
  background-image: url(images/bottom-bevel.png);
  background-position: bottom ;
  background-repeat: repeat-x;
}

.rightbevel {
  background-image: url(images/right-bevel.png);
  background-position: right;
  background-repeat: repeat-y;
}

.topright {
  background-image: url(images/top-right.png);
  background-position: top right;
  background-repeat: no-repeat;
}

.topleft {
  background-image: url(images/top-left.png);
  background-position: top left;
  background-repeat: no-repeat;
}

.bottomleft {
  background-image: url(images/bottom-left.png);
  background-position: bottom left;
  background-repeat: no-repeat;
}

.bottomright {
  background-image: url(images/bottom-right.png);
  background-position: bottom right;
  background-repeat: no-repeat;
}

.security {
  width: 120px;
  height: 61px;
  background-image: url(images/comodo_secure_113x59_transp.png);
  background-repeat: no-repeat;
  margin-left: 25px;
}

.fbook4, .fbook5 {
  width: 95%;
  margin-bottom: 30px;
}

.fbook4{
  display: inline-block;
  min-width: 300px;
  width: calc((100vw - 310px) / 2);
  vertical-align: top;
}

.fbook2 {
  margin-right: 15px;
}

.navmenu {
  margin-left: 10px;
}

.navmenuhead {
  width: 239px;
  height: 58px;
}

.navmenuheadtall {
  width: 239px;
  height: 73px;
}

.navmenuheadtall td {
  background-image: url(images/menu-top-tall.png);
  background-position: top;
  background-repeat: no-repeat;
}

.navmenuhead td {
  background-image: url(images/menu-top.png);
  background-position: top;
  background-repeat: no-repeat;
}

.navmenubody td {
  background-image: url(images/menu-mid.png);
  background-repeat: repeat-y;
  font-size: .90em;
}

.navmenubody ul {
  list-style: none;
  margin: 0px 20px 0px 30px;
  text-indent: -10px;
}

.navmenubody li {
  padding-top: 2px;
  padding-bottom: 2px;
}

.navmenufoot {
  width: 239px;
  height: 32px;
  border: none;
}

.navmenufoot td {
  background-image: url(images/menu-bottom.png);
  background-position: bottom;
  background-repeat: no-repeat;
}

.bodytable {
  margin-top: 20px;
}

.topcell {
  padding-top: 7px;
}

.bookblock td {
  vertical-align: top;
}

.ftitle, .fauthor, .fpub, .fpipe, .fisbn, .fdesc {
  display: block;
  text-decoration: none;
}

.fpipe {
  display: none;
}

.fauthor {
  display: block;
  text-decoration: none;
  font-size: .625em;
  color: #444444;
}

.ftitle {
  margin-top: -21px;
  font-size: .75em;
  font-weight: bold;
  color: #000000;
}

.fpub {
  margin-top: -18px;
  font-size: .625em;
  color: #444444;
}

.fisbn {
  margin-top: -18px;
  font-size: .625em;
  color: #444444;
}

.fbook6 {
  margin-top: 5px;
}

.fdesc {
  margin-top: -8px;
}

.announcehead {
  height: 44px;
  xbackground: url(images/announce_02.png) top repeat-x;
  background-color: #243e75;
}

.announcetable{
  border-radius: 15px;
  background-color: white;
  box-shadow: 0px 0px 2px 1px #7b7b7b,inset 0px -20px 20px 0px #f1f1f1;;
  padding-bottom: 30px;
}

.announcetable tr:first-of-type{
  /*background: #243e75;*/
}

.announcetable+.announcetable{
  display: none;
}

.announceheadleft {
  width: 30px;
  height: 44px;
  xbackground: url(images/announce_01.png) top left no-repeat;
  background-color: #243e75;
  border-radius: 15px 0 0 0;
}

.announceheadright {
  width: 30px;
  height: 44px;
  xbackground: url(images/announce_10.png) top right no-repeat;
  background-color: #243e75;
  border-radius: 0 15px 0 0;
}

.announcetitle {
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  margin-bottom: 7px;
}

.announcebody {
  xbackground-color: #ffffff;
}

.announcebodyleft {
  xbackground: url(images/announce_04.png) left repeat-y;
}

.announcebodyright {
  xbackground: url(images/announce_06.png) right repeat-y;
}

.announcetext {
  font-weight: normal;
  font-size: 14px;
}

.announcefooter {
  height: 43px;
  background-image: url(images/announce_08.png);
  background-position: bottom;
  background-repeat: repeat-x;
}

.announcefooterleft {
  width: 30px;
  height: 43px;
  background-image: url(images/announce_07.png);
  background-position: bottom left;
  background-repeat: no-repeat;
}

.announcefooterright {
  width: 30px;
  height: 43px;
  background-image: url(images/announce_09.png);
  background-position: bottom right;
  background-repeat: no-repeat;
}

.announcehr {
  display: none;
}

.navmenuheadwhite td {
  background-image: url(images/menu-top-white.png);
  background-position: top;
  background-repeat: no-repeat;
}

.navmenubodynolist td {
  padding-left: 30px;
  padding-right: 30px;
  text-align: center;
  background-image: url(images/menu-mid.png);
  background-repeat: repeat-y;
  font-size: .90em;
}

.counttext {
  display: block;
  font-size: 1.1em;
  font-weight: bolder;
  margin-top: 4px;
  margin-bottom: -16px;
}

.announcements {
  display: block;
  font-size: 1.5em;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 10px;
}

.contactTable {
  border: 0;
}

.contactTable td {
  border: 0;
  padding: 7px;
  font-size: .75em;
}

td.headLeft {
  padding: 0px 7px;
}

.headLeft {
  height: 53px;
  background-color: #ffffff;
  background-image: url(images/contact-left.png);
  background-repeat: no-repeat;
}

.headLeft span {
  display: block;
  padding-left: 20px;
  margin-top: 10px;
}

.headRight {
  background-color: #ffffff;
  background-image: url(images/contacts-right.png);
  background-repeat: no-repeat;
  background-position: top right;
}

.headRight span {
  display: block;
  margin-top: 10px;
}

.headMiddle {
  background-color: #ffffff;
  background-image: url(images/contacts-middle.png);
  background-repeat: no-repeat;
}

.headMiddle span {
  display: block;
  margin-top: 10px;
}

.leftCell div, .leftBottom div {
  margin-left: 20px;
}

.leftCell {
  background-image: url(images/cell-left.png);
  background-position: left;
  background-repeat: repeat-y;
}

.rightCell {
  background-image: url(images/cell-right.png);
  background-position: right;
  background-repeat: repeat-y;
}

.leftBottom {
  background-color: #ffffff;
  background-image: url(images/contacts-bottom-left.png);
  background-position: bottom left;
  background-repeat: no-repeat;
}

.rightBottom {
  background-color: #ffffff;
  background-image: url(images/contacts-bottom-right.png);
  background-position: bottom right;
  background-repeat: no-repeat;
}

.bottom {
  background-image: url(images/contacts-bottom-middle.png);
  background-position: bottom;
  background-repeat: no-repeat;
}

.tableHead {
  display: block;
  width: 100%;
  text-align: center;
  font-weight: bold;
}

.bodytext {
  font-size: .75em;
}

.addressFormat {
  font-family: Arial, Helvetica, sans-serif;
  color: #990000;
  font-size: .875em;
}

.addressHeader {
  font-weight: bold;
}

.icons {
  width: 10px;
}

.icons td {
  padding-left: 5px;
  padding-right: 5px;
}

.icons a {
  text-decoration: none;
}

.icons table {
  width: 117px;
  height: 80px;
}

.serviceLine {
 min-width: 256px;
}

.logbtn a {
  display: block;
  width: 76px;
  height: 26px;
  line-height:26px;
  border-radius: 4px;
  background-color: #e4e4e4;
  background-image: url(images/gradbg38.png);
  background-position: bottom left;
  background-repeat: repeat-x;
}

.logbtn a font {
  display: block;
  color: #000000;
  font-size: 13px;
  text-decoration: none;
  font-weight: bolder;
}

.logbtn a:hover {
  color: #222222;
  text-decoration: underline;
  background-color: #f1f1f1;
}

.logbtn a:active {
  transform: translateY(1px);
  background-color: #f6f9ff;
}

.fullname, .loginident {
  font-size: .875em;
  height: 35px;
}

.fullname {
  padding-left: 10px;
  white-space:nowrap;
}

.loginident {
  text-align: right;
  text-transform: capitalize;
  color: #ffffff;
  white-space:nowrap;
}

.alerttext {
  color: #ff0000;
  font-weight: bold;
  text-decoration: blink;
}
.infoBoxHeading {
  padding: 5px;
  margin-bottom: 10px;
}

.infoBoxContents {
  padding: 5px 15px 5px 15px;
  margin: 10px;
  font-size: .9em;
}

.infoBoxContents td ul,ol {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 15px;
}

.altformat {
  margin-left: 10px;
}

.altformathead {
  width: 339px;
  height: 58px;
}

.altformattall {
  width: 339px;
  height: 73px;
}

.navmenuheadtall td {
  background-image: url(images/menu-top-tall.png);
  background-position: top;
  background-repeat: no-repeat;
}

.altformathead td {
  background-image: url(images/altmenu-top.png);
  background-position: top;
  background-repeat: no-repeat;
}

.altformatbody td {
  width: 339px;
  background-image: url(images/altmenu-mid.png);
  background-repeat: repeat-y;
}

.altformatfoot {
  width: 339px;
  height: 32px;
  border: none;
}

.altformatfoot td {
  background-image: url(images/altmenu-bottom.png);
  background-position: bottom;
  background-repeat: no-repeat;
}

ul.twocolumn {
  width: 240px;
  list-style-type: none;
  margin-left: 10px;
}

ul.twocolumn li {
  float: left;
}

li.alri {
  width: 22%;
  text-align: right;
}

li.allt {
  width: 66%;
  text-align: left;
  padding-left: 4px;
}

.altnavmenuv2 {
  margin-left: 20px;
  font-size: .75em;
}

.altnavmenuheadv2 {
  width: 239px;
  height: 30px;
}
.altnavmenuheadtallv2 {
  width: 239px;
  height: 45px;
}

.altnavmenuheadtallv2 td {
  background-image: url(images/v2altmenu-top-tall.png);
  background-position: top;
  background-repeat: no-repeat;
}

.altnavmenuheadv2 td {
  background-image: url(images/v2altmenu-top.png);
  background-position: top;
  background-repeat: no-repeat;
}

.altnavmenubodyv2 tr {
  background-image: url(images/v2altmenu-mid.png);
  background-repeat: repeat-y;
}

.altnavmenufootv2 {
  width: 239px;
  height: 19px;
  border: none;
}

.altnavmenufootv2 tr {
  background-image: url(images/v2altmenu-bottom.png);
  background-position: bottom;
  background-repeat: no-repeat;
}

/*
#active a:link, #active a:visited, #active a:hover {
  background-color: #dddddd;
}
*/

.faqmenu {
  Margin-left: 6px;
}

.motd {
  padding: 4px;
  border-radius: 4px;
  margin: 4px;
}

.imgButton {
  display: inline-block;
  width: 32px;
  height: 32px;
  /*border: 1px solid #d2d2d2;*/
  border-radius: 4px;
  font-size: 6px;
  background-size: 24px 24px;
  background-position:center;
  background-repeat:no-repeat;
  position:relative;
  cursor:pointer;
}
.imgButton:not(.disableButton):hover {
  xborder-color: #adadff;
  background-color: #add8e659;
}
.imgButton:not(.disableButton):active {	
  transform: translateY(1px);
  background-color:#ade6d745;
  box-shadow:inset 1px 1px 0px 1px #9c9c9c;
}
.disableButton {
  /*background-color:#ececec;*/
  cursor:not-allowed;
}
.disableButton:before{
  display:block;
  position:absolute;
  width:100%;
  height:100%;
  background-color:rgba(255, 255, 255, 0.87);
  content:'';
}
.tileViewButton {
  background-image: url('/tileview.png');
}
.listViewButton {
  background-image: url('/listview.png');
}
.dlButton {
  background-image: url('/file_download.png');
}
.titlesControl {
  font-size: 13px;
  font-family: Helvetica, Arial, Verdana, sans-serif;
  color:black;
  height:32px;
  line-height:32px;  
}
.titlesControl a {
  text-decoration: none;
  color:#0008bb;
  padding:3px;
  font-size:13.5px;
  border-radius:4px;
}
.titlesControl a:hover {
  background-color:rgba(32, 56, 105, 0.07);
}
.searchNavControl {
  table-layout: fixed;
  width: 1000px;
}
.searchNavControl * {
  box-sizing: border-box;
}
.searchNavControl td{
  padding: 2px 4px;
}
.searchNavControl td:first-of-type,
.searchNavControl td:nth-of-type(2) {
  width: 128px;
}
.searchNavControl td:nth-of-type(3) {
  padding-right: 20px;
}
.searchNavControl td:nth-of-type(4) {
  width: 148px;
}
.searchNavControl td:nth-of-type(5),
.searchNavControl td:nth-of-type(6),
.searchNavControl td:nth-of-type(7) {
  width: 30px;
  padding: 3px 0px;
}
.searchNavControl td:first-of-type input[type='submit'],
.searchNavControl td:nth-of-type(2) input[type='submit'] {
  padding: 3px 5px;
  width: 120px;
}
.searchNavControl td:nth-of-type(3) input[type='submit'] {
  padding: 3px 5px;
  width: 150px;
}
.searchNavControl select {
  padding: 3px 5px;
  width: calc(100% - 165px);
  margin-right: 5px;
}