
/* ==========================================================================
   Macteck Divi Child — 110 Homepage Foundation
   Version: 3.1.0-alpha3-homepage-foundation

   But :
   - préparer une vraie page d’accueil Macteck;
   - améliorer les pages statiques simples sans Divi Builder;
   - fournir des classes réutilisables dans Divi;
   - ne jamais modifier le logo.
   ========================================================================== */

/* Page statique d’accueil : base plus premium, même avant construction Divi. */
body.macteck-theme.home #main-content,
body.macteck-divi-child-futuristic.home #main-content,
body.macteck-theme.front-page #main-content,
body.macteck-divi-child-futuristic.front-page #main-content {
  background:
    radial-gradient(900px 420px at 72% 6%, rgba(23, 158, 217, .16), transparent 64%),
    radial-gradient(740px 340px at 12% 32%, rgba(240, 79, 35, .075), transparent 62%),
    linear-gradient(180deg, var(--mck-foundation-bg, #f5f8fb), color-mix(in srgb, var(--mck-foundation-bg, #f5f8fb) 86%, #ffffff));
}

/* Hero réutilisable dans Divi */
.mck-home-hero,
.et_pb_section.mck-home-hero {
  position: relative;
  overflow: clip;
  min-height: clamp(620px, 72vh, 820px);
  padding-block: clamp(90px, 10vw, 150px);
  background:
    radial-gradient(700px 360px at 84% 18%, rgba(23, 158, 217, .20), transparent 64%),
    radial-gradient(620px 320px at 8% 72%, rgba(240, 79, 35, .11), transparent 62%);
}

.mck-home-hero::before {
  content: "";
  position: absolute;
  inset: clamp(24px, 4vw, 54px);
  border: 1px solid var(--mck-foundation-border, rgba(255,255,255,.10));
  border-radius: clamp(28px, 4vw, 46px);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--mck-foundation-surface, #ffffff) 82%, transparent), color-mix(in srgb, var(--mck-foundation-surface, #ffffff) 54%, transparent));
  box-shadow: var(--mck-foundation-shadow, 0 22px 60px rgba(18,24,32,.10));
  pointer-events: none;
}

.mck-home-hero > .et_pb_row,
.mck-home-hero .mck-hero-inner {
  position: relative;
  z-index: 1;
}

.mck-eyebrow,
.mck-home-hero .mck-eyebrow {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(23, 158, 217, .24);
  background: rgba(23, 158, 217, .10);
  color: var(--mck-foundation-blue, #179ed9);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.mck-home-title,
.mck-home-hero h1,
.mck-hero-title {
  max-width: 980px;
  margin-bottom: 22px;
  color: var(--mck-foundation-text, #121820);
  font-size: clamp(48px, 6.7vw, 104px);
  line-height: .94;
  font-weight: 880;
  letter-spacing: -.075em;
}

.mck-home-lede,
.mck-home-hero .mck-lede,
.mck-hero-lede {
  max-width: 740px;
  color: var(--mck-foundation-muted, #56616f);
  font-size: clamp(18px, 1.5vw, 23px);
  line-height: 1.55;
}

.mck-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}

.mck-hero-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.mck-proof-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid var(--mck-foundation-border, rgba(18,24,32,.10));
  background: color-mix(in srgb, var(--mck-foundation-surface, #ffffff) 82%, transparent);
  color: var(--mck-foundation-muted, #56616f);
  font-size: 13px;
  font-weight: 700;
}

/* Section services */
.mck-services-grid,
.mck-home-services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 26px);
}

.mck-service-card {
  min-height: 250px;
  padding: clamp(24px, 3vw, 34px);
}

.mck-service-card h3 {
  margin-bottom: 10px;
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.08;
  font-weight: 840;
}

.mck-service-card p {
  line-height: 1.62;
}

.mck-service-card .mck-card-icon,
.mck-card-icon {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(23, 158, 217, .14), rgba(23, 158, 217, .045));
  border: 1px solid rgba(23, 158, 217, .18);
  color: var(--mck-foundation-blue, #179ed9);
}

/* CTA split */
.mck-cta-split,
.et_pb_section.mck-cta-split {
  position: relative;
  overflow: clip;
  border-radius: clamp(28px, 4vw, 46px);
  background:
    radial-gradient(520px 280px at 100% 0%, rgba(23, 158, 217, .18), transparent 64%),
    linear-gradient(135deg, #08111d, #0f1d2c 58%, #13263a);
  color: #ffffff;
}

.mck-cta-split h2,
.mck-cta-split h3,
.mck-cta-split p {
  color: #ffffff;
}

.mck-cta-split p {
  color: rgba(255, 255, 255, .74);
}

/* Pages simples : si une page Accueil est créée sans Divi Builder, elle reste présentable. */
body.macteck-theme.page:not(.et_pb_pagebuilder_layout) .entry-content,
body.macteck-divi-child-futuristic.page:not(.et_pb_pagebuilder_layout) .entry-content {
  max-width: 860px;
  padding: clamp(64px, 8vw, 120px) 0;
}

body.macteck-theme.page:not(.et_pb_pagebuilder_layout) .entry-title,
body.macteck-divi-child-futuristic.page:not(.et_pb_pagebuilder_layout) .entry-title {
  max-width: 900px;
  color: var(--mck-foundation-text, #121820);
  font-size: clamp(44px, 6vw, 82px);
  line-height: .96;
  font-weight: 880;
  letter-spacing: -.07em;
}

/* Classe pour masquer volontairement des éléments démo sans les supprimer. */
.mck-hide-demo,
.mck-demo-hidden {
  display: none !important;
}

/* Bloc de mise en route utile lors d’un site test */
.mck-start-card {
  max-width: 980px;
  margin: clamp(48px, 7vw, 92px) auto;
  padding: clamp(28px, 4vw, 52px);
  border-radius: clamp(24px, 4vw, 42px);
  border: 1px solid var(--mck-foundation-border, rgba(18,24,32,.10));
  background:
    radial-gradient(520px 220px at 100% 0%, rgba(23,158,217,.13), transparent 62%),
    color-mix(in srgb, var(--mck-foundation-surface, #ffffff) 92%, transparent);
  box-shadow: var(--mck-foundation-shadow-soft, 0 14px 34px rgba(18,24,32,.075));
}

.mck-start-card h1,
.mck-start-card h2 {
  margin-bottom: 14px;
  font-size: clamp(34px, 5vw, 66px);
  line-height: .98;
}

.mck-start-card p {
  max-width: 720px;
  line-height: 1.62;
}

/* Responsive */
@media (max-width: 980px) {
  .mck-home-hero,
  .et_pb_section.mck-home-hero {
    min-height: auto;
  }

  .mck-home-hero::before {
    inset: 16px;
    border-radius: 28px;
  }

  .mck-services-grid,
  .mck-home-services {
    grid-template-columns: 1fr;
  }

  .mck-hero-actions {
    flex-direction: column;
  }
}

@media (max-width: 640px) {
  .mck-home-title,
  .mck-home-hero h1,
  .mck-hero-title {
    font-size: clamp(40px, 13vw, 58px);
  }

  .mck-home-lede,
  .mck-home-hero .mck-lede,
  .mck-hero-lede {
    font-size: 17px;
  }
}
