/* The original logo, header heights, app workflows and body layout stay owned
   by their existing components. Only global navigation lives here. */
.esnav-ready header.site-header .header-block__item--standard-menu-container,
.esnav-ready header.site-header .header-block__item--mobile-menu-toggle,
.esnav-ready .mobile-menu-wrapper,
.esnav-ready .top-menu-container.menu-type-standard-menu,
.esnav-ready .sidebar-menu-wrapper.menu-type-standard-menu {display:none!important}
.esnav-ready .site-chrome .site-nav--desktop,.esnav-ready .site-chrome .site-nav-mobile {display:none!important}
.esnav-ready .site-chrome {overflow:visible;z-index:10010}
.site-chrome .esnav {--esnav-ink:#fff;margin-left:auto}
.site-chrome .esnav__sub {color:var(--esnav-sub-ink,#1d1d1b)}
.site-chrome .esnav__panel {color:var(--esnav-panel-ink,var(--esnav-ink))}
.esnav-ready header.site-header {overflow:visible!important;z-index:10010!important}
.esnav {--esnav-ink:#1d1d1b;--esnav-panel-ink:var(--esnav-ink);--esnav-sub-ink:#1d1d1b;--esnav-sub-size:15px;--esnav-sub-weight:500;--esnav-sub-leading:1.3;--esnav-sub-pad-block:10px;--esnav-sub-pad-inline:14px;--esnav-green:#00833e;--esnav-line:#dce2dc;color:var(--esnav-ink);font:500 16px/1.3 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;text-align:left;font-synthesis:none!important;pointer-events:auto!important;align-self:center;height:auto!important}
.esnav *, .esnav *::before,.esnav *::after {box-sizing:border-box;font-synthesis:none!important}
.esnav ul,.esnav li {list-style:none!important;margin:0!important;padding:0!important}
.esnav a,.esnav button {font:inherit!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;color:inherit!important;box-shadow:none!important;border-radius:0;cursor:pointer;touch-action:manipulation}
.esnav button {appearance:none;background:transparent!important;border:0!important;margin:0}
.esnav a::before,.esnav a::after {display:none!important}
.esnav [hidden] {display:none!important}
.esnav a:focus-visible,.esnav button:focus-visible {outline:2px solid var(--esnav-green)!important;outline-offset:3px!important}
.esnav__list {display:flex;align-items:center;gap:14px}
.esnav__item {position:relative}
.esnav__row {display:flex;align-items:center}
.esnav__link,.esnav__label,.esnav__expand {display:flex!important;align-items:center;justify-content:flex-start;min-height:44px;min-width:44px;padding:10px 4px!important;gap:10px;white-space:nowrap;line-height:24px!important}
.esnav__expand {justify-content:center;padding:10px!important;margin-left:0!important}
.esnav__label--branch {gap:10px;padding-right:10px!important}
.esnav__chevron {display:inline-block;width:7px;height:7px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:translateY(-2px) rotate(45deg);flex:none}
.esnav .is-open>.esnav__row .esnav__chevron {transform:translateY(2px) rotate(225deg)}
.esnav__sub {position:absolute;top:100%;left:-12px;min-width:240px;max-width:calc(100vw - 32px);padding:10px!important;background:#fff;color:#1d1d1b;border:1px solid var(--esnav-line);box-shadow:0 10px 24px #10271a12;z-index:2}
.esnav__sub .esnav__link {padding:var(--esnav-sub-pad-block) var(--esnav-sub-pad-inline)!important;width:100%;font-size:var(--esnav-sub-size)!important;font-weight:var(--esnav-sub-weight)!important;line-height:var(--esnav-sub-leading)!important;white-space:normal}
.esnav__sub .esnav__link :where(span,strong,b) {font:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;transform:none!important;zoom:1!important}
.esnav .is-current>.esnav__row>.esnav__link,.esnav .is-current>.esnav__row>.esnav__label {text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:7px}
.esnav__link:hover,.esnav__label:hover {text-decoration:underline!important;text-underline-offset:7px}
.esnav__sub .esnav__link:hover {background:#f0f7f2}
.esnav__trigger {display:none!important}
.esnav__link svg,.esnav__label svg {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;flex:none;margin-right:6px}
.esnav__item.esolution-account-link>.esnav__row>.esnav__label {gap:9px}
.esnav__item.esolution-account-link>.esnav__row>.esnav__label svg {margin-right:0}
.esnav__item.esolution-account-link>.esnav__row>.esnav__label>span:not(.esnav__chevron) {margin-left:0!important}
.esnav__item.esolution-account-link>.esnav__sub {right:-12px;left:auto}
body.es3d-compact-header .esnav,body.ps3d-white-logo-enabled .esnav {--esnav-ink:#fff}
body.es3d-compact-header .esnav__sub,body.ps3d-white-logo-enabled .esnav__sub {color:#1d1d1b}
@media(max-width:1199px){
 .esnav {--esnav-panel-ink:#1d1d1b;--esnav-sub-size:16px;--esnav-sub-pad-inline:6px}
 .esnav__trigger {display:flex!important;width:44px;height:44px;align-items:center;justify-content:center;padding:10px!important;position:relative}
 .esnav__bars,.esnav__bars::before,.esnav__bars::after {display:block;width:23px;height:2px;background:currentColor;position:relative}
 .esnav__bars::before,.esnav__bars::after {content:"";position:absolute;left:0;top:-7px}
 .esnav__bars::after {top:7px}
 .esnav.is-open .esnav__bars {background:transparent}
 .esnav.is-open .esnav__bars::before {top:0;transform:rotate(45deg)}
 .esnav.is-open .esnav__bars::after {top:0;transform:rotate(-45deg)}
 .esnav__panel {position:fixed;top:var(--esnav-top,118px);right:16px;width:min(380px,calc(100% - 32px));max-height:var(--esnav-available,70vh);overflow-y:auto;overscroll-behavior:contain;background:#fff;color:#1d1d1b;border:1px solid var(--esnav-line);padding:12px 20px 18px;box-shadow:0 12px 28px #10271a14}
 .esnav__list {display:block}
 .esnav__list>.esnav__item {border-bottom:1px solid var(--esnav-line)}
 .esnav__list>.esnav__item:last-child {border-bottom:0}
 .esnav__row {min-height:50px}
 .esnav__row>.esnav__link,.esnav__row>.esnav__label {flex:1;min-height:50px;font-size:18px!important;white-space:normal;padding:12px 0!important}
 .esnav__expand {min-width:44px;min-height:50px}
 .esnav__label--branch {justify-content:space-between}
 .esnav__sub {position:static;min-width:0;max-width:none;border:0;border-left:2px solid var(--esnav-green);margin:0 0 12px 2px!important;padding:0 0 0 12px!important;box-shadow:none}
 .esnav__sub .esnav__link {font-size:var(--esnav-sub-size)!important;min-height:44px;padding:var(--esnav-sub-pad-block) var(--esnav-sub-pad-inline)!important}
 body.es3d-compact-header .esnav__panel,body.ps3d-white-logo-enabled .esnav__panel {color:#1d1d1b}
}
@media(prefers-reduced-motion:reduce){.esnav *{transition:none!important}}

/* R05: singles Portfolio/Approfondimenti use one compact viewport-fixed chrome. */
body.es-editorial-compact-header{--esed-header-height:76px;--esed-admin-top:0px;--esed-admin-extra:0px;--esed-scroll-top:76px;--esed-header-bg:#102219}
body.es-editorial-compact-header.admin-bar{--esed-admin-top:32px}
body.es-editorial-compact-header #main-wrapper{padding-top:calc(var(--esed-header-height) + var(--esed-admin-extra))}
body.es-editorial-compact-header header.site-header.main-header{position:fixed!important;top:var(--esed-admin-top)!important;left:0!important;width:var(--esed-layout-width,100%)!important;z-index:10010!important;height:var(--esed-header-height)!important;min-height:var(--esed-header-height)!important;padding:0!important;margin:0!important;background:var(--esed-header-bg)!important;overflow:visible!important;box-shadow:0 1px 0 rgba(255,255,255,.08);transform:none!important;transition:none!important}
body.es-editorial-compact-header header.site-header.main-header .header-block{height:var(--esed-header-height)!important;min-height:var(--esed-header-height)!important;padding-top:0!important;padding-bottom:0!important;display:flex;align-items:center;justify-content:center}
body.es-editorial-compact-header header.site-header.main-header .header-block__row--main{align-items:center!important}
body.es-editorial-compact-header header.site-header.main-header .header-block__logo{margin-right:auto!important}
body.es-editorial-compact-header header.site-header.main-header .header-block--content-right{min-width:0;margin-left:auto!important;justify-content:flex-end!important}
body.es-editorial-compact-header header.site-header.main-header .header-block__items-row{justify-content:flex-end!important}
body.es-editorial-compact-header header.site-header.main-header .es-editorial-site-wordmark{display:flex!important;align-items:center;justify-content:flex-start;width:160px!important;height:40px!important;max-width:100%;filter:none!important;flex-shrink:0}
body.es-editorial-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{display:block!important;width:160px!important;height:auto!important;max-width:100%!important;max-height:32px;object-fit:contain;filter:none!important;transform:none!important;opacity:1!important;visibility:visible!important}
/* Neutralizza la regola storica della home R04 che nascondeva il logo con
   specificità maggiore. La visibilità appartiene ora alla testata comune. */
body.home.esh-r04-active.es-editorial-compact-header header.site-header.main-header .header-logo.logo-image.es-editorial-site-wordmark>img.main-logo{opacity:1!important;visibility:visible!important}
body.es-editorial-compact-header .esnav{--esnav-ink:#fff}
body.es-editorial-compact-header .esnav__sub{color:#1d1d1b}
body.es-editorial-compact-header header.site-header.main-header .header-logo:focus-visible,
body.es-editorial-compact-header header.site-header.main-header a:focus-visible,
body.es-editorial-compact-header header.site-header.main-header button:focus-visible{outline:2px solid #fff!important;outline-offset:3px!important}
html.esed-chrome-active{scroll-padding-top:calc(var(--esed-scroll-top,76px) + 16px)}
body.es-editorial-compact-header [id]{scroll-margin-top:calc(var(--esed-scroll-top,76px) + 16px)}
body.es-editorial-compact-header.admin-bar #wpadminbar::before{content:"";position:absolute;top:0;right:0;bottom:calc(-1 * var(--esed-admin-extra));left:0;background:inherit;z-index:-1;pointer-events:none}
body.es-editorial-compact-header.admin-bar #wpadminbar{position:fixed!important;top:0!important}

/* R17: Studio uses the same compact proportions as Stampa 3D while keeping
   the stable common fixed-header implementation owned by this component. */
body.es-studio-compact-header{--esed-header-height:76px;--esed-scroll-top:76px}
body.es-studio-compact-header header.site-header.main-header .es-editorial-site-wordmark,
body.es-studio-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{width:176px!important}
body.es-sitewide-compact-header header.site-header.main-header .es-editorial-site-wordmark,
body.es-sitewide-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{width:176px!important}
body.es-studio-compact-header header.site-header.main-header .standard-menu-container>nav>ul>li>a,
body.es-studio-compact-header header.site-header.main-header .es-projects-menu-r01__toggle,
body.es-studio-compact-header header.site-header.main-header .ps3d-menu-submenu-toggle{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:#fff!important}
body.es-studio-compact-header header.site-header.main-header .toggle-bars{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
body.es-studio-compact-header header.site-header.main-header .toggle-bars__bar-line{background-color:#fff!important;box-shadow:none!important}

/* R14: the same stable compact chrome is shared by current and future 3D
   products. The product plugin continues to own its white logo and commerce. */
body.es-product-compact-header{--esed-header-height:76px;--esed-admin-top:0px;--esed-admin-extra:0px;--esed-scroll-top:76px}
body.es-product-compact-header.admin-bar{--esed-admin-top:32px}
body.es-product-compact-header #main-wrapper{padding-top:calc(var(--esed-header-height) + var(--esed-admin-extra))}
body.es-product-compact-header header.site-header.main-header{position:fixed!important;top:var(--esed-admin-top)!important;left:0!important;width:var(--esed-layout-width,100%)!important;z-index:10010!important;height:var(--esed-header-height)!important;min-height:var(--esed-header-height)!important;padding:0!important;margin:0!important;background:var(--esed-header-bg,#102219)!important;overflow:visible!important;box-shadow:0 1px 0 rgba(255,255,255,.08);transform:none!important;transition:none!important}
body.es-product-compact-header header.site-header.main-header .header-block{height:var(--esed-header-height)!important;min-height:var(--esed-header-height)!important;padding-top:0!important;padding-bottom:0!important;display:flex;align-items:center;justify-content:center}
body.es-product-compact-header header.site-header.main-header .header-logo{display:flex!important;align-items:center;justify-content:flex-start;width:176px!important;height:44px!important;max-width:100%;filter:none!important;flex-shrink:0}
body.es-product-compact-header header.site-header.main-header .header-logo img.main-logo{display:block!important;width:176px!important;height:auto!important;max-width:100%!important;max-height:36px;object-fit:contain;filter:none!important;transform:none!important;opacity:1!important;visibility:visible!important}
body.es-product-compact-header header.site-header.main-header .standard-menu-container>nav>ul>li>a{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
body.es-product-compact-header header.site-header.main-header .ps3d-menu-submenu-toggle{width:44px;min-width:44px;min-height:44px}
body.es-product-compact-header header.site-header.main-header .toggle-bars{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
body.es-product-compact-header .esnav{--esnav-ink:#fff}
body.es-product-compact-header .esnav__sub{color:#1d1d1b}
body.es-product-compact-header header.site-header.main-header .header-logo:focus-visible,
body.es-product-compact-header header.site-header.main-header a:focus-visible,
body.es-product-compact-header header.site-header.main-header button:focus-visible{outline:2px solid #fff!important;outline-offset:3px!important}
body.es-product-compact-header [id]{scroll-margin-top:calc(var(--esed-scroll-top,76px) + 16px)}
body.es-product-compact-header.admin-bar #wpadminbar::before{content:"";position:absolute;top:0;right:0;bottom:calc(-1 * var(--esed-admin-extra));left:0;background:inherit;z-index:-1;pointer-events:none}
body.es-product-compact-header.admin-bar #wpadminbar{position:fixed!important;top:0!important}

/* R14 product layout contract.
   Phone and portrait tablet: media and gallery first, product text second.
   Landscape tablet and desktop (>=960px): media left, product text right.
   Later sections keep full width and their original order. */
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product{display:block!important;width:100%}
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product::before,
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product::after{display:none!important;content:none!important}
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.es-product-primary-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:"media" "summary";
  align-items:start;
  width:100%;
  min-width:0;
}
body.es-product-layout-r14 #main-wrapper .es-product-primary-row>.single-product-images{
  grid-area:media;
  float:none!important;
  align-self:start;
  min-width:0;
  width:100%!important;
  max-width:none!important;
  margin:0 0 clamp(28px,5vw,40px)!important;
}
body.es-product-layout-r14 #main-wrapper .es-product-primary-row>.summary{
  grid-area:summary;
  float:none!important;
  align-self:start;
  min-width:0;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.woocommerce-tabs{min-width:0;width:100%!important;margin-top:clamp(32px,4vw,44px)!important}
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.ps3d-native-sharing{min-width:0;width:100%!important}
body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.related{min-width:0;width:100%!important}

@media(min-width:960px){
 body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.es-product-primary-row{
   grid-template-columns:minmax(0,5fr) minmax(0,7fr);
   grid-template-areas:"media summary";
   column-gap:clamp(24px,2.2vw,32px);
 }
 body.es-product-layout-r14 #main-wrapper .es-product-primary-row>.single-product-images{
   position:sticky!important;
   top:calc(var(--esed-admin-top,0px) + var(--esed-header-height,76px) + 20px)!important;
   z-index:2;
   margin-bottom:0!important;
 }
}

/* R12: compact editorial scale for current and future Portfolio and Approfondimenti. */
html body.wp-singular.single.single-post #main-wrapper h1.post-title.entry-title,
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper h1{
  font-size:clamp(34px,3.3vw,46px)!important;
  line-height:1.05!important;
  font-weight:500!important;
  /* R16: tracking neutro, senza compressione residua. */
  letter-spacing:0!important;
  overflow-wrap:anywhere;
  word-break:normal;
}
html body.wp-singular.single.single-post #main-wrapper .post-content.post-formatting h2,
html body.wp-singular.single.single-portfolio.es-portfolio-single-r01-active #main-wrapper.wrapper .single-portfolio-holder h2{
  font-size:clamp(29px,2.5vw,34px)!important;
  line-height:1.08!important;
  /* R16: tracking neutro, senza compressione residua. */
  letter-spacing:0!important;
}
html body.wp-singular.single.single-post #main-wrapper .post-content.post-formatting p:not([class]),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .post-formatting>p:not(:has(a[href^="mailto:"])),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .wpb_text_column.post-formatting p:not(:has(a[href^="mailto:"])),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-brand-case-study>p:not(.es-brand-case-study__meta):not(.es-brand-case-study__cta),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-aiweiwei-case-study__intro>p:last-child,
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-aiweiwei-case-study__section>p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style]),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-aiweiwei-case-study__section--split>div>p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style]){
  font-size:18px!important;
  line-height:25px!important;
  font-weight:340!important;
}

/* R13.1: ritmo comune dei soli capoversi narrativi consecutivi.
   Titoli, didascalie, citazioni, elenchi, metadati, CTA e separazioni fra
   sezioni conservano i propri margini. */
html body.wp-singular.single.single-post #main-wrapper .post-content.post-formatting p:not([class]):not(:empty):has(+ p:not([class]):not(:empty)),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .post-formatting>p:not([class]):not(:empty):has(+ p:not([class]):not(:empty)),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .wpb_text_column.post-formatting p:not([class]):not(:empty):has(+ p:not([class]):not(:empty)),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-brand-case-study>p:not(.es-brand-case-study__meta):not(.es-brand-case-study__cta):has(+ p:not(.es-brand-case-study__meta):not(.es-brand-case-study__cta)),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-aiweiwei-case-study__section>p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style]):has(+ p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style])),
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .single-portfolio-holder .es-aiweiwei-case-study__section--split>div>p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style]):has(+ p:not(.es-aiweiwei-case-study__eyebrow):not(.es-aiweiwei-case-study__links):not([style])){
  margin-bottom:12px!important;
}

/* R04.2: the Ai Weiwei statement and its green panel scale together without
   competing with the page title and section headings. */
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement{
  margin-bottom:clamp(56px,7vw,92px)!important;
  padding:clamp(30px,4.1vw,58px) clamp(24px,6vw,88px)!important;
}
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement blockquote,
html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement blockquote>p{
  max-width:840px!important;
  font-size:clamp(26px,3vw,42px)!important;
  line-height:1.08!important;
}

@media(max-width:959px){
 body.es-editorial-compact-header{--esed-header-height:56px;--esed-scroll-top:56px}
 body.es-product-compact-header{--esed-header-height:56px;--esed-scroll-top:56px}
 body.es-studio-compact-header{--esed-header-height:56px;--esed-scroll-top:56px}
 body.es-editorial-compact-header header.site-header.main-header .es-editorial-site-wordmark,
 body.es-editorial-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{width:136px!important}
 body.es-studio-compact-header header.site-header.main-header .es-editorial-site-wordmark,
 body.es-studio-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{width:144px!important}
 body.es-sitewide-compact-header header.site-header.main-header .es-editorial-site-wordmark,
 body.es-sitewide-compact-header header.site-header.main-header .es-editorial-site-wordmark img.main-logo{width:144px!important}
 body.es-product-compact-header header.site-header.main-header .header-logo,
 body.es-product-compact-header header.site-header.main-header .header-logo img.main-logo{width:144px!important}
 body.es-product-layout-r14 #main-wrapper .single-product--product-details>.product>.woocommerce-tabs{margin-top:32px!important}
}
@media(max-width:782px){
 body.es-editorial-compact-header.admin-bar,
 body.es-product-compact-header.admin-bar{--esed-admin-top:46px}
}
@media(max-width:767px){
 html body.wp-singular.single.single-post #main-wrapper h1.post-title.entry-title,
 html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper h1{font-size:clamp(32px,8.3vw,34px)!important;line-height:1.05!important}
 html body.wp-singular.single.single-post #main-wrapper .post-content.post-formatting h2,
 html body.wp-singular.single.single-portfolio.es-portfolio-single-r01-active #main-wrapper.wrapper .single-portfolio-holder h2{font-size:clamp(28px,7.3vw,30px)!important;line-height:1.05!important}
 html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement{margin-left:-15px!important;margin-right:-15px!important;margin-bottom:56px!important;padding:30px 22px!important}
 html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement blockquote,
 html body.single-portfolio.es-portfolio-single-r01-active #main-wrapper .es-aiweiwei-case-study__statement blockquote>p{font-size:clamp(25px,6.6vw,30px)!important;line-height:1.12!important}
}

/* R05 uses the former R15 fixed strategy in every viewport; the iPad marker is
   retained only for diagnostics and no longer changes layout behavior. */

/* R25: footer editoriale comune.
   Desktop e tablet separano i collegamenti operativi dalle informazioni
   legali; il telefono conserva la stessa gerarchia in una pila compatta. */
body.es-sitewide-compact-header{
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
body.es-sitewide-compact-header>#main-wrapper{
  flex:1 0 auto;
  width:100%;
}
body.es-sitewide-compact-header footer.site-footer.main-footer{
  --es-footer-ink:#102219;
  --es-footer-muted:#59645e;
  --es-footer-line:#d3dad4;
  --es-footer-green:#00833e;
  background:#eef0ec!important;
  color:var(--es-footer-ink)!important;
  border-top:1px solid var(--es-footer-line);
  flex:0 0 auto;
  width:100%;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .footer-bottom{
  background:transparent!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .footer-bottom-content{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,auto);
  grid-template-areas:"links legal";
  align-items:center;
  column-gap:clamp(32px,5vw,72px);
  padding:30px 0!important;
  text-align:left!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .footer-content-right{
  grid-area:links;
  display:flex!important;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:12px 22px;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .footer-content-left{
  grid-area:legal;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .social-networks.textual{
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 18px;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .social-networks.textual>li{
  display:flex!important;
  align-items:center;
  float:none!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
}
/* R26.1: Kalium adds a 54 px height to each social item, 10 px below social
   anchors and 18 px below the right footer area. Neutralize them at the
   component boundary so the three links share the same 44 px alignment box. */
body.es-sitewide-compact-header #footer.site-footer.main-footer .footer-content-right{
  margin:0!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .social-networks.textual a,
body.es-sitewide-compact-header footer.site-footer.main-footer .esolution-footer-contact{
  display:inline-flex!important;
  align-items:center;
  min-height:44px;
  margin:0!important;
  padding:8px 0!important;
  color:var(--es-footer-ink)!important;
  font-size:14px!important;
  font-weight:550!important;
  line-height:1.35!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  background:none!important;
  box-shadow:none!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .esolution-footer-contact{
  position:relative;
  margin:0!important;
  padding-left:22px!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .esolution-footer-contact::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:1px;
  background:var(--es-footer-line);
}
body.es-sitewide-compact-header footer.site-footer.main-footer .copyrights,
body.es-sitewide-compact-header footer.site-footer.main-footer .copyrights p{
  margin:0!important;
  padding:0!important;
  color:var(--es-footer-muted)!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.55!important;
  letter-spacing:0!important;
  text-align:right!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer .copyrights a{
  color:var(--es-footer-ink)!important;
  text-decoration:none!important;
  background:none!important;
  box-shadow:none!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer :is(.social-networks.textual a,.esolution-footer-contact,.copyrights a)::before,
body.es-sitewide-compact-header footer.site-footer.main-footer :is(.social-networks.textual a,.esolution-footer-contact,.copyrights a)::after{
  display:none!important;
  content:none!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer :is(.social-networks.textual a,.esolution-footer-contact,.copyrights a):hover{
  color:var(--es-footer-green)!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:4px!important;
}
body.es-sitewide-compact-header footer.site-footer.main-footer :is(.social-networks.textual a,.esolution-footer-contact,.copyrights a):focus-visible{
  outline:2px solid var(--es-footer-green)!important;
  outline-offset:3px!important;
}

/* R27: in the side-by-side footer, preserve a 44 px target while placing the
   operational-link text on the baseline of the second legal line. */
@media(min-width:768px){
  body.es-sitewide-compact-header footer.site-footer.main-footer .footer-bottom-content{
    align-items:end;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .footer-content-right{
    align-self:end;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .social-networks.textual a,
  body.es-sitewide-compact-header footer.site-footer.main-footer .esolution-footer-contact{
    align-items:flex-end;
    padding-top:18px!important;
    padding-bottom:2px!important;
  }
}

@media(max-width:767px){
  body.es-sitewide-compact-header footer.site-footer.main-footer .footer-bottom-content{
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"links" "legal";
    row-gap:16px;
    padding:24px 0 26px!important;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .footer-content-right{
    gap:6px 18px;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .social-networks.textual{
    gap:6px 16px;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .esolution-footer-contact{
    padding-left:18px!important;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .footer-content-left{
    padding-top:16px!important;
    border-top:1px solid var(--es-footer-line);
    text-align:left!important;
  }
  body.es-sitewide-compact-header footer.site-footer.main-footer .copyrights,
  body.es-sitewide-compact-header footer.site-footer.main-footer .copyrights p{
    font-size:12px!important;
    line-height:1.55!important;
    text-align:left!important;
  }
}
/* R33: una sola scala di condivisione, identica al blog, su tutto il sito. */
body.es-sitewide-compact-header .sharedaddy.sd-sharing-enabled {
  clear: both;
  display: flow-root;
  box-sizing: border-box;
  padding: 0 !important;
  text-align: left !important;
}

body.es-sitewide-compact-header .sharedaddy .sd-title {
  display: inline-block !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

body.es-sitewide-compact-header .sharedaddy .sd-content ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: left !important;
}

body.es-sitewide-compact-header .sharedaddy .sd-content ul li {
  display: inline-block !important;
  float: none !important;
  margin: 0 8px 12px 0 !important;
  padding: 0 !important;
}

body.es-sitewide-compact-header .sharedaddy .sd-content .share-end {
  display: none !important;
}

body.es-sitewide-compact-header .sharedaddy .sd-content a.sd-button {
  display: inline-block !important;
  box-sizing: border-box !important;
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 2px 0 0 !important;
  padding: 7px !important;
  border-radius: 50% !important;
}

body.es-sitewide-compact-header .sharedaddy a:focus-visible {
  outline: 3px solid #00833e !important;
  outline-offset: 3px;
}

body.es-sitewide-compact-header .es-global-sharing-shell {
  width: min(1140px, calc(100% - 40px));
  margin: 44px auto 24px;
}

body.es-sitewide-compact-header .es-global-sharing-shell .sharedaddy.sd-sharing-enabled {
  width: 100%;
  margin: 0 !important;
}

@media (max-width: 767px) {
  body.es-sitewide-compact-header .es-global-sharing-shell {
    width: calc(100% - 32px);
    margin-top: 32px;
  }
}

/* R37: native 309px error panel must fit the 320px viewport gutters. */
body.error404 .error-holder .box{max-width:100%;}

/* R03: common sharing component in the full-width editorial routes template. */
body.es-routes-r03-page #main-wrapper > .sharedaddy.sd-sharing-enabled {
 width:min(1320px,calc(100% - 128px));
 margin:44px auto 24px;
}
@media(max-width:1199px){
 body.es-routes-r03-page #main-wrapper > .sharedaddy.sd-sharing-enabled{width:calc(100% - 64px)}
}
@media(max-width:767px){
 body.es-routes-r03-page #main-wrapper > .sharedaddy.sd-sharing-enabled{width:calc(100% - 32px);margin-top:32px}
}
/* R03 raw host projection: same controller/menu; native account/cart utility. */
header.global-header[data-esnav-host] .esnav{--esnav-ink:#fff;order:1}
header.global-header[data-esnav-host] .global-header__actions{display:flex;align-items:center;gap:10px}
header.global-header[data-esnav-host] .ps3d-header-cart-mobile-mount{order:2}
header.global-header[data-esnav-host] .global-brand{flex:none}
header.global-header[data-esnav-host] .global-brand img{display:block;width:176px;height:auto}
@media(max-width:1199px){header.global-header[data-esnav-host] .esnav{--esnav-panel-ink:#1d1d1b}}
@media(max-width:767px){header.global-header[data-esnav-host] .global-brand img{width:144px}header.global-header[data-esnav-host] .global-header__actions{gap:0}}
@media(max-width:359px){header.global-header[data-esnav-host] .global-brand img{width:108px}}

/* Host layout must use the available viewport, including a scrollbar gutter. */
body.esnav-r03-raw-host{min-width:0}

/* QA09 F02: retain light focus on green chrome; dark green inside white panels. */
body :is(header.site-header.main-header,header.global-header[data-esnav-host],header.site-chrome) .esnav .esnav__sub :is(a,button):focus-visible{
 outline:2px solid #00833e!important;outline-offset:3px!important;
}
@media(max-width:1199px){
 body :is(header.site-header.main-header,header.global-header[data-esnav-host],header.site-chrome) .esnav .esnav__panel :is(a,button):focus-visible{
  outline:2px solid #00833e!important;outline-offset:3px!important;
 }
}

/* R111: do not animate the native viewport from zero during Flickity startup.
   Native measured/adaptive heights, image proportions and navigation are kept.
 */
body.es-product-layout-r14 .es-product-primary-row .main-product-images.carousel:not(.flickity-enabled){visibility:visible;opacity:1}
body.es-product-layout-r14 .es-product-primary-row .flickity-viewport{transition:none!important}

/* R11: one registered content boundary; keep native header heights and controls. */
body[data-es-content-geometry] header.site-header .header-block__row-container,
body[data-es-content-geometry] header.site-header .global-header__inner{box-sizing:border-box!important;width:var(--es-header-content-width)!important;max-width:none!important;margin-left:var(--es-header-content-left)!important;margin-right:0!important;padding-inline:0!important}
body[data-es-content-geometry] header.site-header .header-block__row--main{width:100%!important;margin-inline:0!important}
body[data-es-content-geometry] header.site-header .header-block__row--main>.header-block__column{padding-inline:0!important;margin-inline:0!important}
body[data-es-content-geometry] header.site-header .header-block__logo{min-width:0!important;flex-shrink:1!important}
body[data-es-content-geometry] header.site-header a.header-logo,
body[data-es-content-geometry] header.site-header .global-brand{min-width:0!important;max-width:100%;flex-shrink:1}
body[data-es-content-geometry] header.site-header img.main-logo,
body[data-es-content-geometry] header.site-header .global-brand img{max-width:100%!important;height:auto!important;object-fit:contain}

/* Keep vertical centering of the column flex parent; anchor the horizontal cross-axis explicitly. */
body[data-es-content-geometry] header.site-header .header-block__row-container{align-self:flex-start!important}
body[data-es-content-geometry] header.site-header .header-block__items-row{margin-inline:0!important}

/* The registered owner boundary supersedes fluid-family container projections. */
body.es-sitewide-compact-header[data-es-content-geometry] header.site-header.main-header .header-block .header-block__row-container.container{width:var(--es-header-content-width)!important;max-width:none!important;margin-left:var(--es-header-content-left)!important;margin-right:0!important;padding-inline:0!important;align-self:flex-start!important}

/* Reserve native utility widths; the original wordmark uses the remaining space without overlap. */
body[data-es-content-geometry] header.site-header .header-block__row--main>.header-block__logo{flex:0 1 auto!important}
body[data-es-content-geometry] header.site-header .header-block__row--main>.header-block--content-right{flex:0 0 auto!important;width:auto!important;min-width:max-content!important;margin-left:auto!important}

/* Preserve the owner's nominal wordmark size, clamping only to the actual residual width. */
body[data-es-content-geometry] header.site-header a.header-logo,
body[data-es-content-geometry] header.site-header .global-brand{max-width:min(100%,var(--es-header-brand-max,100%))!important}
