/* Adda Graniti · stili delle sezioni (plugin plg_system_addagraniti), ripresi dal prototipo sito/css e adattati al markup di YOOtheme.
   Bottoni, testo introduttivo, titoli, voci del menu e campi dei moduli li governa il Customizer di YOOtheme: qui non si forzano.
   Le variabili --ag-* qui sotto sono solo il ripiego: i valori veri li scrive nel CSS dello stile il child theme yootheme_addagraniti
   (less/adda.less, con html:root che vince su :root), così colori e font cambiati nel Customizer arrivano anche nelle sezioni del sito. */
:root{--ag-nav-on:#a35a12;--ag-nav-on-inv:#e09a3e;--ag-btn-p-bg:#e09a3e;--ag-btn-p-hbg:#c9822a;--ag-btn-p-bg-inv:#e09a3e;--ag-btn-p-hbg-inv:#c9822a;--ag-btn-d-hbg:transparent;--ag-btn-d-hbg-inv:transparent;--ag-form-px:14px;
  --ag-ico-home:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpolygon points='18.65 11.35 10 2.71 1.35 11.35 0.65 10.65 10 1.29 19.35 10.65'/%3E%3Cpolygon points='15 4 18 4 18 7 17 7 17 5 15 5'/%3E%3Cpolygon points='3 11 4 11 4 18 7 18 7 12 12 12 12 18 16 18 16 11 17 11 17 19 11 19 11 13 8 13 8 19 3 19'/%3E%3C/svg%3E");
  --ag-accent:#e09a3e;--ag-accent-t:#a35a12;--ag-on-accent:#161819;--ag-sand:#e9dcc6;--ag-slate:#26292a;--ag-ink:#1f2221;--ag-muted:#646966;--ag-line:#d3d3cc;--ag-bg:#f1f1ee;--ag-surface:#e6e6e1;--ag-display:"Libre Bodoni",Georgia,serif;--ag-body:Figtree,system-ui,sans-serif;--ag-top:96px}

/* Header trasparente sopra le testate scure: voci e logo chiari (UIkit non inverte da solo con questo stile) */
.tm-header-overlay .uk-navbar-transparent .uk-navbar-nav>li>a,.tm-header-overlay .uk-navbar-transparent .uk-navbar-toggle,.tm-header-overlay .uk-navbar-transparent .uk-navbar-item{color:rgba(255,255,255,.88)}
.tm-header-overlay .uk-navbar-transparent .uk-navbar-nav>li>a:hover{color:#fff}
.tm-header-overlay .uk-navbar-transparent .uk-navbar-nav>li.uk-active>a{color:var(--ag-nav-on-inv)}
.tm-header-overlay .uk-navbar-transparent .uk-logo>:not(.uk-logo-inverse){display:none}
.tm-header-overlay .uk-navbar-transparent .uk-logo-inverse{display:block!important}

/* Barra fissa scura come nel prototipo, con logo bianco; sulle pagine senza testata (es. scheda materiale) l'header è sempre così */
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container){background:rgba(16,17,17,.92)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-nav>li>a,:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-toggle,:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-item{color:rgba(255,255,255,.85)!important}
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-nav>li>a:hover{color:#fff!important}
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-nav>li.uk-active>a{color:var(--ag-nav-on-inv)!important}
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-logo>:not(.uk-logo-inverse){display:none}
:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-logo-inverse{display:block!important}
/* Font, dimensione, maiuscolo e spaziatura delle voci: dallo stile (Customizer > Navbar). Voce attiva nel colore attivo del Customizer, come la sua riga */
.tm-header .uk-navbar-nav>li.uk-active>a{color:var(--ag-nav-on)}
.tm-header .uk-navbar-nav>li>a [uk-icon],.tm-header .uk-navbar-nav>li>a .uk-icon{margin-right:8px}
.tm-header .uk-navbar-nav>li>a .uk-icon svg{width:17px;height:17px;vertical-align:-2px}
/* Voce attiva: una riga sotto il testo al posto del pallino di Gravity Tower (visibile anche nella barra fissa), che si apre dal centro verso i lati in 200ms */
.tm-header .uk-navbar-nav>li>a::before{top:calc(50% + .95em)!important;bottom:auto!important;left:50%!important;right:50%!important;width:auto!important;height:2px!important;border-radius:0!important;opacity:1!important;background:var(--ag-nav-on)!important;transform:none!important;transition:left .2s ease-out,right .2s ease-out!important}
.tm-header-overlay .uk-navbar-transparent .uk-navbar-nav>li>a::before,:is(.uk-navbar-sticky,.tm-header:not(.tm-header-overlay) .uk-navbar-container,.tm-header-mobile:not(.tm-header-overlay) .uk-navbar-container) .uk-navbar-nav>li>a::before,.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-nav>li>a::before{background:var(--ag-nav-on-inv)!important}
.tm-header .uk-navbar-nav>li.uk-active>a::before,.tm-header .uk-navbar-nav>li>a:hover::before,.tm-header .uk-navbar-nav>li>a[aria-expanded=true]::before{left:-5px!important;right:-5px!important}
/* Mega menu (dropdown costruiti col builder) dentro la dropbar ardesia a tutta larghezza */
.tm-header .uk-navbar-dropbar{background:var(--ag-slate)!important;box-shadow:none}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-dropbar{box-shadow:0 0 0 100vmax rgba(10,11,11,.55);clip-path:inset(0 -100vmax -100vmax -100vmax)}
.tm-header .uk-navbar-dropdown{background:transparent!important;border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important;color:#e9e7e2}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-container{background:var(--ag-slate)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-nav>li>a,.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-toggle{color:rgba(255,255,255,.85)!important}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-nav>li>a:hover,.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-nav>li>a[aria-expanded=true]{color:#fff!important}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-navbar-nav>li.uk-active>a{color:var(--ag-nav-on-inv)!important}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-logo>:not(.uk-logo-inverse){display:none}
.tm-header:has(.uk-navbar-dropdown.uk-open) .uk-logo-inverse{display:block!important}
.ag-mega .uk-text-meta,.ag-mega .el-meta{color:rgba(233,231,226,.7)!important}
.ag-mega .el-content{color:rgba(233,231,226,.82)}
.uk-navbar-dropdown .ag-mega-img{overflow:hidden}
.uk-navbar-dropdown .ag-mega-img img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .8s ease}
.uk-navbar-dropdown .ag-mega-img:hover img{transform:scale(1.05)}
.uk-navbar-dropdown .ag-mega-t{font-family:var(--ag-display)!important}
.uk-navbar-dropdown .ag-mega-t a{color:#fff}.uk-navbar-dropdown .ag-mega-t a:hover{color:var(--ag-accent);text-decoration:none}
/* Mega menu: collezioni sotto le famiglie, separate da un filetto, come fasce basse con la foto in cover */
.ag-mega-coll-h{margin-top:44px!important}
/* Filetto sull'etichetta e non sulla riga, così è allineato alle foto (la griglia ha il margine sinistro negativo) */
.ag-mega-coll-h .ag-eyebrow{margin:0!important;padding-top:24px;border-top:1px solid rgba(255,255,255,.18)}
.ag-mega-coll-h+*{margin-top:14px!important}
.ag-mega-coll{text-align:left!important}
.ag-mega-coll>a.uk-inline-clip,.ag-mega-coll>*{display:block!important;position:relative;overflow:hidden}
.ag-mega-coll picture{display:block}
/* Altezza legata alla finestra, così il menu resta sempre tutto visibile */
.ag-mega-coll img{display:block;width:100%;height:clamp(150px,24vh,280px);object-fit:cover;transition:transform .8s ease}
.ag-mega-coll>*:hover img{transform:scale(1.05)}
.ag-mega-coll>*::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 75%);pointer-events:none}
.ag-mega-coll .uk-overlay,.ag-mega-coll [class*=uk-position-]{z-index:1}
.ag-mega-coll .el-title{margin:0;font-family:var(--ag-display)!important;font-size:clamp(24px,2vw,34px)!important;color:#fff}
.ag-mega-coll .el-meta{margin-top:4px!important;color:var(--ag-accent)!important}

/* Barra del percorso sotto la testata: resta attaccata sotto l'header quando si scorre */
.ag-crumbbar{position:sticky;top:var(--ag-hh,0px);z-index:970;border-bottom:1px solid var(--ag-line)}
.ag-crumbbar .uk-breadcrumb{padding:14px 0;margin:0}
.ag-crumbs .uk-breadcrumb>:first-child>a::before{content:"";display:inline-block;width:1.3em;height:1.3em;margin-right:.5em;vertical-align:-.3em;background:currentColor;-webkit-mask:var(--ag-ico-home) center/contain no-repeat;mask:var(--ag-ico-home) center/contain no-repeat}

/* Testata video: fondo scuro finché non arrivano la foto (poster aggiunto dal plugin) e il video */
.ag-hero.uk-section,.ag-hero .uk-section{background-color:#161819}

/* Indicatore "scorri in basso" sulla testata video */
.ag-cue{position:absolute;right:calc(max(16px,env(safe-area-inset-right,0px)) + 24px);bottom:32px;z-index:2;width:28px;height:46px;padding:0;border:2px solid rgba(255,255,255,.75);border-radius:14px;background:transparent;cursor:pointer}
.ag-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:ag-cue 1.6s infinite}
.ag-cue:focus-visible{outline:2px solid #fff;outline-offset:3px}
@keyframes ag-cue{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media(max-width:640px){.ag-cue{display:none}}

/* Bottoni: forma, testo e colori dal Customizer (Button). Qui solo l'animazione al passaggio: il fondo di hover del Customizer
   parte come un piccolo cerchio dal bordo sinistro e si allarga fino a coprire il bottone, mentre il fondo normale resta sotto (bottoni bordati: fondo di hover trasparente, cambia solo il colore) */
.uk-button-primary,.uk-button-secondary,.uk-button-default{position:relative;z-index:0;overflow:hidden;transition-property:color,border-color!important;transition-duration:.35s!important}
.uk-button-primary::before,.uk-button-secondary::before,.uk-button-default::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--ag-sweep);clip-path:circle(0 at 0 50%);transition:clip-path .55s cubic-bezier(.4,0,.2,1)}
.uk-button-primary:hover::before,.uk-button-secondary:hover::before,.uk-button-default:hover::before,.uk-button-primary:focus-visible::before,.uk-button-default:focus-visible::before{clip-path:circle(150% at 0 50%)}
.uk-button-primary{--ag-sweep:var(--ag-btn-p-hbg)}.uk-button-primary:hover,.uk-button-primary:focus-visible{background-color:var(--ag-btn-p-bg)!important}
.uk-button-default{--ag-sweep:var(--ag-btn-d-hbg)}.uk-button-default:hover,.uk-button-default:focus-visible{background-color:transparent!important}
.uk-light .uk-button-primary,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary{--ag-sweep:var(--ag-btn-p-hbg-inv)}
.uk-light .uk-button-primary:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:hover{background-color:var(--ag-btn-p-bg-inv)!important}
.uk-light .uk-button-default,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default{--ag-sweep:var(--ag-btn-d-hbg-inv)}
.uk-button .uk-icon{transition:transform .35s ease}.uk-button:hover .uk-icon{transform:translateX(3px)}

/* Moduli RSForm: etichette sopra i campi, maiuscoletto come nel prototipo */
.formContainer.uk-form-horizontal .uk-form-label{float:none!important;width:auto!important;margin:0 0 6px!important}
.formContainer.uk-form-horizontal .uk-form-controls{margin-left:0!important}
.formContainer .uk-form-label{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ag-muted)}
.formContainer .uk-input,.formContainer .uk-textarea,.formContainer .uk-select{padding-left:var(--ag-form-px);padding-right:var(--ag-form-px);background-color:#fff;border:1px solid var(--ag-line)}
.formContainer .uk-select:not([multiple]):not([size]){padding-right:calc(var(--ag-form-px) + 20px);background-position:calc(100% - var(--ag-form-px)) 50%}
.formContainer .uk-input[readonly]{background:var(--ag-bg);font-weight:600}

/* Titoli: maiuscolo e dimensioni dal Customizer; le parole lunghe (es. "approvvigionamento" nelle colonne strette) vanno a capo col trattino invece di uscire dallo schermo */
h1,h2,h3,h4,h5,h6,.uk-h1,.uk-h2,.uk-h3,.uk-h4,.uk-h5,.uk-h6,[class*=uk-heading-]{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:10 4 4}
.ag-hero h1{font-size:clamp(40px,min(6vw,11vh),96px)!important;line-height:1.03!important}
@media(min-width:960px){.ag-hero .uk-grid>*{max-width:40%}}

/* Testi */
.ag-eyebrow{font-size:12px!important;font-weight:600;letter-spacing:.22em!important;text-transform:uppercase;color:var(--ag-accent-t)!important}
.uk-light .ag-eyebrow,.uk-section-secondary .ag-eyebrow{color:var(--ag-accent)!important}
.ag-riga{font:italic 400 clamp(19px,2vw,26px)/1.4 var(--ag-display)}
.ag-caption{font-family:var(--ag-display)!important;font-style:italic!important;font-weight:400!important}
.ag-crumbs .uk-breadcrumb>*>*{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.uk-light .ag-crumbs .uk-breadcrumb>*>*{color:var(--ag-sand)}

/* Utilizzi: righe alternate con foto ampia e riquadro di testo che la sovrappone */
.ag-uso{margin-top:0!important}
.ag-uso+.ag-uso{margin-top:clamp(48px,7vw,104px)!important}
.ag-uso-img img{display:block;width:100%;aspect-ratio:7/5;object-fit:cover}
.ag-uso-img a:hover img{transform:scale(1.03)}
.ag-uso-img a{display:block;overflow:hidden}.ag-uso-img img{transition:transform 1s ease}
.ag-uso-txt>*{position:relative;z-index:1;background:var(--ag-bg);padding:clamp(28px,3.6vw,56px)}
@media(min-width:960px){.ag-uso-txt>*{width:114%!important;margin-left:-14%;box-shadow:0 30px 60px -45px rgba(0,0,0,.4)}.ag-uso-rev .ag-uso-txt>*{margin-left:0;margin-right:-14%}}
.ag-num{color:transparent!important;-webkit-text-stroke:1px var(--ag-accent-t);font-family:var(--ag-display)!important;line-height:.8!important}
.ag-meta-count{font-size:12px!important;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ag-accent-t)!important}
.ag-uso-txt h2 a{color:inherit}.ag-uso-txt h2 a:hover{color:var(--ag-accent-t);text-decoration:none}

/* Contatti: riquadro ardesia con i dati e riquadro chiaro con il modulo */
.ag-ct-card>*{height:100%;box-sizing:border-box;padding:clamp(28px,3vw,48px);background:var(--ag-slate);color:#e9e7e2}
.ag-ct-card h2,.ag-ct-card .uk-h2{color:#fff}
.ag-ct-card .ag-eyebrow{color:var(--ag-accent)!important}
.ag-ct-card .ag-info,.ag-ct-card .ag-info>li{border-color:rgba(255,255,255,.18)}
.ag-ct-card .ag-info .el-title{color:var(--ag-sand)!important}
.ag-ct-card a{color:#fff}.ag-ct-card a:hover{color:var(--ag-sand)}
.ag-ct-foto img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.ag-ct-form>*{height:100%;box-sizing:border-box;padding:clamp(28px,3vw,48px);background:var(--ag-surface)}
.ag-mappa{min-height:520px}

/* Contatori */
.ag-cnt .uk-grid>*{border-left:1px solid rgba(255,255,255,.2)}
.ag-cnt-n{font-family:var(--ag-display)!important;color:var(--ag-accent)!important;font-variant-numeric:lining-nums tabular-nums}
.ag-cnt .uk-text-meta{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* Split-screen: foto fissa a sinistra che segue il testo attivo */
.ag-ss-item .el-meta{font:italic 400 24px var(--ag-display);color:var(--ag-accent-t)}
.ag-ss-item .el-title{transition:color .3s}
.ag-ss-r{font:italic 400 clamp(19px,1.8vw,25px)/1.4 var(--ag-display)}
.ag-ss-mob img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
@media(min-width:960px){
  .ag-ss-media{position:sticky;top:var(--ag-top);align-self:flex-start;display:grid}
  .ag-ss-media>.ag-ss-img,.ag-ss-media>.ag-ss-cap{grid-area:1/1}
  .ag-ss-img{opacity:0;transition:opacity .8s ease}
  .ag-ss-img.on{opacity:1}
  .ag-ss-img img{display:block;width:100%;height:calc(100vh - var(--ag-top) - 32px);object-fit:cover}
  .ag-ss-cap{align-self:end;justify-self:start;z-index:2;padding:14px 20px;background:rgba(22,24,25,.8);color:#fff;font:italic 400 19px/1.2 var(--ag-display)}
  .ag-ss-cap:empty{display:none}
  .ag-ss-item{min-height:64vh;display:flex!important;flex-direction:column;justify-content:center;border-top:1px solid var(--ag-line);opacity:.28;transition:opacity .5s}
  .ag-ss-item.on{opacity:1}
  .ag-ss-list>.ag-ss-item:last-child,.ag-ss-item:last-child{min-height:calc(100vh - var(--ag-top))}
  .ag-ss-mob{display:none}
}
@media(max-width:959px){.ag-ss-media{display:none!important}.ag-ss-mob{margin-bottom:20px}.ag-ss-item{padding-bottom:40px}}

/* Famiglie a mosaico */
.ag-bento{text-align:left!important}
.ag-bento>.uk-grid{display:grid!important;grid-template-columns:repeat(2,1fr);grid-auto-rows:clamp(170px,22vw,330px);gap:12px;margin:0!important}
.ag-bento>.uk-grid>*{width:auto!important;margin:0!important;padding:0!important}
.ag-bento>.uk-grid>:first-child{grid-column:1/-1}
@media(min-width:960px){.ag-bento>.uk-grid{grid-template-columns:2fr 1fr 1fr}.ag-bento>.uk-grid>:first-child{grid-column:1;grid-row:span 2}}
.ag-bento>.uk-grid>*>*{position:relative;display:block;height:100%;overflow:hidden}
.ag-bento .el-item>a,.ag-bento picture{display:block;width:100%;height:100%}
.ag-bento picture img,.ag-panel picture,.ag-uso-img picture,.uk-navbar-dropdown .ag-mega-img picture{display:block}
.ag-bento img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.ag-bento>.uk-grid>*>*:hover img{transform:scale(1.06)}
.ag-bento>.uk-grid>*>*::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,0,0,.74));pointer-events:none}
.ag-bento .uk-overlay,.ag-bento [class*=uk-position-]{z-index:1}
.ag-bento .el-title{font-family:var(--ag-display)!important;margin:0}
.ag-bento>.uk-grid>:first-child .el-title{font-size:clamp(30px,3.6vw,56px)}
.ag-bento .el-meta{color:rgba(255,255,255,.82)!important}
.ag-bento .el-content{margin-top:10px;font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--ag-accent)}

/* Fascia scorrevole dei nomi */
.ag-marq{overflow:hidden;padding:18px 0 4px;border-top:1px solid rgba(255,255,255,.12)}
.ag-marq-in{display:flex;width:max-content;animation:ag-marq 300s linear infinite}
.ag-marq:hover .ag-marq-in{animation-play-state:paused}
.ag-marq .el-item{position:relative;padding:0 30px;white-space:nowrap;font:italic 400 clamp(22px,2.4vw,34px)/1.1 var(--ag-display);color:rgba(233,231,226,.72)}
.ag-marq .el-item::after{content:"";position:absolute;right:-4px;top:50%;width:7px;height:7px;background:var(--ag-accent);transform:translateY(-50%) rotate(45deg)}
@keyframes ag-marq{to{transform:translateX(-50%)}}

/* In evidenza: pannelli fotografici */
.ag-panel{text-align:left!important}
.ag-panel>*{display:block;position:relative}
.ag-panel img{display:block;width:100%;height:clamp(440px,46vw,660px);object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.ag-panel>*:hover img{transform:scale(1.05)}
.ag-panel>*::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 28%,rgba(0,0,0,.8));pointer-events:none}
.ag-panel .uk-overlay,.ag-panel [class*=uk-position-]{z-index:1;max-width:620px}
.ag-panel .el-title{font-family:var(--ag-display)!important}
.ag-panel .el-link{color:var(--ag-accent)!important;font-weight:600;letter-spacing:.1em}

/* Foto aerea */
.ag-aerea>.uk-section,.ag-aerea .uk-section{min-height:70vh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end}

/* Azienda in home: due foto sovrapposte, riquadro 50+ anni, capitoli */
.ag-azh-media>*{position:relative;padding:0 14% 16% 0}
.ag-azh-a img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:0 40px 80px -50px rgba(0,0,0,.55)}
.ag-azh-b{position:absolute!important;right:0;bottom:0;width:46%}
.ag-azh-b img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:10px solid var(--ag-bg);box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
.ag-azh-badge{position:absolute!important;left:clamp(16px,3vw,40px);bottom:calc(16% - 56px);z-index:2;max-width:230px;margin:0!important;padding:20px 24px;background:var(--ag-slate);color:#e9e7e2;font-size:11px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase}
.ag-azh-badge p{margin:0}
.ag-azh-badge .ag-big{margin-bottom:6px;font:400 52px/1 var(--ag-display);letter-spacing:0;color:var(--ag-accent)}
@media(max-width:639px){.ag-azh-media>*{padding:0}.ag-azh-b{display:none}.ag-azh-badge{position:relative!important;left:0;max-width:none;margin-top:-40px!important}}
.ag-azh-l{border-top:1px solid #c9c9c1}
.ag-azh-l>li{display:grid;grid-template-columns:52px 1fr;margin:0!important;padding:16px 0;border-bottom:1px solid #c9c9c1}
.ag-azh-l .el-meta{grid-row:span 2;font:italic 400 22px/1.25 var(--ag-display);color:var(--ag-accent-t)}
.ag-azh-l .el-title{font:400 24px/1.25 var(--ag-display)!important;letter-spacing:0!important;text-transform:none!important;color:var(--ag-ink)!important}
.ag-azh-l .el-content{grid-column:2;font-size:14px;color:var(--ag-muted)}

/* Dove siamo: dati in griglia e mappa incorniciata */
.ag-info{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;border-top:1px solid var(--ag-line)}
.ag-info>li{margin:0!important;padding:16px 0;border-bottom:1px solid var(--ag-line)}
.ag-info .el-content{margin-top:4px;font-size:17px}
.uk-light .ag-info,.uk-light .ag-info>li{border-color:rgba(255,255,255,.18)}
.uk-light .ag-info .el-title{color:var(--ag-sand)!important}
@media(max-width:639px){.ag-info{grid-template-columns:1fr}}
.ag-info-1{grid-template-columns:1fr!important}
.ag-gmap{display:block;width:100%;height:clamp(360px,56vh,600px);border:0}
.ag-visit-map{background:#2a2d2e;border:8px solid rgba(255,255,255,.94);box-shadow:0 50px 90px -40px rgba(0,0,0,.8)}
.ag-map .ag-gmap{height:clamp(380px,60vh,600px);filter:grayscale(.2)}

/* Card materiale (catalogo ed elenchi): foto quadrata */
.ag-gm{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:32px 20px}
.ag-mc{display:block;color:inherit;text-decoration:none!important}
.ag-mc:hover{color:inherit}
.ag-mc-ph{display:block;aspect-ratio:1;overflow:hidden;background:var(--ag-surface)}
.ag-mc-ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.ag-mc:hover .ag-mc-ph img{transform:scale(1.04)}
.ag-mc b{display:block;margin:14px 0 4px;font:400 22px/1.2 var(--ag-display);color:var(--ag-ink)}
.ag-mc:hover b{color:var(--ag-accent-t)}
.ag-mc small{display:block;font-size:13px;line-height:1.5;color:var(--ag-muted)}
.ag-mc .ag-tg{font-weight:600;letter-spacing:.04em;color:var(--ag-accent-t)}
.ag-dot{display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:50%;vertical-align:-1px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.ag-empty{padding:40px 0;color:var(--ag-muted)}

/* Catalogo: colonna filtri + risultati */
.ag-cat{display:grid;gap:clamp(24px,3vw,56px);align-items:start;padding-top:clamp(32px,4vw,56px);border-top:1px solid var(--ag-line)}
@media(min-width:960px){.ag-cat{grid-template-columns:290px 1fr}.ag-cat-f{position:sticky;top:calc(var(--ag-hh,var(--ag-top)) + var(--ag-cbh,0px) + 20px);max-height:calc(100vh - var(--ag-hh,var(--ag-top)) - var(--ag-cbh,0px) - 40px);overflow:auto;padding-right:10px;scrollbar-width:thin}.ag-cat-tgl{display:none!important}}
@media(max-width:959px){.ag-cat-f{display:none;padding:20px;background:#fff;border:1px solid var(--ag-line)}.ag-cat-f.open{display:block}.ag-cat-tgl{width:100%}}
.ag-srch{position:relative;margin-bottom:8px}
.ag-srch svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--ag-muted);pointer-events:none}
.ag-srch .uk-input{height:50px;padding-left:44px;background:#fff}
.ag-fg{padding:18px 0;border-top:1px solid var(--ag-line)}
.ag-fg-t{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ag-muted)}
.ag-fg-h{font-weight:500;letter-spacing:.04em;text-transform:none;color:#8d918e}
.ag-fo{display:flex;align-items:center;gap:12px;width:100%;padding:6px 0;border:0;background:none;font:inherit;font-size:15px;color:var(--ag-ink);text-align:left;cursor:pointer}
.ag-fo .ag-n{margin-left:auto;font-size:12px;color:var(--ag-muted);font-variant-numeric:tabular-nums}
.ag-fo:hover .ag-fl{color:var(--ag-accent-t)}
.ag-list .ag-fo::before{content:"";flex:none;width:15px;height:15px;border:1px solid #b9b9b1;border-radius:50%;transition:border .2s}
.ag-list .ag-fo.on::before{border:5px solid var(--ag-accent)}
.ag-list .ag-fo.on .ag-fl{font-weight:600}
.ag-toggles .ag-sw{flex:none;position:relative;width:36px;height:20px;border-radius:10px;background:#cfcfc8;transition:background .2s}
.ag-toggles .ag-sw::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .2s}
.ag-toggles .ag-fo.on .ag-sw{background:var(--ag-accent)}.ag-toggles .ag-fo.on .ag-sw::after{transform:translateX(16px)}
.ag-colors{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 4px}
.ag-colors .ag-fg-t{grid-column:1/-1;margin:0}
.ag-colors .ag-fo{flex-direction:column;gap:6px;padding:0;font-size:11px;text-align:center;color:var(--ag-muted)}
.ag-colors .ag-n{display:none}
.ag-colors .ag-cs{width:32px;height:32px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);transition:box-shadow .2s}
.ag-colors .ag-fo:hover .ag-cs{box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),0 0 0 2px var(--ag-bg),0 0 0 3px #a9a9a2}
.ag-colors .ag-fo.on{font-weight:600;color:var(--ag-ink)}
.ag-colors .ag-fo.on .ag-cs{box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),0 0 0 3px var(--ag-bg),0 0 0 5px var(--ag-accent)}
.ag-prov{height:42px;background:#fff}
.ag-res{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--ag-line)}
.ag-res-n{margin:0;font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ag-muted)}
.ag-res-n b{margin-right:12px;font:400 clamp(44px,4.4vw,64px)/.9 var(--ag-display);letter-spacing:0;text-transform:none;color:var(--ag-ink);vertical-align:-4px}
.ag-act{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ag-tagx{display:inline-flex;align-items:center;gap:10px;padding:9px 10px 9px 14px;border:0;background:var(--ag-ink);color:#fff;font:500 13px/1 inherit;cursor:pointer;transition:background .2s}
.ag-tagx span{font-size:16px;line-height:.8;opacity:.7}.ag-tagx:hover{background:var(--ag-accent-t)}
.ag-reset{padding:0 0 0 6px;border:0;background:none;color:var(--ag-accent-t);font-size:13px;font-weight:600;letter-spacing:.06em;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Scheda materiale: colonna foto fissa mentre si leggono dati e modulo */
@media(min-width:960px){
  .ag-sl-col{position:sticky;top:calc(var(--ag-hh,0px) + var(--ag-cbh,0px) + 24px);align-self:flex-start}
  .ag-sl .uk-slideshow-items{max-height:calc(100vh - var(--ag-nh,80px) - var(--ag-cbh,0px) - 48px)}
}
.ag-sl .uk-thumbnav{margin:0;padding:8px;gap:8px;background:rgba(22,24,25,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ag-sl .uk-thumbnav>*{padding-left:0}
.ag-sl .uk-thumbnav>*>*{opacity:.55;transition:opacity .2s}
.ag-sl .uk-thumbnav>.uk-active>*,.ag-sl .uk-thumbnav>*>*:hover{opacity:1}
.ag-sl .uk-thumbnav>.uk-active>*{box-shadow:0 0 0 2px var(--ag-accent)}
.ag-spec>li{margin:0!important;padding:12px 0;border-bottom:1px solid var(--ag-line)}
.ag-spec{border-top:1px solid var(--ag-line)}
.ag-spec .uk-grid{align-items:center}
.ag-spec>li:not(:has(.el-content)),.ag-spec>li:has(.el-content:empty){display:none}
.ag-req{padding:clamp(24px,3vw,40px);background:var(--ag-surface)}
.ag-req-h{margin-bottom:0!important}

/* Footer: filetto arancione, logo grande con claim, colonne, riga legale */
.ag-foot{position:relative}
.ag-foot::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--ag-accent),var(--ag-sand) 50%,var(--ag-accent))}
.ag-foot a{color:rgba(255,255,255,.88)}
.ag-foot a:hover{color:var(--ag-sand);text-decoration:none}
.ag-foot .uk-text-meta{color:var(--ag-accent)!important;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.ag-foot .uk-nav>li>a{padding:2px 0;font-family:var(--ag-body);font-size:15px;color:rgba(255,255,255,.88)}
.ag-foot .uk-nav>li>a:hover{color:var(--ag-sand)}
.ag-foot-claim{font-family:var(--ag-display)!important;font-style:italic;font-weight:400!important;color:rgba(233,231,226,.85)!important;max-width:16ch}
.ag-foot-g>*{padding-bottom:8px}
.ag-foot-b{margin-top:clamp(32px,4vw,56px)!important;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}
.ag-legale{color:rgba(255,255,255,.55);font-size:12px;line-height:1.7}
.ag-legale p{margin:0}
.ag-tbd{opacity:.8}

@media(prefers-reduced-motion:reduce){.ag-marq-in,.ag-cue span{animation:none}.ag-ss-img,.ag-ss-item,.ag-bento img,.ag-panel img,.ag-mc-ph img,.ag-uso-img img{transition:none}}

/* Scheda materiale: "Vedi anche" nella colonna di destra, sotto il modulo: 4 righe compatte (miniatura, nome, tipo) su due colonne e link alla famiglia */
.ag-rel{padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--ag-line)}
.ag-rel-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;margin-bottom:18px}
.ag-rel-h .ag-eyebrow{flex-basis:100%;margin:0}
.ag-rel-h .uk-h3{margin:0;font-family:var(--ag-display)}
.ag-rel-all{font-size:13px;font-weight:600;letter-spacing:.06em}
.ag-gm-rel{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
.ag-gm-rel .ag-mc{display:grid;grid-template-columns:76px minmax(0,1fr);column-gap:14px}
.ag-gm-rel .ag-mc-ph{grid-row:span 2}
.ag-gm-rel .ag-mc b{align-self:end;margin:0 0 2px;font-size:18px}
.ag-gm-rel .ag-mc small{align-self:start;font-size:12px}
.ag-gm-rel .ag-mc small~small{display:none}
@media(max-width:479px){.ag-gm-rel{grid-template-columns:1fr}}
