/* http://meyerweb.com/eric/tools/css/reset/  v2.0 | 20110126 License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

#authorizationWall { background: #222; top: 0; left: 0; right: 0; bottom: 0; position: fixed; display: none; }
#authorizationWall.enabled { display: block; }
#authorizationWall #auth { width: 300px; height: 300px; position: absolute; left: 50%; top: 50%; margin-left: -150px; margin-top: -150px; }
#authorizationWall input { border-radius: 3px; height: 40px; width: 100%; font-size: 16px; color: #222; padding: 8px; border: none; }

/** Basic styling */
html, body { color: #000; font-size: 16px; font-family: "Proxima Nova", "proxima-nova"; }

*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.wf-loading { visibility: hidden; }

a, a:visited { color: #000; text-decoration: none; }

p { line-height: 24px; margin-bottom: 24px; }
p a { text-decoration: underline; font-family: "ProximaNova-SemiBold", "proxima-nova-bold"; }

.horizontal-rule { border-top: 1px solid #dedede; margin-bottom: 40px; margin-top: 40px; }
.horizontal-rule.no-margin-top { margin-top: 0; }

.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

.needs-feather-border { border: 1px solid #ededed; }

.previous-next-container { font-size: 12px; text-transform: uppercase; font-family: "proxima-nova"; color: #666666; letter-spacing: 1px; margin-top: 0; margin-bottom: 40px; }
.previous-next-container .previous-arrow { border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-right: 6px solid #777; float: left; margin-top: 1px; margin-right: 8px; }
.previous-next-container .previous { float: left; }
.previous-next-container .next-arrow { border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #777; margin-top: 1px; float: right; margin-left: 8px; }
.previous-next-container .next { float: right; }

.grid { overflow: hidden; }

.grid-row-container { overflow: hidden; }

.col-span-one { width: 31%; float: left; }

.col-span-two { width: 62%; margin-left: 3.5%; float: left; }

.col-span-full { width: 100%; }

.wrapper { max-width: 1048px; margin: 0 auto; padding: 0 24px; }
.wrapper .wrapper { padding: 0; }

.break-grid { max-width: 1276px; margin: 0 auto; padding: 0 24px; display: inherit; }

.component { margin-bottom: 60px; }
.component.component-last { margin-bottom: 40px; }
.component.component-image img { width: 100%; }
.component.component-image.has-feather-border img { outline: 1px solid #f1f1f1; }
.component .component-image-caption { font-family: "proxima-nova"; font-weight: 300; margin-top: 24px; font-size: 16px; font-style: italic; line-height: 24px; margin-bottom: 0; text-align: center; }
.component.component-subtitle { margin-bottom: 30px; }
.component.component-subtitle .component-subtitle-content { font-family: "proxima-nova"; font-weight: 600; margin-bottom: 18px; }
.component.component-imageblock img { vertical-align: top; }
.component.component-imageblock .component-imageblock-images-container { width: 100%; }
.component.component-imageblock .component-imageblock-images-container.images-count-4 img { width: 23%; }
.component.component-imageblock .component-imageblock-images-container.images-count-3 img { width: 31%; }
.component.component-imageblock .component-imageblock-images-container.images-count-3 img:nth-child(2n) { margin-left: 2.9%; margin-right: 2.9%; }
.LegacyProject .component.component-imageblock .component-imageblock-images-container.images-count-3 img:nth-child(2n) { margin-left: 2.6%; margin-right: 2.6%; }
.component.component-imageblock .component-imageblock-images-container.images-count-2 img { width: 48%; }
.component.component-imageblock .component-imageblock-images-container.images-count-2 img:nth-child(2n) { margin-left: 3%; }

.site-footer .site-footer-social-icons-container { margin-top: 40px; margin-bottom: 40px; text-align: center; }
.site-footer .site-footer-social-icons { display: inline-block; }
.site-footer .social-icon { margin-right: 25px; width: 20px; height: 20px; float: left; }
.site-footer .social-icon:last-child { margin-right: 0; }
.site-footer .social-icon img { width: 100%; height: 100%; }

.site-header { margin-top: 40px; }
.site-header .site-header-wrapper { margin-top: 40px; margin-bottom: 40px; text-align: center; }
.site-header .site-title-wrapper { margin-bottom: 24px; }
.site-header .site-title { text-transform: uppercase; font-family: "proxima-nova"; font-weight: 600; letter-spacing: 5px; font-size: 20px; margin-bottom: 40px; line-height: 26px; }
.site-header .site-nav-wrapper { clear: both; display: inline-block; text-align: center; }
.site-header .page-link { font-size: 12px; letter-spacing: 1.5px; margin-right: 35px; text-transform: uppercase; }
.site-header .page-link.active { font-family: "proxima-nova"; font-weight: 600; }
.site-header .page-link:last-child { margin-right: 0; }

.page-about { overflow: hidden; margin-bottom: 40px; }
.page-about p.last { margin-bottom: 0; }
.page-about p a { font-family: "ProximaNova-Regular", "proxima-nova"; }
.page-about .portrait { width: 31%; margin-left: 40px; float: left; margin-right: 40px; }
.page-about .about-text { width: 57%; float: left; }

.grid-item { width: 31%; height: 395px; float: left; }
.grid-item a { display: inline-block; }
.grid-item:nth-child(3n+2) { margin-right: 3.5%; margin-left: 3.5%; }

.work-item-image { background: #ccc; width: 100%; height: 100%; }

.work-item-title { font-family: "proxima-nova"; font-weight: 600; font-size: 14px; padding-top: 18px; padding-bottom: 40px; margin: 0; }

.LegacyProject .project-title { font-family: "proxima-nova"; font-weight: 600; font-size: 16px; padding-bottom: 18px; text-transform: uppercase; line-height: 22px; letter-spacing: 2px; margin-bottom: 0; }
.LegacyProject .project-description-container { width: 31%; float: left; }
.LegacyProject .project-content-container { width: 65.5%; float: right; }
.LegacyProject .component-image img { width: 100%; }

.project .project-title { text-align: center; font-family: "proxima-nova"; font-weight: 600; font-size: 16px; padding-bottom: 18px; text-transform: uppercase; line-height: 22px; letter-spacing: 2px; margin-bottom: 0; }
.project .project-description { width: 72%; margin: 0 auto; font-family: "proxima-nova"; }
.project .project-description-wrapper { margin-bottom: 40px; }

@media screen and (max-width: 806px) { .grid-item { height: 320px; }
  .break-grid { padding: 0 24px; }
  .wrapper.break-grid { width: auto; max-width: none; } }
@media screen and (max-width: 767px) { .grid-item { height: auto; }
  .wrapper.break-grid { width: auto; max-width: none; }
  .grid-item { width: 47%; float: left; }
  .grid-item:nth-child(3n+2) { margin-right: 0; margin-left: 0; }
  .grid-item:nth-child(2n) { margin-right: 2.5%; margin-left: 2.5%; }
  .work-item-title { padding-top: 6px; line-height: 20px; }
  .site-header { margin-top: 30px; }
  .site-header .horizontal-rule { margin-top: 30px; margin-bottom: 30px; }
  .site-header .site-header-wrapper { margin-top: 30px; margin-bottom: 30px; }
  .site-header .site-title { font-size: 20px; letter-spacing: 3px; }
  .page-about .portrait { width: 100%; float: none; margin: 0 0 30px 0; }
  .page-about .about-text { clear: both; width: 100%; float: none; }
  .project .project-description { width: 100%; }
  .break-grid { padding: 0 24px; }
  .component { margin-bottom: 30px; }
  .component.component-imageblock img { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; margin-bottom: 30px !important; }
  .component.component-imageblock img:last-child { margin-bottom: 0 !important; }
  .component.component-last { margin-bottom: 30px; }
  .previous-next-container { margin-bottom: 30px; }
  .LegacyProject .project-description-container { width: 100%; float: none; }
  .LegacyProject .project-content-container { float: none; clear: both; width: 100%; } }
