/*==============================================================================
 Framework
==============================================================================*/
body, html
{
  height: 100%;
  margin: 0;
  padding: 0;
}

body
{
  background: #474f79;
  text-align: center;
}

.framework
{
  margin: 0 auto;
  min-height: 100%;
  position: relative;
  text-align: left;
  width: 835px;
}

.framework-inner
{
  /* On a small browser, stop the content borders showing */
  margin: 0 -1px;
}

/*==============================================================================
 Top Navigation
==============================================================================*/
.top-nav
{
  border: 1px solid #3a4168;
  background: #6e769d url(/images/top-nav-off.gif) repeat-x;
  color: #fff;
  float: right;
  font-size: 13px;
  position: absolute;
  right: -1px;
  top: 37px;
}

.top-nav a
{
  color: #fff;
  display: block;
  text-decoration: none;
}

.top-nav ul
{
  list-style: none;
  margin: 0;
  padding: 0;
}

.top-nav li
{
  float: left;
}

.top-nav li a
{
  border-left: 1px solid #626a94;
  border-right: 1px solid #858bab;
  line-height: 28px;
  padding: 0 13px 0 12px;
}

.top-nav li:first-child a
{
  border-left: none;
}

.top-nav li:last-child a
{
  border-right: none;
}

.top-nav li .arrow
{
  background: url(/images/top-nav-dropdown-arrow.gif) 0 center no-repeat;
  margin-left: 6px;
}

.top-nav li:hover > a,
.top-nav li a:hover
{
  background: #acb1ca url(/images/top-nav-on.gif) repeat-x;
  /* TODO border-left: 1px solid #3a4168; */
  border-right: none;
  padding-right: 14px;
  color: #222744;
}

.top-nav li:hover > a .arrow,
.top-nav li a:hover .arrow
{
  background-position: -5px center;
}

.top-nav li:hover:last-child > a,
.top-nav li:last-child a:hover
{
  padding-right: 13px;
}

.top-nav ul ul
{
  background: #f4f5fd;
  border: 1px solid #41486d;
  display: none;
  position: absolute;
  z-index: 100;
}

.top-nav ul ul.menu-right
{
  right: -1px;
}

.top-nav ul li:hover ul
{
  display: block;
}

.top-nav li li
{
  float: none;
}

.top-nav li li a,
.top-nav li li a:hover,
.top-nav li:hover li > a,
.top-nav li:hover:last-child li > a,
.top-nav li:last-child li a:hover
{
  border: none;
  border-bottom: 1px solid #d7d9e2;
  color: #212643;
  line-height: 26px;
  padding: 0 22px 0 7px;
}

.top-nav li li a:hover
{
  background: #ced2ea url(/images/top-nav-menu-on.gif) repeat-x;
}

/*==============================================================================
 Content Boxes
==============================================================================*/
.content-box
{
  border: 1px solid #3a4168;
  background: #fff;
  clear: both;
  margin: 0 0 20px 0;
}

.content-box-heading
{
  background: #6e769d url(/images/content-box-heading.gif) repeat-x;
  border-bottom: 1px solid #596083;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 25px;
  margin: 0;
  padding: 6px 12px 6px 110px;
}

.content-box-heading-no-indent
{
  padding-left: 12px;
}

.content-box-heading .ajax-indicator-off
{
  display: block;
}

.content-box-heading .ajax-indicator
{
  background: url(/images/ajax-loader.gif) right center no-repeat;
}

.content-box-heading .heading-icon-private
{
  background: url(/images/icon-padlock.gif) no-repeat scroll left 10px;
  display: block;
  padding-left: 25px;
}

.content-box-body
{
  padding: 14px 15px 6px 111px;
  position: relative;
}

/* Avatar */
.content-box-avatar
{
  float: left;
  line-height: 15px;
  margin: -1px 0 1px -111px;
  padding-top: 1px;
  position: relative;
  text-align: right;
  width: 97px;
}

.content-box-avatar img
{
  background: #fff;
  border: 1px solid #6e7494;
}

.content-box-avatar-pin
{
  background: url(/images/avatar-pin.png) no-repeat;
  display: block;
  height: 29px;
  left: 20px;
  position: absolute;
  top: -13px;
  width: 18px;
}

/* Date */
.content-box-date
{
  clear: left;
  float: left;
  line-height: 15px;
  margin-left: -111px;
  padding-top: 1px;
  text-align: right;
  width: 97px;
}

.content-box-date,
.content-box-date a
{
  color: #8c95c9;
  text-decoration: none;
}

.content-box-date a:hover
{
  text-decoration: underline;
}

.content-box-date strong /* Title, e.g. "Last Updated" */
{
  display: block;
  font-size: 11px;
  font-weight: bold;
  margin-top: -1px;
}

.content-box-date em
{
  font-style: normal;
}

/* Subheadings */
.content-box-body h3,
.secondary h4
{
  color: #666f9b;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 2px;
}

.content-box-body h2,
.secondary h3
{
  background: #f4f5fd;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  color: #666f9b;
  clear: left;
  font-size: 14px;
  font-weight: bold;
  line-height: 30px;
  margin: 20px -15px 13px -111px;
  padding: 0 12px 0 111px;
}

.has-comments h3
{
  margin-right: -45px;
}

/* Footer */
.content-box-footer-border
{
  border-top: 1px solid #878da6;
}

.content-box-footer
{
  background: #a3a8c3 url(/images/content-box-footer.gif) repeat-x;
  border-top: 1px solid #bfc3d6;
  font-size: 11px;
}

.content-box-footer p
{
  margin: 0;
}

.content-box-footer em
{
  font-style: normal;
}

.content-box-footer,
.content-box-footer a
{
  color: #3a4168;
  text-decoration: none;
}

.content-box-footer a:hover
{
  text-decoration: underline;
}

.content-box-footer-meta
{
  float: left;
  padding: 0 0 0 112px;
}

.content-box-footer-meta-section-shadow
{
  background: #b8bcd2;
  display: block;
  float: left;
  margin: 2px 3px 1px 0;
}

.content-box-footer-meta-section-border
{
  background: #bfc3d6;
  border: 1px solid #878da6;
  display: block;
  margin: -1px 1px 1px -1px;
  padding: 1px 0 0 1px;
}

.content-box-footer-meta-section
{
  background: #d5d8e5;
  display: block;
  line-height: 16px;
  padding: 0 7px 1px 5px;
}

.content-box-footer-meta-section .middot
{
  font-weight: bold;
}

.content-box-footer-nav
{
  float: right;
  line-height: 22px;
  padding-right: 7px;
}

.content-box-footer-nav .raquo
{
  font-family: Verdana;
  font-weight: bold;
}

.content-box-footer-nav .middot
{
  font-weight: bold;
}

/*==============================================================================
 Split Page
==============================================================================*/
.split-left
{
  float: left;
  width: 417px;
}

.split-right
{
  float: right;
  width: 417px;
}

.split-body
{
  padding: 13px 13px 6px 13px;
}

.split-body h2
{
  background: #f4f5fd;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  color: #666f9b;
  font-size: 14px;
  font-weight: bold;
  line-height: 30px;
  margin: 20px -13px 13px -13px;
  padding: 0 12px;
}

.split-body h2.first
{
  border-top: none;
  margin-top: -13px;
}

/*------------------------------------------------------------------------------
 Split Page: Blue/White
------------------------------------------------------------------------------*/
.split-blue-white
{
  background: #f4f5fd url(/images/split-blue-white.gif) right top repeat-y;
}

.split-blue-white .split-right
{
  background: #fff;
  border-left: 1px solid #cfd6fb;
}

/*==============================================================================
 Images
==============================================================================*/
.image-left
{
  clear: left;
  float: left;
  margin: -5px 14px 3px 0;
}

.image-right
{
  clear: right;
  float: right;
  margin: -5px -7px 3px 14px;
}

.image-border,
.image-border-popup img
{
  border: 1px solid #404664;
}

.image-caption
{
  font-size: 12px;
  line-height: 14px;
  text-align: center;
}

.image-caption,
.image-caption a
{
  color: #474f79;
}

/*==============================================================================
 Warnings / Information boxes
==============================================================================*/
p.information
{
  background: #f4f5fd url(/images/icon-information.png) no-repeat 10px 5px;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  font-size: 14px;
  line-height: 18px;
  margin: -6px -7px 14px -2px;
  padding: 4px 8px 4px 31px;
}

p.warning
{
  background: #fffade url(/images/icon-error.png) no-repeat 10px 5px;
  border-top: 1px solid #f2d985;
  border-bottom: 1px solid #f2d985;
  font-size: 14px;
  line-height: 18px;
  margin: -6px -7px 14px -2px;
  padding: 4px 8px 4px 31px;
}

/*==============================================================================
 Boxouts
==============================================================================*/
.boxout
{
  background: #f4f5fd;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  margin: -6px -7px 14px -2px;
  padding: 0 8px;
}

.boxout-title
{
  color: #474f79;
  display: block;
}

.boxout p
{
  margin: 5px 0;
}

/*==============================================================================
 Quote
==============================================================================*/
.quote
{
  background: #f4f5fd url(/images/quote-open.png) 0 1px no-repeat;
  border-left: 3px solid #8c95c9;
  margin: 0 -7px 14px -2px;
}

/* Alternating colours */
              .quote,
.stripes-dark .quote .quote,
              .quote .quote .quote,
.stripes-dark .quote .quote .quote .quote,
              .quote .quote .quote .quote .quote
{
  background-color: #f4f5fd;
}

.stripes-dark .quote,
              .quote .quote,
.stripes-dark .quote .quote .quote,
              .quote .quote .quote .quote,
.stripes-dark .quote .quote .quote .quote .quote
{
  background-color: #fff;
}

/* Quote symbols */
.quote-inner
{
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  min-height: 30px;
  padding: 3px 62px;
}

.quote-inner
{
  background: url(/images/quote-close.png) right bottom no-repeat;
}

/* Nested quotes don't have quote symbols */
.quote .quote
{
  margin: 14px 0 14px -2px;
}

.quote .quote,
.quote .quote .quote-inner
{
  background-image: none;
}

.quote .quote .quote-inner
{
  padding: 3px 10px;
}

/* Content inside quotes */
.quote p
{
  margin: 2px 0;
}

.quote cite
{
  border-bottom: none; /* Override WP default in WYSIWYG */
  display: block;
  font-size: 12px;
  font-style: italic;
  font-weight: bold;
  padding-left: 10px;
}

.quote cite,
.quote cite a
{
  color: #7d8196 !important;
}

/*==============================================================================
 Code
==============================================================================*/
.code
{
  background: #f4f5fd url(/images/code.gif) 0 1px repeat-y;
  border-left: 3px solid #8c95c9;
  margin: 0 -7px 14px -2px;
}

code
{
  background: #f4f5fd;
}

.stripes-dark .code,
.stripes-dark code
{
  background-color: #fff;
}

.code-inner
{
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  overflow-y: auto;
  padding: 3px 10px 7px 18px;
}

.code pre
{
  margin: 0;
}

/*==============================================================================
 Pull Quotes
==============================================================================*/
.pull-quote
{
  background: #f4f5fd url(/images/pull-quote.gif) no-repeat;
  border-left: 3px solid #8c95c9;
  font-size: 16px;
  line-height: 21px;
  padding: 0 10px 5px 10px;
  width: 177px;
}

.pull-quote,
.pull-quote a
{
  color: #60678d;
}

.pull-quote-left
{
  float: left;
  margin: -1px 14px 12px -3px;
}

.pull-quote p
{
  margin: 6px 0;
}

/*==============================================================================
 Footnotes
==============================================================================*/
div.footnotes
{
  border-top: 1px solid #666;
  color: #666;
  margin: 2em -7px 1em -7px;
}

div.footnotes hr
{
  display: none;
}

div.footnotes ol
{
  font-size: 11px;
  margin: 0 7px;
  padding: 0.7em 0 0 0;
}

div.footnotes ol li
{
  margin-left: 2em;
}

sup.footnote
{
  color: #666;
}

/*==============================================================================
 Meta Data (blog posts - mood, music, misc)
==============================================================================*/
.meta
{
  background: #f4f5fd;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  border-collapse: collapse;
  font-size: 12px;
  line-height: 17px;
  margin: 6px 0 2px -2px;
  width: 718px;
}

.meta th,
.meta td
{
  
}

.meta th
{
  color: #474f79;
  font-weight: bold;
  padding: 0 0 0 8px;
  text-align: left;
  white-space: nowrap;
}

.meta td
{
  padding: 0 8px 0 7px;
  width: 100%;
}

.meta tr:first-child th,
.meta tr:first-child td
{
  padding-top: 4px;
}

.meta tr:last-child th,
.meta tr:last-child td
{
  padding-bottom: 4px;
}

/*==============================================================================
 Forms
==============================================================================*/
.form
{
  margin-bottom: 12px;
  padding-left: 97px;
  position: relative;
}

.form-label
{
  left: 0;
  position: absolute;
  text-align: right;
  top: 1px;
  width: 85px;
}

.form-label,
.form-label-wide
{
  color: #8c95c9;
}

.req
{
  position: absolute;
  left: 87px;
  margin-top: -2px;
}

.form-textbox
{
  background: #fff;
  border-top: 1px solid #727789;
  border-left: 1px solid #727789;
  border-right: 1px solid #acb1c4;
  border-bottom: 1px solid #acb1c4;
  color: #000;
  padding: 2px;
  width: 308px;
}

.split .form-textbox
{
  width: 288px;
}

.form-wide
{
  width: 706px;
}

.form-small
{
  width: 140px;
}

.form-checkbox
{
  font-size: 14px;
}

.form-checkbox .fake-checkbox
{
  display: block;
  float: left;
  height: 13px;
  margin-top: 2px;
  margin-right: 2px;
  position: relative;
  overflow: hidden;
  width: 13px;
}

.form-checkbox .fake-checkbox input
{
  /* Move it up/left so it doesn't scroll the span down/right when focussed */
  position: absolute;
  height: 1px;
  left: -20px;
  top: -20px;
  width: 1px;
}

.form-checkbox .fake-checkbox span
{
  /* Position over the top of the real checkbox, so that the real
     checkbox is hidden but can still be focussed by keyboard */
  background: url(/images/checkbox.gif) no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 13px; /* For IE6 */
}

.form-checkbox .unchecked .fake-checkbox span
{
  background-position: 0 0;
}

.form-checkbox .checked .fake-checkbox span
{
  background-position: 0 -13px;
}

.form-checkbox label
{
  border: 1px dotted #fff;
  cursor: pointer;
  padding: 0 3px;
}

.form-checkbox label.focus
{
  border-color: #8c95c9;
}

.form-buttons
{
  margin-top: -5px;
  padding-left: 97px;
}

.form-buttons input,
.form-buttons button,
.form-button
{
  background: #474f79;
  border-top: 1px solid #848aa6;
  border-left: 1px solid #848aa6;
  border-right: 1px solid #24293e;
  border-bottom: 1px solid #24293e;
  color: #fff;
  font-size: 14px;
  margin-right: 5px;
  outline-color: #fff;
  padding: 1px 6px;
}

.form-buttons input.disabled-button,
.form-buttons button.disabled-button,
.form-button-disabled
{
  color: #bfc1d2;
}

.form-errors
{
  color: #f00;
  font-weight: bold;
  margin-bottom: 
}

.form-error
{
  color: #f00;
  margin-left: 3px;
}

/*==============================================================================
 Homepage About box
==============================================================================*/
.about
{
  padding: 10px 10px 10px 111px;
}

.about table
{
  border-collapse: collapse;
  margin-top: 4px;
}

.about th
{
  padding: 1px 14px 7px 0;
  text-align: right;
  vertical-align: top;
  width: 84px;
}

.about td
{
  padding: 1px 0 7px 0;
  vertical-align: top;
  width: 286px;
}

.about-icons
{
  padding: 8px 0 0 98px;
}

.about-icons a
{
  margin-right: 5px;
}

.about-photo
{
  border: 1px solid #404664;
  float: right;
}

/*==============================================================================
 Contact Page
==============================================================================*/
/* Left */
.contact-email-copy
{
  color: #8c95c9;
  font-size: 13px;
  margin-top: 3px;
  padding-left: 5px;
}

/* Right */
.contact-email
{
  background: url(/images/email.png) no-repeat -1px 0;
  height: 26px;
  padding: 6px 0 0 39px;
}

.contact-buttons
{
  padding-left: 102px;
}

.contact-twitter
{
  background: url(/images/twitter.png) no-repeat -1px 0;
  height: 26px;
  margin-bottom: 11px;
  padding: 6px 0 0 39px;
}

.contact-facebook
{
  background: url(/images/facebook.png) no-repeat -1px 0;
  height: 26px;
  margin-top: 11px;
  margin-bottom: 11px;
  padding: 6px 0 0 39px;
}

.contact-linkedin
{
  background: url(/images/linkedin.png) no-repeat -1px 0;
  height: 26px;
  margin-top: 11px;
  margin-bottom: 0;
  padding: 6px 0 0 39px;
}

.contact-smallprint
{
  margin: 5px -11px -16px 0;
  text-align: right;
}

.contact-smallprint,
.contact-smallprint a
{
  color: #9aa1c4;
}

.contact-smallprint small
{
  font-size: 9px;
  line-height: 1;
}

.contact-alberon
{
  background: url(/images/contact-alberon-leaves.gif) no-repeat right top;
  margin-top: -13px;
  margin-right: -13px;
  min-height: 73px;
  padding-top: 12px;
  padding-right: 100px;
}

.contact-alberon p
{
  background: url(/images/contact-alberon-logo.gif) no-repeat;
  margin: 0;
  padding-top: 30px;
}

/*==============================================================================
 Photo gallery
==============================================================================*/
.photo-gallery
{
  padding-bottom: 16px;
}

.photo-gallery h2
{
  background: #f4f5fd;
  border-top: 1px solid #cfd6fb;
  border-bottom: 1px solid #cfd6fb;
  color: #666f9b;
  font-size: 14px;
  font-weight: bold;
  line-height: 30px;
  margin: 16px 0 0 0;
  padding: 0 12px 0 16px;
}

.photo-gallery h2.first
{
  border-top: none;
  margin-top: 0;
}

.photo-gallery-entry
{
  float: left;
  margin: 9px 0 0 9px;
}

.photo-gallery-image a
{
  border: 1px solid #404664;
  display: block;
}

.photo-gallery-image img
{
  display: block;
}

.photo-gallery-caption
{
  color: #474f79;
  font-size: 12px;
  font-style: italic;
  text-align: center;
}

/*==============================================================================
 Single photo
==============================================================================*/
.photo-large
{
  padding: 14px;
}

.photo-large img
{
  display: block;
}

.photo-large-title
{
  color: #474f79;
  font-size: 12px;
  font-weight: bold;
  line-height: 24px;
  margin-top: -14px;
  padding-top: 4px;
  padding-left: 3px;
}

/*==============================================================================
 Error pages
==============================================================================*/
.error
{
  background: url(/images/error.png) right 6px no-repeat;
  min-height: 160px;
  padding-right: 247px;
  padding-top: 33px;
}

.error p
{
  margin-bottom: 1.2em;
}

/*==============================================================================
 Footer
==============================================================================*/
.footer
{
  margin-top: -8px;
  margin-bottom: 13px;
}

.footer,
.footer a
{
  color: #fff;
}

.footer p
{
  margin: 0;
}

.footer-about
{
  float: left;
  font-size: 13px;
  padding-left: 9px;
}

.footer-back
{
  float: left;
  font-size: 14px;
  font-weight: bold;
  padding-left: 112px;
}

.footer-copyright
{
  float: right;
  padding-top: 2px;
  padding-right: 17px;
}

.footer-copyright small
{
  font-size: 11px;
}

.footer-copyright .middot
{
  font-weight: bold;
}

.footer-copyright .pi
{
  cursor: default;
  font-family: "Times New Roman", Times, serif;
  font-size: 14px;
  margin-left: 5px;
}

/*==============================================================================
 Lightbox
==============================================================================*/
div#nyroModalFull
{
  color: #777;
  font-size: 12px;
}

div#nyroModalLoading
{
  background: #fff url(/nyromodal/img/ajaxLoader.gif) center center no-repeat;
  height: 150px;
  border: 14px solid #fff;
  border-bottom-width: 28px;
  text-indent: -9999em;
  width: 150px;
}

div#nyroModalLoading.error
{
  background: #fff;
  border: 4px solid #f66;
  height: 100px;
  line-height: 20px;
  padding: 20px;
  text-indent: 0;
  width: 300px;
}

div#nyroModalWrapper
{
  background: #fff;
  border: 14px solid #fff;
  border-top-width: 28px;
}

h1#nyroModalTitle
{
  color: #474f79;
  font-size: 12px;
  left: 3px;
  line-height: 24px;
  margin: 0;
  padding: 0;
  position: absolute;
  top: -24px;
}

a#closeBut
{
  color: #a3a8bc;
  line-height: 24px;
  font-size: 12px;
  position: absolute;
  right: 0;
  text-decoration: none;
  top: -24px;
}

a#closeBut:hover
{
  color: #474f79;
}

div#nyroModalContent
{
  overflow: auto;
}

div.wrapper div#nyroModalContent
{
  padding: 5px;
}

div.wrapperImg div#nyroModalContent
{
  overflow: hidden;
  position: relative;
  text-align: center;
}

div.wrapperImg img
{
  vertical-align: baseline;
}

div.wrapperImg div#nyroModalContent div {
  background: black;
  border: 1px white dotted;
  bottom: 0;
  left: 0;
  margin: 10px;
  opacity: 0.2;
  filter: alpha(opacity=20);
  overflow: hidden;
  padding: 10px;
  position: absolute;
}

div.wrapperImg div#nyroModalContent div:hover
{
  cursor: help;
  opacity: 0.5;
  filter: alpha(opacity=50);
}

a.nyroModalPrev,
a.nyroModalNext
{
  cursor: pointer;
  height: 100%;
  outline: none;
  position: absolute;
  text-indent: -9999em;
  top: 0;
  width: 40%;
  z-index: 105;
}

div.wrapperSwf a.nyroModalPrev,
div.wrapperSwf a.nyroModalNext,
div.wrapper a.nyroModalPrev,
div.wrapper a.nyroModalNext
{
  height: 60%;
  width: 20%;
}

a.nyroModalPrev
{
  background: url(/images/lightbox-prev-off.png) left 45% no-repeat;
  left: -14px;
}

a.nyroModalPrev:hover
{
  background-image: url(/images/lightbox-prev-on.png);
}

a.nyroModalNext
{
  background: url(/images/lightbox-next-off.png) right 45% no-repeat;
  right: -14px;
}

a.nyroModalNext:hover
{
  background-image: url(/images/lightbox-next-on.png);
}

