/* =========================================================
   SA Line Transport — foglio di stile principale
   ========================================================= */

:root{
	--sl-asfalto:#141C22;
	--sl-verde:#0B6B3F;
	--sl-giallo:#F2B705;
	--sl-nebbia:#EDF1EE;
	--sl-carta:#FFFFFF;
	--sl-testo:#1B242B;
	--sl-grigio:#5E6C74;
	--sl-linea:#D9E0DB;
	--sl-wa:#25D366;
	--sl-tacca:transparent;

	--sl-wrap:1180px;
	--sl-r:10px;

	--sl-display:"Archivo","Archivo Narrow","Helvetica Neue",Arial,sans-serif;
	--sl-testo-font:"IBM Plex Sans","Segoe UI",Roboto,Arial,sans-serif;
	--sl-mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth;scroll-padding-top:96px}

body{
	margin:0;
	background:var(--sl-carta);
	color:var(--sl-testo);
	font-family:var(--sl-testo-font);
	font-size:17px;
	line-height:1.62;
	-webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}

a{color:var(--sl-verde);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--sl-asfalto)}

h1,h2,h3,h4{
	font-family:var(--sl-display);
	font-weight:700;
	letter-spacing:-.02em;
	line-height:1.12;
	margin:0 0 .5em;
	color:var(--sl-asfalto);
}

p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.1em}

:focus-visible{
	outline:3px solid var(--sl-giallo);
	outline-offset:2px;
	border-radius:3px;
}

.wrap{width:100%;max-width:var(--sl-wrap);margin:0 auto;padding:0 24px}

.screen-reader-text{
	position:absolute!important;width:1px;height:1px;overflow:hidden;
	clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap;
}

.skip-link{
	position:absolute;left:-9999px;top:0;z-index:999;
	background:var(--sl-giallo);color:var(--sl-asfalto);
	padding:12px 20px;font-weight:600;
}
.skip-link:focus{left:12px;top:12px}

/* ---------- Pulsanti ---------- */

.btn{
	display:inline-flex;align-items:center;justify-content:center;gap:9px;
	padding:14px 22px;
	font-family:var(--sl-display);
	font-size:15.5px;font-weight:600;letter-spacing:.01em;
	border-radius:6px;border:1.5px solid transparent;
	text-decoration:none;cursor:pointer;
	transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.btn .ico{width:19px;height:19px;flex:none}

.btn--accento{background:var(--sl-giallo);color:var(--sl-asfalto)}
.btn--accento:hover{background:#DCA504;color:var(--sl-asfalto)}

.btn--whatsapp{background:var(--sl-verde);color:#fff}
.btn--whatsapp:hover{background:#08542F;color:#fff}

.btn--linea{background:transparent;color:var(--sl-asfalto);border-color:var(--sl-linea)}
.btn--linea:hover{border-color:var(--sl-asfalto);color:var(--sl-asfalto)}

.btn--fantasma{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.btn--fantasma:hover{background:rgba(255,255,255,.1);color:#fff;border-color:#fff}

.btn--largo{width:100%}

.link-freccia{
	font-family:var(--sl-display);font-weight:600;
	text-decoration:none;border-bottom:2px solid var(--sl-giallo);
	padding-bottom:2px;
}

/* ---------- Barra superiore ---------- */

.barra-top{background:var(--sl-asfalto);color:rgba(255,255,255,.78);font-size:14px}
.barra-top__in{display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center;min-height:40px}
.barra-top__voce{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none}
.barra-top__voce:hover{color:#fff}
.barra-top .ico{width:15px;height:15px;color:var(--sl-giallo)}
.barra-top__orari{margin-left:auto}

/* ---------- Testata ---------- */

.testata{
	position:sticky;top:0;z-index:60;
	background:rgba(255,255,255,.96);
	backdrop-filter:saturate(1.4) blur(8px);
	border-bottom:1px solid var(--sl-linea);
}
.testata__in{display:flex;align-items:center;gap:20px;min-height:76px}

.marchio__link{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.marchio__testo{display:flex;flex-direction:column;line-height:1.1}
.marchio__nome{
	font-family:var(--sl-display);font-weight:800;font-size:19px;
	letter-spacing:-.02em;color:var(--sl-asfalto);
}
.marchio__claim{font-size:12.5px;color:var(--sl-grigio);letter-spacing:.02em}
.custom-logo{max-height:56px;width:auto}

/* targa in stile europeo */
.targa{
	display:inline-flex;align-items:stretch;
	border:2px solid var(--sl-asfalto);border-radius:5px;
	overflow:hidden;background:#fff;height:38px;
}
.targa__eu{
	display:flex;align-items:flex-end;justify-content:center;
	width:16px;background:#16357A;color:#F5D000;
	font-family:var(--sl-display);font-size:10px;font-weight:700;
	padding-bottom:3px;
}
.targa__sigla{
	display:flex;align-items:center;padding:0 9px;
	font-family:var(--sl-display);font-weight:800;font-size:19px;
	letter-spacing:.04em;color:var(--sl-asfalto);
}
.targa--chiara{border-color:#fff;background:transparent}
.targa--chiara .targa__sigla{color:#fff}

/* ---------- Navigazione ---------- */

.nav{margin-left:auto;display:flex;align-items:center;gap:26px}

.nav__lista{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}
.nav__lista a{
	font-family:var(--sl-display);font-size:15.5px;font-weight:600;
	color:var(--sl-asfalto);text-decoration:none;
	padding:6px 0;border-bottom:2px solid transparent;
}
.nav__lista a:hover,
.nav__lista .current-menu-item > a{border-bottom-color:var(--sl-giallo)}

.nav__lista .sub-menu{
	position:absolute;display:none;flex-direction:column;gap:0;
	background:#fff;border:1px solid var(--sl-linea);border-radius:8px;
	padding:8px;min-width:210px;list-style:none;
	box-shadow:0 18px 40px rgba(20,28,34,.12);
}
.nav__lista .menu-item-has-children{position:relative}
.nav__lista .menu-item-has-children:hover .sub-menu,
.nav__lista .menu-item-has-children:focus-within .sub-menu{display:flex}
.nav__lista .sub-menu a{padding:8px 10px;border:0;display:block}

.nav__azioni{display:flex;align-items:center;gap:10px}
.nav__azioni .btn{padding:11px 17px;font-size:14.5px}

.hamburger{
	display:none;margin-left:auto;
	width:46px;height:42px;border:1.5px solid var(--sl-linea);border-radius:6px;
	background:#fff;cursor:pointer;
	flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.hamburger__linea{display:block;width:20px;height:2px;background:var(--sl-asfalto)}

/* ---------- Hero ---------- */

.hero{position:relative;background:var(--sl-asfalto);color:#fff;overflow:hidden;--sl-tacca:var(--sl-asfalto)}
.hero__strada{
	position:absolute;inset:0;
	background-image:
		repeating-linear-gradient(115deg,rgba(255,255,255,.035) 0 2px,transparent 2px 26px),
		radial-gradient(1000px 420px at 12% 0%,rgba(11,107,63,.55),transparent 70%);
	pointer-events:none;
}
.hero__in{
	position:relative;
	display:grid;grid-template-columns:1.02fr .98fr;gap:56px;
	padding:74px 24px 88px;align-items:center;
}

.hero__occhiello{
	display:inline-flex;align-items:center;gap:9px;
	background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
	border-radius:999px;padding:7px 16px 7px 12px;
	font-family:var(--sl-display);font-size:14px;font-weight:600;
	color:#fff;margin:0 0 22px;
}
.hero__occhiello .ico{width:19px;height:19px;color:var(--sl-giallo)}

.hero__titolo{
	color:#fff;font-size:clamp(2.2rem,4.4vw,3.5rem);
	font-weight:800;letter-spacing:-.033em;line-height:1.04;
	margin:0 0 20px;max-width:15ch;
}
.hero__descrizione{
	color:rgba(255,255,255,.8);font-size:18px;max-width:52ch;margin:0 0 30px;
}

.hero__azioni{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:44px}

.kpi{display:grid;grid-template-columns:repeat(3,auto);gap:34px;margin:0;justify-content:start}
.kpi__voce{border-top:2px solid var(--sl-giallo);padding-top:12px}
.kpi__num{
	font-family:var(--sl-display);font-weight:800;font-size:30px;
	letter-spacing:-.02em;color:#fff;
}
.kpi__txt{margin:2px 0 0;color:rgba(255,255,255,.66);font-size:14.5px;max-width:16ch}

/* ---------- Bolla (calcolatore) ---------- */

.bolla{
	background:var(--sl-carta);
	border-radius:var(--sl-r);
	box-shadow:0 30px 70px rgba(0,0,0,.34);
	overflow:hidden;
	color:var(--sl-testo);
}

.bolla__testata{
	display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
	padding:22px 26px;background:var(--sl-verde);color:#fff;
}
.bolla__titolo{color:#fff;font-size:22px;margin:0 0 4px}
.bolla__sottotitolo{margin:0;font-size:13.5px;color:rgba(255,255,255,.85);max-width:40ch}
.bolla__codice{
	font-family:var(--sl-mono);font-size:11px;letter-spacing:.14em;
	border:1px dashed rgba(255,255,255,.55);border-radius:4px;
	padding:5px 9px;white-space:nowrap;color:#fff;
}

.bolla__corpo{padding:24px 26px 6px}

.campo{margin-bottom:20px}
.campo__eti{
	display:block;margin-bottom:8px;
	font-family:var(--sl-display);font-weight:600;font-size:14px;
	color:var(--sl-asfalto);
}

.bolla input[type="number"],
.bolla select,
.modulo input,
.modulo select,
.modulo textarea{
	width:100%;padding:12px 14px;
	font-family:inherit;font-size:16px;color:var(--sl-testo);
	background:#fff;border:1.5px solid var(--sl-linea);border-radius:7px;
}
.bolla select,.modulo select{appearance:none;background-image:none}
.bolla input[type="number"]:focus,
.bolla select:focus,
.modulo input:focus,
.modulo select:focus,
.modulo textarea:focus{border-color:var(--sl-verde);outline:none;box-shadow:0 0 0 3px rgba(11,107,63,.14)}

.campo__peso{position:relative}
.campo__peso input{padding-right:52px}
.campo__unita{
	position:absolute;right:14px;top:50%;transform:translateY(-50%);
	font-family:var(--sl-mono);font-size:14px;color:var(--sl-grigio);
}

.chip-riga{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.chip{
	border:1px solid var(--sl-linea);background:#fff;border-radius:999px;
	padding:6px 13px;font-family:var(--sl-mono);font-size:12.5px;
	color:var(--sl-grigio);cursor:pointer;
}
.chip:hover{border-color:var(--sl-verde);color:var(--sl-verde)}
.chip.attivo{background:var(--sl-asfalto);border-color:var(--sl-asfalto);color:#fff}

.segmenti{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.segmento input{position:absolute;opacity:0;pointer-events:none}
.segmento span{
	display:flex;align-items:center;justify-content:center;gap:8px;
	padding:13px 10px;border:1.5px solid var(--sl-linea);border-radius:7px;
	font-family:var(--sl-display);font-weight:600;font-size:15px;
	cursor:pointer;background:#fff;
}
.segmento .ico{width:18px;height:18px;color:var(--sl-grigio)}
.segmento input:checked + span{
	border-color:var(--sl-verde);background:rgba(11,107,63,.07);color:var(--sl-verde);
}
.segmento input:checked + span .ico{color:var(--sl-verde)}
.segmento input:focus-visible + span{outline:3px solid var(--sl-giallo);outline-offset:2px}

.spunta{display:flex;align-items:flex-start;gap:10px;margin-bottom:9px;font-size:15.5px;cursor:pointer}
.spunta input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--sl-verde);flex:none}

/* perforazione stile bolla di consegna */
.bolla__perforazione{
	position:relative;height:22px;background:var(--sl-carta);
}
.bolla__perforazione::before{
	content:"";position:absolute;left:18px;right:18px;top:50%;
	border-top:2px dashed var(--sl-linea);
}
.bolla__perforazione::after{
	content:"";position:absolute;top:50%;left:-11px;right:-11px;height:22px;
	transform:translateY(-50%);
	background:
		radial-gradient(circle 11px at 0 50%,var(--sl-tacca) 98%,transparent 100%),
		radial-gradient(circle 11px at 100% 50%,var(--sl-tacca) 98%,transparent 100%);
}

.bolla__esito{background:var(--sl-nebbia);padding:22px 26px 26px}

.esito__tariffa{
	font-family:var(--sl-mono);font-size:13px;color:var(--sl-verde);
	background:rgba(11,107,63,.09);border-radius:5px;
	padding:8px 11px;margin:0 0 16px;
}

.esito__righe{list-style:none;margin:0 0 14px;padding:0}
.esito__righe li{
	display:flex;justify-content:space-between;gap:16px;
	padding:8px 0;border-bottom:1px solid rgba(20,28,34,.09);
	font-size:15px;
}
.esito__righe li b{font-family:var(--sl-mono);font-weight:600;white-space:nowrap}
.esito__righe li[hidden]{display:none}
.esito__riga-iva{color:var(--sl-grigio)}

.esito__totale{
	display:flex;justify-content:space-between;align-items:baseline;gap:16px;
	padding:14px 0 6px;
}
.esito__totale span{font-family:var(--sl-display);font-weight:600;font-size:16px}
.esito__totale strong{
	font-family:var(--sl-display);font-weight:800;font-size:34px;
	letter-spacing:-.02em;color:var(--sl-verde);
}

.esito__nota{margin:0 0 16px;font-size:13.5px;color:var(--sl-grigio)}
.esito__azioni{display:grid;gap:9px}
.esito__disclaimer{margin:14px 0 0;font-size:12.5px;line-height:1.5;color:var(--sl-grigio)}

/* ---------- Sezioni ---------- */

.sezione{padding:82px 0}
.sezione--servizi{background:var(--sl-carta)}
.sezione--passi{background:var(--sl-nebbia)}
.sezione--tariffe{background:var(--sl-carta)}
.sezione--flotta{background:var(--sl-asfalto);color:rgba(255,255,255,.8)}
.sezione--tracking{background:var(--sl-nebbia)}
.sezione--contatti{background:var(--sl-carta)}

.sezione__testata{max-width:62ch;margin:0 0 46px}
.sezione__titolo{font-size:clamp(1.7rem,3vw,2.35rem);margin:0 0 12px}
.sezione__intro{color:var(--sl-grigio);font-size:17.5px;margin:0}
.sezione__testata--chiara .sezione__titolo{color:#fff}
.sezione__testata--chiara .sezione__intro{color:rgba(255,255,255,.7)}

/* ---------- Servizi ---------- */

.servizi{
	display:grid;grid-template-columns:repeat(2,1fr);
	column-gap:56px;
	border-top:1px solid var(--sl-linea);
}
.servizio{
	display:flex;gap:18px;align-items:flex-start;
	padding:28px 0;border-bottom:1px solid var(--sl-linea);
}
.servizio__icona{
	flex:none;width:48px;height:48px;border-radius:9px;
	display:flex;align-items:center;justify-content:center;
	background:rgba(11,107,63,.09);color:var(--sl-verde);
}
.servizio__icona .ico{width:24px;height:24px}
.servizio__tag{
	margin:0 0 5px;font-family:var(--sl-mono);font-size:11.5px;
	letter-spacing:.08em;color:var(--sl-verde);
}
.servizio__titolo{font-size:19.5px;margin:0 0 7px}
.servizio__testo p{margin:0;color:var(--sl-grigio);font-size:15.5px}

/* ---------- Passi ---------- */

.passi{
	list-style:none;margin:0;padding:0;
	display:grid;grid-template-columns:repeat(4,1fr);gap:26px;
	counter-reset:passo;
}
.passo{position:relative;padding-top:8px}
.passo::after{
	content:"";position:absolute;top:27px;left:56px;right:-26px;
	border-top:2px dashed rgba(20,28,34,.18);
}
.passo:last-child::after{display:none}
.passo__num{
	display:flex;align-items:center;justify-content:center;
	width:42px;height:42px;border-radius:8px;
	background:var(--sl-asfalto);color:var(--sl-giallo);
	font-family:var(--sl-display);font-weight:800;font-size:18px;
	margin-bottom:16px;position:relative;z-index:1;
}
.passo__titolo{font-size:18px;margin:0 0 6px}
.passo p{margin:0;color:var(--sl-grigio);font-size:15.5px}

/* ---------- Tariffe ---------- */

.tariffe{display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:start}

.tabella{width:100%;border-collapse:collapse;font-size:16px}
.tabella th,.tabella td{text-align:left;padding:15px 12px;border-bottom:1px solid var(--sl-linea)}
.tabella thead th{
	font-family:var(--sl-display);font-size:13.5px;color:var(--sl-grigio);
	font-weight:600;border-bottom-width:2px;border-bottom-color:var(--sl-asfalto);
	padding-top:0;
}
.tabella tbody th{font-family:var(--sl-testo-font);font-weight:500;color:var(--sl-testo)}
.tabella td{font-family:var(--sl-mono);font-weight:600;white-space:nowrap}
.tabella__evidenza th,.tabella__evidenza td{background:rgba(242,183,5,.16)}
.tabella__evidenza th{box-shadow:inset 4px 0 0 var(--sl-giallo)}

.tariffe__nota{margin:16px 0 0;font-size:14px;color:var(--sl-grigio)}

.tariffe__lato{display:grid;gap:18px}

.riquadro{
	border:1px solid var(--sl-linea);border-radius:var(--sl-r);
	padding:22px;background:#fff;
}
.riquadro--accento{background:var(--sl-asfalto);border-color:var(--sl-asfalto);color:rgba(255,255,255,.76)}
.riquadro__eti{
	margin:0 0 6px;font-family:var(--sl-mono);font-size:11.5px;
	letter-spacing:.08em;color:var(--sl-giallo);
}
.riquadro__num{
	font-family:var(--sl-display);font-weight:800;font-size:44px;
	letter-spacing:-.03em;color:#fff;margin:0 0 8px;line-height:1;
}
.riquadro__num span{font-size:18px;font-weight:600;color:rgba(255,255,255,.65);margin-left:4px}
.riquadro--accento p:last-child{margin:0;font-size:15px}
.riquadro__titolo{font-size:17px;margin:0 0 12px}

.lista-dati{list-style:none;margin:0;padding:0}
.lista-dati li{
	display:flex;justify-content:space-between;gap:14px;
	padding:9px 0;border-bottom:1px solid var(--sl-linea);font-size:15px;
}
.lista-dati li:last-child{border-bottom:0;padding-bottom:0}
.lista-dati b{font-family:var(--sl-mono);font-weight:600;white-space:nowrap}

/* ---------- Flotta ---------- */

.flotta{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.mezzo{
	border:1px solid rgba(255,255,255,.16);border-radius:var(--sl-r);
	padding:22px 20px;background:rgba(255,255,255,.03);
}
.mezzo__icona{color:var(--sl-giallo);margin-bottom:14px}
.mezzo__icona .ico{width:30px;height:30px}
.mezzo__nome{color:#fff;font-size:17.5px;margin:0 0 8px}
.mezzo__portata{
	display:flex;align-items:center;gap:7px;margin:0 0 10px;
	font-family:var(--sl-mono);font-size:13px;color:var(--sl-giallo);
}
.mezzo__portata .ico{width:16px;height:16px}
.mezzo__uso{margin:0;font-size:14.5px;color:rgba(255,255,255,.66)}

/* ---------- Tracking ---------- */

.tracking{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.tracking__testo .sezione__titolo{margin-bottom:14px}
.tracking__testo p{color:var(--sl-grigio);max-width:52ch}
.tracking__azione{margin-top:22px}

.tracking__tappe{display:grid;gap:10px}
.tappa{
	display:flex;align-items:center;gap:12px;
	background:#fff;border:1px solid var(--sl-linea);border-radius:8px;
	padding:15px 18px;font-family:var(--sl-display);font-weight:600;font-size:15.5px;
	color:var(--sl-grigio);
}
.tappa .ico{width:20px;height:20px;color:var(--sl-linea)}
.tappa--fatta{color:var(--sl-asfalto);border-color:var(--sl-verde)}
.tappa--fatta .ico{color:var(--sl-verde)}

/* ---------- Contatti ---------- */

.contatti{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}

.contatti__lista{list-style:none;margin:28px 0 0;padding:0}
.contatti__lista li{display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--sl-linea)}
.contatti__lista .ico{width:21px;height:21px;color:var(--sl-verde);flex:none;margin-top:3px}
.contatti__lista b{display:block;font-family:var(--sl-display);font-size:13.5px;color:var(--sl-grigio);font-weight:600}
.contatti__lista a{color:var(--sl-asfalto);text-decoration:none;font-size:17px}
.contatti__lista a:hover{text-decoration:underline}

.modulo{
	background:var(--sl-nebbia);border-radius:var(--sl-r);
	padding:28px;border:1px solid var(--sl-linea);
}
.modulo__titolo{font-size:20px;margin:0 0 18px}
.modulo__riga{margin-bottom:15px}
.modulo__doppia{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.modulo textarea{resize:vertical;min-height:120px}
.spunta--privacy{font-size:14px;color:var(--sl-grigio);margin:6px 0 18px}
.campo-esca{position:absolute;left:-9999px;height:0;overflow:hidden}
.modulo__esito{margin:14px 0 0;font-size:15px;min-height:1.2em}
.modulo__esito.ok{color:var(--sl-verde);font-weight:600}
.modulo__esito.ko{color:#B4232A;font-weight:600}

/* ---------- Articoli ---------- */

.elenco-articoli{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.articolo{border:1px solid var(--sl-linea);border-radius:var(--sl-r);overflow:hidden;background:#fff}
.articolo__foto img{width:100%;aspect-ratio:16/10;object-fit:cover}
.articolo__testo{padding:20px}
.articolo__data{font-family:var(--sl-mono);font-size:12.5px;color:var(--sl-grigio);margin:0 0 7px}
.articolo__titolo{font-size:19px;margin:0 0 8px}
.articolo__titolo a{color:var(--sl-asfalto);text-decoration:none}
.articolo__copertina{margin:22px 0}

.testo-lungo{max-width:74ch}
.titolo-pagina{font-size:clamp(1.9rem,3.4vw,2.6rem);margin-bottom:18px}
.testo-lungo img{border-radius:var(--sl-r)}

.pagination{margin-top:40px;display:flex;gap:10px}
.pagination .page-numbers{
	display:inline-flex;align-items:center;justify-content:center;
	min-width:42px;height:42px;padding:0 10px;
	border:1px solid var(--sl-linea);border-radius:7px;
	text-decoration:none;color:var(--sl-asfalto);
}
.pagination .current{background:var(--sl-asfalto);color:#fff;border-color:var(--sl-asfalto)}

.errore-404__codice{
	font-family:var(--sl-display);font-weight:800;font-size:76px;
	color:var(--sl-giallo);margin:0;line-height:1;
}
.errore-404__azioni{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}

.pagina-calc{max-width:620px}

.widget{margin-bottom:28px}

/* ---------- Piè di pagina ---------- */

.pie{background:var(--sl-asfalto);color:rgba(255,255,255,.66);padding:68px 0 0;font-size:15px}
.pie__griglia{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px}
.pie__nome{font-family:var(--sl-display);font-weight:800;color:#fff;font-size:18px;margin:14px 0 8px}
.pie__testo{max-width:36ch;font-size:14.5px}
.pie__titolo{color:#fff;font-size:15px;margin:0 0 14px;font-family:var(--sl-display)}
.pie__lista{list-style:none;margin:0;padding:0}
.pie__lista li{padding:5px 0}
.pie__lista a{color:rgba(255,255,255,.72);text-decoration:none}
.pie__lista a:hover{color:var(--sl-giallo)}
.pie__social{display:flex;gap:16px;margin-top:16px}
.pie__social a{color:var(--sl-giallo);text-decoration:none;font-size:14.5px}
.pie__base{
	display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
	border-top:1px solid rgba(255,255,255,.12);padding-top:20px;padding-bottom:26px;
	font-size:13px;color:rgba(255,255,255,.5);
}
.pie__base p{margin:0}

/* ---------- WhatsApp fisso ---------- */

.whatsapp-fisso{
	position:fixed;right:20px;bottom:20px;z-index:80;
	display:inline-flex;align-items:center;gap:10px;
	background:var(--sl-wa);color:#fff;text-decoration:none;
	padding:14px 20px;border-radius:999px;
	box-shadow:0 14px 34px rgba(18,140,74,.4);
	font-family:var(--sl-display);font-weight:700;font-size:15.5px;
}
.whatsapp-fisso svg{width:24px;height:24px;flex:none}
.whatsapp-fisso:hover{background:#1FB959;color:#fff}

/* ---------- Responsive ---------- */

@media (max-width:1080px){
	.hero__in{grid-template-columns:1fr;gap:44px;padding-top:56px}
	.hero__titolo{max-width:22ch}
	.hero__calc{max-width:560px}
	.flotta{grid-template-columns:repeat(3,1fr)}
	.tariffe{grid-template-columns:1fr;gap:34px}
	.tracking{grid-template-columns:1fr;gap:32px}
	.elenco-articoli{grid-template-columns:repeat(2,1fr)}
	.pie__griglia{grid-template-columns:1fr 1fr}
}

@media (max-width:900px){
	.hamburger{display:flex}
	.nav{
		display:none;position:absolute;left:0;right:0;top:100%;
		flex-direction:column;align-items:stretch;gap:0;
		background:#fff;border-bottom:1px solid var(--sl-linea);
		padding:14px 24px 22px;
		box-shadow:0 22px 40px rgba(20,28,34,.14);
	}
	.nav.aperto{display:flex}
	.nav__lista{flex-direction:column;align-items:stretch;gap:0}
	.nav__lista li{border-bottom:1px solid var(--sl-linea)}
	.nav__lista a{display:block;padding:13px 0;border:0}
	.nav__lista .sub-menu{position:static;display:flex;border:0;box-shadow:none;padding:0 0 8px 14px}
	.nav__azioni{margin-top:16px;gap:10px}
	.nav__azioni .btn{flex:1}
	.testata__in{position:relative}
	.servizi{grid-template-columns:1fr;column-gap:0}
	.passi{grid-template-columns:1fr 1fr;gap:28px}
	.passo::after{display:none}
	.contatti{grid-template-columns:1fr;gap:38px}
}

@media (max-width:680px){
	body{font-size:16.5px}
	.sezione{padding:58px 0}
	.barra-top__orari{display:none}
	.barra-top__in{gap:6px 18px;font-size:13px}
	.hero__in{padding:44px 24px 62px}
	.kpi{grid-template-columns:1fr 1fr;gap:20px 26px}
	.flotta{grid-template-columns:1fr}
	.elenco-articoli{grid-template-columns:1fr}
	.pie__griglia{grid-template-columns:1fr;gap:30px}
	.modulo__doppia{grid-template-columns:1fr}
	.bolla__testata{flex-direction:column}
	.whatsapp-fisso__testo{display:none}
	.whatsapp-fisso{padding:16px;right:16px;bottom:16px}
	.hero__azioni .btn{width:100%}
}

@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	*{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
