/* Pagine interne: estensione del sistema approvato nella revisione 3. */
.skip-link{position:absolute;top:-100px;left:18px;z-index:100;background:#fff;color:#003a29;padding:14px 22px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid #789b16;outline-offset:5px}header nav{gap:22px}header nav a{position:relative}header nav a[aria-current=page]:after{content:"";height:3px;background:#87ad24;position:absolute;bottom:5px;left:0;right:0}
.page-hero{background:#eef5f1;border-top:1px solid #e5eee7;overflow:hidden}.page-hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center;padding-block:58px}.page-hero h1{font-size:clamp(2.6rem,4vw,3.8rem);line-height:1.08;letter-spacing:-.045em;max-width:820px;margin:13px 0 22px}.page-hero p{font-size:1.22rem;line-height:1.65;max-width:650px}.page-hero .eyebrow{color:#007b49}.page-hero-image{width:100%;height:355px;object-fit:cover;border-radius:8px}.page-hero--plain .wrap{display:block;padding-block:48px 58px}.page-hero--plain{background:#003a29;color:#fff}.page-hero--plain .eyebrow{color:#badd75}.page-hero--plain p{color:#dfede5}.page-hero--plain h1{max-width:960px}.breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font-size:.875rem;line-height:1.5;color:#536c5d;margin:0 0 27px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.page-hero--plain .breadcrumb{color:#c6decf}.page-hero .hero-page-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:27px}
.breadcrumb{align-items:center;justify-content:flex-start}.breadcrumb a{padding:0;margin:0}
.page-section{padding-block:72px}.page-section.tint{background:#f0f6f2}.page-section h2{margin-bottom:23px}.page-lead{max-width:820px;font-size:1.2rem}.page-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:58px;align-items:start}.page-two-col>img{width:100%;border-radius:8px;max-height:570px;object-fit:cover}.page-prose{max-width:820px}.page-prose h2,.article-copy h2{font-size:2rem;margin:38px 0 18px;line-height:1.2}.page-prose h2:first-child,.article-copy h2:first-child{margin-top:0}.page-prose p,.article-copy p{font-size:1.125rem;line-height:1.85;margin-bottom:22px}.page-prose a:not(.button),.article-copy a:not(.button){text-decoration:underline;text-underline-offset:4px}.page-prose ul,.article-copy ul{padding-left:23px}.page-prose li,.article-copy li{margin:13px 0;color:#52685a}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:70px;align-items:start}.detail-sidebar{background:#edf5ef;border:1px solid #d6e7db;padding:29px;border-radius:9px;position:sticky;top:24px}.detail-sidebar h2{font-size:1.65rem}.detail-sidebar p{font-size:1rem;line-height:1.7;margin:15px 0}.detail-sidebar .button{width:100%;font-size:1rem;margin-top:10px;justify-content:space-between}.detail-sidebar .side-phone{display:block;font-size:1.3rem;font-weight:700;margin-top:22px;color:#007b49}.detail-sidebar .side-note{font-size:.875rem;border-top:1px solid #d4e3d8;margin-top:22px;padding-top:18px}.detail-sidebar .side-links{margin-top:24px;border-top:1px solid #d4e3d8;padding-top:18px}.side-links a{display:block;margin:11px 0;font-size:1rem;text-decoration:underline;text-underline-offset:4px}
.info-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.info-card{border:1px solid #d9e6dc;background:#fff;border-radius:9px;overflow:hidden;display:flex;flex-direction:column}.info-card>img,.info-card>a>img{width:100%;height:215px;object-fit:cover}.info-card-body{padding:26px;display:flex;flex-direction:column;flex:1}.info-card h2,.info-card h3{font-size:1.55rem;line-height:1.25;margin:10px 0 15px;letter-spacing:-.025em}.info-card p{font-size:1rem;line-height:1.7;margin:0 0 21px}.info-card .textlink{margin-top:auto}.info-card .eyebrow{font-size:.75rem}.info-card--number .card-number{color:#007b49;font-size:2rem;font-weight:650}.group-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-top:62px}.group-heading:first-child{margin-top:0}.group-heading h2{font-size:2.05rem;margin:0}.group-heading p{font-size:1rem;max-width:470px}.category-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.category-links a{padding:12px 18px;background:#fff;border:1px solid #cfdfd4;border-radius:5px;font-size:1rem}.category-links a:hover{background:#003a29;color:white}
.page-cta{background:#003a29;color:#fff;border-radius:8px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:45px}.page-cta h2{font-size:2rem;margin:0 0 14px}.page-cta p{color:#dfeee5;max-width:700px;margin:0}.page-cta .button{flex-shrink:0;background:#a7c935;color:#153d29}.page-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:28px;border-top:1px solid #c7dcd0;margin-top:36px}.page-facts strong{font-size:2.6rem;line-height:1.1;display:block;color:#007b49}.page-facts span{font-size:1rem;display:block;margin-top:12px;color:#52685a}.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px}.gallery-pair img{width:100%;height:400px;object-fit:cover;border-radius:8px}
.faq{margin-top:45px}.faq details{border-top:1px solid #d1e2d7;padding:0}.faq details:last-child{border-bottom:1px solid #d1e2d7}.faq summary{cursor:pointer;font-weight:650;font-size:1.125rem;padding:20px 35px 20px 0}.faq details p{font-size:1.0625rem;padding:0 24px 17px 0;margin:0;line-height:1.75}.prepare-list{background:#f0f6f2;padding:28px 32px;border-radius:8px;margin:34px 0}.prepare-list h2{font-size:1.65rem;margin:0 0 20px}.prepare-list ul{margin:0;padding-left:22px}.sources{margin-top:40px;padding-top:23px;border-top:1px solid #dae5de}.sources h2{font-size:1.15rem;margin:0 0 13px}.sources a{display:block;font-size:.9375rem;color:#416453;margin:8px 0;text-decoration:underline}.editorial-note{font-size:.9375rem;padding:20px 24px;border-left:4px solid #a7c935;background:#f2f6ed;margin:25px 0;color:#3d5b44;line-height:1.75}
.article-hero{max-width:1320px;margin:auto}.article-title{max-width:940px;padding:48px 0 38px}.article-title h1{font-size:clamp(2.6rem,4.3vw,4rem);line-height:1.08;letter-spacing:-.04em;margin:17px 0 23px}.article-title .standfirst{font-size:1.3rem;line-height:1.65;max-width:800px}.article-title .article-meta{margin-top:24px;font-size:.875rem;color:#5b7464}.article-cover{width:100%;height:470px;object-fit:cover;border-radius:8px;object-position:center 38%}.article-cover--poster{height:480px;object-fit:contain;background:#ecf4ed}.article-copy{max-width:790px}.article-layout{padding-top:60px;padding-bottom:75px}.article-sidebar{padding-top:6px}.article-sidebar h2{font-size:1.4rem}.article-sidebar a{display:block;padding:18px 0;border-bottom:1px solid #dce7df;font-size:1.0625rem;font-weight:600}.article-sidebar p{font-size:1rem;margin-bottom:10px}.news .all-news .button,.theme-2 .all-news .strong-cta{color:white;background:#007b49;border-color:#007b49}.theme-2 .all-news .strong-cta:hover{background:#005d37}.news-photo{display:block;width:100%}.news-grid article .news-photo img{height:100%;width:100%;object-fit:cover}
.event-state{display:inline-block;background:#edf3e9;color:#355234;padding:7px 12px;border:1px solid #dce7d2;font-size:.8125rem;font-weight:650;border-radius:4px}.event-date{font-size:1.15rem;color:#007b49;margin:12px 0}.calendar-empty{border:1px solid #d1e3d8;padding:35px;border-radius:8px;background:#f5f9f6}.calendar-empty h2{font-size:2rem}.calendar-empty p{max-width:760px;margin:20px 0}.event-detail-date{display:flex;gap:20px;align-items:center;margin:30px 0}.event-detail-date strong{background:#e7f2e9;padding:14px 22px;font-size:2rem;color:#007b49;border-radius:7px}.event-detail-date p{margin:0;font-size:1.125rem}
.contact-panel{padding:32px;border:1px solid #d3e4d9;border-radius:8px}.contact-panel h2{font-size:1.9rem}.contact-item{padding:23px 0;border-bottom:1px solid #d9e6dc}.contact-item:last-child{border:0}.contact-item small{display:block;color:#52685a;font-size:.875rem;margin-bottom:7px}.contact-item a,.contact-item strong{font-size:1.25rem;overflow-wrap:anywhere}.hours-table{width:100%;border-collapse:collapse;font-size:1.05rem;margin:18px 0 22px}.hours-table th,.hours-table td{text-align:left;vertical-align:top;padding:16px 0;border-bottom:1px solid #d8e5dc}.hours-table th{font-weight:600}.hours-table td{text-align:right;color:#52685a}.location-panel{margin-top:30px;padding:34px;background:#edf5ef;border-radius:8px}.location-panel h2{font-size:1.8rem}.location-panel p{margin:16px 0 24px}.location-photo{width:100%;height:250px;object-fit:cover;border-radius:8px;margin-bottom:26px}
.booking-form{padding:36px;background:#f0f6f2;border:1px solid #d7e6db;border-radius:8px}.booking-form h2{font-size:1.85rem}.booking-form label{display:block;font-size:1rem;font-weight:650;margin:24px 0 9px}.booking-form select,.booking-form input{width:100%;background:white;border:1px solid #91ab9a;border-radius:5px;padding:14px;color:#153d29;font:inherit;min-height:55px}.booking-form .form-help{font-size:.9375rem;margin:11px 0 21px;line-height:1.7}.booking-form button{margin-top:23px}.booking-result{margin-top:28px;padding:25px;background:#fff;border:1px solid #b9d2c2;border-radius:5px}.booking-result h3{font-size:1.3rem}.booking-result p{font-size:1rem;line-height:1.75;margin:15px 0;white-space:pre-line}.booking-result a{margin-top:15px}.booking-form [hidden]{display:none}
.flyer-page{margin-top:0}.flyer-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:24px}.flyer-pdf{border:1px solid #d2e3d8;border-radius:7px;padding:35px;background:#f4f8f5}.flyer-pdf h2{font-size:1.9rem}.flyer-pdf p{margin:20px 0}.flyer-download{background:white!important;color:#005632!important;border:1px solid #abc6b4!important}.legal-copy{max-width:900px}.legal-copy h2{font-size:1.7rem;margin-top:35px}.legal-copy p{margin:18px 0;line-height:1.85}.legal-copy ul{padding-left:24px;color:#52685a}.legal-copy li{margin:12px 0}.legal-status{padding:20px 25px;background:#f1f5e9;border-left:4px solid #95b727;margin-bottom:28px;font-size:1rem}.review-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.review-links a{padding:17px;border:1px solid #d6e5da;border-radius:5px;display:block}.review-links a span{display:block;color:#60766a;font-size:.875rem;margin-top:5px}.review-point{border-left:3px solid #b2ce61;padding:13px 20px;margin:18px 0;background:#f5f8f1}.review-point h3{font-size:1.1rem;margin-bottom:7px}.review-point p{font-size:1rem;margin:0}.review-intro{max-width:920px}.sitemap-list{columns:2;column-gap:35px}.sitemap-list a{display:block;padding:10px 0;font-size:1rem;break-inside:avoid;text-decoration:underline}.page-small{font-size:.9375rem!important}.not-found{text-align:center;padding:100px 20px}.not-found h1{font-size:4rem}.not-found p{margin:25px 0}
@media(min-width:1101px) and (max-width:1300px){header{gap:14px}header nav{gap:17px;font-size:1.0625rem}.nav-cta{padding-inline:18px}.brand{width:122px;flex-shrink:0}.page-hero .wrap{gap:38px}.detail-layout{gap:40px;grid-template-columns:minmax(0,1fr) 295px}}
@media(max-width:1100px){header{height:110px;position:relative}header .brand{margin-right:auto}header nav{display:none}header .menu{display:block;font-size:1.7rem;background:none;border:0;color:#007b49;padding:10px}header.expanded nav{display:flex;position:absolute;left:0;right:0;top:100%;background:#fff;z-index:40;box-shadow:0 15px 25px #003a2920;padding:20px 28px;flex-direction:column;align-items:stretch;gap:0}header.expanded nav a{padding:13px 8px}.detail-layout{grid-template-columns:minmax(0,1fr) 285px;gap:30px}.info-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero .wrap{gap:30px}.page-hero h1{font-size:2.7rem}.page-two-col{gap:34px}.page-cta{display:block}.page-cta .button{margin-top:24px}.page-hero-image{height:310px}.article-cover{height:390px}.detail-sidebar{padding:24px}.page-hero p{font-size:1.125rem}.page-prose h2,.article-copy h2{font-size:1.75rem}.contact-panel{padding:25px}.booking-form{padding:26px}}
@media(max-width:760px){header{height:108px;gap:10px}header .brand{width:110px;height:108px}.nav-cta{font-size:.9375rem;padding:14px 16px;gap:10px}.page-hero .wrap{grid-template-columns:1fr;padding-block:30px 36px;gap:27px}.page-hero h1{font-size:2.45rem}.page-hero-image{height:260px}.page-hero--plain .wrap{display:block}.page-hero--plain h1{font-size:2.5rem}.page-hero p{font-size:1.1rem}.breadcrumb{font-size:.8125rem;margin-bottom:23px}.page-section{padding-block:44px}.page-section h2{font-size:2rem}.page-two-col,.detail-layout{grid-template-columns:1fr;gap:35px}.detail-sidebar{position:static}.detail-sidebar h2{font-size:1.6rem}.info-card-grid{grid-template-columns:1fr;gap:20px;margin-top:25px}.info-card-body{padding:25px}.info-card h2,.info-card h3{font-size:1.5rem}.info-card>img,.info-card>a>img{height:230px}.group-heading{display:block;margin-top:40px}.group-heading p{margin-top:14px}.group-heading h2{font-size:1.8rem}.page-cta{padding:28px 24px;margin-top:32px}.page-cta h2{font-size:1.8rem}.page-prose p,.article-copy p{font-size:1.0625rem;line-height:1.8}.page-prose h2,.article-copy h2{font-size:1.7rem;margin-top:30px}.prepare-list{padding:23px}.prepare-list h2{font-size:1.55rem}.page-facts{gap:16px}.page-facts strong{font-size:2rem}.page-facts span{font-size:.875rem}.gallery-pair{gap:15px;grid-template-columns:1fr}.gallery-pair img{height:290px}.article-title{padding:28px 0}.article-title h1{font-size:2.45rem}.article-title .standfirst{font-size:1.125rem}.article-cover{height:270px}.article-cover--poster{height:420px}.article-layout{padding-block:38px 45px}.article-sidebar{border-top:1px solid #d8e5dc;padding-top:26px}.page-hero .hero-page-actions .button{width:100%}.booking-form{padding:25px 22px}.booking-form h2{font-size:1.7rem}.booking-form button{width:100%}.booking-result{padding:20px}.booking-result .button{width:100%}.contact-item a,.contact-item strong{font-size:1.1rem}.location-panel{padding:27px}.calendar-empty{padding:25px}.event-detail-date{gap:15px}.category-links{gap:9px}.category-links a{font-size:.9375rem;padding:10px 12px}.review-links{grid-template-columns:1fr}.sitemap-list{columns:1}.flyer-pdf{padding:25px}.flyer-actions .button{width:100%}.legal-copy h2{font-size:1.6rem}.legal-status{padding:18px}.news-grid .news-photo{height:240px}.footer-refined .email{overflow-wrap:anywhere}.footer-grid>div{min-width:0}}
