@charset "utf-8";

:root {
	--green: #7ac23b;
  --blue: #065eca;
  --navy: #010b63;
  --violet: #7c68bd;
}

html {
  width: 100%;
  height: 100%;
  font-size: clamp(13px, 1.081vw ,16px);
}
body {
  font-family: futura-pt, sans-serif;
font-weight: 500;
font-style: normal;

	font-size: 1rem;
}


/* typo*/

h1 {


}

h2 {
    font-family: futura-pt-bold, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: min(10vw, 3.843rem);
    text-transform: uppercase;
    margin-bottom: 3rem;
}


h3 {

}

.btn {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1.5rem;
    height: 5rem;
    min-width: 15.875rem;
    line-height: 1;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: fit-content;
    border: 0;
    border-radius: 1.625rem;
}

.btn.btn-primary {
   background: linear-gradient(0deg, #0c1e8d 0%, #8f82e4 100%);
}

.btn.btn-secondary {
  background: linear-gradient(0deg, #846cbb 0%, #4748c9 100%);
}

.btn.btn-submit {
  background: linear-gradient(0deg, #c4aaed 0%, #7c7df3 100%);
  color: #010b63;
}


.btn.btn-link {

}


section, .section {
  position: relative;
  padding: 4rem 0;
}

.hook {
	top: -80px;
	position: absolute;
}


/* navbar */

.navbar {
	background-color: transparent;
  padding: 0;
}


@media (min-width: 992px) {
.navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
}
.navbar-collapse.collapsing  {
    height: fit-content;
		overflow: visible;}
	
	}

.navbar .container-fluid {
	max-width: 92.5rem;
}

.navbar .navbar-nav {
  background-color: var(--green);
  margin: 0 0 auto auto;
  padding: 3.5rem  1.5rem  1.5rem  1.5rem;
  border-radius: 0 0 2.875rem 2.875rem;
  box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
  transition: all .3s ease-in-out;
}

@media (min-width: 992px) { 
  .navbar .navbar-nav { padding: 1.5rem;}
 }

.top-nav-collapse.navbar .navbar-nav {
  padding: 3.5rem  1.5rem  1.5rem  1.5rem;
   transition: all .3s ease-in-out;
}

@media (min-width: 992px) { 
  .top-nav-collapse.navbar .navbar-nav {  padding: 0 1.5rem;}
 }

.navbar .navbar-nav .nav-link {
  font-family: arial-rounded-mt-pro, sans-serif;
  font-weight: 700;
  font-style: normal;

	color: #fff;
	text-transform: uppercase;
	font-size: 0.95rem;
	padding: 1.5rem;
	text-align: center;
}



.navbar .navbar-brand {
	padding: 0 0 0 4.5rem;
	margin: 0;
}

.navbar .navbar-brand .logo {
	
}
.navbar .navbar-nav .nav-link:focus, .navbar .navbar-nav .nav-link:hover, .navbar .navbar-nav .nav-link.active {
    color: #fff;
}

/* hamburger  */



.navbar-toggler {

  position: absolute;
  top: 0;
  right: calc(var(--bs-gutter-x) * 0.5);

	padding: 10px;
	border: 0;
  background-color: var(--green);
 
  padding: 1.5rem;
  border-radius: 0 0 2.875rem 2.875rem;
  box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
  
}


 .navbar-toggler-icon {
   background-image: none;
   position: relative;
   width: 23px;
   height: 16px;
   padding: 0;
 }

 button:focus, .navbar-toggler:focus  {
  outline: 0 !important;
  box-shadow: 0 0 0 0;
}

 .navbar-toggler-icon .bar {
   height: 2px;
   background-color: #fff;
   border-radius: 1px;
   position: absolute;
   left: 0;
   right: 0;
   transition: all 0.5s ease;
 }


 .navbar-toggler.collapsed .bar.bar1 {
  top:0;
  transform: rotate(0deg);
 }

 .navbar-toggler.collapsed .bar.bar2 {
   transform: rotate(0deg);
   opacity: 1;
 }

 .navbar-toggler.collapsed .bar.bar3 {
  bottom:0;
  transform: rotate(0deg);
}


 .navbar-toggler-icon .bar.bar1 {
  top: calc(50% - 1px);
   transform: rotate(45deg);
 }

 .navbar-toggler-icon .bar.bar2 {
  top: calc(50% - 1px);
  transform: rotate(45deg);
  opacity: 0;
}
.navbar-toggler-icon .bar.bar3 {
  bottom:calc(50% - 1px);
  transform: rotate(-45deg);
}


/* home */


.home {
  background-image: url("../img/bg01-LqVL0U4.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 9.188rem;
  padding-bottom: 4rem;
}

@media (max-width: 991.98px) { 
  .home {
    padding-top: 5rem;
  }
}

.home .container-fluid {
  max-width: 83.5rem;
}

.home .ciacha {
  width: 44.625rem;
  height: auto;
}

.home .polec_znajomym {
  width: 14.375rem;
  height: auto;
}

.home .h1-img {
  width: 29.25rem;
  height: auto;
}

.home .counter {
  position: relative;
}

@media (max-width: 991.98px) { 
.home .counter {
  width: 100%;
}
 }
.home .counter-col {
  font-family: futura-pt-condensed, sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.01em;
  font-size: 1.875rem;
  color: #fff;
  text-transform: uppercase;
}

.home .counter-col .counter {
  display: inline-block;
}

.home .counter-col .counter .nr {
  display: inline-block;
  width: 3rem;
  height: 4.5rem;
  background-color: #b9e7fe;
  color: #4948a6;
  font-size: 2.974rem;
  border-radius: 1rem;
  margin: 0 0.188rem;
  text-align: center;
}

.home .counter-col .counter .counter-sep {
  display: inline-block;
  color: #fff;
  font-size: 2.974rem;
  margin: 0 0.188rem;
  vertical-align: bottom;
}

.home .counter .comeback {
  width: 11.563rem;
  height: auto;
  position: absolute;
  left: 0;
  bottom: 100%;
}
@media (max-width: 991.98px) {

.home .counter .comeback {
  left: calc(50% - 6rem);
  bottom:auto;
  top: -8.5rem;
  }
.home .counter-col.is-0 {
  padding-top: 5rem;
}

 }

/* Zasady  */

.zasady {
  background-color: #065eca;
  color: #fff;
}

.zasady h2 {
  text-shadow: -0.313rem 0.313rem 0.313rem #3d1e8e;
}

.zasady .steps {
  font-size: 1.593rem;
  line-height: 1.29;
  letter-spacing: 0.01em;
  max-width: 78.75rem;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.zasady .steps .step {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
}

.zasady .steps .step1 .step-icon img,
.zasady .steps .step2 .step-icon img {
  width: auto;
  height: 6.25rem;
}

.zasady .steps .step3 .step-icon {
  position: relative;
  width: 100%;
}
@media (max-width: 991.98px) {
  .zasady .steps .step3 .step-icon {
    height: min(60vw, 18rem);
  }
}

.zasady .steps .step3 .step-icon img {
  position: absolute;
  left: calc(50% - 8.2rem);
  bottom: 1rem;
  width: 24.875rem;
  height: auto;
  max-width: 100%;
}

.zasady p {
  font-family: gotham, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 0.938rem;
  max-width: 70rem;
  margin-left: auto;
  margin-right: auto;
  color: #bfade6;
}

/* Form */

.form {
  background-image: url("../img/bg03-WCNTYn5.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}


.form {
	position: relative;
}


.form-control.is-invalid {
	background-image: none;
	background-color: #ff0000;
	color: #fff;
}

.form-control.is-invalid::placeholder {
	color: #fff;
}

.form .invalid-feedback {
	color: #ff9e9e;
	font-weight: 700;
	text-shadow: 0 1px 2px rgba(30, 10, 80, 0.75);
}

.form-container .input-group-addon {
    font-family: avenir-next-lt-pro-condensed, sans-serif;
    font-weight: 700;
    font-style: normal;
    border-radius: 0.938rem;
    border: 0;
    color: var(--blue);
    font-size: 1.301rem;

    height: 2.75rem;
    width: 2.75rem;
    padding: 0.25rem;
    background-color: transparent;

	display: flex;
	flex-direction: column;
	justify-content: center;
}

.form-container .input-group-addon.bg-white { 
background-color: #fff;}


.form-container .input-group-addon img {
	width: auto;
	height: 1.688rem;
}

.form-container .input-group-addon .info {
	display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  width: 100%;
  text-decoration: none;
  color: #fff;
  background-color: var(--violet);
  border-radius: 0.7rem;
  cursor: pointer;
  text-align: center;
}

 .input-group {
  transition: all 0.5s ease-in-out;
  min-height: 33px;
}

.form  .small-field {
  margin-top: 4px;
}


.form  .form-container {
	position: relative;
	max-width: 54rem;	
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}



 .form-control {
  font-family: avenir-next-lt-pro-condensed, sans-serif;
  font-weight: 700;
  font-style: normal;

  border-radius: 0.938rem;
  border: 0;
  color: var(--blue);
  font-size: 1.301rem;

  padding:  0 0 0 1.5rem;
  height: 2.75rem;

  background-color: #fff;
	
}

.form-container .form-control:focus {
  outline: 0;
  box-shadow: none;
}



 .form-control::placeholder {
	color: var(--blue);
}

.form-container .input-group > .form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.form-container .input-group-text {
  border: 0;
  background-color: #fff;
  color: var(--blue);
  font-family: avenir-next-lt-pro-condensed, sans-serif;
  font-weight: 700;
  font-size: 1.301rem;
  height: 2.75rem;
  padding: 0 1rem;
  border-top-right-radius: 0.938rem;
  border-bottom-right-radius: 0.938rem;
}

.form-container label,
.form-container legend.col-form-label {
  font-family: avenir-next-lt-pro-condensed, sans-serif;
  font-weight: 700;
  font-style: normal;
  width: 100%;
	font-size: 1.208rem;
	text-align: left;
	color: #fff;
	line-height: 1;
  padding: 0 0 0.5rem 0.5rem;
  border: 0;
  float: none;
}

.form-container label.form-label,
.form-container legend.col-form-label {
  margin-bottom: 0;
}

.form-container label.nowrap,
.form-container legend.col-form-label.nowrap {
  white-space: nowrap;
}


.form-container label.form-check-label {
font-family: "helvetica-neue-lt-pro", sans-serif;
font-weight: 300;
font-style: normal;
	font-size: 1rem;
	text-align: left;
  padding: 0.4rem 0 0 0;
   line-height: normal;
}

.form-container label a {
	color: inherit;
}


.form-container  .form-check {
	position: relative;
	padding-left: 2.5rem;
}

.form-container .form-check-input {
	border-radius: 0;
	border: solid 1px #646463;
	width: 1.375rem;
	height: 1.375rem;
	background-color: #fff;
	margin-left: -2.5rem;
 
}



.form-container .form-check-input:checked[type=checkbox] {
	background-color: var(--blue);

}

.form-container .zgody {
	width: 100%;
}

.form-container .zgody > .mb-2 {
	width: 100%;
}

.form-container .zgody .form-check {
	width: 100%;
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding-left: 0;
}

.form-container .zgody .form-check-input {
	flex-shrink: 0;
	margin-left: 0;
	margin-top: 0.35rem;
}

.form-container .zgody label.form-check-label {
	flex: 1;
	min-width: 0;
	display: block;
	width: auto;
	text-align: justify;
}

.form-container .zgody .collapseBtn {
	cursor: pointer;
	transition: all 0.5s ease-in-out;
	z-index: 3;
	position: absolute;
	right: -5px;
	top: 5px;	
}

.form-container .zgody .collapseBtn.collapsed {
	-ms-transform: rotate(180deg); /* IE 9 */
	-webkit-transform: rotate(180deg); /* Safari 3-8 */
	transform: rotate(180deg);
	transition: all 0.5s ease-in-out;
}

.form-container .more-btn {
	fill: #031d4f;
}

.form-container .zgody .collapseBtn.collapsed .more-btn {
	fill: #fff;
}

.form-container .zgody .collapseBtn.collapsed .more-btn {
	fill: #fff;
}

.form-container .zgody .collapse, .form-container .zgody .collapsing {
  background-color: #fff;
  color:#031d4f;
  font-size: 11px;
  padding: 20px 50px 20px 25px;

  -webkit-box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.35);
  -moz-box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.35);
  box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.35);
  position: absolute;

  z-index: 2;
  top: 0;
  right: -15px;
	
  width: 100%;
}

.btn-submit img {
	width: 7.75rem;
	height: auto;
}



.input-group:has(.zweryfikuj-btn) {
  background-color: var(--navy);
   border-radius: 0.938rem;
}

.zweryfikuj-btn {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.5rem;

  flex-grow: 1;
 
  border: 0;
  color: #fff;
  background-color: transparent;

  height: 2.75rem;
  margin: auto;
 

}

.zweryfikuj-btn  span {
	padding-top: 0.15rem;
}

.zweryfikuj-btn  .info-btn  {
	width: auto;
    height: auto;
	margin-right: 4px;
  
}

.weryfikacja-stepII .form-control  {
	background-color: var(--yellow);
	
	text-align: center;
}

.wpiszpin-input-group {
	
	display: flex;
    align-content: center;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
	padding: 0;
}

.wpiszpin-input-group .form-control {

	background-color: transparent;
	color: var(--blue);
	text-align: center;
}

.wpiszpin-input-group .form-control::placeholder {
	color: var(--blue);
}

.btn-pin {

  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.5rem;

    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    width: 100%;
    text-decoration: none;
    color: #fff;
    background-color: var(--violet);
    border-radius: 0.7rem;
    cursor: pointer;
	
  margin: 0;
	border: 0;
	padding: 0;
 
}

.input-group:has(.btn-pin ) {
  background-color: #fff;
   border-radius: 0.938rem;
}

.zweryfikowano {

  font-family: avenir-next-lt-pro-condensed, sans-serif;
  font-weight: 700;
  font-style: normal;
  width: 100%;
  font-size: 1.208rem;

	color: #fff;;
	width: 100%;
	text-align: center;	
		
	display: flex;
    align-content: center;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding: 0;
    height: 2.75rem;
}

.zweryfikowano img {
	width: 2.063rem;
	height: auto;
	margin-left: 0.5rem;
	margin-bottom: 0.5rem;
}


.custom-file {
       height: 5.381rem;
    margin: auto;
	  cursor: pointer;
  }
  
  .custom-file .custom-file-label::after {
    display: none;
  }


.custom-file-input {
    position: absolute;
    z-index: 2;
    width: 100%;
    margin: 0;
    opacity: 0;
	cursor: pointer;
}
.custom-file-label {
    position: absolute;
    top: 1.5rem;
    right: 0;
    left: 0;
    z-index: 1;
	cursor: pointer;
}

@media (min-width: 768px) {
.custom-file-label {
	top: 2rem;
	}
	}

.upload-file .info {
	  font-family: avenir-next-lt-pro-condensed, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1rem;
    text-align: left;
    color: #fff;
    line-height: 1;
}

.upload-file .btn.btn-secondary {

  width: 100%;
	max-width: 10rem;
	min-width: 10rem;
	
	border-radius: 0.938rem;
  border: 0;
  color: #070f53;
  font-size: 1.208rem;
	line-height: 2.688rem;
  padding: 0;
  height: 2.688rem;
  text-transform: uppercase;

  background-color: #26bcef;
  background: #26bcef;


}

.photo-prev {
	width: 5rem;
	max-width: 100%;
	height: 7.313rem;
	border: 0;
	margin-left: auto;
	margin-right: auto;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 0.813rem;
	
}

.form-container .btn-secondary {
		font-size: 15.49px;
	line-height: 1.2;
}

/* Datepicker */
.datepicker {
	color: #000;
}

.datepicker-controls .btn {
	height: auto;
	min-width: 0;
	width: auto;
	font-size: inherit;
	line-height: 1.5;
	border-radius: 0.375rem;
}


.textarea .form-label {
	font-size: 16.67px;
}
.textarea .form-label small {
	font-size: 15.5px;
	display: block;
	line-height: 1.1;
}

.textarea .form-control {
min-height: 190px;
	padding-top: 30px;
}

.letter-counter {
	position: relative;
	width: 100%;
	height: 15px;
	line-height: 15px;
	margin-bottom: -25px;
	margin-top: 10px;
	text-align: left;
	padding-left: 20px;
	color: #fff;
	font-size: 10px;
}


.popover {
  box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
	border-width: 0;
	border-radius: 2rem;
  width: 320px;

}


.popover-body {
  width: 100%;
	padding: 5px 0;
	border: 0;
}


.popover-body img {
	width: 100%;
  max-width: 280px;
	height: auto;
  border-radius: 2rem;
}


/* OK modal */


.modal.gray-modal {
	--bs-modal-bg: transparent;
	    --bs-modal-width: 20rem;
}

.modal-header {
  position: relative;
  z-index: 2;
}

.modal.gray-modal .modal-header .btn-close {
	background-image: none;
	width: 3.25rem;
	height: 3.25rem;
	padding: 0;
	opacity: 1;
	filter: drop-shadow(-0.313rem 0.313rem 7rem rgba(62, 30, 142, 0.46));
  position: absolute;
  right: 0;
  top: 0;
}


.modal.gray-modal .modal-content,
.modal.gray-modal  .modal-header,
.modal.gray-modal  .modal-body, 
.modal.gray-modal  .modal-footer { 
	border: 0;
padding: 0;
}

.modal.gray-modal  .modal-body .ratio {
	background-image: url("../img/zaslepki-bg-tx3QfCR.jpg");
  background-position: center center;
  background-size: cover;
	border: 0;
	border-radius: 50%;
	box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
  color: #fff;
    text-shadow: 0px 1.75rem  2.75rem #3d1e8e;
}

.modal.gray-modal h1 {
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
	font-size: 2.5rem;
	text-transform: uppercase;
	
	line-height: 0.8;
	margin: auto;
}
.modal.gray-modal h1 small { 
	font-size: 1.5rem;
	display: inline-block;
	line-height: 1;
}


/* ERROR modal */

.modal-header {
  position: relative;
  z-index: 2;
}

.modal.red-modal {
	--bs-modal-bg: transparent;
	    --bs-modal-width: 20rem;
}
.modal.red-modal .modal-header .btn-close {
	background-image: none;
	width: 3.25rem;
	height: 3.25rem;
	padding: 0;
	opacity: 1;
	filter: drop-shadow(-0.313rem 0.313rem 7rem rgba(62, 30, 142, 0.46));
  position: absolute;
  right: 0;
  top: 0;
}


.modal.red-modal .modal-content,
.modal.red-modal  .modal-header,
.modal.red-modal  .modal-body, 
.modal.red-modal  .modal-footer { 
	border: 0;
padding: 0;
}

.modal.red-modal  .modal-body .ratio {
	background-color: #db0000;
	border-radius: 50%;
	box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
}

.modal.red-modal h1 {
	  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
	font-size: 2.5rem;
	text-transform: uppercase;
	color: #fff;
line-height: 0.8;
	margin: auto auto 2rem auto;
}
.modal.red-modal h2 {

	font-size: 1.5rem;
	display: inline-block;
	line-height: 1;
	margin: 0 auto auto auto;
	color: #fff;
}

/* Produkty */

.produkty {
  padding-top: 0;
  background-color: #0d278b;
}

.produkty h2 {
  color: #159de4;
  font-size: min(16.912vw, 9.09rem);
}

.carousel-control-next, .carousel-control-prev {
  opacity: 1;
}

.carousel-control-next img, .carousel-control-prev img {
  width: min(10vw, 9.375rem);
  height: auto;
}

/* Kontakt */


.kontakt {
  background-image: url("../img/bg05-RA9PLFm.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  z-index: 5;
}

.kontakt .container-fluid {
  max-width: 55.5rem;
}

.kontakt h2 {
  font-size: 4.526rem;
}

.kontakt .col-form-label {
  font-family: helvetica-neue-lt-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 1.313rem;
}

.kontakt textarea.form-control {
  min-height: 10rem;
}

.kontakt .form-check-input {
  width: 2.625rem;
  height: 2.625rem;
  border: 0;
  border-radius: 0.938rem;
}

.kontakt .form-check-label {
  font-family: helvetica-neue-lt-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  text-align: justify;
}

.kontakt .form-check {
  padding-left: 4rem;
}

.kontakt  .form-check .form-check-input {
  margin-left: -4rem;
}

footer {
  font-family: gotham, sans-serif;
  font-weight: 500;
  font-style: normal;
  background-color: #fff;
  color: #4d1c6f;

  font-size: 1rem;
}

footer .container > .row {
  min-height: 5.75rem;
  align-items: center;
}

footer a {
  text-decoration: none;
  text-transform: uppercase;
  color: #6d68cd;
  font-weight: 700;
}

footer .footer-organizer {
  padding-top: 1.5rem;
  padding-bottom: 1.25rem;
}

footer .footer-links {
  gap: 0.75rem;
  padding-bottom: 1.5rem;
}

@media (min-width: 992px) {
  footer .footer-links {
    gap: 0;
    padding-bottom: 1.5rem;
  }

  footer .footer-links a {
    white-space: nowrap;
  }
}

footer .hh {
  width: 1px;
  height: 3.438rem;
  background-color: #010b63;
  flex-shrink: 0;
  margin: 0 0.75rem;
}

/* Zaslepki */

.zaslepka {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;

  background-image: url("../img/zaslepki-bg-tx3QfCR.jpg");
  background-position:  center center;
  background-size: cover;
  background-repeat:  no-repeat;

  font-size: min(9vw, 3.478rem);
  text-transform: uppercase;
  line-height: 1.2;
  text-shadow: 0px 1.75rem  2.75rem #3d1e8e;

  padding: 0;


}

.zaslepka strong {
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
}

.zaslepka .container-fluid {
  background-image: url("../img/ramka-_Hsn10E.png");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  max-width: 120rem;
  min-height: 61.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;

  color: #fff;
 
 }

.hr-div-top {
  height: 1px;
  margin:auto auto 5rem auto;
  background: linear-gradient(90deg, rgba(122, 99, 216, 0) 0%, #7a63d8 25%, #7a63d8 75%, rgba(122, 99, 216, 0) 100%);
  max-width: 50rem;
}

.hr-div-bottom {
  height: 1px;
  margin: 5rem auto auto auto;
  max-width: 80rem;
  background: linear-gradient(90deg, rgba(0, 31, 132, 0) 0%, #001f84 25%, #001f84 75%, rgba(0, 31, 132, 0) 100%);
}

/* parallax  */

.page-wrapper {
	overflow: hidden;
}

.parallax {
  position: absolute;
  height: auto;
   transform-origin: center center;
  /* filter: drop-shadow(-4rem 3rem 1rem rgba(62, 30, 142, 0.3)); */
  z-index: 2;
}

.container-fluid {
  position: relative;
  z-index: 5;
}

.zaslepka .container-fluid {
  z-index: 1;
}
.zaslepka .parallax-cont {
  z-index: 2;
}

.parallax-cont {
  filter: drop-shadow(-4rem 3rem 1rem rgba(62, 30, 142, 0.3));
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;

}

.parallax-01 {
	width: 15.813rem;
	right: calc(50% + 32.125rem);
	top: -3.75rem;
  transform: translateY(calc(var(--trig) * 0.5)); 
}

@media (max-width: 991.98px) { 

.parallax-01 {
 width: 10rem;
 right: calc(50% + 6rem);
 top: -6rem;
}
}

.parallax-02 {
 width: 13.75rem;
 left: calc(50% + 33.125rem);
 top: -4.688rem;
 transform: translateY(calc(var(--trig) * 0.5)); 
}

@media (max-width: 991.98px) {
  .parallax-02 {
    width: 10rem;
    left: auto;
    right: -5rem;
  }
 }

.parallax-03 {
	width: 22rem;
	right: calc(50% + 20.313rem);
	top: -8.75rem;
  transform: translateY(calc(var(--trig) * 0.5)); 
}

@media (max-width: 991.98px) { 
  .parallax-03 {
    width: 18rem;
    right: auto;
    left: -6rem;
    top: -2rem;
  }
}

.parallax-04 {
	width: 10.625rem;

  left: calc(50% + 30.313rem);
  bottom: 5.938rem;
  transform: translateY(calc(var(--trig) * -0.5)); 
}

@media (max-width: 991.98px) { 
 .parallax-04 { 
  width: 6rem; 
  left: auto;
  right: 1rem;
  bottom: 2rem;
}
}

.zaslepka.przed .parallax-zaslepka-01 {
	width: 15.813rem;
	right: calc(50% + 32.125rem);
	top: 4.688rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * 0.075)); 
}
@media (max-width: 991.98px) { 
.zaslepka.przed .parallax-zaslepka-01 {
    right: auto;
    width: 9rem;
    left: 2rem;
    right: auto;
    top: 2rem;
}
}
.zaslepka.przed .parallax-zaslepka-02 {
 width: 13.75rem;
 left: calc(50% + 33.125rem);
 bottom: 12.5rem;
 transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) { 
.zaslepka.przed .parallax-zaslepka-02 {
    right: auto;
    width: 9rem;
    right: 2rem;
    left: auto;
    bottom: 2rem;
}
}

.zaslepka.przed .parallax-zaslepka-03 {
	width: 11.563rem;
	right: calc(50% + 19.688rem);
	top: 6.875rem;
  transform: translateY(calc(var(--trig) * -0.75)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) { 
.zaslepka.przed .parallax-zaslepka-03 {
  
    width: 7rem;
    right: 5rem;
    top: 3rem;
}
}

.zaslepka.przed .parallax-zaslepka-04 {
 width: 14.063rem;
 left: calc(50% + 18.75rem);
 bottom: 6.875rem;
 transform: translateY(calc(var(--trig) * -0.75)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) { 
  .zaslepka.przed .parallax-zaslepka-04 {
    width: 10rem;
    left: 2rem;
    bottom: 3rem;

  }
}

.zaslepka.po .parallax-zaslepka-01 {
	width: 15.813rem;
	right: calc(50% + 32.125rem);
	top: 4.688rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) { 
.zaslepka.po .parallax-zaslepka-01 {
    width: 10rem;
    right: 5rem;
    top: 3rem;
}
}

.zaslepka.po .parallax-zaslepka-02 {
  width: 6.688rem;
	right: calc(50% + 26rem);
	top: 6.875rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) { 
  .zaslepka.po .parallax-zaslepka-02 {
    width: 5rem;
    right: 2rem;
    top: 4rem;
  }
}

.zaslepka.po .parallax-zaslepka-03 {
	width: 18.25rem;
	left: calc(50% + 29.375rem);
	bottom: 8.25rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) { 
.zaslepka.po .parallax-zaslepka-03 {
  width: 12rem;
  left: 2rem;
  bottom: 3rem;
}
}

.zaslepka.po .parallax-zaslepka-04 {
 width: 8.063rem;
 left: calc(50% + 34.688rem);
 bottom: 21.5rem;
 transform: translateY(calc(var(--trig) * -0.75)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) { 
  .zaslepka.po .parallax-zaslepka-04 {
    width: 6rem;
    left: 5rem;
    top: 5rem;
    bottom: auto;
  }
}

.zaslepka.endofall .parallax-zaslepka-01 {
	width: 18.25rem;
	right: calc(50% + 29.875rem);
	top: 11.75rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) { 
  .zaslepka.endofall .parallax-zaslepka-01 {
    width: 12rem;
    right: 2rem;
    top: 3rem;
  }
}

.zaslepka.endofall .parallax-zaslepka-02 {
	width: 15.813rem;
	left: calc(50% + 32.125rem);
	bottom: 11.563rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofall .parallax-zaslepka-02 {
    width: 10rem;
    left: 2rem;
    bottom: 2rem;
  }
 }

.zaslepka.endofall .parallax-zaslepka-03 {
	width: 16.563rem;
	right: calc(50% + 33rem);
	bottom: 18.125rem;
  transform: translateY(calc(var(--trig) * -0.75)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofall .parallax-zaslepka-03 {
    width: 10rem;
    right: 2rem;
    bottom: 4rem;
  }
}

.zaslepka.endofall .parallax-zaslepka-04 {
	width: 15rem;
	right: calc(50% + 15rem);
	top: 11.875rem;
  transform: translateY(calc(var(--trig) * -0.55)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) {
    .zaslepka.endofall .parallax-zaslepka-04 {
    width: 10rem;
    right: 2rem;
    bottom: 4rem;
  }
}

.zaslepka.endofall .parallax-zaslepka-05 {
	width: 18.5rem;
	left: calc(50% + 38.125rem);
	top: 22.875rem;
  transform: translateY(calc(var(--trig) * -0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
.zaslepka.endofall .parallax-zaslepka-05 {
    width: 10rem;
    left: 2rem;
    top: 4rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-01 {
	width: 13.438rem;
	right: calc(50% + 26rem);
	top: 12rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-01 {
    width: 10rem;
    right: 3rem;
    top: 3rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-02 {
  width: 6.688rem;
	left: calc(50% + 46rem);
	bottom: 3rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-02 {
    width: 4rem;
    left: 2rem;
    bottom: 2rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-03 {
	width: 18.25rem;
	left: calc(50% + 29.375rem);
	bottom: 8.25rem;
  transform: translateY(calc(var(--trig) * 0.25)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-03 {
    width: 14rem;
    left: 5rem;
    bottom: 4rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-04 {
 width: 15rem;
 left: calc(50% + 34.688rem);
 bottom: 25rem;
 transform: translateY(calc(var(--trig) * -0.75)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-04 {
    width: 10rem;
    left: auto;
    right: 5rem;
    bottom: 7rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-05 {
 width: 10rem;
 right: calc(50% + 37rem);
top: 10rem;
transform: translateY(calc(var(--trig) * -0.65)) rotate(calc(var(--trig-deg) * -0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-05 {
    width: 7rem;
    right: 50%;
    top: 7rem;
  }
}

.zaslepka.endofday .parallax-zaslepka-06 {
 width: 12rem;
 right: calc(50% + 14rem);
top: 13rem;
transform: translateY(calc(var(--trig) * -0.55)) rotate(calc(var(--trig-deg) * 0.075)); 
}

@media (max-width: 991.98px) {
  .zaslepka.endofday .parallax-zaslepka-06 {
    width: 8rem;
    right: auto;
    left: 5rem;
    top: 5rem;
  }
}

.modal .parallax-modal-01 {
    width: 10rem;
    left: 0rem;
    top: -5rem;
}

.modal .parallax-modal-02 {
    width: 6rem;
    left: -1rem;
    right: auto;
    top: 2rem;
}

.modal .parallax-modal-03 {
    width: 8rem;
    right: 0rem;
    bottom: -2rem;
    left: auto;
    transform: rotate(281deg);
}

/* dodatkowe animacje */

.home .polec_znajomym {
   animation: shareAnime 2s ease 0s infinite normal forwards;
  }

@keyframes shareAnime {
	0%,
	100% {
		transform: rotate(0deg);
		transform-origin: 50% 100%;
	}

	10% {
		transform: rotate(2deg);
	}

	20%,
	40%,
	60% {
		transform: rotate(-4deg);
	}

	30%,
	50%,
	70% {
		transform: rotate(4deg);
	}

	80% {
		transform: rotate(-2deg);
	}

	90% {
		transform: rotate(2deg);
	}
}


.home .btn.btn-primary {
  animation: pulse 2s ease 0s infinite normal forwards;
}
@keyframes pulse {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.1);
	}

	100% {
		transform: scale(1);
	}
}

body > div:has(.grecaptcha-badge),
.grecaptcha-badge {
	z-index: 2147483647 !important;
}


/* Poleć znajomym – trigger + share modal */

.home .polec_znajomym[role="button"] {
  cursor: pointer;
}

.home .polec_znajomym[role="button"]:focus-visible {
  outline: 0.1875rem solid var(--green);
  outline-offset: 0.375rem;
  border-radius: 0.5rem;
}

.modal.share-modal {
  --bs-modal-width: 30rem;
  --bs-modal-bg: #ffffff;
  --bs-modal-border-radius: 2rem;
}

.modal.share-modal .modal-content {
  border: 0;
  border-radius: 2rem;
  padding: 1rem 2.25rem 2.5rem;
  box-shadow: -0.313rem 0.313rem 7rem 0px rgba(62, 30, 142, 0.46);
  overflow: hidden;
}

.modal.share-modal .modal-header {
  border: 0;
  padding: 0;
  min-height: 2.75rem;
}

.modal.share-modal .modal-header .btn-close {
  --bs-btn-close-color: var(--navy);
  --bs-btn-close-opacity: 1;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.1875rem rgba(1, 11, 99, 0.25);
  width: 3.25rem;
  height: 3.25rem;
  padding: 0;
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
}

.modal.share-modal .modal-body {
  padding: 0;
  text-align: center;
}

.modal.share-modal .share-modal-title {
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  font-size: 2.75rem;
  line-height: 0.85;
  color: var(--green);
  margin: 0.5rem 0 1rem;
}

.modal.share-modal .share-modal-subtitle {
  color: var(--navy);
  font-size: 1.125rem;
  line-height: 1.2;
  margin: 0 auto 1.75rem;
  max-width: 22rem;
}

.modal.share-modal .share-native {
  margin-bottom: 1.5rem;
}

.share-options {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.25rem;
  margin-bottom: 1.75rem;
}

.share-option {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 4.5rem;
  text-decoration: none;
  color: var(--navy);
  font-size: 0.8125rem;
  font-weight: 600;
}

.share-option:hover,
.share-option:focus {
  text-decoration: none;
  color: var(--navy);
}

.share-option .share-icon {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 0.5rem 1rem rgba(1, 11, 99, 0.18);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.share-option .share-icon svg {
  width: 1.75rem;
  height: 1.75rem;
  fill: currentColor;
}

.share-option:hover .share-icon,
.share-option:focus-visible .share-icon {
  transform: translateY(-0.25rem) scale(1.06);
  box-shadow: 0 0.75rem 1.25rem rgba(1, 11, 99, 0.28);
}

.share-facebook .share-icon { background: #1877f2; }
.share-whatsapp .share-icon { background: #25d366; }
.share-x .share-icon { background: #000000; }
.share-email .share-icon { background: linear-gradient(0deg, #0c1e8d 0%, #8f82e4 100%); }

.share-copy {
  display: flex;
  align-items: stretch;
  border: 0.125rem solid #d7d2ec;
  border-radius: 1.625rem;
  background: #f4f2fb;
  overflow: hidden;
}

.share-copy-input {
  flex: 1 1 auto;
  border: 0;
  background: transparent;
  padding: 0.85rem 1.25rem;
  font-size: 0.95rem;
  color: var(--navy);
  min-width: 0;
  text-overflow: ellipsis;
}

.share-copy-input:focus {
  outline: none;
}

.share-copy-btn {
  flex: 0 0 auto;
  border: 0;
  border-radius: 1.625rem;
  padding: 0.85rem 1.5rem;
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(0deg, #5a9e1f 0%, #7ac23b 100%);
  white-space: nowrap;
  cursor: pointer;
  transition: filter 0.2s ease, background 0.2s ease;
}

.share-copy-btn:hover {
  filter: brightness(1.05);
}

.share-copy-btn.is-copied {
  background: var(--navy);
}

@media (max-width: 575.98px) {
  .modal.share-modal .modal-content {
    padding: 1rem 1.25rem 2rem;
  }

  .modal.share-modal .share-modal-title {
    font-size: 2.25rem;
  }

  .share-options {
    gap: 0.75rem;
  }

  .share-option {
    width: 4rem;
  }
}
