/* =========================================================
   ed-pc.css — composants PC partagés (≥ 961 px uniquement)
   Hero éditorial plein cadre, menu sur une ligne, sections sans bandeaux.
   Le mobile n'est pas concerné : tout est sous min-width: 961px.
   ========================================================= */
@media (min-width: 961px) {
  :root { --ed-container: 1180px; --ed-gutter: max(32px, calc((100vw - var(--ed-container)) / 2 + 32px)); }

  /* ---------- Menu : une seule ligne ---------- */
  .nav__menu a { white-space: nowrap; }
  .nav__menu a .nav__badge { margin-left: 8px; }

  /* ---------- HERO de page (atelier-hero) ---------- */
  body .atelier-hero {
    position: relative;
    padding: 0 !important;
    margin: 0 !important;
    min-height: clamp(520px, 64vh, 620px);
    overflow: hidden;
    background: var(--cream, #faf6f0);
  }
  body .atelier-hero .atelier-hero__inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 50vw !important;
    max-width: none !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    min-height: inherit;
    gap: 0 !important;
    align-items: stretch;
  }
  body .atelier-hero .atelier-hero__text {
    grid-column: 1; grid-row: 1;
    align-self: center;
    padding: 64px 64px 64px var(--ed-gutter) !important;
    max-width: none !important;
    text-align: left !important;
    display: flex; flex-direction: column; align-items: flex-start; gap: 22px;
  }
  body .atelier-hero .atelier-hero__text > * { max-width: 560px; margin-top: 0 !important; margin-bottom: 0 !important; }
  body .atelier-hero .atelier-hero__title {
    font-size: clamp(2.5rem, 3.3vw, 3.4rem) !important;
    line-height: 1.08 !important;
    font-weight: 500;
    letter-spacing: -.2px;
    color: var(--brown, #5a3e3e);
    text-align: left !important;
  }
  body .atelier-hero .ed-hook,
  body .atelier-hero .atelier-hero__lead,
  body .atelier-hero .atelier-hero__text > p:not(.atelier-hero__next) {
    font-size: 1.15rem !important; line-height: 1.65 !important; color: var(--brown-soft, #6f5350);
    font-family: var(--sans, 'Lato', sans-serif); font-style: normal; text-align: left !important;
  }
  /* Image : plein cadre jusqu'au bord droit, toute la hauteur */
  body .atelier-hero .atelier-hero__visual {
    grid-column: 2; grid-row: 1;
    position: relative !important;
    min-height: 100% !important; height: auto !important;
    margin: 0 !important; padding: 0 !important;
    border-radius: 0 !important; box-shadow: none !important;
    overflow: hidden;
    max-width: none !important; width: 100% !important;
  }
  body .atelier-hero .atelier-hero__visual picture,
  body .atelier-hero .atelier-hero__visual img,
  body .atelier-hero .atelier-hero__visual video {
    position: absolute !important; inset: 0 !important;
    width: 100% !important; height: 100% !important; max-width: none !important;
    object-fit: cover !important; border-radius: 0 !important;
    -webkit-mask-image: none !important; mask-image: none !important;
    opacity: 1 !important; filter: none !important;
  }
  /* Fondu court, seulement à la jointure */
  body .atelier-hero .atelier-hero__visual::after,
  body .atelier-hero .atelier-hero__visual::before { content: none !important; display: none !important; }
  body .atelier-hero .atelier-hero__visual > picture::after { content: none; }
  body .atelier-hero .atelier-hero__visual {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 90px) !important;
    mask-image: linear-gradient(90deg, transparent 0, #000 90px) !important;
  }
  /* Ornements orphelins */
  body .atelier-hero .atelier-hero__heart { display: none !important; }
  /* Boutons */
  body .atelier-hero .btn-pair { justify-content: flex-start !important; gap: 12px !important; margin-top: 6px !important; }

  /* Cartes atelier (ateliers.html) : côte à côte, style des cartes accueil */
  body .atelier-hero .atelier-hero__choix { display: flex; flex-direction: column; gap: 16px; width: 100%; }
  body .atelier-hero .atelier-hero__choix-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
  body .atelier-hero .atelier-hero__mini {
    background: var(--white, #fffdfa) !important; border: 0 !important; border-radius: 18px !important;
    padding: 16px 18px !important; box-shadow: 0 0 0 1px rgba(90,62,62,.07), 0 10px 26px rgba(120,90,70,.07) !important;
  }
  body .atelier-hero .atelier-hero__mini--sage { border-top: 3px solid var(--sage, #9caf8f) !important; }
  body .atelier-hero .atelier-hero__points { display: flex !important; flex-wrap: wrap; gap: 6px 18px !important; margin: 0 !important; padding: 0 !important; }
  body .atelier-hero .atelier-hero__points li { font-size: .9rem !important; margin: 0 !important; }
  body .atelier-hero .atelier-hero__next:not(:empty) {
    display: inline-flex !important; align-items: center; gap: 8px;
    padding: 8px 16px !important; border-radius: 999px;
    background: rgba(156,175,143,.18); color: var(--brown, #5a3e3e) !important;
    font-size: .9rem !important; font-weight: 600;
  }

  /* Bain : les deux lignes sensorielles + l'offre = un seul chapeau */
  body .atelier-hero .atelier-hero__sensoriel { display: block !important; }
  body .atelier-hero .atelier-hero__sensoriel > p {
    display: inline !important; margin: 0 !important; font-style: normal !important;
    font-family: var(--sans, 'Lato', sans-serif) !important; font-size: 1.15rem !important; line-height: 1.65 !important;
    color: var(--brown-soft, #6f5350) !important;
  }
  body .atelier-hero .atelier-hero__sensoriel > p + p::before { content: " "; }
  /* Bénéfices : 2 × 2 léger */
  body .atelier-hero .hero-benefits { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; width: 100%; }
  body .atelier-hero .hero-benefits__title { display: none !important; }
  body .atelier-hero .hero-benefits__grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px 22px !important; margin: 0 !important; padding: 0 !important; }
  body .atelier-hero .hero-benefits__grid li {
    background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important;
    display: flex !important; gap: 10px; align-items: flex-start; font-size: .92rem !important; line-height: 1.45 !important; text-align: left !important;
  }
  body .atelier-hero .hero-benefits__grid li i { color: var(--rose-dark, #c48e8e); margin-top: 3px; font-size: .95rem; width: 18px; flex: none; }
  body .atelier-hero .ed-chips { justify-content: flex-start !important; }
}

/* ---------- Menu : mobile, le bloc « Plus » n'existe pas ---------- */
@media (max-width: 960px) { .nav__more { display: none !important; } }

/* ---------- Menu PC premium ---------- */
@media (min-width: 961px) {
  body .navbar .navbar__inner {
    display: flex !important; align-items: center; justify-content: space-between;
    max-width: 1240px !important; margin: 0 auto; padding: 16px 32px !important; gap: 28px !important;
  }
  body .navbar .logo__svg { height: 50px !important; }
  body .navbar .nav__menu { display: flex !important; align-items: center; gap: 30px !important; margin: 0 auto; }
  body .navbar .nav__menu > a,
  body .navbar .nav__more-btn {
    font-size: .95rem !important; letter-spacing: .1px !important; font-weight: 400;
    color: var(--brown-soft, #6f5350); padding: 6px 0; white-space: nowrap; background: none; border: 0; cursor: pointer;
    font-family: var(--sans, 'Lato', sans-serif);
  }
  body .navbar .nav__menu > a:hover, body .navbar .nav__more-btn:hover,
  body .navbar .nav__menu > a.active, body .navbar .nav__more-btn.active { color: var(--brown, #5a3e3e); }
  body .navbar .nav__menu > a.active { box-shadow: inset 0 -2px 0 var(--rose, #d4a5a5); }
  body .navbar .nav__menu > a[href="belly-painting.html"],
  body .navbar .nav__menu > a[href="en-images.html"],
  body .navbar .nav__menu > a[href="bon-cadeau.html"] { display: none !important; }
  body .navbar .nav__dot { display: none !important; }
  body .navbar .nav__menu a .nav__badge { font-size: .56rem; padding: 3px 7px; margin-left: 7px; position: relative; top: -1px; }
  .nav__more { position: relative; }
  .nav__more-btn i { font-size: .6rem; margin-left: 5px; transition: transform .2s ease; }
  .nav__more.is-open .nav__more-btn i { transform: rotate(180deg); }
  .nav__more-menu {
    position: absolute; top: calc(100% + 12px); left: 50%; transform: translateX(-50%) translateY(-4px);
    min-width: 210px; padding: 8px; border-radius: 16px; background: var(--white, #fffdfa);
    box-shadow: 0 0 0 1px rgba(90,62,62,.07), 0 18px 40px rgba(120,90,70,.14);
    display: flex; flex-direction: column; opacity: 0; visibility: hidden; transition: opacity .18s ease, transform .18s ease; z-index: 80;
  }
  .nav__more.is-open .nav__more-menu, .nav__more:focus-within .nav__more-menu { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); }
  .nav__more-menu a { padding: 10px 14px; border-radius: 10px; font-size: .92rem; color: var(--brown-soft, #6f5350); white-space: nowrap; }
  .nav__more-menu a:hover, .nav__more-menu a.active { background: var(--cream, #faf6f0); color: var(--brown, #5a3e3e); }
  body .navbar .nav__cta .btn {
    font-size: .74rem !important; padding: 12px 22px !important; letter-spacing: 1.2px !important;
  }
  body .navbar .nav__cta .btn--whatsapp { background: #3a9b7f !important; border-color: #3a9b7f !important; color: #fff !important; }
  body .navbar .nav__cta .btn--whatsapp i { color: #fff !important; }
}
@media (min-width: 961px) and (max-width: 1180px) {
  body .navbar .nav__menu { gap: 20px !important; }
  body .navbar .nav__menu > a, body .navbar .nav__more-btn { font-size: .88rem !important; }
  body .navbar .logo__svg { height: 42px !important; }
}

@media (min-width: 961px) {
  /* ---------- Accueil : bandeau « Stéphanie / Offrir / Google » retiré sur PC ---------- */
  body .hero .hero__suite { display: none !important; }

  /* ---------- Accueil : section offres plus compacte ---------- */
  body .hero { padding-top: 0 !important; padding-bottom: 0 !important; min-height: 0 !important; }
  body .hero .hero__grid { min-height: clamp(560px, calc(100vh - 90px), 760px) !important; align-items: center !important; }
  body .hero .hero__body { padding-top: 40px !important; padding-bottom: 40px !important; gap: 16px !important; }
  body .hero .hero__title { font-size: clamp(2.1rem, 2.6vw, 2.7rem) !important; line-height: 1.1 !important; margin-bottom: 4px !important; }
  body .hero .ed-hook { font-size: 1rem !important; line-height: 1.55 !important; margin: 0 0 6px !important; }
  body .hero .ed-hero-offres { gap: 14px !important; margin-top: 8px !important; }
  body .hero .ed-hero-offres__voie { padding: 0 !important; }
  body .hero .ed-hero-offres__corps { padding: 20px 20px 4px !important; gap: 10px !important; }
  body .hero .ed-hero-offres__recit { font-size: .95rem !important; line-height: 1.5 !important; margin: 0 0 6px !important; }
  body .hero .ed-hero-offres__offreur { font-size: .9rem !important; line-height: 1.5 !important; margin: 0 0 6px !important; }
  body .hero .ed-hero-offres__ligne { padding: 6px 0 !important; }
  body .hero .ed-hero-offres__faits li, body .hero .ed-hero-offres__pastilles li { font-size: .86rem !important; margin: 0 !important; }
  body .hero .ed-hero-offres__faits, body .hero .ed-hero-offres__pastilles { gap: 4px !important; margin: 4px 0 0 !important; }
  body .hero .ed-hero-offres__offre-rose { padding: 12px 14px !important; margin: 6px 0 0 !important; }
  body .hero .ed-hero-offres__cta { margin: 12px 20px 20px !important; padding-top: 12px !important; padding-bottom: 12px !important; }
  body .hero .hero__media, body .hero .hero__media img, body .hero .hero__media picture { max-height: none; }

  /* ---------- Accueil : section Séances (plus de carte ni de cartes imbriquées) ---------- */
  body .sx-home { padding: 0 !important; background: transparent !important; }
  body .sx-home .sx-home__grid {
    display: grid !important; grid-template-columns: 50vw minmax(0, 1fr) !important; gap: 0 !important;
    max-width: none !important; margin: 0 !important; padding: 0 !important;
    background: none !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
    min-height: clamp(480px, 56vh, 580px); align-items: stretch !important;
  }
  body .sx-home .sx-home__visual {
    grid-column: 1; grid-row: 1; position: relative; order: 0 !important;
    margin: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow: hidden; min-height: 100%;
    -webkit-mask-image: linear-gradient(270deg, transparent 0, #000 90px); mask-image: linear-gradient(270deg, transparent 0, #000 90px);
  }
  body .sx-home .sx-home__visual picture, body .sx-home .sx-home__visual img {
    position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important;
    object-fit: cover !important; border-radius: 0 !important; aspect-ratio: auto !important; box-shadow: none !important;
  }
  body .sx-home .sx-home__visual::before, body .sx-home .sx-home__visual::after { content: none !important; }
  body .sx-home .sx-home__copy {
    grid-column: 2; grid-row: 1; align-self: center;
    padding: 72px var(--ed-gutter) 72px 64px !important; max-width: none !important;
    background: none !important; box-shadow: none !important; border: 0 !important;
  }
  body .sx-home .sx-home__copy > * { max-width: 520px; }
  body .sx-home .sx-home__title { font-size: clamp(2.3rem, 3vw, 3rem) !important; line-height: 1.1 !important; margin: 0 0 14px !important; }
  body .sx-home .sx-home__lead { font-size: 1.1rem !important; margin: 0 0 30px !important; }
  body .sx-home .sx-home__list {
    display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 0 !important;
    margin: 0 0 32px !important; padding: 0 !important; width: 100%; max-width: 560px;
  }
  body .sx-home .sx-home__list li {
    background: none !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
    padding: 2px 18px !important; border-left: 1px solid rgba(90,62,62,.14) !important; display: flex !important; flex-direction: column; gap: 6px;
  }
  body .sx-home .sx-home__list li:first-child { border-left: 0 !important; padding-left: 0 !important; }
  body .sx-home .sx-home__list span { font-size: .68rem !important; letter-spacing: 1.6px; text-transform: uppercase; font-weight: 700; color: var(--sage-dark, #879b7b); }
  body .sx-home .sx-home__list strong { font-family: var(--serif, 'Cormorant Garamond', serif); font-size: 1.12rem !important; line-height: 1.3; font-weight: 500; color: var(--brown, #5a3e3e); }

  /* ---------- Page Séances : même hero plein cadre ---------- */
  body .sx .sx-hero { padding: 0 !important; }
  body .sx .sx-hero .sx-hero__grid {
    display: grid !important; grid-template-columns: minmax(0, 1fr) 50vw !important; gap: 0 !important;
    max-width: none !important; margin: 0 !important; padding: 0 !important; min-height: clamp(520px, 64vh, 620px); align-items: stretch !important;
  }
  body .sx .sx-hero .sx-hero__grid > :first-child { align-self: center; padding: 64px 64px 64px var(--ed-gutter) !important; }
  body .sx .sx-hero .sx-hero__grid > :first-child > * { max-width: 560px; }
  body .sx .sx-hero .sx-hero__visual { position: relative; order: 0 !important; margin: 0 !important; overflow: hidden; border-radius: 0 !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 90px); mask-image: linear-gradient(90deg, transparent 0, #000 90px); }
  body .sx .sx-hero .sx-hero__visual picture, body .sx .sx-hero .sx-hero__visual img {
    position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover !important; border-radius: 0 !important; aspect-ratio: auto !important; }
  body .sx .sx-hero .sx-hero__visual::before, body .sx .sx-hero .sx-hero__visual::after { content: none !important; }

  /* ---------- Pied de page compact ---------- */
  body .footer { padding: 44px 0 0 !important; }
  body .footer .footer__top {
    display: grid !important; grid-template-columns: minmax(260px, 1.2fr) auto auto !important; align-items: center !important;
    gap: 40px !important; padding-bottom: 32px !important; text-align: left !important;
  }
  body .footer .footer__brand { display: flex !important; flex-direction: column; align-items: flex-start !important; gap: 10px; text-align: left !important; }
  body .footer .footer__brand .logo__svg, body .footer .footer__brand svg:not(.fa) { height: 44px !important; width: auto; }
  body .footer .footer__tagline { font-size: .95rem !important; margin: 0 !important; }
  body .footer .footer__social { margin: 4px 0 0 !important; justify-content: flex-start !important; }
  body .footer .footer__col h2 { display: none !important; }
  body .footer .footer__col ul { display: flex !important; flex-wrap: wrap; gap: 6px 22px !important; margin: 0 !important; padding: 0 !important; }
  body .footer .footer__col li { margin: 0 !important; font-size: .9rem !important; line-height: 1.4 !important; }
  body .footer .footer__col li br { display: none; }
  body .footer .footer__col--explorer li:not(:has(a[href="ateliers.html"])):not(:has(a[href="bain-enveloppant.html"])):not(:has(a[href="seances.html"])):not(:has(a[href="bon-cadeau.html"])) { display: none !important; }
  body .footer .footer__col--explorer a { color: var(--brown, #5a3e3e); font-weight: 600; }
  body .footer .footer__col--contact ul { flex-direction: column; gap: 4px !important; }
  body .footer .footer__bottom { border-top: 1px solid rgba(90,62,62,.09); }
  body .footer .footer__bottom-inner { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center; gap: 16px !important; padding: 16px 0 !important; font-size: .76rem !important; }
  body .footer .footer__bottom-inner > span:first-child { order: 2; margin-left: auto; color: var(--muted, #9b8a80); }
  body .footer .footer__legal { order: 1; gap: 18px !important; justify-content: flex-start !important; }
  body .footer .footer__bottom-inner > span:last-child { order: 3; }
}
