body {
	font-family: 'Nunito', sans-serif;
	font-size:14px;
}

a:hover {
	text-decoration:none;
}

a:focus {
  outline: none;
}

.swan-futura {
	font-family: 'Nunito', sans-serif;
}

.swan-trajan {
	font-family: 'Cinzel', serif;
	text-transform:uppercase;
}

h1 {
	font-size:22px;
}

h2 {
	font-size:20px;
	font-family: 'Cinzel', serif;
	text-transform:uppercase;
}

/* centered boxed layout */
.boxed-layout {
    padding: 0;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 0px;
}

@media (min-width: 768px) {
	.boxed-layout {
    	padding-top: 50px;
	}
}

/* limit width on desktops */
@media (min-width: 1200px) {
	.container {
    	width: 1100px;
	}
}


/* ------------------------------------------------------------------------------------ */
/* home page */
/* ------------------------------------------------------------------------------------ */

.home-welcome { color:#666666; padding-top:10px; font-size:13px; }
.home-symbol-left { margin-top:-2px; padding-right:10px; }
.home-symbol-right { margin-top:-2px; padding-left:10px; }

.news-bug {
	margin-top:10px;
	margin-bottom:13px;
}

@media (min-width: 768px) {
	.news-bug {
		position: absolute;
		right: 15px;
		top: 0;
		margin-top:0px;
		margin-bottom:0px;
	}
}

#news-title {
	/* background: rgba(11, 118, 160, 0.8); */
	background: rgba(0, 134, 239, 0.73);
}

#news-title p {
	color:#ffffff;
	text-transform:uppercase;
	font-size:20px;
	line-height:20px;
	text-align:center;
}

@media (min-width: 768px) {
	#news-title p {
		font-size:30px;
		line-height:30px;
		text-align:left;
	}
}

#news-detail {
	background: rgba(10, 42, 56, 0.9);
}
#news-detail p {
	color:#ffffff;
}
#news-detail a {
	color:#ffffff;
	text-decoration:underline;
}
.news-link {
	cursor:pointer;
}

@-webkit-keyframes fadeIn { from { opacity:0; opacity: 1\9; /* IE9 only */ } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; opacity: 1\9; /* IE9 only */ } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; opacity: 1\9; /* IE9 only */ } to { opacity:1; } }

.fade-in {
	opacity:0;  /* make things invisible upon start */
	-webkit-animation:fadeIn ease-in 1;  /* call our keyframe named fadeIn, use animattion ease-in and repeat it only 1 time */
	-moz-animation:fadeIn ease-in 1;
	animation:fadeIn ease-in 1;

	-webkit-animation-fill-mode:forwards;  /* this makes sure that after animation is done we remain at the last keyframe value (opacity: 1)*/
	-moz-animation-fill-mode:forwards;
	animation-fill-mode:forwards;

	-webkit-animation-duration:1s;
	-moz-animation-duration:1s;
	animation-duration:1s;
}

.fade-in.one {
	-webkit-animation-delay: 0.3s;
	-moz-animation-delay: 0.3s;
	animation-delay: 0.3s;
}

.home-welcome {
    color: #666666;
    padding-top: 10px;
    font-size: 13px;
    text-align:center;
}

@media (min-width: 768px) {
	.home-welcome {
    	font-size: 18px;
    	text-align:left;
	}
}


/* ------------------------------------------------------------------------------------ */
/* footer */
/* ------------------------------------------------------------------------------------ */

.footer-container {
	border-top: 1px solid #cccccc; 
	border-bottom: 1px solid #cccccc; 
	padding-top: 4px;
}

.footer-text { 
	color:#666666;
	font-size:11px;
	margin-bottom:4px;
	letter-spacing:.25px;
}

.footer-interior { 
	margin-top:15px;
	margin-bottom:15px;
}

.fa-align {
    display: inline-block;
    height: 16px;
    margin: 0px;
    padding: 4px;
}
#text, #ico {
    line-height: 20px;
    font-size:14px;
}

#ico {
    vertical-align: middle;
}

.footer-container {
    border-top: 1px solid #dddddd;
    border-bottom: none;
    padding-top:10px;
    margin-bottom:24px;
}

.text-footer-left {
	text-align:center;
}
.text-footer-right {
	text-align:center;
}

@media (min-width: 768px) {
    .text-footer-left {
        text-align: left;
    }
    .text-footer-right {
        text-align: right;
    }
}

.project-note { color:#aaaaaa; white-space: nowrap; }


/* ------------------------------------------------------------------------------------ */
/*  menu adjustments */
/* ------------------------------------------------------------------------------------ */

.navbar {
	margin-bottom:4px;
}

.navbar-header {
	text-align: center;
}

.navbar-brand {
	float:none;
	/* padding-left: 10px; */
	padding: 25px 15px 5px 15px;
	height: 60px;
}

.navbar-brand img {
	width:360px;
}

#swan-logo {
	margin: 0 auto;
}

.navbar-toggle {
	float:none;
	background-color:#aca196;
	margin-top:15px;
	margin-bottom:15px;
}

.navbar-toggle .icon-bar {
    background-color: white;
}

.navbar-nav > li > a {
	font-family: 'Cinzel', serif;
    color: #888888;
    font-size: 12px;
    font-weight: 600;
    text-transform: none;
    line-height: 20px;
    text-align: center;
    letter-spacing:.25px;
}

.navbar-nav>.active>a {
    color: #10aae0;
}

@media (min-width: 768px) {
	.navbar-brand {
		float:left;
	}
	.navbar-toggle {
		float:right;
	}
	.navbar-right {
   		margin-right:0px;
	}
	.nav>li>a:hover {
    	background-color: #ffffff;
    	color: #10aae0;
	}
	.nav>li>a {
		padding-top: 28px;
    	padding-bottom: 10px;
    	padding-left: 11px;
    	padding-right: 10px;
	}
}


/* ------------------------------------------------------------------------------------ */
/* interior */
/* ------------------------------------------------------------------------------------ */

.carousel-control.right {
    background-image: none;
}

.carousel-control.left {
    background-image: none;
}

.project-img {
	margin-bottom:15px;
}

.full-width {
	padding-left:0px;
	padding-right:0px;
}
 
@media (min-width: 768px) {
	.full-width {
		padding-left:15px;
		padding-right:15px;
	}
}

.swan-description {
	margin-bottom:30px;
}

.swan-description-note {
	color:#aaaaaa;
	text-align:center;
}

.swan-section {
	margin-top:30px;
	margin-bottom:30px;
}

.credit-title {
	text-transform:uppercase;
	font-size:11px;
	letter-spacing:1.5px;
	color:#000000;
}

figure {
	position:relative;
}

figcaption {
	position: absolute;
    bottom: 7px;
    right: 10px;
    z-index: 100;
    color: rgba(255,255,255,.8);
    font-size: 11px;
    
}

@media only screen and (max-width : 991px) {
	figcaption {
		display:block;
	}
}

@media only screen and (min-width : 992px) {
	figcaption {
		display:none;
	}
}
	
.flag {
	color: #ff0000;
}


/* ------------------------------------------------------------------------------------ */
/* projects grid page */
/* ------------------------------------------------------------------------------------ */

.packery {
	margin: 0 auto;
  	max-width:267px;
}

.packery:after {
  	content: ' ';
  	display: block;
  	clear: both;
}

.item {
  	width:  267px;
  	height: 176px;
  	float: left;
}

.caption {
	display:none;
	position: absolute;
	/* height: 40px; */
	/* bottom:0px; */
	width:100%;
	
	top:0px;
	height:100%;
	pointer-events: none;
}

.item-cover {
    position: absolute;
    /* bottom: 0px; */
    left: 0px;
    height: 40px;
    width: 100%;
   /* 
 background-color: #000000;
    opacity: .3;
 */
    display:none;
    
    height:100%;
    top: 0px;
    
    background: rgba(0, 134, 239, 0.73);
    pointer-events: none;
    
}

.item-text {
    position: absolute;
    bottom: 0px;
    /* left: 14px; */
    color: #ffffff;
    
    font-family: 'Cinzel', serif;
    width:100%;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    font-size:20px;
    pointer-events: none;
    text-transform: uppercase;
}

.item-text p {
	text-align:center;
	padding-left:15px;
	padding-right:15px;
}

.item.w2p { width:534px; height:176px; display:none; }
.item.h2p { width:267px; height:356px;  }

@media only screen and (min-width : 480px) {
	.packery {
		max-width:267px;
	}
}
@media only screen and (min-width : 768px) {
	.packery {
		max-width:534px;
	}
	.item.w2p { display:block; }
	.w2pmobile { display:none; }
}
@media only screen and (min-width : 992px) {
	.packery {
		max-width:801px;
	}
}
@media screen and (min-width: 1200px) {
	.packery {
		max-width:1070px;
	}
}

/* changes */

@media only screen and (min-width : 768px) {
	.packery {
		max-width:538px;
	}
	.item.w2p { width:538px; height:176px; overflow:hidden; display:block;}
	/* change image sizes instead of overflow hidden? */
	
	
	.w2pmobile { display:none; }
}

@media only screen and (min-width : 992px) {
	.packery {
		max-width:809px;
	}
}

@media (min-width: 1200px) {
	.container {
    	width: 1112px;
	}
}

@media screen and (min-width: 1200px) {
	.packery {
		max-width:1082px;
	}
}

.moasic-standard {
	width:267px;
}
.moasic-wide {
	width:538px;
}
.moasic-tall {
	width:267px;
	height:357px;
}

.item-wide {
	width: 267px;
    height: 176px;
    overflow: hidden;
    display: block;
}

@media only screen and (min-width : 768px) {
	.item-wide {
		width: 538px;
    	height: 176px;
    	overflow: hidden;
    	display: block;
	}
}	

@media only screen and (max-width : 768px) {
	.moasic-wide {
		display:none;
	}
}

/* ---------------------- */

.twocolordiv  {
	position: relative;
	z-index: 9;
	background: #ffe576;
	width:350px;
	padding-bottom:50px;
}

.twocolordiv-photo  {
	padding-top:30px;
	margin-bottom:10px;
}

.twocolordiv-text1 { margin-bottom:0px; line-height:26px; }
.twocolordiv-text2 { font-size:22px; margin-bottom:0px; line-height:28px; }
.twocolordiv-text3 { font-size:20px; margin-bottom:15px; line-height:28px; color:#888888 }

a.twocolordiv-link { color:inherit; text-decoration:none; }

.twocolordiv:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	right: 65%;
	bottom: 0;
	left: 0;
	background: white;
}

@media only screen and (min-width : 992px) {
	.top-style1-left { padding-right:40px; }
}

.top-style1-blockquote { font-size:14px; color:#888888; text-align:right; margin-left:30%; }

.swan-section-image-col { margin-top:20px; }

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	/* padding-top: 25px; */
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.before-after-btn {
	margin-left:15px;
	width:110px;
    opacity: .8;
    text-decoration: none;
    transition: background-color 0.3s ease-out 0s;
    color:#000000;
    margin-top: 0px;
	position: absolute;
	bottom: 10px;
}

.before-after-btnx {
    bottom: 0px;
    left: 0px;
    max-width: none;
    min-height: 0px;
    min-width: 0px;
    padding: 0px 10px 0px 0px;
    background-color: rgba(0, 0, 0, 0.5);
    border: 20px solid transparent;
    background-clip: padding-box;
    border-radius: 0px;
    transition: background-color 0.3s ease-out 0s;
}

#myGallery {
    position:relative;
    cursor:pointer;
}
#myGallery img {
  	display:none;
  	position:absolute;
  	top:0;
  	left:0;
}
#myGallery img.active {
  	display:block;
}
#myGallery2 {
    position:relative;
    cursor:pointer;
}
#myGallery2 img {
  	display:none;
  	position:absolute;
  	top:0;
  	left:0;
  	width:267px;
}
#myGallery2 img.active {
  	display:block;
}


/* ------------------------------------------------------------------------------------ */
/* who we are page */
/* ------------------------------------------------------------------------------------ */

.bio-logo { margin:6px; } 

.home-bug {
	position:absolute;
	right:15px;
	bottom:0;
	background: rgba(255, 255, 255, 0.8);
	padding:15px;
}

.home-bug-text {
	width:100px;
}

@media only screen and (min-width : 768px) {
    .is-table-row {
        display: table;
    }
    .is-table-row [class*="col-"] {
        float: none;
        display: table-cell;
        vertical-align: top;
    }
    .content-bottom {
    	position:absolute;
    	bottom:11px;
    }
}


/* ------------------------------------------------------------------------------------ */
/* contact page */
/* ------------------------------------------------------------------------------------ */

#contact .image-holder {
	position: absolute;
	background-origin: content-box;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.image-holder {
	height: 100%;
	width: 100%;
	opacity: .25;
	filter: alpha(opacity=.25);
	-webkit-transition: opacity 0.25s, filter 0.35s;
	-o-transition: opacity 0.25s, filter 0.35s;
	transition: opacity 0.25s, filter 0.35s;
}

.contact-template-content {
	position: absolute;
	top: 50%;
	bottom: auto;
	right: auto;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	width: 100%;
	text-align: center;
	text-transform: uppercase;
	font-weight: 100;
	font-size: 12px;
	letter-spacing: 1px;
	padding: 0 2%;
}

.contact-template-content a {
	color: #333333;
	display: block;
	margin-top: .6rem;
}

@media (min-width: 768px) {
	.contact-template-content {
		font-size: 14px;
	}
}

.blue-box {
	background: rgba(0, 134, 239, 0.73);
	display: inline-block;
    padding: 10px;
    color:#ffffff;
    border: 6px solid white;
    border-color: transparent;
    box-shadow: inset 0 0 0 1px white;
}

@media only screen and (min-width : 376px) {
	.blue-box {
		padding: 30px;
	}
}

.blue-box a {
    color:#ffffff;
}


/* ------------------------------------------------------------------------------------ */
/* noteworthy */
/* ------------------------------------------------------------------------------------ */

.rec-column {
    border-bottom: 1px solid #cccccc;
	text-align:center;
	padding-bottom:15px;
}


@media only screen and (min-width : 768px) {
	.rec-column {
		border-bottom:none;
    	border-left: 1px solid #cccccc;
    	text-align:left;
    	margin-bottom:30px;
	}
}

.note-image {
	width:100%;
	/* margin-top:20px; */
}

.noteworthy h2 {
	margin-top: 20px;
}

@media only screen and (min-width : 768px) {
	.noteworthy h2 {
		margin-top: 0px;
	}
}

.houzz-badge {
	margin-right:4px;
	margin-bottom:8px;
	width:54px;
}

/* ------------------------------------------------------------------------------------ */
/* how we work */
/* ------------------------------------------------------------------------------------ */


ul.swan {
	padding-left: 0px;
}

ul.swan li {
	list-style:none;
	background: url('images/swan-logo-img.svg') no-repeat left top;
	background-size: 18px 18px;
	height: auto;
	padding-left: 1.75em;
	padding-top: 0px;
	padding-bottom:15px;
}

.numberCircle {
    border-radius: 50%;
    width: 26px;
    height: 26px;
    padding: 2px;
    background: #3799f3;
    border: 2px solid #3799f3;
    color: #ffffff;
    text-align: center;
}

@media only screen and (max-width : 768px) {
	.numberCircle {
		margin-top:15px;
	}
}


/* ------------------------------------------------------------------------------------ */
/* design mosaic */
/* ------------------------------------------------------------------------------------ */

.mosaic-link {
	position:absolute;
	top:0px;
	left:0px;
    background-color: rgba(0, 134, 239, 0.5);
    border: none;
    border-radius: 0;	
}

.mosaic-link a {
    font-size: 11px;
    color:#ffffff;
}

.fancybox-button {
	outline:none !important;
}


