/* CNSBII Sarno Europa · 390H · SCREEN ONLY. Printing remains A4 landscape as supplied by the report. */
@media screen {
 :root{--reader-ink:#112d39;--reader-blue:#1b557a;--reader-gold:#e4b949;--reader-paper:#fff;--reader-mist:#edf2f3;--reader-line:#d6e0e3}
 html{scroll-behavior:smooth;scroll-padding-top:105px}
 body{margin:0!important;padding:0!important;background:var(--reader-mist)!important;color:var(--reader-ink);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-text-size-adjust:100%}
 body #content{overflow:visible!important;padding:clamp(12px,2.5vw,38px)!important;max-width:1600px;margin:0 auto}
 body #content .page{width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;overflow:visible!important;margin:0 auto clamp(18px,2.5vw,40px)!important;padding:clamp(24px,4vw,62px)!important;background:#fff;box-shadow:0 12px 40px rgba(15,39,55,.075)!important;page-break-after:auto!important;break-after:auto!important;border:1px solid var(--reader-line);isolation:isolate;contain:layout}
 body #content .page:before{pointer-events:none}
 body #content .page:after{pointer-events:none}
 body #content .page > *{max-width:100%}
 body #content .page .hd,body #content .page .ft{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-height:0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;z-index:3;margin:0 0 clamp(20px,3vw,36px);padding:0 0 15px}
 body #content .page .ft{margin:clamp(20px,3vw,40px) 0 0;padding:15px 0 0;border-top:1px solid var(--reader-line)}
 body #content .page .brand{min-width:0}body #content .page .hdr{margin-left:auto;max-width:58%;overflow-wrap:anywhere}
 body #content .page .titles,body #content .page .twocol{gap:clamp(16px,3vw,40px)}
 body #content .page .title{font-size:clamp(21px,2.45vw,33px);width:auto;flex:1;overflow-wrap:break-word}
 body #content .page .pane{flex:1 1 0;min-width:0}
 body #content .page :is(.waste-grid,.gallery-grid,.photo-grid,.eco-grid,.footerlogos,.metrics,.eco-note,.cover .hero-grid){max-width:100%}
 body #content .page :is(img,video){max-width:100%;height:auto;object-fit:contain}
 body #content .page :is(.ph,.gallery-grid,.photo-grid,.waste-grid,.photoessay .panel){height:auto!important;min-height:0!important}
 body #content .page .gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto!important;gap:12px}
 body #content .page .gallery-grid .ph{min-height:170px!important;aspect-ratio:4/3;overflow:hidden;position:relative}
 body #content .page .gallery-grid .ph img{height:100%!important;width:100%;object-fit:cover}
 body #content .page .data-table{table-layout:auto;width:100%;font-size:clamp(10px,1vw,13px)}
 body #content .page :is(.data-table td,.data-table th){overflow-wrap:anywhere;word-break:normal}
 body #content .page .figure{max-width:100%;overflow:hidden}
 body #content .page p{font-size:clamp(14px,1.05vw,17px);line-height:1.72;overflow-wrap:break-word;hyphens:auto}
 body #content .page .note{font-size:clamp(13px,1vw,16px);line-height:1.6}
 body #content .page .data-table :is(th,td){padding:10px 12px}
 body #content .page a{overflow-wrap:anywhere;text-underline-offset:3px}
 body #content .page :is(.hero-grid,.eco-grid,.eco-note,.splitgrid,.photogrid,.waste-columns){min-width:0}
 body #content .page .cover .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
 body #content .page.cover:after{display:none}
 body #content .page .cover h1,body #content .page.cover h1{font-size:clamp(36px,5vw,74px);line-height:1.04}
 body #content .page .eco-card{min-height:0}
 body #content .page .footerlogos{position:static!important;inset:auto!important;height:auto!important;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));margin-top:18px}
 body #content .page .footerlogos .logoitem{height:auto!important;min-height:65px}
 body #content .page .figure figcaption{font-size:clamp(12px,.9vw,14px);line-height:1.55}
 body #content .page [style*="width:"]{max-width:100%}
 body #content .helpbar{display:block!important;max-width:100%;padding:22px clamp(20px,3vw,38px);font-size:clamp(13px,1vw,16px);line-height:1.65;box-shadow:none;border-left:4px solid var(--reader-gold);margin:0 0 24px!important;background:#fff;color:#294456}
 body #content .helpbar b{color:#112d39}
 body #content .reader-print-inline{font:inherit;font-weight:750;cursor:pointer;background:transparent;color:#194f72;border:0;padding:0;text-decoration:underline;text-underline-offset:3px}
 body .report-sitebar{position:sticky!important;top:0;z-index:1100;display:flex!important;align-items:center;justify-content:space-between;gap:16px;max-width:100%;padding:14px clamp(14px,3vw,42px);background:#112c39!important;border-bottom:3px solid var(--reader-gold);color:#fff;box-shadow:0 8px 24px rgba(6,24,32,.14)}
 body .report-sitebar .report-brand a{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;color:#fff;text-decoration:none;letter-spacing:0}
 body .report-sitebar .report-brand strong{font-size:16px;letter-spacing:.03em}
 body .report-sitebar .report-brand span{font-size:12px;color:#c8d9dd}
 body .report-sitebar .reader-desktop-nav{display:flex;gap:clamp(10px,1.3vw,24px);align-items:center;justify-content:flex-end;flex-wrap:nowrap;margin-left:auto}
 body .report-sitebar .reader-desktop-nav a,body .report-sitebar button{font-size:13px;font-weight:700;line-height:1.3;color:#f2f7f7;text-decoration:none;white-space:nowrap;cursor:pointer}
 body .report-sitebar button.reader-print{border:1px solid #d4bb71;background:#d4bb71;color:#102731;padding:10px 12px;font-family:inherit;min-height:42px}
 body .report-sitebar a:hover,body .report-sitebar a:focus-visible{color:#f3ca64;outline-offset:4px}
 body .report-sitebar .reader-mobile-nav{display:none}
 body #content .page:target{outline:2px solid #c8a643;outline-offset:2px}
 body #content .page.mainhero{display:none!important}
 body #content .reader-web-cover{position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(540px,64vw,720px);overflow:hidden;margin:0 0 clamp(16px,3vw,38px);background:#0d2733;color:#fff}
 body #content .reader-web-cover-photo,body #content .reader-web-cover-shade{position:absolute;inset:0;z-index:-2}
 body #content .reader-web-cover-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92)}
 body #content .reader-web-cover-shade{z-index:-1;background:linear-gradient(90deg,rgba(6,27,37,.96) 0%,rgba(6,31,41,.84) 52%,rgba(6,31,41,.19) 100%)}
 body #content .reader-web-cover-content{padding:clamp(32px,5vw,78px);max-width:1000px}
 body #content .reader-web-cover-kicker{font-size:13px!important;letter-spacing:.1em;text-transform:uppercase;color:#f4dc9a!important;font-weight:700}
 body #content .reader-web-cover-period{font-size:12px!important;letter-spacing:.14em;text-transform:uppercase;color:#d6e6e7!important;font-weight:650;margin:45px 0 14px}
 body #content .reader-web-cover h1{font-size:clamp(44px,6vw,94px);letter-spacing:-.06em;line-height:.98;margin:0;color:#fff;font-weight:800}
 body #content .reader-web-cover h1 span{display:block;font-size:clamp(21px,2.45vw,38px);line-height:1.16;letter-spacing:-.03em;font-weight:450;margin-top:20px;max-width:26ch;color:#f3f6f7}
 body #content .reader-web-cover-intro{font-size:clamp(15px,1.35vw,20px)!important;color:#e2ecee!important;max-width:64ch;line-height:1.6;margin:30px 0 22px}
 body #content .reader-web-cover-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
 body #content .reader-web-cover-actions :is(a,button){border:1px solid #e0c475;background:#e0c475;color:#14303a;font-size:14px;font-weight:750;text-decoration:none;min-height:48px;padding:13px 20px;cursor:pointer;font-family:inherit}
 body #content .reader-web-cover-actions button{background:transparent;color:#fff;border-color:#b5ced1}
 body #content .reader-web-cover-actions :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
}
@media screen and (max-width:1150px){
 body .report-sitebar .reader-desktop-nav{display:none!important}
 body .report-sitebar .reader-mobile-nav{display:block!important;position:relative;margin-left:auto;z-index:15}
 body .report-sitebar .reader-mobile-nav summary{cursor:pointer;color:#fff;font-size:14px;font-weight:700;padding:10px 12px;border:1px solid rgba(255,255,255,.45);list-style:none}
 body .report-sitebar .reader-mobile-nav summary::-webkit-details-marker{display:none}
 body .report-sitebar .reader-mobile-nav summary:after{content:'☰';margin-left:16px}
 body .report-sitebar .reader-mobile-nav[open] summary:after{content:'×'}
 body .report-sitebar .reader-mobile-nav nav{position:absolute;right:0;top:calc(100% + 8px);min-width:min(310px,90vw);padding:14px;background:#102935;border:1px solid #5c7480;display:grid;gap:3px;box-shadow:0 18px 30px rgba(0,0,0,.2)}
 body .report-sitebar .reader-mobile-nav nav>a{font-size:14px;display:block;padding:12px 10px;border-bottom:1px solid #31515b;color:#fff;text-decoration:none;font-weight:700}
 body .report-sitebar .reader-mobile-nav nav>button{margin-top:8px}
}
@media screen and (max-width:900px){
 body #content .page .twocol,body #content .page .titles,body #content .page .eco-note,body #content .page.cover .hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
 body #content .page .title{width:100%;flex:none}
 body #content .page .pane.right{padding:18px 0 0!important;border-left:0!important;border-top:1px solid var(--reader-line)}
 body #content .page .hdr{max-width:100%;margin-left:0;text-align:left}
 body #content .page .eco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body #content .page :is(.gallery-grid,.photo-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body #content .page :is(.metrics,.splitgrid,.waste-columns,.waste-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;height:auto!important;gap:12px}
 body #content .page .mainhero h1{font-size:clamp(38px,7vw,64px)!important}
}
@media screen and (max-width:560px){
 html{scroll-padding-top:78px}
 body #content{padding:10px!important}
 body .report-sitebar{padding:10px 12px;gap:7px}
 body .report-sitebar .report-brand a{display:block;max-width:185px}
 body .report-sitebar .report-brand span{display:block;font-size:10px;margin-top:4px}
 body .report-sitebar .reader-mobile-nav summary{font-size:12px;padding:9px 7px}
 body #content .page{border:1px solid #dce5e7;padding:22px 15px!important;box-shadow:none!important;margin-bottom:12px!important}
 body #content .page .hd{font-size:11px}
 body #content .page .hd .brand img{width:35px!important;height:35px!important}
 body #content .page .hdr{font-size:10px;line-height:1.4}
 body #content .page .footerlogos{grid-template-columns:repeat(2,minmax(0,1fr))}
 body #content .page :is(.gallery-grid,.photo-grid,.eco-grid,.metrics,.waste-grid,.splitgrid,.waste-columns){display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:auto!important}
 body #content .page .gallery-grid .ph{min-height:200px!important}
 body #content .page .waste-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 body #content .page .waste-images{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;height:auto!important}
 body #content .page .waste-images .ph{height:300px!important;min-height:300px!important;overflow:hidden;position:relative}
 body #content .page .waste-images .ph img{height:100%!important;width:100%!important;object-fit:cover}
 body #content .page .waste-images .ph figcaption{font-size:12px!important;line-height:1.4;padding:12px!important}
 body #content .reader-web-cover{min-height:580px}
 body #content .reader-web-cover-photo img{object-position:55% center}
 body #content .reader-web-cover-shade{background:linear-gradient(0deg,rgba(6,27,37,.96) 0%,rgba(6,27,37,.68) 72%,rgba(6,27,37,.15) 100%)}
 body #content .reader-web-cover-content{padding:32px 21px}
 body #content .reader-web-cover h1{font-size:clamp(36px,11vw,53px)}
 body #content .reader-web-cover h1 span{font-size:clamp(21px,6.3vw,29px)}
 body #content .reader-web-cover-period{margin-top:25px}
 body #content .reader-web-cover-intro{font-size:15px!important}
 body #content .reader-web-cover-actions :is(a,button){font-size:12px;padding:11px;min-height:45px}
 body #content .page .title{font-size:clamp(22px,6.3vw,28px)}
 body #content .page .figure{padding:9px;margin:16px 0}
 body #content .page .metric strong{font-size:26px}
 body #content .page .data-table{display:block;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;border:1px solid #dce6e8}
 body #content .page .data-table :is(th,td){font-size:12px;min-width:85px}
 body #content .page .ft strong{font-size:11px}
 body #content .page .ph figcaption{font-size:12px;line-height:1.4}
}
@media screen and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body #content .page,body .report-sitebar a{transition:none!important}}

@media print{.reader-web-cover{display:none!important}}
