/******************************************************************
Theme Name: Eclipse360
Description: Custom Theme
Author: Eclipse Creative
Author URI: https://eclipse3sixty.com
Version: 1.0
Tags: WordPress
******************************************************************/

/*********************
FONTS & COLORS
*********************/
.black, .black p, .black .accordion-title::after { color: #000000; }
.black-background { background-color: #000000 !important; }
.blue, .blue p, .blue .accordion-title::after { color: #202A34; }
.blue-background { background-color: #202A34 !important; }
.eggplant, .eggplant p, .eggplant .accordion-title::after { color: #574545; }
.eggplant-background { background-color: #574545 !important; }
.green, .green p, .green .accordion-title::after { color: #60715F; }
.green-background { background-color: #60715F !important; }
.grey, .grey p, .grey .accordion-title::after { color: #DDDDDD; }
.grey-background { background-color: #DDDDDD !important; }
.light-blue, .light-blue p { color: #91b0e2; }
.light-blue-background { background-color: #91b0e2 !important;}
.medium-blue, .medium-blue p { color: #0f5880; }
.medium-blue-background { background-color: #0f5880 !important; }
.navy, .navy p { color: #2c3338; }
.navy-background { background-color: #2c3338 !important; }
.white, .white p { color: #FFFFFF !important; }
.white-background { background-color: #FFFFFF !important; }
.purple { color: #9e6ca5 !important; }
.yellow { color: #F7BE00 !important; }

::selection { background: #000000; color: #FFFFFF; }
::-moz-selection { background: #000000; color: #FFFFFF; }

/* Font spacing hack */
@-moz-document url-prefix() {
  .button, input[type="submit"]:not(.search-submit) { padding: 15px 20px 10px !important; }
  #wrapper input[type="submit"] { padding: 15px 20px !important; }
}

/*********************
GLOBAL
*********************/
.overline { font-family: 'ReadEx Pro', sans-serif; font-size: 25px !important; font-weight: 400; line-height: 1.28; }
h1, h2, h3, h4, h5, h6 { clear: unset; margin: 0; }
h1 { font-family: 'ReadEx Pro', sans-serif; font-size: 112px !important; font-weight: 700; line-height: 1; }
h2 { font-family: 'ReadEx Pro', sans-serif; font-size: 50px !important; font-weight: 300; line-height: 1; }
h3 { font-family: 'ReadEx Pro', sans-serif; font-size: 50px !important; font-weight: 300; line-height: 1; }
h4 { font-family: 'ReadEx Pro', sans-serif; font-size: 32px !important; font-weight: 400; line-height: 1.28; }
h5 { font-family: 'ReadEx Pro', sans-serif; font-size: 25px !important; font-weight: 700; line-height: 1.28; }
h6 { font-family: 'ReadEx Pro', sans-serif; font-size: 24px !important; font-weight: 600; line-height: 1; }
p { font-family: 'ReadEx Pro', sans-serif; font-size: 22px; padding: 0 0 20px 0; margin: 0; line-height: 1.4; }
ul, ol { font-family: 'ReadEx Pro', sans-serif; font-size: 22px !important; font-weight: 400; line-height: 1.28; display: inline-block; margin: 0; padding: 0 0 0 45px; overflow-wrap: unset; }
ul li, ol li { padding: 5px 0 5px 0; margin: 0; }
.bold { font-weight: bold; }

#wpadminbar .quicklinks .menupop ul li.wpo-cache-stats .ab-item h4 { font-size: 10px !important; }

html { scroll-behavior: smooth; overflow-x: hidden; }
body { font-family: 'ReadEx Pro', sans-serif; font-size: 20px; line-height: 1.5; color: #292929; padding: 0; margin: 0; }

a { color: #da3732; transition: all 250ms; }
a:hover, a:focus { color: #FFB45C; }

.alignleft { float: left; padding: 0 20px 0 0; }
.alignright { float: right; padding: 0 0 20px 20px; }
.textleft { text-align: left; }
.textcenter { text-align: center; }
.clear { clear: both; }
.width-full { max-width: 100% !important; }
.width-large { max-width: 1920px !important; margin: 0 auto !important; }
.width-medium { max-width: 1400px !important; margin: 0 auto !important; }
.width-small { max-width: 900px !important; margin: 0 auto !important; }
.height-large { height: 900px; }
.height-medium { height: 750px; }
.height-small { height: 600px; }
.height-xsmall { height: 400px; }

.button, input[type="submit"]:not(.search-submit) { position: relative; display: inline-block; font-family: 'ReadEx Pro', sans-serif; font-size: 17px !important; font-weight: 700; line-height: 1; letter-spacing: 1px; text-decoration: none !important; text-transform: uppercase; background-color: #da3732; color: #fff; border: 1px solid #da3732; border-radius: 45px; padding: 15px 20px; z-index: 1; min-width: 240px; text-align: center; transition: all .5s ease-in-out; }
.animate-button:hover .button { background-color: #FFFFFF !important; color: #da3732; fill: #da3732; }
.button:hover, .input[type="submit"]:not(.search-submit):hover { background: #fff; color: #da3732; }
.white-button { border: 2px solid #FFFFFF !important; background-color: transparent; color: #FFFFFF; }
.white-button:hover { border: 2px solid #da3732; background-color: transparent; color: #FFFFFF; }

.icon-arrow-right { display: inline-block; height: 20px; width: 13px; margin: 0 0 0 0; transform: rotate(-90deg); }

.entry-content > :first-child { padding: 0; margin: 0; }
.container-content { padding: 0; margin: 0; }
.container-content > .full-width, .container-content > .alignfull { margin: unset; padding: unset; max-width: unset; width: unset; }

.dividing-line { height: 4px; width: 48px; background-color: #da3732; margin: 0 0 20px 0 !important; }
.dividing-line.Center { margin: 0 auto 20px auto !important; }
.dividing-line.Right { margin: 0 0 20px auto !important; }

.slick-slider { padding: 0 !important; margin: 0 !important; }
.slick-slide { padding: 0 !important; margin: 0 !important; }
.slick-slide img { height: 100%; width: 100%; }
.slick-dots { position: relative !important; text-align: left; display: inline-block !important; width: unset; bottom: -7px; padding: 0 !important; }
.slick-dots li { width: unset !important; height: unset !important; overflow: unset !important; margin: 0 5px !important; display: inline-block; }
.slick-dots button:focus { outline: none !important; }
.slick-dots button { cursor: pointer; color: transparent; border-radius: 50%; width: 15px; height: 15px; border: 1px solid #FFFFFF; background: #B9B9B9; transition: all 500ms; padding: 0; }
.slick-dots .slick-active button { background: #da3732; }
.slick-prev::before { content: ''; color: transparent; }
.slick-next::before { content: ''; color: transparent; }

.container .flex, .container-fluid .flex, .container .flex-grid, .container-fluid .flex-grid, .site-content .content-area .container-content .flex, .site-content .content-area .container-content .flex-grid { margin-left: unset; margin-right: unset; }
.flex { display: flex; align-items: center; }

.noscroll { overflow: hidden !important; }
.v-center { position: relative; top: 50%; transform: translateY(-50%); }
.remove-top-spacing { margin-top: 0 !important; padding-top: 0 !important; }
.remove-bottom-spacing { margin-bottom: 0 !important; padding-bottom: 0 !important; }

.desktop-button { display: inline-block; }
.mobile-button { display: none; }

.div-columns { column-count: 2; column-gap: 30px; padding: 20px 0 0 0; }

#outdated { display: none; }
#external-link { height: 15px; width: 20px; padding: 0 0 0 10px; }

.arrow { display: inline-block; background: url('/wp-content/themes/eclipse360/assets/images/right-arrow.png'); height: 11px; width: 20px; background-size: cover; background-repeat: no-repeat !important; background-position: center right !important; margin: 0 0 0 10px; transition: all .5s ease-in-out; }
.animate-arrow:hover .arrow { width: 50px; }
.arrow.back { transform: rotate(180deg); }
.arrow.back:hover { width: 50px; }
.Blue-background .arrow { background: url('/wp-content/themes/eclipse360/assets/images/right-arrow-white.png'); }

.main-title { padding: 20px 0 20px 0; }
.hide, .hidden { display: none; }

.playhead { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: clamp(100px, 10vw, 220px); height: clamp(100px, 10vw, 220px); background: url(assets/images/video-play.svg) no-repeat center center / contain; z-index: 2; transition: all .5s ease-in-out; }
.slick-slide:hover .playhead { transform: translate(-50%, -50%) scale(0.8); }

.fancybox__backdrop { background-color: rgba(0, 0, 0, 0.95) !important; }
.fancybox__content { height: 90%; width: 90%; }
.has-image .fancybox__content { border-radius: 15px !important; overflow: hidden !important; }
.carousel__button.is-close { display: none; }

.fadeout { opacity: 0 !important; }
.fadein { opacity: 1 !important; }
.no-click { pointer-events: none !important; }
input[type="search"], input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="number"], input[type="tel"], textarea { border: 1px solid #a5a5a5; border-radius: 7px; padding: 15px !important; width: 100%; font-family: inherit; }

a { color: #000; text-decoration: none; transition: all .25s ease-in-out; }
a:hover { text-decoration: underline; }
* { word-break: keep-all !important; overflow-wrap: unset !important; }
*:focus { outline: none !important; }
p:empty, #gform_wrapper_13 .gform_title { display: none; }
select { padding: 11px 30px 11px 15px !important; border: none !important; border-radius: 5px !important; cursor: pointer !important; appearance: none !important; -webkit-appearance: none !important; position: relative; background: #fff url(assets/images/angle-down.svg) no-repeat 96% center / 10px !important; }

/* SOCIAL SHARE BUTTONS */
.section-social-share { margin: 0 auto 60px !important; width: 400px; height: auto; }
.share-title { font-size: 20px !important; font-weight: bold; font-family: 'ReadEx Pro', sans-serif; color: #da3732 !important;}
.socials-container{ display: flex;}
.socials-container > * { display: contents; text-decoration: none; color: #000; }
.socials-container img { display: inline-block; max-width: 30px; max-height: 30px; margin-right: 5px; margin-left: 5px; }
.socials { gap: 30px; margin-right: 30px; }
.socials img { display: block; max-width: 40px; max-height: 40px; transition: all 0.25s ease-in-out; }
.socials img:hover { transform: scale(1.1); }
.share-links { margin-top: 30px; margin-bottom: 30px; padding: 15px 30px; background-color: #e5eef8; border-radius: 5px; color: #303e49; font-weight: 600; text-transform: uppercase; width: 212px; }
.share-links>*:not(:last-child) { margin-right: 15px; }

.icon-tel, .icon-email { margin: 0; position: relative; padding-left: 30px; }
.icon-tel::before, .icon-email::before { content: ""; display: block; width: 18px; height: 18px; position: absolute; top: 0; left: 0px; }
.icon-tel::before { background: url(assets/images/tel.svg) no-repeat center center / contain; }
.icon-email::before { background: url(assets/images/mail.svg) no-repeat center center / contain; }

/* PAGE DEFAULTS */
.site-content { -webkit-box-flex: unset !important; flex: unset !important; overflow: unset !important; }
::before, ::after {  pointer-events: none; }
p:last-child, li:last-child { margin-bottom: 0; }
#wrapper input[type="submit"] { padding: 15px 20px !important; }
.letter-spaced-caps { text-transform: uppercase; letter-spacing: 1px; margin: 60px auto 30px; max-width: 1100px; font-weight: 400; }
.category-filters { padding: 0 5% 60px; display: flex; align-items: center; gap: 15px; flex-wrap: wrap; }
.category-filters span { text-transform: uppercase; font-weight: 600; }

.checklist { list-style: none; padding-left: 45px; }
.checklist li { position: relative; padding: 20px 0; margin: 0; }
.checklist li::before { content: ""; display: block; width: 30px; height: 30px; background: url(assets/images/checkmark.svg) no-repeat center center / contain; position: absolute; left: -45px; top: 20px; }

/******************************************************************************/
/* HEADER                                                                     */
/******************************************************************************/
#header { position: fixed; top: 0; left: 0; width: 100%; z-index: 100; transition: all 250ms; }
.scroll #header { background: #000; }
html.active #header { transform: translateY(0) !important; }
.header-right { margin-left: auto; padding-top: 30px; gap: 30px; transition: all 250ms; }
.menu, .sub-menu { list-style: none; }
#menu { margin-left: auto; padding-right: 30px; }
#menu .menu { display: flex; align-items: center; margin: 0; }
#menu .menu li { margin: 0 10px; list-style: none; }
#menu .menu li a { font-size: 18px; font-weight: 700; color: #fff; padding: 10px; display: block; letter-spacing: 1px; line-height: 1; }
#menu .menu li a:hover { color: #000; }
#menu-top-menu li.current_page_item a { border-bottom: 2px solid #000 !important; }
#menu .menu-item-has-children { position: relative; }
#menu .menu-item-has-children>a::after { content: ""; position: absolute; top: 50%; right: -15px; width: 0; height: 0; border: 5px solid transparent; border-left-color: #000; transform: translateY(-50%) rotate(90deg); }
#menu.standard .sub-menu { position: absolute; top: 100%; left: 0; width: 200px; background: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); opacity: 0; visibility: hidden; transition: all 250ms; z-index: 100; margin: 0; }
#menu.standard .sub-menu li { margin: 0; }
#menu.standard li:last-of-type .sub-menu { left: auto; right: 0; }
#menu.standard .sub-menu li a { color: #303e49; padding: 15px 20px; font-size: 16px; font-weight: 400; text-transform: none; }
#menu.standard .sub-menu li a:hover { color: #000; }
#menu.standard .menu-item-has-children:hover>.sub-menu { opacity: 1; visibility: visible; }
.logo { transition: all 250ms; width: 100%; max-width: 354px; display: block; position: relative; }
#header>.container { gap: 30px; justify-content: space-between; padding: 30px; }
.scroll #header>.container { padding: 15px 30px; }
#header>.container>.button { margin-left: auto; margin-top: 30px; }
#header>.container>.logo { padding-right: 30px; z-index: 6; }
.logo img { width: 100%; display: block; }

.hamburger { position: relative; width: 34px; height: 24px; cursor: pointer; z-index: 100; transition: all 250ms; }
.hamburger:hover { letter-spacing: 2px; }
.hamburger span { position: absolute; width: 100%; height: 3px; background: #fff; transition: all 250ms; border-radius: 5px; right: 0; line-height: 1; }
.hamburger span:nth-child(1) { top: 0; }
.hamburger span:nth-child(2) { top: 50%; transform: translateY(-50%); width: 60%; }
.hamburger span:nth-child(3) { bottom: 0; }
.hamburger.active span:nth-child(1) { top: 50%; transform: translateY(-50%) rotate(45deg); }
.hamburger.active span:nth-child(2) { opacity: 0; }
.hamburger.active span:nth-child(3) { bottom: 50%; transform: translateY(50%) rotate(-45deg); }
.hamburger:hover span:nth-child(2) { width: 100%; }

/* FLYOUT */
.menu-back { position: absolute; top: 25px; left: 460px; padding: 5px 30px 0; color: #000; letter-spacing: 1px; cursor: pointer; transition: all .25s ease-in-out; }
.menu-back.active { left: 0; }
.menu-back img { margin: 0 15px -2px 0; transition: all .25s ease-in-out; }
.menu-back:hover img { margin: 0 25px -2px -10px; }
.flyout { position: fixed; top: 0; right: -25px; width: 460px; height: 100vh; max-width: 100%; background: #fff url(assets/images/menu-pattern.svg) no-repeat bottom right / 100%; z-index: 104; transform: translateX(100%); transition: all 250ms; overflow-y: auto; overflow-x: hidden; padding: 30px 0 60px; display: flex; flex-direction: column; box-shadow: 0 5px 25px rgba(0,0,0,.25); }
.flyout.active { transform: translateX(0) !important; right: 0; }
.flyout .has-submenu > a:after { content: ""; display: inline-block; width: 30px; height: 30px; position: relative; top: 5px; right: -40px; background: url(assets/images/angle-right.svg) no-repeat center center / 15px 30px; transition: all .25s ease-in-out; }
.flyout .has-submenu:hover > a::after { right: -60px; }
.flyout-header { position: absolute; top: 30px; right: 30px; }
.flyout-inner { display: flex; flex-direction: column; left: 0; height: 100%; position: relative; transition: all 250ms; }
.flyout-footer { margin-top: 30px; gap: 15px; justify-content: space-between; }
.flyout-submenu { position: absolute; top: 90px; left: 460px; width: calc(100% - 30px); height: calc(100vh - 260px); background-color: #FFFFFF; transition: all .25s ease-in-out; }
.flyout-submenu.active { left: 30px; }
.flyout .menu a { display: block; padding: 15px 30px 15px 0; font-size: 28px; color: #000; text-decoration: none; transition: all 250ms; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; line-height: 1.3; }
.flyout-search { margin-top: auto; }
.flyout-search .button { display: block; margin-bottom: 15px; text-align: center; }
.flyout-search { padding: 0 30px; }
.flyout .content { padding: 90px 30px 30px; }
.flyout-contact .content { padding-top: 120px; margin-top: auto; }
.flyout-contact .content h1, .flyout-contact .content h2, .flyout-contact .content h3, .flyout-contact .content h4, .flyout-contact .content h5 { color: #000; font-size: 36px; }
.flyout-contact .form-header { margin-bottom: 60px; }
.flyout .sub-menu { margin: 0; padding: 0; }
.flyout .menu, .flyout .menu li { margin: 0; padding: 0; }
.flyout .menu li:not(:last-child) { border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
.flyout .menu a:hover { color: #000; }
.flyout .search-field { border: 2px solid #a5a5a5; border-radius: 7px; }
.flyout .gform_wrapper.gravity-theme .gfield.gfield--width-half { grid-column: 1/-1; }
.flyout .hamburger.close img { transform: rotate(0deg); transition: all .25s ease-in-out; }
.flyout .hamburger.close:hover img { transform: rotate(270deg); }

.search-form { position: relative; }
.top-header .search-trigger { position: relative; align-items: flex-end; }
.top-header .search-trigger>span { font-size: 16px; font-weight: 300; cursor: pointer; }
.expander { transition: all 250ms; width: 0; position: relative; overflow: hidden; padding-bottom: 3px; }
.expander.active { width: 200px; overflow: visible; }
.expander .search-field { width: 100%; border-radius: 0 !important; padding: 0px !important; background: transparent; color: #fff; border: none !important; }
.expander .search-field::placeholder { color: transparent; }
.expander .search-form { margin-left: 15px; }
.expander input.search-submit { position: absolute; top: 50%; transform: translateY(-50%); border: none; background: none !important; cursor: pointer; z-index: 3; color: transparent !important; padding: 0; overflow: hidden; width: 25px; height: 25px; border-radius: 0; right: -36px; }
.search-trigger::before { content: ""; position: absolute; bottom: 0; right: 0; width: 0; height: 1px; background-color: #fff; transition: all 250ms; }
.search-trigger.active::before { width: 100%; }
.search-trigger img { display: block; width: 18px; cursor: pointer; transition: all 250ms; opacity: 1; margin-left: 15px; align-self: flex-start; }
#header .flyout .search-submit, .error404 #content .search-submit { position: absolute; top: 0; right: 0; width: 50px; height: 100%; background: url(assets/images/icon-search-black.svg) no-repeat center center / 20px 24px !important; border: none; border-radius: 5px; cursor: pointer; transition: all 250ms; color: transparent !important; }
.error404 #content, .search-results #content { padding: 180px 0 60px }
.top-header { position: relative; padding: 15px 0; background-color: #000; color: #fff; font-size: 15px; font-weight: 100; transition: all 250ms; }
.scroll .top-header { margin-top: -56px; }
.top-header .container { justify-content: flex-end; gap: 15px; align-items: flex-end; transition: all 250ms; }
.error404 .search-form { width: 400px; max-width: 100%; }
.error404 .entry-content>p { font-size: 22px; font-weight: 600; }

/******************************************************************************/
/* 404 PAGE                                                                   */
/******************************************************************************/
.error { padding: 0; margin: 0; }
.error404 { background: transparent; margin-bottom: 0 !important; }
.error-title { font-size: 150px !important; font-weight: 300; line-height: 1; text-transform: lowercase; }
.error-image { height: 100%; width: 100vw; background-image: url('/wp-content/uploads/2020/08/message_banner.png'); background-size: cover; background-position: center center; }
.error-content { position: absolute; top: 30%; left: 50%; transform: translate(-50%, -30%); text-align: center; }

/******************************************************************************/
/* ACCORDIONS                                                                 */
/******************************************************************************/
.accordions .container-content { padding: 10px !important; }
.accordions .accordions-div { padding: 0 10px 0 10px; }
.accordions .accordions-div.multicolumn { display: inline-block; vertical-align: top; }
.accordions .accordion { position: relative; }
.accordions .accordion-title { display: inline-block; width: calc(100% - 35px); font-weight: 600; padding: 10px 0 10px 10px; }
.accordions .accordion-title::after { position: absolute; content: '+'; top: 8px; right: 10px; font-size: 20px; }
.accordion-text { height: auto; max-height: 0; overflow: hidden; width: 100%; padding: 0 0 0 0; border-bottom: 1px solid #B9B9B9; transition: all .25s ease-in-out; }
.accordion-text p { font-size: 20px; padding: 20px 0 0 0; }
.accordion-text p:first-of-type { margin: -40px 0 0 0; }
.accordion-text p:last-of-type { padding: 20px 0 20px 0; }
.accordion-text img { height: 100%; width: auto; padding: 25px 20px 0 0; }
.accordion-text ul, ol { display: block; font-size: 20px !important; }
.accordion-text ul li, .accordion-text ol li { padding: 5px 0; }
.accordions .accordions-div a:last-of-type .accordion-link { border-bottom: 0px solid transparent; }
.accordions .button { margin: 30px 0 -20px 0; min-width: 240px; text-align: center; }
.accordions .accordion.open .accordion-title::after { content: '-'; }
.accordions .accordion.open .accordion-text { display: block !important; max-height: 10000px; padding: 15px 30px 0 35px; width: calc(100% - 65px); }
.accordions .button a { color: #FFFFFF; }
.accordions .button:hover a { color: #CA602C; }
.accordions a .button p { padding: 0; margin: 0; color: #FFFFFF !important; }
.accordions a:hover .button p { color: #CA602C !important; }

/******************************************************************************/
/* BACKGROUND IMAGES                                                          */
/******************************************************************************/
.background-images { position: absolute; height: 100%; width: 100%; top: 0; left: 0; }
.bg-image { position: absolute; background-repeat: no-repeat!important; z-index: 1; }

/******************************************************************************/
/* ALL PROJECT INFORMATION                                                    */
/******************************************************************************/
.project-dashboard-table { font-size: 18px; }
.project-dashboard-table p { font-size: 18px; }

/******************************************************************************/
/* BANNER                                                                     */
/******************************************************************************/
.banner { position: relative; }
.banner .slick-slider { padding: 0; margin: 0; }
.banner .slick-slider li { padding: 0; margin: 0; }
.banner .slick-slider .slide-image img { height: 100%; width: 100%; }
.slide-banner { display: none !important; }
.banner-content { z-index: 2; }
.banner .subtitle { margin: 30px auto 0 auto; max-width: 800px; }
.banner .slide-image { position: relative; background-size: cover !important; background-position: top center !important; min-height: 80vh; }
.banner .slide-image.height-large { height: 100vh; }
.banner .slide-image.height-medium { height: 74vh; }
.banner .slide-image.height-small { height: 55vh; }
.overlay { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }
.banner p { max-width: 900px; }
.banner .Center p { margin: 0 auto; }
.banner .button { margin: 0 10px 0 0; }
.banner .button:hover { border-color: #FFFFFF; }

.banner .video-wrap { z-index: 1; }
.video-banner { display: block !important; }
.video-wrap { position: absolute; width: 100%; height: 100%; pointer-events: none; top: 0; left: 0; }
.video-wrap video, .video-wrap iframe { width: 100%; height: 100%; object-fit: cover; }
.video-wrap iframe { position: absolute; width: 180%; height: 180%; display: block; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.vertical-video-banner { display: none !important; }
.vertical-video-banner { position: relative; }
.audio { position: absolute; bottom: 60px; right: 30px; color: #FFF; height: 50px; width: 150px; }
.audio.listen { background-image: url('/wp-content/themes/eclipse360/assets/images/listen.svg'); background-size: contain; background-position: center center; background-repeat: no-repeat; }
.audio.mute { background-image: url('/wp-content/themes/eclipse360/assets/images/mute.svg'); background-size: contain; background-position: center center; background-repeat: no-repeat; }

#video-container { position: relative; }
.flex-video { position: relative; overflow: hidden; }
.flex-video .video-player { position: absolute; top: -20%; left: -15%; background-size: cover; background: no-repeat center; user-select: none; pointer-events: none; height: 100%; width: 177.77777778vh; min-width: 100%; min-height: 56.25vw; }

.banner .slider-nav { position: absolute; bottom: -60px; }
.banner .slick-prev { display: none !important; }
.banner .slick-next { display: none !important; }
.banner .slider-nav .slick-prev { position: relative !important; bottom: -4px; cursor: pointer; display: inline-block !important; color: transparent; background: url(/wp-content/themes/eclipse360/assets/images/slider-right-arrow.png); background-size: contain !important; background-position: center center !important; width: 10px !important; height: 10px !important; background-repeat: no-repeat !important; transform: rotate(180deg); }
.banner .slider-nav .slick-next { position: relative !important; bottom: -4px; cursor: pointer; display: inline-block !important; color: transparent; background: url(/wp-content/themes/eclipse360/assets/images/slider-right-arrow.png); background-size: contain !important; background-position: center center !important; width: 10px !important; height: 10px !important; background-repeat: no-repeat !important; }

/******************************************************************************/
/* CARDS                                                                      */
/******************************************************************************/
.cards { display: flex; flex-wrap: wrap; gap: 30px; }
.card { overflow: hidden; position: relative; padding: 30px; flex-basis: calc(50% - 15px); height: clamp(460px, 25vw, 600px); background-color: #fff; border-radius: 15px; }
.first-card { background-color: #91b0e2; display: flex; align-items: flex-end; }
.first-card h2 { color: #fff; font-size: 47px; }
.card-front, .card-back { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: all 250ms; padding: 30px; }
.card-front { opacity: 1; z-index: 1; cursor: pointer; text-align: center; }
.card-back { opacity: 0; z-index: 0; overflow-y: auto; display: block; font-size: 18px; }
.card-back h4 { color: #000; font-size: 26px; }
.card-front img { max-width: 120px; max-height: 120px; display: block; margin-bottom: 45px; }
.card-front h3 { margin: 0; color: #000; font-size: 30px; }
.card:hover .card-front { opacity: 0; }
.card:hover .card-back { opacity: 1; z-index: 2; }

/******************************************************************************/
/* DATA TABLE                                                                 */
/******************************************************************************/
.dataTables_wrapper .dataTables_length select { border: 1px solid #000000 !important; }
table.dataTable thead .sorting_asc { background-image: unset; }
table.dataTable thead .sorting_desc { background-image: unset; }
table.dataTable thead .sorting { background-image: unset; }
table.dataTable thead>tr>th.sorting:before, table.dataTable thead>tr>th.sorting:after, table.dataTable thead>tr>th.sorting_asc:before, table.dataTable thead>tr>th.sorting_asc:after, table.dataTable thead>tr>th.sorting_desc:before, table.dataTable thead>tr>th.sorting_desc:after, table.dataTable thead>tr>th.sorting_asc_disabled:before, table.dataTable thead>tr>th.sorting_asc_disabled:after, table.dataTable thead>tr>th.sorting_desc_disabled:before, table.dataTable thead>tr>th.sorting_desc_disabled:after, table.dataTable thead>tr>td.sorting:before, table.dataTable thead>tr>td.sorting:after, table.dataTable thead>tr>td.sorting_asc:before, table.dataTable thead>tr>td.sorting_asc:after, table.dataTable thead>tr>td.sorting_desc:before, table.dataTable thead>tr>td.sorting_desc:after, table.dataTable thead>tr>td.sorting_asc_disabled:before, table.dataTable thead>tr>td.sorting_asc_disabled:after, table.dataTable thead>tr>td.sorting_desc_disabled:before, table.dataTable thead>tr>td.sorting_desc_disabled:after { line-height: 1; }
table.dataTable tbody th, table.dataTable tbody td { vertical-align: top; }
table.dataTable tbody tr.odd { background-color: #EFEFEF; }
.dataTables_wrapper .dataTables_filter input { padding: 5px !important; }
.dataTables_wrapper .dataTables_length select { padding: 5px 15px 5px 5px !important; }

.all-project-information th { font-size: 16px; }
.all-project-information td { font-size: 16px; }
.all-project-information td p { font-size: 16px; padding: 0; }
.all-project-information label { font-size: 16px; }

/******************************************************************************/
/* DOCUMENT LIBRARY                                                           */
/******************************************************************************/
.document-library table { width: 100%; }
.document-library table th { text-align: left; }

/******************************************************************************/
/* FIFTY FIFTY                                                                */
/******************************************************************************/
.fifty-fifty { position: relative; margin: 0 !important; }
.fifty-fifty-image { position: relative; display: inline-block; vertical-align: top; z-index: 2; }
.fifty-fifty-image .slide-image { position: relative; overflow: hidden; }
.fifty-fifty-image img { width: 100%; height: 100%; object-fit: cover; scale: 1.0; transition: all .25s ease-in-out; }
.fifty-fifty-image a:hover img { scale: 1.05; }
.fifty-fifty .slick-slider li { position: relative; }
.fifty-fifty-image button.slick-prev { display: none !important; }
.fifty-fifty-image button.slick-next { display: none !important; }
.fifty-fifty-text { position: relative; display: inline-block; vertical-align: top; }
.fifty-fifty-content { position: absolute; top: 50%; transform: translateY(-50%); padding: 0 15%; width: 70%; z-index: 2; }
.fifty-fifty .button { margin: 10px 0 0 0; }
.fifty-fifty .image-caption { position: absolute; bottom: 30px; right: 30px; font-size: 15px; }
.fifty-fifty .image-caption.inverse { right: 0; left: 30px; }
.fifty-fifty .slider-nav { padding: 10px 0 0 0; text-align: center; }
.fifty-fifty .slider-nav .slick-dots { position: unset; text-align: left; list-style: unset; transform: unset; display: inline-block !important; margin: 0; }
.fifty-fifty .slider-nav .slick-dots li { padding: 0 !important; margin: 0 5px; width: unset !important; }
.fifty-fifty .slider-nav .slick-prev { position: relative; top: 9px; cursor: pointer; display: inline-block; color: transparent; background: url('/wp-content/themes/eclipse360/assets/images/right.png'); background-size: contain !important; background-position: center center !important; width: 15px; height: 15px; background-repeat: no-repeat !important; transform: rotate(180deg); }
.fifty-fifty .slider-nav .slick-next { position: relative; top: 9px; cursor: pointer; display: inline-block; color: transparent; background: url('/wp-content/themes/eclipse360/assets/images/right.png'); background-size: contain !important; background-position: center center !important; width: 15px; height: 15px; background-repeat: no-repeat !important; }

/******************************************************************************/
/* FORMS                                                                      */
/******************************************************************************/
.gform_wrapper.gravity-theme input[type="color"], .gform_wrapper.gravity-theme input[type="date"], .gform_wrapper.gravity-theme input[type="datetime-local"], .gform_wrapper.gravity-theme input[type="datetime"], .gform_wrapper.gravity-theme input[type="email"], .gform_wrapper.gravity-theme input[type="month"], .gform_wrapper.gravity-theme input[type="number"], .gform_wrapper.gravity-theme input[type="password"], gform_wrapper.gravity-theme input[type="search"], .gform_wrapper.gravity-theme input[type="tel"], .gform_wrapper.gravity-theme input[type="text"], .gform_wrapper.gravity-theme input[type="time"], .gform_wrapper.gravity-theme input[type="url"], .gform_wrapper.gravity-theme input[type="week"], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {background-color: transparent; }
.gform_required_legend, .gform-body label { font-size: 12px !important; font-weight: 100 !important; text-transform: uppercase !important; }
.gform_required_legend { display: none !important; }
.gform_wrapper.gravity-theme .gfield_required { color: #000 !important; }

#sticky-form { position: fixed; bottom: 60px; right: 60px; z-index: 2; border-radius: 15px; background-color: #91b0e2; padding: 60px; width: 510px; }
#sticky-form .gform_title, #sticky-form .gform_description, #sticky-form input:not([type="submit"]), #sticky-form input:not([type="submit"])::-webkit-input-placeholder, #sticky-form select { color: #fff !important; line-height: 1.4; }
#sticky-form input:not([type="submit"]) { border-color: #fff; }
#sticky-form .gform_title { margin-bottom: 10px; }
#sticky-form .gform_description { margin-bottom: 30px; }
#sticky-form .gform_footer { padding-bottom: 0; padding-top: 15px; margin-top: 0; }
#sticky-form .gform_button { margin: 0; }
#sticky-form select { background: transparent url(assets/images/angle-down-white.svg) no-repeat 96% center / 10px !important; border: 1px solid #fff !important; padding: 15px !important; }

/******************************************************************************/
/* FULL WIDTH                                                                 */
/******************************************************************************/
.full-width { position: relative; }
.full-width-content { position: relative; z-index: 1; }
.full-width .intro-div.text-beside { position: relative; width: 25%; display: inline-block; vertical-align: top; padding: 50px 10px 10px 0; z-index: 1; }
.full-width .intro-div.text-beside .intro-content-div { height: 100%; }
.full-width .intro-div.text-beside .intro-content { position: relative; top: 50%; transform: translateY(-50%); padding: 60px; }
.full-width .columns-div.text-beside { width: calc(75% - 10px); display: inline-block; vertical-align: top; }
.full-width .columns-div.center-mode .slick-slider { margin: 0 0 0 -11% !important; }
.full-width.columns .intro-div.text-beside { padding: 0 10px 10px 0; }

.full-width ol { display: block; padding: 0 0 30px 25px; }
.full-width ul { display: block; padding: 0 0 30px 25px; }
.full-width ol ul { padding: 0 0 0 25px; }
.full-width li { padding: 10px 0 0 0; }
.full-width .text .button { margin: 10px 10px 0 0; }
.full-width .button a { color: #FFFFFF; }
.full-width .button:hover a { color: #da3732; }
.full-width a .button p { padding: 0 !important; margin: 0; color: #FFFFFF !important; }
.full-width a:hover .button p { color: #da3732 !important; }
.full-width-column { display: inline-block; vertical-align: top; min-height: 350px; }
.full-width .column-image { position: relative; overflow: hidden; min-height: 350px; }
.full-width .column-image img { height: 100%; width: 100%; object-fit: cover; scale: 1.0; transition: all .25s ease-in-out; }
.full-width a .column-image:hover img { scale: 1.05; }
.full-width .text-on-top { position: absolute; }
.full-width .column-info { padding: 10px; }
.full-width .column-info .column-overline { font-size: 16px; letter-spacing: 1px; }
.full-width .column-info .column-title { display: inline-block; font-size: 27px; padding: 0; margin: 0; line-height: 1.1; }
.full-width .column-info .column-title.column-title-counter { font-size: 50px; }
.full-width .column-info .column-title.center { display: block; }
.full-width .column-info .link-text-div { display: inline-block; }
.full-width .column-info .link-text { display: inline-block; font-family: 'ReadEx Pro', sans-serif; font-size: 18px; }
.full-width .column-info .button { margin: 20px 0 0 0; display: block; border: 2px solid transparent; }
.full-width .full-width-column:hover .button { border: 2px solid #DA3732; }

.full-width .slick-slider { padding: 50px 0 0 0 !important; }
.full-width .slick-slider li { position: relative; display: block; padding: 0; }
.full-width .slick-slider #external-link { display: none; }
.full-width .slick-slider svg { display: none; }
.full-width .slick-prev { display: none !important; }
.full-width .slick-next { display: none !important; }

.full-width .slider-nav .slick-prev { position: relative; top: 9px; cursor: pointer; display: inline-block !important; color: transparent; background: url('/wp-content/themes/eclipse360/assets/images/right.png'); background-size: contain !important; background-position: center center !important; width: 15px; height: 15px; background-repeat: no-repeat !important; transform: rotate(180deg); }
.full-width .slider-nav .slick-next { position: relative; top: 9px; cursor: pointer; display: inline-block !important; color: transparent; background: url('/wp-content/themes/eclipse360/assets/images/right.png'); background-size: contain !important; background-position: center center !important; width: 15px; height: 15px; background-repeat: no-repeat !important; }
.full-width .slider-nav .slick-dots { position: unset; text-align: left; list-style: unset; transform: unset; display: inline-block !important; margin: 0; }
.full-width .slider-nav .slick-dots li { margin: 0; width: unset !important; }

/******************************************************************************/
/* GUIDE                                                                      */
/******************************************************************************/
.block-def { margin: 0; padding: 10px 0 10px 0; font-size: 22px; }
.block-def.new-version { border: 1px solid red; margin: 10px 0 10px 0; padding: 10px; background-color: rgba(255, 0, 0, .025); }
.block-def.new-version .upgrade { font-size: 15px; }
.block-def.new-version .upgrade a { text-decoration: underline; }
.block-def .walkthrough-link { font-size: 15px; text-decoration: underline; }
.block-def.not-used { border: 1px solid rgba(255, 255, 0, 1); margin: 30px 0 30px 0; padding: 10px; background-color: rgba(255, 243, 181, .15); }
.block-def .not-used-message { font-size: 15px; }
.block-def .not-used-message a { text-decoration: underline; }
.developer { background-color: rgba(0,0,0,1); margin: 10px 0; padding: 10px; color: #FFFFFF; font-size: 15px; }
.developer p { color: #FFFFFF; font-size: 15px; }
.developer li { font-size: 15px; padding: 10px 10px 5px 0; margin: 0 0 0 15px; }
.letter-links { text-decoration: underline; display: inline-block; }

/******************************************************************************/
/* IMAGE SLIDER                                                               */
/******************************************************************************/
.image-slider .slides-text .slick-dots { bottom: 20px; padding: 0 0 1.5em 0; }
.image-slider .slides .slick-dots { bottom: -10px; }

/******************************************************************************/
/* IMAGE WRAP                                                                 */
/******************************************************************************/
.image-wrap, .video-slide { overflow: hidden; }
.image-wrap img, .video-slide video { object-fit: cover; width: 100%; height: 100%; display: block; object-position: center; transition: all .25s ease-in-out; }

/******************************************************************************/
/* LANDING PAGE                                                               */
/******************************************************************************/
.lp-footer.footer-gallery::before { background: linear-gradient(transparent, #f4f4f4); top: -90px; z-index: 4; }
.landing-page .banner, .landing-page .banner+section::before { z-index: 4; }
.landing-page .block_background>.container { padding-right: 600px !important; }
.landing-page .wprs_unslider { background: #fff; border-radius: 15px; padding: 30px; }
.landing-page .acf-slider { width: 100%; }
.landing-page .slider { width: 100% !important; float: none !important; display: flex; flex-wrap: wrap; gap: 15px; }
.landing-page .slider>div { flex-basis: calc(50% - 15px); }
.landing-page .slider-info { margin: 0; float: none; }
.landing-page .slider-info { max-width: 100%; }
.lp-footer { position: relative; z-index: 4; }

/******************************************************************************/
/* MASONRY IMAGES                                                             */
/******************************************************************************/
.masonry-image { width: calc(33% - 30px); margin: 15px; cursor: pointer; overflow: hidden; border-radius: 15px; }
.masonry-image:hover { box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); }
.masonry-image:hover img { transform: scale(1.1); }
.masonry-image img { display: block; border-radius: 15px; }

/******************************************************************************/
/* POSTS                                                                      */
/******************************************************************************/
.blog-posts { top: 0 !important; }
.posts:not(.masonry) { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); grid-gap: 60px 30px; }
.posts .post { max-width: 600px; }
.posts .post .image-wrap { border-radius: 15px; overflow: hidden; height: 25vw; max-height: 466px; min-height: 300px; margin-bottom: 15px; display: block; }
.posts .post .image-wrap:hover img { transform: scale(1.1); }
.posts .post ul { list-style: none; margin: 0; padding: 0; font-size: 18px; display: flex; flex-wrap: wrap; }
.posts .post ul li { margin: 0 5px 0 0; cursor: pointer; transition: all 250ms; color: #000; }
.posts .post ul li:not(:last-child)::after, .post-categories a:not(:last-child)::after { content: ","; }
.posts .post a { color: inherit; }
.posts .post ul li:hover, .posts .post a:hover { color: #000; }
.post-date { font-size: 14px; }
.post-content h4 { justify-content: space-between; }

/******************************************************************************/
/* PROJECT                                                                    */
/******************************************************************************/
.project-gallery { padding-top: 0; }
.project-gallery>.flex { align-items: stretch; gap: 30px; height: 50vw; min-height: 500px; }
.project-gallery>.container>div { flex: 1; }
.project-featured-image { position: relative; }
.project-featured-image #view-all { position: absolute; bottom: 30px; right: 30px; z-index: 1; background-color: rgba(0, 0, 0, 0.5); font-size: 16px; display: none; }
.project-featured-image #view-all:hover { background-color: #000; color: #fff }
.project-featured-image, gallery-preview>div { border-radius: 15px; }
.gallery-preview>div { flex-basis: calc(50% - 15px); height: calc(50% - 15px); }
.gallery-preview { flex-wrap: wrap; gap: 30px; }
.gallery-preview-image img { transition: opacity 500ms; opacity: 0; }
.gallery-preview-image img.show { opacity: 1; }
.gallery-all { background-color: #91b0e2; padding: 30px; display: flex; align-items: flex-end; justify-content: flex-end; color: #000; text-transform: uppercase; letter-spacing: 1px; transition: all 250ms; font-weight: 600; cursor: pointer; }
.gallery-all span { position: relative; top: 10px; }
.gallery-all:hover { background-color: #000; color: #fff; }
.gallery-trigger { position: absolute; right: 30px; bottom: 30px; }
.project-flyout { position: fixed; top: 0; right: 0; width: 100%; height: 100vh; max-width: 100%; background: #F4F4F4 url(assets/images/single-header-graphic.svg) no-repeat top right / 50%; z-index: 101; transform: translateX(100%); transition: all 250ms; overflow-y: auto; overflow-x: hidden; padding: 60px 30px 30px; display: flex; flex-direction: column; }
.close-gallery { cursor: pointer; transition: all 250ms; gap: 15px !important; align-items: center !important; height: unset !important; padding: 30px 0 30px 15px; }
.close-gallery:hover { color: #000; }
.close-gallery img { width: 20px; position: relative; top: -3px; left: 0; transition: all 250ms; }
.close-gallery:hover img { left: -5px; }
.project-flyout.active { transform: translateX(0); }
.image-row+.image-row { margin-top: 60px; }
.project-flyout .image-row h3 { padding-left: 15px; }

/******************************************************************************/
/* SEARCH                                                                     */
/******************************************************************************/
.search .container>.header, .error404 .container>.header { padding-bottom: 30px; }
.search .container>.header .entry-title, .error404 .container>.header .entry-title { margin: 0; color: #000; }
.search .single-bg, .error404 .single-bg { height: 400px; }
.search #content>.no-results { max-width: 1400px; padding: 0 30px; margin: 0 auto; }
.search-results #content a { color: #000; font-size: 24px; margin-bottom: 15px; }
.search-results #content a:hover { color: #000; }

/******************************************************************************/
/* SINGLE                                                                     */
/******************************************************************************/
.archive-load-more { padding-top: 30px; text-align: center; }
.single { background: #F4F4F4 url(assets/images/single-header-graphic.svg) no-repeat top right / 50%; }
.single-post .featured-image { height: clamp(500px, 50vw, 830px); position: relative; border-radius: 15px; overflow: hidden; margin-top: 60px; }
.single .articleHeader { padding: 180px 30px 30px; position: relative; }
.single-post .articleHeader .date { text-transform: uppercase; letter-spacing: 1px; font-weight: 400; }
.single .articleHeader h1 { font-size: clamp(25px, 4vw, 45px); margin-bottom: 10px; color: #000; }
.single .articleContent>*[class^="wp-block"] { margin-top: 30px; margin-bottom: 30px; }
.single-post .articleHeader .flex { gap: 30px; align-items: flex-end; justify-content: space-between; }
.single-categories { color: #A5A5A5; text-transform: uppercase; font-weight: 400; }
.single-categories a { color: #A5A5A5; white-space: nowrap; }
.single-categories a:hover { color: #000; }
.single .wp-block-media-text__content { padding: 60px; }
.post-category { font-weight: 100; }
.posts-navigation { width: 100%; padding: 60px 0px; }
.pagination .nav-links { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 15px; }

/******************************************************************************/
/* TEAM MEMBERS                                                               */
/******************************************************************************/
.team-member-info { padding-bottom: 30px; }
.team-member-info .job-title { margin: 0; }
.team-member-full-section { align-items: stretch; margin: 180px 0 60px; }
.team-member-image-half, .team-member-info-half { flex-basis: 50%; }
.team-member-info-half { padding: 6%; }
.team-member-info-half h2 { margin-bottom: 10px; }
.team-member-info-half .button { margin-top: 60px; }
.team-member-featured-image { height: 100%; border-radius: 15px; }
.team-member-title { margin-top: 0; }

/******************************************************************************/
/* FOOTER                                                                     */
/******************************************************************************/
.footer-gallery { align-items: stretch; }
.footer-gallery>div { flex: 1; }
.footer-logo { max-width: 375px; }
.footer-logo img { display: block; width: 100%; }
.footer-row { justify-content: space-between; padding: 30px 0; gap: 60px; flex-wrap: wrap; }
.footer-col.flex { gap: 30px; align-items: flex-end; }
#footer { padding: 60px 0 30px; background: linear-gradient(90deg, #000, #da3732); color: #fff; position: relative; }
#footer::before { content: ''; display: block; position: absolute; top: 0; right: 0; width: clamp(300px, 40vw, 100%); height: 50%; background: url(assets/images/footer-graphic.svg) no-repeat top right / contain; }
#footer a { color: #fff; }
#footer h2, #footer h3 { font-size: 25px; line-height: 1.1; }
#footer .container { position: relative; z-index: 1; padding: 0 10px; }
#footer .gform_button { margin: 0; }
#footer .gform_wrapper.gravity-theme .gform_footer { padding: 15px 0 0; }
#footer .button { border: 1px solid #fff; background-color: transparent; }
#footer .button:hover { background-color: #fff; color: #000; }
#menu-footer-menu { display: flex; align-items: center; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; gap: 15px; }
#menu-footer-menu li { margin: 0; }
#menu-footer-menu li a { font-weight: 600; padding: 0 15px 0 0; text-transform: uppercase; letter-spacing: 1px; }
.menu-footer-menu-container { flex: 1; padding-right: 15px; }
.footer-address, .footer-contact { font-size: 18px; }
#copyright { font-size: 14px; justify-content: space-between; padding-top: 30px; border-top: 1px solid #fff; margin-top: 60px; text-transform: uppercase; letter-spacing: 1px; gap: 15px; }
#copyright span { padding: 0 10px; }

/*****************************************************/
/* RESPONSIVE                                        */
/*****************************************************/
@media (max-width: 1650px) {
    .full-width .intro-div.text-beside .intro-content { padding: 30px; }
    h2 { font-size: 35px !important; }
    .button { font-size: 15px !important; }
}

@media (max-width: 1400px) {
    .full-width .intro-div.text-beside .intro-content { padding: 10px; }
    .lp-footer.footer-gallery::before { display: none; }
    #sticky-form .gform_wrapper.gravity-theme .gform_fields { grid-template-columns: 1fr 1fr; }
    #sticky-form .gform_wrapper.gravity-theme .gfield { grid-column: unset; }
    #sticky-form { position: static; width: 100%; border-radius: 0; }
    .landing-page .block_background>.container { padding-right: 30px !important; }
}

@media (max-width: 1300px) {
    .contact-tile__content { font-size: 16px; }
}

@media (max-width: 1250px) {
    .full-width { padding-left: 10px !important; padding-right: 10px !important; }
    .full-width .intro-div.text-beside { width: 100%; padding: 0; }
    .full-width .intro-div.text-beside .intro-content { padding: 30px; }
    .full-width .columns-div.text-beside { width: calc(100% + 20px); margin: 0 0 0 -10px; }
    .full-width.columns .full-width-column { padding-top: 20px !important; }
}

@media (max-width: 1200px) {
    #menu { display: none !important; }
    #menu .menu li a { color: #303e49 !important; }
    .video-wrap iframe { width: 200%; height: 200%; }
}

@media (max-width: 1100px) {
    .contact-tile { flex-basis: 100% !important; }
    .team-member-full-section { flex-direction: column; }
}

@media (max-width: 1023px) {
    h1 { font-size: 60px !important; }
    h2 { font-size: 25px !important; }
    p { font-size: 20px; }
    .overline { font-size: 20px !important; }
    .bg-image { display: none; }
    .accordions .accordions-div { width: calc(100% - 20px) !important; }
    .fifty-fifty-image { width: 100% !important; height: auto !important; }
    .fifty-fifty-text { width: 100% !important; height: auto !important; }
    .fifty-fifty-content { padding: 30px 0 30px 0; width: 100%; position: unset; transform: unset; }
    .full-width.columns .full-width-column { width: calc(50% - 30px) !important; }
    .full-width .text-on-top { bottom: 20px !important; left: 30px !important; }
}

@media (max-width: 992px) {
    .project-featured-image #view-all { display: block; }
    .gallery-preview { display: none; }
    .video-wrap iframe { width: 250%; height: 250%; }
    #menu-footer-menu { justify-content: center; flex-direction: column; }
    .footer-row { justify-content: center; }
}

@media (max-width: 800px) {
    .top-header { background-color: #fff; padding: 30px 0; }
    .header-right { transform: translateY(calc(-100% - 30px)) !important; }
    #topHam span { background-color: #000 !important; }
    #header>.container>.logo { top: -86px; max-width: 330px; }
    #header .container { align-items: flex-start; }
    .flyout .menu a { font-size: 24px; }
    .flyout .menu-item-has-children>a::after { top: 10px; }
    
    .banner { min-height: 400px; }
    .banner-content { left: 50% !important; transform: translate(-50%, -50%) !important; width: calc(100% - 20px) !important; padding: 0 10px; }
    
    .masonry-image { width: calc(50% - 30px); }
    .single #topHam span { background-color: #fff !important; }
    #sticky-form .gform_wrapper.gravity-theme .gfield { grid-column: 1/-1; }
    .landing-page .slider>div, .card { flex-basis: 100%; }
    .footer-gallery, #contact_button { display: none; }
    #footer { background: linear-gradient(180deg, #000 50%, #1c3a78); }
}

@media (max-width: 640px) {
    .slick-arrow { display: none !important; }
    #copyright { flex-direction: column; align-items: center; text-align: center; }
    .masonry-image { width: calc(100% - 30px); pointer-events: none; }
    .menu-footer-menu-container { padding: 0 0 30px 0; }
    .banner h1 span { font-size: 24px; }
    .menu-back { padding-left: 0; }
    .flyout { width: 100%; }
    .flyout .logo { margin-right: auto; padding-right: 45px; }
    .flyout .menu a { font-size: 22px; }
    .flyout .content { padding: 30px 0; }
    .flyout .content { padding-top: 15px; }
    .single-post .featured-image { height: 440px; }
    .single .articleHeader { padding-top: 150px; }
    .single-post .articleHeader .flex { flex-direction: column; align-items: flex-start; }
    
    .full-width.columns .full-width-column { width: calc(100% - 30px) !important; }
    
    .footer-row, .footer-col.flex { flex-direction: column; align-items: center; }
    .footer-address, .footer-contact { align-self: flex-start; }
    input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], select:focus, textarea, #footer .button { font-size: 16px !important; }
}

@media (max-width: 480px) {
    h1 { font-size: 40px !important; }
    .banner .container h3 { font-size: 17px; text-align: left; }
    h3 { font-size: 20px; }
    h4, body, p { font-size: 18px; }
    .close-gallery { padding-top: 0; }
    #topHam {  margin-top: 15px; }
    #copyright span { display: block; color: transparent; height: 5px; overflow: hidden; }
    .contact-tile__content { flex-wrap: wrap; gap: 15px; }
    .contact-tile__column { flex-basis: 100%; }
}