/* ===== HERO SOLUZIONI ===== */
.csc-sh{ background:#fff; padding-top:120px; }
@media(min-width:768px){ .csc-sh{ padding-top:140px; } }
@media(min-width:1024px){ .csc-sh{ padding-top:160px; } }
.csc-sh__title{ font-size:32px; font-weight:700; color:#3183ba; line-height:1; margin:0 0 12px; }
@media(min-width:768px){ .csc-sh__title{ font-size:56px; margin-bottom:16px; } }
@media(min-width:1024px){ .csc-sh__title{ font-size:80px; margin-bottom:24px; } }
.csc-sh__img img{ width:100%; height:240px; object-fit:cover; object-position:center; border-radius:10px; display:block; }
@media(min-width:768px){ .csc-sh__img img{ height:340px; } }
@media(min-width:1024px){ .csc-sh__img img{ height:480px; } }
.csc-sh__grey{ background:#f5f5f5; margin-top:8px; padding-top:24px; padding-bottom:32px; }
@media(min-width:768px){ .csc-sh__grey{ margin-top:12px; padding-top:32px; padding-bottom:40px; } }
@media(min-width:1024px){ .csc-sh__grey{ margin-top:16px; padding-top:48px; padding-bottom:56px; } }
.csc-sh__sub{ font-weight:700; color:#3183ba; max-width:800px; font-size:14px; line-height:1.4; margin:0; }
@media(min-width:768px){ .csc-sh__sub{ font-size:20px; } }
@media(min-width:1024px){ .csc-sh__sub{ font-size:28px; line-height:36px; } }

/* ===== INTRO ===== */
.csc-si{ background:#fff; padding:40px 0; }
@media(min-width:768px){ .csc-si{ padding:48px 0; } }
@media(min-width:1024px){ .csc-si{ padding:64px 0; } }
.csc-si__grid{ display:grid; grid-template-columns:1fr; gap:24px; }
@media(min-width:1024px){ .csc-si__grid{ grid-template-columns:1fr 1fr; gap:40px; } }
.csc-si__title{ font-size:24px; font-weight:400; color:#000; line-height:1.15; margin:0; }
@media(min-width:768px){ .csc-si__title{ font-size:36px; } }
@media(min-width:1024px){ .csc-si__title{ font-size:48px; line-height:56px; } }
.csc-si__texts p{ font-weight:300; color:#282828; font-size:13px; line-height:1.6; margin:0 0 16px; }
.csc-si__texts p:last-child{ margin-bottom:0; }
@media(min-width:768px){ .csc-si__texts p{ font-size:15px; } }
@media(min-width:1024px){ .csc-si__texts p{ font-size:17px; line-height:26px; margin-bottom:20px; } }

/* ===== MERCATI CARDS ===== */
.csc-smc{ background:#fff; padding:24px 0; }
@media(min-width:768px){ .csc-smc{ padding:32px 0; } }
@media(min-width:1024px){ .csc-smc{ padding:40px 0; } }
.csc-smc__grid{ display:grid; grid-template-columns:1fr; gap:16px; }
@media(min-width:768px){ .csc-smc__grid{ grid-template-columns:1fr 1fr; } }
@media(min-width:1024px){ .csc-smc__grid{ gap:20px; } }
.csc-smc__card{ position:relative; height:260px; border-radius:10px; overflow:hidden; box-shadow:0 10px 25px rgba(0,0,0,.1); }
.csc-smc__card{ transition-delay:calc(var(--i,0) * .15s); }
@media(min-width:768px){ .csc-smc__card{ height:320px; } }
@media(min-width:1024px){ .csc-smc__card{ height:400px; } }
.csc-smc__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.csc-smc__card:hover .csc-smc__bg{ transform:scale(1.05); }
.csc-smc__overlay{ position:absolute; inset:0; background:rgba(0,0,0,.2); }
.csc-smc__content{ position:absolute; inset:0; padding:16px; display:flex; flex-direction:column; }
@media(min-width:768px){ .csc-smc__content{ padding:20px; } }
@media(min-width:1024px){ .csc-smc__content{ padding:24px; } }
.csc-smc__cats{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
@media(min-width:768px){ .csc-smc__cats{ gap:12px; } }
.csc-smc__cats a{ color:#fff; font-weight:700; line-height:1.1; font-size:16px; text-decoration:none; position:relative; transition:all .2s; }
@media(min-width:768px){ .csc-smc__cats a{ font-size:22px; } }
@media(min-width:1024px){ .csc-smc__cats a{ font-size:28px; } }
.csc-smc__cats a:hover{ opacity:.8; transform:scale(1.05); }
.csc-smc__cats a::after{ content:''; position:absolute; width:100%; height:2px; background:#fff; bottom:-2px; left:0; transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.csc-smc__cats a:hover::after{ transform:scaleX(1); }
.csc-smc__sep{ width:1px; height:16px; background:#fff; }
@media(min-width:768px){ .csc-smc__sep{ height:20px; } }
@media(min-width:1024px){ .csc-smc__sep{ height:24px; } }
.csc-smc__icon{ flex:1; display:flex; align-items:center; }
.csc-smc__icon img{ width:80px; height:50px; object-fit:contain; filter:brightness(0) invert(1); transition:transform .5s; }
@media(min-width:768px){ .csc-smc__icon img{ width:100px; height:60px; } }
@media(min-width:1024px){ .csc-smc__icon img{ width:120px; height:70px; } }
.csc-smc__card:hover .csc-smc__icon img{ transform:scale(1.1) rotate(3deg); }
.csc-smc__desc{ color:#fff; font-weight:500; line-height:1.4; max-width:400px; font-size:13px; margin:0; }
@media(min-width:768px){ .csc-smc__desc{ font-size:15px; } }
@media(min-width:1024px){ .csc-smc__desc{ font-size:18px; } }

/* ===== MANUTENZIONE ===== */
.csc-sm{ position:relative; overflow:hidden; }
.csc-sm__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.csc-sm__inner{ position:relative; min-height:400px; display:flex; flex-direction:column; align-items:center; text-align:center; padding:64px 20px 40px; }
@media(min-width:768px){ .csc-sm__inner{ min-height:480px; padding-top:80px; padding-bottom:48px; } }
@media(min-width:1024px){ .csc-sm__inner{ flex-direction:row; align-items:center; text-align:left; min-height:520px; padding:48px 0; gap:32px; }
  .csc-container.csc-sm__inner{ padding-left:100px; padding-right:100px; } }
.csc-sm__left{ display:flex; flex-direction:column; align-items:center; }
@media(min-width:1024px){ .csc-sm__left{ flex:0 0 42%; } }
.csc-sm__title{ width:180px; height:auto; margin-bottom:16px; }
@media(min-width:768px){ .csc-sm__title{ width:260px; margin-bottom:24px; } }
@media(min-width:1024px){ .csc-sm__title{ transform:rotate(-1.77deg); } }
.csc-sm__child{ width:200px; height:auto; }
@media(min-width:768px){ .csc-sm__child{ width:280px; } }
@media(min-width:1024px){ .csc-sm__child{ width:340px; } }
.csc-sm__right{ }
@media(min-width:1024px){ .csc-sm__right{ flex:1; padding-left:40px; } }
.csc-sm__text{ color:#fff; font-weight:400; max-width:400px; font-size:13px; line-height:1.5; margin:16px auto 0; }
@media(min-width:768px){ .csc-sm__text{ font-size:15px; } }
@media(min-width:1024px){ .csc-sm__text{ max-width:520px; font-size:16px; line-height:1.7; margin:0; } }

/* ===== CTA CERTIFICAZIONI ===== */
.csc-scc{ position:relative; height:320px; overflow:hidden; }
@media(min-width:768px){ .csc-scc{ height:400px; } }
@media(min-width:1024px){ .csc-scc{ height:500px; } }
.csc-scc__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.csc-scc__overlay{ position:absolute; inset:0; background:rgba(0,0,0,.3); }
.csc-scc__content{ position:relative; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.csc-scc__title{ font-size:26px; font-weight:700; color:#fff; line-height:1.1; margin:0 0 12px; }
@media(min-width:768px){ .csc-scc__title{ font-size:40px; margin-bottom:16px; } }
@media(min-width:1024px){ .csc-scc__title{ font-size:56px; } }
.csc-scc__text{ font-weight:400; color:#fff; line-height:1.5; max-width:500px; font-size:13px; margin:0 0 24px; }
@media(min-width:768px){ .csc-scc__text{ font-size:15px; margin-bottom:32px; } }
@media(min-width:1024px){ .csc-scc__text{ font-size:18px; } }
.csc-scc__btn{ display:inline-flex; align-items:center; gap:8px; background:#fff; color:#3183ba; padding:10px 20px; border-radius:9999px; font-size:14px; text-decoration:none; transition:background .2s; }
@media(min-width:1024px){ .csc-scc__btn{ font-size:16px; } }
.csc-scc__btn:hover{ background:rgba(255,255,255,.9); }
.csc-scc__btn svg{ width:12px; height:16px; }
