/* Céline Guillaume — mobile V1.1.0 | Accueil uniquement | <=767px
   Palette du site : nuit #1B1F29 · bleu #2925F4 · blanc cassé #F9FAFA */
@media (max-width:767px) {
  body.home.page-id-7 {
    --cg-gutter:22px; --cg-night:#1B1F29; --cg-blue:#2925F4; --cg-paper:#F9FAFA;
    overflow-x:clip;
  }
  body.home.page-id-7 .elementor-location-single,
  body.home.page-id-7 .site-content { overflow-x:clip; }

  /* ---------- Marges cohérentes (V1) ---------- */
  body.home.page-id-7 .elementor-element-3ad2a23,
  body.home.page-id-7 .elementor-element-97de30f,
  body.home.page-id-7 .elementor-element-df8d1be,
  body.home.page-id-7 .elementor-element-0217a43 { --padding-left:var(--cg-gutter); --padding-right:var(--cg-gutter); }
  body.home.page-id-7 .elementor-element-3ad2a23 > .e-con-inner,
  body.home.page-id-7 .elementor-element-97de30f > .e-con-inner,
  body.home.page-id-7 .elementor-element-df8d1be > .e-con-inner,
  body.home.page-id-7 .elementor-element-0217a43 > .e-con-inner { width:100%; max-width:100%; }

  /* ---------- Héros ---------- */
  body.home.page-id-7 .elementor-element-3ad2a23 { --padding-top:84px; --padding-bottom:44px; }
  body.home.page-id-7 .elementor-element-45ef74c { gap:22px; }
  /* voile dégradé sur la photo : le texte se lit, la couverture ressort */
  body.home.page-id-7 .elementor-element-3ad2a23 .elementor-background-slideshow::after {
    content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
    background:linear-gradient(180deg, rgba(27,31,41,.55) 0%, rgba(27,31,41,.35) 40%, rgba(27,31,41,.88) 72%, #1B1F29 100%);
  }
  body.home.page-id-7 .elementor-element-7f037a0 img {
    display:block; width:auto; max-width:min(64vw,260px); max-height:400px; height:auto; object-fit:contain; margin-inline:auto;
    border-radius:4px;
    box-shadow:0 22px 40px -12px rgba(0,0,0,.75), 0 0 0 1px rgba(255,255,255,.08);
    transform:rotate(-2deg);
  }
  body.home.page-id-7 .elementor-element-734a348 .elementor-heading-title {
    font-size:clamp(19px,5.3vw,24px); line-height:1.38; letter-spacing:0; text-wrap:balance;
    text-shadow:0 2px 14px rgba(0,0,0,.6);
  }
  body.home.page-id-7 .elementor-element-734a348 .elementor-heading-title br { display:none; }

  /* ---------- Section roman ---------- */
  body.home.page-id-7 .elementor-element-97de30f,
  body.home.page-id-7 .elementor-element-df8d1be,
  body.home.page-id-7 .elementor-element-0217a43 { --padding-top:52px; --padding-bottom:52px; }
  body.home.page-id-7 .elementor-element-1e413da img { max-width:220px; height:auto; }
  body.home.page-id-7 .elementor-element-a6337e9 .elementor-heading-title {
    font-size:clamp(25px,7vw,32px); line-height:1.2; text-wrap:balance;
  }
  body.home.page-id-7 .elementor-element-a6337e9 .elementor-heading-title br { display:none; }
  body.home.page-id-7 .elementor-element-a6337e9 .elementor-heading-title::after {
    content:""; display:block; width:44px; height:2px; margin:20px auto 0; background:var(--cg-blue);
  }
  body.home.page-id-7 .elementor-element-6bf2ffb { grid-template-columns:minmax(0,1fr); gap:26px; }
  body.home.page-id-7 .elementor-element-490a24f img,
  body.home.page-id-7 .elementor-element-b0b48e9 img { display:block; max-width:100%; height:auto; margin-inline:auto; }

  /* texte : aligné à gauche (le justifié crée des trous et des coupures sur mobile) */
  body.home.page-id-7 .elementor-element-7b14203,
  body.home.page-id-7 .elementor-element-db229af,
  body.home.page-id-7 .elementor-element-2709d5c { font-size:16px; line-height:1.72; overflow-wrap:break-word; }
  body.home.page-id-7 .elementor-element-7b14203 p,
  body.home.page-id-7 .elementor-element-db229af p,
  body.home.page-id-7 .elementor-element-2709d5c p { text-align:left; }
  /* lettrine sur le premier paragraphe */
  body.home.page-id-7 .elementor-element-7b14203 p:first-child::first-letter {
    font-family:"Playfair Display", serif; font-weight:700; color:var(--cg-blue);
    float:left; font-size:3.4em; line-height:.85; padding:6px 10px 0 0;
  }
  body.home.page-id-7 .elementor-element-7b14203 a {
    color:var(--cg-blue); font-weight:600; text-decoration:underline; text-underline-offset:3px;
  }

  /* ---------- Boutons ---------- */
  body.home.page-id-7 .elementor-element-9d3e534 .elementor-button,
  body.home.page-id-7 .elementor-element-9a9da30 .elementor-button {
    min-height:52px; width:100%; max-width:340px; display:inline-flex; align-items:center; justify-content:center;
    padding:14px 24px; border-radius:999px; line-height:1.25; font-size:14px; letter-spacing:.12em;
    transition:transform .15s ease, box-shadow .15s ease;
  }
  body.home.page-id-7 .elementor-element-9d3e534,
  body.home.page-id-7 .elementor-element-9a9da30 { text-align:center; }
  body.home.page-id-7 .elementor-element-9d3e534 .elementor-button-text::after,
  body.home.page-id-7 .elementor-element-9a9da30 .elementor-button-text::after { content:"  →"; letter-spacing:0; }
  body.home.page-id-7 .elementor-element-9d3e534 .elementor-button { box-shadow:0 10px 26px -8px rgba(0,0,0,.6); }
  body.home.page-id-7 .elementor-element-9a9da30 .elementor-button {
    background:var(--cg-blue); color:#fff; box-shadow:0 12px 26px -10px rgba(41,37,244,.65);
  }
  body.home.page-id-7 .elementor-element-9d3e534 .elementor-button:active,
  body.home.page-id-7 .elementor-element-9a9da30 .elementor-button:active { transform:scale(.97); }

  /* ---------- À propos ---------- */
  body.home.page-id-7 .elementor-element-0c21da1 { overflow:hidden; border-radius:14px; }
  body.home.page-id-7 .elementor-element-b0b48e9 img { border-radius:14px; }
  body.home.page-id-7 .elementor-element-a534403 { --padding-top:6px; }
  body.home.page-id-7 .elementor-element-f5779fe .elementor-heading-title {
    color:var(--cg-paper); font-size:clamp(28px,7.5vw,36px); line-height:1.2;
  }
  body.home.page-id-7 .elementor-element-f5779fe .elementor-heading-title::first-letter { text-transform:uppercase; }
  body.home.page-id-7 .elementor-element-f5779fe .elementor-heading-title::after {
    content:""; display:block; width:44px; height:2px; margin-top:14px; background:var(--cg-blue);
  }
  body.home.page-id-7 .elementor-element-db229af a,
  body.home.page-id-7 .elementor-element-2709d5c a { color:var(--cg-paper); text-decoration:underline; text-underline-offset:3px; background:none; }

  /* ---------- Citation ---------- */
  body.home.page-id-7 .elementor-element-777f0f1 {
    background:#fff; border-radius:16px; padding:34px 22px 30px;
    box-shadow:0 18px 40px -24px rgba(27,31,41,.35);
  }
  body.home.page-id-7 .elementor-element-6129c46 .elementor-heading-title {
    font-size:clamp(20px,5.4vw,25px); line-height:1.45; text-wrap:balance;
  }
  body.home.page-id-7 .elementor-element-6129c46 .elementor-heading-title br { display:none; }

  body.home.page-id-7 .elementor-widget-text-editor p:last-child { margin-bottom:0; }

  /* ---------- Pied de page (accueil) ---------- */
  body.home.page-id-7 #block-9 p {
    background:#fff; border:1px solid rgba(27,31,41,.08); border-radius:14px;
    padding:22px 20px; font-size:15px; line-height:1.6; box-shadow:0 12px 30px -22px rgba(27,31,41,.4);
  }
  body.home.page-id-7 #block-9 a[href^="mailto:"] {
    display:inline-block; margin-top:12px; padding:10px 16px; border-radius:999px;
    background:var(--cg-night); color:#fff; font-size:13px; text-decoration:none; word-break:break-all;
  }
  body.home.page-id-7 .ast-footer-social-1-wrap a { min-width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; }

  /* ---------- Barre d'achat collante ---------- */
  .cg-sticky-buy {
    position:fixed; left:12px; right:12px; bottom:calc(12px + env(safe-area-inset-bottom)); z-index:9990;
    display:flex; align-items:center; gap:12px; padding:8px 8px 8px 10px;
    background:rgba(27,31,41,.94); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
    border-radius:999px; box-shadow:0 14px 34px -10px rgba(0,0,0,.55);
    transform:translateY(140%); opacity:0; transition:transform .3s ease, opacity .3s ease;
  }
  .cg-sticky-buy.is-visible { transform:none; opacity:1; }
  .cg-sticky-buy img { width:34px; height:auto; border-radius:3px; flex:none; }
  .cg-sticky-buy span { flex:1; min-width:0; color:#F9FAFA; font:600 13px/1.25 "Open Sans", sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .cg-sticky-buy span small { display:block; font-weight:400; opacity:.7; font-size:11.5px; }
  .cg-sticky-buy a {
    flex:none; padding:11px 18px; border-radius:999px; background:#2925F4; color:#fff;
    font:600 13px/1 "Open Sans", sans-serif; letter-spacing:.06em; text-decoration:none; text-transform:uppercase;
  }
}
@media (min-width:768px) { .cg-sticky-buy { display:none; } }
@media (max-width:380px) {
  body.home.page-id-7 { --cg-gutter:17px; }
  body.home.page-id-7 .elementor-element-7f037a0 img { max-width:68vw; }
  .cg-sticky-buy span small { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .cg-sticky-buy { transition:none; }
  body.home.page-id-7 .elementor-element-7f037a0 img { transform:none; }
}
