/* Agri Eco Planning: riproduzione dell'originale (Helix + SP Page Builder), misure rilevate a 1440 px. Contenitore 1140 con 12 px di margine. */
/* Open Sans statico (stessi file dei Google Fonts usati dall'originale), servito in locale; licenza OFL in assets/fonts. */
@font-face { font-family:"open sans"; font-weight:300; font-display:swap; src:url("/assets/fonts/opensans-300-latin-ext.woff2") format("woff2"); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family:"open sans"; font-weight:300; font-display:swap; src:url("/assets/fonts/opensans-300-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family:"open sans"; font-weight:400; font-display:swap; src:url("/assets/fonts/opensans-400-latin-ext.woff2") format("woff2"); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family:"open sans"; font-weight:400; font-display:swap; src:url("/assets/fonts/opensans-400-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family:"open sans"; font-weight:600; font-display:swap; src:url("/assets/fonts/opensans-600-latin-ext.woff2") format("woff2"); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family:"open sans"; font-weight:600; font-display:swap; src:url("/assets/fonts/opensans-600-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family:"open sans"; font-weight:700; font-display:swap; src:url("/assets/fonts/opensans-700-latin-ext.woff2") format("woff2"); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family:"open sans"; font-weight:700; font-display:swap; src:url("/assets/fonts/opensans-700-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family:"open sans"; font-weight:800; font-display:swap; src:url("/assets/fonts/opensans-800-latin-ext.woff2") format("woff2"); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family:"open sans"; font-weight:800; font-display:swap; src:url("/assets/fonts/opensans-800-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
:root { --verde:#4a8b71; --font:"open sans",sans-serif; --testo:#212529 }
body { font:300 18px/27px var(--font); color:var(--testo) }
.contenitore { width:100%; max-width:var(--cont, 100%); padding-inline:12px; margin-inline:auto }
@media (min-width:576px) { :root { --cont:540px } } @media (min-width:768px) { :root { --cont:720px } } @media (min-width:992px) { :root { --cont:960px } } @media (min-width:1200px) { :root { --cont:1140px } }
b, strong { font-weight:400 }

/* barra e testata */
.barra { background:#e9f1ee; font:300 12.6px/27px var(--font); color:var(--verde); height:44px }
.barra__in { display:flex; justify-content:flex-end; gap:23px; padding-top:9px; padding-right:12px } .barra a { color:inherit; text-decoration:none }
.barra a, .barra span { display:inline-flex; align-items:center; gap:6px } .barra svg { width:10px; height:12px }
.testata { position:relative; box-shadow:none; border-bottom:0 } .testata__in { min-height:130px; align-items:flex-start }
.logo img { width:86px; height:65px; margin-top:13px }
.menu ul { gap:0 } .menu a { font:600 14px/130px var(--font); letter-spacing:1px; text-transform:uppercase; color:#000; padding:0 20px }
/* larghezze delle voci come l'originale (stesso font, resa diversa di Team e Contatti) */
@media (width >= 992px) { .menu li:nth-child(1) a { letter-spacing:1.25px } .menu li:nth-child(3) a { letter-spacing:.93px } .menu li:nth-child(4) a { letter-spacing:1.12px } .menu li:nth-child(5) a { letter-spacing:.5px } .menu li:nth-child(6) a { letter-spacing:.25px } }
.menu a[aria-current], .menu a:hover { color:var(--verde) }

/* home */
.hero { min-height:0; height:446px; background-size:cover; background-position:center }
.hero::before { display:none } .hero__in { padding:0 }
.hero { place-items:start center } .hero__in { padding-top:170px } .hero h1 { font:800 72px/72px var(--font); text-transform:none } .hero__sotto { font:300 28px/26px var(--font); margin-top:20px }
.bottone { border-radius:4px; text-transform:none; font:400 20px/30px var(--font); padding:7px 17px }
.bottone--verde { background:var(--verde); margin-top:32px } .bottone--acceso { background:#23cf5f }
.bottone--chiaro { background:transparent; border:1px solid #e5e5e5; color:#d7dadd; font:400 16px/20px var(--font); padding:6px 12px; margin-top:20px }
.mission { background:#e9f1ee url(/assets/img/img_1-1.png) 100% 0 / contain no-repeat fixed; height:334px; color:var(--verde) }
.mission__in { display:flex; padding:70px 0 0 81px } .mission__titolo { font:800 40px/48px var(--font); width:178px; text-align:center; margin-right:36px; text-transform:none }
.mission__testo { width:1050px } .mission__testo p { margin:5px 0 0 } .mission__testo .forte { font-weight:400 } @media (min-width:1200px) { .mission__testo p { margin:0 } .mission__testo .forte { letter-spacing:-.32px } } .mission__testo p + p { margin-top:16px }
.riga { position:relative; height:693px } .riga__foto { position:absolute; top:0; bottom:0; width:50%; background:center / cover no-repeat }
.riga--dx .riga__foto { right:0 } .riga--sx .riga__foto { left:0 } .riga--sx { height:709px }
.riga__testo { position:absolute; top:117px; width:590px } .riga--dx .riga__testo { left:75px } .riga--sx .riga__testo { left:785px }
.riga h3 { font:800 36px/43.2px var(--font); color:#4b8b72; text-transform:none; margin:0 }
.riga p { margin:20px 0 0 } .riga--dx p:not(.forte) { max-width:566px } .riga .forte { font-weight:400 } .riga p + p { margin-top:24px } .riga--sx p + p { margin-top:16px }
.cta { height:265px; background:var(--img) center / cover fixed; text-align:center; color:#fff; padding-top:101px }
.cta .contenitore { padding-inline:0 } .cta h2 { font:600 36px/36px var(--font); color:#fff; text-transform:none; margin:0 auto }
.cta .bottone { margin-top:44px }

/* pagine interne */
.articolo { padding-top:100px; min-height:506px } .articolo h1 { font:800 40px/48px var(--font); color:var(--testo); text-transform:none }
.articolo h2 { font:600 24px/24px var(--font); color:var(--testo); text-transform:none; margin-top:53px } .articolo__testo { padding:73px 15px 0 } .articolo__testo p + p { margin-top:16px }

/* piè */
.pie { background:#fff; color:#000; font:300 13px/27px var(--font); padding:20px 0 21px }

/* 992–1199 (misure a 1024) */
@media (width < 1200px) {
  .mission { height:550px } .mission__in { display:grid; grid-template-columns:1fr 1fr; padding:66px 0 0; max-width:var(--cont); margin-inline:auto } .mission__titolo { width:auto; margin:4px 0 0 }
  .mission__testo { width:auto; padding:0 0 0 15px } .mission__titolo, .articolo h1 { font-size:37.36px; line-height:44.83px }
  .riga--dx { height:774px } .riga--sx { height:844px } .riga__testo { width:400px } .riga--sx .riga__testo { width:410px } .riga--dx .riga__testo { left:47px } .riga--sx .riga__testo { left:577px } .riga--dx p:not(.forte) { max-width:395px }
  .cta h2 { max-width:940px } }
/* 768–991 (misure a 768): foto sopra, testo in mezza colonna */
@media (width < 992px) {
  .logo img { width:171px; height:130px; margin-top:0 } .testata__in { align-items:center } .mission__titolo, .articolo h1 { font-size:33.52px; line-height:40.22px } .riga--sx .riga__testo { width:280px }
  .menu-toggle { display:block; margin-top:0 } .menu { display:none; position:absolute; inset-inline:0; top:100%; background:#fff; padding:12px; z-index:30; box-shadow:0 8px 12px rgb(0 0 0/.1) } .menu.aperto { display:block } .menu ul { flex-direction:column } .menu a { line-height:44px }
  .mission { height:685px } .mission__titolo { margin-top:4px } .riga, .riga--dx, .riga--sx { height:auto; padding-bottom:117px } .riga--dx { padding-bottom:122px } .riga__foto { position:static; width:100%; height:300px }
  .riga__testo { position:static; width:280px; margin-top:117px } .riga p:not(.forte), .riga--dx p:not(.forte) { max-width:272px } .riga--dx .riga__testo { margin-left:39px } .riga--sx .riga__testo { margin-left:449px }
  .cta { height:302px } .cta h2 { max-width:731px } .cta .bottone { margin-top:48px } }
/* sotto 768 (misure a 390) */
@media (width < 768px) {
  .mission__titolo { margin-top:0 } .cta .bottone { margin-top:47px } .articolo h2 { margin-top:67px } .articolo:not(.articolo--testo) { min-height:510px } main:has(.articolo:not(.articolo--testo)) + .pie { padding-bottom:17px } .barra span { letter-spacing:-.18px }
  .barra__in { justify-content:flex-end; padding-right:65px; gap:12px } .barra { font-size:12.46px }
  .hero { height:544px } .hero__sotto { max-width:300px; margin-inline:auto }
  .mission { height:721px } .mission__in { grid-template-columns:1fr; padding:70px 13px 0 15px } .mission__titolo, .articolo h1 { font-size:27.85px; line-height:33.42px } .mission__testo { padding:0 } .articolo__testo { padding-top:63px } .mission__testo p:first-child { margin-top:30px }
  .riga__testo { width:318px } .riga p:not(.forte), .riga--dx p:not(.forte) { max-width:300px } .riga--dx .riga__testo { margin-left:15px } .riga--sx .riga__testo { margin-left:65px; width:305px; margin-top:120px } .riga--dx { padding-bottom:120px } .riga--dx .riga__testo { margin-top:120px } .riga--dx p.forte { margin-top:16px } .riga--dx p + p { margin-top:27px } .riga--sx p.forte { margin-top:17px } .riga--sx .bottone { margin-top:18px } .riga--sx { padding-bottom:121px }
  .cta { height:373px } .cta h2 { max-width:327px } .pie p { max-width:381px; margin-inline:-3px } }

/* articolo con testo (Mission): l'originale ha fra titolo e testo la riga autore/categoria/data/visite e sotto «Prec»/voto, residui del CMS non riprodotti; qui se ne conserva solo lo spazio. */
.articolo--testo { min-height:825px } .articolo--testo h2 { margin-top:49px } .articolo--testo .articolo__testo { padding:48px 0 0 15px } .articolo--testo p { letter-spacing:.107px }
@media (width < 1200px) { .articolo--testo { min-height:875px } .articolo--testo .articolo__testo { padding-top:49px } .articolo--testo p { width:905px } }
@media (width < 992px) { .articolo--testo { min-height:924px } .articolo--testo .articolo__testo { padding-top:57px } .articolo--testo p { width:660px } }
@media (width < 768px) { .articolo--testo { min-height:1179px } .articolo--testo h2 { margin-top:67px } .articolo--testo .articolo__testo { padding-top:64px } .articolo--testo p { width:337px } }

/* Banner cookie (PCRT Cookie Consent) e pagine delle policy */
html:root { --pcc-accent:#2f6b53; --pcc-font:var(--font) }   /* html:root batte il :root di consenso.css, caricato dopo */
iframe[hidden] { display:none }
/* i link legali stanno nel margine inferiore del piè, fuori dal flusso: l'altezza della pagina resta quella dell'originale */
.pie { position:relative } .pie__legale { position:absolute; left:0; right:0; bottom:1px; margin:0; text-align:center; font:300 12px/16px var(--font) } .pie__legale a { color:inherit; text-decoration:underline }
.pg-testo { padding:70px 0 60px; font:400 16px/26px var(--font); color:var(--testo) }
.pg-testo h1 { font:700 40px/48px var(--font); color:var(--verde); margin-bottom:8px }
.pg-testo h2 { font:700 26px/34px var(--font); color:var(--verde); margin:36px 0 10px }
.pg-testo h3 { font:700 19px/26px var(--font); margin:24px 0 8px }
.pg-testo p, .pg-testo ul, .pg-testo table { margin-bottom:14px }
.pg-testo ul { list-style:disc; padding-left:24px }
.pg-testo a { color:#2f6b53; text-decoration:underline }
.pg-agg { color:#555; font-size:14px }
.pg-testo table { border-collapse:collapse; width:100%; font-size:14px; line-height:20px }
.pg-testo th, .pg-testo td { border:1px solid #d6dae0; padding:6px 10px; text-align:left; vertical-align:top }
.pg-testo thead th { background:#f2f4f7 }
@media (width < 768px) { .pg-testo { padding:40px 0 40px } .pg-testo h1 { font-size:32px; line-height:40px } .pg-testo h2 { font-size:22px; line-height:30px } .pg-testo table { display:block; overflow-x:auto } }
