/* Editorial direction: square edges, open layouts and typographic hierarchy. */
:root { --radius:0px; --bg:#eef2f6; }
body *,body *::before,body *::after { border-radius:0!important; }
.modern-header { width:100%; max-width:none; top:0; border:0; border-bottom:1px solid var(--line); box-shadow:none; }
.modern-header .nav {min-height:84px; }
body[data-page=home] .modern-header { top:0; }
.modern-header .mega-shell { top:100%; left:max(24px,calc((100vw - 1292px)/2)); right:max(24px,calc((100vw - 1292px)/2)); box-shadow:0 20px 35px #0e2a4817; }
.mega-feature,.mega-callout,.mega-news>a { background:transparent; border-left:1px solid var(--line); }
.mega-tabs { background:#f3f6fa; }
.mega-tabs button { border-bottom:1px solid var(--line); }
.elad-hero-families { background:transparent; border:0; border-bottom:1px solid var(--line); }
.elad-hero-families a { padding-top:1.5rem; padding-bottom:1.5rem; }
body[data-page=home] .category-grid { display:block; border-top:1px solid #bdcce0; }
body[data-page=home] .category-card { display:grid; grid-template-columns:.45fr .9fr 1.5fr; gap:2rem; align-items:center; padding:2rem 0; border-bottom:1px solid #bdcce0; background:transparent; overflow:visible; }
body[data-page=home] .category-card:hover { transform:none; box-shadow:none; }
body[data-page=home] .category-top { padding:0; border:0; align-self:start; flex-direction:column; align-items:flex-start; gap:.5rem; }
body[data-page=home] .category-top .eyebrow { font:500 var(--fs-h3)/1.1 Sora,Arial,sans-serif; color:var(--deep); letter-spacing:-.04em; }
body[data-page=home] .category-card>img { width:100%; margin:0; height:180px; object-fit:contain; }
body[data-page=home] .category-card>div:last-child { padding:0; }
body[data-page=home] .category-card h3 { font-size:var(--fs-h2); min-height:0; }
body[data-page=home] .category-card p { font-size:var(--fs-body); max-width:440px; margin:1rem 0 1.5rem; }
body[data-page=home] .category-card .text-link { border:0; padding:0; justify-content:flex-start; gap:1.5rem; }
body[data-page=home] .engineering-panel { background:transparent; padding:2rem 0 0; border-top:1px solid #bdcce0; gap:3rem; }
.engineering-cards>a { background:transparent; }
.engineering-cards>a>div { padding:1.5rem 0; }
.engineering-cards img { height:230px; }
.product-card { background:transparent; border:0; border-top:1px solid var(--line); overflow:visible; }
.product-card:hover { transform:none; box-shadow:none; }
.product-picture { margin:1rem 0 0; background:transparent; }
.product-copy { padding:1.5rem 0; }
.product-picture .pill { top:0; left:0; border:0; background:transparent; padding-left:0; }
.save-product { top:15px; right:0; background:transparent; }
.card-tail { border-color:#c5d2e4; }
.process-tags span { border:0; border-left:2px solid #8aa9d4; padding-left:.5rem; }
.sector-strip { gap:0; }
.sector-strip a { background:transparent; border:0; border-top:1px solid var(--line); }
.info-grid article,.news-grid article,.sector-grid article { background:transparent; border:0; border-top:1px solid var(--line); box-shadow:none; }
.modern-footer { margin:4rem 0 0; }
.footer-contact>span { border:0; border-bottom:1px solid #6b85a7; }
@media(max-width:900px) {
 .modern-header .nav { padding:0 1.5rem; }
 body[data-page=home] .modern-header { top:0; }
 body[data-page=home] .category-card { grid-template-columns:100px 1fr 1.4fr; gap:1.5rem; }
 .modern-header .mega-shell { left:0; right:0; }
}
@media(max-width:600px) {
 .modern-header .nav { min-height:72px; padding:0 1rem; }
 body[data-page=home] .category-card { grid-template-columns:1fr 1.6fr; gap:1rem; padding:1.5rem 0; }
 body[data-page=home] .category-card>img { height:135px; }
 body[data-page=home] .category-card>div:last-child { grid-column:1/-1; }
 body[data-page=home] .category-card h3 { font-size:var(--fs-h3); }
 body[data-page=home] .category-card p { font-size:var(--fs-small); }
 body[data-page=home] .engineering-panel { gap:2rem; }
 .modern-footer { margin:2rem 0 0; }
 .mega-feature,.mega-callout,.mega-news>a { border-left:0; }
}

/* Mega menu (Prodotti, Servizi, Novità): indexed rail + numbered cell grid. */
.modern-header .mega-index { left:0; right:0; background:#f3f6f9; border:0; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; box-shadow:0 24px 40px #0e2a4814; }
.mega-index .mega-close { position:absolute; z-index:2; top:18px; right:24px; width:34px; height:34px; display:grid; place-items:center; font-size:var(--fs-h3); line-height:1; color:#66768b; background:transparent; border:0; }
.mega-index .mega-close:hover { color:var(--ink); background:#e2e8f0; }
.mega-index .mega-body { display:grid; grid-template-columns:minmax(260px,24%) 1fr; min-height:400px; }
.mega-index .mega-tabs { padding:0; gap:0; background:#e9eef4; border-right:1px solid #d5dde7; display:flex; flex-direction:column; }
.mega-index .mega-tabs::before { content:attr(data-label); padding:1.5rem 1.5rem; color:#66768b; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.128em; border-bottom:1px solid #d5dde7; }
.mega-index .mega-tabs button { position:relative; display:grid; grid-template-columns:72px 1fr 20px; align-items:center; gap:0; padding:0 1.5rem; min-height:60px; border:0; border-bottom:1px solid #d5dde7; border-left:2px solid transparent; background:transparent; box-shadow:none; color:var(--ink); text-align:left; transition:background .15s; }
.mega-index .mega-tabs button>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; color:#8b9cb4; letter-spacing:.096em; text-transform:uppercase; }
.mega-index .mega-tabs button>b { font-size:var(--fs-body); font-weight:450; letter-spacing:-.02em; }
.mega-index .mega-tabs button i { position:static; transform:none; font-style:normal; font-size:var(--fs-body); color:var(--blue); opacity:0; transition:opacity .15s,transform .15s; }
.mega-index .mega-tabs button:hover { background:#eef2f7; }
.mega-index .mega-tabs button[aria-selected=true] { background:#f3f6f9; border-left-color:var(--blue); color:var(--ink); box-shadow:none; }
.mega-index .mega-tabs button[aria-selected=true]>span { color:var(--blue); }
.mega-index .mega-tabs button[aria-selected=true] i { opacity:1; }
.mega-index .mega-panel { display:flex; flex-direction:column; gap:0; padding:1.5rem 2rem 1.5rem; }
.mega-index .mega-panel>.eyebrow { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; color:#66768b; letter-spacing:.128em; text-transform:uppercase; padding-right:3rem; }
.mega-index .mega-panel h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; line-height:1.15; margin:2rem 0 0; }
.mega-index .mega-panel>p { font-size:var(--fs-small); color:#3d4b5e; margin:.5rem 0 1.5rem; max-width:none; }
.mega-index .sub-links { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0; border-left:1px solid #d5dde7; border-top:1px solid #d5dde7; counter-reset:sub; background:#f3f6f9; }
.mega-index .sub-links a { counter-increment:sub; position:relative; display:flex; flex-direction:column; justify-content:center; gap:.5rem; padding:1rem 3rem 1rem 4rem; min-height:86px; border:0; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; font-size:var(--fs-body); color:var(--ink); transition:background .15s; }
.mega-index .sub-links a::before { content:counter(sub,decimal-leading-zero); position:absolute; left:18px; top:50%; transform:translateY(-50%); color:#8496b1; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.048em; text-transform:uppercase; }
.mega-index .sub-links a::after { content:'→'; position:absolute; right:18px; bottom:16px; color:#8496b1; font-size:var(--fs-body); line-height:1; transition:transform .15s,color .15s; }
.mega-index .sub-links a small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#4d5a6c; }
.mega-index .sub-links a:hover { background:#e9eef5; color:var(--ink); }
.mega-index .sub-links a:hover::after { color:var(--blue); transform:translateX(3px); }
.mega-index .sub-links:has(>a:last-child:nth-child(odd))::after { content:''; background:#dce3ec; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.mega-index .sub-links:has(>a:nth-child(9)) { grid-template-columns:repeat(3,1fr); }
.mega-index .sub-links:has(>a:nth-child(9)) a { min-height:70px; padding-right:2rem; }
.mega-index .sub-links:has(>a:nth-child(9))::after { display:none; }
.mega-index .mega-foot { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:auto; padding-top:1rem; border-top:1px solid #d5dde7; }
.mega-index .mega-panel>.sub-links { margin-bottom:1rem; }
.mega-index .mega-all,.mega-index .mega-cta { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.mega-index .mega-all:hover { color:var(--blue); }
.mega-index .mega-cta { display:inline-flex; align-items:center; gap:.75rem; border:1px solid #b9bfc7; padding:.75rem 1rem; transition:background .15s,border-color .15s; }
.mega-index .mega-cta span { font:var(--fs-body) Sora,sans-serif; letter-spacing:0; }
.mega-index .mega-cta:hover { background:var(--ink); border-color:var(--ink); color:#fff; }
@media(max-width:1100px) { .mega-index .sub-links:has(>a:nth-child(9)) { grid-template-columns:1fr 1fr; } }
@media(max-width:900px) {
 .mega-index .mega-body { grid-template-columns:210px 1fr; }
 .mega-index .mega-tabs button { grid-template-columns:1fr 18px; grid-template-rows:auto auto; padding:.75rem 1rem; gap:.25rem .25rem; }
 .mega-index .mega-tabs button>span { grid-column:1; }
 .mega-index .mega-tabs button>b { grid-column:1; font-size:var(--fs-small); }
 .mega-index .mega-tabs button i { grid-column:2; grid-row:1/3; }
 .mega-index .mega-panel { padding:1.5rem; }
 .mega-index .mega-panel h3 { margin-top:1.5rem; }
 .mega-index .sub-links a { padding-left:3rem; }
 .mega-index .sub-links a::before { left:13px; }
}
@media(max-width:600px) {
 .mega-index .mega-close { top:8px; right:10px; }
 .mega-index .mega-body { display:block; }
 .mega-index .mega-tabs { display:grid; grid-template-columns:1fr 1fr; border-right:0; }
 .mega-index .mega-tabs::before { grid-column:1/-1; padding:1rem 1rem; }
 .mega-index .mega-tabs button { min-height:66px; border-left:0; border-right:1px solid #d5dde7; }
 .mega-index .mega-tabs button[aria-selected=true] { box-shadow:inset 0 -2px 0 var(--blue); }
 .mega-index .mega-tabs button i { display:none; }
 .mega-index .mega-panel { padding:1.5rem 1rem; }
 .mega-index .mega-panel h3 { margin-top:1rem; font-size:var(--fs-h3); }
 .mega-index .sub-links,.mega-index .sub-links:has(>a:nth-child(9)) { grid-template-columns:1fr; }
 .mega-index .sub-links::after { display:none!important; }
 .mega-index .sub-links a { min-height:66px; }
 .mega-index .mega-foot { flex-direction:column; align-items:stretch; }
 .mega-index .mega-cta { justify-content:space-between; }
}

/* Catalogo: category tabs, subcategory chips, indexed product cards. */
.catalog-section { --cl:#d5dde7; }
.catalog-section .catalog-toolbar { margin-bottom:1.5rem; }
.cat-tabs { display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin:0; border:1px solid var(--cl); background:#eef2f6; }
.cat-tabs :is(button,a) { display:flex; flex-direction:column; align-items:flex-start; gap:.5rem; padding:1.5rem 1rem 1.5rem; min-height:78px; border:0; border-left:1px solid var(--cl); background:transparent; color:var(--ink); text-align:left; transition:background .15s; }
.cat-tabs :is(button,a):first-child { border-left:0; }
.cat-tabs :is(button,a)>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.cat-tabs :is(button,a)>b { font-size:var(--fs-small); font-weight:400; color:#4d5a6c; letter-spacing:-.01em; }
.cat-tabs :is(button,a):hover { background:#e9eef4; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page]) { background:#091f3d; color:#fff; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])>b { color:#fff; }
.sub-chips { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem 1rem; padding:.75rem 1rem; border:1px solid var(--cl); border-top:0; background:#e9eef4; }
.sub-chips>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
#sub-chips { display:flex; flex-wrap:wrap; gap:.5rem; }
#sub-chips :is(button,a) { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; padding:.5rem .75rem; border:1px solid #b9bfc7; background:#eef2f6; color:var(--ink); }
#sub-chips :is(button,a):hover { border-color:var(--ink); }
#sub-chips :is(button[aria-pressed=true],a[aria-current=page]) { background:#091f3d; border-color:#091f3d; color:#fff; }
.catalog-section .catalog-layout { display:block; margin-top:0; }
.catalog-section .results-bar { display:flex; justify-content:space-between; padding:1.5rem 0 .75rem; margin:0; border:0; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.catalog-section .catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; border-top:1px solid var(--cl); border-left:1px solid var(--cl); }
.catalog-grid .product-card { position:relative; background:#eef2f6; border:0; border-right:1px solid var(--cl); border-bottom:1px solid var(--cl); transition:background .15s; }
.catalog-grid .product-card:hover { background:#fff; transform:none; box-shadow:none; }
.catalog-grid .product-card>a { display:flex; flex-direction:column; height:100%; padding:1rem 1.5rem 1.5rem; }
.catalog-grid .card-head { display:flex; justify-content:space-between; align-items:center; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; text-transform:uppercase; color:#4d5a6c; margin-bottom:.75rem; }
.catalog-grid .card-head b { font:var(--fs-body) Sora,sans-serif; color:var(--ink); transition:transform .15s; }
.catalog-grid .product-card:hover .card-head b { transform:translate(2px,-2px); color:var(--blue); }
.catalog-grid .product-picture { margin:0; aspect-ratio:1; background:#eaeff5; padding:0; display:grid; place-items:center; overflow:hidden; }
.catalog-grid .product-picture img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; padding:0; transition:transform .3s; }
.catalog-grid .product-card:hover .product-picture img { transform:scale(1.03); }
.catalog-grid .product-copy { padding:1rem 0 0; display:flex; flex-direction:column; flex:1; }
.catalog-grid .product-copy h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.02em; line-height:1.25; margin:0; min-height:0; }
.catalog-grid .product-copy small { display:block; margin-top:.5rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.catalog-grid .card-tail { display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding:.75rem 2rem 0 0; border:0; border-top:1px dashed #b9bfc7; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.catalog-grid .product-copy h3+small { margin-bottom:1rem; }
.catalog-grid .card-tail em { font-style:normal; border:1px solid #9aa3ae; padding:.25rem .5rem; color:var(--ink); }
.catalog-grid .save-product { top:auto; bottom:21px; right:22px; width:26px; height:24px; padding:0; border:1px solid #9aa3ae; background:transparent; font-size:var(--fs-small); line-height:1; display:grid; place-items:center; color:var(--ink); }
.catalog-grid .save-product[aria-pressed=true] { background:#091f3d; color:#fff; border-color:#091f3d; }
@media(max-width:1100px) { .catalog-section .catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:900px) { .cat-tabs { grid-template-columns:repeat(3,1fr); } .cat-tabs :is(button,a):nth-child(4) { border-left:0; } .cat-tabs :is(button,a):nth-child(n+4) { border-top:1px solid var(--cl); } .catalog-section .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
 .cat-tabs { grid-template-columns:1fr 1fr; }
 .cat-tabs :is(button,a) { padding:.75rem; min-height:0; border-left:1px solid var(--cl)!important; border-top:1px solid var(--cl); }
 .cat-tabs :is(button,a):first-child { grid-column:1/-1; border-top:0; }
 .cat-tabs :is(button,a):nth-child(even) { border-left:0!important; }
 .sub-chips>span { width:100%; }
 .catalog-section .results-bar>span:last-child { display:none; }
 .catalog-grid .product-card>a { padding:.75rem; }
 .catalog-grid .product-copy h3 { font-size:var(--fs-small); }
 .catalog-grid .card-tail span { display:none; }
 .catalog-grid .save-product { bottom:15px; right:14px; }
 .catalog-grid .card-tail { justify-content:flex-end; }
 .cat-tabs :is(button,a):first-child { border-left:0!important; }
}


/* Scheda prodotto: hero bordato, righe etichetta/contenuto, specifiche indicizzate. */
.pd-hero { display:grid; grid-template-columns:1.05fr 1fr; background:#eef2f6;}
.pd-media { position:relative; display:grid; place-items:center; padding:3rem; background:#e9eef4; border-right:1px solid #d5dde7; min-height:460px; }
.pd-media img { width:100%; max-width:440px; aspect-ratio:1; object-fit:contain; mix-blend-mode:multiply; }
.pd-tag { position:absolute; top:22px; left:24px; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#4d5a6c; border:1px solid #c5cfdb; background:#eef2f6; padding:.25rem .5rem; text-transform:uppercase; }
.pd-info { display:flex; flex-direction:column; padding:2rem 2rem 2rem; }
.pd-meta { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.pd-info h1 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.04em; line-height:1.05; margin:1rem 0 1rem; }
.pd-tags { display:flex; flex-wrap:wrap; gap:.25rem; margin-bottom:1.5rem; }
.pd-tags span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#2f3e52; border:1px solid #b9c4d2; padding:.25rem .5rem; }
.pd-tags span+span { color:#66768b; }
.pd-info>p { font-size:var(--fs-body); line-height:var(--lh-text); color:#3d4b5e; max-width:56ch; margin:0; }
.pd-foot { margin-top:auto; padding-top:1.5rem; }
.pd-facts { display:grid; grid-template-columns:repeat(3,1fr); margin:0 0 1.5rem; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.pd-facts div { padding:.75rem 0; }
.pd-facts div+div { padding-left:1rem; border-left:1px solid #d5dde7; }
.pd-facts dt { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.pd-facts dd { margin:.25rem 0 0; font-size:var(--fs-small); }
.pd-actions { display:flex; flex-wrap:wrap; gap:.5rem; }
.pd-btn { display:inline-flex; align-items:center; gap:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; padding:1rem 1rem; border:1px solid #9fabba; background:transparent; color:var(--ink); transition:background .15s,border-color .15s,color .15s; }
.pd-btn:hover { border-color:var(--ink); }
.pd-btn[aria-pressed=true] { background:#e9eef4; }
.pd-btn-dark { background:var(--blue); border-color:var(--blue); color:#fff; }
.pd-btn-dark:hover { background:var(--deep); border-color:var(--deep); }
.pd-btn-dark span { font:var(--fs-body) Sora,sans-serif; }
.pd-row { display:grid; grid-template-columns:1fr 1fr; gap:3rem; padding-top:3rem; padding-bottom:4rem; border-top:1px solid #d5dde7; }
.pd-label .eyebrow { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#66768b; text-transform:uppercase; }
.pd-label h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.035em; margin:.75rem 0 .75rem; }
.pd-label p { font-size:var(--fs-small); color:#4d5a6c; max-width:34ch; }
.pd-count { display:inline-block; margin-top:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; border:1px solid #b9c4d2; padding:.5rem .5rem; color:#2f3e52; }
.pd-lead { font-size:var(--fs-lead); line-height:var(--lh-text); letter-spacing:-.01em; color:var(--ink); margin:0; }
.pd-band { background:#e9eef4; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.pd-band .pd-row { border-top:0; }
.pd-band+.pd-row { border-top:0; }
.pd-list { list-style:none; margin:0; padding:0; border:1px solid #d5dde7; background:#eef2f6; }
.pd-list li { display:grid; grid-template-columns:70px 1fr; align-items:center; min-height:52px; padding:0 1rem; font-size:var(--fs-small); border-bottom:1px solid #d5dde7; }
.pd-list li:last-child { border-bottom:0; }
.pd-list li>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; color:#8496b1; text-transform:uppercase; }
.pd-docs li { display:block; padding:0; }
.pd-docs a { display:grid; grid-template-columns:1fr auto 24px; grid-template-rows:auto auto; align-items:center; gap:.25rem 1rem; padding:1rem 1rem; transition:background .15s; }
.pd-docs a:hover { background:#fff; }
.pd-docs b { font-weight:500; font-size:var(--fs-small); }
.pd-docs small { grid-column:1; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#66768b; }
.pd-docs em { grid-column:2; grid-row:1/3; font:normal var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; color:#66768b; border:1px solid #c5cfdb; padding:.25rem .5rem; text-transform:uppercase; }
.pd-docs i { grid-column:3; grid-row:1/3; font-style:normal; color:var(--ink); }
#detail-specs .spec-table { width:100%; border-collapse:collapse; border:1px solid #d5dde7; background:#eef2f6; font-size:var(--fs-small); }
#detail-specs .spec-table tr:nth-child(even) { background:#edf1f6; }
#detail-specs .spec-table th,#detail-specs .spec-table td { padding:.75rem 1rem; border-bottom:1px solid #d5dde7; text-align:left; vertical-align:middle; }
#detail-specs .spec-table th { width:42%; border-right:1px solid #d5dde7; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#2f3e52; font-weight:400; }
#detail-specs .spec-table th i { font-style:normal; color:#9fabba; margin-right:.75rem; }
#detail-specs>p { font-size:var(--fs-small); color:#4d5a6c; border:1px solid #d5dde7; padding:1rem; margin:0; }
.pd-related { border-top:1px solid #d5dde7; }
.pd-pager { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; background:#eef2f6; }
.pd-pager a { display:grid; gap:.25rem; padding:28px max(24px,calc((100vw - 1292px)/2)); transition:background .15s; }
.pd-pager a:hover { background:#e9eef4; }
.pd-pager .next { text-align:right; border-left:1px solid #d5dde7; grid-column:2; }
.pd-pager small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.pd-pager b { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.02em; }
.pd-pager a>span { font-size:var(--fs-small); color:#66768b; }
body[data-page=prodotto] .modern-footer,body[data-page=scheda] .modern-footer { margin-top:0; }
@media(max-width:900px) {
 .pd-hero { grid-template-columns:1fr; }
 .pd-media { border-right:0; border-bottom:1px solid #d5dde7; min-height:0; padding:3rem 1.5rem 1.5rem; }
 .pd-media img { max-width:360px; }
 .pd-info { padding:1.5rem 1.5rem; }
 .pd-row { grid-template-columns:1fr; gap:1.5rem; padding-top:2rem; padding-bottom:3rem; }
}
@media(max-width:600px) {
 .pd-facts { grid-template-columns:1fr 1fr; }
 .pd-facts div:nth-child(3) { grid-column:1/-1; padding-left:0; border-left:0; border-top:1px solid #d5dde7; }
 .pd-actions .pd-btn { flex:1 1 100%; justify-content:space-between; }
 .pd-lead { font-size:var(--fs-body); }
 .pd-list li { grid-template-columns:58px 1fr; padding:.5rem .75rem; }
 #detail-specs .spec-table th { width:45%; }
 .pd-pager { grid-template-columns:1fr; }
 .pd-pager .next { grid-column:1; border-left:0; border-top:1px solid #d5dde7; }
 .pd-pager a { padding:1rem; }
 .pd-pager b { font-size:var(--fs-body); }
}

/* Catalogo: caricamento progressivo. */
.load-more { display:flex; flex-direction:column; align-items:center; gap:.75rem; padding:2rem 0 .5rem; }
.load-more>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
#load-more-btn { display:inline-flex; gap:.75rem; align-items:center; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; padding:1rem 1.5rem; border:1px solid #9fabba; background:transparent; color:var(--ink); }
#load-more-btn:hover { border-color:var(--ink); background:#e9eef4; }
.catalog-grid .product-card:not([hidden]) { animation:card-in .35s ease both; }
@keyframes card-in { from { opacity:0; transform:translateY(8px); } }
@media(prefers-reduced-motion:reduce) { .catalog-grid .product-card:not([hidden]) { animation:none; } }


/* Breadcrumb: fascia autonoma subito sotto l'header. */
.crumbs { background:#e9eef4; border-bottom:1px solid #d5dde7; }
.crumbs .breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:.25rem 1rem; margin:0 auto; padding-top:1rem; padding-bottom:1rem; font:var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.crumbs .breadcrumb a { color:#66768b; transition:color .15s; }
.crumbs .breadcrumb a:hover { color:var(--blue); }
.crumbs .breadcrumb>span { color:#9aa3ae; }
.crumbs .breadcrumb [aria-current=page] { color:var(--ink); }
.crumbs+.page-heading { padding-top:3rem; }
@media(max-width:600px) { .crumbs .breadcrumb { font-size:var(--fs-xs); gap:.25rem .5rem; padding-top:.75rem; padding-bottom:.75rem; } .crumbs+.page-heading { padding-top:1.5rem; } .crumbs+.pd-hero { margin-top:1.5rem; } }

/* Header: voci mono a sinistra, azioni a destra. */
@media(min-width:901px) {
 .modern-header { background:#eef2f6; border-bottom:1px solid #d5dde7; }
 .modern-header .nav { justify-content:flex-start; gap:3rem; min-height:4.5rem; }
 .modern-header .logo img { width:7.5rem; }
 .modern-header .nav nav { flex:1; gap:2rem; }
 .modern-header .nav nav>a,.modern-header .nav nav>button { position:relative; display:inline-flex; align-items:center; gap:.5rem; padding:.5rem 0; border:0; border-radius:0; background:transparent!important; font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:var(--ink); transition:color .15s; }
 .modern-header .nav nav>a::after,.modern-header .nav nav>button::after { content:''; position:absolute; left:0; right:0; bottom:-2px; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .2s; }
 .modern-header .nav nav>a:hover,.modern-header .nav nav>button:hover { color:var(--blue); }
 .modern-header .nav nav>button[aria-expanded=true],.modern-header .nav nav>a[aria-current=page] { color:var(--blue); }
 .modern-header .nav nav>button[aria-expanded=true]::after,.modern-header .nav nav>a[aria-current=page]::after { transform:scaleX(1); }
 .modern-header .chev { width:.375rem; height:.375rem; margin:0 0 .25rem .125rem; border-right:1.5px solid #8b9cb4; border-bottom:1.5px solid #8b9cb4; transform:rotate(45deg); transition:transform .2s,margin .2s; }
 .modern-header [aria-expanded=true] .chev { transform:rotate(-135deg); margin:.25rem 0 0 .125rem; border-color:var(--blue); }
 .modern-header .nav nav>.wishlist-link { margin-left:auto; gap:.5rem; padding:.625rem 1rem; border:1px solid #b9c4d2; letter-spacing:.12em; }
 .modern-header .nav nav>.wishlist-link::after { display:none; }
 .modern-header .nav nav>.wishlist-link:hover { border-color:var(--ink); color:var(--ink); }
 .modern-header .wishlist-link b { border-radius:0; min-width:1.25rem; padding:.125rem .375rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-align:center; text-transform:uppercase; }
 .modern-header .nav nav>.nav-cta { margin-left:-1rem; gap:.75rem; padding:.875rem 1.5rem; border:1px solid var(--blue); border-radius:0; background:var(--blue)!important; color:#fff; letter-spacing:.14em; }
 .modern-header .nav nav>.nav-cta::after { display:none; }
 .modern-header .nav nav>.nav-cta span { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
 .modern-header .nav nav>.nav-cta:hover { background:var(--deep)!important; border-color:var(--deep); color:#fff; transform:none; }
 .modern-header .nav nav>.nav-cta:hover span { transform:translateX(3px); }
}
@media(min-width:901px) and (max-width:1180px) {
 .modern-header .nav { gap:1.5rem; }
 .modern-header .nav nav { gap:1.25rem; }
 .modern-header .nav nav>a,.modern-header .nav nav>button { font-size:var(--fs-xs); letter-spacing:.08em; }
 .modern-header .wishlist-link span { display:none; }
 .modern-header .nav nav>.nav-cta { padding:.75rem 1rem; }
}
.modern-header .chev { display:inline-block; width:.375rem; height:.375rem; margin:0 0 .25rem .5rem; border-right:1.5px solid #8b9cb4; border-bottom:1.5px solid #8b9cb4; transform:rotate(45deg); }
@media(max-width:900px) {
 .modern-header .nav nav { border-radius:0; padding:.5rem 1rem 1rem; background:#eef2f6; }
 .modern-header .nav nav>a,.modern-header .nav nav>button { display:flex; align-items:center; justify-content:space-between; width:100%; padding:1rem .25rem; border:0; border-bottom:1px solid #d5dde7; border-radius:0; background:transparent; font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:var(--ink); text-align:left; }
 .modern-header .nav nav>.wishlist-link { justify-content:flex-start; gap:.5rem; }
 .modern-header .wishlist-link b { border-radius:0; background:var(--blue); color:#fff; padding:.125rem .375rem; }
 .modern-header .nav nav>.nav-cta { justify-content:space-between; margin-top:1rem; padding:1rem 1.25rem; border:0; color:#fff; background:var(--blue); }
 .modern-header .mobile-toggle { border-radius:0; font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; }
}

/* Barra di avanzamento scroll: invisibile in cima, si riempie scorrendo. */
.scroll-progress { position:absolute; left:0; right:0; bottom:-1px; height:2px; pointer-events:none; opacity:0; transition:opacity .25s; z-index:2; }
.scroll-progress.on { opacity:1; }
.scroll-progress span { display:block; height:100%; background:var(--blue); transform:scaleX(var(--p,0)); transform-origin:left; will-change:transform; }

/* Ombra dell'header dopo lo scroll (stessa famiglia di quella del mega menu). */
.modern-header { transition:box-shadow .25s; }
.modern-header.is-scrolled { box-shadow:0 10px 28px #0e2a4814; }

/* Wishlist: tabella prodotti, sezione Sales e form (markup Gravity Forms). */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.wl-list { padding-top:1.5rem; padding-bottom:4rem; }
.wl-table { width:100%; border-collapse:collapse; border:1px solid #d5dde7; background:#eef2f6; }
.wl-table th { padding:1rem 1.5rem; border-bottom:1px solid #d5dde7; background:#e9eef4; font:400 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; text-align:left; }
.wl-table td { padding:1rem 1.5rem; border-bottom:1px solid #d5dde7; vertical-align:middle; }
.wl-table th+th,.wl-table td+td { border-left:1px solid #d5dde7; }
.wl-table th:first-child,.wl-photo { width:8.5rem; }
.wl-table th:nth-child(3) { width:11rem; }
.wl-table th:nth-child(4) { width:10rem; }
.wl-table th:last-child { width:4rem; }
.wl-photo img,.wl-photo>span { display:grid; place-items:center; width:5.5rem; height:5.5rem; object-fit:contain; background:#e9eef4; border:1px solid #d5dde7; mix-blend-mode:multiply; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; color:#66768b; text-transform:uppercase; }
.wl-name a { display:block; font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; color:var(--ink); }
.wl-name a:hover { color:var(--blue); }
.wl-name small,.wl-cat small { display:block; margin-top:.5rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.wl-cat small { margin:0 0 .25rem; }
.wl-cat span { font-size:var(--fs-small); color:#3d4b5e; }
.wl-qty { display:inline-grid; grid-template-columns:2.25rem 3.5rem 2.25rem; border:1px solid #b9c4d2; background:#fff; }
.wl-qty button { height:2.25rem; border:0; background:#e9eef4; font-size:var(--fs-body); color:var(--ink); }
.wl-qty button:hover { background:#dce3ec; }
.wl-qty input { width:100%; height:2.25rem; border:0; border-left:1px solid #b9c4d2; border-right:1px solid #b9c4d2; text-align:center; font-size:var(--fs-body); background:#fff; -moz-appearance:textfield; }
.wl-qty input::-webkit-inner-spin-button,.wl-qty input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.wl-remove { text-align:center; }
.wl-remove button { width:2rem; height:2rem; border:0; background:transparent; font-size:var(--fs-lead); color:#4d5a6c; }
.wl-remove button:hover { color:#c0392b; background:#e9eef4; }
.wl-foot { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 1.5rem; border:1px solid #d5dde7; border-top:0; background:#e9eef4; }
.wl-foot>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.wl-foot>div { display:flex; flex-wrap:wrap; gap:.5rem; }
.wl-btn { display:inline-flex; align-items:center; gap:.75rem; padding:.875rem 1.25rem; border:1px solid #9fabba; background:transparent; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.wl-btn:hover { border-color:var(--ink); }
.wl-btn-dark { background:var(--blue); border-color:var(--blue); color:#fff; }
.wl-btn-dark:hover { background:var(--deep); border-color:var(--deep); }
.wl-empty { padding:3rem; border:1px solid #d5dde7; background:#eef2f6; }
.wl-empty h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.035em; margin:1rem 0 .5rem; }
.wl-empty p { max-width:50ch; margin:0 0 1.5rem; }
.wl-sales { background:#e9eef4; border-top:1px solid #d5dde7; padding:4rem 0 5rem; }
.wl-sales .eyebrow { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.wl-sales-head { display:grid; grid-template-columns:12rem 1fr; gap:1.5rem; padding-bottom:3rem; margin-bottom:3rem; border-bottom:1px solid #d5dde7; }
.wl-sales-head h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; margin:0 0 1rem; }
.wl-sales-head p { max-width:52ch; margin:0; font-size:var(--fs-body); color:#3d4b5e; }
.wl-sales-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1fr); gap:4rem; align-items:start; }
.wl-contact { display:grid; grid-template-columns:5.5rem 1fr; gap:1.5rem; align-items:center; margin:1rem 0 3rem; padding:1.5rem; border:1px solid #d5dde7; background:#eef2f6; }
.wl-contact-tag { display:grid; place-items:center; aspect-ratio:1; border:1px solid #c5cfdb; background:repeating-linear-gradient(0deg,transparent 0 17px,#dce3ec 17px 18px),repeating-linear-gradient(90deg,transparent 0 17px,#dce3ec 17px 18px); font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#2f3e52; }
.wl-contact b { display:block; font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; }
.wl-contact small { display:block; margin-top:.25rem; font-size:var(--fs-small); color:#4d5a6c; }
.wl-contact p { margin:1rem 0 0; font:var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.048em; color:#2f3e52; text-transform:uppercase; }
.wl-contact a:hover { color:var(--blue); }
.wl-includes { list-style:none; margin:1rem 0 0; padding:0; }
.wl-includes li { display:grid; grid-template-columns:3.5rem 1fr; padding:1rem 0; border-bottom:1px solid #c5cfdb; font-size:var(--fs-body); }
.wl-includes span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; color:#66768b; padding-top:.25rem; text-transform:uppercase; }
/* Gravity Forms: vale per il markup di prova e per il form reale dentro .wl-sales. */
:is(.wl-sales,.gf-skin) .gform_wrapper { border:1px solid #d5dde7; background:#eef2f6; }
:is(.wl-sales,.gf-skin) .gform_wrapper form { margin:0; }
:is(.wl-sales,.gf-skin) .gform_fields { display:block; }
:is(.wl-sales,.gf-skin) .gfield { display:grid; grid-template-columns:9rem 1fr; border-bottom:1px solid #d5dde7; margin:0; padding:0; }
:is(.wl-sales,.gf-skin) .gfield_label { display:block; padding:1.25rem 1.25rem; border-right:1px solid #d5dde7; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
:is(.wl-sales,.gf-skin) .gfield_required { color:var(--blue); margin-left:.25rem; }
:is(.wl-sales,.gf-skin) .ginput_container { display:flex; }
:is(.wl-sales,.gf-skin) .ginput_container input:not([type=checkbox]),:is(.wl-sales,.gf-skin) .ginput_container select,:is(.wl-sales,.gf-skin) .ginput_container textarea { width:100%; padding:1rem 1.25rem; border:0; background:transparent; font-size:var(--fs-body); color:var(--ink); outline:0; transition:background .15s; }
:is(.wl-sales,.gf-skin) .ginput_container textarea { min-height:10rem; resize:vertical; line-height:var(--lh-text); }
:is(.wl-sales,.gf-skin) .ginput_container input:focus,:is(.wl-sales,.gf-skin) .ginput_container select:focus,:is(.wl-sales,.gf-skin) .ginput_container textarea:focus { background:#fff; box-shadow:inset 2px 0 0 var(--blue); }
:is(.wl-sales,.gf-skin) .ginput_container ::placeholder { color:#8b9cb4; }
:is(.wl-sales,.gf-skin) .gfield_visibility_hidden { display:none; }
:is(.wl-sales,.gf-skin) .gfield--type-consent { display:block; padding:1rem 1.25rem; }
:is(.wl-sales,.gf-skin) .ginput_container_consent { align-items:flex-start; gap:.75rem; font-size:var(--fs-small); color:#3d4b5e; }
:is(.wl-sales,.gf-skin) .ginput_container_consent input { margin-top:.25rem; accent-color:var(--blue); }
:is(.wl-sales,.gf-skin) .gfield_error { background:#fdf1f0; }
:is(.wl-sales,.gf-skin) .gfield_error .gfield_label,:is(.wl-sales,.gf-skin) .gfield_error .gfield_consent_label { color:#c0392b; }
:is(.wl-sales,.gf-skin) .gform_footer { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem; margin:0; padding:1.25rem; }
.wl-form-note { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
:is(.wl-sales,.gf-skin) .gform_button { display:inline-flex; align-items:center; gap:.75rem; padding:1rem 1.5rem; border:1px solid var(--blue); background:var(--blue); color:#fff; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; cursor:pointer; }
:is(.wl-sales,.gf-skin) .gform_button span { font:var(--fs-body) Sora,sans-serif; }
:is(.wl-sales,.gf-skin) .gform_button:hover { background:var(--deep); border-color:var(--deep); }
:is(.wl-sales,.gf-skin) .gform_confirmation_message { padding:1.25rem; border-top:1px solid #d5dde7; font-size:var(--fs-small); }
:is(.wl-sales,.gf-skin) .gform_confirmation_message p { margin:0 0 .5rem; }
:is(.wl-sales,.gf-skin) .gform_confirmation_message a { color:var(--blue); }
@media(max-width:900px) {
 .wl-sales-head,.wl-sales-grid { grid-template-columns:1fr; gap:1.5rem; }
 .wl-sales-grid { gap:3rem; }
 .wl-table thead { display:none; }
 .wl-table,.wl-table tbody { display:block; }
 .wl-table tr { display:grid; grid-template-columns:5.5rem 1fr auto; grid-template-areas:"ph nm rm" "ph ct ct" "qt qt qt"; gap:.5rem 1rem; padding:1rem; border-bottom:1px solid #d5dde7; }
 .wl-table td { padding:0; border:0!important; width:auto!important; }
 .wl-photo { grid-area:ph; } .wl-name { grid-area:nm; } .wl-cat { grid-area:ct; } .wl-remove { grid-area:rm; } .wl-table td:nth-child(4) { grid-area:qt; }
 .wl-photo img,.wl-photo>span { width:5.5rem; height:5.5rem; }
 .wl-name a { font-size:var(--fs-body); }
 .wl-cat small { display:inline; margin-right:.5rem; }
}
@media(max-width:600px) {
 .wl-sales { padding:3rem 0; }
 :is(.wl-sales,.gf-skin) .gfield { grid-template-columns:1fr; }
 :is(.wl-sales,.gf-skin) .gfield_label { border-right:0; padding:1rem 1rem 0; }
 :is(.wl-sales,.gf-skin) .ginput_container input:not([type=checkbox]),:is(.wl-sales,.gf-skin) .ginput_container select,:is(.wl-sales,.gf-skin) .ginput_container textarea { padding:.5rem 1rem 1rem; }
 :is(.wl-sales,.gf-skin) .gform_button { width:100%; justify-content:space-between; }
 .wl-foot>div,.wl-foot .wl-btn { width:100%; justify-content:space-between; }
 .wl-contact { grid-template-columns:1fr; }
 .wl-contact-tag { width:5.5rem; }
}

/* Mega menu Supporto: tre link al portale esterno. */
.mega-compact .mega-body { display:block; min-height:0; }
.mega-compact .mega-panel h3 { margin-top:1.5rem; }
.mega-compact .sub-links { grid-template-columns:repeat(3,1fr); margin-bottom:0!important; }
.mega-compact .sub-links::after { display:none!important; }
.mega-compact .sub-links a::after { content:'\2197\FE0E'; }
@media(max-width:600px) { .mega-compact .sub-links { grid-template-columns:1fr; } .mega-compact .mega-panel { padding:1.5rem 1rem; } }

/* Header: link allo shop esterno accanto alla wishlist. */
@media(min-width:901px) {
 .modern-header .nav nav>.shop-link { margin-left:auto; gap:.5rem; padding:.625rem 1rem; border:1px solid #b9c4d2; letter-spacing:.12em; }
 .modern-header .nav nav>.shop-link::after { display:none; }
 .modern-header .nav nav>.shop-link span { font:var(--fs-small) Sora,sans-serif; color:#66768b; transition:transform .2s,color .2s; }
 .modern-header .nav nav>.shop-link:hover { border-color:var(--ink); color:var(--ink); }
 .modern-header .nav nav>.shop-link:hover span { color:var(--blue); transform:translate(2px,-2px); }
 .modern-header .nav nav>.shop-link+.wishlist-link { margin-left:-1.25rem; }
}
@media(min-width:901px) and (max-width:1180px) { .modern-header .nav nav>.shop-link { padding:.625rem .75rem; } .modern-header .nav nav>.shop-link+.wishlist-link { margin-left:-.75rem; } }
@media(max-width:900px) { .modern-header .nav nav>.shop-link { justify-content:space-between; } }

/* Contatti: form Gravity Forms nello stile della wishlist. */
.contact-gf>.eyebrow { display:block; margin-bottom:1rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.gf-skin .wl-form-note { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
@media(max-width:600px) {
 .gf-skin .gfield { grid-template-columns:1fr; }
 .gf-skin .gfield_label { border-right:0; padding:1rem 1rem 0; }
 .gf-skin .ginput_container input:not([type=checkbox]),.gf-skin .ginput_container select,.gf-skin .ginput_container textarea { padding:.5rem 1rem 1rem; }
 .gf-skin .gform_button { width:100%; justify-content:space-between; }
}

/* CTA header: resta leggibile anche sulla pagina Contatti (aria-current). */
.modern-header .nav nav>.nav-cta[aria-current=page],.modern-header .nav nav>.nav-cta[aria-current=page]:hover { color:#fff; background:var(--deep)!important; border-color:var(--deep); }
.modern-header .nav nav>.nav-cta[aria-current=page]::after { display:none; }

/* ===== Sistema bottoni unificato =====
   Tutti i bottoni: altezza 3rem, padding 0 1.5rem, Mono 10px maiuscolo, freccia 15px.
   Varianti: pieno blu (.btn, .nav-cta, .pd-btn-dark, .wl-btn-dark, .gform_button),
   outline (.pd-btn, .wl-btn, .mega-cta, #load-more-btn, header shop/wishlist), bianco (.btn.white). */
.btn,.pd-btn,.wl-btn,.mega-cta,#load-more-btn,:is(.wl-sales,.gf-skin) .gform_button,.modern-header .nav nav>.nav-cta,.elad-hero-actions .btn {
 display:inline-flex!important; align-items:center; justify-content:center; gap:.75rem!important;
 height:3rem; min-height:3rem; padding:0 1.5rem!important; box-sizing:border-box;
 border:1px solid transparent; border-radius:0!important;
 font:500 var(--fs-label)/1 'Space Grotesk',system-ui,sans-serif!important; text-transform:uppercase; letter-spacing:.112em!important; white-space:nowrap;
 transition:background .15s,border-color .15s,color .15s; transform:none!important;
}
.btn>span,.pd-btn>span,.wl-btn>span,.mega-cta>span,#load-more-btn>span,:is(.wl-sales,.gf-skin) .gform_button>span,.modern-header .nav nav>.nav-cta>span,.elad-hero-actions .btn>span { font:var(--fs-body)/1 Sora,sans-serif!important; letter-spacing:0; transition:transform .2s; }
.btn:hover>span,.pd-btn:hover>span,.wl-btn:hover>span,.mega-cta:hover>span,:is(.wl-sales,.gf-skin) .gform_button:hover>span,.modern-header .nav nav>.nav-cta:hover>span { transform:translateX(3px); }
/* pieno blu */
.btn,.pd-btn-dark,.wl-btn-dark,:is(.wl-sales,.gf-skin) .gform_button,.modern-header .nav nav>.nav-cta { background:var(--blue)!important; border-color:var(--blue)!important; color:#fff!important; }
.btn:hover,.pd-btn-dark:hover,.wl-btn-dark:hover,:is(.wl-sales,.gf-skin) .gform_button:hover,.modern-header .nav nav>.nav-cta:hover { background:var(--deep)!important; border-color:var(--deep)!important; }
/* outline */
.pd-btn:not(.pd-btn-dark),.wl-btn:not(.wl-btn-dark),.mega-cta,#load-more-btn { background:transparent; border-color:#9fabba; color:var(--ink); }
.pd-btn:not(.pd-btn-dark):hover,.wl-btn:not(.wl-btn-dark):hover,.mega-cta:hover,#load-more-btn:hover { background:#e9eef4; border-color:var(--ink); color:var(--ink); }
/* bianco su fondo scuro */
.btn.white { background:#fff!important; border-color:#fff!important; color:var(--deep)!important; }
.btn.white:hover { background:#e9eef4!important; border-color:#e9eef4!important; }
/* header: shop e wishlist outline alla stessa altezza */
@media(min-width:901px) {
 .modern-header .nav nav>.shop-link,.modern-header .nav nav>.wishlist-link { height:3rem; padding:0 1.25rem!important; display:inline-flex; align-items:center; gap:.5rem; font:500 var(--fs-label)/1 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; border-color:#9fabba; text-transform:uppercase; }
 .modern-header .nav nav>.shop-link:hover,.modern-header .nav nav>.wishlist-link:hover { background:#e9eef4!important; border-color:var(--ink); }
 .modern-header .nav nav>.shop-link span { font:var(--fs-small)/1 Sora,sans-serif; }
}
@media(min-width:901px) and (max-width:1180px) { .modern-header .nav nav>.nav-cta,.modern-header .nav nav>.shop-link,.modern-header .nav nav>.wishlist-link { padding:0 1rem!important; } }
@media(max-width:900px) { .modern-header .nav nav>.nav-cta { width:100%; justify-content:space-between; margin-top:1rem; } }
@media(max-width:600px) { .btn,.pd-btn,.wl-btn,.mega-cta,:is(.wl-sales,.gf-skin) .gform_button { white-space:normal; } }

/* Pixel decorativi (stesso linguaggio della hero video). Uso: <div class="px" data-px="col,righe,densità"> */
.px-host { position:relative; }
.px { --s:.625rem; --g:.1875rem; display:grid; width:max-content; grid-template-columns:repeat(var(--c,6),var(--s)); gap:var(--g); color:var(--blue); pointer-events:none; }
.px i { width:var(--s); height:var(--s); background:currentColor; opacity:var(--o,.5); }
.px i.off { opacity:0; }
.px i.hot { color:#8cc8ec; }
.px i.blink { animation:px-blink var(--du,4s) var(--dl,0s) ease-in-out infinite; }
@keyframes px-blink { 0%,100% { opacity:var(--o,.5); } 45% { opacity:.05; } 60% { opacity:.95; } }
@media(prefers-reduced-motion:reduce) { .px i.blink { animation:none; } }
.px--heading { position:absolute; top:3rem; right:max(1.5rem,var(--gutter)); --s:.875rem; --g:.25rem; }
.px--cover { position:absolute; z-index:2; top:1.5rem; right:calc(var(--gutter) + 1.5rem); --s:.75rem; color:#fff; filter:drop-shadow(0 1px 6px #0b1e3c55); }
.px--cover i.hot { color:var(--blue); }
.px--inline { margin-top:1.5rem; --s:.5rem; --g:.1875rem; }
.section-title:has(>.px--title) { align-items:flex-end; }
.px--title { --s:.5rem; --g:.1875rem; margin-bottom:.75rem; }
.px--cta { position:absolute; right:3rem; top:1.5rem; color:#8cc8ec; opacity:.8; }
.px--cta i.hot { color:#fff; }
.project-cta.px-host>.btn { position:relative; z-index:1; }
@media(max-width:900px) { .px--heading { --s:.625rem; top:2rem; opacity:.7; } .px--title { display:none; } .px--cta { right:1.5rem; bottom:1.5rem; --s:.5rem; } }
@media(max-width:600px) { .px--heading { --s:.4375rem; --g:.125rem; top:1.5rem; } .px--cover { --s:.4375rem; top:1rem; right:2.25rem; } .px--cta { display:none; } }

/* Pixel nel titolo: varianti per template. */
.px--heading[data-shape=wave] i:not(.off) { opacity:max(var(--o,.5),.6); }
.pd-info>.px--heading { top:2.25rem; right:2.5rem; --s:.5rem; --g:.1875rem; }
@media(max-width:900px) { .pd-info>.px--heading { top:1.75rem; right:1.5rem; } }

/* Scheda prodotto: precedente/successivo allineati al gutter del contenuto. */
.pd-pager a { padding:1.5rem var(--gutter); }
.pd-pager .prev { padding-right:1.5rem; }
.pd-pager .next { padding-left:1.5rem; }
@media(max-width:600px) { .pd-pager a,.pd-pager .prev,.pd-pager .next { padding:1.25rem var(--gutter); } }

/* Scheda prodotto: barra di collegamenti rapidi sotto l'immagine. */
.pd-jump { display:flex; flex-wrap:wrap; align-items:stretch; margin-top:0; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; background:#eef2f6; padding:0 var(--gutter); }
.pd-jump>span { display:flex; align-items:center; padding:1rem 1.5rem 1rem 0; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8b9cb4; }
.pd-jump a { display:flex; align-items:center; gap:.75rem; padding:1rem 1.5rem; border-left:1px solid #d5dde7; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); transition:background .15s,color .15s; }
.pd-jump a:last-child { border-right:1px solid #d5dde7; }
.pd-jump a i { font-style:normal; color:#8b9cb4; }
.pd-jump a b { font:var(--fs-small) Sora,sans-serif; color:#8b9cb4; transition:transform .2s,color .2s; }
.pd-jump a:hover { background:#e9eef4; color:var(--blue); }
.pd-jump a:hover b { color:var(--blue); transform:translateY(2px); }
.pd-jump+.pd-row { border-top:0; }
@media(max-width:600px) { .pd-jump { padding:0; } .pd-jump>span { display:none; } .pd-jump a { flex:1; justify-content:center; padding:.875rem .5rem; gap:.375rem; } .pd-jump a:first-of-type { border-left:0; } .pd-jump a:last-child { border-right:0; } .pd-jump a i { display:none; } }

/* La barra utility resta nitida sopra lo sfondo sfocato del mega menu. */
.utility { position:relative; z-index:61; }

/* Home: la hero occupa lo schermo meno utility e header. --chrome-h è calcolata da site.js. */
.fullscreen-hero .video-stage { min-height:calc(100vh - var(--chrome-h,7rem)); min-height:calc(100dvh - var(--chrome-h,7rem))!important; }

/* Footer bottom: dati societari e link legali. */
.modern-footer .footer-bottom { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.footer-legal { display:inline-flex; gap:.5rem; align-items:center; }
.footer-legal a { color:#93aac8; }
.footer-legal a:hover { color:#fff; }
@media(max-width:600px) { .modern-footer .footer-bottom { flex-direction:column; align-items:flex-start; gap:.5rem; } .modern-footer .footer-bottom>span:nth-child(2) { display:inline; } }

.modern-footer .footer-bottom { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:1rem; }
.modern-footer .footer-bottom>span:nth-child(2) { text-align:center; }
.modern-footer .footer-bottom>.footer-legal { justify-self:end; }
@media(max-width:600px) { .modern-footer .footer-bottom { grid-template-columns:1fr; } .modern-footer .footer-bottom>span:nth-child(2) { text-align:left; } .modern-footer .footer-bottom>.footer-legal { justify-self:start; } }

/* Footer: firma con banda di pixel animata a tutta larghezza (al posto di "ELAD" e del blocco pixel). */
.footer-signature { display:grid!important; grid-template-columns:auto 1fr; align-items:end; gap:3rem; padding-top:3rem; padding-bottom:2rem; }
.footer-signature>span:first-child { font-size:var(--fs-hero); font-weight:400; line-height:1.05; letter-spacing:-.04em; color:#7798c1; }
.px--band { width:100%; --s:.75rem; --g:.25rem; color:#409ed8; justify-content:space-between; }
.px--band i { opacity:calc(var(--o,.5) * .9); }
.px--band i.hot { color:#8cc8ec; }
@media(max-width:900px) { .footer-signature { grid-template-columns:1fr; gap:1.5rem; } .px--band { --s:.5rem; --g:.1875rem; } }

/* Footer: titoli colonna in mono. */
.modern-footer h4 { font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8cc8ec; margin-bottom:1rem; }

/* ===== Home: sezioni sotto la hero nel linguaggio del sito (celle, mono, grigio-azzurro). ===== */
body[data-page=home] main>.section { padding-top:5rem; padding-bottom:0; }
body[data-page=home] main>.section:last-of-type { padding-bottom:5rem; }
body[data-page=home] .section-title { align-items:flex-end; margin-bottom:2rem; padding-bottom:1.5rem; border-bottom:1px solid #d5dde7; }
body[data-page=home] .section-title h2,body[data-page=home] .engineering-intro h2,body[data-page=home] .daq-banner h2,body[data-page=home] .company-block h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; }
body[data-page=home] main .eyebrow { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
body[data-page=home] main .eyebrow::before { content:'— '; }
body[data-page=home] .section-title .text-link { font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); border:1px solid #9fabba; height:3rem; padding:0 1.25rem; display:inline-flex; align-items:center; gap:.75rem; }
body[data-page=home] .section-title .text-link:hover { border-color:var(--ink); background:#e9eef4; }

/* Famiglie */
.family-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.family-card { display:flex; flex-direction:column; padding:1.25rem 1.5rem 1.5rem; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; background:#eef2f6; transition:background .2s; }
.family-card:hover { background:#fff; }
.fc-head { display:grid; grid-template-columns:1fr auto auto; gap:1rem; align-items:center; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.fc-head span:first-child { color:var(--blue); }
.fc-head b { font:var(--fs-body) Sora,sans-serif; color:var(--ink); transition:transform .2s,color .2s; }
.family-card:hover .fc-head b { transform:translate(2px,-2px); color:var(--blue); }
.fc-pic { margin:1.25rem 0 1.5rem; aspect-ratio:4/3; background:#e9eef4; display:grid; place-items:center; overflow:hidden; }
.fc-pic img { width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; transition:transform .5s; }
.family-card:hover .fc-pic img { transform:scale(1.04); }
.family-card h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:0 0 .5rem; }
.family-card p { font-size:var(--fs-small); color:#4d5a6c; margin:0 0 1.5rem; }
.fc-link { margin-top:auto; display:flex; justify-content:space-between; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.fc-link span { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
.family-card:hover .fc-link span { transform:translateX(3px); color:var(--blue); }

/* Competenze */
body[data-page=home] .engineering-panel { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:0; padding:0; background:#e9eef4; border:1px solid #d5dde7; }
body[data-page=home] .engineering-intro { padding:3rem; border-right:1px solid #d5dde7; display:flex; flex-direction:column; align-items:flex-start; }
body[data-page=home] .engineering-intro h2 { margin:1.5rem 0 1rem; }
body[data-page=home] .engineering-intro p { max-width:36ch; margin:0 0 2rem; }
body[data-page=home] .process-tags { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:auto; padding-top:2rem; }
body[data-page=home] .process-tags span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; text-transform:uppercase; border:1px solid #b9c4d2; padding:.5rem .75rem; color:#2f3e52; }
body[data-page=home] .engineering-cards { display:grid; grid-template-columns:1fr 1fr; gap:0; }
body[data-page=home] .engineering-cards>a { display:flex; flex-direction:column; background:#eef2f6; transition:background .2s; }
body[data-page=home] .engineering-cards>a+a { border-left:1px solid #d5dde7; }
body[data-page=home] .engineering-cards>a:hover { background:#fff; }
body[data-page=home] .engineering-cards img { height:auto; aspect-ratio:4/3; width:100%; object-fit:cover; }
body[data-page=home] .engineering-cards>a>div { padding:1.5rem; display:flex; flex-direction:column; flex:1; }
body[data-page=home] .engineering-cards small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
body[data-page=home] .engineering-cards h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:.75rem 0 .5rem; }
body[data-page=home] .engineering-cards p { font-size:var(--fs-small); margin:0 0 1.5rem; }
body[data-page=home] .engineering-cards span { margin-top:auto; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }

/* Prodotti in evidenza: stesse card del catalogo */
body[data-page=home] .home-featured { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }

/* Configuratore */
body[data-page=home] .daq-banner { border-radius:0; background:#091f3d; padding:3.5rem; gap:3rem; position:relative; overflow:hidden; }
body[data-page=home] .daq-banner .eyebrow { color:#8cc8ec; }
body[data-page=home] .daq-banner h2 { color:#fff; margin:1.5rem 0 1rem; }
body[data-page=home] .daq-banner p { color:#aec0d8; max-width:44ch; margin-bottom:2rem; }
body[data-page=home] .module-diagram { border-radius:0; border:1px solid #ffffff2a; background:#ffffff08; }
body[data-page=home] .module-diagram>div>* { border-radius:0; }

/* Azienda */
body[data-page=home] .company-block { display:grid; grid-template-columns:1fr 1fr; gap:0; border:1px solid #d5dde7; background:#eef2f6; align-items:stretch; }
body[data-page=home] .company-visual { position:relative; margin:0; min-height:30rem; border-right:1px solid #d5dde7; background:#e9eef4; }
body[data-page=home] .company-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:0; }
body[data-page=home] .company-visual>span { position:absolute; left:0; bottom:0; padding:1.25rem 1.5rem; background:#091f3d; color:#fff; font-size:var(--fs-lead); line-height:1.25; letter-spacing:-.02em; border-radius:0; box-shadow:none; }
body[data-page=home] .company-block>div:last-child { padding:3rem; display:flex; flex-direction:column; align-items:flex-start; }
body[data-page=home] .company-block h2 { margin:1.5rem 0 1rem; }
body[data-page=home] .company-block p { max-width:46ch; }
.home-stats { display:grid; grid-template-columns:repeat(3,1fr); width:100%; margin:1.5rem 0; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.home-stats div { padding:1rem 0; }
.home-stats div+div { padding-left:1.5rem; border-left:1px solid #d5dde7; }
.home-stats dt { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.home-stats dd { margin:.25rem 0 0; font-size:var(--fs-stat); font-weight:500; letter-spacing:-.04em; color:var(--blue); line-height:1; }
body[data-page=home] .company-links { width:100%; margin-top:auto; padding-top:1.5rem; }
body[data-page=home] .company-links a { display:flex; justify-content:space-between; padding:.875rem 0; border-bottom:1px solid #d5dde7; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
body[data-page=home] .company-links a:hover { color:var(--blue); }

/* Settori */
body[data-page=home] .sector-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
body[data-page=home] .sector-strip a { position:relative; display:flex; flex-direction:column; justify-content:space-between; min-height:11rem; padding:1.5rem; background:#eef2f6; border:0; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; transition:background .2s; }
body[data-page=home] .sector-strip a:hover { background:#091f3d; color:#fff; }
body[data-page=home] .sector-strip span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#8b9cb4; text-transform:uppercase; }
body[data-page=home] .sector-strip span::before { content:'SEC.'; }
body[data-page=home] .sector-strip h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:0; padding-right:2rem; }
body[data-page=home] .sector-strip b { position:absolute; top:1.25rem; right:1.5rem; font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
body[data-page=home] .sector-strip a:hover b { transform:translate(2px,-2px); color:#8cc8ec; }

/* Novità */
body[data-page=home] .news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
body[data-page=home] .news-grid article { display:flex; flex-direction:column; padding:1.5rem!important; background:#eef2f6!important; border:0!important; border-right:1px solid #d5dde7!important; border-bottom:1px solid #d5dde7!important; }
body[data-page=home] .news-grid article>div { display:flex; justify-content:space-between; align-items:center; margin-bottom:2.5rem; }
body[data-page=home] .news-grid .pill { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; border:1px solid #b9c4d2; border-radius:0; padding:.375rem .625rem; background:transparent; color:#2f3e52; }
body[data-page=home] .news-grid article>div .eyebrow::before { content:''; }
body[data-page=home] .news-grid h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:0 0 .5rem; }
body[data-page=home] .news-grid p { font-size:var(--fs-small); margin:0 0 1.5rem; }
body[data-page=home] .news-grid .text-link { margin-top:auto; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
body[data-page=home] .news-grid .text-link:hover { color:var(--blue); }

@media(max-width:1100px) { .family-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-page=home] .sector-strip { grid-template-columns:repeat(2,1fr); } }
@media(max-width:900px) {
 body[data-page=home] main>.section { padding-top:3.5rem; }
 body[data-page=home] .engineering-panel,body[data-page=home] .company-block { grid-template-columns:1fr; }
 body[data-page=home] .engineering-intro { border-right:0; border-bottom:1px solid #d5dde7; padding:2rem 1.5rem; }
 body[data-page=home] .company-visual { min-height:20rem; border-right:0; border-bottom:1px solid #d5dde7; }
 body[data-page=home] .company-block>div:last-child { padding:2rem 1.5rem; }
 body[data-page=home] .home-featured,body[data-page=home] .news-grid { grid-template-columns:1fr 1fr; }
 body[data-page=home] .daq-banner { padding:2rem 1.5rem; }
}
@media(max-width:600px) {
 .family-grid,body[data-page=home] .engineering-cards,body[data-page=home] .news-grid,body[data-page=home] .sector-strip { grid-template-columns:1fr; }
 body[data-page=home] .engineering-cards>a+a { border-left:0; border-top:1px solid #d5dde7; }
 body[data-page=home] .section-title { flex-direction:column; align-items:flex-start; gap:1rem; }
 body[data-page=home] .sector-strip a { min-height:7rem; }
 .home-stats dd { font-size:var(--fs-stat); }
}

/* Home: barra famiglie sotto la hero. */
.fullscreen-hero .elad-hero-families { width:100%; max-width:none; margin:0; display:grid; grid-template-columns:repeat(4,1fr); background:#eef2f6; border:0; border-bottom:1px solid #d5dde7; border-radius:0; overflow:visible; }
.elad-hero-families a { position:relative; display:flex!important; flex-direction:column; gap:0; padding:1.5rem var(--gutter) 1.25rem 1.5rem!important; border-left:1px solid #d5dde7; background:transparent; color:var(--ink); transition:background .25s,color .25s; }
.elad-hero-families a:first-child { border-left:0; padding-left:var(--gutter)!important; }
.elad-hero-families a::before { content:''; position:absolute; left:0; right:0; top:0; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.ef-top { display:flex; justify-content:space-between; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.ef-top span:first-child { color:var(--blue); }
.elad-hero-families .elad-family-code { margin:1.5rem 0 .25rem; font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1; color:var(--ink); }
.elad-hero-families .elad-family-name { font-size:var(--fs-small); color:#4d5a6c; }
.ef-foot { display:flex; justify-content:space-between; align-items:flex-end; margin-top:1.5rem; }
.ef-px { --s:.375rem; --g:.125rem; }
.elad-hero-families .elad-family-arrow { font:var(--fs-body) Sora,sans-serif; color:var(--ink); transition:transform .2s,color .2s; }
.elad-hero-families a:hover { background:#091f3d!important; color:#fff; }
.elad-hero-families a:hover::before { transform:scaleX(1); }
.elad-hero-families a:hover .elad-family-code { color:#fff; }
.elad-hero-families a:hover .elad-family-name,.elad-hero-families a:hover .ef-top { color:#aec0d8; }
.elad-hero-families a:hover .ef-top span:first-child { color:#8cc8ec; }
.elad-hero-families a:hover .elad-family-arrow { color:#8cc8ec; transform:translate(2px,-2px); }
.elad-hero-families a:hover .ef-px { color:#8cc8ec; }
@media(max-width:900px) {
 .fullscreen-hero .elad-hero-families { grid-template-columns:1fr 1fr; width:100%; }
 .elad-hero-families a,.elad-hero-families a:first-child { padding:1.25rem var(--gutter)!important; }
 .elad-hero-families a:nth-child(3) { border-left:0; }
 .elad-hero-families a:nth-child(n+3) { border-top:1px solid #d5dde7; }
}
@media(max-width:600px) { .elad-hero-families .elad-family-name { font-size:var(--fs-xs); min-height:2.4em; } .elad-hero-families .elad-family-code { margin-top:1rem; } }

/* Home: sezione configuratore Corus DAQ. */
body[data-page=home] .cfg-band { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:0; padding:0!important; background:#091f3d; color:#fff; border-radius:0; }
.cfg-copy { padding:3.5rem; display:flex; flex-direction:column; align-items:flex-start; border-right:1px solid #ffffff1f; }
.cfg-steps { list-style:none; margin:2rem 0 2.5rem; padding:0; width:100%; border-top:1px solid #ffffff1f; }
.cfg-steps li { display:grid; grid-template-columns:3rem 1fr; padding:1rem 0; border-bottom:1px solid #ffffff1f; }
.cfg-steps li>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#8cc8ec; padding-top:.25rem; text-transform:uppercase; }
.cfg-steps b { display:block; font-size:var(--fs-body); font-weight:500; letter-spacing:-.02em; color:#fff; }
.cfg-steps small { display:block; margin-top:.25rem; font-size:var(--fs-small); color:#aec0d8; }
.cfg-diagram { padding:2.5rem 3rem; display:flex; flex-direction:column; gap:1.25rem; background:#ffffff06; }
.cfg-head { display:flex; justify-content:space-between; padding-bottom:1rem; border-bottom:1px solid #ffffff1f; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8fa6c4; }
.cfg-label { display:block; margin-bottom:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8cc8ec; }
.cfg-signals { display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem; }
.cfg-signals span { padding:.75rem; border:1px solid #ffffff2e; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#dbe6f5; text-align:center; animation:cfg-sig 6s ease-in-out infinite; }
.cfg-signals span:nth-child(2) { animation-delay:.5s; } .cfg-signals span:nth-child(3) { animation-delay:1s; } .cfg-signals span:nth-child(4) { animation-delay:1.5s; } .cfg-signals span:nth-child(5) { animation-delay:2s; } .cfg-signals span:nth-child(6) { animation-delay:2.5s; }
@keyframes cfg-sig { 0%,70%,100% { border-color:#ffffff2e; background:transparent; } 10%,25% { border-color:#409ed8; background:#3b82f622; } }
.cfg-flow { display:grid; grid-template-columns:1fr auto; align-items:center; gap:1rem; }
.cfg-flow .px { width:100%; --s:.3125rem; --g:.1875rem; justify-content:space-between; color:#409ed8; }
.cfg-flow b { font:var(--fs-body) Sora,sans-serif; color:#8cc8ec; }
.cfg-core { display:grid; grid-template-columns:repeat(6,1fr); gap:.5rem; padding:.75rem; border:1px solid #ffffff2e; }
.cfg-core span { display:flex; flex-direction:column; justify-content:space-between; min-height:6.5rem; padding:.75rem .5rem; border:1px solid currentColor; animation:cfg-slot 6s ease-in-out infinite; }
.cfg-core b { font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.064em; text-transform:uppercase; }
.cfg-core small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.08em; opacity:.7; }
.cfg-core .ga { color:#409ed8; background:#3b82f61a; }
.cfg-core .aa { color:#fbbf24; background:#f59e0b14; }
.cfg-core .ao { color:#34d399; background:#10b98114; }
.cfg-core .free { color:#8fa6c4; border-style:dashed; background:transparent; animation:none; }
.cfg-core span:nth-child(1) { animation-delay:3s; } .cfg-core span:nth-child(2) { animation-delay:3.3s; } .cfg-core span:nth-child(3) { animation-delay:3.6s; } .cfg-core span:nth-child(4) { animation-delay:3.9s; } .cfg-core span:nth-child(5) { animation-delay:4.2s; }
@keyframes cfg-slot { 0%,60%,100% { box-shadow:none; } 8%,20% { box-shadow:inset 0 0 0 1px currentColor,0 0 18px -4px currentColor; } }
.cfg-legend { display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; padding-top:1rem; border-top:1px solid #ffffff1f; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#aec0d8; }
.cfg-legend i { display:inline-block; width:.5rem; height:.5rem; margin-right:.5rem; vertical-align:middle; }
.cfg-legend .ga { background:#409ed8; } .cfg-legend .aa { background:#fbbf24; } .cfg-legend .ao { background:#34d399; }
@media(prefers-reduced-motion:reduce) { .cfg-signals span,.cfg-core span { animation:none; } }
@media(max-width:1100px) { body[data-page=home] .cfg-band { grid-template-columns:1fr; } .cfg-copy { border-right:0; border-bottom:1px solid #ffffff1f; } }
@media(max-width:600px) { .cfg-copy,.cfg-diagram { padding:2rem 1.25rem; } .cfg-signals { grid-template-columns:1fr 1fr; } .cfg-core { grid-template-columns:repeat(3,1fr); } .cfg-core span { min-height:4.5rem; } }
body[data-page=home] .cfg-band { align-items:stretch; }
.cfg-diagram { justify-content:center; }

/* Configuratore in home: fascia a tutta larghezza, contenuti allineati al gutter. */
body[data-page=home] .cfg-section { padding-left:0; padding-right:0; }
body[data-page=home] .cfg-section .cfg-band { width:100%; }
body[data-page=home] .cfg-section .cfg-copy { padding:4.5rem 3rem 4.5rem var(--gutter); }
body[data-page=home] .cfg-section .cfg-diagram { padding:4.5rem var(--gutter) 4.5rem 3rem; }
@media(max-width:1100px) { body[data-page=home] .cfg-section .cfg-copy,body[data-page=home] .cfg-section .cfg-diagram { padding:3rem var(--gutter); } }

/* Catalogo: toolbar di ricerca nello stesso linguaggio delle schede categoria. */
.catalog-section .catalog-toolbar { display:grid; grid-template-columns:1fr auto; gap:0; margin:0; border:1px solid #d5dde7; border-bottom:0; background:#eef2f6; }
.catalog-section .search { width:auto; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; height:4rem; padding:0 1.25rem; border:0; border-radius:0; background:transparent; transition:background .15s,box-shadow .15s; }
.catalog-section .search:focus-within { background:#fff; box-shadow:inset 0 -2px 0 var(--blue); }
.search-label { padding-right:1rem; border-right:1px solid #d5dde7; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.catalog-section .search input { height:100%; font-size:var(--fs-body); letter-spacing:-.01em; outline:0; }
.catalog-section .search input::placeholder { color:#8b9cb4; }
.catalog-section .search kbd { display:grid; place-items:center; width:1.75rem; height:1.75rem; border:1px solid #b9c4d2; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; color:#66768b; background:#fff; text-transform:uppercase; }
.catalog-section .search:focus-within kbd { display:none; }
.toolbar-wishlist { display:inline-flex; align-items:center; gap:.625rem; height:4rem; padding:0 1.5rem; border-left:1px solid #d5dde7; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); transition:background .15s; }
.toolbar-wishlist:hover { background:#e9eef4; }
.toolbar-wishlist>span { font:var(--fs-small) Sora,sans-serif; }
.toolbar-wishlist b { min-width:1.25rem; padding:.125rem .375rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-align:center; text-transform:uppercase; }
@media(max-width:600px) {
 .catalog-section .search { height:3.5rem; padding:0 1rem; gap:.75rem; }
 .catalog-section .search kbd { display:none; }
 .catalog-section .search input { font-size:var(--fs-body); }
 .toolbar-wishlist { height:3.5rem; padding:0 1rem; font-size:0; gap:.375rem; }
 .toolbar-wishlist>span { font-size:var(--fs-body); }
}
.catalog-section .search>.search-label { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:var(--blue); text-transform:uppercase; }
@media(max-width:600px) { .catalog-section .search>.search-label { padding-right:.75rem; } }

/* Catalogo: nessun risultato. */
.empty-results:not([hidden]) { display:grid; grid-template-columns:auto 1fr; gap:3rem; align-items:center; padding:3rem; border:1px solid #d5dde7; border-top:0; background:#eef2f6; }
.empty-results .px { --s:.75rem; --g:.25rem; }
.er-meta { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.er-meta span { color:#4d5a6c; text-transform:none; letter-spacing:.06em; }
.empty-results h3 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.035em; margin:1rem 0 .5rem; }
.empty-results p { max-width:56ch; margin:0 0 1.5rem; color:#4d5a6c; }
.er-actions { display:flex; flex-wrap:wrap; gap:.5rem; }
@media(max-width:600px) { .empty-results:not([hidden]) { grid-template-columns:1fr; gap:1.5rem; padding:2rem 1.25rem; } .empty-results .px { --s:.5rem; } .er-actions .wl-btn { width:100%; justify-content:space-between; } }

/* Product card: riga azioni (stato/shop, Info, wishlist) fuori dal link principale. */
.catalog-grid .product-card { display:flex; flex-direction:column; }
.catalog-grid .product-card>a { flex:1; padding-bottom:0!important; }
.catalog-grid .product-copy { padding-bottom:1.25rem; }
.catalog-grid .card-tail { display:none; }
.card-actions { display:flex; align-items:center; gap:.375rem; margin:0 22px 22px; padding-top:.875rem; border-top:1px dashed #b9c4d2; }
.card-status { margin-right:auto; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
a.card-status.is-shop { display:inline-flex; align-items:center; gap:.375rem; color:var(--blue); }
a.card-status.is-shop::before { content:''; width:.375rem; height:.375rem; background:#22c55e; }
a.card-status.is-shop span { font:var(--fs-xs) Sora,sans-serif; transition:transform .2s; }
a.card-status.is-shop:hover span { transform:translate(2px,-2px); }
.card-btn,.catalog-grid .card-actions .save-product { position:static!important; display:inline-grid; place-items:center; height:1.75rem; min-width:1.75rem; padding:0 .5rem; border:1px solid #9fabba; background:transparent; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:var(--ink); line-height:1; transition:background .15s,border-color .15s,color .15s; }
.catalog-grid .card-actions .save-product { width:1.75rem; padding:0; font:var(--fs-small)/1 Sora,sans-serif; letter-spacing:0; }
.card-btn:hover,.catalog-grid .card-actions .save-product:hover { border-color:var(--ink); background:#e9eef4; }
.catalog-grid .card-actions .save-product[aria-pressed=true] { background:var(--blue); border-color:var(--blue); color:#fff; }
.catalog-grid .card-actions .save-product[aria-pressed=true]:hover { background:var(--deep); border-color:var(--deep); }
@media(max-width:600px) { .card-actions { margin:0 14px 14px; } .card-status { font-size:var(--fs-xs); letter-spacing:.08em; } a.card-status.is-shop { font-size:0; } a.card-status.is-shop::after { content:'Shop'; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.08em; } }

/* Notifica wishlist. */
.toast { left:auto!important; right:1.5rem; bottom:1.5rem; transform:none!important; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; width:min(26rem,calc(100vw - 2rem)); padding:1rem 1.25rem!important; border-radius:0!important; background:#091f3d!important; color:#fff; box-shadow:0 18px 40px #0e2a4840; overflow:hidden; font-size:var(--fs-small); }
.toast.is-in { animation:toast-in .3s cubic-bezier(.2,.8,.2,1); }
@keyframes toast-in { from { opacity:0; transform:translateY(12px)!important; } }
.toast-icon { display:grid; place-items:center; width:2.25rem; height:2.25rem; background:var(--blue); font:var(--fs-body) Sora,sans-serif; }
.toast--removed .toast-icon { background:transparent; border:1px solid #ffffff40; }
.toast-body { min-width:0; }
.toast-body small { display:block; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8cc8ec; }
.toast-body b { display:block; margin-top:.25rem; font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.toast-actions { display:flex; flex-direction:column; align-items:flex-end; gap:.375rem; }
.toast-actions a,.toast-undo { font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#fff; background:none; border:0; padding:0; white-space:nowrap; }
.toast-undo { color:#aec0d8; text-decoration:underline; text-underline-offset:3px; }
.toast-actions a:hover,.toast-undo:hover { color:#8cc8ec; }
.toast-bar { position:absolute; left:0; bottom:0; height:2px; width:100%; background:var(--blue); transform-origin:left; animation:toast-bar 4.2s linear forwards; }
@keyframes toast-bar { from { transform:scaleX(1); } to { transform:scaleX(0); } }
@media(max-width:600px) { .toast { right:1rem; bottom:1rem; } }
@media(prefers-reduced-motion:reduce) { .toast.is-in,.toast-bar { animation:none; } }

/* "Disponibile sullo shop" più evidente: chip piena + badge sull'immagine. */
a.card-status.is-shop { height:1.75rem; padding:0 .625rem; gap:.5rem; background:#e4f1fa; border:1px solid var(--blue); color:var(--deep); font-weight:500; letter-spacing:.12em; transition:background .15s,color .15s; }
a.card-status.is-shop:hover { background:var(--blue); color:#fff; }
a.card-status.is-shop::before { width:.4375rem; height:.4375rem; border-radius:50%!important; background:#22c55e; box-shadow:0 0 0 0 #22c55e80; animation:shop-pulse 2s ease-out infinite; }
@keyframes shop-pulse { 0% { box-shadow:0 0 0 0 #22c55e80; } 70%,100% { box-shadow:0 0 0 .375rem #22c55e00; } }
.catalog-grid .product-picture { position:relative; }
.shop-badge { position:absolute; left:.625rem; top:.625rem; display:inline-flex; align-items:center; gap:.375rem; padding:.375rem .5rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; }
.shop-badge i { width:.375rem; height:.375rem; border-radius:50%!important; background:#86efac; }
.catalog-grid .product-card.has-shop { box-shadow:inset 0 2px 0 var(--blue); }
@media(prefers-reduced-motion:reduce) { a.card-status.is-shop::before { animation:none; } }
@media(max-width:600px) { a.card-status.is-shop { padding:0 .5rem; } }

/* Utility: icone mail, telefono, lingua. */
.utility .wrap>div a,.utility .u-lang { display:inline-flex; align-items:center; gap:.5rem; }
.utility .u-ico { flex:none; opacity:.75; }
.utility a:hover .u-ico { opacity:1; }
.utility .u-lang { padding-left:1rem; border-left:1px solid #ffffff30; font-weight:500; letter-spacing:.06em; }
/* Configuratore home: niente sbordi su mobile. */
body[data-page=home] .cfg-section { overflow:hidden; }
body[data-page=home] .cfg-band { max-width:100%; overflow:hidden; }
.cfg-copy,.cfg-diagram,.cfg-block,.cfg-flow,.cfg-core,.cfg-signals { min-width:0; }
.cfg-copy h2 { overflow-wrap:anywhere; }
.cfg-signals span { min-width:0; overflow-wrap:anywhere; }
.cfg-flow { overflow:hidden; }
.cfg-flow .px { max-width:100%; overflow:hidden; }
@media(max-width:1100px) { body[data-page=home] .cfg-band { grid-template-columns:minmax(0,1fr)!important; } }
@media(max-width:600px) {
 body[data-page=home] .cfg-section .cfg-copy,body[data-page=home] .cfg-section .cfg-diagram { padding:2.5rem 20px; }
 .cfg-copy .btn { width:100%; justify-content:space-between; white-space:normal; }
 .cfg-head { flex-wrap:wrap; gap:.25rem 1rem; }
 .cfg-signals span { padding:.625rem .25rem; letter-spacing:.06em; font-size:var(--fs-xs); }
 .cfg-core { gap:.375rem; padding:.5rem; }
 .cfg-core span { padding:.5rem .375rem; }
 .cfg-legend { flex-direction:column; }
}

/* Menu mobile attaccato all'header, senza spazio vuoto. */
@media(max-width:900px) { .modern-header .nav nav { top:100%!important; left:0!important; right:0!important; margin:0; border:0; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; box-shadow:0 18px 30px #0e2a4814; } }

/* Contatti: configurazione Corus DAQ allegata. */
.cfg-attach { margin-bottom:1rem; border:1px solid var(--blue); background:#eef4ff; }
.cfg-attach-head { display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding:.875rem 1.25rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.cfg-attach pre { margin:0; padding:1rem 1.25rem; max-height:14rem; overflow:auto; font:var(--fs-mono)/1.7 'Space Grotesk',system-ui,sans-serif; color:#2f3e52; white-space:pre-wrap; text-transform:uppercase; }
.cfg-attach-actions { display:flex; gap:.5rem; flex-wrap:wrap; padding:0 1.25rem 1rem; }
.cfg-attach-actions .card-btn { height:2.25rem; padding:0 .875rem; }

/* ===== Pagina Servizi ===== */
body[data-page=servizi] .pd-jump { margin-bottom:0; }
.sv-section { padding-top:5rem; padding-bottom:5rem; }
.sv-head { display:grid; grid-template-columns:12rem 1fr; gap:1.5rem; align-items:start; margin-bottom:2.5rem; padding-bottom:1.5rem; border-bottom:1px solid #d5dde7; }
.sv-head .eyebrow,.sv-process-head .eyebrow { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; padding-top:.75rem; }
.sv-head h2,.sv-process-head h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; margin:0; }
.sv-cards { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.sv-card { display:flex; flex-direction:column; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; scroll-margin-top:7rem; }
.sv-pic { position:relative; aspect-ratio:16/9; overflow:hidden; background:#e9eef4; }
.sv-pic img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.sv-card:hover .sv-pic img { transform:scale(1.03); }
.sv-tag { position:absolute; top:1rem; right:1rem; padding:.375rem .625rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.sv-body { display:flex; flex-direction:column; flex:1; padding:2rem; }
.sv-meta { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.sv-body h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.035em; margin:.75rem 0 .75rem; }
.sv-body>p { font-size:var(--fs-body); color:#3d4b5e; margin:0 0 1.5rem; max-width:52ch; }
.sv-list { list-style:none; margin:0 0 2rem; padding:0; border-top:1px solid #d5dde7; }
.sv-list li { display:flex; gap:.75rem; align-items:center; padding:.75rem 0; border-bottom:1px solid #d5dde7; font-size:var(--fs-small); }
.sv-list li::before { content:''; width:.375rem; height:.375rem; background:var(--blue); flex:none; }
.sv-link { margin-top:auto; display:flex; justify-content:space-between; align-items:center; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.sv-link span { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
.sv-link:hover { color:var(--blue); }
.sv-link:hover span { transform:translateX(3px); }
.sv-band { background:#e9eef4; border-top:1px solid #d5dde7; border-bottom:1px solid #d5dde7; padding:5rem 0; scroll-margin-top:5rem; }
.sv-cap { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:3rem; align-items:start; }
.sv-cap-list { list-style:none; margin:0; padding:0; border-top:1px solid #c5cfdb; }
.sv-cap-list li { display:grid; grid-template-columns:3rem auto 1fr auto; align-items:baseline; gap:1rem; padding:1.25rem 0; border-bottom:1px solid #c5cfdb; transition:background .15s,padding .2s; }
.sv-cap-list li:hover { background:#eef2f6; padding-left:.75rem; padding-right:.75rem; }
.sv-cap-list span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; color:#8b9cb4; text-transform:uppercase; }
.sv-cap-list b { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; }
.sv-cap-list small { font-size:var(--fs-small); color:#4d5a6c; }
.sv-cap-list small::before { content:'— '; color:#9fabba; }
.sv-cap-list em { font:normal var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.sv-cap-fig { position:sticky; top:8rem; margin:0; border:1px solid #c5cfdb; background:#eef2f6; }
.sv-cap-fig img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; }
.sv-cap-fig figcaption { position:absolute; left:1rem; bottom:1rem; padding:.5rem .75rem; background:#0b1e3cdd; color:#fff; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.sv-process { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:4rem; align-items:start; scroll-margin-top:5rem; }
.sv-process-head { position:sticky; top:8rem; }
.sv-process-head h2 { margin:1rem 0; }
.sv-process-head p { max-width:30ch; color:#4d5a6c; margin:0 0 2rem; }
.sv-process-head .px { --s:.5rem; --g:.1875rem; }
.sv-steps { list-style:none; margin:0; padding:0; border-top:1px solid #d5dde7; counter-reset:none; }
.sv-steps li { display:grid; grid-template-columns:4rem 1fr; padding:2rem 0; border-bottom:1px solid #d5dde7; }
.sv-steps li>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; color:var(--blue); padding-top:.5rem; text-transform:uppercase; }
.sv-steps h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:0 0 .5rem; }
.sv-steps p { margin:0; color:#4d5a6c; max-width:48ch; }
body[data-page=servizi] .project-cta { margin-bottom:5rem; }
@media(max-width:900px) {
 .sv-head { grid-template-columns:1fr; gap:.5rem; }
 .sv-cards,.sv-cap,.sv-process { grid-template-columns:1fr; }
 .sv-cap-fig,.sv-process-head { position:static; }
 .sv-cap-fig img { aspect-ratio:16/10; }
 .sv-section,.sv-band { padding-top:3.5rem; padding-bottom:3.5rem; }
 .sv-process { gap:2rem; }
}
@media(max-width:600px) {
 .sv-body { padding:1.5rem 1.25rem; }
 .sv-body h3 { font-size:var(--fs-h3); }
 .sv-cap-list li { grid-template-columns:2.25rem 1fr auto; gap:.25rem .75rem; }
 .sv-cap-list small { grid-column:2; grid-row:2; }
 .sv-cap-list em { grid-column:3; grid-row:1; }
 .sv-cap-list b { font-size:var(--fs-body); }
 .sv-steps li { grid-template-columns:2.75rem 1fr; padding:1.5rem 0; }
}
@media(max-width:900px) { .sv-cap-fig { position:relative!important; } }

/* Servizi: eyebrow sopra, spazi ridotti, processo a blocchi. */
.sv-section { padding-top:3rem; padding-bottom:3rem; }
.sv-band { padding:3rem 0; }
.sv-head { display:block; margin-bottom:1.5rem; padding-bottom:1.25rem; }
.sv-head .eyebrow { display:block; padding-top:0; margin-bottom:.75rem; }
.sv-head p { margin:.75rem 0 0; max-width:52ch; color:#4d5a6c; }
.sv-process { display:block; }
.sv-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.sv-steps li { position:relative; display:flex; flex-direction:column; gap:2.5rem; padding:1.5rem; background:#eef2f6; border-bottom:1px solid #d5dde7; border-right:1px solid #d5dde7; transition:background .2s,color .2s; }
.sv-steps li:hover { background:#091f3d; color:#fff; }
.sv-steps li:hover p { color:#aec0d8; }
.sv-steps li:hover>span { color:#8cc8ec; }
.sv-steps li>span { display:flex; justify-content:space-between; padding:0; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:var(--blue); text-transform:uppercase; }
.sv-steps li>span::after { content:'→'; font:var(--fs-body) Sora,sans-serif; color:#9fabba; }
.sv-steps li:last-child>span::after { content:'✓'; }
.sv-steps h3 { font-size:var(--fs-h3); margin:0 0 .5rem; }
.sv-steps p { font-size:var(--fs-small); }
body[data-page=servizi] .project-cta { margin-bottom:3rem; }
@media(max-width:1100px) { .sv-steps { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:900px) { .sv-section,.sv-band { padding-top:2.5rem; padding-bottom:2.5rem; } }
@media(max-width:600px) { .sv-steps { grid-template-columns:1fr; } .sv-steps li { gap:1.25rem; padding:1.25rem; } .sv-steps li>span::after { content:'↓'; } }

/* Servizi v3: contenuti reali. */
.sv-facts { display:grid; grid-template-columns:repeat(3,1fr); margin-bottom:1.5rem; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.sv-facts>div { display:flex; flex-direction:column; gap:.375rem; padding:1.25rem 1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.sv-facts span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.sv-facts b { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; }
.sv-facts small { font-size:var(--fs-small); color:#4d5a6c; }
.sv-facts a { margin-top:auto; padding-top:.5rem; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.sv-facts a:hover { color:var(--blue); }
.sv-chips { list-style:none; display:flex; flex-wrap:wrap; gap:.375rem; margin:0 0 1.75rem; padding:0; }
.sv-chips li { padding:.375rem .625rem; border:1px solid #b9c4d2; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; color:#2f3e52; }
.sv-steps--7 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.sv-steps--7 li { gap:1.75rem; }
.sv-steps--7 li:nth-child(7)>span::after { content:'✓'; }
.sv-steps-cta { padding:0!important; background:var(--blue)!important; }
.sv-steps-cta a { display:flex; flex-direction:column; justify-content:space-between; height:100%; padding:1.5rem; color:#fff; }
.sv-steps-cta>a>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#e4f1fa; display:block; }
.sv-steps-cta>a>span::after { display:none; }
.sv-steps-cta b { display:flex; justify-content:space-between; align-items:center; font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; }
.sv-steps-cta i { font-style:normal; transition:transform .2s; }
.sv-steps-cta:hover { background:var(--deep)!important; }
.sv-steps-cta:hover i { transform:translateX(4px); }
.sv-tests { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.sv-tests article { padding:1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.sv-tests header { display:flex; justify-content:space-between; align-items:center; margin-bottom:1.25rem; }
.sv-tests header span { padding:.375rem .625rem; background:var(--blue); color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; text-transform:uppercase; }
.sv-tests header small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.sv-tests h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; margin:0 0 .75rem; }
.sv-tests ul { list-style:none; margin:0; padding:0; }
.sv-tests li { display:flex; gap:.625rem; padding:.5rem 0; border-top:1px solid #e1e7ef; font-size:var(--fs-small); color:#3d4b5e; }
.sv-tests li::before { content:''; flex:none; width:.3125rem; height:.3125rem; margin-top:.5rem; background:#9fb9e6; }
.sv-tests-for { background:#091f3d!important; color:#fff; }
.sv-tests-for header span { background:#fff; color:#091f3d; }
.sv-tests-for header small,.sv-tests-for li { color:#aec0d8; }
.sv-tests-for li { border-color:#ffffff1f; }
.sv-why { margin-top:2rem; padding:2rem; border:1px solid #d5dde7; background:#e9eef4; }
.sv-why .eyebrow { display:block; margin-bottom:1.25rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.sv-why>div { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:1.5rem; }
.sv-why article>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:var(--blue); text-transform:uppercase; }
.sv-why h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; margin:.5rem 0; }
.sv-why p { font-size:var(--fs-small); margin:0; color:#4d5a6c; }
@media(max-width:1100px) { .sv-steps--7,.sv-tests { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:900px) { .sv-facts,.sv-why>div { grid-template-columns:1fr; gap:0; } .sv-why>div { gap:1.25rem; } }
@media(max-width:600px) { .sv-steps--7,.sv-tests { grid-template-columns:1fr; } .sv-why { padding:1.5rem 1.25rem; } .sv-why .btn { width:100%; justify-content:space-between; } }

/* Footer: "Parliamo del tuo progetto" come CTA principale. */
.modern-footer a.footer-contact { display:inline-flex; align-items:center; gap:1.5rem; height:4.5rem; margin:0; padding:0 .75rem 0 2rem; background:var(--blue); border:1px solid var(--blue); color:#fff; font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.128em; transition:background .2s,border-color .2s; }
.modern-footer a.footer-contact:hover { background:#fff; border-color:#fff; color:#091f3d; }
.modern-footer .footer-contact>span { width:3rem; height:3rem; border:0!important; background:#ffffff22; color:#fff; font:var(--fs-h3) Sora,sans-serif; display:grid; place-items:center; transition:transform .25s,background .2s,color .2s; }
.modern-footer a.footer-contact:hover>span { background:var(--blue); color:#fff; transform:rotate(45deg); }
@media(max-width:600px) { .modern-footer a.footer-contact { width:100%; justify-content:space-between; height:4rem; padding-left:1.25rem; } }

/* Settori: griglia di celle indicizzate. */
.sec-section { padding-top:3rem; padding-bottom:4rem; }
.sec-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.sec-card { position:relative; display:flex; flex-direction:column; min-height:17rem; padding:1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; scroll-margin-top:8rem; transition:background .25s,color .25s; }
.sec-card::before { content:''; position:absolute; left:0; right:0; top:0; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.sec-head { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:2.5rem; }
.sec-head>span:first-child { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#4d5a6c; text-transform:uppercase; }
.sec-head .px { --s:.375rem; --g:.125rem; }
.sec-card h2 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:0 0 .5rem; }
.sec-card p { font-size:var(--fs-small); color:#4d5a6c; margin:0 0 1.5rem; }
.sec-foot { margin-top:auto; display:flex; justify-content:space-between; align-items:center; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.sec-foot b { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
.sec-card:hover,.sec-card:target { background:#091f3d; color:#fff; }
.sec-card:hover::before,.sec-card:target::before { transform:scaleX(1); }
.sec-card:hover p,.sec-card:target p,.sec-card:hover .sec-head>span:first-child,.sec-card:target .sec-head>span:first-child { color:#aec0d8; }
.sec-card:hover .sec-foot,.sec-card:target .sec-foot { color:#fff; border-color:#ffffff33; }
.sec-card:hover .sec-foot b { transform:translate(2px,-2px); color:#8cc8ec; }
.sec-card:hover .px,.sec-card:target .px { color:#8cc8ec; }
@media(max-width:1100px) { .sec-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .sec-grid { grid-template-columns:1fr; } .sec-card { min-height:0; } .sec-head { margin-bottom:1.5rem; } }
.sec-head { height:2.75rem; margin-bottom:1.75rem; overflow:hidden; }
.sec-section { padding-top:0; }

/* ===== Pagina Azienda ===== */
.az-origin { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:3rem; align-items:start; }
.az-origin-copy .eyebrow { display:block; margin-bottom:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.az-origin-copy h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; margin:0 0 1.5rem; }
.az-origin-copy p { font-size:var(--fs-body); color:#3d4b5e; max-width:54ch; margin:0 0 1rem; }
.az-stats { display:grid; grid-template-columns:1fr 1fr; margin:2rem 0 0; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.az-stats div { padding:1.25rem 1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; }
.az-stats dt { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#66768b; }
.az-stats dd { margin:.5rem 0 0; font-size:var(--fs-stat); font-weight:500; letter-spacing:-.045em; line-height:1; color:var(--ink); }
.az-stats dd small { font-size:.5em; color:#66768b; letter-spacing:-.02em; }
.az-origin-fig { position:relative; margin:0; border:1px solid #d5dde7; }
.az-origin-fig img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; }
.az-origin-fig figcaption { position:absolute; left:1rem; bottom:1rem; padding:.5rem .75rem; background:#0b1e3cdd; color:#fff; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.az-areas { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #c5cfdb; border-left:1px solid #c5cfdb; }
.az-areas article { display:flex; flex-direction:column; padding:1.5rem; background:#eef2f6; border-right:1px solid #c5cfdb; border-bottom:1px solid #c5cfdb; }
.az-area-code { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:var(--blue); text-transform:uppercase; }
.az-areas h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:1.5rem 0 .5rem; }
.az-areas p { font-size:var(--fs-small); color:#4d5a6c; margin:0 0 1.5rem; }
.az-areas a { margin-top:auto; display:flex; justify-content:space-between; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.az-areas a:hover { color:var(--blue); }
/* Timeline */
.az-tl { padding:3.5rem 0 4rem; background:#091f3d; color:#fff; overflow:hidden; scroll-margin-top:5rem; }
.az-tl-head { display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; margin-bottom:2rem; }
.az-tl-head .eyebrow { display:block; margin-bottom:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8cc8ec; }
.az-tl-head h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; margin:0; color:#fff; }
.az-tl-ctrl { display:flex; align-items:center; gap:.5rem; }
.az-tl-count { margin-right:1rem; font:var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#8fa6c4; text-transform:uppercase; }
.az-tl-count b { color:#fff; font-weight:500; }
.az-tl-btn { width:3rem; height:3rem; border:1px solid #ffffff40; background:transparent; color:#fff; font:var(--fs-body) Sora,sans-serif; transition:background .15s,border-color .15s; }
.az-tl-btn:hover { background:var(--blue); border-color:var(--blue); }
.az-tl-years { position:relative; display:flex; justify-content:space-between; gap:.5rem; overflow-x:auto; scrollbar-width:none; padding-top:.25rem; padding-bottom:.75rem; }
.az-tl-years::-webkit-scrollbar { display:none; }
.az-tl-years::before { content:''; position:absolute; left:var(--gutter); right:var(--gutter); top:calc(.25rem + .4375rem); height:1px; background:#ffffff26; }
.az-tl-years button { position:relative; display:flex; flex-direction:column; align-items:center; gap:.5rem; flex:none; min-width:3rem; padding:0; border:0; background:none; color:#8fa6c4; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.az-tl-years button i { width:.875rem; height:.875rem; border-radius:50%!important; border:1px solid #ffffff55; background:#091f3d; transition:background .2s,border-color .2s,box-shadow .2s; }
.az-tl-years button.is-past i { background:#409ed8; border-color:#409ed8; }
.az-tl-years button[aria-selected=true] { color:#fff; }
.az-tl-years button[aria-selected=true] i { background:#fff; border-color:#fff; box-shadow:0 0 0 .3125rem #3b82f655; }
.az-tl-years button:hover { color:#fff; }
.az-tl-progress { height:2px; margin:0 var(--gutter) 2rem; background:#ffffff14; }
.az-tl-progress i { display:block; height:100%; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.az-tl-track { display:grid; grid-auto-flow:column; grid-auto-columns:min(22rem,78vw); list-style:none; margin:0; padding:0 var(--gutter) .5rem; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-left:var(--gutter); scrollbar-width:none; cursor:grab; outline:0; }
.az-tl-track::-webkit-scrollbar { display:none; }
.az-tl-track.is-drag { cursor:grabbing; scroll-snap-type:none; user-select:none; }
.az-tl-track:focus-visible { box-shadow:inset 0 0 0 2px #8cc8ec; }
.az-tl-track li { position:relative; display:flex; flex-direction:column; min-height:20rem; padding:1.75rem 1.75rem 2rem; border:1px solid #ffffff1f; border-left-width:0; background:#ffffff06; scroll-snap-align:start; transition:background .3s,border-color .3s; }
.az-tl-track li:first-child { border-left-width:1px; }
.az-tl-track li.is-active { background:#ffffff10; }
.az-tl-track li::before { content:''; position:absolute; left:0; right:0; top:0; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .5s; }
.az-tl-track li.is-active::before { transform:scaleX(1); }
.az-tl-year { font-size:var(--fs-stat); font-weight:500; letter-spacing:-.05em; line-height:.9; color:#ffffff59; transition:color .3s; }
.az-tl-track li.is-active .az-tl-year { color:#fff; }
.az-tl-tag { align-self:flex-start; margin:1.25rem 0 auto; padding:.375rem .625rem; border:1px solid #96bcff80; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8cc8ec; }
.az-tl-track h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; margin:2.5rem 0 .5rem; color:#fff; }
.az-tl-track p { font-size:var(--fs-small); color:#aec0d8; margin:0; }
.az-tl-track li.is-today { background:var(--blue); border-color:var(--blue); }
.az-tl-track li.is-today .az-tl-year { color:#fff; }
.az-tl-track li.is-today .az-tl-tag { border-color:#ffffff80; color:#fff; }
.az-tl-track li.is-today p { color:#e4f1fa; }
/* Certificazioni, mercato, partner */
.az-certs { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.az-certs a { display:grid; grid-template-columns:1fr auto; gap:.5rem 1rem; align-items:end; padding:1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; transition:background .2s,color .2s; }
.az-certs span { grid-column:1/-1; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.az-certs b { font-size:var(--fs-stat); font-weight:500; letter-spacing:-.04em; }
.az-certs small { grid-column:1; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.az-certs i { grid-column:2; grid-row:2/4; display:grid; place-items:center; width:3rem; height:3rem; border:1px solid #9fabba; font:var(--fs-body) Sora,sans-serif; font-style:normal; transition:transform .2s; }
.az-certs a:hover { background:#091f3d; color:#fff; }
.az-certs a:hover small { color:#aec0d8; }
.az-certs a:hover span { color:#8cc8ec; }
.az-certs a:hover i { border-color:#8cc8ec; color:#8cc8ec; transform:translateY(3px); }
.az-market { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:2rem; align-items:start; margin-top:2rem; padding-top:1.5rem; border-top:1px solid #d5dde7; }
.az-market .eyebrow { display:block; margin-bottom:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.az-market p { margin:0; color:#3d4b5e; max-width:52ch; }
.az-partners { display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid #c5cfdb; border-left:1px solid #c5cfdb; }
.az-partners span { display:flex; flex-direction:column; justify-content:space-between; gap:2rem; min-height:8rem; padding:1.25rem; background:#eef2f6; border-right:1px solid #c5cfdb; border-bottom:1px solid #c5cfdb; font-size:var(--fs-body); font-weight:500; letter-spacing:-.02em; }
.az-partners i { font:normal var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#8b9cb4; text-transform:uppercase; }
@media(max-width:1100px) { .az-partners { grid-template-columns:repeat(3,1fr); } }
@media(max-width:900px) { .az-origin,.az-market { grid-template-columns:1fr; } .az-origin-fig img { aspect-ratio:16/10; } .az-areas { grid-template-columns:1fr; } .az-tl-head { flex-direction:column; align-items:flex-start; } .az-tl-years { justify-content:flex-start; gap:1.25rem; padding-left:var(--gutter); padding-right:var(--gutter); } .az-tl-years::before { display:none; } }
@media(max-width:600px) { .az-certs,.az-partners { grid-template-columns:1fr 1fr; } .az-certs { grid-template-columns:1fr; } .az-stats div { padding:1rem; } .az-tl-track li { min-height:18rem; padding:1.5rem 1.25rem; } .az-tl-btn { width:2.75rem; height:2.75rem; } }
.az-tl-tag { margin:1.25rem 0 2.5rem; }
.az-tl-track h3 { margin:0 0 .5rem; }

/* ===== Pagina Novità ===== */
.nv-note { display:flex; gap:1rem; align-items:center; margin:0 0 2rem; padding:.75rem 1rem; border:1px dashed #9fabba; background:#eef2f6; font-size:var(--fs-small); color:#4d5a6c; }
.nv-note b { padding:.25rem .5rem; background:#fbbf24; color:#091f3d; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; }
.nv-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); grid-template-rows:auto auto; border-top:1px solid #d5dde7; border-left:1px solid #d5dde7; }
.nv-card { display:flex; flex-direction:column; padding:1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; transition:background .2s; }
.nv-card:hover { background:#fff; }
.nv-card--feature { grid-row:1/3; background:#091f3d; color:#fff; padding:2rem; }
.nv-card--feature:hover { background:#0e2547; }
.nv-top { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.nv-top time { font:var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:#4d5a6c; text-transform:uppercase; }
.nv-type { padding:.375rem .625rem; border:1px solid #b9c4d2; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#2f3e52; }
.nv-card--feature time { color:#8cc8ec; }
.nv-card--feature .nv-type { background:var(--blue); border-color:var(--blue); color:#fff; }
.nv-card--feature .px { width:100%; margin:3rem 0 2.5rem; --s:.4375rem; --g:.1875rem; justify-content:space-between; color:#409ed8; }
.nv-card h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:2.5rem 0 .5rem; }
.nv-card--feature h3 { margin-top:auto; font-size:var(--fs-h2); letter-spacing:-.04em; line-height:1.08; max-width:18ch; }
.nv-card p { font-size:var(--fs-small); color:#4d5a6c; margin:0 0 1.5rem; }
.nv-card--feature p { font-size:var(--fs-body); color:#aec0d8; max-width:44ch; }
.nv-link { margin-top:auto; display:flex; justify-content:space-between; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
.nv-link span { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
.nv-link:hover { color:var(--blue); }
.nv-link:hover span { transform:translateX(3px); }
.nv-card--feature .nv-link { margin-top:0; color:#fff; border-color:#ffffff33; }
.nv-card--feature .nv-link:hover { color:#8cc8ec; }
.ev-list { display:grid; border-top:1px solid #c5cfdb; border-left:1px solid #c5cfdb; }
.ev-card { display:grid; grid-template-columns:11rem minmax(0,1fr) auto; align-items:stretch; background:#eef2f6; border-right:1px solid #c5cfdb; border-bottom:1px solid #c5cfdb; transition:background .2s; }
.ev-card:hover { background:#fff; }
.ev-date { display:flex; flex-direction:column; justify-content:center; gap:.375rem; padding:1.5rem; background:var(--blue); color:#fff; }
.ev-date b { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.04em; line-height:1; }
.ev-date span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#e4f1fa; }
.ev-body { padding:1.5rem 2rem; }
.ev-place { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); }
.ev-body h3 { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:.5rem 0 .375rem; }
.ev-body p { font-size:var(--fs-small); color:#4d5a6c; margin:0; }
.ev-cta { display:flex; align-items:center; gap:.75rem; padding:0 1.5rem; border-left:1px solid #c5cfdb; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); white-space:nowrap; transition:background .15s,color .15s; }
.ev-cta span { font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
.ev-cta:hover { background:#091f3d; color:#fff; }
.ev-cta:hover span { transform:translateX(3px); }
@media(max-width:900px) { .nv-grid { grid-template-columns:1fr; } .nv-card--feature { grid-row:auto; } .ev-card { grid-template-columns:8rem minmax(0,1fr); } .ev-cta { grid-column:1/-1; border-left:0; border-top:1px solid #c5cfdb; padding:1rem 1.5rem; justify-content:space-between; } }
@media(max-width:600px) { .ev-card { grid-template-columns:1fr; } .ev-date { flex-direction:row; align-items:baseline; gap:1rem; padding:1rem 1.25rem; } .ev-date b { font-size:var(--fs-h3); } .ev-body { padding:1.25rem; } .nv-card--feature { padding:1.5rem; } .nv-note { align-items:flex-start; flex-direction:column; gap:.5rem; } }

/* Novità: griglia con notizia in evidenza + 2×2. */
.nv-grid { grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)); }
@media(max-width:1100px) { .nv-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .nv-card--feature { grid-column:1/-1; grid-row:auto; } .nv-card--feature .px { margin:2rem 0; } }
@media(max-width:600px) { .nv-grid { grid-template-columns:1fr; } }

/* Novità: archivio dopo le prime 5. */
.nv-more { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-left:1px solid #d5dde7; }
.nv-more .nv-card h3 { margin-top:2rem; }
.nv-fill { border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; background:repeating-linear-gradient(135deg,transparent 0 10px,#e3e9f0 10px 11px); }
.nv-load { padding-top:2rem; }
#nv-load-btn { display:inline-flex; align-items:center; gap:.75rem; height:3rem; padding:0 1.5rem; border:1px solid #9fabba; background:transparent; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--ink); }
#nv-load-btn:hover { border-color:var(--ink); background:#e9eef4; }
.nv-more .nv-card:not([hidden]) { animation:card-in .35s ease both; }
@media(max-width:1100px) { .nv-more { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .nv-more { grid-template-columns:1fr; } }

/* Novità: un'unica griglia a 4 colonne uguali (evidenza 2×2), archivio allineato. */
.nv-grid,.nv-more { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
.nv-card--feature { grid-column:1/3; grid-row:1/3; }
.nv-more { border-left:1px solid #d5dde7; }
.nv-more .nv-card h3,.nv-grid .nv-card:not(.nv-card--feature) h3 { margin-top:2rem; }
@media(max-width:1100px) { .nv-grid,.nv-more { grid-template-columns:repeat(2,minmax(0,1fr))!important; } .nv-card--feature { grid-column:1/-1; grid-row:auto; } }
@media(max-width:600px) { .nv-grid,.nv-more { grid-template-columns:1fr!important; } }

/* Eventi v2: calendario, stato, azioni. */
.ev-list { display:grid; gap:1rem; border:0; }
.ev-card { grid-template-columns:9rem minmax(0,1fr) auto!important; border:1px solid #c5cfdb!important; background:#eef2f6; position:relative; overflow:hidden; }
.ev-card::before { content:''; position:absolute; left:9rem; right:0; top:0; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .4s; }
.ev-card:hover::before { transform:scaleX(1); }
.ev-cal { display:flex; flex-direction:column; text-align:center; background:#091f3d; color:#fff; }
.ev-month { padding:.5rem; background:var(--blue); font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.128em; }
.ev-cal b { flex:1; display:grid; place-items:center; padding:1rem .5rem .25rem; font-size:var(--fs-h2); font-weight:500; letter-spacing:-.04em; line-height:1; }
.ev-year { padding-bottom:.875rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.128em; color:#8fa6c4; text-transform:uppercase; }
.ev-body { padding:1.5rem 2rem; display:flex; flex-direction:column; justify-content:center; }
.ev-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1rem; }
.ev-place { display:inline-flex; align-items:center; gap:.375rem; }
.ev-status { padding:.25rem .5rem; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; border:1px solid #b9c4d2; color:#4d5a6c; }
.ev-card.is-next .ev-status { background:#e4f1fa; border-color:var(--blue); color:var(--deep); }
.ev-card.is-live .ev-status { background:#22c55e; border-color:#22c55e; color:#fff; }
.ev-card.is-tbd .ev-status { border-style:dashed; }
.ev-body h3 { font-size:var(--fs-h3); margin:.75rem 0 .375rem; }
.ev-actions { display:flex; flex-direction:column; border-left:1px solid #c5cfdb; min-width:13rem; }
.ev-actions .ev-cta { flex:1; justify-content:space-between; border-left:0; padding:0 1.5rem; }
.ev-ics { height:3rem; border:0; border-top:1px solid #c5cfdb; background:transparent; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:var(--blue); transition:background .15s; }
.ev-ics:hover { background:#e4f1fa; }
.ev-card.is-past { background:#eef2f6; }
.ev-card.is-past .ev-cal { background:#8b9cb4; }
.ev-card.is-past .ev-month { background:#66768b; }
.ev-card.is-past h3,.ev-card.is-past .ev-cal b { opacity:.75; }
.ev-card.is-past .ev-status { background:#d5dde7; border-color:#d5dde7; }
.ev-card.is-tbd .ev-cal b { color:#8fa6c4; }
@media(max-width:900px) { .ev-card { grid-template-columns:7rem minmax(0,1fr)!important; } .ev-card::before { left:7rem; } .ev-actions { grid-column:1/-1; flex-direction:row; border-left:0; border-top:1px solid #c5cfdb; min-width:0; } .ev-actions .ev-cta { padding:1rem 1.25rem; } .ev-ics { border-top:0; border-left:1px solid #c5cfdb; padding:0 1.25rem; height:auto; } }
@media(max-width:600px) { .ev-card { grid-template-columns:5.5rem minmax(0,1fr)!important; } .ev-card::before { left:5.5rem; } .ev-cal b { font-size:var(--fs-h3); } .ev-body { padding:1rem 1.25rem; } .ev-body h3 { font-size:var(--fs-h3); } }

/* ===== Pagina Distributori ===== */
.ds-tabs { margin-bottom:0; }
.ds-tabs button:disabled { opacity:.45; cursor:not-allowed; }
.ds-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-left:1px solid #d5dde7; }
.ds-card { display:flex; flex-direction:column; padding:1.5rem; background:#eef2f6; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; transition:background .2s; }
.ds-card:hover { background:#fff; }
.ds-card:not([hidden]) { animation:card-in .3s ease both; }
.ds-head { display:flex; align-items:center; gap:.625rem; }
.ds-country { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.ds-type { margin-left:auto; padding:.25rem .5rem; border:1px solid #b9c4d2; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#2f3e52; }
.ds-card h3 { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; margin:1.75rem 0 .5rem; }
.ds-todo { padding:.25rem .5rem; background:#fbbf24; color:#091f3d; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.096em; }
.ds-addr { display:flex; gap:.5rem; align-items:flex-start; margin:0 0 1.25rem; font-size:var(--fs-small); color:#4d5a6c; }
.ds-addr svg { flex:none; margin-top:.2rem; color:var(--blue); }
.ds-fams { list-style:none; display:flex; flex-wrap:wrap; gap:.375rem; margin:0 0 1.5rem; padding:0; }
.ds-fams li { padding:.375rem .625rem; background:#e4f1fa; color:var(--deep); font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.096em; text-transform:uppercase; }
.ds-links { margin-top:auto; display:flex; flex-direction:column; border-top:1px dashed #b9c4d2; }
.ds-links a { display:flex; justify-content:space-between; padding:.75rem 0 0; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; color:var(--ink); }
.ds-links a:hover { color:var(--blue); }
.ds-card.is-todo { background:repeating-linear-gradient(135deg,#eef2f6 0 14px,#eef2f7 14px 15px); }
.ds-card.is-todo h3,.ds-card.is-todo .ds-addr { color:#8b9cb4; }
.ds-join { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:3rem; align-items:start; }
.ds-join-copy .eyebrow { display:block; margin-bottom:.75rem; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.ds-join-copy h2 { font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; margin:0 0 1rem; }
.ds-join-copy>p { max-width:46ch; color:#3d4b5e; margin:0 0 2rem; }
.ds-steps { list-style:none; margin:0; padding:0; border-top:1px solid #c5cfdb; }
.ds-steps li { display:grid; grid-template-columns:3rem 1fr; padding:1rem 0; border-bottom:1px solid #c5cfdb; }
.ds-steps li>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.112em; color:var(--blue); padding-top:.25rem; text-transform:uppercase; }
.ds-steps b { display:block; font-size:var(--fs-body); font-weight:500; letter-spacing:-.02em; }
.ds-steps small { display:block; margin-top:.25rem; font-size:var(--fs-small); color:#4d5a6c; }
@media(max-width:1100px) { .ds-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:900px) { .ds-join { grid-template-columns:1fr; } .ds-tabs { grid-template-columns:repeat(3,1fr)!important; } }
@media(max-width:600px) { .ds-grid { grid-template-columns:1fr; } .ds-tabs { grid-template-columns:1fr 1fr!important; } }
.ds-tabs [data-count] { font-style:normal; }

/* Mega menu Azienda: 4 voci compatte. */
.mega-compact--4 .sub-links { grid-template-columns:repeat(4,1fr)!important; }
.mega-compact--4 .sub-links a::after { content:'→'!important; }
@media(max-width:900px) { .mega-compact--4 .sub-links { grid-template-columns:1fr 1fr!important; } }
@media(max-width:600px) { .mega-compact--4 .sub-links { grid-template-columns:1fr!important; } }
/* voce attiva con mega menu: pagina corrente */
.modern-header .nav nav>button.is-current { color:var(--blue); }
.modern-header .nav nav>button.is-current::after { transform:scaleX(1); }

/* Distributori: contatti della singola azienda. */
.ds-links { margin-top:auto; border-top:0; border:1px solid #d5dde7; background:#fff; }
.ds-link { display:grid!important; grid-template-columns:2.5rem minmax(0,1fr) auto; align-items:center; gap:0; padding:0!important; min-height:3.25rem; font:inherit!important; letter-spacing:0!important; color:var(--ink); transition:background .15s,color .15s; }
.ds-link+.ds-link { border-top:1px solid #e1e7ef; }
.ds-link svg { justify-self:center; color:var(--blue); }
.ds-link span { min-width:0; display:flex; flex-direction:column; gap:.125rem; padding:.5rem .5rem .5rem 0; font-size:var(--fs-small); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ds-link small { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#8b9cb4; }
.ds-link b { padding:0 1rem; font:var(--fs-body) Sora,sans-serif; color:#9fabba; transition:transform .2s,color .2s; }
.ds-link:hover { background:#091f3d; color:#fff; }
.ds-link:hover svg,.ds-link:hover small { color:#8cc8ec; }
.ds-link:hover b { color:#fff; transform:translateX(3px); }
.ds-link--web:hover b { transform:translate(2px,-2px); }
.ds-card:hover .ds-links { border-color:#c5cfdb; }
.ds-links a.ds-link:hover { color:#fff; }

/* Distributori: bordi della griglia e delle schede filtro visibili ovunque. */
.cat-tabs { --cl:#d5dde7; }
.ds-tabs { border:1px solid #d5dde7!important; }
.ds-tabs button { border-left:1px solid #d5dde7!important; }
.ds-tabs button:first-child { border-left:0!important; }
.ds-grid { border-left:1px solid #d5dde7; border-top:0; }
.ds-fill { display:flex; flex-direction:column; justify-content:space-between; gap:2rem; min-height:12rem; padding:1.5rem; border-right:1px solid #d5dde7; border-bottom:1px solid #d5dde7; background:repeating-linear-gradient(135deg,#eef2f6 0 12px,#e9eef4 12px 13px); color:var(--ink); transition:background .2s,color .2s; }
.ds-fill>span { font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.112em; color:#4d5a6c; }
.ds-fill b { display:flex; justify-content:space-between; align-items:center; font-size:var(--fs-h3); font-weight:500; letter-spacing:-.03em; }
.ds-fill i { font-style:normal; transition:transform .2s; }
.ds-fill:hover { background:var(--blue); color:#fff; }
.ds-fill:hover>span { color:#e4f1fa; }
.ds-fill:hover i { transform:translateX(4px); }
@media(max-width:900px) { .ds-tabs button:nth-child(4) { border-left:0!important; } .ds-tabs button:nth-child(n+4) { border-top:1px solid #d5dde7; } }
@media(max-width:600px) { .ds-tabs button { border-left:1px solid #d5dde7!important; border-top:1px solid #d5dde7; } .ds-tabs button:nth-child(odd) { border-left:0!important; } .ds-tabs button:first-child { grid-column:auto; } }

/* ===== Animazioni ===== */
@keyframes rv-in { from { opacity:0; transform:translateY(1.25rem); } to { opacity:1; transform:none; } }
@keyframes fade-in { from { opacity:0; } }
@keyframes mega-in { from { opacity:0; transform:translateY(-.5rem); } }
@keyframes cell-in { from { opacity:0; transform:translateY(.5rem); } }
/* comparsa allo scroll */
.js-reveal .rv:not(.is-in) { opacity:0; }
.js-reveal .rv.is-in { animation:rv-in .7s cubic-bezier(.2,.7,.2,1) var(--rd,0ms) both; }
.js-reveal .az-tl-track li.rv.is-in { animation-duration:.5s; }
/* mega menu */
.mega-shell:not([hidden]) { animation:mega-in .28s cubic-bezier(.2,.7,.2,1); }
.menu-backdrop:not([hidden]) { animation:fade-in .3s ease; }
.mega-shell:not([hidden]) .mega-tabs button,.mega-shell:not([hidden]) .mega-panel:not([hidden]) .sub-links>a,.mega-shell:not([hidden]) .mega-panel:not([hidden])>h3,.mega-shell:not([hidden]) .mega-panel:not([hidden])>p { animation:cell-in .4s cubic-bezier(.2,.7,.2,1) both; }
.mega-shell .mega-tabs button:nth-child(1) { animation-delay:.04s; } .mega-shell .mega-tabs button:nth-child(2) { animation-delay:.08s; } .mega-shell .mega-tabs button:nth-child(3) { animation-delay:.12s; } .mega-shell .mega-tabs button:nth-child(4) { animation-delay:.16s; }
.mega-shell .mega-panel>h3 { animation-delay:.05s!important; } .mega-shell .mega-panel>p { animation-delay:.09s!important; }
.mega-shell .sub-links>a:nth-child(1) { animation-delay:.1s; } .mega-shell .sub-links>a:nth-child(2) { animation-delay:.14s; } .mega-shell .sub-links>a:nth-child(3) { animation-delay:.18s; } .mega-shell .sub-links>a:nth-child(4) { animation-delay:.22s; } .mega-shell .sub-links>a:nth-child(5) { animation-delay:.26s; } .mega-shell .sub-links>a:nth-child(6) { animation-delay:.3s; } .mega-shell .sub-links>a:nth-child(n+7) { animation-delay:.34s; }
/* menu mobile */
@media(max-width:900px) { .modern-header .nav nav.open { animation:mega-in .25s cubic-bezier(.2,.7,.2,1); } .modern-header .nav nav.open>* { animation:cell-in .35s cubic-bezier(.2,.7,.2,1) both; } .modern-header .nav nav.open>*:nth-child(2) { animation-delay:.03s; } .modern-header .nav nav.open>*:nth-child(3) { animation-delay:.06s; } .modern-header .nav nav.open>*:nth-child(4) { animation-delay:.09s; } .modern-header .nav nav.open>*:nth-child(5) { animation-delay:.12s; } .modern-header .nav nav.open>*:nth-child(6) { animation-delay:.15s; } .modern-header .nav nav.open>*:nth-child(n+7) { animation-delay:.18s; } }
@media(prefers-reduced-motion:reduce) { .mega-shell,.mega-shell *,.menu-backdrop,.modern-header .nav nav,.modern-header .nav nav>* { animation:none!important; } }
@media print { .js-reveal .rv { opacity:1!important; animation:none!important; } }

/* ===== Preloader ===== */
.preloader { position:fixed; inset:0; z-index:200; display:grid; place-items:center; background:#091f3d; color:#fff; transition:clip-path .7s cubic-bezier(.7,0,.2,1); clip-path:inset(0 0 0 0); }
.pl-skip .preloader { display:none; }
html.pl-on { overflow:hidden; }
.preloader.is-out { clip-path:inset(0 0 100% 0); }
.pl-inner { width:min(22rem,80vw); display:flex; flex-direction:column; gap:1.5rem; transition:opacity .3s, transform .5s; }
.preloader.is-out .pl-inner { opacity:0; transform:translateY(-1.5rem); }
.pl-logo { width:9rem; filter:brightness(0) invert(1); }
.pl-bar { display:grid; grid-template-columns:repeat(32,1fr); gap:3px; }
.pl-bar i { aspect-ratio:1; background:#ffffff14; transition:background .2s; }
.pl-bar i.on { background:var(--blue); }
.pl-bar i.on:nth-child(5n) { background:#8cc8ec; }
.pl-meta { display:flex; justify-content:space-between; font:var(--fs-label) 'Space Grotesk',system-ui,sans-serif; text-transform:uppercase; letter-spacing:.128em; color:#8fa6c4; }
.pl-num { color:#fff; font-variant-numeric:tabular-nums; }
@media print { .preloader { display:none; } }

/* Logo bianco ufficiale: niente filtro. */
.pl-logo { filter:none; width:10rem; }
.modern-footer .footer-grid img[src*="elad-logo-white"] { filter:none; width:8.5rem; }

/* Spaziature dopo la rimozione degli eyebrow ridondanti. */
.mega-index .mega-panel>h3:first-child { margin-top:0!important; padding-right:3rem; }
.footer-invitation h2 { margin-top:0; }
.sv-head>h2:first-child { margin-top:0; }
.pd-label>h2:first-child { margin-top:0; }
body[data-page=home] .news-grid article>div { margin-bottom:2rem; }

/* Home: novità in forma di elenco. */
.hn-list { list-style:none; margin:-2rem 0 0; padding:0; }
.hn-list a { display:grid; grid-template-columns:10rem 10rem minmax(0,1fr) auto; align-items:baseline; gap:0; padding:1.5rem 0; border-bottom:1px solid #d5dde7; color:var(--ink); text-decoration:none; transition:background .2s,padding .2s; }
.hn-list time { font:var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.032em; color:#64748b; text-transform:uppercase; }
.hn-type { font-size:var(--fs-small); color:#64748b; }
.hn-title { font-size:var(--fs-h3); font-weight:500; letter-spacing:-.025em; line-height:1.25; }
.hn-arrow { color:#7b8798; font-size:var(--fs-h3); transition:transform .2s,color .2s; }
.hn-list a:hover { background:#eef2f6; padding-left:.75rem; padding-right:.75rem; }
.hn-list a:hover .hn-arrow { color:var(--blue); transform:translateX(.25rem); }
@media (max-width:760px){
   .hn-list a { grid-template-columns:auto minmax(0,1fr) auto; gap:.5rem 1rem; }
 .hn-title { grid-column:1/3; grid-row:2; }
 .hn-arrow { grid-row:1/3; grid-column:3; align-self:center; }
}

/* Sistema bottoni unico: primario pieno blu, secondario a filo scuro. */
.btn,.nav-cta,.mega-cta,.gform_button,.pd-btn-dark,.wl-btn-dark,.ev-cta,.section-title .text-link,.elad-hero-link,.pd-btn:not(.pd-btn-dark),.wl-btn:not(.wl-btn-dark),#load-more-btn,#nv-load-btn,.ev-ics,.shop-link,.wishlist-link { display:inline-flex!important; align-items:center; justify-content:center; gap:.75rem; min-height:3rem; height:auto!important; padding:.75rem 1.5rem!important; font:600 var(--fs-mono)/1.2 'Space Grotesk',system-ui,sans-serif!important; letter-spacing:.112em!important; text-transform:uppercase!important; text-align:center; border-radius:0!important; border:1.5px solid!important; text-decoration:none!important; box-shadow:none!important; cursor:pointer; transition:background-color .2s,color .2s,border-color .2s; }
.btn,.nav-cta,.mega-cta,.gform_button,.pd-btn-dark,.wl-btn-dark,.ev-cta { background:var(--blue)!important; border-color:var(--blue)!important; color:#fff!important; }
.btn:hover,.nav-cta:hover,.mega-cta:hover,.gform_button:hover,.pd-btn-dark:hover,.wl-btn-dark:hover,.ev-cta:hover { background:var(--ink)!important; border-color:var(--ink)!important; color:#fff!important; }
.section-title .text-link,.elad-hero-link,.pd-btn:not(.pd-btn-dark),.wl-btn:not(.wl-btn-dark),#load-more-btn,#nv-load-btn,.ev-ics,.shop-link,.wishlist-link { background:transparent!important; border-color:var(--ink)!important; color:var(--ink)!important; }
.section-title .text-link:hover,.elad-hero-link:hover,.pd-btn:not(.pd-btn-dark):hover,.wl-btn:not(.wl-btn-dark):hover,#load-more-btn:hover,#nv-load-btn:hover,.ev-ics:hover,.shop-link:hover,.wishlist-link:hover { background:var(--ink)!important; border-color:var(--ink)!important; color:#fff!important; }
.btn span[aria-hidden],.nav-cta span[aria-hidden],.mega-cta span[aria-hidden],.gform_button span[aria-hidden],.pd-btn-dark span[aria-hidden],.wl-btn-dark span[aria-hidden],.ev-cta span[aria-hidden],.section-title .text-link span[aria-hidden],.elad-hero-link span[aria-hidden],.pd-btn:not(.pd-btn-dark) span[aria-hidden],.wl-btn:not(.wl-btn-dark) span[aria-hidden],#load-more-btn span[aria-hidden],#nv-load-btn span[aria-hidden],.ev-ics span[aria-hidden],.shop-link span[aria-hidden],.wishlist-link span[aria-hidden] { display:inline-block; transition:transform .2s; }
.btn:hover span[aria-hidden],.nav-cta:hover span[aria-hidden],.mega-cta:hover span[aria-hidden],.gform_button:hover span[aria-hidden],.pd-btn-dark:hover span[aria-hidden],.wl-btn-dark:hover span[aria-hidden],.ev-cta:hover span[aria-hidden],.section-title .text-link:hover span[aria-hidden],.elad-hero-link:hover span[aria-hidden],.pd-btn:not(.pd-btn-dark):hover span[aria-hidden],.wl-btn:not(.wl-btn-dark):hover span[aria-hidden],#load-more-btn:hover span[aria-hidden],#nv-load-btn:hover span[aria-hidden],.ev-ics:hover span[aria-hidden],.shop-link:hover span[aria-hidden],.wishlist-link:hover span[aria-hidden] { transform:translateX(.25rem); }
.btn:focus-visible,.nav-cta:focus-visible,.mega-cta:focus-visible,.gform_button:focus-visible,.pd-btn-dark:focus-visible,.wl-btn-dark:focus-visible,.ev-cta:focus-visible,.section-title .text-link:focus-visible,.elad-hero-link:focus-visible,.pd-btn:not(.pd-btn-dark):focus-visible,.wl-btn:not(.wl-btn-dark):focus-visible,#load-more-btn:focus-visible,#nv-load-btn:focus-visible,.ev-ics:focus-visible,.shop-link:focus-visible,.wishlist-link:focus-visible { outline:2px solid var(--blue)!important; outline-offset:3px; }
/* Bottoni: varianti di contesto. */
.elad-hero .elad-hero-link { border-color:#fff!important; color:#fff!important; }
.elad-hero .elad-hero-link:hover { background:#fff!important; color:var(--ink)!important; }
.elad-hero .btn:hover { background:#fff!important; border-color:#fff!important; color:var(--ink)!important; }
.ev-actions { justify-content:center; gap:.5rem; padding:1.5rem; }
.ev-actions .ev-cta { flex:none; }
@media(max-width:900px){ .ev-actions { grid-column:1/-1; border-left:0; border-top:1px solid #c5cfdb; flex-direction:row; flex-wrap:wrap; justify-content:flex-start; } }
/* Card bianche, distinte dallo sfondo pagina. */
.catalog-grid .product-card,.pd-list,#detail-specs .spec-table,.pd-pager,.wl-table,.wl-empty,:is(.wl-sales,.gf-skin) .gform_wrapper,.family-card,
body[data-page=home] .engineering-cards>a,body[data-page=home] .company-block,body[data-page=home] .sector-strip a,.fullscreen-hero .elad-hero-families,
.empty-results:not([hidden]),.sv-card,.sv-cap-fig,.sv-steps li,.sv-facts>div,.sv-tests article,.sec-card,.az-stats div,.az-areas article,.az-certs a,.az-partners span,
.nv-card,.ev-card,.ds-card { background:#fff; }
body[data-page=home] .news-grid article { background:#fff!important; }
.catalog-grid .product-card:hover,.family-card:hover,.nv-card:hover,.ds-card:hover,.ev-card:hover,body[data-page=home] .engineering-cards>a:hover,.sv-cap-list li:hover { background:#edf2f9; }

/* Palette ELAD: blu #409ed8, navy #091f3d, bianco, grigio azzurro. Bottoni sempre pieni. */
.btn:hover,.nav-cta:hover,.mega-cta:hover,.gform_button:hover,.pd-btn-dark:hover,.wl-btn-dark:hover,.ev-cta:hover { background:#2b7cb3!important; border-color:#2b7cb3!important; color:#fff!important; }
.section-title .text-link,.elad-hero-link,.pd-btn:not(.pd-btn-dark),.wl-btn:not(.wl-btn-dark),#load-more-btn,#nv-load-btn,.ev-ics,.shop-link,.wishlist-link { background:#091f3d!important; border-color:#091f3d!important; color:#fff!important; }
.section-title .text-link:hover,.elad-hero-link:hover,.pd-btn:not(.pd-btn-dark):hover,.wl-btn:not(.wl-btn-dark):hover,#load-more-btn:hover,#nv-load-btn:hover,.ev-ics:hover,.shop-link:hover,.wishlist-link:hover { background:#409ed8!important; border-color:#409ed8!important; color:#fff!important; }
.elad-hero .elad-hero-link { background:#fff!important; border-color:#fff!important; color:#091f3d!important; }
.elad-hero .elad-hero-link:hover,.elad-hero .btn:hover { background:#409ed8!important; border-color:#409ed8!important; color:#fff!important; }
.modern-header .nav nav>.shop-link,.modern-header .nav nav>.wishlist-link { background:#091f3d!important; border-color:#091f3d!important; color:#fff!important; }
.modern-header .nav nav>.shop-link:hover,.modern-header .nav nav>.wishlist-link:hover { background:#409ed8!important; border-color:#409ed8!important; color:#fff!important; }
.modern-header .nav nav>.shop-link span,.modern-header .nav nav>.shop-link:hover span { color:inherit!important; }
.modern-header .wishlist-link:hover b { background:#fff!important; color:#091f3d!important; }
/* Catalogo: filtri ben distinti e chiaramente cliccabili. */
.catalog-section .catalog-toolbar { background:#fff; border-color:#c5cfdb; }
.cat-tabs { --cl:#c5cfdb; background:#fff; border-color:#c5cfdb; }
.cat-tabs :is(button,a) { position:relative; cursor:pointer; background:#fff; box-shadow:inset 0 -3px 0 transparent; transition:background-color .2s,box-shadow .2s,color .2s; }
.cat-tabs :is(button,a)>b { font-size:var(--fs-body); font-weight:500; color:#091f3d; }
.cat-tabs :is(button,a)>span { color:#2b7cb3; }
.cat-tabs :is(button,a)::after { content:'→'; position:absolute; top:1.25rem; right:1rem; width:1.75rem; height:1.75rem; display:grid; place-items:center; border:1px solid #c5cfdb; font:var(--fs-small) Sora,sans-serif; color:#091f3d; transition:background-color .2s,border-color .2s,color .2s,transform .2s; }
.cat-tabs :is(button,a):hover { background:#e4f1fa; box-shadow:inset 0 -3px 0 #409ed8; }
.cat-tabs :is(button,a):hover::after { background:#409ed8; border-color:#409ed8; color:#fff; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page]) { background:#091f3d; box-shadow:inset 0 -3px 0 #409ed8; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])>span { color:#8cc8ec; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])::after { content:'✓'; background:#409ed8; border-color:#409ed8; color:#fff; }
.cat-tabs :is(button,a):focus-visible,#sub-chips :is(button,a):focus-visible { outline:2px solid #409ed8; outline-offset:-2px; }
.sub-chips { background:#eef2f6; border-color:#c5cfdb; }
#sub-chips :is(button,a) { cursor:pointer; background:#fff; border-color:#c5cfdb; transition:background-color .15s,border-color .15s,color .15s; }
#sub-chips :is(button,a):hover { background:#e4f1fa; border-color:#409ed8; color:#091f3d; }
@media(max-width:600px){ .cat-tabs :is(button,a)::after { top:.625rem; right:.625rem; width:1.5rem; height:1.5rem; font-size:var(--fs-small); } }
/* Categorie: selettore quadrato tipo radio al posto di freccia/check. */
.cat-tabs :is(button,a)::after,.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])::after { content:''; top:1.25rem; right:1rem; width:1rem; height:1rem; border:1.5px solid #9fabba; background:#fff; box-shadow:none; transform:none; }
.cat-tabs :is(button,a):hover::after { border-color:#409ed8; background:#fff; box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 10px #c9e4f5; }
.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])::after { border-color:#409ed8; background:#409ed8; box-shadow:inset 0 0 0 3px #091f3d; }
@media(max-width:600px){ .cat-tabs :is(button,a)::after,.cat-tabs :is(button[aria-pressed=true],a[aria-current=page])::after { top:.75rem; right:.75rem; width:.875rem; height:.875rem; } }
/* Header: stessa tipografia per voci di menu e bottoni. */
.modern-header .nav nav>a,.modern-header .nav nav>button,.modern-header .nav nav>.shop-link,.modern-header .nav nav>.wishlist-link,.modern-header .nav nav>.wishlist-link span,.modern-header .nav nav>.nav-cta { font-family:'Space Grotesk',system-ui,sans-serif!important; font-size:var(--fs-mono)!important; font-weight:500!important; letter-spacing:.1em!important; text-transform:uppercase; }
.modern-header .nav nav>.shop-link span[aria-hidden],.modern-header .nav nav>.nav-cta span[aria-hidden] { font:var(--fs-small)/1 Sora,sans-serif!important; letter-spacing:0!important; }
.modern-header .wishlist-link b { font-size:var(--fs-xs)!important; letter-spacing:0!important; }
/* Mega menu: card bianche staccate dallo sfondo. */
.mega-shell .sub-links { gap:0; border:1px solid #c5cfdb!important; background:#c5cfdb; gap:1px; }
.mega-shell .sub-links>a { background:#fff!important; border:0!important; transition:background-color .2s; }
.mega-shell .sub-links>a:hover { background:#e4f1fa!important; }
.mega-shell .sub-links>a:hover::after { color:#409ed8; }
/* Mega menu: hover delle card in navy. */
.mega-shell .sub-links>a:hover { background:#091f3d!important; color:#fff!important; }
.mega-shell .sub-links>a:hover *,.mega-shell .sub-links>a:hover::after { color:#fff!important; }
.mega-shell .sub-links>a:hover small,.mega-shell .sub-links>a:hover::before { color:#8cc8ec!important; }
/* Mobile: decorazione pixel dell'intestazione nel flusso, sopra il titolo. */
@media(max-width:900px){ .px--heading { position:static!important; display:inline-grid; margin:0 0 1.25rem; opacity:1; } }
/* Fascia "vai a" (pd-jump): banda navy con link in evidenza. */
.pd-jump { background:#091f3d; border-top:0; border-bottom:0; }
.pd-jump>span { color:#8cc8ec; font-weight:500; padding-right:2rem; }
.pd-jump a { flex:1 1 0; justify-content:space-between; gap:1rem; padding:1.375rem 1.5rem; border-left:1px solid #ffffff1f; font-size:var(--fs-small); font-weight:500; color:#fff; letter-spacing:.1em; transition:background-color .2s,color .2s; }
.pd-jump a:last-child { border-right:1px solid #ffffff1f; }
.pd-jump a i { color:#8cc8ec; margin-right:auto; }
.pd-jump a b { display:grid; place-items:center; width:1.75rem; height:1.75rem; border:1px solid #ffffff40; color:#fff; font-size:var(--fs-small); transition:background-color .2s,border-color .2s,transform .2s; }
.pd-jump a:hover { background:#409ed8; color:#fff; }
.pd-jump a:hover i { color:#fff; }
.pd-jump a:hover b { background:#fff; border-color:#fff; color:#091f3d; transform:translateY(2px); }
.pd-jump a:focus-visible { outline:2px solid #8cc8ec; outline-offset:-2px; }
@media(max-width:600px){ .pd-jump { flex-direction:column; } .pd-jump a { justify-content:space-between; padding:1rem 1.25rem; border-left:0; border-right:0!important; border-top:1px solid #ffffff1f; } .pd-jump a:first-of-type { border-top:0; } }
.pd-jump a { justify-content:flex-start; }
.pd-jump a i { margin-right:0; }
.pd-jump a b { margin-left:auto; }
.pd-jump a:last-child { border-right:0; }
/* Page heading: più respiro. */
.crumbs+.page-heading,.page-heading { padding-top:5rem; padding-bottom:4rem; }
.page-heading h1 { margin-bottom:2rem; }
@media(max-width:600px){ .crumbs+.page-heading,.page-heading { padding-top:2.5rem; padding-bottom:2.5rem; } .page-heading h1 { margin-bottom:1.5rem; } }
.crumbs+.page-heading,.page-heading { padding-top:4rem; padding-bottom:4rem; }
@media(max-width:600px){ .crumbs+.page-heading,.page-heading { padding-top:2.5rem; padding-bottom:2.5rem; } }
.pd-jump a { padding-top:1rem; padding-bottom:1rem; }
.pd-jump a b { width:1.5rem; height:1.5rem; font-size:var(--fs-small); }
@media(max-width:600px){ .pd-jump a { padding-top:.75rem; padding-bottom:.75rem; } }

/* Home: Chi siamo. */
.home-about { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:4rem; align-items:center; }
.ha-media { margin:0; }
.ha-media img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; }
.ha-copy h2 { margin:0 0 2rem; font-size:var(--fs-h2); font-weight:500; letter-spacing:-.045em; line-height:1.05; color:var(--ink); }
.ha-copy p { margin:0 0 1.25rem; font-size:var(--fs-body); line-height:var(--lh-text); color:#4d5a6c; max-width:40rem; }
.ha-copy .ha-lead { font-size:var(--fs-h3); line-height:var(--lh-text); letter-spacing:-.015em; color:var(--ink); margin-bottom:2rem; }
.ha-areas { list-style:none; margin:0 0 1.75rem; padding:0; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #c5cfdb; max-width:40rem; }
.ha-areas li { position:relative; padding:.75rem 1rem .75rem 1.25rem; border-bottom:1px solid #c5cfdb; font-size:var(--fs-body); color:var(--ink); }
.ha-areas li:nth-child(odd) { border-right:1px solid #c5cfdb; }
.ha-areas li::before { content:''; position:absolute; left:0; top:1.15rem; width:.375rem; height:.375rem; background:#409ed8; }
.ha-areas li:nth-child(even) { padding-left:2.25rem; }
.ha-areas li:nth-child(even)::before { left:1rem; }
.ha-copy .btn { margin-top:.75rem; }
@media(max-width:900px){ .home-about { grid-template-columns:1fr; gap:2.5rem; } .ha-media img { aspect-ratio:16/10; } }
@media(max-width:600px){ .ha-areas { grid-template-columns:1fr; } .ha-areas li:nth-child(odd) { border-right:0; } .ha-areas li:nth-child(even) { padding-left:1.25rem; } .ha-areas li:nth-child(even)::before { left:0; } }
.ha-areas li:last-child:nth-child(odd) { grid-column:1/-1; border-right:0; }
/* Larghezza massima unica del sito: il gutter cresce oltre i 1360px di contenuto. */
:root { --max:1360px; --gutter:max(2rem,calc((100vw - var(--max)) / 2)); }
@media(max-width:1180px){ :root { --gutter:28px; } }
@media(max-width:600px){ :root { --gutter:20px; } }
/* Chi siamo: immagine più contenuta, testo più caratterizzato, paragrafi a tutta colonna. */
.home-about { grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:5rem; align-items:start; }
.ha-media img { aspect-ratio:4/5; }
.ha-copy p,.ha-areas { max-width:none; }
.ha-copy h2 { font-family:'Space Grotesk',system-ui,sans-serif; font-size:var(--fs-mono); font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:#2b7cb3; display:flex; align-items:center; gap:.75rem; margin-bottom:1.75rem; }
.ha-copy h2::before { content:''; width:.5rem; height:.5rem; background:#409ed8; }
.ha-copy .ha-lead { font-size:var(--fs-h2); line-height:1.2; letter-spacing:-.035em; font-weight:500; color:#091f3d; margin-bottom:2.5rem; }
.ha-copy .ha-lead em { font-style:normal; color:#409ed8; }
.ha-areas li { font-family:'Space Grotesk',system-ui,sans-serif; font-size:var(--fs-mono); letter-spacing:.06em; text-transform:uppercase; }
@media(max-width:900px){ .home-about { grid-template-columns:1fr; gap:2.5rem; } }
/* Allineamento alla larghezza massima per header, hero e famiglie. */
.modern-header .nav { padding-left:var(--gutter)!important; padding-right:var(--gutter)!important; }
.fullscreen-hero .elad-hero-content { padding-left:var(--gutter)!important; padding-right:var(--gutter)!important; }
.hero-video-bottom { left:var(--gutter)!important; }
.mega-shell .mega-panel,.mega-shell>.wrap { padding-left:var(--gutter); padding-right:var(--gutter); }
@media(min-width:901px){
 .fullscreen-hero .elad-hero-families { padding:0 var(--gutter); background:#fff; }
 .elad-hero-families a,.elad-hero-families a:first-child { padding:1.5rem 1.5rem 1.25rem!important; }
 .elad-hero-families a:first-child { border-left:1px solid #d5dde7; }
 .elad-hero-families a:last-child { border-right:1px solid #d5dde7; }
}
@media(min-width:901px){
 .mega-index:not(.mega-compact) .mega-body { padding-left:var(--gutter); padding-right:var(--gutter); }
 .mega-index:not(.mega-compact) .mega-panel { padding-left:2.5rem!important; padding-right:0!important; }
 .mega-index:not(.mega-compact) .mega-tabs { border-left:1px solid #d5dde7; }
 .mega-shell .mega-close { right:var(--gutter)!important; }
}
:root { --max:1440px; }
/* Tipografia del testo corrente: un solo corpo per i paragrafi, interlinea più compatta. */
body { line-height:var(--lh-text); }
body p:not(.elad-hero-kicker,.elad-hero-intro,.elad-hero-description,.history-detail p) { font-size:var(--fs-body)!important; line-height:var(--lh-text)!important; }
body .page-heading>p,body .pd-lead { font-size:var(--fs-lead)!important; line-height:var(--lh-text)!important; }
body .ha-copy .ha-lead { font-size:var(--fs-h2)!important; line-height:1.18!important; }
.ha-copy .ha-lead { margin-top:0; }
body { line-height:var(--lh-text); }
body p:not(.elad-hero-kicker,.elad-hero-intro,.elad-hero-description,.history-detail p) { line-height:var(--lh-text)!important; }
body .page-heading>p,body .pd-lead { line-height:var(--lh-text)!important; }
/* Home: blocco know-how. */
body[data-page=home] .engineering-panel { grid-template-columns:minmax(0,5fr) minmax(0,7fr); background:#091f3d; border:0; }
body[data-page=home] .engineering-intro { position:relative; padding:3.5rem 3rem 3rem; border-right:0; color:#fff; overflow:hidden; }
body[data-page=home] .engineering-intro h2 { margin:0 0 1.25rem; color:#fff; }
body[data-page=home] .engineering-intro h2 em { font-style:normal; color:#8cc8ec; }
body[data-page=home] .engineering-intro p { color:#aec0d8!important; margin:0 0 2.5rem; }
.ek-px { position:absolute; top:2rem; right:2rem; --s:.625rem; --g:.1875rem; color:#409ed8; opacity:.9; }
.process-steps { list-style:none; margin:auto 0 2.5rem; padding:0; width:100%; display:grid; grid-template-columns:repeat(4,1fr); position:relative; }
.process-steps::before { content:''; position:absolute; left:.3125rem; right:0; top:.3125rem; height:1px; background:#ffffff33; }
.process-steps li { position:relative; padding-top:1.5rem; font:500 var(--fs-mono)/1.3 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#fff; }
.process-steps li::before { content:''; position:absolute; left:0; top:0; width:.625rem; height:.625rem; background:#091f3d; border:1.5px solid #409ed8; box-sizing:border-box; }
.process-steps li:first-child::before { background:#409ed8; }
.process-steps b { display:block; margin-bottom:.375rem; font-weight:500; font-size:var(--fs-xs); color:#8cc8ec; }
body[data-page=home] .engineering-intro .btn:hover { background:#fff!important; border-color:#fff!important; color:#091f3d!important; }
body[data-page=home] .engineering-cards>a { background:#fff; }
body[data-page=home] .engineering-cards>a+a { border-left:1px solid #091f3d; }
body[data-page=home] .engineering-cards>a>div { padding:1.75rem; }
body[data-page=home] .engineering-cards h3 { font-size:var(--fs-h3); }
body[data-page=home] .engineering-cards img { transition:transform .5s; }
body[data-page=home] .engineering-cards>a { overflow:hidden; }
body[data-page=home] .engineering-cards>a:hover { background:#091f3d!important; color:#fff; }
body[data-page=home] .engineering-cards>a:hover h3 { color:#fff; }
body[data-page=home] .engineering-cards>a:hover p { color:#aec0d8; }
body[data-page=home] .engineering-cards>a:hover small { color:#8cc8ec; }
body[data-page=home] .engineering-cards>a:hover span { color:#fff; border-color:#ffffff33; }
body[data-page=home] .engineering-cards>a:hover img { transform:scale(1.03); }
@media(max-width:900px){ body[data-page=home] .engineering-panel { grid-template-columns:1fr; } body[data-page=home] .engineering-intro { padding:2.5rem 1.5rem 2rem; } .ek-px { top:1.5rem; right:1.5rem; --s:.5rem; } body[data-page=home] .engineering-cards>a+a { border-left:0; } }
@media(max-width:600px){ .process-steps { grid-template-columns:1fr 1fr; row-gap:1.5rem; } .process-steps::before { display:none; } }
@media(max-width:900px){ .ek-px { top:auto; bottom:2rem; right:1.5rem; } }
/* Home: fascia know-how a tutto schermo, con un po' di movimento. */
body[data-page=home] .know-band { position:relative; background:#091f3d; padding-top:6rem; padding-bottom:6rem; margin:2rem 0; overflow:hidden; }
body[data-page=home] .know-band::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#409ed81a 1px,transparent 1px) 0 0/4rem 4rem,linear-gradient(#409ed81a 1px,transparent 1px) 0 0/4rem 4rem; mask-image:radial-gradient(ellipse at 15% 40%,#000 0,transparent 65%); -webkit-mask-image:radial-gradient(ellipse at 15% 40%,#000 0,transparent 65%); pointer-events:none; }
body[data-page=home] .know-band .engineering-panel { position:relative; background:transparent; align-items:center; gap:4rem; }
body[data-page=home] .know-band .engineering-intro { padding:0; overflow:visible; }
.know-band .ek-px { top:-2.5rem; right:0; }
body[data-page=home] .know-band .engineering-cards { gap:1.5rem; align-items:start; }
body[data-page=home] .know-band .engineering-cards>a+a { border-left:0; margin-top:4rem; }
body[data-page=home] .know-band .engineering-cards>a { border:1px solid #ffffff1a; transition:background-color .25s,transform .35s cubic-bezier(.2,.7,.2,1); }
body[data-page=home] .know-band .engineering-cards>a:hover { background:#409ed8!important; transform:translateY(-.5rem); border-color:#409ed8; }
body[data-page=home] .know-band .engineering-cards>a:hover p,body[data-page=home] .know-band .engineering-cards>a:hover small { color:#fff; }
/* Movimento: linea di processo che si riempie, tappe in sequenza, pixel che pulsano, card che salgono. */
.process-steps::after { content:''; position:absolute; left:.3125rem; right:0; top:.3125rem; height:1px; background:#409ed8; transform:scaleX(0); transform-origin:left; transition:transform 1.6s cubic-bezier(.6,0,.2,1) .2s; }
.know-band.is-live .process-steps::after { transform:scaleX(1); }
.process-steps li::before { transition:background-color .3s,transform .3s; }
.know-band.is-live .process-steps li::before { background:#409ed8; transform:scale(1.15); }
.know-band.is-live .process-steps li:nth-child(1)::before { transition-delay:.2s; }
.know-band.is-live .process-steps li:nth-child(2)::before { transition-delay:.7s; }
.know-band.is-live .process-steps li:nth-child(3)::before { transition-delay:1.15s; }
.know-band.is-live .process-steps li:nth-child(4)::before { transition-delay:1.6s; }
.know-band .engineering-cards>a { opacity:0; transform:translateY(2.5rem); }
.know-band.is-live .engineering-cards>a { opacity:1; transform:none; transition:opacity .7s ease,transform .8s cubic-bezier(.2,.7,.2,1),background-color .25s; }
.know-band.is-live .engineering-cards>a+a { transition-delay:.15s,.15s,0s; }
@keyframes ek-blink { 0%,100% { opacity:1; } 50% { opacity:.25; } }
.know-band .ek-px i:not(.off) { animation:ek-blink 2.8s ease-in-out infinite; }
.know-band .ek-px i:nth-child(3n) { animation-delay:.4s; } .know-band .ek-px i:nth-child(3n+1) { animation-delay:1.1s; } .know-band .ek-px i:nth-child(5n) { animation-delay:1.9s; }
@media(prefers-reduced-motion:reduce){ .know-band .engineering-cards>a { opacity:1; transform:none; } .process-steps::after { transform:none; } .know-band .ek-px i { animation:none!important; } }
@media(max-width:900px){ body[data-page=home] .know-band { padding-top:4rem; padding-bottom:4rem; } body[data-page=home] .know-band .engineering-panel { gap:3rem; } body[data-page=home] .know-band .engineering-cards>a+a { margin-top:0; } .know-band .ek-px { top:-1.5rem; bottom:auto; } }
body[data-page=home] .know-band .engineering-panel { padding-left:var(--gutter)!important; padding-right:var(--gutter)!important; border:0!important; }
body[data-page=home] .know-band .engineering-intro { border:0!important; }
@media(max-width:600px){ .know-band .ek-px { display:none; } }
@media(max-width:600px){ .process-steps::after { display:none; } }
/* Know-how: card a piena altezza della fascia, senza gap. */
body[data-page=home] .know-band { padding-top:0; padding-bottom:0; }
body[data-page=home] .know-band .engineering-panel { align-items:stretch; }
body[data-page=home] .know-band .engineering-intro { padding:6rem 0; justify-content:center; }
.know-band .ek-px { top:3rem; }
body[data-page=home] .know-band .engineering-cards { gap:0; align-items:stretch; }
body[data-page=home] .know-band .engineering-cards>a { border:0; border-left:1px solid #ffffff1a; margin-top:0!important; display:flex; flex-direction:column; }
body[data-page=home] .know-band .engineering-cards>a+a { border-left:1px solid #091f3d; }
body[data-page=home] .know-band .engineering-cards img { flex:1 1 auto; height:100%; min-height:18rem; aspect-ratio:auto; }
body[data-page=home] .know-band .engineering-cards>a>div { flex:0 0 auto; }
body[data-page=home] .know-band .engineering-cards>a:hover { transform:none; }
@media(max-width:900px){ body[data-page=home] .know-band .engineering-intro { padding:4rem 0 3rem; } body[data-page=home] .know-band .engineering-panel { gap:0; padding-left:0!important; padding-right:0!important; } body[data-page=home] .know-band .engineering-intro { padding-left:var(--gutter); padding-right:var(--gutter); } body[data-page=home] .know-band .engineering-cards img { min-height:0; aspect-ratio:16/10; height:auto; } body[data-page=home] .know-band .engineering-cards>a+a { border-left:0; border-top:1px solid #091f3d; } }
body[data-page=home] section.know-band { padding-top:0!important; padding-bottom:0!important; }
/* Home: fascia settori con immagine a tutta larghezza e card con icone a pixel. */
.sector-visual { position:relative; margin:0; height:clamp(16rem,30vw,28rem); background:#091f3d; }
.sector-visual img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 40%; }
.sector-visual::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,#091f3d80); pointer-events:none; }
.sector-band .section-title { margin-bottom:2rem; }
body[data-page=home] .sector-band .sector-strip { position:relative; z-index:2; margin-top:-7rem; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid #c5cfdb; border-right:0; border-bottom:0; box-shadow:0 1.5rem 3rem -1.5rem #091f3d40; }
body[data-page=home] .sector-band .sector-strip a { justify-content:flex-start; gap:0; min-height:0; padding:1.5rem 1.5rem 1.25rem; background:#fff; border-right:1px solid #c5cfdb; border-bottom:1px solid #c5cfdb; transition:background-color .25s,color .25s; }
body[data-page=home] .sector-band .sector-strip span::before { content:none; }
.ss-head { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:2.5rem; }
.ss-num { font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.1em; color:#2b7cb3!important; text-transform:uppercase; }
.sector-band .ss-head .px { --s:.5rem; --g:.1875rem; color:#409ed8; transition:color .25s; }
body[data-page=home] .sector-band .sector-strip h3 { font-size:var(--fs-h3); padding-right:0; margin:0 0 .5rem; }
body[data-page=home] .sector-band .sector-strip p { color:#4d5a6c; margin:0 0 1.5rem; }
.ss-foot { margin-top:auto; display:flex; justify-content:space-between; align-items:center; padding-top:1rem; border-top:1px dashed #b9c4d2; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#091f3d; }
body[data-page=home] .sector-band .sector-strip b { position:static; font:var(--fs-body) Sora,sans-serif; transition:transform .2s; }
body[data-page=home] .sector-band .sector-strip a:hover { background:#091f3d!important; color:#fff; }
body[data-page=home] .sector-band .sector-strip a:hover p { color:#aec0d8; }
body[data-page=home] .sector-band .sector-strip a:hover .ss-num,body[data-page=home] .sector-band .sector-strip a:hover .px { color:#8cc8ec!important; }
body[data-page=home] .sector-band .sector-strip a:hover .ss-foot { color:#fff; border-color:#ffffff33; }
body[data-page=home] .sector-band .sector-strip a:hover b { transform:translate(2px,-2px); color:#8cc8ec; }
@media(max-width:1100px){ body[data-page=home] .sector-band .sector-strip { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:-4rem; } }
@media(max-width:600px){ body[data-page=home] .sector-band .sector-strip { grid-template-columns:1fr; margin-top:-3rem; } .ss-head { margin-bottom:1.5rem; } }
.sector-visual { background:transparent; }
.sector-visual::after { content:none; }
.ss-head { height:3.25rem; margin-bottom:1.75rem; }
body[data-page=home] .sector-band .sector-strip .ss-foot span { font:inherit; letter-spacing:inherit; color:inherit; }
/* Novità: card interamente cliccabili e riconoscibili. */
.nv-card { position:relative; cursor:pointer; transition:background-color .25s,color .25s,box-shadow .25s; }
.nv-card .nv-link::before { content:''; position:absolute; inset:0; z-index:1; }
.nv-card .nv-link { align-items:center; }
.nv-card .nv-link span { display:grid; place-items:center; width:2rem; height:2rem; border:1px solid #c5cfdb; color:#091f3d; font-size:var(--fs-small); transition:background-color .2s,border-color .2s,color .2s,transform .2s; }
.nv-card:hover { background:#091f3d!important; color:#fff; box-shadow:inset 0 3px 0 #409ed8; }
.nv-card:hover h3 { color:#fff; }
.nv-card:hover p { color:#aec0d8; }
.nv-card:hover .nv-top time { color:#8cc8ec; }
.nv-card:hover .nv-type { border-color:#ffffff40; color:#fff; }
.nv-card:hover .nv-link { color:#fff; border-color:#ffffff33; }
.nv-card:hover .nv-link span { background:#409ed8; border-color:#409ed8; color:#fff; transform:translateX(3px); }
.nv-card:focus-within { outline:2px solid #409ed8; outline-offset:-2px; }
.nv-card .nv-link:focus-visible { outline:none; }
/* Card in evidenza: resta navy, in hover diventa blu. */
.nv-grid .nv-card--feature { background:#091f3d!important; color:#fff; }
.nv-card--feature h3 { color:#fff; }
.nv-card--feature .nv-link span { border-color:#ffffff40; color:#fff; }
.nv-grid .nv-card--feature:hover { background:#409ed8!important; box-shadow:none; }
.nv-card--feature:hover p,.nv-card--feature:hover .nv-top time { color:#fff; }
.nv-card--feature:hover .px { color:#091f3d; }
.nv-card--feature:hover .nv-type { background:#091f3d; border-color:#091f3d; }
.nv-card--feature:hover .nv-link span { background:#fff; border-color:#fff; color:#091f3d; }
/* Novità: quadratino freccia pieno blu. */
.nv-card .nv-link span,.nv-card--feature .nv-link span { background:#409ed8; border-color:#409ed8; color:#fff; }
.nv-card:hover .nv-link span { background:#fff; border-color:#fff; color:#091f3d; }
/* Novità: calendario eventi rivisto. */
.ev-actions [hidden],.ev-ics[hidden] { display:none!important; }
.ev-list { gap:0; border-top:1px solid #c5cfdb; }
.ev-card { grid-template-columns:10rem minmax(0,1fr) auto!important; border:1px solid #c5cfdb!important; border-top:0!important; background:#fff; }
.ev-card::before { left:10rem; height:3px; }
.ev-cal { justify-content:space-between; padding:1.25rem 1rem; gap:.5rem; background:#091f3d; text-align:left; }
.ev-month { padding:0; background:none; color:#8cc8ec; font-size:var(--fs-xs); letter-spacing:.1em; }
.ev-cal b { display:block; flex:0; padding:0; font-size:var(--fs-h2); font-weight:500; letter-spacing:-.05em; color:#fff; text-align:left; }
.ev-year { align-self:flex-start; padding:.25rem .5rem; border:1px solid #ffffff40; color:#fff; font-size:var(--fs-xs); letter-spacing:.1em; }
.ev-body { padding:1.75rem 2.25rem; }
.ev-body h3 { font-size:var(--fs-h3); letter-spacing:-.035em; }
.ev-actions { min-width:15rem; padding:1.75rem; justify-content:center; align-items:stretch; gap:.75rem; border-left:1px solid #c5cfdb; }
.ev-actions .ev-cta { justify-content:space-between; }
.ev-card .ev-ics { min-height:0!important; height:auto!important; padding:.25rem 0!important; background:none!important; border:0!important; color:#2b7cb3!important; justify-content:flex-start!important; text-decoration:underline!important; text-underline-offset:.25rem; }
.ev-card .ev-ics:hover { color:#091f3d!important; }
.ev-card.is-next .ev-cal { background:#409ed8; }
.ev-card.is-next .ev-month { color:#fff; }
.ev-card.is-next .ev-status { background:#409ed8; border-color:#409ed8; color:#fff; }
.ev-card.is-past { background:#f6f8fa; }
.ev-card.is-past .ev-cal { background:#c5cfdb; }
.ev-card.is-past .ev-month { background:none; color:#4d5a6c; }
.ev-card.is-past .ev-cal b { color:#4d5a6c; opacity:1; }
.ev-card.is-past .ev-year { color:#4d5a6c; border-color:#9fabba; }
.ev-card.is-past .ev-actions { display:none; }
.ev-card.is-past h3 { opacity:.7; }
.ev-card.is-tbd .ev-cal b { color:#8cc8ec; }
.ev-card:hover { background:#fff; }
@media(max-width:900px){ .ev-card { grid-template-columns:8rem minmax(0,1fr)!important; } .ev-card::before { left:8rem; } .ev-cal b { font-size:var(--fs-h3); } .ev-actions { grid-column:1/-1; flex-direction:row; align-items:center; padding:1.25rem; border-left:0; border-top:1px solid #c5cfdb; } }
@media(max-width:600px){ .ev-card { grid-template-columns:6rem minmax(0,1fr)!important; } .ev-card::before { left:6rem; } .ev-cal { padding:1rem .75rem; } .ev-cal b { font-size:var(--fs-h3); } .ev-body { padding:1.25rem; } .ev-body h3 { font-size:var(--fs-h3); } }
@media(max-width:900px){ .ev-card .ev-actions { justify-content:flex-start; } }
/* Eventi: colonna testo allineata al riquadro data (meta in alto con il mese, testo in basso con l'anno). */
.ev-card .ev-body { justify-content:space-between; padding:1.25rem 2.25rem; gap:1rem; }
.ev-card .ev-meta { min-height:1.5rem; }
.ev-card .ev-status { line-height:1; }
.ev-card .ev-body h3 { margin:0 0 .375rem; }
.ev-card .ev-body p { margin:0; }
@media(max-width:600px){ .ev-card .ev-body { padding:1rem 1.25rem; } }
/* Novità: separatore sottile a pixel, come nel footer. */
.px-sep { padding-top:1rem; padding-bottom:1rem; }
.px-sep .px--band { --s:.5rem; --g:.1875rem; }
/* Separatore: banda a tutta larghezza appoggiata sul confine tra le sezioni. */
.px-sep { padding:0; margin-top:3rem; line-height:0; }
.px-sep .px--band { display:grid; width:100%; }
.px-sep+.sv-band { border-top:0; margin-top:0; }
.px-sep { background:#091f3d; padding:3rem 0 0; }
.px-sep .px--band { --s:.625rem; --g:.1875rem; color:#409ed8; }
@media(max-width:600px){ .px-sep { padding-top:2rem; } .px-sep .px--band { --s:.5rem; } }
/* Separatore: niente sfondo né spazi, banda sfrangiata sopra e sotto al 50%. */
.px-sep { margin:0; padding:0; background:none; opacity:.5; }
@media(max-width:600px){ .px-sep { padding:0; } }
/* Separatore a cavallo tra le due sezioni: metà sopra, metà sotto il cambio di sfondo. */
.px-sep { position:relative; z-index:1; --h:calc(10 * (.625rem + .1875rem)); margin-bottom:calc(var(--h) / -2); }
.px-sep+.sv-band { padding-top:calc(3rem + var(--h, 8rem) / 2); }
.px-sep+.sv-band { --h:calc(10 * (.625rem + .1875rem)); }
@media(max-width:600px){ .px-sep,.px-sep+.sv-band { --h:calc(10 * (.5rem + .1875rem)); } }
.px-sep { margin-top:3rem; }
.px-sep+.sv-band { padding-top:calc(4.5rem + var(--h) / 2); }
@media(max-width:600px){ .px-sep { margin-top:2rem; } .px-sep+.sv-band { padding-top:calc(3rem + var(--h) / 2); } }
/* Azienda: tono più emozionale. */
.az-origin { grid-template-columns:minmax(0,6fr) minmax(0,5fr); gap:5rem; align-items:center; }
.az-origin-copy .az-lead { font-size:var(--fs-h3)!important; line-height:var(--lh-text)!important; letter-spacing:-.02em; color:#091f3d; margin-bottom:1.5rem; }
.az-origin-copy .az-lead em { font-style:normal; color:#409ed8; }
.az-stats { border:0; gap:0; margin-top:2.5rem; }
.az-stats div { background:none!important; border:0!important; border-top:1px solid #c5cfdb!important; padding:1.25rem 1.5rem 0 0; }
.az-stats dd { font-size:var(--fs-stat); color:#091f3d; }
.az-stats div:nth-child(-n+2) dd { color:#409ed8; }
.az-origin-fig { border:0; }
.az-origin-fig img { aspect-ratio:3/4; }
/* Fascia manifesto a tutta larghezza. */
.az-manifesto { position:relative; min-height:clamp(26rem,42vw,38rem); display:flex; align-items:flex-end; background:#091f3d; color:#fff; overflow:hidden; }
.az-manifesto figure { position:absolute; inset:0; margin:0; }
.az-manifesto img { width:100%; height:100%; object-fit:cover; opacity:.55; }
.az-manifesto::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#091f3d00 30%,#091f3dcc 85%); pointer-events:none; }
.az-manifesto-copy { position:relative; z-index:1; width:100%; padding-bottom:4rem; }
.az-manifesto-copy span { display:inline-block; margin-bottom:1rem; padding:.375rem .625rem; background:#409ed8; font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.1em; text-transform:uppercase; }
.az-manifesto-copy p { margin:0; max-width:18ch; font-size:var(--fs-display)!important; line-height:1!important; letter-spacing:-.05em; font-weight:500; color:#fff; }
.az-manifesto-copy p em { font-style:normal; color:#8cc8ec; }
/* Aree con immagine. */
.az-areas article { padding:0; background:#fff; }
.az-area-pic { margin:0 0 1.5rem; overflow:hidden; }
.az-area-pic img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.az-areas article>:not(.az-area-pic) { margin-left:1.75rem; margin-right:1.75rem; }
.az-areas article>a { margin-bottom:1.5rem; }
.az-areas article:hover .az-area-pic img { transform:scale(1.04); }
.az-areas h3 { margin-top:.75rem; font-size:var(--fs-h3); }
/* Timeline: anni più grandi e più luce sulla tappa attiva. */
.az-tl { padding-top:5rem; }
.az-tl-year { font-size:var(--fs-stat); }
.az-tl-track li.is-active { background:linear-gradient(180deg,#409ed826,#ffffff08); }
@media(max-width:900px){ .az-origin { grid-template-columns:1fr; gap:3rem; } .az-origin-fig img { aspect-ratio:16/10; } .az-manifesto-copy { padding-bottom:2.5rem; } }
body .az-manifesto-copy p { font-size:var(--fs-display)!important; line-height:1!important; }
.az-stats dd { white-space:nowrap; }
.az-stats div:nth-child(4) dd { font-size:var(--fs-stat); }
.az-stats dd small { font-size:.45em; }
@media(max-width:600px){ .az-stats dd { font-size:var(--fs-stat); } .az-stats div:nth-child(4) dd { font-size:var(--fs-stat); } }
body .az-manifesto .az-manifesto-copy p { font-size:var(--fs-display)!important; line-height:1!important; }
/* Scala tipografica unica.
   Display (h1 intestazioni) · Sezione (h2) · Card grande (h3 26px) · Card (h3 22px) · Lead 18px · Testo 15px. */
body main .page-heading h1 { font-size:var(--fs-display)!important; line-height:1!important; font-weight:500!important; letter-spacing:-.045em!important; }
body main .page-heading h1 em { font-style:normal; }
body main .page-heading>p:not(.x) { font-size:var(--fs-lead)!important; line-height:var(--lh-text)!important; max-width:44rem; }
body main :is(.sv-head,.section-title,.ds-join-copy,.engineering-intro,.contact-layout,.wl-sales,.az-tl-head) h2,body main .contact-layout h2,body main .wl-sales h2 { font-size:var(--fs-h2)!important; line-height:1.05!important; font-weight:500!important; letter-spacing:-.045em!important; }
body main h3 { line-height:1.15!important; }
body main :is(.sv-tests,.sv-steps,.az-tl-track,.ds-card,.engineering-cards,.sector-strip,.nv-card:not(.nv-card--feature),.sec-card,.sv-why) h3,body[data-page=settori] .sec-card h2 { font-size:var(--fs-h3)!important; letter-spacing:-.03em!important; }
body main :is(.sv-body,.az-areas,.ev-body) h3 { font-size:var(--fs-h3)!important; letter-spacing:-.035em!important; }
@media(max-width:600px){ body main :is(.sv-body,.az-areas,.ev-body) h3 { font-size:var(--fs-h3)!important; } body main .page-heading>p:not(.x) { font-size:var(--fs-body)!important; } }
body[data-page=contatti] main h2,body[data-page=wishlist] main h2:not(.wl-empty h2) { font-size:var(--fs-h2)!important; line-height:1.05!important; font-weight:500!important; letter-spacing:-.045em!important; }
body[data-page=settori] main .sec-card h2 { line-height:1.15!important; }
body main .page-heading h1 { font-size:var(--fs-display)!important; }
/* Azienda: spaziatura dei numeri chiave. */
.az-stats { column-gap:2rem; row-gap:0; }
.az-stats div { padding:1.25rem 0 1.75rem!important; display:flex; flex-direction:column; justify-content:flex-start; }
.az-stats dt { margin:0 0 .75rem; line-height:1.2; }
.az-stats dd { margin:auto 0 0!important; line-height:1!important; }
.az-stats div:nth-last-child(-n+2) { border-bottom:1px solid #c5cfdb!important; }
.az-stats div:nth-child(4) dd { font-size:var(--fs-stat); }
@media(max-width:600px){ .az-stats div:nth-child(4) dd { font-size:var(--fs-stat); } }
/* Azienda: tre aree valorizzate. */
.az-areas { gap:1.5rem; border:0; }
.az-areas article { position:relative; border:1px solid #c5cfdb!important; transition:background-color .3s,color .3s,transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s; }
.az-area-pic { margin:0; }
.az-area-num { display:flex; align-items:baseline; gap:.75rem; margin-top:-2.25rem; position:relative; z-index:1; }
.az-area-num b { display:inline-grid; place-items:center; min-width:4.5rem; height:4.5rem; padding:0 .75rem; background:#409ed8; color:#fff; font-size:var(--fs-stat); font-weight:500; letter-spacing:-.04em; line-height:1; transition:background-color .3s,color .3s; }
.az-area-num span { font:500 var(--fs-mono) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#66768b; transform:translateY(-.25rem); }
.az-areas h3 { margin:1.25rem 0 .5rem; }
.az-area-tags { list-style:none; display:flex; flex-wrap:wrap; gap:.375rem; margin:0 0 1.5rem; padding:0; }
.az-area-tags li { padding:.3125rem .5rem; border:1px solid #c5cfdb; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#091f3d; transition:border-color .3s,color .3s; }
.az-areas article:hover { background:#091f3d; color:#fff; transform:translateY(-.375rem); box-shadow:0 1.5rem 3rem -1.5rem #091f3d66; }
.az-areas article:hover h3 { color:#fff; }
.az-areas article:hover p { color:#aec0d8!important; }
.az-areas article:hover .az-area-num span { color:#8cc8ec; }
.az-areas article:hover .az-area-tags li { border-color:#ffffff33; color:#fff; }
.az-areas article:hover>a { color:#fff; border-color:#ffffff33; }
.az-areas article>a::before { content:''; position:absolute; inset:0; }
@media(max-width:900px){ .az-areas { grid-template-columns:1fr; } }
.az-area-num { align-items:flex-end; } .az-area-num span { transform:none; padding-bottom:.375rem; }
.az-area-num span { padding-bottom:0; }
/* Numero area in alto a sinistra, sopra la foto. */
.az-areas article>.az-area-num { position:absolute; top:0; left:0; z-index:2; margin:0!important; gap:.5rem; align-items:flex-end; padding:0 .875rem 0 0; background:#409ed8; }
.az-area-num span { color:#e4f1fa; padding-bottom:.625rem; }
.az-areas article:hover .az-area-num span { color:#fff; }
.az-areas article>.az-area-pic+* , .az-areas h3 { margin-top:1.75rem; }
.az-areas article>.az-area-num { padding:0; }
/* Aree: titolo in fascia blu sotto la foto. */
body main .az-areas article>h3 { margin:0 0 1.25rem!important; padding:1.125rem 1.75rem; background:#409ed8; color:#fff; }
.az-areas article:hover>h3 { color:#fff; }
/* Aree in hover: numero e fascia titolo diventano bianchi su card scura. */
body main .az-areas article>h3 { transition:background-color .3s,color .3s; }
body main .az-areas article:hover>h3 { background:#fff; color:#091f3d; }
.az-areas article:hover>.az-area-num,.az-areas article:hover .az-area-num b { background:#fff; color:#091f3d; }
/* Azienda, Tre aree: titolo a sinistra, testo a destra a tutta colonna. */
#aree .sv-head { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:2rem 4rem; align-items:start; }
#aree .sv-head h2 { margin:0; }
#aree .sv-head p { max-width:none; margin:0; padding-top:.5rem; }
@media(max-width:900px){ #aree .sv-head { grid-template-columns:1fr; gap:1rem; } #aree .sv-head p { padding-top:0; } }
/* Intestazioni di sezione con testo: titolo a sinistra, paragrafo a destra (tutto il sito). */
.sv-head:has(>p) { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); column-gap:4rem; row-gap:0; align-items:start; }
.sv-head:has(>p)>.eyebrow { grid-column:1; grid-row:1; }
.sv-head:has(>p)>h2 { grid-column:1; margin:0; }
.sv-head:has(>p)>p { grid-column:2; grid-row:1; max-width:none!important; margin:0; padding-top:.5rem; }
.sv-head:has(>.eyebrow)>h2 { grid-row:2; }
.sv-head:has(>.eyebrow)>p { grid-row:2; }
@media(max-width:900px){ .sv-head:has(>p) { grid-template-columns:1fr; row-gap:1rem; } .sv-head:has(>p)>p { grid-column:1; grid-row:auto; padding-top:0; } .sv-head:has(>.eyebrow)>h2 { grid-row:auto; } }
/* Azienda: certificazioni valorizzate, con immagine a tutta card. */
.az-certs { gap:1.5rem; border:0; }
.az-certs a { position:relative; grid-template-columns:1fr auto; grid-template-rows:auto auto auto auto; align-items:end; gap:0 1.5rem; padding:0 0 1.75rem; background:#fff; border:1px solid #c5cfdb!important; overflow:hidden; transition:background-color .3s,color .3s,transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s; }
.az-cert-pic { grid-column:1/-1; margin:0 0 1.75rem; overflow:hidden; }
.az-cert-pic img { display:block; width:100%; aspect-ratio:21/8; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.az-certs a>:not(.az-cert-pic) { margin-left:1.75rem; }
.az-certs a>i { margin-right:1.75rem; margin-left:0; }
.az-certs span { margin-bottom:.75rem; }
.az-certs b { font-size:var(--fs-stat); line-height:1; letter-spacing:-.05em; color:#091f3d; transition:color .3s; }
.az-certs b em { font-style:normal; font-size:.4em; letter-spacing:-.02em; color:#409ed8; margin-left:.25rem; transition:color .3s; }
.az-certs small { margin-top:1rem; }
.az-certs i { grid-row:3/5; align-self:end; width:3.25rem; height:3.25rem; background:#409ed8; border-color:#409ed8!important; color:#fff; }
.az-certs a:hover { background:#091f3d; transform:translateY(-.375rem); box-shadow:0 1.5rem 3rem -1.5rem #091f3d66; }
.az-certs a:hover b { color:#fff; }
.az-certs a:hover b em { color:#8cc8ec; }
.az-certs a:hover i { background:#fff; border-color:#fff!important; color:#091f3d; }
.az-certs a:hover .az-cert-pic img { transform:scale(1.04); }
@media(max-width:600px){ .az-certs a>:not(.az-cert-pic) { margin-left:1.25rem; } .az-certs a>i { margin-right:1.25rem; } .az-cert-pic img { aspect-ratio:16/8; } }
.az-certs b { white-space:nowrap; } @media(max-width:600px){ .az-certs b { font-size:var(--fs-stat); } }
/* Azienda: partner su fascia blu, card bianche con logo. */
#partner.sv-band { background:#409ed8; border:0; }
#partner .sv-head h2 { color:#fff; }
#partner .sv-head { border-color:#ffffff4d; }
.az-partners { gap:1rem; border:0; }
.az-partner { display:flex; flex-direction:column; gap:1rem; padding:1rem 1.25rem 1.25rem; background:#fff; transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s; }
.az-partner i { font:normal 500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.1em; color:#409ed8; text-transform:uppercase; }
.az-partner img { display:block; width:100%; aspect-ratio:591/251; object-fit:contain; }
.az-partner span { padding-top:.875rem; border-top:1px dashed #c5cfdb; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#091f3d; }
.az-partner:hover { transform:translateY(-.25rem); box-shadow:0 1.25rem 2.5rem -1.25rem #091f3d80; }
@media(max-width:600px){ .az-partners { grid-template-columns:1fr 1fr; gap:.75rem; } }
.az-partners .az-partner span { display:block; min-height:0; padding:.875rem 0 0; gap:0; background:none; border:0; border-top:1px dashed #c5cfdb; }
body[data-page=azienda] .modern-footer { margin-top:0; }
/* Catalogo: Info blu scuro, wishlist azzurro. */
.catalog-grid .card-actions a.card-btn { background:#091f3d; border-color:#091f3d; color:#fff; }
.catalog-grid .card-actions a.card-btn:hover { background:#2b7cb3; border-color:#2b7cb3; color:#fff; }
.catalog-grid .card-actions .save-product { background:#409ed8; border-color:#409ed8; color:#fff; }
.catalog-grid .card-actions .save-product:hover { background:#2b7cb3; border-color:#2b7cb3; color:#fff; }
.catalog-grid .card-actions .save-product[aria-pressed=true] { background:#fff; border-color:#409ed8; color:#409ed8; }
.catalog-grid .card-actions .save-product[aria-pressed=true]:hover { background:#e4f1fa; border-color:#2b7cb3; color:#2b7cb3; }
/* Catalogo: card blu scuro in hover. */
.catalog-grid .product-card { transition:background-color .25s,color .25s; }
.catalog-grid .product-card:hover { background:#091f3d!important; color:#fff; }
.catalog-grid .product-card:hover :is(h3,.card-head span,.card-head b) { color:#fff; }
.catalog-grid .product-card:hover .product-copy small,.catalog-grid .product-card:hover .card-status { color:#8cc8ec; }
.catalog-grid .product-card:hover .card-actions { border-color:#ffffff33; }
.catalog-grid .product-card:hover .card-actions a.card-btn { background:#fff; border-color:#fff; color:#091f3d; }
.catalog-grid .product-card:hover .card-actions a.card-btn:hover { background:#409ed8; border-color:#409ed8; color:#fff; }
/* "Disponibile sullo shop" leggibile sulla card scura. */
.catalog-grid .product-card:hover a.card-status.is-shop { background:#409ed8; border-color:#409ed8; color:#fff; }
.catalog-grid .product-card:hover a.card-status.is-shop:hover { background:#fff; border-color:#fff; color:#091f3d; }
.catalog-grid .product-card.has-shop:hover { box-shadow:inset 0 2px 0 #409ed8; }
/* Icona cuore a pixel (wishlist). */
.ico-heart { display:inline-block; width:1em; height:.923em; vertical-align:-.1em; fill:currentColor; shape-rendering:crispEdges; flex:none; }
.catalog-grid .card-actions .save-product .ico-heart { width:13px; height:12px; }
.wishlist-link .ico-heart,.toolbar-wishlist .ico-heart { width:13px; height:12px; }
/* Catalogo: card cliccabili in modo evidente. */
.catalog-grid .product-card { position:relative; cursor:pointer; }
.catalog-grid .product-card>a::after { content:''; position:absolute; inset:0; z-index:1; }
.catalog-grid .product-card .card-actions { position:relative; z-index:2; }
.catalog-grid .card-head b { display:grid; place-items:center; width:1.75rem; height:1.75rem; background:#409ed8; color:#fff; font-size:var(--fs-small); transition:background-color .2s,color .2s,transform .2s; }
.catalog-grid .product-card:hover .card-head b { background:#fff; color:#091f3d; transform:none; }
.catalog-grid .product-card:hover .product-copy h3 { text-decoration:underline; text-decoration-color:#409ed8; text-decoration-thickness:2px; text-underline-offset:.25rem; }
.catalog-grid .product-card:focus-within { outline:2px solid #409ed8; outline-offset:-2px; }
.catalog-grid .card-head .card-more { margin-left:auto; margin-right:.625rem; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; font-style:normal; letter-spacing:.08em; text-transform:uppercase; color:#2b7cb3; transition:color .2s; }
.catalog-grid .product-card:hover .card-head .card-more { color:#fff; }
@media(max-width:600px){ .catalog-grid .card-head .card-more { display:none; } }
/* Catalogo: stato in alto a destra (al posto della freccia), Info → in basso a sinistra. */
.catalog-grid .card-head b { display:none; }
.catalog-grid .card-head { min-height:1.75rem; }
.catalog-grid .card-actions .card-status { position:absolute; z-index:2; top:16px; right:25px; height:1.75rem; display:inline-flex; align-items:center; margin:0; }
.catalog-grid .card-actions span.card-status { padding:0 .625rem; border:1px solid #c5cfdb; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#4d5a6c; }
.catalog-grid .product-card:hover .card-actions span.card-status { border-color:#ffffff40; color:#8cc8ec; }
.catalog-grid .card-actions { justify-content:flex-start; gap:.375rem; }
.catalog-grid .card-actions a.card-btn { margin-right:auto; gap:.5rem; padding:0 .75rem; }
.catalog-grid .card-actions a.card-btn span { display:inline-block; transition:transform .2s; }
.catalog-grid .product-card:hover .card-actions a.card-btn span { transform:translateX(3px); }
@media(max-width:600px){ .catalog-grid .card-actions .card-status { top:12px; right:14px; } }
.catalog-grid .product-card .card-actions { position:static; }
.catalog-grid .card-actions>* { position:relative; z-index:2; }
.catalog-grid .card-actions>.card-status { position:absolute!important; }
.catalog-grid .card-actions a.card-btn { display:inline-flex!important; align-items:center; white-space:nowrap; }
.pd-facts { grid-template-columns:1fr!important; }
/* Risorse: freccia solo per i download diretti; le richieste mostrano "Richiedi". */
.pd-docs a[data-doc-req]::after { content:'Richiedi'; grid-column:-2; grid-row:1/3; align-self:center; justify-self:end; padding:.375rem .625rem; background:#091f3d; color:#fff; font:500 var(--fs-label) 'Space Grotesk',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; transition:background-color .2s; }
.pd-docs a[data-doc-req]:hover::after { background:#409ed8; }
.pd-docs a[data-doc-req] { grid-template-columns:1fr auto auto; }
/* Specifiche: colonna etichette blu scuro. */
#detail-specs .spec-table th { background:#091f3d!important; color:#fff; border-bottom-color:#ffffff1f; border-right-color:#091f3d; }
#detail-specs .spec-table th i { color:#8cc8ec; }
/* Footer: indirizzo e testi alla stessa misura dei link; riga legale tutta nello stesso mono. */
body .modern-footer .footer-grid p:not(.x),body .modern-footer .footer-grid address { font-size:var(--fs-small)!important; line-height:var(--lh-text)!important; font-style:normal; color:#aec0d8; }
.modern-footer .footer-grid a { font-size:var(--fs-small); }
.modern-footer .footer-bottom,.modern-footer .footer-bottom span,.modern-footer .footer-bottom a { font:400 var(--fs-label)/1.4 'Space Grotesk',system-ui,sans-serif!important; letter-spacing:.1em!important; text-transform:uppercase; color:#93aac8; }
.modern-footer .footer-bottom a:hover { color:#fff; }
/* Home: stesso respiro sopra e sotto per tutte le sezioni. */
body[data-page=home] main>.section { padding-top:5rem!important; padding-bottom:5rem!important; margin-top:0; margin-bottom:0; }
body[data-page=home] main>.section.know-band { padding-top:0!important; padding-bottom:0!important; }
@media(max-width:600px){ body[data-page=home] main>.section { padding-top:3rem!important; padding-bottom:3rem!important; } }

/* Home: fascia "Categorie prodotti" prima dei bottoni delle macrocategorie (blu scuro, padding uguale sopra e sotto). */
body[data-page=home] .hero-cats-head { margin:0; padding:3rem var(--gutter); background:#091f3d; color:#fff; border-bottom:0; align-items:center; scroll-margin-top:var(--chrome-h,7rem); }
body[data-page=home] .hero-cats-head h2 { margin:0; color:#fff; }
body[data-page=home] .hero-cats-head .text-link { background:#fff!important; border-color:#fff!important; color:#091f3d!important; }
body[data-page=home] .hero-cats-head .text-link:hover { background:#409ed8!important; border-color:#409ed8!important; color:#fff!important; }
@media(max-width:900px){ body[data-page=home] .hero-cats-head { padding:2.25rem var(--gutter); align-items:flex-start; } }
/* Riquadri categorie senza riga superiore: la sigla parte dal bordo del padding. */
body[data-page=home] .elad-hero-families .elad-family-code { margin:0 0 .25rem; }
@media(min-width:901px){ body[data-page=home] .elad-hero-families a { padding-bottom:1.5rem!important; } }

/* Mega menu: frecce più evidenti. Nelle card un riquadro che si riempie di blu al passaggio;
   nelle schede la freccia compare anche al passaggio; nel pulsante in fondo si sposta. */
.mega-index .sub-links a { padding-right:4.5rem; }
.mega-index .sub-links a::after { top:50%; bottom:auto; right:18px; width:34px; height:34px; display:grid; place-items:center; border:1px solid #c5cfdb; background:#fff; color:#091f3d; font-size:var(--fs-body); transform:translateY(-50%); transition:background .15s,border-color .15s,color .15s; }
.mega-index .sub-links a:hover::after,.mega-index .sub-links a:focus-visible::after { background:#409ed8; border-color:#409ed8; color:#fff; transform:translateY(-50%); }
.mega-index .mega-tabs button i { color:#091f3d; transition:opacity .15s,transform .15s,color .15s; }
.mega-index .mega-tabs button:hover i { opacity:.6; transform:translateX(2px); }
.mega-index .mega-tabs button[aria-selected=true] i { opacity:1; color:var(--blue); transform:translateX(3px); }
.mega-foot :is(.mega-cta,.mega-all) span[aria-hidden] { display:inline-block; transition:transform .15s; }
.mega-foot :is(.mega-cta,.mega-all):hover span[aria-hidden] { transform:translateX(4px); }
/* Frecce valorizzate anche a riposo: riquadro pieno blu scuro; nelle schede freccia sempre visibile. */
.mega-index .sub-links a::after { background:#091f3d; border-color:#091f3d; color:#fff; }
.mega-index .mega-tabs button i { opacity:.45; }
.mega-index .mega-tabs button:hover i { opacity:.8; }
@media(max-width:600px){ .mega-index .sub-links a { padding-right:3.75rem; } .mega-index .sub-links a::after { right:12px; width:30px; height:30px; } }

/* timeline senza tag */
.az-tl-track h3{margin:2.5rem 0 .75rem!important;padding-top:0}

/* certificati: anteprima del PDF (2.17.13) */
.az-certs a { grid-template-columns:auto 1fr auto!important; grid-template-rows:1fr auto auto auto!important; padding:1.5rem!important; gap:0 1.5rem!important; }
.az-certs a>b,.az-certs a>i { margin:0!important; }
.az-cert-pic { grid-column:1; grid-row:1/-1; width:8.5rem; margin:0!important; aspect-ratio:210/297; background:#f4f6f9; border:1px solid #d5dde7; box-shadow:0 .75rem 1.5rem -1rem #091f3d55; }
.az-cert-pic img { aspect-ratio:auto!important; height:100%; object-fit:cover; object-position:top; }
.az-certs span,.az-certs b,.az-certs small { grid-column:2; }
.az-certs span { grid-row:2; margin-bottom:.5rem!important; }
.az-certs b { grid-row:3; font-size:var(--fs-title)!important; }
.az-certs small { grid-row:4; margin-top:.75rem!important; }
.az-certs i { grid-column:3; grid-row:3/5!important; }
@media(max-width:600px){ .az-cert-pic { width:6rem; } .az-certs a { gap:0 1rem!important; padding:1.25rem!important; } }
.az-cert-pic--mark { aspect-ratio:1; width:7.5rem; padding:.75rem; background:#fff; border:0; box-shadow:none; }
.az-cert-pic--mark img { object-fit:contain!important; height:100%; }
.az-certs a:hover .az-cert-pic--mark img { transform:none; }
@media(max-width:600px){ .az-cert-pic--mark { width:5.5rem; } }
/* certificati: testo in alto, più aria dal marchio (2.17.16) */
.az-certs a { grid-template-rows:auto auto 1fr auto!important; align-items:start!important; gap:0 2.5rem!important; padding:1.75rem 1.75rem 1.75rem 2rem!important; }
.az-certs span { grid-row:1!important; }
.az-certs b { grid-row:2!important; }
.az-certs small { grid-row:4!important; align-self:end; margin-top:1.5rem!important; }
.az-certs i { grid-row:3/5!important; align-self:end!important; }
@media(max-width:600px){ .az-certs a { gap:0 1.25rem!important; padding:1.25rem!important; } }
.az-certs span,.az-certs b { grid-column:2/4!important; }
.az-certs a { padding:2.25rem 2.25rem 2.25rem 2.5rem!important; gap:0 3rem!important; min-height:13rem; }
.az-certs span { margin-bottom:1.125rem!important; }
.az-certs b { line-height:1.05!important; }
.az-certs b em { margin-left:.5rem!important; }
.az-certs small { margin-top:2rem!important; }
.az-cert-pic--mark { align-self:center; }
@media(max-width:600px){ .az-certs a { padding:1.5rem!important; gap:0 1.25rem!important; min-height:0; } }
.az-certs small { white-space:nowrap; } .az-certs a { gap:0 2.5rem!important; }
.az-certs a>span { margin:0 0 1rem!important; }
.az-certs a>small { margin:2rem 0 0!important; }
/* marchio SGS: riquadro chiaro con padding, resta chiaro anche all'hover (2.17.22) */
.az-certs .az-cert-pic--mark { width:9rem; padding:1.25rem!important; background:#eef2f6!important; border:0!important; box-shadow:none!important; transition:background .3s; }
.az-certs a:hover .az-cert-pic--mark { background:#fff!important; }
@media(max-width:600px){ .az-certs .az-cert-pic--mark { width:6.5rem; padding:.875rem!important; } }
.az-certs a:hover i { transform:translate(2px,-2px)!important; }
/* marchio SGS senza riquadro: nessun padding, sfondo della card (2.17.24) */
.az-certs .az-cert-pic--mark,.az-certs a:hover .az-cert-pic--mark { width:7.5rem; padding:0!important; background:transparent!important; }
@media(max-width:600px){ .az-certs .az-cert-pic--mark { width:5.5rem; } }
.az-tl-track li { cursor:pointer; } .az-tl-track li.is-active { cursor:default; } .az-tl-track.is-drag li { cursor:grabbing; }
/* clienti: solo loghi, senza numero né nome (2.17.28) */
.az-clients { list-style:none; margin:0; padding:0; grid-template-columns:repeat(7,1fr)!important; gap:1rem; }
.az-clients .az-partner { display:grid; place-items:center; height:8.5rem; padding:1.5rem 1.25rem; background:#fff; }
.az-clients .az-partner img { width:100%; height:100%; max-width:10rem; aspect-ratio:auto; object-fit:contain; }
.anchor-alias { display:block; position:relative; top:0; height:0; }
@media(max-width:1100px){ .az-clients { grid-template-columns:repeat(4,1fr)!important; } }
@media(max-width:600px){ .az-clients { grid-template-columns:1fr 1fr!important; gap:.75rem; } .az-clients .az-partner { height:7rem; padding:1.25rem 1rem; } }
.az-clients .az-partner img { height:5.5rem; max-height:100%; }
@media(max-width:600px){ .az-clients .az-partner img { height:4.5rem; } }
.az-clients .az-partner,.az-clients .az-partner:hover { transform:none!important; box-shadow:none!important; }
/* pixel a tutta larghezza (2.17.44): mai oltre il contenitore */
.px--band { max-width:100%; min-width:0; overflow:hidden; }
.footer-signature > .px--band { justify-self:stretch; }
