/* CNSBII · 218T Homepage editorial focus. Fully scoped; public shell untouched. */
body.cns218-home{--h218-ink:#10232d;--h218-accent:#b22b3d;--h218-paper:#f7f6f1}
body.cns218-home .cns218-feature,body.cns218-home .cns218-feature *{box-sizing:border-box}
body.cns218-home .cns218-feature{position:relative;color:#10232d;background:#f7f6f1;padding:clamp(28px,4vw,62px) clamp(16px,2.8vw,50px) clamp(22px,3vw,42px);isolation:isolate;overflow:hidden}
body.cns218-home .cns218-feature:before{content:"";position:absolute;top:0;right:0;width:min(34vw,600px);height:min(24vw,430px);background:repeating-radial-gradient(circle at 90% 0,transparent 0,transparent 23px,rgba(16,47,56,.07) 24px,transparent 25px);pointer-events:none;z-index:-1}
body.cns218-home .cns218-inner{max-width:1580px;margin:0 auto}
body.cns218-home .cns218-feature-intro{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,.65fr);align-items:end;gap:clamp(18px,4vw,75px);margin:0 0 clamp(26px,4vw,45px)}
body.cns218-home .cns218-edition{font:750 11px/1.5 system-ui,sans-serif;letter-spacing:.21em;text-transform:uppercase;color:#a12b3d;margin:0 0 17px}
body.cns218-home .cns218-edition span{color:#7d8587;padding:0 9px}
body.cns218-home .cns218-feature-intro h1{font:400 clamp(39px,4.4vw,79px)/.99 Georgia,"Times New Roman",serif;letter-spacing:-.048em;max-width:920px;text-wrap:balance;color:#10232d;margin:0}
body.cns218-home .cns218-feature-intro>p{font:400 clamp(15px,1.1vw,17px)/1.65 system-ui,sans-serif;color:#3e4e54;margin:0 0 5px;max-width:38ch}
body.cns218-home .cns218-feature-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(265px,.78fr);gap:clamp(10px,1.6vw,24px);align-items:stretch}
body.cns218-home .cns218-feature-primary{min-width:0;display:flex;align-items:stretch;background:#111f2c;overflow:hidden;border-radius:3px}
body.cns218-home .cns218-feature-primary .v23launch{border:0;width:100%;height:100%}
body.cns218-home .cns218-feature-primary .v23launch-layout{min-height:510px;height:100%;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr)}
body.cns218-home .cns218-feature-primary .v23launch-visual{min-height:510px}
body.cns218-home .cns218-feature-primary .v23launch-body{padding:clamp(22px,3.2vw,54px);background:#152b39}
body.cns218-home .cns218-feature-primary .v23launch-overline{font-size:10px;letter-spacing:.13em;margin-bottom:18px}
body.cns218-home .cns218-feature-primary .v23launch h2{font-size:clamp(41px,4.8vw,84px);line-height:.97;margin-bottom:17px}
body.cns218-home .cns218-feature-primary .v23launch-intro{font-size:clamp(14px,1.07vw,17px);line-height:1.58;margin-bottom:18px}
body.cns218-home .cns218-feature-primary .v23launch-count{margin-bottom:13px}
body.cns218-home .cns218-feature-primary .v23launch-count>span{padding:10px 12px 10px 0}
body.cns218-home .cns218-feature-primary .v23launch-count strong{font-size:clamp(27px,2.5vw,42px)}
body.cns218-home .cns218-feature-primary .v23launch-release{font-size:12px;margin-bottom:16px}
body.cns218-home .cns218-feature-primary .v23launch-actions a{min-height:44px;padding:11px 14px;font-size:12px;line-height:1.4}
body.cns218-home .cns218-feature-primary .v23launch-stamp{left:clamp(20px,2.3vw,40px);top:23px;font-size:10px}
body.cns218-home .cns218-feature-primary .v23launch-credit{left:clamp(20px,2.3vw,40px);font-size:10px;right:14px}
body.cns218-home .cns218-feature-rail{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:clamp(10px,1.6vw,24px);min-width:0}
body.cns218-home .cns218-tile{display:flex;flex-direction:column;min-height:166px;padding:clamp(18px,1.6vw,28px);gap:8px;border:1px solid #d1d7d5;background:#fff;text-decoration:none!important;color:#10232d!important;border-radius:3px;position:relative;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
body.cns218-home .cns218-tile:before{content:"";position:absolute;width:145px;height:145px;right:-65px;top:-69px;border:1px solid currentColor;border-radius:50%;opacity:.10;box-shadow:0 0 0 24px transparent,0 0 0 25px currentColor,0 0 0 54px transparent,0 0 0 55px currentColor;pointer-events:none}
body.cns218-home .cns218-tile-sarno{background:#153b43;border-color:#153b43;color:#fff!important}
body.cns218-home .cns218-tile-rivers{background:#e5e9e4;border-color:#c8d1ce}
body.cns218-home .cns218-tile-seismic{background:#f1e6dc;border-color:#e0ccc0}
body.cns218-home .cns218-index{display:flex;justify-content:space-between;gap:8px;font:750 10px/1.4 system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;opacity:.86}
body.cns218-home .cns218-index>span:last-child{font-size:18px;line-height:1}
body.cns218-home .cns218-tile-name{font:400 clamp(26px,2.1vw,35px)/1.04 Georgia,serif;letter-spacing:-.04em;display:block}
body.cns218-home .cns218-tile-name em{font-style:italic;font-weight:400}
body.cns218-home .cns218-tile-description{font:400 clamp(12px,.92vw,14px)/1.45 system-ui,sans-serif;max-width:38ch;opacity:.87;display:block}
body.cns218-home .cns218-tile-footer{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:3px;font:750 11px/1.4 system-ui,sans-serif;text-decoration:underline;text-underline-offset:3px}
body.cns218-home .cns218-tile:hover{transform:translateY(-3px);border-color:#6a7a7d;box-shadow:0 9px 25px rgba(15,35,45,.12)}
body.cns218-home .cns218-tile-sarno:hover{border-color:#e8d6ab}
body.cns218-home .cns218-feature a:focus-visible{outline:3px solid #b52d40!important;outline-offset:3px}
body.cns218-home .cns218-feature-primary a:focus-visible,body.cns218-home .cns218-tile-sarno:focus-visible{outline-color:#ffe096!important}
body.cns218-home .cns218-underbar{display:flex;align-items:center;gap:9px 26px;flex-wrap:wrap;margin-top:clamp(18px,2.2vw,28px);padding-top:clamp(14px,2vw,23px);border-top:1px solid #cbd4d0;font:650 12px/1.4 system-ui,sans-serif}
body.cns218-home .cns218-underbar>span{color:#7b4245;text-transform:uppercase;letter-spacing:.11em;font-size:10px;margin-right:auto}
body.cns218-home .cns218-underbar a{color:#142d37;text-underline-offset:4px;min-height:40px;display:inline-flex;align-items:center;gap:9px}
/* Original institutional section becomes a clearly secondary access area. */
body.cns218-home .portal74d-hero{border-bottom-width:0;background:#102936}
body.cns218-home .portal74d-hero-grid{padding-block:clamp(36px,4.5vw,70px);gap:clamp(18px,4vw,65px)}
body.cns218-home .portal74d-hero h2#portal74d-title{font:400 clamp(32px,3vw,52px)/1.06 Georgia,serif;letter-spacing:-.04em;color:#fff;max-width:19ch;margin:0}
body.cns218-home .portal74d-hero-meta{border-color:rgba(255,255,255,.24)}
/* Print and responsive: no hover-only access and no horizontal scrolling. */
@media(max-width:1160px){body.cns218-home .cns218-feature-grid{grid-template-columns:1fr}body.cns218-home .cns218-feature-primary .v23launch-layout{min-height:490px}body.cns218-home .cns218-feature-rail{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}body.cns218-home .cns218-tile{min-height:245px}}
@media(max-width:790px){body.cns218-home .cns218-feature-intro{grid-template-columns:1fr;gap:14px}body.cns218-home .cns218-feature-intro>p{max-width:60ch}body.cns218-home .cns218-feature-primary .v23launch-layout{grid-template-columns:1fr}body.cns218-home .cns218-feature-primary .v23launch-visual{min-height:295px}body.cns218-home .cns218-feature-primary .v23launch-body{padding:clamp(24px,5vw,42px)}body.cns218-home .cns218-feature-primary .v23launch h2{font-size:clamp(48px,8vw,75px)}body.cns218-home .cns218-feature-rail{grid-template-columns:1fr;gap:10px}body.cns218-home .cns218-tile{min-height:165px}body.cns218-home .cns218-feature-primary .v23launch-layout{min-height:0}}
@media(max-width:420px){body.cns218-home .cns218-feature{padding:26px 13px 24px}body.cns218-home .cns218-feature-intro h1{font-size:clamp(34px,10.6vw,46px)}body.cns218-home .cns218-feature-primary .v23launch-visual{min-height:250px}body.cns218-home .cns218-feature-primary .v23launch h2{font-size:clamp(43px,12vw,58px)}body.cns218-home .cns218-feature-primary .v23launch-body{padding:23px 18px}body.cns218-home .cns218-underbar{gap:3px 15px}body.cns218-home .cns218-underbar>span{width:100%}}
@media(prefers-reduced-motion:reduce){body.cns218-home .cns218-feature *,body.cns218-home .cns218-feature *:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.cns218-home .cns218-tile:hover{transform:none}}
@media print{body.cns218-home .cns218-feature{background:#fff!important;color:#111!important}body.cns218-home .cns218-feature-grid{display:block}body.cns218-home .cns218-feature-primary{break-inside:avoid}body.cns218-home .cns218-feature-rail{display:block}body.cns218-home .cns218-tile{break-inside:avoid;margin:12px 0}}

/* 221T · Hero documentale: immagine accessibile, caricamento prioritario. */
body.cns218-home .cns218-feature-primary .v23launch-visual{background-image:none}
body.cns218-home .cns218-feature-primary .v23launch-visual .cns221-hero-photo{
  position:absolute;inset:0;display:block;width:100%;height:100%;
  object-fit:cover;object-position:center;background:#344352;
  font-size:0;color:transparent;
}
@media print{body.cns218-home .cns218-feature-primary .v23launch-visual .cns221-hero-photo{position:static;height:auto;max-height:290px;object-fit:contain}}
