/* ============================================
   AVANET SRL - Stili Custom Componenti
   Centralizzato da avanet-custom.css
   Colori: #e8400e (accent), #1a1a2e (dark), #f7f8fc (light bg), #e8eaf0 (border)
   ============================================ */

/* --- Override: testo hero sotto-header allargato (style.css impone width:35%) --- */
.call-do-action-content p {
	width: 80% !important;
	max-width: 100%;
}
@media(max-width:768px) {
	.call-do-action-content p {
		width: 95% !important;
	}
}

/* --- Horizontal Cards con pannello numerico --- */
.av-hcard-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.av-hcard {
	display:flex; gap:0;
	border:1px solid #e8eaf0; border-radius:14px;
	overflow:hidden;
	transition:box-shadow .25s, transform .25s;
	background:#fff;
}
.av-hcard:hover { box-shadow:0 14px 40px rgba(0,0,0,.1); transform:translateY(-4px); }
.av-hcard-left {
	background:#1a1a2e; min-width:90px; width:90px;
	display:flex; flex-direction:column;
	align-items:center; justify-content:center; gap:10px;
	padding:24px 0; flex-shrink:0;
}
.av-hcard-left .icon { font-size:1.9rem; line-height:1; }
.av-hcard-left .num {
	font-size:0.65rem; font-weight:900; letter-spacing:.1em;
	color:rgba(255,255,255,.45); text-transform:uppercase;
}
.av-hcard-right { padding:28px 24px; }
.av-hcard-title { font-size:.98rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; line-height:1.3; }
.av-hcard-text { font-size:.85rem; color:#555; line-height:1.75; margin:0; }
@media(max-width:640px){ .av-hcard-grid{grid-template-columns:1fr;} }

/* --- Stack Grid (sfondo scuro, 3 colonne) --- */
.av-stack-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-stack-card {
	background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
	border-top:3px solid #e8400e; border-radius:14px; padding:32px 28px;
	transition:background .25s, transform .25s;
}
.av-stack-card:hover { background:rgba(255,255,255,.1); transform:translateY(-4px); }
.av-stack-icon { font-size:2.2rem; margin-bottom:16px; }
.av-stack-title { font-size:1rem; font-weight:800; color:#fff; margin-bottom:10px; }
.av-stack-text { font-size:0.85rem; color:rgba(255,255,255,.65); line-height:1.75; }
@media(max-width:900px) { .av-stack-grid { grid-template-columns:1fr; } }

/* --- Software / Services Grid 3 colonne --- */
.av-sw-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-sw-card {
	background:#fff; border:1px solid #e8eaf0;
	border-top:3px solid #e8400e; border-radius:14px;
	padding:32px 28px; transition:box-shadow .25s, transform .25s;
}
.av-sw-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); transform:translateY(-4px); }
.av-sw-icon { font-size:2rem; margin-bottom:14px; }
.av-sw-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; }
.av-sw-text { font-size:0.875rem; color:#555; line-height:1.75; }
@media(max-width:900px) { .av-sw-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-sw-grid { grid-template-columns:1fr; } }

/* --- App Grid 3 colonne --- */
.av-app-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-app-card {
	background:#fff; border:1px solid #e8eaf0;
	border-top:3px solid #e8400e; border-radius:14px;
	padding:32px 28px; transition:box-shadow .25s, transform .25s;
}
.av-app-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); transform:translateY(-4px); }
.av-app-icon { font-size:2rem; margin-bottom:14px; }
.av-app-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; }
.av-app-text { font-size:0.875rem; color:#555; line-height:1.75; }
@media(max-width:900px) { .av-app-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-app-grid { grid-template-columns:1fr; } }

/* --- Comparison Grid (app-mobile) --- */
.av-cmp-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid #dde1ed; border-radius:16px; overflow:hidden; }
.av-cmp-col { padding:36px 28px; background:#fff; border-right:1px solid #dde1ed; }
.av-cmp-col:last-child { border-right:none; }
.av-cmp-col.featured { background:#1a1a2e; }
.av-cmp-header { text-align:center; margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid #eee; }
.av-cmp-col.featured .av-cmp-header { border-bottom-color:rgba(255,255,255,.15); }
.av-cmp-badge { display:inline-block; background:#e8400e; color:#fff; font-size:0.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; padding:3px 10px; border-radius:20px; margin-bottom:10px; }
.av-cmp-platform-icon { font-size:2.4rem; margin-bottom:12px; display:block; }
.av-cmp-title { font-size:1.05rem; font-weight:800; color:#1a1a2e; margin:0; }
.av-cmp-col.featured .av-cmp-title { color:#fff; }
.av-cmp-subtitle { font-size:0.8rem; color:#888; margin:4px 0 0; }
.av-cmp-col.featured .av-cmp-subtitle { color:rgba(255,255,255,.5); }
.av-cmp-item { display:flex; align-items:flex-start; gap:10px; margin-bottom:14px; }
.av-cmp-item-dot { width:8px; height:8px; border-radius:50%; background:#e8400e; flex-shrink:0; margin-top:6px; }
.av-cmp-item-text { font-size:0.84rem; color:#444; line-height:1.6; }
.av-cmp-col.featured .av-cmp-item-text { color:rgba(255,255,255,.8); }
@media(max-width:768px) { .av-cmp-grid { grid-template-columns:1fr; } .av-cmp-col { border-right:none; border-bottom:1px solid #dde1ed; } }

/* --- E-Commerce 3 colonne Comparison (sfondo scuro) --- */
.av-ec3-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid rgba(255,255,255,.12); border-radius:16px; overflow:hidden; }
.av-ec3-col { padding:36px 28px; border-right:1px solid rgba(255,255,255,.1); }
.av-ec3-col:last-child { border-right:none; }
.av-ec3-col.featured { background:rgba(232,64,14,.15); border-left:3px solid #e8400e; border-right:3px solid #e8400e; }
.av-ec3-header { margin-bottom:24px; padding-bottom:20px; border-bottom:1px solid rgba(255,255,255,.1); }
.av-ec3-badge { display:inline-block; background:#e8400e; color:#fff; font-size:0.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; padding:3px 10px; border-radius:20px; margin-bottom:10px; }
.av-ec3-icon { font-size:2.2rem; display:block; margin-bottom:10px; }
.av-ec3-title { font-size:1.05rem; font-weight:800; color:#fff; margin:0 0 4px; }
.av-ec3-sub { font-size:0.8rem; color:rgba(255,255,255,.45); margin:0; }
.av-ec3-item { display:flex; align-items:flex-start; gap:10px; margin-bottom:13px; }
.av-ec3-dot { width:7px; height:7px; border-radius:50%; background:#e8400e; flex-shrink:0; margin-top:6px; }
.av-ec3-text { font-size:0.83rem; color:rgba(255,255,255,.72); line-height:1.65; }
@media(max-width:900px){ .av-ec3-grid{grid-template-columns:1fr;} .av-ec3-col{border-right:none;border-bottom:1px solid rgba(255,255,255,.1);} .av-ec3-col.featured{border:none;border-bottom:3px solid #e8400e;} }

/* --- E-Commerce Grid 3 colonne --- */
.av-ec-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-ec-card {
	background:#fff; border:1px solid #e8eaf0;
	border-top:3px solid #e8400e; border-radius:14px;
	padding:32px 28px; transition:box-shadow .25s, transform .25s;
}
.av-ec-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); transform:translateY(-4px); }
.av-ec-icon { font-size:2rem; margin-bottom:14px; }
.av-ec-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; }
.av-ec-text { font-size:0.875rem; color:#555; line-height:1.75; }
@media(max-width:900px) { .av-ec-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-ec-grid { grid-template-columns:1fr; } }

/* --- Tile Grid (sfondo scuro, 4 colonne) --- */
.av-tile-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.av-tile {
	padding:44px 28px; text-align:center;
	transition:background .25s, transform .2s;
	border-right:1px solid rgba(255,255,255,.08);
}
.av-tile:last-child { border-right:none; }
.av-tile:hover { background:#e8400e; transform:translateY(-5px); }
.av-tile-icon { font-size:2.8rem; margin-bottom:18px; display:block; line-height:1; }
.av-tile-title { font-size:1rem; font-weight:800; color:#fff; margin-bottom:12px; line-height:1.3; }
.av-tile-text { font-size:0.82rem; color:rgba(255,255,255,.65); line-height:1.75; }
@media(max-width:768px) {
	.av-tile-grid { grid-template-columns:repeat(2,1fr); }
	.av-tile { border-right:none; border-bottom:1px solid rgba(255,255,255,.08); }
}
@media(max-width:480px) { .av-tile-grid { grid-template-columns:1fr; } }

/* --- AI Grid 3 colonne --- */
.av-ai-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-ai-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:32px 28px; transition:box-shadow .25s, border-color .25s, transform .25s;
}
.av-ai-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); border-color:rgba(232,64,14,.25); transform:translateY(-4px); }
.av-ai-icon { font-size:2rem; margin-bottom:16px; }
.av-ai-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; }
.av-ai-text { font-size:0.875rem; color:#555; line-height:1.7; }
@media (max-width:900px) { .av-ai-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:580px) { .av-ai-grid { grid-template-columns:1fr; } }

/* --- AI Models Grid --- */
.av-ai-models { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-ai-model-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:28px 24px; transition:box-shadow .25s, border-color .25s, transform .25s;
}
.av-ai-model-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); border-color:rgba(232,64,14,.25); transform:translateY(-4px); }
.av-model-head { display:flex; align-items:center; gap:14px; margin-bottom:14px; }
.av-model-icon { width:48px; height:48px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:1.5rem; flex-shrink:0; }
.av-model-name { font-size:1rem; font-weight:800; color:#1a1a2e; }
.av-model-maker { font-size:0.78rem; color:#888; }
.av-model-desc { font-size:0.875rem; color:#555; line-height:1.7; margin-bottom:12px; }
.av-model-tag { display:inline-block; font-size:0.72rem; font-weight:700; padding:3px 10px; border-radius:20px; background:#fff3ef; color:#e8400e; border:1px solid rgba(232,64,14,.2); margin:2px; }
@media (max-width:900px) { .av-ai-models { grid-template-columns:repeat(2,1fr); } }
@media (max-width:580px) { .av-ai-models { grid-template-columns:1fr; } }

/* --- Marketing Grid --- */
.av-mkt-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-mkt-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:32px 28px; transition:box-shadow .25s, border-color .25s, transform .25s;
}
.av-mkt-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); border-color:rgba(232,64,14,.25); transform:translateY(-4px); }
.av-mkt-icon { font-size:2rem; margin-bottom:14px; }
.av-mkt-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:8px; }
.av-mkt-text { font-size:0.875rem; color:#555; line-height:1.7; }
@media (max-width:900px) { .av-mkt-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:580px) { .av-mkt-grid { grid-template-columns:1fr; } }

/* --- Forex VPS Tabella Prezzi --- */
.forex-table { width:100%; border-collapse:collapse; margin-bottom:28px; font-size:0.875rem; }
.forex-table th { background:#1a1a2e; color:#fff; padding:12px 16px; text-align:left; font-size:0.8rem; letter-spacing:.05em; text-transform:uppercase; }
.forex-table th:first-child { border-radius:8px 0 0 0; }
.forex-table th:last-child { border-radius:0 8px 0 0; }
.forex-table td { padding:12px 16px; border-bottom:1px solid #e8eaf0; color:#444; vertical-align:top; }
.forex-table tr:hover td { background:#f7f8fc; }
.forex-table tr:last-child td { border-bottom:none; }
.forex-table td.plan-name { font-weight:800; color:#1a1a2e; }
.forex-table td.plan-price { font-weight:800; color:#e8400e; white-space:nowrap; }
.forex-table td.plan-cta a { display:inline-block; background:#e8400e; color:#fff; font-size:0.78rem; font-weight:800; padding:7px 14px; border-radius:6px; text-decoration:none; white-space:nowrap; }
.forex-table td.plan-cta a:hover { background:#c0320a; }
@media(max-width:640px){ .forex-table { font-size:0.78rem; } .forex-table td, .forex-table th { padding:8px 10px; } }

/* --- Brand Carousel Override --- */
.single-brand {
	max-width:100%;
	display:flex !important;
	align-items:center;
	justify-content:center;
	min-height:80px;
}
.single-brand img {
	max-width:100% !important;
	width:100% !important;
	height:70px !important;
	object-fit:contain !important;
	-webkit-filter:grayscale(0) !important;
	filter:grayscale(0) !important;
	opacity:0.85;
	transition:opacity .3s;
}
.single-brand:hover img {
	opacity:1;
}

/* --- Platform Cards (homepage e piattaforme) --- */
.av-platforms-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-pcard {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:32px 28px; display:flex; flex-direction:column;
	align-items:flex-start; transition:box-shadow .25s, border-color .25s, transform .25s;
	text-decoration:none;
}
.av-pcard:hover {
	box-shadow:0 12px 40px rgba(0,0,0,0.10);
	border-color:rgba(232,64,14,0.3);
	transform:translateY(-4px);
	text-decoration:none;
}
.av-pcard-logo {
	width:100%; height:100px; display:flex; align-items:center;
	justify-content:center; margin-bottom:20px; background:#f7f8fc;
	border-radius:10px; padding:14px 20px;
}
.av-pcard-logo img { width:100%; height:100%; object-fit:contain; }
.av-pcard h4 { font-size:1rem; font-weight:800; color:#1a1a2e; margin:0 0 10px; line-height:1.3; }
.av-pcard p { font-size:0.875rem; color:#555; line-height:1.7; margin:0 0 18px; flex-grow:1; }
.av-pcard-link {
	font-size:0.82rem; font-weight:700; color:#e8400e; text-decoration:none;
	display:inline-flex; align-items:center; gap:5px; margin-top:auto;
	transition:gap .2s;
}
.av-pcard-link:hover { gap:9px; color:#c93000; text-decoration:none; }
@media(max-width:900px) { .av-platforms-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-platforms-grid { grid-template-columns:1fr; } }

/* --- Platform Cards variante 7 (piattaforme.php) --- */
.av-platforms-grid-7 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-pcard-7 {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:32px 28px; display:flex; flex-direction:column;
	align-items:flex-start; transition:box-shadow .25s, border-color .25s, transform .25s;
	text-decoration:none;
}
.av-pcard-7:hover {
	box-shadow:0 12px 40px rgba(0,0,0,0.10);
	border-color:rgba(232,64,14,0.3);
	transform:translateY(-4px);
	text-decoration:none;
}
.av-pcard-logo-7 {
	width:100%; height:100px; display:flex; align-items:center;
	justify-content:center; margin-bottom:20px; background:#f7f8fc;
	border-radius:10px; padding:14px 20px;
}
.av-pcard-logo-7 img { width:100%; height:100%; object-fit:contain; }
.av-pcard-7 h4 { font-size:1rem; font-weight:800; color:#1a1a2e; margin:0 0 10px; line-height:1.3; }
.av-pcard-7 p { font-size:0.875rem; color:#555; line-height:1.7; margin:0 0 18px; flex-grow:1; }
.av-pcard-link-7 {
	font-size:0.82rem; font-weight:700; color:#e8400e; text-decoration:none;
	display:inline-flex; align-items:center; gap:5px; margin-top:auto;
	transition:gap .2s;
}
.av-pcard-link-7:hover { gap:9px; color:#c93000; text-decoration:none; }
@media(max-width:900px) { .av-platforms-grid-7 { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-platforms-grid-7 { grid-template-columns:1fr; } }

/* --- Benefits Grid (sfondo scuro, bordo sinistro) --- */
.av-benefits-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-benefit-card {
	background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
	border-left:3px solid #e8400e; border-radius:14px; padding:28px 24px;
	transition:background .25s, transform .25s;
}
.av-benefit-card:hover { background:rgba(255,255,255,.1); transform:translateY(-4px); }
.av-benefit-icon { font-size:2.2rem; margin-bottom:14px; }
.av-benefit-title { font-size:0.95rem; font-weight:800; color:#fff; margin-bottom:10px; }
.av-benefit-text { font-size:0.85rem; color:rgba(255,255,255,.70); line-height:1.75; }
@media(max-width:900px) { .av-benefits-grid { grid-template-columns:1fr; } }

/* --- FAQ Grid --- */
.av-faq-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px; max-width:900px; margin:0 auto; }
.av-faq-item { background:#fff; border:1px solid #e8eaf0; border-radius:12px; padding:28px; transition:box-shadow .25s; }
.av-faq-item:hover { box-shadow:0 8px 28px rgba(0,0,0,.08); }
.av-faq-question { font-size:0.95rem; font-weight:800; color:#1a1a2e; margin-bottom:12px; line-height:1.35; }
.av-faq-answer { font-size:0.85rem; color:#555; line-height:1.75; }
@media(max-width:700px) { .av-faq-grid { grid-template-columns:1fr; } }

/* --- Ecosystem Visual (piattaforme) --- */
.av-ecosystem-visual {
	background:linear-gradient(135deg, #f7f8fc 0%, rgba(232,64,14,0.05) 100%);
	border:1px solid #e8eaf0; border-radius:14px;
	padding:40px 32px; display:flex; flex-direction:column; gap:20px;
}
.av-eco-box {
	background:#fff; border:2px solid #e8eaf0; border-radius:10px;
	padding:20px; text-align:center;
	transition:border-color .25s, transform .25s;
}
.av-eco-box:hover { border-color:#e8400e; transform:translateY(-2px); }
.av-eco-icon { font-size:2rem; margin-bottom:10px; }
.av-eco-label { font-size:0.9rem; font-weight:700; color:#1a1a2e; margin:0; }

/* --- Intro Section --- */
.av-intro-section { max-width:900px; margin:0 auto; text-align:center; }
.av-intro-title { font-size:1.8rem; font-weight:800; color:#1a1a2e; margin-bottom:16px; line-height:1.35; }
.av-intro-text { font-size:0.95rem; color:#555; line-height:1.8; margin-bottom:20px; }
.av-intro-text strong { color:#1a1a2e; font-weight:700; }

/* --- Trust Bar (SEO page) --- */
.av-trust-bar { background:#fff; border-bottom:1px solid #e8eaf0; padding:40px 0; }
.av-trust-items { display:flex; justify-content:center; flex-wrap:wrap; gap:56px; }
.av-trust-item { text-align:center; }
.av-trust-number { font-size:2.4rem; font-weight:900; color:#e8400e; line-height:1; }
.av-trust-label { font-size:0.82rem; color:#666; margin-top:6px; font-weight:600; }
@media(max-width:640px) { .av-trust-items { gap:32px; } .av-trust-number { font-size:1.8rem; } }

/* --- Problem / Solution Comparison (SEO page) --- */
.av-compare-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
.av-compare-col h3 {
	font-size:1.15rem; font-weight:800; margin-bottom:20px;
	display:flex; align-items:center; gap:12px; color:#1a1a2e;
}
.av-compare-icon-circle {
	width:40px; height:40px; border-radius:50%;
	display:flex; align-items:center; justify-content:center;
	font-size:1rem; flex-shrink:0; font-weight:700;
}
.av-compare-col.before .av-compare-icon-circle { background:#fff3ef; color:#e8400e; }
.av-compare-col.after .av-compare-icon-circle { background:#eef5ff; color:#1a73e8; }
.av-compare-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px; }
.av-compare-list li {
	padding:16px 20px; border-radius:12px; font-size:0.88rem;
	line-height:1.6; display:flex; align-items:flex-start; gap:12px;
}
.av-compare-col.before .av-compare-list li { background:#fff3ef; border-left:3px solid #e8400e; }
.av-compare-col.after .av-compare-list li { background:#eef5ff; border-left:3px solid #1a73e8; }
.av-compare-li-icon { flex-shrink:0; margin-top:2px; font-size:0.9rem; }
@media(max-width:768px) { .av-compare-grid { grid-template-columns:1fr; gap:32px; } }

/* --- Differentiator Section (SEO page) --- */
.av-diff-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:60px; align-items:center; }
.av-diff-quote {
	font-size:1.25rem; line-height:1.5; color:#1a1a2e; font-weight:600;
	margin-bottom:24px; padding-left:24px;
	border-left:3px solid #e8400e;
}
.av-diff-text { font-size:0.92rem; color:#555; line-height:1.75; margin-bottom:16px; }
.av-diff-features { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.av-diff-feature {
	background:#f7f8fc; border:1px solid #e8eaf0; border-radius:12px;
	padding:24px; text-align:center; transition:border-color .25s, box-shadow .25s;
}
.av-diff-feature:hover { border-color:#e8400e; box-shadow:0 4px 20px rgba(0,0,0,.06); }
.av-diff-num { font-size:2rem; font-weight:900; color:#e8400e; line-height:1; margin-bottom:6px; }
.av-diff-label { font-size:0.82rem; color:#666; font-weight:600; }
@media(max-width:768px) { .av-diff-grid { grid-template-columns:1fr; gap:40px; } }
@media(max-width:480px) { .av-diff-features { grid-template-columns:1fr; } }

/* --- Accordion FAQ (SEO page) --- */
.av-faq-accordion { max-width:820px; margin:0 auto; }
.av-faq-acc-item { border-bottom:1px solid #e8eaf0; }
.av-faq-acc-btn {
	width:100%; background:none; border:none; text-align:left;
	padding:22px 0; font-size:1rem; font-weight:700;
	color:#1a1a2e; cursor:pointer; display:flex;
	justify-content:space-between; align-items:center; gap:16px;
	font-family:inherit; line-height:1.4; transition:color .2s;
}
.av-faq-acc-btn:hover { color:#e8400e; }
.av-faq-acc-chevron {
	flex-shrink:0; width:30px; height:30px; border-radius:50%;
	background:#f7f8fc; display:flex; align-items:center;
	justify-content:center; transition:all .3s; font-size:0.8rem; color:#666;
}
.av-faq-acc-item.open .av-faq-acc-chevron { background:#e8400e; color:#fff; transform:rotate(180deg); }
.av-faq-acc-answer { max-height:0; overflow:hidden; transition:max-height .4s ease; }
.av-faq-acc-item.open .av-faq-acc-answer { max-height:500px; }
.av-faq-acc-inner { padding-bottom:22px; font-size:0.9rem; color:#555; line-height:1.75; }

/* --- SEO Service Cards 3x2 (light bg) --- */
.av-seo-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.av-seo-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:14px;
	padding:32px 28px; position:relative; overflow:hidden;
	transition:box-shadow .3s, transform .3s, border-color .3s;
}
.av-seo-card::before {
	content:''; position:absolute; top:0; left:0;
	width:100%; height:3px;
	background:linear-gradient(90deg, #e8400e, #ff8a50);
	opacity:0; transition:opacity .3s;
}
.av-seo-card:hover { box-shadow:0 12px 40px rgba(0,0,0,.09); transform:translateY(-4px); border-color:transparent; }
.av-seo-card:hover::before { opacity:1; }
.av-seo-icon { font-size:2.2rem; margin-bottom:18px; }
.av-seo-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:10px; }
.av-seo-text { font-size:0.875rem; color:#555; line-height:1.7; margin-bottom:14px; }
.av-seo-tag {
	display:inline-block; font-size:0.72rem; font-weight:700;
	color:#e8400e; text-transform:uppercase; letter-spacing:.08em;
}
@media(max-width:900px) { .av-seo-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-seo-grid { grid-template-columns:1fr; } }

/* --- Results Grid on dark bg (SEO page) --- */
.av-results-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.av-result-card {
	background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
	border-radius:14px; padding:32px 28px;
	transition:background .25s, border-color .25s, transform .25s;
}
.av-result-card:hover { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.2); transform:translateY(-3px); }
.av-result-title { font-size:1rem; font-weight:800; color:#fff; margin-bottom:10px; display:flex; align-items:center; gap:10px; }
.av-result-text { font-size:0.875rem; color:rgba(255,255,255,.6); line-height:1.7; }
.av-result-card.full-width { grid-column:1 / -1; }
@media(max-width:768px) { .av-results-grid { grid-template-columns:1fr; } .av-result-card.full-width { grid-column:auto; } }

/* --- Dev Service Cards (sviluppo-software) --- */
.av-dev-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
.av-dev-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:16px;
	padding:36px 32px; display:flex; gap:24px; align-items:flex-start;
	transition:box-shadow .3s, transform .3s, border-color .3s;
	position:relative; overflow:hidden;
}
.av-dev-card::after {
	content:''; position:absolute; bottom:0; left:0;
	width:100%; height:3px;
	background:linear-gradient(90deg, #e8400e, #ff8a50);
	opacity:0; transition:opacity .3s;
}
.av-dev-card:hover { box-shadow:0 16px 48px rgba(0,0,0,.1); transform:translateY(-5px); border-color:transparent; }
.av-dev-card:hover::after { opacity:1; }
.av-dev-icon-wrap {
	width:64px; height:64px; min-width:64px;
	background:linear-gradient(135deg, #fff3ef 0%, #ffe8de 100%);
	border-radius:16px; display:flex; align-items:center;
	justify-content:center; transition:background .3s;
}
.av-dev-card:hover .av-dev-icon-wrap { background:linear-gradient(135deg, #e8400e 0%, #ff6b35 100%); }
.av-dev-card:hover .av-dev-icon-wrap i { color:#fff !important; }
.av-dev-body { flex:1; }
.av-dev-title { font-size:1.05rem; font-weight:800; color:#1a1a2e; margin-bottom:12px; line-height:1.3; }
.av-dev-text { font-size:0.875rem; color:#555; line-height:1.75; margin-bottom:14px; }
.av-dev-tag {
	display:inline-block; font-size:0.72rem; font-weight:700;
	color:#e8400e; text-transform:uppercase; letter-spacing:.08em;
	background:#fff3ef; padding:4px 12px; border-radius:20px;
	border:1px solid rgba(232,64,14,.15);
}
@media(max-width:768px) { .av-dev-grid { grid-template-columns:1fr; } }

/* --- Advantage Cards with circle icon (sviluppo-software) --- */
.av-adv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.av-adv-card {
	background:#fff; border:1px solid #e8eaf0; border-radius:16px;
	padding:36px 28px; text-align:center;
	transition:box-shadow .3s, transform .3s, border-color .3s;
	position:relative;
}
.av-adv-card:hover { box-shadow:0 16px 48px rgba(0,0,0,.1); transform:translateY(-5px); border-color:rgba(232,64,14,.25); }
.av-adv-icon-circle {
	width:72px; height:72px; border-radius:50%;
	background:linear-gradient(135deg, #fff3ef 0%, #ffe8de 100%);
	display:flex; align-items:center; justify-content:center;
	font-size:2rem; margin:0 auto 20px;
	transition:background .3s, transform .3s;
}
.av-adv-card:hover .av-adv-icon-circle { background:linear-gradient(135deg, #e8400e 0%, #ff6b35 100%); transform:scale(1.08); }
.av-adv-title { font-size:1rem; font-weight:800; color:#1a1a2e; margin-bottom:12px; line-height:1.35; }
.av-adv-text { font-size:0.85rem; color:#555; line-height:1.75; }
@media(max-width:900px) { .av-adv-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:580px) { .av-adv-grid { grid-template-columns:1fr; } }
