/* Normative e Contatti condividono griglia, componenti e linguaggio visuale. */
.markets-body { background:#f8faf9; }
.markets-body .nav-dropdown[data-submenu-label="Normative"]>.nav-dropdown-trigger>a,.markets-body .main-nav>a[href*="contatti"] { color:var(--waves-green); }
.market-page,.contact-page { overflow:hidden; color:#111; background:#f8faf9; }
.market-eyebrow { margin:0 0 20px; color:var(--waves-green); font-size:12px; font-weight:750; letter-spacing:.09em; text-transform:uppercase; }
.market-hero,.contact-hero { position:relative; min-height:100vh; min-height:100svh; padding:112px 0 54px; overflow:hidden; background:radial-gradient(circle at 82% 58%,rgba(5,148,68,.09),transparent 29%),linear-gradient(135deg,#fff,#f7faf9); }
.market-hero::before,.contact-hero::before { position:absolute; inset:0; background-image:radial-gradient(circle,rgba(5,148,68,.14) 0 1px,transparent 1.4px); background-size:74px 74px; content:""; opacity:.22; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 12%,#000); mask-image:linear-gradient(90deg,transparent 12%,#000); }
.market-hero-grid,.contact-hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,46fr) minmax(0,54fr); align-items:center; gap:70px; min-height:calc(100svh - 166px); }
.market-index-hero { min-height:88vh; min-height:88svh; }
.market-index-hero .market-hero-grid { min-height:calc(88svh - 166px); }
.market-hero-copy,.contact-copy { position:relative; z-index:2; max-width:680px; }
.market-hero h1,.contact-hero h1 { margin:0; font-size:clamp(58px,5.2vw,78px); font-weight:720; line-height:.98; letter-spacing:-.057em; text-wrap:balance; }
.market-index-hero h1 span,.contact-hero h1 span { color:var(--waves-green); }
.market-hero-copy>p:not(.market-eyebrow),.contact-copy>p:not(.market-eyebrow) { max-width:610px; margin:30px 0 0; color:rgba(17,17,17,.66); font-size:18px; line-height:1.65; }
.market-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:38px; }
.market-button { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; min-height:56px; padding:0 23px; border:1px solid var(--waves-green); border-radius:15px; color:var(--waves-green); background:rgba(255,255,255,.72); font-size:13px; font-weight:700; cursor:pointer; transition:color .3s ease,background .3s ease,box-shadow .3s ease,transform .3s ease; }
.market-button span { transition:transform .3s ease; }.market-button:hover { color:#fff; background:var(--waves-green); box-shadow:0 14px 34px rgba(5,148,68,.17); transform:translateY(-2px); }.market-button:hover span { transform:translateX(4px); }.market-button-primary { color:#fff; background:var(--waves-green); }.market-button-primary:hover { background:#047f3a; }
.market-hero-visual { position:relative; display:grid; place-items:center; min-height:560px; }
.market-logo-orbit { position:relative; display:grid; place-items:center; width:min(470px,85%); aspect-ratio:1; border:1px solid rgba(5,148,68,.11); border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.94) 0 32%,rgba(5,148,68,.06) 33% 34%,rgba(255,255,255,.45) 35% 58%,transparent 59%); box-shadow:0 45px 100px rgba(17,17,17,.065),inset 0 1px 0 #fff; backdrop-filter:blur(22px); }
.market-logo-orbit::before,.market-logo-orbit::after { position:absolute; border:1px solid rgba(5,148,68,.10); border-radius:50%; content:""; }.market-logo-orbit::before { inset:11%; }.market-logo-orbit::after { inset:24%; }
.market-logo-orbit img { position:relative; z-index:2; width:38%; max-height:130px; object-fit:contain; filter:grayscale(1) contrast(1.25); }
.market-neutral-badge { position:relative; z-index:2; display:grid; place-items:center; min-width:62px; height:34px; padding:0 9px; border:1px solid rgba(17,17,17,.18); border-radius:10px; color:#171917; background:#fff; font-size:12px; font-weight:820; letter-spacing:.055em; line-height:1; }
.market-neutral-badge-large { min-width:150px; height:86px; padding:0 24px; border-radius:22px; font-size:clamp(22px,3vw,34px); box-shadow:0 18px 55px rgba(17,17,17,.06); }
.market-world { position:relative; justify-self:center; width:min(500px,90%); aspect-ratio:1; border:1px solid rgba(5,148,68,.16); border-radius:50%; background:repeating-radial-gradient(circle,transparent 0 33px,rgba(5,148,68,.08) 34px,transparent 35px 67px),linear-gradient(145deg,rgba(255,255,255,.86),rgba(239,249,243,.66)); box-shadow:0 40px 100px rgba(17,17,17,.06); }
.market-world::before,.market-world::after,.market-world span,.market-world i,.market-world b { position:absolute; border-radius:50%; background:var(--waves-green); box-shadow:0 0 0 9px rgba(5,148,68,.09); content:""; }.market-world::before { top:22%; left:28%; width:12px; height:12px; }.market-world::after { right:20%; bottom:29%; width:10px; height:10px; }.market-world span { top:48%; left:48%; width:17px; height:17px; }.market-world i { right:25%; top:28%; width:8px; height:8px; }.market-world b { bottom:20%; left:27%; width:9px; height:9px; }
.market-standards,.market-support,.contact-path { padding:105px 0; }
.market-standards { background:#fff; }.market-support { background:#f8faf9; }
.market-section-head { max-width:900px; margin-bottom:52px; }.market-section-head h2 { margin:0; font-size:clamp(42px,4vw,58px); line-height:1.04; letter-spacing:-.05em; }.market-section-head>p:last-child { max-width:700px; margin:20px 0 0; color:rgba(17,17,17,.62); }
.market-standard-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }.market-standard-grid span { display:grid; place-items:center; min-height:104px; padding:18px; border:1px solid rgba(5,148,68,.11); border-radius:20px; background:rgba(255,255,255,.70); box-shadow:0 18px 55px rgba(17,17,17,.045),inset 0 1px 0 #fff; color:#212421; font-size:14px; font-weight:700; text-align:center; backdrop-filter:blur(16px); }
.market-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.market-card { position:relative; min-height:265px; padding:42px; overflow:hidden; border:1px solid rgba(5,148,68,.12); border-radius:26px; background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(255,255,255,.57)); box-shadow:0 20px 70px rgba(17,17,17,.055),inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter:blur(22px) saturate(145%); transition:border-color .45s ease,box-shadow .45s ease,transform .45s cubic-bezier(.22,.61,.36,1); }.market-card::after { position:absolute; right:13%; bottom:0; left:13%; height:3px; background:linear-gradient(90deg,transparent,var(--waves-green),transparent); content:""; opacity:.28; transition:.45s ease; }.market-card>span { display:block; width:44px; height:3px; border-radius:3px; background:var(--waves-green); }.market-card h3 { margin:30px 0 12px; font-size:27px; line-height:1.1; letter-spacing:-.03em; }.market-card p { max-width:55ch; margin:0; color:rgba(17,17,17,.61); font-size:15px; line-height:1.62; }.market-card:hover { border-color:rgba(5,148,68,.25); box-shadow:0 30px 78px rgba(17,17,17,.075),0 12px 38px rgba(5,148,68,.045); transform:translateY(-6px); }.market-card:hover::after { right:0; left:0; opacity:1; box-shadow:0 0 24px 7px rgba(5,148,68,.14); }
.market-process { padding:90px 0; background:#fff; }.market-process-panel { display:grid; grid-template-columns:minmax(0,43fr) minmax(0,57fr); gap:80px; align-items:center; padding:65px; border:1px solid rgba(5,148,68,.10); border-radius:30px; background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(244,250,247,.74)); box-shadow:0 30px 80px rgba(17,17,17,.055); }.market-process-panel h2 { margin:0; font-size:clamp(42px,3.8vw,56px); line-height:1.03; letter-spacing:-.05em; }.market-process-panel>div>p:last-child { margin:25px 0 0; color:rgba(17,17,17,.62); font-size:17px; }.market-process-list { display:grid; gap:14px; }.market-process-list article { display:grid; grid-template-columns:48px 1fr; gap:20px; padding:22px 24px; border:1px solid rgba(5,148,68,.09); border-radius:20px; background:rgba(255,255,255,.72); }.market-process-list article>span { color:var(--waves-green); font-size:13px; font-weight:800; }.market-process-list h3 { margin:0; font-size:19px; }.market-process-list p { margin:7px 0 0; color:rgba(17,17,17,.60); font-size:14px; line-height:1.5; }
.market-source { padding:28px 0; background:#fff; }.market-source a { display:flex; align-items:center; justify-content:space-between; padding:22px 26px; border-top:1px solid rgba(17,17,17,.08); border-bottom:1px solid rgba(17,17,17,.08); color:rgba(17,17,17,.68); font-size:13px; font-weight:650; }.market-source a:hover { color:var(--waves-green); }
.market-final { padding:75px 0 105px; background:#fff; }.market-final-panel { position:relative; display:grid; grid-template-columns:1fr auto; gap:70px; align-items:center; min-height:310px; padding:58px 65px; overflow:hidden; border:1px solid rgba(5,148,68,.11); border-radius:30px; background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(242,250,246,.74)); box-shadow:0 30px 80px rgba(17,17,17,.055); }.market-final-panel::before { position:absolute; inset:0; background:repeating-radial-gradient(ellipse at 96% 110%,transparent 0 25px,rgba(5,148,68,.08) 26px,transparent 27px 50px); content:""; opacity:.7; }.market-final-panel>* { position:relative; }.market-final-panel h2 { max-width:760px; margin:0; font-size:clamp(42px,4vw,58px); line-height:1.03; letter-spacing:-.05em; }.market-final-panel>div>p:last-child { max-width:670px; margin:22px 0 0; color:rgba(17,17,17,.62); }
.market-index-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.market-index-card { display:grid; grid-template-columns:90px minmax(0,1fr) 34px; gap:25px; align-items:center; min-height:260px; padding:38px; border:1px solid rgba(5,148,68,.11); border-radius:26px; background:rgba(255,255,255,.76); box-shadow:0 20px 65px rgba(17,17,17,.05); transition:border-color .4s ease,box-shadow .4s ease,transform .4s ease; }.market-index-logo { display:grid; place-items:center; width:86px; height:86px; border:1px solid rgba(5,148,68,.10); border-radius:22px; background:#fff; }.market-index-logo img { width:64%; max-height:50px; object-fit:contain; filter:grayscale(1); }.market-index-card p { margin:0 0 8px; color:var(--waves-green); font-size:11px; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }.market-index-card h3 { margin:0; font-size:27px; line-height:1.12; letter-spacing:-.025em; }.market-index-card small { display:block; margin-top:12px; color:rgba(17,17,17,.66); font-size:15px; line-height:1.55; }.market-index-card>b { color:var(--waves-green); font-size:25px; transition:transform .35s ease; }.market-index-card:hover { border-color:rgba(5,148,68,.24); box-shadow:0 30px 75px rgba(17,17,17,.07); transform:translateY(-5px); }.market-index-card:hover>b { transform:translateX(4px); }
.contact-hero { min-height:auto; padding-bottom:100px; }.contact-hero-grid { grid-template-columns:minmax(0,43fr) minmax(0,57fr); min-height:760px; }.contact-direct { display:grid; gap:12px; margin-top:38px; }.contact-direct a { display:flex; align-items:center; gap:16px; max-width:500px; padding:15px 18px; border:1px solid rgba(5,148,68,.09); border-radius:17px; background:rgba(255,255,255,.68); }.contact-direct a>span { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border:1px solid rgba(5,148,68,.13); border-radius:13px; color:var(--waves-green); }.contact-direct small,.contact-direct strong { display:block; }.contact-direct small { color:rgba(17,17,17,.46); font-size:10px; text-transform:uppercase; }.contact-direct strong { margin-top:2px; font-size:14px; }
.contact-form-panel { position:relative; z-index:2; padding:38px; border:1px solid rgba(5,148,68,.12); border-radius:28px; background:rgba(255,255,255,.80); box-shadow:0 30px 85px rgba(17,17,17,.07),inset 0 1px 0 #fff; backdrop-filter:blur(24px) saturate(150%); }.contact-form-panel form { display:grid; gap:18px; }.contact-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.contact-form-panel label>span { display:block; margin-bottom:7px; color:rgba(17,17,17,.66); font-size:12px; font-weight:700; }.contact-form-panel input,.contact-form-panel select,.contact-form-panel textarea { width:100%; border:1px solid rgba(17,17,17,.10); border-radius:14px; color:#111; background:rgba(248,250,249,.78); font:inherit; font-size:14px; outline:none; transition:border-color .25s ease,box-shadow .25s ease; }.contact-form-panel input,.contact-form-panel select { height:54px; padding:0 15px; }.contact-form-panel textarea { min-height:135px; padding:14px 15px; resize:vertical; }.contact-form-panel input:focus,.contact-form-panel select:focus,.contact-form-panel textarea:focus { border-color:rgba(5,148,68,.55); box-shadow:0 0 0 4px rgba(5,148,68,.09); }.contact-consent { display:grid!important; grid-template-columns:20px 1fr; gap:10px; align-items:start; }.contact-consent input { width:18px; height:18px; margin-top:2px; accent-color:var(--waves-green); }.contact-consent span { margin:0!important; font-weight:500!important; line-height:1.45; }.contact-form-panel button { justify-self:start; min-width:220px; }.contact-honeypot { position:absolute; left:-9999px; }.contact-success { margin-bottom:20px; padding:16px 18px; border:1px solid rgba(5,148,68,.18); border-radius:15px; color:#075d2e; background:rgba(5,148,68,.07); }.contact-success p { margin:3px 0 0; font-size:13px; }.contact-path { background:#fff; }.contact-path-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.contact-path-grid article { padding:35px; border:1px solid rgba(5,148,68,.10); border-radius:24px; background:rgba(255,255,255,.76); box-shadow:0 20px 60px rgba(17,17,17,.04); }.contact-path-grid span { color:var(--waves-green); font-size:12px; font-weight:800; }.contact-path-grid h3 { margin:24px 0 8px; font-size:25px; }.contact-path-grid p { margin:0; color:rgba(17,17,17,.60); font-size:14px; }
@media(max-width:1100px){.market-hero-grid,.contact-hero-grid { grid-template-columns:1fr; gap:45px; }.market-hero,.contact-hero { min-height:auto; }.market-hero-grid,.contact-hero-grid { min-height:auto; }.market-hero-copy,.contact-copy { padding-top:45px; }.market-hero-visual { min-height:430px; }.market-standard-grid { grid-template-columns:repeat(3,1fr); }.market-process-panel { grid-template-columns:1fr; }.contact-form-panel { margin-bottom:25px; }}
@media(max-width:767px){.markets-body * { animation:none!important; }.market-hero,.contact-hero { padding:112px 0 72px; }.market-hero h1,.contact-hero h1 { font-size:clamp(42px,12vw,50px); }.market-hero-copy>p:not(.market-eyebrow),.contact-copy>p:not(.market-eyebrow) { font-size:17px; }.market-actions { display:grid; }.market-button { width:100%; min-height:56px; }.market-hero-visual { min-height:300px; }.market-logo-orbit { width:min(300px,90%); }.market-world { width:min(310px,92%); }.market-standards,.market-support,.contact-path { padding:78px 0; }.market-standard-grid { grid-template-columns:repeat(2,1fr); }.market-standard-grid span { min-height:86px; padding:12px; font-size:12px; }.market-card-grid,.market-index-grid,.contact-path-grid { grid-template-columns:1fr; }.market-card { min-height:0; padding:30px 26px; }.market-process { padding:72px 0; }.market-process-panel { gap:45px; padding:38px 26px; border-radius:25px; }.market-process-list article { grid-template-columns:38px 1fr; padding:20px; }.market-final { padding:60px 0 82px; }.market-final-panel { grid-template-columns:1fr; gap:35px; padding:38px 27px; border-radius:25px; }.market-index-card { grid-template-columns:68px minmax(0,1fr) 24px; gap:18px; min-height:0; padding:25px 20px; }.market-index-logo { width:66px; height:66px; border-radius:18px; }.market-index-card h3 { font-size:23px; }.market-index-card small { font-size:14px; }.contact-hero-grid { gap:42px; }.contact-field-grid { grid-template-columns:1fr; }.contact-form-panel { padding:26px 20px; border-radius:24px; }.contact-form-panel button { width:100%; }.contact-direct strong { overflow-wrap:anywhere; }}
@media(prefers-reduced-motion:reduce){.market-card,.market-index-card,.market-button { transition:none!important; }}

/* Pagina Normativa europea: mappa CE, direttive/regolamenti e norme UNI. */
.eu-regulatory-page { background:#fff; }
.eu-hero { position:relative; min-height:calc(100svh - 94px); overflow:hidden; background:linear-gradient(135deg,#fff,#f8fbf9); }
.eu-hero::before { position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 31%,rgba(255,255,255,.54) 55%,rgba(255,255,255,.15) 78%,rgba(255,255,255,.02) 100%),radial-gradient(circle at 62% 48%,rgba(5,148,68,.10),transparent 38%); content:""; pointer-events:none; }
.eu-hero::after { position:absolute; inset:0; z-index:1; background:repeating-linear-gradient(90deg,rgba(5,148,68,.035) 0 1px,transparent 1px 104px),repeating-linear-gradient(0deg,rgba(5,148,68,.028) 0 1px,transparent 1px 104px); content:""; opacity:.5; pointer-events:none; }
.eu-hero-bg { position:absolute; inset:0; z-index:0; display:block; }
.eu-hero-bg img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center right; opacity:.88; }
.eu-hero-grid { position:relative; z-index:2; grid-template-columns:minmax(0,720px)!important; min-height:calc(100svh - 94px)!important; align-content:center; padding:70px 0 76px; }
.eu-hero .market-hero-copy { max-width:720px; padding-top:0!important; }
.eu-map-visual { position:relative; display:grid; place-items:center; width:min(520px,88%); aspect-ratio:1; border:1px solid rgba(5,148,68,.12); border-radius:34%; background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.96) 0 28%,rgba(5,148,68,.07) 29% 30%,rgba(255,255,255,.58) 31% 64%,transparent 65%),repeating-linear-gradient(90deg,rgba(5,148,68,.05) 0 1px,transparent 1px 54px),repeating-linear-gradient(0deg,rgba(5,148,68,.05) 0 1px,transparent 1px 54px); box-shadow:0 45px 120px rgba(17,17,17,.07),inset 0 1px 0 rgba(255,255,255,.95); backdrop-filter:blur(24px) saturate(150%); -webkit-backdrop-filter:blur(24px) saturate(150%); }
.eu-map-visual::before,.eu-map-visual::after { position:absolute; border:1px solid rgba(5,148,68,.12); border-radius:50%; content:""; }
.eu-map-visual::before { inset:12%; }
.eu-map-visual::after { inset:27%; }
.eu-map-visual img { position:relative; z-index:3; width:31%; max-height:120px; object-fit:contain; filter:grayscale(1) contrast(1.2); opacity:.92; }
.eu-map-visual span,.eu-map-visual i,.eu-map-visual b,.eu-map-visual em { position:absolute; z-index:2; width:12px; height:12px; border-radius:50%; background:var(--waves-green); box-shadow:0 0 0 10px rgba(5,148,68,.08); content:""; }
.eu-map-visual span { top:22%; left:24%; }
.eu-map-visual i { top:29%; right:20%; }
.eu-map-visual b { right:28%; bottom:20%; }
.eu-map-visual em { left:25%; bottom:27%; }
.eu-hero-image { position:relative; display:block; width:min(760px,105%); margin-right:clamp(-90px,-5vw,-20px); overflow:hidden; border:1px solid rgba(5,148,68,.10); border-radius:34px; background:#fff; box-shadow:0 42px 110px rgba(17,17,17,.075),0 18px 55px rgba(5,148,68,.055),inset 0 1px 0 rgba(255,255,255,.92); }
.eu-hero-image::before { position:absolute; inset:0; z-index:2; background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.52) 29%,rgba(255,255,255,.10) 56%,rgba(255,255,255,0) 100%); content:""; pointer-events:none; }
.eu-hero-image::after { position:absolute; right:10%; bottom:0; left:14%; z-index:3; height:3px; background:linear-gradient(90deg,transparent,var(--waves-green),transparent); content:""; opacity:.48; box-shadow:0 0 28px rgba(5,148,68,.22); }
.eu-hero-image img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; object-position:center; }
.eu-intro { padding:72px 0 72px; background:#fff; }
.eu-intro-panel { display:grid; grid-template-columns:minmax(0,44fr) minmax(0,56fr); gap:72px; align-items:center; padding:62px; border:1px solid rgba(5,148,68,.10); border-radius:30px; background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(245,251,248,.78)); box-shadow:0 30px 90px rgba(17,17,17,.055),inset 0 1px 0 rgba(255,255,255,.92); }
.eu-intro-panel h2 { margin:0; font-size:clamp(42px,4vw,58px); line-height:1.02; letter-spacing:-.05em; }
.eu-intro-panel p:not(.market-eyebrow) { margin:24px 0 0; color:rgba(17,17,17,.64); font-size:17px; line-height:1.7; }
.eu-intro-points { display:grid; gap:14px; }
.eu-intro-points article { display:grid; grid-template-columns:48px 1fr; gap:20px; padding:22px 24px; border:1px solid rgba(5,148,68,.09); border-radius:20px; background:rgba(255,255,255,.76); }
.eu-intro-points span { color:var(--waves-green); font-size:13px; font-weight:850; letter-spacing:.04em; }
.eu-intro-points h3 { margin:0; font-size:20px; letter-spacing:-.025em; }
.eu-intro-points p { margin:8px 0 0!important; font-size:14px!important; line-height:1.52!important; }
.eu-law-map { padding:108px 0; background:#f8faf9; }
.eu-law-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.eu-law-card,.eu-standard-card { position:relative; display:flex; flex-direction:column; min-height:430px; padding:34px; overflow:hidden; border:1px solid rgba(5,148,68,.11); border-radius:26px; background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.62)); box-shadow:0 22px 70px rgba(17,17,17,.055),inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter:blur(20px) saturate(145%); -webkit-backdrop-filter:blur(20px) saturate(145%); transition:border-color .42s cubic-bezier(.22,.61,.36,1),box-shadow .42s cubic-bezier(.22,.61,.36,1),transform .42s cubic-bezier(.22,.61,.36,1); }
.eu-law-card::after,.eu-standard-card::after { position:absolute; right:13%; bottom:0; left:13%; height:3px; background:linear-gradient(90deg,transparent,var(--waves-green),transparent); content:""; opacity:.25; transition:.42s cubic-bezier(.22,.61,.36,1); }
.eu-law-card:hover,.eu-standard-card:hover { border-color:rgba(5,148,68,.23); box-shadow:0 30px 86px rgba(17,17,17,.075),0 12px 38px rgba(5,148,68,.05); transform:translateY(-5px); }
.eu-law-card:hover::after,.eu-standard-card:hover::after { right:0; left:0; opacity:.9; box-shadow:0 0 24px rgba(5,148,68,.15); }
.eu-law-kicker { margin:0 0 20px!important; color:rgba(17,17,17,.54)!important; font-size:12px!important; font-weight:800; letter-spacing:.065em; line-height:1.35!important; text-transform:uppercase; }
.eu-law-code { display:grid; place-items:center; min-height:96px; margin:0 0 25px; padding:16px; border:1px solid rgba(5,148,68,.12); border-radius:20px; color:var(--waves-green); background:linear-gradient(135deg,rgba(5,148,68,.075),rgba(255,255,255,.76)); font-size:clamp(24px,2.1vw,34px); line-height:.98; letter-spacing:-.055em; text-align:center; box-shadow:inset 0 1px 0 rgba(255,255,255,.92); }
.eu-law-card h3,.eu-standard-card h3 { margin:0 0 14px; font-size:26px; line-height:1.08; letter-spacing:-.035em; }
.eu-law-card p,.eu-standard-card p { margin:0; color:rgba(17,17,17,.62); font-size:15px; line-height:1.62; }
.eu-card-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; padding-top:28px; }
.eu-card-links a { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 15px; border:1px solid rgba(5,148,68,.15); border-radius:14px; color:var(--waves-green); background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(245,251,248,.70)); font-size:12px; font-weight:800; box-shadow:0 10px 24px rgba(17,17,17,.035),inset 0 1px 0 rgba(255,255,255,.9); transition:color .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease; }
.eu-card-links a:hover { color:#fff; border-color:var(--waves-green); background:var(--waves-green); box-shadow:0 14px 32px rgba(5,148,68,.13); transform:translateY(-1px); }
.eu-directory-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:42px; align-items:center; margin-top:32px; padding:34px 38px; border:1px solid rgba(5,148,68,.11); border-radius:26px; background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(244,250,247,.75)); box-shadow:0 22px 70px rgba(17,17,17,.045),inset 0 1px 0 rgba(255,255,255,.9); }
.eu-directory-cta h3 { margin:0; font-size:28px; line-height:1.08; letter-spacing:-.04em; }
.eu-directory-cta p:not(.market-eyebrow) { max-width:760px; margin:12px 0 0; color:rgba(17,17,17,.62); font-size:15px; line-height:1.6; }
.eu-reading-path { padding:90px 0; background:#fff; }
.eu-standards-map { padding:108px 0; background:#f8faf9; }
.eu-standard-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.eu-standard-card { min-height:350px; padding:31px; }
.eu-standard-code { display:block!important; width:100%!important; margin:0 0 24px!important; padding:0 0 16px!important; border:0!important; border-bottom:1px solid rgba(5,148,68,.13)!important; border-radius:0!important; color:var(--waves-green)!important; background:transparent!important; font-size:clamp(22px,2.05vw,32px)!important; line-height:1!important; letter-spacing:-.045em!important; text-transform:none!important; }
.eu-standard-card h3 { font-size:24px; }
.eu-sector-standards { padding:108px 0; background:#fff; }
.eu-sector-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.eu-sector-card { min-height:310px; background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,252,250,.66)); }
@media(max-width:1180px){.eu-law-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.eu-standard-grid,.eu-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.eu-intro-panel{grid-template-columns:1fr;gap:42px;}.eu-directory-cta{grid-template-columns:1fr;gap:22px;}}
@media(max-width:767px){.eu-regulatory-page .market-hero{min-height:auto;padding-top:98px;padding-bottom:56px;}.eu-hero::before{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 48%,rgba(255,255,255,.35) 100%),radial-gradient(circle at 72% 62%,rgba(5,148,68,.12),transparent 40%);}.eu-hero-bg img{object-position:center bottom;opacity:.45;}.eu-regulatory-page .market-hero-grid{gap:26px;min-height:auto!important;padding:24px 0 34px;}.eu-regulatory-page .market-hero-copy{padding-top:0;}.eu-intro{padding:64px 0 56px;}.eu-intro-panel{padding:34px 24px;border-radius:25px;}.eu-intro-panel h2{font-size:clamp(34px,10vw,42px);}.eu-law-map,.eu-standards-map,.eu-sector-standards{padding:78px 0;}.eu-law-grid,.eu-standard-grid,.eu-sector-grid{grid-template-columns:1fr;}.eu-law-card,.eu-standard-card{min-height:0;padding:28px 24px;border-radius:23px;}.eu-law-code{min-height:84px;font-size:28px;}.eu-law-card h3{font-size:24px;}.eu-standard-code{font-size:28px!important;}.eu-card-links a{min-height:42px;}.eu-intro-points article{grid-template-columns:40px 1fr;padding:20px;}.eu-directory-cta{margin-top:22px;padding:28px 24px;border-radius:23px;}.eu-directory-cta .market-button{width:100%;}}

.training-contact-body { --waves-green:#ff5a1f; --waves-green-rgb:255,90,31; background:#fffaf7; }
.training-contact-body .site-header { border-bottom-color:rgba(255,255,255,.18); background:rgba(255,90,31,.9); }
.training-contact-body .site-header .brand-logo img { filter:brightness(0) invert(1); }
.training-contact-body .site-header .main-nav a,.training-contact-body .submenu-toggle { color:#fff; }
.training-contact-body .contact-hero { background:radial-gradient(circle at 80% 22%,rgba(255,90,31,.12),transparent 30%),#fffaf7; }

/* Conferma form e variante arancione proveniente dalla pagina Formazione. */
.contact-success-confirmation { animation:contact-success-in .55s cubic-bezier(.22,.61,.36,1) both; }
.contact-consent a { color:var(--waves-green); text-decoration:underline; text-underline-offset:3px; }
.training-contact-body .site-header .main-nav a.is-current { color:#fff!important; font-weight:800; }
.training-contact-body .contact-form-panel input,.training-contact-body .contact-form-panel select,.training-contact-body .contact-form-panel textarea { border-color:rgba(255,90,31,.14); background:rgba(255,244,237,.78); }
.training-contact-body .site-footer { border-top-color:rgba(255,255,255,.18); color:rgba(255,255,255,.72); background:#ff5a1f; }
.training-contact-body .site-footer .footer-logo img { filter:brightness(0) invert(1); }
.training-contact-body .site-footer .footer-column h2,.training-contact-body .site-footer .footer-contact strong { color:#fff; }
.training-contact-body .site-footer .footer-column a,.training-contact-body .site-footer .footer-column p,.training-contact-body .site-footer .footer-brand>p,.training-contact-body .site-footer .footer-bottom { color:rgba(255,255,255,.76); }
.training-contact-body .site-footer .footer-social a { border-color:rgba(255,255,255,.5); color:#fff; }
.training-contact-body .site-footer .footer-bottom { border-top-color:rgba(255,255,255,.18); }
@keyframes contact-success-in { from { opacity:0; transform:translateY(14px) scale(.985); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce){.contact-success-confirmation{animation:none!important;}}
