/**
 * Project style sheet.
 *
 * @package    vanilla
 * @subpackage css
 * @author     Loops <evrard at h2a dot lu>
 * @version    SVN: $Id: styles.css 55 2015-02-05 08:22:47Z loops $
 */

/*** Defaults ***/

html { font-size: 62.5%; background: #f9f9f9; }
html, body { height: 100%; }
/* declare the default font and color here */
body, button, input, select, textarea { font-size: 1.2rem; font-size: 12px; font-family: Helvetica, 'Helvetica Neue', Arial, sans-serif; color: #555555; }

h1, .h1 { font-family: 'sintonybold'; font-weight: normal; font-size: 1.5em; text-transform: uppercase; margin: 1em 0 0.5em 0; position: relative; padding-bottom: 1em; }
  h1:after, .h1:after { content: " "; display: block; width: 140px; height: 1px; position: absolute; bottom: 0; left: 0; }
  h1.icon:after, .h1.icon:after { background-image: url(); border-radius: 0; width: 140px; height: 1px;  }
  h1.icon:before, .h1.icon:before { margin-right: 1em; }
h2, .h2 { font-family: 'sintonybold'; font-weight: normal; font-size: 1.4166em; text-transform: uppercase; margin: 0.5em 0 0.5em 0; }
h3, .h3 { font-family: 'sintonybold'; font-weight: normal; font-size: 1.25em; text-transform: uppercase; margin: 0.5em 0 0.5em 0; }
h4, .h4 { font-family: 'sintonybold'; font-weight: normal; font-size: 1.16em; text-transform: uppercase; margin: 0.5em 0 0.5em 0; }
h5, .h5 { font-family: 'sintonybold'; font-weight: normal; font-size: 1em; text-transform: uppercase; margin: 0.5em 0 0.5em 0; }
h6, .h6 { font-family: 'sintonybold'; font-weight: normal; font-size: 1em; border-bottom: 1px solid #ccc; padding-bottom: 0.2em; margin: 0.5em 0 0.5em 0; }

ul, ol { padding-left: 25px; }
li { line-height: 1.5; }
ol ol li,
ol ul li,
ul ol li,
ul ul li { color: #8f8f8f; }

p { line-height: 1.5; }

abbr[title] { border: 0 }

/* do not do that, it provides some issue with the gmap */
/* img { max-width: 100%; } */

a { text-decoration: underline; }
a:hover,
a:active,
a:focus { text-decoration: none; }

table { width: 100%; text-align: left; margin: 2em 0; }
th { font-weight: normal; font-family: 'sintonybold'; text-transform: uppercase; }
td, th { padding: 10px 20px; color: #fff; }
table tbody tr { border-bottom: 1px solid #e3e3e3; }
table tbody tr:nth-child(2n) td,
table tbody tr:nth-child(2n) th { background: #e3e3e3; }

blockquote { font-family: 'rocksalt'; font-weight: normal; font-size: 1.5em; margin: 1em 0; }
  blockquote footer { font-family: 'sintonyregular'; font-weight: normal; padding-left: 45px; position: relative; color: #555555; font-size: 0.6666em; }
    blockquote footer:before { content: ""; display: block; width: 35px; height: 1px; background: #ccc; position: absolute; top: 50%; left: 0; }

      
/*** Custom styles ***/

.font-0 { font-family: Helvetica, 'Helvetica Neue', Arial, sans-serif; font-weight: normal; } /* default font family */
.font-1 { font-family: 'rocksalt'; font-weight: normal; }
.font-2 { font-family: 'sintonyregular'; font-weight: normal; }
.font-2-bold { font-family: 'sintonybold'; font-weight: normal; }

/* signature */
.signature { font-size: 18px; line-height: 1.231; color: #757575; font-family: 'sintonybold'; }
.signature > .font-2-bold { font-size: 16px; line-height: 1; font-family: 'sintonyregular'; }

/* special box */
.boxed, .ck-content img { margin: 0.5em 0; border: 6px solid #fff; box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); max-width: 100%; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }


/*** Elements ***/

.btn, button { display: inline-block; font-family: 'sintonyregular'; font-weight: normal; border: 0; vertical-align: middle; text-decoration: none; padding: 0.4em 10px 0.3em; line-height: 1.231; text-transform: uppercase; margin: 0.5em 0; color: #fff; }
.btn:hover, button:hover, .btn:focus, button:focus, .btn:active, button:active { color: #fff; }

/* accordion */
.acd { display: block; margin-top: 1.5em; }
  .acd-panel.is-acd-close { display: none; }

  .acd-sheet { border-bottom: 1px solid #ccc; }
    .acd-sheet:first-child { border-top: 1px solid #ccc; }

    .acd-title { margin: 0; font-size: 1.25em; }
      .acd-titlelink { padding: 15px 72px 15px 25px; display: block; text-decoration: none; line-height: 1; color: #757575; position: relative; }
      .acd-titlelink:hover { text-decoration: underline; }
      .acd-titlelink:focus { outline: 0; }

      .acd-titlelink:before { display: none; background: transparent; margin-left: 0; border-radius: 0; }
      .acd-titlelink:after { content: ""; display: block; height: 22px; width: 22px; position: absolute; top: 11px; right: 25px; background-position: -169px -128px; }
        .acd-titlelink[aria-expanded="false"]:after { background-position: -169px -128px; }
        .acd-titlelink[aria-expanded="true"]:after { background-position: -129px -128px; background-color: #d5d5d5; }

        .acd-titlelink[aria-expanded="true"]:before { content: " "; display: block; width: 140px; height: 1px; bottom: 0; left: 0; position: absolute; }
        
        .acd-panel.is-acd-open ,
        .acd-titlelink[aria-expanded="true"] { background: #fff; }

     .acd-panel { display: block; overflow: hidden; padding: 15px 25px; }
     
     .acd-footer-close-link-wrapper { text-align: right; }
     
/* pagination */
.pagination{ overflow: hidden; margin: 40px 0 20px; }
  .pagination-item{ display: inline-block; }
   .pagination-link{ display: block; width: 22px; height: 22px; border-radius: 100%; text-align: center; line-height: 22px; font-size: 12px; color: #fff; background: #bcbcbc; text-decoration: none; }
   /* effect */
  .pagination-link:hover,
  .pagination-link:focus,
  .pagination-link:active,
  .pagination-link.active { color: #fff; }
           

/*** Lists ***/
     
/* list1, institution in a slider in large column */   
.list1-listtitle { margin-left: 20px; }
.list1-item { padding-top: 180px; width: 460px; position: relative; }
  .list1-img { position: absolute; top: 0; left: 0; right: 0; z-index: 1;  }
  .list1-title { font-size: 1.1em; color: #333; margin: 0.7em 20px 0; }
  .list1-adr { font-size: 1em; color: #333; margin: 0 20px 0; }
  .list1-fakelink { margin-left: 20px; }
  
.list1-nav { position: absolute; z-index: 2; top: 180px; right: 30px; margin-top: -1.5em; }
  .list1-navlink { display: inline-block; width: 0.8em; height: 0.8em; border-radius: 100%; background-color: #d3d0c9; }
  
  .list1-listlink { background-color: rgba( 255 , 255 , 255 , .5 ); position: absolute; display: inline-block; text-decoration: none; z-index: 3; bottom: 0; padding-bottom: 25px; right: 20px; font-size: 1.2em; color: #999; text-align: center; }
  .list1-listlink:before { position: absolute; bottom: 0; left: 50%; margin-bottom: -20px; margin-left: -20px; }
     
/* list2, item inline, used for news on homepage */     
.list2-listtitle { clear: both; font-size: 1.3em; position: relative; bottom: -3.4em; display: inline; }
.list2-list { border-bottom: 1px solid #cccccc; border-top: 1px solid #cccccc; margin: 20px 0; background: #fff; }
  .list2-item { margin-left: 5em; }
  .list2-link { text-decoration: none; display: block; padding: 13px 0; color: #555555; }
  .list2-link:hover,
  .list2-link:focus,
  .list2-link:active{ color: #555555; }
    .list2-title { display: inline; color: #555555; font-family: 'sintonybold'; font-weight: normal; font-size: 1em; text-transform: none; margin: 0 14px 0 0; padding-right: 16px; position: relative; }
      .list2-title:after { content: ""; display: block; width: 1px; height: 20px; background: #cccccc; position: absolute; top: -2px; right: 0; }
    .list2-summary { display: inline; }
      .list2-fakelink { text-decoration: underline; }
      .list2-fakelink:after { content: "\00a0>"; display: inline; }
      .list2-link:hover .list2-summary .list2-fakelink,
      .list2-link:focus .list2-summary .list2-fakelink,
      .list2-link:active .list2--summary .list2-fakelink { text-decoration: none; }

     
/* list3, institution in a slider in thin column */   
.list3-listtitle { text-align: center; }
.list3-item { padding-top: 145px; width: 230px; position: relative; text-align: center; }
  .list3-img { position: absolute; top: 0; left: 0; right: 0; z-index: 1;  }
  .list3-title { font-size: 1.1em; color: #333; margin: 4.5em 0 0; }
  .list3-adr { font-size: 1em; color: #333; margin: 0; }
  
.list3-nav { position: absolute; z-index: 2; top: 145px; right: 0; left: 0; margin-top: 1.5em; text-align: center; }
  .list3-navlink { display: inline-block; width: 0.8em; height: 0.8em; border-radius: 100%; background-color: #d3d0c9; }
  
/* list4, used for service */
.list4 { margin-left: -30px; }
  .list4-item { float: left; width: 220px; margin: 0 0 48px 30px; position: relative; }
    .list4-link:before { border-radius: 0; background: url(images/list4-shadow.png) 50% 100% no-repeat !important; z-index: 1; position: absolute; bottom: 0; left: 50%; margin-left: -106px; width: 212px; height: 14px; }
    .list4-link:after { content: ""; position: absolute; bottom: -20px; left: 50%; margin-left: -20px; z-index: 2; }
      .list4-box { width: 220px; height: 7.7em; display: table; table-layout: fixed; background: #fff; }
        .list4-title { display: table-cell; text-align: center; vertical-align: middle; border-bottom: 1px #bbbbbb solid; }
        .list4-link:hover .list4-title, .list4-link:active .list4-title, .list4-link:focus .list4-title { color: inherit; }
    
      
  
/* staff list */
.staff-list { margin-left: -23px; }
  .staff-item { float: left; width: 160px; margin-left: 23px; margin-bottom: 30px; }
    .staff-title { border-top: 1px #cccccc solid; margin: 13px 0 0; padding: 0.5em 0.5em 0; font-size: 1.1em; color: #333333; text-transform: none; }
    .staff-post { padding: 0 0.5em; margin: 0; }
  
/* banner */
.banner-content {}
.banner-item { background: #eaeaea; }

.no-js .banner-item + .banner-item { display: none; }

/* gallery */
.gallery-img { max-width: 100%; }
.gallery-figure { position: relative; }
.gallery-figurecaption { position: absolute; bottom: 0; left: 0; right: 0; background-color: #fff; background-color: rgba( 255,255,255,0.9); padding: 0 2em; z-index: 1; text-align: center; }


/*** Forms ***/
.form-row { padding: 10px 20px; line-height: 2em; }
  .form-row label { vertical-align: middle; margin-right: 1em; position: relative; top: -1px; }
  .form-row input[type="text"] { height: 2.5em; border-color: #cccccc; vertical-align: middle; width: 20em; font-size: 1em; }
  .form-row button { height: 2.5em; padding: 0 1em; vertical-align: middle; margin: 0 0 2px; }

/*** Javascripts ***/

/* scrollable */
.js-scrollable-prev, .js-scrollable-next { cursor: pointer; display: block; width: 100px; position: absolute; top: 0; bottom: 0; z-index: 10; opacity: 0.5; }
.js-scrollable-prev:hover, .js-scrollable-next:hover { opacity: 1; }
.ie_lt9 .js-scrollable-prev, ie_lt9 .js-scrollable-next { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; filter: alpha(opacity=50); }
.ie_lt9 .js-scrollable-prev:hover, ie_lt9 .js-scrollable-next:hover { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter: alpha(opacity=100); }

.js-scrollable-prev:before, .js-scrollable-next:before { position: absolute; top: 50%; margin-top: -20px; }
.js-scrollable-prev { left: calc(50% - 580px); }
.js-scrollable-prev:before { left: 30px; }
.js-scrollable-next { right: calc(50% - 580px); }
.js-scrollable-next:before { right: 30px; }

.js-scrollable-prev.\:disabled, .js-scrollable-next.\:disabled { display: none; }

.has-js .js-scrollable { position: relative; overflow: hidden; width: 100%; }
  .has-js .js-scrollable-items { width: 20000em; position: absolute; }
    .has-js .js-scrollable-item { float: left; }
    
/* banner scrollable */
.has-js .js-banner-scrollable { height: 245px; }

/* list1 scrollable */
.has-js .js-list1-scrollable { height: 9.3em; padding-top: 180px; }
.has-js .js-list1-scrollable .js-scrollable-item { overflow: hidden; height: 9.3em; margin-top: -180px; }

/* list3 scrollable */
.has-js .js-list3-scrollable { height: 14em; padding-top: 145px; }
.has-js .js-list3-scrollable .js-scrollable-item { overflow: hidden; height: 14em; margin-top: -145px; }
    
/* gallery scrollable */
.has-js .js-gallery-scrollable { height: 307px; }
.has-js .js-gallery-scrollable .js-scrollable-item { width: 708px; }
/* in accordion */
.has-js .acd .js-gallery-scrollable { height: 286px; }
.has-js .acd .js-gallery-scrollable .js-scrollable-item { width: 658px; }

/* gmap */
.gmap { text-align: center; margin: 20px 0; }
.gmap-img { max-width: 100%; }
.has-js .js-gmap { height: 350px; }
.has-js .js-gmap .font-0 { font-family: Helvetica, 'Helvetica Neue', Arial, sans-serif !important; font-weight: normal !important; }

/*** Layout ***/

.wrap { width: 960px; margin: 0 auto; }

/* second footer */
#second-footer { overflow: hidden;  position: relative; padding-top: 25px; }
#second-footer:before { content: ""; display: block; position: absolute; top: 35px; left: 0; right: 0; z-index: 1; height: 2.8em; }
  .secondfooter-listtitle { display: inline-block; position: relative; margin: 0 0 0 -22px; font-size: 1em; }
  .secondfooter-listtitle:before, .secondfooter-listtitle:after { content: ""; display: block; z-index: 1; position: absolute; top: 6px; bottom: 6px; width: 12px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.5); }
  .secondfooter-listtitle:before { left: 0; }
  .secondfooter-listtitle:after { right: 0; }
    .secondfooter-listtitle-in { position: relative; z-index: 3; padding: 10px 22px; white-space: nowrap; line-height: 2; font-size: 1.4em; vertical-align: middle; display: inline-block; }

  .secondfooter-list { padding: 30px 0 20px; }
    .secondfooter-item { padding: 10px 0 10px 22em; position: relative; }
    .secondfooter-item + .secondfooter-item { border-top: 1px #bcc0ac solid; } 
      .secondfooter-title { display: inline-block; position: absolute; left: 0; top: 1.15em; vertical-align: middle; width: 17em; }
      .secondfooter-title.icon:before { display: none; }
      .secondfooter-title.icon:after { content: ""; border-radius: 0; background-color: transparent; margin-left: 2em; width: 13px; height: 22px; background-position: -12px -129px;}
      .secondfooter-sublist { display: inline; }
        .secondfooter-subitem { display: inline; }
          .secondfooter-sublink { display: inline-block; padding: 9px 15px; border-radius: 4px; background-color: #faf7f3; margin-right: 1em; font-size: 1.1em; text-decoration: none; }
          .secondfooter-subtitle:before { display: inline; content: '- '; }
    
/* footer */
#main-footer-controller { min-height: 100%; padding-bottom: 260px; position: relative; margin-bottom: -235px; min-width: 960px; }
#main-footer { position: absolute; bottom: 0; left: 0; right: 0; z-index: 10; background: #4a5d6f; height: 260px; padding-top: 45px; }
/* reminder */
.footer-reminder { position: absolute; top: 0; left: 0; right: 0; z-index: 1; background: #fff; height: 45px; }
  .footer-reminder:before { content: ""; display: block; position: absolute; bottom: 100%; left: 0; right: 0; height: 14px; background: url('./images/fixed-footer-shadow.png') no-repeat center bottom transparent; }
    .footer-reminder-logo { position: absolute; left: 50%; margin-left: -40.5px; top: 0; margin-top: 8px; }
  .footer-reminder-text { text-transform: uppercase; font-family: 'sintonybold'; font-weight: normal; font-size: 12px; color: #0f263c; margin: 0; line-height: 45px }
  
.js-fixed-footer-show.\:fixed { position: fixed; top: auto; bottom: 0; z-index: 12; }

/* content  with navigation of the main website */
.footer { color: #fff; text-align: center; overflow: hidden; }
  
  /* navigation */
  .footernav-listing { margin-top: 45px; line-height: 12px; }
    .footernav-item { display: inline; margin: 0 10px; position: relative; font-size: 12px; }
      .footernav-item + .footernav-item:before { content: " "; display: block; width: 1px; height: 15px; background: #2c4155; position: absolute; top: 0; left: -10px; }
      .footernav-link { text-transform: uppercase; text-decoration: none; color: #fff; font-size: 12px; line-height: 15px; font-family: 'sintonybold'; font-weight: normal; }
      .footernav-link:hover,
      .footernav-link:focus,
      .footernav-link:active { text-decoration: underline; color: #fff; }
   
  /* address */
  .footeradr { font-style: normal; padding: 15px 0 30px; border-top: 1px solid #2c4155; display: block; margin-top: 65px; font-size: 12px; }
    .footeradr .street-address { position: relative; }
      .footeradr .street-address:before,
      .footeradr .street-address:after { content: "\2022"; margin: 0 5px 0 3px; }
      .footeradr .street-address:after { margin: 0 3px 0 5px; }
      
  #footersignature { display: inline-block; font-size: 11px; color: #fff; text-decoration: none; }
  #footersignature:hover, #footersignature:focus, #footersignature:active { text-decoration: underline; }
  
/* header */
#main-header { background: #fff; border-bottom: 30px solid #fff; padding-bottom: 10px; position: relative; z-index: 3; }
  #main-header-title { text-align: center; margin: 20px 0 0; }
  #main-header-title:after { display: none; }

  #main-header .wrap { position: relative; }

    /* navigation */
    #headernav { position: absolute; bottom: -40px; left: 0; z-index: 1; }
      .headernav-listing { white-space: nowrap; }
      .headernav-item { display: inline-block; height: 30px; }
      .headernav-item + .headernav-item { position: relative; padding-left: 1px; }
      .headernav-item + .headernav-item:before { content: " "; display: block; width: 1px; height: 10px; background: #fff; position: absolute; top: 10px; left: 0; }
        .headernav-link { display: block; height: 30px; line-height: 30px; color: #fff; font-size: 12px; text-decoration: none; font-family: 'sintonybold'; font-weight: normal; text-transform: uppercase; padding: 0 12px; }
        /* effect */
        .headernav-link.active,
        .headernav-link:hover,
        .headernav-link:focus,
        .headernav-link:active { background-color: #fff; box-shadow: 0 0 6px rgba(0, 0, 0, 0.35); color: #656465; position: relative; text-decoration: none; z-index: 1; }
        .headernav-link.active:before,
        .headernav-link:hover:before,
        .headernav-link:focus:before,
        .headernav-link:active:before { content: ""; display: block; background: #fff; position: absolute; top: 0; bottom: 0; right: -1px; left: -1px; z-index: -1; }
        .headernav-link:hover,
        .headernav-link:focus,
        .headernav-link:active { z-index: 2; }

    /* home item */
    /* do it on footernav and headernav at the same time */
    .headernav-homeitem .headernav-link, .footernav-homeitem .footernav-link { position: relative; top: -1px; text-indent: -9999px; width: 16px; background: url(images/home-icon.png) no-repeat center center transparent; display: inline-block; }
    /* do not do fancy effect */
      .headernav-homeitem .headernav-link.active,
      .headernav-homeitem .headernav-link:hover,
      .headernav-homeitem .headernav-link:focus,
      .headernav-homeitem .headernav-link:active { background-color: transparent; box-shadow: none; }
      .footernav-homeitem .footernav-link.active,
      .footernav-homeitem .footernav-link:hover,
      .footernav-homeitem .footernav-link:focus,
      .footernav-homeitem .footernav-link:active { background-color: transparent; box-shadow: none; }
        .headernav-homeitem .headernav-link.active:before,
        .headernav-homeitem .headernav-link:hover:before,
        .headernav-homeitem .headernav-link:focus:before,
        .headernav-homeitem .headernav-link:active:before { display: none; }
        .footernav-homeitem .footernav-link.active:before,
        .footernav-homeitem .footernav-link:hover:before,
        .footernav-homeitem .footernav-link:focus:before,
        .footernav-homeitem .footernav-link:active:before { display: none; }

    /* textsizer */
    .no-js #textsizer { display: none; }
    #textsizer { position: absolute; bottom: 0; right: 0; }
      .textsizer-item { float: left; display: block; }
        .textsizer-item + .textsizer-item { padding-left: 1px; position: relative; }
          .textsizer-item + .textsizer-item:before { content: " "; display: block; height: 10px; width: 1px; position: absolute; top: 5px; left: 0; background: #b1afaa; }
            .textsizer-link { padding: 0 7px; display: block; text-decoration: none; height: 20px; line-height: 20px; text-transform: uppercase; color: #65676a; font-family: 'sintonybold'; font-weight: normal;  }
            /* effect */
            .textsizer-link.active,
            .textsizer-link:hover,
            .textsizer-link:focus,
            .textsizer-link:active { text-decoration: underline; }
            /* adjust size display */
            .textsizer-link[data-size="12"] { font-size: 12px; }
            .textsizer-link[data-size="15"] { font-size: 15px; }
            .textsizer-link[data-size="18"] { font-size: 18px; }

     /* langswitch */
     .no-js #langswitch { right: 0; }
     #langswitch { position: absolute; bottom: 3px; right: 90px; }
      .langswitch-item { display: block; float: left; font-size: 12px; }
        .langswitch-item + .langswitch-item { position: relative; padding-left: 1px }
        .langswitch-item + .langswitch-item:before { content: " "; display: block; width: 1px; height: 10px; background: #a09e98; position: absolute; top: 2px; left: 0; }
          .langswitch-link { padding: 0 5px; text-transform: uppercase; color: #65676a; font-size: 12px; font-family: 'sintonybold'; font-weight: normal; }
          /* effect */
          .langswitch-link.active,
          .langswitch-link:hover,
          .langswitch-link:focus,
          .langswitch-link:active { text-decoration: underline; }
       
/* grid */
.grid { margin-left: -20px; }
.grid:before, .grid:after { content: ""; display: table; } 
.grid:after { clear: both; }

  .grid-item { float: left; margin-left: 20px; }

  /* grid 1, two columns, first big next small */
  .grid-1 .grid-item { width: 710px; border-top: 1px solid #ccc; }
  .grid-1 .grid-item + .grid-item { width: 230px; background: #fff; }

  /* grid 2, two columns, equals */
  .grid-2 .grid-item { width: 460px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
  .grid-2 .grid-item + .grid-item { background: #fff; }

  /* grid 3, two columns */
  .grid-3 .grid-item:first-child { border-top: 1px solid #ccc; width: 720px; }
  .grid-3 .grid-item { width: 220px; }
  /* adjust display on service page */
  .service.index .grid-3 .grid-item:first-child { border-top: 0; }

  /* grid 4, three columns */
  .grid-4 .grid-item { width: 160px; border-top: 1px solid #ccc; }
  .grid-4 .grid-item + .grid-item { width: 520px; }
  .grid-4 .grid-item + .grid-item + .grid-item { width: 220px; z-index: 10; position: relative; }
  /* move on top only if there is some banner */
  .banner-out + .main-content .grid-4 .grid-item + .grid-item + .grid-item { margin-top: -156px; }
            
/* content */
.main-content { margin: 45px 0; }
      
/* sidebar */
.sidebar-content { background: #fff; padding: 20px; position: relative; min-height: 240px; margin-top: 150px; }
.sidebar-content:before { content: ""; display: block; width: 238px; height: 239px; background: url('./images/sidebar-shadow.png') no-repeat 0 0 transparent; position: absolute; top: -12px; left: -9px; z-index: -1; }
  
  .sidebarinfo-img { position: absolute; top: -150px; left: 0; right: 0; z-index: 1; }
  .sidebarinfo-title { margin-top: 17px; margin-bottom: 0; font-size: 1.2em; text-transform: none; line-height: 1.5; }
  .sidebarinfo-adr { margin-top: 0; margin-bottom: 15px; }
  .sidebarinfo-phone { display: block; margin: 15px 0; padding: 15px 0; font-size: 1.4em; position: relative; }
  .sidebarinfo-phone:before { display: block; content: ""; position: absolute; z-index: 1; height: 1px; width: 78px; top: 0; left: 50%; margin-left: -39px; background-color: #dfdfdf; } 

  .sidebarinfo-list { }
    .sidebarinfo-item { padding: 15px 0; position: relative; }
    .sidebarinfo-item + .sidebarinfo-item:before { display: block; content: ""; position: absolute; z-index: 1; height: 1px; width: 78px; top: 0; left: 50%; margin-left: -39px; background-color: #dfdfdf; }
      .sidebarinfo-link { font-size: 1.1em; text-decoration: none; }
      .sidebarinfo-link:before { display: block; margin: 0 auto 10px; vertical-align: bottom; }
      
/* special display for homepage */
.home.index .sidebar-content { margin-top: 0 }
  .home.index .sidebarinfo-img { display: none; }
    