:root{--green:#24843d;--dark:#1a2f33;--grey:#7d7d7d;font-size:10px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--grey);font:400 17px/30px Raleway,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,h4,h5{font-weight:500;line-height:1.3;color:var(--dark);margin:0 0 20px}h1,h2{font-size:35px}h3{font-size:24px}p{margin:0 0 20px}ul{padding-left:25px}.wrap{max-width:1140px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 15px}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:99;background:white;color:black;padding:10px}.topbar{background:var(--dark);height:48px;color:#fff;font-size:13px}.topbar .wrap{height:100%}.topbar .contact{background:var(--green);height:100%;padding:9px 25px}.navwrap{background:#fff;color:var(--dark);height:94px;z-index:15}.navwrap .wrap{height:100%;gap:35px}.brand{width:160px;flex-shrink:0;display:block}.brand img{width:160px;max-height:64px;object-fit:contain;display:block}.navwrap nav{display:flex;gap:24px;align-items:center;font-size:15px;font-weight:600;line-height:22px}.navwrap nav a:hover,.navwrap nav a.active{color:var(--green)}.nav-social{display:flex;gap:15px;margin-left:15px}.languages{display:flex;gap:10px}.inner-header{position:absolute;left:0;right:0;z-index:15}.inner-header .navwrap{background:transparent;color:#fff;height:110px}.navwrap.stuck{position:fixed;top:0;left:0;right:0;height:85px;background:white;color:var(--dark);box-shadow:0 2px 12px #0001}.menu-toggle{display:none;border:0;background:transparent;color:inherit;font-size:26px}.nav-item{position:relative}.submenu{position:absolute;display:none;top:100%;left:-15px;min-width:250px;background:white;color:var(--dark);padding:15px;box-shadow:0 5px 18px #0002}.submenu a{display:block;padding:10px;font-weight:400}.nav-item:hover .submenu,.nav-item:focus-within .submenu{display:block}.layout-section,.layout-column{position:relative}.layout-section>.section-row{max-width:1140px;margin:auto;display:flex;position:relative;z-index:1}.layout-section.full>.section-row{max-width:none}.layout-column{display:flex;flex-direction:column;padding:10px;flex-shrink:0;--widget-gap:20px}.layout-widget{position:relative;margin-bottom:var(--widget-gap,20px)}.layout-widget:last-child{margin-bottom:0}.layout-widget>*:last-child{margin-bottom:0}.overlay{position:absolute;inset:0;pointer-events:none}.richtext{line-height:30px}.richtext a{color:var(--green)}.heading{margin:0}.separator{position:relative;width:80px;height:2px;background:var(--green);margin:16px auto 25px}.separator:after{content:'';position:absolute;left:35px;width:10px;background:inherit;border-left:5px solid white;border-right:5px solid white;top:-2px;height:6px;box-sizing:content-box}.object-image,.image-widget img{display:block;width:100%}.image-box{display:block}.image-box img{width:100%;transition:transform .3s}.image-box:hover img{transform:scale(1.015)}.image-box h3{margin-top:25px}.icon-symbol{width:38px;height:38px;margin:0 auto 20px;display:block;color:var(--green)}.icon-symbol svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.4}.icon-box{text-align:center}.icon-box.horizontal{display:flex;gap:18px;text-align:left}.icon-box.horizontal .icon-symbol{flex-shrink:0}.box-title{margin:0 0 12px}.box-description{line-height:1.8}.button-link{display:inline-flex;align-items:center;gap:25px;background:var(--green);color:white;padding:13px 28px;font-size:14px;font-weight:600}.arrow{font-size:25px}.typewriter-title{font-size:35px;line-height:1.3;color:white}.counter-number{font-size:54px;line-height:1.2;color:var(--green)}.progress-track{height:6px;background:#ddd;margin-top:12px}.progress-bar{height:100%;background:var(--green)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.grid-card> a>img{width:100%;aspect-ratio:1.5;object-fit:cover}.post-info{background:white;margin:0 25px;padding:28px 20px;box-shadow:0 0 30px #0001;border-radius:4px;position:relative;transform:translateY(-50px);text-align:center}.post-info h2{font-size:20px;margin:0}.carousel{--cols:2;--gap:0px;position:relative;min-width:0}.projects-carousel{--cols:3;--gap:18px;width:100%;margin:30px auto}.carousel-track{display:flex;gap:var(--gap);overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}.carousel-track>*{flex:0 0 calc((100% - (var(--cols) - 1)*var(--gap))/var(--cols));min-width:0;scroll-snap-align:start;position:relative;margin:0}.carousel-track img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.projects-carousel img{aspect-ratio:1.38}.slide-caption{position:absolute;left:0;right:0;bottom:0;padding:20px;background:#122326b8;color:white}.slide-caption h3{color:white;font-size:20px;margin:0 0 15px}.slide-caption a{display:inline-block;border:2px solid var(--green);padding:5px 17px;font-size:12px;font-weight:700}.carousel-prev,.carousel-next{position:absolute;top:40%;background:#1a2f3380;color:white;border:0;font-size:28px;width:38px;height:45px;z-index:2}.carousel-prev{left:0}.carousel-next{right:0}.carousel-play{position:absolute;right:10px;top:10px;background:#1a2f33a0;color:white;border:0;font-size:13px}.carousel-dots{text-align:center;margin-top:15px}.carousel-dots button{width:9px;height:9px;padding:0;margin:4px;border:0;border-radius:50%;background:#cdd5cc}.carousel-dots button.active{background:var(--green)}.footer-main{padding:75px 0;background:var(--dark);color:#a0adb0;font-size:15px}.footer-main .wrap{align-items:start;display:grid;grid-template-columns:60% 40%}.footer-main h3{color:white;font-size:22px}.footer-main p{margin-bottom:10px}.footer-social{display:flex;gap:25px;color:#fff}.footer-bottom{background:#172a2e;color:#9da9ab;padding:25px 0;font-size:12px}.footer-bottom .wrap{gap:20px;flex-wrap:wrap}.legal{display:flex;gap:20px}.editor-access{font-size:10px}.map-link{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e6ece6;min-height:300px;color:var(--dark);gap:15px}.empty{padding:180px 25px;text-align:center}.hidden{display:none!important}.hide-desktop{display:none!important}.accordion summary{padding:20px;border-bottom:1px solid #ddd;cursor:pointer}dialog#lightbox{border:0;padding:60px;background:#101c1ff5;color:white;width:100vw;height:100vh;max-width:none;max-height:none}#lightbox[open]{display:flex;align-items:center;justify-content:center}#lightbox img{max-width:95%;max-height:85vh;object-fit:contain}#lightbox button{position:absolute;border:0;background:transparent;color:white;font-size:35px;padding:12px}#lightbox .close{top:10px;right:15px}#lightbox .prev{left:4px;top:46%}#lightbox .next{right:4px;top:46%}:focus-visible{outline:3px solid #52b568;outline-offset:3px}.preview-label{position:fixed;bottom:10px;left:10px;background:var(--green);color:white;padding:5px 12px;z-index:25;font:13px Arial}
@media(max-width:1150px){.navwrap nav{gap:15px;font-size:14px}.nav-social{gap:10px;margin:0}.navwrap .wrap{gap:20px}.hide-desktop{display:block!important}.hide-tablet{display:none!important}}
@media(max-width:767px){body{font-size:16px}.topbar{display:none}.navwrap,.inner-header .navwrap{height:90px}.navwrap .wrap{padding:0 22px}.brand,.brand img{width:135px}.menu-toggle{display:block}.navwrap nav{display:none;position:absolute;top:90px;left:0;right:0;padding:22px;background:var(--dark);color:#fff;align-items:stretch;gap:0}.navwrap nav.open{display:flex;flex-direction:column}.navwrap nav>a,.nav-item>a{display:block;padding:12px}.navwrap .submenu{position:static;display:block;background:transparent;color:white;box-shadow:none;padding:0 15px}.nav-social,.languages{padding:15px}.layout-section>.section-row{flex-wrap:wrap}.layout-column{width:100%!important}.heading{overflow-wrap:break-word}.project-grid{grid-template-columns:1fr;padding:0 12px;gap:10px}.post-info{transform:translateY(-38px)}.carousel{--cols:1!important}.footer-main{padding:45px 15px}.footer-main .wrap{grid-template-columns:1fr;gap:30px}.footer-bottom .wrap{flex-direction:column}.hide-tablet{display:block!important}.hide-mobile{display:none!important}.typewriter-title{font-size:27px}dialog#lightbox{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.icon-symbol i{font-size:inherit;width:100%;height:100%;line-height:1.2}.download-document{padding:30px}
/* Live-reference alignment — 12 October 2026. */
html,body{max-width:100%;overflow-x:clip}h1.heading{color:white;letter-spacing:-.9px}.heading{line-height:1}.richtext p{margin:0}.richtext h4{font-size:20px;font-weight:700;color:inherit;line-height:30px;margin:0 0 20px}.richtext ul{padding-left:0;margin:0 0 0 0;list-style-position:outside}.layout-column{padding:0;display:flex;flex-shrink:1;min-width:0}.column-inner{width:100%;position:relative;display:flex;flex-direction:column;padding:var(--column-padding,15px);--widget-gap:20px}.column-inner>.layout-widget,.column-inner>.layout-section{z-index:1}.column-inner>.overlay{z-index:0}.layout-column>.column-inner>.layout-widget:last-child{margin-bottom:0}.layout-column .layout-section{width:100%}.layout-section>.section-row{width:100%}.box-description{line-height:30px}.box-description p{margin:0}.icon-symbol{display:inline-flex;align-items:center;justify-content:center;font-size:30px;line-height:1}.icon-symbol i{line-height:1}.icon-box .box-title{line-height:30px}.icon-box.horizontal .icon-symbol{margin:0 8px 0 0}.separator{width:50px;height:5px;margin:0 auto;overflow:hidden}.separator:after{content:'';position:absolute;top:0;bottom:0;width:12px;height:100%;left:-12px;border:0;background:white;animation:yi-separator 1.5s ease-in-out infinite}.image-box h3{margin-top:0}.image-box img{margin-bottom:15px}.image-box h3{font-size:20px}.image-box:hover img{transform:none}.service-four-hover-box .image-box{transition:transform .3s ease}.service-four-hover-box:hover .image-box{transform:translateY(-5px)}.object-image{height:auto;object-fit:contain}.button-link{gap:8px;font-size:15px;font-weight:400;line-height:28px;padding:10px 25px;transition:background-color .25s,color .25s}.button-link:hover{background:#1a2f33}.button-link .arrow{font-size:25px;line-height:1}.typewriter-title{font-size:36px;font-weight:700;line-height:1;min-height:1em}.map-embed{width:100%}.map-embed iframe{width:100%;border:0;display:block;filter:saturate(1.26) brightness(.96)}.map-embed>a{display:block;font-size:13px;color:#24843d;text-align:right;padding-top:8px}.contact-line{display:flex;align-items:baseline;gap:12px;margin:0 0 10px;font-size:16px;line-height:26px}.contact-symbol{color:#24843d;min-width:16px}.project-grid{gap:30px}.grid-card> a>img{aspect-ratio:1.333}.post-info{margin:0 30px;padding:28px 20px;transform:translateY(-50px)}.post-info h2{font-size:18px;font-weight:700;line-height:26px;color:#1a1c26}.gallery-carousel .carousel-track img{aspect-ratio:4/3;object-fit:cover}.gallery-carousel .carousel-prev,.gallery-carousel .carousel-next{background:transparent;font-size:46px;width:48px;top:43%}.carousel-dots button{width:6px;height:6px;margin:4px}.projects-carousel{--cols:3;--gap:18px;max-width:1238px;margin:30px auto;width:100%}.projects-carousel img{aspect-ratio:400/290}.slide-caption{text-align:center;padding:15px 20px 10px;background:#1a2f337d}.slide-caption h3{font-size:20px;line-height:25px;font-weight:400;margin:0 0 20px}.slide-caption a{font:400 14px/18px Arial,sans-serif;padding:6px 20px}.projects-carousel .carousel-prev,.projects-carousel .carousel-next{top:45%;width:40px;height:40px;font-size:24px;background:#3338}.projects-carousel .carousel-prev{left:-25px}.projects-carousel .carousel-next{right:-25px}.projects-carousel .carousel-dots{display:none}.carousel-play{opacity:0;transition:opacity .2s}.carousel:hover .carousel-play,.carousel:focus-within .carousel-play{opacity:1}.topbar{background:#1b2f33;font-size:14px;color:#98a2aa}.topbar i{margin-right:10px;font-size:16px}.topbar .contact{padding:9px 45px}.navwrap .wrap{gap:0}.navwrap .brand{margin-right:auto}.brand,.brand img{width:160px}.inner-header .brand,.inner-header .brand img{width:135px}.navwrap nav{gap:25px;font-size:16px;font-weight:400;line-height:26px;letter-spacing:.8px}.navwrap nav>a,.nav-item>a{position:relative;padding:0 0 5px}.navwrap nav>a.active:after,.nav-item>a.active:after{content:'';height:2px;position:absolute;left:0;right:0;bottom:0;background:#24843d}.nav-social{gap:25px;margin:0;font-size:17px}.languages{gap:25px;margin-left:5px}.flag{display:block;width:16px;height:11px;box-shadow:0 0 0 1px #0001}.flag-it{background:linear-gradient(90deg,#009246 33.33%,#fff 33.33%,#fff 66.66%,#ce2b37 66.66%)}.flag-en{background:linear-gradient(90deg,transparent 43%,#c8102e 43%,#c8102e 57%,transparent 57%),linear-gradient(transparent 35%,#c8102e 35%,#c8102e 65%,transparent 65%),linear-gradient(90deg,transparent 35%,white 35%,white 65%,transparent 65%),linear-gradient(transparent 25%,white 25%,white 75%,transparent 75%),linear-gradient(35deg,transparent 40%,white 40%,white 46%,#c8102e 46%,#c8102e 54%,white 54%,white 60%,transparent 60%),linear-gradient(-35deg,#012169 40%,white 40%,white 46%,#c8102e 46%,#c8102e 54%,white 54%,white 60%,#012169 60%)}.languages a{display:block;position:relative;padding:5px 0 9px}.languages a.active:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:#24843d}.submenu-toggle{position:absolute;right:-14px;top:0;width:14px;height:26px;border:0;background:transparent;padding:0;font-size:13px;color:inherit}.submenu{display:block;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;left:-40px;top:100%;width:265px;padding:30px 0 15px;border-radius:4px;box-shadow:0 0 20px #00000013;z-index:30}.submenu a{font-size:14px;line-height:24px;letter-spacing:.8px;padding:10px 32px;font-weight:400}.nav-item:hover .submenu,.nav-item:focus-within .submenu,.nav-item.submenu-open .submenu{opacity:1;visibility:visible;transform:none}.navwrap.stuck{height:78px}.inner-header .navwrap{height:110px}.navwrap.stuck .brand,.navwrap.stuck .brand img{width:135px}.footer-main{padding:65px 0 80px;color:#98a2aa;background:#1a2f33;font-size:16px}.footer-main .wrap{grid-template-columns:62.5% 37.5%}.footer-main h3{font-size:20px;line-height:32px;margin-bottom:25px;font-weight:500}.footer-main p{font-size:16px;line-height:30px;margin-bottom:12px}.footer-main i{margin-right:10px}.footer-social{gap:14px;color:#98a2aa;font-size:20px}.footer-social i{margin:0}.footer-bottom{background:#1a2f33;border-top:1px solid #ffffff26;color:#98a2aa;padding:25px 0;font-size:15px;line-height:32px}.editor-access{font-size:11px}.legal{gap:25px}.yi-reveal{opacity:0;animation-duration:1.1s;animation-fill-mode:both}.yi-reveal.yi-visible{opacity:1}.counter-label{font-size:16px}
@keyframes yi-separator{from{left:-12px}to{left:100%}}@keyframes yi-slideInUp{from{transform:translateY(60px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-slideInDown{from{transform:translateY(-60px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-slideInLeft{from{transform:translateX(-60px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-slideInRight{from{transform:translateX(60px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-fadeIn{from{opacity:0}to{opacity:1}}@keyframes yi-fadeInUp{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-fadeInDown{from{transform:translateY(-30px);opacity:0}to{transform:none;opacity:1}}@keyframes yi-zoomIn{from{transform:scale(.9);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1150px){.navwrap nav{gap:15px;font-size:14px}.nav-social,.languages{gap:16px}.brand,.brand img{width:140px}.navwrap .wrap{gap:15px}}
@media(min-width:768px) and (max-width:1024px){.section-row{flex-wrap:wrap}.projects-carousel{--cols:2}.layout-column{flex-shrink:0}}
@media(max-width:767px){.navwrap nav{display:none;gap:0}.navwrap nav.open{display:flex}.nav-item{padding-right:40px}.submenu-toggle{width:40px;height:45px;right:0;top:0;font-size:22px}.navwrap .submenu{display:none;opacity:1;visibility:visible;transform:none;width:100%;padding:0 0 10px;border-radius:0}.nav-item:hover .submenu,.nav-item:focus-within .submenu{display:none}.nav-item.submenu-open .submenu{display:block}.navwrap .submenu a{padding:8px 20px}.nav-social,.languages{gap:25px}.navwrap nav>a.active:after,.nav-item>a.active:after{display:none}.column-inner{margin-left:0!important;margin-right:0!important}.gallery-carousel .carousel-track img{aspect-ratio:auto;max-height:75vh;object-fit:contain}.projects-carousel .carousel-prev{left:0}.projects-carousel .carousel-next{right:0}.footer-main .wrap{grid-template-columns:1fr}.footer-bottom .wrap{align-items:flex-start}.map-embed iframe{height:400px}.brand,.brand img{width:135px}.navwrap.stuck nav{top:78px}.typewriter-title{font-size:30px;line-height:1.1}}
@media(prefers-reduced-motion:reduce){.yi-reveal{opacity:1;animation:none!important;transform:none!important}.separator:after{animation:none;display:none}}
.object-reveal{display:block;position:relative;overflow:hidden}.object-reveal[data-object-reveal]:after{content:'';position:absolute;inset:0;background:var(--reveal-color,#1a2f33);pointer-events:none}.object-reveal.object-visible:after{animation:yi-curtain-up var(--reveal-duration,.8s) var(--reveal-delay,0s) cubic-bezier(.2,.65,.3,1) forwards}.object-reveal[data-object-reveal=bottom].object-visible:after{animation-name:yi-curtain-down}.object-reveal[data-object-reveal=left].object-visible:after{animation-name:yi-curtain-left}.object-reveal[data-object-reveal=right].object-visible:after{animation-name:yi-curtain-right}@keyframes yi-curtain-up{to{transform:translateY(-101%)}}@keyframes yi-curtain-down{to{transform:translateY(101%)}}@keyframes yi-curtain-left{to{transform:translateX(-101%)}}@keyframes yi-curtain-right{to{transform:translateX(101%)}}@media(prefers-reduced-motion:reduce){.object-reveal:after{display:none}}

/* 2.1.2 — structural responsive service layouts; no simulated photos */
.layout-section>.section-row{min-width:0;max-width:1140px;width:100%;align-items:stretch}
.layout-section.full>.section-row{max-width:none}
.layout-column{min-width:0;max-width:100%;flex-shrink:1}
.layout-column>.column-inner{min-width:0;overflow-wrap:break-word}
.yi-home-services>.section-row{max-width:1160px;display:flex;justify-content:center;align-items:stretch;gap:22px;padding:0 20px}
.yi-home-services .layout-column{flex:1 1 0!important;width:auto!important;max-width:285px}
.yi-home-services .column-inner{padding:10px!important}
.yi-home-services .image-box{height:100%;text-align:left}
.yi-home-services .image-box img{max-width:220px;margin:0 auto 25px;object-fit:contain}
.yi-services-cards>.section-row{max-width:1140px;gap:25px;justify-content:center;padding:0 18px}
.yi-services-cards .layout-column{flex:1 1 0!important;width:auto!important;min-width:0}
.yi-services-cards .column-inner{margin:0!important;padding:28px 20px!important;min-height:100%;background:#f1f3f3}
.yi-services-cards .image-box img{object-fit:contain;max-width:220px;margin:0 auto 18px}
.yi-services-cards .box-title{text-align:left}
.yi-service-section>.section-row{max-width:1140px;min-width:0}
.yi-service-section.full>.section-row{max-width:100%;min-width:0}
.yi-service-section .layout-column{min-width:0;max-width:100%;overflow-wrap:anywhere}
.yi-service-section .layout-column>.column-inner{background-size:cover;min-width:0}
.yi-service-section .richtext{overflow-wrap:break-word}
.yi-service-section .richtext ul{padding-left:25px;margin:15px 0}
.yi-service-section .richtext li{padding-left:0;margin:0 0 6px}
.yi-service-section .icon-box{height:100%;text-align:center}
.yi-service-section .icon-box .box-title{overflow-wrap:normal;hyphens:auto}
.yi-service-section .image-widget img,.yi-service-section .object-reveal img{max-width:100%;object-fit:cover}
@media(max-width:1024px){.yi-home-services>.section-row,.yi-services-cards>.section-row{flex-wrap:wrap}.yi-home-services .layout-column{flex:0 1 calc(50% - 15px)!important;max-width:calc(50% - 15px)}.yi-services-cards .layout-column{flex:0 1 calc(50% - 15px)!important}.yi-service-section>.section-row{flex-wrap:wrap}.yi-service-section>.section-row>.layout-column{max-width:100%;flex:1 1 100%;width:100%!important}.yi-service-section .column-inner{margin-left:0!important;margin-right:0!important}}
@media(max-width:600px){.yi-home-services>.section-row,.yi-services-cards>.section-row{gap:20px;padding:0 18px}.yi-home-services .layout-column,.yi-services-cards .layout-column{flex:1 1 100%!important;max-width:100%}.yi-home-services .image-box{text-align:center}.yi-home-services .image-box h3{text-align:center}.yi-services-cards .column-inner{padding:20px!important}.yi-service-section .column-inner{padding:24px 18px!important}.yi-service-section .richtext{line-height:1.65}}

/* 2.1.3 — equal height service navigation, intact photographs and proper column geometry */
.yi-home-services>.section-row{max-width:1160px;gap:24px;align-items:stretch}
.yi-home-services .layout-column{max-width:285px;min-width:0}
.yi-home-services .image-box h3{font-size:18px;line-height:1.45;letter-spacing:-.55px;white-space:nowrap}
.yi-home-services .image-box .box-description{font-size:16px;line-height:1.85}
.yi-service-section>.section-row{width:100%;min-width:0;align-items:stretch}
.yi-service-section .layout-column{min-width:0;min-height:0;align-self:stretch;display:flex;flex-direction:column}
.yi-service-section .layout-column>.column-inner{box-sizing:border-box;min-width:0;width:100%;flex:1 1 auto;max-width:100%;margin-left:0!important;margin-right:0!important}
.yi-service-section .layout-column.yi-photo-column>.column-inner{background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important;min-height:420px}
.yi-service-section .layout-column.yi-photo-column:has(.layout-widget)>.column-inner{min-height:320px}
.yi-service-section .section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column{flex:1 1 50%;width:50%;max-width:50%}
.yi-service-section .section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column>.column-inner{padding-left:clamp(24px,3.2vw,55px);padding-right:clamp(24px,3.2vw,55px)}
.yi-service-section .section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 0!important;width:0!important;max-width:none!important;margin:0!important;min-width:0}
.yi-service-section .section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner{margin:0!important;min-height:100%;padding:28px 20px!important;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.yi-service-section .section-row:has(>.layout-column:nth-child(3)) .icon-box{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.yi-service-section .section-row:has(>.layout-column:nth-child(3)) .box-title{margin:0;text-align:center;font-size:clamp(17px,1.3vw,23px);line-height:1.35;overflow-wrap:normal;hyphens:none}
.yi-service-section .richtext{overflow-wrap:break-word;word-break:normal}
.yi-service-section .richtext p,.yi-service-section .richtext li{overflow-wrap:break-word}
.yi-service-section .layout-widget{min-width:0}
.yi-service-section .layout-column.yi-photo-column img{width:100%;height:auto;object-fit:contain}
@media(max-width:1024px){.yi-service-section .section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column{flex:1 1 50%;max-width:50%;width:50%}.yi-service-section .section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 33.33%!important;width:33.33%!important}.yi-home-services .image-box h3{white-space:normal}}
@media(max-width:767px){.yi-service-section .section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column{flex:1 1 100%;width:100%;max-width:100%}.yi-service-section .section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 100%!important;width:100%!important;max-width:100%!important}.yi-service-section .layout-column.yi-photo-column>.column-inner{min-height:280px}.yi-service-section .section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner{padding:20px!important}.yi-home-services .image-box h3{white-space:normal}}

/* V2.1.5 service-page layout corrections */
body.yi-service-page .layout-section>.section-row{min-width:0;align-items:stretch}
body.yi-service-page .layout-column{min-width:0;display:flex}
body.yi-service-page .layout-column>.column-inner{width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin-left:0!important;margin-right:0!important}
body.yi-service-page .layout-column.yi-photo-column>.column-inner{background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important;padding:0!important;min-height:360px}
body.yi-service-page .layout-column.yi-photo-column .layout-widget{margin-bottom:0!important}
body.yi-service-page .layout-column.yi-photo-column .layout-widget>div[style]{height:100%!important}
body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column{flex:0 0 50%!important;width:50%!important;max-width:50%!important}
body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column:not(.yi-photo-column)>.column-inner{padding:clamp(26px,3vw,58px)!important}
body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 0!important;width:0!important;max-width:none!important;margin:0!important}
body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100%;padding:28px 20px!important;text-align:center}
body.yi-service-page .icon-box{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;width:100%}
body.yi-service-page .icon-symbol{display:inline-flex;align-items:center;justify-content:center;width:56px!important;height:56px!important;font-size:56px!important;line-height:1;margin:0 auto 18px!important;flex:0 0 auto}
body.yi-service-page .icon-box .box-title{margin:0!important;text-align:center;font-size:clamp(18px,1.3vw,22px);line-height:1.35;hyphens:none;overflow-wrap:normal}
body.yi-service-page .image-box{display:flex;flex-direction:column;align-items:center;height:100%;text-align:center;width:100%}
body.yi-service-page .image-box>a:first-child{display:flex;align-items:center;justify-content:center;min-height:140px;width:100%}
body.yi-service-page .image-box img{display:block;width:auto!important;max-width:100%!important;height:118px!important;object-fit:contain!important;margin:0 auto 18px!important}
body.yi-service-page .image-box h3{margin:0 0 14px!important;font-size:clamp(17px,1.25vw,24px);line-height:1.35;text-align:center}
body.yi-service-page .image-box .box-description{width:100%;margin-top:0}
body.yi-service-page .image-box .button-link,body.yi-service-page .button-link{margin-top:auto}
body.yi-service-page .layout-widget:empty{display:none!important}
@media(max-width:1024px){body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column{flex:0 0 50%!important;width:50%!important;max-width:50%!important}body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 50%!important;width:50%!important;max-width:50%!important}}
@media(max-width:767px){body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column,body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(3))>.layout-column{flex:1 1 100%!important;width:100%!important;max-width:100%!important}body.yi-service-page .layout-column.yi-photo-column>.column-inner{min-height:260px}body.yi-service-page .layout-section>.section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner{padding:22px 18px!important}body.yi-service-page .image-box img{height:96px!important}}

/* V2.1.7 — English rendering only. Do not alter Italian layout. */
html[lang="en"] .yi-home-services>.section-row {align-items:stretch;gap:22px;justify-content:center}
html[lang="en"] .yi-home-services .layout-column {min-width:0;max-width:100%;flex:1 1 0}
html[lang="en"] .yi-home-services .image-box {width:100%;min-width:0}
html[lang="en"] .yi-home-services .image-box h3 {font-size:clamp(15px,1.12vw,18px)!important;line-height:1.4!important;letter-spacing:-.2px!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;hyphens:auto;min-height:2.8em;margin-bottom:12px!important}
html[lang="en"] .yi-home-services .image-box .box-description {font-size:15px;line-height:1.7}
html[lang="en"] .yi-home-services .image-box>a:first-child {display:block;max-width:100%}
html[lang="en"] .yi-home-services .image-box img {width:100%;height:auto;max-width:100%;object-fit:contain}
/* English photo-text split: background source rendered as a real sized image, no spacer stripes. */
html[lang="en"] .yi-en-photo-split>.section-row {display:flex;align-items:stretch!important;width:100%;max-width:none;min-width:0;flex-wrap:nowrap}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column {display:flex;min-width:0;min-height:0;align-self:stretch;flex-shrink:0;margin:0!important}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column>.column-inner {position:relative;width:100%!important;max-width:100%!important;min-width:0;flex:1 1 auto;box-sizing:border-box;margin:0!important}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column {flex:0 0 43%!important;width:43%!important;max-width:43%!important;min-height:400px}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column) {flex:0 0 57%!important;width:57%!important;max-width:57%!important}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column)>.column-inner {padding:clamp(30px,3.2vw,60px)!important}
html[lang="en"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column>.column-inner {position:relative;min-height:400px!important;padding:0!important;overflow:hidden;background-image:none!important;isolation:isolate}
html[lang="en"] .yi-en-photo-column>.column-inner>.yi-en-photo {position:absolute;display:block;inset:0;z-index:0;width:100%!important;height:100%!important;min-height:100%;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center center!important}
html[lang="en"] .yi-en-photo-column>.column-inner>.layout-widget {display:none!important}
html[lang="en"] .yi-en-photo-column>.column-inner>.overlay {z-index:1}
/* Feature groups with 3, 4 or 6 items: equal cells and predictable text wrapping. */
html[lang="en"] .yi-en-feature-grid>.section-row {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;align-items:stretch!important;max-width:1140px;width:100%;margin:0 auto}
html[lang="en"] .yi-en-feature-grid.yi-en-cols-4>.section-row {grid-template-columns:repeat(4,minmax(0,1fr))}
html[lang="en"] .yi-en-feature-grid.yi-en-cols-5>.section-row {grid-template-columns:repeat(5,minmax(0,1fr))}
html[lang="en"] .yi-en-feature-grid.yi-en-cols-6>.section-row {grid-template-columns:repeat(6,minmax(0,1fr))}
html[lang="en"] .yi-en-feature-grid>.section-row>.layout-column {display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;flex:none!important;margin:0!important;padding:0!important}
html[lang="en"] .yi-en-feature-grid>.section-row>.layout-column>.column-inner {display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;height:100%;width:100%!important;max-width:100%!important;min-width:0;padding:25px 15px!important;margin:0!important;text-align:center!important}
html[lang="en"] .yi-en-feature-grid .icon-box {display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:flex-start;width:100%}
html[lang="en"] .yi-en-feature-grid .icon-symbol {display:inline-flex!important;align-items:center;justify-content:center;width:36px!important;height:36px!important;font-size:36px!important;margin:0 auto 12px!important;line-height:1!important;flex:0 0 auto}
html[lang="en"] .yi-en-feature-grid .icon-box .box-title {white-space:normal!important;overflow-wrap:break-word;word-break:normal;font-size:clamp(16px,1.3vw,21px)!important;line-height:1.4!important;margin:0!important;hyphens:auto}
html[lang="en"] .yi-en-feature-grid .image-box {display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;width:100%}
html[lang="en"] .yi-en-feature-grid .image-box>a:first-child {width:100%;display:flex;align-items:center;justify-content:center;min-height:130px}
html[lang="en"] .yi-en-feature-grid .image-box img {width:auto!important;max-width:100%!important;height:115px!important;object-fit:contain!important;margin:0 auto 15px!important}
html[lang="en"] .yi-en-feature-grid .image-box h3 {white-space:normal!important;overflow-wrap:break-word;line-height:1.4!important;hyphens:auto}
@media(max-width:1024px) {html[lang="en"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column)>.column-inner {padding:26px!important}html[lang="en"] .yi-en-feature-grid.yi-en-cols-5>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-6>.section-row {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px) {html[lang="en"] .yi-home-services>.section-row {flex-wrap:wrap}html[lang="en"] .yi-home-services>.section-row>.layout-column {flex:0 1 calc(50% - 12px)!important;max-width:calc(50% - 12px)!important}html[lang="en"] .yi-en-photo-split>.section-row {display:flex!important;flex-direction:column;flex-wrap:nowrap}html[lang="en"] .yi-en-photo-split>.section-row>.layout-column,html[lang="en"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column),html[lang="en"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column {width:100%!important;max-width:100%!important;flex:0 0 auto!important}html[lang="en"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column,html[lang="en"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column>.column-inner {min-height:310px!important}html[lang="en"] .yi-en-feature-grid>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-4>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-5>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-6>.section-row {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px) {html[lang="en"] .yi-home-services>.section-row>.layout-column {flex:1 1 100%!important;max-width:100%!important}html[lang="en"] .yi-en-feature-grid>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-4>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-5>.section-row,html[lang="en"] .yi-en-feature-grid.yi-en-cols-6>.section-row {grid-template-columns:1fr}}
/* Resolve specificity conflict with legacy yi-service-section width:0 rules. */
html[lang="en"] body.yi-service-page .yi-en-feature-grid>.section-row:has(>.layout-column:nth-child(3))>.layout-column,
html[lang="en"] .yi-service-section.yi-en-feature-grid>.section-row:has(>.layout-column:nth-child(3))>.layout-column {
  width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;
}
html[lang="en"] body.yi-service-page .yi-en-feature-grid>.section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner,
html[lang="en"] .yi-service-section.yi-en-feature-grid>.section-row:has(>.layout-column:nth-child(3))>.layout-column>.column-inner {
  width:100%!important;max-width:100%!important;min-width:0!important;padding:24px 12px!important;box-sizing:border-box!important;
}
/* EN split rows: grid overrides inherited Elementor 50%-columns and margins. */
html[lang="en"] body .yi-en-photo-split>.section-row,
html[lang="en"] body.yi-service-page .yi-en-photo-split>.section-row{
 display:grid!important;grid-template-columns:minmax(0,57%) minmax(0,43%);gap:0!important;
 align-items:stretch!important;justify-content:start!important;max-width:100%!important;
}
html[lang="en"] body .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row,
html[lang="en"] body.yi-service-page .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row{
 grid-template-columns:minmax(0,43%) minmax(0,57%);
}
html[lang="en"] body .yi-en-photo-split>.section-row>.layout-column,
html[lang="en"] body.yi-service-page .yi-en-photo-split>.section-row>.layout-column {
 width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;
 margin:0!important;box-sizing:border-box!important;
}
@media(max-width:767px){
 html[lang="en"] body .yi-en-photo-split>.section-row,
 html[lang="en"] body.yi-service-page .yi-en-photo-split>.section-row,
 html[lang="en"] body .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 }
}
/* Override the old :has() widths at matching specificity on all English photo pairs. */
html[lang="en"] body.yi-service-page .yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column,
html[lang="en"] body .yi-service-section.yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column,
html[lang="en"] body .yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column {
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;flex:none!important;box-sizing:border-box!important;
}
/* Prevent imported percentage margins from pushing English tablet content off-screen. */
@media (min-width:768px) and (max-width:1024px){
 html[lang="en"] .layout-column>.column-inner {margin-left:0!important;margin-right:0!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
}
@media(max-width:1024px){
 html[lang="en"] .projects-carousel .carousel-prev{left:0!important}
 html[lang="en"] .projects-carousel .carousel-next{right:0!important}
}


/* V2.1.8 — photo-panel parity only on the four IT certification pages.
   The English rules remain untouched. No changes to any other Italian page. */
html[lang="it"] body[data-page="certificazione-breeam"] .yi-it-cert-photo-split>.section-row,
html[lang="it"] body[data-page="certificazione-leed"] .yi-it-cert-photo-split>.section-row,
html[lang="it"] body[data-page="certificazione-well"] .yi-it-cert-photo-split>.section-row,
html[lang="it"] body[data-page="certificazione-ape"] .yi-it-cert-photo-split>.section-row {
 display:grid!important;grid-template-columns:minmax(0,57%) minmax(0,43%);
 gap:0!important;align-items:stretch!important;max-width:100%!important;
 width:100%!important;min-width:0!important;flex-wrap:nowrap!important;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split:has(>.section-row>.yi-it-cert-photo-column:first-child)>.section-row {
 grid-template-columns:minmax(0,43%) minmax(0,57%);
}
/* Override imported Elementor column widths/margins and legacy :has widths. */
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column {
 display:flex!important;flex:none!important;width:100%!important;max-width:100%!important;
 min-width:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important;
 align-self:stretch!important;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.layout-column>.column-inner {
 display:flex;flex-direction:column;position:relative;flex:1 1 auto;
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin:0!important;box-sizing:border-box!important;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.layout-column:not(.yi-it-cert-photo-column)>.column-inner {
 padding:clamp(30px,3.2vw,60px)!important;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.yi-it-cert-photo-column {min-height:400px!important}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.yi-it-cert-photo-column>.column-inner {
 min-height:400px!important;padding:0!important;overflow:hidden!important;
 background-image:none!important;isolation:isolate;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-column>.column-inner>.yi-it-cert-photo {
 position:absolute;display:block;inset:0;z-index:0;
 width:100%!important;height:100%!important;min-height:100%!important;
 max-width:none!important;max-height:none!important;object-fit:cover!important;
 object-position:center center!important;
}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-column>.column-inner>.layout-widget {display:none!important}
html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-column>.column-inner>.overlay {z-index:1}
@media(max-width:1024px) {
 html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.layout-column:not(.yi-it-cert-photo-column)>.column-inner {padding:26px!important}
}
@media(max-width:767px) {
 html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row,
 html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split:has(>.section-row>.yi-it-cert-photo-column:first-child)>.section-row {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 }
 html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.yi-it-cert-photo-column,
 html[lang="it"] body.yi-it-cert-page .yi-it-cert-photo-split>.section-row>.yi-it-cert-photo-column>.column-inner {min-height:310px!important}
}


/* YOUinIT V2.1.9 — SOLO ANTEPRIMA LOCALE, homepage e archivio progetti.
   Contenuti/layout delle schede progetto invariati. */
.yi219-container{width:min(1200px,calc(100% - 56px));margin:0 auto}
.yi219-hero{min-height:660px;height:calc(100vh - 142px);max-height:960px;position:relative;isolation:isolate;background:#112529;color:#fff;display:flex;align-items:center;overflow:hidden}
.yi219-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.yi219-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,28,31,.9) 0%,rgba(9,29,32,.72) 42%,rgba(12,31,33,.23) 100%),linear-gradient(0deg,#102c3066,transparent 35%);z-index:-2}
.yi219-hero-content{width:min(1140px,calc(100% - 56px));margin:auto;padding:75px 0}
.yi219-eyebrow,.yi219-kicker{color:#228a43;letter-spacing:.19em;font-size:12px;font-weight:700;text-transform:uppercase}
.yi219-eyebrow{color:#e5eae7}.yi219-eyebrow span{color:#69c27c}
.yi219-hero h1{font-family:Raleway,Arial,sans-serif;font-size:clamp(44px,5.75vw,87px);line-height:1.1;color:white;font-weight:600;letter-spacing:-.055em;margin:26px 0}
.yi219-hero h1 em{font-style:normal;color:#74c681}
.yi219-hero p{color:#e3eae7;max-width:610px;font-size:clamp(16px,1.7vw,21px);line-height:1.7}
.yi219-hero-actions{display:flex;flex-wrap:wrap;gap:19px;align-items:center;margin-top:34px}
.yi219-btn{background:#258641;color:#fff;padding:14px 24px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:24px}
.yi219-btn:hover{background:#319d52}.yi219-ghost{border-bottom:1px solid #adc4b7;color:#fff;font-size:14px;font-weight:700;padding:12px 0;display:inline-flex;gap:20px}
.yi219-hero-arc{pointer-events:none;position:absolute;width:530px;height:530px;border:1px solid #fff5;border-radius:50%;right:-220px;bottom:-240px;transform:rotate(-25deg)}
.yi219-hero-arc:after{content:"";display:block;width:155%;height:1px;background:#8cb9a277;transform:rotate(-42deg);transform-origin:left}
.yi219-hero-scroll{position:absolute;left:calc((100% - min(1140px,100% - 56px))/2);bottom:23px;color:#c4d0ca;font-size:11px;letter-spacing:.22em}
.yi219-section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin:0 0 35px}
.yi219-section-head h1,.yi219-section-head h2{font-family:Raleway,Arial,sans-serif;font-size:clamp(32px,4vw,52px);letter-spacing:-.045em;font-weight:500;color:#1a2f33;line-height:1.12;margin:17px 0 0}
.yi219-section-head p{max-width:335px;font-size:15px;line-height:1.7;color:#627075;margin:0}
.yi219-services{background:#fafbfa;padding:85px 0 105px}
.yi219-service-lines{border-top:1px solid #cdd7d2}
.yi219-service-row{border-bottom:1px solid #cdd7d2;transition:background .2s}
.yi219-service-row summary{display:grid;grid-template-columns:52px 100px minmax(0,1fr) 50px;align-items:center;gap:22px;list-style:none;cursor:pointer;padding:19px 10px;min-height:132px}
.yi219-service-row summary::-webkit-details-marker{display:none}
.yi219-service-row summary:hover{background:#edf3ef}
.yi219-service-id{font-size:12px;letter-spacing:.1em;color:#288748}
.yi219-service-icon{width:84px;height:84px;display:grid;place-items:center}
.yi219-service-icon img{width:76px;max-height:76px;object-fit:contain}
.yi219-service-title{font-size:clamp(21px,2.5vw,31px);font-weight:500;color:#1b3034;letter-spacing:-.03em}
.yi219-service-toggle{width:40px;height:40px;border:1px solid #b5c5ba;display:grid;place-items:center;color:#268743;font-size:26px;font-weight:300;border-radius:50%;transition:transform .25s,background .25s}
.yi219-service-row[open] .yi219-service-toggle{transform:rotate(45deg);background:#24843d;color:#fff}
.yi219-service-detail{padding:0 60px 31px 184px;display:flex;justify-content:space-between;align-items:end;gap:30px}
.yi219-service-detail p{max-width:530px;font-size:16px;line-height:1.7;color:#687779;margin:0}
.yi219-service-detail a{flex-shrink:0;border-bottom:1px solid #24843d;color:#247f3a;font-size:14px;font-weight:700;padding-bottom:5px}
.yi219-portfolio{background:#fff;padding:95px 0 120px}
.yi219-portfolio-home{background:#f7f9f7}
.yi219-filters{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 35px}
.yi219-filter{font-size:13px;font-weight:700;border:1px solid #dce4df;color:#45555a;background:transparent;padding:10px 17px;border-radius:50px;transition:.18s}
.yi219-filter:hover,.yi219-filter.active{background:#1a2f33;color:#fff;border-color:#1a2f33}
.yi219-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:19px}
.yi219-project{min-width:0;grid-column:span 4;position:relative;overflow:hidden;background:#213439}
.yi219-project a{display:block;height:100%;min-height:280px;position:relative;isolation:isolate;color:white}
.yi219-project img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .6s ease}
.yi219-project a:hover img{transform:scale(1.045)}
.yi219-project-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,24,26,.9) 0%,rgba(8,24,26,.27) 65%,transparent)}
.yi219-card-content{position:absolute;inset:auto 25px 22px;display:flex;flex-direction:column;align-items:start;gap:9px}
.yi219-category{font-size:11px;letter-spacing:.15em;color:#afe1b5}
.yi219-card-content strong{font-size:clamp(19px,1.9vw,27px);font-weight:600;line-height:1.25;color:white}
.yi219-project-action{font-size:12px;font-weight:700;letter-spacing:.08em;color:#f0fff0;border-bottom:1px solid #80bf87;padding:0 0 5px}
.yi219-grid-home .yi219-project:nth-child(1){grid-column:span 7}
.yi219-grid-home .yi219-project:nth-child(2){grid-column:span 5}
.yi219-grid-home .yi219-project:nth-child(3){grid-column:span 4}
.yi219-grid-home .yi219-project:nth-child(4){grid-column:span 4}
.yi219-grid-home .yi219-project:nth-child(5){grid-column:span 4}
.yi219-grid-home .yi219-project:nth-child(6){grid-column:span 12}
.yi219-grid-home .yi219-project:nth-child(1) a,.yi219-grid-home .yi219-project:nth-child(2) a{min-height:420px}
.yi219-grid-home .yi219-project:nth-child(6) a{min-height:330px}
.yi219-grid-all .yi219-project:nth-child(8n+1){grid-column:span 7}
.yi219-grid-all .yi219-project:nth-child(8n+2){grid-column:span 5}
.yi219-grid-all .yi219-project:nth-child(8n+3){grid-column:span 4}
.yi219-grid-all .yi219-project:nth-child(8n+4){grid-column:span 4}
.yi219-grid-all .yi219-project:nth-child(8n+5){grid-column:span 4}
.yi219-grid-all .yi219-project:nth-child(8n+6){grid-column:span 5}
.yi219-grid-all .yi219-project:nth-child(8n+7){grid-column:span 7}
.yi219-grid-all .yi219-project:nth-child(8n+8){grid-column:span 12}
.yi219-grid-all .yi219-project:nth-child(8n+1) a,
.yi219-grid-all .yi219-project:nth-child(8n+2) a{min-height:460px}
.yi219-grid-all .yi219-project:nth-child(8n+6) a,
.yi219-grid-all .yi219-project:nth-child(8n+7) a{min-height:395px}
.yi219-grid-all .yi219-project:nth-child(8n+8) a{min-height:360px}
.yi219-project[hidden]{display:none!important}
.yi219-portfolio-bottom{margin-top:34px;text-align:right}
.yi219-all-projects{font-size:15px;color:#207d3b;border-bottom:2px solid #24843d;padding:0 0 7px;font-weight:700}
@media(max-width:1050px){.yi219-hero{min-height:560px;height:64vh}
.yi219-grid .yi219-project{grid-column:span 6!important}.yi219-grid .yi219-project a{min-height:320px!important}
.yi219-service-detail{padding-left:170px}.yi219-hero-arc{opacity:.3}}
@media(max-width:700px){.yi219-container,.yi219-hero-content{width:calc(100% - 36px)}
.yi219-hero{min-height:560px;max-height:none;height:auto}
.yi219-hero-content{padding:80px 0 105px}.yi219-hero h1{font-size:clamp(39px,10vw,58px)}
.yi219-hero-arc{display:none}.yi219-hero-scroll{left:18px}
.yi219-section-head{display:block;margin-bottom:28px}
.yi219-section-head p{margin-top:17px}
.yi219-services,.yi219-portfolio{padding:65px 0}
.yi219-service-row summary{grid-template-columns:28px 60px 1fr 31px;gap:10px;min-height:95px;padding:12px 0}
.yi219-service-icon{width:54px;height:54px}.yi219-service-icon img{width:52px;max-height:52px}
.yi219-service-title{font-size:20px}
.yi219-service-toggle{width:30px;height:30px}
.yi219-service-detail{padding:0 7px 24px 97px;display:block}
.yi219-service-detail a{display:inline-block;margin-top:12px}
.yi219-grid .yi219-project{grid-column:span 12!important}.yi219-grid .yi219-project a{min-height:320px!important}
.yi219-filters{gap:6px}.yi219-filter{font-size:12px;padding:8px 11px}
.yi219-card-content{inset:auto 18px 18px}
}
@media(prefers-reduced-motion:reduce){.yi219-project img,.yi219-service-toggle{transition:none}}


/* YOUinIT V2.1.9D — refinements as approved (no changes to project-detail layouts). */
body[data-page="23665"] .yi219-hero + .layout-section,
body[data-page="26238"] .yi219-hero + .layout-section{margin-top:0!important}
/* Corporate band is immediately adjacent to hero, no intervening whitespace. */
.yi219-hero + .layout-section{margin-top:0!important}
/* Legacy home services: icons, original illustrations, titles and descriptions aligned on a common baseline. */
.yi-home-services > .section-row{max-width:1160px;justify-content:center;gap:28px;align-items:stretch}
.yi-home-services .layout-column{flex:1 1 0!important;width:33.333%!important;max-width:355px;padding:8px 14px}
.yi-home-services .column-inner{padding:10px!important;height:100%}
.yi-home-services .image-box{display:flex;flex-direction:column;height:100%;text-align:left}
.yi-home-services .image-box > a{display:flex;justify-content:center;align-items:center;height:225px;width:100%;margin:0 0 24px}
.yi-home-services .image-box > a img{max-width:225px;max-height:215px;object-fit:contain;margin:0}
.yi-home-services .image-box .box-title{font-size:19px!important;line-height:1.45!important;min-height:58px;max-height:none;margin:0 0 8px!important;display:flex;align-items:flex-start;justify-content:flex-start}
.yi-home-services .image-box .box-title a{color:#1a2f33!important;text-decoration:none}
.yi-home-services .image-box .box-description{font-size:16px;line-height:1.8;color:#7d7d7d}
/* Compact original projects band only on homepage. */
body[data-page="home-it"] .node-23665-4,body[data-page="home-yii--en"] .node-26238-4{min-height:0!important}
/* Keep portfolio grid immediately below its matching original page header. */
body[data-page="progetti"] .yi219-portfolio-all,
body[data-page="projects"] .yi219-portfolio-all{padding-top:68px}
@media(max-width:760px){
.yi-home-services>.section-row{display:flex;gap:15px;flex-wrap:wrap;padding:0 18px}
.yi-home-services .layout-column{flex:1 1 100%!important;max-width:none;width:100%!important}
.yi-home-services .image-box>a{height:174px;margin-bottom:14px}
.yi-home-services .image-box>a img{max-height:170px}
.yi-home-services .image-box .box-title{min-height:0;margin-bottom:10px!important}
.yi-home-services .image-box{align-items:center;text-align:center}
.yi-home-services .image-box .box-title{justify-content:center}
.yi-home-services .image-box .box-description{max-width:400px}
body[data-page="progetti"] .yi219-portfolio-all,
body[data-page="projects"] .yi219-portfolio-all{padding-top:45px}
}

/* Solo fascia PROGETTI nella HOME: elimina margini interni troppo alti su tablet/mobile.
   L'header della pagina PROGETTI è lasciato al 100% originale. */
body[data-page="home-it"] .node-23665-4-0-0,
body[data-page="home-yii--en"] .node-26238-4-0-0,
body[data-page="home-it"] .node-23665-4 > .section-row > .layout-column > .column-inner > .layout-section,
body[data-page="home-yii--en"] .node-26238-4 > .section-row > .layout-column > .column-inner > .layout-section {
  margin-top:0!important;
  margin-bottom:0!important;
}

/* Solo banner PROGETTI in homepage (IT/EN). L'header delle pagine interne non è toccato. */
.node-23665-4-0-0,
.node-26238-4-0-0 {
  margin-top:0!important;
  margin-bottom:0!important;
}

.yi219-hero-photo{object-position:var(--yi-photo-desktop,50%) center!important}
@media(max-width:767px){.yi219-hero-photo{object-position:var(--yi-photo-mobile,50%) center!important}}


/* YOUinIT 2.2.2 — HOME responsive wide. No changes to internal pages, services page, footer. */
:root{--yi-home-gutter:clamp(18px,3.4vw,82px)}
/* Wider editorial content across display widths; structural background sections remain full bleed. */
body[data-page="home"] #main > .layout-section:not(.full) > .section-row,
body[data-page="home-en"] #main > .layout-section:not(.full) > .section-row,
body[data-page="home"] #main .yi-services-cards > .section-row,
body[data-page="home-en"] #main .yi-services-cards > .section-row {
 max-width:none;
 width:calc(100% - 2 * var(--yi-home-gutter));
 margin-left:auto;
 margin-right:auto;
}
body[data-page="home"] #main .yi219-portfolio .yi219-container,
body[data-page="home-en"] #main .yi219-portfolio .yi219-container{
 max-width:none;
 width:calc(100% - 2 * var(--yi-home-gutter));
}
body[data-page="home"] #main .yi219-hero-content,
body[data-page="home-en"] #main .yi219-hero-content {
 max-width:none;
 width:calc(100% - 2 * var(--yi-home-gutter));
}
/* Original page Servizi cards reused on homepage, stretched without distorting logos. */
body[data-page="home"] #main .yi-services-cards .layout-column,
body[data-page="home-en"] #main .yi-services-cards .layout-column{max-width:none}
body[data-page="home"] #main .yi-services-cards .column-inner,
body[data-page="home-en"] #main .yi-services-cards .column-inner{
 padding:clamp(20px,2.3vw,42px)!important;
}
body[data-page="home"] #main .yi-services-cards .image-box img,
body[data-page="home-en"] #main .yi-services-cards .image-box img{
 max-width:min(100%,260px);
}
/* Maintain a balanced, fully occupied grid, with mixed image heights/sizes. */
.yi219-grid-home .yi219-project:nth-child(6),
.yi219-grid-home .yi219-project:nth-child(n+7):nth-child(-n+8){grid-column:span 4}
.yi219-grid-home .yi219-project:nth-child(n+9){grid-column:span 3}
.yi219-grid-home .yi219-project:nth-child(n+3) a{min-height:clamp(260px,23vw,410px)}
.yi219-grid-home .yi219-project:nth-child(n+9) a{min-height:clamp(245px,21vw,350px)}
/* Large monitors: increase usable photography area, without stretched covers. */
@media(min-width:1750px){
 .yi219-grid-home{gap:clamp(18px,1.2vw,26px)}
 .yi219-grid-home .yi219-project:nth-child(-n+2) a{min-height:clamp(430px,26vw,620px)}
 .yi219-grid-home .yi219-project:nth-child(n+3):nth-child(-n+8) a{min-height:clamp(305px,21vw,450px)}
 .yi219-card-content strong{font-size:clamp(23px,1.55vw,32px)}
}
@media(min-width:701px) and (max-width:1050px){
 .yi219-grid-home .yi219-project:nth-child(n){grid-column:span 6!important}
}
@media(max-width:700px){
 :root{--yi-home-gutter:18px}
 body[data-page="home"] #main .yi-services-cards > .section-row,
 body[data-page="home-en"] #main .yi-services-cards > .section-row{display:flex;flex-wrap:wrap}
 body[data-page="home"] #main .yi-services-cards .layout-column,
 body[data-page="home-en"] #main .yi-services-cards .layout-column{flex:1 1 100%!important}
 .yi219-grid-home .yi219-project:nth-child(n){grid-column:span 12!important}
 .yi219-grid-home .yi219-project:nth-child(n) a{min-height:290px!important}
}


/* YOUinIT V2.2.3 — One responsive geometry for the three Services cards.
   Applied identically to the public page and the editor iframe. */
.yi-services-cards > .section-row {
  align-items:stretch !important;
}
.yi-services-cards > .section-row > .layout-column{
  display:flex!important;
  flex-direction:column;
  min-width:0;
}
.yi-services-cards > .section-row > .layout-column > .column-inner{
  display:flex!important;
  flex-direction:column;
  flex:1 1 auto;
  min-width:0;
  height:100%;
  box-sizing:border-box;
}
.yi-services-cards .column-inner > .layout-widget:has(> .image-box){
  display:flex;
  flex:1 1 auto;
  min-width:0;
}
.yi-services-cards .image-box{
  flex:1 1 auto;
  width:100%;
  display:flex;
  flex-direction:column;
  text-align:left;
}
.yi-services-cards .image-box > a:first-child{
  width:100%;
  height:clamp(165px,14vw,260px);
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:clamp(14px,1.8vw,24px);
}
.yi-services-cards .image-box > a:first-child > img{
  display:block;
  width:auto!important;
  height:auto!important;
  max-height:min(94%,240px);
  max-width:min(94%,260px)!important;
  object-fit:contain;
  margin:0!important;
}
.yi-services-cards .image-box .box-title{
  min-height:56px;
  margin-bottom:12px!important;
  flex:0 0 auto;
  text-align:left;
}
.yi-services-cards .image-box .box-description{
  flex:1 1 auto;
  min-height:64px;
  margin-bottom:14px;
  text-align:left;
}
.yi-services-cards .column-inner > .layout-widget:has(> .heading):last-child{
  flex:0 0 auto;
  margin-top:auto;
  padding-top:8px;
  text-align:center;
}
.yi-services-cards .column-inner > .layout-widget:has(> .heading):last-child .heading{
  text-align:center!important;
  margin:0!important;
}
@media(max-width:1024px){
  .yi-services-cards .image-box > a:first-child{height:190px}
  .yi-services-cards .image-box .box-title{min-height:56px}
}
@media(max-width:600px){
  .yi-services-cards .image-box > a:first-child{height:166px}
  .yi-services-cards .image-box .box-title{min-height:0}
  .yi-services-cards .image-box .box-description{min-height:0}
}

/* YOUinIT V2.2.4 — pagina PROGETTI più ampia, con spazio editoriale reale.
   La home, le pagine interne, il loro header e le schede progetto non cambiano. */
:root{--yi-project-gutter:clamp(20px,3vw,76px)}
.yi219-portfolio-all > .yi219-container{
 width:calc(100% - 2 * var(--yi-project-gutter))!important;
 max-width:none!important;
 margin-inline:auto!important;
}
.yi219-portfolio-all .yi219-section-head{
 margin-bottom:clamp(24px,2.5vw,48px);
}
.yi219-portfolio-all .yi219-grid-all{
 display:grid;
 grid-template-columns:repeat(12,minmax(0,1fr));
 gap:clamp(22px,1.85vw,42px);
 grid-auto-flow:row dense;
}
.yi219-portfolio-all .yi219-project{
 min-width:0;
}
.yi219-portfolio-all .yi219-project a{
 min-height:clamp(305px,24vw,540px);
}
.yi219-portfolio-all .yi219-grid-all .yi219-project:nth-child(8n+3) a,
.yi219-portfolio-all .yi219-grid-all .yi219-project:nth-child(8n+4) a,
.yi219-portfolio-all .yi219-grid-all .yi219-project:nth-child(8n+5) a{
 min-height:clamp(300px,22vw,455px);
}
.yi219-portfolio-all .yi219-card-content{
 inset:auto clamp(18px,1.7vw,35px) clamp(20px,1.7vw,35px);
}
@media(min-width:1920px){
 .yi219-portfolio-all .yi219-grid-all{
  gap:clamp(30px,1.9vw,46px);
 }
 .yi219-portfolio-all .yi219-grid-all .yi219-project:nth-child(8n+1) a,
 .yi219-portfolio-all .yi219-grid-all .yi219-project:nth-child(8n+2) a{
  min-height:clamp(480px,25vw,650px);
 }
}
@media(max-width:1050px){
 .yi219-portfolio-all .yi219-grid-all{gap:clamp(18px,2.4vw,28px)}
 .yi219-portfolio-all .yi219-grid-all .yi219-project a{min-height:320px!important}
}
@media(max-width:700px){
 :root{--yi-project-gutter:18px}
 .yi219-portfolio-all > .yi219-container{width:calc(100% - 36px)!important}
 .yi219-portfolio-all .yi219-grid-all{gap:20px}
 .yi219-portfolio-all .yi219-grid-all .yi219-project a{min-height:300px!important}
}


/* ================================================================
   YOUinIT V2.3.0 — sistema responsive condiviso (pubblico + iframe).
   Sole geometrie dei contenitori: testi, fotografie, widget e nodi
   della plancia rimangono modificabili con le rispettive impostazioni.
   ================================================================ */
:root{
  --yi-site-gutter:clamp(20px,3.2vw,86px);
  --yi-site-span:calc(100% - 2 * var(--yi-site-gutter));
  --yi-site-grid-gap:clamp(18px,1.55vw,34px);
  --yi-home-gutter:var(--yi-site-gutter);
  --yi-project-gutter:var(--yi-site-gutter);
}
html{overflow-x:clip}
#header .wrap,
#footer .wrap{
  width:var(--yi-site-span);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}
#header .navwrap .wrap{min-width:0}
#header .navwrap nav{min-width:0}
#footer .footer-main .wrap{
  gap:clamp(25px,3vw,70px);
  grid-template-columns:minmax(0,3fr) minmax(0,2fr);
}
#footer .footer-main .wrap > *,
#footer .footer-bottom .wrap > *{min-width:0}

/* Bande e sfondi conservano la loro estensione; i contenuti seguono
   la larghezza utile del browser, senza il vecchio blocco da 1140px. */
#main > .layout-section:not(.full) > .section-row{
  width:var(--yi-site-span);
  max-width:none;
  margin-inline:auto;
}
#main > .layout-section.full > .section-row{
  width:100%;
  max-width:none;
}
#main .layout-section .layout-section > .section-row{
  width:100%;
  max-width:none;
}
#main .layout-section > .section-row,
#main .layout-column,
#main .column-inner,
#main .layout-widget{min-width:0}

/* La navigazione dei servizi e le categorie condividono la medesima
   griglia larga, senza cambiare le card o le loro illustrazioni. */
#main > .layout-section.yi-services-cards > .section-row,
#main > .layout-section.yi-service-section:not(.full) > .section-row{
  width:var(--yi-site-span);
  max-width:none;
}
#main .yi-services-cards .layout-column{min-width:0}
#main .yi-services-cards .image-box img{object-fit:contain}

/* I blocchi descrittivi hanno una misura ottica leggibile anche su
   monitor ultrawide; gallerie e composizioni a colonne restano ampie. */
#main .richtext{
  max-width:min(100%,85ch);
  overflow-wrap:break-word;
}
#main .heading,#main .box-title,#main .box-description{
  overflow-wrap:break-word;
}
#main .image-widget img,
#main .object-image{
  max-width:100%;
  height:auto;
}

/* I gruppi di icone rimangono a tre/quattro colonne equilibrate,
   senza disperdersi per tutta la larghezza di un ultrawide. */
#main > .layout-section.yi-en-feature-grid > .section-row{
  width:min(var(--yi-site-span),1800px);
  max-width:none;
}
#main .project-grid{
  gap:var(--yi-site-grid-gap);
  grid-template-columns:repeat(3,minmax(0,1fr));
}
#main .project-grid .grid-card{min-width:0}

/* Tra 768 e 1023px il contenuto usa un margine adeguato, ma le
   precedenti disposizioni responsive di ciascun template prevalgono. */
@media(max-width:1023px){
 :root{--yi-site-gutter:clamp(18px,3vw,30px)}
 #footer .footer-main .wrap{gap:24px}
 #main .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 :root{--yi-site-gutter:18px}
 #header .navwrap .wrap{width:calc(100% - 36px);padding:0}
 #footer .footer-main .wrap{grid-template-columns:minmax(0,1fr)}
 #main > .layout-section:not(.full) > .section-row{
   width:100%;
   max-width:none;
 }
 #main .layout-section .layout-section > .section-row{width:100%}
 #main .project-grid{grid-template-columns:minmax(0,1fr)}
 #main .richtext{max-width:100%}
}



/* V2.3.2: pagina IT Progettazione impianti allineata esattamente al renderer EN */
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row {display:flex;align-items:stretch!important;width:100%;max-width:none;min-width:0;flex-wrap:nowrap}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column {display:flex;min-width:0;min-height:0;align-self:stretch;flex-shrink:0;margin:0!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column>.column-inner {position:relative;width:100%!important;max-width:100%!important;min-width:0;flex:1 1 auto;box-sizing:border-box;margin:0!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column {flex:0 0 43%!important;width:43%!important;max-width:43%!important;min-height:400px}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column) {flex:0 0 57%!important;width:57%!important;max-width:57%!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column)>.column-inner {padding:clamp(30px,3.2vw,60px)!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column>.column-inner {position:relative;min-height:400px!important;padding:0!important;overflow:hidden;background-image:none!important;isolation:isolate}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-column>.column-inner>.yi-en-photo {position:absolute;display:block;inset:0;z-index:0;width:100%!important;height:100%!important;min-height:100%;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center center!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-column>.column-inner>.layout-widget {display:none!important}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-column>.column-inner>.overlay {z-index:1}
@media (max-width:1024px) {html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column)>.column-inner {padding:26px!important}}
@media (max-width:767px) {html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row {display:flex!important;flex-direction:column;flex-wrap:nowrap} html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column,html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column:not(.yi-en-photo-column),html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column {width:100%!important;max-width:100%!important;flex:0 0 auto!important} html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column,html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column.yi-en-photo-column>.column-inner {min-height:310px!important}}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row,
html[lang="it"] body.yi-service-page[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row{
 display:grid!important;grid-template-columns:minmax(0,57%) minmax(0,43%);gap:0!important;
 align-items:stretch!important;justify-content:start!important;max-width:100%!important;
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row,
html[lang="it"] body.yi-service-page[data-page="servizio-progettazione-impianti"] .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row{
 grid-template-columns:minmax(0,43%) minmax(0,57%);
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column,
html[lang="it"] body.yi-service-page[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row>.layout-column {
 width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;
 margin:0!important;box-sizing:border-box!important;
}
@media (max-width:767px){html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row,
 html[lang="it"] body.yi-service-page[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row,
 html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split:has(>.section-row>.yi-en-photo-column:first-child)>.section-row {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 }}
html[lang="it"] body.yi-service-page[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column,
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-service-section.yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column,
html[lang="it"] body[data-page="servizio-progettazione-impianti"] .yi-en-photo-split>.section-row:has(>.layout-column:nth-child(2)):not(:has(>.layout-column:nth-child(3)))>.layout-column {
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;flex:none!important;box-sizing:border-box!important;
}
/* V2.3.2 - prose justified throughout IT/EN; headings/buttons remain as designed. */
#main .richtext,
#main .richtext p,
#main .richtext li,
#main .box-description,
#main .yi219-section-head p,
#main .yi219-hero p,
#main .yi219-service-detail p,
#main .yi219-portfolio p,
#main .post-info p,
#footer .footer-main p{
  text-align:justify;
  text-align-last:left;
  text-justify:inter-word;
  hyphens:auto;
  overflow-wrap:break-word;
}
@media(max-width:420px){
  #main .richtext, #main .box-description{hyphens:auto}
}

/* V2.3.3: structure-only guard for the 3 MEP photo rows, same proportions as EN.
   Content and photographs are never altered. Fresh admin v233 overrides still apply. */
html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split > .section-row{
 width:100%!important;max-width:none!important;
 display:grid!important;grid-template-columns:minmax(0,57%) minmax(0,43%);
 align-items:stretch!important;gap:0!important;
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split:has(> .section-row > .yi-en-photo-column:first-child) > .section-row{
 grid-template-columns:minmax(0,43%) minmax(0,57%);
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split > .section-row > .layout-column{
 width:100%!important;max-width:100%!important;min-width:0!important;
 flex:none!important;align-self:stretch!important;margin:0!important;
 box-sizing:border-box!important;
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split > .section-row > .yi-en-photo-column > .column-inner{
 position:relative!important;min-height:400px!important;
 overflow:hidden!important;background-image:none!important;padding:0!important;
}
html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 .yi-en-photo-column > .column-inner > img.yi-en-photo{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 object-fit:cover!important;object-position:center!important;
}
@media(max-width:767px){
 html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split > .section-row,
 html[lang="it"] body[data-page="servizio-progettazione-impianti"] #main
 > section.yi-en-photo-split:has(> .section-row > .yi-en-photo-column:first-child) > .section-row{
  grid-template-columns:minmax(0,1fr)!important;
 }
}


/* YOUinIT V2.4.0: careers page isolated styling; all existing pages unaffected. */
body[data-page="lavora-con-noi"] .yi-careers-form,
body[data-page="careers"] .yi-careers-form{background:#f4f7f5;padding:clamp(44px,5vw,95px) 0}
.yi-careers-inner{width:calc(100% - 2*clamp(18px,3.2vw,86px));margin:0 auto;max-width:1360px;
 display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(25px,4vw,88px);align-items:start}
.yi-careers-copy{padding-top:16px}
.yi-careers-kicker{display:block;color:#24843d;font-size:12px;letter-spacing:.2em;font-weight:700;margin-bottom:20px}
.yi-careers-copy h2{font-size:clamp(31px,3.2vw,53px);line-height:1.15;color:#1a2f33;margin:0 0 18px}
.yi-careers-copy p{font-size:17px;line-height:1.8;max-width:45ch}
#yi-career-apply{background:white;border:1px solid #d7e6db;padding:clamp(23px,2.6vw,42px);box-shadow:0 16px 48px #0e322010}
.yi-career-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
#yi-career-apply label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:#1a2f33}
#yi-career-apply input:not([type=checkbox]),#yi-career-apply textarea{width:100%;box-sizing:border-box;border:1px solid #ccd8d0;border-radius:4px;
 padding:13px 14px;background:#fff;color:#182c22;font:inherit;min-height:45px}
#yi-career-apply input:focus,#yi-career-apply textarea:focus{outline:2px solid #24843d;outline-offset:2px}
.yi-career-message{margin:20px 0 18px}
.yi-cv-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
 padding:32px 20px;min-height:155px;text-align:center;border:2px dashed #8db49b;background:#f4faf6;color:#1a4831;
 cursor:pointer;transition:background .15s,border-color .15s;box-sizing:border-box}
.yi-cv-drop.drag-over,.yi-cv-drop:focus-visible{background:#e3f3e6;border-color:#218645}
.yi-cv-drop .yi-cv-symbol{font-size:36px;line-height:1;color:#24843d}
.yi-cv-drop strong{font-size:14px}
.yi-cv-drop span{font-size:12px;color:#516f60}
#yi-cv-name{font-weight:700!important;overflow-wrap:anywhere}
#yi-career-apply .yi-privacy-check{display:flex;flex-direction:row;gap:10px;font-weight:400;line-height:1.55;align-items:flex-start;margin:20px 0}
.yi-privacy-check input{margin-top:5px;accent-color:#24843d}
.yi-privacy-check a{color:#1d7a3b;text-decoration:underline}
.yi-honeypot{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
#yi-career-send{display:block;width:100%;padding:15px 22px;color:#fff;background:#24843d;border:0;
 font-weight:700;letter-spacing:.04em;cursor:pointer;margin-top:24px}
#yi-career-send:disabled{cursor:not-allowed;opacity:.55}
#yi-form-message{font-size:14px;line-height:1.5;min-height:22px;overflow-wrap:break-word}
@media(max-width:950px){.yi-careers-inner{grid-template-columns:minmax(0,1fr);max-width:800px}.yi-careers-copy{padding:0}}
@media(max-width:600px){.yi-career-fields{grid-template-columns:1fr}#yi-career-apply{padding:20px}}

.yi-career-privacy-note{font-size:12px;color:#5c6f63;line-height:1.6;margin:13px 0}


/* V2.4.0: seven navigation links require compact navigation on narrow tablets. */
@media(min-width:768px) and (max-width:950px){
 .navwrap,.inner-header .navwrap{position:relative}
 .navwrap .menu-toggle{display:block;margin-left:auto}
 .navwrap nav{display:none;position:absolute;top:100%;left:0;right:0;
   background:#1a2f33;color:white;z-index:25;padding:16px clamp(18px,3vw,28px);
   box-shadow:0 8px 20px #0002;gap:0!important;align-items:stretch!important}
 .navwrap nav.open{display:flex;flex-direction:column}
 .navwrap nav>a,.navwrap .nav-item>a{display:block;padding:10px 12px}
 .navwrap .nav-item{width:100%}
 .navwrap .submenu{position:static;display:block;box-shadow:none;
   background:transparent;color:white;padding:0 16px}
 .navwrap .submenu a{padding:9px 10px}
 .navwrap .nav-social,.navwrap .languages{padding:12px}
}

/* V2.4.1 — global header: top contact strip must never appear, including cached data. */
.topbar{display:none!important}
body .navwrap{margin-top:0!important}

/* V2.4.1: preserve the approved project design; center only labels and their values. */
body[data-kind="project"] #main .yi-project-facts .icon-box,
body[data-kind="project"] #main .yi-project-facts .box-title,
body[data-kind="project"] #main .yi-project-facts .box-description,
body[data-kind="project"] #main .yi-project-facts .box-description p{
  text-align:center!important;text-align-last:center!important;hyphens:none!important;
}
body[data-kind="project"] #main .yi-project-facts .icon-symbol{margin-left:auto!important;margin-right:auto!important}
/* Restore a wide reading area for the project description; no narrow editorial columns. */
body[data-kind="project"] #main .yi-project-story>.section-row{
  max-width:none!important;width:100%!important;margin-inline:auto!important;
  padding-inline:clamp(16px,2.9vw,55px)!important;box-sizing:border-box;
}
body[data-kind="project"] #main .yi-project-story>.section-row>.layout-column{
  width:100%!important;max-width:100%!important;min-width:0!important;
}
body[data-kind="project"] #main .yi-project-story .richtext,
body[data-kind="project"] #main .yi-project-story .richtext p{
  width:100%;max-width:none!important;text-align:justify!important;
  text-align-last:left!important;hyphens:auto!important;
}
/* The Incarico/Scope section deliberately retains the first approved layout. */

/* Multiple office markers and office cards (only contacts map + footer). */
.yi-offices-map-view{height:min(65vw,570px);min-height:300px;position:relative;background:#e4ede8;isolation:isolate}
.yi-offices-map-view iframe{width:100%;height:100%;position:absolute;inset:0;border:0}
.yi-offices-map-view .leaflet-container{font-family:Raleway,Arial,sans-serif}
.yi-offices-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:20px;margin:0 auto;padding:26px clamp(18px,3vw,55px);background:#f5f8f6}
.yi-office-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #e1e8e3;padding:20px;min-width:0}
.yi-office-card strong{font-size:17px;color:#1a2f33}
.yi-office-card span{font-size:14px;overflow-wrap:anywhere}
.yi-office-card>a,.yi-office-popup a{color:#24843d;text-decoration:underline}
.yi-footer-office{line-height:1.6;margin-bottom:12px}
.yi-footer-office strong{color:#ddd}

.yi-offices-mini-maps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:15px;padding:20px clamp(18px,3vw,55px)}.yi-office-mini-map h3{font-size:16px}.yi-office-mini-map iframe{height:240px;width:100%;border:0}

/* V2.4.2 - Fix readability for the mobile HOME intro only (IT / EN).
   Desktop/tablet and all project layouts intentionally stay unchanged. */
@media (max-width:767px){
 body #main .yi-home-intro-readable{
  background-image:none!important;
  background-color:#1a2f33!important;
  background-position:center!important;
  background-attachment:scroll!important;
  min-height:0!important;
  padding:clamp(28px,8vw,42px) 0!important;
  margin:0!important;
 }
 body #main .yi-home-intro-readable::before,
 body #main .yi-home-intro-readable::after{background-image:none!important;opacity:0!important;pointer-events:none!important}
 body #main .yi-home-intro-readable>.section-row,
 body #main .yi-home-intro-readable .layout-section>.section-row{
  width:100%!important;max-width:100%!important;
  min-height:0!important;
 }
 body #main .yi-home-intro-readable .richtext,
 body #main .yi-home-intro-readable .richtext p{
  color:#f5f8f6!important;
  opacity:1!important;
  font-size:clamp(15px,4vw,17px)!important;
  line-height:1.72!important;
  letter-spacing:.005em!important;
  text-align:left!important;
  text-align-last:left!important;
  text-justify:auto!important;
  hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  max-width:100%!important;
 }
 body #main .yi-home-intro-readable .richtext strong{color:#fff!important;font-weight:700!important}
}

/* V2.6.6: prerender per indicizzazione, mai visibile durante il caricamento JS. */
html.yi-js-enabled #yi-initial-content{display:none!important}
#yi-initial-content{max-width:1140px;margin:3rem auto;padding:1rem 24px;min-height:220px}
