/*
Theme Name: AssuredTech
Author: bananaconda
Author URI: 
Theme URI: 
Tags: full-site-editing
Text Domain: assuredtech
Requires at least: 6.1
Requires PHP  /* Add subtle separator after submenu parent label */

/*
Theme Name: AssuredTech
Author: bananaconda
Author URI:
Theme URI:
Tags: full-site-editing
Text Domain: assuredtech
Requires at least: 6.1
Requires PHP: 7.4
Tested up to: 6.4
Version: 1.0.0

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Generated on fullsiteediting.com. No code version.
*/

html {
  scroll-padding-top: 105px !important;
}

.logo-list {
  flex-wrap: nowrap;
  overflow-x: auto;
  display: flex;
  justify-content: left;
  gap: 20px;
}

/* Custom scrollbar for logo list: transparent, slim, mobile-looking */
.logo-list::-webkit-scrollbar {
  height: 4px;
}
.logo-list::-webkit-scrollbar-track {
  background: transparent;
}
.logo-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 2px;
}
.logo-list::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.5);
}
.logo-list {
  scrollbar-width: thin; /* Thin scrollbar in Firefox, visible when scrolling */
}

/* Keep icons the same size on all devices */
.logo-list figure.wp-block-image,
.logo-list .wp-block-image img {
  width: auto;
  min-width: 101px;
  min-height: 54px;
  object-fit: contain;
}

.car-cover {
  padding-left: var(--wp--preset--spacing--30) !important;
  padding-right: var(--wp--preset--spacing--30) !important;
}

.wp-block-cover .wp-block-cover__image-background {
  object-position: left;
}


.show-on-mobile {
  display: none !important;
}

/* Make sure icons maintain spacing on mobile */
@media (max-width: 839px) {
  /* Hide elements on mobile */
  .hide-on-mobile {
    display: none !important;
  }
  /* Show elements on mobile */
  .show-on-mobile {
    display: block !important;
  }
	
	.advisory-blocks {
		padding: var(--wp--preset--spacing--50) !important;
	}

  .wp-block-cover {
    min-height: auto !important;
  }


  .logo-list {
    gap: 15px;
  }

  .logo-list figure.wp-block-image,
  .logo-list .wp-block-image img {
    margin: 0 !important;
  }

  .wp-block-cover {
    padding-left: var(--wp--preset--spacing--30) !important;
    padding-right: var(--wp--preset--spacing--30) !important;
  }

  .CTA {
    padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--50) !important;
    background-position-x: 30% !important;
    background-position-y: center !important;
    background-color: var(--wp--preset--color--base);
    background-blend-mode: luminosity;
  }
  .CTA .wp-block-buttons {
    justify-content: left !important;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
    background-color: var(--wp--preset--color--base) !important;
    color: #ffffff !important;
    font-size: larger;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open
    .wp-block-navigation-item.current-menu-item {
    color: var(--wp--preset--color--primary) !important;

  }

  header button > svg {
    width: 36px !important;
    height: 36px !important;
  }

  header .wp-block-button mark {
    display: none !important;
  }

  .wp-container-content-9cfa9a5a {
    flex-grow: unset !important;
  }

  /* Improve submenu styling on mobile */
  .wp-block-navigation__submenu-container {
    border: none !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
  }
	
	li.wp-block-navigation-submenu {
		margin-bottom: -25px !important;
	}

  /* More spacing between submenu items on mobile */
  .wp-block-navigation__submenu-container {
    gap: 16px !important;
    padding: 0 8px !important;
  }
	
	.wp-block-navigation__container li {
		margin-bottom: 20px;
	}
	
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
			gap: 0px;
	}

  .wp-block-navigation__submenu-container .wp-block-navigation-item {
    padding: 8px 12px !important;
  }

  /* Show submenu parent label but add subtle separator */
  .wp-block-navigation-item.has-child.open-on-hover-click.wp-block-navigation-submenu
    > a
    > span.wp-block-navigation-item__label {
    display: block !important;
    position: relative;
    text-align: center !important;
  }

  /* Add subtle separator after submenu parent label */
  .wp-block-navigation-item.has-child.open-on-hover-click.wp-block-navigation-submenu
    > a
    > span.wp-block-navigation-item__label::after {
    content: "" !important;
    display: block !important;
    width: 250px !important;
    height: 1px !important;
    background: var(--wp--preset--color--primary) !important;
    opacity: 0.5 !important;
    margin: 12px 0px 12px 0px !important;
  }

  /* Add separator after last submenu item */
  .wp-block-navigation__submenu-container
    .wp-block-navigation-item:last-child::after, .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item:last-child::after {
    content: "" !important;
    display: block !important;
    width: 250px !important;
    height: 1px !important;
    background: var(--wp--preset--color--primary) !important;
    opacity: 0.5 !important;
    margin: 20px 0px 12px 0px !important;
  }
	
	 

  .contact {
    padding: var(--wp--preset--spacing--30) !important;
  }
  .wpcf7-form.init {
    padding: 0 !important;
  }

  /* end mobile navigation overrides */

  .mission-block {
    min-height: auto !important;
  }

  .mission-block .wp-block-group {
    padding: var(--wp--preset--spacing--30) !important;
  }

  .vision-image {
    background-position-x: 60% !important;
  }

  .about-us-first-block-img {
    background-image: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .about-us-first-block-img .wp-block-columns {
    padding: var(--wp--preset--spacing--30) !important;
  }

  .about-us-first-block-p {
    padding: 0 !important;
  }

  .about-us-first-block-img .wp-block-column.is-vertically-aligned-center {
    width: unset;
  }

  .about-us-first-block-column {
    padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40) !important;
  }
}

@media (max-width: 1400px) {
  .mission-block {
    min-height: auto !important;
  }
}

/* Fix for background image shifting during animations */
.wp-block-group.CTA {
  background-attachment: local !important;
  will-change: auto !important;
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000px;
}

/* Ensure smooth rendering during layout changes */
.wp-block-group.CTA * {
  transform: translateZ(0);
  backface-visibility: hidden;
}

.wp-block-navigation__submenu-container {
  border-radius: 10px;
  background-color: var(--wp--preset--color--base) !important;
  color: #ffffff !important;
  text-align: left;
  gap: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  font-size: medium !important;
  width: 250px !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item {
  border-radius: 10px;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  background-color: var(--wp--preset--color--base);
  transition: background-color 360ms cubic-bezier(0.4, 0, 0.2, 1),
    color 360ms cubic-bezier(0.4, 0, 0.2, 1),
    opacity 360ms cubic-bezier(0.4, 0, 0.2, 1);
  will-change: background-color, opacity;
}

header.on-top {
  background: transparent !important;
  transition: background-color 360ms cubic-bezier(0.4, 0, 0.2, 1);
}

header nav li.wp-block-navigation-item.current-menu-item {
  color: var(--wp--preset--color--primary) !important;
  position: relative;
}

/* Add SVG indicator under current menu item */
header nav li.wp-block-navigation-item.current-menu-item::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 8px;
  background-image: url("./assets/icons/menu-item.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* Don't show the indicator for items inside submenu containers; keep it only for main menu items */
.wp-block-navigation__submenu-container
  .wp-block-navigation-item.current-menu-item::after {
  display: none !important;
  background-image: none !important;
}

.wp-block-navigation__submenu-container li {
	padding: 1.3em 0.3em !important;
}

.wp-block-navigation__submenu-container li img {
	width: 90%
}
.wp-block-navigation__submenu-container li mark {
	margin-left: 45px;
    background-color: unset;
    color: #ffffff;
    display: inline-block;
}

footer .wp-block-navigation span img {
	width: 160px;
}

/* Desktop: center submenu beneath its parent nav item */
@media (min-width: 840px) {
  header nav li.wp-block-navigation-item {
    position: relative;
  }

  header
    nav
    li.wp-block-navigation-item
    > .wp-block-navigation__submenu-container {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    min-width: 220px !important;
  }

  /* ensure submenu items remain stacked and centered */
  header
    nav
    li.wp-block-navigation-item
    > .wp-block-navigation__submenu-container {
    display: flex !important;
    flex-direction: column !important;
  }

  /* Style parent when a child submenu item is current (desktop only) */
  header
    nav
    li.wp-block-navigation-item:has(
      .wp-block-navigation__submenu-container
        .wp-block-navigation-item.current-menu-item
    ) {
    color: var(--wp--preset--color--primary) !important;
    position: relative;
  }

  header
    nav
    li.wp-block-navigation-item:has(
      .wp-block-navigation__submenu-container
        .wp-block-navigation-item.current-menu-item
    )::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 8px;
    background-image: url("./assets/icons/menu-item.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
}

/* Hide indicator (::after) on small screens entirely */
@media (max-width: 839px) {
  header nav li.wp-block-navigation-item::after {
    display: none !important;
    background-image: none !important;
  }
}

@media (min-width: 840px) {
  header nav li.wp-block-navigation-item::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8px; /* match previous visual gap */
    height: 8px;
    pointer-events: auto;
  }
}

.wpcf7-form {
  max-width: 800px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0 1rem;
}

label {
  font-size: large;
}

input,
textarea {
  font-size: large;
  width: 100%;
  padding: 15px 10px;
  box-sizing: border-box;
  border: 1px solid #939ab87d;
  border-radius: 8px;
  background-color: unset;
  color: #ffffff;
}

textarea {
  resize: vertical;
  height: 235px;
  min-height: 150px;
  font-size: 18px;
  padding: 10px;
}

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

.wpcf7 .wp-block-button {
  justify-items: center;
}

.intl-tel-input .flag-container .selected-flag {
  width: 80px !important;
}

.intl-tel-input .selected-dial-code {
  padding-left: 24px !important;
}

.intl-tel-input .selected-flag .iti-arrow {
  right: 4px !important;
}

.intl-tel-input .country-list {
  background-color: #0d1c2d !important;
  border: 1px solid var(--wp--preset--color--primary) !important;
}

.intl-tel-input .country-list .country.highlight {
  background-color: var(--wp--preset--color--secondary) !important;
}

/* Custom scrollbar styling for country list */

/* Scrollbar track */
.country-list::-webkit-scrollbar-track {
  background: transparent;
  border-radius: 10px;
}

/* Scrollbar itself */
.country-list::-webkit-scrollbar {
  width: 8px;
}

/* Scrollbar thumb (the draggable part) */
.country-list::-webkit-scrollbar-thumb {
  background-color: #888;
  border-radius: 10px;
  border: none;
  min-height: 25px;
}

/* On hover */
.country-list::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

/* Wyżej są nadpisane dla formularzu więc tu zmeniam kolor z powrotem na czarny dla edytora*/
:where(.editor-styles-wrapper) input,
:where(.editor-styles-wrapper) textarea {
  color: black;
}

:where(.editor-styles-wrapper) a:where(:not(.wp-element-button)) {
  color: black;
}

/* Navigation responsive behavior - collapse at 840px */
@media (min-width: 840px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none !important;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: block !important;
  }
}
@media (max-width: 839px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }
}
