/*
Theme Name: JB Septic
Theme URI: 
Author: Abstract Marketing
Author URI: 
Description: Custom theme for JB Septic Sanitation Systems
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 8.1
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jb-septic
Tags: full-site-editing
*/

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

html {
    scroll-behavior: smooth;
}

iframe {
    display: block;
}

:where(input:not(:is([type='button'], [type='submit'])), select, textarea) {
    font: inherit
}

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

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

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

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

.entry-content {
    container-type: inline-size;
}

.entry-content :is(.alignleft, .alignright) {
    margin-block-end: 1em;
}

.entry-content :is(.alignleft, .alignright):first-child + * {
    margin-top: 0;
}

@container (width < 600px) {
    .entry-content .wp-block-image:is(.alignright, .alignleft) {
        float: none !important;
        margin: 0 0 1.5rem;
        width: 100%;
        text-align: center;
    }

    .entry-content .wp-block-image:is(.alignright, .alignleft) img {
        max-height: 400px;
        width: auto !important;
        display: inline-block !important;
    }
}

html,
body {
    height: 100%;
}

html:has(.admin-bar) {
    height: calc(100% - 46px);
}

@media (min-width: 782px) {
    html:has(.admin-bar) {
        height: calc(100% - 32px);
    }
}

.wp-site-blocks {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 100%;
    min-height: 100%;
}

.wp-site-blocks > * {
    margin: 0;
}

.site-header {
    z-index: 10;
}

.site-header .wp-block-site-logo img {
  filter: drop-shadow(0 3px 3px #0003);
}

.site-header:has(.is-sticky) {
    position: sticky;
    top: 0;
    z-index: 10;
    box-shadow: 0 0 9px #0001;
}

.admin-bar .site-header:has(.is-sticky) {
    top: 40px;
}

@media (min-width: 782px) {
    .admin-bar .site-header:has(.is-sticky) {
        top: 32px;
    }
}

.has-modal-open :is(.site-header, .site-header__inner) {
    -webkit-backdrop-filter: unset !important;
    backdrop-filter: unset !important;
}

.linked-group {
  position: relative;
  overflow: hidden;
  transition: transform .2s;
  
  &:hover {
    transform: translateY(-5px);
  }
  
  a::after {
    content: '';
    position: absolute;
    inset: -500px 0;
    z-index: 1;
  }
}

.site-header ul > :is(.current-menu-item, .current-menu-ancestor) {
  @media (min-width: 992px) {
	color: var(--wp--preset--color--secondary);
  	position: relative;

    &::after {
      content: '';
      position: absolute;
      bottom: -6px;
      width: 100%;
      background: var(--wp--preset--color--secondary);
      height: 2px;
    }
  }
}

.gform_button {
    background-color: var(--wp--preset--color--secondary);
}

body.has-featured-image .page-header {
  color: #fff !important;
  min-height: 400px !important;
  
  a {
    color: inherit;
  }
  
  .wp-block-cover__background {
    opacity: .4 !important;
    background: #000 !important;
  }
}

.home-cover {
  h1 {
    filter:
      drop-shadow(0 2px 20px #000)
      drop-shadow(0 3px 5px #0005);
  }
  
  p {
    filter:
      drop-shadow(0 2px 5px #000)
      drop-shadow(0 3px 8px #0009);
  }
}

.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;
}

.wp-block-paragraph > img:nth-child(1) {
  margin-bottom: -.2em;
}

@keyframes kburns {
	from { transform: scale(1.2) }
}

.wp-block-splide-carousel .is-active .wp-block-cover__image-background {
	animation: kburns 6s ease-out;
}

.gform_footer .wp-block-button {
	text-align: center;
	justify-content: center;
	margin: 0 auto;
}

.wide-on-mobile {
  @media (max-width: 991px) {
    aspect-ratio: 2/1 !important;
  }
}

@keyframes kburns {
  from { transform: scale(1.15) }
}

.wp-block-cover.has-carousel .cover-carousel__slide.is-active,
.wp-block-cover:not(.has-carousel) .wp-block-cover__image-background {
  animation: kburns 6s ease-out;
}