/* site.css — v1.0 — 2026-07-03 — design system "Registro" per aziende.it (homepage restyling). Tutto scoped sotto .rg per non toccare il resto del sito (tema Porto). */

.rg{
  --rg-carta:#F5F7F9; --rg-superficie:#FFFFFF; --rg-superficie-2:#FBFCFD;
  --rg-inchiostro:#17222E; --rg-inchiostro-2:#4A5A6A; --rg-inchiostro-3:#6E7E8C;
  --rg-linea:#DCE3EA; --rg-linea-2:#EBF0F4;
  --rg-blu:#14477D; --rg-blu-scuro:#0F3661; --rg-blu-tenue:#EAF1F7;
  --rg-ocra:#B45E12; --rg-ocra-scuro:#94500F; --rg-row-hover:#F0F4F8;
  --rg-f-np:#E7EAEE; --rg-f1:#EAF1F7; --rg-f2:#D3E2EF; --rg-f3:#B7D0E5; --rg-f4:#92B9D8;
  --rg-f5:#6C9FC8; --rg-f6:#4A83B4; --rg-f7:#2F699D; --rg-f8:#1C5184; --rg-f9:#0F3A64;
  --rg-shadow:0 1px 2px rgba(23,34,46,.06), 0 6px 20px rgba(23,34,46,.05);
  --rg-mono:ui-monospace,"Cascadia Mono","SF Mono",Consolas,"Liberation Mono",monospace;
  --rg-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;

  background:var(--rg-carta);
  color:var(--rg-inchiostro);
  font-family:var(--rg-sans);
  font-size:15px; line-height:1.55;
}
.rg *{box-sizing:border-box;}
/* neutralizza le sezioni/divider Porto dentro l'area .rg */
.rg .shape-divider,.rg .shape-heigth{display:none !important;}
.rg .rg-section{background:transparent;border:0;margin:0;padding:0;}
.rg a{color:var(--rg-blu);text-decoration:none;}
.rg a:hover{color:var(--rg-blu-scuro);}
.rg h1,.rg h2,.rg h3{margin:0;text-wrap:balance;letter-spacing:-.02em;font-weight:750;line-height:1.12;color:var(--rg-inchiostro);}
.rg p{margin:0;}
.rg .rg-wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
.rg :focus-visible{outline:2px solid var(--rg-blu);outline-offset:2px;border-radius:3px;}
.rg .rg-tnum{font-variant-numeric:tabular-nums;}

/* eyebrow "voce di registro" */
.rg .rg-eyebrow{font-family:var(--rg-mono);text-transform:uppercase;font-size:.72rem;letter-spacing:.12em;
  color:var(--rg-inchiostro-2);display:inline-flex;gap:.55em;align-items:center;margin-bottom:12px;}
.rg .rg-eyebrow::before{content:"";width:22px;height:1px;background:var(--rg-blu);display:inline-block;}

/* ===== HERO ===== */
.rg .rg-hero{padding:52px 0 44px;position:relative;
  background:radial-gradient(1100px 380px at 80% -14%, var(--rg-blu-tenue), transparent 60%);
  border-bottom:1px solid var(--rg-linea);}
.rg .rg-hero h1{font-size:clamp(2rem,4.6vw,3rem);max-width:none;margin:.15em 0 .5em;}
.rg .rg-hero .rg-sub{color:var(--rg-inchiostro-2);font-size:1.05rem;max-width:none;margin-bottom:24px;}
.rg .rg-hero .rg-sub b{color:var(--rg-inchiostro);font-family:var(--rg-mono);font-weight:600;}

/* search box */
.rg .rg-search{display:flex;gap:10px;max-width:680px;background:var(--rg-superficie);border:1px solid var(--rg-linea);
  border-radius:12px;padding:8px;box-shadow:var(--rg-shadow);}
.rg .rg-search .rg-ico{align-self:center;padding-left:8px;color:var(--rg-inchiostro-3);display:flex;}
.rg .rg-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--rg-inchiostro);font-size:1rem;padding:12px 4px;font-family:var(--rg-sans);}
.rg .rg-search input:focus{outline:none;}
.rg .rg-search input::placeholder{color:var(--rg-inchiostro-3);}
.rg .rg-search button{background:var(--rg-blu);color:#fff;border:0;border-radius:8px;padding:0 22px;font-weight:700;
  font-size:.95rem;cursor:pointer;white-space:nowrap;}
.rg .rg-search button:hover{background:var(--rg-blu-scuro);}
.rg .rg-msg{margin-top:10px;color:#a2412a;font-weight:600;font-size:.9rem;}

.rg .rg-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.rg .rg-pill{font-size:.85rem;font-weight:600;color:var(--rg-inchiostro-2);background:var(--rg-superficie);
  border:1px solid var(--rg-linea);border-radius:999px;padding:7px 14px;display:inline-flex;gap:7px;align-items:center;}
.rg .rg-pill:hover{border-color:var(--rg-blu);color:var(--rg-blu);}
.rg .rg-pill .k{font-family:var(--rg-mono);font-size:.72rem;color:var(--rg-inchiostro-3);}

/* scala fasce (legenda) */
.rg .rg-ramp{display:flex;gap:4px;margin-top:32px;flex-wrap:wrap;align-items:center;}
.rg .rg-ramp .rl{font-family:var(--rg-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rg-inchiostro-2);margin-right:6px;}
.rg .rg-ramp .step{min-width:60px;padding:7px 8px 8px;border-radius:5px;text-align:center;line-height:1.1;}
.rg .rg-ramp .step .n{font-family:var(--rg-mono);font-weight:700;font-size:.72rem;display:block;}
.rg .rg-ramp .step .r{font-size:.58rem;display:block;margin-top:2px;opacity:.85;}

/* ===== SECTIONS / TABLES ===== */
.rg .rg-block{padding:46px 0;}
.rg .rg-block--alt{background:var(--rg-superficie-2);border-top:1px solid var(--rg-linea-2);border-bottom:1px solid var(--rg-linea-2);}
.rg .rg-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap;}
.rg .rg-head h2{font-size:clamp(1.35rem,2.4vw,1.7rem);}
.rg .rg-alllink{font-size:.85rem;font-weight:650;color:var(--rg-blu);white-space:nowrap;}
.rg .rg-alllink:hover{text-decoration:underline;}

.rg .rg-tablecard{background:var(--rg-superficie);border:1px solid var(--rg-linea);border-radius:12px;overflow:hidden;box-shadow:var(--rg-shadow);}
.rg .rg-tscroll{overflow-x:auto;}
.rg table.rg-reg{width:100%;border-collapse:collapse;min-width:600px;margin:0;}
.rg table.rg-reg thead th{font-family:var(--rg-mono);text-transform:uppercase;font-size:.68rem;letter-spacing:.09em;
  color:var(--rg-inchiostro-2);text-align:left;padding:13px 18px;background:var(--rg-superficie-2);border-bottom:1px solid var(--rg-linea);font-weight:600;}
.rg table.rg-reg tbody td{padding:12px 18px;border-bottom:1px solid var(--rg-linea-2);vertical-align:middle;background:transparent;}
.rg table.rg-reg tbody tr:last-child td{border-bottom:0;}
.rg table.rg-reg tbody tr:hover td{background:var(--rg-row-hover);}
.rg .rg-co{font-weight:650;color:var(--rg-inchiostro);letter-spacing:-.01em;display:block;}
.rg .rg-co:hover{color:var(--rg-blu);}
.rg .rg-sett{display:block;font-weight:500;color:var(--rg-inchiostro-3);font-size:.76rem;letter-spacing:0;margin-top:1px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42ch;text-transform:lowercase;}
.rg td.rg-geo{font-family:var(--rg-mono);font-size:.82rem;}
.rg td.rg-geo a{color:var(--rg-inchiostro-2);border-bottom:1px dotted var(--rg-linea);}
.rg td.rg-geo a:hover{color:var(--rg-blu);border-bottom-color:var(--rg-blu);}

/* ===== FASCIA BADGE (elemento firma) ===== */
.rg .rg-fascialink{display:inline-block;}
.rg .rg-fascia{display:inline-flex;align-items:stretch;border-radius:6px;overflow:hidden;border:1px solid rgba(15,58,100,.14);
  font-size:.74rem;line-height:1;white-space:nowrap;box-shadow:0 1px 0 rgba(23,34,46,.04);}
.rg .rg-fascia .fn{font-family:var(--rg-mono);font-weight:700;padding:5px 7px;display:grid;place-items:center;min-width:26px;}
.rg .rg-fascia .fr{padding:5px 9px;background:var(--rg-superficie);color:var(--rg-inchiostro-2);font-weight:600;align-self:center;font-family:var(--rg-mono);font-size:.72rem;}
.rg .rg-fascialink:hover .rg-fascia .fr{color:var(--rg-blu);}
.rg .rg-np .fn{background:var(--rg-f-np);color:#54606b;}
.rg .rg-f1 .fn{background:var(--rg-f1);color:#1b2b3a;} .rg .rg-f2 .fn{background:var(--rg-f2);color:#1b2b3a;}
.rg .rg-f3 .fn{background:var(--rg-f3);color:#152534;} .rg .rg-f4 .fn{background:var(--rg-f4);color:#122234;}
.rg .rg-f5 .fn{background:var(--rg-f5);color:#fff;} .rg .rg-f6 .fn{background:var(--rg-f6);color:#fff;}
.rg .rg-f7 .fn{background:var(--rg-f7);color:#fff;} .rg .rg-f8 .fn{background:var(--rg-f8);color:#fff;}
.rg .rg-f9 .fn{background:var(--rg-f9);color:#fff;}

/* ===== SERVIZI ===== */
.rg .rg-servizi{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.rg .rg-scard{background:var(--rg-superficie);border:1px solid var(--rg-linea);border-radius:12px;padding:26px;
  box-shadow:var(--rg-shadow);transition:transform .15s ease, box-shadow .15s ease;}
.rg .rg-scard:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(23,34,46,.10),0 14px 34px rgba(23,34,46,.08);}
.rg .rg-scard h3{font-size:1.05rem;margin-bottom:4px;}
.rg .rg-scard .cat{font-family:var(--rg-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rg-inchiostro-3);}
.rg .rg-scard ul{list-style:none;padding:0;margin:16px 0 20px;display:flex;flex-direction:column;gap:0;}
.rg .rg-scard li a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;
  border-bottom:1px solid var(--rg-linea-2);color:var(--rg-inchiostro);font-size:.9rem;font-weight:550;}
.rg .rg-scard li a:hover{color:var(--rg-blu);}
.rg .rg-scard li a .arr{color:var(--rg-inchiostro-3);}
.rg .rg-cta{display:inline-flex;align-items:center;gap:8px;background:var(--rg-ocra);color:#fff;font-weight:700;font-size:.9rem;padding:11px 20px;border-radius:9px;}
.rg .rg-cta:hover{background:var(--rg-ocra-scuro);color:#fff;}

/* numeri strip */
.rg .rg-numeri{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rg-linea);border:1px solid var(--rg-linea);border-radius:12px;overflow:hidden;}
.rg .rg-numeri .cell{background:var(--rg-superficie);padding:22px 20px;}
.rg .rg-numeri .v{font-family:var(--rg-mono);font-weight:700;font-size:1.6rem;letter-spacing:-.02em;color:var(--rg-blu);}
.rg .rg-numeri .l{color:var(--rg-inchiostro-2);font-size:.82rem;margin-top:4px;}

@media(max-width:900px){
  .rg .rg-servizi{grid-template-columns:1fr;}
  .rg .rg-numeri{grid-template-columns:repeat(2,1fr);}
}
/* ===== AUTOCOMPLETE (dropdown ricerca) ===== */
.rg .rg-ac-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;background:var(--rg-superficie);
  border:1px solid var(--rg-linea);border-radius:12px;box-shadow:0 10px 34px rgba(23,34,46,.16);overflow:hidden;max-height:72vh;overflow-y:auto;}
.rg .rg-ac-list[hidden]{display:none;}
.rg .rg-ac-item{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 16px;
  border-bottom:1px solid var(--rg-linea-2);color:var(--rg-inchiostro);text-decoration:none;min-height:44px;}
.rg .rg-ac-item:hover,.rg .rg-ac-item.on{background:var(--rg-row-hover);}
.rg .rg-ac-main{display:flex;flex-direction:column;min-width:0;}
.rg .rg-ac-r{font-weight:650;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rg .rg-ac-c{font-family:var(--rg-mono);font-size:.74rem;color:var(--rg-inchiostro-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rg .rg-ac-f{flex:none;font-family:var(--rg-mono);font-weight:700;font-size:.7rem;padding:4px 8px;border-radius:5px;border:1px solid rgba(15,58,100,.14);white-space:nowrap;}
.rg .rg-ac-all{display:block;padding:12px 16px;font-weight:650;font-size:.84rem;color:var(--rg-blu);background:var(--rg-superficie-2);text-decoration:none;}
.rg .rg-ac-all:hover{background:var(--rg-blu-tenue);}
.rg .rg-ac-f.rg-np{background:var(--rg-f-np);color:#54606b;}
.rg .rg-ac-f.rg-f1{background:var(--rg-f1);color:#1b2b3a;} .rg .rg-ac-f.rg-f2{background:var(--rg-f2);color:#1b2b3a;}
.rg .rg-ac-f.rg-f3{background:var(--rg-f3);color:#152534;} .rg .rg-ac-f.rg-f4{background:var(--rg-f4);color:#122234;}
.rg .rg-ac-f.rg-f5{background:var(--rg-f5);color:#fff;} .rg .rg-ac-f.rg-f6{background:var(--rg-f6);color:#fff;}
.rg .rg-ac-f.rg-f7{background:var(--rg-f7);color:#fff;} .rg .rg-ac-f.rg-f8{background:var(--rg-f8);color:#fff;}
.rg .rg-ac-f.rg-f9{background:var(--rg-f9);color:#fff;}

/* ===== PAGINAZIONE ===== */
.rg .rg-pager{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:24px;justify-content:center;}
.rg .rg-page{min-width:38px;height:38px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--rg-linea);border-radius:8px;background:var(--rg-superficie);color:var(--rg-inchiostro);
  font-family:var(--rg-mono);font-size:.85rem;font-weight:600;}
.rg .rg-page:hover{border-color:var(--rg-blu);color:var(--rg-blu);}
.rg .rg-page.on{background:var(--rg-blu);border-color:var(--rg-blu);color:#fff;}
.rg .rg-page-dots{color:var(--rg-inchiostro-3);padding:0 4px;font-family:var(--rg-mono);}

@media (prefers-reduced-motion: reduce){.rg *{transition:none !important;}}


/* ===================== SCHEDA AZIENDA (re-skin, scoped .rg-scheda) — v1.0 2026-07-03 ===================== */
/* scheda re-skin — Registro design system, tutto scoped sotto .rg-scheda (su <div role="main" class="main rg">) */
/* usa i token gia' in site.css: --rg-carta --rg-superficie --rg-superficie-2 --rg-inchiostro --rg-inchiostro-2 --rg-inchiostro-3 --rg-linea --rg-linea-2 --rg-blu --rg-blu-scuro --rg-ocra --rg-mono --rg-sans --rg-shadow */

/* ============================================================
   0. BASE / FONDO PAGINA
   ============================================================ */
.rg-scheda {
  background: var(--rg-carta);
  color: var(--rg-inchiostro);
  font-family: var(--rg-sans);
}

/* neutralizza le utility colore Porto ovunque */
.rg-scheda .text-dark { color: var(--rg-inchiostro) !important; }
.rg-scheda .text-muted { color: var(--rg-inchiostro-3) !important; }
.rg-scheda [class*="bg-color-"] { background: transparent !important; }
.rg-scheda [class*="text-color-"] { color: var(--rg-inchiostro) !important; }

/* link Registro */
.rg-scheda a { color: var(--rg-blu); text-decoration: none; }
.rg-scheda a:hover { color: var(--rg-blu-scuro); text-decoration: underline; }

/* icone: l'attributo fill="#0088cc" e' presentazionale -> il CSS lo vince senza !important */
.rg-scheda svg,
.rg-scheda .bi,
.rg-scheda .bi path { fill: var(--rg-blu); }
/* icone FontAwesome hanno color:#0088cc INLINE -> serve !important */
.rg-scheda i.fa-solid,
.rg-scheda .featured-box i { color: var(--rg-blu) !important; }

/* ============================================================
   1. HERO / .page-header  (breadcrumb + H1 + P.IVA)
   ============================================================ */
.rg-scheda .page-header,
.rg-scheda .page-header-modern,
.rg-scheda .page-header.bg-color-light-scale-1 {
  background: var(--rg-carta) !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-top: 2.25rem;
  padding-bottom: 1.25rem;
}
/* rimuovi decori pseudo di page-header-modern */
.rg-scheda .page-header-modern::before,
.rg-scheda .page-header-modern::after { content: none !important; display: none !important; }

/* breadcrumb: mono piccolo, neutro */
.rg-scheda .breadcrumb {
  background: transparent !important;
  padding: 0 !important;
  margin-bottom: 1rem;
  font-family: var(--rg-mono);
  font-size: .72rem;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.rg-scheda .breadcrumb a { color: var(--rg-blu) !important; }
.rg-scheda .breadcrumb li,
.rg-scheda .breadcrumb .active,
.rg-scheda .breadcrumb-item.active { color: var(--rg-inchiostro-2) !important; }
.rg-scheda .breadcrumb .breadcrumb-item + .breadcrumb-item::before { color: var(--rg-inchiostro-3) !important; }

/* H1 denominazione */
.rg-scheda .page-header h1 {
  color: var(--rg-inchiostro) !important;
  font-family: var(--rg-sans);
  font-weight: 800;
  font-size: clamp(1.6rem, 3.2vw, 2.4rem);
  line-height: 1.12;
  letter-spacing: -.01em;
  margin: 0 0 .35rem;
}
/* sottotitolo P.IVA: inline color:gray + font-size:medium -> battere con !important, mono */
.rg-scheda .page-header h1 + h2,
.rg-scheda .page-header .col > h2[style] {
  color: var(--rg-inchiostro-2) !important;
  font-family: var(--rg-mono) !important;
  font-size: .95rem !important;
  font-weight: 500 !important;
  margin: 0 !important;
  letter-spacing: 0;
}

/* ============================================================
   2. CARD — section / featured-box come superfici Registro
   ============================================================ */
.rg-scheda .featured-box,
.rg-scheda .featured-box-primary,
.rg-scheda .featured-box-text-start {
  background: var(--rg-superficie) !important;
  border: 1px solid var(--rg-linea) !important;
  border-left: 1px solid var(--rg-linea) !important;   /* annulla accento -primary */
  border-radius: 10px !important;                       /* vince .border-radius-0 */
  box-shadow: var(--rg-shadow);
  overflow: hidden;
  color: var(--rg-inchiostro);
}
/* annulla pseudo-elementi/accenti colorati del featured-box-primary */
.rg-scheda .featured-box::before,
.rg-scheda .featured-box::after,
.rg-scheda .featured-box-primary::before,
.rg-scheda .featured-box-primary::after { content: none !important; display: none !important; background: none !important; }

.rg-scheda .box-content {
  background: var(--rg-superficie) !important;
  color: var(--rg-inchiostro) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

/* distanziamento verticale delle card di sezione */
.rg-scheda .row[id],
.rg-scheda #dati,
.rg-scheda #fatturato,
.rg-scheda #appalti-pubblici,
.rg-scheda #progetti-ue,
.rg-scheda #aiuti-stato,
.rg-scheda #benchmark-settore,
.rg-scheda #progetti-ricerca-ue,
.rg-scheda #dispositivi-medici,
.rg-scheda #distribuzione-farmaci,
.rg-scheda #farmacie-titolare,
.rg-scheda #partecipazione-pubblica,
.rg-scheda #split-payment,
.rg-scheda #runts-ets,
.rg-scheda #fatturato-anno-per-anno,
.rg-scheda #utile,
.rg-scheda #utile-anno-per-anno,
.rg-scheda #dipendenti,
.rg-scheda #capitale_sociale,
.rg-scheda #dove-si-trova { margin-top: 1.25rem; }

/* ============================================================
   3. HEADING DI SEZIONE — h2.text-6 con <strong> + icona
   ============================================================ */
.rg-scheda h2.text-6,
.rg-scheda .box-content h2 {
  color: var(--rg-inchiostro) !important;
  font-family: var(--rg-sans);
  font-size: 1.15rem !important;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.005em;
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .75rem;
}
.rg-scheda h2.text-6 strong,
.rg-scheda .box-content h2 strong {
  color: inherit;
  font-weight: 800;
}
/* icona heading al blu Registro (svg attributo + fa inline) */
.rg-scheda h2 svg,
.rg-scheda h2 svg path { fill: var(--rg-blu) !important; }
.rg-scheda h2 i { color: var(--rg-blu) !important; }
.rg-scheda h2 svg { width: 1.15em; height: 1.15em; flex: 0 0 auto; }

/* ============================================================
   4. TABELLE — .table (primary/striped/hover/bordered) -> .rg-reg
   ============================================================ */
.rg-scheda .table {
  --bs-table-bg: var(--rg-superficie);
  --bs-table-color: var(--rg-inchiostro);
  --bs-table-border-color: var(--rg-linea-2);
  --bs-table-striped-bg: var(--rg-superficie-2);
  --bs-table-striped-color: var(--rg-inchiostro);
  --bs-table-hover-bg: var(--rg-linea-2);
  --bs-table-hover-color: var(--rg-inchiostro);
  --bs-table-accent-bg: transparent;
  background: var(--rg-superficie) !important;
  color: var(--rg-inchiostro) !important;
  border-color: var(--rg-linea) !important;
  border-radius: 10px !important;      /* batte inline border-radius:20px */
  overflow: hidden;
  width: 100%;
  margin-bottom: 0;
}
/* annulla tint blu Porto di table-primary/border-primary/bordered */
.rg-scheda .table.table-primary,
.rg-scheda .table.border-primary,
.rg-scheda .table-bordered {
  --bs-table-bg: var(--rg-superficie);
  border-color: var(--rg-linea) !important;
}
.rg-scheda .table-primary > :not(caption) > * > * {
  background-color: var(--rg-superficie) !important;
  color: var(--rg-inchiostro) !important;
}

/* header tabella: mono, uppercase, superficie tenue */
.rg-scheda .table thead th,
.rg-scheda .table > thead > tr > th {
  background: var(--rg-superficie-2) !important;
  color: var(--rg-inchiostro-2) !important;
  font-family: var(--rg-mono);
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: left !important;                 /* override .text-center */
  border-bottom: 1px solid var(--rg-linea) !important;
  border-top: 0 !important;
  padding: .55rem .75rem;
}

/* celle: border-bottom leggero, no zebra Porto, left-align */
.rg-scheda .table td,
.rg-scheda .table th {
  border: 0 !important;
  border-bottom: 1px solid var(--rg-linea-2) !important;
  padding: .55rem .75rem;
  vertical-align: middle;
  text-align: left !important;                  /* override .text-center inline/classe */
}
.rg-scheda .table.text-center td,
.rg-scheda .table.text-center th { text-align: left !important; }
.rg-scheda .table tr:last-child td,
.rg-scheda .table tr:last-child th { border-bottom: 0 !important; }

/* rimuovi la zebra Porto, hover discreto */
.rg-scheda .table-striped > tbody > tr:nth-of-type(odd) > * {
  background: var(--rg-superficie) !important;
  color: var(--rg-inchiostro) !important;
}
.rg-scheda .table-hover > tbody > tr:hover > * {
  background: var(--rg-linea-2) !important;
  color: var(--rg-inchiostro) !important;
}

/* tabella key/value a 2 colonne: TH label sans muted, TD valore mono */
.rg-scheda .table th[scope="row"],
.rg-scheda .table tbody th { font-weight: 600; color: var(--rg-inchiostro-2); text-transform: none; letter-spacing: 0; font-family: var(--rg-sans); font-size: .9rem; }
/* dati numerici in mono */
.rg-scheda #tabFatturatoAzienda td,
.rg-scheda .table td { font-family: var(--rg-mono); font-size: .88rem; color: var(--rg-inchiostro); }
/* link nelle celle in blu Registro */
.rg-scheda .table td a { color: var(--rg-blu) !important; font-family: var(--rg-mono); }

/* ============================================================
   5. INDICE ICONE MOBILE (.d-flex.d-sm-none) + box INDICE desktop
   ============================================================ */
/* contenitore con inline border/box-shadow grigi -> !important */
.rg-scheda .row.d-flex.d-sm-none,
.rg-scheda .col-3.ms-5 {
  border: 1px solid var(--rg-linea) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  background: var(--rg-superficie) !important;
}
.rg-scheda .anchor svg,
.rg-scheda .anchor .bi { fill: var(--rg-blu) !important; }

/* ============================================================
   6. SIDEBAR — pannello sticky come card Registro
   ============================================================ */
.rg-scheda .sticky-top {
  background: var(--rg-superficie) !important;
  border: 1px solid var(--rg-linea);
  border-radius: 10px;
  box-shadow: var(--rg-shadow);
  color: var(--rg-inchiostro) !important;
  padding: 1.25rem !important;
}
/* heading sidebar: strong.text-uppercase / strong.fs-6 */
.rg-scheda .sticky-top .text-uppercase,
.rg-scheda .sidebar strong.fs-6,
.rg-scheda #riepilogo > strong {
  color: var(--rg-blu) !important;
  font-family: var(--rg-sans);
  font-weight: 700;
  letter-spacing: .04em;
}

/* list-group riepilogo: righe pulite */
.rg-scheda .list-group { border-radius: 8px; }
.rg-scheda .list-group-item {
  background: var(--rg-superficie) !important;
  color: var(--rg-inchiostro) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--rg-linea-2) !important;
  padding: .6rem .25rem;
}
.rg-scheda .list-group-item:last-child { border-bottom: 0 !important; }
.rg-scheda .list-group-item-light { background: var(--rg-superficie-2) !important; }

/* riga Totale Ordine .tot (usa var --bs-list-group-active-* con !important) */
.rg-scheda .list-group-item.tot {
  background: var(--rg-blu) !important;
  color: #fff !important;
  border-color: var(--rg-blu) !important;
  border-radius: 8px;
}
.rg-scheda .list-group-item.tot strong,
.rg-scheda .list-group-item.tot .badge-pill { color: #fff !important; }

/* badge-pill prezzi € = dato mono */
.rg-scheda .badge-pill,
.rg-scheda #div-totale {
  font-family: var(--rg-mono) !important;
  color: var(--rg-inchiostro);
  background: transparent;
  font-weight: 600;
}

/* bottoni azione: btn-info Porto -> primario Registro */
.rg-scheda .btn-info,
.rg-scheda .btn-info.btn-block {
  background: var(--rg-blu) !important;
  border-color: var(--rg-blu) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 600;
  box-shadow: none !important;
}
.rg-scheda .btn-info:hover,
.rg-scheda .btn-info:focus {
  background: var(--rg-blu-scuro) !important;
  border-color: var(--rg-blu-scuro) !important;
  color: #fff !important;
}

/* menu categorie nav-list */
.rg-scheda .sidebar .nav-link { color: var(--rg-blu) !important; }
.rg-scheda .sidebar .list-group-item.mb-0 { border-bottom: 0 !important; }

/* badge carrello (warning giallo Porto -> ocra Registro), anche iniettato via JS */
.rg-scheda .badge-warning,
.rg-scheda .badge-plus,
.rg-scheda .carrello .badge {
  background: var(--rg-ocra) !important;
  color: #fff !important;
}

/* divisori */
.rg-scheda hr.solid,
.rg-scheda hr {
  border: 0 !important;
  border-top: 1px solid var(--rg-linea) !important;
  background: transparent !important;
  opacity: 1;
}

/* ============================================================
   7. ELEMENTI VARI — prosa, note fonte, benchmark, lista mappa
   ============================================================ */
/* prosa body */
.rg-scheda .box-content p,
.rg-scheda .box-content span,
.rg-scheda .box-content li { color: var(--rg-inchiostro); }
.rg-scheda .box-content strong { color: inherit; }

/* note Fonte: small.text-muted */
.rg-scheda small.text-muted {
  color: var(--rg-inchiostro-3) !important;
  font-size: .78rem;
  display: inline-block;
  margin-top: .5rem;
}
.rg-scheda small.text-muted a { color: var(--rg-blu) !important; }

/* label span.text-muted (categorie CND, esito TUSP...) */
.rg-scheda span.text-muted { color: var(--rg-inchiostro-2) !important; }

/* immagine azienda */
.rg-scheda img.float-start { border-radius: 8px; border: 1px solid var(--rg-linea); }

/* lista "Dove si trova": li.list-group-item spuri -> riga chiave/valore pulita */
.rg-scheda #dove-si-trova ul { list-style: none; padding-left: 0; margin: 0; }
.rg-scheda #dove-si-trova .list-group-item {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--rg-linea-2) !important;
  padding: .5rem 0;
}
.rg-scheda #dove-si-trova .list-group-item strong.fw-bold { color: var(--rg-inchiostro-2); font-weight: 600; }

/* google map wrapper coerente */
.rg-scheda .google-map-borders { border: 1px solid var(--rg-linea) !important; border-radius: 8px; overflow: hidden; }

/* AdSense: NON reskinnare */
.rg-scheda ins.adsbygoogle { background: transparent !important; }

/* ============================================================
   8. CENTRATURE INLINE Porto -> allineamento Registro (left)
   ============================================================ */
.rg-scheda .box-content .row[style*="justify-content"],
.rg-scheda .box-content .row[style*="align-items"] {
  justify-content: flex-start !important;
}
/* prosa/didascalie non centrate */
.rg-scheda .box-content p[style*="italic"] { font-style: normal !important; color: var(--rg-inchiostro-2); }

/* wrapper canvas grafici: mantieni centratura del canvas */
.rg-scheda canvas { max-width: 100%; }

/* ============================================================
   9. MOTION
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  .rg-scheda *,
  .rg-scheda .carrello .badge,
  .rg-scheda .badge-plus {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* ===== SCHEDA MOBILE: tabelle dense scrollabili in orizzontale (fix "sfora a destra") — v1.1 ===== */
@media (max-width: 767px){
  .rg-scheda .box-content{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .rg-scheda .box-content .table{ min-width:520px; }        /* forza lo scroll invece di comprimere illeggibile */
  .rg-scheda .box-content > .row,
  .rg-scheda .box-content .row:has(> .col-12 > table),
  .rg-scheda .box-content .col-12:has(> table){ overflow-x:auto; -webkit-overflow-scrolling:touch; }
}
