/* Constants */
/* Only difference with previous site: */
/* Flag positions in strip-of-flags.gif, order */
/* Loop for making set of classes for the flags */
html,
body {
  height: 100%;
}
body {
  margin: 0;
  padding: 0;
  color: #1e0a00;
  background: white;
  text-align: left;
}
body,
td {
  font-family: "Trebuchet MS", "Nimbus Sans L", FreeSans, sans-serif;
  font-size: 13px;
  line-height: 141%;
}
img {
  border: none;
}
textarea,
input[type="text"] {
  font-family: Arial, sans-serif;
  font-size: 13px;
}
h1,
h2,
h3,
h4 {
  font-weight: bold;
}
h1 {
  font-size: 24px;
  line-height: 125%;
}
h2 {
  font-size: 16px;
}
h3 {
  font-size: 15px;
}
h4 {
  font-size: 13px;
  line-height: 135%;
}
.page h1 {
  padding: 10px 0 14px 0;
}
.page h2 {
  padding-top: 10px;
}
li {
  list-style-type: square;
  margin-left: -7px;
}
hr {
  width: 96%;
}
article {
  padding: 0;
  margin: 0 auto;
  max-width: 588px;
}
a:link {
  color: #2F17E5;
}
a:visited {
  color: #800060;
}
a:hover {
  color: #BE0064;
}
a:active {
  color: #A40874;
}
.noscript {
  color: red;
  font-weight: bold;
}
.alert {
  border: 1px dashed grey;
  padding: 0.8em 0.6em;
  font-weight: bold;
  margin: 1em 0;
  border-radius: 2px;
}
.alert-error {
  color: red;
}
.alert-success {
  color: darkgreen;
}
.alert-notice {
  color: darkblue;
}
.alert-warning {
  color: orangered;
}
#envelope {
  height: 100%;
  text-align: left;
  display: inline-block;
  margin: 0;
  box-shadow: 0 0 125px 0 #f3f3f3;
}
#header {
  background: url("../img/header4.jpg") no-repeat #737898;
  background-size: 100% 100%;
  max-width: 832px;
  width: 100%;
  height: 50px;
  border-left: 1px solid #8890b3;
  padding: 0;
  border-bottom: 1px solid #888;
  position: relative;
}
#ee {
  width: 250px;
  height: auto;
  float: left;
}
#beta {
  position: absolute;
  color: white;
  font-weight: bold;
  right: 3px;
}
#beta a {
  text-decoration: none;
  color: white;
}
.svgbtn {
  display: inline-block;
  width: 25px;
  height: 24px;
  margin: 0 0 0 2px;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;
  padding: 6px;
  box-shadow: 0 2px 2px #c2c1c0;
  border: 1px solid #888;
}
.svgbtn:hover {
  box-shadow: 0 2px 4px #b2b1b0;
}
.ll {
  text-align: right;
  float: right;
  clear: both;
  margin-left: 15px;
}
.nav {
  color: #4B4C4F;
  background: #EBF7EE;
  border: #5E6077 solid 1px;
  border-bottom-width: 0;
  float: left;
  width: 82px;
  height: 18px;
  margin: 31px 1px 0 0;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  line-height: 147%;
  overflow: hidden;
}
.nav > a {
  text-decoration: none;
  display: block;
}
.nav > a:link {
  color: #6B6044;
  background: #D0DBD3;
}
.nav > a:visited {
  color: #6B6044;
  background: #D0DBD3;
}
.nav > a:hover {
  color: #796D4D;
  background: #eef0ee;
  -webkit-transition-duration: 90ms;
  transition-duration: 90ms;
}
.nav > a:active {
  color: #6B6044;
  background: #D0DBD3;
}
@-moz-document url-prefix() {
  .nav {
    line-height: 145%;
  }
}
.nav_narrow {
  width: 80px;
}
.nav_wide {
  width: 84px;
}
#layout {
  height: 100%;
  display: table;
  border-collapse: collapse;
  border: none;
  clear: both;
}
#leftsidebar {
  box-sizing: border-box;
  width: 148px;
  padding: 4px 18px 10px 15px;
  margin: 0;
  vertical-align: top;
  background: #f6f6f3;
  border-right: 1px solid #777;
  font-size: 13px;
}
#leftsidebar b,
#leftsidebar strong {
  font-size: 19px;
  padding: 7px 0 0;
  color: #4B3C5B;
  display: block;
}
.page {
  box-sizing: border-box;
  width: 685px;
  padding: 11px 24px 10px 36px;
  vertical-align: top;
  background: #fff;
  font-size: 13px;
  border-right: 1px solid #8890b3;
  height: 100%;
}
@media screen {
  div.pageborder {
    border-right: 1px solid #8890b3;
    width: 769px;
    height: 95%;
  }
}
.menu {
  text-align: right;
  text-decoration: none;
}
.menu h4 {
  margin: 0.8em 0 0 0;
}
.menu a:link,
.correction a:link {
  color: #710054;
  text-decoration: none;
}
.menu a:visited,
.correction a:visited {
  color: #710065;
  text-decoration: none;
}
.menu a:hover,
.correction a:hover {
  color: #BE0064;
}
.menu a:active,
.correction a:active {
  color: #BE0064;
}
.buyheading:before {
  content: "\2013  ";
}
.buyheading:after {
  content: "  \2013";
}
#footer {
  text-align: center;
  margin-top: 50px;
}
#copyright {
  margin-top: 22px;
  text-align: center;
  font-size: 11px;
}
#langpref {
  font-style: italic;
  background: #f7f0ee;
  float: right;
  margin-left: 15px;
  padding-left: 0.5em;
}
/* BUTTONS */
.social-buttons {
  margin: 49px 0;
  font-size: 0;
}
.social-buttons a {
  height: 25px;
  width: 26px;
  margin-right: 14px;
  opacity: 0.82;
  display: inline-block;
  background: url("../img/icon/social_media8.png") no-repeat;
  border-radius: 2px;
}
.social-buttons a.btn_facebook {
  background-position: 0 0;
}
.social-buttons a.btn_linkedin {
  background-position: -28px 0;
}
.social-buttons a.btn_twitter {
  background-position: -56px 0;
}
.social-buttons a.btn_googleplus {
  background-position: -84px 0;
}
.button {
  font-family: "Trebuchet MS", "Nimbus Sans L", FreeSans, sans-serif;
  font-size: 13px;
  min-width: 5.5em;
  padding: 6px 7px;
  cursor: pointer;
  background: #e3e3e1;
  color: #1e1c14;
  border: 1px solid #aeaeae;
  border-radius: 1px;
  outline: none;
}
.button:active {
  box-shadow: 0 2px 3px #ddd;
}
.button::-moz-focus-inner {
  border: 0;
}
.ichingbtn {
  font-family: "Trebuchet MS", "Nimbus Sans L", FreeSans, sans-serif;
  font-size: 13px;
  min-width: 72px;
  padding: 5px 0;
  cursor: pointer;
  background: #e4e4e3;
  color: #343228;
  border: 1px solid #b1b1b0;
  border-radius: 2px;
  box-shadow: 0 1px 2px #ddd;
  outline: none;
}
.ichingbtn:active {
  box-shadow: 0 2px 3px #ddd;
  background: #e2e2e0;
  border: 1px solid #aeaeae;
}
.ichingbtn::-moz-focus-inner {
  border: 0;
}
a.donabtn {
  font-family: Tahoma, "Trebuchet MS", sans-serif;
  font-size: 11px;
  font-weight: bold;
  text-decoration: none;
  display: block;
  width: 110px;
  padding: 1px 0;
  text-align: center;
  background: white;
  border: 1px solid #404040;
  border-radius: 4px;
  box-shadow: 0 0 1px #999;
}
a.donabtn:link,
a.donabtn:visited,
a.donabtn:hover,
a.donabtn:active {
  color: #3b3b3b;
  outline: none;
}
.buybtn,
.donatebtn {
  font-family: Calibri, Candara, Segoe, Segoe UI, Optima, Arial, sans-serif;
  font-size: 15px;
  font-weight: bold;
  display: block;
  width: 88px;
  padding: 6px 0;
  text-align: center;
  cursor: pointer;
  background: #fdfce0;
  color: #242218;
  border: 1px solid #7d762a;
  border-radius: 3px;
  box-shadow: 0 1px 3px #bbb;
}
.buybtn:active,
.donatebtn:active {
  box-shadow: 0 2px 6px #bbb;
}
.buybtn::-moz-focus-inner,
.donatebtn::-moz-focus-inner {
  border: 0;
}
.donatebtn {
  display: inline-block;
  padding: 5px 0;
  margin-top: -1px;
}
.paylogos {
  margin-top: 21px;
  cursor: pointer;
}
.center {
  text-align: center;
}
#prnbtn {
  width: 5em;
  float: right;
  margin-top: 3em;
}
.search {
  margin-top: 14px;
  text-align: right;
}
#search_qs {
  width: 100px;
  float: right;
}
#search {
  height: 24px;
}
img.cover {
  margin: 4px 0;
}
.book {
  width: 100%;
  border-collapse: collapse;
}
.book td {
  vertical-align: top;
}
.bookifrm {
  vertical-align: top;
  padding: 0 22px 1em 0;
  margin: 0 auto;
}
.bookimg {
  vertical-align: top;
  width: 80px;
  margin: 1em 1em 1em 0;
}
.bookimg img {
  max-width: 80px;
  max-height: 80px;
  width: auto;
  overflow: hidden;
}
.bookdesc {
  vertical-align: top;
  padding-bottom: 2em;
  text-align: left;
}
.amazframe iframe,
.amaz iframe,
.bookifrm iframe {
  margin: 0 auto;
  padding: 0;
  border: none;
  width: 120px;
  height: 240px;
  overflow: hidden;
}
.flag {
  border: 1px solid #666;
  border-top: 0;
  border-left: 0;
}
.aflag {
  width: 18px;
  height: 12px;
  overflow: hidden;
  position: relative;
  display: block;
  float: right;
  border-top: 0;
  border-left: 0;
  border: 0;
  margin: 4px 2px 6px 6px;
  box-shadow: 0 0 1px #bbb;
}
.aflag span {
  background-image: url("../img/icon/strip-of-flags.gif");
  background-repeat: no-repeat;
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
/* Flag positions in strip-of-flags.gif */
.flag_hr {
  background-position: 0 -96px;
}
.flag_es {
  background-position: 0 -84px;
}
.flag_pt-br {
  background-position: 0 -72px;
}
.flag_pl {
  background-position: 0 -60px;
}
.flag_zh-hant {
  background-position: 0 -48px;
}
.flag_de {
  background-position: 0 -36px;
}
.flag_fr {
  background-position: 0 -24px;
}
.flag_en-us {
  background-position: 0 -12px;
}
.flag_nl {
  background-position: 0 0px;
}
.correction {
  background: #fbfbfb;
  border: 1px solid #111;
  padding: 2px;
  margin: 64px 2px 0 12px;
  text-align: center;
}
.eimg {
  float: right;
  padding: 0 0 5px 10px;
}
.chac {
  padding: 5px 3px 0 3px;
  margin: 0;
  position: relative;
  top: -1px;
  font-size: 1px;
  border: 1px solid #000;
}
#chac1 {
  background: #FC0E0C;
}
#chac2 {
  background: #FC9E0B;
}
#chac3 {
  background: #FCF64C;
}
#chac4 {
  background: #13A643;
}
#chac5 {
  background: #1C86FC;
}
#chac6 {
  background: #5C3E94;
}
#chac7 {
  background: #9D6BAD;
}
#xtrasubspace {
  display: none;
}
#xtrahead {
  position: absolute;
  top: 0;
  left: 833px;
  width: 201px;
  height: 51px;
  background: url("../img/divider.gif") repeat-y #f9f9f9;
  border: none;
  border-right: 1px solid #8890b3;
}
#xtraspace {
  width: 201px;
  background: url("../img/divider.gif") repeat-y #f9f9f9;
  margin: 0;
  padding: 0;
  vertical-align: top;
  border: none;
  border-right: 1px solid #8890b3;
}
#xtraheading {
  font-weight: bold;
  padding: 12px 12px 185px 12px;
}
.xtracontainer {
  padding: 12px;
  margin: 0 4px 2.3em 5px;
  font-family: Arial, sans-serif;
  font-size: 12px;
  background: white;
  border: 1px solid #999;
  border-radius: 2px;
}
.xtracontainer a:link {
  color: #3a3;
}
.xtracontainer a:visited {
  color: #3a3;
}
.xtracontainer a:hover {
  color: #3a3;
}
.xtracontainer a:active {
  color: #3a3;
}
.halfspace {
  margin: 0 0.22em;
}
.morespace {
  padding: 1em 0;
}
.notthere {
  display: none;
}
#copymsg {
  display: none;
  position: fixed;
  top: 100px;
  left: 792px;
  background: #ffffe9;
  border: 1px dotted black;
  padding: 0.5em;
}
tr.dataline:nth-child(odd) {
  background-color: #f5f5f5;
}
tr.dataline:nth-child(even) {
  background-color: #ffffff;
}
tr.dataline:hover {
  background-color: #feffea;
  cursor: pointer;
}
.active_dataline {
  background-color: #feffea !important;
}
.incapable {
  color: red;
  font-weight: bold;
}
.priv {
  font-size: 0.87em;
}
.signature {
  font-style: italic;
  margin: 3em 0 5em 0;
}
#googleads {
  font-weight: bold;
}
#eucookielaw {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: 832px;
  box-sizing: border-box;
  padding: 3px;
  border-top: 1px solid grey;
  background: #54443B;
  color: #eee;
  font-size: 15px;
  text-align: center;
  transition: bottom 0.2s;
  z-index: 10;
  opacity: 0.97;
}
#eucookielaw a {
  color: #eee;
  transition: color 50ms;
}
#eucookielaw a:hover {
  color: white;
}
#euclose {
  float: right;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 1px 6px 2px 6px;
  margin: 1px 1px 1px 3px;
  cursor: pointer;
  font-weight: bold;
  background: #614E44;
  transition: color, border, background 100ms;
}
#euclose:hover {
  color: white;
  border: 1px solid white;
  background: #7A6356;
}
#maintenance {
  margin: 1em 0;
  font-style: italic;
  background: #444;
  color: white;
}
#lifrm {
  float: right;
}
.table {
  display: table;
}
.tr {
  display: table-row;
}
.td {
  display: table-cell;
}
table.listing {
  font-size: 10pt;
  width: 100%;
  border: 1px solid #ddd;
  border-collapse: collapse;
}
table.listing th {
  background-color: #ddd;
  padding: 3px;
  border: 1px solid #fff;
}
table.listing td {
  background-color: #eee;
  padding: 3px;
  border: 1px solid #fff;
}
/*	Device dependend styling	*/
/*  Ads underneath article  */
@media (max-width: 1038px) {
  #xtraspace,
  #xtrahead,
  .region_extra {
    display: none;
  }
  #xtrasubspace {
    display: block;
    border: 1px solid grey;
    padding: 0 1em;
    background: #f9f9f9;
    border-radius: 3px;
    margin: 0 0 2em -1px;
  }
  #xtraheading {
    padding: 0.5em 0;
  }
  .xtracontainer {
    width: 177px;
    margin-right: 25px;
    display: inline-block;
    vertical-align: top;
    height: 4.7em;
  }
  #xtrasubspace ~ div.amaz hr {
    display: none;
  }
}
/*	Desktop	*/
#menubtn {
  display: none;
}
.container {
  display: table-row;
  height: 100%;
}
.region_menu,
.region_content,
.region_extra {
  display: table-cell;
}
.region_content {
  height: 100%;
}
/* Not so wide screen */
@media (max-width: 845px) {
  body {
    line-height: 139%;
  }
  #envelope {
    margin: 0;
    display: block;
  }
  #ee {
    width: 205px;
  }
  #header {
    max-width: 814px;
  }
  #header,
  #layout {
    border-left: none;
  }
  #leftsidebar {
    width: 110px;
    padding: 4px 9px 10px 6px;
    border-right: 1px solid #666;
  }
}
/*	Tablet, smartphone	*/
@media (max-width: 769px) {
  body,
  td {
    font-size: 15px;
    line-height: 150%;
  }
  textarea,
  input[type="text"] {
    font-size: 15px;
  }
  h1,
  h2,
  h3,
  h4 {
    font-weight: bold;
  }
  h1 {
    font-size: 24px;
    line-height: 150%;
  }
  h2 {
    font-size: 18px;
  }
  h3 {
    font-size: 17px;
  }
  h4 {
    font-size: 15px;
    line-height: 150%;
  }
  .button {
    font-size: 15px;
  }
  #copyright {
    margin-top: 25px;
    font-size: 13px;
  }
  .container {
    background: white;
    display: block;
  }
  .region_menu {
    display: block;
    position: absolute;
    top: 51px;
    left: -178px;
    transition: left 0.3s;
    box-shadow: 5px 5px 3px #bbbbbb;
    z-index: 10;
  }
  #header {
    max-width: 679px;
  }
  #ee {
    width: 100px;
    overflow-x: visible;
  }
  #menubtn {
    display: block;
    position: absolute;
    top: 30px;
    left: 10px;
    width: 64px;
    height: 1.5em;
    padding: 4px 6px 2px 6px;
    color: white;
    background: #848484;
    border: 1px solid #bbb;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    font-size: 17px;
  }
  #menubtn span {
    font-size: 15px;
    position: relative;
    top: -1px;
  }
  #leftsidebar {
    width: 178px;
    line-height: 200%;
    padding: 6px 19px 25px 18px;
    border-bottom: 1px solid #666;
    font-size: 15px;
    clip: rect(0, auto, auto, 0);
  }
  #leftsidebar b,
  #leftsidebar strong {
    text-align: right;
  }
  .menu {
    text-align: left;
  }
  .aflag {
    width: 27px;
    height: 18px;
    margin: 0 0 11px 7px;
    opacity: 0.77;
  }
  .aflag span {
    background-image: url("../img/icon/strip-of-flags-2.gif");
  }
  /*  Flag positions in strip-of-flags-2.gif */
  .flag_hr {
    background-position: 0 -144px;
  }
  .flag_es {
    background-position: 0 -126px;
  }
  .flag_pt-br {
    background-position: 0 -108px;
  }
  .flag_pl {
    background-position: 0 -90px;
  }
  .flag_zh-hant {
    background-position: 0 -72px;
  }
  .flag_de {
    background-position: 0 -54px;
  }
  .flag_fr {
    background-position: 0 -36px;
  }
  .flag_en-us {
    background-position: 0 -18px;
  }
  .flag_nl {
    background-position: 0 0px;
  }
  .page {
    width: 679px;
    padding: 11px 20px 10px 34px;
    font-size: 15px;
    height: 100%;
  }
  .lengthed {
    height: 400px;
  }
  .xtracontainer {
    font-size: 14.5px;
    width: 219px;
  }
  #prnbtn {
    display: none;
  }
  .correction {
    margin: 2em 2px 0 12px;
  }
  #eucookielaw {
    max-width: 679px;
  }
  .svgbtn {
    width: 25px;
    height: 24px;
    margin: 0 0 0 5px;
  }
}
@media (max-width: 660px) {
  body {
    background: white;
  }
  #header {
    height: 50px;
    border-bottom: 1px solid #888;
  }
  .nav {
    float: left;
    margin: 0 1px 0 0;
    border-bottom-width: 1px;
  }
  .nav_narrow,
  .nav_wide {
    width: 84px;
  }
  #navblock {
    position: absolute;
    display: block;
    right: 20px;
    top: 30px;
    width: 265px;
  }
  #menubtn {
    background: #808080;
    top: 31px;
  }
  #langpref {
    margin-top: 17px;
  }
  #lifrm {
    margin-top: 27px;
  }
  #langpref ~ article #lifrm {
    margin-top: 17px;
  }
  .page {
    width: 100%;
    padding: 11px 18px 10px 30px;
    border-right: none;
  }
}
@media (max-width: 580px) {
  .page {
    padding: 11px 15px 10px 20px;
  }
  .social-buttons a {
    margin-right: 17px;
  }
}
@media (max-width: 400px) {
  #navblock {
    right: 2px;
  }
  #menubtn {
    left: 2px;
  }
  .page {
    padding: 11px 10px 10px 10px;
  }
  .social-buttons a {
    margin-right: 20px;
  }
}
@media (max-width: 360px) {
  #navblock {
    right: 1px;
  }
  #menubtn {
    width: 1.4em;
    left: 3px;
    padding: 5px 6px 2px 6px;
    font-size: 20px;
  }
  #menubtn span {
    display: none;
  }
}
@media print {
  body {
    color: #000;
    background: none #fff;
  }
  #home {
    border: 2px solid #888;
  }
  #header {
    background: none #fff;
  }
  .nav {
    width: auto;
    font-weight: normal;
    padding: 0 2px;
  }
  .nav > a {
    display: inline;
  }
  #layout {
    height: auto;
  }
  .page {
    border: none;
    font-size: 10pt;
  }
  h1 {
    font-size: 18pt;
  }
  h2 {
    font-size: 12pt;
  }
  h3 {
    font-size: 11pt;
  }
  h4 {
    font-size: 10pt;
  }
  .nonprn,
  #leftsidebar,
  #footer,
  div.amaz,
  #langpref,
  #menubtn {
    display: none;
  }
}
.locimg {
  display: inline-block;
  padding: 14px;
  border: 1px solid #B9B9B9;
  border-radius: 1px;
  margin: 2em 0;
  background-color: #f7f7f7;
}
.locimg .locsel {
  display: table;
}
.locimg svg.loc_center {
  position: absolute;
}
.locimg .male div,
.locimg .female div {
  display: table-cell;
  position: relative;
  overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
}
.locimg .female div {
  background-image: url("../svg/3woman.svg");
}
.locimg .female .front {
  background-position-x: 0;
}
.locimg .female .back {
  background-position-x: 63.7%;
}
.locimg .female .side {
  background-position-x: 103.5%;
}
.locimg .male div {
  background-image: url("../svg/3man.svg");
}
.locimg .male .front {
  background-position-x: 0;
}
.locimg .male .back {
  background-position-x: 66.9%;
}
.locimg .male .side {
  background-position-x: 103.0%;
}
#svg_defs {
  position: absolute;
  top: -200px;
  left: -400px;
  z-index: -100;
}
