/*
Theme Name: Smart Systems
Theme URI: https://smartsystems.srl
Author: Smart Systems Srls
Description: Tema custom per Smart Systems Srls — redesign 2026. Homepage one-page + pagine servizio.
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: smartsystems
*/
:root{--red:#e8220c;--red-dark:#a81607;--ink:#17171a;--paper:#fbfaf9;--line:#e7e4e1;--dark:#0e0e11;--muted:#6d6d76;--muted-dark:#b9b9c1;}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--paper);}
body{font-family:'Titillium Web',sans-serif;color:var(--ink);}
a{color:var(--red);text-decoration:none;}
a:hover{color:var(--red-dark);}
img{max-width:100%;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
.kicker{color:var(--red);font-weight:700;letter-spacing:.18em;font-size:13px;text-transform:uppercase;}
h1.hero-title{margin:0;font-size:52px;line-height:1.08;font-weight:900;font-style:italic;letter-spacing:-.01em;}
h2.sec-title{margin:0;font-size:36px;font-weight:900;font-style:italic;}
.btn{display:inline-block;background:var(--red);color:#fff;padding:13px 28px;border-radius:6px;font-weight:700;font-style:italic;font-size:17px;border:none;cursor:pointer;font-family:inherit;}
.btn:hover{background:var(--red-dark);color:#fff;}
.btn-ghost{display:inline-block;border:1.5px solid #4a4a52;color:#fff;padding:13px 28px;border-radius:6px;font-weight:700;font-size:17px;}
.btn-ghost:hover{border-color:var(--red);color:var(--red);}
/* topbar */
.topbar{background:var(--dark);color:#c9c9cf;font-size:13px;}
.topbar .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:7px;padding-bottom:7px;}
.topbar a{color:#c9c9cf;}
.topbar a:hover{color:var(--red);}
.topbar .spacer{flex:1;}
.topbar .links{display:flex;gap:16px;align-items:center;}
/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,249,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.site-header .wrap{display:flex;align-items:center;gap:28px;padding-top:14px;padding-bottom:14px;}
.site-header .logo img{height:42px;display:block;}
.site-nav{display:flex;gap:24px;align-items:center;flex:1;justify-content:flex-end;font-weight:600;font-size:15px;}
.site-nav a{color:var(--ink);}
.site-nav a:hover{color:var(--red);}
.site-nav a.cta{background:var(--red);color:#fff;padding:9px 20px;border-radius:5px;font-weight:700;font-style:italic;}
.site-nav a.cta:hover{background:var(--red-dark);color:#fff;}
/* hero */
.hero{background:var(--dark);color:#fff;overflow:hidden;position:relative;}
.hero .deco{position:absolute;right:-120px;top:-160px;width:560px;height:560px;transform:rotate(18deg);background:linear-gradient(135deg,rgba(232,34,12,.13),rgba(232,34,12,.02));clip-path:polygon(50% 0,100% 100%,0 100%);}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;position:relative;padding-top:80px;padding-bottom:72px;}
.hero .lead{font-size:19px;line-height:1.6;color:var(--muted-dark);max-width:520px;margin:0;}
.hero .col{display:flex;flex-direction:column;gap:22px;}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;}
.hero .mascotte{display:flex;justify-content:center;}
.hero .mascotte img{max-height:380px;filter:drop-shadow(0 20px 40px rgba(232,34,12,.25));}
/* stats */
.stats{background:#fff;border-bottom:1px solid var(--line);}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:28px;padding-bottom:28px;}
.stat{border-left:3px solid var(--red);padding-left:16px;}
.stat b{display:block;font-size:28px;font-weight:900;font-style:italic;}
.stat span{font-size:14px;color:var(--muted);}
/* sections */
.section{padding:64px 0;}
.section-head{display:flex;flex-direction:column;gap:8px;margin-bottom:36px;}
.section-head p{margin:0;color:var(--muted);font-size:17px;max-width:640px;}
/* services grid */
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.svc-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px 22px;display:flex;flex-direction:column;gap:10px;color:var(--ink);transition:border-color .15s,transform .15s,box-shadow .15s;}
.svc-card:hover{border-color:var(--red);transform:translateY(-3px);box-shadow:0 12px 28px rgba(23,23,26,.08);color:var(--ink);}
.svc-card .card-top{display:flex;align-items:center;justify-content:space-between;}
.svc-card .ico{color:var(--red);display:flex;}
.svc-card .num{font-size:13px;font-weight:700;color:var(--red);font-style:italic;}
.svc-card .name{font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;line-height:1.2;}
.svc-card .desc{font-size:14px;color:var(--muted);line-height:1.5;flex:1;}
.svc-card .more{font-size:13px;font-weight:700;color:var(--red);}
/* online */
.dark-section{background:var(--dark);color:#fff;}
.online-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.online-card{background:#17171c;border:1px solid #2c2c33;border-radius:8px;padding:26px 24px;display:flex;flex-direction:column;gap:8px;color:#fff;}
.online-card:hover{border-color:var(--red);color:#fff;}
.online-card .t{font-size:22px;font-weight:900;font-style:italic;color:var(--red);}
.online-card .d{font-size:15px;color:var(--muted-dark);line-height:1.5;}
.online-card .l{font-size:13px;font-weight:700;color:var(--red);}
/* risorse */
.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.res-card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);}
.res-card:hover{border-color:var(--red);color:var(--ink);}
.res-card .img{background:#f3f1ef;display:flex;justify-content:center;align-items:center;padding:20px;height:170px;}
.res-card .img img{max-height:130px;}
.res-card .body{padding:18px 20px;display:flex;flex-direction:column;gap:4px;}
.res-card .t{font-size:18px;font-weight:700;font-style:italic;}
.res-card .d{font-size:14px;color:var(--muted);}
/* chi siamo */
.about{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.about .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start;padding-top:64px;padding-bottom:64px;}
.about .col{display:flex;flex-direction:column;gap:16px;}
.about p{margin:0;font-size:17px;line-height:1.7;color:#3d3d44;}
.values{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.value{border:1px solid var(--line);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:6px;}
.value b{font-weight:900;font-style:italic;font-size:18px;color:var(--red);}
.value span{font-size:14px;color:var(--muted);line-height:1.5;}
/* contatti */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;}
.contact-col{display:flex;flex-direction:column;gap:18px;}
.contact-col p{margin:0;color:var(--muted);font-size:16px;line-height:1.6;}
.contact-links{display:flex;flex-direction:column;gap:10px;}
.contact-links a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:14px 18px;color:var(--ink);background:#fff;font-weight:600;}
.contact-links a:hover{border-color:var(--red);color:var(--ink);}
.contact-links .lbl{color:var(--red);font-weight:900;font-style:italic;width:88px;display:inline-block;}
.address{font-size:14px;color:var(--muted);line-height:1.7;}
.quote-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;flex-direction:column;gap:14px;}
.quote-form .t{font-size:20px;font-weight:900;font-style:italic;}
.quote-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.quote-form input,.quote-form textarea{border:1px solid #d9d5d1;border-radius:6px;padding:11px 14px;font-family:inherit;font-size:15px;background:var(--paper);width:100%;}
.quote-form textarea{resize:vertical;}
.quote-form .note{font-size:12px;color:#9b9ba3;}
/* footer */
.site-footer{background:var(--dark);color:var(--muted-dark);}
.site-footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding:48px 0 32px;}
.site-footer img.flogo{height:44px;width:auto;object-fit:contain;}
.site-footer .col{display:flex;flex-direction:column;gap:8px;font-size:14px;}
.site-footer .col .h{color:#fff;font-weight:700;font-style:italic;font-size:16px;margin-bottom:4px;}
.site-footer a{color:var(--muted-dark);}
.site-footer a:hover{color:var(--red);}
.site-footer .legal{border-top:1px solid #26262c;}
.site-footer .legal .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#7c7c85;padding-top:16px;padding-bottom:16px;}
/* pagina servizio */
.svc-hero{background:var(--dark);color:#fff;}
.svc-hero .wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;padding-top:56px;padding-bottom:48px;}
.svc-hero .col{display:flex;flex-direction:column;gap:16px;}
.svc-hero .back{color:var(--muted-dark);font-size:14px;font-weight:600;}
.svc-hero .back:hover{color:var(--red);}
.svc-hero h1{margin:0;font-size:44px;font-weight:900;font-style:italic;line-height:1.1;}
.svc-hero p{margin:0;font-size:18px;line-height:1.65;color:var(--muted-dark);max-width:560px;}
.svc-hero .img{display:flex;justify-content:center;}
.svc-hero .mascotte-badge{position:relative;display:inline-block;}
.svc-hero .badge{position:absolute;right:-6px;bottom:8px;width:76px;height:76px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;border:3px solid var(--dark);box-shadow:0 8px 20px rgba(232,34,12,.4);color:#fff;}
.svc-hero .img img{max-height:300px;filter:drop-shadow(0 16px 32px rgba(0,0,0,.5));}
.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.feat{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px 24px;display:flex;flex-direction:column;gap:8px;}
.feat b{font-size:18px;font-weight:700;font-style:italic;color:var(--red);}
.feat span{font-size:15px;color:#3d3d44;line-height:1.6;}
.why-cta{background:#fff;border-top:1px solid var(--line);}
.why-cta .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:48px 24px 64px;}
.why-list{display:flex;flex-direction:column;gap:10px;}
.why-list .row{display:flex;gap:12px;align-items:baseline;font-size:16px;line-height:1.6;color:#3d3d44;}
.why-list .x{color:var(--red);font-weight:900;}
.cta-box{background:var(--dark);border-radius:10px;padding:32px;color:#fff;display:flex;flex-direction:column;gap:14px;}
.cta-box .t{font-size:24px;font-weight:900;font-style:italic;}
.cta-box .d{font-size:15px;color:var(--muted-dark);line-height:1.6;}
.cta-box .actions{display:flex;gap:12px;flex-wrap:wrap;}
.cta-box .btn{padding:11px 22px;font-size:15px;}
.cta-box .btn-ghost{padding:11px 22px;font-size:15px;}
/* responsive */
@media(max-width:960px){
.hero .wrap,.about .wrap,.contact-grid,.svc-hero .wrap,.why-cta .wrap{grid-template-columns:1fr;}
.services-grid{grid-template-columns:repeat(2,1fr);}
.online-grid,.res-grid{grid-template-columns:1fr;}
.stats .wrap{grid-template-columns:repeat(2,1fr);}
.site-footer .cols{grid-template-columns:1fr;}
h1.hero-title{font-size:38px;}
.feat-grid{grid-template-columns:1fr;}
.site-nav{flex-wrap:wrap;gap:14px;}
}
@media(max-width:560px){.services-grid{grid-template-columns:1fr;}.stats .wrap{grid-template-columns:1fr;}}

/* pagine generiche (privacy, ecc.) */
.page-content{font-size:16px;line-height:1.75;max-width:820px;color:#3d3d44;}
.page-content h1,.page-content h2,.page-content h3{font-weight:900;font-style:italic;color:var(--ink);margin:1.6em 0 .5em;}
.page-content h2{font-size:26px;}
.page-content h3{font-size:20px;}
.page-content p{margin:0 0 1em;}
.page-content ul,.page-content ol{margin:0 0 1em;padding-left:1.4em;}
.page-content li{margin-bottom:.4em;}
.page-content a{font-weight:600;}
.page-content table{border-collapse:collapse;width:100%;margin:0 0 1em;}
.page-content th,.page-content td{border:1px solid var(--line);padding:8px 12px;text-align:left;font-size:15px;}
.page-content th{background:#fff;font-weight:700;}
.page-content strong{color:var(--ink);}

.value .vicon{color:var(--red);display:flex;}
