/* Consolidation of existing public templates; brand palette and layouts retained. */
.site-consolidated a:focus-visible,.site-consolidated button:focus-visible,.site-consolidated input:focus-visible,.site-consolidated select:focus-visible,.site-consolidated textarea:focus-visible,.site-consolidated summary:focus-visible{outline:3px solid #125c8e!important;outline-offset:3px;box-shadow:0 0 0 2px #fff}.site-skip-link{position:fixed;top:-100px;left:12px;padding:12px 18px;background:#fff;color:#142c43;z-index:100000;font-weight:700}.site-skip-link:focus{top:12px}.site-consolidated [id]{scroll-margin-top:130px}.site-consolidated .text-medium-gray,.site-consolidated .text-light-gray{color:#626970!important}.site-consolidated .bg-extra-dark-gray,.site-consolidated .bg-dark-gray{color:#dbe5ee}.site-consolidated .bg-extra-dark-gray p,.site-consolidated .bg-extra-dark-gray span,.site-consolidated .bg-dark-gray p,.site-consolidated .bg-dark-gray span,.site-consolidated .bg-extra-dark-gray .text-medium-gray,.site-consolidated .bg-extra-dark-gray .text-light-gray{color:#dbe5ee!important}.site-consolidated footer a{color:#e4edf5!important}.site-consolidated footer a:hover{color:#fff!important}.site-consolidated footer li a{display:inline-block;min-height:28px;line-height:24px;padding:2px 0}.site-consolidated footer a[href*="privacy"]{text-decoration:underline;text-underline-offset:3px}.site-consolidated .icon-social-very-small a{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px}.site-consolidated .owl-dot{min-width:28px;min-height:28px}.site-consolidated .post-title{min-height:28px;line-height:1.5!important;padding-bottom:4px}.site-consolidated .latest-post a,.site-consolidated .list-style-6 li>a{display:inline-block;min-height:28px;line-height:1.5}.site-consolidated .btn-orange{background:#bf4c00!important;border-color:#bf4c00!important;color:#fff!important}.site-consolidated .btn-success{background:#26733b;border-color:#26733b;color:#fff}.site-consolidated .btn-deep-pink{background:#b92747;border-color:#b92747;color:#fff}.site-consolidated a.text-deep-pink{color:#b02042!important}.site-consolidated .btn-transparent-dark-gray{color:#333!important}.site-consolidated .btn-transparent-dark-gray:hover{background:#223242!important;color:#fff!important}.site-consolidated .checkbox-inline a{color:#333;text-decoration:underline}.site-consolidated .blogbody a:not(.btn),.site-consolidated .custom-blogbody a:not(.btn){text-decoration:underline;text-underline-offset:3px}.site-consolidated .blogbody,.site-consolidated .custom-blogbody{overflow-wrap:anywhere;min-width:0}.site-consolidated .blogbody img{max-width:100%;height:auto!important}.site-consolidated .display-table{table-layout:fixed;max-width:100%}.site-consolidated .site-table-scroll{overflow-x:auto;max-width:100%;margin:16px 0}.site-consolidated .site-table-scroll table{max-width:100%;border-collapse:collapse}.site-consolidated .site-table-scroll th,.site-consolidated .site-table-scroll td{overflow-wrap:anywhere;padding:8px;vertical-align:top}.site-consolidated .justified-gallery .jg-entry img{max-width:none!important}.site-consolidated .search-button{min-height:44px;min-width:44px}.site-consolidated .navbar-toggle{min-height:44px;min-width:44px}.site-consolidated .blogheader h1,.site-consolidated .section-services h1{overflow-wrap:anywhere}.site-consolidated .form-control::placeholder{color:#626970;opacity:1}@media(max-width:991px){.site-consolidated .container{max-width:100%}.site-consolidated .col-12{min-width:0}.site-consolidated .blogheader .extra-small-screen{height:auto;min-height:230px;padding-top:95px;padding-bottom:45px}.site-consolidated .blogheader h1{font-size:27px;line-height:1.4}.site-consolidated .section-services h1{font-size:28px;line-height:1.4}}@media(prefers-reduced-motion:reduce){.site-consolidated .wow,.site-consolidated .animated{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}.site-consolidated{scroll-behavior:auto!important}}
.site-consolidated .bg-white p,.site-consolidated .feature-box-8 p{color:#626970!important}

.site-consolidated .site-login-row{margin-left:0;margin-right:0}
.site-consolidated .form-fld{color:#333!important}.site-consolidated .form-fld::placeholder{color:#626970!important;opacity:1}
.site-consolidated .site-candidature-page{padding-top:160px}.site-consolidated .site-candidature-page form>label{display:block;clear:both}.site-consolidated .site-candidature-page input[type=file]{display:block;max-width:100%;min-height:44px}.site-consolidated .site-candidature-page button{min-height:44px}

/* Approved Insights: readable long-form text and horizontally scrollable comparison tables. */
.site-consolidated .blogbody{font-size:17px;line-height:1.8;color:#263c51;overflow-wrap:anywhere}.site-consolidated .blogbody h2{font-size:26px;line-height:1.35;margin:36px 0 18px;color:#142c43}.site-consolidated .blogbody li{margin-bottom:10px}.site-consolidated .blogbody .table-wrap{overflow-x:auto;margin:24px 0}.site-consolidated .blogbody table{width:100%;border-collapse:collapse;font-size:15px}.site-consolidated .blogbody td,.site-consolidated .blogbody th{min-width:130px;padding:12px;border:1px solid #d5dfe8;vertical-align:top}.site-consolidated .blogbody th{background:#edf3f8}.site-consolidated .blogbody a{color:#125585;text-decoration:underline;text-underline-offset:3px}.site-consolidated .blogbody .article-cta{margin-top:32px;padding:24px;background:#edf3f8}.site-consolidated .post-author{color:#526273!important}

/* Issue 4413: keep the requested brand pink on the careers application buttons only. */
.site-consolidated .btn.btn-deep-pink[data-ajax-update="#modal-body"]{background:#ff214f;border-color:#ff214f;color:#fff}
.site-consolidated .btn.btn-deep-pink[data-ajax-update="#modal-body"]:hover,.site-consolidated .btn.btn-deep-pink[data-ajax-update="#modal-body"]:focus{background:transparent;border-color:#ff214f;color:#ff214f}

/* Issue 4412: the article reading style is shared by public prose. */
.site-consolidated{--site-prose-size:17px;--site-prose-leading:1.8;font-family:Roboto,Arial,sans-serif}
.site-consolidated main p,.site-consolidated section p,.site-consolidated .blogbody,.site-consolidated .custom-blogbody{font-family:Roboto,Arial,sans-serif!important;font-size:var(--site-prose-size)!important;line-height:var(--site-prose-leading)!important;letter-spacing:normal}
.site-consolidated .blogbody li,.site-consolidated .custom-blogbody li{font-family:Roboto,Arial,sans-serif;font-size:var(--site-prose-size);line-height:var(--site-prose-leading)}
/* Persistent project information works with keyboard, touch and the existing filters. */
.site-consolidated .site-project-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #dbe3ea;border-radius:12px;overflow:hidden;color:#263c51;text-decoration:none;box-shadow:0 4px 18px rgba(20,44,67,.06);transition:box-shadow .2s,border-color .2s}
.site-consolidated .site-project-card:hover,.site-consolidated .site-project-card:focus-visible{border-color:#125585;box-shadow:0 8px 26px rgba(20,44,67,.14)}
.site-consolidated .site-project-media{position:relative;flex:none;aspect-ratio:16/10;background:#f3f6f9;padding:20px;display:flex;align-items:center;justify-content:center}
.site-consolidated .site-project-media img{position:absolute;inset:20px;width:calc(100% - 40px);height:calc(100% - 40px);object-fit:contain;max-height:100%;transform:none!important}
.site-consolidated .site-project-content{padding:24px;display:flex;flex-direction:column;flex:1;min-width:0;text-align:left}
.site-consolidated .site-project-content h3{font-family:Roboto,Arial,sans-serif;font-size:22px;line-height:1.35;font-weight:600;color:#142c43;margin:0 0 10px;overflow-wrap:anywhere}
.site-consolidated .site-project-categories{font-size:13px;line-height:1.6;color:#526273;text-transform:capitalize;margin-bottom:12px}
.site-consolidated .site-project-content p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 20px}
.site-consolidated .site-project-link{font-size:15px;line-height:1.6;font-weight:600;color:#125585;margin-top:auto;padding-top:8px}
.site-consolidated .site-project-row{display:flex;flex-wrap:wrap}
.site-consolidated .site-project-row>[class*=col-]{display:flex;float:none;margin-bottom:30px}
.site-consolidated .site-project-row .site-project-card{width:100%}
.site-consolidated .site-project-grid .grid-item{padding:12px!important}
@media(max-width:991px){.site-consolidated .site-project-row>[class*=col-]{width:50%}}
@media(max-width:600px){.site-consolidated .site-project-row>[class*=col-]{width:100%}.site-consolidated .site-project-content{padding:20px}}

/* Legacy rich text contains inline span sizes; inherit the surrounding prose or heading. */
.site-consolidated .blogbody span[style*="font-" i],.site-consolidated .custom-blogbody span[style*="font-" i]{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important}

/* Issue 4411: same-origin contact map and requested brand colour. */
.site-consolidated .site-contact-map{background:#f3f6f9;padding:64px 0}
.site-consolidated .site-contact-map-figure{margin:0;background:#fff;border:1px solid #d5dfe8;border-radius:12px;overflow:hidden}
.site-consolidated .site-contact-map-figure img{display:block;width:100%;height:auto}
.site-consolidated .site-contact-map-figure figcaption{position:static;padding:12px 16px;font-size:13px;line-height:1.6;color:#526273;background:#fff}
.site-consolidated .site-contact-map-figure figcaption a{color:#125585;text-decoration:underline}
.site-consolidated .site-contact-map-details h2{font-size:28px;line-height:1.35;color:#142c43;margin:16px 0 20px}
.site-consolidated .site-contact-map-details address{font-style:normal;font-size:17px;line-height:1.8;color:#263c51;margin-bottom:20px}
.site-consolidated .site-contact-map-link,.site-consolidated #project-contact-us-button{background:#ff214f;border-color:#ff214f;color:#fff}
.site-consolidated .site-contact-map-link:hover,.site-consolidated .site-contact-map-link:focus,.site-consolidated #project-contact-us-button:hover,.site-consolidated #project-contact-us-button:focus{background:transparent;border-color:#ff214f;color:#ff214f}
@media(max-width:991px){.site-consolidated .site-contact-map-details{margin-top:28px}}
@media(max-width:600px){.site-consolidated .site-contact-map{padding:40px 0}.site-consolidated .site-contact-map-figure img{height:390px;object-fit:cover}.site-consolidated .site-contact-map-link{white-space:normal}}

/* Issue 4410: one left-aligned column for the Parliamone introduction and form. */
.site-consolidated .ai-contact-grid{display:block;text-align:left}
.site-consolidated .ai-contact-grid::before,.site-consolidated .ai-contact-grid::after{display:none;content:none}
.site-consolidated .ai-contact-grid>aside,.site-consolidated .ai-contact-grid>.ai-form-panel{max-width:820px;margin-left:0;margin-right:auto;text-align:left}
.site-consolidated .ai-contact-grid>aside{display:block;padding-left:35px;padding-right:35px}
.site-consolidated .ai-contact-grid>.ai-form-panel{margin-top:35px}
@media(max-width:767px){.site-consolidated .ai-contact-grid>aside{padding-left:21px;padding-right:21px}}

/* Issue 4409: article text stays within the viewport; wide tables scroll inside it. */
.site-consolidated .site-article-column{display:block;min-width:0}
@media(max-width:991px){.site-consolidated .site-article-column{float:none}}
.site-consolidated .site-article-column>.blogbody{width:100%;max-width:100%;min-width:0}
.site-consolidated .site-article-column .table-wrap,.site-consolidated .site-article-column .site-table-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}
.site-consolidated .site-article-column .site-table-scroll[role=region]::before{content:"Scorri per leggere tutte le colonne";display:block;padding:8px 0;font-size:13px;line-height:1.6;color:#526273}

.site-consolidated .site-article-column .site-table-scroll:focus-visible{outline:3px solid #125c8e;outline-offset:3px}

/* Issue 4406: homepage CTA states and circular, centred footer social icons. */
.site-consolidated .btn.site-home-contact,.site-consolidated .btn.site-home-contact:visited,.site-consolidated .btn.site-home-contact:hover,.site-consolidated .btn.site-home-contact:focus,.site-consolidated .btn.site-home-contact:active{background:#223242;border-color:#223242;color:#fff!important;text-decoration:none!important;max-width:100%;white-space:normal}
.site-consolidated .btn.site-home-services,.site-consolidated .btn.site-home-services:visited,.site-consolidated .btn.site-home-services:hover,.site-consolidated .btn.site-home-services:focus,.site-consolidated .btn.site-home-services:active{background:#f76000!important;border-color:#f76000!important;color:#fff!important;text-decoration:none!important;font-weight:700;max-width:100%;white-space:normal}
.site-consolidated footer .social-icon-style-2 li>a{display:inline-flex;align-items:center;justify-content:center;width:45px;height:45px;min-width:45px;min-height:45px;padding:0;line-height:1;border-radius:50%;vertical-align:middle;text-decoration:none}
.site-consolidated footer .social-icon-style-2 li>a>i{display:block;flex:0 0 auto;font-size:24px;line-height:1}
.site-consolidated footer .social-icon-style-2 li>a>span:empty{display:none}

/* Issue 4414: service prose, CTA states, phase headings and project alignment. */
.site-consolidated .site-service-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center}
.site-consolidated .site-service-intro>div{min-width:0}
.site-consolidated .site-service-image img{display:block;max-width:100%;height:auto;margin:auto}
.site-consolidated .site-service-description .custom-blogbody{font-size:17px;line-height:1.8}
.site-consolidated .site-service-page b,.site-consolidated .site-service-page strong{font-weight:700}
.site-consolidated .site-service-page .btn.site-service-contact,.site-consolidated .site-service-page .btn.site-service-contact:visited,.site-consolidated .site-service-page .btn.site-service-contact:hover,.site-consolidated .site-service-page .btn.site-service-contact:focus,.site-consolidated .site-service-page .btn.site-service-contact:active{display:inline-block;background:#223242;border:2px solid #223242;color:#fff!important;text-decoration:none!important;white-space:normal;max-width:100%;line-height:1.6;clear:both}
.site-consolidated .site-service-page .customblock-section h2,.site-consolidated .site-service-page .ai-related h2{font-family:Roboto,Arial,sans-serif!important;font-size:28px!important;line-height:1.35!important;font-weight:600;color:#142c43;margin-bottom:20px}
.site-consolidated .site-service-page .customblock-section h3,.site-consolidated .site-service-page .ai-related h3{font-family:Roboto,Arial,sans-serif!important;font-size:22px!important;line-height:1.4!important;font-weight:600;color:#142c43;margin-bottom:16px}
.site-consolidated .site-service-page .customblock-section img{max-width:100%;height:auto}
.site-consolidated .site-service-page .site-project-content h3{min-height:4.05em}
@media(max-width:991px){.site-consolidated .site-service-intro{grid-template-columns:minmax(0,1fr)}.site-consolidated .site-service-image{max-width:560px;margin:auto}.site-consolidated .site-service-page .customblock-section h2,.site-consolidated .site-service-page .ai-related h2{font-size:25px!important}}
