/* A compact, linked service overview; complete details live on the service pages. */
#servizi{padding-bottom:36px}
#servizi .heading-copy,#team .heading-copy{max-width:64ch;line-height:1.6}
.service-spotlight{margin-top:36px}
.service-spotlight-label{margin:0 0 16px;color:#ff7772;font:400 10px/1.5 var(--font-ui);letter-spacing:.13em}
.service-spotlight-grid,.services-grid.service-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.services-grid.service-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}
.service-tile{position:relative;min-width:0;display:flex;flex-direction:column;gap:18px;padding:28px;min-height:244px;border:1px solid #353535;border-radius:14px;background:#121212;color:#f6f6f6;isolation:isolate;transition:border-color .18s ease,background-color .18s ease}
.service-tile--featured{min-height:264px;background:linear-gradient(130deg,#211212,#121212 76%);border-color:#583130}
.service-tile--featured::before{content:"";position:absolute;top:0;left:28px;right:28px;height:2px;background:#ea1818}
.service-tile-top{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#b5b5b5;font:400 11px/1 var(--font-ui);letter-spacing:.08em}
.service-tile--featured .service-tile-top{color:#ff7772}
.service-tile svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
.service-tile h3{margin:0;max-width:26ch;font:900 clamp(23px,2.1vw,32px)/1.08 var(--font-title);letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word}
.service-tile p{margin:0;max-width:42ch;color:#c9c9c9;font:300 16px/1.55 var(--font-body)}
.service-tile-foot{display:block;margin-top:auto;padding-top:8px;color:#ededed;font:400 10px/1.4 var(--font-ui);letter-spacing:.07em;text-transform:uppercase}
.service-tile--visual h3,.service-tile--visual p{max-width:58%;position:relative;z-index:1}
.service-tile-media{position:absolute;right:24px;top:70px;width:32%;bottom:56px;border-radius:7px;overflow:hidden;background:#1b1b1b;border:1px solid #444;z-index:0}
.service-tile-media img{width:100%;height:100%;object-fit:cover;object-position:center top}
.service-tile[data-service-number="03"] .service-tile-media img{object-position:50% 38%}
.service-tile:hover{border-color:#ff7772;background-color:#1a1515}
.service-tile:focus-visible{outline:3px solid #fff;outline-offset:4px;border-color:#ff7772}
@media(max-width:980px){
  .service-tile{padding:24px;gap:16px}
  .services-grid.service-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-tile h3{font-size:25px}
  .service-tile p{font-size:15px}
}
@media(max-width:620px){
  #servizi>.shell{width:calc(100% - 32px)!important}
  #servizi{padding-top:64px;padding-bottom:36px}
  #servizi .heading-copy{margin-top:22px;font-size:16px;line-height:1.6}
  .service-spotlight{margin-top:30px}
  .service-spotlight-grid,.services-grid.service-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .services-grid.service-overview-grid{margin-top:14px}
  .service-tile{padding:19px 17px;min-height:220px;gap:16px;border-radius:12px}
  .service-tile--featured{min-height:232px}
  .service-tile--featured::before{left:17px;right:17px}
  .service-tile--visual,.services-grid .service-tile:first-child,.services-grid .service-tile:last-child{grid-column:1/-1}
  .service-tile--visual{min-height:225px}
  .service-tile-top{font-size:10px}
  .service-tile h3{font-size:clamp(19px,5vw,23px);line-height:1.12;letter-spacing:-.025em}
  .service-tile p{font-size:14px;line-height:1.5}
  .service-tile--visual h3,.service-tile--visual p{max-width:59%}
  .service-tile-media{top:58px;right:17px;bottom:54px;width:31%;border-radius:6px}
  .service-tile-foot{font-size:9px;letter-spacing:.04em}
  .service-tile svg{width:20px;height:20px}
}
@media(prefers-reduced-motion:reduce){.service-tile{transition:none}}
