
/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/*--------------------------------------------------------------
Formating
--------------------------------------------------------------*/

html {
    color: #111;
    font-size: 18px;
    line-height: 1.4;
    font-family: "halant", Times New Roman, Serif;
    font-weight: 300;
    background-color: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
*, *:before, *:after {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit;
}

::-moz-selection {
    background: #ccc;
    text-shadow: none;
}

::selection {
    background: #ccc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

p {
    margin: 1.2em 0;
}

h1,
h2,
h3,
h4,
h5 {
    font-family: "lato", arial, sans-Serif;    
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center;
}

h1 {
    font-weight: 400;
    font-size: 24px;
}

h2 {
    font-weight: 700;
    font-size: 17px;
}

h3 {
    font-weight: 400;
    font-size: 22px;
    font-family: "halant", Times New Roman, Serif;    
    color: #9e0039;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1;
}

@media only screen and (min-width: 768px) {
    h3 {
        text-align: left;
    }
}

h4 {
    font-weight: 400;
    font-size: 15px;
}

h5 {
    text-transform: none;
    font-weight: 300;
    color: #636363;
    font-size: 14px;
    letter-spacing: 0;
}

a,
a:link {
    color: #be245b;
    text-decoration: none;
}

a.link-more {
    text-transform: uppercase;
    background: url("img/link-cross.png") no-repeat right 6px;
    padding-right: 1em;
    font-size: 15px;
    font-family: "lato", arial, sans-Serif;
    letter-spacing: 1px;
}

a.white-button {
    background: url("img/button-bg.gif") 0 0;
    padding: 0.5em 1.5em;
    border: 1px solid #c2c2c2;
}

.contact-box .white-button {
    display: block;
    margin: 1.2em 0;
    font-weight: 300;
    text-align: center;
}

a.white-button span {
    text-transform: uppercase;
    background: url("img/link-cross.png") no-repeat right 6px;
    padding-right: 1em;
    font-size: 15px;
    font-family: "lato", arial, sans-Serif;
    letter-spacing: 1px;
}

@media only screen and (min-width: 480px) {
    .contact-box .white-button {
        margin: 0.8em 0;
    }
    .contact-box a.white-button {
        padding: 0.7em 1em;
    }
    a.white-button span {
        letter-spacing: 0;
        font-size: 13px;
    }
}

@media only screen and (min-width: 768px) {
    .contact-box .white-button {
        margin: 1.2em 0;
    }
}

@media only screen and (min-width: 800px) {
    a.white-button span {
        letter-spacing: 1px;
        font-size: 15px;
    }
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.image-left,
.image-right {
    margin: 1em auto;
    display: block;
}

@media only screen and (min-width: 600px) {
    .image-left {
        float: left;
        margin: 1% 5% 3% 0;
    }
    .image-right {
        float: right;
        margin: 1% 0 3% 5%;
    }
}

.image-left,
.image-right {
    width: 100%;
    max-width: 323px;
    height: auto;
}

.image-full-screen {
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 1em 0;
}

.content-width {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 1px;
}

.narrow-content {
    max-width: 742px;
    margin: 0 auto;
    text-align: center;
}


@media only screen and (min-width: 1024px) {
    .narrow-content {
        width: 75%;
    }
}

.narrow-content ul {
    padding: 0;
}

.narrow-content li {
    list-style: none;
    background: url("img/bullet-point.png") no-repeat left 11px;
    padding: 0 0.5em 0 1em;
    text-align: left;
}


@media only screen and (min-width: 600px) {
    .narrow-content li {
        text-align: center;
        display: inline-block;
    }
}

/*--------------------------------------------------------------
Header
--------------------------------------------------------------*/

.header {
    background: url("img/header-bg.gif");
    text-align: center;
}

.logo {
    padding-top: 1em;
    width: 70%;
    margin: 0 auto;
    font-family: "lato", arial, sans-Serif;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 300;
}

@media only screen and (min-width: 600px) {
    .logo {
        width: 100%;
    }
}

.logo a {
    border:none;
}

@media only screen and (min-width: 600px) {
    .logo-img {
        width: 40%;
        float: left;
        text-align: center;
    }
}
@media only screen and (min-width: 1000px) {
    .logo-img {
        width: 40%;
        float: none;
        margin: 0 auto;
    }
}

.logo-img img {
    width: 100%;
    height: auto;
    max-width: 263px;
}
.swanguesthouse .logo-img img {
    max-width: 266px;
}

/*--------------------------------------------------------------
Navigation
--------------------------------------------------------------*/

.navigation {
    background-color: #fff;
    font-family: "lato", arial, sans-Serif;
    font-size: 14px;
    text-transform: uppercase;
    padding: 0.8em 0;
    font-weight: 300;
}

@media only screen and (min-width: 600px) {
    .swanguesthouse .navigation {
        padding: 0.3em 0;
    }
}

@media only screen and (min-width: 1000px) {
    .navigation {
        padding: 1.3em 0;
    }
    .swanguesthouse .navigation {
        padding: 0.3em 0;
    }
}

.menu-button {
    float: left;
    width: 15%;
    text-align: left;
}

@media only screen and (min-width: 600px) {
    .menu-button {
        display: none;
    }
}

.top-nav {
    background-color: #ebebeb;
    text-align: center;
    clear: both;
    float: left;
    margin: 0.8em 0; 
    width: 100%; 
    display: none;
} 

.top-nav ul {
    display: block;
    list-style: none;
    padding: 0;
    margin: 0;
}

.top-nav a {
    color: #111;
    padding: 0.8em 0.5em;
    letter-spacing: 1px;
    display: block;
    border-bottom: 1px solid #fff;
}

.active a,
.top-nav a:hover {
    color: #be245b;
}

@media only screen and (min-width: 600px) {
    .top-nav {
        width: 110%;  
        clear: none;
        background-color: transparent;
        margin: 0 -5%;
        display: block;
    } 
    .top-nav ul {
        display: inline-block;
        padding: 0.2em 0 0;
    }
    
    .top-nav li {
        float: left;
    }
    
    .top-nav a {
        color: #111;
        padding: 0 0.3em;
        display: inline-block;
        border-bottom: none;
        letter-spacing: 0;
    }
}

@media only screen and (min-width: 768px) {
    .top-nav {
        width: 100%;
        margin: 0;
    } 
    .top-nav a {
        padding: 0 0.5em;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width: 1000px) {
    .top-nav {
        width: 70%;
    } 
    .top-nav a {
        letter-spacing: 0;
    }
}

@media only screen and (min-width: 1080px) {
    .top-nav a {
        letter-spacing: 1px;
    }
}


/*--------------------------------------------------------------
Header buttons
--------------------------------------------------------------*/

.logo .phone-number { 
    display: none;
}

.navigation .phone-number {
    float: left;
    width: 70%;
    color: #898989;
    padding: 0.3em 0;
}

.swanguesthouse .navigation .phone-number {
    width: 48%;
    padding: 0;
    text-align: right;
}

@media only screen and (min-width: 600px) {
    .logo .phone-number {
        width: 30%;
        float: left;
        text-align: left;
        display: block;
        font-weight: 400;
        color: #898989;
        margin-top: 6%;
    }
    .navigation .phone-number {
        display: none;
    }
}

@media only screen and (min-width: 768px) {
    .logo .phone-number {
        margin-top: 3em;
    }
}

@media only screen and (min-width: 1000px) {
    .logo .phone-number {
        display: none;
    }
    .swanguesthouse .logo .phone-number {
        display: inline-block;
        width: 15%;
    }
    .navigation .phone-number {
        width: 15%;
        padding: 0;
        display: block;
    }
    .swanguesthouse .navigation .phone-number {
        display: none;
    }
}

.phone-number img {
    display: none;
}

@media only screen and (min-width: 600px) {
    .phone-number img {
        margin-right: 0.3em;
        display: inline;
    }
}

.logo .email {
    display: none;
}

.navigation .email {
    float: right;
    width: 15%;
    color: #898989;
    text-align: right;
}

.swanguesthouse .navigation .email {
    width: 48%;
    padding: 0;
    text-align: left;
}

@media only screen and (min-width: 600px) {
    .logo .email {
        width: 30%;
        float: right;
        text-align: right;
        display: block;
        font-weight: 400;
        margin-top: 6%;
    }

    .navigation .email {
        display: none;
    }
}

@media only screen and (min-width: 768px) {
    .logo .email {
        margin-top: 3em;
    }
}

@media only screen and (min-width: 1000px) {
    .logo .email {
        display: none;
    }
    .swanguesthouse .logo .email {
        display: inline-block;
        width: 15%;
    }
    .navigation .email {
        display: block;
    }
    .swanguesthouse .navigation .email {
        display: none;
    }
}
.email span {
    display: none;
}

.swanguesthouse .email span {
    display: inline-block;
}

@media only screen and (min-width: 600px) {
    .email span {
        display: inline;
    }
}    
.email a {
    color: #898989;
}

.email a:hover span {
    border-bottom: 1px solid #ebebeb;
}

.email img {
    margin-left: 0.3em;
}

.swanguesthouse .email img {
    display: none;
}

@media only screen and (min-width: 600px) {
      .swanguesthouse .email img {
        display: inline-block;
    }
}

/*--------------------------------------------------------------
Slideshow
--------------------------------------------------------------*/
.slideshow {
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 1400px) {
    .slideshow {
        height: 550px;
    }
}

.slideshow img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  margin: 0 auto 60px;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
@media only screen and (min-width: 1400px) {
    .bx-wrapper {

    }
}
.bx-wrapper img {
  max-width: 100%;
  /*display: block;*/
}
.bxslider {
  margin: 0;
  padding: 0;
}
ul.bxslider {
  list-style: none;
}
.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}
/** THEME
===================================*/
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}
/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url(images/bx_loader.gif) center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}
/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #000;
}
.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}
.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url(images/controls.png) no-repeat 0 -32px;
}
.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0;
}
.bx-wrapper .bx-next {
  right: 10px;
  background: url(images/controls.png) no-repeat -43px -32px;
}
.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px 0;
}
.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999;
}
.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}
/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}
.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url(images/controls.png) -86px -11px no-repeat;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0;
}
.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url(images/controls.png) -86px -44px no-repeat;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px;
}
/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}
/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%;
}
.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px;
}

.circle {
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 999;
    background: rgba(255, 255, 255, 0.8); 
    -moz-border-radius: 50% 50% 0 0;
    -webkit-border-radius: 50% 50% 0 0;
    border-radius: 50% 50% 0 0; /* future proofing */
    -khtml-border-radius: 50% 50% 0 0; /* for old Konqueror browsers */
    text-align: center;
    padding: 50px 23px;
    font-family: "lato", arial, sans-serif;
    font-size: 15px;
    letter-spacing: 1px;
    text-transform: uppercase;
    width: 240px;
    height: 240px;
    margin-bottom: -130px;
    margin-left: -120px;
}

@media only screen and (min-width: 600px) {
    .circle {
        top: 50%;
        left: 50%;
        width: 200px;
        height: 200px;
        margin-top: -100px;
        margin-left: -100px;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%; /* future proofing */
        -khtml-border-radius: 50%; /* for old Konqueror browsers */
        padding: 60px 40px;
    }
}

@media only screen and (min-width: 1000px) {
    .circle {
        width: 300px;
        height: 300px;
        margin-top: -150px;
        margin-left: -150px;
        padding: 125px 60px;
    }
}


/*--------------------------------------------------------------
Content
--------------------------------------------------------------*/

.content, 
.events {
    background-color: #ebebeb;
}

.content {
    position: relative;
    padding: 0.5em 0 2em;
    text-align: justify;
}

@media only screen and (min-width: 600px) {
    .content {
        padding: 1em 0 3em;
    }
    .home .content {
        padding: 2em 0 3em;
    }
}

.featured-image img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

.content img {
    border: 5px solid #ebebeb;
    -webkit-box-shadow: 0 0 0 1px #c2c2c2;  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
    -moz-box-shadow: 0 0 0 1px #c2c2c2;  /* Firefox 3.5 - 3.6 */
    box-shadow: 0 0 0 1px #c2c2c2;  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
}

.content .arrow-up img {
    border: none;
    -webkit-box-shadow: 0 0 0 0 #c2c2c2;  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
    -moz-box-shadow: 0 0 0 0 #c2c2c2;  /* Firefox 3.5 - 3.6 */
    box-shadow: 0 0 0 0 #c2c2c2;  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
}

.contact-box {
    max-width: 742px;
    margin: 3em auto 1em;
    border: 1px solid #c2c2c2;
    padding: 1em 2em;
    font-family: 'lato', arial, sans-Serif;
    font-size: 14px;
    font-weight: 400;
    text-align: center;
}

@media only screen and (min-width: 480px) {   
    .contact-box {
        padding: 1em;
    }
}

@media only screen and (min-width: 768px) {   
    .contact-box {
        padding: 2em 1em 3em;
    }
}

@media only screen and (min-width: 1024px) {
    .contact-box {
        width: 75%;
    }
}

.contact-box h5 {
    display: none;
}


@media only screen and (min-width: 768px) {   
    .contact-box h5 {
        margin: 1em 0 0;
        display: block;
    }    
}

.contact-box p {
    margin: 0.5em 0;
}


@media only screen and (min-width: 768px) {
    .contact-left,
    .contact-left h5 {
        text-align: right;
    }
}

.contact-right,
.contact-right h5 {
    text-align: left;
}

@media only screen and (min-width: 480px) {
    .col1-2 {
        width: 44%;
        margin: 0 3%;
        float: left;
    }
}

@media only screen and (min-width: 768px) {
    .col1-3 {
        width: 30%;
        margin: 0 5% 0 0;
        float: left;
    }
}

.col1-3.last {
    margin: 0;
}

/*--------------------------------------------------------------
Events
--------------------------------------------------------------*/

.events {
    border-top: 1px solid #c2c2c2;
    position: relative;
    padding: 1em 0 3em;
    text-align: center;
}

@media only screen and (min-width: 768px) {
    .events {
        padding: 2em 0 4em;
        text-align: left;
    }
}

.events h2 {
    position: absolute;
    top: -27px;
    left: 0;
    right: 0;
}

.events h2 span {
    padding: 0 2em;
    background-color: #ebebeb;    
}

.events h3 {
    margin: 0;
}

.events p {
    font-family: 'lato', arial, sans-Serif;
    font-size: 14px;
    margin: 0.5em 0;
}

p.event-date {
    color: #636363;
    margin: 1.5em 0 0.5em;
}


/*--------------------------------------------------------------
Footer
--------------------------------------------------------------*/

.footer {
    position: relative;
    font-size: 14px;
    color: #7d7d7d;
    text-transform: uppercase;
    font-family: "lato", arial, sans-Serif;
    text-align: center;
    padding: 2em 0 1.5em;
    letter-spacing: 1px;
}

@media only screen and (min-width: 600px) {
    .footer {
        padding: 3em 0;
    }
}

.footer a {
    color: #7d7d7d;
    border-bottom: 1px solid #ebebeb;
}

.footer a:hover {
    border-bottom: none;
}

a.arrow-up {
    margin-top: -24px;
    border-bottom: none;
    /*display: block;*/
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -24px;
    z-index: 999;
}

.footer-logo {
    padding: 0.5em 1.5em;
    display: block;
}

.footer-logo img {
  width: 100%;
  max-width: 50px;
  height: auto;
}

@media only screen and (min-width: 600px) {
  .footer-logo {
      display: inline-block;
      padding: 0 1em;
      width: 12%;
      float: left;
  }
}
@media only screen and (min-width: 768px) {
  .footer-logo {
        padding: 0 1.5em;
    }
}

.right-foot {
  display: none;
}
@media only screen and (min-width: 600px) {
    .left-foot,
    .right-foot {
        line-height: 1.5;
        width: 44%;
        float: left;
        padding: 1em 0;
    }
    .left-foot {
        text-align: right;
    }
    .right-foot {
        text-align: left;
        display: block;
    }
}




/* ==========================================================================
   Helper classes
   ========================================================================== */

@media only screen and (min-width: 600px) {
    .mobile-only {
        display: none;
    }
}

.tablet-only {
    display: none;
}

@media only screen and (min-width: 600px) {
    .tablet-only {
        display: block;
    }
}

@media only screen and (min-width: 768px) {
    .mobile-only2 {
        display: none;
    }
}

.tablet-only2 {
    display: none;
}

@media only screen and (min-width: 768px) {
    .tablet-only2 {
        display: block;
    }
}

.hidden {
    display: none !important;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}


.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}


/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
