@charset "UTF-8";
@import url("../scss/modules/utilities.scss");
@import url("../node_modules/normalize.css/normalize.css");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;700&family=Merriweather:wght@300;400;700&family=Oxygen&family=Oxygen+Mono&family=Raleway:wght@200;400;600&display=swap");
/*Zmienne*/
/*Ogólne*/
.material-symbols-rounded {
  font-variation-settings: 'FILL' 0, 'wght' 700, 'GRAD' 0, 'opsz' 48; }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: 'Merriweather', serif;
  line-height: 1.75; }

.main {
  margin-top: 60px;
  position: relative; }
  @media (min-width: 769px) {
    .main {
      margin-top: 59px; } }

.booksy-widget-container-dialog.booksy-widget-container-default {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 2; }
  @media (min-width: 769px) {
    .booksy-widget-container-dialog.booksy-widget-container-default {
      bottom: 3rem; } }

.section-container {
  padding: 2rem 1rem;
  max-width: 1200px;
  margin: 0 auto; }
  .section-container__content--1-1 {
    display: grid;
    gap: 1rem; }
    @media (min-width: 769px) {
      .section-container__content--1-1 {
        grid-template-columns: 1fr 1fr; } }
  .section-container__content--1-2 {
    display: grid;
    gap: 1rem; }
    @media (min-width: 769px) {
      .section-container__content--1-2 {
        grid-template-columns: 1fr 2fr; } }
  .section-container__content--1-1-1 {
    display: grid;
    gap: 1rem; }
    @media (min-width: 481px) and (max-width: 768px) {
      .section-container__content--1-1-1 {
        grid-template-columns: 1fr 1fr; } }
    @media (min-width: 769px) {
      .section-container__content--1-1-1 {
        grid-template-columns: 1fr 1fr 1fr;
        gap: 1.5rem; } }
  .section-container__content--2-1 {
    display: grid;
    gap: 1rem; }
    @media (min-width: 769px) {
      .section-container__content--2-1 {
        grid-template-columns: 2fr 1fr;
        gap: 1.5rem; } }
  .section-container__title {
    margin-top: 0;
    margin-bottom: .75rem;
    text-align: center;
    font-size: 2.2rem;
    position: relative; }
    .section-container__title--separator {
      width: 25%;
      height: 2px;
      background: #fca311;
      margin: 0 auto 1.5rem auto; }
  @media (min-width: 769px) {
    .section-container {
      padding: 3rem 1rem; } }

.full-width {
  width: 100%; }
  .full-width__light-bg {
    background-color: #f5f5f5; }

/*Listing z wykropkowaniem*/
.special-listing {
  width: 190px;
  margin: auto auto 0 auto;
  padding-left: 2rem;
  list-style: none;
  padding-top: 1.5rem;
  padding-bottom: 0.75rem; }
  .special-listing__element {
    position: relative;
    padding-bottom: 1rem;
    line-height: 1;
    font-weight: 700;
    font-size: .9rem;
    color: #14213d; }
    .special-listing__element:before {
      position: absolute;
      left: -33px;
      color: #eebc6c;
      width: 14px;
      height: 14px;
      border-radius: 50%;
      border: 3px solid;
      content: ""; }
    .special-listing__element--border {
      border-left: 2px solid #eebc6c;
      height: calc(100% - 14px);
      position: absolute;
      top: 14px;
      left: -27px; }
      .special-listing__element--border:last-child {
        padding-bottom: 0; }

/*Nawigacja*/
.header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 60px;
  z-index: 2;
  background: #14213d; }
  .header__logo {
    height: 50px;
    width: 50px; }

.navigation {
  margin-top: 60px;
  background: #14213d; }
  .navigation--open {
    display: none; }
  .navigation__link {
    font-weight: 200;
    display: block;
    color: white;
    text-decoration: none;
    padding: 1rem 1rem;
    border-bottom: 1px solid rgba(242, 233, 228, 0.8); }
    @media (min-width: 1200px) {
      .navigation__link {
        border-bottom: none;
        padding: 0 1rem; } }
    .navigation__link--homepage {
      position: absolute;
      left: 1rem;
      top: 5px; }
  .navigation__link:hover {
    color: #fca311;
    border-bottom: 1px solid #fca311; }
  .navigation__hamburger {
    height: 60px;
    width: 60px;
    border: none;
    position: absolute;
    right: 0;
    padding: 8px;
    background: none; }
    @media (min-width: 1200px) {
      .navigation__hamburger {
        display: none; } }
  .navigation__hamburger--svg {
    background: white; }
  @media (min-width: 1200px) {
    .navigation {
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: center; } }
  @media (min-width: 1200px) {
    .navigation {
      margin-top: inherit;
      height: 60px; } }

/*Slider*/
.mySwiperMain__pagination {
  position: absolute !important; }

.mySwiperMain__title--text {
  font-size: 20px;
  color: rgba(255, 255, 255, 0.7);
  position: absolute;
  bottom: 1rem;
  z-index: 2;
  text-align: center;
  padding: 1rem;
  background: rgba(20, 33, 61, 0.65);
  border-radius: 12px;
  border-top: 2px solid #fca311;
  border-bottom: 2px solid #fca311;
  width: calc(100vw - 40px);
  left: 20px; }
  @media (min-width: 769px) {
    .mySwiperMain__title--text {
      color: white;
      background: rgba(20, 33, 61, 0.8);
      font-size: 2.5rem;
      left: 15%;
      bottom: 15%;
      height: min-content;
      width: 500px; } }

.mySwiperMain:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(20, 33, 61, 0.4);
  z-index: 2; }

@media (min-width: 769px) {
  .mySwiperMain {
    max-height: 700px; } }

/*Oferta*/
.offer {
  padding: 24px;
  border: 1px solid #22223b;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  box-shadow: 2.5px 2.5px #14213d; }
  .offer.offer:hover {
    box-shadow: 2.5px 2.5px 10px #14213d;
    transition: 250ms ease-in; }
  .offer__img {
    max-width: 100%;
    width: 200px;
    margin: 0 auto;
    border-radius: 50%; }
  .offer__title {
    font-size: 1.35rem;
    line-height: 1.25;
    text-align: center;
    color: black;
    font-weight: 500;
    margin-bottom: 0; }
  .offer__descirption {
    font-size: 1rem;
    line-height: 1.25;
    color: #0d1b2a; }
  .offer__link {
    margin: 0 auto;
    color: white;
    background: #14213d;
    padding: 16px;
    border-radius: 12px;
    text-decoration: none;
    text-align: center; }
  .offer__link:hover {
    color: #fca311;
    background: #14213d;
    transition: 250ms ease-in-out; }
  .offer__bottom {
    text-align: center;
    margin: 0 auto;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center; }

/*Slajder - ogólne*/
.swiper {
  max-width: 1920px;
  width: 100%;
  height: 100%; }
  .swiper-pagination {
    position: static;
    margin-top: 1.5rem;
    transform: none!important;
    margin-left: auto;
    margin-right: auto; }
    .swiper-pagination-bullet-active {
      background: #fca311; }

/*Opinie*/
.opinion {
  position: relative;
  display: flex;
  flex-direction: column;
  border: #14213d;
  border-radius: 32px;
  margin-right: 5px;
  background: white; }
  .opinion__user {
    text-align: center;
    background: #14213d;
    border-radius: 32px 32px 0 50px;
    padding: 1rem; }
    .opinion__user--name {
      color: white;
      font-weight: 300;
      margin: .5rem 0 0 0; }
  .opinion__content {
    padding: 1rem;
    font-size: .8rem; }
    .opinion__content--text {
      height: 100px;
      overflow: auto; }
    .opinion__content--img {
      height: 20px; }

/*O mnie*/
.about-me {
    margin-bottom: 1.5rem;
}
.about-me, .reminder {
  display: grid;
  gap: 1.5rem; }
  .about-me__description, .reminder__description {
    margin: auto 0; }
  .about-me__img, .reminder__img {
    border-radius: 24px;
    max-width: 100%;
    margin: 0 auto; }
  @media (min-width: 769px) {
    .about-me, .reminder {
      grid-template-columns: 1fr 1fr; } }
    @media (max-width: 768px) {
    .about-me__img.mobile-reverse {
      grid-row-start: 1;
} }

/*Usługa*/
.service-header__img {
  max-width: 100%;
  border-radius: 24px; }

.service-header__text {
  text-align: center; }

.service-header__title {
  font-size: 1.75rem; }

@media (min-width: 768px) {
  .service-header__description {
    font-size: 1rem; } }

.service-header__link {
  margin: 0 auto;
  color: white;
  background: #14213d;
  padding: 16px;
  border-radius: 12px;
  text-decoration: none;
  text-align: center;
  margin-bottom: 1rem;
  display: inline-block;
  margin: 0/5rem auto 1rem auto;
  width: 100%; }
  @media (min-width: 769px) {
    .service-header__link {
      width: 45%; } }

.service-header__link:hover {
  color: #fca311;
  background: #14213d;
  transition: 250ms ease-in-out; }

.service-aside {
  padding: 24px;
  border: 1px solid #22223b;
  border-radius: 32px;
  background-color: #14213d;
  position: relative; }
  .service-aside__title {
    color: white;
    text-align: center; }
  @media (min-width: 769px) {
    .service-aside__container {
      position: sticky;
      top: calc(1rem + 60px); } }

.service-aside .special-listing__element {
  color: white;
  letter-spacing: .15rem;
  line-height: 1.5; }

.service-content__title {
  text-align: center; }
  @media (min-width: 769px) {
    .service-content__title {
      text-align: unset; } }

.reminder__title {
  text-align: center; }

/*Footer*/
.footer {
  background: #14213d;
  color: white; }

.contact {
  display: flex;
  flex-direction: column;
  justify-content: space-around; }
  .contact__list {
    list-style-type: none;
    padding: 0; }
    .contact__list--element {
      font-size: 1.1rem;
      display: flex;
      gap: 1rem;
      align-items: center;
      margin-bottom: .5rem; }
    .contact__list--element a {
      color: white;
      text-decoration: none; }
  .contact__link {
    margin: auto auto 0 auto;
    color: white;
    background: #fca311;
    padding: 16px;
    border-radius: 12px;
    text-decoration: none;
    text-align: center; }
