@import url("https://use.typekit.net/zjz3whs.css");
@import url("//hello.myfonts.net/count/3ce256");
@font-face {
  font-family: 'Alkes-RegularItalic';
  src: url('https://assets.nickgreene.com/files/1/fonts/font.woff2') format('woff2'),
    url('https://assets.nickgreene.com/files/1/fonts/font.woff') format('woff');
}

:root {
  --label-color: #95216b;
}

:where(.front) body {
  background: #FAFAFA;
  color: #353535;
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-size: 18px;
  font-weight: 300;
}

:where(.front) h1 {
  font-size: 2.2rem;
  margin-top: 1.5rem;
}

:where(.front) h1,
:where(.front) h2,
:where(.front) h3,
:where(.front) h4,
:where(.front) h5,
:where(.front) h6 {
  color: #33384a;
  font-family: filson-pro, sans-serif;
  font-weight: 400;
  text-align: center;
}

:where(.front) ul {
  margin-left: 2rem;
}

:where(.front) ul li::marker {
  font-size: .75em;
}

.page-header__desktop {
  font-size: .85rem;
}

/*
.page-header__mobile .logo .logo__img,
.page-header__mobile .logo svg {
  height: 34px;
}
*/

.page-header__mobile .logo {
  padding: 5px .85rem;
  text-decoration: none;
}

.page-header__mobile .page-header__columns .right .button[aria-label="Home"] {
  display: none;
}

.mobile-nav {
  font-size: 1.4rem;
  padding-top: 3rem;
  text-align: center;
}

.mobile-nav a:active span,
.mobile-nav a:focus span,
.mobile-nav a:hover span,
.mobile-nav a span {
  text-decoration: none;
}

.mobile-nav > .nav > .nav-item {
  position: relative;
}

/*.mobile-nav > .nav > .nav-item::after {
  background: #fff;
  content: '';
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 80px;
}*/

.mobile-nav > .nav > .nav-item > span,
.mobile-nav > .nav > .nav-item > a {
  font-weight: 500;
}

.page-subheader {
  padding: 40px 1rem !important;
  transition: padding .25s ease-in-out;
}
.smaller-header .page-subheader {
  padding: 5px 1rem !important;
}
.page-subheader  .subheader__tagline img {
  width: 1000px !important;
}

/********** tagline **************/

.subheader__tagline {
  margin: 0 auto;
}
.subheader__tagline p {
  color: #0f0b1e;
  font-family: 'Alkes-RegularItalic';
  font-size: 1.7rem;
}
.subheader__tagline p span {
  font-family: 'Roboto', sans-serif;
  font-size: 2rem;
}
.subheader__tagline {
  transition: width .5s ease-in-out;
}
.subheader__tagline img {
  transition: width .5s ease-in-out;
}
.smaller-header .subheader__tagline img {
  width: 800px !important;
}
/********** //tagline **************/


/***********   FORMS *****************/
:where(.front) label, :where(.front) .mimic-label {
  color: var(--label-color);
}

:where(.front) label .asterisk, :where(.front) legend .asterisk {
  color: var(--label-color);
}

.global-form-errors {
  background: #f4f4f4;
  margin-bottom: 1rem;
  padding: 2.5rem;
}

.global-form-errors .callout {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
}

.global-form-errors .alert {
  margin: 0;
}

.form-error, .is-invalid-label {
  color: #ff162a;
  font-size: 0.8rem;
  font-weight: 400;
}

.form-error ul {
  margin: 0;
}

.form-error li {
  list-style-type: none;
}

.form-group:where(.with-error) > label {
  color: var(--label-color);
}

.as-buttons .form-check {
  margin-right: 1rem;
}

.as-buttons .form-check-label {
  --active-background-color: transparent;
  --active-border-color: #385132;
  --active-text-color: #000;
  border-radius: 9px;
  border-width: 2px;
  min-width: 220px;
  padding-block: .75rem;
  padding-inline: 1rem;
  text-align: center;
}

.as-buttons .form-check-input {
  margin: 0 0.25rem 0 0;
  position: static;
}
/*********** //FORMS ************/


/***********   PORTFOLIO *****************/
.portfolio-main-pic img {
  border: 1px solid #CCC;
}

.portfolio-services-list {}

.portfolio-services-list em {
  font-style: normal;
  font-weight: 700;
}
.portfolio-services-list ul {
  margin-left: 0;
}
.portfolio-services-list ul li {
  list-style-type: none;
  margin-left: 0;
  padding: 0 0 8px 0;
}

/**** PROJECTS ***********************/
.project__thumbnail img {
    border-radius: 0;
}
.project__thumbnail {
  border: 1px solid #bbb;
  border-radius: 3px;
  margin: 0 auto 0.55rem;
}
.project__thumbnail:hover {
  border-color: #959595;
}
.project__client {
  color: #5b5b5b;
  margin-bottom: .2rem;
}
.project__name a {
  font-weight: 500;
}
/***** //PROJECTS ********************/

/**** PROJECT DETAIL ***********************/
.project-det__name {
  font-size: 2.5rem;
  font-weight: 400;
}
.project-det__photo {
  border: 1px solid #bbb;
  margin-bottom: 2rem;
}
.project-det__service a {
  font-family: filson-soft, sans-serif;
  font-weight: normal;
  font-size: .8rem;
  padding: 3px 12px 0 6px;
}
/***** //PROJECT DETAIL ********************/

/**** SOME OF OUR OTHER ***********************/
.some-of-our-other h2 {
  font-family: filson-soft, sans-serif;
  font-size: 1.7rem;
  margin-top: 6rem;
}
.random-project-code {
  margin-bottom: 6rem;
}
.random-projects .project__thumbnail {
  margin: 0 auto .85rem;
}
.random-projects .project__client {
  color: #5b5b5b;
  margin-bottom: .2rem;
}
.random-projects .project__name a {
  font-weight: 500;
}
/**** //SOME OF OUR OTHER ***********************/

/**** SERVICES ***********************/
.deco-service-icon img {
  max-width: 140px;
}
.deco-service-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.service-text p {
  color: #000;
  font-size: 1.1rem;
  /*text-align: justify;*/
}
/**** // SERVICES ***********************/

.page-footer {
  background: url(https://assets.nickgreene.com/files/1/2020/header-bg-95452-footer3.jpg);
  background-repeat: no-repeat;
  background-size: auto;
  padding: 6rem 0 2rem;
}
.page-footer p {
  font-size: .8rem;
  font-weight: 500;
  text-transform: uppercase;
}
.page-footer a {
  color: #201ae1;
  padding-left: 25px;
  text-decoration: underline;
}

.page-footer .address-contact-wide, .page-footer .address-contact-narrow {
  margin-bottom: 1rem;
}
.page-footer .address-contact-wide p, .page-footer .address-contact-narrow p {
  font-family: filson-pro, sans-serif;
  font-size: .9rem;
  font-weight: 400;
}
.page-footer .address-contact-narrow p {
  font-size: .8rem;
  line-height: 1.7;
}
.page-footer .address-contact-wide p span, .page-footer .address-contact-narrow p span {
  padding: 0 10px;
}
.page-footer .address-contact-wide a, .page-footer .address-contact-narrow a {
  padding-left: 0;
}
.address-contact-wide {
  display: none;
}
.address-contact-narrow {
  display: block;
}


.page-footer .social-icons {
  padding: 0;
}
.page-footer .social-icons a {
  padding-right: 12px;
  padding-left: 0;
}
.page-footer .social-icons a:last-child {
  padding-right: 0;
  padding-left: 0;
}

:where(.front) .button,
:where(.front) .button.primary {
  background: #fff;
  border: 2px solid #0e542f;
  border-radius: 6px;
  color: #000;
  font-weight: 400;
}

:where(.front) strong {
  font-weight: 500;
}

.support-text-blurb {
  max-width: 100%;
}

.datecode-ur {
  color: transparent;
}

.datecode-ur p {
  font-size: .8rem;
  font-family: Arial, sans-serif;
  margin-top: 6rem;
}
:root { --body-font-family: "Roboto", sans-serif; }
@media (min-width: 768px) {
.support-text-blurb {
  max-width: 90%;
}
}
@media (min-width: 1280px) {
:where(.front) h1 {
  font-size: 2.5rem;
}

.page-header__desktop .page-header__main .desktop-menu .nav.menu > li > a,
.page-header__desktop .page-header__main .desktop-menu .nav.menu > li > span {
  margin-left: 0.8rem;
}

.page-header__desktop .page-header__main .desktop-menu .nav.menu > li.dropdown:after {
  border-bottom-color: rgba(175,235,124,1);
}

.page-header__desktop .page-header__main .desktop-menu .dropdown-menu {
  background: rgb(175,235,124);
  background: linear-gradient(190deg, rgba(175,235,124,1) 0%, rgba(142,227,216,1) 100%);
  min-width: 370px;
}

.page-header__desktop .page-header__main .desktop-menu .dropdown-menu a {
  color: #000;
  font-size: .8rem;
  font-weight: 500;
  padding: .5rem 1rem;
  text-transform: uppercase;
}
.page-header__desktop .page-header__main .desktop-menu .dropdown-menu a:hover {
  background: #FFF;
  color: #000;
}

.home .page-subheader {
  padding: 100px 1rem !important;
}
.home.smaller-header .page-subheader {
  padding: 15px 1rem !important;
}

.address-contact-wide {
  display: block;
}
.address-contact-narrow {
  display: none;
}

.support-text-blurb {
  max-width: 750px;
}
}
@media (min-width: 1440px) {
:where(.front) h1 {
  font-size: 3rem;
}

.page-header__desktop .page-header__main .desktop-menu .nav.menu > li > a,
.page-header__desktop .page-header__main .desktop-menu .nav.menu > li > span {
  margin-left: 0.8rem;
}

.page-header__desktop .page-header__main .desktop-menu .dropdown.menu,
.page-header__desktop .page-header__main .desktop-menu .dropdown.menu {
  margin-right: -0.8rem;
}

.page-subheader {
  padding: 50px 1rem !important;
}
.home .page-subheader {
  padding: 160px 1rem !important;
}
}
.page-header__desktop .site-logo img,
.page-header__desktop .site-logo svg {
width: 205px;
height: 32px;
}

.smaller .page-header__desktop .site-logo img,
.smaller .page-header__desktop .site-logo svg {
width: 205px;
height: 32px;
}

@media screen and (max-width: 3000px) {
  .subheader__tagline {
    margin: 0 auto;
  }
  .subheader__tagline p {
    font-size: 1.7rem;
  }
  .subheader__tagline p span {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1060px) {
  .subheader__tagline {
    margin: 0 auto;
  }
  .subheader__tagline p {
    font-size: 1.8rem;
  }
  .subheader__tagline p span {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 960px) {
  .subheader__tagline {
    margin: 0 auto;
  }
  .subheader__tagline p {
    font-size: 1.4rem;
  }
  .subheader__tagline p span {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 750px) {
  .subheader__tagline {
    margin: 10px auto 15px;
  }
  .subheader__tagline p {
    font-size: 1.2rem;
  }
  .subheader__tagline p span {
    font-size: 1.1rem;
  }
  .subheader__tagline p span:nth-child(2) {
    display: block;
    height: 0;
    opacity: 0;
    overflow: hidden;
  }
  .subheader__tagline p span:nth-child(2):before {
    content: ' ';
    clear: both;
  }
}
@media screen and (max-width: 438px) {
  .subheader__tagline {
    margin: 10px auto 15px;
  }
}