/* ==========================================================================
   #Site Global Sizes
   ========================================================================== */
.no-squish {
  flex: none;
}

/* --Hover Mixin.--*/
/* -- Cross browser opacity.--*/
/* -- Animation.--*/
/* -- Hide Elements.--*/
.m-hide {
  display: none;
  visibility: hidden;
  opacity: 0;
}
@media (min-width: 46.25em) {
  .m-hide {
    display: block;
    visibility: visible;
    opacity: 1;
  }
}

.m-t-hide {
  display: none;
  visibility: hidden;
  opacity: 0;
}
@media (min-width: 61.25em) {
  .m-t-hide {
    display: block;
    visibility: visible;
    opacity: 1;
  }
}

.t-hide {
  display: block;
  visibility: visible;
  opacity: 1;
}
@media (min-width: 46.25em) {
  .t-hide {
    display: none;
    visibility: hidden;
    opacity: 0;
  }
}

.d-hide {
  display: block;
  visibility: visible;
  opacity: 1;
}
@media (min-width: 61.25em) {
  .d-hide {
    display: none;
    visibility: hidden;
    opacity: 0;
  }
}

.hide {
  display: none;
}

/* -- Fill Elements.--*/
.f-width {
  width: 100%;
}

.f-height {
  height: 100%;
}

.absolute-full {
  position: absolute;
}

/* -- Background Image --*/
.back-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* -- Centre Content --*/
/* === Flexbox Center === */
/* -- Centre Text --*/
.has-text-c {
  text-align: center;
}

.pos-rel {
  position: relative;
}

.follow-icons,
.no-list > * {
  list-style: none;
}

/* -- Absolute Center --*/
/* ==========================================================================
   #Site Global Colours
   ========================================================================== */
/*#99999b*/
/*$brand-grey-white:       	#ffffff!default;
$brand-grey-light:       	#a0a0a0!default;*/
/*Architecture*/
.colour1, li.lead.architecture a, li.architecture a:hover, .architecture span.tag {
  color: #2E67B1;
}

.architecture.top-bar, .architecture .royalSlider img {
  border-top-color: #2E67B1;
}

/*Travel*/
.colour2, li.lead.travel a, li.travel a:hover, .travel span.tag {
  color: #349946;
}

.travel.top-bar, .travel .royalSlider img, .work-area-travel .royalSlider img {
  border-top-color: #349946;
}

/*Portraits*/
.colour3, li.lead.portraits a, li.portraits a:hover, .portraits span.tag {
  color: #cb2026;
}

.portraits.top-bar, .portraits .royalSlider img {
  border-top-color: #cb2026;
}

/*Film*/
.colour4, li.lead.film a, li.film a:hover, .film span.tag {
  color: #f7931d;
}

.film.top-bar {
  border-top-color: #f7931d;
}

/*about*/
.colour5, body.page-about li.current-menu-item a, li#menu-item-172 a:hover {
  color: #F8D712;
}

.top-bar.about-bar {
  border-top-color: #F8D712;
}

/*Clients*/
.colour6, body.page-clients li.current-menu-item a, li#menu-item-171 a:hover {
  color: #ab4c9c;
}

.top-bar.clients-bar {
  border-top-color: #ab4c9c;
}

/*Contact*/
.colour7, body.page-contact li.current-menu-item a, li#menu-item-170 a:hover {
  color: #38BFC3;
}

.top-bar.contact-bar {
  border-top-color: #38BFC3;
}

.shop_link.top-bar,
.newsletter.top-bar,
.syn-page.top-bar {
  border-top-color: #a0a0a0;
}

/*--------------------------------------------------------------
# Clearing
--------------------------------------------------------------*/
.clear::after {
  display: block;
  content: "";
  clear: both;
}

/*--------------------------------------------------------------
# Animation Control
--------------------------------------------------------------*/
a, li,
a[href^=mailto] {
  -webkit-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -moz-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -ms-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -o-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-15px);
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-15px);
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
@-ms-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-15px);
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
@-o-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-15px);
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-15px);
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
.arrow-down svg {
  -webkit-animation: bounce 3s infinite;
  -moz-animation: bounce 3s infinite;
  -ms-animation: bounce 3s infinite;
  -o-animation: bounce 3s infinite;
  animation: bounce 3s infinite;
}

/*
.site-header {
	 @include menu-animation;
	    animation-duration: 0.5s;
	    animation-fill-mode: both;
	    will-change: transform, opacity;

		&.floating-head-fixed_scrolled,
	  	&.header-up {
	    animation-name: slideDown;
	  }

	  &.header-down {
	    animation-name: slideUp;
	  }
}*/
@-webkit-keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@-moz-keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@-ms-keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@-o-keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@-moz-keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@-ms-keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@-o-keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
/* Lazy Loading
   ===========================================================*/
/* fade image in after load */
.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  -webkit-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -moz-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -ms-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  -o-transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 450ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

@-webkit-keyframes fadein {
  to {
    opacity: 1;
  }
}
@-moz-keyframes fadein {
  to {
    opacity: 1;
  }
}
@-ms-keyframes fadein {
  to {
    opacity: 1;
  }
}
@-o-keyframes fadein {
  to {
    opacity: 1;
  }
}
@keyframes fadein {
  to {
    opacity: 1;
  }
}
.swiper-slide-active .hero-slider__desc,
.element-fadein {
  opacity: 0;
  -webkit-animation: fadein 450ms .5s ease forwards;
  -moz-animation: fadein 450ms .5s ease forwards;
  -ms-animation: fadein 450ms .5s ease forwards;
  -o-animation: fadein 450ms .5s ease forwards;
  animation: fadein 450ms .5s ease forwards;
}

/* ==========================================================================
   #Site Grid Sizes
   ========================================================================== */
/*Level Elements*/
.g-wrap {
  display: grid;
  grid-template-rows: auto;
  grid-gap: 1.25rem;
}
@media (min-width: 46.25em) {
  .g-wrap {
    grid-gap: 2.5rem;
  }
}

.equal-spread {
  justify-content: space-between;
}

@media (min-width: 46.25em) {
  .g-12-default {
    grid-template-columns: repeat(12, 1fr);
  }
}

.g-6-12-default {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 46.25em) {
  .g-6-12-default {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media (min-width: 61.25em) {
  .g-6-12-default {
    grid-template-columns: repeat(12, 1fr);
  }
}

.g-4-default {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 46.25em) {
  .g-4-default {
    grid-template-columns: repeat(4, 1fr);
  }
}

.g-5-default {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 46.25em) {
  .g-5-default {
    grid-template-columns: repeat(5, 1fr);
  }
}

.g-6-default {
  grid-template-columns: repeat(3, 1fr);
}
@media (min-width: 46.25em) {
  .g-6-default {
    grid-template-columns: repeat(6, 1fr);
  }
}

.logos-row__grid.g-5-default {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 46.25em) {
  .logos-row__grid.g-5-default {
    grid-template-columns: repeat(5, 1fr);
  }
}

.site-header .g-4-default {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 46.25em) {
  .site-header .g-4-default {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (min-width: 46.25em) {
  .entertainer-cols .g-4-default {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 61.25em) {
  .entertainer-cols .g-4-default {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (min-width: 46.25em) {
  .g-2-default {
    grid-template-columns: repeat(2, 1fr);
  }
}

.g-2-default .site-row__title-sub,
.g-2-default .site-row__title {
  text-align: center;
}
@media (min-width: 46.25em) {
  .g-2-default .site-row__title-sub,
  .g-2-default .site-row__title {
    grid-column: 1/-1;
  }
}

@media (min-width: 46.25em) {
  .span-1 {
    grid-column: span 1/auto;
  }
}

@media (min-width: 46.25em) {
  .span-2 {
    grid-column: span 2/auto;
  }
}

@media (min-width: 46.25em) {
  .span-3 {
    grid-column: span 3/auto;
  }
}

@media (min-width: 46.25em) {
  .span-4 {
    grid-column: span 4/auto;
  }
}

@media (min-width: 46.25em) {
  .span-5 {
    grid-column: span 5/auto;
  }
}

@media (min-width: 46.25em) {
  .span-6 {
    grid-column: span 6/auto;
  }
}

@media (min-width: 46.25em) {
  .span-7 {
    grid-column: span 7/auto;
  }
}

@media (min-width: 46.25em) {
  .span-8 {
    grid-column: span 8/auto;
  }
}

@media (min-width: 46.25em) {
  .span-10 {
    grid-column: span 10/auto;
  }
}

/**
 * This shall stop the z-index chaos
 */
/*@import "base/slick"; */
/* Structure --------------------------------- */
.wp-block {
  max-width: 1200px;
}

.wp-block .wp-block {
  max-width: 100%;
}

.editor-styles-wrapper *[data-align=wide] .wp-block-group .wp-block {
  max-width: calc(100% - 40px);
}

.editor-styles-wrapper *[data-align=full] .wp-block-group .wp-block {
  max-width: 100%;
}

.editor-styles-wrapper *[data-align=right] .editor-block-list__block-edit,
.editor-styles-wrapper *[data-align=left] .editor-block-list__block-edit,
.editor-styles-wrapper *[data-align=right] .is-block-content,
.editor-styles-wrapper *[data-align=left] .is-block-content {
  margin-bottom: 1em;
  max-width: 50%;
}

.editor-styles-wrapper *[data-align=center],
.editor-styles-wrapper *[data-align=wide],
.editor-styles-wrapper *[data-align=full] {
  margin-bottom: 30px;
  margin-top: 30px;
}

.editor-styles-wrapper *[data-align=wide] {
  max-width: 1120px;
}

.editor-styles-wrapper *[data-align=full],
.editor-styles-wrapper .wp-block[data-align=full] {
  max-width: none;
}

.editor-styles-wrapper *[data-align=wide] [data-type="core/group"]:not([data-align=wide]):not([data-align=full]),
.editor-styles-wrapper *[data-align=full] [data-type="core/group"]:not([data-align=wide]):not([data-align=full]) {
  margin-left: auto;
  margin-right: auto;
  max-width: 620px;
}

.editor-styles-wrapper *[data-align=wide] > [data-type="core/group"] {
  max-width: 1120px !important;
}

.editor-styles-wrapper *[data-align=full] > [data-type="core/group"] {
  max-width: none !important;
}

.entry-content {
  max-width: 1600px;
  margin: auto;
  width: calc(100% - 1.5625rem * 2);
}
@media (min-width: 46.25em) {
  .entry-content {
    width: calc(100% - 3.125rem * 2);
  }
}

.entry-content > .alignwide:not(.curved-box__holder) {
  padding-left: 0;
  padding-right: 0;
}

.entry-content > *.alignleft,
.entry-content > *.alignright,
.entry-content > *.alignleft:first-child + *,
.entry-content > *.alignright:first-child + *,
.entry-content > *.alignfull.has-background {
  margin-top: 0;
}

.comment-navigation,
.comments-title,
.comment-list,
.comment-form,
.post-thumbnail,
.entry-content .wp-audio-shortcode,
.entry-content > *:not(.featured-media):not(.site-m-i):not(.alignwide):not(.umii-row):not(.is-style-welcome-week-table):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce),
*[class*=inner-container] > *:not(.entry-content):not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce),
.default-max-width {
  max-width: 37.5rem;
}

.is-style-welcome-week-table,
.widget-area,
.pagination,
.comments-pagination,
.post-navigation,
.alignwide,
.wide-max-width {
  max-width: 81.25rem;
  margin-left: auto;
  margin-right: auto;
}

.body-content article ~ .alignfull,
.entry-content > .alignfull,
.wp-block-group .wp-block-group__inner-container > *.alignfull,
.full-max-width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.featured-media,
.wp-block-image,
.wp-block-image.alignwide {
  margin-bottom: 1.25rem;
}
@media (min-width: 46.25em) {
  .featured-media,
  .wp-block-image,
  .wp-block-image.alignwide {
    margin-bottom: 2.5rem;
  }
}

.entry-header .post-thumbnail,
.singular .post-thumbnail {
  margin-left: auto;
  margin-right: auto;
  width: 81.25rem;
  max-width: 100%;
}

.alignfull [class*=entry-content] > .alignwide,
.alignwide [class*=entry-content] > .alignwide {
  padding-left: 0;
  padding-right: 0;
}

.wp-block-image {
  text-align: center;
}

.wp-block-image .alignright {
  margin-left: 3.75rem;
}

.wp-block-image .alignleft {
  margin-right: 3.75rem;
}

@media (min-width: 30em) {
  .entry-content > .alignleft {
    /*rtl:ignore*/
    margin-left: 1.5625rem;
    /*rtl:ignore*/
    margin-right: 1.5625rem;
  }
  .entry-content > .alignright {
    /*rtl:ignore*/
    margin-left: 1.5625rem;
    /*rtl:ignore*/
    margin-right: 1.5625rem;
  }
  .entry-content > .wp-block-image > .alignleft,
  .entry-content > .wp-block-image > .alignright {
    max-width: 50%;
  }
}
@media only screen and (min-width: 482px) {
  .entry-content > .alignleft {
    /*rtl:ignore*/
    margin-left: 1.5625rem;
    /*rtl:ignore*/
    margin-right: 1.5625rem;
  }
}
@media only screen and (min-width: 482px) {
  .entry-content > .alignright {
    /*rtl:ignore*/
    margin-left: 1.5625rem;
    /*rtl:ignore*/
    margin-right: 1.5625rem;
  }
}
.wp-block-group__inner-container > .wp-block-columns:not(:last-child) {
  margin-bottom: 30px;
}

.wp-block-group__inner-container > .wp-block-columns:last-child {
  margin-bottom: 0;
}
