@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

/* Barci Consulting — Editorial Technology V5
   Ispirazione: chiarezza, spazio e gerarchia visiva tipiche di Apple;
   rigore, griglia e blu tecnologico ispirati al design language IBM.
   Nessuna riproduzione di asset o marchi proprietari. */

:root {
  --bc-vivid:#0f62fe;
  --bc-vivid-2:#0071e3;
  --bc-vivid-dark:#001d6c;
  --bc-vivid-mid:#0043ce;
  --bc-cyan:#00b8d9;
  --bc-pale:#edf5ff;
}

body.bc-home-page,
body.bc-inner-page {
  font-family:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Wordmark: niente icona quadrata con la B. */
.bc-home-page .bc-logo,
.bc-inner-page nav .logo {
  position:relative;
  gap:0;
  font-family:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight:600;
  letter-spacing:-.035em;
}
.bc-home-page .bc-logo-mark,
.bc-inner-page .brand-mark {
  display:none !important;
}
.bc-home-page .bc-logo::before,
.bc-inner-page nav .logo::before {
  content:"";
  width:4px;
  height:28px;
  margin-right:12px;
  border-radius:999px;
  background:linear-gradient(180deg,#8fd8ff 0%,#ffffff 48%,#72c8ff 100%);
  box-shadow:0 0 20px rgba(255,255,255,.28);
}
.bc-home-page .bc-logo > span:last-child,
.bc-inner-page .brand-name {
  font-size:1.08rem;
  color:#fff !important;
}

/* Blu più vivo: vicino al blu tecnologico IBM, con luminosità più Apple-like. */
.bc-home-page .bc-topbar,
.bc-inner-page nav {
  background:linear-gradient(100deg,rgba(0,29,108,.98) 0%,rgba(0,67,206,.97) 52%,rgba(15,98,254,.96) 100%);
  border-bottom:1px solid rgba(255,255,255,.18);
  box-shadow:0 8px 30px rgba(0,47,130,.16);
}

.bc-home-page .bc-topbar { backdrop-filter:blur(20px) saturate(135%); }

.bc-home-page .bc-nav-links,
.bc-inner-page nav a:not(.logo) {
  font-weight:500;
  letter-spacing:-.01em;
}

.bc-home-page .bc-btn,
.bc-inner-page .btn,
.bc-inner-page .nav-r .keep {
  font-family:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight:600;
}

.bc-home-page .bc-btn-primary,
.bc-inner-page .btn-primary,
.bc-inner-page .nav-r .keep {
  background:linear-gradient(135deg,var(--bc-vivid) 0%,var(--bc-vivid-2) 100%);
  box-shadow:0 16px 36px rgba(15,98,254,.26);
}

/* Tipografia più editoriale: grande ma meno pesante, con più respiro. */
.bc-home-page h1,
.bc-home-page h2,
.bc-home-page h3,
.bc-inner-page h1,
.bc-inner-page h2,
.bc-inner-page h3 {
  font-family:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.bc-home-page .bc-hero h1 {
  font-weight:600;
  letter-spacing:-.06em;
  line-height:.98;
  max-width:820px;
}
.bc-home-page .bc-section-head h2,
.bc-home-page .bc-video-header h2,
.bc-home-page .bc-rich-copy h2 {
  font-weight:600;
  letter-spacing:-.048em;
  line-height:1.04;
}
.bc-home-page .bc-card-title { font-weight:600; letter-spacing:-.045em; }
.bc-home-page .bc-lead,
.bc-home-page .bc-section-head > p,
.bc-home-page .bc-rich-copy p {
  line-height:1.62;
}

/* Hero più chiara e brillante. */
.bc-home-page .bc-shell {
  background:
    radial-gradient(circle at 5% 7%,rgba(15,98,254,.15),transparent 28rem),
    radial-gradient(circle at 92% 10%,rgba(0,184,217,.11),transparent 26rem),
    linear-gradient(180deg,#ffffff 0%,#f7faff 46%,#ffffff 100%);
}
.bc-home-page .bc-shell::before {
  opacity:.55;
  background-image:
    linear-gradient(rgba(15,98,254,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15,98,254,.045) 1px, transparent 1px);
}
.bc-home-page .bc-eyebrow {
  color:#0043ce;
  background:rgba(15,98,254,.085);
  border-color:rgba(15,98,254,.12);
}
.bc-home-page .bc-eyebrow::before { background:var(--bc-vivid); }

.bc-home-page .bc-hero-card {
  background:
    radial-gradient(circle at 104% -8%,rgba(111,214,255,.30),transparent 18rem),
    linear-gradient(145deg,#001d6c 0%,#0043ce 56%,#0f62fe 100%);
  border-color:rgba(255,255,255,.22);
  box-shadow:0 34px 88px rgba(0,44,126,.30);
}
.bc-home-page .bc-metric {
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.17);
}
.bc-home-page .bc-erp-strip { background:rgba(0,18,66,.24); border-color:rgba(255,255,255,.15); }

/* Sezioni scure: più sature, meno grigie. */
.bc-home-page .bc-section-blue,
.bc-home-page .bc-video-method {
  background:
    radial-gradient(circle at 88% 12%,rgba(0,184,217,.19),transparent 25rem),
    linear-gradient(135deg,#001141 0%,#002d9c 54%,#0043ce 100%);
}
.bc-home-page .bc-final-cta {
  background:
    radial-gradient(circle at 18% -20%,rgba(143,216,255,.24),transparent 28rem),
    linear-gradient(120deg,#001d6c 0%,#0043ce 60%,#0f62fe 100%);
}
.bc-home-page .bc-footer { background:#001141; }

/* Apple-like: più spazio e meno bordi visibili nelle card chiare. */
.bc-home-page .bc-number-card,
.bc-home-page .bc-service-card,
.bc-home-page .bc-problem,
.bc-home-page .bc-ai-case-card,
.bc-home-page .bc-result-card {
  border-color:rgba(0,29,108,.08);
}
.bc-home-page .bc-service-card,
.bc-home-page .bc-problem,
.bc-home-page .bc-number-card {
  box-shadow:0 20px 56px rgba(0,45,120,.07);
}

/* ---------- Real-world photography band ---------- */
.bc-home-page .bc-real-world {
  padding-top:clamp(68px,8vw,116px);
  padding-bottom:clamp(68px,8vw,116px);
  overflow:hidden;
  background:#fff;
}
.bc-home-page .bc-photo-intro {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(320px,1.18fr);
  gap:clamp(28px,5vw,76px);
  align-items:end;
  margin-bottom:32px;
}
.bc-home-page .bc-photo-intro .bc-section-head { margin:0; }
.bc-home-page .bc-photo-intro > p {
  margin:0;
  max-width:680px;
  color:#425c73;
  font-size:clamp(1rem,1.3vw,1.18rem);
  line-height:1.65;
}
.bc-home-page .bc-photo-grid {
  display:grid;
  grid-template-columns:1.35fr .85fr;
  gap:18px;
  min-height:540px;
}
.bc-home-page .bc-photo-card {
  position:relative;
  min-height:420px;
  overflow:hidden;
  border-radius:clamp(24px,3vw,38px);
  background:#dce9ff;
  box-shadow:0 28px 80px rgba(0,45,120,.12);
}
.bc-home-page .bc-photo-card--secondary { margin-top:72px; min-height:468px; }
.bc-home-page .bc-photo-card img {
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
  display:block;
  transform:scale(1.015);
  transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .4s ease;
}
.bc-home-page .bc-photo-card:hover img { transform:scale(1.055); }
.bc-home-page .bc-photo-card::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 46%,rgba(0,17,65,.78) 100%);
}
.bc-home-page .bc-photo-caption {
  position:absolute;
  z-index:2;
  left:clamp(22px,3vw,38px);
  right:clamp(22px,3vw,38px);
  bottom:clamp(22px,3vw,34px);
  color:#fff;
}
.bc-home-page .bc-photo-caption span {
  display:block;
  margin-bottom:8px;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#a6e3ff;
}
.bc-home-page .bc-photo-caption strong {
  display:block;
  max-width:680px;
  font-size:clamp(1.45rem,2.6vw,2.65rem);
  line-height:1.03;
  font-weight:600;
  letter-spacing:-.045em;
}
.bc-home-page .bc-photo-card--secondary .bc-photo-caption strong {
  font-size:clamp(1.2rem,1.8vw,1.8rem);
}

/* ---------- Inner pages ---------- */
.bc-inner-page {
  --ink:#0a1633;
  --ink-2:#44546a;
  --warm:#f5f9ff;
  --cu:var(--bc-vivid);
  --electric:var(--bc-vivid);
  --sky:#339cff;
  --cyan:var(--bc-cyan);
  --navy:#001141;
  --navy-2:#001d6c;
  --serif:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.bc-inner-page .hero,
.bc-inner-page header:not(.bc-topbar) {
  background:
    radial-gradient(circle at 8% 10%,rgba(15,98,254,.14),transparent 29rem),
    radial-gradient(circle at 90% 15%,rgba(0,184,217,.10),transparent 23rem),
    linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%);
}
.bc-inner-page h1 { font-weight:600; letter-spacing:-.055em; }
.bc-inner-page h2 { font-weight:600; letter-spacing:-.045em; }
.bc-inner-page h3 { font-weight:600; letter-spacing:-.035em; }
.bc-inner-page .nav-r .keep { background:linear-gradient(135deg,#0f62fe,#0071e3); }

@media (max-width:980px){
  .bc-home-page .bc-photo-intro { grid-template-columns:1fr; }
  .bc-home-page .bc-photo-grid { grid-template-columns:1fr; min-height:0; }
  .bc-home-page .bc-photo-card,
  .bc-home-page .bc-photo-card--secondary { margin-top:0; min-height:390px; }
}

@media (max-width:640px){
  .bc-home-page .bc-logo::before,
  .bc-inner-page nav .logo::before { height:23px; margin-right:9px; width:3px; }
  .bc-home-page .bc-logo > span:last-child,
  .bc-inner-page .brand-name { font-size:.98rem; }
  .bc-home-page .bc-photo-card,
  .bc-home-page .bc-photo-card--secondary { min-height:330px; border-radius:22px; }
}
