:root {
  --white: #FFFFFF;
  --primary: #00C2D1;
  --primary-light: #E6F9FB;
  --secondary: #4D897C;
  --accent: #E1AF96;
  --light: #F5F5F5;
  --medium: #E8E8E8;
  --dark: #5B5A50;
  --black: #000000;
  --shadow: 0px 2px 26px 0px rgba(0, 0, 0, 0.08);
  --gradient: linear-gradient(149deg, rgba(0,194,209,1) 0%, rgba(77,137,124,1) 100%);
  --red: #FF5F52;
}

* {
  scrollbar-width: auto;
  scrollbar-color: var(--primary) var(--primary-light);
}

*::-webkit-scrollbar {
  width: 10px;
  border-radius: 10px;
}

*::-webkit-scrollbar-track {
  background: var(--primary-light);
  border-radius: 10px;
}

*::-webkit-scrollbar-thumb {
  background-color: var(--primary);
  border-radius: 10px;
  border: 0px none var(--primary-light);
}

html, body {
  padding: 0;
  margin: 0;
  overflow-x: hidden;
}

body {
  background: var(--white);
  color: var(--dark);
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 16px;
  overflow-x: hidden;
  line-height: 1.44;
  font-weight: 400;
}

.container {
  -webkit-transition: all .6s ease-in-out;
	-moz-transition: all .6s ease-in-out;
	-o-transition: all .6s ease-in-out;
	transition: all .6s ease-in-out;
  position: relative;
  z-index: 2;
}

@media (min-width: 1600px) {
  .container {
      max-width: 1400px;
  }
}

::-moz-selection {
  background-color: var(--primary);
  color: var(--white);
}

::selection {
  background-color: var(--primary);
  color: var(--white);
}

/* PARAGRAPH */

a {
  color: inherit;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  display: inline-block;
  text-decoration: underline;
}

.no-underline {
  text-decoration: none;
}

.text-underline {
  text-decoration: underline;
}

a:hover,
a:active,
a:focus {
  color: inherit;
  outline: none;
  text-decoration: none;
}

button, button:hover, button:focus {
  background-color: transparent;
  border: none;
  outline: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  cursor: pointer;
  color: inherit;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

input, input:hover, input:focus, select, textarea, .form-control {
  background-color: var(--light);
  border: none;
  outline: none;
  box-shadow: none;
  border-radius: 0.65em;
  padding: 1em;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

::placeholder {
  color: var(--dark);
  font-weight: 400;
}

:-ms-input-placeholder {
  color: var(--dark);
  font-weight: 400;
}

::-ms-input-placeholder {
  color: var(--dark);
  font-weight: 400;
 }

 .invert ::placeholder {
   color: var(--white);
   font-weight: 400;
 }

 .invert :-ms-input-placeholder {
   color: var(--white);
   font-weight: 400;
 }

 .invert ::-ms-input-placeholder {
   color: var(--white);
   font-weight: 400;
  }

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.align-left {
  text-align: left;
}

.align-right[class*="button"], .align-right[class*="read-more"] {
  text-align: center;
  float: right;
}

.align-center[class*="button"], .align-center[class*="read-more"] {
  text-align: center;
  float: none;
  display: table;
  margin-left: auto;
  margin-right: auto;
}

img.alignright {
  float:right;
  margin: 0 0 1em 1em;
}

img.alignleft {
  float:left;
  margin: 0 1em 1em 0;
}

img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

a img.alignright {
  float:right;
  margin: 0 0 1em 1em;
}

a img.alignleft {
  float:left;
  margin: 0 1em 1em 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.text-normal {
  font-size: 1em;
}

.text-smaller {
  font-size: 0.9em;
  line-height: 1.4em;
}

.text-smallest {
  font-size: 0.8em;
  line-height: 1.4em;
}

.text-bigger {
  font-size: 1.1em;
  line-height: 1.4em;
}

.text-biggest {
  font-size: 1.2em;
  letter-spacing: 0.1em;
  line-height: 1.4em;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

footer ul, header ul {
  list-style: none;
}

strong, b {
  font-weight: bold;
}

.invert {
  color: var(--white);
}

.required-star {
	color: #d91757;
}

/* HEADINGS */

h1, .h1 {
  font-size: 3.5em;
  font-weight: 700;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h1.fl-heading .fl-heading-text {
	margin: 0 0 15x 0;
	display: block;
}

h2, .h2 {
  font-size: 2.25em;
  font-weight: 700;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h2.fl-heading .fl-heading-text {
	margin: 0 0 15px 0;
	display: block;
}

h3, .h3 {
  font-size: 1.5em;
  font-weight: 500;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h3 > span {
  font-weight: bold;
}

h3.fl-heading .fl-heading-text {
	margin: 0 0 15px 0;
	display: block;
}

h4, .h4 {
  font-size: 1.5em;
  font-weight: 400;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h4.fl-heading .fl-heading-text {
	margin: 0 0 15px 0;
	display: block;
}

h5, .h5 {
  font-size: 1.2em;
  font-weight: 700;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h5.fl-heading .fl-heading-text {
	margin: 0 0 15px 0;
	display: block;
}

h6, .h6 {
  font-size: 1em;
  font-weight: 700;
  line-height: 120%;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  padding: 0;
  margin: 0 0 15px 0;
  display: block;
  text-decoration: none;
  position: relative;
}

h6.fl-heading .fl-heading-text {
	margin: 0 0 15px 0;
	display: block;
}

h1, .h2, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  display: table;
  text-decoration: none;
}

.invert h1, .invert .h1, .invert h2, .invert .h2, .invert h3, .invert .h3, .invert h4, .invert .h4, .invert h5, .invert .h5 {
  color: var(--white);
}

a h1:hover, a .h1:hover, a h2:hover, a .h2:hover, a h3:hover, a .h3:hover, a h4:hover, a .h4:hover, a h5:hover, a .h5:hover {
  opacity: 0.8;
}

h1.text-center, h2.text-center, h3.text-center, h4.text-center, h5.text-center, h6.text-center {
  display: block;
}

/* SPACES */

section:not(.fl-row) {
  padding-top: 60px;
  padding-bottom: 60px;
}

.space-top-no:not(.fl-row), .fl-row.space-top-no .fl-row-content-wrap {
  margin-top: 0;
}

.space-bottom-no:not(.fl-row), .fl-row.space-bottom-no .fl-row-content-wrap {
  margin-bottom: 0;
}

.space-top:not(.fl-row), .fl-row.space-top .fl-row-content-wrap {
  margin-top: 30px;
}

.space-top-2x:not(.fl-row), .fl-row.space-top-2x .fl-row-content-wrap {
  margin-top: 60px;
}

.space-top-3x:not(.fl-row), .fl-row.space-top-3x .fl-row-content-wrap {
  margin-top: 90px;
}

.space-top-4x:not(.fl-row), .fl-row.space-top-4x .fl-row-content-wrap {
  margin-top: 120px;
}

.space-bottom:not(.fl-row), .fl-row.space-bottom .fl-row-content-wrap {
  margin-bottom: 30px;
}

.space-bottom-2x:not(.fl-row), .fl-row.space-bottom-2x .fl-row-content-wrap {
  margin-bottom: 60px;
}

.space-bottom-3x:not(.fl-row), .fl-row.space-bottom-3x .fl-row-content-wrap {
  margin-bottom: 90px;
}

.space-bottom-4x:not(.fl-row), .fl-row.space-bottom-4x .fl-row-content-wrap {
  margin-bottom: 120px;
}

.padding-top:not(.fl-row), .fl-row.padding-top .fl-row-content-wrap {
  padding-top: 40px;
}

.padding-top-2x:not(.fl-row), .fl-row.padding-top-2x .fl-row-content-wrap {
  padding-top: 60px;
}

.padding-top-3x:not(.fl-row), .fl-row.padding-top-3x .fl-row-content-wrap {
  padding-top: 90px;
}

.padding-top-4x:not(.fl-row), .fl-row.padding-top-4x .fl-row-content-wrap {
  padding-top: 120px;
}

.padding-bottom:not(.fl-row), .fl-row.padding-bottom .fl-row-content-wrap {
  padding-bottom: 30px;
}

.padding-bottom-2x:not(.fl-row), .fl-row.padding-bottom-2x .fl-row-content-wrap {
  padding-bottom: 60px;
}

.padding-bottom-3x:not(.fl-row), .fl-row.padding-bottom-3x .fl-row-content-wrap {
  padding-bottom: 90px;
}

.padding-bottom-4x:not(.fl-row), .fl-row.padding-bottom-4x .fl-row-content-wrap {
  padding-bottom: 120px;
}

.space-top-none, .fl-row.space-top-none .fl-row-content-wrap {
  margin-top: 0 !important;
}

.space-bottom-none, .fl-row.space-bottom-none .fl-row-content-wrap {
  margin-bottom: 0 !important;
}

.padding-top-none, .fl-row.padding-top-none .fl-row-content-wrap {
  padding-top: 0 !important;
}

.padding-bottom-none, .fl-row.padding-bottom-none .fl-row-content-wrap {
  padding-bottom: 0 !important;
}

/* OTHER */

.break-after:after {
  content: '\A';
  white-space: pre;
}

.break-before:before {
  content: '\A';
  white-space: pre;
}

.va-middle {
  vertical-align: middle;
}

.va-top {
  vertical-align: top;
}

.va-bottom {
  vertical-align: bottom;
}

.no-border {
  border: none;
}

.inline-block {
  display: inline-block !important;
}

.block-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.vertical-middle {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: relative;
}

.overflow-hidden {
  overflow: hidden;
}

.navbar-toggler {
  display: none;
}

.screen-reader-text {
  font-size: 0;
}

.section-title {
  display: block;
  text-align: center;
  color: var(--secondary);
  margin-bottom: 50px;
}

.invert .section-title {
  color: var(--white);
}

/* HEADER */

header {
  position: fixed;
  background-color: var(--white);
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99;
}

header .nav-bar {
  padding: 30px 0;
  position: relative;
  display: flex;
  width: 100%;
  justify-content: space-between;
}

header .nav-bar .logo {
  width: 300px;
}

header .nav-bar .logo img {
  max-width: 100%;
}

header .nav-bar .main-nav {
  padding-left: 35px;
}

header .nav-bar .main-nav ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

header .nav-bar .main-nav ul li {
  margin: 0 25px;
  position: relative;
}

header .nav-bar .main-nav ul li a {
  text-decoration: none;
  position: relative;
  padding-top: 5px;
  padding-bottom: 5px;
  font-weight: 600;
}

header .nav-bar .main-nav ul li.active a {
  color: var(--primary);
}

header .nav-bar .main-nav ul li a:hover {
  color: var(--primary);
}

header .nav-bar .main-nav ul li a:before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  background: var(--primary);
  background: var(--gradient);
  height: 3px;
  border-radius: 3px;
  width: 100%;
  transform: scaleX(0);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  transform-origin: left;
}

header .nav-bar .main-nav ul li a:hover:before {
  transform: scaleX(1);
}

#top-spacer {
  content: "";
  position: relative;
  height: 0;
  display: block;
}

/* BUTTONS */

.primary-button, .secondary-button, .primary-button:focus, .secondary-button:focus, .primary-button:active, .secondary-button:active, .wp-block-button__link, .wp-block-button__link:focus, .btn_tak, .btn_nie, .btn_zamow {
  cursor: pointer;
  display: table;
  border-radius: 0.65em;
  position: relative;
  text-decoration: none;
  padding: 0.65em 1.875em;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  font-weight: 600;
}

.primary-button, .wp-block-button__link, .btn_tak, .btn_nie, .btn_zamow {
  background-color: var(--primary);
  color: var(--white);
}

.secondary-button {
  background-color: var(--white);
  box-shadow: var(--shadow);
  color: var(--primary);
}

.primary-button:hover, .primary-button:focus, .primary-button:active, .wp-block-button__link:hover, .wp-block-button__link:focus, .wp-block-button__link:active, .btn_tak:hover, .btn_tak:focus, .btn_nie:hover, .btn_nie:focus, .btn_zamow:hover, .btn_zamow:focus {
  background-color: var(--secondary);
  color: var(--white);
  padding: 0.65em 1.875em;
}

.secondary-button:hover, .secondary-button:focus, .secondary-button:active {
  background-color: var(--secondary);
  color: var(--white);
  padding: 0.65em 1.875em;
}

.read-more, .read-more:hover, .read-more:focus {
  position: relative;
  cursor: pointer;
  display: table;
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  color: var(--primary);
  padding: 0.3em 2.5em 0.3em 0;
  font-weight: 600;
}

.read-more:before {
  width: 1em;
  height: 0.9em;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../img/icon_arrow-right.svg);
  content: "";
  position: absolute;
  right: 0.75em;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.read-more:hover:before {
  right: 0;
}

.read-more:after {
  width: 100%;
  position: absolute;
  left: 0;
  transform-origin: left;
  background-color: var(--primary);
  height: 1px;
  bottom: 0;
  content: "";
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.read-more:hover:after {
  transform: scaleX(0.75);
}

.back-button, .back-button:hover, .back-button:focus {
  position: relative;
  cursor: pointer;
  display: table;
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  color: var(--primary);
  padding: 0.3em 0 0.3em 2.5em;
  font-weight: 600;
}

.back-button:before {
  width: 1em;
  height: 0.9em;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../img/icon_arrow-right.svg);
  content: "";
  position: absolute;
  left: 0.75em;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.back-button:hover:before {
  right: 0;
}

.back-button:after {
  width: 100%;
  position: absolute;
  left: 0;
  transform-origin: left;
  background-color: var(--primary);
  height: 1px;
  bottom: 0;
  content: "";
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.back-button:hover:after {
  transform: scaleX(0.75);
}

a.section-end, button.section-end {
  margin: 30px auto 0 auto;
}

.show-more, .show-more:hover, .show-more:focus {
  position: relative;
  cursor: pointer;
  display: table;
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  color: var(--dark);
  padding: 0.3em 0 0.3em 1.5em;
  font-weight: 600;
}

.show-more:hover, .show-more:focus {
  color: var(--primary);
}

.show-more:before {
  width: 1em;
  height: 0.9em;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../img/icon_arrow-right.svg);
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.show-more.show-less:before {
  transform: translateY(-50%) rotate(-90deg);
}

.show-more:hover:before {
  top: 65%;
}

.show-more.show-less:hover:before {
  top: 35%;
}

.add-more, .add-more:hover, .add-more:focus {
  position: relative;
  cursor: pointer;
  display: table;
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  color: var(--dark);
  padding: 0.3em 0 0.3em 1.5em;
  font-weight: 600;
}

.add-more:hover, .add-more:focus {
  color: var(--primary);
}

.add-more:before {
  width: 1em;
  height: 1em;
  border: 1px solid var(--primary);
  color: var(--primary);
  content: "+";
  position: absolute;
  left: 0;
  line-height: 0.67em;
  border-radius: 3px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.add-more:hover:before {
  color: var(--white);
  background-color: var(--primary);
}

/* FIRST SECTION */

.first-section {
  padding-top: 0;
  padding-bottom: 0;
}

.first-section .container {
  padding-bottom: 30px
}

.first-section .text {
  position: relative;
  padding-top: 75px;
  z-index: 1;
}

.first-section .photo {
  width: 50vw;
  position: absolute;
  z-index: 0;
  height: 100%;
  left: 50%;
  top: 0;
  overflow: hidden;
  border-radius: 1em 0 0 1em;
}

.first-section .photo img {
  position: absolute;
  left: 50%;
  top: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translateY(-50%) translateX(-50%);
  transform-origin: center;
}

.first-section .text .info {
  padding-right: 55%;
}

.perks {
  padding: 0;
  margin: 0;
  list-style: none;
}

.perks li {
  margin: 0 0 10px 0;
  position: relative;
  display: block;
  padding: 0 0 0 1.875em;
}

.perks li:last-child {
  margin-bottom: 0;
}

.perks li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 1.31em;
  width: 1.31em;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.perks li.calendar:before {
  background-image: url(../img/icon_appointment.svg);
}

.perks li.time:before {
  background-image: url(../img/icon_stopwatch.svg);
}

.perks li.doctor:before {
  background-image: url(../img/icon_doctor.svg);
}

.perks li.safety:before {
  background-image: url(../img/icon_shield.svg);
}

.first-section .text .info .primary-button {
  margin-top: 30px;
}

.first-section .services {
  max-width: 990px;
  margin-top: 50px;
}

.services {
  background-color: var(--white);
  display: block;
  width: 100%;
  position: relative;
  border-radius: 1em;
  box-shadow: var(--shadow);
  padding: 30px;
}

.services h2 {
  font-size: 1.5em;
  display: block;
  text-align: center;
}

.first-section .services h2 {
  text-align: left;
}

.service-list {
  position: relative;
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  justify-content: center;
}

.service-list .service {
  width: calc(33.33% - 20px);
  border-radius: 1em;
  background-color: var(--light);
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  padding: 30px;
  text-align: center;
}

.service-list .service:hover {
  color: var(--white);
  background: var(--primary);
}

.service-list .service a {
  text-decoration: none;
}

.service-list .service .icon {
  display: block;
  width: 45px;
  height: 45px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.service-list .service:hover .icon {
  filter: saturate(0) brightness(500%);
}

.service-list .service .category {
  margin-top: 10px;
}

.category, .date {
  display: block;
  opacity: 0.6;
  font-size: 0.85em;
}

.service-list .service .title {
  display: block;
  margin-top: 10px;
}

.service-list .service .title h3, .service-list .service .title {
  display: block;
  -webkit-transition: all .0s ease-in-out;
	-moz-transition: all .0s ease-in-out;
	-o-transition: all .0s ease-in-out;
	transition: all .0s ease-in-out;
}

.service-list .service .price {
  display: block;
  font-size: 1.5em;
  font-weight: 700;
  margin-top: 10px;
}

.service-list .service .price .from, .service-list .service .price .cena_od {
	font-size: 0.5em;
}

.service-list .service .primary-button {
  margin: 20px auto 0 auto;
}

.service-list .service:hover .primary-button {
  background-color: var(--white);
  color: var(--primary);
}

/* AILMENTS */

.ailments {
  display: flex;
  gap: 2.5em;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  max-width: 960px;
}

.ailments .ailment {
  display: block;
  width: calc(20% - 2em);
}

.ailments .ailment .icon {
  background-color: var(--light);
  border-radius: 0.65em;
  width: 105px;
  padding: 20px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.ailments .ailment .icon img {
  display: block;
  margin: 0 auto;
  height: 65px;
  width: auto;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.ailments .ailment:hover .icon img {
  transform: scale(1.05);
}

.ailments .ailment .title {
  display: block;
  text-align: center;
  margin-top: 0.5em;
  max-width: 175px;
  margin-left: auto;
  margin-right: auto;
}

.ailments .ailment:hover .title {
  color: var(--primary);
}

.ailments .ailment .title h3, .ailments .ailment .title h2 {
  margin: 0;
  text-transform: uppercase;
  font-size: 0.85em;
  display: block;
  font-weight: 600;
}

.ailments a {
  text-decoration: none;
}

/* STEPS SECTION */

.steps-section {
  padding-top: 0;
  padding-bottom: 0;
}

.steps-section .container {
  position: relative;
  padding: 60px;
}

.steps-section .container:before {
  width: 100%;
  background: var(--primary);
  background: var(--gradient);
  position: absolute;
  z-index: 0;
  border-radius: 1em;
  top: 0;
  left: 0;
  height: 340px;
  content: "";
  display: block;
}

.steps-section .section-title {
  color: var(--white);
}

.steps-section .steps {
  display: flex;
  gap: 30px;
  position: relative;
  z-index: 2;
}

.steps-section .steps .step {
  width: calc(33.33% - 20px);
  text-align: center;
  background-color: var(--white);
  border-radius: 1em;
  box-shadow: var(--shadow);
  padding: 30px 50px;
}

.steps-section .steps .step .icon {
  background-color: var(--primary-light);
  border-radius: 0.65em;
  width: 85px;
  padding: 20px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.steps-section .steps .step .icon img {
  display: block;
  margin: 0 auto;
  height: 45px;
  width: auto;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.steps-section .steps .step:hover .icon img {
  transform: scale(1.05);
}

.steps-section .steps .step .title {
  display: block;
  color: var(--black);
  font-size: 1.25em;
  margin-top: 30px;
  max-width: 240px;
  margin-left: auto;
  margin-right: auto;
}

.steps-section .steps .step .number {
  margin-top: 20px;
  font-size: 0.85em;
  display: block;
  opacity: 0.6;
  text-transform: uppercase;
}

/* IMAGE AND TEXT SECTION */

.image-and-text-section .container {
  padding-top: 40px;
  padding-bottom: 100px;
  position: relative;
}

.image-and-text-section .container .image {
  z-index: 0;
  width: calc(50% + 100px);
  overflow: hidden;
  border-radius: 1em;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
}

.image-and-text-section .container .image img {
  position: absolute;
  left: 50%;
  top: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translateY(-50%) translateX(-50%);
  transform-origin: center;
}

.image-and-text-section .container .text {
  border-radius: 1em;
  left: 50%;
  position: relative;
  width: 50%;
  padding: 30px;
  color: var(--white);
  background: var(--primary);
  background: var(--gradient);
  z-index: 1;
}

.image-and-text-section .container .text .section-title {
  color: var(--white);
  text-align: left;
}

.image-and-text-section .container .text .secondary-button {
  margin-bottom: -51px;
  margin-top: 30px;
}

/* REVIEWS */

.reviews-carousel .item {
  position: relative;
  background-color: var(--light);
  border-radius: 1em;
  padding: 30px;
}

.reviews-carousel .item:before {
  content: "";
  width: 41px;
  height: 38px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/icon_quote.svg);
  position: absolute;
  right: 30px;
  top: 30px;
}

.reviews-carousel .item .top {
  display: flex;
  width: calc(100% - 80px);
}

.reviews-carousel .item .top .logo {
  margin-right: 30px;
  margin-bottom: 30px;
}

.reviews-carousel .item .top .logo img {
  height: 26px;
}

.reviews-carousel .item .top i {
  color: #F09000;
}

.reviews-carousel .item .text {
  display: block;
}

.reviews-carousel .item .name {
  display: block;
  font-weight: 600;
  margin-top: 30px;
}

/* OWL CAROUSEL */

.owl-nav {
  position: relative;
  display: block;
  margin-top: 30px;
  text-align: center;
}

.owl-nav button.owl-prev, .owl-nav button.owl-next {
  width: 36px;
  height: 36px;
  position: relative;
  display: inline-block;
  border-radius: 36px;
  border: 1px solid var(--primary) !important;
  margin: 0 5px;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.owl-nav button.owl-prev:before, .owl-nav button.owl-next:before {
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 16px;
  height: 14px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

.owl-nav button.owl-prev:before {
  background-image: url(../img/icon_arrow-left.svg);
}

.owl-nav button.owl-next:before {
  background-image: url(../img/icon_arrow-right.svg);
}

.owl-nav button.owl-prev:hover, .owl-nav button.owl-next:hover {
  background-color: var(--primary);
}

.owl-nav button.owl-prev:hover:before, .owl-nav button.owl-next:hover:before {
  filter: saturate(0) brightness(500%);
}

/* ACCORDION */

.accordion {
  display: block;
}

.accordion-item {
  display: block;
  padding-bottom: 10px;
  margin-bottom: 25px;
  border-bottom: 1px solid var(--medium);
}

.accordion .accordion-item .accordion-item-body {
  overflow: hidden;
  display: block;
  -webkit-transition: all .6s ease-in-out;
	-moz-transition: all .6s ease-in-out;
	-o-transition: all .6s ease-in-out;
	transition: all .6s ease-in-out;
  max-height: 0;
  padding-top: 10px;
}

.accordion .accordion-item .accordion-item-header {
  cursor: pointer;
  display: flex;
  position: relative;
  padding-right: 2em;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.accordion .accordion-item .accordion-item-header:hover {
  color: var(--primary);
}

.accordion .accordion-item .accordion-item-header:before {
  color: var(--primary);
  font-size: 1.5em;
  font-weight: 700;
  content: "+";
  position: absolute;
  top: -0.25em;
  right: 0;
}

.accordion .accordion-item .accordion-item-header.active:before {
  content: "-";
}

.accordion .accordion-item .accordion-item-header h3 {
  font-size: 1em;
  font-weight: 700;
  margin-bottom: 0;
  width: calc(100% - 2.7em);
}

.accordion .accordion-item .accordion-item-header > span {
  width: 2em;
  height: 2em;
  padding-top: 0.5em;
  line-height: 1em;
  text-align: center;
  background-color: var(--primary);
  color: var(--white);
  border-radius: 50%;
  margin-top: -0.5em;
  font-weight: 700;
  margin-right: 0.7em;
}

/* ARTICLE LIST */

.article-list {
  display: flex;
  gap: 50px;
  flex-wrap: wrap;
}

.article-list .article {
  border-radius: 1em;
  overflow: hidden;
  box-shadow: var(--shadow);
  width: calc(33.33% - 33.33px);
}

.article-list .article a {
  text-decoration: none;
}

.article-list .article a.read-more {
	font-size: 0.85em;
	margin-top: 20px;
}

.article-list .article .image {
  display: block;
  position: relative;
  border-radius: 1em 1em 0 0;
  overflow: hidden;
}

.article-list .article .image img {
  display: block;
  width: 100%;
  height: auto;
  -webkit-transition: all .6s ease-in-out;
	-moz-transition: all .6s ease-in-out;
	-o-transition: all .6s ease-in-out;
	transition: all .6s ease-in-out;
}

.article-list .article:hover .image img {
  transform: scale(1.05);
}

.article-list .article .text {
  padding: 30px;
  border-radius: 0 0 1em 1em;
  overflow: hidden;
  border-left: 1px solid var(--medium);
  border-right: 1px solid var(--medium);
  border-bottom: 1px solid var(--medium);
}

.article-list .article .text h3 {
  color: var(--black);
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: 1em;
}

.article-list .article .text .date {
  margin-top: 20px;
}

/* FOOTER */

footer {
  background-color: var(--light);
  padding-top: 60px;
  padding-bottom: 60px;
}

footer .container {
  display: flex;
  gap: 50px;
  margin-top: 30px;
  justify-content: space-between;
}

footer .container:first-child {
  margin-top: 0;
}

footer .container .footer-widget:first-child {
  width: calc(33.33% - 25px);
}

footer .container .footer-widget:nth-child(2) {
  width: calc(66.66% - 25px);
}

footer .logo {
  display: block;
  margin-bottom: 30px;
}

footer .logo img {
  width: 230px;
  max-width: 70%;
}

footer .footer-widget h3 {
  color: var(--primary);
}

footer .footer-nav {
  column-count: 2;
  column-gap: 30px;
}

footer .footer-nav a {
  display: block;
  margin-bottom: 10px;
}

footer a:hover {
  color: var(--primary);
}

footer a {
  text-decoration: none;
}

.social-media {
  display: flex;
  gap: 10px;
  align-items: center;
}

.social-media a {
  display: inline-block;
}

.social-media a:last-child {
  margin-right: 0;
}

.social-media a img {
  height: 35px;
}

.organizations {
  display: block;
}

.organizations a {
  display: inline-block;
  margin-right: 30px;
}

.organizations a:last-child {
  margin-right: 0;
}

.organizations a img {
  height: 35px;
}

.copyrights {
  display: block;
  width: 100%;
  text-align: center;
}

/* SUBPAGE HEADER */

.subpage-header {
  background: var(--primary);
  background: var(--gradient);
  color: var(--white);
  position: relative;
}

.subpage-header .background {
  position: absolute;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
  left: 0;
  top: 0;
}  

.subpage-header .background:after {
  position: absolute;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
  left: 0;
  top: 0;
  opacity: 0.4;
  background-color: var(--dark);
  content: "";
}  

.subpage-header .container {
  position: relative;
  z-index: 1;
}  

.subpage-header h1, .article-header h1, .subpage-header .h1, .article-header .h1 {
  display: block;
  text-align: center;
  color: var(--white);
}

.article-header {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  position: relative;
}

.article-header:before {
  z-index: 0;
  background-color: var(--black);
  opacity: 0.2;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.article-header .informations {
  margin-top: 70px;
  color: var(--white);
  display: block;
}

.article-header .informations i.fa {
  margin-right: 10px;
}

.breadcrumbs {
  display: block;
  text-align: center;
  margin-top: 30px;
  font-size: 0.85em;
}

.breadcrumbs .active {
  text-decoration: underline;
}

.breadcrumbs > img {
  height: 0.5em;
  filter: saturate(0);
}

/* PAGINATION */

.pagination {
  display: block;
  margin-top: 50px;
  text-align: center;
}

.pagination a, .pagination span {
  width: 2em;
  height: 2em;
  padding-top: 0.5em;
  line-height: 1em;
  text-align: center;
  background-color: var(--white);
  border: 1px solid var(--medium);
  color: var(--dark);
  border-radius: 50%;
  margin-top: -0.5em;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  margin-right: 10px;
}

.pagination span.active, .pagination a:hover, .pagination .current {
  background-color: var(--primary);
  color: var(--white);
  border-color: var(--primary);
}

/* CONTENT WITH SIDEBAR */

.content-with-sidebar {
  display: flex;
  gap: 50px;
  align-items:flex-start;
  align-content:flex-start;
  position: relative;
}

.content-with-sidebar .sidebar-stop {
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  opacity: 0;
}

.content-with-sidebar .sidebar {
  width: calc(33.33% - 25px);
  order: 2;
}

.content-with-sidebar .sidebar > div {
  margin-bottom: 30px;
}

.content-with-sidebar .sidebar > div:last-child {
  margin-bottom: 0;
}

.content-with-sidebar .content {
  width: calc(66.66% - 25px);
  order: 1;
}

.short-info {
  padding: 30px;
  border: 1px solid var(--medium);
  color: var(--black);
  text-transform: uppercase;
  border-radius: 1em;
  font-weight: 500;
  background-color: var(--white);
  max-height: 300px;
  overflow-y: auto;
}

.short-info a {
  text-decoration: none;
}

.short-banner {
  overflow: hidden;
  border: 1px solid var(--medium);
  border-radius: 1em;
  padding: 30px;
  color: var(--black);
}

.short-banner h3 {
  text-transform: uppercase;
  margin-bottom: 30px;
}

.short-banner h3 span {
  color: var(--primary);
}

.short-banner ul {
  display: block;
}

.short-banner .primary-button {
  margin-top: 50px;
}

ul.table-of-contents {
	list-style: none;
	padding-left: 0;
}

ul.table-of-contents li {
	text-transform: none;
	position: relative;
  padding-left: 1em;
}

ul.table-of-contents li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: var(--dark);
}

/* CONTENT ELEMENTS */

.border-box {
  padding: 30px;
  border: 1px solid var(--medium);
  border-radius: 1em;
  display: block;
}

.wide-banner {
  display: flex;
  background-color: var(--light);
  gap: 50px;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  border-radius: 1em;
}

.wide-banner .text {
  text-align: center;
}

.wide-banner .text h3 {
  margin-bottom: 0;
  text-align: center;
}

.wide-banner .icon img {
  height: 65px;
  width: auto;
}

.photo-container {
  color: var(--white);
  padding: 50px;
  text-align: center;
  min-height: 400px;
  background-size: cover;
  background-position: center;
  border-radius: 1em;
  overflow: hidden;
}

/* FORMS */

.checkbox-container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-transform: none;
}

.checkbox-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkbox-container .checkmark {
  position: absolute;
  top: 0.3em;
  left: 0;
  height: 1.25em;
  width: 1.25em;
  background-color: transparent;
  border: 1px solid var(--primary);
  border-radius: 3px;
}

.checkbox-container:hover input ~ .checkmark {
  background-color: var(--primary);
}

.checkbox-container input:checked ~ .checkmark {
  background-color: var(--primary);
}

.checkbox-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.checkbox-container input:checked ~ .checkmark:after {
  display: block;
}

.checkbox-container .checkmark:after {
  left: 50%;
  top: 50%;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg) translateX(-100%) translateY(-20%);
}

.radio-container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-transform: none;
  font-size: 1em;
}

.radio-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.radio-container .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.25em;
  width: 1.25em;
  background-color: transparent;
  border: 1px solid var(--primary);
  border-radius: 50%;
}

.radio-container:hover input ~ .checkmark {
  background-color: var(--primary);
}

.radio-container input:checked ~ .checkmark {
  background-color: var(--primary);
}

.radio-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.radio-container input:checked ~ .checkmark:after {
  display: block;
}

.radio-container .checkmark:after {
  top: 9px;
  left: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

input, select, textarea, .form-control {
  width: 100%;
}

.contact-form, .contact-info {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 575px;
}

.contact-info {
  text-align: center;
}

.contact-info a {
  display: table;
  border-bottom: 1px solid var(--primary);
  color: var(--primary);
  padding: 0.3em 1em;
  text-decoration: none;
  margin: 15px auto;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.contact-info a:hover {
  background-color: var(--primary);
  color: var(--white);
}

.form-row {
  display: flex;
  gap: 14px;
  position: relative;
  margin-left: 0;
  margin-right: 0;
}

.form-row .form-col {
  width: 100%;
  position: relative;
}

.form-row.two-col .form-col {
  width: calc(50% - 7px);
}

.medicine-row .delete {
  position: absolute;
  right: -10px;
  transform: translateX(100%) translateY(-50%);
  top: 50%;
  color: var(--red);
}

.form-row .form-col > input[type=date], .form-control {
	max-width: 400px;
}

form .form-row {
  margin-bottom: 20px;
}

form .form-row:last-child {
  margin-bottom: 0;
}

select {
  padding-right: 30px;
}

select, .select-container {
  cursor: pointer;
  appearance: none;
}

select:hover, input:hover, textarea:hover, .form-control:hover {
  opacity: 0.7;
}

select::-ms-expand {
  display: none;
}

.select-container {
  position: relative;
  display: flex;
  overflow: hidden;
}

.select-container::after {
  content: '\203A';
  position: absolute;
  top: 50%;
  right: 15px;
  font-size: 2em;
  transform: translateY(-50%) rotate(90deg);
  color: var(--dark);
  transition: .25s all ease;
  pointer-events: none;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.select-container:hover::after {
  color: var(--primary);
}

.woocommerce form .form-row {
  padding: 0;
}

.medicine-row {
  width: 100%;
  display: flex;
  gap: 20px;
  position: relative;
}

.medicine-row .form-col {
  width: 20%;
}

.medicine-row .form-col:first-child {
  width: calc(60% - 40px);
}

.questionnaire-form input, .questionnaire-form textarea, .questionnaire-form select, .woocommerce form .form-row select, .questionnaire-form .form-control {
  margin-top: 5px;
}

.questionnaire-form input:focus, .questionnaire-form textarea:focus, .questionnaire-form select:focus, .form-control:focus  {
  border: 1px solid var(--primary);
}

.warning {
  color: var(--red);
  display: block;
}

.questionnaire-form textarea {
  min-height: 200px;
}

.buttons {
  display: flex;
  gap: 14px;
  margin-top: 5px;
}

.buttons button {
  cursor: pointer;
  display: table;
  border-radius: 0.65em;
  position: relative;
  text-decoration: none;
  padding: 0.65em 1.875em;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  font-weight: 600;
  background-color: var(--light);
  color: var(--black);
  text-align: center;
  min-width: 180px;
}

.buttons button:hover, .buttons button.active {
  background-color: var(--primary);
  color: var(--white);
  padding: 0.65em 1.875em;
}

.questionnaire-form label {
  margin-bottom: 0;
  margin-top: 10px;
}

.questionnaire-form.personal-form label {
  margin-top: 5px;
}

.questionnaire-form.personal-form .form-row {
  margin-bottom: 0;
}

input[type=file]::file-selector-button {
  margin-right: 20px;
  border: none;
  background: var(--primary);
  padding: 10px 20px;
  border-radius: 10px;
  color: #fff;
  cursor: pointer;
  transition: background .2s ease-in-out;
}

input[type=file]::file-selector-button:hover {
  background: var(--secondary);
}

.drop-container {
  position: relative;
  display: flex;
  gap: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--dark);
  cursor: pointer;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.drop-container:hover .drop-title {
  color: var(--primary);
}

.drop-title {
  color: var(--black);
  font-weight: bold;
  text-align: center;
  transition: color .2s ease-in-out;
}

.drop-container.drag-active {
  background: var(--light);
  border-color: var(--primary);
}

.drop-container.drag-active .drop-title {
  color: var(--dark);
}

.personal-form {
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 30px);
  max-width: 880px;
}

.price-and-discount {
  display: block;
  text-align: center;
}

.price-and-discount .price {
  font-size: 3.5em;
  color: var(--primary);
  font-weight: 700;
}

.small {
  font-size: 0.85em;
}

.omnibus {
  display: block;
  font-size: 0.85em;
}

.input-and-button {
  display: flex;
  gap: 15px;
  width: 100%;
  max-width: 450px;
  margin-top: 30px;
}

.input-and-button.discount-code {
  margin-left: auto;
  margin-right: auto;
}

.input-and-button .send {
  color: var(--primary);
  background-color: var(--light);
  border: none;
  outline: none;
  box-shadow: none;
  border-radius: 0.32em;
  padding: 1em;
}

.input-and-button .send:hover {
  color: var(--white);
  background-color: var(--primary);
}

.price-and-discount .primary-button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
}

/* MEDICINE LIST */

.letter-list {
  display: flex;
  gap: 10px 20px;
  margin-top: 20px;
  flex-wrap: wrap;
}

.letter-list a {
  text-decoration: none;
}

.medicine-list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  margin-top: 50px;
}

.medicine-list .medicine-item {
  display: block;
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid var(--medium);
  width: calc(50% - 25px);
}

.medicine-list h2 {
  color: var(--secondary);
}

.medicine-list a {
  text-decoration: none;
  display: block;
}

.medicine-add-list {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}

.medicine-add-list .medicine-item {
  width: calc(33.33% - 20px);
  text-align: center;
  background-color: var(--white);
  border-radius: 1em;
  box-shadow: var(--shadow);
  padding: 30px 50px;
}

.medicine-add-list .medicine-item .icon {
  background-color: var(--primary-light);
  border-radius: 0.65em;
  width: 85px;
  padding: 20px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.medicine-add-list .medicine-item .icon img {
  display: block;
  margin: 0 auto;
  height: 45px;
  width: auto;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.medicine-add-list .medicine-item:hover .icon img {
  transform: scale(1.15);
}

.medicine-add-list .medicine-item .title {
  display: block;
  color: var(--black);
  font-size: 1.25em;
  margin-top: 30px;
  max-width: 240px;
  margin-left: auto;
  margin-right: auto;
}

.medicine-add-list .medicine-item a {
  margin-top: 20px;
  font-size: 0.85em;
  display: block;
  opacity: 0.6;
  text-transform: uppercase;
  text-decoration: none;
}

select {
  text-wrap: wrap;
}

.medicine-add-list .medicine-item .select-container {
  font-size: 0.85em;
  margin-top: 30px;
}

.payment-options .payment_methods {
  display: flex;
  gap: 30px;
  justify-content: center;
  list-style: none;
  margin: 0 0 50px 0;
  padding: 0;
}

.payment-options button {
  border-radius: 1em;
  background-color: var(--light);
  padding: 30px;
  text-align: center;
  color: var(--black);
  width: 250px;
}

/*.payment-options button input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
}*/

.payment-options button .logo {
  display: block;
  height: 30px;
  margin-bottom: 20px;
}

.payment-options button .logo img {
  display: block;
  margin: 0 auto;
  height: 30px;
  width: auto;
}

.payment-options button:hover, .payment-options button.active, .payment-options button:has(input[type="radio"]:checked) {
  background-color: var(--primary);
  color: var(--white);
}

.accordion.hiden {
  display: none;
}

.blad-block {
  color: red;
  font-weight: bold;;
}

.ui-widget {
	font-size: inherit;
	font-family: inherit;
	color: inherit;
}

.ui-autocomplete {
	z-index: 99;
}

.ui-autocomplete-input.ui-autocomplete-loading {
	background-image: url(Spinner-1s-31px.gif);
	background-size: 31px;
	background-position: center;
	background-repeat: no-repeat;
}

.ui-widget-content.ui-autocomplete.ui-front .ui-menu-item-wrapper {
	cursor: pointer;
}

.ui-widget-content.ui-autocomplete.ui-front {
	width: 500px;
	font-size: 14px;
	max-width: 80vw;
	border-radius: 15px;
    border: 1px solid #361777;
	background-color: #FFF;
	max-height: 50vh;
	overflow-y: auto;
}

ul.ui-widget-content.ui-autocomplete.ui-front {
	z-index: 99;
}

.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br {
	z-index: 999;
}

.ui-dialog .ui-dialog-titlebar-close {
	font-size: 0;
}

.ui-menu .ui-menu-item {
	padding: 5px !important;
}

.two-column-row {
	display: flex;
	gap: 20px;
}

.two-column-row > .form-col {
	width: calc(50% - 10px);
}

.woocommerce form .form-row::after, .woocommerce form .form-row::before, .woocommerce-page form .form-row::after, .woocommerce-page form .form-row::before {
	display: none;
}

.container > .woocommerce {
	margin-top: 60px;
	margin-bottom: 60px;
}

.woocommerce-form-login__rememberme > input {
	float: left;
    width: 20px;
    margin-top: 0.6em;
    margin-right: 5px;
}

.woocommerce form .password-input, .woocommerce-page form .password-input {
	width: 100%;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
	width: 100%;
	display: block;
}


.woocommerce .woocommerce-form-login .woocommerce-form-login__submitm .woocommerce .woocommerce-form-login .woocommerce-form-login__submit:focus, .woocommerce .woocommerce-form-login .woocommerce-form-login__submit:active, #p24-blik-modal button, #p24-blik-modal button:active, #p24-blik-modal button:focus {
  cursor: pointer;
  display: table;
  border-radius: 0.65em;
  position: relative;
  text-decoration: none;
  padding: 1em 1.875em !important;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  font-weight: 600;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit, #p24-blik-modal button {
  background-color: var(--primary);
  color: var(--white);
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover, .woocommerce .woocommerce-form-login .woocommerce-form-login__submit:focus, .woocommerce .woocommerce-form-login .woocommerce-form-login__submit:active; #p24-blik-modal button:active, #p24-blik-modal button:focus, #p24-blik-modal button:hover {
  background-color: var(--secondary);
  color: var(--white);
  padding: 1em 1.875em;
}

#p24-blik-modal button, #p24-blik-modal button:active, #p24-blik-modal button:focus, #p24-blik-modal button:hover {
	padding: 0.5em 1.875em !important;
	font-size: 1em;
	text-transform: none;
	width: 100%;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button {
	border-radius: 0.65em;
  position: relative;
  text-decoration: none;
  padding: 1em 1.875em !important;
  font-weight: 600;
}

#p24-blik-modal h1 {
	font-size: 1.25em;
	background-color: var(--primary);
    width: 100%;
    color: var(--white);
}

#p24-blik-modal .close-modal {
	width: 20px;
	top: 0;
	filter: invert(1) brightness(200%);
}

.payment-options button {
	 position: relative;
}

.payment-options button > input {
	position: absolute;
	width: 0%;
	height: 0%;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 2;
	cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

#scroll-to-top {
	display: none;
}

.read-more.show-more {
  display: none;
}

.subpage-header .read-more {
	color: var(--white);
	margin-top: 20px;
}

.content-more {
	margin-top: 20px;
}

.woocommerce-notices-shortcode.woocommerce ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.woocommerce-notices-shortcode.woocommerce ul li {
	border: 1px solid var(--red);
	border-radius: 0.65em;
	padding: 30px;
	text-align: center;
}

.form-col .form-info {
	color: var(--red);
}

.woocommerce-notices-shortcode.woocommerce {
	margin-top: 0;
	margin-bottom: 0;
}

.time-selection {
    background-color: var(--white);
    display: block;
    width: 100%;
    position: relative;
    border-radius: 1em;
    box-shadow: var(--shadow);
    padding: 30px;
}

.time-selection h2 {
    font-size: 1.5em;
    display: block;
}

.time-selection .days {
    position: relative;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: center;
}

.time-selection .days .day-selection {
    width: calc(50% - 15px);
	max-width: 100%;
    border-radius: 1em;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
    background-color: var(--light);
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    padding: 30px;
    text-align: center;
	align-items: center;
	justify-content: center;
}

.time-selection .days .day-selection .title {
	display: block;
	width: 100%;
	margin-bottom: 15px;
}

.time-selection .days .day-selection .title .day {
	font-weight: bold;
	display: block;
	font-size: 1.25em;
}

.time-selection .days .day-selection .title .month-name {
	opacity: 0.6;
	display: block;
    font-size: 0.85em;
}

.time-selection .days .day-selection .hours {
	display: block;
	text-align: center;
	margin-top: 5px;
}

.time-selection .days .day-selection .hours button {
	display: block;
	text-align: center;
	border: 1px solid var(--primary);
    border-radius: 3px;
	padding: 10px 15px;
	margin: 0 auto;
}

.time-selection .days .day-selection .hours button:hover, .time-selection .days .day-selection .hours button.active {
	background-color: var(--primary);
	color: var(--white);
}

input#termin {
	opacity: 0;
	width: 0;
	height: 0;
	overflow: hidden;
}

.hidden-input > input { position: absolute; top: 10px; left: 0; width: 1px; height: 1px; pointer-events: none; opacity: 0; }
label.checkbox-container > input { position: absolute; top: 10px; left: 0; width: 1px; height: 1px; pointer-events: none; opacity: 0; }
.medicine-row .hidden-input > input[type=text] {
  position: relative; top: 0; width: 100%; height: auto; pointer-events: auto; opacity: 1;
}

.form-col p {
  font-size: 0.85em;
}

.field-error-text {
  font-size: 12px;
  color: red;
  display: none;
  padding-top: 3px;
}

.form-row label.error.checkbox-container {
  color: inherit;
}

.form-row.error .field-error-text, .form-col.error .field-error-text, .checkbox-container.error .field-error-text {
  display: block;
}

.input-and-button.discount-code {
  display: none;
}

.form-control:disabled, .form-control[readonly] {
  background-color: var(--light);
}

.form-control {
  cursor: pointer !important;
  height: auto;
}

input[type="text"].form-control.data-l4-od,
input[type="text"].form-control.flatpickr-input {
    background-image: url('https://cdn-icons-png.flaticon.com/512/747/747310.png');
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px;
    box-sizing: border-box;
}


.show-discount-form {
  cursor: pointer;
}

.checkoxes-row .checkbox-container .checkmark {
font-size: 1.5em;
}

.show-discount-form .dashicons {
  background-color: var(--primary);
  color: var(--white);
  padding: 5px 5px 2px 5px;
  border-radius: 5px;
  line-height: 1em;
  margin-right: 5px;
  height: auto;
  width: auto;
}

.checkboxes-row {
  font-size: 0.8em;
    line-height: 1.14em;
}
.checkboxes-row  .checkbox-container .checkmark {
  font-size: 1.4em;
  top: 0;
}

.woocommerce form .form-row label {
  color: #222;
}

.show-more, .show-less {
  margin-top: 10px;
  margin-bottom: 10px;
}

.flatpickr-day {
  color: #222;
}

.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay {
    color: #444;
}

.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay {
    color: #CCC;
}

/* FAQ SUBPAGES */

.faq-subpages {
  display: block;
}

.faq-subpages-item a {
  border-bottom: 1px solid var(--medium);
  overflow: hidden;
  display: flex;
  position: relative;
  padding: 1.25em 2em 1.25em 0;
  -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  text-decoration: none;
}

.faq-subpages-item a:before {
  color: var(--primary);
  font-size: 1.5em;
  font-weight: 700;
  content: "\203A";
  position: absolute;
  top: 0.5em;
  right: 0;
}

.faq-subpages-item a h3 {
  font-size: 1em;
  font-weight: 700;
  margin-bottom: 0;
  width: calc(100% - 2.7em);
}

.faq-subpages-item a > span {
  width: 2em;
  height: 2em;
  padding-top: 0.5em;
  line-height: 1em;
  text-align: center;
  background-color: var(--primary);
  color: var(--white);
  border-radius: 50%;
  margin-top: -0.5em;
  font-weight: 700;
  margin-right: 0.7em;
  text-decoration: none;
}

.faq-subpage-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
  margin-top: 50px;
}

.faq-subpage-buttons .back-button, .faq-subpage-buttons .back-button:hover, .faq-subpage-buttons .back-button:active, .faq-subpage-buttons .back-button:focus {
  padding: 0.65em 1.875em 0.65em 2.2em;
  font-weight: 300;
  color: var(--dark);
  
}

/* MOBILE */

@media (max-width: 1040px) {
  header .navbar-toggler, header .navbar-toggler:hover, header .navbar-toggler:focus {
    position: absolute;
    display: block;
    top: 50%;
    margin-top: -8px;
    right: 15px;
    width: 24px;
    height: 21px;
    border-radius: 0;
    outline: none;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    border: none;
  }

  header .navbar-toggler span {
    height: 2px;
    background-color: var(--primary);
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
  }

  header .navbar-toggler span:nth-child(2) {
    top: 7px;
    width: 11px;
  }

  header .navbar-toggler:hover span:nth-child(2) {
    width: 21px;
  }

  header .navbar-toggler span:nth-child(3) {
    top: 14px;
    width: 21px;
  }

  header .navbar-toggler.open span:nth-child(1) {
    width: 21px;
    transform: rotate(45deg);
    top: 0;
  }

  header .navbar-toggler.open span:nth-child(2) {
    width: 0;
  }

  header .navbar-toggler.open span:nth-child(3) {
    width: 21px;
    transform: rotate(-45deg);
    top: 0;
  }

  header .navbar-toggler.open {
    z-index: 1001;
    position: fixed;
    top: 35px;
    margin-top: 0;
  }

  header .main-nav {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 100%;
    background-color: var(--white);
    z-index: 1000;
    right: -100%;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    text-align: center;
    font-size: 1.5em;
  }

  header .main-nav.open {
    right: 0;
  }

  header .nav-bar {
    padding: 15px;
  }

  header .nav-bar.container {
    max-width: 100%;
  }

  header .nav-bar .main-nav {
    padding: 30px;
    margin-top: 50px;
  }

  header .nav-bar .main-nav ul {
    display: block;
  }

  body {
    font-size: 14px;
  }

  .ailments .ailment {
    width: calc(25% - 1.9em);
  }

  .buttons {
    flex-wrap: wrap;
  }
}

@media (max-width: 991px) {
  .service-list .service {
    width: calc(50% - 15px);
  }

  .medicine-add-list .medicine-item {
    width: calc(50% - 10px);
  }
}

@media (max-width: 767px) {
  footer .container {
    flex-wrap: wrap;
  }

  footer .container .footer-widget:first-child, footer .container .footer-widget:nth-child(2) {
    width: 100%;
  }

  .content-with-sidebar {
    flex-wrap: wrap;
  }

  .content-with-sidebar .sidebar {
    width: 100%;
    margin-bottom: 40px;
  }

  .content-with-sidebar .content {
    width: 100%;
  }

  .article-list .article {
    display: block;
    width: 100%;
  }

  .steps-section .steps .step {
    display: block;
    width: 100%;
  }

  .steps-section .steps {
    flex-wrap: wrap;
  }

  .image-and-text-section .container .image {
    width: calc(100% + 30px);
    left: -15px;
    height: 300px;
  }

  .image-and-text-section .container .text {
    width: 100%;
    left: 0;
    margin-top: 160px;
  }

  .image-and-text-section .container {
    padding-bottom: 0;
  }

  body {
    font-size: 12px;
  }

  .wide-banner.space-top-2x {
    margin-top: 0 !important;
  }
}

@media (min-width: 641px) {
	
  .read-more.show-more {
	  display: none !important;
  }
  
  .read-more.content-more {
	  display: none !important;
  }
}

@media(max-width: 640px) {
  .first-section .photo {
    display: none;
  }
  
  .time-selection .days .day-selection {
	  width: 100%;
  }

  body {
    font-size: 16px;
  }

  .first-section .text .info {
    padding-right: 0;
  }

  header .nav-bar .logo {
    max-width: 250px;
	width: 250px;
  }
  
  header .nav-bar .logo img {
	  height: auto !important;
  }

  .service-list .service {
    width: 100%;
  }

  .ailments .ailment {
    width: calc(50% - 1.25em);
  }

  footer .footer-nav {
    column-count: 1;
  }

  .wide-banner {
    display: block;
  }

  .wide-banner .icon, .wide-banner .primary-button {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    display: table;
  }

  .wide-banner .primary-button {
    margin-top: 20px;
    margin-bottom: 0;
  }

  .medicine-row {
    flex-wrap: wrap;
    width: 90%;
  }

  .medicine-row .delete {
    top: 30px;
  }

  .buttons {
    gap: 5px;
  }

  .questionnaire-form.personal-form .form-row.two-col .form-col {
    width: 100%;
  }

  .medicine-row .form-col {
    width: 100%;
  }
  
  .buttons button {
    min-width: 130px;
  }

  .medicine-row .form-col:first-child {
    width: 100%;
  }

  .medicine-add-list .medicine-item {
    width: 100%;
  }

  section {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .medicine-row {
    gap: 10px;
  }

  .checkbox-container {
	  font-size: 0.85em;
  }

  h1 {
    font-size: 2.5em;
  }

  h2 {
    font-size: 1.55em;
  }

  .first-section .text {
    padding-top: 40px;
  }
  
  section.first-section {
    padding-top: 0;
  }
  
  #scroll-to-top {
	position: fixed;
	bottom: 15px;
	right: 15px;
	display: block;
	background-color: var(--primary);
	color: var(--white);
	border: none;
	border-radius: 50%;
	width: 45px;
	height: 45px;
	font-size: 24px;
	line-height: 45px;
	cursor: pointer;
	z-index: 9999;
  }
  
  .read-more.show-more {
	  display: none;
  }
  
  .read-more.content-more {
	  display: none;
  }
  
  .subpage-header .subpage-text {
	  max-height: 4.32em;
	  overflow: hidden;
  }
  
  .woocommerce .content {
	  max-height: 17.28em;
	  overflow: hidden;
  }
  
  .fl-module-content {
	  margin-left: 0;
	  margin-right: 0;
  }
  
  .container {
	  padding-left: 0;
	  padding-right: 0;
	  max-width: calc(100vw - 30px);
  }
  
  .content-with-sidebar .sidebar {
	  order: 1;
	  margin-bottom: 0;
  }
  
  .content-with-sidebar .content {
	  order: 2;
  }
  
  .content-with-sidebar {
	  gap: 30px;
  }
  
  .medicine-list {
	  display: block;
  }
  
  .medicine-list .medicine-item {
	  width: 100%;
  }
  
  .section-title {
    margin-bottom: 20px;
  }
  
}

.form-row.error, .form-col.error, .form-row label.error {
  color: red;
}

/* DOCTORS ONLINE */

.doctors-online {
    display: inline-flex;
    align-items: center;
    border: 2px solid var(--secondary);
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 16px;
    gap: 8px;
    font-size: 0.85em;
    color: var(--secondary);
}

.doctors-online .dot {
    width: 12px;
    height: 12px;
    background-color:  var(--secondary);
    border-radius: 50%;
    animation: pulseDot 1.5s infinite ease-in-out;
}

.doctors-online .number {
    font-weight: bold;
}

@keyframes pulseDot {
    0%, 100% {
        opacity: 0.4;
    }
    50% {
        opacity: 1.0;
    }
}

.first-section .doctors-online {
  margin-bottom: 30px;
}

.lp-timeslots-skeleton .skeleton-row{display:flex;gap:8px;margin:8px 0}
.lp-timeslots-skeleton .pill{width:90px;height:28px;border-radius:999px;background:#eee;animation:pulse 1.2s infinite ease-in-out}
@keyframes pulse{0%{opacity:.6}50%{opacity:1}100%{opacity:.6}}

section.lp-app {
  padding-top: 0;
}

body.lp-mode #app {
  margin-top: 0 !important;
}

body.lp-mode #app .container {
    max-width: 980px;
    margin:32px auto;padding:0 16px
}

.lp-app .subpage-header {
  padding-top: 20px;
}
/* PRODUCT HEADER */

.product-header {
  background: var(--white);
  color: var(--dark);
  border-radius: 1em;
  box-shadow: var(--shadow);
  padding: 24px;
  margin: 20px auto 30px auto;
  position: relative;
  width: 100%;
  display: block;
  max-width: 700px;
  margin-bottom: -75px;
}

.product-header-title,
.product-header-subtitle {
  display: block;
}

.product-header-title :is(h1,h2,h3,h4,h5,h6),
.product-header-title {
  margin: 0 0 8px 0;
  line-height: 1.2;
  font-weight: 700;
  color: var(--secondary);
}

.product-header-subtitle {
  margin: 0 0 18px 0;
  opacity: 0.9;
}

.product-header-subtitle :is(p,ul,ol) {
  margin: 0;
}

.product-header-perk-list {
  display: block;
  margin: 0;
  padding: 0;
}

.product-header-perk-list-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75em;
  padding: 0.5em 0;
  background: transparent;
  border-radius: 0;
}

.product-header-perk-list-item + .product-header-perk-list-item {
  border-top: 1px solid var(--medium);
}

.product-header-perk-list-item-icon {
  flex: 0 0 2em;
  width: 2em;
  max-width: 2em;
  height: auto;
  background: transparent;
  box-shadow: none;
  display: block;
  overflow: visible;
}

.product-header-perk-list-item-icon img {
  display: block;
  width: 100%;
  height: auto;
}

.product-header-perk-list-item-icon:empty {
  display: none;
}
.product-header-perk-list-item-icon:empty + .product-header-perk-list-item-text {
  margin-left: 0;
}

.product-header-perk-list-item-text {
  flex: 1 1 auto;
  line-height: 1.44;
}

.product-header-perk-list-item-text strong { color: var(--primary); }
.product-header-perk-list-item-text :is(p,ul,ol) { margin: 0; }
.product-header-perk-list-item-text p + p,
.product-header-perk-list-item-text :is(ul,ol) { margin-top: 0.4em; }

@media (min-width: 576px) {
  .product-header {
    padding: 28px;
  }
}

@media (min-width: 992px) {
  .product-header {
    padding: 32px;
  }
  .product-header-subtitle {
    font-size: 1.05em;
  }
  .product-header-perk-list {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
  }
}

@media (min-width: 1400px) {
  .product-header {
    padding: 36px;
  }
  .product-header-perk-list {
    gap: 20px;
  }
}

.invert .product-header {
  background: rgba(255,255,255,0.06);
  color: var(--white);
  box-shadow: none;
}
.invert .product-header-title :is(h1,h2,h3,h4,h5,h6),
.invert .product-header-title {
  color: var(--white);
}
.invert .product-header-subtitle {
  color: var(--white);
  opacity: 0.9;
}
.invert .product-header-perk-list-item {
  background: rgba(255,255,255,0.08);
}
.invert .product-header-perk-list-item-icon {
  background: rgba(255,255,255,0.15);
  box-shadow: none;
}

/* === MENU GŁÓWNE – DESKTOP === */

header .nav-bar .main-nav ul li {
  position: relative;
}

header .nav-bar .main-nav ul li.menu-item-has-children > a {
  padding-right: 18px;
}

/* Strzałka tylko na desktop */
header .nav-bar .main-nav ul li.menu-item-has-children > a:after {
  content: "›";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  font-size: 0.8em;
  color: var(--dark);
  transition: .2s ease-in-out;
}

header .nav-bar .main-nav ul li.menu-item-has-children:hover > a:after {
  color: var(--primary);
  transform: translateY(-50%) rotate(90deg) scale(1.2);
}

/* === SUBMENU DESKTOP === */

header .nav-bar .main-nav ul li .sub-menu {
  position: absolute;
  left: 0;
  top: calc(100% + 5px);
  min-width: 185px;
  background-color: var(--white);
  border-radius: 0.65em;
  box-shadow: var(--shadow);
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all .25s ease;
  z-index: 1000;
  display: block; /* wymuszenie */
}

header .nav-bar .main-nav ul li:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

header .nav-bar .main-nav ul li .sub-menu li {
  padding: 0;
  margin: 0;
}

header .nav-bar .main-nav ul li .sub-menu li a {
  display: block;
  padding: 6px 14px;
  font-size: 0.9em;
  line-height: 1.3;
  font-weight: 500;
  text-decoration: none;
  color: var(--dark);
  transition: .2s;
}

header .nav-bar .main-nav ul li .sub-menu li a:hover {
  background-color: var(--primary-light);
  color: var(--primary);
}


/* === MOBILE – BEZ ROZWIJANIA SUBMENU === */

@media (max-width: 1040px) {

  /* usuń strzałkę w mobile */
  header .nav-bar .main-nav ul li.menu-item-has-children > a:after {
    content: none !important;
  }

  /* submenu niewidoczne w mobile */
  header .nav-bar .main-nav ul li .sub-menu {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: relative !important;
    top: 0 !important;
    box-shadow: none;
    padding: 0;
    width: 100%;
  }

  /* wygląd linków w mobile */
  header .nav-bar .main-nav ul li {
    margin: 6px 0;
  }

  header .nav-bar .main-nav ul li > a {
    display: block;
    font-weight: 600;
    padding: 10px 0 !important;
    font-size: 1em;
    text-align: center;
  }
}

  .modal_tlo {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 1000;
  }

  .modal_box {
    background: #fff;
    width: 450px;
    max-width: 90vw;
    padding: 45px;
    margin: 100px auto;
    border-radius: 8px;
    text-align: center;
    position: relative;
    font-size: 1.15em;
  }

  .modal_btn, .modal_btn:hover, .modal_btn:focus {
    cursor: pointer;
    display: inline-block;
    margin: 7px !important;
  }

  .btn_zamow {

  }

  .modal_info {
    
  }