/*
 *
 * BY ing. Nicolò Chiellini n.chiellini@4sigma.it
 * dott. Valeria La Mantia v.lamantia@4sigma.it
 * dott. Livia Ranzini l.ranzini@4sigma.it
 *
 */
:root {
    --scrollbar-width: 0px;
    --vh: 1vh;
    --bianco: #fff;
    --nero: #000;
    --grigio-chiaro: #F0F0F0;
    --grigio-scuro: #242423;
    --grigio: #E4E8E9;
    --grigio-medio: #98958f;
    --rosa: #FFD1DA;
    --rosso: #EE5873;
    --bordeaux: #AC2F46;
    --ceruleo: #CEE1F3;
    --blue: #459CED;
    --blue-scuro: #1262AB;
    --verde-chiaro: #BBF5F0;
    --verde: #00B0A2;
    --verde-scuro: #007D73;
    --purple-chiaro: #F3E4FF;
    --purple: #C07BF6;
    --purple-scuro: #6E3799;
}
html {
    width: 100%;
    min-height: 100%;
    margin: 0px;
    float: left;
    padding: 0px;
    font-size: 15px;
    line-height: 18px;
    overflow-x: hidden;
/*     scroll-behavior: smooth; */
    font-family: 'DM Sans';
}
body {
    border: none;
    padding: 0px;
    margin: 0px;
    width: 100%;
    min-height: 100vh;
    float: left;
    -webkit-text-size-adjust: 100%;
    font-weight: 400;
    position: relative;
    overflow-x: hidden;
}

td {
    border: none;
    text-align: left;
    margin: 0px;
    padding: 0px;
}
div, p, h1, h2, h3, h4, h5, h6, ul,
footer, header, nav, article, main, aside,
section, form, fieldset, marquee,
figure, figcation {
    float: left;
    margin: 0px;
    padding: 0px;
    width: 100%;
    text-align: left;
    text-decoration: none;
    -webkit-text-size-adjust: 100%;
}
img {
    text-decoration: none;
    border: none;
    vertical-align: middle;
}
svg {
    border: none;
    border-image-width: 0;
}
iframe {
    margin: 0px;
    padding: 0px;
    border: none;
}
video[poster] {
    height:100%;
    object-fit: cover;
}
video {
    max-width: 100%;
}
table, td, tr {
    margin: 0px;
    padding: 0px;
    border: none;
}
table {
    float: left;
}
label {
    cursor: pointer;
}
a {
    outline: none;
    text-decoration: none;
    cursor: pointer;
    color: var(--grigio-scuro);
    transition: color 0.2s;
    -webkit-transition: color 0.2s;
}
button {
/*     color: var(--blu-scuro); */
}
li {
    outline: none;
}

i, em, .italic {
    font-style: italic;
    font-weight: inherit;
}
i strong, em strong {
    font-style: italic;
}
.underline {
    text-decoration: underline;
}
*:-placeholder
{
    color: #bdbdbd;
}
button::-moz-focus-inner {
  border: 0;
}
a:focus {
    outline: none;
}
input:focus:-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; }
input:focus:-ms-input-placeholder  { color:transparent; }

input,
textarea,
select,
button {
    outline: none;
    border: none;
    padding: 0px;
    -webkit-border-radius: 0px;
/*     font-family: 'GeneralSans-Regular'; */
}
select {
    -webkit-appearance: none;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAWCAYAAAAW5GZjAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ2MCwgMjAyMC8wNS8xMi0xNjowNDoxNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozYWZiZjdlZi01YWI5LTQxOTgtYWM4NS03NjY3MTY0OTY4MzUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUFGNzc5RkEzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUFGNzc5RjkzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGRUM3M0JFODJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGRUM3M0JFOTJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PivKHYoAAACeSURBVHjaYvz//z8DsYCJgQQwSBSzgAhGLU9ksQwgngDEBUA8Ayb4/9p2iGIkkAnE06Ds6SBzoDSGM5AVwsA0qDiKYmwKMTTAFHcT8Fs33INAoAnEwngUv0VW/BiKCQcdEMgSYfJjmOLrQMyNR/FXIOaBebCUgAtKkUMDFPBZOBRmwSIGOVKwacjCFYMwDaAI+AmlpyNLMg7BnAIQYADcuSEq6NODFQAAAABJRU5ErkJggg==);
    background-position: calc(100% - 15px) 50%;
    background-repeat: no-repeat;
    background-size: 11px 22px;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=number] {
    -moz-appearance:textfield;
}
input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=date] {
    -moz-appearance:textfield;
}
.noSelect {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.noSelect:focus {
    outline: none !important;
}
button {
    cursor: pointer;
    -webkit-appearance: none;
    background-color: transparent;
}
input[type="checkbox"] {
    -webkit-appearance: checkbox;
    -webkit-border-radius: auto;
    vertical-align: middle;
}
input[type="radio"] {
/*    -webkit-appearance: checkbox;
    -webkit-border-radius: auto;*/
    vertical-align: middle;
}
input[type=submit] {
    -webkit-border-radius:0px;
    -webkit-appearance: none;
}
.hidden {
    display: none;
}
.over_hidden {
    overflow: hidden;
}
.block {
    display: block;
}
.flex {
    display: flex;
}
.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}
.mobile {
    display: none;
}
.opacity_0 {
    opacity: 0;
}
.inline-block {
    display: inline-block;
}
.relative {
    position: relative;
}
.absolute {
    position: absolute;
}
.left {
    float: left;
}
.right {
    float: right;
}
.none {
    float: none;
}
.clear {
    clear: both;
}
.v_top {
    vertical-align: top;
}
.text_top {
    vertical-align: text-top;
}
.v_middle {
    vertical-align: middle;
}
.v_bottom {
    vertical-align: bottom;
}
.m_auto {
    margin: 0px auto
}
.w_auto {
    width: auto;
}
.max_w100pe {
    max-width: 100%;
}
.max_w80pe {
    max-width: 80%;
}
.max_w75pe {
    max-width: 75%;
}
.max_w70pe {
    max-width: 70%;
}
.max_w50pe {
    max-width: 50%;
}
.pointer {
    cursor: pointer;
}
.wait {
    cursor: wait;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-justify {
    text-align: justify;
}
.text-truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.extralight {
    font-weight: 200;
}
.light {
    font-weight: 300;
}
.normal {
    font-weight: 400;
}
.style-normal {
    font-style: normal;
}
.strike {
    text-decoration: line-through;
}
.medium {
    font-weight: 500;
}
.semibold {
    font-weight: 600;
}
.bold,
strong,
b {
    font-weight: 700;
}
.extrabold {
    font-weight: 900;
}
.red {
    color: red;
}
.black,
.nero {
    color: var(--nero);
}
.white, .bianco {
    color: var(--bianco);
}
.cover {
    background-size: 100% 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.cover-picture img {
    object-fit: cover;
    width: 100%;
    height: auto;
}
.cover-picture-full img {
    object-fit: cover;
    min-width: 100%;
    height: 100%;
}
.uppercase {
    text-transform: uppercase;
}
.lowercase {
    text-transform: lowercase;
}
.capitalize {
    text-transform: capitalize;
}
.two-column {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
}
.ritch-cont {
    overflow: hidden;
}
.ritch-cont * {
}

.ritch-cont a {
    font-weight: bold;
}
.ritch-cont ul {
    width: 100%;
    box-sizing: border-box;
    list-style-type: disc;
    padding-left: 20px;
    display: block;
}
.ritch-cont ol {
    width: 100%;
    box-sizing: border-box;
    list-style-type:decimal;
    padding-left: 20px;
}
.ritch-cont li {
    float: left;
    width: 100%;
}
.ritch-cont img {
    max-width: 100% !important;
    height: auto !important;
}
.gen-text-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.flex-reverse-row {
    flex-direction: row-reverse;
}
.video-cover-image {
    display: none !important;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
/* Honey POT anti SPAM */
.hnpt {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    background-color: transparent;
    height: 100%;
    z-index: 100;
}
#over-box {
    position: fixed;
    z-index: 96;
    background-color: rgba(0, 0, 0, 0.6);
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
.noscroll {
    position: fixed;
    overflow-y:scroll
}
.modal-box {
    display: none;
    position: fixed;
    opacity: 0;
    top: -500px;
    max-height: 100vh;
/*    background-color: var(--bianco-sporco);
    color: var(--blu-scuro);
    text-align: center;
    z-index: 9999;
    top: -500px;
    opacity: 1;
    width: 680px;
    min-height: 355px;
    left: 50%;
    margin-left: -340px;
    border-radius: 10px;
    box-shadow: 0px 0px 25px 0px rgb(0 0 0 / 15%);
    max-height: 70vh;*/
}
.modal-box {
    position: absolute;
/*     display: block; */
    width: 800px;
    max-width: 90%;
    top: 50px;
    left: calc((100vw - 800px) / 2 );
    background-color: var(--bianco);
    z-index: 101;
/*     padding: 40px; */
    box-sizing: border-box;
    border-radius: 5px;
    border: 1px solid var(--grigio-scuro);
    overflow: hidden;
}
input:autofill,
input:auto-fill,
input:-webkit-autofill,
input:-webkit-auto-fill {
    background-color: transparent !important;
    background-image: none !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 40rem #ffff inset;
}
.form-input {
    width: 100%;
    height: 41px;
    line-height: 39px;
    color: var(--grigio);
    font-size: 14px;
    line-height: 39px;
    border-radius: 3px;
    padding: 0px 9px;
    box-sizing: border-box;
    border: 1px solid var(--grigio);
}
*:-placeholder {
    color: rgba(36,36,35, 0.6);
}
.form-half-input-cont {
    width: calc(50% - 10px);
}
.form-half-input-cont:last-child {
    width: calc(50% - 10px);
    float: right;
}
/* MAIN */
.paralucent {
    font-family: "paralucent", sans-serif;
}
.page {
    width: 1220px;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    float: none;
    box-sizing: border-box;
    max-width: 100%;
}
.half-page {
    width: 610px;
    max-width: 100%;
    padding-left: 20px;
    /* padding-right: 0px; */
    box-sizing: border-box;
}
.page-1-3 {
    width: calc(1220px / 3 );
    max-width: calc(100vw / 3);
    padding-left: 20px;
    /* padding-right: 0px; */
    box-sizing: border-box;
}
.page-2-3 {
    width: calc(1220px * 2 / 3 );
    max-width: calc(100vw * 2 / 3);
    padding-right: 20px;
    box-sizing: border-box;
    float: right;
}
header {
    height: 60px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--nero);
    background-color: var(--bianco);
    position: fixed;
    z-index: 100;
    top: 0px;
    left: 0px;
}
header.open {
/*     display: none; */
    z-index: 95;
}
#btn-header {
    display: block;
    float: right;
    height: 40px;
    width: 40px;
    box-sizing: border-box;
    padding: 8px;
    text-align: center;
    margin: 8.5px 12px 0px 0px;
    background-color: var(--grigio-scuro);
    border-radius: 20px;
    position: fixed;
    top: 0px;
    right: 0px;
    z-index: 101;
}
#btn-header.open {
    background-color: var(--bianco);
    transition: top 0.75s, opacity 1s;
}
#btn-header span:first-child,
#btn-header.open span:last-child {
    display: inline;
}
#btn-header span:last-child,
#btn-header.open span:first-child {
    display: none;
}
#header-nav {
    position: fixed;
    right: -100%;
    width: 33%;
    min-width: 400px;
    height: 100%;
    padding: 0px 50px;
    top: 0px;
    background-color: var(--grigio-chiaro);
    z-index: 100;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: right 0.5s;
    -webkit-transition: right 0.5s;
}
#header-nav.open {
    right: 0px;
}
.header-lnk {
    display: block;
    float: left;
    width: 100%;
    height: 80px;
    padding-bottom: 10px;
    box-sizing:  border-box;
    line-height: 74px;
    font-size: 34px;
    font-family: "paralucent", sans-serif;
    font-weight: 500;
    border-bottom: 0.5px solid #000;
    text-align: left;
    color: var(--grigio-scuro);
}
#header-sub-nav {
    display: none;
}
#header-first-toggle {
    display: block;
    position: absolute;
    right: 0px;
    top: 0px;
    padding-left: 50px;
}
#header-first-toggle svg {
    transition: transform 0.2s;
}
#header-sub-nav a {
    text-align: center;
    font-size: 25px;
    line-height: 40px;
    font-weight: 300;
    color: var(--grigio-scuro);
}
#logo-header {
    display: block;
    float: left;
    height: 59px;
 /* width: 59px;
    background-color: var(--grigio); */
    font-family: "paralucent", sans-serif;
    font-size: 28px;
    line-height: 59px;
    font-weight: 500;
    margin-left: 15px;

}
main {
    box-sizing: border-box;
    padding-top: 60px;
    min-height: 100vh;
}

footer {
    background-color: var(--grigio-scuro);
    color: var(--bianco);
}
footer a {
    color: var(--bianco);
}

#footer {
    padding-bottom: 55px;
    padding-top: 55px;
}
#footer-take-action {
    width: calc(33% - 10px);
    padding: 20px;
    box-sizing: border-box;
    border: 1px solid #fff;
}
#footer-nav {
    float: right;
    display: flex;
    width: calc(66% - 10px);
    padding: 20px 20px 16px 20px;
    box-sizing: border-box;
    border: 1px solid #fff;
}
#footer-title {
    font-size: 32px;
    line-height: 35px;
    font-weight: bold;
    margin-bottom: 10px;
}
#footer-small-title {
    font-size: 24px;
    line-height: 27px;
    font-weight: bold;
    margin-bottom: 36px;
}
.footer-text {
    font-size: 14px;
    line-height: 22px;
}
.footer-nav-lnk {
    font-size: 18px;
    line-height: 21px;
    font-weight: 500;
    display: block;
    float: left;
    width: 100%;
}
.footer-nav-lnk-small {
    font-size: 14px;
    line-height: 21px;
}
.footer-nav-col {
    width: 35%;
}
.footer-nav-col:first-child {
    width: 30%;
}
#footer-contacts {
    font-size: 16px;
    line-height: 22px;
    font-weight: 500;
}
#footer-form {
    margin: 17px 0px;
}
#footer-form textarea {
    height: 88px;
    resize: none;
}
#footer-form .form-input {
    color: var(--bianco);
    background-color: var(--grigio-scuro);
    font-size: 14px;
    border: 1px solid var(--bianco);
    max-width: 300px;
    width: 100%;
}
#footer-form .form-input::placeholder {
    color: var(--bianco);
}
#id-footer_email {
    padding-right: 90px;
}
#btn-footer-invia {
    background-color: var(--grigio-scuro);
    color: var(--bianco);
    width: 80px;
    display: block;
    position: absolute;
    top: 0px;
    left: 220px;
    height: 41px;
    line-height: 39px;
    text-align: center;
    border: 1px solid var(--bianco);
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}
/*
 *
 */

#hp-sec-1 {
    height: calc(100vh - 60px);
    position: relative;
    display: flex;
    align-items: center;
}
#hp-sec-1 .page {
    padding: 20px;
    position: relative;
    z-index: 10;
}
#hp-sec-1 .ico-img {
    width: 120px;
    display: block;
    float: left;
    position: absolute;
}
#hp-sec-1 h1 {
    margin-top: 47px;
}
.titolo-big {
    font-size: 65px;
    line-height: 70px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
}
.titolo-medium {
    font-size: 40px;
    line-height: 50px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
}
.testo {
    font-size: 24px;
    line-height: 27px;
}
#link-card-cont {
    display: flex;
    justify-content: space-between;
    margin-top: 70px;
}
.link-card-ext {
    display: block;
    float: left;
    width: 25%;
}
.link-card {
    display: block;
    float: left;
    max-width: 258px;
    width: 100%;
/*     height: 337px; */
    padding-top: 130%;
    margin-top: 18px;
    margin-left: 20px;
    color: var(--bianco);
    box-sizing: border-box;
    position: relative;
}
.link-card-int {
    display: block;
    float: left;
    position: absolute;
    top: -18px;
    left: -20px;
    width: 100%;
    height: 100%;
    padding: 20px;
    box-sizing: border-box;
}
.link-card .link-card-svg {
    position: absolute;
    bottom: 20px;
    right: 20px;
}
.link-card .link-card-svg .cls-1 {
    fill: #fff;
}
.link-card-text {
    font-size: 30px;
    line-height: 33px;
    font-weight: 500;
}
#link-card-sessualita {
    background-color: var(--bordeaux);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-sessualita .link-card-int {
    background-color: var(--rosso);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-stili-vita {
    background-color: var(--verde-scuro);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-stili-vita .link-card-int {
    background-color: var(--verde);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-benessere-mentale {
    background-color: var(--blue-scuro);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-benessere-mentale .link-card-int {
    background-color: var(--blue);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-cuore  {
    background-color: var(--purple-scuro);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#link-card-cuore .link-card-int  {
    background-color: var(--purple);
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}

#hp-sec-3 {
    margin-top: 100px;
    border-top: 1px solid var(--nero);
    border-bottom: 1px solid var(--nero);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(5, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}

#hp-sec-3-head {
    grid-area: 1 / 1 / 2 / 2;
    padding-top: 32px;
    box-sizing: border-box;
}
#hp-sec-3-map-cont {
    grid-area: 1 / 2 / 6 / 3;
    padding: 32px;
    box-sizing: border-box;
    border-left: 1px solid var(--nero);
}
#hp-sec-3-map {
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    background-color: var(--grigio);
}

.main-struttura #hp-sec-3-map {
    padding-bottom: 0px;
    position: fixed;
    right: 0px;
    top: 60px;
    width: 50%;
    height: calc(100vh - 60px);
}
.main-struttura #hp-sec-3-map.absolute {
    position: absolute;
    top: auto;
    width: 100%;
    bottom: 0px;
}

#hp-sec-3-strutture {
    grid-area: 2 / 1 / 6 / 2;
    grid-area: 1 / 1 / 6 / 2;
    padding: 80px 0px;
}

#hp-sec-3-strutture .half-page {
    padding-right: 120px;
    box-sizing: border-box;

}
.riga-struttura {
    display: flex;
    justify-content: space-between;
    padding: 40px 20px 40px 0px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--nero);
}
.riga-struttura.hidden {
    display: none;
}
#professioni-dove .riga-struttura:last-child {
    border-bottom: none;
}
#professioni-dove .riga-struttura:nth-last-child(2) {
    border-bottom: 1px solid var(--nero);
}
.riga-struttura:nth-last-child(2) {
    border-bottom: none;
}
.riga-struttura-nome {
    font-size: 21px;
    line-height: 24px;
    font-weight: 600;
}
.riga-struttura-citta,
.riga-struttura-indirizzo {
    font-size: 17px;
    line-height: 20px;
    font-weight: 400;
}
.riga-struttura-lnk {
    display: block;
    float: right;
    margin-top: 20px;
}
#btn-visita-mappa {
    display: block;
    float: left;
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid var(--nero);
    text-align: center;
    font-size: 18px;
    line-height: 21px;
    border-radius: 3px;
    margin-top: 50px;
    transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
}
#hp-sec-4 {
    border-bottom: 1px solid var(--nero);
}
#hp-sec-4 .page {
    padding-top: 130px;
    padding-bottom: 195px;
}
#sez-professionisti {
    padding-bottom: 160px;
}
#help-card-cont {
    display: flex;
    justify-content: space-between;
    margin-top: 70px;
    flex-wrap: wrap;
}
.help-card-lnk {
    width: calc((100% - 102px) / 4);
    display: block;
    float: left;
    margin: 0px calc(102px / 4) calc(102px / 4) 0px;
}
#help-card-cont:nth-last-child(-n + 3) {
    display: flex;
    justify-content: start;
    flex-wrap: wrap;
}
.help-card {
    display: block;
    float: left;
    width: 100%;
    padding-top: 147%;
    border: 1px solid var(--grigio-scuro);
    border-radius: 3px;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
}
.help-card-img-cont {
    display: flex;
    align-items: flex-end;
    position: absolute;
    width: 100%;
    height: 72%;
    background-color: var(--grigio);
    top: 0px;
    left: 0px;
    text-align: center;
}
.help-card-img-cont img {
    max-width: 100%;
}
.help-card-text-cont {
    position: absolute;
    display: flex;
    align-items: center;
    width: 100%;
    height: 28%;
    bottom: 0px;
    left: 0px;
    padding: 10px;
    box-sizing: border-box;
    font-size: 24px;
    line-height: 27px;
    font-weight: 700;
    border-top: 1px solid var(--grigio-scuro);
}
#hp-sec-5 .page {
    padding-top: 75px;
    padding-bottom: 105px;
}
#card-slider {
    margin-top: 70px;
    padding-top: 70px;
    height: 635px;
    box-sizing: border-box;
}
#card-slider-nav {
    display: flex;
    justify-content: center;
    margin-top: 40px;
}
#card-slider-nav a {
    display: block;
    float: left;
    margin: 0px 20px;
    height: 42px;
    width: 42px;
}
#card-slider-nav a:first-child {
    transform: rotate(180deg);
}
@keyframes hideloader {
    0% {
        opacity: 1;
    }
    80% {
        opacity: 0;
    }
    100% {
        opacity: 0;
        display: none;
    }
}
#card-slider-loader {
    position: absolute;
    background-color: white;
    z-index: 999;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    display: flex;
    animation: hideloader 1s forwards;
}
#card-slider-loader img {
    width: 150px;
}
#card-slider.initial~#card-slider-loader {
    animation: unset;
}
#card-slider.initial {
    padding-top: 0px;
}
#card-slider.initial .card:nth-child(n+2) {
    display: none;
}
#card-slider .card {
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    box-shadow: 0px -2px 4px 0px rgba(0, 0, 0, 0.15);
}
#card-slider .card:nth-child(1) {
    z-index: 25;
}
#card-slider .card:nth-child(n+1) * {
    opacity: 1;
    transition: all 1s;
    -webkit-transition: all 1s;
}
#card-slider .card:nth-child(n+2) * {
    opacity: 0;
    transition: all 0s;
    -webkit-transition: all 0s;
}
#card-slider .card:nth-child(2) {
    width: calc(100% - 20px);
    left: 10px;
    top: 55px;
    z-index: 19;
    height: 400px;
}
#card-slider .card:nth-child(3) {
    width: calc(100% - 40px);
    left: 20px;
    top: 45px;
    z-index: 18;
}
#card-slider .card:nth-child(4) {
    width: calc(100% - 60px);
    left: 30px;
    top: 35px;
    z-index: 17;
}
#card-slider .card:nth-child(5) {
    width: calc(100% - 80px);
    left: 40px;
    top: 25px;
    z-index: 16;
}
#card-slider .card:nth-child(6) {
    width: calc(100% - 100px);
    left: 50px;
    top: 15px;
    z-index: 15;
}
#card-slider .card:nth-child(7) {
    width: calc(100% - 120px);
    left: 60px;
    top: 5px;
    z-index: 14;
}
#card-slider .card:nth-child(n+7) {
    display: none;
}
.card {
    height: 50px;
    border-radius: 6px;
    box-sizing: border-box;
    padding: 22px 0px 0px 0px;
    overflow: hidden;
    position: absolute;
}
#card-slider .card:nth-child(1) {
    height: 565px;
    padding: 40px;
/*     overflow: hidden; */
    position: relative;
    z-index: 22;
}
.card-question-img,
.card-question-img-mobile {
    display: none;
}
#card-slider .card:nth-child(1) .card-question-img {
    display: block;
    float: left;
    overflow: hidden;
}
.card-left {
    width: 390px; /* Mar perchè? */
    max-width: 50%;
    float: left;
    z-index: 10;
    position: relative;
}
.card-right {
    width: 350px; /* Mar perchè? */
    max-width: 50%;
    float: right;
    z-index: 10;
    position: relative;
}
.btn-card {
    position: absolute;
    bottom: 40px;
    left: 40px;
    height: 53px;
    line-height: 51px;
    font-size: 18px;
    text-align: center;
    color: var(--bianco);
    display: block;
    float: left;
    width: 380px; /* Mar perchè? */
    max-width: 50%;
    border: 1px solid white;
    border-radius: 3px;
    z-index: 10;
}
.card-sessualita {
    background-color: var(--rosso);
}
.card-stili_vita {
    background-color: var(--verde);
}
.card-benessere_mentale {
    background-color: var(--blue);
}
.card-prevenzione_cardiovascolare {
    background-color: var(--purple);
}
.card-tag {
    display: block;
    float: left;
    padding: 0px 25px;
    height: 30px;
    line-height: 30px;
    font-size: 18px;
    border-radius: 3px;
    background-color: rgba(255, 255, 255, 0.5);
}
.card-tag-sessualita {
    color: var(--rosso);
}
.card-sessualita .svg-question-mark-card .cls-1,
.card-sessualita .svg-question-mark-card-mobile .cls-1,
.card-sessualita .svg-question-mark-curiosita .cls-1 {
    fill: #FFD1DA;
}
.card-sessualita .svg-question-mark-card .cls-2,
.card-sessualita .svg-question-mark-card-mobile .cls-2,
.card-sessualita .svg-question-mark-curiosita .cls-2 {
    fill: #AC2F46;
}
.card-sessualita .svg-question-mark-card .cls-3,
.card-sessualita .svg-question-mark-card-mobile .cls-3,
.card-sessualita .svg-question-mark-curiosita .cls-3 {
    fill: #EE5873;
}
.card-tag-stili_vita {
    color: var(--verde);
/*     background-color: var(--verde); */
}
.card-stili_vita .svg-question-mark-card .cls-1,
.card-stili_vita .svg-question-mark-card-mobile .cls-1,
.card-stili_vita .svg-question-mark-curiosita .cls-1 { /* Mark Outer */
    fill: #BBF5F0;
}
.card-stili_vita .svg-question-mark-card .cls-2,
.card-stili_vita .svg-question-mark-card-mobile .cls-2,
.card-stili_vita .svg-question-mark-curiosita .cls-2 { /* 3D Mark */
    fill: #007D73;
}
.card-stili_vita .svg-question-mark-card .cls-3,
.card-stili_vita .svg-question-mark-card-mobile .cls-3,
.card-stili_vita .svg-question-mark-curiosita .cls-3 { /* Mark */
    fill: #00B0A2;
}

.card-tag-benessere_mentale {
    color: var(--blue);
}
.card-benessere_mentale .svg-question-mark-card .cls-1,
.card-benessere_mentale .svg-question-mark-card-mobile .cls-1,
.card-benessere_mentale .svg-question-mark-curiosita .cls-1 { /* Mark Outer */
    fill: #CEE1F3;
}
.card-benessere_mentale .svg-question-mark-card .cls-2,
.card-benessere_mentale .svg-question-mark-card-mobile .cls-2,
.card-benessere_mentale .svg-question-mark-curiosita .cls-2 { /* 3D Mark */
    fill: #1262AB;
}
.card-benessere_mentale .svg-question-mark-card .cls-3,
.card-benessere_mentale .svg-question-mark-card-mobile .cls-3,
.card-benessere_mentale .svg-question-mark-curiosita .cls-3 { /* Mark */
    fill: #459CED;
}

.card-tag-prevenzione_cardiovascolare {
    color: var(--purple);
}
.card-prevenzione_cardiovascolare .svg-question-mark-card .cls-1,
.card-prevenzione_cardiovascolare .svg-question-mark-card-mobile .cls-1,
.card-prevenzione_cardiovascolare .svg-question-mark-curiosita .cls-1 { /* Mark Outer */
    fill: #F3E4FF;
}
.card-prevenzione_cardiovascolare .svg-question-mark-card .cls-2,
.card-prevenzione_cardiovascolare .svg-question-mark-card-mobile .cls-2,
.card-prevenzione_cardiovascolare .svg-question-mark-curiosita .cls-2 { /* 3D Mark */
    fill: #6E3799;
}
.card-prevenzione_cardiovascolare .svg-question-mark-card .cls-3,
.card-prevenzione_cardiovascolare .svg-question-mark-card-mobile .cls-3,
.card-prevenzione_cardiovascolare .svg-question-mark-curiosita .cls-3 { /* Mark */
    fill: #C07BF6;
}
.card-testo-left {
    font-family: "paralucent", sans-serif;
    font-size: 55px;
    line-height: 65px;
    color: white;
    margin-top: 50px;
}
.card-testo-right {
    margin-top: 50px;
    font-size: 21px;
    line-height: 26px;
    font-weight: 500;
    color: white;
}
.card-question-img {
    position: absolute;
    bottom: -5px;
    right: 0px;
}
#hp-sec-6 {
    border-top: 1px solid var(--nero);
}
#agevolazioni {
    position: absolute;
    top: 0px;
    left: 0px;
}
#hp-sec-6 .page {
    padding-top: 105px;
    padding-bottom: 185px;
}
#agevolazioni-cont {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 70px;
}
.agevolazione {
    float: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: calc((100% - 40px) / 3);
    margin-bottom: 20px;
    box-sizing: border-box;
    border: 1px solid var(--grigio-scuro);
    border-radius: 3px;
    padding: 5px 20px;
    height: 110px;
}
.agevolazione-text {
    display: block;
    float: left;
    width: calc(100% - 102px); /* 52 per andare a filo 10*/
    font-size: 21px;
    line-height: 24px;
    font-weight: 600;
}
#hp-sec-7 {
    background-color: var(--grigio-chiaro);
    padding: 152px 0px;
}
#hp-sec-7 .titolo-medium {
    color: var(--grigio-scuro);
}
#hp-dmande-form {
    margin-top: 40px;
}
#id-hp_testo {
    display: block;
    float: left;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 3px;
    border: 1px solid var(--grigio-scuro);
    font-size: 14px;
    line-height: 17px;
    resize: none;
}
#id-hp_email {
    display: block;
    float: left;
    width: calc(50% - 10px);
    height: 53px;
    line-height: 51px;
    padding: 0px 20px;
    box-sizing: border-box;
    font-size: 14px;
    border: 1px solid var(--grigio-scuro);
    border-radius: 3px;
}
#id-hp_btn {
    display: block;
    float: right;
    width: calc(50% - 10px);
    line-height: 51px;
    padding: 0px 20px;
    text-align: center;
    box-sizing: border-box;
    font-size: 14px;
    color: var(--bianco);
    border: 1px solid var(--grigio-scuro);
    background-color: var(--grigio-scuro);
    border-radius: 3px;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}
.title-section-cont {
    left: 0px;
    background-color: var(--bianco);
    z-index: 95;
}
#title-dove-mi-trovi-scorrimento {
    display: none;
    left: 0px;
}
.title-section-cont.absolute-start {
    position: absolute;
    top: 0px;
}
#title-professionista-scorrimento {
    position: fixed;
    top: 60px;
    z-index: 96;
}
.title-section-cont.fixed {
    position: fixed;
    top: 60px;
}
#title-servizi-scorrimento.fixed {
    top: 140px;
}
#title-dove-mi-trovi-scorrimento.fixed {
    top: 200px;
}
#title-dove-mi-trovi-scorrimento.fixed .page {
    padding-left: 20px;
}
.title-section-cont.absolute-stop {
    position: absolute;
    bottom: 0px;
}
#title-professionisti-scorrimento.absolute-stop,
#title-professionista-scorrimento.absolute-stop {
    bottom: -1px;
}
.title-section-cont {
    display: flex;
    height: 80px;
/*     border-top: 1px solid var(--grigio-scuro); */
    border-bottom: 1px solid var(--grigio-scuro);
}
.section-icon-sessualita img{
    width: 60px;
}
.titolo-medium-section {
    font-size: 34px;
    line-height: 80px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
    padding-left: 40px;
}
.section-icon-sessualita {
    display: block;
    float: right;
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
    background: var(--rosa);
}
.section-icon-benessere-mentale {
    display: block;
    float: right;
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
    background: var(--ceruleo);
}
.section-icon-stili-vita {
    display: block;
    float: right;
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
    background: var(--verde-chiaro);
}
.section-icon-cuore {
    display: block;
    float: right;
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
    background: var(--purple-chiaro);
}
.section-icon-benessere-mentale img{
    width: 60px;
}
.section-icon-stili-vita img{
    width: 60px;
}
.section-icon-cuore img{
    width: 60px;
}
#intro-sessualita {
    height: calc(100vh - 60px);
    float: left;
    position: relative;
    display: flex;
    align-items: center;
    background: var(--rosso);
}
#intro-benessere-mentale {
    height: calc(100vh - 60px);
    float: left;
    position: relative;
    display: flex;
    align-items: center;
    background: var(--blue);
}
#intro-stili-vita {
    height: calc(100vh - 60px);
    float: left;
    position: relative;
    display: flex;
    align-items: center;
    background: var(--verde);
}
#intro-cuore {
    height: calc(100vh - 60px);
    float: left;
    position: relative;
    display: flex;
    align-items: center;
    background: var(--purple);
}
.testo-intro {
    font-size: 40px;
    line-height: 48px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
    color: #fff;
}
#help-card-cont-tematiche {
    display: flex;
    float: left;
    margin: 70px 0px 90px 0px;
    padding-right: 40px;
    flex-wrap: nowrap;
}
#tematica-sec-2 {
    padding-top: 81px;
    box-sizing: border-box;
}
#tematica-sec-2 #hp-sec-3 {
    margin-top: 0px;
    border-top: unset;
}
#tematica-sec-3 {
    border-bottom: 1px solid var(--grigio-scuro);
    padding-top: 81px;
    box-sizing: border-box;
}
#tematica-sec-4 {
    padding-top: 81px;
    box-sizing: border-box;
}
.testo-intro-professionisti {
    font-size: 30px;
    line-height: 38px;
    font-weight: 500;
    color: var(--grigio-scuro);
    padding: 20px 0px;
    box-sizing: border-box;
}
#prof-sec-1 {
    border-bottom: var(--grigio-scuro);
    box-sizing: border-box;
    padding-top: 81px;
}
#prof-sec-2 {
    box-sizing: border-box;
    padding-top: 61px;
}
.professioni-img-cont {
    width: 50%;
    text-align: center;
}
.curiosita-card-cont {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}
.curiosita-card-lnk {
    width: calc(50% - 10px);
    display: block;
    float: left;
    border-radius: 3px;
}
.curiosita-link-card {
    display: block;
    float: left;
/*   max-width: 258px;*/
    width: 100%;
    height: 630px;

    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
#curiosita-link-card-sessualita {
    background-color: var(--rosso);
}
#curiosita-link-card-benessere_mentale {
    background-color: var(--blue);
}
#curiosita-link-card-stili_vita {
    background-color: var(--verde);
}
#curiosita-link-card-prevenzione_cardiovascolare {
    background-color: var(--purple);
}
.card-tag-curiosita {
    display: block;
    float: left;
    padding: 0px 25px;
    margin: 40px 35px;
    height: 30px;
    line-height: 30px;
    font-size: 18px;
    border-radius: 3px;
    background-color: rgba(255, 255, 255, 0.5);
}
.card-testo-left-curiosita {
    font-family: "paralucent", sans-serif;
    font-size: 50px;
    line-height: 65px;
    max-width: 65%;
    color: white;
    margin-left: 35px;
}
.btn-card-curiosita {
    position: absolute;
    bottom: 40px;
    left: 40px;
    right: 40px;
    height: 53px;
    line-height: 51px;
    font-size: 18px;
    text-align: center;
    color: var(--bianco);
    display: block;
    float: left;
    border: 1px solid white;
    border-radius: 3px;
    z-index: 10;
}
.card-question-img-curiosita {
    position: absolute;
    bottom: 65px;
    right: 0px;
}
#professionisti-cont {
    position: relative;
    display: flex;
    align-items: center;
    border: 1x solid var(--grigio-scuro);
/*     height: calc(100vh - 60px); */
/*     justify-content: flex-end; */
/*     flex-direction: row-reverse; */


}
.intro-professionisti-cont-left{
    width: 50%;
}
#professionisti-cont .half-page {
    padding-right: 120px;
}
.icona-professionisti-right {
    display: block;
    width: 40%;
}
.icona-professionisti-right img {
    width: 100%;
    max-height: 100%;
}
.icona-psicologa-right img {
    height: calc(100vh - 250px);
    position: absolute;
    bottom: 0px;
    right: 200px;
}
#prof-sec-1 {
    border-bottom: 1px solid var(--grigio-scuro);
}
.titolo-small {
    font-size: 25px;
    line-height: 60px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
}
.titolo-cont {
    border-bottom: 1px solid var(--grigio-scuro);
}
#professioni-servizi-titolo,
#professioni-dove-titolo {
    width: calc((100% - 1px) / 2);
}
#professioni-dove {
    width: calc((100% - 1px) / 2);
    padding-bottom: 85px;
    box-sizing: border-box;
}
#professioni-dove-titolo h3 {
    padding-left: 115px;
    box-sizing: border-box;
}

#professioni-dove {
    margin-top: 45px;
    padding-left: 115px;
    box-sizing: border-box;
}
.testo-medio {
    font-size: 21px;
    line-height: 25px;
    font-weight: 400;
}
.title-section-cont-servizi {
    display: flex;
    position: relative;
    height: 60px;
/*     border-top: 1px solid var(--grigio-scuro); */
    border-bottom: 1px solid var(--grigio-scuro);
}
#vertical-line-break {
    position: absolute;
    top: 0px;
    left: calc((100% - 1px) / 2);
    width: 1px;
    height: 100%;
    background-color: var(--grigio-scuro);
}
.info-section-cont {
    display: flex;
    position: relative;
}
.servizi-cont {
    width: calc((100% - 1px) / 2);
    padding-bottom: 85px;
    box-sizing: border-box;
}
.servizi-righe {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    margin: 65px 65px 0px 0px;
}
.servizio-singolo-cont {
    padding: 20px 80px 20px 0px;
    box-sizing: border-box;
}
.black-line {
    width: 345px;
    display: block;
    float: left;
    background-color: var(--grigio-scuro);
}
#luogo-singolo {
    display: flex;
    position: relative;
}
#luogo-cont-left {
    width: 50%;
}
#luogo-cont-right-map {
    width: 50%;
}
.titolo-luogo-singolo {
    height: 80px;
    border-bottom: 1px solid var(--grigio-medio);
    background-color: var(--bianco);
}
.titolo-struttura-abs {
    position: absolute;
    width: 100%;
}
.titolo-struttura-fixed {
    position: fixed;
    width: 50%;
    z-index: 10;
}
#struttura-info-titolo.titolo-struttura-fixed {
    top: 60px;
}
#struttura-info-titolo,
#struttura-accesso-titolo,
#struttura-servizi-titolo,
#struttura-aiuto-titolo {
    left: 0px;
    top: 0px;
}
#struttura-info {
    padding-top: 80px;
}
#struttura-accesso,
#struttura-servizi,
#struttura-aiuto {
    padding-top: 60px;
}
.sez-luogo-singolo {
    display: flex;
    position: relative;
    padding-right: 90px;
    height: 80px;
    overflow: hidden;
    box-sizing: border-box;
    align-items: center;
}
.section-icon-consultorio {
    display: block;
    position: absolute;
    right: 0px;
    float: right;
    height: 80px;
    width: 80px;
    line-height: 80px;
    text-align: center;
}
.section-icon-consultorio img{
    width: 60px;
}
.titolo-medium-luogo {
    font-size: 34px;
    line-height: 34px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
}
.struttura-accesso-red {
    background-color: var(--bordeaux);
}
.struttura-servizi-red {
    background-color: var(--rosso);
}
.struttura-aiuto-red {
    background-color: var(--rosa);
}
.struttura-accesso-green {
    background-color: var(--verde-scuro);
}
.struttura-servizi-green {
    background-color: var(--verde);
}
.struttura-aiuto-green {
    background-color: var(--verde-chiaro);
}
.struttura-accesso-blue {
    background-color: var(--blue-scuro);
}
.struttura-servizi-blue {
    background-color: var(--blue);
}
.struttura-aiuto-blue {
    background-color: var(--ceruleo);
}
.struttura-accesso-purple {
    background-color: var(--purple-scuro);
}
.struttura-servizi-purple {
    background-color: var(--purple);
}
.struttura-aiuto-purple {
    background-color: var(--purple-chiaro);
}

.titolo-sez-luogo-singolo {
    height: 60px;
    border-bottom: 1px solid var(--grigio-medio);
    border-top: 1px solid var(--grigio-medio);;
}
.titolo-medium-sez-luogo {
    font-size: 25px;
    line-height: 60px;
    font-weight: 500;
    font-family: "paralucent", sans-serif;
}
.testo-sez-luogo {
    font-size: 21px;
    line-height: 25px;
    font-weight: 400;
    padding: 70px 0px;
    box-sizing: border-box;
}
.territorio-singolo-info-cont {
    display: flex;
    justify-content: space-between;
}
.territorio-info {
    height: 20px;
    padding-right: 30px;
}
.riga-struttura-info p {
    font-size: 21px;
    line-height: 25px;
    font-weight: 400;
}
.territorio-orari-apertura {
    display: flex;
    justify-content: space-between;
}
#help-card-prof-cont {
    display: flex;
    float: left;
    margin: 70px 0px 90px 0px;
    flex-wrap: wrap;
}
.help-card-prof-lnk {
    width: calc((100% - 50px) / 3);
    display: block;
    float: left;
    margin: 0px calc(50px / 3) calc(50px / 3) 0px;
}
.help-card-text-prof-cont {
    position: absolute;
    display: flex;
    align-items: center;
    width: 100%;
    height: 28%;
    bottom: 0px;
    left: 0px;
    padding: 10px;
    box-sizing: border-box;
    font-size: 21px;
    line-height: 24px;
    font-weight: 600;
    border-top: 1px solid var(--grigio-scuro);
}
.help-card-prof-img-cont {
    display: flex;
    align-items: flex-end;
    position: absolute;
    width: 100%;
    height: 72%;
    background-color: var(--grigio);
    top: 0px;
    left: 0px;
    text-align: center;
}
.help-card-prof-img-cont img {
    max-width: 100%;
}

#servizi-territorio-top {
    height: 60px;
    border-bottom: 1px solid var(--grigio-scuro);
    background-color: var(--grigio-chiaro);
}
#servizi-territorio-top h1 {
    height: 60px;
    line-height: 60px;
    font-size: 25px;
    color: var(--grigio-scuro);
    font-family: "paralucent", sans-serif;
    font-weight: 500;
    padding-left: 40px;
    box-sizing: border-box;
}
#servizi-territorio-cont,
#servizi-territorio-lista-cont,
#servizi-territorio-mappa {
    height: calc(100vh - 121px);
    overflow: hidden;
}
#servizi-territorio-lista-cont {
    width: 40%;
    position: absolute;
    left: 0px;
    top: 0px;
    overflow: auto;
    box-sizing: border-box;
    transition: width 0.5s;
    -webkit-transition: width 0.5s;
}
#servizi-territorio-lista {
    padding: 0px 80px 100px 60px;
    box-sizing: border-box;
    transition: padding 0.5s;
    -webkit-transition: padding 0.5s;
}
#servizi-territorio-mappa {
    width: 60%;
    position: absolute;
    right: 0px;
    top: 0px;
    transition: width 0.5s;
    -webkit-transition: width 0.5s;
}
/* width */
#servizi-territorio-lista-cont::-webkit-scrollbar {
    width: 5px;
}
/* Track */
#servizi-territorio-lista-cont::-webkit-scrollbar-track {
    background: var(--grigio);
}
/* Handle */
#servizi-territorio-lista-cont::-webkit-scrollbar-thumb {
    background: var(--grigio-medio);
}
#servizi-territorio-lista-cont {
    scrollbar-color: var(--grigio-medio) var(--grigio);
}
#modal-filtri-territorio-top {
    height: 60px;
    background-color:var(--grigio-chiaro);
    box-sizing: border-box;
    padding: 0px 0px;
    line-height: 59px;
    border-bottom: 1px solid var(--grigio-scuro);
}
#modal-filtri-territorio-top button {
    width: 60px;
    height: 59px;
    line-height: 59px;
    text-align: center;
    display: block;
    float: right;
    color:var(--grigio-scuro);
}
#modal-filtri-territorio-int {
    overflow: auto;
    max-height: calc(90vh - 128px);
}
#modal-filtri-territorio-list {
    box-sizing: border-box;
    padding: 30px 30px 30px 17px;
}
.filtri-titolo {
    font-size: 18px;
    line-height: 21px;
    font-weight: 600;
    font-family: 'DM Sans';
}
.filtro-el,
#modal-filtri-btn {
    display: block;
    float: left;
    margin: 10px 5px 0px 0px;
    padding: 8px 18px;
    border: 1px solid var(--grigio-scuro);
    border-radius: 5px;
    font-size: 18px;
    font-family: 'DM Sans';
    box-sizing: border-box;
}
.filtro-el.sel {
    background-color: var(--grigio-medio);
    color: var(--grigio-scuro);
}
#modal-filtri-btn {
    float: right;
    margin: 15px 0px 0px 0px;
    background-color: var(--grigio-medio);
    color: var(--grigio-scuro);
    line-height: 21px;
}
#modal-filtri-territorio-bottom {
    height: 68px;
    box-sizing: border-box;
    padding: 0px 30px;
    line-height: 67px;
    border-top: 1px solid var(--grigio-scuro);
}

#servizi-territorio-cont.full #servizi-territorio-lista-cont {
    width: 100%;
}
#servizi-territorio-cont.full #servizi-territorio-lista {
    padding: 0px 160px 70px 160px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#servizi-territorio-cont.full #servizi-territorio-mappa {
    width: 0%;
}
#servizi-territorio-cont.full .riga-struttura {
    width: calc(50% - 20px);
}
#switch-mappa-lista {
    position: fixed;
    display: block;
    bottom: 30px;
    left: calc(50% - 67.5px);
    min-width: 135px;
    padding: 20px 30px;
    height: 70px;
    line-height: 30px;
    box-sizing: border-box;
    border-radius: 3px;
    background-color: var(--grigio-medio);
    font-size: 18px;
    color: #000;
}
#switch-mappa-lista img {
    height: 30px;
}
#switch-mappa-lista span:last-child {
    display: none;
}
#switch-mappa-lista span:first-child {
    display: inline;
}
#servizi-territorio-cont.full #switch-mappa-lista span:first-child {
    display: none;
}
#servizi-territorio-cont.full #switch-mappa-lista span:last-child {
    display: inline;
}
/* POPUP MAPPA */
.proxy-map-popup {
    max-width: 315px !important;
    width: 315px;
    min-height: 130px;
    position: relative;
}
.proxy-map-popup .mapboxgl-popup-content {
    padding: 15px;
    display: flex;
    align-items: center;
}
.proxy-map-popup .proxy-map-popup-cont span:first-child {
        width: 265px;
}
.proxy-map-popup-cont {
    display: flex;
    align-items: center;
}
.proxy-map-popup-freccia {
    display: block;
    float: left;
    margin-left: 10px;
}
.proxy-map-popup * {
    font-family: 'DM Sans';
}
.mapboxgl-popup-close-button {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 20px;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
}
.mapboxgl-popup-close-button {
    display: none !important;
}
.marker {
    cursor: pointer;
}
/* Qui vanno gli eventi di Hover. Non metterli da altre parti!!!!! */
@media only screen and (min-width:1201px) and (max-width:10000px) {
    a:hover {
        transition: color 0.2s;
        -webkit-transition: color 0.2s;
/*         color: var(--blue); */
    }
    .svg-circle-arrow-right:hover .st0,
    .agevolazione-link:hover .st0 {
        fill: var(--grigio-medio);
    }
    #btn-visita-mappa:hover {
        background-color: var(--grigio-medio);
    }
    #id-hp_btn:hover {
        background-color: var(--bianco);
        color: var(--grigio-scuro);
    }
    .btn-card:hover {
        background-color: var(--bianco);
        color: var(--grigio-scuro);
    }
    .btn-card-curiosita:hover{
        background-color: var(--bianco);
        color: var(--grigio-scuro);
    }
    #link-card-cont:hover .link-card {
        background-color: #98958f;
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover .link-card-int {
        background-color: #f0f0f0;
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-sessualita:hover {
        background-color: var(--bordeaux);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-sessualita:hover .link-card-int {
        background-color: var(--rosso);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-stili-vita:hover {
        background-color: var(--verde-scuro);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-stili-vita:hover .link-card-int {
        background-color: var(--verde);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-benessere-mentale:hover {
        background-color: var(--blue-scuro);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-benessere-mentale:hover .link-card-int {
        background-color: var(--blue);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-cuore:hover  {
        background-color: var(--purple-scuro);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    #link-card-cont:hover #link-card-cuore:hover .link-card-int  {
        background-color: var(--purple);
        transition: background-color 0.2s;
        -webkit-transition: background-color 0.2s;
    }
    .filtro-el:hover {
        background-color: var(--grigio-medio);
        color: var(--grigio-scuro);
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
}
@media only screen and (min-width:220px) and (max-width:1279px) {
}
@media only screen and (min-width:768px) and (max-width:10000px) {
    @keyframes opensub {
        0% {
            display: flex;
            flex-wrap: wrap;
            opacity: 0;
        }
        1% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    #header-nav .header-lnk:first-child {
        position: relative;
        transition: height 0.5s;
    }
    #header-nav .opensub.header-lnk {
        min-height: 125px;
        transition: height 0.5s;
        height: 260px;
    }
    #header-nav .opensub.header-lnk #header-first-toggle svg {
        transform: rotate(90deg);
    }
    #header-nav .opensub.header-lnk #header-sub-nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        opacity: 1;
        animation: opensub 1s;
        height: 160px;
    }
    #header-sub-nav a {
        width: 100%;
        text-align: left;
    }
}
@media only screen and (min-width:768px) and (max-width:1660px) {
    #header-sub-nav a {
        font-size: 18px;
    }
}
/* Tablet Landscape */
@media only screen and (min-width:1024px) and (max-width:1279px) {
    .page {
        width: 100%;
    }
    .half-page {
        padding: 0px 20px;
    }
    .titolo-medium-section {
        padding-left: 0px;
    }
    #link-card-cont {
        padding-right: 20px;
        box-sizing: border-box;
    }
    .link-card-text {
        font-size: 25px;
        line-height: 28px;
    }
    #hp-sec-3-map {
        padding-bottom: 100vh;
    }
    .titolo-medium-luogo {
        font-size: 25px;
        line-height: 25px;
    }
    #servizi-territorio-lista-cont {
        width: 50%;
    }
    #servizi-territorio-lista {
        padding: 0px 40px 100px 30px;
        box-sizing: border-box;
        transition: padding 0.5s;
        -webkit-transition: padding 0.5s;
    }
    #servizi-territorio-mappa {
        width: 50%;
    }
    #help-card-prof-ext {
        padding-left: 50px;
    }
    .help-card-prof-lnk {
        width: calc((100% - 100px) / 2);
        display: block;
        float: left;
        margin: 0px 50px 50px 0px;
    }
    #professionisti-cont {
        flex-wrap: wrap;
        justify-content: flex-end;
/*         flex-direction: row-reverse; */
    }
    #professionisti-cont .intro-professionisti-cont-left {
        width: 100%;
    }
    #professionisti-cont .intro-professionisti-cont-left .half-page {
        width: 100%;
        padding: 0px 20px;
    }
    #hp-sec-4 .page {
        padding-top: 90px;
        padding-bottom: 90px;
    }
    #professioni-dove {
        padding-left: 20px;
    }
    #professioni-dove-titolo h3 {
        padding-left: 20px;
    }
    #hp-sec-7 {
        padding: 100px 0px;
    }
    .sez-luogo-singolo {
        padding: 0px 100px 0px 20px;
    }
    #btn-footer-invia {
        left: auto;
        right: 0px;
    }
    #footer-take-action {
        width: calc(40% - 10px);
    }
    #footer-nav {
        width: calc(60% - 10px);
    }
    #footer-form .form-input {
        max-width: 100%;
    }
    #footer-small-title {
        font-size: 20px;
        line-height: 20px;
    }
    .footer-nav-col:first-child {
        width: 25%;
    }
    .footer-nav-col {
        width: 37.5%;
    }
}
/* Tablet Portrait */
@media only screen and (min-width:768px) and (max-width:1023px) {
    #header-sub-nav a {
        font-size: 18px;
    }
    .page {
        width: 100%;
    }
    .half-page {
        padding: 0px 20px;
    }
    .titolo-medium-section {
        padding-left: 0px;
    }
    #link-card-cont {
        padding-right: 20px;
        box-sizing: border-box;
    }
    .link-card-text {
        font-size: 18px;
        line-height: 24px;
    }
    #hp-sec-3 {
        display: block;
    }
    #hp-sec-3-head .half-page {
        width: 100%;
        padding: 0px 20px;
    }
    #hp-sec-3-map-cont {
        border: unset;
    }
    #hp-sec-3-strutture .half-page {
        width: 100%;
        padding: 0px 60px;
    }
    .help-card-lnk {
        width: calc((100% - 102px) / 2);
        display: block;
        float: left;
        margin: 0px calc(102px / 4) calc(102px / 2) calc(102px / 4);
    }
    .help-card-img-cont img {
        width: 100%;
    }
    #hp-sec-4 .page {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    #hp-sec-7 {
        background-color: var(--grigio-chiaro);
        padding: 52px 0px;
    }
    #help-card-prof-ext {
        padding-left: 70px;
    }
    #help-card-prof-cont {
        margin: 60px 0px 20px 0px;
    }
    .titolo-medium-luogo {
        font-size: 20px;
        line-height: 23px;
        padding: 20px 0px 20px 0px;
    }
    .sez-luogo-singolo {
        padding: 0px 90px 0px 20px;
    }
    .help-card-prof-lnk {
        width: 100%;
        display: block;
        float: left;
        margin: 0px 30px 50px 0px;
    }
    .help-card-prof-img-cont img {
        width: 100%;
    }
    .main-struttura .help-card-prof-lnk {
        width: calc(50% - 50px);
        display: block;
        float: left;
        margin: 0px 50px 50px 0px;
    }
    #luogo-cont-left,
    #luogo-cont-right-map {
        width: 100%;
    }
    .main-struttura #hp-sec-3-map {
        padding-bottom: 0px;
        padding-top: 70px;
        position: static;
        right: unset;
        top: unset;
        width: 100%;
        height: 50vh;
    }
    .main-struttura #hp-sec-3-map.absolute {
        position: static;
        width: 100%;
        bottom: unset;
        right: unset;
        top: unset;
    }
    .main-struttura .half-page {
        width: 100%;
    }
    .main-struttura .pt_70 {
        padding-top: 0px;
    }
    .titolo-struttura-fixed {
        width: 100%;
    }
    #struttura-info-titolo {
        position: fixed;
        z-index: 10;
        top: 60px;
    }
    #luogo-singolo {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    #servizi-territorio-mappa,
    #servizi-territorio-lista-cont {
        width: 100%;
    }
    #servizi-territorio-cont.full #servizi-territorio-lista {
        padding: 0px 20px 100px 20px;
    }
    #servizi-territorio-top h1 {
        padding-left: 20px;
    }
    .riga-struttura {
        align-items: center;
    }
    .main-curiosita .mt_90 {
        margin-top: 40px;
    }
    .card-tag-curiosita {
        font-size: 15px;
        margin: 30px 20px
    }
    .curiosita-link-card {
        height: 500px;
    }
    .card-question-img-curiosita {
        bottom: 20px;
    }

    .card-testo-left-curiosita {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0px;
        padding: 0px 20px;
        position: relative;
        z-index: 5;
        font-size: 40px;
        line-height: 45px;
    }
    #professioni-dove {
        padding-left: 20px;
    }
    #professioni-dove-titolo h3 {
        padding-left: 20px;
    }
    #professionisti-cont {
        flex-wrap: wrap;
        justify-content: flex-end;
/*         flex-direction: row-reverse; */
    }
    #professionisti-cont .intro-professionisti-cont-left {
        width: 100%;
    }
    #professionisti-cont .intro-professionisti-cont-left .half-page {
        width: 100%;
        padding: 0px 20px;
    }
    #footer-small-title {
        margin-bottom: 20px;
    }
    #footer-take-action {
        width: calc(50% - 5px);
    }
    #footer-nav {
        width: calc(50% - 5px);
    }
    #footer-nav {
        flex-wrap: wrap;
    }
    #footer-nav .mt_25,
    #footer-nav .mt_24 {
        margin-top: 10px;
    }
    #footer-nav .mt_25 {
        margin-top: 13px;
    }
    .footer-nav-col:first-child {
        width: 100%;
    }
    .footer-nav-col {
        width: 50%;
    }
}
/* Cellulari */
@media only screen and (min-width:220px) and (max-width:767px) {
    main {
        min-height: calc(100 * var(--vh));
    }
    #hp-sec-1,
    #hp-sec-1 .page {
        height: calc(100 * var(--vh) - 60px);
    }
    #hp-sec-1 h1 {
        bottom: 40px;
    }
    .page,
    .half-page {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }
    #logo-header {
        font-size: 20px;
    }
    #header-first-toggle {
        top: 70px;
    }
    #header-sub-nav {
        padding-top: 22px;
        padding-bottom: 5px;
    }
    #header-nav .header-lnk:first-child {
        position: relative;
    }
    header.open {
        display: block;
        z-index: 97;
    }
    #header-nav {
        top: -100vh;
        width: 100%;
        min-width: 100%;
        left: 0px;
        position: fixed;
        background-color: var(--bianco);
        z-index: 99;
        opacity: 0;
        padding: 0px;
        margin: 0px;
        transition: top 0.75s, opacity 0.75s;
        display: block;
    }
    #header-nav.open {
        top: 60px;
        opacity: 1;
    }
    .header-lnk {
        display: block;
        float: left;
        width: 100%;
        height: calc((100vh - 61px - 6px) / 6);
        font-size: 34px;
        line-height: calc((100vh - 61px - 6px) / 6);
        font-family: "paralucent", sans-serif;
        font-weight: 500;
        border-bottom: 0.5px solid #000;
        text-align: center;
        color: var(--grigio-scuro);
    }
    #header-nav .header-lnk:first-child {
        line-height: unset;
        height: unset;
        min-height: calc((100vh - 61px - 6px) / 6);
    }
    #header-first-text {
        display: block;
        float: left;
        width: 100%;
        font-size: 34px;
        line-height: 34px;
        margin-top: 32px;
    }
    #header-first-toggle {
        display: block;
        float: left;
        width: 100%;
        text-align: center;
        transition: transform 0.2s;
    }
    #header-sub-nav,
    #header-sub-nav a {
        display: block;
        float: left;
        width: 100%;
    }
    @keyframes opensub {
        0% {
            display: block;
            opacity: 0;
        }
        1% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    #header-sub-nav {
        display: none;
        opacity: 0;
        padding-bottom: 19px;
    }
    #header-nav .opensub.header-lnk #header-sub-nav {
        display: block;
        opacity: 1;
        animation: opensub 1s;
    }
    #header-nav .opensub.header-lnk #header-first-toggle svg {
        transform: rotate(180deg);
    }
    #header-sub-nav a {
        text-align: center;
        font-size: 25px;
        line-height: 40px;
        font-weight: 300;
        color: var(--grigio-scuro);
    }
    #hp-sec-1 {
        align-items: start;
    }
    #hp-sec-1 .page {
        height: calc(100vh - 60px);
        box-sizing: border-box;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #hp-sec-1 h1 {
        position: absolute;
        margin-top: 20px;
        bottom: 30px;
    }
    #hp-sec-1 .clear {
        display: none;
    }
    #hp-sec-2 {
        border-top: 1px solid var(--grigio-scuro);
        margin-top: 60px;
        padding-top: 60px;
    }
    .titolo-big {
        font-size: 50px;
        line-height: 55px;
    }
    .titolo-medium {
        font-size: 34px;
        line-height: 38px;
    }
    .titolo-medium-section {
        padding-left: 0px;
    }
    .title-section-cont .titolo-medium-section {
        display: flex;
        align-items: center;
        font-size: 22px;
        line-height: 32px;
        height: 80px;
    }
    .title-section-cont .page {
        width: calc(100% - 80px);
    }
    .testo {
        font-size: 21px;
        line-height: 26px;
    }
    .testo-intro {
        padding: 60px 0px;
        box-sizing: border-box;
        font-size: 28px;
        line-height: 34px;
    }
    #hp-sec-3 {
        display: block;
        margin-top: 60px;
    }
    #hp-sec-3-head {
        padding-top: 60px;
    }
    #hp-sec-3-head .half-page {
        width: 100%;
        padding: 0px 20px;
    }
    #hp-sec-3-map-cont {
        border: unset;
        padding: 20px;
    }
    #hp-sec-3-strutture .half-page {
        width: 100%;
        padding: 0px 20px;
    }

    #hp-sec-4 .page {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    #hp-sec-5 .page {
        padding: 60px 20px;
    }
    #hp-sec-6 .page {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    #hp-sec-7 {
        padding: 60px 0px;
    }
    #btn-visita-mappa  {
        margin-top: 20px;
    }
    .riga-struttura {
        align-items: center;
        padding: 20px 20px 40px 0px;
    }
    #link-card-cont {
        justify-content: space-between;
        flex-wrap: wrap;
        margin-top: 35px;
        width: calc(100% - 10px);
    }
    .link-card {
        margin-left: 10px;
    }
    .link-card-int {
        top: -10px;
        left: -10px;
        padding: 20px 10px;
    }
    .link-card-ext {
        width: calc(50% - 10px);
        margin-bottom: 5px;
    }
    .link-card-text {
        font-size: 17px;
        line-height: 21px;
    }
    .link-card .link-card-svg svg {
        height: 50px;
        width: 60px;
    }
    .help-card-img-cont img {
        width: 100%;
    }
    .help-card-text-cont {
        font-size: 16px;
        line-height: 20px;
        padding: 5px;
    }
    .help-card-lnk {
        width: calc((100% - 10px) / 2);
        display: block;
        float: left;
        margin: 0px 0px 10px 0px;
    }
    .help-card-lnk:first-child,
    .help-card-lnk:nth-child(3),
    .help-card-lnk:nth-child(5),
    .help-card-lnk:nth-child(7) {
        margin-right: 10px;
    }
    #help-card-cont-tematiche {
        flex-wrap: wrap;
    }
    #professionisti-cont {
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    #professioni-dove {
        position: relative;
        margin-top: 0px;
        padding-top: 80px;
    }
    #professionisti-cont .intro-professionisti-cont-left {
        width: 100%;
    }
    #professionisti-cont .intro-professionisti-cont-left .half-page {
        width: 100%;
        padding: 0px 20px;
    }
    .testo-intro-professionisti {
        font-size: 21px;
        line-height: 26px;
    }
    .icona-professionisti-right {
        width: 60%;
    }
    .info-section-cont {
        display: block;
    }
    .title-section-cont .page {
        width: calc(100% - 80px);
        float: left;
        margin: unset;
    }
    .servizi-righe {
        width: 100%;
    }
/*     .black-line, */
    #vertical-line-break {
        display: none;
    }
    .servizi-righe {
        display: block;
        margin: 65px 0px 0px 0px;
    }
    .servizio-singolo-cont {
        padding: 20px 0px;
    }
    #professioni-dove-titolo {
        display: none;
    }
    #professioni-servizi-titolo {
        width: 100%;
    }
    #professioni-dove {
        width: 100%;
        padding-left: 0px;
    }
    .servizi-cont {
        width: 100%;
        padding-bottom: 60px;
    }
    .card-tag {
        padding: 0px 15px;
        font-size: 16px;
    }
    #card-slider .card:nth-child(1) {
        padding: 25px;
        height: 565px;
    }
    #card-slider .card:nth-child(1) .card-question-img {
        display: none;
    }
    #card-slider .card:nth-child(1) .card-question-img-mobile {
        display: block;
        float: left;
        overflow: hidden;
    }
    .card-question-img-mobile {
        position: absolute;
        bottom: 60px;
        right: 0px;
    }
    .btn-card {
        width: calc(100% - 40px);
        max-width: 100%;
        left: 20px;
        bottom: 45px;

    }
    #sez-professionisti .mt_90 {
        margin-top: 30px;
    }
    #help-card-cont {
        margin-top: 30px;
    }
    .card-left {
        width: 100%; /* Mar perchè? */
        max-width: 390px;
    }
    .card-testo-left {
        font-size: 35px;
        line-height: 45px;
        margin-top: 20px;
    }
    .card-right {
        display: none;
    }
    #id-hp_email,
    #id-hp_btn {
        width: 100%;
    }
    #id-hp_btn {
        margin-top: 25px;
    }
    #id-hp_testo {
        height: 165px;
    }
    #hp-dmande-form .mt_30 {
        margin-top: 15px;
    }
    #intro-sessualita,
    #intro-benessere-mentale,
    #intro-stili-vita,
    #intro-cuore {
        height: auto;
        min-height: calc(100vh - 60px);
        box-sizing: border-box;
        padding-top: 80px;
    }
    #hp-sec-3-strutture {
        padding: 20px 0px 60px 0px;
    }
    #tematica-sec-3 .mt_110 {
        margin-top: 60px;
    }
    #tematica-sec-4 .mb_150 {
        margin-bottom: 60px;
    }
    #help-card-cont-tematiche {
        margin: 60px 0px;
    }
    #title-dove-mi-trovi-scorrimento {
        display: block;
        left: -20px;
        width: calc(100% + 40px);
        border-top: 1px solid var(--grigio-scuro);
    }
    #title-dove-mi-trovi-scorrimento.fixed {
        left: 0px;
    }
    .main-curiosita .mt_90 {
        margin-top: 40px;
    }
    .curiosita-card-cont {
        display: block;
    }
    .curiosita-card-lnk {
        width: 100%;
    }
    .card-question-img-curiosita {
        display: none;
    }
    .card-tag-curiosita {
        margin: 20px;
    }
    .card-testo-left-curiosita {
        width: 100%;
        max-width: 100%;
    }
    .curiosita-card-lnk {
        margin-bottom: 20px;
    }
    .curiosita-link-card {
        height: 300px;

    }
    .card-testo-left-curiosita {
        margin: 0px;
        padding: 10px 20px;
        box-sizing: border-box;
        font-size: 34px;
        line-height: 38px;
    }
    .btn-card-curiosita {
        left: 20px;
        bottom: 20px;
        width: calc(100% - 40px);
    }

    #servizi-territorio-mappa,
    #servizi-territorio-lista-cont {
        width: 100%;
    }
    #servizi-territorio-cont.full #servizi-territorio-lista {
        padding: 0px 20px 100px 20px;
    }
    #servizi-territorio-cont.full .riga-struttura {
        width: 100%;
    }
    #servizi-territorio-top .w_40pe {
        width: 80%;
    }
    #servizi-territorio-top h1 {
        padding-left: 20px;
    }
    .main-struttura .help-card-prof-lnk {
        width: calc(50% - 10px);
        display: block;
        float: left;
        margin: 0px 5px 10px 5px;
    }
    #luogo-cont-left,
    #luogo-cont-right-map {
        width: 100%;
    }
    .titolo-medium-luogo {
        font-size: 22px;
        line-height: 25px;
        padding: 20px 0px 20px 0px;
    }
    .titolo-medium-sez-luogo,
    .titolo-small {
        font-size: 22px;
        line-height: 60px;
    }
    .main-struttura #hp-sec-3-map {
        padding-bottom: 0px;
        padding-top: 70px;
        position: static;
        right: unset;
        top: unset;
        width: 100%;
        height: 50vh;
    }
    .main-struttura #hp-sec-3-map.absolute {
        position: static;
        width: 100%;
        bottom: unset;
        right: unset;
        top: unset;
    }
    .main-struttura .half-page {
        width: 100%;
    }
    .main-struttura .pt_70 {
        padding-top: 0px;
    }
    .titolo-struttura-fixed {
        width: 100%;
    }
    #struttura-info-titolo {
        position: fixed;
        z-index: 10;
        top: 60px;
    }
    #struttura-info-titolo .half-page {
        padding-right: 90px;
    }
    #luogo-singolo {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    #luogo-cont-left .mb_120 {
        padding-bottom: 40px;
        margin-bottom: 0px;
    }
    #servizi-territorio-mappa,
    #servizi-territorio-lista-cont {
        width: 100%;
    }
    #servizi-territorio-cont.full #servizi-territorio-lista {
        padding: 0px 20px 100px 20px;
    }
    #servizi-territorio-top h1 {
        padding-left: 20px;
    }
    .main-professionista-sessualita #title-servizi-scorrimento {
        background-color: var(--bordeaux);
        color: white;
    }
    .main-professionista-sessualita #title-dove-mi-trovi-scorrimento {
        background-color: var(--rosso);
        color: white;
    }
    .main-professionista-stili_vita #title-servizi-scorrimento {
        background-color: var(--verde-scuro);
        color: white;
    }
    .main-professionista-stili_vita #title-dove-mi-trovi-scorrimento {
        background-color: var(--verde);
        color: white;
    }
    .main-professionista-benessere_mentale #title-servizi-scorrimento {
        background-color: var(--blue-scuro);
        color: white;
    }
    .main-professionista-benessere_mentale #title-dove-mi-trovi-scorrimento {
        background-color: var(--blue);
        color: white;
    }
    .main-professionista-prevenzione_cardiovascolare #title-servizi-scorrimento {
        background-color: var(--purple-scuro);
        color: white;
    }
    .main-professionista-prevenzione_cardiovascolare #title-dove-mi-trovi-scorrimento {
        background-color: var(--purple);
        color: white;
    }
    #footer-take-action,
    #footer-nav {
        width: 100%;
        padding: 40px 0px;
    }
    #footer-take-action,
    #footer-nav {
        border: unset;
        display: block;
    }
    .footer-nav-col,
    .footer-nav-col:first-child {
        width: 100%;
    }

    #footer-take-action {
        border-bottom: 1px solid var(--bianco);
    }

}
