:root{
  --bg:#070707;--panel:#0d0d0d;--paper:#efeee8;--text:#f2f2ee;--ink:#0b0b0b;
  --muted:#a1a19a;--line:rgba(255,255,255,.16);--accent:#00a600;
  --pad:clamp(20px,4.4vw,72px);--section-y:clamp(88px,8vw,132px);
  --xs:clamp(.66rem,.62rem + .12vw,.74rem);--sm:clamp(.78rem,.74rem + .14vw,.88rem);
  --body:clamp(.98rem,.94rem + .16vw,1.08rem);--lead:clamp(1.32rem,1.08rem + .9vw,2.05rem);
  --h2:clamp(2.65rem,5.1vw,5.9rem);--hero:clamp(4rem,8.9vw,9.2rem);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:var(--body);line-height:1.58;overflow-x:hidden}body.menu-open,body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}::selection{background:var(--accent);color:#000}
.skip-link{position:fixed;left:16px;top:-60px;z-index:200;background:#fff;color:#000;padding:12px}.skip-link:focus{top:16px}.noise{position:fixed;inset:0;pointer-events:none;z-index:150;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.cursor{position:fixed;width:16px;height:16px;border:1px solid #fff;border-radius:50%;pointer-events:none;z-index:160;transform:translate(-50%,-50%);transition:.2s;mix-blend-mode:difference}.cursor.active{width:50px;height:50px;background:#fff}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:76px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#070707e8,transparent)}.brand img{width:48px;height:48px;object-fit:cover;border-radius:50%}.header-side{display:flex;align-items:center;gap:34px}.availability,.menu-toggle,.hero-topline,.kicker,.eyebrow,.section-index,.project-info b,.project-info small,.service-list span,.contact-top,footer,.modal-category{font-size:var(--xs);text-transform:uppercase;letter-spacing:.12em}.availability{color:#b7b7b0}.availability i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px;box-shadow:0 0 0 5px rgba(0,166,0,.12)}.menu-toggle{position:relative;z-index:102;border:0;border-bottom:1px solid #777;padding:6px 0;background:none;color:#fff;cursor:pointer}.main-nav{position:fixed;inset:0;z-index:101;background:var(--accent);color:#000;padding:110px var(--pad) 64px;display:flex;flex-direction:column;justify-content:center;transform:translateY(-102%);transition:transform .6s cubic-bezier(.76,0,.24,1)}.main-nav.open{transform:none}.main-nav a{font-size:clamp(2.7rem,5.8vw,6.3rem);font-weight:700;letter-spacing:-.06em;line-height:.98;border-bottom:1px solid rgba(0,0,0,.25);padding:12px 0}.main-nav a span{font-size:var(--xs);letter-spacing:.08em;margin-right:24px;vertical-align:middle}
.hero{min-height:100svh;padding:106px var(--pad) 30px;display:flex;flex-direction:column;justify-content:space-between;gap:56px}.hero-topline,.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end}.hero-topline{color:#777}.kicker,.eyebrow{color:var(--accent);margin:0 0 20px}.hero-title{max-width:1320px}.hero-title h1{font-size:var(--hero);line-height:.94;letter-spacing:-.068em;margin:0;font-weight:700}.hero-title h1 em{font-family:Georgia,serif;font-weight:400}.hero-copy{font-size:clamp(1.06rem,1.18vw,1.28rem);line-height:1.58;max-width:690px;color:#b8b8b1;margin:clamp(30px,3.2vw,50px) 0 0}.hero-bottom--cta{justify-content:flex-end}.circle-link{width:126px;height:126px;border:1px solid #777;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:14px;text-transform:uppercase;font-size:var(--xs);letter-spacing:.08em;transition:.3s;flex:0 0 auto}.circle-link b{font-size:1.3rem;font-weight:400}.circle-link:hover{background:var(--accent);border-color:var(--accent);color:#000;transform:rotate(-7deg)}
.marquee{overflow:hidden;background:var(--accent);color:#000;display:flex;white-space:nowrap;padding:10px 0;font-size:var(--xs);font-weight:700;letter-spacing:.14em}.marquee div{animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-100%)}}
.section{position:relative;padding:var(--section-y) var(--pad)}.section-index{color:var(--accent)}.about{background:var(--paper);color:var(--ink)}.about .section-index{position:absolute;top:calc(var(--section-y) + 5px);right:var(--pad)}.about-intro h2,.projects-head h2,.services-title h2{font-size:var(--h2);line-height:.95;letter-spacing:-.055em;margin:0}.about-intro h2 span{font-family:Georgia,serif;font-weight:400}.about-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(46px,7vw,112px);align-items:start;margin-top:clamp(58px,6vw,88px)}.portrait{margin:0;position:sticky;top:100px}.portrait figcaption{margin-top:13px;font-size:var(--xs);line-height:1.45;text-transform:uppercase;letter-spacing:.08em;color:#575757}.about-copy{padding-top:clamp(0px,2.5vw,34px)}.about-copy p{font-size:var(--body);line-height:1.68;max-width:700px;margin:0 0 1.15em}.about-copy .lead{font-size:var(--lead);line-height:1.2;letter-spacing:-.032em;max-width:760px;margin-bottom:1.15em}.about-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:34px}.about-actions a{border-bottom:2px solid var(--accent);padding-bottom:4px;font-size:var(--sm);font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(68px,7vw,96px);border-top:1px solid #aaa}.stats div{position:relative;padding:clamp(24px,2.1vw,34px) clamp(24px,2.4vw,42px) clamp(14px,1.4vw,24px) 0;min-height:124px}.stats div:not(:last-child)::after{content:"";position:absolute;top:0;right:0;width:1px;height:86px;background:#aaa}.stats strong{display:block;font-size:clamp(1.22rem,1.5vw,1.55rem);line-height:1.12;margin-bottom:12px}.stats span{display:block;max-width:220px;font-size:var(--xs);line-height:1.5;color:#555;text-transform:uppercase;letter-spacing:.075em}
.projects{padding-bottom:clamp(108px,9vw,150px)}.projects-head{display:grid;grid-template-columns:minmax(150px,.33fr) minmax(0,1.67fr);gap:38px;align-items:start;margin-bottom:clamp(58px,6vw,82px)}.projects-head .eyebrow{margin-top:16px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(60px,6vw,82px) 26px}.project-wide{grid-column:span 2}.project-open{display:block;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.project-image{aspect-ratio:4/5}.project-wide .project-image{aspect-ratio:16/8.5}.project-info{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:16px;align-items:end;padding:14px 0;border-bottom:1px solid var(--line)}.project-info b,.project-info small{font-weight:400;color:#777}.project-info strong{display:block;font-size:clamp(1.35rem,2vw,2.3rem);line-height:1.05;letter-spacing:-.038em;margin-top:6px}.project-info i{font-style:normal;font-size:1.12rem}
.media-placeholder{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#151515,#242424);color:#777;border:1px solid rgba(255,255,255,.1)}.media-placeholder::before,.media-placeholder::after{content:"";position:absolute;background:rgba(255,255,255,.08)}.media-placeholder::before{width:140%;height:1px;transform:rotate(32deg)}.media-placeholder::after{width:140%;height:1px;transform:rotate(-32deg)}.media-placeholder>span,.media-placeholder>small{position:relative;z-index:1;text-transform:uppercase;letter-spacing:.14em}.media-placeholder>span{font-size:var(--sm);color:#aaa}.media-placeholder>small{font-size:var(--xs);margin-top:6px;color:#666}.portrait-placeholder{aspect-ratio:4/5;background:linear-gradient(135deg,#d8d7d1,#c8c7c1);color:#666;border-color:rgba(0,0,0,.12)}.portrait-placeholder::before,.portrait-placeholder::after{background:rgba(0,0,0,.09)}.portrait-placeholder>span{color:#555}.portrait-placeholder>small{color:#777}.project-open:hover .media-placeholder{background:linear-gradient(135deg,#191919,#292929)}
.services{background:var(--panel)}.services-title{max-width:980px}.services-title .section-index{display:block;margin-bottom:24px}.service-list{margin-top:clamp(58px,6vw,82px)}.service-list>div{display:grid;grid-template-columns:48px minmax(240px,.8fr) minmax(280px,1fr);gap:24px;border-top:1px solid var(--line);padding:25px 0}.service-list>div:last-child{border-bottom:1px solid var(--line)}.service-list span{color:var(--accent)}.service-list h3{font-size:clamp(1.34rem,1.85vw,2.08rem);line-height:1.15;letter-spacing:-.035em;margin:0}.service-list p{margin:0;color:#999;max-width:580px;font-size:var(--body);line-height:1.55}
.contact{min-height:82vh;padding:82px var(--pad) 38px;display:flex;flex-direction:column;justify-content:space-between;background:var(--accent);color:#000}.contact-top{display:flex;justify-content:space-between}.contact .section-index{color:#000}.contact h2{font-size:clamp(3.65rem,8.2vw,8.5rem);line-height:.84;letter-spacing:-.07em;margin:58px 0}.contact h2 a{font-family:Georgia,serif;font-weight:400;border-bottom:.07em solid #000}.contact-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid rgba(0,0,0,.4);padding-top:18px}.contact-bottom div{display:flex;flex-direction:column;gap:4px}.contact-bottom span{font-size:var(--xs);text-transform:uppercase;letter-spacing:.1em;opacity:.65}.contact-bottom a{font-size:var(--body)}.contact-bottom div:last-child{align-items:flex-end}footer{padding:22px var(--pad);display:flex;justify-content:space-between;color:#777}
.project-modal{width:min(1040px,94vw);max-height:90vh;padding:0;border:0;background:#111;color:#fff;box-shadow:0 30px 100px #000}.project-modal::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(8px)}.modal-close{position:absolute;right:24px;top:24px;display:flex;align-items:center;justify-content:center;z-index:20;width:52px;height:52px;padding:0;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(12,12,12,.96);backdrop-filter:blur(8px);color:#fff;font-size:28px;line-height:1;font-family:inherit;cursor:pointer;transition:all .25s ease}.modal-close:hover{border-color:var(--accent);color:var(--accent);transform:scale(1.06)}.modal-image{height:min(54vh,540px)}.modal-copy{padding:28px 32px 36px}.modal-category{color:var(--accent)}.modal-copy h2{font-size:clamp(2.05rem,4vw,4.1rem);letter-spacing:-.052em;line-height:.98;margin:8px 0 16px}.modal-description{color:#aaa;max-width:730px;font-size:var(--body);line-height:1.6}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.cursor{display:none}.availability{display:none}.site-header{height:68px}.brand img{width:44px;height:44px}.hero{padding-top:92px;min-height:94svh;gap:44px}.hero-title h1{font-size:clamp(3.6rem,14.2vw,6.8rem);line-height:.96}.hero-bottom{gap:24px}.circle-link{width:98px;height:98px}.circle-link b{display:none}.section{padding-top:80px;padding-bottom:80px}.about .section-index{top:85px}.about-layout,.projects-head{grid-template-columns:1fr}.about-layout{margin-top:50px}.portrait{position:relative;top:auto;max-width:540px}.about-copy{padding-top:0}.stats{grid-template-columns:repeat(2,1fr);margin-top:66px}.stats div:nth-child(2)::after{display:none}.project-grid{gap:62px 14px}.service-list>div{grid-template-columns:34px 1fr}.service-list p{grid-column:2}.contact{min-height:76vh;padding-top:72px}.contact-bottom{grid-template-columns:1fr;gap:20px}.contact-bottom div:last-child{align-items:flex-start}footer{gap:12px;flex-direction:column}.modal-image{height:48vh}}
@media(max-width:560px){:root{--pad:20px}.hero{min-height:90svh;padding-top:84px;padding-bottom:22px;gap:34px}.hero-topline span:last-child{display:none}.hero-title h1{font-size:clamp(3.1rem,15.4vw,5rem);line-height:.98;letter-spacing:-.058em}.kicker{margin-bottom:16px}.hero-bottom{align-items:flex-end;gap:16px}.hero-copy{max-width:100%;font-size:.95rem;line-height:1.56;margin-top:24px}.circle-link{width:86px;height:86px;font-size:.6rem}.marquee{padding:8px 0}.section{padding-top:68px;padding-bottom:68px}.about .section-index{top:73px}.about-intro h2,.projects-head h2,.services-title h2{font-size:clamp(2.3rem,11vw,3.7rem);line-height:.99}.about-layout{margin-top:40px}.about-copy .lead{font-size:clamp(1.3rem,6vw,1.76rem)}.about-copy p{font-size:.96rem;line-height:1.58}.stats{margin-top:52px}.stats div{min-height:104px;padding:20px 20px 14px 0}.stats div:not(:last-child)::after{height:72px}.stats strong{font-size:1.16rem;margin-bottom:9px}.project-grid{grid-template-columns:1fr;gap:50px}.project-wide{grid-column:auto}.project-image,.project-wide .project-image{aspect-ratio:4/5}.project-info{grid-template-columns:26px minmax(0,1fr) auto;gap:9px;padding:12px 0}.project-info strong{font-size:clamp(1.28rem,5.8vw,1.65rem)}.project-info b,.project-info small{font-size:.6rem}.service-list{margin-top:48px}.service-list>div{padding:21px 0;gap:14px}.service-list h3{font-size:1.34rem}.service-list p{font-size:.94rem}.contact{min-height:70vh;padding-top:66px;padding-bottom:32px}.contact h2{font-size:clamp(2.9rem,13.8vw,4.4rem);line-height:.87;margin:42px 0}.contact-bottom a{font-size:.95rem}.main-nav a{font-size:12vw}.modal-copy{padding:24px 20px 30px}footer{font-size:.61rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee div{animation:none}.main-nav{transition:none}}

/* V5: elementi rimossi su richiesta */
.hero-topline--single{justify-content:flex-end}

/* V6: rifinitura hero e indicatori profilo */
.hero-title h1{
  line-height:.94;
}
.hero-title h1 br{
  content:"";
  display:block;
  margin-bottom:.13em;
}
.hero-title .hero-copy{
  margin-top:clamp(30px,3.1vw,48px);
  max-width:720px;
}
.hero-bottom--cta{
  justify-content:flex-end;
}
.stats{
  grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:clamp(48px,5vw,88px);
  align-items:start;
  margin-top:clamp(78px,8vw,112px);
  border-top:1px solid #aaa;
}
.stats div{
  position:relative;
  min-height:128px;
  padding:clamp(30px,2.7vw,42px) 0 clamp(22px,2vw,32px);
  border:0;
}
.stats div + div::before{
  content:"";
  position:absolute;
  left:calc(clamp(48px,5vw,88px) / -2);
  top:clamp(22px,2vw,30px);
  width:1px;
  height:clamp(76px,6vw,96px);
  background:#aaa;
}
.stats strong{
  display:block;
  margin:0 0 14px;
  font-size:clamp(1.28rem,1.55vw,1.65rem);
  line-height:1.08;
}
.stats span{
  display:block;
  max-width:20ch;
  font-size:var(--xs);
  line-height:1.55;
  color:#555;
  text-transform:uppercase;
  letter-spacing:.075em;
}
@media(max-width:900px){
  .hero-title h1{line-height:.96}
  .hero-title h1 br{margin-bottom:.1em}
  .hero-title .hero-copy{margin-top:28px}
  .stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:clamp(38px,6vw,64px);
    row-gap:0;
    margin-top:72px;
  }
  .stats div{min-height:116px;padding:28px 0 24px}
  .stats div + div::before{left:calc(clamp(38px,6vw,64px) / -2);top:22px;height:76px}
  .stats div:nth-child(3)::before{display:none}
  .stats div:nth-child(n+3){border-top:1px solid #aaa}
}
@media(max-width:560px){
  .hero-title h1{line-height:.98}
  .hero-title h1 br{margin-bottom:.08em}
  .hero-title .hero-copy{max-width:100%;margin-top:24px;font-size:.98rem;line-height:1.55}
  .hero-bottom--cta{margin-top:-8px}
  .stats{grid-template-columns:1fr;column-gap:0;margin-top:58px}
  .stats div{min-height:0;padding:22px 0}
  .stats div + div::before{display:none}
  .stats div:nth-child(n+2){border-top:1px solid #aaa}
  .stats span{max-width:none}
}


/* V7.2 — immagini portfolio e galleria popup */
.portrait-image{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;background:#d2d1cb}
.project-image{display:block;width:100%;height:auto;object-fit:cover;background:#181818;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s ease}
.project-card:not(.project-wide) .project-image{aspect-ratio:4/5}
.project-wide .project-image{aspect-ratio:16/8.5}
.project-open{overflow:hidden}
.project-open:hover .project-image{transform:scale(1.018);filter:brightness(.9)}
.project-modal{overflow:auto}
.modal-gallery{display:grid;grid-template-columns:1fr;gap:2px;background:#090909}
.modal-gallery img{display:block;width:100%;height:auto;max-height:72vh;object-fit:cover;background:#171717}
.modal-gallery img:first-child{max-height:none;aspect-ratio:16/9}
.modal-empty{min-height:420px;display:flex;align-items:center;justify-content:center;color:#777;text-transform:uppercase;letter-spacing:.12em;font-size:var(--xs);background:linear-gradient(135deg,#151515,#242424)}
.modal-close{line-height:0}
@media(max-width:560px){
 .project-card:not(.project-wide) .project-image,.project-wide .project-image{aspect-ratio:4/5}
 .modal-gallery img,.modal-gallery img:first-child{max-height:none;aspect-ratio:auto}
 .modal-close{right:14px;top:14px;width:46px;height:46px;font-size:26px}
}

/* Collegamento landing Healthcare */
.stats .stat-link{display:block;color:inherit;text-decoration:none;position:relative}
.stats .stat-link div{height:100%}
.stats .stat-link:hover strong,.stats .stat-link:hover span{color:var(--accent)}
.stats .stat-link::after{content:"";position:absolute;inset:0}

/* V4 homepage — focus Healthcare e impaginazione lavori */
.healthcare-focus{background:var(--paper);color:var(--ink);overflow:hidden;border-top:1px solid rgba(0,0,0,.12)}
.healthcare-focus__meta{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.22);padding-bottom:18px}
.healthcare-focus__meta .eyebrow{margin:0;color:#555}
.healthcare-focus__content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(56px,8vw,130px);align-items:end;padding:clamp(64px,7vw,108px) 0 clamp(70px,7vw,112px)}
.healthcare-focus__tag{margin:0 0 20px;color:var(--accent);font-size:var(--xs);text-transform:uppercase;letter-spacing:.12em}
.healthcare-focus h2{font-size:clamp(3rem,6vw,7.1rem);line-height:.92;letter-spacing:-.064em;margin:0;max-width:1050px}
.healthcare-focus h2 em{font-family:Georgia,serif;font-weight:400}
.healthcare-focus__body{padding-bottom:.5vw}
.healthcare-focus__body .lead{font-size:clamp(1.35rem,1.8vw,2.05rem);line-height:1.18;letter-spacing:-.035em;margin:0 0 24px}
.healthcare-focus__body>p:not(.lead){font-size:var(--body);line-height:1.65;color:#4d4d4a;margin:0 0 34px}
.healthcare-focus__link{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #111;border-bottom:1px solid #111;padding:18px 0;font-size:var(--sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;transition:.25s}
.healthcare-focus__link b{font-size:1.4rem;font-weight:400;transition:transform .25s}
.healthcare-focus__link:hover{color:var(--accent);padding-left:10px}
.healthcare-focus__link:hover b{transform:translate(4px,-4px)}
.healthcare-focus__pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(0,0,0,.22)}
.healthcare-focus__pillars>div{position:relative;padding:28px 32px 12px 0;min-height:142px}
.healthcare-focus__pillars>div+div{padding-left:32px;border-left:1px solid rgba(0,0,0,.22)}
.healthcare-focus__pillars span{display:block;color:var(--accent);font-size:var(--xs);letter-spacing:.12em;margin-bottom:18px}
.healthcare-focus__pillars strong{display:block;font-size:clamp(1.35rem,1.8vw,2rem);letter-spacing:-.035em;line-height:1.1;margin-bottom:8px}
.healthcare-focus__pillars small{display:block;color:#666;font-size:var(--xs);text-transform:uppercase;letter-spacing:.08em;line-height:1.5}

.projects{padding-top:clamp(102px,9vw,152px)}
.projects-head{grid-template-columns:minmax(170px,.32fr) minmax(0,1.68fr);padding-bottom:clamp(34px,4vw,58px);border-bottom:1px solid var(--line);margin-bottom:clamp(54px,6vw,88px)}
.projects-head>div:first-child{display:flex;flex-direction:column;align-items:flex-start}
.projects-count{display:block;margin-top:auto;padding-top:28px;color:#777;font-size:var(--xs);text-transform:uppercase;letter-spacing:.11em}
.projects-headline{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.42fr);gap:clamp(36px,5vw,80px);align-items:end}
.projects-headline p{margin:0;color:#8f8f89;line-height:1.65;max-width:470px}
.project-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(66px,7vw,108px) clamp(18px,2.2vw,34px);align-items:start}
.project-card{grid-column:span 5}
.project-card:nth-child(2),.project-card:nth-child(5),.project-card:nth-child(8){grid-column:8 / span 5;margin-top:clamp(82px,9vw,150px)}
.project-card.project-wide{grid-column:1 / -1;margin-top:0}
.project-card:nth-child(4){grid-column:1 / span 8}
.project-card:nth-child(7){grid-column:5 / -1}
.project-card:nth-child(4) .project-image,.project-card:nth-child(7) .project-image{aspect-ratio:16/10}
.project-open{overflow:visible}
.project-image{border-radius:0;box-shadow:0 0 0 1px rgba(255,255,255,.04)}
.project-info{position:relative;padding:18px 0 16px;transition:border-color .25s}
.project-info::after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--accent);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.project-open:hover .project-info::after{width:100%}
.project-info strong{font-size:clamp(1.45rem,2.2vw,2.65rem)}
.project-info small{letter-spacing:.1em}
.project-info i{width:38px;height:38px;border:1px solid rgba(255,255,255,.24);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:.25s}
.project-open:hover .project-info i{background:var(--accent);border-color:var(--accent);color:#000;transform:translate(3px,-3px)}

@media(max-width:900px){
 .healthcare-focus__content{grid-template-columns:1fr;gap:42px;padding:60px 0 70px}
 .healthcare-focus__body{max-width:680px}
 .projects-headline{grid-template-columns:1fr;gap:24px}
 .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 16px}
 .project-card,.project-card:nth-child(2),.project-card:nth-child(5),.project-card:nth-child(8),.project-card:nth-child(4),.project-card:nth-child(7){grid-column:auto;margin-top:0}
 .project-card.project-wide{grid-column:1 / -1}
 .project-card:nth-child(even):not(.project-wide){margin-top:70px}
}
@media(max-width:560px){
 .healthcare-focus__meta{align-items:flex-start;gap:20px}
 .healthcare-focus__content{padding:48px 0 54px;gap:36px}
 .healthcare-focus h2{font-size:clamp(2.7rem,13vw,4.5rem);line-height:.95}
 .healthcare-focus__pillars{grid-template-columns:1fr}
 .healthcare-focus__pillars>div{min-height:0;padding:24px 0}
 .healthcare-focus__pillars>div+div{padding-left:0;border-left:0;border-top:1px solid rgba(0,0,0,.22)}
 .projects-head{padding-bottom:32px}
 .projects-count{padding-top:14px}
 .projects-headline p{font-size:.95rem}
 .project-grid{grid-template-columns:1fr;gap:54px}
 .project-card,.project-card:nth-child(even):not(.project-wide),.project-card.project-wide{grid-column:auto;margin-top:0}
 .project-card:nth-child(4) .project-image,.project-card:nth-child(7) .project-image{aspect-ratio:4/5}
 .project-info i{width:34px;height:34px}
}

/* V5 — home art direction e portfolio editoriale */
.hero{position:relative;isolation:isolate}
.hero::after{content:"";position:absolute;left:var(--pad);right:var(--pad);bottom:0;height:1px;background:linear-gradient(90deg,var(--accent),rgba(255,255,255,.15) 38%,rgba(255,255,255,.04));z-index:-1}
.hero-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);column-gap:clamp(36px,7vw,110px);align-items:end}
.hero-title .kicker,.hero-title h1{grid-column:1}
.hero-title .hero-copy{grid-column:2;grid-row:2;align-self:end;margin:0 0 .55em;max-width:420px}
.hero-disciplines{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:clamp(36px,5vw,70px);padding-top:18px;border-top:1px solid rgba(255,255,255,.14)}
.hero-disciplines span{position:relative;color:#888;font-size:var(--xs);letter-spacing:.13em;text-transform:uppercase}
.hero-disciplines span:not(:last-child)::after{content:"";position:absolute;right:-15px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}

.about-intro{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:40px;align-items:start}
.about-intro .eyebrow{padding-top:10px}
.about-intro h2{max-width:1000px}
.stats{border-bottom:1px solid #aaa}
.stats .stat-link{background:rgba(0,166,0,.045);padding-left:22px;margin-left:-22px}
.stats .stat-link::before{content:"Specializzazione";display:block;position:absolute;left:22px;top:-18px;color:var(--accent);font-size:.58rem;letter-spacing:.13em;text-transform:uppercase}

.healthcare-focus{padding-top:clamp(92px,8vw,136px);padding-bottom:clamp(92px,8vw,136px)}
.healthcare-focus__meta{position:relative}
.healthcare-focus__meta::after{content:"";position:absolute;left:0;bottom:-1px;width:clamp(84px,11vw,160px);height:2px;background:var(--accent)}
.healthcare-focus__headline{position:relative}
.healthcare-focus__flag{display:inline-flex;align-items:center;gap:12px;margin-bottom:34px;padding:8px 13px;border:1px solid rgba(0,0,0,.22);border-radius:999px}
.healthcare-focus__flag span,.healthcare-focus__flag b{font-size:.65rem;letter-spacing:.11em;text-transform:uppercase}
.healthcare-focus__flag span{color:#666}.healthcare-focus__flag b{color:var(--accent)}
.healthcare-focus__content{align-items:start}
.healthcare-focus__body{position:sticky;top:112px;padding-top:clamp(66px,8vw,110px)}
.healthcare-focus__pillars{border-bottom:1px solid rgba(0,0,0,.22)}
.healthcare-focus__pillars>div{transition:background .25s,padding-left .25s}
.healthcare-focus__pillars>div:hover{background:rgba(0,166,0,.055);padding-left:18px}
.healthcare-focus__pillars>div+div:hover{padding-left:50px}

.projects{background:#090909}
.projects-head{position:relative}
.projects-head::after{content:"SELECTED / 2026";position:absolute;right:0;top:-4px;color:#5f5f5a;font-size:.62rem;letter-spacing:.14em}
.projects-headline>div:first-child{min-width:0}
.projects-filterline{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.projects-filterline span{border:1px solid rgba(255,255,255,.17);border-radius:999px;padding:7px 11px;color:#aaa;font-size:.61rem;letter-spacing:.1em;text-transform:uppercase}
.project-grid{counter-reset:work}
.project-card{counter-increment:work;position:relative}
.project-card::before{content:"0" counter(work);position:absolute;z-index:2;left:14px;top:14px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:rgba(7,7,7,.86);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:.62rem;letter-spacing:.1em}
.project-open{position:relative}
.project-open::after{content:"View case";position:absolute;right:14px;top:14px;z-index:2;padding:9px 12px;border-radius:999px;background:var(--accent);color:#000;font-size:.58rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;opacity:0;transform:translateY(-7px);transition:.3s}
.project-open:hover::after{opacity:1;transform:none}
.project-image{transition:transform .85s cubic-bezier(.2,.8,.2,1),filter .5s ease;filter:saturate(.92) contrast(1.02)}
.project-open:hover .project-image{transform:scale(1.025);filter:saturate(1) brightness(.82)}
.project-info{grid-template-columns:48px minmax(0,1fr) 42px;gap:18px;padding-top:22px}
.project-info>b{font-size:.68rem;color:var(--accent)}
.project-info small{margin-bottom:7px}
.project-info strong{line-height:.98}
.project-card:nth-child(4) .project-info,.project-card:nth-child(7) .project-info{padding-right:clamp(0px,8vw,120px)}

.project-modal{width:min(1220px,96vw);background:#0b0b0b;border:1px solid rgba(255,255,255,.08)}
.modal-copy{display:grid;grid-template-columns:minmax(150px,.3fr) minmax(0,1.7fr);gap:30px;padding:36px clamp(24px,4vw,58px) 48px}
.modal-category{grid-column:1;color:var(--accent);padding-top:11px}
.modal-copy h2,.modal-description{grid-column:2}
.modal-copy h2{margin:0 0 18px}.modal-description{margin:0}
.modal-gallery{padding:2px}
.modal-gallery img{border-bottom:2px solid #0b0b0b}

@media(max-width:900px){
 .hero-title{grid-template-columns:1fr}
 .hero-title .kicker,.hero-title h1,.hero-title .hero-copy{grid-column:1;grid-row:auto}
 .hero-title .hero-copy{margin-top:30px;max-width:650px}
 .about-intro{grid-template-columns:1fr;gap:10px}
 .healthcare-focus__body{position:relative;top:auto;padding-top:0}
 .healthcare-focus__pillars>div:hover,.healthcare-focus__pillars>div+div:hover{padding-left:16px}
 .modal-copy{grid-template-columns:1fr;gap:8px}
 .modal-category,.modal-copy h2,.modal-description{grid-column:1}
}
@media(max-width:560px){
 .hero-disciplines{gap:9px 19px;margin-top:32px}
 .hero-disciplines span:not(:last-child)::after{right:-11px}
 .stats .stat-link{margin-left:0;padding-left:0;background:transparent}
 .stats .stat-link::before{left:0;top:5px}
 .healthcare-focus__flag{margin-bottom:24px}
 .projects-head::after{display:none}
 .projects-filterline{margin-top:20px}
 .project-card::before{width:36px;height:36px;left:10px;top:10px}
 .project-open::after{display:none}
 .project-info{grid-template-columns:30px minmax(0,1fr) 34px;gap:10px}
 .modal-copy{padding:26px 20px 34px}
}

/* V6 — portfolio compatto e bilanciato */
@media (min-width: 901px){
  .project-grid{
    grid-template-columns:repeat(12,minmax(0,1fr));
    column-gap:clamp(20px,2.4vw,38px);
    row-gap:clamp(58px,6vw,92px);
    align-items:start;
  }
  .project-card,
  .project-card.project-wide,
  .project-card:nth-child(2),
  .project-card:nth-child(3),
  .project-card:nth-child(4),
  .project-card:nth-child(5),
  .project-card:nth-child(6),
  .project-card:nth-child(7),
  .project-card:nth-child(8){margin-top:0}

  .project-card:nth-child(1),
  .project-card:nth-child(4){grid-column:1 / -1}

  .project-card:nth-child(2),
  .project-card:nth-child(5),
  .project-card:nth-child(7){grid-column:1 / span 6}

  .project-card:nth-child(3),
  .project-card:nth-child(6),
  .project-card:nth-child(8){grid-column:7 / span 6}

  .project-card:nth-child(1) .project-image,
  .project-card:nth-child(4) .project-image{aspect-ratio:16 / 8.3}

  .project-card:nth-child(2) .project-image,
  .project-card:nth-child(3) .project-image,
  .project-card:nth-child(5) .project-image,
  .project-card:nth-child(6) .project-image,
  .project-card:nth-child(7) .project-image,
  .project-card:nth-child(8) .project-image{aspect-ratio:4 / 3}

  .project-card:nth-child(4) .project-info,
  .project-card:nth-child(7) .project-info{padding-right:0}
}

@media (min-width: 561px) and (max-width: 900px){
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 18px}
  .project-card,
  .project-card.project-wide,
  .project-card:nth-child(even):not(.project-wide){grid-column:auto;margin-top:0}
  .project-card:nth-child(1),
  .project-card:nth-child(4){grid-column:1 / -1}
  .project-card:nth-child(1) .project-image,
  .project-card:nth-child(4) .project-image{aspect-ratio:16 / 9}
  .project-card:not(:nth-child(1)):not(:nth-child(4)) .project-image{aspect-ratio:4 / 3}
}

/* V7 — mobile-first refinement */
@media (max-width: 760px){
  :root{
    --pad: clamp(18px,5.2vw,24px);
    --section-y: clamp(64px,17vw,88px);
  }
  html{scroll-padding-top:72px}
  body{font-size:1rem;line-height:1.55;-webkit-text-size-adjust:100%}
  .noise{opacity:.015}
  .site-header{height:68px;padding-inline:var(--pad);background:linear-gradient(180deg,rgba(7,7,7,.96) 0%,rgba(7,7,7,.72) 58%,transparent 100%)}
  .brand img{width:42px;height:42px}
  .menu-toggle{min-width:52px;min-height:44px;padding:10px 0;text-align:right;border-bottom:0}
  .menu-toggle::after{content:"";display:block;width:100%;height:1px;background:#777;margin-top:4px}
  .main-nav{padding:88px var(--pad) 28px;justify-content:flex-start;overflow-y:auto}
  .main-nav a{display:grid;grid-template-columns:34px 1fr;align-items:center;min-height:74px;padding:12px 0;font-size:clamp(2.15rem,10vw,3.8rem);line-height:.92;letter-spacing:-.055em}
  .main-nav a span{margin-right:0;font-size:.66rem;align-self:center}

  .hero{min-height:auto;padding:96px var(--pad) 34px;gap:34px}
  .hero-topline{display:none}
  .hero-title{max-width:none}
  .hero-title h1{font-size:clamp(3.15rem,15.2vw,5.2rem);line-height:.93;letter-spacing:-.061em;text-wrap:balance}
  .hero-title h1 br{margin-bottom:.08em}
  .hero-title .hero-copy{font-size:1rem;line-height:1.52;margin-top:24px;max-width:38ch;color:#bebeb7}
  .hero-bottom--cta{justify-content:flex-start;margin-top:2px}
  .circle-link{width:auto;height:auto;min-height:48px;border-radius:999px;padding:13px 18px;gap:10px;font-size:.65rem}
  .circle-link b{display:inline;font-size:1rem}
  .circle-link:hover{transform:none}
  .marquee{padding:8px 0;font-size:.61rem}

  .section{padding-inline:var(--pad)}
  .section-index{font-size:.65rem}
  .about .section-index{position:static;display:block;margin-bottom:18px}
  .about-intro h2,.projects-head h2,.services-title h2{font-size:clamp(2.45rem,11.2vw,4rem);line-height:.96;letter-spacing:-.052em}
  .about-layout{display:flex;flex-direction:column;gap:34px;margin-top:38px}
  .portrait{order:1;width:100%;max-width:none}
  .portrait-image{aspect-ratio:4/5;object-position:center 24%}
  .portrait figcaption{font-size:.62rem;margin-top:10px}
  .about-copy{order:2}
  .about-copy .lead{font-size:clamp(1.36rem,6.3vw,1.82rem);line-height:1.19;margin-bottom:1em}
  .about-copy p{font-size:.98rem;line-height:1.58}
  .about-actions{display:grid;grid-template-columns:1fr;gap:14px;margin-top:28px}
  .about-actions a{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:12px 0;border-top:1px solid rgba(0,0,0,.22);border-bottom:0}
  .about-actions a::after{content:"↗";font-size:1rem}
  .stats{grid-template-columns:1fr;margin-top:54px}
  .stats div{padding:20px 0;min-height:0;border-top:1px solid #aaa!important}
  .stats div:first-child{border-top:0!important}
  .stats div::before,.stats div::after{display:none!important}
  .stats strong{font-size:1.25rem;margin-bottom:7px}
  .stats span{font-size:.63rem;max-width:none}

  .healthcare-focus__meta{align-items:flex-start;gap:18px;padding-bottom:14px}
  .healthcare-focus__meta .eyebrow{text-align:right;font-size:.61rem}
  .healthcare-focus__content{grid-template-columns:1fr;gap:34px;padding:52px 0 58px}
  .healthcare-focus h2{font-size:clamp(2.8rem,13vw,4.6rem);line-height:.91;letter-spacing:-.058em}
  .healthcare-focus__body{padding-bottom:0}
  .healthcare-focus__body .lead{font-size:1.45rem;line-height:1.18;margin-bottom:20px}
  .healthcare-focus__body>p:not(.lead){font-size:.98rem;line-height:1.58;margin-bottom:28px}
  .healthcare-focus__link{min-height:52px;padding:15px 0;font-size:.66rem}
  .healthcare-focus__pillars{grid-template-columns:1fr}
  .healthcare-focus__pillars>div,.healthcare-focus__pillars>div+div{min-height:0;padding:22px 0;border-left:0;border-top:1px solid rgba(0,0,0,.22)}
  .healthcare-focus__pillars>div:first-child{border-top:0}
  .healthcare-focus__pillars span{margin-bottom:10px}
  .healthcare-focus__pillars strong{font-size:1.45rem;margin-bottom:5px}

  .projects{padding-top:76px;padding-bottom:82px}
  .projects-head{display:block;padding-bottom:30px;margin-bottom:42px}
  .projects-head>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin-bottom:30px}
  .projects-head .eyebrow{margin:0;text-align:right}
  .projects-count{grid-column:1/-1;margin-top:8px;padding-top:14px;border-top:1px solid var(--line);font-size:.61rem}
  .projects-headline{display:block}
  .projects-filterline{display:flex;gap:8px;overflow-x:auto;padding:14px 0 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .projects-filterline::-webkit-scrollbar{display:none}
  .projects-filterline span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
  .projects-head>div:last-child>p{font-size:.96rem;line-height:1.55;margin-top:22px;max-width:42ch;color:#999}
  .project-grid{display:grid;grid-template-columns:1fr;gap:44px}
  .project-card,.project-card.project-wide,.project-card:nth-child(n){grid-column:auto!important;margin-top:0!important}
  .project-card .project-image,.project-card.project-wide .project-image,.project-card:nth-child(n) .project-image{width:100%;aspect-ratio:4/3!important;object-fit:cover}
  .project-open{overflow:visible}
  .project-info{grid-template-columns:28px minmax(0,1fr) 32px;align-items:start;gap:10px;padding:12px 0 14px}
  .project-info strong{font-size:clamp(1.35rem,6.3vw,1.75rem);line-height:1.05;margin-top:4px}
  .project-info i{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font-size:.9rem}
  .project-info b,.project-info small{font-size:.6rem;line-height:1.35}
  .project-open:hover .project-image{transform:none;filter:none}

  .services-title .section-index{margin-bottom:18px}
  .service-list{margin-top:42px}
  .service-list>div{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:23px 0}
  .service-list p{grid-column:2;font-size:.95rem;line-height:1.52;margin-top:2px}
  .service-list h3{font-size:1.45rem;line-height:1.1}

  .contact{min-height:auto;padding:66px var(--pad) 28px;gap:48px}
  .contact-top{align-items:flex-start}
  .contact h2{font-size:clamp(3rem,14vw,4.8rem);line-height:.88;margin:12px 0 2px}
  .contact-bottom{gap:0;border-top:1px solid rgba(0,0,0,.4)}
  .contact-bottom div{padding:17px 0;border-bottom:1px solid rgba(0,0,0,.25);min-height:68px}
  .contact-bottom div:last-child{align-items:flex-start}
  .contact-bottom a{font-size:1rem;min-height:28px;display:inline-flex;align-items:center}
  footer{padding:22px var(--pad) 28px;gap:10px;font-size:.61rem;line-height:1.4}
  footer a{min-height:44px;display:flex;align-items:center}

  .project-modal{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border-radius:0;overflow-y:auto}
  .project-modal::backdrop{background:#000}
  .modal-close{position:fixed;z-index:20;right:14px;top:max(14px,env(safe-area-inset-top));width:48px;height:48px;background:rgba(0,0,0,.82);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(10px);font-size:28px}
  .modal-gallery{gap:1px}
  .modal-gallery img,.modal-gallery img:first-child{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;background:#0c0c0c}
  .modal-copy{padding:28px var(--pad) calc(42px + env(safe-area-inset-bottom))}
  .modal-copy h2{font-size:clamp(2rem,10vw,3.2rem);line-height:.96}
  .modal-description{font-size:.98rem;line-height:1.58}
}

@media (max-width: 390px){
  .hero-title h1{font-size:clamp(2.9rem,14.8vw,4rem)}
  .healthcare-focus h2{font-size:clamp(2.55rem,12.4vw,3.65rem)}
  .contact h2{font-size:clamp(2.7rem,13.3vw,3.8rem)}
}

@media (hover:none) and (pointer:coarse){
  a,button{touch-action:manipulation}
  .project-open,.menu-toggle,.circle-link,.healthcare-focus__link{ -webkit-tap-highlight-color:transparent }
}


/* V17 — Healthcare submenu */
.main-nav .nav-subitem{
  margin-top:-10px;
  padding-left:clamp(34px,4vw,64px);
  font-size:clamp(.82rem,1.05vw,1rem);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.55);
  border-top:0;
}
.main-nav .nav-subitem span{font-size:.72rem;color:var(--green)}
.main-nav .nav-subitem:hover{color:#fff}
@media(max-width:650px){
  .main-nav .nav-subitem{margin-top:-4px;padding-left:30px;min-height:44px;font-size:.72rem}
}

/* V18 — editorial navigation and copy rhythm */
.main-nav{gap:0}
.main-nav>a:not(.nav-feature){display:grid;grid-template-columns:clamp(34px,4vw,68px) minmax(0,1fr);align-items:center}
.main-nav>a:not(.nav-feature)>span:first-child{margin-right:0}
.main-nav .nav-label{display:flex;align-items:baseline;justify-content:space-between;gap:28px;min-width:0}
.main-nav .nav-label strong{font:inherit;font-weight:700;letter-spacing:inherit}
.main-nav .nav-label small{font-size:clamp(.65rem,.8vw,.82rem);font-weight:500;letter-spacing:.1em;text-transform:uppercase;opacity:.52;white-space:nowrap}
.main-nav .nav-feature{align-self:flex-end;width:min(430px,38vw);margin:-2px 0 8px;padding:16px 18px 17px;border:1px solid rgba(0,0,0,.28);background:rgba(255,255,255,.12);display:grid;grid-template-columns:1fr auto;gap:4px 18px;font-size:inherit;line-height:1.1;letter-spacing:normal}
.main-nav .nav-feature .nav-feature-kicker{grid-column:1;font-size:.61rem;letter-spacing:.12em;text-transform:uppercase;opacity:.58;margin:0}
.main-nav .nav-feature strong{grid-column:1;font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.035em}
.main-nav .nav-feature small{grid-column:1;font-size:.72rem;letter-spacing:.04em;opacity:.68}
.main-nav .nav-feature i{grid-column:2;grid-row:1/4;align-self:center;font-style:normal;font-size:1.2rem}
.main-nav .nav-feature:hover{background:#050505;color:#fff;border-color:#050505}
.hero-title .hero-copy{max-width:760px;text-wrap:pretty}
.about-copy p,.healthcare-focus__body p,.projects-head>div:last-child>p{text-wrap:pretty}
.projects-headline h2{text-wrap:balance}
@media(max-width:900px){
 .main-nav{padding-top:88px;padding-bottom:34px;justify-content:center}
 .main-nav>a:not(.nav-feature){grid-template-columns:32px 1fr}
 .main-nav .nav-label small{display:none}
 .main-nav .nav-feature{align-self:stretch;width:auto;margin:6px 0 10px 32px;padding:13px 15px}
}
@media(max-width:560px){
 .main-nav{padding-inline:20px;gap:0}
 .main-nav>a:not(.nav-feature){font-size:clamp(2.15rem,10.5vw,3.5rem);padding:9px 0;grid-template-columns:28px 1fr}
 .main-nav>a:not(.nav-feature)>span:first-child{font-size:.58rem}
 .main-nav .nav-feature{margin-left:28px;padding:11px 13px 12px}
 .main-nav .nav-feature strong{font-size:1.2rem}
 .main-nav .nav-feature small{font-size:.62rem}
}

/* V19 FINAL — menu leggibile, gerarchie pulite e mobile refinement */
body.menu-open{overflow:hidden}
.site-header{isolation:isolate}
.menu-toggle{font-weight:700;letter-spacing:.14em;color:#fff;border-color:rgba(255,255,255,.55)}
.menu-toggle:hover{color:var(--accent);border-color:var(--accent)}

.main-nav{
  background:#080808;
  color:#fff;
  padding-top:clamp(104px,12vh,144px);
  padding-bottom:clamp(38px,6vh,72px);
}
.main-nav::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 82% 18%,rgba(0,166,0,.16),transparent 30%),linear-gradient(135deg,transparent 0 66%,rgba(0,166,0,.05));
}
.main-nav>a{position:relative;z-index:1;color:#f4f4ef;border-color:rgba(255,255,255,.16)}
.main-nav>a:not(.nav-feature)>span:first-child{color:var(--accent)}
.main-nav>a:not(.nav-feature):hover{color:var(--accent)}
.main-nav .nav-label small{color:#aaa;opacity:1}
.main-nav .nav-feature{
  color:#fff;
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.055);
}
.main-nav .nav-feature .nav-feature-kicker{color:var(--accent);opacity:1}
.main-nav .nav-feature small{color:#bbb;opacity:1}
.main-nav .nav-feature:hover{background:var(--accent);color:#050505;border-color:var(--accent)}
.main-nav .nav-feature:hover .nav-feature-kicker,
.main-nav .nav-feature:hover small{color:#050505}

.projects-head>div:first-child{justify-content:flex-start}
.projects-head .eyebrow{margin-top:18px;color:#bdbdb7}
.projects-count{margin-top:clamp(42px,7vw,88px);padding-top:18px;border-top:1px solid var(--line);width:100%;color:#777}
.projects-head::after{content:"WORK / 2026"}

@media(max-width:900px){
  .main-nav{justify-content:flex-start;padding-top:92px}
  .main-nav .nav-feature{margin-top:12px;margin-bottom:16px}
  .projects-count{margin-top:18px}
}

@media(max-width:760px){
  .site-header{background:rgba(7,7,7,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
  .menu-toggle{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:64px;min-height:44px;padding:8px 0;border:0}
  .menu-toggle::after{width:42px;background:rgba(255,255,255,.62)}
  .main-nav{padding:86px var(--pad) calc(24px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}
  .main-nav>a:not(.nav-feature){min-height:64px;padding:10px 0;border-color:rgba(255,255,255,.14)}
  .main-nav .nav-label strong{font-size:clamp(2rem,10vw,3rem);line-height:.94}
  .main-nav .nav-feature{margin:14px 0 18px 28px;padding:14px 15px 15px;border-radius:0}
  .main-nav .nav-feature strong{font-size:1.3rem}
  .main-nav .nav-feature small{font-size:.65rem;line-height:1.35}
  .projects-head>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:28px}
  .projects-head .eyebrow{margin:0;text-align:right}
  .projects-count{margin:0;padding:0;border:0;width:auto;white-space:nowrap;font-size:.58rem}
  .projects-head::after{display:none}
}

@media(max-width:420px){
  .main-nav>a:not(.nav-feature){grid-template-columns:24px minmax(0,1fr)}
  .main-nav .nav-label strong{font-size:clamp(1.85rem,9.6vw,2.65rem)}
  .main-nav .nav-feature{margin-left:24px}
  .projects-head>div:first-child{flex-wrap:wrap}
  .projects-count{width:100%;padding-top:12px;border-top:1px solid var(--line)}
}

/* V20 — definitive navigation rebuild */
.menu-toggle{position:relative;z-index:1002;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.main-nav{
  position:fixed;
  inset:0;
  z-index:1001;
  width:100%;
  height:100vh;
  height:100dvh;
  padding:0;
  display:block;
  overflow:hidden;
  background:#080808;
  color:#f5f5f0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:none;
  transition:opacity .28s ease,visibility 0s linear .28s;
}
.main-nav.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
  transition:opacity .28s ease;
}
.main-nav::before{background:radial-gradient(circle at 84% 20%,rgba(0,166,0,.14),transparent 34%)}
.nav-shell{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  max-width:1680px;
  margin:0 auto;
  padding:clamp(108px,13vh,150px) var(--pad) clamp(28px,5vh,54px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.nav-list{width:100%;display:flex;flex-direction:column}
.nav-list>a,.nav-group>a:first-child{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  align-items:center;
  min-height:66px;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.16);
  color:#f5f5f0;
}
.nav-group{position:relative;border-bottom:1px solid rgba(255,255,255,.16)}
.nav-group>a:first-child{border-bottom:0}
.nav-number{margin:0!important;color:var(--accent)!important;font-size:.68rem!important;letter-spacing:.12em!important}
.nav-label{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:30px!important;min-width:0}
.nav-label strong{font-size:clamp(1.4rem,2.1vw,2.2rem)!important;line-height:1!important;letter-spacing:-.03em!important}
.nav-label small{color:#9d9d97!important;font-size:.72rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;white-space:nowrap}
.nav-list>a:hover .nav-label strong,.nav-group>a:first-child:hover .nav-label strong{color:var(--accent)}
.nav-case{
  position:absolute!important;
  right:0;
  top:50%;
  transform:translateY(-50%)!important;
  width:auto!important;
  min-width:250px;
  margin:0!important;
  padding:10px 14px!important;
  display:grid!important;
  grid-template-columns:auto auto!important;
  grid-template-rows:auto auto!important;
  column-gap:18px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:rgba(255,255,255,.045)!important;
  color:#fff!important;
}
.nav-case span{grid-column:1;font-size:.56rem!important;letter-spacing:.12em!important;text-transform:uppercase;color:var(--accent)!important;margin:0!important}
.nav-case strong{grid-column:1;font-size:1.08rem!important;letter-spacing:-.02em!important;line-height:1.15}
.nav-case i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal}
.nav-case:hover{background:var(--accent)!important;color:#050505!important;border-color:var(--accent)!important}
.nav-case:hover span{color:#050505!important}
.nav-footer{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#777;font-size:.61rem;letter-spacing:.12em;text-transform:uppercase}
body.menu-open .site-header{background:transparent;border-color:transparent}
body.menu-open .brand{position:relative;z-index:1002}

@media(max-width:760px){
  .availability{display:none}
  .site-header{height:68px;padding-left:18px;padding-right:18px}
  .brand img{width:44px;height:44px}
  .menu-toggle{min-width:58px;min-height:46px;padding:8px 0}
  .nav-shell{padding:88px 20px calc(20px + env(safe-area-inset-bottom));justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav-list>a,.nav-group>a:first-child{grid-template-columns:28px minmax(0,1fr);min-height:58px;padding:11px 0}
  .nav-label strong{font-size:clamp(1.65rem,8.6vw,2.55rem)!important}
  .nav-label small{display:none!important}
  .nav-number{font-size:.58rem!important}
  .nav-group{padding-bottom:52px}
  .nav-case{left:28px;right:0;top:auto;bottom:8px;transform:none!important;min-width:0;width:auto!important;padding:9px 12px!important}
  .nav-case strong{font-size:1rem!important}
  .nav-case span{font-size:.5rem!important}
  .nav-footer{margin-top:24px;flex-direction:column;gap:5px;padding-top:16px}
}
@media(max-width:390px){
  .nav-shell{padding-top:78px}
  .nav-list>a,.nav-group>a:first-child{min-height:52px;padding:8px 0}
  .nav-label strong{font-size:clamp(1.45rem,8vw,2.1rem)!important}
  .nav-group{padding-bottom:48px}
}
@media(prefers-reduced-motion:reduce){.main-nav,.main-nav.open{transition:none}}

/* V21 — final layout system: stable navigation + balanced spacing */
:root{
  --content-max: 1560px;
  --section-y: clamp(76px, 7vw, 112px);
}

/* Keep page content optically centered on very wide displays */
.hero,
.section,
.contact,
footer{
  padding-left:max(var(--pad), calc((100vw - var(--content-max))/2 + 32px));
  padding-right:max(var(--pad), calc((100vw - var(--content-max))/2 + 32px));
}
.site-header{
  padding-left:max(var(--pad), calc((100vw - var(--content-max))/2 + 32px));
  padding-right:max(var(--pad), calc((100vw - var(--content-max))/2 + 32px));
}

/* More consistent vertical rhythm */
.hero{min-height:100svh;padding-top:clamp(96px,11vh,124px);padding-bottom:clamp(28px,4vh,48px)}
.about-layout{margin-top:clamp(44px,5vw,72px)}
.stats{margin-top:clamp(52px,5vw,76px)}
.healthcare-focus{padding-top:var(--section-y);padding-bottom:var(--section-y)}
.healthcare-focus__content{padding:clamp(48px,5vw,78px) 0 clamp(54px,5.5vw,84px)}
.healthcare-focus__body{position:relative;top:auto;padding-top:clamp(8px,2vw,24px)}
.projects-head{margin-bottom:clamp(42px,5vw,70px)}
.service-list{margin-top:clamp(44px,5vw,68px)}

/* Navigation: no absolute elements, no overlap */
.main-nav{overflow:hidden}
.nav-shell{
  max-width:var(--content-max);
  padding:clamp(100px,12vh,136px) 32px clamp(28px,4vh,48px);
  justify-content:space-between;
}
.nav-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,390px);
  gap:clamp(52px,7vw,120px);
  align-items:center;
  width:100%;
}
.nav-list{min-width:0}
.nav-list>a{
  grid-template-columns:54px minmax(0,1fr);
  min-height:74px;
  padding:15px 0;
}
.nav-label strong{font-size:clamp(1.65rem,2.35vw,2.75rem)!important}
.nav-label small{font-size:.68rem!important}
.nav-case{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:26px 24px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto auto!important;
  gap:7px 20px!important;
  align-self:center;
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(255,255,255,.045)!important;
}
.nav-case span{grid-column:1;font-size:.58rem!important}
.nav-case strong{grid-column:1;font-size:clamp(1.65rem,2.1vw,2.25rem)!important;line-height:1!important}
.nav-case small{grid-column:1;color:#aaa!important;font-size:.67rem!important;letter-spacing:.08em!important;text-transform:uppercase}
.nav-case i{grid-column:2;grid-row:1/4;font-size:1.7rem;align-self:center}
.nav-footer{margin-top:26px}

@media(max-width:1000px){
  .nav-layout{grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:38px}
  .nav-label small{display:none!important}
}

@media(max-width:760px){
  :root{--section-y:68px}
  .hero,.section,.contact,footer,.site-header{padding-left:20px;padding-right:20px}
  .hero{min-height:auto;padding-top:92px;padding-bottom:38px;gap:38px}
  .hero-title{grid-template-columns:1fr}
  .hero-title .hero-copy{grid-column:1;grid-row:auto;margin:26px 0 0;max-width:100%}
  .hero-disciplines{margin-top:34px}
  .nav-shell{padding:82px 20px calc(22px + env(safe-area-inset-bottom));overflow-y:auto}
  .nav-layout{display:flex;flex-direction:column;gap:18px;align-items:stretch}
  .nav-list>a{grid-template-columns:30px minmax(0,1fr);min-height:60px;padding:11px 0}
  .nav-label strong{font-size:clamp(1.75rem,9vw,2.65rem)!important}
  .nav-case{padding:16px 16px!important;margin-top:4px!important}
  .nav-case strong{font-size:1.45rem!important}
  .nav-case small{font-size:.58rem!important}
  .nav-case i{font-size:1.35rem}
  .nav-footer{margin-top:22px;padding-top:14px}
  .about .section-index{position:static;margin-bottom:24px}
  .about-intro{grid-template-columns:1fr;gap:6px}
  .about-intro .eyebrow{padding-top:0}
  .healthcare-focus__content{padding:42px 0 48px}
  .projects-head>div:first-child{margin-bottom:24px}
}

@media(max-width:420px){
  .nav-shell{padding-top:76px}
  .nav-list>a{min-height:54px;padding:9px 0}
  .nav-label strong{font-size:clamp(1.55rem,8.5vw,2.25rem)!important}
  .nav-case{padding:14px!important}
  .hero-title h1{font-size:clamp(2.85rem,14.6vw,4.5rem)}
}
.nav-group{display:contents;border:0;padding:0}
.menu-toggle{min-width:66px;min-height:44px;display:flex;align-items:center;justify-content:flex-end}
body.menu-open .menu-toggle{color:#fff}

/* V30 — definitive responsive stability */
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:clip}
img,video,svg,canvas{max-width:100%;height:auto}
main,section,header,footer,.nav-shell,.nav-layout,.nav-list{min-width:0;max-width:100%}
.main-nav{width:100%;max-width:100vw;overflow-x:hidden}
.nav-shell{width:min(100%,1560px);margin-inline:auto}
.nav-layout{min-height:0}
.nav-list>a{width:100%;min-width:0}
.nav-label{min-width:0}
.nav-label strong,.nav-label small{overflow-wrap:anywhere}
.nav-case{min-width:0;overflow:hidden}
body.menu-open{overflow:hidden;touch-action:none}
@media(max-width:760px){
 .main-nav{height:100dvh;min-height:100svh}
 .nav-shell{height:100%;min-height:0;display:block;padding:78px 20px calc(24px + env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden}
 .nav-layout{display:block}
 .nav-list>a{min-height:56px}
 .nav-case{margin:18px 0 0!important;width:100%!important;position:relative!important}
 .nav-footer{margin-top:28px;padding-bottom:16px}
}
