/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

    html, body, div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, img, ins, kbd, q, s, samp,
    small, strike, strong, sub, tt, var,
    b, u, i, center,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, embed, 
    figure, figcaption, footer, header, hgroup, 
    menu, nav, output, ruby, section, summary,
    time, mark, audio, video {
    	margin: 0;
    	padding: 0;
    	border: 0;
    	font: inherit;
    	vertical-align: baseline;
    }
    /* HTML5 display-role reset for older browsers */
    article, aside, details, figcaption, figure, 
    footer, header, hgroup, menu, nav, section {
    	display: block;
    }
    body {
    	line-height: 1;
    }
    
    blockquote, q {
    	quotes: none;
    }
    blockquote:before, blockquote:after,
    q:before, q:after {
    	content: '';
    	content: none;
    }
    table {
    	border-collapse: collapse;
    	border-spacing: 0;
    }
	
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

 
  a:link {COLOR: inherit; TEXT-DECORATION: underline;}
  a:visited {COLOR: inherit; TEXT-DECORATION: underline;}
  a:active {COLOR: inherit; TEXT-DECORATION: underline;}
  a:hover {COLOR: inherit; TEXT-DECORATION: underline;}
  button { color: #1b1b1b; }



html, body {
	color:#000;
	font-size: 1rem;
	line-height: 1.6; 
	font-weight: 300;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

body {
  background-color: #ffffff;
  color: #000000;
}


/*#wpadminbar{ display: none !important; }*/
html{margin-top: 0px !important;}
em { font-style: italic; }

ul{ margin: 15px 0 25px; }
ul li{ margin-left: 40px; }

ol{ margin: 15px 0 25px; }
ol li{ margin-left: 40px; }

strong { font-weight: 600; }

.all{ position:relative; overflow:hidden; width:100%; min-height:100vh; height:auto; }

.container{ width:1140px; margin:auto; position:relative; }
nav .container{ height:100%; display:flex; justify-content:space-between; }

.logo{ width:170px; display:block; align-self:center; }
.logo img{ width:100%; display:block; }

nav{ position: relative; z-index:100; width:100%; height:180px;}
nav .menu{ list-style:none; margin:0px; padding:0px; display: flex; text-align: center; font-family: Montserrat; font-size: 15px; text-transform: uppercase; align-self: center; font-weight: 700;
  -webkit-transition: all .2s linear;
  -moz-transition: all .2s linear;
  -ms-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;}
nav .menu li{ display:inline-block; margin:0 12px; padding:0px; line-height: 1.2; position: relative; color: #333333;
  -webkit-transition: all .2s linear;
  -moz-transition: all .2s linear;
  -ms-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;}
nav .menu a{ text-decoration:none; position: relative;
  --webkit-transition: all .2s linear;
  -moz-transition: all .2s linear;
  -ms-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;}
nav .menu a::before{    
    position: absolute;
    content: '';
    height: 2px;
    bottom: -5px;
    right: 0;
    z-index: 1;
    width: 0%;
    opacity: 1;
  background-color: #2D526D;
  -webkit-transition: width .2s linear;
  -moz-transition: width .2s linear;
  -ms-transition: width .2s linear;
  -o-transition: width .2s linear;
  transition: width .2s linear;
}

nav .menu:hover li.menu-link a{ color:#979797; }
nav .menu li a:hover{ color:#333333 !important; }
nav .menu a:hover::before{
  width: 100%;
  left: 0px;
}
nav .menu li.active{color: #CDB59F;}
nav .menu li.active a:before{ width: 100%;}

nav .menu li.menu-separator{ width: 23px; height: 1px; background: #979797; display: inline-block; align-self: center;}

nav .menu .lang-switch, nav .menu .lang-switch li{ margin:0px; padding:0px; }
.menu-langs {
    position: relative;
    cursor: pointer;
}

.current-lang {
    position: relative;
    display: inline-block;
    padding-right: 15px;
    color: #A9A9A9;
    padding-bottom: 5px;
}

.current-lang:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-60%); 
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #A9A9A9; 
    transition: transform 0.3s ease;
}

.menu-langs:hover .current-lang:after {
    transform: translateY(-30%) rotate(180deg);
    border-top: 5px solid #2D526D;
}
.menu-langs:hover .current-lang{ color:#2D526D; }

.lang-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    right: -6px; 
    margin: 0;
    padding: 0px 0;
    list-style: none;
    border-radius: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0 15px 30px 4px rgba(0,0,0,0.3);
    box-shadow: 0 15px 30px 4px rgba(0,0,0,0.3);
    min-width: 60px;
    text-align: center;
    z-index: 400;
}

.menu-langs:hover .lang-dropdown {
    display: block;
}

nav .menu li .lang-dropdown li {
    padding: 0;
    margin: 16px 0;
    display: block;
    text-align: center;
}

.lang-dropdown a, 
.lang-dropdown .disabled {
    padding: 0px;
    text-decoration: none;
    color: #333;
}

nav .menu li .lang-dropdown li.is-active-lang a, nav .menu li .lang-dropdown li.is-active-lang:hover a{
    color: #CDB59F !important;
}
nav .menu li .lang-dropdown li.is-active-lang a:before{ width: 100%;}
nav .menu li .lang-dropdown li a::before{ bottom:-3px; }




.back-main{ background: url("../img/header-duzy2.jpg") center center; }
.back-gray-horizontal{ background: url("../img/main-spec3.png") center bottom; background-repeat: repeat-x; }




.menuMobileClick{ width:40px; height:40px; cursor:pointer; position:absolute; right:0px; top:50%; display:none; z-index:980; text-align:center; transform: translateY(-50%);
-webkit-transition: all .25s linear;
   -moz-transition: all .25s linear;
   -ms-transition: all .25s linear;
   -o-transition: all .25s linear;
  transition: all .25s linear;}
.menuMobileClick div {
    width: 35px;
    height: 3px;
    background-color: #333;
    display:block;
    margin: 6px 0;
    border-radius: 2px;
}
.menuMobileClick div:nth-of-type(1){ width: 35px; margin-left: 0px; }
.menuMobileClick div:nth-of-type(3){ width: 35px; margin-left: 0px; }

.menuFixed{ position: fixed; width: 100%; height: 100%; background-color: rgba(205,181,159,0.94); z-index: 1001; left: 0px; top: 0%; opacity: 0; display: none; overflow-x: hidden; overflow-y: scroll; text-align: center;}
.closeMenuContainer{ width:100%; text-align:right; margin-bottom: 40px; position: relative; z-index: 900; margin-top: 60px;}
.closeX { height: 40px; width: 40px; position: relative; box-sizing: border-box; line-height: 40px; display: inline-block; margin-top: 15px; cursor: pointer; z-index: 900;}
.closeX:before, .closeX:after {  width: 40px; height: 4px; transform: rotate(-45deg); content: ''; position: absolute; top: 50%; left: 50%; margin-top: -4px; margin-left: -20px; display: block; background-color: #fff; transition: all 0.25s ease-out;}
.closeX:after { transform: rotate(-135deg);}
.menuFixedUl{ margin: 0px; padding: 0px; list-style: none; margin-bottom: 30px; }
.menuFixedUl li{ font-weight: bold; color: #fff; text-align: center; overflow: hidden; margin: 21px 0 0px; font-size: 30px; text-transform: uppercase; font-weight: 600; padding: 5px 0; position: relative; z-index: 100; line-height: 1.3;}
.menuFixedUl li.active a{ border-bottom: 2px solid #fff; }
.menuFixed a{ color: inherit; text-decoration: none; }

.menuFixedUl li.menu-separator{ margin: 40px auto; height: 33px; width: 2px; background: #fff; }
.menuFixedUl li .current-lang{ display:none; }
.menuFixedUl li .lang-dropdown{ display:block; position: relative; background: none; box-shadow: none; border: 0px; left: 0px; right: 0px; top: 0px; bottom: 0px;}
.menuFixedUl li .lang-dropdown li{ display:inline-block; margin: 0px 10px; font-size: 20px;}
.menuFixedUl li .lang-dropdown li.is-active-lang a:before{ content:''; display:block; width:100%; height:2px; background: #fff; position:absolute; bottom: 4px; left: 0px;}

.menuFixed .wcag-top-socials{ align-self:center; display:flex; width:150px; margin:50px auto; justify-content:space-between; }
.menuFixed .wcag-top-socials a{ margin:0 5px; display:inline-block; align-self:center; text-decoration: none;}
.menuFixed .wcag-top-socials img{ width:37px; display:block; }



.flex-columns{ display:flex; flex-direction:row; justify-content:space-between; }
.column-52{ width:52%; }
.column-48{ width:48%; }

.foto-R{ display:none; }

.main-section{ padding-bottom:50px; }
.foto-main{ width:120%; margin-left: -20%; position:relative; }
.foto-main:after{ content:''; display:block; padding-top:100%; }
.foto-main img{ width:100%; height:100%; object-fit:cover; position:absolute; top:0px; left:0px; }

.foto-sub-page-main{ width:120%; margin-left: -20%; position:relative; }
.foto-sub-page-main:after{ content:''; display:block; padding-top:34%; }
.foto-sub-page-main img{ width:100%; height:100%; object-fit:cover; position:absolute; top:0px; left:0px; }

.main-txt{ width:100%; background-color: #2D526D; padding-left: 90px; padding-right: 90px; overflow: hidden; padding-bottom: 40px;}
.main-header{ font-size: 63px; text-align: left; line-height: 1.3; letter-spacing: 0px; color: #ffffff; margin-bottom: 40px;  margin-top: 100px; font-family: "Playfair Display"; word-wrap: break-word; font-weight: 400;}
.main-content{ font-size: 16px; color: #ffffff; font-weight: 300; line-height:1.6; }

.sub-page-main-section .column-48{ display:flex; }
.sub-page-main-txt{ width:100%; background-color: #2D526D; padding-left: 80px; padding-right: 80px; overflow: hidden; padding-bottom: 40px; padding-top: 40px;}
.sub-page-main-txt .main-header{ padding:0px; margin:0px; }


.main-button-container{ margin:40px 0 70px; }


.icon-scroll, .icon-scroll:before{ position: absolute; left: 50%;}
.icon-scroll{ width: 20px; height: 35px; margin: auto; margin-top: 15px; margin-bottom: 15px; box-shadow: inset 0 0 0 1px #333; border-radius: 25px; display: none;}
.icon-scroll:before{
  content: '';
  width: 4px;
  height: 4px;
  background: #333;
  margin-left: 0px;
  top: 8px;
  border-radius: 4px;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-name: scroll;
}
@keyframes scroll{
  0%{
    opacity: 1;
    left: 2px;
  }
  100%{
    opacity: 0;
    transform: translateX(5px);

  }
}
.icon-scroll-specjalizacje{ display:none; }


.specjalizacje-home .back-gray{ text-align:center; }
.specjalizacje-home .back-gray .button{ margin:50px 0 55px; }

.specjalizacje-home-items-outer{ padding-top:30px; padding-bottom: 20px; position: relative;}
.specjalizacje-home-items-inner{ width:100%; display:flex; flex-direction:row; justify-content:space-between; }
.specjalizacje-home-item{ width:15%; text-align:center; }
.specjalizacje-home-icon{ width:100%; margin-bottom:30px; text-align:center; min-height: 85px;}
.specjalizacje-home-icon img{ max-width:80%; display:inline-block; width:auto; }
.specjalizacje-home-nazwa{ font-size: 16px; text-align: center; line-height: 1.4; letter-spacing: 0px; color: #333333; font-weight: bold; margin-bottom: 0px; margin-top: 0px; }


.zespol-home{ background: url("../img/main-zespol-tlo.jpg") center bottom; background-repeat: repeat-x; padding-bottom: 110px;}
.zespol-home .column-52{ text-align:left; padding-right:30px; padding-top:90px; }
.zespol-home .subheader, .zespol-home .header{ text-align:left; }
.zespol-home .txt{ margin-top:105px; margin-bottom:55px; }
.foto-main-zespol{ width:100%; display:block; margin-bottom:65px; }
.foto-main-zespol img{ width:100%; display:block; }


.news-home{ padding-bottom:100px; }
.news-list{ display: flex; flex-wrap: wrap; justify-content: space-between; margin: 60px 0 40px;}
.news-item { width: 30%; display: flex; flex-direction: column; }
.news-date {color: #CDB59F; font-size: 15px; font-family: Montserrat; letter-spacing: 9px;  text-transform: uppercase; font-weight: 600;}
.news-title {font-size: 40px; line-height: 1.2; font-family: Playfair Display; font-weight: 300; margin-top: 15px; margin-bottom: 20px;}
.news-title a{ text-decoration:none; color:inherit; }
.news-list .txt{ position: relative; overflow: hidden; margin-bottom: 20px;}
.news-list .txt::after{ content: ''; position: absolute; bottom: 0; left: 0;  width: 100%;  height: 50px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    pointer-events: none; 
}
a.news-read-more{ display: inline-block; font-weight: bold; color: #2d526d; font-size: 16px; text-decoration: underline;  transition: color 0.3s ease;}
a.news-read-more:hover{ text-decoration: none;}

.news-home-button-container{ text-align:center; margin-top:40px; }

.custom-modal-overlay{ position: fixed; top: 0; left: 0;  width: 100%; height: 100%;  background-color: rgba(205, 181, 159, 0.97); z-index: 9999;  display: none; overflow-y: auto;}
.custom-modal-box {  position: relative;  padding: 120px 180px;  width: 1100px; box-shadow: 0px 10px 25px 4px rgba(2, 2, 2, 0.50);  border: 0; background-color: #fefefe; transition: all 0.5s ease; margin: 10vh auto; }
.custom-modal-close { position: absolute; top: 15px; right: 15px;background: transparent; border: none; font-size: 20px; line-height: 1; cursor: pointer; color: #333; transition: transform 0.3s ease;}
.custom-modal-close:hover{ transform: rotate(90deg);}
.modal-title { margin-top: 0; margin-bottom: 20px;}
.custom-modal-loader{ text-align: center; font-size: 1.2rem; padding: 50px 0;}

.modal-news-date{ color: #CDB59F; font-size: 15px; font-family: Montserrat; letter-spacing: 12px; text-transform: uppercase; font-weight: bold; margin-bottom: 10px; }
.modal-news-title{ font-size: 40px; line-height: 1.2; font-family: Playfair Display; font-weight: 300; margin-bottom: 25px; color: #333333; }
.modal-layout-news .txt{}


.separator{ width:100%; height:2px; position:relative; margin:30px 0 40px; background:#c8b6a2; }
.separator:after, .separator:before{ width:100%; height:2px; position:absolute; content: ''; display: block; background:#c8b6a2; left: 0px;}
.separator:before{ top:-5px; }
.separator:after{ bottom:-5px; }

.margin-top-section{ margin-top: 130px; }
.padding-top-section{ padding-top: 130px; }


.subheader{ font-size: 15px; text-align: center; line-height: 1.2;  letter-spacing: 12px; color: #cdb59f; font-weight: bold; margin-bottom: 25px; margin-top: 0px; text-transform: uppercase; word-wrap: break-word}
.header{ font-size: 70px; text-align: center; line-height: 1.2; letter-spacing: 0px; color: #333333; font-weight: inherit; margin-bottom: 30px; font-family: "Playfair Display"; word-wrap: break-word}
.txt{ font-size: 16px; color: #333; font-weight: 300; line-height:1.6; }

/* O KANCELARII */
.historia-okancelarii{ padding-bottom:50px; }
.historia-okancelarii .header, .historia-okancelarii .subheader{ text-align:left; }
.historia-okancelarii .header{ width:70%; }
.foto-historia{ width:102%; left:-20%; position:relative; margin-top:90px; }
.foto-historia img{ width:100%; display:block; }
.historia-okancelarii .txt{ padding-top:60px; }

.klienci-okancelarii .column-52{ padding-top:75px; }
.klienci-okancelarii .header, .klienci-okancelarii .subheader{ text-align:left; }
.foto-klienci{ width:120%; display:block; }
.foto-klienci img{ width:100%; display:block; }

.ikony-klienci{ position:relative; margin-top: 40px;}
.ikony-klienci .klienci-item{ display:flex; position:relative; flex-direction:row; margin: 30px 0 30px;}
.ikony-klienci .klienci-icon{ position:relative; width:70px; margin-right:20px; align-self:center; } 
.ikony-klienci .klienci-icon img{ width:100%; display:block; }
.ikony-klienci .klienci-icon-nazwa{ align-self:center; font-size:16px; font-weight:600; }

.news-okancelarii{ position:relative; background:#f6f6f6;}
.news-okancelarii:before{width: 100%; height: 270px; background: #fff; content: ""; display: block; position: absolute; top: 0; left: 0; }
.news-okancelarii .foto-news{ width:100%; display:block; }
.news-okancelarii .foto-news img{ width:100%; display:block; }
.news-okancelarii .column-48{ padding-left:65px; padding-right:15px; }
.news-okancelarii .header, .news-okancelarii .subheader{ text-align:left; }

/* --- MENU LAT --- */
.news-years-menu { margin-top: 80px;}
.years-label{ }
.years-list { list-style: none; margin: 0; padding: 0; display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 30px;}
.years-list li{ padding:0px; margin:0px; }
.year-trigger{ padding: 0px; cursor: pointer; font-weight:bold; font-size:15px; color:#2D526D; border: none; border-bottom:2px solid transparent; transition: border 0.3s ease; background: none;}
.year-trigger:hover{ border-bottom: 2px solid #2D526D; }
.year-trigger.active{ border-bottom: 2px solid #2D526D;}

.news-list-by-year { list-style: none; margin: 0; padding: 0;}
.news-list-by-year li { margin: 0px; margin-bottom: 10px; padding: 0px; padding-bottom: 10px; line-height: 1.2;}
.news-list-by-year li:last-child { border-bottom: none;}
.news-list-by-year a { color: #333; text-decoration: none;}
.news-list-date { font-size: 16px; color: #CDB59F; font-weight: 600;}
.news-list-separator { margin: 0 5px; color: #999;}
.news-list-title { font-size: 16px; color: #333; font-weight: 600; transition: color 0.3s ease;}
.news-list-by-year a:hover .news-list-title{ color: #2D526D; }


.wspolpracujemy{ position:relative; background:#f6f6f6}
.wspolpracujemy:before{width: 100%; height: 100px; background: #fff; content: ""; display: block; position: absolute; bottom: 0; left: 0; }
.wspolpracujemy .header{ margin-bottom:40px; }
.wspolpracujemy .container-outer{  ; }
.wspolpracujemy .container{ overflow:hidden; }
.wspolpracujemy-items-outer{ padding-top:10px; padding-bottom: 20px; position: relative; }
.wspolpracujemy-items-inner{ width:100%; display:flex; flex-direction:row; justify-content:space-between; }
.wspolpracujemy-item{ width:15%; text-align:center; }
.wspolpracujemy-icon{ width:100%; margin-bottom:30px; text-align:center; min-height: 85px;}
.wspolpracujemy-icon img{ max-width:80%; display:inline-block; width:auto; }
.wspolpracujemy-nazwa{ font-size: 16px; text-align: center; line-height: 1.4; letter-spacing: 0px; color: #333333; font-weight: bold; margin-bottom: 0px; margin-top: 0px; }
.icon-scroll-wspolpracujemy{ display:none; }


.probono-okancelarii{ position:relative; padding-bottom: 100px;}
.probono-okancelarii .header, .probono-okancelarii .subheader{ text-align:left; }
.probono-okancelarii .column-52{ padding-right:30px; }
.probono-okancelarii .column-48 .foto{ width:100%; display:block; }
.probono-okancelarii .column-48 .foto img{ width:100%; display:block; }
.probono-okancelarii .column-48 .separator{ margin:50px 0 70px; }

.probono-lista{ margin:30px 0; list-style:none; }
.probono-lista li, .probono-lista a{ font-size:16px; color:#333; margin:0px; padding:0px; text-decoration:none; position: relative;}
.probono-lista li{ margin-bottom:20px; padding-left:30px; }
.probono-lista li a:before{ width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 11px solid #c8b6a2; content: ''; display: block; position: absolute; left: -25px; top: 3px;}
.probono-lista li a:hover{ color:#2D526D; }
.hidden-probono-data{ display:none; }
.modal-probono-title{ font-size: 30px; text-align: left; line-height: 1.3; letter-spacing: 0px;  color: #393836; font-family: "Playfair Display";}
.modal-layout-probono .separator{ margin-top:15px; }

.foto-probono, .foto-probono img { width:100%; display:block; }

.sygnet{ width: 67px; height: 67px; margin-top: 70px; background: url('../img/logo-nss-sygnet.svg') center center; background-size: cover;}


.specjalizacje{ position:relative; }
.specjalizacje .header, .specjalizacje .subheader{ text-align:left; }
.specjalizacje:before{width: 100%; height: 100px; background: #fff; content: ""; display: block; position: absolute; bottom: 0; left: 0; }

.specjalizacje-ikony{ margin-top:40px; }
.specjalizacje-ikony-flex{ display:flex; flex-direction:row; flex-wrap:wrap; justify-content:space-between; }
.specjalizacje-item{ width:47%; padding:0px; margin:0px; margin-bottom:60px; }
.specjalizacje-icon{ height:70px; margin:auto; width:100%; text-align:center; margin-bottom:20px; }
.specjalizacje-icon img{ height:100%; width:auto; display:inline-block; }
.specjalizacje-icon-nazwa{ font-weight:bold; font-size:20px; color:#333; text-align:center; margin-bottom:30px;  }



.zespol{ position:relative; }
.zespol .header, .zespol .subheader{ text-align:left; }
.zespol:before{width: 100%; height: 100px; background: #fff; content: ""; display: block; position: absolute; bottom: 0; left: 0; }
.zespol .header{ width:80%; }


.zespol-osoby{ position:relative; padding-bottom:50px; }
.osoby-flex{ margin:20px 0 40px; display:flex;  flex-direction:row; flex-wrap:wrap; justify-content:flex-start; gap: 3%;}
.osoby-flex .osoby-item{ width: 30%; margin-bottom: 40px;}
.osoby-flex .osoby-item .osoby-foto{ width:100%; height: 230px; display:block; }
.osoby-flex .osoby-item .osoby-foto img{ width:auto; height: 100%; max-width: 100%; display:block; }
.osoby-flex .osoby-item .separator{ margin:5px 0 20px; }
.osoby-flex .osoby-item .osoby-dopisek{ font-size: 15px; text-align: left; line-height: 1.2; letter-spacing: 12px; color: #cdb59f; font-weight: bold; margin-bottom: 0px; margin-top: 0px; text-transform: uppercase; }
.osoby-flex .osoby-item .osoby-nazwa{font-size: 40px; text-align: left; line-height: 1.2; letter-spacing: 0px; color: #333333; font-family: "Playfair Display"; margin-bottom: 34px; margin-top: 12px;}
.osoby-flex .osoby-item .osoby-email{ display: block; text-align: left; line-height: 1.2; letter-spacing: 0px; color: #2D526D; margin-bottom: 20px; margin-top: 3px; font-size:15px; padding-left:30px; font-weight: bold; text-decoration: none; position: relative;}
.osoby-flex .osoby-item .osoby-email:before{ position:absolute; top:-3px; left:0px; content:''; display:block; width:22px; height:22px; background: url('../img/mail.svg') center center; background-size:cover; }
.osoby-flex .osoby-item .txt{ position: relative; overflow: hidden; margin-bottom: 20px;}
.osoby-flex .osoby-item .txt::after{ content: ''; position: absolute; bottom: 0; left: 0;  width: 100%;  height: 50px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    pointer-events: none; 
}
a.osoby-czytaj-wiecej{ display: inline-block; font-weight: bold; color: #2d526d; font-size: 16px; text-decoration: underline;  transition: color 0.3s ease;}
a.osoby-czytaj-wiecej:hover{ text-decoration: none;}


.osoby-modal-content-flex{ display:flex; justify-content:flex-start; }
.osoby-modal-foto{ width:190px; margin-right:20px; align-self:flex-end; }
.osoby-modal-foto img{ width:100%; display:block; }
.osoby-modal-info{ display:flex; flex-direction:column; }
.osoby-modal-dopisek{ font-size: 15px; text-align: left; letter-spacing: 12px; color: #cdb59f; font-weight: bold; margin-bottom: 0px; margin-top: 10px; text-transform:uppercase; }
.osoby-modal-nazwa{ font-size: 30px; text-align: left; line-height: 1.2; letter-spacing: 0px; color: #333333; font-weight: 500; margin-bottom: 10px; margin-top: 5px; font-family:'Playfair Display'; }
.custom-modal-dynamic-content .separator{ margin-top:5px; }


.kontakt{ position:relative; }
.padding-kontakt{ padding-top:90px; }
.kontakt .header, .kontakt .subheader{ text-align:left; padding-right:20px; }
.kontakt .column-48{ padding-top:55px; }
.kontakt-txt{ font-weight:bold; margin-bottom:20px; }
.foto-kontakt{ width:102%; left:-20%; display:block; position:relative; margin-top: 170px;}
.foto-kontakt img{ width:100%; display:block; }
.foto-kontaktR{ display:none; }

.dane-kontaktowe-item{ display:flex; flex-direction:row; justify-content:start; margin-bottom: 25px; margin-top: 30px;}
.kontakt-icon{ width:20px; margin-right:15px; }
.kontakt-icon img{ width:100%; display:block; position:relative; top:4px; }
.kontakt-item-tekst{  }

.dane-bankowe{ margin-top:50px; }
.dane-bankowe-item{ display:flex; flex-direction:row; justify-content:start; margin-bottom: 5px; margin-top: 10px;}
.dane-bankowe-wstep{ font-weight:bold; width:90px; margin-right:10px; }

.map{ width:100%; position:relative; height:600px; margin-top:40px; }


.back-gray{ background:#f6f6f6; }


.button{ border-radius:50px; font-size:15px; text-transform:uppercase; padding: 15px 20px; line-height: 1.1; padding-left:55px; padding-right:55px; box-shadow: 0 15px 30px 4px rgba(45,82,109,0.2); cursor:pointer; font-weight:700; 
transition: color .2s ease-in-out,background .2s ease-in-out,border .2s ease-in-out; display:inline-block; }
.button.bezowy{ color: #FFFFFF; background-color: #CDB59F;}
.button.bezowy:hover{ background-color: #FFFFFF; color: #CDB59F;}
.button.niebieski{ color: #FFFFFF; background-color: #2D526D;}
.button.niebieski:hover{ color: #FFFFFF; background-color: #CDB59F;}




.nav-news-box {  position: fixed; top: 50%; transform: translateY(-50%); z-index: 100; display: flex; flex-direction: column; text-decoration: none;}
.nav-news-box.nav-prev{ left: 0;  align-items: flex-start; }
.nav-news-box.nav-next{ right: 0; align-items: flex-end; }
.nav-arrow-box{ width: 60px; height: 130px;  background-color: rgba(0,0,0,.3); display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease;}
.nav-news-box:hover .nav-arrow-box { background-color: #1a1a1a; }
.news-box-arrow{ width: 14px; height: 14px; border-top: 3px solid #ffffff; border-right: 3px solid #ffffff; display: inline-block;}
.news-box-arrow.left{ transform: rotate(-135deg); margin-left: 5px; }
.news-box-arrow.right{ transform: rotate(45deg); margin-right: 5px;}
.news-box-title{ background-color: #27a285; color: #ffffff; padding: 15px 25px; font-size: 1rem; font-weight: 400; white-space: nowrap; text-transform: uppercase; letter-spacing: 1px; opacity: 0; visibility: hidden; transform: translateY(-10px); transition: all 0.3s ease;
position: absolute; bottom: -55px;}
.nav-news-box:hover .news-box-title{ opacity: 1; visibility: visible; transform: translateY(0);}




footer{ background:#2d526d; padding:80px 0; }
footer a{ text-decoration:none; }
.footer-flex{ display:flex; flex-direction:row; justify-content:space-between; }
.footer-L{ width:60%; padding-bottom:40px; }
.footer-R{ width:30%; }
.footer-links-flex{ display:flex; flex-direction:row; justify-content:space-between; }
.footer-links a{ display: inline-block;  margin-left: 21px; text-transform:uppercase; color:#fff; font-weight:500; font-size:12px; position:relative; text-decoration:none; }
.footer-links a::before{ position: absolute; content: ''; height: 2px; bottom: -4px; right: 0;  z-index: 1; width: 0%; opacity: 1; background-color: #fff;
  -webkit-transition: width .2s linear;
  -moz-transition: width .2s linear;
  -ms-transition: width .2s linear;
  -o-transition: width .2s linear;
  transition: width .2s linear;
}
.footer-links a:hover::before{
    width: 100%;
  left: 0px;
}
.footer-logo{ width:145px; }
.footer-logo img{ width:100%; display:block; }
footer .separator{ width:170%; margin-left:-70%; margin-top:50px; }
footer .txt{ color:#fff; }
footer .txt a{ text-decoration:none; }

footer .footer-bottom-flex{ display:flex; justify-content:space-between; position:relative; top:-27px; width:60%; }
footer .footer-bottom-flex .copy{ color:#7E9AAE; font-size:13px; }
footer .footer-bottom-flex .polityka{ text-align:right; }
footer .footer-bottom-flex .polityka a{ color:#7E9AAE; font-size:13px; text-decoration:none; }

.polityka-prywatnosci .header, .polityka-prywatnosci .subheader{ text-align:left; }
.polityka-prywatnosci .container{ overflow:hidden; }
.polityka-prywatnosci-txt .pp-items{ padding-top:100px; overflow:hidden; }
.polityka-prywatnosci-txt .pp-item{ margin-bottom:140px; margin-top: 30px; padding-left: 17%;}
.polityka-prywatnosci-txt .pp-nazwa{ margin-bottom:40px; font-size: 30px; text-align: left; line-height: 1.3;  letter-spacing: 0px; color: #333333; font-weight: inherit; font-family: 'Playfair Display'; }



.go-to-top {
    background-color: rgba(0, 0, 0, 0.4);
    width: 42px;
    height: 42px;
    position: fixed;
    bottom: 25px;
    right: 25px;
    z-index: 100;
    display: none; 
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.go-to-top:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

.go-to-top::after {
    content: '';
    position: absolute;
    top: 55%; 
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg); 
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;   
    border-right: 2px solid #ffffff; 
}


.post-top-name{ background:#284d68; padding:40px 0;  }
.post-top-name .post-name{ font-size:18px; font-weight:bold; line-height:1.2; color:#fff; }
.post-date{ font-size: 15px; letter-spacing: 12px; color: #CDB59F; font-weight: bold; margin:35px 0; }
.post-container .txt{ padding-bottom:70px; }

.txt p { margin-bottom: 20px;}
.txt p:last-of-type {  margin-bottom: 0; }




.cookie-popup-box {
    position: fixed; 
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #ffffff;
    padding: 40px 50px 50px 40px;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08); 
    z-index: 99999;
    width: 744px;
    height: auto;
    opacity: 1;
}

.cookie-title {
    color: #333333;
    text-align: left;
    text-shadow: 0px 0px 0px rgba( 2, 2, 2, 0.23 );
    font-family: 'Playfair Display', serif;
    font-weight: 400;
    font-size: 32px;
    margin: 0 0 20px 0;
}


.cookie-close-btn {
    position: absolute;
    top: 25px;
    right: 25px;
    background: transparent;
    border: none;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #000;
    transition: transform 0.3s ease;
    transform-origin: center center;
}



