/* Footer di yesicode.it (stessi colori e regole del sito di riferimento).
 * Variabili proprie (--kof-*): il tema definisce --yic-footer-* per il SUO footer scuro e,
 * riusandole, alcuni testi finivano scuri su sfondo scuro. */
.yic-cat-footer {
	--kof-bg: #faf9f7;
	--kof-border: #ecebe7;
	--kof-title: #3d4046;
	--kof-text: #3d4046;
	--kof-about: #5d6066;
	--kof-strong: #14161a;
	--kof-accent: #c2410c;
	border-top: 1px solid var(--kof-border);
	background: var(--kof-bg);
	color: var(--kof-text);
	margin-top: auto;
	font-family: var(--yic-font-body, 'Inter', system-ui, sans-serif);
}
.yic-cat-footer a { text-decoration: none; }
.yic-cat-footer__grid {
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(40px, 7vw, 64px) clamp(18px, 4vw, 28px) 30px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
	gap: 40px;
	align-items: start;
}
.yic-cat-footer__logo { height: 28px; width: auto; max-width: 100%; display: block; margin-bottom: 16px; }
.yic-cat-footer__logo-text { display: block; margin-bottom: 16px; font-size: 1.1rem; color: var(--kof-strong); }
.yic-cat-footer__about { margin: 0; max-width: 34ch; font-size: 0.90625rem; line-height: 1.65; color: var(--kof-about); }
.yic-cat-footer__grid h3 {
	margin: 0 0 14px;
	font: 600 0.6875rem/1 'IBM Plex Sans', var(--yic-font-label, system-ui), sans-serif;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--kof-title);
}
.yic-cat-footer__links { display: flex; flex-direction: column; gap: 9px; font-size: 0.90625rem; }
.yic-cat-footer__links a,
.yic-cat-footer__links a:visited { color: var(--kof-text); }
.yic-cat-footer a:hover { color: var(--kof-accent); }
/* Azione della colonna Assistenza: pillola compatta. */
.yic-cat-footer__links a.yic-cat-footer__cta,
.yic-cat-footer__links a.yic-cat-footer__cta:visited {
	align-self: flex-start;
	margin: 6px 0 0;
	padding: 8px 16px;
	border-radius: 99px;
	background: var(--kof-accent);
	color: #fff;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background .15s ease;
}
.yic-cat-footer__links a.yic-cat-footer__cta:hover { background: #9a3412; color: #fff; }
.yic-cat-footer a:focus-visible { outline: 2px solid var(--kof-strong); outline-offset: 2px; border-radius: 4px; }
.yic-cat-footer__hours { margin: 12px 0 0; font-size: 0.84375rem; line-height: 1.6; color: var(--kof-text); }
.yic-cat-footer__recapiti,
.yic-cat-footer__certs { margin: 0; font-size: 0.90625rem; line-height: 1.8; color: var(--kof-text); }
.yic-cat-footer__certs { margin: 0 0 10px; }
.yic-cat-footer a.yic-cat-footer__more,
.yic-cat-footer a.yic-cat-footer__more:visited { font-size: 0.90625rem; font-weight: 600; color: var(--kof-strong); }
.yic-cat-footer a.yic-cat-footer__more:hover { color: var(--kof-accent); }
.yic-cat-footer__bar { border-top: 1px solid var(--kof-border); background: transparent; }
.yic-cat-footer__bar p {
	max-width: 1180px;
	margin: 0 auto;
	padding: 18px clamp(18px, 4vw, 28px);
	font-size: 0.8125rem;
	color: var(--kof-text);
}
.yic-cat-footer__bar a,
.yic-cat-footer__bar a:visited { color: var(--kof-text); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: rgba(61, 64, 70, .35); }
.yic-cat-footer__bar a:hover { color: var(--kof-accent); text-decoration-color: currentColor; }
