/*
Theme Name: Titan Tarp Blocks
Theme URI: 
Author: Abstract Marketing
Author URI: 
Description: 
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 8.0
Version: 1.13
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: titan-tarp-blocks
Tags: full-site-editing
*/

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

html {
	scroll-behavior: smooth;
}

img:not([class]), iframe {
    display: block;
}

figure[class*="align"]:not(.alignfull) {
    display: block !important;
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right: auto !important;
	float: none !important;
}

figure.alignleft :is(img, div) {
    float: left;
	margin-inline-end: 1rem;
}

figure.alignright :is(img, div) {
    float: right;
	margin-inline-start: 1rem;
}

figure.aligncenter :is(img, div) {
	margin-inline: auto;
	display: inline-block !important;
}

:is(input:not(:is([type="button"], [type="submit"])), select, textarea) {
	background-color: var(--wp--preset--color--base);
	border: 1px solid #ccc;
	border-radius: 2px;
	color: var(--wp--preset--color--contrast);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	line-height: 1.65;
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
	width: 100%;
}

:is(input:focus, textarea:focus, select:focus) {
    outline: 2px solid var(--wp--preset--color--primary);
}

:is(input[type="checkbox"], input[type="image"], input[type="radio"]) {
	width: auto;
}

::placeholder {
	color: var(--wp--preset--color--contrast);
	opacity: 0.5;
}

textarea {
	height: 150px;
}

/* When no featured image, set background color */
.no-featured-image .page-cover .wp-block-cover__background {
	background-color: #000 !important;
	opacity: 1 !important;
}

/* On home page, switch header order */
@media (min-width: 992px) {
	.home .site-header__inner {
		display: grid;
	}

	.home .site-header__nav {
		order: -1;
	}
}


.site-header,
.site-header__brand,
.site-header__nav {
	transition: all .5s ease;
}

@media (min-width: 992px) {
	/* HOME: Hide site branding on desktop when scrolling */
	.home .site-header.is-compact .site-header__brand {
		pointer-events: none;
		opacity: 0;
		transform: perspective(500px) translateZ(-30px);
	}

	/* HOME: Add background to menu on scroll */
	.home .site-header.is-compact .site-header__nav {
		background-color: #0004 !important;
	}

    /* Add padding to main items */
	.site-header__nav ul.wp-block-navigation > .wp-block-navigation-item {
		padding-block: 6px;
	}

	.site-header__nav ul.wp-block-navigation > .wp-block-navigation-item > a {
		line-height: 1.2;
	}

	/* Add divider between submenu items */
	.site-header__nav .wp-block-navigation-item .wp-block-navigation-item + .wp-block-navigation-item {
		border-top: 1px solid #0002;
	}
}

/* show/Hide navigation logo  */
.wp-block-navigation .wp-block-site-logo img {
    transition: all .5s ease;
}

.site-header:not(.is-compact) .wp-block-navigation .wp-block-site-logo img {
    width: 0;
}

/* On pages hide branding on scroll */
body:not(.home) .site-header.is-compact {
    transform: translateY(calc(var(--shb-height) / -1));
}

/* Add header padding to page cover to account for fixed position */
.page-cover {
    padding-top: var(--sh-height) !important;
}

/* When there is an image, increase height of cover */
body.has-featured-image .page-cover {
    min-height: min(50vh, 500px) !important;
}

.site-header__nav .wp-block-navigation-item .wp-block-navigation-item a {
	font-size: .95em;
}

/* Add offset to submenus */
.site-header__nav .wp-block-navigation__submenu-container {
	--submenu-offset: 15px;
	transform: translateY(var(--submenu-offset));
}

.site-header__nav .wp-block-navigation__submenu-container::before {
	content: '';
	position: absolute;
	background: transparent;
	width: 100%;
	height: var(--submenu-offset);
	top: calc(var(--submenu-offset) / -1);
}


/* Add radius to submenus */
/* .site-header__nav .wp-block-navigation__submenu-container {
	border-radius: 5px;
}

.site-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item:first-child {
	border-radius: 5px 5px 0 0;
}

.site-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child {
	border-radius: 0 0 5px 5px;
} */

/* Change submenu background */
.site-header__nav .wp-block-navigation__submenu-container {
	background: #fffd !important;
/* 	-webkit-backdrop-filter: blur(5px); */
/* 	backdrop-filter: blur(5px); */
}

body:not(.home) .site-header.is-compact {
    background-color: #000c;
/*     -webkit-backdrop-filter: blur(8px); */
/*     backdrop-filter: blur(8px); */
}

.page-cover:has(+ div .wp-block-boldblocks-svg-block) {
    padding-bottom: 50px;
}

.wp-block-site-logo img {
    filter: drop-shadow(1px 2px 4px #0003);
}

/* Cover Links */
.cover-link {
    position: relative;
    overflow: hidden;
    padding: 0 !important;
	border-radius: 5px;
    filter: drop-shadow(1px 2px 3px #0004);
}

.cover-link a {
    text-decoration: none !important;
}

.cover-link a::before {
    content: '';
    position: absolute;
    bottom: -20px;
    aspect-ratio: 16/9;
    left: -20px;
    background: transparent;
    width: 200%;
    display: block;
}

.cover-link h3 {
    position: relative;
	transition: all .2s ease;
    transform-origin: bottom left;
}

.cover-link:hover h3 {
    transform: scale(1.1);
    background: #333 !important;
}

.cover-link h3::after {
    content: '';
    position: absolute;
    right: -9px;
    top: 0;
    width: 10px;
    bottom: 0;
    background: inherit;
    clip-path: polygon(0 0, 2px 0, 100% 100%, 0% 100%);
}

/* Adjust testimonials */
.am-testimonial p::before,
.am-testimonial p::after {
    content: '"';
    color: var(--wp--preset--color--primary);
    line-height: 0;
    font-size: 1.5em;
    vertical-align: middle;
    font-family: monospace;
}

.slick-arrow {
    opacity: 0;
    transition: opacity .2s ease;
}

.slick-slider:hover .slick-arrow {
    opacity: 1;
}

.slick-next {
    right: 0;
}

.slick-prev {
    left: 0;
}

/* Animate gallery images */
.animate-gallery img {
    transition: transform .2s ease;
}

.animate-gallery img:hover {
    transform: translateY(-8px) scale(1.1);
}

/* Menu toggles */
.wp-block-navigation li li a:hover span {
    color: var(--wp--preset--color--primary);
}

.wp-block-navigation__responsive-container-open svg {
    width: 44px;
    height: 44px;
}

.wp-block-navigation__responsive-container-open {
    display: flex;
}

.wp-block-navigation__responsive-container-open::after {
    content: 'Menu';
    line-height: 44px;
    font-size: 22px;
    letter-spacing: 1px;
}

.is-menu-open ul.wp-block-navigation > .wp-block-navigation-item a {
    font-size: 24px;
    line-height: 1.3;
}

.is-menu-open ul.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item a {
    font-size: 20px;
}

.is-menu-open .wp-block-navigation__container {
    width: 100%;
}

.is-menu-open .items-justified-center .wp-block-navigation-item,
.is-menu-open .items-justified-center .wp-block-navigation-item a {
    text-align: center;
    justify-content: center;
}

.is-menu-open .items-justified-right .wp-block-navigation-item,
.is-menu-open .items-justified-right .wp-block-navigation-item a {
    text-align: right;
    justify-content: end;
}

.is-menu-open .wp-block-navigation-item {
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 0 !important;
    width: 100%;
    justify-content: space-between;
}

.is-menu-open .wp-block-navigation-submenu__toggle {
    display: inline-flex !important;
    flex: 0 0 24px;
    display: flex;
    justify-content: center;
    height: 24px;
    margin-inline: 0;
}

.is-menu-open .wp-block-navigation-submenu {
    flex: 100%;
}

.is-menu-open .wp-block-navigation-submenu__toggle[aria-expanded="false"] + ul {
    display: none;
}

.is-menu-open .wp-block-navigation-submenu__toggle svg {
    transition: transform .2s ease;
    transform: rotate(-90deg);
    width: 16px;
}

.is-menu-open .wp-block-navigation-submenu__toggle[aria-expanded="true"] svg {
    transform: rotate(0deg);
}

.is-menu-open .wp-block-navigation__submenu-container {
    flex: 0 0 100%;
    gap: 5px !important;
}

.has-modal-open .site-header {
    inset: 0 !important;
    margin: 0 !important;
    transform: unset !important;
}


/* Breadcrumbs */
.breadcrumbs {
    font-size: 15px;
    font-weight: 500;
}

span.breadcrumb {
    color: #fffd;
    font-weight: 400;
}

/* Darken logo in modal menu */
.is-menu-open .wp-block-site-logo img {
    filter: brightness(0);
}

@media (max-width:600px) {
    .site-header__brand-middle {
        grid-column: span 3;
    }

    .site-header__brand .wp-block-buttons {
        display: none;
    }
}

@media (max-width: 781px) {
    .align-center-on-tablet figure[class*="align"] img {
        float: none !important;
    }
}

/* Add lines between mobile menu items */
.has-modal-open ul.wp-block-navigation {
    gap: 0 !important;
}

.has-modal-open ul.wp-block-navigation > li {
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.has-modal-open ul.wp-block-navigation > li ul {
    padding-bottom: 20px;
}

/* Dont left/right align images below certain width */
@media (max-width: 600px) {
    main .entry-content figure.alignleft,
    main .entry-content figure.alignright {
        text-align: center;
    }

    main .entry-content figure.alignleft img,
    main .entry-content figure.alignright img {
        float: none;
        margin: 0;
    }
}

.site-header .wp-block-navigation__submenu-container {
    border-color: #333 !important;
	min-width: 340px !important;
}

.site-header .wp-block-navigation__submenu-container > li {
    background: #444;
    color: #fff;
}

.kvc-gallery.masonry a {
    display: block;
    position: absolute;
}

.wp-block-navigation__submenu-container > li {
    background: #000c !important;
}

.center-on-five > :last-child {
  transform: translateX(50%);
}

.center-on-five > :nth-last-child(2) {
  transform: translateX(50%);
}

@media (min-width: 580px) and (max-width: 781px) {
  .center-on-five > :last-child {
    transform: translateX(50%);
  }
  
  .center-on-five > :nth-last-child(2) {
    transform: unset;
  }
}

@media (max-width: 580px) {
  .center-on-five > :last-child {
    transform: unset;
  }
  
  .center-on-five > :nth-last-child(2) {
    transform: unset;
  }
}

.arrow-animated {
  cursor: pointer;
}

.arrow-top {
    fill: #fffa;
    animation: moveDown 2s ease-in-out infinite;
    transform-origin: center;
}

.arrow-middle {
    fill: #fffd;
}

.arrow-bottom {
    fill: #fffa;
    animation: moveUp 2s ease-in-out infinite;
    transform-origin: center;
}

@keyframes moveDown {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(9px);
    }
}

@keyframes moveUp {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-7px);
    }
}

@media (max-width: 600px) {

  .site-header__inner {
    display: flex;
    flex-direction: row !important;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  
  .site-header__nav {
    background: transparent !important;
    padding-top: 16px;
  }
  
  .site-header.is-compact {
    transform: unset !important;
  }
}