/* Brand refresh and image-led components */
.brand{display:flex;align-items:center;gap:0}
.brand img{width:250px;height:auto;max-height:64px;object-fit:contain;object-position:left center}
nav{gap:21px}
nav a{font-size:.7rem;letter-spacing:.09em}
.service-grid.photo-services{gap:18px;background:transparent}
.photo-services .service{padding:0 0 28px;background:#122d51;min-height:0;overflow:hidden}
.photo-services .service img{height:210px;object-fit:cover}
.photo-services .service h3,.photo-services .service p,.photo-services .service .btn{margin-left:28px;margin-right:28px}
.photo-services .service h3{margin-top:25px}
.photo-services .service .btn{margin-top:12px}
.slider-section{padding:110px 0;background:var(--paper);overflow:hidden}
.slider-head{display:flex;align-items:end;justify-content:space-between;gap:30px}
.slider-controls{display:flex;gap:10px;margin-bottom:28px}
.slider-arrow{width:54px;height:54px;border:1px solid var(--navy);background:transparent;color:var(--navy);font-size:1.5rem;cursor:pointer;transition:.25s}
.slider-arrow:hover{background:var(--navy);color:white}
.photo-slider{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}
.photo-slider::-webkit-scrollbar{display:none}
.slide{flex:0 0 min(78vw,880px);height:540px;position:relative;overflow:hidden;scroll-snap-align:start;background:#ccd4df}
.slide img{height:100%;object-fit:cover;transition:transform .6s}
.slide:hover img{transform:scale(1.025)}
.slide .project-caption{padding:100px 36px 32px}
.stats.stats-four{grid-template-columns:repeat(4,1fr)}
.stats.stats-four .stat strong{font-size:clamp(1.45rem,2.4vw,2.3rem)}
.language-switcher{position:fixed;z-index:70;top:96px;right:22px;font-family:Arial,Helvetica,sans-serif}
.language-trigger{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid rgba(23,52,93,.24);border-radius:50%;background:rgba(255,255,255,.96);color:var(--navy);box-shadow:0 8px 26px rgba(13,29,53,.12);cursor:pointer;transition:transform .2s,box-shadow .2s}
.language-trigger:hover{transform:translateY(-2px);box-shadow:0 11px 28px rgba(13,29,53,.18)}
.language-menu{position:absolute;right:0;top:calc(100% + 7px);min-width:176px;padding:7px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px rgba(13,29,53,.16)}
.language-menu[hidden]{display:none}
.language-option{display:flex;width:100%;align-items:center;gap:10px;padding:10px;border:0;background:transparent;color:var(--ink);font-size:.9rem;text-align:left;cursor:pointer}
.language-option:hover,.language-option:focus-visible{background:#edf1f6}
.language-option[aria-pressed="true"]{background:var(--navy);color:#fff}
.flag-icon{display:inline-block;flex:0 0 auto;width:30px;height:20px;border:1px solid rgba(13,29,53,.2);box-shadow:0 1px 2px rgba(0,0,0,.13)}
.flag-it{background:linear-gradient(90deg,#009246 0 33.333%,#fff 33.333% 66.666%,#ce2b37 66.666%)}
.flag-ae{background:linear-gradient(90deg,#d90012 0 25%,transparent 25%),linear-gradient(#00732f 0 33.333%,#fff 33.333% 66.666%,#000 66.666%)}
.flag-gb{background:linear-gradient(90deg,transparent 44%,#fff 44% 56%,transparent 56%),linear-gradient(transparent 38%,#fff 38% 62%,transparent 62%),linear-gradient(90deg,transparent 47%,#c8102e 47% 53%,transparent 53%),linear-gradient(transparent 44%,#c8102e 44% 56%,transparent 56%),linear-gradient(33deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),linear-gradient(-33deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),#012169}
.cookie-banner{position:fixed;z-index:80;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;max-width:1180px;margin:auto;padding:22px 24px;background:#0d1d35;color:#fff;box-shadow:0 18px 52px rgba(0,0,0,.26)}
.cookie-banner[hidden]{display:none}
.cookie-copy strong{display:block;margin-bottom:5px;font-size:1.05rem}
.cookie-copy p{margin:0;color:#d9e0eb;font-size:.9rem}
.cookie-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.cookie-btn,.cookie-link,.cookie-settings{border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;padding:10px 13px;text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:700;cursor:pointer}
.cookie-btn.primary{background:#fff;color:var(--navy);border-color:#fff}
.cookie-link{display:inline-flex;margin:0}
.cookie-settings{position:fixed;z-index:60;left:14px;bottom:14px;background:#0d1d35;border-color:#0d1d35;box-shadow:0 7px 22px rgba(0,0,0,.18)}
.cookie-settings[hidden]{display:none}
html[dir="rtl"] body{text-align:right}
html[dir="rtl"] .language-switcher{right:auto;left:22px}
html[dir="rtl"] .language-menu{right:auto;left:0}
html[dir="rtl"] .language-option{text-align:right}
html[dir="rtl"] .cookie-settings{left:auto;right:14px}
.whatsapp-pending{display:inline-flex!important;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.4);padding:13px 16px;margin-top:12px!important;color:#fff;opacity:.78}
.whatsapp-dot{width:11px;height:11px;border-radius:50%;background:#25d366}
.back-row{margin-top:50px}
.career-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px}
.career-card{padding:35px;border:1px solid var(--line);min-height:230px}
.career-card h3{color:var(--navy);font-size:1.5rem}
.category-detail{padding:105px 0;scroll-margin-top:82px}
.category-detail.alt{background:var(--paper)}
.category-intro{display:grid;grid-template-columns:1fr 1.08fr;gap:70px;align-items:center}
.category-intro img{height:390px;object-fit:cover}
.category-copy .section-title{font-size:clamp(2.5rem,4.5vw,4.7rem)}
.category-copy .lead{margin-bottom:0}
.category-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}
.category-card{padding:34px 30px;border-top:4px solid var(--slate);background:#fff;box-shadow:0 12px 35px rgba(13,29,53,.08)}
.category-detail:not(.alt) .category-card{background:var(--paper)}
.category-card h3{margin:0 0 15px;color:var(--navy);font-size:1.45rem}
.category-card p{margin:0;color:#4f596d}
.service-overview{padding:105px 0}
.service-overview-grid{display:grid;gap:70px}
.service-overview-card{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}
.service-overview-card.reverse img{order:2}
.service-overview-card img{height:430px;object-fit:cover}
.service-overview-card h2{font-size:clamp(2rem,3.8vw,3.7rem);line-height:1;margin:12px 0 22px;color:var(--navy)}
.service-overview-card p{font-size:1.08rem;color:#4f596d}
.detail-hero{min-height:78vh;padding:190px 0 105px;display:flex;align-items:flex-end;position:relative;color:#fff;background-position:center;background-size:cover}
.detail-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,58,.88),rgba(10,30,58,.24))}
.detail-hero>.wrap{position:relative}
.detail-hero .eyebrow{color:#d5def0}
.detail-hero h1{max-width:1000px;font-size:clamp(3.1rem,6.4vw,6.8rem);line-height:.92;letter-spacing:-.05em;margin:15px 0 26px}
.detail-hero .lead{max-width:760px;color:#fff}
.construction-hero{background-image:url('pagina-costruzioni-cantiere.png')}
.redevelopment-hero{background-image:url('pagina-riqualificazione-energetica.png')}
.development-hero{background-image:url('pagina-sviluppo-complesso.png')}
.detail-heading{max-width:860px}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.detail-process .detail-grid{background:rgba(255,255,255,.18);gap:1px}
.detail-process .detail-grid article{padding:34px 30px;background:var(--navy)}
.detail-process h3{font-size:1.4rem;margin:0 0 14px}
.detail-process p{margin:0;color:#d9e0eb}
.detail-gallery{padding:105px 0;background:var(--paper)}
.detail-gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:430px;gap:18px;margin-top:45px}
.detail-gallery-grid figure{margin:0;position:relative;overflow:hidden;background:#d7dce3}
.detail-gallery-grid img{height:100%;object-fit:cover;transition:transform .55s}
.detail-gallery-grid figure:hover img{transform:scale(1.025)}
.detail-gallery-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:55px 24px 22px;color:#fff;font-weight:700;background:linear-gradient(transparent,rgba(10,24,44,.88))}
.page-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
.footer .brand{background:white;padding:12px 15px;width:max-content}
.footer .brand img{width:220px}
@media(max-width:1050px){nav{gap:14px}.brand img{width:205px}nav a{font-size:.64rem}}
@media(max-width:800px){.brand img{width:205px;max-height:54px}.slider-head{align-items:flex-start;flex-direction:column}.slider-controls{margin-bottom:18px}.slide{flex-basis:88vw;height:420px}.career-grid{grid-template-columns:1fr}.photo-services .service img{height:240px}.stats.stats-four{grid-template-columns:1fr}.language-switcher{top:78px;right:14px}html[dir="rtl"] .language-switcher{right:auto;left:14px}.cookie-banner{left:10px;right:10px;bottom:10px;grid-template-columns:1fr;padding:18px}.cookie-actions{justify-content:flex-start}.category-detail{padding:75px 0}.category-intro,.category-cards{grid-template-columns:1fr}.category-intro{gap:34px}.category-intro img{height:280px}.category-cards{margin-top:32px}.service-overview-card{grid-template-columns:1fr;gap:25px}.service-overview-card.reverse img{order:0}.service-overview-card img{height:280px}.detail-hero{min-height:70vh;padding:150px 0 75px}.detail-grid,.detail-gallery-grid{grid-template-columns:1fr}.detail-gallery-grid{grid-auto-rows:310px}.detail-gallery{padding:75px 0}}
