body {
    position: relative;
    min-width: 960px;
}

body {
    font-family: 'Raleway', sans-serif;
    -webkit-text-stroke: 0.2px;
    font-size: 16px;
    font-weight: 500;
    color: #535353;
    background: url('../img/header.gif') repeat-x top;
}

body.amsler {
    background: none;
    margin: 0;
    border: 0;
    min-width: 0px;
}

a {
    text-decoration: none; 
    color: #5ac792;
}


.with-aside { background-image: url('../img/header-with-aside.gif'); }

.wrapper { background: url('../img/footer.gif') repeat-x bottom; }

.body { background: url('../img/header.jpg') no-repeat top; }

.with-aside .body { background-image: url('../img/header-with-aside.jpg'); }

.screen {
    width: 960px;
    margin: 0 auto;
}

.body .screen { padding-bottom: 30px; }

.top { height: 127px; }

.top h1 {
    position: absolute;
    z-index: 3;
    left: 50%;
    margin: 0px;
    margin-left: -137px;
}

.top h1 a {
    display: block;
    width: 275px;
    height: 125px;
    text-indent: -9999px;
    margin-top: 10px;
    /*background: url('../img/logo.png') no-repeat center;*/
}

.top .toolbar {
    height: 40px;
    z-index: 100;
}

.top .mobile-menu-box { display: none; }

.top ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.top ul li { float: left; }

.top .lang { float: left; }

.top .lang li { margin-top: 10px; }

.top .lang li a {
    display: block;
    width: 24px;
    height: 14px;
    border: 3px solid #6ec79c;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: 0px -14px;
}

.lang .active a {
    border-color: #bee8d4 !important;
    background-position: 0px 0px !important;
}

.it_IT a { background-image: url('../img/icons/it_IT.png'); }

.en_EN a { background-image: url('../img/icons/en_EN.png'); }

.top .call {
    float: right;
    padding-top: 5px;
    z-index: 4;
}

.top .call h3 {
    float: left;
    width: 120px;
    text-align: right;
    margin: 0;
    font-size: 10px;
    font-weight: 500;
    color: #154e32;
    text-transform: uppercase;
}

.top .call ul { float: left; }

.top .call ul li { margin-left: 10px; }

.top .call ul li a {
    display: block;
    padding-left: 30px;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    background-repeat: no-repeat;
    background-position: left;
}

.top .call-fb {
    background-image: url('../img/icons/fb.png');
    background-position: 0px 0px;
    background-repeat: no-repeat;
    width: 24px;
    height: 24px;
    display: none;
}

.top .call-fb:hover {
    background-position: 0px -28px;
}

.top .call-phone a { background-image: url('../img/icons/phone.png'); }

.top .call-email a { background-image: url('../img/icons/mail.png'); }

.top nav { line-height: 88px; }

.top .nav-sx {
    float: left;
    width: 630px;
}

.top .nav-dx { float: left; }

.top nav li { }

.top nav li a {
    display: block;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    color: #88ac9b;
}

.top nav li a.active { color: #154e32; }

.top .nav-sx > li > a { padding-right: 20px; }

.top .nav-dx > li > a { padding-left: 20px; }

.top nav li ul {
    position: absolute;
    margin-left: -13px;
    margin-top: -30px;
}

.top .nav-dx li ul { margin-left: 6px; }

.ghost { display: none; }

.top nav li ul li {
    position: relative;
    z-index: 4;
    float: none;
    line-height: 40px;
    margin: 0px 4px;
    padding: 0px 10px;
    background: #fff url('../img/submenu-div.png') no-repeat bottom;
}

.submenu {
    position: absolute;
    z-index: 3;
    width: 100%;
    height: 100%;
}

.submenu-sx {
    position: absolute;
    width: 4px;
    left: 0px;
    height: 100%;
    background: url('../img/submenu-dx.png') no-repeat left top;
}

.submenu-dx {
    position: absolute;
    width: 4px;
    right: 0px;
    height: 100%;
    background: url('../img/submenu-sx.png') no-repeat right top;
}

.submenu-bt {
    position: absolute;
    width: 100%;
    height: 6px;
    bottom: -6px;
    background: url('../img/submenu.png');
}

.submenu-bg {
    position: absolute;
    width: 100%;
    height: 100%;
}

footer { background: url('../img/footer.jpg') no-repeat bottom; }

.shortcuts {
    display: table;
    height: 52px;
    text-align: center;
    margin-top: 0 auto;
}


.horizontal-list {
    min-width: 696px;
    min-height: 45px;
    list-style: none;
}

.horizontal-list li { display: inline; }

.horizontal-list li a {
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    color: #b6edd2;
    padding-left: 10px;
    padding-right: 10px;
}

ul .horizontal-list li a:hover { color: #2b6448; }

/* .shortcuts li {
        height:20px;
		text-align: center;
    }

        .shortcuts li a {
            display: inline;
            font-size: 14px;
            font-weight: 500;
            text-transform: uppercase;
            text-decoration: none;
            color: #b6edd2;
            padding: 20px 16px;
        }

            .shortcuts li a:hover {
                color: #2b6448;
            }*/

.location {
    margin-top: 0px;
    height: 104px;
    clear: both;
}

.location article {
    float: left;
    width: 25%;
    font-weight: 500;
}

.location article header {
    margin: 0px;
    padding-left: 20px;
    font-size: 20px;
    text-transform: uppercase;
    color: #fff;
    background: url('../img/bullet2.png') no-repeat left 2px;
}

.location article p {
    margin: 0px;
    padding-left: 20px;
    color: #46775f;
    font-size: 12px;
}

.location a {
    color: #46775f;
}

.notes {
    clear: both;
    line-height: 29px;
}

.notes p { margin: 0px; }

.notes p, .statics li a {
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
}

.notes ul {
    margin: 0;
    padding: 0;
}

.social {
    float: left;
    margin-left: 38px;
    margin-right: 5px;
    margin-top: -5px;
}

.social li {
    float: left;
    margin: 0px 8px;
}

.social li a {
    display: block;
    width: 24px;
    height: 28px;
    text-indent: -9999px;
    background-position: 0px 0px;
}

.social li a:hover { background-position: 0px -28px; }

.social-youtube a { background-image: url('../img/icons/yt.png'); }

.social-flickr a { background-image: url('../img/icons/fk.png'); }

.social-fb a { background-image: url('../img/icons/fb.png'); }

.statics { float: right; }

.statics li { float: left; }

.statics li a {
    display: block;
    padding: 0px 10px;
}



.cover {
    clear: both;
    position: relative;
    height: 396px;
}

.intro { width: 400px; }

.intro table {
    border-collapse: collapse;
    width: 100%;
}

.intro table td {
    height: 340px;
    vertical-align: middle;
}

.with-aside .intro table td { height: 240px; }

.intro h2 {
    margin: 0;
    font-size: 57px;
    color: #154e32;
    font-weight: 100;
    line-height: 60px;
    text-transform: uppercase;
}

.intro p {
    margin: 0;
    font-size: 12px;
    line-height: 20px;
    color: #2C6449;
}

.cover figure {
    position: absolute;
    z-index: 2;
    right: -11px;
    top: -12px;
}


.aframed { text-decoration: none; }

.framed { }

.framed-sx {
    padding-left: 13px;
    background: url('../img/framed/sx.png') no-repeat left bottom;
}

.framed-dx {
    padding-right: 13px;
    background: url('../img/framed/dx.png') no-repeat right bottom;
}

.framed-bt {
    padding-bottom: 11px;
    background: url('../img/framed/bt.png') repeat-x bottom;
}

.framed-img {
    padding: 10px;
    text-align: center;
    background: #fff;
}

.framed img { }

.title {
    position: relative;
    margin: 20px 0px;
    color: #154e32;
    background: url('../img/title/bg.gif') repeat-x bottom;
}

.title-sx { background: url('../img/title/sx.gif') no-repeat left bottom; }

.title-dx { background: url('../img/title/dx.gif') no-repeat right bottom; }

.title h2 {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    text-transform: uppercase;
    padding-left: 20px;
}

.title a {
    position: absolute;
    right: 15px;
    top: 8px;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    color: #154e32;
}

.pagination {
    clear: both;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 0px;
    margin-right: 70px;
    min-height: 35px;
}

.pagination a { text-decoration: none; }

.pagination-prev { float: left; }

.pagination-next { float: right; }

.pagination-prev a, .pagination-next a {
    display: block;
    text-transform: uppercase;
}

.pagination-prev a {
    padding-left: 24px;
    background: url('../img/prev.gif') no-repeat left;
}

.pagination-next a {
    padding-right: 24px;
    background: url('../img/next.gif') no-repeat right;
}

.pagination-prev a, .pagination-next a, .pagination-pages .active { color: #2b6448; }

.pagination-pages { text-align: center; }

.pagination-pages a { color: #808080; }


/**** home ***/

.focus { }

.focus article {
    position: relative;
    float: left;
    width: 50%;
}

.focus article figure {
    float: left;
    margin-top: 10px;
    margin-right: 10px;
}

.focus article h3 {
    margin: 0;
    padding-bottom: 5px;
    font-size: 23px;
    color: #2b6448;
}

.focus article h3 a {
    margin: 0;
    padding-bottom: 5px;
    font-size: 23px;
    color: #2b6448;
    text-decoration: none;
}

.focus article p { margin: 0; }

.focus article .a {
    position: absolute;
    bottom: 0px;
    display: inline-block;
    padding-right: 24px;
    background: url('../img/bullet.gif') no-repeat right;
    color: #2b6448;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
}

.news { }

    .news article {
        float: left;
        width: 330px;
        margin-bottom: 30px;
    }

.news article .box { padding-right: 28px; min-height: 300px; }
.news article .box header { min-height: 95px;}

.news article:nth-child(3n + 1) { width: 300px; }

.news article:nth-child(3n + 1) .box { padding-right: 0px; }

.news article h3 {
    margin: 0;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 500;
    color: #367f5b;
}

.news article h3 mark {
    display: block;
    font-size: 24px;
    line-height: 22px;
    background: none;
    color: #154e32;
}

.news article p a {
    color: #2b6448;
    text-decoration: none;
}

.list { }

.list ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.list ul li { clear: both; }

.list ul li a {
    display: block;
    font-size: 16px;
    color: #808080;
    border-bottom: 1px solid #d1e9dd;
    padding: 16px 0px;
    text-decoration: none;
}

.list ul li a strong {
    float: left;
    padding-right: 24px;
    color: #2b6448;
    font-weight: 500;
    background: url('../img/bullet.gif') no-repeat right;
}

.list ul li a span { float: left; }

.list-with-dates ul li a span {
    display: block;
    float: none;
    margin-left: 115px;
}

/*** clearfix ***/

.list ul li a:before,
.list ul li a:after {
    content: " ";
    display: table;
}

.list ul li a:after { clear: both; }

.list ul li a { *zoom: 1; }

/****/

/***** content ****/

.main-column {
    position: relative;
    z-index: 3;
    float: left;
    width: 630px;
    margin-top: -114px;
}

.subsubmenu {
    height: 49px;
    background: url('../img/subsubmenu.gif') no-repeat 5px 100%;
}

.subsubmenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.subsubmenu ul li {
    float: left;
    background: url('../img/subsubmenu-div.gif') no-repeat bottom right;
}

.subsubmenu ul li a {
    display: block;
    padding-right: 40px;
    padding-left: 28px;
    line-height: 40px;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    color: #88ac9b;
}

.subsubmenu ul li a.active { color: #2b6448; }

.right-column {
    float: right;
    width: 300px;
    background: #6ec79c url('../img/aside.gif') no-repeat top left;
    border-bottom: 10px solid #dbdbdb;
}

aside .box { padding: 14px 26px; }

aside .box h3 {
    margin: 0;
    line-height: 18px;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 500;
    color: #2b6448;
}

aside .box h3 a {
    margin: 0;
    text-decoration: none;
    line-height: 18px;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 500;
    color: #2b6448;
}

aside .box h3 em {
    display: block;
    font-size: 14px;
    text-transform: none;
    color: #367f5b;
}

/*** box list ***/

.box-nav { }

.box-nav ul {
    list-style: none margin:0;
    padding: 0;
}

.box-nav ul li { padding: 5px 0px; }

.box-nav ul li a {
    display: block;
    font-size: 14px;
    padding-left: 24px;
    color: #fff;
    background: url('../img/bullet2.png') no-repeat left top;
    text-decoration: none;
}

.box-nav ul li a.active {
    color: #2b6448;
    background-image: url('../img/bullet3.png');
}

.box-nav ul li a em {
    display: block;
    font-size: 14px;
    font-style: normal;
    color: #bef2d9;
}

/** search **/

.search {
    position: relative;
    margin: 10px 0px;
}

.search span {
    display: block;
    height: 35px;
    background: #a3dcc0;
}

.search input {
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    color: #2b6448;
    margin: 5px;
    width: 200px;
    height: 22px;
    border: none;
    background: none;
}

.search .submit {
    position: absolute;
    top: 0;
    margin: auto;
    right: 0;
    width: 35px;
    height: 35px;
    text-indent: -9999px;
    background: url('../img/buttons/search.gif') no-repeat;
    border: none;
}

/*** gallery **/

.box-gallery { }

.box-gallery figure { padding-top: 20px; }

.box-gallery figure a {
    position: relative;
    display: block;
}

.box-gallery figure a span {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('../img/framed/play.png') no-repeat center;
}

.box-gallery figcaption {
    font-size: 14px;
    color: #fff;
    padding-top: 10px;
}

.box-gallery figcaption a {
    display: inline;
    color: #2b6448;
    text-decoration: none;
}

/*** attachments ***/

.box-attachments { }

.box-attachments ul {
    margin: 15px 5px;
    padding: 0;
    list-style: none;
}

.box-attachments ul li { margin: 10px 0px; }

.box-attachments ul li a {
    display: block;
    font-size: 14px;
    color: #fff;
    padding: 10px 0px;
    padding-left: 46px;
    background: url('../img/icons/attach.png') no-repeat left;
    text-decoration: none;
}

.box-attachments ul li a strong {
    display: block;
    font-weight: normal;
    color: #ffffff;
}

.box-attachments ul li a span {
    display: block;
    font-size: 12px;
    color: #bef2d9;
}

/*** locations ***/

.box-location-list {
    position: relative;
    margin-left: -30px;
    padding-left: 0px !important;
}

.box-location-list article {
    margin: 10px 0px;
    padding: 20px 0px;
    padding-bottom: 30px;
    padding-left: 46px;
    cursor: pointer;
}

.box-location-list header h4 { margin: 0; }

.box-location-list header a {
    font-weight: 500;
    font-size: 20px;
    color: #2b6448;
    text-transform: uppercase;
    text-decoration: none;
}

.box-location-list .addr {
    font-size: 14px;
    color: #fff;
}

.box-location-list .phone {
    font-size: 20px;
    color: #2b6448;
}

.box-location-list .opening {
    padding-top: 5px;
    font-size: 13px;
    color: #fff;
}

.box-location-list .opening strong {
    font-weight: normal;
    color: #2b6448;
}

.box-location-list .active { background: #fff url('../img/contacts.png') no-repeat bottom left; }

.box-location-list .active .addr { color: #808080; }

.box-location-list .active .phone { color: #6ec79c; }

.box-location-list .active .opening { color: #808080; }

.box-location-list .active .opening strong { color: #000; }

/*** quotes **/

.quotes { }

.quotes blockquote {
    margin: 0;
    padding-top: 30px;
    background: url('../img/quote-open.png') no-repeat top left;
}

.quotes blockquote footer {
    font-weight: 500;
    text-align: right;
    padding-top: 30px;
    background: url('../img/quote-close.png') no-repeat top right;
}

.quotes blockquote footer cite {
    display: block;
    font-style: normal;
    color: #2b6448;
}

.quotes blockquote footer em {
    display: block;
    font-style: normal;
}

/*** posts ***/

.posts { }

.posts article { padding: 20px 0px; }

.posts article header h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 400;
    color: #2b6448;
    line-height: 43px;
}

.posts article header h2 strong {
    float: left;
    width: 33px;
    height: 43px;
    margin-right: 10px;
    line-height: 40px;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    background: url('../img/post.png') no-repeat left top;
}

.posts article .gallery {
    position: relative;
    padding: 0px 28px;
    background: #d9d9d9;
}

.posts article .gallery-prev, .posts article .gallery-next {
    position: absolute;
    width: 28px;
    height: 100%;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: center;
}

.posts article .gallery-prev {
    left: 0;
    background-image: url('../img/g-prev.gif');
}

.posts article .gallery-next {
    right: 0;
    background-image: url('../img/g-next.gif');
}

.posts article .gallery-screen {
    width: 100%;
    overflow: hidden;
}

.posts article .gallery-scroll { width: 5000px; }

.posts article .gallery-screen a {
    position: relative;
    float: left;
}

.posts article .gallery-screen a span {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('../img/zoom.png') no-repeat center;
}

.posts article .gallery-screen a img { margin: 7px; }

div.dottavoni .pp_left, div.dottavoni .pp_middle, div.dottavoni .pp_right, div.dottavoni .pp_content {
    color: #fff;
    background: #2b6448 !important;
}

div.dottavoni .pp_close {
    z-index: 4;
    top: -5px !important;
    right: -60px !important;
    width: 93px !important;
    height: 80px !important;
    background: url('../img/buttons/close.png') !important;
}

/*** article details **/

.details { }

.details header h2 {
    font-weight: 500;
    font-size: 30px;
    color: #2b6448;
}

.details header h2 em {
    display: block;
    font-style: normal;
    font-size: 16px;
    color: #808080;
}

/*** contacts **/

.contacts { }

.contacts .map {
    position: relative;
    border: 5px solid #6ec79c;
}

.contacts .map-corner {
    position: absolute;
    right: -5px;
    top: -5px;
    width: 82px;
    height: 80px;
    background: url('../img/map-corner.png') no-repeat;
}

.contacts .map iframe { }

/** form **/

.form {
    position: relative;
    margin-top: 30px;
    padding: 14px 26px;
    background: #6ec79c url('../img/aside.gif') no-repeat 0px 5px;
}

.form h3 {
    margin: 0;
    padding-bottom: 10px;
    line-height: 38px;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
}

.form .field {
    float: left;
    width: 50%;
}

.form .field span, .form .message span {
    display: block;
    padding: 5px;
    margin-bottom: 20px;
    background: #a3dcc0;
}

.form .field-odd span { margin-right: 14px; }

.form .field-even span { margin-left: 14px; }

.form .field input, .form .field select, .form .message textarea, .customfile-feedback, .customfile-feedback-populated, .form .fileupload label, .form .accept label, .form .required {
    width: 100%;
    background: none;
    border: none;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    color: #000;
}

.form .message { clear: both; }

.form .message textarea { height: 140px; }

.form .fileupload label {
    float: left;
    width: 140px;
    line-height: 35px;
    text-transform: lowercase;
}

.form .fileupload > span {
    display: block;
    margin-left: 140px;
}

.form .fileupload input {
    position: absolute;
    top: 0px;
    height: 35px;
    cursor: pointer;
    background: transparent;
    border: 0;
    opacity: 0;
    -moz-opacity: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
    z-index: 999;
}


/*custom upload elements*/

.customfile { position: relative; }

.customfile-feedback, .customfile-feedback-populated {
    display: block;
    width: auto;
    padding: 0px 5px;
    line-height: 35px;
    margin-left: 35px;
    margin-bottom: 20px;
    background: #a3dcc0;
}

.customfile-disabled {
    opacity: .5;
    filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
    cursor: default;
}

.customfile-button {
    float: left;
    width: 35px;
    height: 35px;
    text-indent: -9999px;
    border: none;
    background: url('../img/buttons/browse.gif') no-repeat;
    cursor: pointer;
}

.form .accept {
    clear: both;
    float: left;
    margin-right: 20px;
}

.form .accept label { color: #fff; }

.form .accept label a { color: #fff; }

.form .required {
    float: left;
    width: 200px;
}

.form .submit {
    position: absolute;
    right: 0px;
    bottom: 0px;
    padding-left: 5px;
    padding-top: 10px;
    background: url('../img/buttons/submit.gif') no-repeat;
}

.form .submit .button {
    width: 126px;
    height: 41px;
    font-family: 'Raleway', sans-serif;
    font-size: 20px;
    font-weight: bold;
    text-transform: uppercase;
    color: #2b6448;
    background: none;
    border: none;
}



/**** cms text ***/

.cms-text { font-weight: 400; }

.cms-text strong {
    /*font-weight: 400;*/
    color: #2b6448;
}

.cms-text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cms-text ul li {
    margin: 10px 0px;
    padding-left: 24px;
    background: url('../img/bullet3.png') no-repeat left top;
}

.cms-text ol {
    margin: 0;
    padding-left: 10px;
    list-style: none;
}

.cms-text ol li { margin-top: 20px; }

.amsler .posts {
    width: 96%;
    padding: 2%;
}

    .amsler .posts p {
        padding-top: 10px;
    }

    .amsler .posts img {
        width: 100%;
        padding-top: 10px;
    }