:root {

	/* -- COLORI ------------------------------------------------ */
	--glacier: #91C1D1;  
    --mistBlue: #C8E0E8;  
    --stormBlue: #7AA5B4;  
}

.glacier { color: var(--glacier);}
.b-glacier { background-color: var(--glacier);}
.b-mistBlue { background-color: var(--mistBlue);}
.b-stormBlue { background-color: var(--stormBlue);}

/* CHI SIAMO */
.chi-siamo__content { padding-block: var(--space-10); }
p.chi-siamo__overtitle { font-size: var(--fs-20); line-height: 1.1; margin: 0 0 var(--space-1); }
.chi-siamo__title { font-size: var(--fs-55); line-height: 1.1; margin: 0 0 var(--space-4); }
p.chi-siamo__text {font-size: var(--fs-25); line-height: 1.5;}
p.chi-siamo__text:not(:last-child) { margin: 0 0 var(--space-3); }
p.chi-siamo__text:last-of-type { margin: 0; } 

/* VERIFICA */
section.tecnologia { padding-block: var(--space-6); position: relative; }
.tecnologia__container { position: relative; }
h2.tecnologia__title { font-size: var(--fs-30); margin: 0; }
.tecnologia__image { position: absolute; }
picture.tecnologia__image img { width: 100%; height: auto; }

/* COLLABORARE */
.collaborare { padding-block: var(--space-10); }
p.collaborare__overtitle { font-size: var(--fs-20); line-height: 1.1; margin: 0 0 var(--space-1); }
h2.collaborare__title { font-size: var(--fs-55); line-height: 1.1; margin: 0 0 var(--space-6); text-wrap: balance;}
.collaborare__accordion::after { position: absolute; content: ""; height: 1px; background-color: var(--cobalt); left: 0px; right: 0px; }
.collaborare__accordion { position: relative; }
.collaborare__item:first-child button.collaborare__trigger { padding-bottom: var(--space-2); }
.collaborare__item:not(:first-child) button.collaborare__trigger { padding-block: var(--space-2); }
button.collaborare__trigger { width: 100%; padding-inline: 0; background: transparent; border: none;
 text-align: left; cursor: pointer; display: flex; align-items: center; justify-content: space-between; position: relative; }
 .collaborare__item:not(:first-of-type) > button.collaborare__trigger::before { position: absolute; content: ""; height: 1px; background-color: var(--cobalt); top: 0; left: 0; right: 0; }
button.collaborare__trigger::after { content: "\e145"; font-family: 'Material Symbols Outlined', sans-serif; font-size: 2em; color: var(--cobalt); display: flex; align-items: center; justify-content: center; height: 0.7em; }
.collaborare__item.is-open > button.collaborare__trigger::after { content: '\e15b'; }
span.collaborare__trigger-text { font-size: var(--fs-25); cursor: pointer; text-wrap: balance;}
button.collaborare__trigger + div > p.collaborare__text, .collaborare__panel > .collaborare__text:not(:last-of-type) { margin: 0 0 var(--space-2);}
p.collaborare__text { font-size: var(--fs-20); line-height: 1.4;}

/* MODELLO */
.modello { padding-block: var(--space-10); }
p.modello__overtitle { font-size: var(--fs-20); line-height: 1.1; margin: 0 0 var(--space-1); }
h2.modello__title { font-size: var(--fs-55); line-height: 1.1; margin: 0 0 var(--space-4); text-wrap: balance;}
p.modello__text, li.modello__item { font-size: var(--fs-25); line-height: 1.4;}
p.modello__text:nth-of-type(2) {margin: 0 0 var(--space-2);}
p.modello__subtitle { font-size: var(--fs-30); margin: 0 0 var(--space-3);}
ul.modello__list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); margin: 0 0 var(--space-6); }
li.modello__item { display: flex; align-items: start; gap: calc(var(--space-2) / 2); }
.modello__accordion { display: grid; gap: var(--space-4); }
img.modello__icon { width: clamp(2rem, calc(1.43vw + 1.71rem), 3rem); height: auto; filter: brightness(0) saturate(100%) invert(78%) sepia(12%) saturate(653%) hue-rotate(155deg) brightness(92%) contrast(87%); }
p.modello__item, p.modello-panel__text { margin: 0;}
.modello-panel, .modello-panel-inner { border-radius: 0 4rem 4rem 0; }
.modello-panel { background-color: rgb(145 193 209 / 50%); }
.modello-panel-inner { margin-right: calc(1.2 * var(--space-1)); }
button.modello-panel__btn { cursor: pointer; width: 100%; display: flex; align-items: center; background: none; border: none; padding-inline: 0 var(--space-4); padding-block: var(--space-2); text-align: left; justify-content: space-between; &:after { display: inline-block; content: "\e313"; font-weight: 100; font-family: 'Material Symbols Outlined', sans-serif; color: var(--white); vertical-align: middle; transition: transform 0.3s ease;  cursor: pointer; font-size: clamp(2.5rem, calc(1.78vw + 2.06rem), 4rem); width: clamp(2.5rem, calc(1.78vw + 2.06rem), 4rem); height: clamp(2.5rem, calc(1.78vw + 2.06rem), 4rem); }}
h3.modello-panel__title { font-size: var(--fs-40); margin: 0;}
.modello-panel__content { padding-bottom: var(--space-4); }
p.modello-panel__text { font-size: var(--fs-25); line-height: 1.4; padding-right: var(--space-4);}

/* VANTAGGI */
section.vantaggio { padding-top: var(--space-10); }
h2.vantaggio__title {font-size: var(--fs-65); line-height: 1.2; margin: 0 0 var(--space-1);}
h3.vantaggio__subtitle {font-size: var(--fs-20); margin: 0 0 var(--space-4);}
p.vantaggio__text {font-size: var(--fs-25); line-height: 1.4; max-inline-size: 47ch; margin: 0 0 var(--space-6);}
.vantaggi__grid { border-radius: 4rem 4rem 0 0;display: flex; flex-direction: column; min-height: calc(((var(--fs-40) * 1.5) + (var(--space-4) * 2)) * 2);}
.vantaggi__layer { --radius: clamp(3.5rem, calc(2.14vw + 3.07rem), 5rem); border-radius: var(--radius) var(--radius) 0 0; display: flex; flex-direction: column; flex: 1;}
.vantaggi__layer--2,
.vantaggi__layer--3, .vantaggi__layer--4{ background-color: rgba(122, 165, 180, 0.69);}
button.vantaggi-panel__btn { display: flex; align-items: center; gap: var(--space-2); width: 100%; border: none; text-align: left; background: transparent; cursor: pointer; padding: var(--space-4) var(--space-6); &::after { content: "\e145"; font-weight: 100; font-family: 'Material Symbols Outlined', sans-serif; color: var(--white); font-size: var(--fs-55); }}
h3.vantaggi-panel__title { font-size: var(--fs-35); margin: 0; text-wrap: balance;}
.vantaggi-panel__content { padding: 0 var(--space-6) var(--space-4);}
p.vantaggi-panel__text, .vantaggi-panel__item-text{ font-size: var(--fs-25); }
p.vantaggi-panel__text:has(+ p), p.vantaggi-panel__text:has(+ ul) { margin: 0 0 var(--space-2); } 
.vantaggi-panel__text:last-of-type { margin-bottom: 0; }
ul.vantaggi-panel__list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
ul.vantaggi-panel__list:has(+ p) { margin: 0 0 var(--space-3);}
li.vantaggi-panel__item { display: flex; align-items: center; gap: calc(var(--space-2) / 2);position: relative; }
img.vantaggi__icon { width: clamp(2rem, calc(1.43vw + 1.71rem), 3rem); height: auto; filter: brightness(0) invert(1);}
.vantaggi-panel__item-text { margin: 0;}

/* PATRIMONIO */
section.patrimonio { padding-block: var(--space-10); position: relative;}
p.patrimonio__overtitle { font-size: var(--fs-20); line-height: 1.1; margin: 0 0 var(--space-1); }
h2.patrimonio__title { font-size: var(--fs-55); line-height: 1.1; margin: 0 0 var(--space-4); text-wrap: balance; }
p.patrimonio__text { font-size: var(--fs-25); line-height: 1.4; }
.patrimonio__content > p:nth-of-type(2) { margin: 0 0 var(--space-2); }
.patrimonio__content > p:last-of-type { margin: 0; }

/* PROGETTI */
section.progetti { padding-block: var(--space-10);}
h2.progetti__title { font-size: var(--fs-65); line-height: 1.2; margin: 0 0 var(--space-1);}
p.progetti__subtitle { font-size: var(--fs-20); margin: 0 0 var(--space-6); }
.progetti__viewport { overflow: hidden; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -ms-overflow-style: none; }
.progetti__track { display: flex; align-items: stretch; gap: var(--space-4); transition: transform 280ms ease; will-change: transform; }
article.progetti__item { scroll-snap-align: start; scroll-snap-stop: always; display: flex;}
.progetto-card { padding: var(--space-6); box-shadow: 0 0 15px #0000000D; border-radius: 3rem; display: flex; flex-direction: column; flex: 1;}
.progetto-card__header { margin: 0 0 var(--space-6); position: relative; &::after { position: absolute; content: ""; width: 25%; height: 1px; background: var(--cobalt); bottom: -20px; left: 50%; transform: translateX(-50%);}}
.progetto-card__header, p.progetto-card__label { text-align: center; }
img.progetto-card__logo { max-height: clamp(5rem, 7vw, 6.5rem); height: 100%; width: 100%; object-fit: contain;}
h3.progetto-card__title{ font-size: var(--fs-35); margin: 0; text-wrap: balance;}
p.progetto-card__label { font-size: var(--fs-25); margin: 0 0 var(--space-1);}
p.progetto-card__objective { margin: 0 0 var(--space-3); }
p.progetto-card__objective, p.progetto-card__item-text, p.progetto-card__text { font-size: 15px; }
p.progetto-card__item-text { margin: 0;}
ul.progetto-card__list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); margin: 0 0 var(--space-4);}
li.progetto-card__item { display: flex; align-items: center; gap: calc(var(--space-2) / 2); }
img.progetto-card__icon { width: clamp(1.8rem, calc(1.14vw + 1.57rem), 2.8rem); height: auto; filter: brightness(0) saturate(100%) invert(78%) sepia(12%) saturate(653%) hue-rotate(155deg) brightness(92%) contrast(87%); }
p.progetto-card__text { line-height: 1.4; margin: 0;}
.progetto-card__result { margin-top: var(--space-3); }
p.progetto-card__result-label { font-size: var(--fs-25); margin: 0 0 var(--space-1); text-align: center;}
p.progetto-card__result-text { font-size: var(--fs-15); margin: 0; }
.progetti__nav { display: flex; justify-content: center; gap: var(--space-4); margin-top: var(--space-4);  }
button.progetti__arrow { border: none;  }
button.progetti__arrow svg { color: var(--cobalt); width: clamp(2rem, 1rem + 2.5vw, 4rem);  height: clamp(2rem, 1rem + 2.5vw, 4rem); cursor: pointer;}


/* PARTNER */
.partner { padding-block: var(--space-10); box-shadow: 0px 3px 20px #0000001A;;}
p.partner__overtitle { font-size: var(--fs-20); margin: 0 0 var(--space-1);  }
h2.partner__title { font-size: var(--fs-65); line-height: 1; margin: 0 0 var(--space-4);}
p.partner__text { font-size: var(--fs-25); line-height: 1.4; margin: 0; max-inline-size: 62ch; }
.partner__grid { display: grid; gap: var(--space-6); margin-top: var(--space-6); }
.partner__item { display: flex; align-items: center; justify-content: center;}
.partner__logo { max-height: 5rem; max-width: 100%; object-fit: contain; }

@media (max-width: 550px){

    /* TECNOLOGIA */
    h2.tecnologia__title { text-wrap:  balance; }

    /* MODELLO */
    .modello__accordion { padding-right: 8vw; }
    h3.modello-panel__title { padding-left: 8vw; text-wrap: balance;}
    p.modello-panel__text { padding-inline: 8vw; }

}
@media (min-width: 551px) and (max-width: 766.9px){

    /* MODELLO */
    .modello__accordion { padding-right: 10vw; }
    h3.modello-panel__title { padding-left: 10vw; }
    p.modello-panel__text { padding-inline: 10vw;}

    /* PROGETTI */
    .progetti__arrow--prev { left: -5rem; }
    .progetti__arrow--next { right: -5rem; }
}
@media (min-width: 551px) and (max-width: 1400px){

    /* CHI SIAMO */
    p.chi-siamo__text:nth-of-type(2) { max-inline-size: 44ch; }
    p.chi-siamo__text:last-of-type { max-inline-size: 43ch; }

    /* TECNOLOGIA */
    h2.tecnologia__title { max-inline-size: 47ch; text-wrap: balance;}

}
@media (max-width: 766.9px) {

    /* CHI SIAMO */
    p.chi-siamo__text { text-wrap: balance; }
    picture.chi-siamo__picture img { width: 100%; display: block; height: auto; }

    /* MODELLO */
    p.modello-panel__text { text-wrap: balance;}
}

@media (min-width: 767px){

    /* CHI SIAMO */
    .chi-siamo { background-size: cover !important; background-position: right center !important; background-repeat: no-repeat !important; }
    .chi-siamo__picture { display: none !important;}

    /* MODELLO */
    section.modello { background-size: cover !important; }

    /* PROGETTI */
    .progetti__inner { position: relative; }
    .progetti__nav { position: absolute; top: 50%; transform: translateY(-50%); justify-content: space-between; background: none;  cursor: pointer; padding: 0; width: 100%;}
}
@media (min-width: 767px) and (max-width: 899.9px){

    /* CHI SIAMO */
    .chi-siamo { background: url('/media/chiSiamoPharma767.webp'); background-position: 5% center !important;}

    /* MODELLO */
    section.modello { background: url('/media/modelloPharma767.webp'); background-position: 86% center !important;}
    .modello__accordion { max-width: min(86vw, 730px); }
    .modello__content p { max-inline-size: 48ch; text-wrap: balance; }

    /* PATRIMONIO */
    p.patrimonio__text { max-inline-size: 44ch; }

    /* PROGETTI */
    article.progetti__item { flex: 0 0 100%; }
}
@media (min-width: 767px) and (max-width: 1099.9px){

    /* MODELLO */
    h3.modello-panel__title, p.modello-panel__text { padding-left: 8vw; }
    .progetti__slider { margin-inline: var(--space-8); }

    /* PARTNER */    
    .partner__grid { grid-template-columns: repeat(2, 1fr); }  
}
@media (max-width: 899.9px) {

    /* PATRIMONIO */    
    picture.patrimonio__picture { display: none;}

}
@media (min-width: 900px) {

    /* TECNOLOGIA */    
    section.tecnologia picture { top: -15px; }
}
@media (min-width: 900px) and (max-width: 1099.9px){

    /* CHI SIAMO */
    .chi-siamo { background: url('/media/chiSiamoPharma900.webp'); background-position: 50% center !important;}

    /* TECNOLOGIA */
    .tecnologia__image { width: clamp(17rem, calc(-1rem + 32vw), 21rem); right: clamp(-3rem, calc(-16.5rem + 24vw), 0rem); }

    /* MODELLO */
    section.modello { background: url('/media/modelloPharma900.webp'); }
    .modello__content p { max-inline-size: 48ch; }
    .modello__accordion { max-width: min(80vw, 800px); }

    /* PATRIMONIO */
    p.patrimonio__text { max-inline-size: min(66%, 42ch); text-wrap: balance; }
    picture.patrimonio__picture { display: block; position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: clamp(19rem, calc(-12.5rem + 56vw), 26rem); }
    img.patrimonio__image { width: 100%; }

}
@media (min-width: 900px) and (max-width: 1400px){

    /* MODELLO */
    section.modello { background-position: 94% center !important;}

}
@media (max-width: 1099.9px){

    /* TECNOLOGIA */    
    section.tecnologia picture { display: none; }

    /* PROGETTI */    
    article.progetti__item { flex: 0 0 100%; }
}
@media (min-width: 1100px){

    /* PROGETTI */    
    article.progetti__item { flex: 0 0 calc((100% - var(--space-4)) / 2); }
    .progetti__arrow--prev { position: relative; left: clamp(-6rem, calc(-1.32rem - 3.9vw), -4rem); }
    .progetti__arrow--next { position: relative; right: clamp(-6rem, calc(-1.32rem - 3.9vw), -4rem); }

    /* PARTNER */    
    .partner__grid { grid-template-columns: repeat(3, 1fr); }  
    .partner__item:last-child { grid-column: 2; }

}
@media (min-width: 1100px) and (max-width: 1400.98px){

    /* CHI SIAMO */
    .chi-siamo { background: url('/media/chiSiamoPharma1100.webp'); background-position: 68% center !important; }

    /* TECNOLOGIA */
    h2.tecnologia__title.white { max-inline-size: 45ch; text-wrap: balance;}
    .tecnologia__image {  width: clamp(20rem, calc(9rem + 16vw), 23rem); right: clamp(-5rem, calc(-23.33rem + 26.67vw), 0rem); }

    /* MODELLO */
    section.modello { background: url('/media/modelloPharma1100.webp'); }
    h3.modello-panel__title, p.modello-panel__text { padding-left: 10vw; }
    .modello__content p { max-inline-size: 58ch; }
    .modello__accordion { max-width: min(86vw, 1000px); }

    /* PATRIMONIO */
    p.patrimonio__text { max-inline-size: min(60%, 50ch); text-wrap: balance; }
    picture.patrimonio__picture { display: block; position: absolute; right: clamp(4.38rem, calc(-16.19rem + 23.49vw), 12rem); top: 50%; transform: translateY(-50%); width: clamp(23rem, calc(-6.33rem + 42.67vw), 31rem); }
    img.patrimonio__image { width: 100%; }
}
@media (min-width: 1401px) {

    /* CHI SIAMO */
    .chi-siamo { background: url('/media/chiSiamoPharma1401.webp'); background-position: 77% center !important; }
    p.chi-siamo__text:nth-of-type(2) { inline-size: clamp(38rem, 43vw, 47rem); }
    p.chi-siamo__text:last-of-type { inline-size: clamp(39rem, 43vw, 49rem); }

    /* TECNOLOGIA */
    h2.tecnologia__title.white { inline-size: 55ch; text-wrap: balance;}
    .tecnologia__image { width: clamp(20rem, 18rem + 5vw, 27rem); right: 0rem; }

    /* MODELLO */
    section.modello { background: url('/media/modelloPharma1401.webp'); background-position: 30% center !important;}
    h3.modello-panel__title, p.modello-panel__text { padding-left: calc((100vw - min(80vw, 1200px)) / 2); }
    .modello__content p { max-inline-size: 69ch; }
    .modello__accordion { max-width: min(86vw, 1600px); }

    /* PATRIMONIO */
    p.patrimonio__text { max-inline-size: min(61%, 50ch); text-wrap: balance; }
    picture.patrimonio__picture { display: block; position: absolute; right: clamp(4.38rem, calc(-16.19rem + 23.49vw), 12rem); top: 50%; transform: translateY(-50%); width: clamp(31rem, calc(12.1rem + 21.58vw), 38rem); }
    img.patrimonio__image { width: 100%; }
}