/*
 * Theme Name:   My Child Theme
 * Template:     base-block
 * Version:      1.0.0
 * Description:  Child theme oparty na base-block. Dostosuj kolory, fonty i CPT w config/.
 */

/*
 * Własne style projektu poniżej.
 * Tokeny dostępne przez: var(--wp--preset--color--*), var(--wp--preset--spacing--*), etc.
 */


/* Tło + blur na ::before, NIE na samym <header>. backdrop-filter na     */
/* elemencie czyni go containing blockiem dla position:fixed potomków —  */
/* przez to overlay menu mobilnego był przycinany do wysokości headera.  */
header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255, 255, 255, 1);
	backdrop-filter: blur(5px);
	transition: background 0.25s ease;
}

header.is-scrolled::before {
	background: rgba(255, 255, 255, 0.7);
	box-shadow: rgba(0, 0, 0, 0.10) 0px 4px 10px 0px;
}

header .wp-block-navigation__submenu-container {
  border-radius: 0.5rem;
  overflow: hidden !important;
  left: -15px !important;
	min-width: 300px !important;
}
header .wp-block-navigation__submenu-container .wp-block-navigation-item:hover{
  background-color:#f9f9f9;
}
.home-hero {
	min-height: auto!important;
	height: calc(100vh - 180px);
}
.dentart-cta{
	position: relative;
	z-index: 9;
}
.dentart-testimonials{
	position: relative;
	z-index: 99;
}
.base-block-post-carousel__body,
.base-block-post-relations__body{
	padding: var(--wp--preset--spacing--30);
	background:white;
}

.base-block-post-carousel__title,
.base-block-post-relations__title{
	margin: 0;
	text-align: center;
	font-size: 1.4rem;
}
.box-hover, .swiper .swiper-slide {
  transition: all .2s ease-in-out;
}
.box-hover:hover, .swiper .swiper-slide:hover {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05) !important;
  transform: translateY(-.25rem);
}


/* contact form */


.cta-two-column .cta-column-form .wp-block-group{
	height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.wpcf7-form label,
.wpcf7-form-control-wrap,
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea,
.wpcf7-form-control-wrap select{
display: inline-block;
width: 100%;
	box-sizing: border-box;
}
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea,
.wpcf7-form-control-wrap select{
padding: 0.75rem;
border-radius: 0.35rem;
border: 1px solid #f0f0f0;
	font-size: 1rem;
	background: white;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
margin: 0;
}
.wpcf7-form-control-wrap{
	margin-top: 0.25rem;
}
.wpcf7-form-control-wrap input[type=checkbox]{
width: auto;
}
.wpcf7-form label{
margin-bottom:0.5rem;
	color:white;
}
.wpcf7-submit {
	background: white;
  color: black;
}

.wrap-input {
  display: flex;
  gap: 30px;
}
.wrap-input p{
  flex: 1;
}

/* page kontakt - form */

.page-id-4059 .wpcf7-form{
	max-width: 700px;
  margin: 0 auto;
}

.page-id-4059 .wpcf7-form-control-wrap input,
.page-id-4059 .wpcf7-form-control-wrap textarea,
.page-id-4059 .wpcf7-form-control-wrap select{
	border: 1px solid var(--wp--preset--color--accent-3) !important;
}
.page-id-4059  .wpcf7-submit {
	background: var(--wp--preset--color--accent-1) !important;
  color: white;
}
.page-id-4059 .wpcf7-form label{

	color:black;
}

.schema-faq-section {
  background: var(--wp--preset--color--brand-cream);
  border: 1px solid var(--wp--preset--color--brand-line);
  padding: 1rem;
  border-radius: 0.3rem;
  margin-bottom: 1rem;
}
.cert-overflow{
	overflow:hidden;
}

/* dark cta svg section */

/* Ikony SVG wstawiane jako <img> nie dziedziczą koloru tekstu, więc na  */
/* ciemnym tle (blob-bg) rozjaśniamy je filtrem do bieli. Klasę dodajemy */
/* na grupie sekcji — te same pliki ikon na jasnych tłach zostają bez zmian. */
.dnt-ico-white img[src$=".svg"] {
	filter: brightness(0) invert(1);
}

/* Page blog */

.blog-list-item-image {
	position: relative;
	overflow:hidden;
}

.blog-list-item-image figure{
	height:100%;
}
.blog-list-item-image .wp-block-group {
	position: absolute;
  bottom: 1rem;
  left: 1rem;
	backdrop-filter: blur(5px);
}
/* swiper */
.home .swiper {
	padding-right:26px;
}
.swiper .swiper-button-prev, .swiper .swiper-button-next {
  background-color: var(--wp--preset--color--accent-1);
  border: 1px solid var(--wp--preset--color--accent-1);
  border-radius: 0.375rem;
  width: 44px;
  transition: all .2s ease-in-out;
	color:white!important;
}

.swiper .swiper-button-next {
  top: 100%;
left: 50%;
	transform: translatex(20px);
}
.home .swiper .swiper-button-next {
  	top: 50%;
	left: calc(100% - 50px);
	transform: translatey(-20px);
}
/* .home .swiper .swiper-button-prev, .home .swiper .swiper-button-next {
	color:white;
	background-color: var(--wp--preset--color--accent-1);
  border: 1px solid var(--wp--preset--color--accent-1);
} */
.swiper .swiper-button-prev {
  top: 100%;
  left: 50%;
	transform: translatex(-66px);
}
.home .swiper .swiper-button-prev {
 display:none;
}
.swiper .swiper-button-prev:hover, .swiper .swiper-button-next:hover {
  color: white;
  background-color: var(--wp--preset--color--accent-3) !important;
  border: 1px solid var(--wp--preset--color--accent-3) !important;
  border-radius: 0.375rem;
  width: 44px;
}


.swiper .swiper-button-prev::after, .swiper .swiper-button-next::after {
  font-size: 22px;
  font-weight: bold;
}

.swiper .swiper-button-prev, .swiper .swiper-button-next {
  color: var(--wp--preset--color--accent-1);
}


.footable .pagination>.active>a {
	background-color: var(--wp--preset--color--accent-1)!important;
	border-color: var(--wp--preset--color--accent-1)!important;
}
@media (max-width: 780px) {
	.dark-cta-svg .wp-block-group{
		padding:0!important;
	}

  .wpcf7-form .wrap-input {
    flex-direction: column !important;
	  gap:0;
  }
	.ninja_clmn_nm_cena {
		min-width:75px!important;
	}
	
	.home-hero{
    	min-height: auto !important;
    	height: auto!important;
    	padding-bottom: 63%!important;
	}
	.dentart-cta{
		margin-top:var(--wp--preset--spacing--60)!important;
		text-align: center;
	}
	.dentart-cta .wp-block-buttons{
		justify-content: center!important;
	}

	
.wpcf7 input[type="date"] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  color: #000;
min-height: 48px;
  /* miejsce na ikonę + sama ikona z Twojego SVG */
  padding-right: 40px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWNhbGVuZGFyLWRheXMtaWNvbiBsdWNpZGUtY2FsZW5kYXItZGF5cyI+PHBhdGggZD0iTTggMnY0Ii8+PHBhdGggZD0iTTE2IDJ2NCIvPjxyZWN0IHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeD0iMyIgeT0iNCIgcng9IjIiLz48cGF0aCBkPSJNMyAxMGgxOCIvPjxwYXRoIGQ9Ik04IDE0aC4wMSIvPjxwYXRoIGQ9Ik0xMiAxNGguMDEiLz48cGF0aCBkPSJNMTYgMTRoLjAxIi8+PHBhdGggZD0iTTggMThoLjAxIi8+PHBhdGggZD0iTTEyIDE4aC4wMSIvPjxwYXRoIGQ9Ik0xNiAxOGguMDEiLz48L3N2Zz4=");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 20px 20px;
}

/* iOS/WebKit: przywróć widoczny tekst formatu i wpisanej daty */
.wpcf7 input[type="date"]::-webkit-date-and-time-value {
  text-align: left;
  color: #000;
}
.wpcf7 input[type="date"]::-webkit-datetime-edit {
  color: #000;
}
.wpcf7 input[type="date"]::-webkit-datetime-edit-text,
.wpcf7 input[type="date"]::-webkit-datetime-edit-day-field,
.wpcf7 input[type="date"]::-webkit-datetime-edit-month-field,
.wpcf7 input[type="date"]::-webkit-datetime-edit-year-field {
  color: #000;
}
	.dentart-info-bar svg{
		width:30px!important;
	}
	
	.base-block-post-carousel.swiper  {
		padding-bottom:70px!important;
	}
	
	.swiper .swiper-button-next, .swiper .swiper-button-prev {
  		top: 90%;
	}

	.home .swiper {
	padding-right:0px;
}
	
.home .swiper .swiper-button-next {
  	top: 90%;
	left: 50%;
	transform: translatey(0px);
}
	.home .swiper .swiper-button-prev {
  		top: 90%;
  		left: 50%;
		transform: translatex(-66px);
	}
	.home .swiper .swiper-button-prev {
		display:flex;
	}

}

/* =============================================================================
   FIX: obcinane strzałki nawigacji karuzeli
   -----------------------------------------------------------------------------
   Przyczyna: blok .base-block-post-carousel ma overflow:hidden (potrzebne do
   przycinania slajdów), a strzałki były pozycjonowane top:100% przy domyślnym
   swiperowym margin-top:-22px. Ich dolna połowa (~24 px) wychodziła poza
   kontener i była przycinana. Na mobile (max-width:780px) top:90% dawał ten sam
   efekt przy wyższych kontenerach.

   Rozwiązanie: kotwiczymy strzałki do dolnej krawędzi kontenera (bottom:0,
   margin-top:0) — mieszczą się w padding-bottom bloku (64 px desktop /
   70 px mobile). Zakres ograniczony do podstron innych niż strona główna,
   gdzie strzałki mają własne, celowe pozycjonowanie (top:50% / prawa krawędź).
   ============================================================================= */
body:not(.home) .swiper .swiper-button-prev,
body:not(.home) .swiper .swiper-button-next {
	top: auto;
	bottom: 0;
	margin-top: 0;
}

/* Zapas miejsca pod strzałki, gdyby blok nie miał własnego padding-bottom.
   Inline style bloku (padding-bottom z ustawień) i tak ma pierwszeństwo. */
body:not(.home) .base-block-post-carousel.swiper,
body:not(.home) .base-block-image-carousel.swiper {
	padding-bottom: 64px;
}
