/* TUTELA — dimensional portal surfaces; reading areas retain a light background. */
.future-site{--space:#061227;--space-soft:#0b203a;--mint:#85e6bb;--ice:#84c9ef;--surface-line:#82b8db33;background:#f4f7fb}
.future-site header{border-bottom:1px solid #8fc7cd50;background:#ffffffef;box-shadow:0 8px 30px #0211241c;backdrop-filter:blur(20px)}
.future-site .navcta{border-radius:7px;background:linear-gradient(135deg,#113a56,#081d38);border:1px solid #275d74;box-shadow:0 4px 0 #071528,0 8px 24px #21485e25}
.future-site .hero{min-height:680px;background:radial-gradient(ellipse at 76% 38%,#234d714f,transparent 42%),radial-gradient(ellipse at 0 100%,#08745f4d,transparent 50%),linear-gradient(120deg,#040d1c,#07172d 54%,#101a35);isolation:isolate;overflow:hidden}
.future-site .hero:before{width:600px;height:600px;right:-2%;top:4%;border:1px solid #83cdf01c;box-shadow:0 0 0 32px #80cdee05,0 0 0 66px #80cdee04,inset 0 0 100px #74b1dc05;transform:rotateX(18deg) rotateY(-15deg)}
.future-site .hero:after{z-index:4;box-shadow:0 -2px 20px #8fdfc122}
.hero-grid{position:absolute;z-index:0;left:-10%;right:-10%;bottom:-75px;height:270px;background-image:linear-gradient(#6bd7c92b 1px,transparent 1px),linear-gradient(90deg,#6bd7c92b 1px,transparent 1px);background-size:54px 45px;transform:perspective(370px) rotateX(54deg);transform-origin:50% 100%;mask-image:linear-gradient(transparent,#0009 70%);pointer-events:none}
.hero-beam{position:absolute;z-index:0;width:2px;height:550px;left:58%;top:-100px;background:linear-gradient(transparent,#8bd7e81c,transparent);transform:rotate(26deg);box-shadow:0 0 55px 25px #93e9de05;pointer-events:none}
.future-site .hero-copy{position:relative;z-index:2;padding-top:50px;padding-bottom:34px}.future-site .hero-pill{border-color:#8dcac33b;background:#80d3ba0b;color:#d3e4e6;box-shadow:inset 0 1px 0 #ffffff1c,0 8px 20px #010b1d40}
.future-site h1{letter-spacing:-2.4px;text-shadow:0 3px 0 #020815,0 14px 32px #0005}.future-site .hero h1 em{background:linear-gradient(105deg,#a4edc9,#79c9ea);background-clip:text;color:transparent}.future-site .hero p{color:#c3d3e2}.future-site .hero .button{border-radius:7px;box-shadow:0 5px 0 #9fbfc0,0 15px 30px #0004}
.hero-portals{display:flex;align-items:center;gap:10px;width:fit-content;max-width:95%;margin-top:25px;padding:11px 16px;border:1px solid #a8d2e132;border-radius:7px;background:linear-gradient(135deg,#ffffff0c,#ffffff03);color:#d8e7ec;font-size:11px;font-weight:700;box-shadow:inset 0 1px 0 #ffffff12,0 5px 15px #0002}.hero-portals>span{font-size:20px;color:var(--mint)}.hero-portals small{font-size:7px;letter-spacing:1.3px;color:#8caab9;border-left:1px solid #9dbbc43a;padding-left:12px;margin-left:5px}.hero-portals:hover{border-color:#8de1ba8c;background:#8de1ba12}.future-site .hero-foot{margin-top:28px;color:#abc7d0}
.future-site .hero-art{position:relative;z-index:1;perspective:1100px;background:radial-gradient(ellipse at 50% 42%,#4b95bc1c,transparent 65%)}.future-site .hero-art>img{z-index:3;position:relative;box-shadow:3px 3px 0 #c2dce5,8px 7px 0 #819bb5,13px 12px 0 #3f5879,18px 18px 0 #193149,28px 35px 25px #010818aa,10px 10px 90px #5dd7cc26;animation:future-emblem 9s ease-in-out infinite;will-change:transform}
@keyframes future-emblem{0%,100%{transform:translateY(-4px) rotateY(-16deg) rotateX(8deg)}50%{transform:translateY(-15px) rotateY(-10deg) rotateX(5deg)}}
.future-site .hero-art>span{z-index:3;margin-top:48px;color:#9dbbcf;font-size:11px;letter-spacing:2px}.future-site .depth-orbit{width:435px;height:435px;border-color:#90dcda26;box-shadow:inset 0 0 30px #8ddbe104,0 0 15px #8ddbe104;transform:rotateY(-19deg) rotateX(25deg)}.future-site .depth-orbit.orbit-two{width:500px;height:500px;transform:rotateY(24deg) rotateX(-22deg);border-color:#8ad0ec13}.future-site .orbit{width:470px;height:470px;border-color:#b8eced0f;transform:rotateY(-12deg)}
.holo-platform{position:absolute;z-index:1;width:360px;height:86px;bottom:95px;border-radius:50%;border:1px solid #95e7df40;background:radial-gradient(ellipse,#67d8bb2b,#63c8e80d 55%,transparent 72%);box-shadow:0 0 0 15px #7addd409,0 0 0 32px #7addd405,0 4px 40px #58bba812;transform:rotate(-9deg) rotateY(-12deg)}.holo-dot{position:absolute;z-index:3;width:7px;height:7px;border-radius:50%;background:#91e5c8;box-shadow:0 0 15px 3px #91e5c840}.dot-a{top:23%;left:15%}.dot-b{right:14%;bottom:27%;width:5px;height:5px;background:#91c9ed;box-shadow:0 0 14px #91c9ed80}
.future-site #portali{position:relative;background:linear-gradient(115deg,#071325,#0c2037);padding-top:44px;padding-bottom:46px;border-bottom:1px solid #85c9cd25;color:#fff;overflow:hidden}.future-site #portali:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 90% 0,#6fc8e112,transparent 50%)}.future-site #portali .section-title{position:relative;z-index:1;margin-bottom:28px}.future-site #portali h2{font-size:30px;letter-spacing:-1px;color:#f5fbff}.future-site #portali .section-title p{color:#a7c1d0;font-size:12px}.future-site #portali .green{color:#8bd7b9}
.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;perspective:1400px}.portal-card{position:relative;min-width:0;padding:24px;border:1px solid #5c8dad55;border-radius:18px;background:linear-gradient(135deg,#17354a9c,#10213dc9);box-shadow:0 6px 0 #030b17,0 17px 34px #0004,inset 0 1px 0 #ffffff16;transform-style:preserve-3d;transition:transform .2s,box-shadow .2s;isolation:isolate}.portal-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--glow-x,50%) var(--glow-y,0%),#b4eeef13,transparent 65%);pointer-events:none;z-index:-1}.portal-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px}.portal-badge{font-size:8px;letter-spacing:1.2px;font-weight:700;color:#a1e9c9;padding:6px 9px;border-radius:5px;border:1px solid #91debc33;background:#73d1a60b}.portal-index{font-size:8px;letter-spacing:1.5px;color:#8aa6bd}.portal-main{display:grid;grid-template-columns:115px 1fr;gap:22px;align-items:center;transform-style:preserve-3d}.portal-logo-stage{display:flex;align-items:center;justify-content:center;width:108px;height:108px;background:#fff;border:1px solid #cbdde9;border-radius:21px;box-shadow:4px 5px 0 #92b3c74f,8px 11px 20px #0004;transform:translateZ(24px) rotateY(-9deg);padding:6px}.portal-logo-stage img{object-fit:contain;max-width:100%;height:auto}.portal-logo-stage.youpol-stage img{border-radius:16px}.portal-main h3{font-size:25px;letter-spacing:-.5px;color:#fff;margin:0 0 9px}.portal-main p{font-size:12px;line-height:1.65;color:#b8cdda;margin:0 0 13px;max-width:330px}.portal-go{font-size:11px;font-weight:700;color:#a1e5c6}.portal-go>span{margin-left:12px}.portal-actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:20px;margin-top:22px;border-top:1px solid #b4d8e21c}.portal-actions a{font-size:10px;font-weight:700;line-height:1.4;border:1px solid #87afc63b;border-radius:6px;padding:9px 12px;background:#daeef408;color:#d0e3eb}.portal-actions a:hover{border-color:#99e3bd9c;color:#acedd1}.portal-doppiavela .portal-main{grid-template-columns:185px 1fr;gap:24px}.dv-logo-stage{width:180px;height:100px;border-radius:15px;padding:10px}.portal-doppiavela .portal-badge{color:#a4d7f4;border-color:#91cfe833;background:#6bc7f30b}
.future-site #servizi{background:radial-gradient(ellipse at 5% 35%,#10394b70,transparent 45%),linear-gradient(145deg,#071427,#08162d 55%,#101a30);border-bottom:1px solid #102d43;color:#f5fbff;padding-top:60px;padding-bottom:65px}.future-site #servizi>.section-title p{color:#afc4d3}.future-site #servizi .green{color:#8ad5b7}.future-site #servizi h2{color:#effaff}.future-site .area-grid{perspective:1500px;gap:23px}.future-site .area{color:#fff;border:1px solid #78aac342!important;background:linear-gradient(135deg,#17324a,#0d2139 65%,#101d32)!important;box-shadow:0 5px 0 #030b19,0 14px 30px #0003,inset 0 1px 0 #ffffff12;border-radius:15px;padding:27px;isolation:isolate;transform-style:preserve-3d;transition:transform .2s,box-shadow .2s,border-color .2s}.future-site .area:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(circle at var(--glow-x,45%) var(--glow-y,10%),#95ece111,transparent 70%);z-index:-1}.future-site .area h3{color:#f2f9ff;font-size:18px;letter-spacing:-.4px;line-height:1.25;transform:translateZ(10px)}.future-site .area p{color:#bdd0de;font-size:12px;line-height:1.8}.future-site .area .go{color:#9ce3c3;font-size:11px}.future-site .area .num{color:#7695ad;letter-spacing:1px}.future-site .area .image-icon{transform:translateZ(28px);filter:drop-shadow(0 12px 10px #02091c70)}.future-site .area .image-icon img{filter:drop-shadow(3px 6px 4px #0003)}.future-site .area.dark{background:linear-gradient(145deg,#124331,#0b2934 75%)!important;border-color:#91dfad4a!important}.future-site .area.noipa-card{background:linear-gradient(145deg,#153752,#10223d)!important}.future-site .area:hover{border-color:#8ee7c180!important;box-shadow:0 6px 0 #030b19,0 25px 35px #0005,0 0 24px #7fddc20e}
.future-site .specialty-card{background:linear-gradient(140deg,#10334b,#10243e)!important;color:#fff;border:1px solid #477b965e;box-shadow:0 5px 0 #081327,0 18px 30px #08132721!important;transform-style:preserve-3d;transition:transform .2s!important}.future-site .specialty-card h3{color:#f0f8fd}.future-site .specialty-card p{color:#b9d0df}.future-site .specialty-card .go{color:#8fe0b8}.future-site .badge-stage{transform:translateZ(25px) rotateY(-8deg);box-shadow:inset 0 0 0 1px #dce8ef,3px 5px 0 #8cabb6,7px 14px 24px #0004}.future-site .specialty-card:hover .badge-stage{transform:translateZ(31px) rotateY(0deg) translateY(-3px)}
.future-site .content-card,.future-site .specialty-area{border-radius:12px;border-color:#d3e0e9;box-shadow:0 5px 0 #dce6ec55,0 12px 24px #12334d08}.future-site .tabs button.active{box-shadow:0 3px 0 #416a72;border:1px solid #3b717c;background:linear-gradient(135deg,#17415b,#0a223e)}.future-site input,.future-site textarea,.future-site select{border-radius:7px}.future-site .white,.future-site .button{transition:transform .18s,box-shadow .18s}.future-site .closing{background:radial-gradient(ellipse at 85% 20%,#3b708633,transparent 60%),linear-gradient(120deg,#071729,#0b2b40);border-top:1px solid #9ddad833;box-shadow:inset 0 1px 0 #8ed6ce20}
@media(hover:hover) and (pointer:fine){.future-site .depth-card:hover{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-6px)!important}}
@media(max-width:1100px){.portal-doppiavela .portal-main{grid-template-columns:1fr}.dv-logo-stage{width:190px;height:90px}.portal-main{gap:17px}.portal-main h3{font-size:23px}.portal-actions{gap:8px}.portal-card{padding:22px}.future-site .hero-art>img{width:290px}.future-site .depth-orbit{width:360px;height:360px}.future-site .depth-orbit.orbit-two{width:420px;height:420px}.future-site .orbit{width:390px;height:390px}.holo-platform{width:290px}}
@media(max-width:760px){.portal-grid{grid-template-columns:1fr;gap:21px}.portal-main,.portal-doppiavela .portal-main{grid-template-columns:110px 1fr}.portal-doppiavela .portal-main{grid-template-columns:165px 1fr}.dv-logo-stage{width:160px;height:88px}.future-site #portali .section-title{align-items:start}.future-site #portali h2{font-size:28px}.future-site #portali .section-title p{margin-bottom:0}.future-site .hero{min-height:0}.future-site .hero-copy{padding-top:38px}.hero-portals small{display:none}.holo-platform{bottom:55px;width:270px;height:70px}.hero-grid{height:180px}.future-site .hero-art>img{width:250px}.future-site .hero-art>span{margin-top:38px}.future-site .hero-art{padding-bottom:48px}.future-site .area{padding:23px}}
@media(max-width:500px){.portal-main,.portal-doppiavela .portal-main{grid-template-columns:1fr;gap:24px}.portal-logo-stage{width:86px;height:86px;border-radius:18px}.dv-logo-stage{width:185px;height:85px;border-radius:13px}.portal-top{margin-bottom:22px}.portal-card{padding:23px}.portal-main h3{font-size:25px}.portal-main p{max-width:none}.portal-actions{margin-top:20px}.portal-index{font-size:7px}.future-site .hero-art>img{width:230px}.future-site .depth-orbit{width:285px;height:285px}.future-site .depth-orbit.orbit-two{width:330px;height:330px}.future-site .orbit{width:305px;height:305px}.future-site h1{letter-spacing:-1.8px}.future-site #servizi{padding-top:43px;padding-bottom:48px}.future-site .area p{font-size:12px}.future-site .area h3{font-size:17px}.hero-portals{font-size:11px}}
@media(prefers-reduced-motion:reduce){.future-site .hero-art>img{animation:none;will-change:auto;transform:rotateY(-8deg)}.future-site .depth-card:hover{transform:none!important}.future-site .area .image-icon,.future-site .badge-stage{transform:none!important}}

.page-views {
  grid-column: 1 / -1;
  justify-self: start;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 8px 14px;
  border: 1px solid #cbd9e4;
  border-radius: 8px;
  background: linear-gradient(155deg, #fff, #eaf2fa);
  box-shadow: 0 3px 0 #d6e2ed;
  line-height: 1.4;
}
.page-views svg { color: var(--green); }
.page-views strong { font-size: 15px; font-variant-numeric: tabular-nums; }

.future-site main > :is(.section, .closing) {
  isolation: isolate;
  /* Each section reveals the same fixed watermark within its own bounds. */
  clip-path: inset(0);
}

.future-site main > :is(.section, .closing)::after {
  content: "";
  position: fixed;
  inset: 0;
  max-width: 1680px;
  margin-inline: auto;
  z-index: -1;
  pointer-events: none;
  background: url("/assets/logo.jpeg") no-repeat 90% center;
  background-size: auto min(72%, clamp(240px, 42vw, 520px));
  opacity: .09;
  mix-blend-mode: multiply;
}

.future-site main > :is(#portali, #servizi, .closing)::after {
  filter: grayscale(1) invert(1);
  mix-blend-mode: screen;
  opacity: .12;
}

@media (max-width: 760px) {
  .future-site main > :is(.section, .closing)::after { background-position: center; }
}

.page-crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding: 20px 6%;
  border-bottom: 1px solid #dce6ec;
  background: #f4f7fb;
  color: #576c7e;
  font-size: 13px;
}
.page-crumbs a, .section-link { color: #08634d; font-weight: 700; }
.page-crumbs a:hover, .section-link:hover { text-decoration: underline; }
.page-crumbs [aria-current] { color: #17334d; }
.site-interior { min-height: 52vh; }
.future-site .site-interior h1 {
  margin: 12px 0 0;
  font-size: clamp(29px, 4.4vw, 46px);
  letter-spacing: -1.1px;
  line-height: 1.15;
  text-shadow: none;
}
.site-interior .section-title h1 { margin-bottom: 5px; }
.site-interior .specialty-heading h1 { font-size: clamp(26px, 3.8vw, 40px); }
.site-interior #portali h1 { color: #f5fbff; }
.site-interior #segnalazioni .section-link { grid-column: 1 / -1; }
.section-link { display: inline-block; margin-top: 24px; }
.tabs a, .role-shortcuts a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid #ccd8e3;
  border-radius: 6px;
  padding: 10px 14px;
  background: #fff;
  color: #23445e;
  font-size: 12px;
  font-weight: 700;
}
.tabs a:hover, .role-shortcuts a:hover { border-color: #16814e; background: #edf6f2; }
.tabs a.active, .role-shortcuts a.active {
  background: linear-gradient(135deg, #17415b, #0a223e);
  border-color: #3b717c;
  color: #fff;
}
.future-site header nav a[aria-current="page"]:not(.navjoin) { color: #087456; }
.news-list { display: grid; gap: 18px; }

.press-panel {
  padding: clamp(17px, 3vw, 34px);
  border: 1px solid #ccdae5;
  border-top: 4px solid #168856;
  border-radius: 12px;
  background: linear-gradient(148deg, #f2f7fb, #fff 75%);
  box-shadow: 0 4px 0 #e0eaf0;
}
.press-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px; }
.press-heading h2, .world-news .press-editorial-title { margin: 0; color: var(--navy); font-size: clamp(22px, 3vw, 32px); }
.press-updated { margin: 0; font-size: 12px; color: #4c6475; }
.press-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 20px 0 0; }
.press-filters label { min-width: 0; margin: 0; }
.press-list { list-style: none; padding: 0; margin: 20px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.press-list .thematic-empty { grid-column: 1 / -1; margin: 0; }
.press-article { display: grid; align-content: start; gap: 8px; padding: 15px; border: 1px solid #d4e0e9; border-radius: 8px; background: #fff; overflow-wrap: anywhere; }
.press-article .press-meta { margin: 0; color: #0a654b; font-size: 12px; font-weight: 700; }
.press-article h3 { margin: 0; color: var(--navy); font-size: 16px; line-height: 1.4; }
.press-article a:hover { text-decoration: underline; text-underline-offset: .18em; }
.press-article a { display: inline-block; }
.press-article time { color: #4c6475; font-size: 12px; }
.press-more { background: #e3eef5; color: var(--navy); }
.world-news .press-editorial-title { margin-top: 38px; margin-bottom: 14px; }
@media (max-width: 960px) { .press-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 580px) { .press-list, .press-filters { grid-template-columns: 1fr; } }
