:root {
  --light: 300;
  --regular: 400;
  --medium: 500;
  --semibold: 600;
  --bold: 700;
  --max-width: min(100vw, 100rem);
  --buttonRadius:0;

  /* SIZES */
  --4:0.25rem;
  --8:0.5rem;
  --10: 0.625rem;
  --11: 0.688rem;
  --12: 0.75rem;
  --13: 0.813rem;
  --14: 0.875rem;
  --15: 0.938rem;
  --16: 1rem;
  --17: 1.063rem;
  --18: 1.125rem;
  --19: 1.188rem;
  --20: 1.25rem;
  --22: 1.35rem;
  --24: 1.43rem;
  --25: 1.563rem;
  --26: 1.625rem;
  --28: 1.75rem;
  --30: 1.875rem;
  --32: 2rem;
  --35: 2.1rem;
  --36: 2.25rem;
  --40: 2.4rem;
  --45: 2.675rem;
  --48: 3rem;
  --50: 3.125rem;
  --56: 3.5rem;
  --60: 3.75rem;
  --64: 4rem;
  --70: 4.375rem;
  --72: 4.5rem;
  --80: 5rem;
  --96: 6rem;

}



@media screen and (max-width:64em){
:root{
 
   --45:2.4rem;
  --48:2.4rem;
  --50: 2.4rem;
  --56: 2.675rem;
  --60: 3rem;
  --64: 3.125rem;
  --70: 3.5rem;
  --80: 3.75rem;
}

}

@media screen and (max-width:25.45em){

:root{

  --35: 1.8rem;
  --36:1.8rem;
  --40: 1.8rem;
  --45:  2.25rem;
  --48: 2.25rem;
  --50:  2.25rem;
  --56:  2.25rem;
  --60: 3rem;
  --64: 3.125rem;
  --70: 3.5rem;
  --72: 3.75rem;
  --80: 4rem;
}

}

/* RESET */
@layer reset {
*,
*::before,
*::after {
  box-sizing: border-box;
  font: inherit;
  font-size: inherit;
}
* {
  margin: 0;
}

html {
font-size: clamp(0.9375rem, 0.8487rem + 0.1579vw, 1.125rem);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  background: var(--bg-body);
line-height:1.5
}

@media (pointer:fine){ html{ scrollbar-gutter: stable;}}

body {
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
}


p, ul, ol, li, blockquote, pre, code, table, th, td, caption {
  font-size: inherit;
  line-height: inherit;
  text-wrap: pretty;
}

blockquote{padding-left:1rem; border-left:3px solid var(--primary-500);  font-size:var(--17); font-style:italic; }

p:last-child{margin-block-end:0}
img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;

}


a, a:visited, a img, button:visited, button {
  -webkit-tap-highlight-color: transparent; /* rimuove il colore blu */
}

a:active img {
  outline: 1px solid var(--primary-100);
  outline-offset: 1px;
}

}


::-moz-selection {  color: var(--black);  background: var(--primary-300);}
::selection {  color: var(--black);  background:  var(--primary-300);}
::-webkit-input-placeholder {  color: var(--grey-400); font-family:var(--body-font);font-size:inherit}
::-moz-placeholder {  color: var(--grey-400); font-family:var(--body-font);font-size:inherit}
:-ms-input-placeholder {   color: var(--grey-400); font-family:var(--body-font); font-size:inherit}
:-moz-placeholder {  color: var(--grey-400);font-family:var(--body-font);font-size:inherit}
    

.isolate{isolation:isolate}

/* media styles */
.aspect-auto {
  aspect-ratio: auto;
}
.aspect-square {
  aspect-ratio: 1;
}

.aspect-vertical{
  aspect-ratio:.68
}
.aspect-video {
  aspect-ratio: 1.6;
}
.aspect-video-square {
  aspect-ratio: 1.33;
}

.aspect-video-vertical{
    aspect-ratio: .8;
}
.video-container{
    display: flex;
    justify-content: center;
}

.aspect-wide {
  aspect-ratio: 1.7;
}
    
.video-container :is(iframe, video) {
    height: 100%;
    width: 100% !important;
    object-fit: cover;
}

.object-contain {
  object-fit: contain;
}
.object-cover {
  object-fit: cover;
}
.object-none {
  object-fit: none;
}

.object-position-top {
  object-position: top;
}
.object-position-bottom {
  object-position: bottom;
}

.object-position-left {
  object-position: left;
}
.object-position-right {
  object-position: right;
}
.object-position-center {
  object-position: center;
}


/* position */
.relative {
  position: relative;
}
.absolute {
  position: absolute;
}
.fixed {
  position: fixed;
  overflow: clip;
}
.sticky{position:sticky; z-index:1}

.right-0 {
  right: 0;
}
.left-0 {
  left: 0;
}
.top-0 {
  top: 0;
}
.top-50 {
  top: 50%;
}
.bottom-0 {
  bottom: 0;
}
.inset-0 {
  inset: 0;
}

.right-8 {
  right: var(--8);
}
.left-8 {
  left: var(--8);
}
.top-8 {
  top: var(--8);
}
.bottom-8 {
  bottom: var(--8);
}
.inset-8 {
  inset: var(--8);
}

.right-16 {
  right: var(--16);
}
.left-16 {
  left: var(--16);
}
.top-16 {
  top: var(--16);
}
.bottom-16 {
  bottom: var(--16);
}
.inset-16 {
  inset: var(--16);
}

/* OVERFLOW */
.overflow-clip{overflow:clip}
.overflow-x-auto{overflow-x:auto;padding-bottom: 15px; }
div:has(.overflow-x-auto) [scroll-button]{opacity:0}
@media (pointer: fine) {
.overflow-x-auto{visibility: hidden;}
.overflow-x-auto:hover, .overflow-x-auto:focus, .overflow-x-auto>*{visibility:visible}
div:has(.overflow-x-auto):hover > *{visibility:visible}
div:hover .overflow-x-auto[data-scroll] + button, div:hover .overflow-x-auto[data-scroll] + button + button{ opacity:1 }
.overflow-x-auto[data-scroll]:focus + button, .overflow-x-auto[data-scroll]:focus + button + button{ opacity:1 }

}

@media screen and (min-width:40em) and (pointer:coarse){
  .overflow-x-auto[data-scroll] + button, .overflow-x-auto[data-scroll] + button + button{ opacity:1 }

}

.overflow-y-auto{overflow-y:auto; max-height:var(--maxHeight) }


@media screen and (max-width:39.9375rem){
.overflow-small-clip{overflow:clip}
.overflow-small-x-auto{overflow-x:auto;  }
.overflow-small-y-auto{overflow-y:auto;  max-height:var(--maxHeight); }
}

@layer button{
a,
button {
  transition: background linear 0.1s, border linear 0.1s, color linear .1s;
  text-decoration: none;
  color: inherit;

}


button:focus {
  outline: 1px solid white;
}

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  background: transparent;
  line-height: 1;
  font-family: var(--body-font);
}


}



.pointer-none{pointer-events:none;user-select:none}

/* TABLE RESET */
table,
tbody,
thead,
tr,
td {
  background: none;
  border: none;
}
table {
  border-spacing: var(--8);
  border-collapse: collapse;
  color: var(--text-color);
  width: 100%;
}
th {
  font-weight: 700;
}
th,
td {
  text-align: left;
  vertical-align: top;
  padding-block: var(--8);
  padding-inline:var(--8)
}
tr:not(:last-child) {
  --borderColor: var(--grey-100);
  border-bottom: 1px solid var(--borderColor);
}
tr:first-child td {
  padding-top: 0;

}
tr:last-child td {
  padding-bottom: 0;

}

tr th:first-child{  padding-left:0}
tr th:last-child{  padding-right:0}

tr td:first-child{  padding-left:0}
tr td:last-child{  padding-right:0}

table.fixed-layout {
  table-layout: fixed;
}

table.align-middle td {
  vertical-align: middle;
}

table td.auto {
  width: 100%;
}
table td.shrink {
  width: 0.1%;
}

/* LISTS */
:where(ul,
ol) {
  margin-left: 0;
  padding-left: 1rem;
  margin-block-start:1ex
}

:where(ul.reset-style){
  margin:0;
  padding:0;
  padding-inline-start:0;
  padding-left:0;
  list-style:none;
 
}
:where(ul.reset-style) > li{list-style:none}
ul.reset-line-height > li{ line-height: 0;}

ul li::marker {
  font-size: var(--12);
  color: var(--grey-700);

}

ol li::marker {
  font-size: var(--12);
  font-weight: 600;
  color: var(--grey-700);
}


dl {
  display: grid;
  font-size: var(--13);
  grid-template-columns: auto 1fr;
}
dt {
  padding-block: 0.35rem;
  padding-right: 1rem;
  color: var(--grey-600);

  text-align:left;
}
dd {
  padding-block: 0.35rem;
  grid-column-start: 2;
  font-weight: 500;

}




/* TEXT */

body {
  color: var(--text-color);
  font-family: var(--body-font);
  line-height: 1.5;
  font-weight: var(--light);
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--title-font);
  font-weight: var(--regular);
  line-height: 1.2;
  font-size:var(--24); 
  margin-bottom:var(--22)
}

.title-font{font-family:var(--title-font); font-weight:500}
.body-font{font-family:var(--body-font)}

.font-8 {
  font-size: var(--8);
}

.font-10 {
  font-size: var(--10);
}
.font-11 {
  font-size: var(--11);
}
.font-12 {
  font-size: var(--12);
}
.font-13 {
  font-size: var(--13);
}
.font-14 {
  font-size: var(--14);
}
.font-15 {
  font-size: var(--15);
}
.font-16 {
  font-size: var(--16);
}
.font-17 {
  font-size: var(--17);
}
.font-18 {
  font-size: var(--18);
      line-height: 1.6;
}
.font-19 {
  font-size: var(--19);
      line-height: 1.6;
}
.font-20 {
  font-size: var(--20);
      line-height: 1.6;
}
.font-22 {
  font-size: var(--22);
}
.font-24 {
  font-size: var(--24);

}
.font-25 {
  font-size: var(--25);

}
.font-26 {
  font-size: var(--26);

}
.font-28 {
  font-size: var(--28);
 
}
.font-30 {
  font-size: var(--30);
 
}
.font-32 {
  font-size: var(--32);
 
}

.font-36 {
  font-size: var(--36);

}
.font-40 {
  font-size: var(--40);
  line-height: 1.2;
  letter-spacing: -.01ch;
}
.font-48 {
  font-size: var(--48);
  line-height: 1.2;
  letter-spacing: -.01ch;
}
.font-50 {
  font-size: var(--50);
  line-height: 1.2;
  letter-spacing: -.02ch;
}
.font-56 {
  font-size: var(--56);
  line-height: 1.2;
  letter-spacing: -.02ch;
}

.font-60 {
  font-size: var(--60);
  line-height: 1.2;
  letter-spacing: -.03ch;
}
.font-70 {
  font-size: var(--70);
  line-height: 1.2;
  letter-spacing: -.03ch;
}
.font-80 {
  font-size: var(--80);
  line-height: 1.2;
  letter-spacing: -.03ch;
}

.font-weight-200 {
  font-weight: 200;
}
.font-weight-300 {
  font-weight: 300;
}
.font-weight-400 {
  font-weight: 400;
}
.font-weight-500 {
  font-weight: 500;
}
.font-weight-600 {
  font-weight: 600;
}
.font-weight-700 {
  font-weight: 700;
}
.font-weight-800 {
  font-weight: 800;
}
.font-weight-900 {
  font-weight: 900;
}


.line-height-1{line-height:1}
.line-height-12{line-height:1.2}
.line-height-14{line-height:1.4}
.line-height-16{line-height:1.6}
.line-height-18{line-height:1.8}
.line-height-2{line-height:2}
.line-height-25{line-height:2.5}


.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}
.text-balance {
  text-wrap: balance;
}

@media screen and (min-width:40em){

.medium-text-center {
  text-align: center;
}
.medium-text-right {
  text-align: right;
}
.medium-text-left {
  text-align: left;
}
.medium-text-balance {
  text-wrap: balance;
}

}

@media screen and (min-width:64em){

.large-text-center {
  text-align: center;
}
.large-text-right {
  text-align: right;
}
.large-text-left {
  text-align: left;
}
.large-text-balance {
  text-wrap: balance;
}

}


.none{ text-transform:none}
.capitalize{ text-transform:capitalize}
.lowercase{text-transform:lowercase}
.uppercase{text-transform:uppercase}

.underline{text-decoration:underline; text-underline-offset: .4ch;}
.line-through{text-decoration:line-through}


.column-rule{column-rule: solid 1px var(--grey-300);}

.column-1{column-count:1; column-gap:var(--gap, 2rem)}
.column-2{column-count:2;  column-gap:var(--gap, 2rem)}
.column-3{column-count:3;  column-gap:var(--gap, 2rem)}
.column-4{column-count:4;  column-gap:var(--gap, 2rem)}
.column-5{column-count:5;  column-gap:var(--gap, 2rem)}
.column-6{column-count:6;  column-gap:var(--gap, 2rem)}

@media screen and (min-width:40em){
  .medium-column-rule{column-rule: solid 1px var(--grey-300);}
  .medium-column-1{column-count:1}
.medium-column-2{column-count:2}
.medium-column-3{column-count:3}
.medium-column-4{column-count:4}
.medium-column-5{column-count:5}
.medium-column-6{column-count:6}
}

@media screen and (min-width:64em){
  .large-column-rule{column-rule: solid 1px var(--grey-300);}
  .large-column-1{column-count:1}
.large-column-2{column-count:2}
.large-column-3{column-count:3}
.large-column-4{column-count:4}
.large-column-5{column-count:5}
.large-column-6{column-count:6}
}


u {
  text-decoration-color: var(--accent-color);
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}
b,
strong {
  font-weight: var(--semibold);
  letter-spacing: 0;
}

.ellipsis {
  display: -webkit-box;
  -webkit-line-clamp: var(--lineN, 2);
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ellipsis.line-1 {
  --lineN: 1;
}
.ellipsis.line-2 {
  --lineN: 2;
}
.ellipsis.line-3 {
  --lineN: 3;
}
.ellipsis.line-4 {
  --lineN: 4;
}

.ellispis.hide-dots{text-overflow: clip;}


.tracking-tighter{
letter-spacing: -0.05em }
.tracking-tight{
letter-spacing:  -0.025em }
.tracking-normal{
letter-spacing:  0em }
.tracking-wide{
letter-spacing: 0.025em }
.tracking-wider{
letter-spacing:  0.05em }
.tracking-widest{
letter-spacing:  0.1em }



/* color */
.bg-body {
  --background-color: var(--bg-body);
  background-color: var(--background-color);
}
.bg-white {
  --background-color: var(--white);
  background-color: var(--background-color);
}

.bg-primary-100 {
  --background-color: var(--primary-100);
  background-color: var(--background-color);
}
.bg-primary-200 {
  --background-color: var(--primary-200);
  background-color: var(--background-color);
}
.bg-primary-300 {
  --background-color: var(--primary-300);
  background-color: var(--background-color);
}
.bg-primary-400 {
  --background-color: var(--primary-400);
  background-color: var(--background-color);
}
.bg-primary-500 {
  --background-color: var(--primary-500);
  background-color: var(--background-color);
}

.bg-secondary{--background-color:var(--secondary-500); background:var(--background-color)}

.hover-bg-white:hover {
  --background-color: var(--white);
  background-color: var(--background-color);
}

.hover-bg-primary-100:hover {
  --background-color: var(--primary-100);
  background-color: var(--background-color);
}
.hover-bg-primary-200:hover {
  --background-color: var(--primary-200);
  background-color: var(--background-color);
}
.hover-bg-primary-300:hover {
  --background-color: var(--primary-300);
  background-color: var(--background-color);
}
.hover-bg-primary-400:hover {
  --background-color: var(--primary-400);
  background-color: var(--background-color);
}
.hover-bg-primary-500:hover {
  --background-color: var(--primary-500);
  background-color: var(--background-color);
}


.bg-grey-100 {
  --background-color: var(--grey-100);
  background-color: var(--background-color);
}
.bg-grey-200 {
  --background-color: var(--grey-200);
  background-color: var(--background-color);
}
.bg-grey-300 {
  --background-color: var(--grey-300);
  background-color: var(--background-color);
}
.bg-grey-400 {
  --background-color: var(--grey-400);
  background-color: var(--background-color);
}
.bg-grey-500 {
  --background-color: var(--grey-500);
  background-color: var(--background-color);
}
.bg-grey-600 {
  --background-color: var(--grey-600);
  background-color: var(--background-color);
}
.bg-grey-700 {
  --background-color: var(--grey-700);
  background-color: var(--background-color);
}
.bg-grey-800 {
  --background-color: var(--grey-800);
  background-color: var(--background-color);
}

.hover-bg-grey-100:hover {
  --background-color: var(--grey-100);
  background-color: var(--background-color);
}
.hover-bg-grey-200:hover {
  --background-color: var(--grey-200);
  background-color: var(--background-color);
}
.hover-bg-grey-300:hover {
  --background-color: var(--grey-300);
  background-color: var(--background-color);
}
.hover-bg-grey-400:hover {
  --background-color: var(--grey-400);
  background-color: var(--background-color);
}
.hover-bg-grey-500:hover {
  --background-color: var(--grey-500);
  background-color: var(--background-color);
}
.hover-bg-grey-600:hover {
  --background-color: var(--grey-600);
  background-color: var(--background-color);
}
.hover-bg-grey-700:hover {
  --background-color: var(--grey-700);
  background-color: var(--background-color);
}
.hover-bg-grey-800:hover {
  --background-color: var(--grey-800);
  background-color: var(--background-color);
}


.bg-error {
  --background-color: var(--error);
  background-color: var(--background-color);
}
.bg-error-light {
  --background-color: var(--error-light);
  background-color: var(--background-color);
}
.bg-success {
  --background-color: var(--success);
  background-color: var(--background-color);
}
.bg-success-light {
  --background-color: var(--success-light);
  background-color: var(--background-color);
}
.bg-warning {
  --background-color: var(--warning);
  background-color: var(--background-color);
}
.bg-warning-light {
  --background-color: var(--warning-light);
  background-color: var(--background-color);
}



.hover-bg-body:hover {
  --background-color: var(--bg-body);
  background-color: var(--background-color);
}

.hover-bg-error:hover {
  --background-color: var(--error);
  background-color: var(--background-color);
}
.hover-bg-error-light:hover {
  --background-color: var(--error-light);
  background-color: var(--background-color);
}
.hover-bg-success:hover {
  --background-color: var(--success);
  background-color: var(--background-color);
}
.hover-bg-success-light:hover {
  --background-color: var(--success-light);
  background-color: var(--background-color);
}
.hover-bg-warning:hover {
  --background-color: var(--warning);
  background-color: var(--background-color);
}
.hover-bg-warning-light:hover {
  --background-color: var(--warning-light);
  background-color: var(--background-color);
}



.bg-opacity-10 {
  background-color: rgb(from var(--background-color) r g b / 0.1);
}
.bg-opacity-20 {
  background-color: rgb(from var(--background-color) r g b / 0.2);
}
.bg-opacity-30 {
  background-color: rgb(from var(--background-color) r g b / 0.3);
}
.bg-opacity-40 {
  background-color: rgb(from var(--background-color) r g b / 0.4);
}
.bg-opacity-50 {
  background-color: rgb(from var(--background-color) r g b / 0.5);
}
.bg-opacity-60 {
  background-color: rgb(from var(--background-color) r g b / 0.6);
}
.bg-opacity-70 {
  background-color: rgb(from var(--background-color) r g b / 0.7);
}
.bg-opacity-80 {
  background-color: rgb(from var(--background-color) r g b / 0.8);
}
.bg-opacity-90 {
  background-color: rgb(from var(--background-color) r g b / 0.9);
}


.opacity-10 {
  opacity:.1;
}
.opacity-20 {
  opacity:.2;
}
.opacity-30 {
  opacity:.3;
}
.opacity-40 {
  opacity:.4;
}
.opacity-50 {
  opacity:.5;
}
.opacity-60 {
  opacity:.6;
}
.opacity-70 {
  opacity:.7;
}
.opacity-80 {
  opacity:.8;
}
.opacity-90 {
  opacity:.9;
}

.text-primary-100 {
  color: var(--primary-100);
}
.text-primary-200 {
  color: var(--primary-200);
}
.text-primary-300 {
  color: var(--primary-300);
}
.text-primary-400 {
  color: var(--primary-400);
}
.text-primary-500 {
  color: var(--primary-500);
}

.text-primary-600 {
  color: var(--primary-500);
}
.text-primary-700 {
  color: var(--primary-500);
}
.text-primary-800 {
  color: var(--primary-500);
}

 .hover-text-primary-100:hover { color: var(--primary-100); } .hover-text-primary-200:hover { color: var(--primary-200); } .hover-text-primary-300:hover { color: var(--primary-300); } .hover-text-primary-400:hover { color: var(--primary-400); } .hover-text-primary-500:hover { color: var(--primary-500); }


.text-grey-100 {
  color: var(--grey-100);
}
.text-grey-200 {
  color: var(--grey-200);
}
.text-grey-300 {
  color: var(--grey-300);
}
.text-grey-400 {
  color: var(--grey-400);
}
.text-grey-500 {
  color: var(--grey-500);
}
.text-grey-600 {
  color: var(--grey-600);
}
.text-grey-700 {
  color: var(--grey-700);
}
.text-grey-800 {
  color: var(--grey-800);
}

.hover-text-grey-100:hover { color: var(--grey-100); } .hover-text-grey-200:hover { color: var(--grey-200); } .hover-text-grey-300:hover { color: var(--grey-300); } .hover-text-grey-400:hover { color: var(--grey-400); } .hover-text-grey-500:hover { color: var(--grey-500); } .hover-text-grey-600:hover { color: var(--grey-600); } .hover-text-grey-700:hover { color: var(--grey-700); } .hover-text-grey-800:hover { color: var(--grey-800); }

.text-shadow{text-shadow:0 0 20px rgba(0,0,0,0.3)}

.text-white {
  --text-color:var(--white);
  color: var( --text-color);
}
.text-black {
  --text-color: var(--black);
  color: var( --text-color);
}
.text-error {
  --text-color: var(--error);
  color: var( --text-color);
}
.text-success {
  --text-color: var(--success);
  color: var( --text-color);
}
.text-warning {
  --text-color:var(--warning);
  color: var( --text-color);
}



.hover-text-white:hover { --text-color:var(--white); color: var( --text-color); } .hover-text-black:hover { --text-color: var(--black); color: var( --text-color); } .hover-text-error:hover { --text-color: var(--error); color: var( --text-color); } .hover-text-success:hover { --text-color: var(--success); color: var( --text-color); } .hover-text-warning:hover { --text-color:var(--warning); color: var( --text-color); }



/* visibility*/
body :is(.hide) {
  display: none !important
}
@media print, screen and (max-width: 39.9375em) {
body :is(.show-for-large, .show-for-medium) {
  display: none;
}
body :is(.hide-for-small-only, .hide-for-small) {
  display: none;
}
}

@media print, screen and (min-width: 40em) {

  body :is(.hide-for-medium) {
    display: none;
  }

}
@media print, screen and (min-width: 40em) and (max-width: 63.9375em){

  body :is(.show-for-large) {
    display: none;
  }
}


@media print, screen and (min-width: 64em) {

  body :is(.hide-for-large) {
    display: none;
  }

}

@media print, screen and (max-width: 26em) {
  .hide-for-xs {
    display: none;
  }
}


@media (pointer: coarse){
  .show-for-touch{display:block}
  .hide-for-touch{display:none}
}
@media (pointer:fine){
    .show-for-touch{display:none}
  .hide-for-touch{display:block}
}

.inline {
  display: inline;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.flow-root {
  display: flow-root;
}
.table {
  display: table;
}
.inline-table {
  display: inline-table;
}
.contents{display:contents}

/* MARGIN AND PADDING */

/* 0px*/
.px-0 {
  padding-inline: 0;
}
.py-0 {
  padding-block: 0;
}
.pt-0 {
  padding-top: 0;
}
.pb-0 {
  padding-bottom: 0;
}
.pr-0 {
  padding-right: 0;
}
.pl-0 {
  padding-left: 0;
}
.px-4{padding-inline:var(--4)}
.py-4{padding-block:var(--4)}


.px-8 {
  padding-inline: var(--8);
}
.py-8 {
  padding-block: var(--8);
}
.pt-8 {
  padding-top: var(--8);
}
.pb-8 {
  padding-bottom: var(--8);
}
.pr-8 {
  padding-right: var(--8);
}
.pl-8 {
  padding-left: var(--8);
}


.px-16 {
  padding-inline: var(--16);
}
.py-16 {
  padding-block: var(--16);
}
.pt-16 {
  padding-top: var(--16);
}
.pb-16 {
  padding-bottom: var(--16);
}
.pr-16 {
  padding-right: var(--16);
}
.pl-16 {
  padding-left: var(--16);
}


.px-24 {
  padding-inline: var(--24);
}
.py-24 {
  padding-block: var(--24);
}
.pt-24 {
  padding-top: var(--24);
}
.pb-24 {
  padding-bottom: var(--24);
}
.pr-24 {
  padding-right: var(--24);
}
.pl-24 {
  padding-left: var(--24);
}


.px-32 {
  padding-inline: var(--32);
}
.py-32 {
  padding-block: var(--32);
}
.pt-32 {
  padding-top: var(--32);
}
.pb-32 {
  padding-bottom: var(--32);
}
.pr-32 {
  padding-right: var(--32);
}
.pl-32 {
  padding-left: var(--32);
}


.px-40 {
  padding-inline: var(--40);
}
.py-40 {
  padding-block: var(--40);
}
.pt-40 {
  padding-top: var(--40);
}
.pb-40 {
  padding-bottom: var(--40);
}
.pr-40 {
  padding-right: var(--40);
}
.pl-40 {
  padding-left: var(--40);
}


.px-48 {
  padding-inline: var(--48);
}
.py-48 {
  padding-block: var(--48);
}
.pt-48 {
  padding-top: var(--48);
}
.pb-48 {
  padding-bottom: var(--48);
}
.pr-48 {
  padding-right: var(--48);
}
.pl-48 {
  padding-left: var(--48);
}


.px-56 {
  padding-inline: var(--56);
}
.py-56 {
  padding-block: var(--56);
}
.pt-56 {
  padding-top: var(--56);
}
.pb-56 {
  padding-bottom: var(--56);
}
.pr-56 {
  padding-right: var(--56);
}
.pl-56 {
  padding-left: var(--56);
}


.px-64 {
  padding-inline: var(--64);
}
.py-64 {
  padding-block: var(--64);
}
.pt-64 {
  padding-top: var(--64);
}
.pb-64 {
  padding-bottom: var(--64);
}
.pr-64 {
  padding-right: var(--64);
}
.pl-64 {
  padding-left: var(--64);
}


.px-72 {
  padding-inline: var(--72);
}
.py-72 {
  padding-block: var(--72);
}
.pt-72 {
  padding-top: var(--72);
}
.pb-72 {
  padding-bottom: var(--72);
}
.pr-72 {
  padding-right: var(--72);
}
.pl-72 {
  padding-left: var(--72);
}


.px-80 {
  padding-inline: var(--80);
}
.py-80 {
  padding-block: var(--80);
}
.pt-80 {
  padding-top: var(--80);
}
.pb-80 {
  padding-bottom: var(--80);
}
.pr-80 {
  padding-right: var(--80);
}
.pl-80 {
  padding-left: var(--80);
}

.mx-auto {
  margin-inline: auto;
}
.mx-05{margin-inline:.25rem}
.my-05{margin-block:.25rem}

/* 0px*/
.mx-0 {
  margin-inline: 0;
}
.my-0 {
  margin-block: 0;
}
.mt-0 {
  margin-top: 0;
}
.mb-0 {
  margin-bottom: 0;
}
.mr-0 {
  margin-right: 0;
}
.ml-0 {
  margin-left: 0;
}


.mx-4 {
  margin-inline: var(--4);
}
.my-4 {
  margin-block: var(--4);
}
.mt-4 {
  margin-top: var(--4);
}
.mb-4 {
  margin-bottom: var(--4);
}
.mr-4 {
  margin-right: var(--4);
}
.ml-4 {
  margin-left: var(--4);
}

/* 8px*/
.mx-8 {
  margin-inline: var(--8);
}
.my-8 {
  margin-block: var(--8);
}
.mt-8 {
  margin-top: var(--8);
}
.mb-8 {
  margin-bottom: var(--8);
}
.mr-8 {
  margin-right: var(--8);
}
.ml-8 {
  margin-left: var(--8);
}


/* 12px*/
.mx-12 {
  margin-inline: var(--12);
}
.my-12 {
  margin-block: var(--12);
}
.mt-12 {
  margin-top: var(--12);
}
.mb-12 {
  margin-bottom: var(--12);
}
.mr-12 {
  margin-right: var(--12);
}
.ml-12 {
  margin-left: var(--12);
}

/* 16px*/
.mx-16 {
  margin-inline: var(--16);
}
.my-16 {
  margin-block: var(--16);
}
.mt-16 {
  margin-top: var(--16);
}
.mb-16 {
  margin-bottom: var(--16);
}
.mr-16 {
  margin-right: var(--16);
}
.ml-16 {
  margin-left: var(--16);
}

/* 24px*/
.mx-24 {
  margin-inline: var(--24);
}
.my-24 {
  margin-block: var(--24);
}
.mt-24 {
  margin-top: var(--24);
}
.mb-24 {
  margin-bottom: var(--24);
}
.mr-24 {
  margin-right: var(--24);
}
.ml-24 {
  margin-left: var(--24);
}

/* 32px*/
.mx-32 {
  margin-inline: var(--32);
}
.my-32 {
  margin-block: var(--32);
}
.mt-32 {
  margin-top: var(--32);
}
.mb-32 {
  margin-bottom: var(--32);
}
.mr-32 {
  margin-right: var(--32);
}
.ml-32 {
  margin-left: var(--32);
}


/* 36px*/
.mx-36 {
  margin-inline: var(--36);
}
.my-36 {
  margin-block: var(--36);
}
.mt-36 {
  margin-top: var(--36);
}
.mb-36 {
  margin-bottom: var(--36);
}
.mr-36 {
  margin-right: var(--36);
}
.ml-36 {
  margin-left: var(--36);
}

/* 40px*/
.mx-40 {
  margin-inline: var(--40);
}
.my-40 {
  margin-block: var(--40);
}
.mt-40 {
  margin-top: var(--40);
}
.mb-40 {
  margin-bottom: var(--40);
}
.mr-40 {
  margin-right: var(--40);
}
.ml-40 {
  margin-left: var(--40);
}

/* 48px*/
.mx-48 {
  margin-inline: var(--48);
}
.my-48 {
  margin-block: var(--48);
}
.mt-48 {
  margin-top: var(--48);
}
.mb-48 {
  margin-bottom: var(--48);
}
.mr-48 {
  margin-right: var(--48);
}
.ml-48 {
  margin-left: var(--48);
}

/* 56px*/
.mx-56 {
  margin-inline: var(--56);
}
.my-56 {
  margin-block: var(--56);
}
.mt-56 {
  margin-top: var(--56);
}
.mb-56 {
  margin-bottom: var(--56);
}
.mr-56 {
  margin-right: var(--56);
}
.ml-56 {
  margin-left: var(--56);
}

/* 64px*/
.mx-64 {
  margin-inline: var(--64);
}
.my-64 {
  margin-block: var(--64);
}
.mt-64 {
  margin-top: var(--64);
}
.mb-64 {
  margin-bottom: var(--64);
}
.mr-64 {
  margin-right: var(--64);
}
.ml-64 {
  margin-left: var(--64);
}

/* 72px*/
.mx-72 {
  margin-inline: var(--72);
}
.my-72 {
  margin-block: var(--72);
}
.mt-72 {
  margin-top: var(--72);
}
.mb-72 {
  margin-bottom: var(--72);
}
.mr-72 {
  margin-right: var(--72);
}
.ml-72 {
  margin-left: var(--72);
}

/* 80px*/
.mx-80 {
  margin-inline: var(--80);
}
.my-80 {
  margin-block: var(--80);
}
.mt-80 {
  margin-top: var(--80);
}
.mb-80 {
  margin-bottom: var(--80);
}
.mr-80 {
  margin-right: var(--80);
}
.ml-80 {
  margin-left: var(--80);
}

/* 160px*/
.mx-160 {
  margin-inline: calc(var(--80) * 8);
}
.my-160 {
  margin-block:  calc(var(--80) * 8);
}
.mt-160 {
  margin-top:  calc(var(--80) * 8);
}
.mb-160 {
  margin-bottom:  calc(var(--80) * 8);
}
.mr-160 {
  margin-right:  calc(var(--80) * 8);
}
.ml-160 {
  margin-left:  calc(var(--80) * 8);
}

.size-full{width:100%; height:100%}
.size-full img{object-fit:cover}
.size-x-full{width:100%;}
.size-y-full{ height:100%}
.size-4 {
  width: 0.25rem;
  height: 0.25rem;
}
.size-6 {
  width: 0.375rem;
  height: 0.375rem;
}
.size-8 {
  width: 0.5rem;
  height: 0.5rem;
}
.size-12 {
  width: 0.75rem;
  height: 0.75rem;
}
.size-16 {
  width: 1rem;
  height: 1rem;
}
.size-20 {
  width: 1.25rem;
  height: 1.25rem;
}
.size-22 {
  width: 1.35rem;
  height: 1.35rem;
}

.size-24 {
  width: 1.5rem;
  height: 1.5rem;
}
.size-28 {
  width: 1.75rem;
  height: 1.75rem;
}
.size-32 {
  width: 2rem;
  height: 2rem;
}
.size-36 {
  width: 2.25rem;
  height: 2.25rem;
}
.size-40 {
  width: 2.5rem;
  height: 2.5rem;
}
.size-44 {
  width: 2.75rem;
  height: 2.75rem;
}
.size-48 {
  width: 3rem;
  height: 3rem;
}
.size-50 {
  width: 3.125rem;
  height:3.125rem;
}

.size-52 {
  width: 3.25rem;
  height: 3.25rem;
}
.size-56 {
  width: 3.5rem;
  height: 3.5rem;
}
.size-60 {
  width: 3.75rem;
  height: 3.75rem;
}
.size-64 {
  width: 4rem;
  height: 4rem;
}
.size-68 {
  width: 4.25rem;
  height: 4.25rem;
}
.size-72 {
  width: 4.5rem;
  height: 4.5rem;
}
.size-76 {
  width: 4.75rem;
  height: 4.75rem;
}
.size-80 {
  width: 5rem;
  height: 5rem;
}

.width-4 {
  width: var(--4);
}
.width-8 {
  width: var(--8);
}
.width-16 {
  width: var(--16);
}
.width-24 {
  width: var(--24);
}
.width-32 {
  width: var(--32);
}
.width-40 {
  width: var(--40);
}
.width-48 {
  width: var(--48);
}
.width-56 {
  width: var(--56);
}
.width-64 {
  width: var(--64);
}
.width-72 {
  width: var(--72);
}
.width-80 {
  width: var(--80);
}

.height-4 {
  height: var(--4);
}

.height-8 {
  height: var(--8);
}
.height-16 {
  height: var(--16);
}
.height-24 {
  height: var(--24);
}
.height-32 {
  height: var(--32);
}
.height-40 {
  height: var(--40);
}
.height-48 {
  height: var(--48);
}
.height-56 {
  height: var(--56);
}
.height-64 {
  height: var(--64);
}
.height-72 {
  height: var(--72);
}
.height-80 {
  height: var(--80);
}

/* borders */
.border-weight-0 {
  border: 0;
}
.border-weight-top-0 {
  border-top: 0;
}
.border-weight-bottom-0 {
  border-bottom: 0;
}
.border-weight-right-0 {
  border-right: 0;
}
.border-weight-left-0 {
  border-left: 0;
}

.border-weight-1 {
  border: 1px solid var(--borderColor, transparent);
}
.border-weight-top-1 {
  border-top: 1px solid var(--borderColor, transparent);
}
.border-weight-bottom-1 {
  border-bottom: 1px solid var(--borderColor, transparent);
}
.border-weight-right-1 {
  border-right: 1px solid var(--borderColor, transparent);
}
.border-weight-left-1 {
  border-left: 1px solid var(--borderColor, transparent);
}

.border-weight-2 {
  border: 2px solid var(--borderColor, transparent);
}
.border-weight-top-2 {
  border-top: 2px solid var(--borderColor, transparent);
}
.border-weight-bottom-2 {
  border-bottom: 2px solid var(--borderColor, transparent);
}
.border-weight-right-2 {
  border-right: 2px solid var(--borderColor, transparent);
}
.border-weight-left-2 {
  border-left: 2px solid var(--borderColor, transparent);
}

.border-weight-3 {
  border: 3px solid var(--borderColor, transparent);
}
.border-weight-top-3 {
  border-top: 3px solid var(--borderColor, transparent);
}
.border-weight-bottom-3 {
  border-bottom: 3px solid var(--borderColor, transparent);
}
.border-weight-right-3 {
  border-right: 3px solid var(--borderColor, transparent);
}
.border-weight-left-3 {
  border-left: 3px solid var(--borderColor, transparent);
}

.border-primary-100 {
  --borderColor: var(--primary-100);
}
.border-primary-200 {
  --borderColor: var(--primary-200);
}
.border-primary-300 {
  --borderColor: var(--primary-300);
}
.border-primary-400 {
  --borderColor: var(--primary-400);
}
.border-primary-500 {
  --borderColor: var(--primary-500);
}

.border-grey-100 {
  --borderColor: var(--grey-100);
}
.border-grey-200 {
  --borderColor: var(--grey-200);
}
.border-grey-300 {
  --borderColor: var(--grey-300);
}
.border-grey-400 {
  --borderColor: var(--grey-400);
}
.border-grey-500 {
  --borderColor: var(--grey-500);
}
.border-grey-600 {
  --borderColor: var(--grey-600);
}
.border-grey-700 {
  --borderColor: var(--grey-700);
}
.border-grey-800 {
  --borderColor: var(--grey-800);
}


.hover-border-primary-100:hover {
  --borderColor: var(--primary-100);
}
.hover-border-primary-200:hover {
  --borderColor: var(--primary-200);
}
.hover-border-primary-300:hover {
  --borderColor: var(--primary-300);
}
.hover-border-primary-400:hover {
  --borderColor: var(--primary-400);
}
.hover-border-primary-500:hover{
  --borderColor: var(--primary-500);
}

.hover-border-grey-100:hover {
  --borderColor: var(--grey-100);
}
.hover-border-grey-200:hover {
  --borderColor: var(--grey-200);
}
.hover-border-grey-300:hover {
  --borderColor: var(--grey-300);
}
.hover-border-grey-400:hover {
  --borderColor: var(--grey-400);
}
.hover-border-grey-500:hover {
  --borderColor: var(--grey-500);
}
.hover-border-grey-600:hover {
  --borderColor: var(--grey-600);
}
.hover-border-grey-700:hover {
  --borderColor: var(--grey-700);
}
.hover-border-grey-800:hover {
  --borderColor: var(--grey-800);
}


.border-error {
  --borderColor: var(--error);
}
.border-success {
  --borderColor: var(--success);
}
.border-warning {
  --borderColor: var(--warning);
}

.border-black {
  --borderColor: var(--black);
}
.border-white {
  --borderColor: var(--white);
}


.hover-border-error:hover {
  --borderColor: var(--error);
}
.hover-border-success:hover {
  --borderColor: var(--success);
}
.hover-border-warning:hover {
  --borderColor: var(--warning);
}

.hover-border-black:hover {
  --borderColor: var(--black);
}
.hover-border-white:hover {
  --borderColor: var(--white);
}

.hover-border-red:hover {
  --borderColor: var(--red);
}
.hover-border-blue:hover {
  --borderColor: var(--blue);
}
.hover-border-orange:hover {
  --borderColor: var(--orange);
}

.hover-border-green:hover {
  --borderColor: var(--green);
}
.hover-border-purple:hover {
  --borderColor: var(--purple);
}


.border-radius-0 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:0;
  --borderRadiusTR: 0;
  --borderRadiusBL: 0;
  --borderRadiusBR: 0;
  --borderRadius: 0 !important;
}


.border-radius-4 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL: var(--4);
  --borderRadiusTR: var(--4);
  --borderRadiusBL: var(--4);
  --borderRadiusBR: var(--4);
  --borderRadius: var(--4) !important;
}
.border-radius-8 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--8);
  --borderRadiusTR:  var(--8);
  --borderRadiusBL:  var(--8);
  --borderRadiusBR:  var(--8);
  --borderRadius: var(--8) !important;
}

.border-radius-12 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--12);
  --borderRadiusTR:  var(--12);
  --borderRadiusBL:  var(--12);
  --borderRadiusBR:  var(--12);
  --borderRadius: var(--12) !important;
}

.border-radius-16 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--16);
  --borderRadiusTR:  var(--16);
  --borderRadiusBL:  var(--16);
  --borderRadiusBR:  var(--16);
  --borderRadius: var(--16) !important;
}
.border-radius-24 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--24);
  --borderRadiusTR:  var(--24);
  --borderRadiusBL:  var(--24);
  --borderRadiusBR:  var(--24);
  --borderRadius: var(--24) !important;
}
.border-radius-32 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--32);
  --borderRadiusTR:  var(--32);
  --borderRadiusBL:  var(--32);
  --borderRadiusBR:  var(--32);
  --borderRadius: var(--32) !important;
}
.border-radius-40 {
  border-radius: var(--borderRadiusTL) var(--borderRadiusTR) var(--borderRadiusBR) var(--borderRadiusBL);
  --borderRadiusTL:  var(--40);
  --borderRadiusTR:  var(--40);
  --borderRadiusBL:  var(--40);
  --borderRadiusBR:  var(--40);
  --borderRadius: var(--40) !important;
}
.border-radius-100 {
  border-radius: 100%;
  --borderRadius: 100% !important;
}
.border-radius-50 {
  border-radius: 50%;
  --borderRadius: 50% !important;
}


.border-radius-tl-0{--borderRadiusTL: 0}
.border-radius-tr-0{--borderRadiusTR: 0}
.border-radius-bl-0{--borderRadiusBL:0}
.border-radius-br-0{--borderRadiusBR: 0}

.border-radius-tl-4{--borderRadiusTL: var(--4);}
.border-radius-tr-4{--borderRadiusTR: var(--4);}
.border-radius-bl-4{--borderRadiusBL: var(--4);}
.border-radius-br-4{--borderRadiusBR: var(--4);}

.border-radius-tl-8{--borderRadiusTL:  var(--8)}
.border-radius-tr-8{--borderRadiusTR:  var(--8)}
.border-radius-bl-8{--borderRadiusBL:  var(--8)}
.border-radius-br-8{--borderRadiusBR:  var(--8)}

.border-radius-tl-16{--borderRadiusTL:  var(--16)}
.border-radius-tr-16{--borderRadiusTR:  var(--16)}
.border-radius-bl-16{--borderRadiusBL:  var(--16)}
.border-radius-br-16{--borderRadiusBR:  var(--16)}

.border-radius-tl-24{--borderRadiusTL:  var(--24)}
.border-radius-tr-24{--borderRadiusTR:  var(--24)}
.border-radius-bl-24{--borderRadiusBL:  var(--24)}
.border-radius-br-24{--borderRadiusBR:  var(--24)}

.border-radius-tl-32{--borderRadiusTL:  var(--32)}
.border-radius-tr-32{--borderRadiusTR:  var(--32)}
.border-radius-bl-32{--borderRadiusBL:  var(--32)}
.border-radius-br-32{--borderRadiusBR:  var(--32)}

.border-radius-tl-40{--borderRadiusTL:  var(--40)}
.border-radius-tr-40{--borderRadiusTR:  var(--40)}
.border-radius-bl-40{--borderRadiusBL:  var(--40)}
.border-radius-br-40{--borderRadiusBR:  var(--40)}


/* outlines */

.outline-weight-1 {
  outline: 1px solid var(--outline-color);
}
.outline-weight-2 {
  outline: 2px solid var(--outline-color);
}
.outline-weight-3 {
  outline: 3px solid var(--outline-color);
}
.outline-weight-4 {
  outline: 4px solid var(--outline-color);
}
.outline-weight-5 {
  outline: 5px solid var(--outline-color);
}
.outline-primary-100 {
  --outline-color: var(--primary-100);
}
.outline-primary-200 {
  --outline-color: var(--primary-200);
}
.outline-primary-300 {
  --outline-color: var(--primary-300);
}
.outline-primary-400 {
  --outline-color: var(--primary-400);
}
.outline-primary-500 {
  --outline-color: var(--primary-500);
}
.outline-grey-100 {
  --outline-color: var(--grey-100);
}
.outline-grey-200 {
  --outline-color: var(--grey-200);
}
.outline-grey-300 {
  --outline-color: var(--grey-300);
}
.outline-grey-400 {
  --outline-color: var(--grey-400);
}
.outline-grey-500 {
  --outline-color: var(--grey-500);
}
.outline-grey-600 {
  --outline-color: var(--grey-600);
}
.outline-grey-700 {
  --outline-color: var(--grey-700);
}
.outline-grey-800 {
  --outline-color: var(--grey-800);
}
.outline-error {
  --outline-color: var(--error);
}
.outline-success {
  --outline-color: var(--success);
}
.outline-waring {
  --outline-color: var(--warning);
}
.outline-black {
  --outline-color: var(--black);
}
.outline-white {
  --outline-color: var(--white);
}

/* BACKGROUND GRADIENT*/
.bg-gradient-to-r {
  --gradient-from-pos: 0;
  --gradient-to-pos: 100%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to right, var(--gradient-stops));
}

.bg-gradient-to-r-50 {
  --gradient-from-pos: 10%;
  --gradient-to-pos: 60%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to right, var(--gradient-stops));
}

.bg-gradient-to-r-80 {
  --gradient-from-pos: 10%;
  --gradient-to-pos: 90%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to right, var(--gradient-stops));
}


.bg-gradient-to-l {
  --gradient-from-pos: 0;
  --gradient-to-pos: 100%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to left, var(--gradient-stops));
}

.bg-gradient-to-l-50 {
  --gradient-from-pos: 10%;
  --gradient-to-pos: 60%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to left, var(--gradient-stops));
}

.bg-gradient-to-l-80 {
  --gradient-from-pos: 10%;
  --gradient-to-pos:90%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to left, var(--gradient-stops));
}


.bg-gradient-to-t {
  --gradient-from-pos: 0;
  --gradient-to-pos: 100%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to top, var(--gradient-stops));
}

.bg-gradient-to-t-50 {
  --gradient-from-pos: 0%;
  --gradient-to-pos: 40%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to top, var(--gradient-stops));
}


.bg-gradient-to-b {
  --gradient-from-pos: 0;
  --gradient-to-pos: 100%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to bottom, var(--gradient-stops));
}

.bg-gradient-to-b-50 {
  --gradient-from-pos: 0%;
  --gradient-to-pos: 40%;
  --gradient-stops: var(--gradient-from) var(--gradient-from-pos),
    var(--gradient-to) var(--gradient-to-pos);
  background-image: linear-gradient(to bottom, var(--gradient-stops));
}


.from-primary-100 {
  --gradient-from: var(--primary-100);
  --gradient-to: transparent;
}
.from-primary-200 {
  --gradient-from: var(--primary-200);
  --gradient-to: transparent;
}
.from-primary-300 {
  --gradient-from: var(--primary-300);
  --gradient-to: transparent;
}
.from-primary-400 {
  --gradient-from: var(--primary-400);
  --gradient-to: transparent;
}
.from-primary-500 {
  --gradient-from: var(--primary-500);
  --gradient-to: transparent;
}

.from-secondary {
  --gradient-from: var(--secondary-500);
  --gradient-to: transparent;
}

.from-white {
  --gradient-from: var(--white);
  --gradient-to: transparent;
}

.from-bg-body {
  --gradient-from: var(--bg-body);
  --gradient-to: transparent;
}
.from-black {
  --gradient-from: var(--black);
  --gradient-to: transparent;
}

.from-grey-100 {
  --gradient-from: var(--grey-100);
  --gradient-to: transparent;
}
.from-grey-200 {
  --gradient-from: var(--grey-200);
  --gradient-to: transparent;
}
.from-grey-300 {
  --gradient-from: var(--grey-300);
  --gradient-to: transparent;
}
.from-grey-400 {
  --gradient-from: var(--grey-400);
  --gradient-to: transparent;
}
.from-grey-500 {
  --gradient-from: var(--grey-500);
  --gradient-to: transparent;
}
.from-grey-600 {
  --gradient-from: var(--grey-600);
  --gradient-to: transparent;
}
.from-grey-700 {
  --gradient-from: var(--grey-700);
  --gradient-to: transparent;
}
.from-grey-800 {
  --gradient-from: var(--grey-800);
  --gradient-to: transparent;
}

i {
  --iconSize: var(--16);
  --rotation:0;
  width: var(--iconSize);
  height: var(--iconSize);
  display: inline-table;
}
table i {
  display: table-cell;
}
i.small {
  --iconSize: var(--16);
}
i.medium {
  --iconSize: var(--24);
}
i.large {
  --iconSize: var(--32);
}

i:after {
  content: "";
  display: block;
  width: inherit;
  height:inherit;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  filter: saturate(0) brightness(3);

}


.ic-black:after { filter:brightness(0) saturate(0) !important}

.ic-white:after {  filter: saturate(0) brightness(10);}
.ic-success:after{filter:saturate(30) hue-rotate(95deg) brightness(1.6)}
.ic-error:after{filter:saturate(16) hue-rotate(0) brightness(1.5)}
.ic-warning:after{filter:saturate(50) hue-rotate(59deg) brightness(1.9)}

.hover-ic-white:hover:after, .hover-ic-white:hover i:after{filter:brightness(9)}
.hover-ic-black:hover:after, .hover-ic-black:hover i:after{filter:brightness(0) saturate(0) !important}

.hover-ic-success:hover:after{filter:saturate(30) hue-rotate(95deg) brightness(1.6)}
.hover-ic-error:hover:after{filter:saturate(16) hue-rotate(0) brightness(1.5)}
.hover-ic-warning:hover:after{filter:saturate(50) hue-rotate(59deg) brightness(1.9)}


.ic-arrow:after { background-image: url(../images/icons/icon-arrow.svg);}
.ic-arrow-left:after{  background-image: url(../images/icons/icon-arrow.svg); rotate:180deg}
.ic-arrow-right:after{  background-image: url(../images/icons/icon-arrow.svg);}
.ic-close:after {  background-image: url(../images/icons/icon-close.svg);}
.ic-share:after{  background-image: url(../images/icons/icon-share.svg);}
.ic-search:after{  background-image: url(../images/icons/icon-search.svg);}

.ic-website:after {  background-image: url(../images/icons/icon-website.svg);}
.ic-facebook:after {  background-image: url(../images/icons/icon-facebook.svg);}
.ic-instagram:after {  background-image: url(../images/icons/icon-instagram.svg);}
.ic-youtube:after {  background-image: url(../images/icons/icon-youtube.svg);}
.ic-x:after {  background-image: url(../images/icons/icon-x.svg);}
.ic-telegram:after {  background-image: url(../images/icons/icon-telegram.svg);}
.ic-whatsapp:after {  background-image: url(../images/icons/icon-whatsapp.svg);}
.ic-linkedin:after {  background-image: url(../images/icons/icon-linkedin.svg);}
.ic-link:after {  background-image: url(../images/icons/icon-link.svg);}
.ic-email:after {  background-image: url(../images/icons/icon-email.svg);}
.ic-tiktok:after {  background-image: url(../images/icons/icon-tiktok.svg);}
.ic-spotify:after {  background-image: url(../images/icons/icon-spotify.svg);}


.ic-balcony:after {  background-image: url(../images/icons/icon-balcony.svg);}
.ic-door:after {  background-image: url(../images/icons/icon-door.svg);}
.ic-pool:after {  background-image: url(../images/icons/icon-pool.svg);}
.ic-automation:after {  background-image: url(../images/icons/icon-automation.svg);}
.ic-wifi:after {  background-image: url(../images/icons/icon-wifi.svg);}
.ic-house:after {  background-image: url(../images/icons/icon-house.svg);}
.ic-eco:after {  background-image: url(../images/icons/icon-eco.svg);}
.ic-house:after {  background-image: url(../images/icons/icon-house.svg);}
.ic-bath:after {  background-image: url(../images/icons/icon-bath.svg);}
.ic-slide:after {  background-image: url(../images/icons/icon-slide.svg);}
.ic-bbq:after {  background-image: url(../images/icons/icon-bbq.svg);}
.ic-bunk-bed:after {  background-image: url(../images/icons/icon-bunk-bed.svg);}
.ic-double-bed:after {  background-image: url(../images/icons/icon-double-bed.svg);}
.ic-single-bed:after {  background-image: url(../images/icons/icon-single-bed.svg);}
.ic-kitchen:after {  background-image: url(../images/icons/icon-kitchen.svg);}
.ic-mountain:after {  background-image: url(../images/icons/icon-mountain.svg);}
.ic-outdoor:after {  background-image: url(../images/icons/icon-outdoor.svg);}
.ic-parking:after {  background-image: url(../images/icons/icon-parking.svg);}
.ic-tv:after {  background-image: url(../images/icons/icon-tv.svg);}
.ic-persons:after {  background-image: url(../images/icons/icon-persons.svg);}
.ic-relax:after {  background-image: url(../images/icons/icon-relax.svg);}
.ic-sofa-bed:after {  background-image: url(../images/icons/icon-sofa-bed.svg);}
.ic-temperature:after {  background-image: url(../images/icons/icon-temperature.svg);}
.ic-tuscany:after {  background-image: url(../images/icons/icon-tuscany.svg);}
.ic-washing:after {  background-image: url(../images/icons/icon-washing.svg);}
.ic-essential:after {  background-image: url(../images/icons/icon-essential.svg);}

@layer buttons{
button,
[class^="button-"] {
  font-size: var(--15);
  cursor: pointer;
  --borderColor: var(--grey-800);
  --borderWeight: 0px;
  --textColor: var(--white);
  --bgColor: var(--grey-800);
  --buttonSize: 2.5rem;
  --borderRadius: var(--buttonRadius);
  border-radius: var(--borderRadius);
  border-color: var(--borderColor);
  border-style: solid;
  border-width: var(--borderWeight);
  color: var(--textColor);
  background-color: var(--bgColor);
  padding: var(--12) var(--24);
  line-height: 1;
  text-align: center;
  
  min-width:var(--buttonSize);
  align-content: center;
}

@media screen and (max-width:40em){
  button,
[class^="button-"] {
  --buttonSize: 3.125rem;
  --iconSize:1.3rem;

}
}

button:hover,
[class^="button-"]:hover {
  --bgColor: var(--grey-600);
}

button.x-small,
[class^="button-"].x-small {
  padding: 0.4rem 0.5rem;
  font-size: var(--10);
  --borderRadius:var(--buttonRadius);
  --buttonSize: 1rem;
  --iconSize: .8rem;
}

button.small,
[class^="button-"].small {
  padding: 0.4rem 0.7rem;
  font-size: var(--12);
  --borderRadius:var(--buttonRadius);
  --buttonSize: 2rem;
  line-height:1
}
button.medium,
[class^="button-"].medium {
  padding: 0.5rem 0.9rem;
  --buttonSize: 2.2rem;
}
button.large,
[class^="button-"].large {
  padding: 0.8rem 1.5rem;
  font-size: var(--15);
  --buttonSize: 2.8rem;
}

button.dark,
[class^="button-"].dark {
  --bgColor: var(--primary-500);
  --textColor: var(--white);
}
button.white,
[class^="button-"].white {
  --bgColor: var(--white);
  --textColor: var(--primary-500);
}
button.white:hover,
[class^="button-"].white:hover {
  --bgColor: var(--grey-300);
  --textColor: var(--white);
}

button.white:hover:after,
[class^="button-"].white:hover:after {

}

button.transparent, [class^="button-"].transparent{--bgColor:transparent; --textColor: var(--grey-800); font-weight:500}
[class^="button-"].transparent:after {
  filter:none
}

[class^="button-"].transparent:hover {
  --bgColor:transparent !important
}

button.transparent:focus,[class^="button-"].transparent:focus{outline:0}

.hover-box-shadow{transition: box-shadow linear .2s}
.hover-box-shadow:hover{box-shadow:0 2px 6px  rgba(0,0,0,.1)}
.box-shadow{box-shadow:var(--box-shadow)}
.box-shadow-top{box-shadow:var(--box-shadow-top)}

[class^="button-"].button-outlined {
  --borderColor: var(--primary-800);
  --borderWeight: 1px;
  --textColor: var(--primary-800);
  --bgColor: transparent;
  font-weight: 500;
}
[class^="button-"].button-outlined:hover {
  --bgColor: var(--bg-body);
  --borderColor:var(--grey-700);
  --textColor: var(--primary-700);
}

.button-outlined.dark {
  --borderColor: var(--primary-500);
  --textColor: var(--primary-500);
}
.button-outlined.white {
  --borderColor: var(--white);
  --textColor: var(--white);
  font-weight: 400;
}

.button-outlined.white:hover {
  --bgColor: var(--white);
  --borderColor: var(--grey-300);
  --textColor: var(--primary-500);
  font-weight: 400;
}

.button-outlined.white:hover:after{filter:none}



[class^="button-"].button-soft {
  --textColor: var(--grey-800);
  --bgColor: var(--primary-100);
  --borderColor: var(--primary-200);
  --borderWeight: 1px;
  font-weight: 500;
}
[class^="button-"].button-soft:hover {
  --textColor: var(--grey-800);
  --bgColor: transparent;
}
[class^="button-"].button-soft:hover:after {
  filter: brightness(0.6);
}

.button-soft.dark {
  --bgColor: var(--primary-200);
  --textColor: var(--primary-500);
  --borderColor: var(--primary-300);
}
.button-soft.dark:hover {
  --bgColor: var(--primary-100);
  --textColor: var(--primary-500);
  --borderColor: var(--primary-200);
}
.button-soft.white {
  --bgColor: var(--grey-100);
  --borderColor: var(--grey-200);
  --textColor: var(--grey-700);
}
.button-soft.white:hover {
  --bgColor: var(--white);
  --borderColor: var(--grey-200);
  --textColor: var(--grey-700);
}
.button-soft.white:after {
  filter: brightness(0.6);
}

[class^="button-"].button-icon-after {
  --iconSize: .7rem;
  display: inline-flex;
  gap: 0.4rem;
  align-items: center;
  justify-content: center;
}
[class^="button-"].button-icon-after:after {
  content: "";
  width: var(--iconSize);
  height: var(--iconSize);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display:inline-block
}


.container-button {container-type:inline-size; container-name:button; min-width:3rem}
@container button (width<6rem){
  .container-button :is(.button-icon-after, .button-icon-before){width: var(--buttonSize);
  height: var(--buttonSize);
  aspect-ratio: 1;
  padding: 0;
  --borderRadius: 50% !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  gap: 0 !important;}

}

.button-icon-after:not(.button-soft, .button-outlined, .transparent):after {
  filter: saturate(0) brightness(8);
}
.button-icon-after.white:after {
  filter: brightness(1);
}
.button-icon-after:not(.button-soft, .button-outlined, .transparent).white:hover:after {
  filter: saturate(0) brightness(8);
}

.button-icon-after.large:after,
.button-icon-after.medium:after {
  --iconSize: 1rem;
}

[class^="button-"].button-icon-before {
  --iconSize: 1rem;
  display: inline-flex;
  gap: 0.4rem;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
}
[class^="button-"].button-icon-before:after {
  content: "";
  min-width: var(--iconSize);
  width: var(--iconSize);
  height: var(--iconSize);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  rotate:var(--rotation)
}
.button-icon-before:not(.button-soft, .button-outlined, .transparent):after {
  filter: saturate(0) brightness(8);
}
.button-icon-before.white:after {
  filter: brightness(1);
}
.button-icon-before.white:hover:after {
  filter: saturate(0) brightness(8);
}

.button-icon-before.large:after,
.button-icon-before.medium:after {
  --iconSize: 1rem;
}

[class^="button-"].button-circular {
  width: var(--buttonSize);
  height: var(--buttonSize);
  aspect-ratio: 1;
  padding: 0;
  --borderRadius: 50% !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  background-color:var(--bgColor)
}
[class^="button-"].button-circular:hover{--bgColor:transparent; opacity:.9}
[class^="button-"].button-circular:after {
  content: "";
  display: block;
  width: var(--iconSize, 1rem);
  height:  var(--iconSize, 1rem);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.button-circular:not(.button-soft, .button-outlined, .white, .transparent):after {
  filter: invert(1) saturate(0) brightness(5);
}
.button-circular.white{--bgColor:var(--white)}



[class^="button-"].button-square {
  width: var(--buttonSize);
  height: var(--buttonSize);
  aspect-ratio: 1;
  padding: 0;
 border-radius:0 0 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
  background-color:var(--bgColor)
}
[class^="button-"].button-square:after {
  content: "";
  display: block;
  width: var(--iconSize, 1rem);
  height:  var(--iconSize, 1rem);
  background-size: contain;
  background-position: top right;
  background-repeat: no-repeat;
}

.button-square.white{--bgColor:var(--white); filter:saturate(0) brightness(1)}
.button-square.white:hover{filter:revert !important; --bgColor:var(--white);}

/*.button-circular.white:hover:after{filter:initial}*/

button[disabled] {
  opacity: 50%;
  pointer-events: none;
}
}


.button-underline{text-decoration: underline;
    text-underline-offset: .4ch;
    font-weight: 400;
    --bgColor: transparent;
    display: inline-block;
    --textColor: var(--text-color);
    padding: 0;
      font-size: inherit;
    
    }

.button-underline:focus{
 outline:0 !important;
 font-weight:600

}

/* FORM STYLES  */
label {
    color: var(--text-color);
    font-size: var(--15);
}
[type="text"],
[type="email"],
select,
[type="tel"],
textarea {
    --text-color: var(--text-color);
    margin-bottom: var(--16);
    padding-block: 1rem;
    border-radius: 0;
    height: auto;
    color: var(--text-color) !important;
    box-shadow: none;
    width: 100%;
    font-size: var(--17);
    border:0;
    border-bottom: 1px solid var(--grey-800);
}
.wpcf7-spinner {
    display: none;
}
[type=color]:focus,
[type=date]:focus,
[type=datetime-local]:focus,
[type=datetime]:focus,
[type=email]:focus,
[type=month]:focus,
[type=number]:focus,
[type=password]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=text]:focus,
[type=time]:focus,
[type=url]:focus,
[type=week]:focus,
textarea:focus {
    outline: none;
    border-color: var(--grey);
}

[type=checkbox],
[type=file],
[type=radio] {
    margin-bottom: 0;
}


.wpcf7-not-valid-tip {
    color: var(--error);
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}
.wpcf7-not-valid {
    border-color:var(--error);
    margin-bottom: 0;
}
.wpcf7 form .wpcf7-response-output {
    background: var(--success);
    border-color:var(--success);
    padding: 1rem;
    color: white;
    padding-inline: 2rem;
    margin-block: 2rem;
    margin-inline: 0;
    border-radius: 6px;
  
}
form [type="submit"] {
   
    cursor: pointer;
    --borderColor: transparent;
    --borderWeight: 0px;
    --textColor: var(--grey-800);
    --bgColor: var(--grey-100);
   
    --borderRadius: var(--buttonRadius);;
    border-radius: var(--borderRadius);
    border-color: var(--borderColor);
    border-style: solid;
    border-width: var(--borderWeight);
    color: var(--textColor);
    background-color: var(--bgColor);
    padding: var(--12) var(--24);
    line-height: 1;
    text-align: center;
     width:100%;
transition:linear .2s;
text-transform:uppercase

}
form [type="submit"]:not([disabled]):hover {
    --bgColor:var(--grey-200)
}
form [type="submit"]:disabled {
    opacity: 0.3;
}

/* Contenitore del pulsante */
.wpcf7-submit-wrapper {
    position: relative;
    display: block;
  
}

/* Tooltip base */
.wpcf7-submit-wrapper::after {
    content: "Accetta l'informativa sulla privacy per inviare la richiesta";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% calc(-100% - 10px);
    background-color: var(--primary-500);
    color: white;
    padding: 6px 10px;
    font-size: var(--14);
    border-radius: 6px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 10;
}

/* Triangolino del tooltip */
.wpcf7-submit-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% -100%;
    border-width: 5px;
    border-style: solid;
    border-color: var(--primary-500) transparent transparent transparent;
    opacity: 0;
    transition: opacity 0.2s ease;
}

/* Mostra il tooltip solo quando il bottone è disabilitato e hoverato */
form:not(.wpcf7-form.sent) .wpcf7-submit-wrapper:has(input:disabled):hover::after,
form:not(.wpcf7-form.sent) .wpcf7-submit-wrapper:has(input:disabled):hover::before {
    opacity: 1;
}

.bg-accent .wpcf7-not-valid-tip {
    background: var(--error);
    padding: var(--16);
    color: white;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    color: white;
    background: var(--error);
    border-color: var(--error);
}
.wpcf7-list-item {
    margin: 0;
    padding-right: 0;
}

input:-webkit-autofill,
input:-webkit-autofill:focus,
input:-webkit-autofill:hover,
select:-webkit-autofill,
select:-webkit-autofill:focus,
select:-webkit-autofill:hover,
textarea:-webkit-autofill,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:hover {

    -webkit-text-fill-color: var(--primary-800);
    font-style: italic;
    color: var(--primary-800);
    -webkit-box-shadow: none;
    transition: background-color 5000s ease-in-out 0s;
}
form input[type="checkbox"] {
    -webkit-appearance: none;
    border-radius: 50%;
    margin-bottom: 0;
    border: 0.15rem solid var(--text-color) !Important;
    top: 0.5ch;
    outline: 0;
    width: 14px;
    height: 14px;
    display: block;
    aspect-ratio: 1;
    position: relative;
    margin-right: 0.6rem;
}
.wpcf7-form input[type=radio]:focus,
form input[type=checkbox]:focus {
    box-shadow: none;
}
input[type=checkbox]:after {
    content: '';
    width: 6px;
    height: 6px;
    left: 2px;
    position: absolute;
    top: 2px;
    background: none;
    border-radius: 50%;
}
input[type=checkbox]:checked:after {
    background: var(--text-color);
}



form .wpcf7-acceptance label {
    line-height: 1.4;
    display: flex;
    color: var(--text-color);
}
form .wpcf7-acceptance label a {
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 0;
    font-size: inherit;
}
form .wpcf7-acceptance label a:before {
    display: none;
}
form .wpcf7-acceptance label a:hover {
    --linkColor: var(--primary);
    translate: 0;
}
form input[type="radio"] {
    -webkit-appearance: none;
    margin-bottom: 0;
    border: 1px solid var(--text-color) !Important;
    top: 5px;
    outline: 0;
    width: 13px;
    height: 13px;
    display: inline-block;
    float: left;
    position: relative;
    margin-right: 0.5rem;
}
input[type="radio"]:after {
    content: '';
    width: 7px;
    height: 7px;
    left: 2px;
    position: absolute;
    top: 2px;
    background: none;
}
input[type="radio"]:checked:after {
    background: var(--text-color);
}

@media screen and (max-width: 64em) {
    form button.button-outlined {
        width: 100%;
        padding-block: var(--p2);
    }
}
@media screen and (max-width: 39.9375em) {
    .wpcf7-form-control.wpcf7-radio {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Contenitore generale dei radio */
.wpcf7-form-control.wpcf7-radio {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
}

/* Nasconde i radio standard */
.wpcf7-form-control.wpcf7-radio input[type="radio"] {
    display: none;
}

/* Stile base per le label */
.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label {
    display: inline-block;
    padding: 0.5rem 1rem;
    border: 1px solid var(--light-grey);
    border-radius: 2rem;
    background-color: #f7f7f7;
    color: var(--text-color);
    line-height: 1;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

/* Hover: feedback visivo */
.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label:hover {
    background-color: var(--light-grey);

}

/* Stato attivo (quando il radio è selezionato) */
.wpcf7-form-control.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label {
    background-color: #222;
    color: #fff;
    border-color: #222;

}

/* Adattamento mobile */
@media (max-width: 40em) {
    .wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label {
        padding: 1rem 1.5rem;
    }

}



.input-icon {  --size:2.5rem; position:relative;}
.input-group > input{padding-right:3rem}

.input-icon > input{padding-left:var(--size)}
.input-icon:after{content:""; width:var(--size); height:100%; background-position:center center; background-repeat: no-repeat; background-size:1rem; top:0; left:0; position:absolute}

/* screen reader */
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap; 
    border: 0;
}
.screen-reader-text:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
    background: #fff;
    color: #000;
    padding: 8px 12px;
    z-index: 100000; /* sopra tutto */
}