:root {
    --scrollbar-width: 0px;
    --nero: #000000;
    --cremina: #ffffff;
    --grigino: #f5f5f5;
    --arancio: #fbc148;
    --verde: #5e821d;
    --verde-resagri: #423700;
    --vh: 1vh;
    --vw: 1vw;
}

html {
    width: 100%;
    min-height: 100%;
    float: left;
    margin: 0px;
    padding: 0px;
    font-family: 'Figtree';
    background-color: var(--cremina);
    color: black;
}

body {
    border: none;
    padding: 0px;
    margin: 0px;
    width: 100%;
    float: left;
    -webkit-text-size-adjust: 100%;
    font-size: clamp(14px, calc((18 / 1880) * 100vw), 18px);
    line-height: clamp(18px, calc((24 / 1880) * 100vw), 24px);
    font-weight: 400;
    /* color: var(--blu); */
    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;
    height: auto;
}

svg {
    border: none;
    border-image-width: 0;
    stroke-width: 0px;
}

iframe {
    margin: 0px;
    padding: 0px;
    border: none;
    /*    height: auto;
    width: 100%;*/
}

video[poster] {
    height: 100%;
    width: 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;
    font-weight: 500;
    transition: color 0.4s;
    -webkit-transition: color 0.4s;
    color: var(--arancio);
}

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: var(--grigio);
}

button::-moz-focus-inner {
    border: 0;
}

a:focus {
    outline: none;
}

*:focus::placeholder {
    color: transparent;
}


input,
textarea,
select,
button {
    outline: none;
    border: none;
    padding: 0px;
    -webkit-border-radius: 0px;
}

select {
    -webkit-appearance: none;
    /* Nero */
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAWCAYAAAAW5GZjAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ2MCwgMjAyMC8wNS8xMi0xNjowNDoxNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozYWZiZjdlZi01YWI5LTQxOTgtYWM4NS03NjY3MTY0OTY4MzUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUFGNzc5RkEzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUFGNzc5RjkzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGRUM3M0JFODJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGRUM3M0JFOTJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PivKHYoAAACeSURBVHjaYvz//z8DsYCJgQQwSBSzgAhGLU9ksQwgngDEBUA8Ayb4/9p2iGIkkAnE06Ds6SBzoDSGM5AVwsA0qDiKYmwKMTTAFHcT8Fs33INAoAnEwngUv0VW/BiKCQcdEMgSYfJjmOLrQMyNR/FXIOaBebCUgAtKkUMDFPBZOBRmwSIGOVKwacjCFYMwDaAI+AmlpyNLMg7BnAIQYADcuSEq6NODFQAAAABJRU5ErkJggg==);
    /* Bianco */
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAWCAYAAAAW5GZjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFzmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgMTAuMC1jMDAwIDc5LmQwNGNjMTY5OCwgMjAyNS8wNy8wMi0xMjoxODoxMyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6M2FmYmY3ZWYtNWFiOS00MTk4LWFjODUtNzY2NzE2NDk2ODM1IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkFBRjc3OUZBMzYyNDExRUJBMjI3QjQxQUVBNTYzQTZFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZlYjU1OWVhLTI0ZmMtNGZiZi05ZmRmLWMyODgxN2VlZmZlZCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDItMTdUMTE6NTQ6NDcrMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAyLTE3VDExOjU1OjM3KzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAyLTE3VDExOjU1OjM3KzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkZFQzczQkU4MkQ5NjExRUJBOEQ2RjM3MTM0QUIyMDQ0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkZFQzczQkU5MkQ5NjExRUJBOEQ2RjM3MTM0QUIyMDQ0Ii8+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjZlYjU1OWVhLTI0ZmMtNGZiZi05ZmRmLWMyODgxN2VlZmZlZCIgc3RFdnQ6d2hlbj0iMjAyNi0wMi0xN1QxMTo1NTozNyswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDI3LjMgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+3d1rSgAAAHtJREFUKJFj/P//PwOxgIlolQyDWnEGAwPDDyiNCkChgYQz/6OCTGR5fAoxNBBSiKKBERopXxgYGLjx+O0rAwMDDwuUo8nAwCCMR/FbEAEzmSgAM1mWCJMfk+RmJiinlIALIPLkhDMDqTEIwxn/////AaVR5EgKukGS+AG9L/rxKKnGSwAAAABJRU5ErkJggg==);
    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;
}

button {
    cursor: pointer;
    -webkit-appearance: none;
    background-color: transparent;
    font-family: 'Figtree';
}

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;
}

.vis_hidden {
    visibility: hidden;
}

.over_hidden {
    overflow: hidden;
}

.block {
    display: block;
}

.flex {
    display: flex;
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.justify-center {
    justify-content: center;
}

.justify-left {
    justify-content: flex-start;
}

.mobile {
    display: none;
}

.opacity_0 {
    opacity: 0;
}

.opacity_1 {
    opacity: 1;
}

.inline-block {
    display: inline-block;
}

.inline-desktop {
    display: inline;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.pointer {
    cursor: pointer;
}

.wait {
    cursor: wait;
}

.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;
}

.w_100pe {
    width: 100%;
}

.w_50pe {
    width: 50%;
}

.max_w100pe {
    max-width: 100%;
}

.max_w50pe {
    max-width: 50%;
}

.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);
}
.cremina {
    color: var(--cremina);
}
.arancio {
    color: var(--arancio);
}
.verde {
    color: var(--verde);
}
.verde-resagri {
    color: var(--verde-resagri);
}
.bkg-verde {
    background-color: var(--verde);
}
.bkg-arancio {
    background-color: var(--arancio);
}
.bkg-cremina {
    background-color: var(--cremina);
}
.bkg-grigino {
    background-color: var(--grigino);
}
.bkg-verde-resagri {
    background-color: var(--verde-resagri);
}
.cover {
    background-size: 100% 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.cover-left {
    background-size: 100% 100%;
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
}

.cover-picture {
    overflow: hidden;
}
.cover-picture img,
.cover-picture-full img {
    object-fit: cover;
    width: 100%;
}
.cover-picture img {
    border-radius: 10px;
}
.cover-picture-center {
    text-align: center;
    overflow: hidden;

}
.cover-picture-center img {
    max-width: 100%;
    border-radius: 10px;
    width: auto;
}

.cover-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cover-picture img {
    height: auto;
}

.cover-picture-full img {
    height: 100%;
}

.picture-full {
    display: block;
    float: left;
    width: 100%;
}

.picture-full img {
    width: 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: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
}

.ritch-cont a {
    color: var(--verde);
}
.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 {
    display: none;
    position: fixed;
    z-index: 9998;
    background-color: rgba(255, 251, 242, 0.90);
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

#over-box.show {
    display: block;
}

.over-hidden {
    overflow: hidden;
}

.noscroll {
    position: fixed !important;
    /*    overflow-y: scroll;*/
}

.modal-box {
    display: none;
    position: fixed;
    /*background-color: var(--bianco);
    color: var(--nerino);*/
    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: calc(70 * var(--vh));
}

input:autofill,
input:auto-fill,
input:-webkit-autofill,
input:-webkit-auto-fill {
    background-color: transparent !important;
    background-image: none !important;
}

.form-half-input-cont {
    width: calc(50% - 5px);
}

.form-half-input-cont:last-child {
    float: right;
}

.form-third-input-cont {
    width: calc((100% - 40px) / 3);
}

.form-input,
.form-select {
    display: inline-block;
    width: 100%;
    height: 50px;
    line-height: 50px;
    color: var(--cremina);
    background-color: unset;
    border: 1px solid var(--cremina);
    border-radius: 5px;
    font-size: 15px;
    padding: 0px 20px;
    box-sizing: border-box;
}
/* Non si legge sul trasparente */
#form-restfarmer select option {
  background: #222;
  color: white;
}

.form-input:focus,
.form-textarea:focus {
    border: 0.5px solid var(--cremina);
}
.form-textarea {
    display: inline-block;
    width: 100%;
    line-height: 20px;
    color: var(--cremina);
    background-color: unset;
    border: 1px solid var(--cremina);
    border-radius: 5px;
    font-size: 15px;
    padding: 10px 20px;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
    resize: none;
}
.form-error .form-input,
input.form-error,
textarea.form-error {
    border: 0.5px solid red;
}
label.form-error {
    border-bottom: 1px solid red;
}
.form-error-span {
    display: inline-block;
    float: left;
    margin-top: 10px;
    font-size: 15px;
    line-height: 20px;
    font-weight: bold;
    box-sizing: border-box;
    padding: 0px 15px;
    color: red;
}
#id_curriculum_vitae {
    visibility: hidden;
    position: absolute;
    z-index: 0;
    opacity: 0;
    top: 50px;
    left: 50px;
}
#curriculum_vitae-label {
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
    padding-right: 100px;
}
#curriculum_vitae-clear {
    position: absolute;
    top: 14px;
    right: 20px;
    color: white;
}
#curriculum_vitae-upload {
    position: absolute;
    top: 0px;
    right: 20px;
    color: white;
}
#curriculum_vitae-clear.hidden,
#curriculum_vitae-upload.hidden {
    display: none;
}
.checkbox-label {
    font-size: 12px;
}

.checkbox-label a {
    display: inline-block;
    width: auto;
    font-size: 12px;
    font-weight: 500;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    color: var(--arancio);
    font-weight: bold;
}

.radio-form-error label {
    border-color: red;
    background-color: #ffdcdc;
}
.text-form-error {
    border-color: red;
    background-color: #ffdcdc;
}
.checkbox-form-error {
    border-bottom: 1px solid red;
}

.btn.block {
    display: block;
}
.btn {
    /* display: inline-block; */
    min-width: 160px;
    /* width: auto; */
    height: 50px;
    font-size: 15px;
    line-height: 48px;
    font-weight: 900;
    padding: 0px 20px;
    box-sizing: border-box;
    text-align: center;
    border-radius: 5px;
    /* cursor: pointer; */
}
.filtri {
    height: 50px;
    width: auto;
    font-size: 15px;
    line-height: 48px;
    font-weight: 700;
    padding: 0px 20px;
    box-sizing: border-box;
    text-align: center;
    border-radius: 5px;
    margin: 20px 5px 0px 5px;
    /* cursor: pointer; */
}
.btn-filetto-cremina {
    border: 1px solid var(--cremina);
    color: var(--cremina);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.btn-filetto-verde {
    border: 1px solid var(--verde);
    color: var(--verde);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.btn-filetto-verde.sel {
    border: 1px solid var(--verde-resagri);
    background-color: var(--verde-resagri);
    color: var(--cremina);
}
.btn-verde {
    border: 1px solid var(--verde);
    background-color: var(--verde);
    color: var(--cremina);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.paginator {
    display: inline-block;
    width: 50px;
    height: 50px;
    font-size: 15px;
    line-height: 48px;
    font-weight: 700;
    text-align: center;
    border-radius: 5px;
}
.pill {
    display: inline-block;
    width: auto;
    height: 25px;
    font-size: 12px;
    line-height: 23px;
    font-weight: 700;
    padding: 0px 15px;
    box-sizing: border-box;
    text-align: center;
    border-radius: 5px;
    /* cursor: pointer; */
}
.pill-filetto-cremina {
    border: 1px solid var(--cremina);
    color: var(--cremina);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.pill-filetto-verde {
    border: 1px solid var(--verde);
    color: var(--verde);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.cover-full-cont {
    position: relative;
}
.cover-full-cont picture,
.cover-full-cont img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}
/* TIPOGRAFIA */
.testo {
    font-size: clamp(14px, calc((18 / 1880) * 100vw), 18px);
    line-height: clamp(18px, calc((22 / 1880) * 100vw), 22px);
}
.testo-grande {
    font-size: clamp(15px, calc((24 / 1880) * 100vw), 24px);
    line-height: clamp(20px, calc((30 / 1880) * 100vw), 30px);
}

.titoletto {
    font-size: clamp(18px, calc((25 / 1880) * 100vw), 25px);
    line-height: clamp(23px, calc((30 / 1880) * 100vw), 30px);
}
.titolino {
    font-size: clamp(25px, calc((40 / 1880) * 100vw), 40px);
    line-height: clamp(25px, calc((40 / 1880) * 100vw), 40px);
}
.titolo {
    font-size: clamp(30px, calc((60 / 1880) * 100vw), 60px);
    line-height: clamp(30px, calc((60 / 1880) * 100vw), 60px);
}
.titolone {
    font-size: clamp(40px, calc((80 / 1880) * 100vw), 80px);
    line-height: clamp(40px, calc((80 / 1880) * 100vw), 80px);
}

.testo-piccolo {
    font-size: 13px;
    line-height: 15px;
}
.testo-piccolo-ancora {
    font-size: 12px;
    line-height: 23px;
}
.news-cont .news-obj:nth-child(1) .news-obj-data,
.news-cont .news-obj:nth-child(2) .news-obj-data,
.news-cont .news-obj:nth-child(3) .news-obj-data,
.news-cont .news-obj:nth-child(4) .news-obj-data {
    color: black;
}
.news-cont .news-obj .news-obj-data {
    color: white;
}

.br_10 {
    border-radius: 10px;
}
/* Main */
main {
    min-height: 100vh;
    box-sizing: border-box;
    /* padding-top: 100px; */
}
/* .main_nopadding main {
    padding-top: 0px;
} */
.page,
.mini-page {
    float: none;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
.page {
    max-width: 1880px;
    padding-left: 120px;
    padding-right: 120px;
}
.mini-page {
    max-width: 1280px;
    padding-left: 40px;
    padding-right: 40px;
}
/* HEADER & FOOTER */
header {
    width: 100%;
    height: 99px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9000; /* Sopra tutto tranne slider */
}
header nav {
    position: relative;
    z-index: 2;
}
/* #header-bg {
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: var(--verde);
    border-bottom: 1px solid var(--cremina);
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.35);
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.35);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.35);
    mix-blend-mode: multiply;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}
.header-top #header-bg {
    opacity: 0;
} */
#logo-header {
    display: block;
    float: left;
    width: auto;
    height: 100px;
    padding: 10px 0px 30px 0px;
    box-sizing: border-box;
}
#logo-header img {
    height: 60px;
}
#menu-header {
    width: auto;
    float: right;
    height: 100px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 60px;
}
.top-nav-li {
    font-size: 15px;
    line-height: 100px;
    font-weight: 900;
    color: var(--cremina);
    display: block;
    float: left;
}
.line-hover-top {
    position: absolute;
    top: 25px;
    right: 0px;
    width: 0px;
    height: 1px;
    background-color: var(--cremina);
    border-radius: 1px;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}
.line-hover-bottom {
    position: absolute;
    bottom: 25px;
    left: 0px;
    width: 0px;
    height: 1px;
    background-color: var(--cremina);
    border-radius: 1px;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}
.sel .line-hover-top {
    position: absolute;
    top: 25px;
    right: 0px;
    width: 100%;
    height: 1px;
    background-color: var(--cremina);
    border-radius: 1px;
}
.sel .line-hover-bottom {
    position: absolute;
    bottom: 25px;
    left: 0px;
    width: 100%;
    height: 1px;
    background-color: var(--cremina);
    border-radius: 1px;
}
.sel .top-nav-li{
    color: var(--arancio);
}
.selbtn .btn-filetto-cremina {
    background-color: var(--cremina);
    color: var(--verde);
}
.paginator.pill-filetto-cremina.sel {
    background-color: var(--cremina);
    color: var(--verde);
}
.menu-header-drop-down {
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    /* justify-content: space-evenly; */
    float: left;
    position: absolute;
    z-index: 2;
    top: 80px;
    left: 0;
    opacity: 1;
}
.menu-header-drop-down.show {
    display: block;
}
.menu-header-drop-down.hide {
    display: none;
}
.menu-header-drop-down-el {
    font-size: 15px;
    line-height: 20px;
    font-weight: 900;
    color: var(--cremina);
    display: block;
    white-space: nowrap;
    float: left;
    padding: 10px 0px;
    box-sizing: border-box;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
/* FOOTER */
footer {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
}
#footer-int {
    position: relative;
    z-index: 10;
    padding: 80px 0px 0px 0px;
}
#footer-bg {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
#logo-footer {
    display: flex;
    justify-content: center;
    width: 100%;
    height: auto;
    margin-bottom: 40px;
}
#logo-footer img {
    height: 200px;
}
footer p {
    line-height: clamp(20px, calc((24 / 1880) * 100vw), 24px);
}
.footer-text-cont {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#footer-info,
#footer-nav {
    display: block;
    width: calc((100% - 40px) / 2);
}
#footer-info p {
    text-align: right;
}
#footer-nav a {
    line-height: clamp(20px, calc((24 / 1880) * 100vw), 24px);
}
.social-icon {
    display: inline;
    font-size: 30px;
    margin-left: 10px;
}
#footer-bottom-line {
    width: 100%;
    background-color: var(--verde);
    margin-top: 120px;
}
#footer-bottom-line p {
    font-size: 13px;
    line-height: 20px;
    padding: 10px 40px;
    box-sizing: border-box;
    text-align: center;
    color: var(--cremina);
}
#footer-bottom-line i {
    color: #F50302;
}
.footer-associato {
   display: block;
   float: left;
   width: calc((100% - 100px) / 6);
   max-width: 150px;

}
.footer-associato .picture-full  img {
    aspect-ratio: 1/1;
}
#associati-cont {
    width: 100%;
    background-color: var(--bianco);
    padding: 40px 0px 160px 0px;
    box-sizing: border-box;
}
#associati-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
}
#burger-menu-mob {
    display: none;
}

/* FORM FOOTER */
#contatti-cont {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
.contatti-int {
    position: relative;
    z-index: 10;
    padding: 80px 0px;
    min-height: 450px;
}
#footer-contatto {
    width: 100%;
    height: auto;
    background-color: var(--cremina);
    padding: 80px 0px;
    box-sizing: border-box;
}
.form-contatto-int {
    position: relative;
    width: 50%;
}
.logo-contatti-cont {
    position: absolute;
    bottom: 0;
    left: calc((100% - 280px) / 2);
    width: 280px;
    height: auto;
    z-index: 10;
}
.logo-contatti-cont img {
    width: auto;
    min-height: 150px;
}
/* PAGINA HOME */
#slider-home {
    width: 100%;
    height: 100vh;
    position: relative;
/*     overflow: hidden; */
}
.slide-home {
    height: 100vh;
    width: 100%;
}
.slide-home .cover-picture-full {
    width: 100%;
    height: 100%;
    display: block;
    float: left;
}
.slide-home-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    /* padding-bottom: 241px; */
}
#slider-home-news {
    position: absolute;
    height: 240px;
    z-index: 3;
    bottom: 0px;
    background-color: rgba(38, 51, 27, 0.80);
    border-top: 1px solid var(--cremina);
}
#slider-home-news .news-cont {
    height: 240px;
    padding: 20px 40px;
    box-sizing: border-box;
}
#slider-home-verticale-cont .tns-nav {
    position: absolute;
    width: 20px;
    height: calc(100vh - 340px);
    right: 20px;
    top: 100px;
    display: flex;
    flex-flow: column;
    justify-content: center;
    gap: 10px;
    z-index: 9999;
}
#slider-home-verticale-cont .tns-nav button {
    width: 10px;
    border-radius: 12.5px;
    height: 25px;
    background-color: #f7f0df10;
    border: 1px solid var(--cremina);
    box-sizing: border-box;
}
#slider-home-verticale-cont .tns-nav .tns-nav-active {
    background-color: var(--cremina);
}
.box-dati-cont {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--cremina);
    height: auto;
    /* height: clamp(130px, calc((300 / 1880) * 100vw), 300px); */
    border-radius: 10px 10px 0px 0px;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    gap: clamp(30px, calc((80 / 1880) * 100vw), 80px);
    align-items: flex-end;
    justify-content: center;
    padding: clamp(40px, calc((30 / 1880) * 100vw), 40px) 40px;
    box-sizing: border-box;
}
.box-dati-obj {
    width: calc((100% - clamp(30px, calc((240 / 1880) * 100vw), 240px)) / 4);
    min-height: 130px;
    height: auto;
    /* height: 100%; */
    border: 1px solid var(--verde);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 10px;
    box-sizing: border-box;
}
.box-dati-numbers {
    font-size: clamp(20px, calc((40 / 1880) * 100vw), 40px);
    line-height: clamp(25px, calc((50 / 1880) * 100vw), 50px);
    font-weight: 900;
    color: var(--arancio);
    text-align: center;
}
.box-dati-text {
    font-size: clamp(16px, calc((26 / 1880) * 100vw), 26px);
    line-height: clamp(18px, calc((26 / 1880) * 100vw), 26px);
    font-weight: 900;
    color: var(--verde);
    text-align: center;
}
.logo-hp-cont {
    float: none;
    margin: 80px auto;
    box-sizing: border-box;
    width: 300px;
    height: auto;
}
.logo-hp-cont img {
    width: 100%;
    height: auto;
}
/* CTA HOME PAGE */
.cosa-facciamo-obj {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 80px;
}
.img-cta-cont {
    width: 100%;
    height: 100vh;
    min-height: 680px;
    overflow: hidden;
}
.img-cta-cont picture,
.img-cta-cont img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.text-cta-cont {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 10;
    box-sizing: border-box;
}
.text-cta-cont-bottom {
    display: flex;
    /* justify-content: center; */
    align-items: flex-end;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 80px;
    left: 0px;
    z-index: 10;
    box-sizing: border-box;
}
.hp-titolo-bkg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--cremina);
}
.hp-news-bkg-bianco {
    background-color: var(--cremina);
    position: absolute;
    height: calc((((1800px - 120px) / 4 ) * 9 / 16 + 20px) / 2);
    width: 100%;
    z-index: 1;
}
.hp-news-bkg-verde {
    background-color: var(--verde);
    position: absolute;
    height: 100%;
    width: 100%;
}
.news-obj-categoria {
    position: absolute;
    top: 10px;
    right: 10px;
    border-radius: 5px;
}
#iscriversi-home {
    position: relative;
}
#iscriversi-home picture {
    display: block;
    float: left;
    position: absolute;
    height: 100%;
    width: 60%;
    left: 0px;
    top: 0px;
}
#iscriversi-home-testo {
    width: 100%;
}
#iscriversi-home-testo .page {
    padding: 0px 40px 0px 0px;
    box-sizing: border-box;
    z-index: 5;
    position: relative;
}
#iscriversi-home-testo-int {
    width: 45%;
    float: right;
    min-height: 500px;
    padding: 40px 0px;
    box-sizing: border-box;
    background-color: var(--cremina);
}
#iscriversi-home .svg-a-home {
    position: absolute;
    z-index: 2;
    height: 101%;
    width: 100%;
    right: 50px;
    top: 0px;
}
#iscriversi-home-testo-header {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between;
    flex-wrap: wrap;
}
#iscriversi-home-testo-box {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}
#iscriversi-home-testo-box .home-testo-box {
    display: block;
    width: calc((100% - 20px) / 2);
    box-sizing: border-box;
    padding: 0px;
    border-radius: 0px;
    overflow: hidden;
    position: relative;
}
#iscriversi-home-testo-box img {
    width: 100%;
    border-radius: 10px;
}
.home-testo-box-int {
    position: absolute;
    width: 100%;
    height: calc((clamp(18px, calc((28 / 1880) * 100vw), 28px) * 3) + 40px);
    overflow: hidden;
    padding: 20px 25% 20px 20px;
    box-sizing: border-box;
    font-size: clamp(14px, calc((24 / 1880) * 100vw), 24px);
    line-height: clamp(18px, calc((28 / 1880) * 100vw), 28px);
    font-weight: bold;
}
.home-cta {
    height: 500px;
    width: 50%;
}
.home-cta .cover-picture-full {
    display: block;
    float: left;
    width: 100%;
    height: 100%;
}
#home-cta-cont {
    position: relative;
}
#home-cta-cont .logo-a-home-cta-svg {
    position: absolute;
    top: 0px;
    height: 100%;
    left: calc(50% - 270px);
}
.home-cta-abs {
    width: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 10;
}
.home-cta-int {
    width: 50%;
}
.home-cta-abs .page .home-cta-int:last-chid {
    float: right;
}
.newsletter-cont {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 40px;
}
/* HOME PAGE COSA FACCIAMO */
.cosa-facciamo-text {
    width: 50%;
    aspect-ratio: 1 / 1;
    background-color: #ffffff;
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.cosa-facciamo-img {
    display: block;
    width: 50%;
    aspect-ratio: 1 / 1;
}
.cosa-facciamo-img picture,
.cosa-facciamo-img img,
.impianti-img picture,
.impianti-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* HOME PAGE IMPIANTI */
.impianti-text-cont {
    width: 100%;
    height: auto;
    padding: 80px;
    box-sizing: border-box;
    background-color: var(--arancio);
}
.impianti-img {
    display: block;
    width: calc(100% / 3);
    aspect-ratio: 1 / 1;
}
/* HOME PAGE PERCHE SCEGLIERCI */
#hp-perche-sceglierci {
    background-color: var(--grigino);
    width: 100%;
    min-height: 500px;
    height: 100vh;
    display: flex;
    align-items: center;
}
.perche-sceglierci-cont {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: clamp(20px, calc((40 / 1880) * 100vw), 40px);
    margin-bottom: 80px;
}
.perche-sceglierci-obj {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: calc((100% - clamp(20px, calc((120 / 1880) * 100vw), 120px)) / 4);
    aspect-ratio: 16 / 9;
    border-radius: 10px;
    background-color: var(--verde);
    padding: clamp(20px, calc((40 / 1880) * 100vw), 40px);
    box-sizing: border-box;
}
#sec-resfarm .perche-sceglierci-obj:last-child {
    background-color: var(--verde-resagri);
}
.perche-sceglierci-obj img {
    width: 100%;
    height: auto;
}
/* PAGINA NEWS */
 .testo-top-cont{
    margin: 40px 0px 0px 0px;
}
.img-top-cont {
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
}
.velata-img {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(38,51,27,0.75);
    mix-blend-mode: multiply;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
}
.text-cover-cont {
    display: block;
    float: left;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 180px;
    left: 0px;
    z-index: 3;
    /* padding-top: 90px; */
    box-sizing: border-box;
}
.text-center-cont {
    display: flex;
    justify-content: center;
    align-items: center;
    float: left;
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding: 80px 0px;
    box-sizing: border-box;
    z-index: 3;
}
.hp-news-cont {
    z-index: 2;
    position: relative;
}
.news-cont {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    gap: 40px;
    flex-wrap: wrap;
    padding: 0px 0px 80px 0px;
    box-sizing: border-box;
}
.news-obj {
    max-width: calc((100% - 120px) /4);
    height: auto;
}
.news-obj-picture {
    display: block;
    float: left;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 10px;
}
.news-obj-picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}
.news-obj .titoletto {
    height: clamp(92px, calc((120 / 1880) * 100vw), 120px);
    margin-bottom: 15px;
    overflow:hidden ;
}
.paginator-cont {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 40px;
}
#news-singola {
    min-height: 100vh;
    margin-top: 0px;
    position: relative;
    overflow: hidden;
}
#news-singola-int {
    padding-top: 40px;
    box-sizing: border-box;
}
/* CHI SIAMO */
.chi-siamo-intro-text {
    display: block;
    max-width: 50%;
    height: auto;
    padding-right: clamp(40px, calc((80 / 1880) * 100vw), 80px);
    box-sizing: border-box;
}
.chi-siamo-intro-img {
    display: block;
    max-width: 50%;
    height: auto;
}
.chi-siamo-intro-img picture,
.chi-siamo-intro-img img {
    width: 100%;
    height: auto;
}
/* TEAM */
.team-cont {
    display: flex;
    justify-content: flex-start;
    gap: clamp(40px, calc((80 / 1880) * 100vw), 80px);
    flex-wrap: wrap;
}
.team-obj {
    display: block;
    width: calc((100% - clamp(80px, calc((160 / 1880) * 100vw), 160px)) / 3);
    height: auto;
}
.team-obj-img {
    width: 100%;
    aspect-ratio: 7 / 8;
}
.team-obj picture,
.team-obj img,
.cosa-facciamo-img-cont picture,
.cosa-facciamo-img-cont img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.team-obj-contattaci {
    display: block;
    width: 100%;
    aspect-ratio: 7 / 8 ;
    background-color: var(--verde);
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    justify-content: end;
    flex-direction: column;
}
.cosa-facciamo-img-cont {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.cosa-facciamo-text-cont {
    width: 100%;
    height: auto;
    padding: 80px;
    box-sizing: border-box;
    /* background-color: var(--verde); */
}
.rete-img-cont {
    display: block;
    width: 100%;
    height: auto;
    margin: 80px 0px;
}
.rete-img-cont img,
.rete-img-cont picture {
    width: 100%;
    height: auto;
}
/* PAGINA CONSULENZA */
#sec-consulenza,
#sec-monitoraggio {
    width: 100%;
    height: auto;
    padding: 160px 0px;
    box-sizing: border-box;
    background: #647F39;
    background: linear-gradient(180deg, rgba(100, 127, 57, 1) 0%, rgba(28, 47, 4, 1) 100%);
}
.servizi-cont {
    display: flex;
    justify-content: center;
    gap: clamp(40px, calc((80 / 1880) * 100vw), 80px);
    flex-wrap: wrap;
}
.consulenza-obj {
    display: block;
    width: calc((100% - clamp(80px, calc((160 / 1880) * 100vw), 160px)) / 3);
    aspect-ratio: 7 / 8 ;
    background: #FDC031;
    background: linear-gradient(270deg, rgba(253, 192, 49, 1) 0%, rgba(226, 158, 32, 1) 100%);
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.consulenza-obj picture,
.consulenza-obj img {
    display: block;
    width: 80px;
    height: auto;
}
#sec-costruzioni {
    width: 100%;
    height: auto;
    padding: 160px 0px;
    box-sizing: border-box;
    background-color: white;
}
#sec-agricoltura {
    width: 100%;
    height: auto;
    padding: 160px 0px;
    box-sizing: border-box;
    background-color: var(--verde-resagri);
}
.agrires-cont {
    display: flex;
    justify-content: center;
    gap: clamp(40px, calc((80 / 1880) * 100vw), 80px);
    flex-wrap: wrap;
}
/* SEZIONE AGRIRES */
#sec-resagri-chisiamo {
    background-color: var(--verde-resagri);
    padding: 80px 0px 160px 0px;
    box-sizing: border-box;
}
/* SEZIONE CASE HISTORY */
.section-top-col {
    width: 100%;
    min-height: 340px;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #647F39;
    background: linear-gradient(180deg, rgba(100, 127, 57, 1) 0%, rgba(28, 47, 4, 1) 100%);
    /* padding: 100px 0px;
    box-sizing: border-box; */
}
.case-history-text {
    width: 50%;
    aspect-ratio: 1 / 1;
    /* background-color: var(--verde); */
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.cosa-facciamo-obj:nth-child(odd) {
    background-color: var(--verde);
}
.cosa-facciamo-obj:nth-child(even) {
    background-color: var(--verde-resagri);
}
/* CONTATTI */
#contatti-top {
    height: calc(100vh - 100px);
}
.contatti-top-int {
    width: 50%;
    min-height: calc(100vh - 99px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 0px;
}
#contatti-top-left {
    background-color: var(--cremina);
}
#contatti-top-right {
    background-color: var(--arancio);
    float: right;
}

#contatti #logo-a-contatti-svg {
    position: absolute;
    height: 101%;
    right: calc(50% - 50vh * 211.8 / 195.88 );
    top: 0px;
    z-index: 10;
}

/* Generatore di pagina */
.elemento-2x_image {
    display: flex;
    flex-wrap: wrap;
    gap: 80px;
    align-items: center; /* ??? TODO */
}
.elemento-2x_image picture {
    width: calc((100% - 80px) / 2);
}
.elemento-testo_image {
    display: flex;
    gap: 80px;
    flex-wrap: wrap;
    align-items: center; /* ??? TODO */
}
.elemento-download {
    box-sizing: border-box;
    padding: 15px 0px 0px 60px;
    position: relative;
    min-height: 25px;
    font-size: 18px;
    line-height: 20px;
    color: var(--verde);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.elemento-download .pill {
    height: 50px;
    width: 50px;
    border-radius: 5px;
    text-align: center;
    display: block;
    float: left;
    position: absolute;
    left: 0px;
    top: 0px;
}
.elemento-download .pill i {
    font-size: 15px;
    line-height: 47px;
}
.elemento-accordion-titolo {
    padding: 20px 60px 20px 20px;
    font-size: 20px;
    line-height: 23px;
    font-weight: 700;
    color: var(--arancio);
    background-color: var(--verde);
    position: relative;
    box-sizing: border-box;
    border-radius: 5px 5px 0px 0px;
}
.elemento-accordion-titolo button {
    display: block;
    position: absolute;
    right: 0px;
    top: 0px;
    height: 43px;
    line-height: 23px;
    padding: 20px 20px 0px 0px;
    box-sizing: border-box;
    color: var(--arancio);
}
.elemento-accordion-testo {
    height: auto;
}
.elemento-accordion.close .elemento-accordion-testo {
    height: 0px;
    overflow: hidden;
}
.elemento-accordion-testo .ritch-cont {
    padding: 20px;
    box-sizing: border-box;
    color: var(--cremina);
    background-color: var(--verde);
    border-radius: 0px 0px 5px 5px;
    font-size: 14px;
    line-height: 22px;
}
.elemento-accordion .elemento-accordion-btn i:first-child {
    display: none;
}
.elemento-accordion .elemento-accordion-btn i:last-child {
    display: inline;
}
.elemento-accordion.close .elemento-accordion-btn i:first-child {
    display: inline;
}
.elemento-accordion.close .elemento-accordion-btn i:last-child {
    display: none;
}
.elemento-accordion.close .elemento-accordion-titolo {
    border-radius: 5px;
}
.elemento-testo_image .elemento-testo_image-image,
.elemento-testo_image .elemento-testo_image-testo {
    width: calc((100% - 80px) / 2);
}
@media only screen and (min-width: 1024px) and (max-width: 1800px) {
    .hp-news-bkg-bianco {
        height: calc((((var(--vw) * 100 - 120px) / 4 ) * 9 / 16 + 20px) / 2);
    }
}
/* Qui vanno gli eventi di Hover. Non metterli da altre parti!!!!! */
@media only screen and (min-width: 1201px) and (max-width: 10000px) {
    a:hover {
        color: var(--cremina);
    }
    .ritch-cont a:hover,
    .top-nav-li:hover,
    .menu-header-drop-down-el:hover {
        color: var(--arancio);
    }
    .checkbox-label a:hover {
        text-decoration: underline;
        color: var(--arancio);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    #form-contatti .checkbox-label a:hover {
        color: var(--verde);
    }
    .top-nav-li:hover .line-hover-top,
    .top-nav-li:hover .line-hover-bottom {
        width: 100%;
        height: 1px;
        /* background-color: var(--cremina); */
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
    .menu-header-drop-down-el:hover .line-hover-top,
    .menu-header-drop-down-el:hover .line-hover-bottom {
        width: 100%;
        height: 1px;
        /* background-color: var(--cremina); */
        transition: all 0.2s;
        -webkit-transition: all 0.2s;

    }
    .btn-filetto-verde:hover {
        border: 1px solid var(--verde);
        background-color: var(--verde);
        color: var(--cremina);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .btn-filetto-cremina:hover {
        background-color: var(--cremina);
        color: var(--verde);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .btn-verde:hover {
        background-color: unset;
        color: var(--verde);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .paginator.pill-filetto-cremina:hover {
        background-color: var(--cremina);
        color: var(--verde);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .elemento-download:hover {
        color: var(--verde);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .elemento-download:hover .pill-filetto-verde {
        border: 1px solid var(--verde);
        background-color: var(--verde);
        color: var(--cremina);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .menu-header-el:hover .menu-header-drop-down {
        display: block;
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
}

/* Tablet Landscape */
@media only screen and (min-width:1024px) and (max-width:1279px) {
    .page,
    .mini-page {
        padding-left: 20px;
        padding-right: 20px;
    }
    #iscriversi-home-testo .page {
        padding-right: 20px;
    }
    #burger-menu-mob {
        display: none;
    }

    .home-testo-box-int {
        padding: 10px 25% 10px 10px;
    }
    #slider-home-news .news-cont {
        padding: 40px 20px 0px 20px;
    }
    #logo-header img {
        height: 50px;
    }
}

/* Tablet Portrait + Mobile */
@media only screen and (min-width:220px) and (max-width:1023px) {
    .sel .line-hover-top {
        top: 10px;
    }
    .sel .line-hover-bottom {
        bottom: 10px;
    }
    .form-third-input-cont {
        width: 100%;
    }
    .logo-contatti-cont {
        left: calc((100% - 150px) / 2);
        bottom: -35px;
        width: 150px;
    }
    .contatti-int {
        margin-bottom: 50px;
    }
    .hp-news-bkg-bianco {
        height: calc((((var(--vw) * 100 - 40px) / 2 ) * 9 / 16 + 20px) / 2);
    }
    .news-cont .news-obj:nth-child(3) .news-obj-data,
    .news-cont .news-obj:nth-child(4) .news-obj-data {
        color: white;
    }
    #slider-home-news {
        position: static;
        height: auto;
        background-color: var(--verde);
    }
    .slide-home-text {
        padding-bottom: 0;
    }
    .news-cont {
        justify-content: space-between;
        gap: 0px;
        padding: 0px;
    }
    .news-obj {
        max-width: calc((100% - 10px) / 2);
        margin-bottom: 60px;
    }
    #iscriversi-home picture,
    #iscriversi-home-testo-int svg,
    #home-cta-cont .logo-a-home-cta-svg,
    #contatti #logo-a-contatti-svg,
    #iscriversi-home .svg-a-home {
        display: none;
    }
    #iscriversi-home-testo .page {
        padding: 0px 20px;
    }
    #iscriversi-home-testo-int,
    .form-contatto-int {
        width: 100%;
    }
    #form-mail-button {
        width: 100%;
        margin-top: 10px;
    }
    .form-half-input-cont .btn {
        min-width: 160px;
        height: 50px;
        font-size: 15px;
        line-height: 48px;
        border-radius: 5px;
    }
    .btn {
        min-width: 100px;
        /* width: auto; */
        height: 35px;
        font-size: 12px;
        line-height: 33px;
        padding: 0px 20px;
        border-radius: 5px;
    }
    .contatti-top-int {
        width: 100%;
        min-height: auto;
    }
    .home-cta {
        width: 100%;
        position: relative;
    }
    .home-cta-int {
        width: 100%;
        position: absolute;
        z-index: 20;
    }
    .home-cta-int:first-child {
        top: 25%;
        left: 10px;
    }
    .home-cta-int:last-child {
        top: 75%;
        right: 10px;
    }
    #resfarmer .text-center-cont,
    #contattami .text-center-cont {
        min-height: 100%;
    }
    .cosa-facciamo-text,
    .cosa-facciamo-img,
    .case-history-text,
    .team-obj,
    .consulenza-obj {
        width: 100%;
    }
    .menu-header-drop-down.hide {
        display: flex;
    }
    .menu-header-drop-down {
        display: flex;
        position: static;
        width: 100%;
        height: auto;
    }
    .menu-header-drop-down-el {
        line-height: 40px;
        padding: 0px;
        text-align: center;
        font-weight: 400;
    }

}
/* Tablet Portrait */
@media only screen and (min-width:768px) and (max-width:1023px) {
    .page,
    .mini-page {
        padding-left: 20px;
        padding-right: 20px;
    }
    #burger-menu-mob {
        display: inline-block;
        float: right;
        font-size: 25px;
        line-height: 100px;
        color: var(--cremina);
        position: relative;
        z-index: 9999;
    }
    #menu-header {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        background-color: var(--verde);
        position: fixed;
        top: 0px;
        right: -100vw;
        margin: 0px;
        height: 100vh;
        line-height: 60px;
        z-index: 1000;
        width: 100vw;
        max-width: unset;
        gap: 0;
        /* opacity: 1; */
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
    #menu-header.open{
        right: 0;
        opacity: 1;
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
    #logo-header {
        position: relative;
        z-index: 9999;
    }
    .sel {
        bottom: 8px;
    }
    .top-nav-li {
        line-height: 60px;
        float: none;
        text-align: center;
    }
    .slide-home {
        height: auto;
        width: 100%;
        height: 100vh;
        /* aspect-ratio: 16 / 9; */
    }
    .box-dati-cont {
        border-radius: 10px 10px 0px 0px;
        background-color: unset;
    }
    .box-dati-obj {
        width: calc((100% - clamp(120px, calc((126 / 1880) * 100vw), 240px)) / 2);
        min-height: 100px;
        background-color: var(--cremina);
    }
    .perche-sceglierci-obj {
        width: calc((100% - clamp(20px, calc((40 / 1880) * 100vw), 40px)) / 2);
    }
    .team-obj,
    .consulenza-obj {
        width: calc((100% - clamp(40px, calc((80 / 1880) * 100vw), 80px)) / 2);
    }
    #slider-home-news .news-cont {
        height: auto;
        padding: 60px 20px 0px 20px;
        box-sizing: border-box;
    }
    #slider-home-verticale-cont .tns-nav {
        height: calc(100vh - 420px);
        top: -90px;
        z-index: 8000;
    }
}

/* Cellulari */
@media only screen and (min-width:220px) and (max-width:767px) {
    .page,
    .mini-page {
        padding-left: 20px;
        padding-right: 20px;
    }
    header {
        height: 69px;
    }
    #logo-header {
        display: block;
        float: left;
        width: auto;
        height: 70px;
        padding: 20px 0px;
        box-sizing: border-box;
    }
    #logo-header img {
        height: 30px;
    }
    #menu-header {
        width: auto;
        float: right;
        height: 70px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 20px;
    }
    #burger-menu-mob {
        display: inline-block;
        float: right;
        font-size: 25px;
        line-height: 70px;
        color: var(--cremina);
        position: relative;
        z-index: 9999;
    }
    #menu-header {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        background-color: var(--verde);
        position: fixed;
        top: 0px;
        right: -100vw;
        margin: 0px;
        height: 100vh;
        line-height: 60px;
        z-index: 1000;
        width: 100vw;
        max-width: unset;
        gap: 0;
        /* opacity: 1; */
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
    #menu-header.open{
        right: 0;
        opacity: 1;
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }
    #logo-header {
        position: relative;
        z-index: 9999;
    }
    .sel {
        bottom: 8px;
    }
    .top-nav-li {
        line-height: 40px;
        float: none;
        text-align: center;
    }
    .slide-home {
        height: 90vh;
        width: 100%;
    }
    #slider-home-news .news-cont {
        height: auto;
        padding: 40px 20px 0px 20px;
        box-sizing: border-box;
    }
    .news-obj {
        margin-bottom: 40px;
    }
    #i-numeri-titolo {
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
    }
    #i-numeri-numero-cont {
        width: 100%;
        gap: 30px;
    }
    .i-numeri-numero {
        width: calc((100% - 30px) / 2);
    }
    .news-obj a:last-child {
        display: none;
    }
    .i-numeri-numero span:nth-child(1) {
        margin-bottom: 20px;
    }
    #slider-home-news .news-cont {
        height: auto;
        padding: 40px 10px 0px 10px;
        box-sizing: border-box;
    }
    #iscriversi-home-testo-int {
        min-height: auto;
    }
    #iscriversi-home-testo-header {
        flex-direction: column-reverse;
    }
    #iscriversi-home-testo-box .home-testo-box,
    #footer-in-titolo.w_50pe,
    #footer-in-testo.w_50pe,
    .form-half-input-cont {
        width: 100%;
    }
    #footer-in-titolo.w_50pe {
        margin-bottom: 20px;
    }
    .form-half-input-cont:first-child {
        margin-bottom: 10px;
    }
    .form-contatto-int {
        background-color: unset;
    }
    #footer-associati-list {
        gap: 10px;
    }
    .footer-associato {
        width: calc((100% - 10px) / 2);
    }
    #logo-footer img {
        height: 150px;
    }
    #footer-info,
    #footer-nav {
        width: 100%;
        margin-bottom: 20px;
    }
    #footer-info p,
    #footer-nav li,
    #footer-info .text-right {
        text-align: center;
    }
    #footer-int {
        padding: 40px 0px 0px 0px;
    }
    #footer-bottom-line {
        margin-top: 40px;
    }
    #contatti-top {
        height: auto;
    }
    #news-singola-int {
        padding-top: 100px; /* TODO */
    }
    .elemento-testo_image .elemento-testo_image-image,
    .elemento-testo_image .elemento-testo_image-testo,
    .elemento-2x_image picture {
        width: 100%;
    }
    #news-singola-int {
        padding-top: 20px;
    }
    .slide-home {
        height: auto;
        width: 100%;
        height: 100vh;
        /* aspect-ratio: 16 / 9; */
    }
    .box-dati-cont {
        border-radius: 10px 10px 0px 0px;
        background-color: unset;
        gap: 10px;
        padding: 0px 0px 10px 0px;
    }
    .box-dati-obj {
        width: calc((100% - 10px ) / 2);
        min-height: 100px;
        background-color: var(--cremina);
    }
    .perche-sceglierci-obj {
        width: calc((100% - clamp(20px, calc((40 / 1880) * 100vw), 40px)) / 2);
    }
    .impianti-text-cont {
        padding: 40px 20px;
    }
    .chi-siamo-intro-text,
    .chi-siamo-intro-img {
        width: 100%;
        max-width: 100%;
        padding-right: 0px;
    }
    #chi-siamo-intro .flex-center,
    #sec-resagri-chisiamo .flex-center {
        /* flex-wrap: wrap; */
        flex-flow: column-reverse;
        gap: 20px;
    }
    .cosa-facciamo-text-cont {
        padding: 40px 20px;
    }
    .img-cta-cont {
        min-height: 800px;
    }
    .btn {
        margin-top: 20px;
    }
}

.team-obj-img-vuota {
    width: 100%;
    aspect-ratio: 698 / 796;
}

/* PAGINE SERVIZIO (Consulenza, Construction, ResAgri, Monitoraggio) */
.servizio-top {
    min-height: 0;
    height: 60vh;
    max-height: 640px;
}
.servizio-top .text-center-cont {
    height: 100%;
}
.servizio-cta {
    min-height: 70vh;
    display: flex;
    align-items: center;
}
.servizio-cta picture::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.45);
}
.servizio-cta-text {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 120px 0px;
}
.servizio-cta-text p {
    text-align: center;
    font-size: clamp(22px, calc((40 / 1880) * 100vw), 40px);
    line-height: clamp(28px, calc((48 / 1880) * 100vw), 48px);
}
.servizio-cta-text .testo {
    font-size: 15px;
    line-height: 21px;
    display: block;
    margin-top: 20px;
    font-weight: 400;
}
footer {
    background-color: var(--verde);
}

/* COMPONENTI PDF 2026 (rf-*): etichetta + titolo, immagine/testo, liste, banner, card */
.rf-sec {
    padding: clamp(60px, calc((120 / 1880) * 100vw), 120px) 0px;
    box-sizing: border-box;
}

.rf-wrap {
    float: none;
    max-width: 1600px;
    margin: 0px auto;
    padding: 0px clamp(20px, calc((200 / 1920) * 100vw), 200px);
    box-sizing: border-box;
}
.rf-head {
    display: grid;
    grid-template-columns: 26% 1fr;
    align-items: baseline;
    margin-bottom: clamp(32px, calc((60 / 1880) * 100vw), 60px);
}
.rf-head-right {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 40px;
    margin-bottom: clamp(32px, calc((60 / 1880) * 100vw), 60px);
}
.rf-label {
    font-size: 13px;
    line-height: 18px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.rf-titolo {
    color: var(--verde);
    font-size: clamp(24px, calc((40 / 1920) * 100vw), 44px);
    line-height: 1.2;
    font-weight: 500;
}
.rf-titolo-centro {
    text-align: center;
}
.rf-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(40px, calc((120 / 1920) * 100vw), 140px);
    align-items: start;
}
.rf-split-img img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.rf-split-img.rf-ratio-11 img {
    aspect-ratio: 1 / 1;
}
.rf-text p {
    font-size: clamp(12px, calc((15 / 1920) * 100vw), 16px);
    line-height: 1.55;
    margin-top: 16px;
}
.rf-text p:first-child {
    font-size: clamp(15px, calc((21 / 1920) * 100vw), 22px);
    line-height: 1.45;
    margin-top: 0px;
    margin-bottom: 28px;
}
.rf-text strong {
    font-weight: 400;
}
.rf-text ul {
    margin-top: 28px;
}
.rf-text ul li {
    color: var(--arancio);
    font-size: clamp(18px, calc((26 / 1920) * 100vw), 28px);
    line-height: 1.6;
    font-weight: 500;
    list-style: none;
}
.rf-righe {
    margin-top: 28px;
    border-top: 1px solid var(--arancio);
}
.rf-righe > * {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px 0px;
    border-bottom: 1px solid var(--arancio);
    color: var(--verde);
    font-size: clamp(12px, calc((15 / 1920) * 100vw), 16px);
    font-weight: 600;
}
.rf-righe .rf-label {
    font-size: 9px;
    font-weight: 400;
    color: var(--nero);
    margin-left: 10px;
}
.rf-righe-grandi > * {
    padding: 28px 0px;
    font-size: clamp(14px, calc((19 / 1920) * 100vw), 20px);
    text-transform: uppercase;
}
.rf-righe-grandi {
    border-top: none;
}
.rf-righe-grandi > *:first-child {
    border-top: 1px solid var(--arancio);
}
.rf-freccia {
    color: var(--arancio);
    font-size: 22px;
}
.rf-btn {
    display: inline-block;
    padding: 12px 22px;
    border-radius: 4px;
    background-color: var(--arancio);
    color: var(--cremina);
    font-size: 12px;
    line-height: 16px;
    font-weight: 800;
    text-transform: uppercase;
    transition: all 0.3s;
}
.rf-btn:hover {
    background-color: var(--verde);
}
.rf-btn-riga {
    display: flex;
    justify-content: flex-end;
    margin-top: 28px;
}
.rf-btn-riga.rf-spazio {
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}
.rf-banner {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1530 / 640;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--verde-resagri);
}
.rf-banner > picture,
.rf-banner > picture img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.rf-banner > picture::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.35);
}
.rf-banner-text {
    position: relative;
    z-index: 2;
    max-width: 720px;
    padding: 40px;
    text-align: center;
    color: var(--cremina);
}
.rf-banner-text .rf-titolo {
    color: var(--cremina);
    margin: 14px 0px 18px 0px;
}
.rf-banner-text p {
    text-align: center;
    font-size: clamp(12px, calc((15 / 1920) * 100vw), 16px);
    line-height: 1.55;
}
.rf-banner-text .rf-btn {
    margin-top: 24px;
}
.rf-banner + .rf-banner {
    margin-top: clamp(40px, calc((80 / 1920) * 100vw), 80px);
}
.rf-loghi {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 40px;
    align-items: center;
    margin-top: 60px;
}
.rf-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(20px, calc((40 / 1920) * 100vw), 40px);
}
.rf-card {
    display: flex;
    flex-direction: column;
    background-color: var(--cremina);
}
.rf-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.rf-card-body {
    padding: 24px 24px 20px 24px;
}
.rf-card-body .rf-data {
    font-size: 10px;
    margin-bottom: 16px;
}
.rf-card-body .rf-card-titolo {
    color: var(--verde);
    font-size: clamp(18px, calc((24 / 1920) * 100vw), 26px);
    line-height: 1.1;
    font-weight: 500;
    margin-bottom: 14px;
}
.rf-card-body .ritch-cont p {
    font-size: 11px;
    line-height: 1.5;
}
.rf-card-body .rf-leggi {
    display: inline-block;
    margin-top: 14px;
    font-size: 10px;
    color: var(--verde);
    text-decoration: underline;
}
.rf-centro {
    display: flex;
    justify-content: center;
    margin-top: 60px;
}
.rf-team {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px clamp(16px, calc((30 / 1920) * 100vw), 30px);
}
.rf-team-img img,
.rf-team-img .team-obj-img-vuota {
    display: block;
    width: 100%;
    aspect-ratio: 698 / 796;
    object-fit: cover;
}
.rf-team-nome {
    color: var(--verde);
    font-size: clamp(15px, calc((19 / 1920) * 100vw), 20px);
    font-weight: 500;
    margin-top: 14px;
}
.rf-team-ruolo {
    font-size: 10px;
    margin-top: 4px;
}
.rf-team-cta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
    padding: 24px;
    aspect-ratio: 698 / 796;
    box-sizing: border-box;
    background-color: var(--verde);
    color: var(--cremina);
    font-size: clamp(15px, calc((19 / 1920) * 100vw), 20px);
    font-weight: 500;
    line-height: 1.2;
}
.rf-team-cta a {
    align-self: flex-start;
    border: 1px solid var(--cremina);
    border-radius: 3px;
    padding: 6px 10px;
    font-size: 9px;
    font-weight: 700;
    color: var(--cremina);
}
.rf-org {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 60px;
}
.rf-org-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd6b0;
    border-radius: 10px;
    background-color: var(--cremina);
    color: var(--verde);
    font-size: clamp(16px, calc((24 / 1920) * 100vw), 26px);
    line-height: 1.1;
    font-weight: 500;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}
.rf-org-top {
    width: 260px;
    height: 90px;
    position: relative;
}
.rf-org-top img {
    height: 50px;
}
.rf-org-linee {
    width: 76%;
    height: 50px;
    border: 1px solid #ddd6b0;
    border-bottom: none;
    border-radius: 10px 10px 0px 0px;
    margin-top: -20px;
}
.rf-org-figli {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 26px;
    width: 100%;
    margin-top: -1px;
}
.rf-org-figli .rf-org-box {
    min-height: 80px;
}
.rf-org-figli small {
    display: block;
    font-size: 9px;
    margin-top: 4px;
}
.rf-filtri {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin: 30px 0px 50px 0px;
}
.rf-filtri a {
    min-width: 150px;
    padding: 4px 16px;
    border: 1px solid var(--verde);
    border-radius: 3px;
    color: var(--verde);
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
}
.rf-filtri a.sel {
    background-color: var(--verde);
    color: var(--cremina);
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-head,
.rf-split,
.rf-card-grid {
        grid-template-columns: 1fr;
    }
    .rf-head {
        gap: 12px;
    }
    .rf-team,
.rf-org-figli {
        grid-template-columns: repeat(2, 1fr);
    }
    .rf-loghi {
        grid-template-columns: repeat(3, 1fr);
    }
    .rf-banner {
        aspect-ratio: auto;
        min-height: 420px;
    }
    .rf-org-linee {
        display: none;
    }
    .rf-head-right,
.rf-btn-riga.rf-spazio {
        flex-direction: column;
        align-items: flex-start;
    }
}
.servizio-cta-text p.rf-titolo {
    font-size: clamp(22px, calc((36 / 1920) * 100vw), 40px);
    line-height: 1.2;
}
.servizio-cta-text .rf-cta-sotto p {
    font-size: clamp(12px, calc((15 / 1920) * 100vw), 16px);
    line-height: 1.5;
    font-weight: 400;
}
.rf-wrap-stretto {
    max-width: 1300px;
}
.rf-case {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: clamp(30px, calc((60 / 1920) * 100vw), 60px);
}
.rf-case-text {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    padding: clamp(24px, calc((40 / 1920) * 100vw), 40px);
    background-color: var(--verde);
    color: var(--cremina);
}
.rf-case-text .rf-label {
    font-size: 10px;
    font-weight: 700;
}
.rf-case-titolo {
    font-size: clamp(26px, calc((44 / 1920) * 100vw), 48px);
    line-height: 0.95;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.rf-case-text .ritch-cont p {
    font-size: 12px;
    line-height: 1.5;
}
.rf-case-btn {
    display: inline-block;
    margin-top: 24px;
    padding: 5px 10px;
    border: 1px solid var(--cremina);
    border-radius: 3px;
    color: var(--cremina);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}
.rf-case-img img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-case {
        grid-template-columns: 1fr;
    }
}
.rf-banner-largo {
    max-width: 900px;
}
.rf-banner-largo .ritch-cont p:first-child {
    font-size: clamp(22px, calc((36 / 1920) * 100vw), 40px);
    line-height: 1.2;
    font-weight: 500;
    margin-bottom: 16px;
}
.rf-centro-testo p {
    text-align: center;
    font-size: clamp(13px, calc((17 / 1920) * 100vw), 18px);
    line-height: 1.5;
}
.rf-centro-testo p + p {
    font-size: 12px;
    margin-top: 16px;
}
.rf-split-centro {
    align-items: center;
}
.rf-img-libera img {
    aspect-ratio: auto;
    object-fit: contain;
}
.rf-text-blocchi p:nth-child(3) {
    font-size: clamp(15px, calc((21 / 1920) * 100vw), 22px);
    line-height: 1.45;
    margin-top: 48px;
}
.rf-sec-verde {
    background: linear-gradient(180deg, #5f7f35 0%, #3f5a22 100%);
    color: var(--cremina);
}
.rf-sec-verde .rf-titolo {
    color: var(--cremina);
}
.rf-text-piccolo p:first-child {
    font-size: clamp(12px, calc((15 / 1920) * 100vw), 16px);
    line-height: 1.55;
    margin-bottom: 0px;
}
footer.rf-footer {
    background-color: #435a22;
    color: var(--cremina);
    padding: 70px 0px 60px 0px;
}
.rf-footer p,
.rf-footer a {
    font-size: 12px;
    line-height: 17px;
    color: var(--cremina);
}
.rf-footer-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.9fr 1.3fr 1fr 0.8fr;
    gap: 30px;
}
.rf-footer-logo {
    width: 130px;
    margin-bottom: 26px;
}
.rf-footer nav {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-top: 58px;
    float: none;
    width: auto;
}
.rf-footer .rf-footer-titolo {
    color: var(--arancio);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 14px;
}
.rf-footer .rf-footer-giallo {
    color: var(--arancio);
}
.rf-footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 28px;
}
.rf-footer-bottom .rf-footer-giallo {
    margin-right: 12px;
}
.rf-footer .rf-footer-copy {
    color: #9aa37c;
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
    .rf-footer nav {
        padding-top: 0px;
    }
    .rf-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}

/* Misure e colori presi dal PDF (tavole a 1920px): 1px PDF = 100vw / 1920 */
:root {
    --pdf: calc(100vw / 1920);
    --rf-verde: #5d772f;
    --rf-arancio: #e6a30e;
    --rf-giallo: #fbb800;
}
.rf-titolo,
.rf-righe > *,
.rf-team-nome,
.rf-card-body .rf-card-titolo,
.rf-org-box {
    color: var(--rf-verde);
}
.rf-titolo {
    font-size: clamp(24px, calc(55 * var(--pdf)), 55px);
    line-height: 1.18;
    font-weight: 500;
}
.rf-label {
    font-size: clamp(11px, calc(18 * var(--pdf)), 18px);
    line-height: 1.3;
}
.rf-text p,
.rf-text-piccolo p:first-child {
    font-size: clamp(13px, calc(19 * var(--pdf)), 19px);
    line-height: 1.5;
}
.rf-text p:first-child {
    font-size: clamp(15px, calc(25 * var(--pdf)), 25px);
    line-height: 1.45;
}
.rf-text ul li {
    color: var(--rf-arancio);
    font-size: clamp(18px, calc(40 * var(--pdf)), 40px);
    line-height: 1.5;
}
.rf-righe,
.rf-righe > * {
    border-color: var(--rf-giallo);
}
.rf-righe > * {
    font-size: clamp(13px, calc(19 * var(--pdf)), 19px);
    padding: calc(26 * var(--pdf)) 0px;
}
.rf-righe-grandi > * {
    font-size: clamp(14px, calc(23 * var(--pdf)), 23px);
    padding: calc(38 * var(--pdf)) 0px;
}
.rf-righe .rf-label {
    font-size: clamp(8px, calc(11 * var(--pdf)), 11px);
}
.rf-freccia {
    color: var(--rf-giallo);
    font-size: clamp(18px, calc(30 * var(--pdf)), 30px);
}
.rf-btn {
    background-color: var(--rf-arancio);
    font-size: clamp(11px, calc(15 * var(--pdf)), 15px);
    padding: calc(14 * var(--pdf)) calc(26 * var(--pdf));
    white-space: nowrap;
}
.rf-banner-text .rf-titolo,
.servizio-cta-text .rf-titolo,
.rf-sec-verde .rf-titolo {
    color: var(--cremina);
}
.rf-banner-text p,
.rf-banner-text .ritch-cont p {
    font-size: clamp(13px, calc(19 * var(--pdf)), 19px);
}
.servizio-cta-text p.rf-titolo {
    font-size: clamp(22px, calc(44 * var(--pdf)), 44px);
}
.servizio-cta-text .rf-cta-sotto p {
    font-size: clamp(12px, calc(19 * var(--pdf)), 19px);
}
.rf-card-body .rf-card-titolo {
    font-size: clamp(18px, calc(32 * var(--pdf)), 32px);
}
.rf-card-body .ritch-cont p {
    font-size: clamp(11px, calc(13 * var(--pdf)), 13px);
}
.rf-card-body .rf-data,
.rf-card-body .rf-leggi {
    font-size: clamp(10px, calc(12 * var(--pdf)), 12px);
}
.rf-team-nome {
    font-size: clamp(15px, calc(27 * var(--pdf)), 27px);
}
.rf-team-ruolo {
    font-size: clamp(10px, calc(13 * var(--pdf)), 13px);
}
.rf-team-cta {
    background-color: var(--rf-verde);
    font-size: clamp(15px, calc(26 * var(--pdf)), 26px);
}
.rf-org-box {
    font-size: clamp(16px, calc(33 * var(--pdf)), 33px);
}
.rf-case-text {
    background-color: var(--rf-verde);
}
.rf-case-titolo {
    font-size: clamp(26px, calc(52 * var(--pdf)), 52px);
}
.rf-case-text .rf-label,
.rf-case-btn,
.rf-filtri a {
    font-size: clamp(10px, calc(14 * var(--pdf)), 14px);
}
.rf-filtri a {
    border-color: var(--rf-verde);
    color: var(--rf-verde);
}
.rf-filtri a.sel {
    background-color: var(--rf-verde);
}
footer.rf-footer {
    padding: calc(90 * var(--pdf)) 0px calc(80 * var(--pdf)) 0px;
}
.rf-footer p,
.rf-footer a {
    font-size: clamp(12px, calc(17 * var(--pdf)), 17px);
    line-height: 1.4;
}
.rf-footer .rf-footer-titolo {
    color: var(--rf-giallo);
    font-size: clamp(13px, calc(21 * var(--pdf)), 21px);
}
.rf-footer .rf-footer-giallo {
    color: var(--rf-giallo);
}
.rf-footer-logo {
    width: clamp(110px, calc(170 * var(--pdf)), 170px);
}
.rf-footer nav {
    padding-top: calc(80 * var(--pdf));
}
.rf-sec-verde {
    background: linear-gradient(180deg, #5f7f35 0%, #3f5a22 100%);
}
/* Tarature su PDF: colonne immagine/testo, testi, loghi in riga che scorre */
.rf-head {
    grid-template-columns: 29.6% 1fr;
}
.rf-head .rf-titolo {
    max-width: calc(1000 * var(--pdf));
}
.rf-split {
    grid-template-columns: 5fr 4fr;
    gap: 10%;
}
.rf-text p,
.rf-text-piccolo p:first-child {
    font-size: clamp(13px, calc(22 * var(--pdf)), 22px);
}
.rf-text p:first-child {
    font-size: clamp(15px, calc(30 * var(--pdf)), 30px);
}
.rf-banner-text p.rf-titolo {
    font-size: clamp(24px, calc(55 * var(--pdf)), 55px);
    line-height: 1.15;
}
.rf-banner-text p.rf-label {
    font-size: clamp(11px, calc(18 * var(--pdf)), 18px);
}
.rf-loghi {
    display: block;
    overflow: hidden;
    margin-top: calc(80 * var(--pdf));
}
.rf-loghi-scorri {
    display: flex;
    align-items: center;
    gap: calc(90 * var(--pdf));
    width: max-content;
    animation: rf-scorri 60s linear infinite;
}
.rf-loghi:hover .rf-loghi-scorri {
    animation-play-state: paused;
}
.rf-logo img {
    display: block;
    width: auto;
    height: calc(60 * var(--pdf));
    min-height: 28px;
    max-width: calc(200 * var(--pdf));
    object-fit: contain;
    filter: grayscale(1);
    mix-blend-mode: multiply;
}
@keyframes rf-scorri {
    to {
        transform: translateX(-50%);
    }
}
@media (prefers-reduced-motion: reduce) {
    .rf-loghi-scorri {
        animation: none;
        flex-wrap: wrap;
        width: auto;
    }
}
.box-dati-numbers small {
    font-size: 0.45em;
    margin-left: 2px;
}
.box-dati-text {
    text-transform: uppercase;
}

.rf-sec {
    padding: clamp(50px, calc(110 * var(--pdf)), 110px) 0px;
}
.rf-team {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.rf-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.rf-split {
    grid-template-columns: minmax(0, 5fr) minmax(0, 4fr);
}
.rf-logo img {
    height: calc(110 * var(--pdf));
    max-width: calc(260 * var(--pdf));
}
.rf-righe > * {
    font-size: clamp(13px, calc(26 * var(--pdf)), 26px);
}
.rf-righe-grandi > * {
    font-size: clamp(14px, calc(28 * var(--pdf)), 28px);
}
.rf-footer p,
.rf-footer a {
    font-size: clamp(12px, calc(21 * var(--pdf)), 21px);
}
.rf-footer .rf-footer-titolo {
    font-size: clamp(13px, calc(26 * var(--pdf)), 26px);
}
.rf-footer nav {
    gap: calc(8 * var(--pdf));
    padding-top: calc(110 * var(--pdf));
}
.rf-footer-logo {
    width: clamp(110px, calc(200 * var(--pdf)), 200px);
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-split,
.rf-card-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .rf-team {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.rf-titolo,
.rf-team-nome,
.rf-card-body .rf-card-titolo,
.rf-org-box,
.rf-text ul li {
    font-weight: 600;
}
.rf-btn {
    font-size: clamp(12px, calc(17 * var(--pdf)), 17px);
    padding: calc(16 * var(--pdf)) calc(34 * var(--pdf));
    min-height: 38px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
}
.rf-head-right .rf-titolo {
    flex: 1 1 auto;
}
.rf-head-right .rf-label {
    flex: 0 0 auto;
}
.rf-head-right .rf-titolo {
    flex: 0 1 auto;
    min-width: 0;
}
.rf-split-img picture,
.rf-team-img picture,
.rf-case-img picture,
.rf-card picture,
.rf-logo picture {
    display: block;
    float: none;
}
/* Mobile in fondo: deve vincere sulle tarature desktop sopra */
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-head {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
    .rf-head .rf-titolo {
        max-width: none;
    }
    .rf-split {
        grid-template-columns: minmax(0, 1fr);
        gap: 32px;
    }
    .rf-logo img {
        min-height: 40px;
        max-width: 140px;
    }
    .rf-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}
.rf-banner-text.rf-banner-largo .ritch-cont p:first-child {
    font-size: clamp(22px, calc(48 * var(--pdf)), 48px);
    line-height: 1.18;
    font-weight: 600;
}
.rf-centro-testo p {
    font-size: clamp(14px, calc(25 * var(--pdf)), 25px);
}
.rf-centro-testo p + p {
    font-size: clamp(12px, calc(17 * var(--pdf)), 17px);
}
/* Placeholder neutro dove manca una foto */
.rf-ph {
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #ecebe4 url("../img/res-white.svg") center / 18% no-repeat;
    background-color: #dcdccf;
}
.rf-team-img .rf-ph,
.rf-case-img .rf-ph {
    aspect-ratio: 698 / 796;
}
.rf-card .rf-ph {
    aspect-ratio: 1 / 1;
}
/* Pagine servizio (3A-3D) */
.servizio-top {
    height: max(420px, calc(1066 * var(--pdf)));
    max-height: none;
}
.rf-titolo-box {
    max-width: calc(1100 * var(--pdf));
    margin-bottom: calc(90 * var(--pdf));
}
.rf-box-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(40 * var(--pdf));
}
.rf-box {
    background-color: var(--cremina);
    border-radius: 12px;
    padding: calc(50 * var(--pdf)) calc(55 * var(--pdf)) calc(60 * var(--pdf)) calc(55 * var(--pdf));
}
.rf-box-titolo {
    color: var(--rf-arancio);
    font-size: clamp(20px, calc(40 * var(--pdf)), 40px);
    line-height: 1.1;
    font-weight: 600;
    margin-bottom: calc(24 * var(--pdf));
}
.rf-box .ritch-cont p {
    font-size: clamp(13px, calc(22 * var(--pdf)), 22px);
    line-height: 1.45;
}
.servizio-cta {
    min-height: max(420px, calc(820 * var(--pdf)));
}
.servizio-cta-text .rf-cta-servizio p {
    font-size: clamp(22px, calc(44 * var(--pdf)), 44px);
    line-height: 1.2;
    font-weight: 600;
}
.servizio-cta-text .rf-cta-servizio .testo {
    display: block;
    margin-top: calc(30 * var(--pdf));
    font-size: clamp(12px, calc(19 * var(--pdf)), 19px);
    font-weight: 400;
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-box-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}
.rf-case {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.rf-case-text {
    min-width: 0;
    overflow-wrap: break-word;
}
.rf-case-titolo {
    font-size: clamp(26px, calc(62 * var(--pdf)), 62px);
    line-height: 0.95;
}
.rf-card-body .ritch-cont p,
.rf-card-body .rf-data {
    color: var(--nero);
}
.rf-box-grid {
    gap: calc(50 * var(--pdf));
}
.rf-box {
    box-shadow: none;
    min-width: 0;
}
.rf-box-titolo {
    font-size: clamp(20px, calc(44 * var(--pdf)), 44px);
}
.rf-box .ritch-cont p {
    font-size: clamp(13px, calc(25 * var(--pdf)), 25px);
}
@media only screen and (min-width:220px) and (max-width:1023px) {
    .rf-case {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* I div del sito hanno width:100% globale: con il padding servono border-box */
[class^="rf-"],
[class*=" rf-"],
[class^="rf-"] > *,
[class*=" rf-"] > * {
    box-sizing: border-box;
}
.rf-head-right > * {
    width: auto;
}
.rf-head-right .rf-titolo {
    flex: 1 1 0;
    min-width: 0;
}
.rf-head-right .rf-label {
    flex: 0 0 auto;
}
/* Riga senza etichetta (span vuoto): baseline su uno span vuoto in WebKit fa risalire il testo sopra il titolo */
.rf-head.rf-head-vuota {
    align-items: start;
}

/* NOTE CLIENTE 06/10/2026 */
/* Titoli: niente parole orfane; a capo più equilibrati su tutti i device */
.rf-titolo,
.rf-box-titolo,
.rf-case-titolo,
.rf-card-titolo,
.titolone {
    text-wrap: balance;
}
.rf-text p,
.rf-box .ritch-cont p {
    text-wrap: pretty;
}
/* Elenco giallo "A chi si rivolge" allineato al testo sopra */
.rf-text ul {
    padding-left: 0px;
    margin-left: 0px;
    list-style: none;
}
/* Chi siamo > la rete: paragrafo 3 come il primo (secondo livello) */
.rf-text-blocchi p:nth-child(3) {
    font-size: clamp(15px, calc(30 * var(--pdf)), 30px);
    line-height: 1.45;
    margin-top: calc(48 * var(--pdf));
}
/* Chi siamo > schema: logo più grande, outline più spesse */
.rf-org-box {
    border-width: 2px;
}
.rf-org-linee {
    border-width: 2px;
}
.rf-org-top {
    width: calc(340 * var(--pdf));
    min-width: 200px;
    height: auto;
    padding: calc(26 * var(--pdf)) 20px;
}
.rf-org-top img {
    height: calc(84 * var(--pdf));
    min-height: 48px;
}
/* Pagine servizio: testo intro allineato in alto con la foto */
.rf-sec .rf-split.rf-split-centro {
    align-items: start;
}
/* Header pagine servizio: titolo centrato nell'immagine a ogni altezza */
.servizio-top {
    position: relative;
}
.servizio-top .text-center-cont {
    position: absolute;
    inset: 0;
    min-height: 0;
    height: 100%;
    padding: 80px 0px 40px 0px;
}
/* Case history e news: epigrafe centrata, header centrato anche in altezza */
.section-top-col {
    align-items: center;
}
.section-top-col {
    min-height: max(400px, calc(620 * var(--pdf)));
}
/* 100px = altezza del menu: il testo si centra nello spazio sotto */
.section-top-col .pt_260 {
    padding-top: 100px;
    padding-bottom: 20px;
}
.section-top-col .ritch-cont,
.section-top-col .ritch-cont p {
    text-align: center;
}
.section-top-col .ritch-cont {
    max-width: 900px;
    margin: 0px auto;
    float: none;
}
/* Box case: titolo più piccolo, testo più grande, foto alta quanto il box verde */
.rf-case {
    align-items: stretch;
}
.rf-case-titolo {
    font-size: clamp(24px, calc(46 * var(--pdf)), 46px);
}
.rf-case-text .ritch-cont p {
    font-size: clamp(14px, calc(19 * var(--pdf)), 19px);
    line-height: 1.5;
}
.rf-case-img {
    position: relative;
    min-height: 100%;
}
.rf-case-img picture,
.rf-case-img img,
.rf-case-img .rf-ph {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
}
/* Card news: data, testo e cta un paio di punti più grandi */
.rf-card-body .rf-data {
    font-size: clamp(12px, calc(15 * var(--pdf)), 15px);
}
.rf-card-body .ritch-cont p {
    font-size: clamp(14px, calc(17 * var(--pdf)), 17px);
    line-height: 1.5;
}
.rf-card-body .rf-leggi {
    font-size: clamp(13px, calc(16 * var(--pdf)), 16px);
}
/* Loghi partner più grandi */
.rf-logo img {
    height: calc(130 * var(--pdf));
    max-width: calc(300 * var(--pdf));
    min-height: 40px;
}

/* Numeri hero più evidenti anche su tablet e laptop piccoli */
.box-dati-numbers {
    font-size: clamp(30px, calc(60 * var(--pdf)), 60px);
    line-height: 1.15;
}
.box-dati-text {
    font-size: clamp(11px, calc(22 * var(--pdf)), 22px);
    line-height: 1.2;
}

@media only screen and (min-width:220px) and (max-width:1023px) {
    /* Home: personaggio al centro dell'inquadratura */
    #hp-slider .cover-picture-full img {
        object-position: 62% center;
    }
    /* Numeri più grandi, testo verde più piccolo e su una riga */
    .box-dati-numbers {
        font-size: 30px;
        line-height: 34px;
    }
    .box-dati-text {
        font-size: 12px;
        line-height: 15px;
    }
    /* Loghi: 4 alla volta, leggibili */
    .rf-loghi-scorri {
        gap: 22px;
    }
    /* I PNG dei loghi sono quadrati con il marchio largo quanto il quadrato: 3 per schermata, ognuno grande 1/3 */
    .rf-loghi-scorri {
        gap: 18px;
    }
    .rf-logo {
        flex: 0 0 calc((100vw - 40px - 2 * 18px) / 3);
    }
    .rf-logo img {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        max-width: none;
        min-height: 0;
    }
    /* A capo strani: i limiti di larghezza in unità PDF (1100/1920 vw) su mobile stringevano i titoli a ~60% */
    .rf-titolo-box,
    .rf-head .rf-titolo {
        max-width: none;
    }
    /* Header pagine servizio */
    .servizio-top {
        height: 78svh;
        min-height: 480px;
    }
    .servizio-top .titolone {
        font-size: clamp(32px, 6.4vw, 56px);
        line-height: 1.1;
    }
    /* Blocchi bianchi: più respiro dentro e tra un blocco e l'altro */
    .rf-box-grid {
        gap: 20px;
    }
    .rf-box {
        padding: 28px 24px 30px 24px;
    }
    .rf-box-titolo {
        margin-bottom: 14px;
    }
    .rf-box .ritch-cont p {
        font-size: 15px;
    }
    /* Case: foto sotto il testo con altezza propria */
    .rf-case-img {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }
    /* Header case history / news */
    .section-top-col {
        min-height: 60svh;
    }
    .section-top-col .pt_260 {
        padding-top: 110px;
        padding-bottom: 40px;
    }
    /* Schema chi siamo: blocchi ordinati a griglia 2x2 sotto il logo */
    .rf-org-figli {
        gap: 12px;
        margin-top: 20px;
    }
    .rf-org-figli .rf-org-box {
        min-height: 70px;
        font-size: 16px;
        padding: 14px 8px;
    }
}
/* Contatti: testo introduttivo centrato come il titolo */
#contattami .ritch-cont,
#contattami .ritch-cont p {
    text-align: center;
}
#contattami .ritch-cont p + p {
    margin-top: 10px;
}

/* NOTE CLIENTE 09/10/2026 - mobile */
@media only screen and (min-width:220px) and (max-width:1023px) {
    /* "Cosa facciamo" / "Ecco chi ha scelto ResFarm": l'etichetta va sopra il titolo verde */
    .rf-head-right {
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 12px;
    }
    /* Righe tra le linee gialle: più respiro sopra e sotto, etichetta grigia su una seconda riga */
    .rf-righe > *,
    .rf-righe-grandi > * {
        padding: 22px 0px;
        line-height: 1.3;
    }
    .rf-righe .rf-label {
        display: block;
        margin: 6px 0px 0px 0px;
        font-size: 11px;
        color: #8a8a8a;
    }
}
