:root{--color-surface:#fff;--color-text:#1f1b16;--color-text-muted:#6b6156;--color-border:#dcd3c4;--color-accent-contrast:#fff;--color-danger:#b3261e;--t-xs:.8125rem;--t-sm:.9375rem;--t-base:1.0625rem;--t-lg:clamp(1.125rem, .9rem + .9vw, 1.375rem);--t-xl:clamp(1.5rem, 1.1rem + 1.7vw, 2.125rem);--t-2xl:clamp(2rem, 1.3rem + 3vw, 3.25rem);--t-display:clamp(2.5rem, 1.4rem + 5vw, 5rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:8rem;--radius-sm:8px;--radius:14px;--radius-lg:22px;--measure:34rem;--page:72rem;--shadow-sm:0 1px 2px #0000000a;--shadow:0 4px 16px -4px #00000014, 0 2px 6px -2px #0000000a;--shadow-lg:0 24px 48px -20px #00000038, 0 8px 20px -12px #0000001f;--ease:cubic-bezier(.22, 1, .36, 1);--logo-h-effective:var(--logo-h,40px);--header-h:max(74px, calc(var(--logo-h-effective) + 26px))}@media (max-width:760px){:root{--logo-h-effective:min(var(--logo-h,40px), 64px);--header-h:max(62px, calc(var(--logo-h-effective) + 20px))}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-weight:var(--weight-body,400);background:radial-gradient(120% 80% at 50% 0%, color-mix(in srgb, var(--color-accent) 5%, transparent) 0%, transparent 60%), var(--color-bg);color:var(--color-text);font-family:var(--font-body), system-ui, sans-serif;font-size:var(--t-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-repeat:no-repeat;margin:0;line-height:1.65}h1,h2,h3{font-family:var(--font-heading), Georgia, serif;font-weight:var(--weight-heading,500);letter-spacing:-.02em;margin:0 0 var(--s-4);text-wrap:balance;line-height:1.08}h1{font-size:var(--t-2xl)}h2{font-size:var(--t-xl)}h3{font-size:var(--t-lg);line-height:1.2}p{margin:0 0 var(--s-4);text-wrap:pretty}.prose{max-width:var(--measure)}.lead{font-size:var(--t-lg);color:var(--color-text-muted);line-height:1.5}.muted{color:var(--color-text-muted)}.eyebrow{font-family:var(--font-body), system-ui, sans-serif;font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 var(--s-3);font-weight:600;display:inline-block}a{color:var(--color-accent);text-decoration:none}a:hover{text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}main{max-width:var(--page);padding:var(--s-7) var(--s-5) var(--s-9);margin:0 auto}main.narrow{max-width:46rem}.full-bleed{width:100vw;margin-left:50%;transform:translate(-50%)}.stack>*+*{margin-top:var(--s-4)}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--s-7) 0}.hero{text-align:center;min-height:min(88vh,780px);padding:calc(var(--header-h) + var(--s-8)) var(--s-5) var(--s-8);isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media img{object-fit:cover;width:100%;height:100%;animation:heroDrift 24s var(--ease) forwards}.hero-media:after{content:"";background:linear-gradient(#00000038 0%,#0000006b 55%,#0000009e 100%);position:absolute;inset:0}.hero-inner{max-width:42rem;position:relative}.hero--media .hero-title,.hero--media .hero-sub,.hero--media .eyebrow{color:#fff}.hero--media .hero-sub,.hero--media .eyebrow{color:#ffffffd1}.hero-title{font-size:var(--t-display);margin:0 0 var(--s-4)}.hero-sub{font-size:var(--t-lg);color:var(--color-text-muted);margin:0 auto var(--s-6);max-width:32rem;line-height:1.5}.hero-logo{width:auto;height:clamp(44px,6vw,72px);margin:0 auto var(--s-5);display:block}.hero--media .hero-logo{padding:var(--s-3) var(--s-4);border-radius:var(--radius);box-sizing:content-box;background:#fffffff0;height:clamp(56px,7vw,88px);box-shadow:0 8px 24px -12px #00000080}@keyframes heroDrift{0%{transform:scale(1.06)}to{transform:scale(1)}}button,.button{justify-content:center;align-items:center;gap:var(--s-2);font-family:var(--font-body), system-ui, sans-serif;font-size:var(--t-sm);letter-spacing:.01em;color:var(--color-accent-contrast);background:var(--color-accent);cursor:pointer;min-height:48px;transition:transform .24s var(--ease), box-shadow .24s var(--ease), filter .24s var(--ease);border:1px solid #0000;border-radius:999px;padding:1.05em 2em;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}button:hover,.button:hover{box-shadow:0 10px 24px -10px color-mix(in srgb, var(--color-accent) 70%, transparent);filter:brightness(1.06);text-decoration:none;transform:translateY(-2px)}button:active,.button:active{transform:translateY(0)}button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.button-ghost{color:var(--color-text);border-color:var(--color-border);background:0 0}.button-ghost:hover{background:color-mix(in srgb, var(--color-accent) 7%, transparent);border-color:var(--color-accent);color:var(--color-text);box-shadow:none}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.card-grid{gap:var(--s-5);display:grid}.event-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:inherit;transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .4s var(--ease);grid-template-columns:1fr;text-decoration:none;display:grid;overflow:hidden}@media (min-width:720px){.event-card{grid-template-columns:42% 1fr;align-items:stretch}.event-card--nomedia{grid-template-columns:1fr}}.event-card--nomedia .event-card-body{border-left:3px solid color-mix(in srgb, var(--color-accent) 45%, transparent)}.event-card:hover{border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border));box-shadow:var(--shadow-lg);text-decoration:none;transform:translateY(-4px)}.event-card-media{background:color-mix(in srgb, var(--color-accent) 8%, var(--color-surface));min-height:200px;position:relative;overflow:hidden}.event-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease);display:block}.event-card:hover .event-card-media img{transform:scale(1.04)}.event-card-body{padding:var(--s-5) var(--s-5) var(--s-5);gap:var(--s-3);flex-direction:column;justify-content:center;display:flex;position:relative}.event-card-body:after{content:"→";right:var(--s-5);bottom:var(--s-5);color:var(--color-accent);opacity:0;transition:opacity .32s var(--ease), transform .32s var(--ease);font-size:1.25rem;line-height:1;position:absolute;transform:translate(-8px)}@media (hover:hover){.event-card:hover .event-card-body:after,.event-card:focus-visible .event-card-body:after{opacity:1;transform:translate(0)}}@media (min-width:720px){.event-card-body{padding:var(--s-6)}}.event-card h3{margin:0}.event-card-desc{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.event-card-foot{align-items:baseline;gap:var(--s-3);margin-top:var(--s-1);flex-wrap:wrap;display:flex}.price{font-family:var(--font-heading), Georgia, serif;font-size:var(--t-lg);color:var(--color-text);letter-spacing:-.02em}.datechip{min-width:3.5rem;padding:var(--s-2) var(--s-3);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-accent) 10%, transparent);color:var(--color-accent);flex-direction:column;justify-content:center;align-items:center;line-height:1.05;display:inline-flex}.datechip .d{font-family:var(--font-heading), Georgia, serif;font-size:1.5rem;font-weight:600}.datechip .m{letter-spacing:.12em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.meta-row{align-items:center;gap:var(--s-3);color:var(--color-text-muted);font-size:var(--t-sm);flex-wrap:wrap;display:flex}.badge-soft{font-size:var(--t-xs);background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);border-radius:999px;padding:.3em .85em;font-weight:600;display:inline-block}.page-head{margin-bottom:var(--s-7)}.page-head h1{margin-bottom:var(--s-3)}.section-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap;display:flex}.section-head h2{margin:0}.back-link{font-size:var(--t-sm);font-weight:500}.event-figure{margin:0 0 var(--s-6);border-radius:var(--radius-lg);aspect-ratio:21/9;background:color-mix(in srgb, var(--color-accent) 8%, var(--color-surface));overflow:hidden}.event-figure img{object-fit:cover;width:100%;height:100%;display:block}.detail-layout{gap:var(--s-6);align-items:start;display:grid}@media (min-width:900px){.detail-layout{gap:var(--s-7);grid-template-columns:1.55fr 1fr}.booking-aside{top:var(--s-5);position:sticky}}.booking-panel{box-shadow:var(--shadow)}.price-row{align-items:baseline;gap:var(--s-2);margin-bottom:var(--s-3);display:flex}.price-lg{font-size:clamp(2rem,1.5rem + 1.6vw,2.75rem);line-height:1}.facts{gap:var(--s-4);margin:var(--s-6) 0;padding:var(--s-5) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.facts>*{min-width:0}.facts dt{font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--s-1);font-weight:600}.facts dd{font-size:var(--t-base);margin:0}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--s-5)}@media (min-width:720px){.panel{padding:var(--s-6)}}.panel-quiet{background:color-mix(in srgb, var(--color-accent) 5%, transparent);border:1px solid color-mix(in srgb, var(--color-accent) 14%, transparent);border-radius:var(--radius);padding:var(--s-4) var(--s-5)}label{font-size:var(--t-sm);margin-bottom:var(--s-4);font-weight:600;display:block}input,select,textarea{width:100%;margin-top:var(--s-2);font-family:inherit;font-size:var(--t-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);padding:.85em 1em;font-weight:400;display:block}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 16%, transparent);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:.7}input[type=checkbox],input[type=radio]{width:auto;margin:0 var(--s-2) 0 0;accent-color:var(--color-accent);display:inline-block}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--s-4) var(--s-5);margin:0 0 var(--s-5)}legend{float:left;width:100%;margin-bottom:var(--s-3);font-size:var(--t-sm);padding:0;font-weight:600}fieldset:after{content:"";clear:both;display:table}.choice{align-items:flex-start;gap:var(--s-3);padding:var(--s-4);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--s-3);cursor:pointer;transition:border-color .2s var(--ease), background-color .2s var(--ease);font-weight:400;display:flex}.choice:hover{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-border))}.choice:has(input:checked){border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 7%, transparent)}.choice input{margin-top:.3em}table{border-collapse:collapse;width:100%;font-size:var(--t-sm)}th,td{text-align:left;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--color-border)}th{font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}@keyframes riseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.rise{animation:riseIn .7s var(--ease) both}.rise-1{animation-delay:60ms}.rise-2{animation-delay:.14s}.rise-3{animation-delay:.22s}.rise-4{animation-delay:.3s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.event-card:hover,button:hover,.button:hover{transform:none}.reveal,.reveal.is-hidden{opacity:1!important;transform:none!important}.hero-scroll-line{opacity:.7;animation:none}.hero-media img{animation:none}}.skip-link{left:var(--s-4);top:var(--s-4);z-index:100;background:var(--color-accent);color:var(--color-accent-contrast);font-size:var(--t-sm);transition:transform .2s var(--ease);border-radius:999px;padding:.75em 1.25em;font-weight:600;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{text-decoration:none;transform:translateY(0)}.site-header{z-index:50;height:var(--header-h);transition:background-color .32s var(--ease), border-color .32s var(--ease), backdrop-filter .32s var(--ease);background:color-mix(in srgb, var(--color-bg) 96%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(14px);border-bottom:1px solid #0000;border-bottom-color:color-mix(in srgb, var(--color-border) 70%, transparent);align-items:center;display:flex;position:fixed;top:0;left:0;right:0}body:has(.hero--media) .site-header{-webkit-backdrop-filter:none;background:0 0;border-bottom-color:#0000}:is(body:has(.hero--media) .site-header.is-scrolled,body:has(.hero--media) .site-header.is-open){background:color-mix(in srgb, var(--color-bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(14px);border-bottom-color:color-mix(in srgb, var(--color-border) 70%, transparent)}body:not(:has(.hero)):not(:has(.admin-shell)) #contenuto{padding-top:var(--header-h)}.site-header-inner{width:100%;max-width:var(--page);padding:0 var(--s-5);justify-content:space-between;align-items:center;gap:var(--s-5);margin:0 auto;display:flex}.brand{align-items:center;gap:var(--s-3);color:var(--color-text);min-width:0;text-decoration:none;display:inline-flex}.brand:hover{text-decoration:none}.brand-logo{height:var(--logo-h-effective);object-fit:contain;width:auto;max-width:min(280px,40vw);display:block}.brand-name{font-family:var(--font-heading), Georgia, serif;letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(1.05rem,.9rem + .5vw,1.3rem);line-height:1;overflow:hidden}:is(body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .brand,body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .site-nav-link){color:#fff}.brand-logo--negative{display:none}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .brand-logo--negative{display:block}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .brand:has(.brand-logo--negative) .brand-name{display:none}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .brand:has(.brand-logo--negative) .brand-logo--positive{display:none}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .brand:not(:has(.brand-logo--negative)) .brand-logo{box-sizing:content-box;background:#fffffff0;border-radius:8px;padding:5px 8px}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .menu-bars span{background:#fff}.site-nav{align-items:center;gap:var(--s-5);display:none}@media (min-width:900px){.site-nav{display:flex}}.site-nav-link{color:var(--color-text);font-size:var(--t-sm);transition:opacity .2s var(--ease);padding:.4em 0;font-weight:500;text-decoration:none;position:relative}.site-nav-link:hover{opacity:.72;text-decoration:none}.site-nav-link:after{content:"";transform-origin:0;width:100%;height:1.5px;transition:transform .3s var(--ease);background:currentColor;position:absolute;bottom:0;left:0;transform:scaleX(0)}.site-nav-link:hover:after,.site-nav-link:focus-visible:after{transform:scaleX(1)}.site-nav-link[aria-current=page]:after{background:var(--color-accent);height:2px;transform:scaleX(1)}body:has(.hero--media) .site-header:not(.is-scrolled):not(.is-open) .site-nav-link[aria-current=page]:after{background:#fff}.button-sm{min-height:40px;font-size:var(--t-xs);padding:.7em 1.4em}.menu-toggle{width:44px;height:44px;min-height:44px;color:inherit;box-shadow:none;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.menu-toggle:hover{background:color-mix(in srgb, var(--color-text) 8%, transparent);box-shadow:none;filter:none;transform:none}@media (min-width:900px){.menu-toggle{display:none}}.menu-bars{width:22px;height:12px;display:block;position:relative}.menu-bars span{background:var(--color-text);width:100%;height:1.5px;transition:transform .32s var(--ease), opacity .2s var(--ease);border-radius:2px;position:absolute;left:0}.menu-bars span:first-child{top:0}.menu-bars span:last-child{bottom:0}.site-header.is-open .menu-bars span:first-child{transform:translateY(5.25px)rotate(45deg)}.site-header.is-open .menu-bars span:last-child{transform:translateY(-5.25px)rotate(-45deg)}.menu-panel{inset:var(--header-h) 0 0;z-index:45;justify-content:center;gap:var(--s-5);padding:var(--s-6) var(--s-5) 20vh;background:var(--color-bg);opacity:0;transition:opacity .26s var(--ease), visibility .26s;visibility:hidden;flex-direction:column;display:flex;position:fixed;overflow-y:auto}.menu-panel.is-open{opacity:1;visibility:visible}.menu-panel nav{gap:var(--s-4);flex-direction:column;display:flex}.menu-link{font-family:var(--font-heading), Georgia, serif;letter-spacing:-.02em;color:var(--color-text);opacity:0;transition:opacity .42s var(--ease), transform .42s var(--ease);font-size:clamp(1.625rem,6.5vw,2.75rem);line-height:1.25;text-decoration:none;transform:translateY(14px)}.menu-panel.is-open .menu-link,.menu-panel.is-open .menu-cta{opacity:1;transform:translateY(0)}.menu-link[aria-current=page]{color:var(--color-accent)}.menu-cta{opacity:0;transition:opacity .42s var(--ease), transform .42s var(--ease);align-self:flex-start;transform:translateY(14px)}@media (min-width:900px){.menu-panel{display:none!important}}.hero-actions{gap:var(--s-3);flex-wrap:wrap;justify-content:center;display:flex}.hero--media .button-ghost{color:#fff;border-color:#ffffff80}.hero--media .button-ghost:hover{color:#fff;background:#ffffff24;border-color:#fff}.hero-scroll{bottom:var(--s-6);place-items:center;width:28px;height:52px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.hero-scroll-line{width:1px;height:44px;animation:scrollCue 2.4s var(--ease) infinite;transform-origin:top;background:linear-gradient(#0000,#ffffffe6);display:block}@keyframes scrollCue{0%{opacity:0;transform:scaleY(0)}40%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.reveal{transition:opacity .7s var(--ease), transform .7s var(--ease)}.reveal.is-hidden{opacity:0;transform:translateY(26px)}.reveal.is-visible{opacity:1;transform:none}.site-footer{border-top:1px solid var(--color-border);padding:var(--s-7) var(--s-5) var(--s-6);background:color-mix(in srgb, var(--color-accent) 3%, transparent);margin-top:0}.site-footer-inner{max-width:var(--page);align-items:flex-start;gap:var(--s-5);flex-direction:column;margin:0 auto;display:flex}@media (min-width:640px){.site-footer-inner{flex-flow:wrap;justify-content:space-between}}.footer-name{font-family:var(--font-heading), Georgia, serif;font-size:var(--t-lg);letter-spacing:-.015em;margin:0 0 var(--s-1)}.footer-nav{gap:var(--s-5);font-size:var(--t-sm);flex-wrap:wrap;display:flex}.footer-nav a{color:var(--color-text)}.footer-nav a:hover{color:var(--color-accent)}.footer-legal{max-width:var(--page);margin:var(--s-6) auto 0;font-size:var(--t-xs)}@media print{nav,.site-header,.site-footer,.skip-link,.no-print{display:none!important}#contenuto{padding-top:0!important}body{color:#000;background:#fff;font-size:11pt}.print-sheet{max-width:none;margin:0;padding:0}.print-sheet ol>li{break-inside:avoid}a{color:inherit;text-decoration:none}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
