
/* =========================================================
   all4it v56 final clean polish
   Logo is intentionally untouched.
   ========================================================= */

/* Navigation: slightly smoother, still strict and corporate */
.nav-link::after {
  transition: transform .36s cubic-bezier(.18,.78,.24,1);
}

.nav-link:hover {
  color: #111;
}

/* Headlines: tiny optical tightening only */
.hero-copy h1,
.section-title,
.statement-large {
  text-wrap: balance;
}

/* Hero red square: clean brand accent only */
.red-block {
  background: linear-gradient(135deg, #ed1c24 0%, #e31e24 52%, #cf171d 100%) !important;
  border: 1px solid rgba(255,255,255,.05);
  box-shadow:
    0 18px 46px rgba(227,30,36,.20),
    inset 0 1px 0 rgba(255,255,255,.10);
}

.red-block::after {
  display: none !important;
}

/* Keep hero image intensity as approved */
.hero-panel {
  background:
    linear-gradient(90deg, rgba(16,16,16,.94), rgba(16,16,16,.82)),
    url("https://images.unsplash.com/photo-1558494949-ef010cbdcc31?auto=format&fit=crop&w=1400&q=82") center / cover !important;
}

/* Services: premium restrained hover */
.service-card {
  transition:
    transform .26s cubic-bezier(.2,.8,.2,1),
    background-color .26s ease,
    border-color .26s ease;
}

.service-card:hover {
  transform: translateY(-3px);
  border-color: rgba(227,30,36,.32);
}

/* Process cards: very small lift, not playful */
.process-card {
  transition: transform .24s cubic-bezier(.2,.8,.2,1), border-color .24s ease;
}

.process-card:hover {
  transform: translateY(-2px);
  border-color: rgba(227,30,36,.24);
}

/* Partner cards: keep current feel, just optical alignment and subtle hover */
.partner-logo {
  transition:
    transform .24s cubic-bezier(.2,.8,.2,1),
    box-shadow .24s ease,
    border-color .24s ease;
}

.partner-logo:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(16,16,16,.075);
  border-color: #d3cdc3;
}

/* Optical logo weight. Small corrections only. */
.partner-logo img[alt*="Lenovo" i] {
  max-width: 86%;
}

.partner-logo img[alt*="Microsoft" i] {
  max-width: 88%;
}

.partner-logo img[alt*="HPE" i],
.partner-logo img[alt*="Hewlett" i] {
  max-width: 84%;
}

.partner-logo img[alt*="Cisco" i] {
  max-width: 76%;
  transform: scale(1.06);
}

.partner-logo img[alt*="Fortinet" i] {
  max-width: 88%;
}

/* Contact red: deeper, still clean and not flashy */
.section-contact {
  background:
    radial-gradient(circle at 84% 18%, rgba(255,255,255,.10), transparent 28%),
    linear-gradient(135deg, #e31e24 0%, #df1b22 58%, #c9161c 100%) !important;
}

/* Keep anchor navigation natural */
section[id] {
  scroll-margin-top: var(--header-h);
}

/* Fine animation: fade remains, reduce excessive movement feel */
html.js .fade-in {
  transition:
    opacity .75s cubic-bezier(.2,.8,.2,1),
    transform .75s cubic-bezier(.2,.8,.2,1);
}

/* Accessibility */
a:focus-visible,
button:focus-visible {
  outline: 3px solid rgba(227,30,36,.42);
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .red-block,
  .fade-in,
  .service-card,
  .partner-logo,
  .process-card,
  .nav-link::after {
    animation: none !important;
    transition: none !important;
  }
}
