/*
 Theme Name:   Przemek Miłoś
 Author:       Gosia Goźdź myspot.ON
 Template:     Divi
 Version:      1.59
*/

/* ===================== GLOBAL STYLES ===================== */

#page-container { 
  overflow: hidden; 
  width: 100%; 
  max-width: 100%; 
}


/* ===================== TEXT MODULE ===================== */
.pm-text h1,
.pm-text h2,
.pm-text h3,
.pm-text h4,
.pm-text h5,
.pm-text h6 {
  padding-bottom: 0.5em;
}

.pm-text h1:not(:first-child),
.pm-text h2:not(:first-child),
.pm-text h3:not(:first-child),
.pm-text h4:not(:first-child),
.pm-text h5:not(:first-child),
.pm-text h6:not(:first-child) {
  padding-top: 0.25em;
}

.pm-text ul li,
.pm-text ol li {
  padding-bottom: 0.25em;
  line-height: 1.2em;
}

.pm-text p:last-of-type {
  padding-bottom: 0.5em;
}

.pm-text p:last-child {
  padding-bottom: 0;
}



/* ===================== LAYOUT ===================== */

::selection {
  background-color: #9CCCF2;
  color: #000;
}


/* ===================== BUTTON ===================== */
.pm-button {
  position: relative;
  display: inline-block;
  cursor: pointer;
  overflow: hidden;
  z-index: 0;
}

.pm-button .sa-cursor {
  position: absolute;
  width: 0;
  height: 0;
  background: radial-gradient(
      circle at 40% 40%,
      rgba(118, 169, 255, 0.85) 0%,   
      rgba(166, 130, 255, 0.7) 25%,   
      rgba(255, 157, 164, 1) 40%, 
      rgba(118, 169, 255, 0.7) 75%,
      rgba(255, 255, 255, 0) 90% 
  );
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -40%);
  transition: width 0.6s ease, height 0.6s ease, opacity 0.6s ease;
  mix-blend-mode: soft-light;
  filter: blur(30px);
  opacity: 0.9;
  z-index: -1;
}

.pm-button:hover .sa-cursor {
  width: 350px;
  height: 350px;
  opacity: 1;
}

.pm-button:active .sa-cursor {
  width: 300px;
  height: 300px;
  opacity: 0.85;
}

.pm-button span,
.pm-button a {
  position: relative;
  z-index: 2;
}


/* ===================== LINK STYLING ===================== */
#pm-header .et-menu > li {
    position: relative;
  }

  #pm-header .et-menu > li::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
	width: 100%;   
	height: 6px;
    background: linear-gradient(90deg,#FF6F59 0%,#77CBFA 50%,#A77AFF 100%);
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .35s ease-in-out;
    pointer-events: none;
  }

  #pm-header .et-menu > li:hover::after {
    transform-origin: left;
    transform: scaleX(1);
  }



/* ===================== BACK TO TOP ===================== */
.et_pb_scroll_top {
  padding: 10px !important;
}

.et_pb_scroll_top.et-visible {
  opacity: 1;
  animation: fadeInBottom 1s 1 cubic-bezier(.77, 0, .175, 1);
}

.et_pb_scroll_top.et-pb-icon {
  right: 15px;
  bottom: 20px;
  background: transparent;
  transition: all 0.2s ease-in;
}

.et_pb_scroll_top:before {
  content: "\21";
  color: #282730;
}



/* ===================== HEADER ===================== */

#pm-header {
  background-color: rgba(255, 255, 255, 0); 
  transition: background-color 0.4s ease;
}

.et_pb_sticky.et_pb_sticky--top#pm-header {
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  background-color: rgba(242, 241, 241, 0.5);
}


/* ===================== MOBILE MENU ===================== */

@media (max-width:980px) {

#pm-header .et_pb_row {
    display: flex;
    align-items: center;
}

#pm-header .et_pb_column {
    margin-bottom: 0;
}

#pm-header .mobile_menu_bar:before {
    font-size: 40px;
}

#pm-header .opened .mobile_menu_bar:before {
    content: '\4d';
}

#pm-header .et_mobile_menu {
    position: fixed;
    display: block !important;
    margin: 0 !important;
    height: 100% !important;
    min-height: 100vh;
    padding: 150px 0 0 !important;
    max-width: 280px;
    left: auto;
    right: -280px;
    top: 0;
    z-index: 39;
	transition: all .3s ease-in-out;}

#pm-header .opened .et_mobile_menu {
    right: 0;
}

#pm-header ul#mobile_menu1 a {
    margin-left: 20px !important;
	 border:none!important;
}

#pm-header .mobile_menu_bar {
    z-index: 40;
}

#pm-header.et_pb_sticky * {
    transform: none !important;
}

#pm-header ul#mobile_menu1 { 
	background: #F2F1F1 !important; 
	border:none!important; }


#pm-header .sub-menu {
    width: auto;
    padding: 0;
}

#pm-header .sub-menu li a,
#pm-header .sub-menu li a:hover,
#pm-header.sub-menu li:last-child a {
    padding: 10px 25px 10px 35px;
}}



/* ===================== FOOTER ===================== */
#pm-footer .et_pb_menu .et_pb_menu__menu {
  display: block !important;
}

#pm-footer .et_mobile_nav_menu {
  display: none !important;
}

@media (max-width: 980px) {
  #pm-footer .et_pb_menu__menu nav ul.et-menu {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  #pm-footer .et_pb_menu__menu nav ul.et-menu li a {
    display: inline-block;
    padding: 4px 0;
  }
}



/* ===================== CASE STUDIES ===================== */
.case-studies .et_clickable {
  position: relative;
  transition: box-shadow 0.5s ease, transform 0.4s ease;
  border-radius: 12px;
  background-color: #fff;
}

.case-studies .et_clickable:hover {
  transform: translateY(-4px);
  box-shadow:
    8px 8px 20px rgba(119, 203, 250, 0.45), 
    12px 12px 35px rgba(167, 122, 255, 0.4),
	  16px 16px 50px rgba(119, 203, 250, 0.3);}
	

.case-studies .et_clickable::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 12px;
  background: radial-gradient(circle at bottom right,
    rgba(167, 122, 255, 0.12) 0%,
    rgba(119, 203, 250, 0.08) 40%,
    rgba(167, 122, 255, 0.05) 80%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.case-studies .et_clickable:hover::before {
  opacity: 1;
}



/* ===================== FORMULARZ ===================== */

.forminator-field input,
span.select2-selection.select2-selection--single,
textarea {
    padding: 12px!important;
    border-radius: 10px!important;}

#checkbox-1 label {
    align-items:flex-start;}


span.forminator-checkbox-label {
     line-height:1.2em!important;
    text-align:left!important;
    font-size:12px!important;
color:#282730}


button.forminator-button.forminator-button-submit {
    border:1px solid #282730!important;
    border-radius:40px!important;
    font-size:18px!important;
    padding:0.5em 3em!important;
display: block!important;
margin-left: auto!important;
margin-top:20px!important;
}

button.forminator-button.forminator-button-submit:hover {
   background:#F2F1F1!important;
    box-shadow:none!important;}