body {
  color: #666;
  --kml-blue: #3485A2;
  --kml-red: #E84B06;
/*  --kml-blue-2: #1203ca; */
/*  --kml-blue-2: #3e1f96;	*/
  --kml-blue-1: #4d48a4;
  --kml-blue-2: #4d48a4;
  --kml-blue-2-gray: #2e2a59;
  --kml-purple: #ab03d8;
/*  --kml-accent: #ab03d8; */
  --kml-accent: #37cfcc;
/*  --kml-accent-bg: rgba(171,3,216,.08);*/ 
  --kml-accent-bg: rgba(55,207,204,.08); 
  background-image: url(../../../images/logo/tlo-9-v2.jpeg);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-position: 0 0;
}


/**/
#sp-logo .logo a::after {
    content: "Szkoła Rysunku, Malarstwa, Concept Artu i Ilustracji";
    display: block;
	white-space: pre-line !important;
    font-size: 11px;
    margin-top: 5px;
    color: var(--kml-blue-1);
}
/**/
/*    content: "Szkoła Rysunku, Malarstwa\A Concept Artu i Ilustracji";*/

#sp-logo .logo a,
#sp-logo .logo a:hover,
#sp-logo .logo a:focus {
    text-decoration: none !important;
}

body.CA-style {
  --kml-blue-2: #3485A2;
  --kml-blue-2-gray: #183c4a;
  --kml-purple: #ab03d8;
  --kml-accent: #37cfcc;
  --kml-accent-bg: rgba(55,207,204,.08);
  --kml-blue-2-gray-bg: rgba(24,60,74,.9);
}

body.CA-style h1, body.CA-style h2, body.CA-style h3 {
    font-weight: 600 !important;
}

body.CA-style h1 {
  color: var(--kml-blue-1);
}

body.CA-style a {
  color: var(--kml-blue-2);
}

body.CA-style a:hover,
body.CA-style a:focus {
  color: var(--kml-blue-2)!important;
}

body.CA-style ul.social-icons >li a:hover, body.CA-style ul.sp-contact-info >li a:hover {
    color: var(--kml-accent) !important;
}

body.CA-style .btn-primary, body.CA-style .sppb-btn-primary {
    color: #fff;
    background-color: var(--kml-blue-2);
    border-color: var(--kml-blue-2);
}

body.CA-style .btn-primary:hover, body.CA-style .menu-blue:hover, body.CA-style .menu-blue:active, body.CA-style .favimagehover-readmore .btn:hover {
    color: #fff !important;
    background-color: var(--kml-accent) !important;
    border-color: var(--kml-accent) !important;
}

body.CA-style #sp-bottom, body.CA-style #sp-footer, body.CA-style #sp-instagram {
  background-color: var(--kml-blue-2-gray-bg);
}

body.CA-style .instagram-more:hover {
    color: #fff !important;
}

body.CA-style #sp-main-body .container {
    padding-left: 0px;
    padding-right: 0px;
}

/*
body.CA-style .btn-secondary:hover {
    color: var(--kml-blue-2) !important;
}
*/
article.item, .com-content-category, .com-content-category .category-list  {
	background-color: #ffffffAA;
    padding: 15px;
}

.article, .article-details {
	background-color: #ffffffAA;
    padding: 15px;
}

.article-list .article .article-header h1 a, .article-list .article .article-header h2 a, .article-list .article .article-header h4 a {
    color: var(--kml-blue-2);	
}

a {
    color: var(--kml-blue-2);	
	-webkit-transition: color 100ms, background-color 100ms;
	transition: color 100ms, background-color 100ms;
}

a:hover, a:focus {
    color: var(--kml-purple)!important;	
	outline: none !important;
}

.page-link {
	font-size: 14px;
}

.page-item.active .page-link {
    border-color: var(--kml-blue-2);	
    background-color: var(--kml-blue-2);	
}

.com-content-category-blog__navigation {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.com-content-category-blog__counter {
    float: none !important;
}

@media (min-width: 768px) {
  body {
    background-color: #EDEDED;
  }
  article.item, .article, .article-details, .article-list .article  {
    background-color: #ffffffAA;
    padding: 29px 44px;
    margin-top: 0px;
    margin-bottom: 30px;
    box-shadow: 0 3px 3px rgba(0,0,0,0.05);
  }
}
/*
.blog_KML-frontpage article.item {
    background: none;
    padding: 0px 10px 10px;
    margin-top: 0px;
    margin-bottom: 50px;
    box-shadow: 0 0px 0px rgba(0,0,0,0.05);
  }  
*/
.blog_KML-frontpage .article-list .article {
    padding: 15px 20px;
    margin-top: 0px;
    background-color: rgba(255, 255, 255, 0.6);
    border: 1px solid #DDDDDD;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    box-shadow: 0 0px 0px rgba(0,0,0,0.05);  
}  

h1, h2, h3 {
    color: var(--kml-blue-2);
	font-weight: 700!important;
	margin-bottom: 1rem;
}

h1 small, h2 small, .h1 small, .h2 small, h1 .small, h2 .small, .h1 .small, .h2 .small {
  font-weight: 600;
  font-size: 85%;
  line-height: 2;
}

.text-blue {
/*	color: #287099;*/
    color: var(--kml-blue-2);
/*    color: #34707B;*/
	font-weight: bold;
}

.text-red {
	color: var(--kml-purple);
/*	color: #E84B06; */
/*	color: #D13600; */
	font-weight: bold;
}

.text-uppercase {
	text-transform: uppercase;
}

.text-red a {
	color: var(--kml-purple)!important;
/*	color: #E84B06!important; */
	font-weight: bold;
}


.pull-left.item-image {
	margin: 0 20px 10px 0;
}

.kml_fake_gal {
	margin: 0 20px 10px 0;
}

#sp-top-bar {
  font-weight: 400;
  background-color: #2F7A95;
  color: var(--kml-blue-2);
  padding: 0;
  text-align: right;
  font-size: 14px;
}

@media (min-width: 768px) {
	#sp-top1 {
		width: 88%;
		float: left;
	    padding-right: 0px;
	}
	#sp-top2 {
		width: 12%;
		text-align: right;
		padding-right: 3px;
		float: left;
	}
}
@media (min-width: 992px) {
	#sp-top1 {
		width: 90%;
		float: left;
	    padding-right: 0px;
	}
	#sp-top2 {
		width: 10%;
		text-align: right;
		padding-right: 10px;
		float: left;
	}
}

ul.social-icons {
	font-size: 17px;
    margin: -5px !important;
}

ul.social-icons > li {
    margin: 5px 6px !important;
}

ul.social-icons >li a, ul.sp-contact-info >li a {
    color: var(--kml-blue-2) !important;
}

ul.social-icons >li a:hover, ul.sp-contact-info >li a:hover {
    color: var(--kml-purple) !important;
}

@media screen and (min-width: 320px) and (max-width: 767px) {
    .sp-contact-info
	{
        text-align: right;
    }
}
/*
.fa {
	font-weight: normal!important;
	font-family: "FontAwesome"!important;
}
*/
#sp-logo {
/*    padding: 0 5px 0 25px;*/
    padding: 0 5px 0 0;
  	margin-top: -13px; 
  	z-index: 1;
}

#sp-logo img {
    width: 100% !important;
    max-width: 350px !important;
    height: auto !important;
}

.logo-image-phone {
    height: 100% !important;
}

#sp-menu {
	padding-left: 20px;
}

#sp-header .logo h1 {
  	vertical-align: top;
}

#sp-header-sticky-wrapper, #sp-header {
    height: 100px;
	text-align: right;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .1);
	animation: none!important;
}

.sp-dropdown {
	text-align: left;
}

@media (max-width: 767px) {
  #sp-header-sticky-wrapper, #sp-header {
      height: 118px;
  }
  #sp-main-body {
    padding: 0px 0 10px;
  }
  #sp-logo {
	padding: 0 5px 0 25px;
	margin-top: -3px; 
	z-index: 1;
	}
}

@media (min-width: 768px) {
  #sp-header-sticky-wrapper, #sp-header {
      height: 92px;
  }
}

@media (min-width: 992px) {
  #sp-header-sticky-wrapper, #sp-header {
      height: 108px;
  }
}
/*
@media (min-width: 1200px) {
  #sp-header-sticky-wrapper, #sp-header {
      height: 108px;  
  }
}
*/
.sp-megamenu-parent >li >a {
  padding: 5px 10px 0px;
  line-height: 40px;
  font-size: 14px;
  text-transform: none;
  letter-spacing: 0px;
  color: #666;
}

.sp-megamenu-parent >li >a:hover, .sp-megamenu-parent > li:hover > a {
	color: var(--kml-blue-2);
	text-decoration: none;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item >a {
  display: block;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0px;
  font-size: 14px;
  line-height: 1.5;
  color: #666;
}

.zapisz-sie-link {
    color: var(--kml-blue-2);
	font-weight: bold;	
}
/*
.zapisz-sie-link:hover {
	color: #fff!important;
}
*/

.offcanvas-menu {
    background-color: rgba(255,255,255,0.9);
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li a {
  font-weight: 600;
  color: var(--kml-blue-2);
/*    color: #34707B;*/
  opacity: 1;
  padding: 10px;
  text-decoration: none;
}

.offcanvas-menu .offcanvas-inner .sp-module .nav-child > li a {
  font-weight: 500 !important;
  color: #666;
}

.close-offcanvas {
    border: 1px solid #666666;
    color: #666666;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler .close-icon {
    display: inline;
    color: #666666;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler {
    color: #666666;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li:hover a, .offcanvas-menu .offcanvas-inner .sp-module ul > li:focus a {
/*    background: rgba(55, 207, 204, 0.1);	*/
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li:hover > a, .offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li:focus > a {
/*    background: rgba(55, 207, 204, 0.3) !important;	*/
/*    background: rgba(55, 207, 204, 1) !important;		*/
    color: #fff !important;							
}

.offcanvas-menu .offcanvas-inner ul.menu li.active>a {
    color: var(--kml-purple) !important;							
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li.active > a {
    color: var(--kml-blue-2) !important;							
    font-weight: 600;
}


.offcanvas-menu .offcanvas-inner .sp-module ul .menu-child > li {
    padding: 5px;
}

.offcanvas-menu .offcanvas-inner .sp-module ul .menu-child > li:hover, .offcanvas-menu .offcanvas-inner .sp-module ul .menu-child > li:focus {
    background: var(--kml-accent);
}


.offcanvas-menu .offcanvas-inner .sp-module ul > li > a:before {
	display: none;
}

.offcanvas-menu .offcanvas-inner ul.menu>li>ul li a {
    line-height: 1.5em;
    font-size: 16px;
    font-weight: 500;
	padding: 4px 0px;
	text-decoration: none;
}

.offcanvas-menu .offcanvas-inner ul.menu ul {
    margin-left: 25px !important;
    list-style: circle;
}


/*
.body-innerwrapper {
  overflow: hidden;
}
*/

#sp-feature {
    margin-bottom: 1px;
/*    margin-top: 30px; */
    margin-top: 15px;
}

#sp-feature .sp-module ul >li >a:before {
  display: none;
}

#sp-feature .sp-module ul >li >a {
  padding: 0;
}

#sp-feature .sp-module h1 {
    font-size: 20px;
}

#sp-users {
	padding: 25px 0px 0px;
}

.entry-header h2 {
    font-size: 22px;
}

.article-header h2 {
    font-size: 22px;
}

.article-info>span {
    font-size: 12px;
	color: #777;
}

.blog_KML-frontpage .article-header h2 {
    font-size: 18px !important;
	font-weight: bold !important;
    line-height: 1.3;
    color: var(--kml-blue-2);
	margin-bottom: 7px !important;
}

.entry-header h2 a {
    color: var(--kml-blue-2);
}

.entry-header {
  margin-bottom: 15px;
/*  margin-top: 25px;*/
}
/*
.page-header {
    padding: 10px 0px 25px 0px;
    margin: 20px 0px 60px 0px;
    text-align: center;
    background-color: #AAA;
    color: #fff;
}
*/
.page-header {
    padding: 0px 0px 5px 0px;
    margin: 20px 0px 30px 0px;
    text-align: center;
    /* background-color: #AAA; */
    color: #777;
    /* color: #fff; */
    border-bottom: 1px solid #aaa;
    text-transform: uppercase;
}

.page-header h2 {
	font-size: 20px;
}

h6 {
  margin-bottom: 25px;
}

.readmore {
    text-align: right;
    margin-top: 20px;
    /*
    float: right;
    margin-top: 10px;
    margin-bottom: 0px;
	*/
}



.pagination-wrapper{
    text-align: center;
}

.pagination {
    margin: 10px auto;
}

.breadcrumb {
  color: #fff !important;
  background-color: var(--kml-blue-2);
  padding: 10px 0px!important;
  margin-bottom: 0px;
  list-style: none;
  border-radius: 4px;
}


.breadcrumb>.active {
  color: #fff;
}

.acysubbuttons {
  text-align: left !important;
}

#sp-breadcrumb {
  background-color: var(--kml-blue-2);
}


#sp-bottom, #sp-footer, #sp-instagram {
/*  background-color: rgba(0, 0, 0, 0.75);*/
/*  background-color: rgb(56 3 202 / 69%);*/
  background-color: rgb(20 0 75 / 78%);
}

#sp-bottom {
  padding: 20px 0px 30px;
}

#sp-bottom .sp-module {
    margin-bottom: 0px;
}

#sp-bottom1, #sp-bottom2, #sp-bottom3 {
  padding: 0px 40px 20px;
}

#sp-bottom h1, #sp-bottom h3 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 20px;
    text-transform: uppercase;
    line-height: 1.3em;
}

#sp-bottom a:hover {
    color: var(--kml-blue-2);
}

#sp-instagram {
	padding: 0 0 10px 0;
}

#sp-instagram .container {
    border-bottom: 1px solid #aaa;
    padding-bottom: 30px;
    color: #fff;
}

.instagram-outer {
	position: relative;
	height: 100%!important; 
}

.instagram {
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%;	
}
/*
.instagram-more {
	display: block; 
	width: 100%; 
	height: 100%!important; 
	line-height: 180px; 
	text-align: center; 
	font-weight: bold;
    background-color: rgba(52, 133, 162, 0.4);
	color: #fff; 
    transition: all 400ms ease;
	-webkit-box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);
	box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);	
	opacity: 0;
}
*/
.instagram-more {
	display: flex;
    justify-content: center;
    align-items: center;
	width: 100%; 
	height: 100%!important; 
	text-align: center; 
	font-weight: bold;
	font-size: 20px;
    background-color: rgba(52, 133, 162, 0.4);
	color: #fff; 
    transition: all 400ms ease;
	-webkit-box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);
	box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);	
	opacity: 0;
}

.instagram-more:hover {
	opacity: 1;
    color: #fff !important;
    text-decoration: none;
}

.instagram:hover {
/*
    background-color: rgba(52, 133, 162, 0.4);
    transition: all 400ms ease;
	-webkit-box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);
	box-shadow: 0px 0px 10px 2px rgba(52, 133, 162, 0.4);	
	*/
}

.contact-form-block h3, .contact h2, .contact-form legend {
  display: none;
}

#freshmail_email, #freshmail_name {
	background-color: rgba(255, 255, 255, 0);
	border-radius: 0;
    color: #fff;
}

#sp-footer {
    color: #aaa;
    text-align: center;
}

#sp-footer .container-inner {
    padding: 0;
    border-top: 0;
}

/*
.contact-form textarea {
	width: 100%;
}
*/
/* FAVSLIDER */

.favslider .sp-module ul >li >a {
  padding: 0;
}

.favslider .sp-module ul >li >a:before {
	display: none;
}

.favslider .favs > li {
    border: 1px #aaa solid;
}

#fav-caption {
  width: 100% !important;  
  background: rgba(48, 129, 150, 0.8) !important;
/*  background: rgba(52, 112, 123, 0.8) !important;*/
  font-weight: 600;
  text-align: center;
  font-size: 24px;
}

#fav-caption h1, #fav-caption h2, #fav-caption h3, #fav-caption small {
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
}
/*
#fav-caption h1 small, #fav-captionh2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small {
  font-weight: 600;
  font-size: 85%;
  line-height: 1;
  color: #fff;
}
*/
#fav-caption h1 small, #fav-caption h2 small, #fav-caption .h1 small, #fav-caption .h2 small, #fav-caption h1 .small, #fav-caption h2 .small, #fav-caption .h1 .small, #fav-caption .h2 .small {
  font-weight: 600;
  font-size: 85%;
  line-height: 1;
  color: #fff;
}

/* FAVPROMOTE */

.favpromote-KML {
    background-color: #FFFFFF;
    border: 1px solid #DDDDDD;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.favpromote-KML:hover {
/*    background-color: #34707B;*/
    background-color: var(--kml-blue-2);
}

.favpromote-KML h2 {
  margin: 0;
/*    background-color: #34707B;*/
  background-color: #555;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.4em;
  text-align: left;
}

#favpromote {
    color: #666;
    margin: 10px 0px;
	border-color: #CCC;
}
#favpromote div {
    color: #666 !important;
}
#favpromote h1 small, #favpromote h2 small, #favpromote .h1 small, #favpromote .h2 small, #favpromote h1 .small, #favpromote h2 .small, #favpromote .h1 .small, #favpromote .h2 .small {
  font-weight: 600;
  font-size: 85%;
  line-height: 1;
  color: #fff;
}

#favpromote h3 {
	font-weight: 700 !important;
	background-color: #FFF !important;
}

#favpromote:hover .text-blue {
	color: #fff!important;
	background-color: var(--kml-blue-2)!important;
}

#favpromote:hover a {
	color: #fff!important;
/*	background-color: #3485A2!important;*/
}

#favpromote:hover {
	color: #fff !important;
	background-color: var(--kml-accent)!important;
/*	background-color: #3485A2!important;*/
	-webkit-transition: all 400ms linear;
	-moz-transition: all 400ms linear;
	-o-transition: all 400ms linear;
	transition: all 400ms linear;
}
/*
#favpromote:hover h3#favpromote-title,
#favpromote:hover h3#favpromote-title a,
#favpromote:hover h3#favpromote-title i {
	color: #fff!important;
	background-color: #37cfcc!important;
}
*/
#favpromote:hover h3#favpromote-title {
	color: #fff!important;
	background-color: var(--kml-accent)!important;
	-webkit-transition: all 400ms linear;
	-moz-transition: all 400ms linear;
	-o-transition: all 400ms linear;
	transition: all 400ms linear;
}
#favpromote #favpromote-title a {
	vertical-align: middle;
	color: var(--kml-blue-2) !important;
}
#favpromote #favpromote-title a:hover {
	color: #fff!important;
}
#favpromote-text {
	padding: 4px 21px 14px;
	margin: 0;
}
#favpromote:hover #favpromote-text {
	color: #fff!important;
}
#favpromote:hover #favpromote-uploadimage {
	color: #fff!important;
}
#favpromote-uploadimage {
/*    padding: 21px 21px 5px !important;*/
    padding: 7px !important;
/*	padding: 21px;*/
}
#favpromote-uploadimage img {
/*	border: 1px solid #ddd;*/
	border: 0;
	margin: 0 auto;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
/*	-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
	-moz-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);*/
}
#favpromote-uploadimage img:hover {
	border: 0px solid #fff;
}

@media only screen and (max-width : 320px) {

	#favpromote-uploadimage img {
		margin: 0 0 21px 0;
	}

}

/* FAVIMAGEHOVER */

.fa-arrow-right { padding-right: 0 !important; }
.fa-arrow-right:before { display: none; }

.favimagehover-readmore {
    display: none !important;
}

h4[id^="favimagehover-title"],
h4[id*=" favimagehover-title"] {
    background-color: var(--kml-blue-2-gray) !important;
}

[id^="favimagehover-box"] {
    cursor: pointer;
}

[id^="favimagehover-overlay"] {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    overflow: hidden !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

/* Baza: mobile, 1 kolumna – duży font */
[id^="favimagehover-description"] {
    flex: 0 1 auto !important;
    padding-top: 0 !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    overflow: hidden !important;
}

#sp-user5 [id^="favimagehover-description"] {
    font-size: 16px !important;
}

/* Poza sp-user5: wiele kolumn od 768px → mały font */
@media (min-width: 768px) {
    [id^="favimagehover-description"] {
        font-size: 14px !important;
    }
}

/* sp-user5: 2 kolumny od 468px, kafelek wąski → mały font */
@media (min-width: 468px) {
    #sp-user5 [id^="favimagehover-description"] {
        font-size: 14px !important;
    }
}

/* sp-user5: kafelek robi się bardziej kwadratowy → większy font */
@media (min-width: 768px) {
    #sp-user5 [id^="favimagehover-description"] {
        font-size: 16px !important;
    }
}

/* sp-user5: 4 kolumny od 992px → trochę mniejszy */
@media (min-width: 992px) {
    #sp-user5 [id^="favimagehover-description"] {
        font-size: 14px !important;
    }
}

/* ── KOLUMNY – tylko sp-user5 (4→2→1) ── */

#sp-user5 .sp-module { margin-top: 0px; }

@media (min-width: 468px) {
    #sp-user5 .favth-col-xs-12 { width: 50% !important; }
}

/*
@media (min-width: 768px) {
    .kml-fav-width-jedna-trzecia  { width: 31% !important; }
    .kml-fav-width-dwie-trzecie   { width: 65.5% !important; }
}
*/
/* Fix: poza sp-user5, od 768px zawsze 3 kolumny (md-4 = 33%) */
@media (min-width: 768px) {
    .favimagehover.favth-col-sm-6 {
        width: 33.33333333% !important;
    }
}

@media (min-width: 992px) {
    .favth-col-lg-2 { width: 33.33333333% !important; }

    #sp-user5 .favth-col-xs-12  { width: 25% !important; }
    #sp-user5 .favth-col-lg-2   { width: 25% !important; }

    #sp-user31, #sp-user32, #sp-user33,
    #sp-user34, #sp-user35, #sp-user36 {
        width: 25% !important;
        padding: 0 12px;
    }

    .kml-row-5 #sp-user31, .kml-row-5 #sp-user32, .kml-row-5 #sp-user33,
    .kml-row-5 #sp-user34, .kml-row-5 #sp-user35, .kml-row-5 #sp-user36 {
        width: 20% !important;
    }
}

@media (min-width: 1200px) {
    #sp-user5 { padding: 0 100px; }
}



/* endof FAVIMAGEHOVER */

.fancybox-title {
    display: none;
}

.fancybox-slide--image {
    padding-bottom: 20px!important;
}

.fancybox-caption {
    display: none;
}

.zapisy-menu {
	color: var(--kml-purple)!important;
/*	color: #E84B06!important; */
    font-weight: bold;
}
/*
@media (min-width: 992px) {
	.menu-blue {
		background-color: #3485a2;
		color: #fff !important;
		padding: 3px 10px !important;
		line-height: 25px !important;
	}
}
*/
.menu-blue {
	background-color: var(--kml-blue-2)!important;
	color: #fff !important;
}

.menu-blue:hover, .menu-blue:active {
    background-color: var(--kml-purple)!important;
	color: #fff !important;
	text-decoration: none;
}

@media (min-width: 992px) {
	.menu-blue {
		padding: 3px 10px !important;
		line-height: 25px !important;
	}
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a, .sp-megamenu-parent > li.active > a {
    color: var(--kml-blue-2);
    font-weight: 600;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item >a:hover {
	color: #FFF!important;
    background: var(--kml-accent)!important;	
	text-decoration: none;
}


.form-control {
	appearance: revert;
    max-width: max-content;
    font-size: 14px;
    color: #555555;
    height: 34px !important;
}

textarea.form-control {
    height: auto !important;
}

.radio:not(.btn-group), .checkbox:not(.btn-group) {
    display: block!important;
}

.btn, .readmore a {
    font-size: 14px!important;
    margin: 5px!important;
	border: 1px solid transparent;
    padding: .375rem .75rem;
}

a.btn:hover, a.btn:focus {
	text-decoration: none;
}

.btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #666;
    border-color: #666;
}

.btn-primary {
	font-weight: bold;
	line-height: 2em;
}

.btn-primary:hover {
    color: #fff !important;
    background-color: var(--kml-purple);
    border-color: var(--kml-purple);
}

.btn-secondary, .sppb-btn-secondary, .readmore a, .article-list .article .readmore a {
	color: var(--kml-blue-2);
    background-color: #fff;
    border-color: var(--kml-blue-2);
	font-weight: bold;
	line-height: 2em;
    border-radius: .25rem;
}

.btn-secondary:hover, .readmore a:hover, .article-list .article .readmore a:hover {
	color: var(--kml-blue-2);
    background-color: var(--kml-accent-bg);
    border-color: var(--kml-blue-2);
}

.kml-top-baner-50-50 {
	display: inline;
	width: 48%;
	margin: 5px;
}

.kml-top-baner-50-50-hide-mobile {
	display: inline;
	width: 48%;
	margin: 5px;
}

.kml-top-baner-25 {
	display: inline;
	width: 24%;
	margin: 5px;
}

#sp-baner-top .sp-module {
    margin-top: 15px;
}

@media (max-width: 768px) {
	.kml-top-baner-50-50 {
		display: inline;
		width: 100%;
		margin: 5px;
	}
	.kml-top-baner-50-50-hide-mobile {
		display: none;
	}
}

.table.category>:not(:first-child) {
    border-top: 0px;
}

/* kml-accordion - Wspólna baza (ikonka, animacja, focus) */
/* Akcent = kolor jak w menu */
/* .kml-accordion { --kml-accent: #37cfcc; --kml-accent-bg: rgba(55,207,204,.08); } */

/* kml fix konfliktu z rsforms */
.kml-accordion .panel-heading { background-color: var(--bs-body-bg); color: #666; padding: 0px; } 


.kml-accordion .panel { border-radius:12px; border:1px solid #e7e7e7; box-shadow:0 1px 2px rgba(0,0,0,.03); overflow:hidden; }
.kml-accordion .panel + .panel { margin-top:12px; }

.kml-accordion .panel-title { margin:0; font-weight:700; font-size: 22px; color: var(--kml-blue-2);}
.kml-accordion .panel-title a.kml-toggle{
  display:flex; align-items:center; gap:12px; width:100%;
  padding:14px 18px; text-decoration:none; color:inherit; line-height:1.3;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.kml-accordion .panel-title a.kml-toggle::after{
  content:"▸"; margin-left:auto; font-size:18px; transition: transform .2s ease;
}
.kml-accordion .panel-title a.kml-toggle[aria-expanded="true"]::after{ transform:rotate(90deg); }

.kml-accordion .panel-body{ padding:16px 26px; border-top:1px solid #eee; }

/* dostępność: focus */
.kml-accordion .panel-title a.kml-toggle:focus{ outline:2px solid var(--kml-accent); outline-offset:2px; border-radius:10px; }

/* drobne wygładzenie hovera na wszystkich wariantach */
.kml-accordion .panel-title a.kml-toggle:hover{ background:var(--kml-accent-bg); }

/* Wariant 1: Clean (miękka karta, akcent w nagłówku po otwarciu) */
.kml-accordion.kml-clean .panel{ border-color:#e9ecef; }
.kml-accordion.kml-clean .panel-title a.kml-toggle[aria-expanded="true"]{
  background:var(--kml-accent-bg);
}
.kml-accordion.kml-clean .panel-title a.kml-toggle[aria-expanded="true"],
.kml-accordion.kml-clean .panel-title a.kml-toggle:hover{
  box-shadow: inset 0 0 0 2px var(--kml-accent);
  border-radius:10px;
}

/* Wariant 2: Outline (akcentowa „opaska” z lewej, klarownie „akordeonowo”) */
.kml-accordion.kml-outline .panel{
  border-color:#e6eef0;
}
.kml-accordion.kml-outline .panel-title a.kml-toggle{
  border-left:6px solid transparent;
}
.kml-accordion.kml-outline .panel-title a.kml-toggle:hover{
  border-left-color: var(--kml-accent);
}
.kml-accordion.kml-outline .panel-title a.kml-toggle[aria-expanded="true"]{
  border-left-color: var(--kml-accent);
  background: var(--kml-accent-bg);
}

/* Wariant 3: Minimal (bez ramek, delikatne linie + akcent pod tytułem) */
.kml-accordion.kml-minimal .panel{
  border:0; box-shadow:none; border-radius:0;
}
.kml-accordion.kml-minimal .panel + .panel{ margin-top:6px; }
.kml-accordion.kml-minimal .panel-title a.kml-toggle{
  padding:10px 0; border-bottom:1px solid #e6e6e6; border-radius:0;
}
.kml-accordion.kml-minimal .panel-title a.kml-toggle:hover{
  background:transparent;
}
.kml-accordion.kml-minimal .panel-title a.kml-toggle[aria-expanded="true"]{
  border-bottom-color: var(--kml-accent);
  background:linear-gradient(to right, var(--kml-accent-bg), transparent);
}
.kml-accordion.kml-minimal .panel-body{
  padding:12px 0 16px; border-top:0;
}

/* jeśli nie masz jeszcze zmiennej akcentu */
/* .kml-accordion { --kml-accent:#37cfcc; --kml-accent-bg:rgba(55,207,204,.08); } */

/* SOLID – spójny z menu */
.kml-accordion.kml-solid .panel{ border:1px solid #e7e7e7; box-shadow:0 1px 2px rgba(0,0,0,.03); }
.kml-accordion.kml-solid .panel + .panel{ margin-top:12px; }

.kml-accordion.kml-solid .panel-title a.kml-toggle{
  background:#f7f9fa;   /* zamknięty */
  color:inherit;
}
.kml-accordion.kml-solid .panel-title a.kml-toggle:hover{
  background:var(--kml-accent-bg);   /* delikatny hover gdy zamknięty */
}

.kml-accordion.kml-solid .panel-title a.kml-toggle[aria-expanded="true"]{
  background:var(--kml-accent);
  color:#fff;
  text-shadow:0 1px 0 rgba(0,0,0,.1);
}
.kml-accordion.kml-solid .panel-title a.kml-toggle[aria-expanded="true"]::after{
  /* strzałka dziedziczy color ⇒ zrobi się biała */
  transform:rotate(90deg);
}

.kml-accordion.kml-solid .panel-body{
  border-top:1px solid rgba(0,0,0,.06);
  padding:16px 10px;
}

/* Wersja mocniejsza hoveru – jak w menu (opcjonalnie dopnij klasę .kml-solid-strong) */
.kml-accordion.kml-solid.kml-solid-strong .panel-title a.kml-toggle:hover{
  background:rgba(55,207,204,1);
  color:#fff;
}

/* Outline v2 */

.kml-accordion.kml-outline-v2 .panel{ border-color:#e6eef0; }
.kml-accordion.kml-outline-v2 .panel-title a.kml-toggle{ border-left:6px solid transparent; }

/* hover (zamknięty) = pełny kolor + biały tekst, spójnie z menu */
.kml-accordion.kml-outline-v2 .panel-title a.kml-toggle:hover{
  background:var(--kml-accent);
  color:#fff;
  border-left-color:var(--kml-accent);
}

/* stan otwarty pozostaje "outline" */
.kml-accordion.kml-outline-v2 .panel-title a.kml-toggle[aria-expanded="true"]{
  border-left-color:var(--kml-accent);
  background:var(--kml-accent-bg);
  color:inherit;
}
/* i nawet na hover nie robi się pełny */
.kml-accordion.kml-outline-v2 .panel-title a.kml-toggle[aria-expanded="true"]:hover{
  background:var(--kml-accent-bg);
  color:inherit;
}

/* Minimal v2 */

.kml-accordion.kml-minimal-v2 .panel{ border:0; box-shadow:none; }
.kml-accordion.kml-minimal-v2 .panel + .panel{ margin-top:6px; }

.kml-accordion.kml-minimal-v2 .panel-title a.kml-toggle{
  padding:10px 0;
  border-bottom:1px solid #e6e6e6;
  /* brak nadpisania hover → dziedziczy z bazy: background: var(--kml-accent-bg) */
}

/* stan otwarty jak poprzednio */
.kml-accordion.kml-minimal-v2 .panel-title a.kml-toggle[aria-expanded="true"]{
  border-bottom-color:var(--kml-accent);
  background:linear-gradient(to right, var(--kml-accent-bg), transparent);
}
.kml-accordion.kml-minimal-v2 .panel-body{
  padding:12px 0 16px; border-top:0;
}

/* KML Accordion: szybsza animacja Bootstrap Collapse tylko w akordeonie */
.kml-accordion{
  /* dla BS5 – nadpisuje zmienną czasu */
  --bs-collapse-transition-duration: .18s;
  /* fallback do użycia niżej */
  --kml-collapse-dur: .18s;
}

/* BS3/4: właściwa animacja jest na .collapsing */
.kml-accordion .collapsing{
  -webkit-transition-duration: var(--kml-collapse-dur) !important;
  transition-duration: var(--kml-collapse-dur) !important;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}

/* Dodatkowo (nie zaszkodzi): */
.kml-accordion .collapse{
  -webkit-transition: height var(--kml-collapse-dur) ease;
  transition: height var(--kml-collapse-dur) ease;
}


/* KML: bez zaokrągleń (nadpisze wcześniejsze reguły) */
.kml-accordion .panel,
.kml-accordion .panel-title a.kml-toggle { border-radius:0 !important; }


/* wycentrowana galeria */
.sigFreeContainer.sigFreeClassic {
    display: grid;
    grid-template-columns: repeat(auto-fill, 120px); /* szerokość miniatury */
/*    grid-auto-rows: 120px; */
    gap: 5px; /* odstęp między miniaturami */
    justify-content: center; /* cała siatka wyśrodkowana */
    padding: 0;
    margin: 0 auto;
    list-style: none;
}

.sigFreeContainer.sigFreeClassic .sigFreeThumb {
    margin: 0;
}

@media screen and (max-width: 440px) {
  .sigFreeContainer .sigFreeThumb,
  .sigFreeContainer .sigFreeThumb a,
  .sigFreeContainer .sigFreeThumb img {
    width: 100px !important;
    height: 100px !important;
  }
  .sigFreeContainer.sigFreeClassic {
	grid-template-columns: repeat(auto-fill, 100px) !important;
  }
}

.kml-form-in-accordion {
    padding: 30px;
    border: 1px solid #ddd;
    margin: 0 20px;
    border-radius: 8px;
}


/* KML opinie */

.kml-reviews-grid { --kml-cols: 1 !important; }
@media (min-width: 640px)  { .kml-reviews-grid { --kml-cols: 1 !important; } }
@media (min-width: 992px) { .kml-reviews-grid { --kml-cols: 2 !important; } }


/* KML zapisz sie rsform in accordion */

/* —— kontener —— */
.kml-form-in-accordion .formContainer{
  max-width:960px;
  margin:0 auto;
}

/* —— reset RSForm / template: label nad polem, brak floatów, pełna szerokość —— */
.kml-form-in-accordion .formControlLabel{
  float:none !important;
  display:block;
  width:auto;
  margin:0 0 6px;
}
.kml-form-in-accordion .formControls{
  float:none !important;
  display:block;
  width:100% !important;
  max-width:none !important;
  margin:0;
}

/* kasujemy ewentualne maksymalne szerokości z szablonu */
.kml-form-in-accordion .rsform-input-box,
.kml-form-in-accordion .rsform-text-box,
.kml-form-in-accordion .rsform-select-box{
  max-width:none !important;
}

/* pola zawsze na pełną szerokość swojej kolumny */
.kml-form-in-accordion .form-control,
.kml-form-in-accordion input[type="text"],
.kml-form-in-accordion input[type="email"],
.kml-form-in-accordion input[type="tel"],
.kml-form-in-accordion select,
.kml-form-in-accordion textarea{
  width:100% !important;
}
.kml-form-in-accordion textarea{ min-height:160px; }

/* odstępy */
.kml-form-in-accordion .form-group{ margin-bottom:18px; }
.kml-form-in-accordion .help-block.formValidation{
  margin-top:6px; margin-bottom:0; font-size:.92em;
}

/* długi checkbox — czytelnie */
.kml-form-in-accordion .rsfp-fieldset .checkbox-inline{
  display:block; position:relative; padding-left:28px; line-height:1.45; white-space:normal;
}
.kml-form-in-accordion .rsfp-fieldset .checkbox-inline input[type="checkbox"]{
  position:absolute; left:0; top:3px; margin:0;
}

/* —— układ kolumn —— */
/* mobile: 1 kolumna */
.kml-form-in-accordion .row{ display:block; margin:0; }
.kml-form-in-accordion .col-sm-6,
.kml-form-in-accordion .col-sm-12{
  width:100%; padding-left:0; padding-right:0;
}

/* 440px+: wygodniejsze textarea */
@media (min-width:440px){
  .kml-form-in-accordion textarea{ min-height:180px; }
}

/* ≥768px: klasyczny Bootstrap – 2 kolumny */
@media (min-width:768px){
  .kml-form-in-accordion .row{
    display:block;
    margin-left:-15px; margin-right:-15px;   /* standardowe guttery BS3 */
  }
  .kml-form-in-accordion .col-sm-6,
  .kml-form-in-accordion .col-sm-12{
    padding-left:15px; padding-right:15px;
  }
  .kml-form-in-accordion .col-sm-6{ float:left; width:50%; }
  .kml-form-in-accordion .col-sm-12{ float:none; width:100%; }
}

/* ≥992px: odrobina więcej oddechu */
@media (min-width:992px){
  .kml-form-in-accordion .form-group{ margin-bottom:20px; }
}

.kml-accordion .panel-body .sigFreeContainer {
  margin-left: -11px !important;   /* rekompensata różnicy */
  margin-right: -11px !important;  /* (26px – 15px = 11px) */
}

.kml-gallery-label {
	font-size: 10pt;
    line-height: 3em;
    display: block;
    text-align: center;
}

ul.checklist, ul.arrow {
  list-style: none;          /* wyłącz domyślne kropki */
  padding-left: 1.4em;       /* zostaw miejsce na ikonkę */
}

ul.checklist li::before {
  content: "✔";              /* znak ptaszka */
  color: var(--kml-blue);            /* kolor zielony, możesz zmienić */
  font-weight: bold;
  display: inline-block;
  width: 1.7em;              /* wyrównanie do kolumny */
/*  margin-left: -1.2em;*/
}

ul.arrow li::before {
  content: "\27A4"; 				/* ➤ */
  color: var(--kml-blue);           
  font-weight: bold;
  display: inline-block;
  width: 1.7em;              /* wyrównanie do kolumny */
/*  margin-left: -1.2em;*/
}

.kml-sylabus2__text h3 {
    font-size: 1.5rem;
}

.kml-sylabus2__title {
    margin: 0 0 .75rem;
    font-size: 1.75rem !important;
    line-height: 1.2;
}

.video-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

/* wrapper od AllVideos */
.video-row .avPlayerWrapper {
    width: 100%;
}

/* zabicie sztywnych szerokości */
.video-row .avPlayerContainer {
    width: 100% !important;
}

/* KLUCZ: wymuszenie proporcji (reels = pion) */
.video-row .avPlayerBlock {
    position: relative;
    width: 100%;
    aspect-ratio: 9 / 16;
    overflow: hidden;
}

/* video wypełnia kontener */
.video-row .avPlayer,
.video-row video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

.kml-4g__item {
    height: auto !important;
}

.kml-4g__item img {
    width: 100%;
    height: auto;
    display: block;
}

.rsfp_thankou_popup_close_btn {
    position: absolute;
    top: 10px;
    right: 20px;
}