


/* *************************************************************************************************
  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+ */
}


/* ===== IZI KONTAKT ==================================================
   Ładowany TYLKO na kontakt.html (addCss w view/ucs/cms/subpageTemplate/contact/default/incTemplate.php).
   Hero z tłem home (top-bg.webp), kafle kontaktowe + karta mapy z CTA.
   Dane z rejestru KSI „Kontakt" — tu tylko wygląd.
=================================================================== */

/* stary wodny baner podstron out — mamy własny hero */
body > .top-shared{ display:none !important; }

.izi-kt, .izi-kt *{ box-sizing:border-box; }

/* ── HERO ── */
.izi-kt-hero{
  width:100%;
  min-height:236px;
  background-image:url(/skin/img/top-bg.webp);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  display:flex;
  align-items:center;
}
.izi-kt-hero-inner{
  width:100%;
  max-width:1170px;
  margin:0 auto;
  padding:30px 15px 34px;
  color:#fff;
  text-shadow:0 1px 14px rgba(0,0,0,.25);
  font-family:'Poppins', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}
.izi-kt-lead{
  margin:0 0 6px; padding:0;
  font-weight:600; font-size:19px; line-height:1.25;
}
.izi-kt-h1{
  margin:0; padding:0; text-align:left; background:none; box-shadow:none;
  color:#fff; font-weight:800; font-size:52px; line-height:1.05; letter-spacing:-1.5px;
  font-family:'Poppins', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}
.izi-kt-dot{ color:#ffd400; }

/* ── TREŚĆ ── */
.izi-kt-main{
  width:100%;
  background:#f3f4f6;
  padding:26px 0 70px;
}
.izi-kt-inner{
  max-width:1170px;
  margin:0 auto;
  padding:0 15px;
}

.izi-kt-grid{
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:18px;
  align-items:start;
}

.izi-kt-card{
  background:#fff; border-radius:22px;
  box-shadow:0 5px 20px rgba(17,24,39,.07);
  padding:24px 26px 26px;
}
.izi-kt-sec{
  margin:0 0 16px; padding:0; max-width:none;
  font-family:'Poppins', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  font-weight:800; font-size:22px; letter-spacing:-.4px; color:#111827;
}

/* ── kafle kontaktowe ── */
.izi-kt-tile{
  display:flex; align-items:flex-start; gap:15px;
  background:#f7f8fa; border:1px solid #eceef1; border-radius:16px;
  padding:15px 17px; margin:0 0 12px;
  text-decoration:none; color:#111827;
  transition:all 180ms ease;
}
a.izi-kt-tile:hover{ background:#f3f4f6; border-color:#d8dbdf; }
.izi-kt-tile-static{ cursor:default; }
.izi-kt-ico{
  flex:0 0 44px; width:44px; height:44px; border-radius:999px;
  background:#fff; border:1px solid #e5e7eb; color:#374151;
  display:flex; align-items:center; justify-content:center;
}
.izi-kt-ico svg{ width:22px; height:22px; }
.izi-kt-tile-txt{ display:flex; flex-direction:column; gap:2px; min-width:0; padding-top:2px; }
.izi-kt-tile-txt small{ font-size:12.5px; font-weight:600; color:#6b7280; letter-spacing:.02em; }
.izi-kt-tile-txt b{ font-size:16px; font-weight:800; color:#111827; line-height:1.3; overflow-wrap:anywhere; }
.izi-kt-big{ font-size:23px !important; letter-spacing:-.3px; }
.izi-kt-mut{ font-size:13px; color:#6b7280; line-height:1.5; }

/* godziny: HTML z rejestru (ul/li + sup) — wyrównanie do naszego kafla */
.izi-kt-hours{ font-size:15.5px !important; font-weight:700 !important; }
.izi-kt-hours ul{ margin:0 !important; padding:0 !important; list-style:none !important; max-width:none !important; }
.izi-kt-hours li{ margin:0 !important; }
.izi-kt-hours sup{ font-size:10px; }

/* ── karta mapy ── */
.izi-kt-map{
  width:100%; height:340px;
  border-radius:16px; overflow:hidden;
  background:#e9edf1;
}
.izi-kt-map .leaflet-container{ border-radius:16px; }
.izi-kt-maplink{
  display:inline-block; margin:12px 2px 0;
  font-size:13.5px; font-weight:700; color:#374151; text-decoration:underline;
}
.izi-kt-maplink:hover{ color:#111827; }
.izi-kt-btn{
  display:block; width:100%; margin-top:16px;
  background:#ffd400; color:#1f2937; border-radius:16px;
  font-weight:800; font-size:17px; text-align:center; text-decoration:none;
  padding:17px 26px; cursor:pointer; transition:all 180ms ease;
}
.izi-kt-btn:hover{ background:#ffe24d; color:#1f2937; }

/* galeria biura (fancybox) */
.izi-kt-gallery{ margin-top:18px; display:flex; flex-wrap:wrap; gap:10px; }
.izi-kt-galimg img{ border-radius:12px; display:block; }

/* ── karta „Kim jesteśmy" ── */
.izi-kt-about{ margin-bottom:18px; }
.izi-kt-about-lead{
  margin:0 0 16px !important; max-width:none !important;
  font-size:17px; line-height:1.6; color:#374151;
}
.izi-kt-about-lead b{ font-size:19px; color:#111827; }
.izi-kt-about-vals{ display:flex; flex-wrap:wrap; gap:10px; margin:0 0 16px; }
.izi-kt-val{
  display:inline-flex; align-items:center; gap:8px;
  background:#f3f4f6; border-radius:999px; padding:10px 17px;
  font-size:14px; font-weight:700; color:#374151; white-space:nowrap;
}
.izi-kt-val::before{ content:'\2713'; font-weight:800; color:#0f6e56; }
.izi-kt-about-p{
  margin:0 0 12px !important; max-width:none !important;
  font-size:15.5px; line-height:1.65; color:#4b5563;
}
.izi-kt-about-p b{ color:#111827; }
.izi-kt-about-sign{
  margin:18px 0 0 !important; max-width:none !important;
  font-family:'Poppins', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  font-weight:800; font-size:20px; letter-spacing:-.3px; color:#111827;
}
.izi-kt-sun{ font-size:21px; }

/* ── formularz „Napisz do nas" = 1:1 wygląd „Zapytaj o ofertę" ──
   Reguły skopiowane ze skin/izi-reservation.css (sekcje card/fields/consents/btn-primary),
   scoped pod #izi-rf — arkusza rezerwacji NIE ładujemy (chowa globalny header/stopkę). */
#izi-rf{
  --izi-accent:#FDD835;
  --izi-teal:#00897b;
  --izi-teal-dk:#00695c;
  --izi-ink:#1f2937;
  --izi-radius:10px;
  --izi-radius-lg:16px;
  --izi-shadow-sm:0 4px 14px rgba(17,24,39,.07);
  --izi-line:#e5e7eb;
  display:block; margin-top:18px;
}
#izi-rf .card{ background:#fff; border:1px solid #eef0f2; border-radius:var(--izi-radius-lg); box-shadow:var(--izi-shadow-sm); padding:30px 32px; }
#izi-rf .card + .card{ margin-top:18px; }
#izi-rf .card .sub{ color:#6b7280; font-size:14px; margin:0 0 22px; max-width:none; }
#izi-rf .izi-form-head{ font-size:26px; font-weight:800; letter-spacing:-.4px; margin:2px 0 26px; color:var(--izi-ink); }
#izi-rf .row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
#izi-rf .field{ margin-bottom:20px; }
#izi-rf .field label{ display:block; font-size:13px; font-weight:700; color:#374151; margin:0 0 7px; padding:0; }
#izi-rf .field input, #izi-rf .field select, #izi-rf .field textarea{
  width:100%; border:1px solid var(--izi-line); border-radius:var(--izi-radius); padding:14px 15px;
  font-size:15px; color:var(--izi-ink); background:#fff; font-family:inherit; transition:border-color .15s, box-shadow .15s, background .15s; }
#izi-rf .field input:hover, #izi-rf .field select:hover, #izi-rf .field textarea:hover{ border-color:#b9c1cc; }
#izi-rf .field input:focus, #izi-rf .field select:focus, #izi-rf .field textarea:focus{
  outline:none; border-color:var(--izi-teal); box-shadow:0 0 0 3px rgba(0,137,123,.16); background:#f5fcfb; }
#izi-rf .field input::placeholder, #izi-rf .field textarea::placeholder{ color:#b6bcc4; }
#izi-rf .field textarea{ resize:vertical; line-height:1.5; }
#izi-rf .field input.izi-input-bad, #izi-rf .field textarea.izi-input-bad{ border-color:#e53935 !important; box-shadow:0 0 0 3px rgba(229,57,53,.14); }
#izi-rf .izi-err{ display:block; color:#c62828; font-size:12px; font-weight:600; margin-top:6px; }
#izi-rf .consents{ margin-top:6px; }
#izi-rf .consent{ display:flex; gap:10px; align-items:flex-start; padding:11px 12px; margin:2px -12px; border-radius:10px; font-size:13px; color:#4b5563; line-height:1.55; cursor:pointer; transition:background .15s; }
#izi-rf .consent:hover{ background:#f4f6f8; }
#izi-rf .consent:focus-within{ background:#eef9f7; }
#izi-rf .consent:has(input:checked){ background:#eafaf7; }
#izi-rf .consent input{
  -webkit-appearance:none; appearance:none; margin-top:1px; width:18px; height:18px; flex:0 0 auto;
  border:1.5px solid #c3cad3; border-radius:4px; background:#fff center/12px 12px no-repeat; cursor:pointer;
  transition:border-color .15s, background-color .15s; }
#izi-rf .consent input:checked{
  background-color:var(--izi-teal); border-color:var(--izi-teal);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); }
#izi-rf .consent.req-consent input:not(:checked){ border-color:#e39a9a; box-shadow:0 0 0 3px rgba(229,57,53,.08); }
#izi-rf .consent.izi-consent-bad{ background:#fdecea; }
#izi-rf .consent.izi-consent-bad span{ color:#c62828; }
#izi-rf .consent.izi-consent-bad input{ border-color:#e53935; box-shadow:0 0 0 3px rgba(229,57,53,.22); }
#izi-rf .req{ color:#ef4444; }
#izi-rf .actions{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:20px; }
#izi-rf .btn-primary{ display:inline-flex; align-items:center; gap:10px; background:var(--izi-accent); color:#1f2937; border:none;
  border-radius:var(--izi-radius); padding:14px 28px; font-size:16px; font-weight:800; cursor:pointer; box-shadow:var(--izi-shadow-sm); transition:background .15s; }
#izi-rf .btn-primary:hover{ background:#ffe15c; }
@media(max-width:680px){
  #izi-rf .card{ padding:22px 16px; }
  #izi-rf .izi-form-head{ font-size:clamp(16px, 5vw, 22px); letter-spacing:-.3px; margin:2px 0 18px; }
  #izi-rf .field input, #izi-rf .field select, #izi-rf .field textarea{ font-size:16px; }
  #izi-rf .actions{ flex-direction:column-reverse; align-items:stretch; text-align:center; }
  #izi-rf .btn-primary{ justify-content:center; }
}
@media(max-width:520px){ #izi-rf .row{ grid-template-columns:1fr; } }

/* honeypot: pole niewidoczne dla ludzi (boty wypełniają) */
.izi-kt-hp{ position:absolute !important; left:-6000px !important; top:auto !important; width:1px; height:1px; overflow:hidden; }

/* podziękowanie po wysyłce */
#izi-rf .izi-kt-thanks{ display:none; margin-top:18px; text-align:center; padding:46px 24px 44px; }
.izi-kt-thanks-ico{
  width:74px; height:74px; margin:0 auto 16px; border-radius:999px;
  background:#e3f7ef; color:#0f6e56; font-size:34px; font-weight:800;
  display:flex; align-items:center; justify-content:center;
}
.izi-kt-thanks-t{
  font-family:'Poppins', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  font-weight:800; font-size:24px; letter-spacing:-.4px; color:#111827; margin-bottom:8px;
}
.izi-kt-thanks-s{ font-size:15px; color:#6b7280; line-height:1.55; }

/* ── telefon ── */
@media all and (max-width:900px){
  .izi-kt-grid{ grid-template-columns:1fr; }
}
@media all and (max-width:820px){
  .izi-kt-hero{ min-height:168px; }
  .izi-kt-hero-inner{ padding:24px 18px 26px; }
  .izi-kt-lead{ font-size:14px; margin-bottom:3px; }
  .izi-kt-h1{ font-size:34px; letter-spacing:-1px; }
  .izi-kt-card{ padding:18px 15px 20px; border-radius:18px; }
  .izi-kt-sec{ font-size:19px; }
  .izi-kt-map{ height:260px; }
  .izi-kt-about-lead{ font-size:16px; }
  .izi-kt-about-lead b{ font-size:17.5px; }
  .izi-kt-about-sign{ font-size:18px; }
}

/* miejsce na globalny dolny pasek zakładek (telefon) */
@media all and (max-width:1024px){
  .izi-kt-main{ padding-bottom:130px; }
}




.classCmsSubpageTemplateContact_default_list {
  padding: 10px 30px;
}

.classCmsSubpageTemplateContact_default_list  a{
  color:#800080 !important;
}

.classCmsSubpageTemplateContact_default_list  a:hover{
  opacity:0.6;
}

.classCmsSubpageTemplateContact_default_list li {
  margin: 0px;
  padding: 0px;
}

.classCmsSubpageTemplateContact_default_gg_list {
  padding: 10px 10px;
}

.classCmsSubpageTemplateContact_default_gg_list li {
  margin: 0px;
  padding: 0px;
  list-style: none;
}


.classCmsSubpageTemplateContact_default_button{
  padding:10px 20px;
  text-align:right;  
  font-weight:bold;  
  color:#fff;
  background: var(--color-btn-action-bg);
  color: var(--color-btn-action-font);
  transition:var(--default-transition);
  border-radius:var(--default-radius);
}

.classCmsSubpageTemplateContact_default_button:hover{
  background: var(--color-btn-action-bg-hv);
  color: var(--color-btn-action-font-hv);

}


.classCmsSubpageTemplateContact_default_title * {
  color:#666;
  padding-top:10px;
  padding-bottom:20px;
  font-size:22px;
}


@media all and (min-width: 880px) {
  .classCmsSubpageTemplateContact_default_column2 {
    float: left; 
    width: calc(100% - 480px); 
    margin-left: 30px;
  }

  .classCmsSubpageTemplateContact_default_column1 {
    float: left; 
    width: 450px;
  }
}


.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; }

/* IZI 10.10 MENU Z KRAJAMI (izi-menu-kraje.php): rozwijane listy pod "Wszystkie kierunki", "Hotele", "Pogoda" - ten sam jezyk co lista
   "Kalendarz ofert" wyzej (biala karta, cien, hover #f1f5fa). Otwiera najechanie albo klawiatura (focus-within); nazwa pozycji zostaje
   zwyklym linkiem do strony zbiorczej. Strzalka przy kazdej pozycji z lista (takze "Kalendarz ofert"). */
.izi-hd-main #sk-menu-top > li.izi-mm-li{ position:relative; }
/* 6 pozycji + strzalki + przycisk "Panel klienta" w pasie 1168 px: boczny odstep pozycji 12 px zamiast 13 (zmierzone: ~60 px luzu do przycisku) */
@media all and (min-width:1201px){ .izi-hd-main #sk-menu-top > li > a{ padding:9px 12px !important; } }
.izi-hd-main #sk-menu-top > li > a.izi-mm-a::after,
.izi-hd-main #sk-menu-top > li > a.menu-main-navigation-has-sub::after{ content:''; display:inline-block; width:6px; height:6px; margin-left:3px; border-right:1.8px solid currentColor; border-bottom:1.8px solid currentColor; transform:translateY(-3px) rotate(45deg); opacity:.5; transition:transform .15s ease; }
.izi-hd-main #sk-menu-top > li:hover > a.izi-mm-a::after,
.izi-hd-main #sk-menu-top > li:hover > a.menu-main-navigation-has-sub::after{ transform:translateY(0) rotate(225deg); }
.izi-mm{ position:absolute; left:0; top:100%; z-index:9999; padding-top:10px; visibility:hidden; opacity:0; transform:translateY(4px); pointer-events:none; transition:opacity .14s ease, transform .14s ease, visibility 0s linear .14s; }
.izi-mm.izi-mm-r{ left:auto; right:0; }
.izi-hd-main #sk-menu-top > li.izi-mm-li:hover > .izi-mm,
.izi-hd-main #sk-menu-top > li.izi-mm-li:focus-within > .izi-mm{ visibility:visible; opacity:1; transform:none; pointer-events:auto; transition:opacity .14s ease .09s, transform .14s ease .09s, visibility 0s linear .09s; }
.izi-mm-in{ background:#fff; border:1px solid #eef1f6; border-radius:14px; box-shadow:0 14px 34px -12px rgba(11,27,59,.3); padding:12px 10px 8px; width:max-content; cursor:default; }
.izi-mm-h{ font-size:11.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#8a94a6; padding:2px 14px 8px; line-height:1.3; }
.izi-mm-l{ list-style:none !important; margin:0 !important; padding:0 !important; display:grid; grid-auto-flow:column; grid-template-rows:repeat(var(--izi-mm-w,4),auto); grid-auto-columns:max-content; column-gap:6px; }
.izi-mm-l > li{ margin:0 !important; padding:0 !important; float:none !important; height:auto !important; }
.izi-mm-l > li > a{ display:block; padding:9px 14px; border-radius:9px; color:#0B1B3B !important; font-weight:500; font-size:14.5px; line-height:1.3; white-space:nowrap; text-decoration:none; }
.izi-mm-l > li > a:hover{ background:#f1f5fa; text-decoration:none; }
.izi-mm-all{ display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:8px; padding:11px 14px 9px; border-top:1px solid #f2f5f9; color:#0B1B3B !important; font-weight:700; font-size:14.5px; line-height:1.3; text-decoration:none; border-radius:0 0 9px 9px; }
.izi-mm-all:hover{ text-decoration:none; color:#0B1B3B !important; }
.izi-mm-all span{ display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:#ffd400; color:#0B1B3B; font-size:15px; line-height:1; font-weight:700; transition:transform .15s ease; }
.izi-mm-all:hover span{ transform:translateX(3px); }
/* 14.10 pozycja "Wiecej" (izi_mk_wiecej): krotka lista czterech linkow (Pogoda, Newsy, Opinie klientow, O nas) */
.izi-mm-in.izi-mm-1k{ padding-top:10px; padding-bottom:10px; min-width:210px; }
.izi-mm-1k .izi-mm-l > li > a{ font-weight:600; }
/* 14.10 trzeci poziom (user: "dopiero jak na pogode najade, to mam te wszystkie linki krajow"): lista krajow pogody wysuwa sie w LEWO od listy "Wiecej"
   (ta stoi na prawym koncu belki, z prawej nie ma miejsca). Punkt odniesienia = .izi-mm (position:absolute), gora rowna z biala karta (padding-top 10 px),
   przezroczysty margines 6 px laczy obie karty, zeby lista nie znikala w drodze myszki. Strzalka w lewo przy pozycji = "tu jest wiecej". */
.izi-mm-sub{ position:absolute; right:100%; top:10px; padding-right:6px; z-index:1; visibility:hidden; opacity:0; transform:translateX(4px); pointer-events:none; transition:opacity .14s ease, transform .14s ease, visibility 0s linear .14s; }
.izi-mm-l > li.izi-mm-ma:hover > .izi-mm-sub,
.izi-mm-l > li.izi-mm-ma:focus-within > .izi-mm-sub{ visibility:visible; opacity:1; transform:none; pointer-events:auto; transition:opacity .14s ease .09s, transform .14s ease .09s, visibility 0s linear .09s; }
.izi-mm-l > li.izi-mm-ma > a{ position:relative; }
.izi-mm-l > li.izi-mm-ma > a::before{ content:''; position:absolute; left:3px; top:50%; width:5px; height:5px; margin-top:-3px; border-left:1.8px solid currentColor; border-bottom:1.8px solid currentColor; transform:rotate(45deg); opacity:.45; }
.izi-mm-l > li.izi-mm-ma:hover > a{ background:#f1f5fa; }
.izi-mm-1k .izi-mm-sub .izi-mm-l > li > a{ font-weight:500; }

/* IZI 10.10 NAPRAWA 1171-1200 px (znalezione przy tescie menu z krajami; na prodzie od dawna, np. iPad Air poziomo = 1180 px):
   rdzen KSI ponizej 1201 px robi z menu liste telefonu (position:fixed, opacity:0, pozycje jedna pod druga), a nasza regula wyzej
   wymusza display:flex - wychodzilo menu NIEWIDOCZNE, ale klikalne: przezroczyste linki "Last Minute / All inclusive / ..." lezaly
   na zdjeciu i wyszukiwarce (x 190-1020, y 87-360) i przechwytywaly klikniecia; do tego hamburger-kropka 5x5 px.
   Ponizej 1171 px menu jest schowane w calosci (uklad telefonu), wiec w tym waskim pasie przywracamy zwykle menu komputera,
   tylko odrobine ciasniejsze, zeby 6 pozycji zmiescilo sie w jednym rzedzie. */
@media all and (min-width:1171px) and (max-width:1200px){
  .izi-hd-main #sk-menu-top{ position:static !important; opacity:1 !important; height:auto !important; max-height:none !important; background:transparent !important; border:0 !important; box-shadow:none !important; line-height:normal !important; z-index:auto !important; animation:none !important; transition:none !important; gap:0; flex-wrap:nowrap; }
  .izi-hd-main #sk-menu-top > li{ display:block !important; width:auto !important; border-bottom:0 !important; text-align:left; }
  .izi-hd-main #sk-menu-top > li > a{ display:block; width:auto !important; height:auto !important; line-height:normal !important; padding:9px 9px !important; font-size:14.5px !important; white-space:nowrap; }
  .izi-hd-main #sk-menu-top > li > a.menu-main-navigation-has-sub{ background-image:none !important; padding-right:9px !important; }
  .izi-hd-main .menu-main-navigation-sub{ position:absolute !important; width:auto !important; }
  .izi-hd-main #sk-menu-top-btn{ display:none !important; }
}
/* IZI 10.10 NAPRAWA 1171-1320 px (j.w., na prodzie od dawna): rdzen KSI ponizej 1321 px zweza przycisk panelu do ikony z tla
   (width:0, napis display:none), a tlo-ikone zdjelismy - zostawal PUSTY KWADRAT 38 px zamiast "Panel klienta" (m.in. laptopy 1280 px).
   Uklad telefonu (<=1170 px) ma wlasne reguly nizej. */
@media all and (min-width:1171px){
  .izi-hd-main .izi-hd-panel{ width:auto !important; height:auto !important; }
  .izi-hd-main .izi-hd-panel > .izi-hd-panel-tx{ display:inline !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; }
}



/* IZI FEED (01.10.2026): listing na TELEFONIE jak w LAB Pogadaj (PLAN-POGADAJ-0922.md, decyzje usera 25-30.09, przeniesienie 01.10).
   Wlacza sie TYLKO klasami z izi-feed-lib.php (flaga skin/izi-feed.on, telefon): html.izi-feed-belka = sticky belka + pastylka Dopasuj
   (listing I strona glowna, user 01.10), html.izi-feed = reszta feedu (tylko listing). Komputer bez zmian.
   Zrodlo wygladu = pogadaj/pogadaj.css (LAB), tu 1:1 z przemianowanymi klasami: pg-lista-html/pg-pelny -> izi-feed, pg-snap -> izf-snap,
   pg-ciasno -> izf-ciasno, pg-por-* -> izf-por-*, pg-wideo -> izf-wideo, --pg-* -> --izf-*. Co NIE przeszlo: Widok -> / v, pasy, Dokad/Kiedy, glos.
   ZASADA: na dole tylko pastylka Dopasuj; u gory sticky belka (Kontakt | Ulubione | konto | Menu); karta = ekran; snap karta po karcie. */
:root { --izf-tab: 64px; --izf-hd: 58px; --izf-extra: 33px; --izf-navy: #030f3b; --izf-navy2: #16324a; }   /* domyslne = zmierzone na 375x812 (pastylka 52+12, belka 58, +10% = 33): pierwsze malowanie bez skoku, JS tylko doprecyzowuje (user 01.10: film sie rozszerzal) */

/* GORNA BELKA: Kontakt | Ulubione | konto | Menu (serce i kropki przeniesione z dolnego paska; zywe wezly naglowka strony) */
header.izi-hd .izf-hd-ulu, header.izi-hd .izf-hd-menu { position: relative; border: 0; background: none; font: inherit; color: inherit; cursor: pointer; }
header.izi-hd .izf-hd-cnt { position: absolute; top: -4px; right: -2px; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 999px; background: #e11d48; color: #fff; font-size: 10px; font-weight: 800; font-style: normal; line-height: 16px; text-align: center; }
html.izi-feed-belka header.izi-hd .izi-hd-main .izi-hd-inner { gap: 10px !important; }   /* logo w oryginalnej wielkosci (user 23.09: na prawdziwym telefonie miejsca jest duzo); tylko odstepy ciasniejsze */
html.izi-feed-belka header.izi-hd { position: sticky !important; top: 0 !important; z-index: 40 !important; }   /* belka zostaje u gory przy przewijaniu (user 29.09); karta zaczyna sie od razu pod nia, bez szarej szpary (v144) */

/* SCROLLER = BODY (v110): okno stale, pasek Safari sie nie zwija, snap co do piksela; flow-root domyka floaty KSI (body mialo 112 px) */
html.izi-feed { height: 100vh; height: 100dvh; overflow: hidden !important; }
html.izi-feed body { display: flow-root !important; height: 100vh !important; height: 100dvh !important; min-height: 0 !important; margin: 0 !important; overflow: hidden auto !important; -webkit-overflow-scrolling: touch; }   /* v110: przewija BODY, nie dokument - pasek Safari sie nie zwija, okno stale, snap co do piksela (user 25.09 wideo) */
html.izi-feed, html.izi-feed body { background: #f3f4f6 !important; }   /* v126: szare tlo pod kartami (user 25.09, powrot do szarego) */   /* body listingu mial 112 px (floaty) i sticky konczyl sie po 112 px; flow-root domyka floaty */

/* SNAP (v110-v157): jedna karta na gest, karta rowna do DOLU nad pastylka; punkt startowy u gory; koniec za ostatnia karta; ciasno = rownaj do gory */
html.izi-feed.izf-snap body { scroll-snap-type: y mandatory; scroll-padding-top: 0; scroll-padding-bottom: calc(var(--izf-tab, 56px) - var(--izf-extra, 0px)); }   /* v145: karta wyzsza o --izf-extra, jej dol wchodzi pod lewitujaca pastylke; gora karty dalej rowno pod gornym menu */
.izf-snap-start { height: 1px; margin-bottom: -1px; }
html.izi-feed.izf-snap .izf-snap-start { scroll-snap-align: start; }   /* gora strony = punkt snapu: pierwszy gest z gory zatrzymuje sie na pierwszej karcie, nie po drodze */
html.izi-feed.izf-snap .sk-list-offer { scroll-snap-align: end; scroll-snap-stop: always; }   /* karta rowna do DOLU (nad dolnym paskiem): „Sprawdz cene" zawsze nad menu, luz (pasek Safari) wychodzi u gory (user 25.09) */
html.izi-feed.izf-snap .izf-snap-koniec { scroll-snap-align: start; }
/* v150 (Artur, Safari z paskiem adresu + rozmowa): karta wyzsza niz ekran = html.izf-ciasno z JS -> rownaj do GORY pod belka, zdjecie zawsze cale */
html.izi-feed.izf-snap.izf-ciasno body { scroll-padding-top: var(--izf-hd, 58px); }
html.izi-feed.izf-snap.izf-ciasno .sk-list-offer { scroll-snap-align: start; }

/* PELNA KARTA (v100-v161): karta biala r=26 na szarym, 12 px bieli tylko u gory, zdjecie od krawedzi do krawedzi, panel najezdza na zdjecie */
html.izi-feed .sk-list-offer { --izf-reszta: 365px; --izf-foto: calc(100vh - var(--izf-tab) - var(--izf-hd, 58px) - var(--izf-reszta) + var(--izf-extra, 0px)); --izf-foto: max(calc(100dvh - var(--izf-tab) - var(--izf-hd, 58px) - var(--izf-reszta) + var(--izf-extra, 0px)), min(60vw, 45vh));
  width: 100vw !important; max-width: none !important; margin: 0 0 0 calc(50% - 50vw) !important; padding: 12px 0 0 !important; border-radius: 0 0 26px 26px !important; box-shadow: none !important; border: 0 !important; border-bottom: 10px solid #f3f4f6 !important; background: #fff !important; background-clip: padding-box !important; overflow: hidden; }   /* v126 (user 25.09): karta biala z zaobleniem gora i dol na SZARYM tle; nad zdjeciem 8 px bialej krawedzi (zdjecie nizsze o tyle), pod guzikiem biel + szara przerwa 10 px (border, w wysokosci karty) */

html.izi-feed body .sk-list-offer .ui-trips-item-img-cnt { position: relative; overflow: hidden; border-radius: 26px 26px 0 0 !important;   /* v132: wszystko 26 - karta, zdjecie, panel najazdu (user 25.09) */ margin: 0 !important; left: 0 !important; width: 100vw !important; max-width: 100vw !important; height: var(--izf-foto) !important; max-height: none !important; background: #dbe3ec; }
html.izi-feed body .sk-list-offer .ui-trips-item-front, html.izi-feed body .sk-list-offer .ui-trips-item-back { width: 100vw !important; max-width: 100vw !important; left: 0 !important; }   /* v130 (user 25.09): zdjecie od krawedzi do krawedzi, TYLKO u gory biala rama 12 px jak w oryginale KSI (margin-top 12, rogi zdjecia 16, karta 18) */
html.izi-feed .sk-list-offer .ui-trips-item-front, html.izi-feed .sk-list-offer .ui-trips-item-back, html.izi-feed .sk-list-offer .izi-gal-track, html.izi-feed .sk-list-offer .izi-gal-track > *, html.izi-feed .sk-list-offer .ui-trips-item-back > div { height: var(--izf-foto) !important; max-height: none !important; }
html.izi-feed .sk-list-offer .izi-gal-track img, html.izi-feed .sk-list-offer .ui-trips-item-back img { width: 100% !important; height: var(--izf-foto) !important; object-fit: cover !important; }
html.izi-feed .sk-list-offer .izi-gal-dots { z-index: 4 !important; bottom: 40px !important; left: 0 !important; right: 0 !important; width: auto !important; display: flex !important; justify-content: center !important; }
html.izi-feed .sk-list-offer .izi-gal-dots i { width: 10px !important; height: 10px !important; box-shadow: 0 1px 3px rgba(0, 0, 0, .6); }   /* v133: kropki galerii wieksze (7 -> 10 px), ginely na zdjeciu (user 25.09) */
html.izi-feed .sk-list-offer .izi-gal-dots { gap: 7px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-notes { z-index: 5 !important; top: auto !important; right: 14px !important; bottom: 40px !important; left: auto !important; }   /* serce w prawym dolnym rogu zdjecia (user 25.09), nad najazdem panelu */
html.izi-feed .sk-list-offer .sk-list-offer-info-cnt { position: relative; z-index: 4; margin-top: -26px !important; background: #fff; border-radius: 26px 26px 0 0; padding: 18px 16px 6px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-loc { font-size: 13.5px !important; color: #8a97a3 !important; margin: 0 0 2px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-title, html.izi-feed .sk-list-offer .sk-list-offer-title a { font-size: 20px !important; line-height: 1.2 !important; font-weight: 800 !important; color: var(--izf-navy) !important; margin: 0 0 6px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-stars { display: flex !important; gap: 2px; width: auto !important; height: auto !important; margin: 0 0 12px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-stars img { position: static !important; float: none !important; display: block !important; width: 16px !important; height: 15px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-price-grp { padding: 10px 16px 34px !important; }   /* v122: tyle samo powietrza NAD ocena i cena za wszystkich co pod nimi (10 px do guzika); karta wyzsza, zdjecie nizsze o tyle samo (user 25.09) */
html.izi-feed .sk-list-all { padding-bottom: 0 !important; }
html.izi-feed body .sk-list-offer .ui-trips-item-img-cnt { min-height: 0 !important; }   /* v161: KSI ma min-height 233 na kontenerze zdjecia - na niskich ekranach kontener byl wyzszy niz zdjecie w srodku (szary pas pod zdjeciem) */

/* POROWNAJ CENY (v119-v141): biala czesc karty = tor dwoch paneli; przesuw w lewo = lista cena | biuro | termin (edge izi-porownaj) */
html.izi-feed .sk-list-offer .izf-por-wrap { position: relative; z-index: 4; margin-top: -26px; background: #fff; border-radius: 26px 26px 0 0; overflow: hidden; touch-action: pan-y; user-select: none; -webkit-user-select: none; }
html.izi-feed .sk-list-offer .izf-por-tor { display: flex; width: 100%; transform: translate3d(0, 0, 0); will-change: transform; }
html.izi-feed .sk-list-offer .izf-por-p1 { position: relative; flex: 0 0 100%; width: 100%; }
html.izi-feed .sk-list-offer .izf-por-p1 .sk-list-offer-info-cnt { margin-top: 0 !important; border-radius: 0; }
html.izi-feed .sk-list-offer .izf-por-p2 { position: absolute; top: 0; bottom: 0; left: 100%; width: 100%; display: flex; flex-direction: column; background: #fff; font-family: 'Poppins', -apple-system, sans-serif; }
html.izi-feed .izf-por-head { display: flex; align-items: center; gap: 10px; padding: 14px 16px 8px; border-bottom: 1px solid #eef1f4; }
html.izi-feed .izf-por-head > div { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; }
html.izi-feed .izf-por-head strong { display: block; font-size: 20px; line-height: 1.2; font-weight: 800; color: var(--izf-navy); text-transform: uppercase; letter-spacing: -.2px; margin: 1px 0 3px; line-height: 1.2; white-space: nowrap; }   /* jak .sk-list-offer-title na karcie; lamie sie na 2 linie, bo z kropkami po prawej nie miesci sie w jednej (375 px) */
html.izi-feed .izf-por-head b { font-size: 12.5px; font-weight: 700; color: #5b6771; margin-bottom: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; letter-spacing: .1px; }   /* mala nazwa hotelu (user 25.09) */
html.izi-feed .izf-por-head i { font-style: normal; font-size: 12px; color: #8a97a3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.izi-feed .izf-por-lista { position: relative; flex: 1 1 auto; min-height: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior-y: auto; padding: 16px 8px 8px; }   /* powietrze nad pierwszym wierszem: plakietki z karty/najtaniej nie wchodza na kreske naglowka (user 25.09) */   /* przewijana gora-dol; koniec listy + mocniej = nastepna karta (user 25.09) */
html.izi-feed .izf-por-czeka-box { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 0 24px; }
html.izi-feed .izf-por-czeka { width: 38px; height: 38px; border: 3px solid rgba(3, 15, 59, .12); border-top-color: var(--izf-navy); border-radius: 50%; animation: izf-por-spin .8s linear infinite; }
html.izi-feed .izf-por-czeka-box p { margin: 0; text-align: center; font: 600 13.5px/1.35 'Poppins', sans-serif; color: var(--izf-navy); }
@keyframes izf-por-spin { to { transform: rotate(360deg); } }
html.izi-feed .izf-por-w { display: grid; grid-template-columns: 78px 1fr auto; align-items: center; gap: 6px; height: 42px; padding: 0 6px; border-radius: 10px; color: inherit; text-decoration: none; position: relative; -webkit-tap-highlight-color: rgba(3, 15, 59, .08); }
html.izi-feed .izf-por-w + .izf-por-w { border-top: 1px solid #f0f2f5; border-radius: 0; }
html.izi-feed .izf-por-w b { font-size: 15.5px; font-weight: 800; color: #111827; white-space: nowrap; }
html.izi-feed .izf-por-w span { font-size: 13px; font-weight: 600; color: var(--izf-navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.izi-feed .izf-por-w i { font-style: normal; font-size: 12px; color: #5b6771; white-space: nowrap; }   /* caly termin od-do bez roku + noce (user 25.09) */
html.izi-feed .izf-por-w em { position: absolute; right: 8px; top: -7px; font: 700 10px 'Poppins', sans-serif; font-style: normal; color: #fff; background: #0e7c66; border-radius: 999px; padding: 2px 7px; }
html.izi-feed .izf-por-w.izf-por-ta { background: #f6f8fb; }
html.izi-feed .izf-por-w.izf-por-ta::after { content: 'z karty'; position: absolute; left: 8px; top: -7px; font: 700 10px 'Poppins', sans-serif; color: var(--izf-navy2); background: #e8edf5; border-radius: 999px; padding: 2px 7px; }
html.izi-feed .izf-por-w.izf-por-idzie { background: #eef2f8; }
html.izi-feed .izf-por-w.izf-por-idzie i { visibility: hidden; }
html.izi-feed .izf-por-w.izf-por-idzie::before { content: ''; position: absolute; right: 12px; top: 50%; width: 18px; height: 18px; margin-top: -9px; border: 2px solid rgba(3, 15, 59, .15); border-top-color: var(--izf-navy); border-radius: 50%; animation: izf-por-spin .7s linear infinite; }   /* tap = od razu kreci (user 25.09) */
html.izi-feed .izf-por-info { padding: 22px 12px; text-align: center; font-size: 13.5px; color: #5b6771; }
html.izi-feed .sk-list-offer .sk-list-offer-next::after { content: none !important; display: none !important; }   /* bez strzalki na „Sprawdz cene" - sugerowala przesuw (user 25.09) */
html.izi-feed .sk-list-offer .sk-list-offer-next { text-align: center !important; justify-content: center !important; }
html.izi-feed .sk-list-offer .sk-list-offer-next span { margin: 0 auto !important; }
html.izi-feed .izf-por-kropki { position: absolute; right: 16px; top: 26px; z-index: 6; display: flex; gap: 7px; transform: translateY(-50%); pointer-events: none; }
html.izi-feed .izf-por-kropki i { display: block; width: 11px; height: 11px; box-sizing: border-box; border-radius: 50%; border: 2px solid var(--izf-navy); background: transparent; transition: background .2s; }
html.izi-feed .izf-por-kropki i:first-child { background: var(--izf-navy); }
html.izi-feed .izf-por-kropki.izf-por-k2 i:first-child { background: transparent; }
html.izi-feed .izf-por-kropki.izf-por-k2 i:last-child { background: var(--izf-navy); }
html.izi-feed .izf-por-head { padding-right: 48px; }

/* PASTYLKA DOPASUJ (v134-v148): dolny pasek lewituje jako jedna pastylka z lewej, reszta zakladek schowana, bez zoltej kropki */
html.izi-feed-belka #izi-home-tabbar { left: 14px !important; right: 14px !important; bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important; width: auto !important; padding: 0 !important; min-height: 58px !important;
  border: 1px solid rgba(255, 255, 255, .55) !important; border-radius: 29px !important; overflow: hidden; box-shadow: 0 10px 30px rgba(3, 15, 59, .20), 0 1px 3px rgba(3, 15, 59, .10) !important; }
html.izi-feed-belka #izi-home-tabbar .izi-tab { padding: 9px 1px !important; }
html.izi-feed-belka #izi-home-tabbar { right: auto !important; width: auto !important; min-height: 52px !important; border-radius: 26px !important; }
html.izi-feed-belka #izi-home-tabbar #izi-tab-sld, html.izi-feed-belka #izi-home-tabbar .izi-tab:not([data-act="dopasuj"]) { display: none !important; }
html.izi-feed-belka #izi-home-tabbar .izi-tab[data-act="dopasuj"] { flex: 0 0 auto !important; flex-direction: row !important; gap: 9px !important; padding: 0 20px 0 16px !important; min-width: 0 !important; width: auto !important; }
html.izi-feed-belka #izi-home-tabbar .izi-tab[data-act="dopasuj"] .izi-tab-lbl { font-size: 15px !important; font-weight: 700 !important; line-height: 1 !important; }
html.izi-feed-belka body #izi-home-tabbar .izi-tab .izi-tab-dot, html.izi-feed-belka body #izi-home-tabbar .izi-tab .izi-tab-dot.on { display: none !important; visibility: hidden !important; opacity: 0 !important; }   /* v148 (user 29.09): bez zoltej kropki - na dole jest tylko jeden guzik */

/* WIDEO W PIERWSZYM KAFLU (26.09-01.10): film z rejestru (data-izi-wid z mapy _wid) nad zdjeciem w slocie galerii; widac, gdy gra */
html.izi-feed .izi-gal-slot.izf-wideo-slot { position: relative; }
html.izi-feed .izf-wideo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; opacity: 0; transition: opacity .35s ease; }
html.izi-feed .izf-wideo.izf-wideo-gra { opacity: 1; }
/* OZNACZENIE AI (03.10, AI Act art. 50 od 02.08.2026: animacja prawdziwego miejsca = trzeba ujawnic; user: „najmniej rzucajace sie w oczy"):
   male „AI" po lewej na linii kropek galerii i serduszka (dolne 26 px slotu zaslania biala czesc karty, kropki/serce koncza sie 40 px nad dolem);
   widac tylko razem z filmem, nie lapie klikniec */
html.izi-feed .izf-ai { position: absolute; left: 14px; bottom: 44px; z-index: 3; padding: 0 5px; border-radius: 4px; background: rgba(15, 23, 42, .32); color: rgba(255, 255, 255, .88); font: 600 9px/15px -apple-system, "Segoe UI", Roboto, sans-serif; letter-spacing: .05em; pointer-events: none; opacity: 0; transition: opacity .35s ease; }
html.izi-feed .izf-wideo.izf-wideo-gra ~ .izf-ai { opacity: 1; }

/* WASKIE EKRANY (v157): <= 359 px (iPhone SE, male Androidy) */
@media (max-width: 359px) {
  html.izi-feed-belka header.izi-hd .izi-hd-main .izi-hd-inner { gap: 6px !important; padding: 0 10px !important; }
  html.izi-feed-belka header.izi-hd .izi-hd-main .logo { flex: 0 1 112px !important; max-width: 112px; min-width: 0; }
  html.izi-feed-belka header.izi-hd .izi-hd-main .logo img, html.izi-feed-belka header.izi-hd .izi-hd-main .logo .sk-isecond { max-width: 100% !important; width: 100% !important; height: auto !important; }
  html.izi-feed-belka header.izi-hd .izi-hd-icotx, html.izi-feed-belka header.izi-hd .izi-hd-panel-txm { font-size: 10px !important; }
  html.izi-feed-belka header.izi-hd .izi-hd-tel, html.izi-feed-belka header.izi-hd .izf-hd-ulu, html.izi-feed-belka header.izi-hd .izi-hd-panel, html.izi-feed-belka header.izi-hd .izf-hd-menu { margin-left: -4px !important; }
  html.izi-feed .sk-list-offer .sk-list-offer-info-grp > div { font-size: 12.5px !important; }   /* 320 px: data „11.04 - 18.04.2027" przy 13 px miala 141 px w kolumnie 137 (zmierzone 01.10) */
  html.izi-feed .sk-list-offer .sk-list-offer-title, html.izi-feed .sk-list-offer .sk-list-offer-title a { font-size: 18px !important; }
  html.izi-feed .izf-por-w { grid-template-columns: 68px 1fr auto; gap: 5px; padding: 0 4px; }
  html.izi-feed .izf-por-w b { font-size: 14px; }
  html.izi-feed .izf-por-w span { font-size: 12px; }
  html.izi-feed .izf-por-w i { font-size: 11px; }
  html.izi-feed .izf-por-head strong { font-size: 18px; }
}

/* KIERUNEK WIDZIANY RAZ (user 01.10): drugi raz na tym samym kierunku = bez pasa Najtansze. Karta kraju/regionu (Wczasy / Turcja + menu
   Oferty | Regiony | Poznaj | Info | Pogoda | FAQ) ZOSTAJE - to nawigacja do bloku na dole, opis i tak zwiniety w „w pigulce" (user 01.10 po probie). */
html.izi-feed.izi-feed-znane .izi-mk { display: none !important; }

/* DOLNY PASEK (user 01.10): tylko na listingu (pastylka Dopasuj); glowna, hotel i reszta = sama gorna belka */
html.izi-feed-belka:not(.izi-feed) #izi-home-tabbar { display: none !important; }
/* KROKI REZERWACJI (user 01.10: „same kroki, nic mnie nie rozprasza"): ani belki, ani paska, ani menu Kontakt */
html.izi-feed-czysto header.izi-hd, html.izi-feed-czysto #izi-home-tabbar, html.izi-feed-czysto #izi-hd-callmenu { display: none !important; }
/* STICKY WSZEDZIE: body wielu stron KSI ma wysokosc naglowka (floaty) i sticky konczyl sie od razu (hotel: belka odjezdzala) -> flow-root domyka */
html.izi-feed-belka body { display: flow-root; }
/* strona hotelu: wlasny przyklejony pasek zakladek (Opis | Ceny | Przewodnik | Mapa | Opinie) siada POD belka, nie na niej */
html.izi-feed-belka .sk-ofr-tabs-buttons { top: 58px !important; }

/* 11.10 KLATKA FILMU OD PIERWSZEJ CHWILI (nagranie usera: karta pokazywala najpierw 1. zdjecie galerii, potem zaslanial je film z innego
   ujecia). Pierwsza karta z filmem ma w HTML warstwe .izf-klatka z klatka filmu (incItem-single.php); tu staje sie widoczna nad galeria
   (pod plakietkami, kropkami i sercem). Tlo w kolorze zaslepki, wiec zdjecie spod spodu nie miga nawet zanim klatka sie pobierze.
   izi-feed.js zdejmuje warstwe (.izf-klatka-off), gdy film stoi juz na wierzchu z tym samym obrazem. Gdyby skrypt nie wystartowal
   (brak klasy izf-js), warstwa znika sama po 8 s i galeria dziala jak zawsze. */
html.izi-feed .izf-klatka { display: block !important; position: absolute; inset: 0; z-index: 2; background: #e8edf2 var(--izf-kl) center / cover no-repeat; pointer-events: none; }
html.izi-feed .izf-klatka.izf-klatka-off { display: none !important; }
html.izi-feed:not(.izf-js) .izf-klatka { animation: izf-klatka-zdejmij .01s linear 8s forwards; }
@keyframes izf-klatka-zdejmij { to { visibility: hidden; } }
html.izi-feed .izf-wideo.izf-wideo-odrazu { transition: none; }

/* 11.10 "OPIS HOTELU" ZA GWIAZDKAMI (user: "gwiazdki maja caly wiersz... przeciez jest pelno miejsca przy tych gwiazdkach, ten wiersz robi mi
   plame po prawej stronie"): na telefonie link stoi w tym samym wierszu co gwiazdki, tak jak na komputerze. Karta jest o jeden wiersz nizsza,
   a zdjecie o tyle wyzsze (wysokosc zdjecia liczy izi-feed.js z reszty karty). Odstep 10 px siedzi na ostatniej gwiazdce, wiec hotel bez
   gwiazdek ma link rowno od lewej; hotel bez strony (bez linku) wyglada jak dotad. */
html.izi-feed .sk-list-offer .sk-list-offer-stars { display: inline-flex !important; vertical-align: middle !important; margin: 0 0 12px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-stars img:last-child { margin-right: 10px !important; }
html.izi-feed .sk-list-offer .izi-hl { vertical-align: middle !important; margin: 0 0 12px !important; }

/* 11.10 MNIEJ POWIETRZA WOKOL GWIAZDEK (user po nagraniu: "nad gwiazdkami i pod gwiazdkami za duzo powietrza, karta filmu powinna byc wyzsza,
   a karta z opisem nizsza"): po przeniesieniu "Opis hotelu" do wiersza gwiazdek wiersz urosl (link 19,5 px + 12 px marginesu + 9 px marginesu
   bloku pod spodem = 21 px dziury). Teraz: tytul -> wiersz 4 px, wiersz -> blok dat 4+9 px, gora bialej czesci 14 px zamiast 18.
   Razem 14 px mniej tekstu = zdjecie wyzsze o 14 px (wysokosc zdjecia liczy izi-feed.js z reszty karty). */
html.izi-feed .sk-list-offer .sk-list-offer-info-cnt { padding-top: 14px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-title, html.izi-feed .sk-list-offer .sk-list-offer-title a { margin-bottom: 4px !important; }
html.izi-feed .sk-list-offer .sk-list-offer-stars, html.izi-feed .sk-list-offer .izi-hl { margin-bottom: 4px !important; line-height: 17px !important; }



/************************************************************
  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; }
}
