


/* *************************************************************************************************
  Variables
************************************************************************************************* */

:root{
  
  --max-cnt-width:1170px;
  
  /* -- Colors -- */
  --color-main-background:#fff;
  --color-main-light:#eee;
  --color-main-1:#FFDE17; /* #fdc92f #FFDE17 #FFD024 */
  --color-main-1-transparent:#E5008088;
  --color-main-2:#FF3366;
  --color-main-2b:#004E82;
  --color-main-2c:#00A2CA;  
  --color-main-3:#333333;
  --color-main-4:#DD1144;
  
  --color-main-light-frame:#888;
  --color-main-light-gray:#f5f5f5;
  --color-main-light-2:#f0f0f0;
  --color-main-gray:#888;
  --color-main-dark:#333;

  --color-btn-action-bg:var(--color-main-1);
  --color-btn-action-font:#000;
  --color-btn-action-bg-hv:var(--color-main-2);
  --color-btn-action-font-hv:#fff;
  
  /* -- Shadows -- */
  --shadow-default:0px 2px 10px 3px #00000033;
  --default-shadow:0px 2px 10px 3px #00000033;
  

  /* -- Texts -- */  
  --text-color-general:#333;
  --text-color-light:#666;
  --text-color-links:var(--color-main-2);

  /* -- Font & sizes -- */
  --font-size-defaut-text:16px;
  --font-size-defaut-text-small:15px;
  --font-size-defaut-text-mini:14px;
  --default-font:Poppins;
  --default-font-2:Poppins;
  --default-font-3:Poppins;

  /* -- ... -- */
  --default-margin:15px;
  --default-radius:3px;

  --color-1-bg:var(--color-main-1);
  --color-1-color:#fff;
  --color-2-bg:var(--color-main-2);
  --color-2-color:#333;
  --color-3-bg:var(--color-main-2);
  --color-3-color:#333;
  
  --default-transition:all 250ms ease;
  --default-row-width:1170px;

}  

@media all and ( max-width: 360px ){
  :root{          
    --default-margin:10px;  
  }
}


/* *************************************************************************************************
  GENERAL
************************************************************************************************* */
.ui-clear{
  clear:both;
}



/* *************************************************************************************************
  Page return UP
************************************************************************************************* */

@keyframes ui-up-arrow-anim{
   0% { transform:scale( 1.0, 1.0 ) }
  20% { transform:scale( 0.6, 1.4 ) }
  40% { transform:scale( 1.3, 0.7 ) }
  60% { transform:scale( 0.8, 1.2 ) }
  80% { transform:scale( 1.1, 1.00 ) }
  100%{ transform:scale( 1, 1 ) }
}


#ui-up-arrow{
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #FFD02466;
  padding: 0px;
  text-decoration: none;
  font-size: 40px;
  color: #033;
  opacity:0.5;
  /* border:solid 1px #00ccff66; */
  border-radius:25px;
  /* box-shadow:var(--default-shadow); */
  display:none;
  width:50px;
  height:50px;
  line-height:50px;
  text-align:center;
  box-sizing:border-box;
  z-index:99999;
  background-image:url('skin/img/up-arrow.svg');
  background-position:center;
  background-size:36px 36px;
  background-repeat:no-repeat;
  cursor:pointer;
}

#ui-up-arrow:hover{
  opacity: 1;
  animation-name: ui-up-arrow-anim;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;  
}



/* *************************************************************************************************
  HEADER - page position
************************************************************************************************* */
#ui-page-pos{
  position:fixed;
  top:0px;
  left:0px;
  width:100%;
  box-sizing:border-box;
  opacity:0.95;
  border:solid 1px var(--color-main-background);
  background:var(--color-main-background);
  z-index:999999;  
}

#ui-page-pos-pb{
  box-sizing:border-box;
  float:left;
  height:3px;
  width:0%;
  background-color:var(--color-main-1);
  transition: all 300ms ease;
}


/* *************************************************************************************************\
  uiTooltips
*/
.ui-tooltip{
  z-index:99999;
  background:#fff;
  color:#333;
  font-size:14px;
  padding:15px 15px 15px 15px;
  text-align:center;
  border-radius: var(--default-radius);
  border:solid 1px var(--color-main-2);
  box-shadow: var(--shadow-default);
  text-align:left;
  display:table;  
  display:none;
  line-height:1.6;
  max-width:400px;
}

.ui-tooltip-close{ 
  float:right;
  position:relative;
  top:-5px;
  left:5px;
  width:28px;
  height:28px;
  background:var(--color-main-1);
  color:#000;
  text-align:center;
  line-height:28px;
  border-radius:14px;
  transition: all 300ms ease;
  cursor:pointer;
}

.ui-tooltip-close:hover{
  background:var(--color-main-2);
  color:var(--color-main-light);
}


.ui-tooltip-arrow{
  z-index:99995;
  position:absolute;
  top:-12px;
  width: 0; 
  height: 0; 
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;  
  border-bottom: 12px solid #aaaaaa88;
}

/* *************************************************************************************************
  wait-box
*/
#ui-tools-wait-box{
  position:fixed ;
  width:calc(100% - 40px);
  height:calc(100% - 40px);
  top:50%;
  left:20px;
  border-radius:3px;
  transform:translateY(-50%);  
  background:#ffffff88;
  z-index:999999;
}

#ui-tools-wait-box>span{
  position:absolute;
  top:50%;
  left:50%;
  transform:translateY(-50%) translateX(-50%);
}






/* *************************************************************************************************
  uiTools elements popup
*/

:root{
  --popup-border-radius:30px;
  --default-color-1:var(--color-main-2);
  --default-color-2:var(--color-main-1);
  --default-color-3:#fff;
  --default-text-color-inv:#fff;
}

.ui-tools-popup-container{
  position:fixed;
  top:50%;
  left:50%;
  transform: translateY(-50%) translateX(-50%);
  background:var(--default-color-3);
  border:solid 1px var(--default-color-2);
  border-radius: var(--popup-border-radius);
  color:var(--default-text-color-inv);
  box-sizing:border-box;
  min-width:240px;
  min-height:200px;
  z-index:99999;
  box-shadow: 0px 0px 2000px 2000px rgb(0 0 0 / 60%); 
  padding-top:60px;
  max-width:calc(100% - 20px);
  max-height:calc(100vh - 100px);
  transition: all 1000ms ease-in;
  opacity:0;
  display:none;
  overflow:hidden;
  filter:grayscale(0%) blur(0px);
  transition:var(--default-transition);
  overscroll-behavior: none;
  overscroll-behavior-y: none;
  z-index:9999999;
}

#ui-tools-popup-title{
  position:absolute;
  top:0px;
  left:0px;
  width:calc(100% - 60px);
  height:60px;
  line-height:60px;
  font-family:var(--default-font);
  font-size:22px;
  padding:0px 10px 0px 20px;  
  box-sizing:border-box;
  background-color:var(--default-color-2);
  border-radius:0px 0px var(--popup-border-radius) 0px;
  color:var(--color-btn-action-font);
  font-weight:200;
  
  white-space: nowrap;
  text-overflow:ellipsis;
  margin:0px;
}

#ui-tools-popup-title:after{
  content: "";
  position: absolute;
  height: var(--popup-border-radius);
  width: var(--popup-border-radius);
  right: calc( -1 * var(--popup-border-radius) );
  top: 0px;
  background-color: transparent;
  border-top-left-radius: var(--popup-border-radius) var(--popup-border-radius);  
  box-shadow: 0px 0px 0px var(--popup-border-radius) var(--default-color-2);
  clip: rect(0px, var(--popup-border-radius), var(--popup-border-radius), 0px);
}

@media all and ( max-width: 390px ){
  #ui-tools-popup-title{
    font-size:16px;
  }
}

#ui-tools-popup-content{
  position:absolute;
  top:60px;
  left:0px;
  right:0px;
  bottom:0px;
  display:block;
  padding:5px;
  box-sizing:border-box;
  overflow:auto;
  overscroll-behavior: none;
  overscroll-behavior-y: none;
}

#ui-tools-popup-content:after{
  content: "";
  position: absolute;
  height: var(--popup-border-radius);
  width: var(--popup-border-radius);
  left: 0px;
  top: 0px;
  background-color: transparent;
  border-top-left-radius: var(--popup-border-radius) var(--popup-border-radius);  
  box-shadow: 0px 0px 0px var(--popup-border-radius) var(--default-color-2);
  clip: rect(0px, var(--popup-border-radius), var(--popup-border-radius), 0px);
}

@keyframes ui-tools-popup-close-anim{
    0%{border:dotted 2px #fff}
   20%{border:dotted 2px #888}
   40%{border:dotted 2px #fff}
  100%{border:dotted 2px #fff}
}

#ui-tools-popup-close{
  animation-name: ui-tools-popup-close-anim;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  position:absolute;
  display:block;
  box-sizing:border-box;
  top:10px;
  right:10px;
  width:40px;
  height:40px;
  line-height:38px;
  text-align:center;
  background-color:var(--color-main-background);
  background-image:url(/skin/img/close.svg);
  background-position: center;
  background-size:16px 16px;
  background-repeat: no-repeat;
  border-radius:20px;
  cursor:pointer;
  font-weight:bold;  
  border:solid 2px #333;
  color:#fff;
}

#ui-tools-popup-close:hover{
  background-color:var(--color-main-2);
  color:var(--color-main-light);
}

/* mode = "minimal" */

.ui-tools-popup-container.minimal{}

@media all and ( max-width: 600px ){
  .ui-tools-popup-container.minimal{
    width:calc(100% - 30px);
    height:calc(100vh - 60px);
    max-width:calc(100% - 30px);
    max-height:calc(100vh - 60px);
  }
}

/* mode = "minimal-event" */

.ui-tools-popup-container.minimal-event{
  width:unset;
  height:unset;  
  left:25%;
  top:100px;
  right:25%;
  bottom:100px;
  transform:none;
  max-height:unset;
  max-width:unset;
}

@media all and ( max-width: 1024px ),
       all and ( max-height: 560px )
{
  .ui-tools-popup-container.minimal-event{
    left:10px;
    top:10px;
    right:10px;
    bottom:10px;
  }
}

.ui-tools-popup-container.minimal-event #ui-tools-popup-title{
  display:none;
}

.ui-tools-popup-container.minimal-event #ui-tools-popup-content{
  width:unset;
  height:unset;
  position:absolute;
  top:0px;
  left:0px;
  bottom:0px;
  right:0px;
  background:var(--default-color-6);
}



/* mode = "full" */

.ui-tools-popup-container.full{
  width:unset;
  height:unset;  
  left:30px;
  top:30px;
  right:30px;
  bottom:30px;
  transform:none;
  max-height:unset;
  max-width:unset;
}

@media all and ( max-width: 1024px ),
       all and ( max-height: 680px )
{
  .ui-tools-popup-container.full{
    left:10px;
    top:10px;
    right:10px;
    bottom:10px;
  }
}

/* mode = "full-screen" */

.ui-tools-popup-container.full-screen{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  border:0px;
}

.ui-tools-popup-container.full-screen>#ui-tools-popup-content{
  position:absolute;
  top:60px;
  left:0px;
  width:100%;
  padding:0px;
  height:calc(100% - 60px);
  overflow:hidden;
  background:var(--color-main-background);
}

.ui-tools-popup-container.full-screen>#ui-tools-popup-close{
  box-shadow:var(--shadow-default);
}

.ui-tools-popup-container.stage-1{
  position:fixed;
  min-width:0 !important;
  min-height:0 !important;
  padding:0px;
  box-sizing:border-box;  
  width:2px !important;
  height:2px !important;
  overflow:hidden;
  box-shadow:var(--shadow-default);
  --border-radius:50%;
  --transform:perspective(2500px) rotate3d(1,0,0,180deg);
  filter:grayscale(100%) blur(1px);
  opacity:0;
  
}



hr {
  height:0px;
  border:0px;
  border-bottom:dotted 1px #666;
}

select {
  width: 100%;
  height: 35px;
}

h1, h2{
  margin:0px;
}

/******************************************************************************************************
* KSI-module
*******************************************************************************************************/

.ksi-button
{
  background:var(--color-btn-action-bg);
  color:var(--color-btn-action-font);  
  transition:all 250ms ease;
  font-family:var(--default-font);  
  cursor:pointer;
  border-radius:var(--default-radius);
  padding:8px 25px;
  transition:all 300ms ease;
  display:inline-block
}

.ksi-button:hover{
  background:var(--color-btn-action-bg-hv);
  color:var(--color-btn-action-font-hv);
}

.ksi-module-container:before{
  all:unset;
}

.ksi-module-container{

}


.ksi-module-container input{
  box-sizing:border-box;
}

.ksi-module-container select{
  box-sizing:border-box;
}

.ksi-module-container textarea{
  box-sizing:border-box;
}

.ksi-module{
  font-weight:normal;
  width:100%;
  margin:auto;
  padding:0px;
  background:#fff;
}

.ksi-module div{
  box-sizing:border-box ;
}

.ksi-module span{
  box-sizing:border-box ;  
}

.ksi-module input{
  box-sizing:border-box ;
}

.ksi-module-title{
  font-weight: normal;  
  text-align:center;
  font-family: var(--default-font-3);
  font-size:34px;
  background-color:var(--color-main-2);
  
  background: linear-gradient(180deg, rgba(0,153,204,1) 0%, rgba(6,128,199,1) 100%);  
  box-shadow:0px 2px 10px 0px #00000055;
  
  line-height:1;
  color:#fff;
  box-sizing: border-box;
  padding:35px;
  margin-bottom:30px;
  
  margin-top:8px;
}

.ksi-module-content{
  /* padding:var(--default-margin) var(--default-margin);
  background:#f8f8f8;*/
  color:#555;
  max-width:var(--default-row-width);
  margin:calc( 2* var(--default-margin) ) auto;
  display: flow-root;
}

.ksi-module-content h2{
  font-family: var(--default-font-3);
  font-size:25px;
  font-weight:bold;
  padding:0px;
  max-width:800px;
  margin:20px auto;
}

.ksi-module-content h3, .ksi-module-content h4, .ksi-module-content h5{
  font-family: var(--default-font-3);
  font-size:20px;
  padding:10px 0px;
  max-width:800px;
  margin:10px auto;
}


.ksi-module-content p, .ksi-module-content ul, .ksi-module-content ol{
  max-width:800px;
  margin:15px auto;
  line-height:1.5;
  color:#333;
  box-sizing: border-box;
}

@media screen and (max-width: 1200px){
  .ksi-module-container{
    padding:0px var(--default-margin);
    margin:0px;
  }
}

@media screen and (max-width: 1170px) {
  .ksi-module-container{
    --margin:0px var(--default-margin);
  }
  
  .ksi-module-title{
    margin:0px calc(-1 * var(--default-margin));
    padding:25px;
  }  
}

@media screen and (max-width: 640px) {
  .ksi-module-container{
    padding-top:0px;
    padding-bottom:0px;
  }

  .ksi-module-title{
    font-size:22px;
    padding:15px;
  }

  .ksi-module-content h2{
    font-size:20px;
  }

  .ksi-module-content h3, .ksi-module-content h4, .ksi-module-content h5{
    font-size:18px;
  }

}

/******************************************************************************************************
* ???
*******************************************************************************************************/


.ksi-offer-desc-title{
  font-size:14px;
  padding:0px;
  margin:10px 0px 10px 0px;
  font-weight:bold;
  color:#414141;
}

.ksi-offer-desc{
  font-size:14px;
  padding:0px;
  margin:0px;
  color:#414141;
}


.dps{
  float:left;
  border: 1px solid #E5E5E5 !important;
}

.dpsYear{
  width:25%;
}

.dpsMonth{
  margin-left:10px;
  margin-right:10px;
  width:calc(55% - 20px);
}

.dpsDay{
  width:20%;
}

@media screen and (max-width: 575px) {

  .dpsYear{
    width:40%;
  }

  .dpsMonth{
    margin-left:0px;
    margin-right:0px;
    width:35%;
  }

  .dpsDay{
    width:25%;
  }

}



/******************************************************************************************************
* przełącznik kalendarz / tabela w ofercie
*******************************************************************************************************/

.trpcal{
  padding-top:5px;
  padding-bottom:15px;
  overflow:hidden;
}
.trpcal-title{
  line-height: 25px;
  font-size: 16px;
  font-weight: bold;
  color: var(--text-color-general);
  float: right;
  margin-right: 15px;
}
.trpcal-switch{
  float:right;
  font-size:12px;
  height:28px;
  overflow:hidden;
  border-radius:13px;
  border:solid 1px #888 ;
  background:#fafafa;
  cursor:pointer;
  box-sizing: border-box;
}

.trpcal-switch:hover{
  background:#fff;
}

.trpcal-switch span{
  color:#bbb;
}

#trpcal-dates, #trpcal-calendar {
  margin: 3px;
  height: 20px;
  border-radius: 20px;
  border: 0px;
  font-size: 11px;
  font-weight: bold;
  display: inline-block;
  line-height: 20px;
  padding-left: 7px;
  padding-right: 7px;
}

.trpcal-active {
  transition:1s;
  background:var(--color-btn-action-bg) !important;
  color:var(--color-btn-action-font) !important;
}


/***************************************************************************************************************
  Sekcja okienka Cookie
*/

.cookie-info-box{
  box-sizing:border-box;
  background:rgba(0,0,0,0.7);
  position: fixed;
  bottom: 0px;
  z-index:9999999999;
  padding:20px;
  width: 100%;
  box-sizing:border-box;
}

.cookie-info-text{
  box-sizing:border-box;
  color: #fff;
  font-size:14px;
  margin-right:20px;
  float:left;
  width:calc(100% - 150px);
}

.cookie-info-btn{
  box-sizing:border-box;
  background: #ff6600;
  border-radius: 3px 3px 3px 3px;
  color: #FFFFFF;
  cursor: pointer;
  display: block;
  float: right;
  font-size: 16px;
  line-height: 22px;
  padding: 8px;
  margin-top:10px;
}

@media all and ( max-width: 640px ) {
  .cookie-info-text{
    width:100%;
  }
}



:root{
  --ksi-checkbox-size:22px;
  --ksi-checkbox-color-1:#ec0;
  --ksi-checkbox-color-2:var(--color-main-2);
}

/* The container */
.fs-chk-container {
  display: block;
  position: relative;
  padding-left: calc( var(--ksi-checkbox-size) + var(--default-margin) );
  margin-bottom: 0px;
  cursor: pointer;
  color:#333;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fs-chk-container>input {
  position: absolute;
  opacity: 0;
  height: 0;
  width: 0;
}

.fs-chk-container .fs-chk-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: var(--ksi-checkbox-size);
  width: var(--ksi-checkbox-size);
  border-radius:var(--default-radius);
  border:solid 1px var(--ksi-checkbox-color-1);
  background-color:#FFFFFF;
  transition:var(--default-transition);
}

.fs-chk-container:hover input ~ .fs-chk-checkmark {
  background-color: #f0f0f0;
  border:solid 1px var(--ksi-checkbox-color-2);
}

.fs-chk-container:hover input:checked .fs-chk-checkmark {
  background-color: #FFFFFF;
}

.fs-chk-container .fs-chk-checkmark:after {
  content: '';
  position: absolute;
  opacity: 0;
  transition:var(--default-transition);
  transform: translateX(-50%) translateY(-60%) rotate(405deg);
}

.fs-chk-container input:checked ~ .fs-chk-checkmark:after {
  opacity: 1;
  transform: translateX(-50%) translateY(-60%) rotate(45deg);
}

.fs-chk-container .fs-chk-checkmark:after {
  position:absolute;
  left: 50%;
  top: 50%;
  width: 40%;
  height: 70%;
  border: solid var(--ksi-checkbox-color-2);
  box-sizing:border-box;
  border-width: 0 3px 3px 0;
}


/************************************************************
  Global styles
************************************************************/
div{
  box-sizing: border-box;
}

html {
  scroll-behavior:smooth;
  transition: all 300ms ease;
}

body{
  margin:0px;
  padding:0px;
  border:0px;
  box-sizing: border-box;
  background:var(--color-main-background);
  font-family: var(--default-font);
  font-weight: 400;
  font-size: var(--font-size-defaut-text);
}

::selection {
  color: #000;
  background: #ffd200;
}

section{
  clear:both;
}

a{
  text-decoration: none;
}

.ui-clear,
.sk-clear{
  clear:both;
  width:100%;
  box-sizing:border-box;
  height:0px;
}

.ui-abs-center{
  position:absolute;
  top:50%;
  left:50%;
  transform: translateY(-50%) translateX(-50%);
}

/************************************************************
  Skin
************************************************************/

.sk-row{
  max-width: var(--max-cnt-width);
  margin: auto;
  padding:0px;
  box-sizing:border-box;
}

@media screen and (max-width: 1200px) {
  .sk-row{
    margin-left:var(--default-margin);
    margin-right:var(--default-margin);
  }  
}

@media screen and (max-width: 1024px) {
  .hide-1024{
    display:none;
  }  
}

@media all and ( max-width: 319px ){
  body{
    zoom:0.75;
  }
}

@media all and ( max-width: 239px ){
  body{
    zoom:0.5;    
  }
}

@media all and ( max-width: 160px ){
  body{
    zoom:0.25;
  }
}

/************************************************************
  KSI - logo
************************************************************/


@keyframes sk-ksi-anim-exp{
    0% {transform:scale(1);opacity:1;}
  100% {transform:scale(4);opacity:0;}
}

.ksi{
  position:relative;
  height:27px;
  line-height:27px;
  font-size:14px;
  color:#333;
  float:right;
  transition:var(--default-transition);
}

.ksi img{
  height:21px;
  width:21px;
  position:relative;
  top:6px;
  transition:all 300ms ease-out;
}

#ksi-img{
  display:inline-block;
  width:unset;
  float:unset;
  position:relative;
}

#ksi-img:before{
  position:absolute;
  display:block;
  content:'';
  top:0px;
  left:0px;
  width:100%;
  height:100%;
  background-image:url(/skin/img/KSI-red.svg);
  background-repeat:no-repeat;
  background-size:21px 21px;
  background-position:0px 6px;
  opacity:1;
}

.ksi:hover #ksi-img:before{
  animation-name: sk-ksi-anim-exp;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;  
}

@media all and ( max-width: 1340px ){
  .ksi{
    margin-right:65px;
  }
}

@media all and ( max-width: 720px ){
  .ksi{
    margin-right:0px;
  }
}


/* poppins-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* poppins-500 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-600 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/skin/fonts/poppins/poppins-v20-latin_latin-ext-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}


.classNews_default_title {
  height: 50px;
  line-height: 50px;
}

.classNews_default_title h1 {
  font-size: 24px;
  font-weight: 300;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.classNews_default_item_title {
  margin-bottom: 10px;
}

.classNews_default_item_title h2 {
  font-weight:bold;
  position: relative;
}

.classNews_default_item_gallery {
  margin-right: 20px;
  width: 320px;
  float: left;
  padding-bottom: 22px;
  line-height: 0px;
}

.classNews_default_item_image {
  width: 100%;
}

.classNews_default_item_content {
  float: left;
  width: calc(100% - 340px);
  color: #666666;
}

.classNews_default_item_content_full {
  color: #666666;
}

.classNews_default_select{
  margin-top:10px;
  width:150px;
  border:solid 1px #ccc;
  
}

.classNews_default_item {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cdcdcd;
}

.classNews_default_item:after {
  content: '';
  display: block;
  clear: both;
}

.classNews_default_item_button_line {
  clear: both;
}

.classNews_default_item_button_more{
  padding:10px 20px;
  text-align:right;  
  font-weight:bold;  
  color:#fff;
  background: var(--color-main-1);
  color: #000000;
  float:right;
}

.classNews_default_item_button_more:hover{
  background: #666666;
  color: #FFFFFF;
}
.classNews_default_item_text2 {
  display: none;
}

.classNews_default_header {
  position: relative;
}

.classNews_default_item_text {
  height: 100px;
  overflow: hidden;
  position: relative;
}

.classNews_default_item_text:before {
  content: '';
  display: block;
  height: 20px;
  position: absolute;
  bottom: 0px;
  width: 100%;
}

/* start menu subGroup */

.classNews_default_subGroupMenu_content:after {
  content: '';
  display: block;
  clear: both;
}

.classNews_default_subGroupMenu_content {
  position: absolute;
  top: 0px;
  right: 0px;
}

.classNews_default_subGroupMenuField {
  min-width: 150px;
  height: 35px;
  line-height: 35px;
  border: 1px solid #ddd;
  position: relative;
  padding-left: 10px;
  font-size: 14px;
  cursor: pointer;
  background: url(/data/images/cms/news/default/arrow_bottom.png) no-repeat center right 10px;
  padding-right: 25px;
}

.classNews_default_subGroupMenuLinkActive {
  background: #7D7D7D !important;
}

.classNews_default_subGroupMenuLinkActive a {
  color: #fff  !important;
}

.classNews_default_subGroupMenu li:hover {
  background: #ddd;
}

.classNews_default_subGroupMenu {
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 0px;
  margin: 0px;
  position: absolute;
  top: 35px;
  z-index: 1;
  background: #fff;
  left: -1px;
  right: -1px;
  display: none;
}

.classNews_default_subGroupMenu a {
  display: block;
  padding-right: 25px;
  padding-left: 10px;
}

.classNews_default_subGroupMenu li {
  padding: 0px;
  margin: 0px;
  list-style: none;
}

.classNews_default_subGroupMenuText {
  float: right;
  margin-right: 10px;
  line-height: 35px;
  height: 35px;
  font-weight: 300;
  font-size: 14px;
}

.classNews_default_gallery{
  float:left;
  width:360px;
  margin:0px;
  margin-right:15px;
  margin-bottom:15px;
}

.classNews_default_gallery_image{
  width:100%;
}


.classNews_default_text{
  margin-bottom:20px;
}

/* end menu subGroup */

@media all and (max-width:720px) {
  .classNews_default_gallery {
    width:100%;
    float:left;
    margin:0px;
    margin-bottom:15px;
  }
}

@media all and (max-width: 650px) {

  .classNews_default_item_gallery {
    width:100%;
    float:left;
    margin:0px;
    margin-bottom:15px;
  }

  .classNews_default_item_content {
    width:100%;
    float:left;
  }

}




/* Style dla paginatora */

.general_paginator{
  margin:auto;
  height:40px;
  line-height:40px;
  position:relative;
  overflow:hidden;
  text-align:center;
}

.general_paginator_currPage{
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
  border: solid 1px #ddd;
  background: #f0f0f0;
  color: #888;
  margin-left: 10px;
  min-width: 32px;
  height: 32px;
  line-height: 30px;
  padding: 0px;
  font-size: 13px;
}

.general_paginator_count{
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
  border: solid 1px #ddd;
  color: #444;
  cursor: pointer;
  margin-left: 10px;
  min-width: 32px;
  height: 32px;
  line-height: 30px;
  padding: 0px 10px;
  font-size: 13px;
  transition: all 300ms ease;
}

.general_paginator_prev{
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
  border: solid 1px #ddd;
  color: #444;
  cursor: pointer;
  margin-left: 10px;
  min-width: 32px;
  height: 32px;
  line-height: 30px;
  padding: 0px;
  font-size: 13px;
  transition: all 300ms ease;
}

.general_paginator_next{
  box-sizing: border-box;
  display: inline-block;
  text-align: center;
  border: solid 1px #ddd;
  color: #444;
  cursor: pointer;
  margin-left: 10px;
  min-width: 32px;
  height: 32px;
  line-height: 30px;
  padding: 0px;
  font-size: 13px;
  transition: all 300ms ease;
}

.general_paginator_prev:hover, .general_paginator_next:hover{
  background:#333;
  color:#fff;
  transition: all 300ms ease;
}

.general_paginator_descriptions{
  display:none;
}

@media screen and ( min-width: 480px) {
  .general_paginator_descriptions{
    display:inline-block;
  }
}



.notes_inNotes {
  width:44px;
  height:46px;
  background-image:url('/skin/img/notes-in.svg');
  background-size:24px 24px;
  background-repeat:no-repeat;
  background-position:center;
  font-size:14px;
  cursor:pointer;
  position: relative;
  display:inline-block;
  transition:all 250ms ease;
}

.notes_notInNotes {
  width:44px;
  height:46px;
  background-image:url('/skin/img/notes-not-in.svg');
  background-size:24px 24px;
  background-repeat:no-repeat;
  background-position:center;
  font-size:14px;
  cursor:pointer;
  position: relative;  
  display:inline-block;
  transition:all 250ms ease;
}

.notes_inNotes:hover, .notes_notInNotes:hover{
  transform:scale(1.1);
}

#notes_counterValue{  
}

#notes_counterContainer{
  cursor:pointer;
}

.classOffersNotes_default_inNotes_info{
  background: var(--color-main-1);
  color:#000;
  font-size:28px;
  padding: 40px;
  box-sizing:border-box;
  top:50%;
  left:50%;
  position:absolute;
  position: fixed;
  transform:translateX(-50%) translateY(-50%);
  z-index: 999;
  display: none;
  border-radius:3px;
  box-shadow: 4px 4px 7px -4px rgba(66, 68, 90, 1);
  text-align:center;
}


/************************************************************
  Header - część wspólana dla obu rodzajów nagłówka t.j.:
           main i default
************************************************************/

header{
  height:116px;
  position:relative;
  background:#fff;
  font-size:var(--default-font-size);
  margin-top:0; /* IZI: było 5px na kreskę przewijania (ją ukrywamy) — flush do krawędzi */
  box-sizing:border-box;
  padding:0px var(--default-margin);
  box-shadow:0px 0px 20px 0px #00000044;
  z-index:2;
}

/* IZI: pole „Jak i skąd" w wyszukiwarce ZAWSZE samolot (statyczna ikona).
   Natywnie JS ustawia inline background-image wg wybranego transportu (samolot/własny/autokar/mixed),
   co zmieniało ikonę po kliknięciu = słaby UX. Wymuszamy stały samolot (!important przebija inline). */
#search-main .field[style*="srch-transport"]{
  background-image:url('/skin/img/srch-transport-samolot.svg') !important;
}

/* IZI: po dodaniu/usunięciu ze schowka KSI pokazuje brzydki baner-toast — wyłączamy.
   Czerwone serce = wystarczająca informacja, że zapisane. */
.classOffersNotes_default_inNotes_info,
[id^="classOffersNotes_default_inNotes_info"]{ display:none !important; }



.sk-search{
  float:right;
  cursor:pointer;
  margin-top:44px;
  display:inline-block;
  margin-left: 25px;
}

.sk-search > img{
  width:26px;
  height:26px;
}

.sk-top-phone,
.sk-top-email,
.sk-top-cust-panel{
  font-size:18px;
  float:right;
  cursor:pointer;
  margin-top:43px;
  display:inline-block;
  padding-left:40px;
  background-size:26px 26px;
  background-repeat:no-repeat;
  background-position:left;  
  color:var(--text-color-general);
  transition: var(--default-transition);
  margin-left: 25px;
  position:relative;
}

.sk-top-phone .hours{
  position:absolute;
  right:0px;
  bottom:-21px;
  color:#888;
  font-size:14px;
}

.sk-top-phone{
  background-image:url('/skin/img/ico-phone.svg');
}

.sk-top-email{
  background-image:url('/skin/img/ico-email.svg');
}

.sk-top-cust-panel{
  background-image:url('/skin/img/ico-user-panel.svg');
}


.sk-top-phone:hover,
.sk-top-email:hover,
.sk-top-cust-panel:hover{
  background-size:28px 28px;
  text-decoration:underline;
}


/************************************************************
  Header notes (serduszko notesu)
************************************************************/
@keyframes sk-jump-anim{
      0% {top:-8px;}
     15% {top:-18px; }
     30% {top:-8px; }
     45% {top:-12px;}
     60% {top:-8px; }
     75% {top:-10px; }
     90% {top:-8px; }
    100% {top:-8px; }
}

.sk-notes{
  float:right;
  position:relative;
  height:22px;
  width:22px;
  display:inline-block;
  float:right;
  top:45px;
  line-height:22px;
  margin-left:25px;
  margin-right:11px;
}

.sk-notes:hover #notes_counterValue{
  animation-name: sk-jump-anim;
  animation-duration: 0.8s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

.sk-notes #notes_counterValue{
  position:absolute;
  display:block;
  height:16px;
  width:16px;
  border-radius:8px;
  right:-8px;
  top:-8px;
  line-height:16px;
  text-align:center;
  background:var(--color-main-3);
  color:#fff;    
  transition:all 300ms ease;
  font-size:11px;
  border:0px;
  box-sizing:border-box;
}


/************************************************************
  LOGO
************************************************************/
header .logo img{
  height:60px;
  width:215px;
  margin-top:18px;
  float:left;
  transition:var(--default-transition);
}

header .logo .text{
  font-size: 16px;
  font-style: italic;
  font-weight: bold;
  transform: scale(0.8,1);
  font-weight: bold;
  position: absolute;
  top: 73px;
  left: 22px;
  transition:var(--default-transition);
}

header .logo .text>span:nth-of-type(1){
  color: var(--color-main-1);
}
header .logo .text>span:nth-of-type(2){
  color: var(--color-main-2);
}

header .logo:hover img{
  transform: scale(1.03);
}



/************************************************************
  Mixed RWD rules
************************************************************/
@media all and ( max-width: 1600px ){
  .sk-top-phone,
  .sk-top-email{
    width:0px;
    height:28px;
  }
  
  .sk-top-phone>span,
  .sk-top-email>span{
    display:none;
  }
}

@media all and ( max-width: 1320px ){
  .sk-top-cust-panel,
  .sk-top-cust-panel{
    width:0px;
    height:28px;
  }
  
  .sk-top-cust-panel>span,
  .sk-top-cust-panel>span{
    display:none;
  }
}


@media all and ( max-width: 920px ){
  
  .sk-top-phone,
  .sk-top-email,
  .sk-top-cust-panel{
    width:0px;
    height:28px;
    margin-left:20px;
    padding-left:28px;
  }
  
  .sk-top-phone>span,
  .sk-top-email>span,
  .sk-top-cust-panel>span{
    display:none;
  }
  
  header{
    height:60px;
  }
  
  header .logo .text{
    display:none;
  }
  
  header .logo img{
    width:140px;
    height:45px;
    margin-top:4px;
  }
  
  .sk-23-lata{ display:none; } 
  .sk-top-phone{ margin-top:14px; }
  .sk-top-email{ margin-top:14px; }
  .sk-top-cust-panel{ margin-top:14px; }
  .sk-search{ margin-top:15px; }
  .sk-notes{ top:unset; margin-top:16px; }
  #sk-menu-top-btn{ margin-top:25px !important; }
  
}

@media all and ( max-width: 380px ){
  header .logo img{
    width:100px;
  }
}

@media all and ( max-width: 420px ){
  .sk-top-phone{ margin-left:15px }
  .sk-top-email{ margin-left:15px }
  .sk-top-cust-panel{ margin-left:15px }
  .sk-search{ margin-left:15px }
  .sk-notes{ margin-left:15px }
  #sk-menu-top-btn{ margin-left:15px }
}


@media all and ( max-width: 400px ){
  .sk-top-phone{ margin-left:10px }
  .sk-top-email{ margin-left:10px }
  .sk-top-cust-panel{ margin-left:10px }
  .sk-search{ margin-left:10px }
  .sk-notes{ margin-left:10px }
  #sk-menu-top-btn{ margin-left:10px }
}


@media all and ( max-width: 320px ){
  header .logo img{
    width:50px;
    height:50px;
  }
}

/************************************************************
  Header - ext content
************************************************************/

#header-def-content-cnt{
  box-sizing:border-box;
  padding:calc( 4 * var(--default-margin) ) 0px calc( 2 * var(--default-margin) ) 0px;
  width:100%;
}

#header-def-content{
}

#header-def-content h1{
  color:#fff;
  /* text-shadow: 0px 0px 4px #ffffffee; */
  font-weight:300;
  font-family:var(--default-font-1);
  font-size:52px;
  background:#000000ee;
  padding:0px var(--default-margin);
  display:inline-block;
  border-radius:var(--default-radius);
}


@media all and ( max-width: 1024px ){
  #header-def-content{
    font-size:25px;    
  }
}

@media all and ( max-width: 480px ){
  #header-def-content{
    font-size:22px;
  }

  #header-def-content h1{
    font-size:50px;
    line-height:1.2;
  }
}


/* ===========================================================================
   IZI: pływający okrągły guzik „słuchawki" (frost) — DESKTOP, lewy dolny róg,
   site-wide. Budowany przez /skin/izi-call-fab.js. Pojawia się po scrollu w dół
   (jak dawny dymek Thulium). Klik -> arkusz: Zamów rozmowę / Zadzwoń teraz.
   =========================================================================== */
#izi-fab{
  position:fixed; left:22px; bottom:22px; z-index:9990;
  width:60px; height:60px; padding:0; cursor:pointer;
  border:1px solid rgba(231,233,236,.7); border-radius:999px;
  background:rgba(255,255,255,.72);
  -webkit-backdrop-filter:blur(18px) saturate(1.4); backdrop-filter:blur(18px) saturate(1.4);
  box-shadow:0 12px 30px rgba(17,24,39,.22);
  display:flex; align-items:center; justify-content:center;
  opacity:0; transform:translateY(12px) scale(.9); pointer-events:none;
  transition:opacity .28s ease, transform .28s ease, box-shadow .2s ease;
}
body.izi-fab-show #izi-fab{ opacity:1; transform:none; pointer-events:auto; }
#izi-fab:hover{ box-shadow:0 16px 40px rgba(17,24,39,.28); transform:translateY(-2px); }
#izi-fab svg{ width:28px; height:28px; stroke:#ffd400; fill:none; }

#izi-fab-sheet{
  position:fixed; left:22px; bottom:92px; z-index:9991; display:none; min-width:232px;
  background:rgba(255,255,255,.80);
  -webkit-backdrop-filter:blur(18px) saturate(1.4); backdrop-filter:blur(18px) saturate(1.4);
  border:1px solid rgba(231,233,236,.7); border-radius:16px;
  box-shadow:0 14px 36px rgba(17,24,39,.2); padding:6px;
}
#izi-fab-sheet.open{ display:block; animation:iziFabIn .18s ease; }
@keyframes iziFabIn{ from{ opacity:0; transform:translateY(8px); } to{ opacity:1; transform:none; } }
#izi-fab-sheet button{
  display:flex; align-items:center; gap:11px; width:100%; text-align:left;
  background:transparent; border:0; cursor:pointer; padding:11px 12px; border-radius:10px; color:#1f2937;
}
#izi-fab-sheet button:hover{ background:#f3f4f6; }
#izi-fab-sheet .izi-fab-ico{ width:22px; height:22px; flex:0 0 22px; display:flex; }
#izi-fab-sheet .izi-fab-ico svg{ width:22px; height:22px; stroke:#ffd400; fill:none; }
#izi-fab-sheet .izi-fab-t{ display:block; font-weight:700; font-size:15px; line-height:1.15; }
#izi-fab-sheet .izi-fab-s{ display:block; font-weight:500; font-size:12px; color:#6b7280; }

/* tylko desktop — na mobile gra własne „Zadzwoń" w pasku listingu */
@media all and ( max-width: 820px ){
  #izi-fab, #izi-fab-sheet{ display:none !important; }
}



/************************************************************
  Top-menu
************************************************************/

.top-menu{
  margin-top:29px;
  margin-left:80px;
  float:left;
  line-height:55px;
  display:inline-block;
}

.top-menu > ul , ul.submenu {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  border-radius:0px var(--default-radius) var(--default-radius) var(--default-radius);
  overflow:hidden;
}

.top-menu > ul > li {
  float: left;
  margin-right: 10px;
  cursor: pointer;
}

.top-menu > ul > li > a {
  display: block;
  padding: 0px var(--default-margin);
  color:#000000;
  font-size:18px;
  transition:var(--default-transition);  
  background-position:calc(100% - 0px) center;
}

.top-menu > ul > li:last-child {
  margin-right: 0px;
  border-bottom:0px;
}

.top-menu > ul > li:hover > a {
  /* border-bottom:solid 4px var(--color-main-1); */
  background-color:#fff;
  color:#000;
}

.submenu {
  display: none;
  position: absolute;
  z-index: 9999;
  padding: 0px;
  background-color: #fff;
  box-shadow:var(--shadow-default);
}

.submenu.hidden{
  display:none;
}


.submenu > li{
  padding:0px;
  margin:0px;
  height:50px;
  box-sizing: border-box;
  overflow:hidden;
  transition:all 250ms ease;
}

.submenu > li > a {
  display:block;
  width:100%;
  color: var(--color-main-2b);
  padding:0px 30px;
  height:50px;
  line-height:50px;
  box-sizing: border-box;
  border-bottom:solid 1px #f4f4f4;
  
  padding-left:60px;
  background-image:url(/skin/img/arrow-right-menu.svg);
  background-position:15px;
  background-size:12px 12px;
  background-repeat: no-repeat;

  
  transition:all 200ms ease;
}

.top-menu li:hover .submenu {
  display: block!important;    
}

.submenu > li {
  padding: 0px;  
  height:50px; 
}

.submenu > li:hover > a {
  background-color:var(--color-main-1);
  color:#000;  
}

.submenu > li:last-child {
  border-bottom: 0px dotted #8C2F5F;
}

/************************************************************
  Header top-menu button
************************************************************/

#sk-menu-top-btn{
  margin-left:20px;
  margin-right:15px;
}

#sk-menu-top-btn, #sk-menu-top-btn:before, #sk-menu-top-btn:after{  
  display:block;
  height:5px;
  width:5px;
  box-sizing:border-box;
  border:0px;
  border-radius:2px;
  box-sizing:content-box;
  cursor:pointer;
  transition:all 600ms ease;
  background-color:#000;
  border-radius:3px;
}

#sk-menu-top-btn.close, #sk-menu-top-btn.close:before, #sk-menu-top-btn.close:after{  
  width:26px;
}

#sk-menu-top-btn:before{
  background-color:#000;
}

#sk-menu-top-btn:after{
  background-color:#000;
}

#sk-menu-top-btn{  
  position:relative;
  margin-top:52px;
  border:0;
  border-left:0px;
  border-right:0px;
  display:none;
  float:right;
}

#sk-menu-top-btn:before{
  content:'';
  position:absolute;
  top:-10px;
}

#sk-menu-top-btn:after{
  content:'';
  position:absolute;
  top:10px;  
}

#sk-menu-top-btn.close{
  background:none;
  transform: rotate(180deg);
}

#sk-menu-top-btn.close:before{
  transform: rotate(45deg) translateY(8px) translateX(5px);
  width:27px;
}

#sk-menu-top-btn.close:after{
  transform: rotate(-45deg) translateY(-9px) translateX(6px);
  width:27px;
}

@media all and ( max-width: 1670px ){
  .top-menu{
    margin-left:30px;
  }
}

@media all and ( min-width: 1600px ){
  
  .sk-top-email{
    width:0px;
    height:28px;
    /* margin-left:20px; */
    padding-left:28px;
  }
  
  .sk-top-email>span{
    display:none;
  }
 

}


@media all and ( min-width: 1281px ){
  .sk-menu-top{
    display:block !important;
    opacity:1 !important;
  }  
}

@media all and ( max-width: 1200px ){
 
  .top-menu{
    margin-left:0px;
  }
  
  .sk-menu-top{
    display:none;
    opacity:0;
  }

  .top-menu>ul{
    max-height:calc(100% - 150px);
  }
  
  .top-menu>ul>li{
    margin:0px;
  }  
  
  .top-menu>ul>li a{
    background-color:#fff;
    color:var(--text-color-general);
    font-size:16px;
  }
  
  .top-menu>ul>li:hover a{
  }
  
  #sk-menu-top-btn{
    display:inline-block;
    float:right;
  }
  
  .sk-menu-top{
    position:fixed;
    --display:none;
    background-color: #f6f6f6;
    border: solid 1px #eee;
    left:10px;
    right:10px;
    padding: 0px;
    box-sizing:border-box;
    line-height:1.5;    
    box-shadow:var(--shadow-default);
    z-index: 100;
    overflow:auto;
    transition:all 400ms ease;
    max-height: calc(100vh - 100px);
  }
  
  @keyframes sk-menu-top-mob-open{
      0% {height:0px; opacity:0.0;}
     25% {opacity:0.2; }
     50% {opacity:0.4; }
     75% {opacity:0.7;}
    100% {opacity:1.0; }
  }

  .sk-menu-top.close{}
  .sk-menu-top.open{    
    animation-name: sk-menu-top-mob-open;
    animation-duration: 0.6s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1;
    z-index:23456;
    overscroll-behavior-y: none;
    box-shadow:0px 0px 10px 0px #00000044;
    border-radius:var(--default-radius);
    top:90px;
    overflow:auto;
  } 

  .sk-menu-top>li{
    display:block;
    text-align:center;
    margin-bottom:10px;    
  }
  .sk-menu-top>li>a{
    padding:10px;
    padding-left:40px;
    margin:0px;
    background-color:#2f3843;
    display:block;
    width:100%;
    box-sizing:border-box;
    text-align:center;
    border-bottom: none;
  }
  
  .sk-menu-top-dropdown{
    display:block !important;
    position:initial;
    border:0px;
    box-shadow: none;
    padding:0px 20px;    
  }
  
  .sk-menu-top-dropdown a{
    padding:7px 0px;
  }
  
  .sk-menu-top.close{    
    height:0px;
    opacity:0;
  }
    
  .sk-menu-top>li{
    display:block;
    width:100%;
    margin:0px;
    border-bottom:solid 1px #d8d8d8;
    box-sizing:border-box;
    padding:0px;
  }
    
  .sk-menu-top>li>a{
    text-align:left;
    padding:0px 15px;
    background-color:#f6f6f6;
    line-height:50px;
    height:50px;
    font-size:16px;
    box-sizing: border-box;
  }

  .sk-menu-top>li>a.menu-main-navigation-has-sub{
    background-image:url(/skin/img/arrow-down.svg);
    background-position:calc(100% - 10px) center !important;
    background-repeat:no-repeat;
    background-size:12px 12px;
    padding-right:16px;
  }
  
  .menu-main-navigation-sub{
    box-shadow:none;
    position:relative;
    width:100%;
    box-sizing: border-box;
    background-color:#fff;
    color:var(--text-color-general);
  }
  
  .menu-main-navigation-sub>li>a{
    color:var(--text-color-general);
    text-align:left;
    box-sizing: border-box;    
    
  }
  
}


@media all and ( max-width: 760px ){

  .top-menu>ul{
        max-height:calc(100% - 100px);
  }
  
}


/* ============================================================
   IZI header 2-belkowy — nadpisuje natywny (skin-header.css / skin-menu-top.css)
   Belka A: Zadzwoń | Napisz | Znajdź nas (social).  Belka B: logo | menu | Panel klienta | serce.
   Dane: skin/izi-menu.json. Menu = CMS (#sk-menu-top). GOTCHA: #sk-menu-top ma regule ID -> selektor z ID.
   ============================================================ */

header.izi-hd{ height:auto !important; box-shadow:none !important; padding:0 !important; background:#fff; position:relative; z-index:20; }
.izi-hd .izi-hd-inner{ max-width:1200px; margin:0 auto; padding:0 16px; box-sizing:border-box; display:flex; align-items:center; }

/* ---------- BELKA A: info (ciche, jeden kolor, zwykla czcionka, WSZYSTKO DO PRAWEJ) ---------- */
.izi-hd-info{ background:#fff; border-bottom:1px solid #eef1f6; }
.izi-hd-info .izi-hd-inner{ min-height:42px; gap:16px; justify-content:flex-end; }
.izi-hd-info a,
.izi-hd-info b,
.izi-hd-info span{ color:#333333 !important; font-weight:400 !important; font-size:14px !important; }
.izi-hd-sep{ width:1px; height:15px; background:#e2e7ef; flex:0 0 auto; }
.izi-hd-phone,
.izi-hd-email{ float:none !important; margin:0 !important; padding:0 !important; background:none !important; text-decoration:none; display:inline-flex; align-items:center; gap:7px; }
.izi-hd-phonegrp{ display:inline-flex; align-items:center; gap:7px; }
.izi-hd-ico{ display:inline-flex; align-items:center; color:#333333; }
.izi-hd-ico svg{ width:17px; height:17px; display:block; }
/* kolko info + dymek (godziny w tooltipie) */
.izi-hd-i{ position:relative; display:inline-flex; align-items:center; cursor:help; }
.izi-hd-info .izi-hd-ico-i{ color:#9aa6ba !important; }
.izi-hd-ico-i svg{ width:15px; height:15px; }
.izi-hd-info .izi-hd-tip{ position:absolute; top:calc(100% + 9px); left:50%; transform:translateX(-50%); width:230px; background:#0B1B3B; color:#ffffff !important; font-size:12px !important; font-weight:400 !important; line-height:1.4; padding:9px 12px; border-radius:9px; text-align:center; box-shadow:0 10px 28px -8px rgba(11,27,59,.45); opacity:0; visibility:hidden; transition:opacity .15s; z-index:60; pointer-events:none; }
.izi-hd-info .izi-hd-tip::before{ content:''; position:absolute; bottom:100%; left:50%; transform:translateX(-50%); border:6px solid transparent; border-bottom-color:#0B1B3B; }
.izi-hd-i:hover .izi-hd-tip, .izi-hd-i:focus .izi-hd-tip{ opacity:1; visibility:visible; }
.izi-hd-phone:hover, .izi-hd-email:hover{ text-decoration:underline; }
.izi-hd-social{ display:flex; align-items:center; gap:9px; }
.izi-soc{ color:#333333; width:22px; height:22px; display:inline-grid; place-items:center; transition:opacity .15s; }
.izi-soc:hover{ opacity:.65; }
.izi-soc svg{ width:18px; height:18px; display:block; }

/* ---------- BELKA B: nav ---------- */
.izi-hd-main{ background:#fff; box-shadow:0 3px 16px -8px rgba(11,27,59,.22); }
.izi-hd-main .izi-hd-inner{ min-height:76px; gap:20px; }

/* zdejmij natywne floaty/marginesy */
.izi-hd-main .logo,
.izi-hd-main .top-menu,
.izi-hd-main .sk-notes,
.izi-hd-main .sk-top-cust-panel,
.izi-hd-main #sk-menu-top-btn{ float:none !important; margin:0 !important; top:auto !important; position:static !important; }

/* logo wysrodkowane w pionie; rozmiar/pozycja/odstep sterowane z buildera (zmienne inline z izi-menu.json logoCfg) */
.izi-hd-main .logo{ flex:0 0 auto; display:inline-flex !important; align-items:center; padding:0 !important; height:auto; line-height:0; margin-right:var(--izi-logo-gap,0px) !important; }
.izi-hd-main .logo picture{ display:inline-flex; align-items:center; }
.izi-hd-main .logo img{ height:var(--izi-logo-h,40px); width:auto; display:block; margin:0 !important; transform:translateY(var(--izi-logo-y,-7px)); }

/* menu poziomo (ID bije natywna regule); pion sterowany z buildera (--izi-menu-y z logoCfg) */
.izi-hd-main .top-menu{ flex:1 1 auto; line-height:normal !important; display:flex; align-items:center; transform:translateY(var(--izi-menu-y,0px)); }
.izi-hd-main #sk-menu-top{ display:flex !important; align-items:center; gap:4px; overflow:visible !important; margin:0 !important; padding:0 !important; flex-wrap:wrap; }
.izi-hd-main #sk-menu-top > li{ float:none !important; margin:0 !important; }
.izi-hd-main #sk-menu-top > li > a{ color:#0B1B3B !important; font-weight:600; font-size:15px !important; padding:9px 13px !important; border-radius:9px; background-color:transparent !important; }
.izi-hd-main #sk-menu-top > li:hover > a{ background-color:#f1f5fa !important; color:#0B1B3B !important; }

/* dropdown (Kalendarz ofert) — nasz styl: bez zoltych strzalek i zoltego hoveru */
.izi-hd-main .submenu{ background:#fff !important; border:1px solid #eef1f6 !important; border-radius:12px !important; box-shadow:0 14px 34px -12px rgba(11,27,59,.3) !important; overflow:hidden !important; padding:6px 0 !important; min-width:246px; }
.izi-hd-main .submenu > li{ height:auto !important; }
.izi-hd-main .submenu > li > a{ background-image:none !important; padding:11px 20px !important; padding-left:20px !important; height:auto !important; line-height:1.3 !important; color:#0B1B3B !important; font-weight:500 !important; font-size:14.5px !important; border-bottom:1px solid #f2f5f9 !important; background-size:auto !important; }
.izi-hd-main .submenu > li:last-child > a{ border-bottom:0 !important; }
.izi-hd-main .submenu > li:hover > a{ background-color:#f1f5fa !important; color:#0B1B3B !important; }

/* Panel klienta -> outline granatowy (nie zolty), przed sercem */
/* sluchawka i koperta gornej belki: TYLKO telefon (user 2026-08-03) — desktop bez zmian */
.izi-hd-tel,.izi-hd-mail{ display:none; }
#izi-hd-callmenu{ display:none; }
.izi-hd-main .izi-hd-panel{ margin-left:auto !important; flex:0 0 auto; background:transparent !important; background-image:none !important; border:1px solid #0B1B3B; color:#0B1B3B !important; font-weight:600; font-size:14px; padding:9px 18px !important; border-radius:10px; text-decoration:none; white-space:nowrap; transition:background .15s, color .15s; }
.izi-hd-main .izi-hd-panel:hover{ background:#0B1B3B !important; color:#fff !important; text-decoration:none !important; }
/* ikona czlowieczka + podpis mobilny istnieja w markupie zawsze — desktop ich nie pokazuje */
.izi-hd-panel .izi-hd-panel-ic, .izi-hd-panel .izi-hd-panel-txm{ display:none; }

/* serce — najbardziej z prawej; position:relative zeby licznik siedzial na sercu (nie w rogu <header>) */
.izi-hd-main .izi-hd-heart{ position:relative !important; margin:0 0 0 4px !important; flex:0 0 auto; width:24px; height:24px; }
.izi-hd-main .izi-hd-heart img{ display:block; }

/* ---------- mobile ----------
   Breakpoint 1170 (nie 820): rdzen KSI chowa #sk-menu-top ponizej 1171px,
   wiec 821-1170 zostawal header-sierota (kropka-hamburger + pusty Panel klienta). */
@media all and (max-width:1170px){
  .izi-hd-info{ display:none; }
  .izi-hd-main .izi-hd-inner{ min-height:58px; }
  .izi-hd-main .top-menu{ display:none !important; }
  /* hamburger i serce SCHOWANE (2026-07-09, decyzja usera): oba sa w dolnym pasku
     zakladek (Menu / Ulubione) — na gorze zostaje tylko Panel klienta */
  .izi-hd-main #sk-menu-top-btn{ display:none !important; }
  .izi-hd-main .izi-hd-heart{ display:none !important; }
  /* Panel klienta = ikona czlowieczka + "Zaloguj sie" OBOK w jednej linii (makieta usera 2026-07-10;
     wczesniej: malutki tekst POD ikona). Bez ramki.
     width:auto !important — rdzen KSI daje .sk-top-cust-panel width:0 na mobile
     (chowa etykiete pod tlo-ikone) i tekst wystawal 5px za ekran. */
  /* Od lewej: sluchawka, koperta, gosc z 'Zaloguj' POD spodem (user 2026-08-03; wczesniej:
     czlowieczek + duze 'Zaloguj sie' obok). Sluchawke dosuwaja do prawej wlasnym marginesem —
     panel traci margin-left:auto, zeby cala trojka trzymala sie razem (gap 20px z .izi-hd-inner). */
  /* ciasniej + podpisy pod ikonami (user 2026-08-03: „ciasniej te ikony i daj podpisy") —
     ta sama budowa co gosc/Zaloguj: ikona nad malym tekstem. Odstepy wlasnym marginesem,
     bo .izi-hd-inner niesie gap 20px z desktopu — nadpisujemy go marginesem ujemnym nie mozna,
     wiec po prostu przybijamy elementy do siebie marginesem lewym panelu i koperty. */
  .izi-hd-tel,.izi-hd-mail{ display:inline-flex; flex-direction:column; align-items:center; gap:3px; color:#0B1B3B; padding:4px 2px; }
  .izi-hd-tel svg,.izi-hd-mail svg{ width:24px; height:24px; display:block; }
  .izi-hd-icotx{ font-size:10px; font-weight:600; line-height:1; letter-spacing:.1px; }
  .izi-hd-tel{ margin-left:auto; background:none; border:0; cursor:pointer; font-family:inherit; }
  .izi-hd-mail{ margin-left:-6px; }
  /* MENU POD „ZADZWON" (user 2026-08-03): frost jak arkusze, rozwija sie SMOOTH spod belki —
     opacity + zjazd 8px + delikatne scale; zamkniete nie lapie tapniec. Strzalka wizualnie
     wskazuje guzik sluchawki. */
  #izi-hd-callmenu{
    display:block; position:fixed; top:64px; right:10px; z-index:9997; min-width:238px;
    background:rgba(255,255,255,.9); -webkit-backdrop-filter:blur(22px) saturate(1.5); backdrop-filter:blur(22px) saturate(1.5);
    border:1px solid rgba(231,233,236,.8); border-radius:16px; box-shadow:0 14px 40px rgba(17,24,39,.22); padding:6px;
    opacity:0; transform:translateY(-8px) scale(.97); transform-origin:top right; pointer-events:none; visibility:hidden;
    transition:opacity .22s ease, transform .26s cubic-bezier(.2,.8,.2,1), visibility 0s linear .26s;
  }
  #izi-hd-callmenu.open{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; visibility:visible; transition:opacity .22s ease, transform .26s cubic-bezier(.2,.8,.2,1); }
  #izi-hd-callmenu a, #izi-hd-callmenu button{
    display:flex; align-items:center; gap:11px; width:100%; box-sizing:border-box; text-align:left;
    background:transparent; border:0; cursor:pointer; padding:11px 12px; border-radius:11px;
    color:#1f2937; text-decoration:none; font-family:inherit;
  }
  #izi-hd-callmenu a:active, #izi-hd-callmenu button:active{ background:rgba(17,24,39,.06); }
  #izi-hd-callmenu svg{ width:21px; height:21px; flex:0 0 21px; color:#111827; }
  #izi-hd-callmenu b{ display:block; font-size:15px; font-weight:700; line-height:1.15; }
  #izi-hd-callmenu i{ display:block; font-style:normal; font-size:12px; font-weight:500; color:#6b7280; margin-top:2px; }
  .izi-hd-main .izi-hd-panel{
    display:inline-flex !important; flex-direction:column; align-items:center; gap:3px;
    margin-left:-6px !important;
    width:auto !important; height:auto !important; overflow:visible !important;
    border:0 !important; padding:4px 6px !important; border-radius:0;
  }
  .izi-hd-main .izi-hd-panel:hover{ background:transparent !important; color:#0B1B3B !important; }
  .izi-hd-panel .izi-hd-panel-tx{ display:none; }
  .izi-hd-panel .izi-hd-panel-ic{ display:block; width:24px; height:24px; }
  .izi-hd-panel .izi-hd-panel-txm{ display:block; font-size:10px; font-weight:600; line-height:1; letter-spacing:.1px; }
}



/************************************************************
  Footer
************************************************************/

footer{
  clear:both;
  background:var(--color-main-background);
  width:100%;
  box-sizing:border-box;
  float:left;
  padding:0px;
  margin-top:30px;
  position:relative;
}


/************************************************************
  Footer - logotypy
************************************************************/


.sk-footer-partners{
  width:100%;
  float:left;
  box-sizing: border-box;
  text-align:center;
  margin:15px 0px;
}

.sk-footer-partners a{
  position:relative;
  width:calc( ( 100% - 2 * var(--default-margin) ) / 10 - 1px );
  display:inline-block;  
  box-sizing:border-box;  
  text-align:center;
}

.sk-footer-partners a>span{
  position:relative;
  display:inline-block;
  width:90px;
  height:90px;
  border-radius:50px;
  border:solid 1px #f0f0f0;
  box-sizing:border-box;
  z-index:2;
}

/* IZI 2026-07-08: usuniete pseudo-elementy :before/:after + @keyframes
   sk-footer-anim-a (zolte rozchodzace sie kolka na hover logotypow). */

.sk-footer-partners a>span>img{
  position:absolute;
  display:block;
  left:50%;
  top:50%;
  transform:translateX(-50%) translateY(-50%);
  object-position: center;
  object-fit:contain;
  width:80%;
  height:80%;
  filter:grayscale(1);
  transition: var(--default-transition);
}

.sk-footer-partners a:hover>span>img{
  filter:grayscale(0);
}

@media all and ( max-width: 1170px ){
  .sk-footer-partners a>span{
    width:80px;
    height:80px;
  }
}

@media all and ( max-width: 960px ){
  .sk-footer-partners>a{
    width:calc( ( 100% - 2 * var(--default-margin) ) / 5 );
    margin-bottom:10px;
  }
  
  .sk-footer-partners a>span{
    width:70px;
    height:70px;
  }
}

@media all and ( max-width: 460px ){
  .sk-footer-partners{
    overflow:hidden;
  }
  
  .sk-footer-partners a>span{
    width:60px;
    height:60px;
  }
}

@media all and ( max-width: 400px ){

  .sk-footer-partners a>span{
    width:50px;
    height:50px;
  }

}

/************************************************************
  Footer - napisy
************************************************************/
.sk-footer-bottom{
  padding: 30px 0px;
  box-sizing: border-box;
  display: block;
  background: var(--color-main-light-2);
  overflow:hidden;
}

.sk-footer-bottom .sk-row>span{
  float:left;
  display:block;
  font-size:14px;
  line-height:27px;
  height:27px;
  color:var(--text-color-general);
  transition:all 300ms ease-out;
  margin-top:3px;
}


@media all and ( max-width: 720px ){

  .sk-footer-bottom .sk-row>span{
    width:100%;
    line-height:1.5;
    height:unset;
  }
  
  .sk-footer-bottom a,
  .sk-footer-bottom span{
    width:100%;
    text-align:center;
  }
  
}

/************************************************************
  Footer - social
************************************************************/
.sk-social{
  border-top:solid 7px var(--color-main-light-2);
  padding:calc( 2 * var(--default-margin)) 0px;
  box-sizing:border-box;
  overflow:hidden;
}

.sk-social .left{
  text-align:center;
  float:left;
  width:50%;
}

.sk-social .left a{
  display:inline-block;
  margin:12px;
  line-height:32px;
}

.sk-social .left a img{
  width:32px;
  height:32px;
  transition:all 350ms ease;
}

.sk-social .left a img:hover{
  transform:rotate(360deg);  
}


.sk-social .right{
  text-align:center;
  float:right;
  width:50%;
}

.sk-social .right a img{
  height:32px;
  margin:12px;
  transition:all 350ms ease;
}

.sk-social .right a img:hover{
  filter: grayscale(1);
}

@media all and ( max-width: 720px ){

  .sk-social .left,
  .sk-social .right{
    width:100%;
  }
  
  .sk-social .right{
    margin-top:var(--default-margin);
  }
  
}


/************************************************************
  Newsletter
************************************************************/

.sk-footer-newsl-cnt{
  width:100%;
  background-color:#FFDE17 ;
  height:140px;
  float:left;
  padding-top:35px;
}

.sk-footer-newsl-cnt .txt1{
  font-size:46px;
  float:left;
  margin-right:20px;
}

.sk-footer-newsl-cnt .txt2{
  font-size:19px;
  float:left;
  line-height:1.2;
  float:left;
  padding-top:14px;
  margin-right:60px;
}

.sk-footer-newsl-cnt input{
  height:54px;
  line-height:54px;
  padding:0px 30px;
  border:0px;
  border-radius:27px;
  color:#000;
  font-family:var(--default-font-1);
  font-size:16px;
  width: calc(100% - 650px);
  position: relative;
  top: 7px;
}

.sk-footer-newsl-cnt button{
  height:54px;
  line-height:54px;
  padding:0px 30px;
  border:0px;
  border-radius:27px;
  color:#000;
  font-family:var(--default-font-1);
  background:#000;
  color:#fff;
  font-size:19px;
  float:right;
  position: relative;
  top: 7px;  
  cursor:pointer;
  transition:var(--default-transition);
}

.sk-footer-newsl-cnt button:hover{
  background:var(--color-main-2);
  color:#fff;
}

@media all and ( max-width: 920px ){
  .sk-footer-newsl-cnt .txt2{
    margin-right:30px;
  }
  
  .sk-footer-newsl-cnt input{
    width: calc(100% - 600px);
  }
}

@media all and ( max-width: 780px ){
  .sk-footer-newsl-cnt input{
    width: calc(100% - 525px);
  }
  
  .sk-footer-newsl-cnt .txt1{
    font-size:36px;
  }
}

@media all and ( max-width: 700px ){
  
  .sk-footer-newsl-cnt{
    height:unset;
    padding:15px 0px;
    overflow:hidden;
  }
  
  .sk-footer-newsl-cnt .txt1{
    width:190px;
    float:left;
  }
  .sk-footer-newsl-cnt .txt2{
    width:unset;
    float:left;
    margin-right:0px;
    padding-top:5px;
  }

  .sk-footer-newsl-cnt input{
    width: calc(100% - 200px);
    top:0px;
    margin-top:15px;
  }
  
  .sk-footer-newsl-cnt button{
    top:0px;
    margin-top:15px;
  }

}


@media all and ( max-width: 380px ){
  .sk-footer-newsl-cnt input{
    border-radius:5px;
    padding:0px 15px;
    width: calc(100% - 160px);
  }
  
  .sk-footer-newsl-cnt button{
    border-radius:5px;
  }
  
  .sk-footer-newsl-cnt .txt1{
    font-size:32px;
    width:170px;
    padding-top:0px;
  }
  
  .sk-footer-newsl-cnt .txt2{
    font-size:16px;
  }

}

/************************************************************
  COL 4
************************************************************/

.col-4-cnt{
  text-align:left;
  color:#666666; 
}

.col-4-icons{
  padding-top:30px;
  display:block;
  width:100%;
  overflow:hidden;
}

.col-4-icons>a{
  display:inline-block;
  margin-right:20px;
}

.col-4-icons>a:nth-of-type(1)>img{
  width:96px;
  height:32px;  
}

.col-4-icons>a:nth-of-type(2)>img,
.col-4-icons>a:nth-of-type(3)>img{
  width:32px;
  height:32px;  
}

.col-4-icons .soc>img{
  transition:var(--default-transition);
}

.col-4-icons .soc:hover>img{
  transform:rotate(360deg);
}


.col-4-addr{
  line-height:2;  
}

.col-4-addr a{
  color:#666666;
  transition:var(--default-transition);
}

.col-4-addr a:hover{
  color:var(--color-main-2);
}

.col4-top-img{
  height:40px;
  width:145px;
  position:relative;
  top:-15px;
}



@media all and ( max-width: 1024px ){
  .col4-top-img{
    top:unset;
  }
  
  .col-4-cnt{
    text-align:center;
  }
  
  .col-4-icons{
    padding-left:25px;
  }

}


/************************************************************
  Footer - 4 kolumny menu
************************************************************/

.sk-footer-columns-cnt{
  padding: calc( 4 * var(--default-margin)) 0px calc(2* var(--default-margin)) 0px;
  background: #f8f8f8;
  margin-top:10px;
  display:block;
  float:left;
  width:100%;
}

.sk-footer-columns{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  grid-gap:60px 30px;
  grid-auto-rows:minmax(auto, auto);
}

.sk-footer-column>h2{
  padding:0px;
  margin:0px;
  border:0px;
  font-size:15px;
  padding-bottom:44px;
  font-weight:normal;
}

.sk-footer-column{
  display:block;
  width:100%;
  box-sizing:border-box;
}

.sk-footer-column-phone{
  color:#fff;
  padding-bottom:5px;
  display:block;
}

.sk-menu-bottom{
  display:block;
  width:100%;  
  box-sizing:border-box;
}

.sk-menu-bottom>a{
  display:block;
  width:100%;
  box-sizing:border-box;
  height:40px;
  line-height:40px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space: nowrap;  
  color:var(--text-color-general);
  transition:all 0.3s ease;
  font-size:var(--font-size-defaut-text-small);
}
.sk-menu-bottom>a:hover{
  text-decoration:underline;
}

.sk-footer-columns h2{
   font-weight:bold;
 }


@media all and ( max-width: 1024px ){
  .sk-footer-columns-cnt{
    padding:calc(2* var(--default-margin)) 0px calc(2* var(--default-margin)) 0px;
  }
  .sk-footer-columns{
    grid-template-columns:1fr 1fr;
  }

  .sk-footer-columns h2{
    background:#fff;
    padding:10px 15px;
    border-radius:var(--default-radius);
    box-sizing:border-box;
    border:solid 1px #f3f3f3;
    margin-bottom:22px;
  }
  
  .sk-menu-bottom>a{
    height:40px;
    line-height:40px;
    margin:0px;
    padding:0px;
    padding-left:40px;
    background-image:url(/skin/img/arrow-right.svg);
    background-size:10px 10px;
    background-position:15px 14px;
    background-repeat:no-repeat; 
    border-bottom:solid 1px var(--color-main-light-2);    
    transition:var(--default-transition);
  }
  
  .sk-menu-bottom>a:hover{
    text-decoration:none;
    background-color:var(--color-main-1);
  }
    
}

@media all and ( max-width: 560px ){

  .sk-footer-columns-cnt{
    padding:calc(var(--default-margin)) 0px calc(2* var(--default-margin)) 0px;
  }
  
  .sk-footer-columns{
    display:block;
    width:100%;
    box-sizing:border-box;
  }

  .sk-footer-column>h2{
    width:100%;
    box-sizing:border-box;
  }
    
  .sk-footer-column{
    padding:0px;
    margin:0px;
    box-sizing:border-box;
    margin-bottom:30px;
  }

  .sk-footer-column-4{
    padding-top:calc( 2 * var(--default-margin));
  }

}





/* ============================================================
   IZI stopka — restyle wg makiety (2026-07-07).
   Ładowany PO skin-footer.css i skin-footer-menu-4-col.css,
   nadpisuje je selektorami .izi-f. Markup: inc_bodyBottom.php.
   ============================================================ */

footer.izi-f{ background:#f1f4f6; }

/* --- Sekcja kolumn --- */
.izi-f .sk-footer-columns-cnt{
  background:transparent;
  margin-top:0;
  padding:56px 0 30px;
}

/* kolumna 3 szersza (najdluzsze pozycje menu w 1 linijce), karta najszersza */
.izi-f .sk-footer-columns{
  grid-template-columns:0.72fr 1fr 1.15fr 1.28fr;
  grid-gap:32px 24px;
}

/* Nagłówek kolumny: kółko teal + tytuł */
.izi-f .sk-footer-column>h2{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 6px;
  padding:0 0 8px;
  border:0;
  border-radius:0;
  background:transparent;
  font-family:'Poppins',sans-serif;
  font-size:15px;
  font-weight:800;
  color:#030f3b;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1.3;
  white-space:nowrap;
}

.izi-f-ic{
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:50%;
  background:#1b8a9a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.izi-f-ic svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:#fff;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Linki menu: chevron teal + szary tekst */
.izi-f .sk-menu-bottom>a{
  position:relative;
  height:auto;
  line-height:1.45;
  padding:7px 0 7px 24px;
  font-size:14px;
  color:#4a5b6b;
  white-space:nowrap;
  background:none;
  border:0;
}

.izi-f .sk-menu-bottom>a:before{
  content:'';
  position:absolute;
  left:3px;
  top:calc(50% - 4px);
  width:7px;
  height:7px;
  border-right:2px solid #1b8a9a;
  border-top:2px solid #1b8a9a;
  transform:rotate(45deg);
  border-radius:1px;
}

.izi-f .sk-menu-bottom>a:hover{
  text-decoration:none;
  color:#1b8a9a;
  background:none;
}

/* --- Karta kontaktowa (kolumna 4) --- */
.izi-f-card{
  background:#fff;
  border:1px solid #ececec;
  border-radius:20px;
  box-shadow:0 2px 14px rgba(17,24,39,.08);
  padding:28px;
  box-sizing:border-box;
  text-align:left;
  color:#4a5b6b;
}

.izi-f-logo{
  width:190px;
  height:auto;
  display:block;
  margin:0 0 14px;
}

.izi-f-row{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:14px;
  font-size:14.5px;
  line-height:1.55;
}

.izi-f-cic{
  flex:0 0 22px;
  display:inline-flex;
  margin-top:2px;
}

.izi-f-cic svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:#1b8a9a;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.izi-f-row a{
  color:#4a5b6b;
  transition:var(--default-transition);
}

.izi-f-row a:hover{
  color:#1b8a9a;
}

/* Bezpieczne platnosci + P24 w jednym rzedzie */
.izi-f-pay{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:14px;
}

.izi-f-paylbl{
  font-size:14px;
  font-weight:700;
  color:#16324a;
}

.izi-f-pay a{
  display:inline-flex;
}

.izi-f-pay img{
  width:96px;
  height:32px;
  display:block;
}

/* Nagłówek nad boksem partnerów — styl jak tytuły kolumn */
.izi-f .izi-f-pttl{
  margin:0 0 12px;
  padding:0;
  border:0;
  background:transparent;
  font-family:'Poppins',sans-serif;
  font-size:15px;
  font-weight:800;
  color:#030f3b;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1.3;
}

/* --- Pasek partnerów: biały zaokrąglony kontener na szarym tle,
       flex bez zawijania = 10 logotypów zawsze w jednym rzędzie --- */
.izi-f-partners{
  background:#fff;
  border-radius:20px;
  padding:14px 22px;
  margin:6px 0 30px;
  box-sizing:border-box;
  box-shadow:0 2px 12px rgba(17,24,39,.05);
}

.izi-f .sk-footer-partners{
  margin:0;
  float:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.izi-f .sk-footer-partners a{
  display:block;
  width:auto;
  flex:0 1 64px;
  min-width:0;
}

.izi-f .sk-footer-partners a>span{
  display:block;
  width:100%;
  max-width:64px;
  height:auto;
  aspect-ratio:1/1;
  background:#fff;
  border:1px solid #f0f2f4;
  box-shadow:0 2px 10px rgba(17,24,39,.08);
}

.izi-f .sk-footer-partners a>span>img{
  filter:none;
}

/* --- Dolny pasek: pełna szerokość strony --- */
.izi-f .sk-footer-bottom{
  background:#fff;
  border-top:0;
  padding:22px 0;
}

.izi-f .sk-footer-bottom .sk-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.izi-f .sk-footer-bottom .sk-row>span{
  float:none;
  position:relative;
  height:auto;
  margin:0;
  padding-left:16px;
  font-size:13.5px;
  line-height:1.5;
  color:#5b7385;
}

.izi-f .sk-footer-bottom .sk-row>span:before{
  content:'';
  position:absolute;
  left:0;
  top:2px;
  bottom:2px;
  width:3px;
  border-radius:2px;
  background:#d7dee5;
}

.izi-f .sk-footer-bottom .ksi{
  color:#5b7385;
  font-size:13.5px;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:6px;
}

/* --- Responsywność --- */
@media all and ( max-width: 1024px ){

  .izi-f .sk-footer-columns-cnt{
    padding:34px 0 20px;
  }

  .izi-f .sk-footer-columns{
    grid-template-columns:1fr 1fr;
    grid-gap:28px 24px;
  }

}

/* MOBILE: operatorzy w JEDNYM rzedzie, scroll poziomy (scrollbar schowany
   jak w karuzelach home), auto-przewijanie robi skrypt w inc_bodyBottom.php.
   2026-07-10: boks nizszy o ~15% (96->82px), kolka 58px z luzem 12px. */
@media all and ( max-width: 760px ){

  .izi-f-partners{
    padding:12px 14px;
  }

  .izi-f .sk-footer-partners{
    flex-wrap:nowrap;
    justify-content:flex-start;
    gap:12px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .izi-f .sk-footer-partners::-webkit-scrollbar{
    display:none;
  }

  .izi-f .sk-footer-partners a{
    flex:0 0 58px;
    margin:0;
  }

  /* bez cienia na kolkach — scroller go obcinal i wygladalo na uciete;
     zostaje sama obwodka */
  .izi-f .sk-footer-partners a>span{
    max-width:58px;
    box-shadow:none;
    border-color:#e8ebee;
  }

}

@media all and ( max-width: 560px ){

  .izi-f .sk-footer-columns{
    display:block;
  }

  .izi-f .sk-footer-column{
    margin-bottom:26px;
  }

  .izi-f-card{
    padding:22px 18px;
  }

  .izi-f-partners{
    border-radius:16px;
    padding:12px 14px;
    margin-bottom:18px;
  }

  .izi-f .sk-footer-bottom .sk-row{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }

  .izi-f .sk-footer-bottom .sk-row>span,
  .izi-f .sk-footer-bottom .ksi{
    width:auto;
    text-align:left;
  }

}

/* ══ MOBILE (≤760px), 2026-07-09: rowne odstepy wokol boksu touroperatorow.
   Nad boksem bylo 52px (26 margines ostatniej kolumny + 20 padding kontenera + 6 wlasny),
   pod boksem 18px — wyrownujemy: nad = 18 = pod. ══ */
@media all and ( max-width: 760px ){
  .izi-f .sk-footer-columns-cnt{ padding-bottom:0; }
  .izi-f .sk-footer-column:last-child{ margin-bottom:0; }
  /* szpara nad naglowkiem Nasi partnerzy (karta konczy sie bez marginesu),
     odstep naglowek->boks daje margin-bottom naglowka */
  .izi-f .izi-f-pttl{ margin-top:18px; }
  .izi-f .izi-f-partners{ margin-top:0; }
}
