/* General box items */
html { box-sizing: border-box; font-family: 'Fira Sans', 'Arial', 'Helvetica', sans-serif; }
*, *:before, *:after { box-sizing: inherit; background-color: transparent; }
html, body { margin: 0; padding: 0; }

/* Coloration */
.bg-black { background-color: #000; }
.bg-dark { background-color: #2b2b2b; }
.bg-medium-dark { background-color: #575757; }
.bg-medium { background-color: #828282; }
.bg-medium-light { background-color: #adadad; }
.bg-light { background-color: #d9d9d9; }
.bg-white { background-color: #fff; }

.t-dark { color: #111; }
.t-medium { color: #333; }
.t-light { color: #fff; }

.bg-red { background-color: #bd1313; }
.bg-orange { background-color: #ec4e1b; }
.bg-yellow { background-color: #ffc300; }
.bg-green { background-color: #00993f; }
.bg-blue { background-color: #268bd2; }
.bg-indigo { background-color: #00255e; }
.bg-violet { background-color: #52197e; }
.bg-magenta { background-color: #d33682; }

.bg-red-hover:hover { background-color: #bd1313; }
.bg-orange-hover:hover { background-color: #ec4e1b; }
.bg-yellow-hover:hover { background-color: #ffc300; }
.bg-green-hover:hover { background-color: #00993f; }
.bg-blue-hover:hover { background-color: #268bd2; }
.bg-indigo-hover:hover { background-color: #00255e; }
.bg-violet-hover:hover { background-color: #52197e; }
.bg-magenta-hover:hover { background-color: #d33682; }

.c-red { color: #bd1313; }
.c-orange { color: #ec4e1b; }
.c-yellow { color: #ffc300; }
.c-green { color: #00993f; }
.c-blue { color: #268bd2; }
.c-indigo { color: #00255e; }
.c-violet { color: #52197e; }
.c-magenta { color: #d33682; }

.c-red-hover:hover { color: #bd1313; }
.c-orange-hover:hover { color: #ec4e1b; }
.c-yellow-hover:hover { color: #ffc300; }
.c-green-hover:hover { color: #00993f; }
.c-blue-hover:hover { color: #268bd2; }
.c-indigo-hover:hover { color: #00255e; }
.c-violet-hover:hover { color: #52197e; }
.c-magenta-hover:hover { color: #d33682; }

.b-red { border-color: #bd1313; }
.b-orange { border-color: #ec4e1b; }
.b-yellow { border-color: #ffc300; }
.b-green { border-color: #00993f; }
.b-blue { border-color: #268bd2; }
.b-indigo { border-color: #00255e; }
.b-violet { border-color: #52197e; }
.b-magenta { border-color: #d33682; }

.b-red-hover:hover { border-color: #bd1313; }
.b-orange-hover:hover { border-color: #ec4e1b; }
.b-yellow-hover:hover { border-color: #ffc300; }
.b-green-hover:hover { border-color: #00993f; }
.b-blue-hover:hover { border-color: #268bd2; }
.b-indigo-hover:hover { border-color: #00255e; }
.b-violet-hover:hover { border-color: #52197e; }
.b-magenta-hover:hover { border-color: #d33682; }

.bg-red-dim { background-color: #5e0909; }
.bg-orange-dim { background-color: #78280d; }
.bg-yellow-dim { background-color: #806200; }
.bg-green-dim { background-color: #004d20; }
.bg-blue-dim { background-color: #134569; }
.bg-indigo-dim { background-color: #001330; }
.bg-violet-dim { background-color: #2a0d40; }
.bg-magenta-dim { background-color: #6b1c42; }

.c-red-dim { color: #5e0909; }
.c-orange-dim { color: #78280d; }
.c-yellow-dim { color: #806200; }
.c-green-dim { color: #004d20; }
.c-blue-dim { color: #134569; }
.c-indigo-dim { color: #001330; }
.c-violet-dim { color: #2a0d40; }
.c-magenta-dim { color: #6b1c42; }

.b-red-dim { border-color: #5e0909; }
.b-orange-dim { border-color: #78280d; }
.b-yellow-dim { border-color: #806200; }
.b-green-dim { border-color: #004d20; }
.b-blue-dim { border-color: #134569; }
.b-indigo-dim { border-color: #001330; }
.b-violet-dim { border-color: #2a0d40; }
.b-magenta-dim { border-color: #6b1c42; }

.bg-red-dim-hover:hover { background-color: #5e0909; }
.bg-orange-dim-hover:hover { background-color: #78280d; }
.bg-yellow-dim-hover:hover { background-color: #806200; }
.bg-green-dim-hover:hover { background-color: #004d20; }
.bg-blue-dim-hover:hover { background-color: #134569; }
.bg-indigo-dim-hover:hover { background-color: #001330; }
.bg-violet-dim-hover:hover { background-color: #2a0d40; }
.bg-magenta-dim-hover:hover { background-color: #6b1c42; }

.c-red-dim-hover:hover { color: #5e0909; }
.c-orange-dim-hover:hover { color: #78280d; }
.c-yellow-dim-hover:hover { color: #806200; }
.c-green-dim-hover:hover { color: #004d20; }
.c-blue-dim-hover:hover { color: #134569; }
.c-indigo-dim-hover:hover { color: #001330; }
.c-violet-dim-hover:hover { color: #2a0d40; }
.c-magenta-dim-hover:hover { color: #6b1c42; }

.b-red-dim-hover:hover { border-color: #5e0909; }
.b-orange-dim-hover:hover { border-color: #78280d; }
.b-yellow-dim-hover:hover { border-color: #806200; }
.b-green-dim-hover:hover { border-color: #004d20; }
.b-blue-dim-hover:hover { border-color: #134569; }
.b-indigo-dim-hover:hover { border-color: #001330; }
.b-violet-dim-hover:hover { border-color: #2a0d40; }
.b-magenta-dim-hover:hover { border-color: #6b1c42; }

/* Outlines */
.o-n { border-width: 0; border-style: solid; }
.o-a { border-width: 1px; border-style: solid; }
.o-tb { border-top-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-bottom-style: solid; }
.o-lr { border-left-width: 1px; border-right-width: 1px; border-left-style: solid; border-right-style: solid; }
.o-3d { border-bottom-width: 5px; border-style: solid; }

.rounded-light { border-radius: 5px; }
.rounded-medium { border-radius: 10px; }
.rounded-heavy { border-radius: 25px; }

/* Default textual */
p, ul, ol, span, blockquote { font-size: 16px; line-height: 24px; }
p, blockquote { margin: 0 0 16px 0; padding: 0; }
ul, ol { margin: 0 0 16px 0; }
p:last-child, ul:last-child, ol:last-child, blockquote:last-child { margin: 0; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-weight: bold; text-decoration: none; padding: 0; margin: 0 0 20px 0; }
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a, h6 a, .h6 a { text-decoration: none !important; }
h1, .h1 { font-size: 36px; line-height: 40px; }
h2, .h2 { font-size: 32px; line-height: 36px; }
h3, .h3 { font-size: 28px; line-height: 32px; }
h4, .h4 { font-size: 24px; line-height: 28px; }
h5, .h5 { font-size: 20px; line-height: 24px; }
h6, .h6 { font-size: 16px; line-height: 20px; }
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child { margin-bottom: 0; padding-bottom: 0; }

a { border: none; outline: none; font-weight: 400; text-decoration: underline; cursor: pointer; }

strong { font-weight: 700; }

/* Keep images contained */
img { max-width: 100%; height: auto; border: none; outline: none; }

/* Layout */
.fullwidth { width: 100%; margin: 0; padding: 0; }
.container { width: 100%; max-width: 1100px; margin: 0 auto; padding: 0; position: relative; }
.t-container { display: table; width: 100%; margin: 0 auto; padding: 0; }
.section { }
.section:after { display: table; content: ""; clear: both; float: none; }
.section + .section { margin: 30px 0 0 0; }
.logical-block { /*border-top: 1px dashed red; border-bottom: 1px dashed red;*/ }

.standard-h-pad { padding-left: 15px; padding-right: 15px; }
.standard-v-pad { padding-top: 30px; padding-bottom: 30px; }
.big-h-pad { padding-left: 46px; padding-right: 46px; }
.big-v-pad { padding-top: 46px; padding-bottom: 46px; }
.mobile-h-pad { padding-left: 0px; padding-right: 0px; }
.mobile-v-pad { padding-top: 0px; padding-bottom: 0px; }

.cell-h-small-pad { padding-left: 16px; padding-right: 16px; }
.cell-v-small-pad { padding-top: 16px; padding-bottom: 16px; }
.cell-h-medium-pad { padding-left: 32px; padding-right: 32px; }
.cell-v-medium-pad { padding-top: 32px; padding-bottom: 32px; }
.cell-h-big-pad { padding-left: 46px; padding-right: 46px; }
.cell-v-big-pad { padding-top: 46px; padding-bottom: 46px; }

/* Columns */
.col-1 { width: 100%; }
.col-2 { width: 50%; }
.col-3 { width: 33.33333%; }
.col-4 { width: 25%; }
.col-5 { width: 20%; }
.col-6 { width: 16.66666%; }
.col-7 { width: 14.28571%; }
.col-8 { width: 12.5%; }
.col-9 { width: 11.11111%; }
.col-10 { width: 10%; }
.col-11 { width: 9.0909%; }
.col-12 { width: 8.33333%; }

/* Column Types */
.b-col { display: block; float: left; clear: none; margin: 0; position: relative; }
.ib-col { display: inline-block; vertical-align: top; position: relative; }
.t-col { display: table-cell; }

.d-b { display: block; }

/* Column Modifiers */
.r-flip-cols { direction: rtl; }
.r-flip-col { text-align: left; direction: ltr; }

.ib-v-m, .t-v-m { vertical-align: middle; }
.ib-v-t, .t-v-t { vertical-align: top; }
.ib-v-b, .t-v-b { vertical-align: bottom; }

/* Column Widths */
.w-5, .w-5[class^="col-"] { width: 5%; }
.w-10, .w-10[class^="col-"] { width: 10%; }
.w-15, .w-15[class^="col-"] { width: 15%; }
.w-20, .w-20[class^="col-"] { width: 20%; }
.w-25, .w-25[class^="col-"] { width: 25%; }
.w-30, .w-30[class^="col-"] { width: 30%; }
.w-35, .w-35[class^="col-"] { width: 35%; }
.w-40, .w-40[class^="col-"] { width: 40%; }
.w-45, .w-45[class^="col-"] { width: 45%; }
.w-50, .w-50[class^="col-"] { width: 50%; }
.w-55, .w-55[class^="col-"] { width: 55%; }
.w-60, .w-60[class^="col-"] { width: 60%; }
.w-65, .w-65[class^="col-"] { width: 65%; }
.w-70, .w-70[class^="col-"] { width: 70%; }
.w-75, .w-75[class^="col-"] { width: 75%; }
.w-80, .w-80[class^="col-"] { width: 80%; }
.w-85, .w-85[class^="col-"] { width: 85%; }
.w-90, .w-90[class^="col-"] { width: 90%; }
.w-95, .w-95[class^="col-"] { width: 95%; }

/* Column Gutters */
.gut { padding-left: 8px; padding-right: 8px; }
.gut:first-of-type { padding-right: 8px; padding-left: 0; }
.gut:last-of-type { padding-right: 0; padding-left: 8px; }

.r-flip-col.gut:first-of-type { padding-right: 0; padding-left: 8px; }
.r-flip-col.gut:last-of-type { padding-right: 8px; padding-left: 0; }

.no-gut { padding: 0 !important; }

.clear:after { display: table; clear: both; content: ""; }

/* Topbar */
#topbar { padding: 10px 0; text-align: right; font-size: 16px; line-height: 22px; font-weight: 300; }
#topbar ul { padding: 0; margin: 0; list-style: none; }
#topbar ul li { display: inline-block; margin: 0; }
#topbar ul li + li { display: margin: 0 0 0 15px; }

/* Logo */
#header { background: #fff; z-index: 100000; }
#header .logo { display: block; float: left; /*border: none; outline: none;*/ cursor: pointer; }
#footer .logo { display: table; width: auto; border: none; outline: none; }
#header .logo img, #footer .logo img { display: block; height: 100%; width: auto; border: none; outline: none; }

/* Top nav */
#header nav { position: relative; float: right; }
#header nav::after { display: table; clear: both; content: ""; float: none; }
#header nav a { text-decoration: none; display: block; cursor: pointer; }
#header nav ul { display: flex; float: right; flex-direction: row; flex-wrap: wrap; padding: 0; margin: 0; list-style: none; }
#header nav > ul { position: relative; display: flex; }
#header nav > ul > li { position: relative; float: left; }
#header nav > ul > li:hover > .sub-menu { display: block; }
#header nav > ul > li > a { font-size: 16px; line-height: 22px; font-weight: 700; transition: color 0.3s ease; }
#header nav > ul > li > a:hover, #header nav > ul > li:hover > a { transition: color 0.3s ease; }
#header nav > ul > li.callout > a { transition: background-color 0.3s ease, color 0.3s ease; }
#header nav > ul > li.callout > a:hover { transition: background-color 0.3s ease, color 0.3s ease; }

.search-activator { display: inline-block; }
.search-activator:after { font-family: 'FontAwesome'; content: "\f002"; display: inline-block; font-size: 18px; line-height: 18px; position: relative; margin: -3px 0 0 0; }
.search-text { display: none; margin: 0 8px 0 0; }

/* Standard dropdown */
#header nav .sub-menu { width: auto; white-space: nowrap; display: none; position: absolute; margin: 0; padding: 0; left: 0; right: auto; z-index: 10; top: 100%; }
#header nav .sub-menu.align-right { left: auto; right: 0; }
#header nav .sub-menu li a { padding: 10px 25px; }
#header nav .sub-menu li a:hover { }

/* Mobile search */
.mobile-search { display: none; padding: 20px 10px; position: relative; }
.mobile-search form { display: block; position: relative; }
.mobile-search form input { display: inline-block; margin: 0px; width: 100%; font-size: 20px; line-height: 20px; -webkit-appearance: none; border-radius: 0; padding: .8em 3em .8em 1.5em; }
.mobile-search form input::-webkit-input-placeholder { color: #fff; }
.mobile-search form:after { content: "\f002"; font-family: 'FontAwesome'; display: block; position: absolute; top: 0; right: 0; padding: .8em 1.5em .8em 1.5em; font-size: 22px; font-weight: 300; }

/* Heroes */
.hero { overflow: hidden; position: relative; height: 0; display: table; width: 100%; background-repeat: repeat; background-position: center; }
.hero-big { padding-bottom: 50%; }
.hero-medium { padding-bottom: 37%; }
.hero-small { padding-bottom: 25%; }

.hero-bg-light { background-image: url(../img/img-placeholder-light.png);  }
.hero-bg-medium { background-image: url(../img/img-placeholder-medium.png); }
.hero-video-bg-medium { background-image: url(../img/video-placeholder-medium.png); }
.hero-bg-dark { background-image: url(../img/img-placeholder-dark.png); }

.hero-min-small { min-height: 200px; }
.hero-min-medium { min-height: 300px; }
.hero-min-large { min-height: 400px; }

.hero-inner { display: table; position: absolute; width: 100%; height: 100%; }
.hero-content { display: table-cell; vertical-align: middle; text-align: center; padding: 20px; }
.hero-message { display: table; max-width: 775px; width: auto; margin: 0 auto; }

/* Image fillers */
.img-placeholder { width: 100%; height: 0; position: relative; background-repeat: repeat; background-position: center; background-size: auto; }
.img-placeholder-1x1 { padding-bottom: 100%; }
.img-placeholder-3x2 { padding-bottom: 66.6667%; }
.img-placeholder-3x4 { padding-bottom: 133.33%; }
.img-placeholder-4x3 { padding-bottom: 75%; }
.img-placeholder-16x9 { padding-bottom: 56.25%; }
.img-placeholder-9x16 { padding-bottom: 177.77%; }
.img-placeholder-21x9 { padding-bottom: 42.85%; }
.img-placeholder-9x21 { padding-bottom: 233.33%; }
.img-placeholder-36x10 { padding-bottom: 27.78%; }
.img-banner { padding-bottom: 10.42%; }
.profile-bg { background-repeat: no-repeat; background-size: cover; }
.profile-bg-light { background-image: url(../img/img-profile-light.png); }
.profile-bg-medium { background-image: url(../img/img-profile-medium.png); }
.profile-bg-dark { background-image: url(../img/img-profile-dark.png); }
.img-bg-light { background-image: url(../img/img-placeholder-small-light.png); }
.img-bg-medium { background-image: url(../img/img-placeholder-small-medium.png); }
.img-bg-dark { background-image: url(../img/img-placeholder-small-dark.png); }
.img-bg-street-map { background-image: url(../img/img-street-map-dark.png); background-size: cover; background-position: center center; background-color: #ccc; }

.gap-b-small { margin-bottom: 8px; }
.gap-b-medium { margin-bottom: 16px; }
.gap-b-large { margin-bottom: 25px; }

.hamburger { display: none; }
.d-shadow { box-shadow: 0 0 5px 0 #444; }
.sticky { position: fixed; }
.all-caps { text-transform: uppercase; }

.button { margin: 16px 0; text-decoration: none; letter-spacing: 1px; cursor: pointer; }
.button-solo { margin-top: 0 !important; margin-bottom: 0 !important; }
.button-extra-small { padding: 4px 8px; }
.button-small { padding: 8px 16px; }
.button-medium { padding: 15px 30px; }
.button-large { padding: 25px 50px; }
.button:last-child { margin-bottom: 0; }
.button-inline { margin-top: 0; display: inline-block; clear: both; }
.button-block { display: table; }
.button-center { width: auto; display: table; margin-left: auto; margin-right: auto; }
.button-fullwidth { width: 100%; display: block; }
.bottom-button { position: absolute; bottom: 8px; }

.hero-controls .button-control:first-of-type { position: absolute; left: 0; top: 50%; transform: translateY(-50%); margin: 0; }
.hero-controls .button-control:last-of-type { position: absolute; right: 0; top: 50%; transform: translateY(-50%); margin: 0; }

div.sticky + div { padding-top: 94px; }
div.with-topbar.sticky + div { padding-top: 140px; }

.t-space-small { letter-spacing: 1px; }
.t-space-medium { letter-spacing: 3px; }
.t-space-large { letter-spacing: 5px; }

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

.pad-light { padding: 8px; }
.pad-medium { padding: 16px; }
.pad-big { padding: 35px; }

/* Responsive necessities */
.block-tablet-only { display: none; }
.block-mobile-only { display: none; }

.glue-to-bottom { position: relative; bottom: 0; }
.no-dots { list-style: none; padding: 0; }
.inline-list li { display: inline-block; }
.inline-list li + li { margin-left: 6px; }
.no-white-space { padding: 0; margin: 0; }
.a-block { display: block; }
.a-iblock { display: inline-block; }
.site-by-scheffey { display: inline-block; padding-right: 24px; background: url(../img/scheffey-icon.png) no-repeat right 8px center; font-size: 12px; line-height: 12px; }

/* Iconography */
.fa-nc-icon:before { font-family: 'FontAwesome'; }
.fa-nc-icon-small:before { font-size: 16px; line-height: 16px; }
.fa-nc-icon-medium:before { font-size: 28px; line-height: 28px; }
.fa-nc-icon-large:before { font-size: 36px; line-height: 36px; }
.fa-nc-icon-extra-large:before { font-size: 48px; line-height: 48px; }
.fa-nc-icon-inline:before { display: inline-block; margin-right: 5px; }
.fa-nc-icon-block:before { display: block; }

/* Common social icons */
.fa-nc-fb:before { content: '\f230'; }
.fa-nc-rss:before { content: '\f143'; }
.fa-nc-yt:before { content: '\f16a'; }
.fa-nc-twitter:before { content: '\f099'; }
.fa-nc-in:before { content: '\f0e1'; }
.fa-nc-gplus:before { content: '\f0d5'; }
.fa-nc-email:before { content: '\f003'; }
.fa-nc-pin:before { content: '\f0d2'; }
.fa-nc-ig:before { content: '\f16d'; }

label { display: block; font-size: .8em; }
input[type="text"] { border: 1px solid #aaa; padding: 8px 16px; width: 100%; margin-top: 4px; font-size: 16px; line-height: 16px; border-radius: 4px; background: #fff; color: #666; }
textarea { border: 1px solid #aaa; padding: 8px 16px; width: 100%; margin-top: 4px; font-size: 16px; line-height: 26px; border-radius: 4px; background: #fff; color: #666; }
select { color: #000; background: #fff; padding: 8px 16px; width: 100%; margin-top: 8px; margin-bottom: 16px; }
input[type="submit"] { border: none; border-radius: 4px; background: #fff; padding: 10px 20px; font-weight: bold; }

/* Search Overlay */
.search-overlay { position: fixed; display: none; height: 100%; width: 100%; text-align: center; background: rgba(255, 255, 255, 0.80); top: 0; bottom: 0; left: 0; right: 0; z-index: 100; }
.search-overlay-visible { display: table; }
.search-overlay .search-container { display: table-cell; vertical-align: middle; width: 100%; z-index: 110; }
.search-overlay .search-container form { display: inline-block; width: 100%; max-width: 600px; max-width: 60vw; padding-top: 100px; padding-bottom: 100px; }
.search-overlay .search-container form .search-container-form { width: 100%; max-width: none; position: relative; }
.search-overlay .search-container form .search-container-form input { display: inline-block; margin: 0px; width: 100%; font-size: 28px; font-size: 3.5vh; padding: .8em 3em .8em 1.5em; border: 1px solid #52197e; color: #52197e; }
.search-overlay form input::placeholder { color: #52197e; opacity: 1; }
.search-overlay form input::-webkit-input-placeholder { color: #52197e; opacity: 1; }
.search-overlay form input::-moz-placeholder { color: #52197e; opacity: 1; }
.search-overlay form input:-ms-input-placeholder { color: #52197e; opacity: 1; }
.search-overlay form input:-moz-placeholder { color: #52197e; opacity: 1; }
.search-overlay .search-container form .search-container-form:after { content: "\f002"; font-family: 'FontAwesome'; display: block; color: #52197e; position: absolute; top: 0; right: 0; padding: .8em 1.5em .8em 1.5em; font-size: 3.8vh; font-weight: bold; cursor: pointer; }

#footer form { margin-top: 8px; }
#footer form input[type="text"] { display: block; border: none; border-radius: 4px; padding: 8px; background: #fff; width: 100%; }
#footer form input[type="submit"] { margin-top: 16px; }

.grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 16px;
    align-items: center;
}

.grid-container-reverse > div:first-of-type {
	grid-column: 2;
	grid-row: 1;
}

.grid-container-reverse > div:last-of-type {
	grid-column: 1;
	grid-row: 1;
}

.gallery .masonry { column-count: 3; transition: all .5s ease-in-out; column-gap: 16px; column-fill: initial; }
.gallery .masonry .brick { margin-bottom: 16px; display: block; vertical-align: top; width: 100%; }

table tr td { padding: 4px; }

/* Desktop width limits */
@media screen and (max-width: 1100px) {
    .mobile-h-pad { padding-left: 15px; padding-right: 15px; }
    .mobile-v-pad { padding-top: 20px; padding-bottom: 20px; }
}

@media screen and (max-width: 960px) {
    .block-tablet-only { display: block; }
    .tablet-block { float: none; clear: both; display: block; width: 100% !important; }
    .gut.tablet-block { padding-left: 0; padding-right: 0; }
    .gut.tablet-block[class^="col-"]:first-of-type { padding-right: 0; padding-left: 0; }
    .gut.tablet-block[class^="col-"]:last-of-type { padding-right: 0; padding-left: 0; }
    .tablet-block + .tablet-block { margin: 30px 0 0 0; }

    .hamburger { display: block; float: right; cursor: pointer; text-decoration: none; }

    #header.mobile-menu-visible { height: 100%; overflow-y: scroll; }
	#header nav { clear: both; display: none; overflow: auto; max-height: 100%; }
	#header nav ul { float: none; clear: both; width: 100%; }
	#header nav ul a:hover {  }
	#header nav ul.sub-menu { display: none; white-space: normal; }
	#header nav > ul { float: none; width: 100%; }
	#header nav > ul > li { float: none; display: block; width: 100%; }
	#header nav > ul > li > a { /*padding: 15px 10px;*/ width: 100%; }
	#header nav > ul > li > a:hover {  }
	#header nav > ul > li > .sub-menu { position: static; padding: 0; box-shadow: none; width: 100%; }
    #header nav > ul > li > .sub-menu a { font-size: inherit; line-height: inherit; /*padding: 15px 10px;*/ }
	#header nav > ul > li:hover > .sub-menu { display: none; }
	#header nav > ul .nav-search { display: none; }

    .tw-5, .tw-5[class^="col-"] { width: 5%; }
    .tw-10, .tw-10[class^="col-"] { width: 10%; }
    .tw-15, .tw-15[class^="col-"] { width: 15%; }
    .tw-20, .tw-20[class^="col-"] { width: 20%; }
    .tw-25, .tw-25[class^="col-"] { width: 25%; }
    .tw-30, .tw-30[class^="col-"] { width: 30%; }
    .tw-35, .tw-35[class^="col-"] { width: 35%; }
    .tw-40, .tw-40[class^="col-"] { width: 40%; }
    .tw-45, .tw-45[class^="col-"] { width: 45%; }
    .tw-50, .tw-50[class^="col-"] { width: 50%; }
    .tw-55, .tw-55[class^="col-"] { width: 55%; }
    .tw-60, .tw-60[class^="col-"] { width: 60%; }
    .tw-65, .tw-65[class^="col-"] { width: 65%; }
    .tw-70, .tw-70[class^="col-"] { width: 70%; }
    .tw-75, .tw-75[class^="col-"] { width: 75%; }
    .tw-80, .tw-80[class^="col-"] { width: 80%; }
    .tw-85, .tw-85[class^="col-"] { width: 85%; }
    .tw-90, .tw-90[class^="col-"] { width: 90%; }
    .tw-95, .tw-95[class^="col-"] { width: 95%; }

    .tcol-1 { width: 100%; }
    .tcol-2 { width: 50%; }
    .tcol-3 { width: 33.33333%; }
    .tcol-4 { width: 25%; }
    .tcol-5 { width: 20%; }
    .tcol-6 { width: 16.66666%; }
    .tcol-7 { width: 14.28571%; }
    .tcol-8 { width: 12.5%; }
    .tcol-9 { width: 11.11111%; }
    .tcol-10 { width: 10%; }
    .tcol-11 { width: 9.0909%; }
    .tcol-12 { width: 8.33333%; }

	/* Standard dropdown */
	/*#header nav .menu-item-has-children > a::after { display: inline-block; content: "\f0d7"; margin: 0 0 0 8px; font-family: 'FontAwesome'; }*/
	/*#header nav .sub-menu li a { padding-left: 20px !important; }
	#header nav .sub-menu .sub-menu li a { padding-left: 30px !important; }*/

	/* Mobile search */
	.mobile-search { display: block; }
    .tablet-hide { display: none; }
    .tablet-unstick { position: static; }
    div.sticky.tablet-unstick + div { padding-top: 0; }
    div.with-topbar.sticky.tablet-unstick + div { padding-top: 0; }

    .r-flip-cols { direction: ltr; }
    .r-flip-col.gut:first-of-type { padding-left: 0; padding-right: 0; }
	.r-flip-col.gut:last-of-type { padding-right: 0; padding-left: 0; }

	.grid-container {
	    display: grid;
	    grid-template-columns: 1fr;
	    grid-gap: 16px;
	    align-items: center;
	}

	.grid-container-reverse > div:first-of-type {
		grid-column: auto;
		grid-row: auto;
	}

	.grid-container-reverse > div:last-of-type {
		grid-column: auto;
		grid-row: auto;
	}

	.grid-container + .grid-container { margin-top: 32px; }
}

@media screen and (max-width: 768px) {
    .block-mobile-only { display: block; }
    .mobile-block { float: none; clear: both; display: block; width: 100% !important; }
    .mobile-block + .mobile-block { margin: 20px 0 0 0; }
    .tablet-block + .mobile-block { margin: 20px 0 0 0; }
    .mobile-hide { display: none; }
    .mobile-unstick { position: static; }
    div.sticky.mobile-unstick + div { padding-top: 0; }
    div.with-topbar.sticky.mobile-unstick + div { padding-top: 0; }
    .gut.mobile-block { padding-left: 0; padding-right: 0; }
    .gut.mobile-block[class^="col-"]:first-of-type { padding-right: 0; padding-left: 0; }
    .gut.mobile-block[class^="col-"]:last-of-type { padding-right: 0; padding-left: 0; }

    .mw-5, .mw-5[class^="col-"] { width: 5%; }
    .mw-10, .mw-10[class^="col-"] { width: 10%; }
    .mw-15, .mw-15[class^="col-"] { width: 15%; }
    .mw-20, .mw-20[class^="col-"] { width: 20%; }
    .mw-25, .mw-25[class^="col-"] { width: 25%; }
    .mw-30, .mw-30[class^="col-"] { width: 30%; }
    .mw-35, .mw-35[class^="col-"] { width: 35%; }
    .mw-40, .mw-40[class^="col-"] { width: 40%; }
    .mw-45, .mw-45[class^="col-"] { width: 45%; }
    .mw-50, .mw-50[class^="col-"] { width: 50%; }
    .mw-55, .mw-55[class^="col-"] { width: 55%; }
    .mw-60, .mw-60[class^="col-"] { width: 60%; }
    .mw-65, .mw-65[class^="col-"] { width: 65%; }
    .mw-70, .mw-70[class^="col-"] { width: 70%; }
    .mw-75, .mw-75[class^="col-"] { width: 75%; }
    .mw-80, .mw-80[class^="col-"] { width: 80%; }
    .mw-85, .mw-85[class^="col-"] { width: 85%; }
    .mw-90, .mw-90[class^="col-"] { width: 90%; }
    .mw-95, .mw-95[class^="col-"] { width: 95%; }

    .mcol-1 { width: 100%; }
    .mcol-2 { width: 50%; }
    .mcol-3 { width: 33.33333%; }
    .mcol-4 { width: 25%; }
    .mcol-5 { width: 20%; }
    .mcol-6 { width: 16.66666%; }
    .mcol-7 { width: 14.28571%; }
    .mcol-8 { width: 12.5%; }
    .mcol-9 { width: 11.11111%; }
    .mcol-10 { width: 10%; }
    .mcol-11 { width: 9.0909%; }
    .mcol-12 { width: 8.33333%; }

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

	.gallery .masonry { column-count: 2; }
}

@media screen and (max-width: 480px) {
    .small-mobile-block { display: block; width: 100%; }

    .umw-5, .umw-5[class^="col-"] { width: 5%; }
    .umw-10, .umw-10[class^="col-"] { width: 10%; }
    .umw-15, .umw-15[class^="col-"] { width: 15%; }
    .umw-20, .umw-20[class^="col-"] { width: 20%; }
    .umw-25, .umw-25[class^="col-"] { width: 25%; }
    .umw-30, .umw-30[class^="col-"] { width: 30%; }
    .umw-35, .umw-35[class^="col-"] { width: 35%; }
    .umw-40, .umw-40[class^="col-"] { width: 40%; }
    .umw-45, .umw-45[class^="col-"] { width: 45%; }
    .umw-50, .umw-50[class^="col-"] { width: 50%; }
    .umw-55, .umw-55[class^="col-"] { width: 55%; }
    .umw-60, .umw-60[class^="col-"] { width: 60%; }
    .umw-65, .umw-65[class^="col-"] { width: 65%; }
    .umw-70, .umw-70[class^="col-"] { width: 70%; }
    .umw-75, .umw-75[class^="col-"] { width: 75%; }
    .umw-80, .umw-80[class^="col-"] { width: 80%; }
    .umw-85, .mw-85[class^="col-"] { width: 85%; }
    .umw-90, .umw-90[class^="col-"] { width: 90%; }
    .umw-95, .umw-95[class^="col-"] { width: 95%; }

    .umcol-1 { width: 100%; }
    .umcol-2 { width: 50%; }
    .umcol-3 { width: 33.33333%; }
    .umcol-4 { width: 25%; }
    .umcol-5 { width: 20%; }
    .umcol-6 { width: 16.66666%; }
    .umcol-7 { width: 14.28571%; }
    .umcol-8 { width: 12.5%; }
    .umcol-9 { width: 11.11111%; }
    .umcol-10 { width: 10%; }
    .umcol-11 { width: 9.0909%; }
    .umcol-12 { width: 8.33333%; }

	.gallery .masonry { column-count: 1; }
}

/* Theme specifics */
#header .logo { margin: 10px 0; width: auto; height: 64px; }
#footer .logo { margin: 0 0 15px 0; max-width: 275px; }
#footer .logo img { height: 100%; width: auto; }
#header nav > ul > li > a { margin: 0; padding: 30px 10px; display: flex; align-items: center; justify-content: center; }
.hero-controls { display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

@media screen and (max-width: 960px) {
    .hamburger { padding: 25px 20px; font-size: 16px; line-height: 16px; margin: 26px 0; }
    .hero-message { font-size: 24px; line-height: 28px; }
	#header .logo { margin: 33px 0; }
	#header nav > ul > li > a { padding: 16px; }
}
