
:root{
  --tre-black:#000;
  --tre-graphite:#1d1d1f;
  --tre-muted:#6e6e73;
  --tre-gray:#f5f5f7;
  --tre-line:#d2d2d7;
  --tre-white:#fff;
  --tre-blue:#1677ff;
  --tre-shell:min(1180px,calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.services-overview-page,body.service-detail-page{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;color:var(--tre-graphite);background:#fff;-webkit-font-smoothing:antialiased}
body.services-overview-page main,body.service-detail-page main{overflow:hidden}
a{color:inherit}
.tre-shell{width:var(--tre-shell);margin:0 auto}

/* Menu: usa la formattazione globale di style.css, identica a Home / Progetti / Studio */
.services-overview-page .site-header,
.service-detail-page .site-header{background:rgba(0,0,0,.82)}

.services-overview-page .site-header nav a,
.services-overview-page .site-header nav a:visited,
.services-overview-page .site-header nav a:hover,
.services-overview-page .site-header nav a:focus,
.services-overview-page .site-header nav a.active,
.services-overview-page .site-header nav a[aria-current="page"],
.service-detail-page .site-header nav a,
.service-detail-page .site-header nav a:visited,
.service-detail-page .site-header nav a:hover,
.service-detail-page .site-header nav a:focus,
.service-detail-page .site-header nav a.active,
.service-detail-page .site-header nav a[aria-current="page"]{
  color:#fff !important;
}

/* Overview */
.services-overview-hero{padding:165px 0 105px;background:#000;color:#fff}.services-overview-hero .eyebrow,.detail-eyebrow{display:block;margin-bottom:22px;font-size:12px;line-height:1;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:#86868b}.services-overview-hero h1{max-width:990px;margin:0;font-size:clamp(56px,7vw,96px);line-height:.92;letter-spacing:-.064em}.services-overview-hero p{max-width:760px;margin:34px 0 0;color:#a1a1a6;font-size:clamp(20px,2vw,27px);line-height:1.42;letter-spacing:-.026em}
.services-grid-section{padding:120px 0 135px}.section-heading{max-width:900px;margin-bottom:58px}.section-heading h2{margin:0;font-size:clamp(44px,5.7vw,76px);line-height:.95;letter-spacing:-.055em}.section-heading p{max-width:720px;margin:25px 0 0;color:#666;font-size:19px;line-height:1.55}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-card{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:var(--tre-gray);text-decoration:none;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.05);transition:transform .25s ease,box-shadow .25s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,.09)}.service-card-visual{height:285px;background:#eaeaec;overflow:hidden}.service-card-visual img{width:100%;height:100%;object-fit:cover;display:block}.service-card-visual.contain img{object-fit:contain;background:#fff}.service-card-copy{padding:32px 34px 34px}.service-card-copy span{display:block;font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:#777;margin-bottom:14px}.service-card-copy h3{margin:0;font-size:34px;line-height:1.02;letter-spacing:-.045em}.service-card-copy p{margin:18px 0 0;color:#666;font-size:17px;line-height:1.48}.service-card-copy b{display:inline-block;margin-top:22px;font-size:15px;font-weight:650}
.overview-final{padding:110px 0;background:#000;color:#fff;text-align:center}.overview-final h2{margin:0;font-size:clamp(46px,6vw,82px);line-height:.94;letter-spacing:-.058em}.overview-final p{max-width:680px;margin:28px auto 0;color:#a1a1a6;font-size:20px;line-height:1.5}.pill-cta{display:inline-flex;margin-top:34px;padding:14px 22px;border-radius:999px;background:#fff;color:#000;text-decoration:none;font-weight:680;font-size:15px}

/* Detail shared vertical template */
.service-detail-hero{padding:145px 0 92px;background:#fff}.detail-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:66px;align-items:center}.detail-hero-copy h1{margin:0;font-size:clamp(52px,6.5vw,88px);line-height:.93;letter-spacing:-.062em}.detail-hero-copy .lead{margin:30px 0 0;max-width:650px;font-size:clamp(21px,2vw,27px);line-height:1.4;letter-spacing:-.025em}.detail-hero-copy .micro{margin:18px 0 0;max-width:620px;color:#68686d;font-size:17px;line-height:1.55}.detail-hero-visual{border-radius:30px;overflow:hidden;background:#f5f5f7;box-shadow:0 24px 60px rgba(0,0,0,.08)}.detail-hero-visual img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block}.detail-hero-visual.contain img{object-fit:contain;background:#fff}
.detail-section{padding:118px 0}.detail-section.gray{background:var(--tre-gray)}.detail-section.dark{background:#000;color:#fff}.detail-section-head{display:grid;grid-template-columns:.58fr 1.42fr;gap:50px;margin-bottom:54px}.detail-section-head .kicker{font-size:12px;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:#86868b;padding-top:10px}.detail-section-head h2{margin:0;font-size:clamp(42px,5.5vw,72px);line-height:.95;letter-spacing:-.055em}.detail-section-head p{grid-column:2;margin:18px 0 0;max-width:760px;font-size:19px;line-height:1.55;color:#666}.dark .detail-section-head p{color:#aaa}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--tre-line)}.feature{padding:34px 34px 38px 0;border-bottom:1px solid var(--tre-line)}.feature:nth-child(even){padding-left:34px;border-left:1px solid var(--tre-line)}.feature h3{margin:0;font-size:25px;line-height:1.08;letter-spacing:-.035em}.feature p{margin:15px 0 0;color:#646469;font-size:16.5px;line-height:1.58}.feature strong{color:#222}.image-band{padding:0;background:#fff}.image-band-inner{width:min(1320px,calc(100% - 48px));margin:0 auto;border-radius:32px;overflow:hidden;background:#eee}.image-band img{width:100%;height:auto;max-height:760px;object-fit:cover;display:block}.image-band.contain img{object-fit:contain;background:#fff;max-height:720px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--tre-line);border-bottom:1px solid var(--tre-line)}.pillar{padding:34px 28px 38px 0}.pillar+.pillar{padding-left:28px;border-left:1px solid var(--tre-line)}.pillar .num{display:block;margin-bottom:45px;color:#86868b;font-size:12px;font-weight:750;letter-spacing:.1em}.pillar h3{margin:0;font-size:26px;letter-spacing:-.035em}.pillar p{margin:14px 0 0;color:#666;font-size:16px;line-height:1.58}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}.method-step{padding:34px 26px 38px 0}.method-step+.method-step{padding-left:26px;border-left:1px solid rgba(255,255,255,.22)}.method-step span{display:block;margin-bottom:34px;color:#777;font-size:11px;font-weight:750;letter-spacing:.1em}.method-step h3{margin:0;font-size:22px;letter-spacing:-.028em}.method-step p{margin:13px 0 0;color:#aaa;font-size:15px;line-height:1.55}
.detail-final{padding:118px 0;background:#fff;text-align:center}.detail-final h2{max-width:950px;margin:0 auto;font-size:clamp(48px,6vw,82px);line-height:.94;letter-spacing:-.06em}.detail-final p{max-width:720px;margin:28px auto 0;color:#666;font-size:20px;line-height:1.5}.detail-final .pill-cta{background:#000;color:#fff}
.back-services{display:inline-flex;margin-top:20px;text-decoration:none;color:#666;font-size:14px}

/* Footer */
footer{padding:38px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr auto auto;gap:28px;align-items:center;background:#000;color:#8e8e93;font-size:12px;border-top:1px solid #222}.footer-brand{color:#fff;font-size:21px;font-weight:750;letter-spacing:-.04em}footer .brand-dot{background:#fff}

@media(max-width:900px){
  :root{--tre-shell:min(100% - 36px,1180px)}
  .detail-hero-grid{grid-template-columns:1fr;gap:42px}.detail-hero-visual{order:2}
  .detail-section-head{grid-template-columns:1fr;gap:12px}.detail-section-head p{grid-column:1}
  .method-grid{grid-template-columns:repeat(2,1fr)}.method-step:nth-child(3){border-left:0}.method-step:nth-child(n+3){border-top:1px solid rgba(255,255,255,.22)}
  .services-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  :root{--tre-shell:calc(100% - 30px)}
  .services-overview-hero{padding:118px 0 70px}.services-overview-hero h1{font-size:50px}.services-overview-hero p{font-size:19px}.services-grid-section{padding:78px 0 90px}.section-heading{margin-bottom:38px}.section-heading h2{font-size:43px}.service-card{min-height:0;border-radius:22px}.service-card-visual{height:auto;aspect-ratio:16/10}.service-card-copy{padding:25px 24px 29px}.service-card-copy h3{font-size:30px}
  .service-detail-hero{padding:110px 0 65px}.detail-hero-copy h1{font-size:48px}.detail-hero-copy .lead{font-size:20px}.detail-hero-copy .micro{font-size:16px}.detail-hero-visual{border-radius:22px}.detail-hero-visual img{aspect-ratio:auto;max-height:none;object-fit:contain;background:#fff}
  .detail-section{padding:78px 0}.detail-section-head{margin-bottom:34px}.detail-section-head h2{font-size:42px}.detail-section-head p{font-size:17px}
  .feature-grid{grid-template-columns:1fr}.feature,.feature:nth-child(even){padding:27px 0;border-left:0}.feature h3{font-size:23px}
  .image-band-inner{width:calc(100% - 30px);border-radius:22px}.image-band img,.image-band.contain img{height:auto;max-height:none;object-fit:contain;background:#fff}
  .pillars{grid-template-columns:1fr}.pillar,.pillar+.pillar{padding:27px 0;border-left:0}.pillar+.pillar{border-top:1px solid var(--tre-line)}.pillar .num{margin-bottom:18px}
  .method-grid{grid-template-columns:1fr}.method-step,.method-step+.method-step{padding:27px 0;border-left:0}.method-step+.method-step{border-top:1px solid rgba(255,255,255,.22)}.method-step span{margin-bottom:14px}
  .detail-final{padding:82px 0}.detail-final h2{font-size:44px}.detail-final p{font-size:18px}
  footer{grid-template-columns:1fr;gap:9px;padding:30px 15px}
}
@media(max-width:380px){.services-overview-hero h1,.detail-hero-copy h1{font-size:42px}.section-heading h2,.detail-section-head h2{font-size:37px}.detail-final h2{font-size:39px}}
