/*
Theme Name: Twenty Twenty-Four Child
Theme URI: 
Author: 
Author URI: 
Description: A child theme for Twenty Twenty-Four.
Requires at least: 6.0
Tested up to: 6.4.3
Requires PHP: 5.7
Version: 1.0.19
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfour
Text Domain: twentytwentyfourchild
Tags: 
*/



:root {
	--shadow: 0 50px 100px -20px rgba(50,50,93,0.25),0 30px 60px -30px rgba(0,0,0,0.3);
}

html {
  scroll-behavior: smooth;
}

.hidden {
	display: none;
}

:is(mark) {
	background-color: transparent;
}

.aspect-wide,
.aspect-wide img,
.aspect-wide video {
  aspect-ratio: 16 / 6;
  object-fit: cover;
}

.is-style-aspect-wide :is(img, video) {
	aspect-ratio: 14 / 5;
	object-fit: cover;
}

.is-style-phone-mockup {
	position: relative;
	border: 3px solid var(--wp--preset--color--custom-slate-900);
	border-radius: 24px !important;
	aspect-ratio: 1080 / 2400 !important;
}

.is-style-phone-mockup::after {
    content: '';
    position: absolute;
    top: -3px;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 50%;
    height: 4%;
    background-color: var(--wp--preset--color--custom-slate-900);
    border-radius: 0 0 100vw 100vw;
}

.is-style-phone-mockup img {
	aspect-ratio: 1080 / 2400;
	object-fit: cover;
}

.is-style-inline {
  display: inline-block;
}

.is-style-to-bottom {
margin-top: auto;
}

.is-style-inline-center {
  display: inline-block;
  margin-inline: auto !important;
}

.is-style-hide {
	display: none !important;
}

.inline-flex {
  display: inline-flex !important;
}

.is-style-full-link a::after {
    content: '';
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.is-style-no-shrink {
	flex-shrink: 0;
}

.is-style-image-zoom {
	overflow: clip;
	overflow: hidden;
}

.is-style-image-zoom img {
	transition: scale 300ms ease-out;
}

.is-style-image-zoom .wp-block-cover__background {
	transition: opacity 0.3s ease-out;
}

.is-style-image-zoom:hover img {
	scale: 1.1;
}

.is-style-image-zoom:hover .wp-block-cover__background.has-background-dim {
	opacity: 0.3;
}

.hover-background-slate-700 {
  transition: background-color 250ms ease-out;
}


.hover-background-slate-700:hover {
  background-color: var(--wp--preset--color--custom-slate-700);
}


@media (min-width: 782px) {
	.sticky-25 {
	  position: sticky;
	  top: 25%;
	}
}

.is-style-rounded iframe {
  border-radius: var(--wp--preset--spacing--20);
}


.go-behind-footer {
  padding-bottom: 5.2rem !important;
  margin-bottom: -5.2rem !important;
}


.is-style-color-highlight {
  font-weight: 500;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.is-style-justify {
  text-align: justify;
}

.is-style-vertical-34 {
  aspect-ratio: 3 / 4;
  min-height: initial;
}

.is-style-square {
  aspect-ratio: 1 / 1;
  min-height: initial;
}

.is-style-horizontal-16-9 {
	aspect-ratio: 16 / 9 !important;
	min-height: unset !important;
}

@media (min-width: 1000px) {
	.is-style-horizontal-16-6 {
		aspect-ratio: 16 / 6 !important;
		min-height: unset !important;
	}	
}

.is-style-yt-popup img {
	transition: scale 0.3s ease-out;
}

.is-style-yt-popup .wp-block-cover__background {
	transition: opacity 0.3s ease-out;
}

.is-style-yt-popup:hover img {
	scale: 1.1;
}

.is-style-yt-popup:hover .wp-block-cover__background.has-background-dim {
	opacity: 0.1;
}

.is-style-yt-popup .wp-block-cover__inner-container,
.is-style-yt-popup .wp-block-wpzoom-video-popup-block-block {
	height: 100%;
}

.is-style-yt-popup a {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
}

.is-style-yt-popup a svg {
	width: 48px;
	height: 48px;
}

.is-style-to-bottom {
  margin-top: auto !important;
}

.is-style-two-lines {
  min-height: 2.4em;
}

@media (max-width: 599px) {
	.is-style-mobile-full-width {
		margin-right: calc(var(--wp--style--root--padding-right)* -1) !important;
		margin-left: calc(var(--wp--style--root--padding-left)* -1) !important;
	}
}

.wp-block-button .wp-block-button__link {
  display: flex;
  gap: 0.5em;
  align-items: center;
  flex-wrap: nowrap;
}

.wp-block-button .wp-block-button__link img {
  transition: transform 200ms ease-out;
}

.wp-block-button .wp-block-button__link:hover img[src*="arrow-right"] {
  transform: translateX(2px);
}

.wp-block-button .wp-block-button__link:hover img[src*="arrow-right-up"] {
  transform: translate(2px, -2px);
}

.is-style-link > .wp-block-button__link {
	padding: 0;
	color: var(--wp--preset--color--custom-slate-800);
	text-transform: none;
	font-size: var(--wp--preset--font-size--normal);
	background-color: transparent;
	border: 0 !important;
}

.is-style-link > .wp-block-button__link:hover {
	color: var(--wp--preset--color--custom-azure-radiance-500);
}

.wp-block-button > .wp-block-button__link:hover img {
	transform: translateX(2px);
}

.wp-block-button > .wp-block-button__link:hover img[src*="chat-3-fill"] {
	transform: translateY(-2px);
}

.wp-block-button.is-style-link > .wp-block-button__link:hover {
  background-color: transparent;
}

.wp-block-button.is-style-fill > .wp-block-button__link:hover {
border-color: var(--wp--preset--color--custom-azure-radiance-600);
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover img {
    filter: brightness(0) invert(1);
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color, .has-background):hover {
    background-color: var(--wp--preset--color--custom-azure-radiance-500);
    color: var(--wp--preset--color--custom-slate-900);
    border-color: var(--wp--preset--color--custom-azure-radiance-500);
}

.wp-block-button.is-style-link-color > .wp-block-button__link {
	padding: 6px 0;
	color: var(--wp--preset--color--custom-slate-800);
	text-transform: uppercase;
	font-size: var(--wp--preset--font-size--small);
	background-color: transparent;
	border-width: 0 0 2px 0 !important;
	border-color: var(--wp--preset--color--custom-azure-radiance-600);
border-radius: 0;
}

.wp-block-button.is-style-link-color > .wp-block-button__link:hover,
.wp-block-button.is-style-link-color > .wp-block-button__link:not(.has-text-color, .has-background):hover {
    color: var(--wp--preset--color--custom-azure-radiance-600);
}

.has-global-padding > .alignfull.has-background {
    padding-right: var(--wp--style--root--padding-right);
    padding-left: var(--wp--style--root--padding-left);
}

.is-content-justification-center > * {
	justify-content: center;
}


/* header home */


.home header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background-color: transparent;
	background-image: linear-gradient(to bottom, #00000088 15%, transparent 50%);
	background-size: 100% 200%;
	background-position: center 0%;
	transition: background-color 300ms, background-position 200ms 100ms;
}

.home header .logo a {
	color: white !important;
}

.home header.position-sticky .logo a {
	color: var(--wp--preset--color--custom-slate-700) !important;
}	

@media (min-width: 1000px) {
	.home .wp-block-navigation--main > .wp-block-navigation-item,
	.home .wp-block-navigation--main .wp-block-navigation-submenu__toggle {
		color: white !important;
	}

	.home header.position-sticky .wp-block-navigation--main > .wp-block-navigation-item,
	.home header.position-sticky .wp-block-navigation--main .wp-block-navigation-submenu__toggle {
		color: var(--wp--preset--color--custom-slate-700) !important;
	}	
}

.home header .wp-block-navigation__responsive-container-open svg {
	fill: white !important;
}

.home header.position-sticky .wp-block-navigation__responsive-container-open svg {
	fill: var(--wp--preset--color--custom-slate-700) !important;
}

.home.logged-in header {
	top: 32px;
}

.home.logged-in .position-sticky {
	top: 32px !important;
}


/* 
 * sticky header 
 */


header {
	position: sticky;
	top: 0;
	z-index: 99;
	background-color: white;
}

header.position-sticky {
  	background-color: white;  	
	background-position: center 100%;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;
	transition: background-color 300ms 100ms, background-position 100ms;
}

header.position-sticky > div {
	padding-top: var(--wp--preset--spacing--10) !important;
	padding-bottom: var(--wp--preset--spacing--10) !important;
}


/*
 * header elements order
 */


@media (min-width: 600px) and (max-width: 999px) {
	header .wp-block-navigation--main {
		order: 3;
	}

	header .nav-button {
		order: 2;
		margin-left: auto
	}	
}


/* 
 * header logo 
 */

.logo a {
	text-decoration: none;
}



/* 
 * header button 
 */


@media (max-width: 599px), (min-width: 1000px) and (max-width: 1280px) {
	header .nav-button {
		display: none;
	}
}


/* 
 * nav new breakpoint 
 */


@media ( min-width: 600px ) {
    .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;
    }
}

@media ( min-width: 1000px ) {
    .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;
    }
}


/* 
 * nav  
 */


@media (min-width: 1000px) {
	.wp-block-navigation--main > .wp-block-navigation-item {
		padding: 1rem 0 !important;
		font-weight: 500;
	}
	
	.wp-block-navigation--main .wp-block-navigation-item.current-menu-item {
		color: var(--wp--preset--color--custom-azure-radiance-600);
	}
	
	.wp-block-navigation--main > .wp-block-navigation-item.has-child,
	.wp-block-navigation--main > .wp-block-navigation-item.has-child button {
		cursor: default;
	}
}



/* 
 * nav submenu 
 */


@media (min-width: 1000px) {
	.wp-block-navigation__submenu-container {
		left: -100% !important;
		border: none !important;
		border-radius: 6px;
		gap: 6px;
		padding: 8px !important;
		box-shadow: var(--shadow);
	}
	
	.wp-block-navigation__submenu-container::before {
		content: '';
		display: block;
		position: absolute;
		border-width: 8px;
		border-style: solid;
		border-color: transparent transparent white transparent;
		top: -1rem;
		left: 50%;
		transform: translateX(-50%);
	}

	.wp-block-navigation__submenu-container .wp-block-navigation-item {
		border-radius: 6px;
		transition: background-color 200ms ease-out;
		font-size: 0.9375rem !important;
		color: var(--wp--preset--color--custom-slate-700);
	}

	.wp-block-navigation__submenu-container .wp-block-navigation-item:hover {
		background-color: var(--wp--preset--color--custom-slate-100);
	}

	.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		padding: 8px 32px 8px 16px;
	}

	.wp-block-navigation__submenu-container .wp-block-navigation-item:hover .wp-block-navigation-item__content {
		text-decoration: none;
	}
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__label:has(img) {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}


/*
 * nav mobile
 */


@media (max-width: 999px) {
	.wp-block-navigation--main {
		gap: 0.75rem !important;
	}
	
	.wp-block-navigation--main > .wp-block-navigation-item .wp-block-navigation-item__content {
		padding: 0.5rem 0 !important;
	}
	
	.wp-block-navigation--main .wp-block-navigation-submenu {
		align-items: flex-start !important;
		gap: 0 !important;
	}

	.wp-block-navigation--main .wp-block-navigation__submenu-container {
		padding: 0 !important;
	}

	.wp-block-navigation__container,
	.wp-block-navigation__submenu-container {
		width: 100% !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
		max-height: 0;
		overflow: hidden !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container {
		padding: 0 16px !important;
		border-radius: 8px;
		background-color: var(--wp--preset--color--custom-slate-100) !important;
		box-sizing: border-box;
		overflow: hidden !important;
	}

	.wp-block-navigation-submenu .wp-block-navigation-item:first-child {
		padding-top: 16px !important;
	}

	.wp-block-navigation-submenu .wp-block-navigation-item:last-child {
		padding-bottom: 16px;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
		background-color: white !important;
	}

	.wp-block-navigation-item {
		width: 100%;
		align-items: stretch !important;
	}

	.wp-block-navigation__submenu-icon {
		display: grid !important;
		position: absolute;
		inset: 0;
		width: 100% !important;
		height: 44px !important;
		place-items: center end;
		align-self: start !important;
	}
	
	.wp-block-navigation__submenu-icon svg {
		width: 20px !important;
		height: 20px !important;
	}
	
	.wp-block-navigation__submenu-icon svg path {
		stroke-width: 1;
	}
}


.hero-cover .wp-block-cover__inner-container {
	position: unset;
}

.wp-block-navigation .wp-block-navigation-item {
  background-color: transparent;
}

.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container, .wp-block-navigation .has-child:not(.open-on-click):hover>.wp-block-navigation__submenu-container, .wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within>.wp-block-navigation__submenu-container {
  width: max-content;
}

.is-style-rounded {
  border-radius: 1rem;
}

.is-style-list-highlighted {
    list-style: none;
    padding: 0;
    display: grid;
    gap: 0.3rem;
    width: 100%;
}

@media (min-width: 768px) {
  .is-style-list-highlighted {
      grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1014px) {
  .is-style-list-highlighted {
      grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1440px) {
  .is-style-list-highlighted {
      grid-template-columns: repeat(4, 1fr);
  }
}

.is-style-list-highlighted li {
   
    border-radius: 0.5rem;
    background-color: var(--wp--preset--color--custom-slate-50);
}

.is-style-list-highlighted li:hover {
    background-color: var(--wp--preset--color--custom-slate-100);
}

.is-style-list-highlighted li a {
    display: block;
    padding: 0.7rem 1.2rem;
    text-decoration: none;
}

.wp-block-group.has-background .wp-element-caption {
margin-top: 0.8em !important;
margin-bottom: calc(0.8em - 4px) !important;
margin-left: 0.8em !important;
}

.is-style-object-position-top img {
	object-position: center 10%;
}

#play-pause {
    position: absolute;
    bottom: 0.5rem;
    right: 0.5rem;
    border: none;
    width: 3rem;
	height: 3rem;
	display: grid;
	place-items: center;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 4px;
    color: white;
    font-family: 'Montserrat', sans-serif;
    cursor: pointer;
	font-size: var(--wp--preset--font-size--x-large);
}

#play-pause::before {
    line-height: 2;
}

[aria-label="Zatrzymaj"]::before {
	content: '⏸';
}

[aria-label="Odtwórz"]::before {
	content: '▶';
}

@media (min-width: 640px) {
	#play-pause {
		width: auto;
		height: auto;
		padding: 0.6rem 1rem;
		font-size: var(--wp--preset--font-size--normal);
	}
	
	#play-pause::before {
		content: attr(aria-label);
		line-height: 1;
	}
}

.overflow-hidden {
	overflow: hidden;
}


.is-style-yt-thumbnail {
	width: 100%;
	overflow: hidden;
}

.is-style-yt-thumbnail .wp-block-wpzoom-video-popup-block-block {
	width: 100%;
	height: 100% !important;
	position: absolute;
	inset: 0;
	margin-top: 0;
	border-radius: 1rem;
}

@keyframes fadeInTop {
 100% {
  transform: translateY(0);
  opacity: 1;
 }
}

[class*="animate-fadein-top"] {
 transform: translateY(1.5rem);
 opacity: 0;
 animation: fadeInTop 650ms ease-out forwards
}

.animate-fadein-top-no-delay {
 animation-delay: 0ms;
}

.animate-fadein-top-delay-1 {
 animation-delay: 100ms;
}

.animate-fadein-top-delay-2 {
 animation-delay: 200ms;
}

.animate-fadein-top-delay-3 {
 animation-delay: 300ms;
}

.animate-fadein-top-delay-4 {
 animation-delay: 400ms;
}

svg {
 display: block;
}

figure {
  line-height: 1;
}

footer {
 margin-top: 0;
}

.max-h-full {
  max-height: 100% !important;
}

.object-center-20,
.object-center-20 :is(img, video) {
	object-position: center 20%;
}

.object-center-70,
.object-center-70 :is(img, video) {
	object-position: center 70%;
}

.shrink-0 {
    flex-shrink: 0;
}

/*
 * yoast seo faq styles
 * */

.schema-faq-section {
	--padding: 1.5rem;
	
	display: grid;
  	border-bottom: 2px solid var(--wp--preset--color--custom-slate-200);
}

.schema-faq-question {
	padding: var(--padding) 0;
	color: var(--wp--preset--color--custom-slate-800);
	cursor: pointer;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;	
}

.schema-faq-question svg {
	margin-top: 4px;
	transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.schema-faq-answer {
  margin: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 500ms cubic-bezier(0.4, 0, 0.2, 1);
}

.schema-faq-answer div {
	padding-bottom: var(--padding);
}

.schema-faq-section.open svg {
	transform: rotate(180deg);
}

.schema-faq-section.open .schema-faq-answer {
  max-height: var(--height, 1000px);
}

/* 
 * yoast breadcrumbs 
 */

.yoast-breadcrumbs {
	font-size: var(--wp--preset--font-size--small);
}

.yoast-breadcrumbs span span {
	margin-inline: 0.75rem;
}

.yoast-breadcrumbs span span:first-child {
	margin-left: 0;
}

.yoast-breadcrumbs span span:last-child {
	margin-right: 0;
}

/* 
* logos grid 
*/

.logos-grid {
	--columns: auto-fit;
	
	grid-template-rows: repeat(var(--columns), minmax(0, 1fr));
}

.logos-grid figure {
    width: 100%;
    height: 100%;
	box-sizing: border-box;
    display: grid;
    place-items: center;
}

@media (max-width: 360px) {
	.logos-grid {
		--columns: 2;
	}
}

@media (min-width: 361px) and (max-width: 768px) {
	.logos-grid {
		--columns: 3;
	}
}

@media (min-width: 769px) and (max-width: 1140px) {
	.logos-grid {
		--columns: 5;
	}	
}


/*
 * trusted by logo carousel, logo grid
 */


.trusted-by .swiper-container-outer img,
.logos-grid img {
	filter: grayscale(1);
	opacity: 0.5;
	object-fit: scale-down;
}

.trusted-by .swiper-container-outer img:hover,
.logos-grid img:hover {
	filter: grayscale(0);
	opacity: 1;
}


/*  
 *  getwid blocks styles 
 */


.is-style-faq .wp-block-getwid-toggle__row:not(:last-child) {
  border-bottom: 2px solid var(--wp--preset--color--custom-slate-200);
}

.is-style-faq .wp-block-getwid-toggle__row:first-child .wp-block-getwid-toggle__header-wrapper {
  border-top: none;
}

.is-style-faq .wp-block-getwid-toggle__header {
  padding: 2rem 0;
  box-sizing: border-box;
}

.is-style-faq .wp-block-getwid-toggle__header-wrapper {
  border: none;
}

.is-style-faq .wp-block-getwid-toggle__content {
  border: none;
  padding: 0 0 2rem 0;
}

.article-wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.article-wrapper .wp-block-post-excerpt {
  flex: 1 0 100%;

  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.article-wrapper .wp-block-post-excerpt__more-text {
  margin-top: auto;
}

/*
* YARPP PLUGIN STYLES
*/

.yarpp-template-thumbnails {
  margin-top: 4rem !important;
}

.yarpp-template-thumbnails h3 {
  font-size: var(--wp--preset--font-size--large);
  margin-bottom: 2rem;
}

.yarpp-thumbnails-horizontal {
  display: grid;
}

.yarpp-thumbnail {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  border-width: 1px 0 0 0 !important;
  display: grid !important;
  grid-template-columns: 1fr 4fr;
  align-items: center;
  gap: 2rem;
  padding: 1rem 0;
}

.yarpp-thumbnail:last-child {
  border-width: 1px 0 !important;
}

.yarpp-thumbnail > img,
.yarpp-thumbnail-default,
.yarpp-thumbnail-default > img {
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  margin: 0;
  border-radius: 10px;
	min-width: unset;
	min-height: unset;
}

.yarpp-thumbnail-title {
  width: 100% !important;
  margin: 0 !important;
	color: var(--wp--preset--color--custom-slate-800);
}


/*
 * trustindex plugin styles 
 */
@media (min-width: 480px) {
	.ti-widget.ti-goog .ti-review-item {
		padding: 1rem !important;
		border-radius: 1.25rem;
		transition: background-color 0.2s ease-in !important;
	}
	
	.ti-widget.ti-goog .ti-review-item:hover {
		transform: translate(0) !important;
		background-color: var(--wp--preset--color--custom-slate-50);
	}
}


/* 
 * hide pc/mobile classes 
 */


@media (min-width: 600px) {
	.is-style-mobile-only,
	.is-style-mobile-only.is-layout-flex {
		display: none;
	}	
}

@media (max-width: 599px) {
	.is-style-pc-only,
	.is-style-pc-only.is-layout-flex {
		display: none;
	}	
}