@import url('https://fonts.googleapis.com/css2?family=Sofia+Sans:ital,wght@0,1..1000;1,1..1000&display=swap');
html {scroll-behavior: smooth;}
body {
    counter-reset: number;   
    font-family: "Sofia Sans", sans-serif;            
    text-align: justify;    
    font-size: 1.1rem;
    line-height: 1.1;
}
a {
    color: #5800ed;
    transition: .3s;
}
a:hover {
    color: #fd00ff;
    text-decoration: none;
}
.text-primary, h5, .h5 {
    color: #3102e6 !important;
}
.bg-top {
    background: url(/assets/images/top-bg.webp) center;
    background-size: cover;
}
.bg-botshadow {
    background: linear-gradient(0deg, #2e364d82 0%, transparent 20% );
}
.bg-grey {
    background: #f2f2f2;
}
.rounded-2  {
    border-radius: 6px;
}
.border-3  {
    border: solid 3px #e8e8e8;
}
.hide {
    display: none;
}
#carouselExampleIndicators button {
    background: transparent;
    border: none;
}                          
.nav-item:hover .hide {
    display: block;
    position: absolute;
    left: 310px;
    background: white;
    min-width: 300px;
    top: 0;
    padding: 20px;
    z-index: 2;      
    transform: translateY(0);
    opacity: 1;
    -webkit-animation-name: slide-top;
    animation-name: slide-top;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;            
    min-height: 552px;
}
.nav-link img {
    width: 16px;
    margin: -4px 5px 0 0;
}
.bg-top .navbar-brand img {
  transition: .5s;
}
.bg-top .navbar-brand img:hover {
  scale: 1.05;
}
.underline {
  border: 2px solid transparent;        
  position: relative;
}
.underline:after {
  width: 0%;
  height: 2px;
  display: block;
  background-color: #000;
  content: " ";
  position: absolute;
  top: 22px;
  left: 50%;
  -webkit-transition: left 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), width 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: left 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), width 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.underline:hover:after {
  width: 100%;
  height: 2px;
  display: block;
  background: linear-gradient(90deg, #e212b5, #0dcacf);
  content: " ";
  position: absolute;
  top: 22px;
  left: 0;
}

.foto {min-height: 250px;}
.foto a:hover {
    cursor: pointer;
}
.foto a img {
    filter: grayscale(1);
    transition: 0.3s;
    transform: rotate(-4deg);
    border: 6px solid white;
    box-shadow: 2px 2px 10px #00000052;      
    position: absolute;           
    width:70%;   
    top: 40px;    
}
.foto a img:hover  {
    filter: none;              
    transform: rotate(-3deg);      
    z-index: 1;
}          
.foto a:nth-child(2)  img {          
    transform: rotate(5deg);       
    top: 10px;       
    right: 0px;
}      
.foto a:nth-child(2) img:hover  {
    filter: none;              
    transform: rotate(3deg);        
}
.foto a:nth-child(3) img {          
    transform: rotate(-2deg);       
    top: 0px;       
    right: 40px;
}      
.foto a:nth-child(3) img:hover  {
    filter: none;              
    transform: rotate(3deg);        
}
.plus.collapsed::after {
    transform: rotate(45deg);
} 
.plus::after {
    content: url(/assets/images/icons/close.svg);   
    position: absolute;
    right: 16px;
    top: 13px;
    transform: rotate(0deg);
    transition: .5s;
} 
.card-header {
    padding: .4rem;
    background-color: transparent;
}
.pagination {
    justify-content: center;
    margin-top: 2rem;
}
.modal-content {
    border: 0;
    border-radius: 0;
    padding: 70px 100px;
}
.modal-header {
    border-bottom: 0;
}
.modal-header .close {
    width: 20px;
    height: 20px;
    cursor: pointer;
    background-image: url(/assets/images/icons/close.svg);
    background-repeat: no-repeat;
    background-position: center;
}
.modal-body p {
    margin-bottom: 12px;
}
.control-group {
    width: 100%;
    margin-bottom: 5px;
}
.control-group input {
    width: 100%;
    padding: 15px;
    -webkit-transition: border-bottom-color .3s ease;
    -o-transition: border-bottom-color .3s ease;
    transition: border-bottom-color .3s ease;
    border: 0;
    border-bottom: 1px solid #1e1e1e;
    outline: 0;
}
.control-group textarea {
    border-radius: 0;
    text-align: justify;
    border: none;
    border-bottom: 1px solid #000000;
    padding-left: 15px;
    margin-top: 1rem;
}  
input[type="radio"], input[type="checkbox"] {
    -webkit-appearance: none;
    margin: 0 5px 0 0;
    width: 12px;
    height: 12px;
    background: #eeeeee;
    box-shadow: inset 0 0 0 2px white, 0 0 0 2px;
    border-radius: 50%;
    transition: .2s;
    cursor: pointer;
    color: #ccc;   
    border-radius: 0;
}
input[type="radio"]:checked, input[type="checkbox"]:checked {
    background: #888;
    box-shadow: inset 0 0 0 3px white, 0 0 0 3px #888;
}
[data-fu-hide] {
    border: 2px dashed;
    border-radius: 8px;
    margin-top: -75px;
}
.nav-pills .nav-link {
    width: 32%;   
    margin-right: 2%;
    background: transparent;
    border: solid #ccc;
}
.nav-pills .nav-link:last-child {
    margin-right: 0;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    color: #000;
    background-color: #eee;
}

.neon-btn{
position: relative;
  width: 160px;
  height: 50px;
  display: inline-block;
  background: #fff;
  margin: 20px;
}
.neon-btn:before,
.neon-btn:after
{
content:'';
  position: absolute;
  inset: 0;
  transition: 0.5s;
  background: #f00
}
.neon-btn:nth-child(1):before,
.neon-btn:nth-child(1):after
{
 background: linear-gradient(45deg, #00ccff, #0e1538, #d400d4)
}
.neon-btn:nth-child(2):before,
.neon-btn:nth-child(2):after
{
  background: linear-gradient(45deg, #f0075b, #0e1538, #1aff22);
}
.neon-btn:hover {cursor: pointer;}
.neon-btn:hover:before
{
  inset: -3px;  
}
.neon-btn:hover:after
{
  inset: -3px;  
  filter: blur(10px);
}
.neon-btn span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-block;
    background: #260422c4;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: .7em;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #fff;
    overflow: hidden;
}
.neon-btn span::before{
content:'';
  position: absolute;
  top: 0;
  left: -50%;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.1);
    transform: skew(25deg)
}
.nav {
    gap: 20px;
}
.btn-ani {
  position: relative;  
  border: none;
  color: #000;
  flex-grow: 1;
  height: 50px;         
  line-height: 50px;
  transition: all 0.3s;           
  background-color: transparent;
  span {
    transition: all 0.3s;
    tranform: scale(1, 1);
  }
}
.btn-ani:hover {cursor: pointer;}
.btn-ani::before, .btn-ani::after {
  content: '';
  position: absolute;
  transition: all 0.3s;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.btn-ani::before {
	z-index: 1;                  
  opacity: 0;
  background: #d8d8d859;
  transform: scale(0.1, 1);
  border-radius: 6px;
}

.btn-ani:hover::before {
  opacity: 1;
  transform: scale(1, 1);
}

.btn-ani::after {
  transition: all 0.3s;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 6px;
}

.btn-ani:hover::after {
  transform: scale(1, .1);
  opacity: 0;
}
.btn-ani.active {
    background: linear-gradient(45deg, #ff66e3 0%, #4700ad 50%, #6ac2e3 100%);
    color: white;
    border-radius: 6px;
    cursor: unset;
}
.btn-ani.active:focus {
    outline: none;
}
.btn-ani.active::after {
    border: none;
    box-shadow: 0 0 10px #939393;
}
.btn-ani.active:hover::before {
    opacity: 0;
    transform: scale(1, 1);
}
[data-si-error] {color: red;}
footer .navbar-brand {
    opacity: 0.5;
}
.bg-raduga {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    background: linear-gradient(0deg, #49ff9a 0%, #6100f5 30%, #f41366 60%, #fe8546 100%);
}
button.plus {
    font-weight: 700;
    color: #5800ed;
}
.btn.plus:focus {
    box-shadow: none;
}
.btn.plus:hover {
    color: #bc04c9;
    text-decoration: none;
}
.form_radio_btn {
	display: inline-block;
	margin-right: 10px;
}
.form_radio_btn input[type=radio] {
	display: none;
}
.form_radio_btn label {
	display: inline-block;
	cursor: pointer;
	padding: 0px 15px;
	line-height: 34px;
	border: 1px solid #999;
	border-radius: 6px;
	user-select: none;  
  transition: .3s;
}
.smaller a {
    font-size: 90%;    
    transition: all 0.3s;  
    display: inline-block;
}
.smaller a:hover {
    -webkit-transform:translateX(10px);
    -moz-transform:translateX(10px);
    -ms-transform:translateX(10px);
    transform:translateX(10px);             
}
.smaller a:hover {     
      text-decoration: none;
      color: #cd107e!important;
}
.breadcrumb {
    background-color: transparent;
}
.breadcrumb a  {
    color: #a1a1a1;
}
.breadcrumb-item.active {
    color: #cd107e;
}
 
/* Checked */
.form_radio_btn input[type=radio]:checked + label {
    background: linear-gradient(45deg, #ff66e3 0%, #4700ad 50%, #6ac2e3 100%);
    color: white;
}
 
/* Hover */
.form_radio_btn label:hover {
    color: #6400ff;
    border: 1px solid #6400ff;
    box-shadow: 0 0 6px #939393;
}
.grid-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-gap: 50px;
}
.grid-list-2 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
    grid-gap: 50px;
}
.polu::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #a700a5d6, #16049fe8);  
    -webkit-transition: all 1s ease;      
    transition: all 1s ease;              
}
.polu::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, #2d003f 0, transparent 37%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}
.polu:hover::before, .polu:focus::before {
  opacity: 0;
  visibility: hidden;
}

.polu:hover::after, .polu:focus::after {
  opacity: 1;
  visibility: visible;
}
.polu a {
    position: absolute;
    z-index: 1;
    display: flex;
    margin-top: -50%;
    height: 100%;
    position: absolute;
    top: 50%;
    text-align: center;
    color: white;
    transition: .5s;
    padding: 30px 10px;
    width: 100%;
    justify-content: center;
    align-items: center;
}
.polu a:hover {
    top: 60%;        
    text-decoration: none;              
    align-items: end;
}
.newsh2 {   
    min-height: 45px;               
    align-items: center;
    display: flex;
}
.newsh2 a {
    margin-right: 90px;
    line-height: 1.2rem;
    display: inline-block;      
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1440px;
    }
}

@keyframes slide-top
  {0%
    {-webkit-transform:translateY(20px);
    -moz-transform:translateY(20px);
    -ms-transform:translateY(20px);
    transform:translateY(20px);
    opacity:0;display:none;
    }
  1%{
    display:block;
    }
  100%
    {-webkit-transform:translateY(0);
    -moz-transform:translateY(0);
    -ms-transform:translateY(0);
    transform:translateY(0);
    opacity:1;
    display:block;
    }
  }
  