html,
body
{
    margin: 0;
    background: #fff;
    color: black;
    font-size: 12px;
    font-family: 'Univers LT W02 55 Roman', Helvetica, Arial, sans-serif;
    line-height: 14px;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

img
{
    border: 0 none;
    /*
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-user-drag: none;
    */
}

sub
{
    font-size: 90%;
}

img
{
    border: 0 none;
    vertical-align: middle;
}

a
{
    text-decoration: underline;
    color: #000;
}

h1,
h2
{
    font-size: 100%;
    margin: 0;
}

p
{
    margin: 0 0 15px 0;
}

form,
fieldset
{
    border: 0 none;
    padding: 0;
    margin: 0;
}

input[type=text],
input[type=password],
input[type=submit],
textarea,
select,
button
{
    font-family: 'Univers LT W02 55 Roman', Helvetica, Arial, sans-serif;
    font-size: 12px;
    background: #eee;
    color: #000;
    min-height: 20px;
    line-height: 20px;
    margin: 0;
    padding: 0;
    border: 0 none !important;
    vertical-align: top;
}

button::-moz-focus-inner { padding: 0; border: 0 }

input[type=text]:focus,
input[type=password]:focus,
input[type=submit]:focus,
textarea:focus,
select:focus
{
    -webkit-box-shadow: 0px 0px 4px rgba(0,0,0,0.7);
    -moz-box-shadow: 0px 0px 4px rgba(0,0,0,0.7);
    box-shadow: 0px 0px 4px rgba(0,0,0,0.7);
    border-color: #999;
    outline: none;
}

button
{
    background: #fff;
    cursor: pointer;
    border: 0 none;
    text-align: left;
}

table
{
    width: 100%;
    border: 0 none;
    border-collapse: collapse;
}

td,
th
{
    font-weight: normal;
    padding: 3px 7px 3px 0;
    border-bottom: 1px solid #aaa;
}

thead th,
thead td
{
    padding-bottom: 15px;
}

.add-lightbox button
{
    line-height: 12px;
    height: 12px;
    min-height: auto;
    width: auto;
    padding: 0;
    display: block;
    text-align: left;
    text-indent: 0;
}

.add-lightbox button:hover
{
    background-color: black;
    color: white;
    cursor: pointer;
}

.col
{
    position: relative;
    float: left;
}

.grid-2 .col
{
    width: 48%;
    margin-left: 4%;
}

.grid-2 .col:nth-child(2n+1)
{
    margin-left: 0;
}

.news
{
    display: table;
    border-top: 1px solid #aaa;
    width: 100%;
    margin: 0 0 7px 0;
}

.news .news-row
{
    display: table-row;
    vertical-align: top;
}

.news .news-col
{
    display: table-cell;
    vertical-align: top;
    padding: 7px 0;
    width: 25.3%;
    border-bottom: 1px solid #aaa;
    min-height: 1px;
}

.news .description
{
    width: 50.6%;
}

.news .read-more
{
    text-align: left;
    width: 24%;
}

.lightbox
{
    display: table;
    border-top: 1px solid #aaa;
    width: 100%;
    margin: 0 0 7px 0;
}

.lightbox .lightbox-row
{
    display: table-row;
    vertical-align: top;
}

.lightbox .lightbox-col
{
    vertical-align: top;
    padding: 7px 0;
    width: 25%;
    border-bottom: 1px solid #aaa;
    display: table-cell;
}

.lightbox .lightbox-col p
{
    margin: 0;
}

.lightbox a,
#caption a
{
    text-decoration: none;
}

.lightbox a:hover,
#caption a:hover
{
    background-color: black;
    color: white;
    cursor: pointer;
}

.toolbar a
{
    text-decoration: none;
}

.toolbar a:hover
{
    background-color: black;
    color: white;
    cursor: pointer;
}

.scrollable-container
{
    position: relative;
    overflow: hidden;
    width: 100%;
}

.contact-sheet
{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    border-top: 1px solid #aaa;
    height: 100%;
}

.contact-sheet ul
{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style-type: none;
    display: block;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #aaa;
}

.contact-sheet li
{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 25%;
    height: 25%;
    float: left;
    border-left: 1px solid #aaa;
    padding: 21px 14px;
}

.contact-sheet.sheet-4 li
{
    width: 50%;
    height: 50%;
}

.contact-sheet li:first-child
{
    border-left: 0 none;
}

.contact-sheet a
{
    text-decoration: none;
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}

.contact-sheet .image-thumb
{
    background-color: #fff;
}

.contact-sheet .image-title,
.contact-sheet .image-thumb
{
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.contact-sheet .image-title,
{
    -ms-filter: "progid:DXImageTransform.Microsoft.Chroma(color='white')";
}

.contact-sheet .image-thumb
{
    visibility: hidden;
    text-align: center;
    line-height: 100%;
    width: 100%;
    height: 100%;
}

.contact-sheet .image-thumb img
{
    display: inline;
    line-height: 100%;
    vertical-align: middle;
}

.add-lightbox
{
    margin: 15px 0 0 0;
}

.gallery-pager
{
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: 100%;
}

.gallery-pager li
{
    margin: 0;
    padding: 0;
    display: inline-block;
}

.checkbox
{
    margin: 0 0 15px 0;
    padding: 0;
    list-style-type: none;
}

.checkbox li
{
    margin: 0;
    padding: 0;
}

.checkbox li a
{
    padding: 2px 0 3px 24px;
    background: url(/img/common/icon-radio-off.png) no-repeat 0 100%;
    display: block;
}

.checkbox li.active
{
    padding: 2px 0 3px 24px;
    background: url(/img/common/icon-radio-on.png) no-repeat 0 100%;
    color: black;
}

ul.warning,
ul.errors
{
    color: red;
    list-style-type: none !important;
    padding: 4px 0;
    margin: 1px 0 14px 0;
    background: #fff;
}

.warning li,
.errors li
{
    margin: 0;
    padding: 0;
    background: none !important;
}

.zend_form,
.zend_form dl,
.zend_form dt,
.zend_form dd
{
    margin: 0;
    padding: 0;
}

.zend_form dt
{
    display: none;
}

.zend_form fieldset
{
    border: 0;
    margin: 0 0 17px 0;
    padding: 0;
}

.zend_form dl dt
{
    margin: 0;
    padding: 0;
    display: block;
    float: left;
    width: 25%;
    min-height: 4em;
}

.zend_form dl dt label
{
    border-top: 1px solid #aaa;
    padding: 3px 0;
    display: block;
    color: black;
    margin-right: 18px;
}

.zend_form dl dt label.required:after
{
    content: ' *';
}

.zend_form dl dd
{
    float: left;
    width: 75%;
    min-height: 4em;
    margin: 0;
    padding: 0 0 10px 0;
    display: block;
    border-top: 1px solid #aaa;
}

.zend_form button
{
    border: 1px solid black !important;
    text-align: left;
    text-indent: 7px;
    width: 100%;
    margin-top: -4px;
}

.overTxtLabel
{
    font-size: 12px;
    margin: 1px 0 0 -4px;
    line-height: 20px;
    font-family: 'Univers LT W02 55 Roman', Helvetica, Arial, sans-serif;
    color: #aaa;
}

.divider
{
    padding-bottom: 7px;
    margin-bottom: 15px;
    border-bottom: 1px solid #aaa;
}

.clear
{
    clear: both;
}

.next
{
    display: block;
    float: right;
}

.back
{
    display: block;
    float: left;
}

.full
{
    width: 100%;
}

#layout
{
    width: 100%;
    height: 100%;
}

#layout>.inner
{
    padding: 66px 21px 56px 21px;
    position: relative;
}

#frame
{
    position: relative;
    width: 66.2%;
    float: right;
}

#content
{
    margin-top: 66px;
    position: relative;
    width: 100%;
}

#frame>.scrollable-container
{
    margin-top: 66px;
}

.scrollable-container>#content
{
    margin-top: 0;
    position: absolute;
    top: 0;
}

#subnav
{
    width: 27.4%;
    float: left;
    margin-top: 66px;
    margin-right: 5%;
}

.grid-image #frame
{
    width: 100%;
}

.grid-image #subnav
{
    float: none;
    position: absolute;
    bottom: 56px;
    left: 21px;
}

.grid-image #subnav nav
{
    margin: 15px 0 0 0;
}

.grid-image #subnav p
{
    margin: 0;
}

.grid-image #caption
{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 27.4%;
    padding: 18px 5% 0 0;
}

.grid-gallery #caption
{
    position: absolute;
    bottom: 56px;
    left: 21px;
    width: 27.4%;
    padding: 18px 5% 0 0;
}

.grid-image #caption p,
.grid-gallery #caption p
{
    margin: 18px 0 0 0;
}

.grid-common #content p
{
    padding-right: 50%;
}

#caption a
{
    text-decoration: none;
}

#caption nav
{
    margin: 15px 0 0 0;
}

#gallery
{
    position: relative;
    width: 100%;
    height: 100%;
    text-align: left;
}

#gallery img
{
    display: block;
}

#gallery img.img-full,
#gallery img.img-half
{
    margin-left: 33.8%;
}

#content>#gallery img.img-full
{
    margin-left: 0;
}

.gallery-prev,
.gallery-next
{
    display: block;
    position: absolute;
    top: 50%;
    width: 21px;
    height: 56px;
    margin-top: -28px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    text-indent: -999em;
    z-index: 9999;
    cursor: pointer;
}

.gallery-up,
.gallery-dn
{
    display: block;
    position: absolute;
    left: 50%;
    width: 56px;
    height: 21px;
    margin-left: -28px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    text-indent: -999em;
    z-index: 9999;
    cursor: pointer;
}

.gallery-prev
{
    background-image: url(/img/common/arrow-prev.png);
    left: -21px;
}

.gallery-next
{
    background-image: url(/img/common/arrow-next.png);
    right: -21px;
}

.gallery-up
{
    background-image: url(/img/common/arrow-up.png);
    top: 48px;
}

.gallery-dn
{
    background-image: url(/img/common/arrow-dn.png);
    bottom: -21px;
}

.gallery-prev:hover,
.gallery-next:hover,
.gallery-up:hover,
.gallery-dn:hover
{
    background-color: #ccc;
}

header
{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 66px;
    background: #fff;
}

header .inner
{
    margin: 18px 21px;
    position: relative;
}

header #logo
{
    position: absolute;
    left: 0;
    top: 0;
    width: 15.5%;
    height: 56px;
}

header #logo a
{
    text-decoration: none;
    display: inline-block;
    padding: 0;
    color: black;
}

nav a
{
    text-decoration: none;
    display: inline-block;
    margin: -1px 0 0 -1px;
    padding: 1px;
}

nav a:hover,
nav a.active,
nav button:hover,
header #logo a:hover,
footer a:hover
{
    background-color: black;
    color: white;
    cursor: pointer;
}

nav ul
{
    float: left;
    list-style-type: none;
    width: 15.5%;
    margin: 0;
    padding: 0;
}

header nav
{
    position: absolute;
    top: 0;
    left: 33.8%;
    width: 66.2%;
}

header nav ul
{
    margin-left: 1.4%;
    width: 23.95%;
}

nav ul:first-child
{
    margin-left: 0;
}

nav ul li
{
}

nav ul li a
{
    display: inline-block;
    padding: 2px 1px;
    text-decoration: none;
    color: black;
    margin: -2px 0 0 -1px;
    white-space: nowrap;
}

nav ul li.active a
{
    background-color: black;
    color: white;
}

footer
{
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 9px;
    width: 100%;
}

footer a
{
    text-decoration: none;
}

footer .inner
{
    margin: 18px 21px;
}

footer .terms-conditions
{
    text-align: right;
}

.inner:after,
header nav:after,
.grid-1:after,
.grid-2:after,
.grid-3:after,
.grid-4:after,
.grid-5:after,
.grid-6:after,
.contact-sheet ul:after,
.news-row:after,
#page:after
{
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
    overflow: hidden;
}
